Explorar el Código

test: rework lib stuff to share common files

Michele Caini hace 3 años
padre
commit
f94de1c069

+ 28 - 24
test/CMakeLists.txt

@@ -107,21 +107,23 @@ function(SETUP_BASIC_TEST TEST_NAME TEST_SOURCES)
     add_test(NAME ${TEST_NAME} COMMAND ${TEST_NAME})
 endfunction()
 
-function(SETUP_LIB_TEST TEST_NAME)
-    add_library(_${TEST_NAME} SHARED $<TARGET_OBJECTS:odr> lib/${TEST_NAME}/lib.cpp)
-    SETUP_TARGET(_${TEST_NAME} ENTT_API_EXPORT)
-    SETUP_BASIC_TEST(lib_${TEST_NAME} lib/${TEST_NAME}/main.cpp ENTT_API_IMPORT)
-    target_link_libraries(lib_${TEST_NAME} PRIVATE _${TEST_NAME})
+function(SETUP_LIB_SHARED_TEST TEST_NAME SUB_PATH)
+    set(TARGET_NAME ${TEST_NAME}_${SUB_PATH})
+    add_library(_${TARGET_NAME} SHARED $<TARGET_OBJECTS:odr> lib/${TEST_NAME}/${SUB_PATH}/lib.cpp)
+    SETUP_TARGET(_${TARGET_NAME} ENTT_API_EXPORT)
+    SETUP_BASIC_TEST(lib_${TARGET_NAME} lib/${TEST_NAME}/${SUB_PATH}/main.cpp ENTT_API_IMPORT)
+    target_link_libraries(lib_${TARGET_NAME} PRIVATE _${TARGET_NAME})
 endfunction()
 
-function(SETUP_PLUGIN_TEST TEST_NAME)
-    add_library(_${TEST_NAME} MODULE $<TARGET_OBJECTS:odr> lib/${TEST_NAME}/plugin.cpp)
-    SETUP_TARGET(_${TEST_NAME} ${ARGVN})
-    SETUP_BASIC_TEST(lib_${TEST_NAME} lib/${TEST_NAME}/main.cpp PLUGIN="$<TARGET_FILE:_${TEST_NAME}>" ${ARGVN})
-    target_include_directories(_${TEST_NAME} PRIVATE ${cr_INCLUDE_DIR})
-    target_include_directories(lib_${TEST_NAME} PRIVATE ${cr_INCLUDE_DIR})
-    target_link_libraries(lib_${TEST_NAME} PRIVATE ${CMAKE_DL_LIBS})
-    add_dependencies(lib_${TEST_NAME} _${TEST_NAME})
+function(SETUP_LIB_PLUGIN_TEST TEST_NAME SUB_PATH)
+    set(TARGET_NAME ${TEST_NAME}_${SUB_PATH})
+    add_library(_${TARGET_NAME} MODULE $<TARGET_OBJECTS:odr> lib/${TEST_NAME}/${SUB_PATH}/plugin.cpp)
+    SETUP_TARGET(_${TARGET_NAME} ${ARGVN})
+    SETUP_BASIC_TEST(lib_${TARGET_NAME} lib/${TEST_NAME}/${SUB_PATH}/main.cpp PLUGIN="$<TARGET_FILE:_${TARGET_NAME}>" ${ARGVN})
+    target_include_directories(_${TARGET_NAME} PRIVATE ${cr_INCLUDE_DIR})
+    target_include_directories(lib_${TARGET_NAME} PRIVATE ${cr_INCLUDE_DIR})
+    target_link_libraries(lib_${TARGET_NAME} PRIVATE ${CMAKE_DL_LIBS})
+    add_dependencies(lib_${TARGET_NAME} _${TARGET_NAME})
 endfunction()
 
 # Test benchmark
@@ -155,19 +157,21 @@ if(ENTT_BUILD_LIB)
         set(cr_INCLUDE_DIR ${cr_SOURCE_DIR})
     endif()
 
-    SETUP_LIB_TEST(dispatcher)
-    SETUP_LIB_TEST(emitter)
-    SETUP_LIB_TEST(locator)
-    SETUP_LIB_TEST(meta)
-    SETUP_LIB_TEST(registry)
+    SETUP_LIB_SHARED_TEST(dispatcher shared)
+    SETUP_LIB_PLUGIN_TEST(dispatcher plugin)
 
-    SETUP_PLUGIN_TEST(dispatcher_plugin)
-    SETUP_PLUGIN_TEST(emitter_plugin)
-    SETUP_PLUGIN_TEST(locator_plugin)
-    SETUP_PLUGIN_TEST(meta_plugin)
-    SETUP_PLUGIN_TEST(registry_plugin)
+    SETUP_LIB_SHARED_TEST(emitter shared)
+    SETUP_LIB_PLUGIN_TEST(emitter plugin)
 
