diff --git a/dub.json b/dub.json index 4f1f32c..89db254 100755 --- a/dub.json +++ b/dub.json @@ -56,9 +56,18 @@ "name" : "dynlib-betterC", "targetType" : "dynamicLibrary", "dflags": [ - "-betterC", - "-defaultlib=", - "--fvisibility=hidden" + "-betterC" + ], + "dflags-ldc": [ + "--fvisibility=hidden", + "-link-defaultlib-shared" + ], + "dflags-gdc": [ + "-fno-druntime", + "-fvisibility=hidden" + ], + "lflags-gdc": [ + "-lpthread" ] }, { @@ -69,8 +78,13 @@ "source\/win_dll.d" ], "dflags": [ - "-betterC", - "-defaultlib=" + "-betterC" + ], + "dflags-gdc": [ + "-fno-druntime" + ], + "lflags-gdc": [ + "-lpthread" ] } ] diff --git a/source/ecs/manager.d b/source/ecs/manager.d index 52a5c86..375a0e0 100644 --- a/source/ecs/manager.d +++ b/source/ecs/manager.d @@ -233,7 +233,7 @@ export struct EntityManager /************************************************************************************************************************ *Default constructor. */ - this(uint threads_count) nothrow @nogc + export this(uint threads_count) nothrow @nogc { if (threads_count == 0) threads_count = 1; @@ -252,7 +252,7 @@ export struct EntityManager //event_manager.manager = this; } - ~this() nothrow @nogc + export ~this() nothrow @nogc { id_manager.deinitialize(); event_manager.destroy(); @@ -2439,7 +2439,7 @@ export struct EntityManager */ struct ComponentInfo { - nothrow ~this(){} + export ~this() nothrow @nogc {} ///Component size ushort size; ///Component data alignment @@ -2583,7 +2583,7 @@ export struct EntityManager return new_info; } - ~this() @nogc nothrow + export ~this() @nogc nothrow { if(components)Mallocator.dispose(components); if(deltas)Mallocator.dispose(deltas); @@ -2738,7 +2738,7 @@ export struct EntityManager struct SystemCaller { - ~this() nothrow @nogc + export ~this() nothrow @nogc { if (dependencies) { @@ -2830,7 +2830,7 @@ export struct EntityManager uint allocated = 0; } - ~this() nothrow @nogc + export ~this() nothrow @nogc { foreach(block;blocks) {