-    SETUP_PLUGIN_TEST(meta_plugin_std ENTT_STANDARD_CPP)
+    SETUP_LIB_SHARED_TEST(locator shared)
+    SETUP_LIB_PLUGIN_TEST(locator plugin)
+
+    SETUP_LIB_SHARED_TEST(meta shared)
+    SETUP_LIB_PLUGIN_TEST(meta plugin)
+    SETUP_LIB_PLUGIN_TEST(meta plugin_std ENTT_STANDARD_CPP)
+
+    SETUP_LIB_SHARED_TEST(registry shared)
+    SETUP_LIB_PLUGIN_TEST(registry plugin)
 endif()
 
 # Test snapshot

+ 0 - 0
test/lib/dispatcher_plugin/main.cpp → test/lib/dispatcher/plugin/main.cpp


+ 0 - 0
test/lib/dispatcher_plugin/plugin.cpp → test/lib/dispatcher/plugin/plugin.cpp


+ 0 - 0
test/lib/dispatcher_plugin/types.h → test/lib/dispatcher/plugin/types.h


+ 0 - 0
test/lib/dispatcher/lib.cpp → test/lib/dispatcher/shared/lib.cpp


+ 0 - 0
test/lib/dispatcher/main.cpp → test/lib/dispatcher/shared/main.cpp


+ 0 - 0
test/lib/dispatcher/types.h → test/lib/dispatcher/shared/types.h


+ 0 - 0
test/lib/emitter_plugin/main.cpp → test/lib/emitter/plugin/main.cpp


+ 0 - 0
test/lib/emitter_plugin/plugin.cpp → test/lib/emitter/plugin/plugin.cpp


+ 0 - 0
test/lib/emitter_plugin/types.h → test/lib/emitter/plugin/types.h


+ 0 - 0
test/lib/emitter/lib.cpp → test/lib/emitter/shared/lib.cpp


+ 0 - 0
test/lib/emitter/main.cpp → test/lib/emitter/shared/main.cpp


+ 0 - 0
test/lib/emitter/types.h → test/lib/emitter/shared/types.h


+ 0 - 0
test/lib/locator_plugin/main.cpp → test/lib/locator/plugin/main.cpp


+ 0 - 0
test/lib/locator_plugin/plugin.cpp → test/lib/locator/plugin/plugin.cpp


+ 0 - 0
test/lib/locator_plugin/types.h → test/lib/locator/plugin/types.h


+ 0 - 0
test/lib/locator/lib.cpp → test/lib/locator/shared/lib.cpp


+ 0 - 0
test/lib/locator/main.cpp → test/lib/locator/shared/main.cpp


+ 0 - 0
test/lib/locator/types.h → test/lib/locator/shared/types.h


+ 0 - 0
test/lib/meta_plugin/main.cpp → test/lib/meta/plugin/main.cpp


+ 0 - 0
test/lib/meta_plugin/plugin.cpp → test/lib/meta/plugin/plugin.cpp


+ 0 - 0
test/lib/meta_plugin/types.h → test/lib/meta/plugin/types.h


+ 0 - 0
test/lib/meta_plugin_std/main.cpp → test/lib/meta/plugin_std/main.cpp


+ 0 - 0
test/lib/meta_plugin_std/plugin.cpp → test/lib/meta/plugin_std/plugin.cpp


+ 0 - 0
test/lib/meta_plugin_std/types.h → test/lib/meta/plugin_std/types.h


+ 0 - 0
test/lib/meta/lib.cpp → test/lib/meta/shared/lib.cpp


+ 0 - 0
test/lib/meta/main.cpp → test/lib/meta/shared/main.cpp


+ 0 - 0
test/lib/meta/types.h → test/lib/meta/shared/types.h


+ 0 - 0
test/lib/registry_plugin/main.cpp → test/lib/registry/plugin/main.cpp


+ 0 - 0
test/lib/registry_plugin/plugin.cpp → test/lib/registry/plugin/plugin.cpp


+ 0 - 0
test/lib/registry_plugin/types.h → test/lib/registry/plugin/types.h


+ 0 - 0
test/lib/registry/lib.cpp → test/lib/registry/shared/lib.cpp


+ 0 - 0
test/lib/registry/main.cpp → test/lib/registry/shared/main.cpp


+ 0 - 0
test/lib/registry/types.h → test/lib/registry/shared/types.h