diff options
Diffstat (limited to 'Tests')
63 files changed, 2 insertions, 773 deletions
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 6946ffb..faa199d 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -3589,8 +3589,6 @@ if(BUILD_TESTING) --test-command InterfaceLinkLibraries) list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/InterfaceLinkLibraries") - ADD_TEST_MACRO(InterfaceLinkLibrariesDirect) - if(NOT CMake_TEST_EXTERNAL_CMAKE) add_subdirectory(CMakeTests) endif() diff --git a/Tests/ExportImport/Export/CMakeLists.txt b/Tests/ExportImport/Export/CMakeLists.txt index c9e41f5..a79efd0 100644 --- a/Tests/ExportImport/Export/CMakeLists.txt +++ b/Tests/ExportImport/Export/CMakeLists.txt @@ -163,16 +163,6 @@ install( cmake_policy(PUSH) cmake_policy(SET CMP0022 NEW) - -# Test control over direct linking. -include(../../InterfaceLinkLibrariesDirect/testStaticLibPlugin.cmake) -include(../../InterfaceLinkLibrariesDirect/testSharedLibWithHelper.cmake) -include(../../InterfaceLinkLibrariesDirect/testExeWithPluginHelper.cmake) -if(NOT maybe_OBJECTS_DESTINATION) - target_compile_definitions(testSharedLibHelperObj INTERFACE testSharedLibHelperObj_NO_OBJECT) - target_compile_definitions(testExePluginHelperObj INTERFACE testExePluginHelperObj_NO_OBJECT) -endif() - # Test exporting dependent libraries into different exports add_library(testLibRequired testLibRequired.c) add_library(testLibDepends testLibDepends.c) @@ -554,9 +544,6 @@ install( testLibDeprecation testLibCycleA testLibCycleB testLibNoSONAME - testStaticLibWithPlugin testStaticLibPluginExtra testStaticLibPlugin - testSharedLibWithHelper testSharedLibHelperObj - testExeWithPluginHelper testExePluginHelperObj testMod1 testMod2 cmp0022NEW cmp0022OLD TopDirLib SubDirLinkA @@ -632,9 +619,6 @@ export(TARGETS testExe2 testLib4 testLib5 testLib6 testLib7 testExe3 testExe4 te testLib4lib testLib4libdbg testLib4libopt testLibCycleA testLibCycleB testLibNoSONAME - testStaticLibWithPlugin testStaticLibPluginExtra testStaticLibPlugin - testSharedLibWithHelper testSharedLibHelperObj - testExeWithPluginHelper testExePluginHelperObj testMod1 testMod2 testLibPerConfigDest NAMESPACE bld_ diff --git a/Tests/ExportImport/Import/A/CMakeLists.txt b/Tests/ExportImport/Import/A/CMakeLists.txt index 272c7a9..d6cc8d0 100644 --- a/Tests/ExportImport/Import/A/CMakeLists.txt +++ b/Tests/ExportImport/Import/A/CMakeLists.txt @@ -68,23 +68,16 @@ target_link_libraries(imp_testExe1 exp_testLib7 exp_testLibCycleA exp_testLibPerConfigDest - exp_testStaticLibWithPlugin ) add_library(imp_testInterfaceInclude1 STATIC imp_testInterfaceInclude1.c) target_include_directories(imp_testInterfaceInclude1 SYSTEM PRIVATE testInterfaceIncludeSystem) target_link_libraries(imp_testInterfaceInclude1 PRIVATE exp_testInterfaceIncludeUser) -add_executable(imp_UseSharedLibWithHelper1 ../../../InterfaceLinkLibrariesDirect/UseSharedLibWithHelper.c) -target_link_libraries(imp_UseSharedLibWithHelper1 PRIVATE exp_testSharedLibWithHelper testSharedLibHelperExclude) - # Try building a plugin to an executable imported from the install tree. add_library(imp_mod1 MODULE imp_mod1.c) target_link_libraries(imp_mod1 exp_testExe2) -add_library(imp_ExePlugin1 MODULE ../../../InterfaceLinkLibrariesDirect/ExePlugin.c) -target_link_libraries(imp_ExePlugin1 PRIVATE exp_testExeWithPluginHelper testExePluginHelperExclude) - # Try referencing an executable imported from the build tree. add_custom_command( OUTPUT ${Import_BINARY_DIR}/bld_generated.c @@ -119,7 +112,6 @@ target_link_libraries(imp_testExe1b bld_testLib7 bld_testLibCycleA bld_testLibPerConfigDest - bld_testStaticLibWithPlugin ) add_library(imp_testInterfaceInclude1b STATIC imp_testInterfaceInclude1.c) @@ -191,16 +183,10 @@ target_link_libraries(SubDirLink_bld PRIVATE bld_TopDirLib bld_SubDirLinkA) add_executable(SubDirLink_exp SubDirLink.c) target_link_libraries(SubDirLink_exp PRIVATE exp_TopDirLib exp_SubDirLinkA) -add_executable(imp_UseSharedLibWithHelper1b ../../../InterfaceLinkLibrariesDirect/UseSharedLibWithHelper.c) -target_link_libraries(imp_UseSharedLibWithHelper1b PRIVATE bld_testSharedLibWithHelper testSharedLibHelperExclude) - # Try building a plugin to an executable imported from the build tree. add_library(imp_mod1b MODULE imp_mod1.c) target_link_libraries(imp_mod1b bld_testExe2) -add_library(imp_ExePlugin1b MODULE ../../../InterfaceLinkLibrariesDirect/ExePlugin.c) -target_link_libraries(imp_ExePlugin1b PRIVATE bld_testExeWithPluginHelper testExePluginHelperExclude) - # Export/CMakeLists.txt pretends the RelWithDebInfo (as well as Debug) # configuration should link to debug libs. foreach(c DEBUG RELWITHDEBINFO) diff --git a/Tests/ExportImport/Import/A/imp_testExe1.c b/Tests/ExportImport/Import/A/imp_testExe1.c index 7490a80..8173557 100644 --- a/Tests/ExportImport/Import/A/imp_testExe1.c +++ b/Tests/ExportImport/Import/A/imp_testExe1.c @@ -10,7 +10,6 @@ extern int testLib6(void); extern int testLib7(void); extern int testLibCycleA1(void); extern int testLibPerConfigDest(void); -extern int testStaticLibPlugin(void); /* Switch a symbol between debug and optimized builds to make sure the proper library is found from the testLib4 link interface. */ @@ -25,7 +24,6 @@ int main() { return (testLib2() + generated_by_testExe1() + testLib3() + testLib4() + testLib5() + testLib6() + testLib7() + testLibCycleA1() + - testLibPerConfigDest() + testStaticLibPlugin() + - generated_by_testExe3() + generated_by_testExe4() + testLib4lib() + - testLib4libcfg()); + testLibPerConfigDest() + generated_by_testExe3() + + generated_by_testExe4() + testLib4lib() + testLib4libcfg()); } diff --git a/Tests/InterfaceLinkLibrariesDirect/CMakeLists.txt b/Tests/InterfaceLinkLibrariesDirect/CMakeLists.txt deleted file mode 100644 index b06a2fb..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/CMakeLists.txt +++ /dev/null @@ -1,156 +0,0 @@ -cmake_minimum_required(VERSION 3.21) -project(InterfaceLinkLibrariesDirect C) - -include(testStaticLibPlugin.cmake) -add_executable(InterfaceLinkLibrariesDirect main.c) -target_link_libraries(InterfaceLinkLibrariesDirect PRIVATE testStaticLibWithPlugin) - -include(testSharedLibWithHelper.cmake) -add_executable(UseSharedLibWithHelper UseSharedLibWithHelper.c) -target_link_libraries(UseSharedLibWithHelper PRIVATE testSharedLibWithHelper testSharedLibHelperExclude) - -include(testExeWithPluginHelper.cmake) -add_library(ExePlugin MODULE ExePlugin.c) -target_link_libraries(ExePlugin PRIVATE testExeWithPluginHelper testExePluginHelperExclude) - -#---------------------------------------------------------------------------- - -# Offer usage requirements and symbols to be used through static libs below. -add_library(A STATIC - a_always.c - - # Good symbols that direct_from_A libraries poison if incorrectly used. - a_not_direct_from_A.c - a_not_direct_from_A_for_exe.c - a_not_direct_from_A_optional.c - - # Bad symbols in direct_from_A libraries below to ensure they come first. - a_poison_direct_from_A.c - a_poison_direct_from_A_for_exe.c - a_poison_direct_from_A_optional.c - ) - -# Propagates as usage requirement from A. -add_library(direct_from_A STATIC direct_from_A.c direct_from_A_poison.c) -target_compile_definitions(direct_from_A INTERFACE DEF_DIRECT_FROM_A) -set_property(TARGET A APPEND PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT direct_from_A) - -# Propagates as usage requirement from A, but only for executables. -add_library(direct_from_A_for_exe STATIC direct_from_A_for_exe.c direct_from_A_for_exe_poison.c) -target_compile_definitions(direct_from_A_for_exe INTERFACE DEF_DIRECT_FROM_A_FOR_EXE) -set_property(TARGET A APPEND PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT - "$<$<STREQUAL:$<TARGET_PROPERTY:TYPE>,EXECUTABLE>:direct_from_A_for_exe>") - -# Propagates as usage requirement from A, but only for targets that opt-in. -add_library(direct_from_A_optional STATIC direct_from_A_optional.c direct_from_A_optional_poison.c) -target_compile_definitions(direct_from_A_optional INTERFACE DEF_DIRECT_FROM_A_OPTIONAL) -set_property(TARGET A APPEND PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT - "$<$<BOOL:$<TARGET_PROPERTY:A_LINK_OPTIONAL>>:direct_from_A_optional>") - -# Uses and propagates A's usage requirements. -# Does not use the exe-only or optional usage requirements. -add_library(static_A_public STATIC static_A_public.c) -target_link_libraries(static_A_public PUBLIC A) - -# Uses A's usage requirements, but does not propagate them. -# Does not use the exe-only usage requirement. Does use the optional one. -add_library(static_A_private STATIC static_A_private.c) -target_link_libraries(static_A_private PRIVATE A) -set_property(TARGET static_A_private PROPERTY A_LINK_OPTIONAL 1) - -# Uses A's usage requirements, including an optional one. -add_executable(exe_use_static_A_public exe_use_static_A_public.c) -target_link_libraries(exe_use_static_A_public PRIVATE static_A_public) -set_property(TARGET exe_use_static_A_public PROPERTY A_LINK_OPTIONAL 1) - -# Does not use A's usage requirements. -add_executable(exe_use_static_A_private exe_use_static_A_private.c) -target_link_libraries(exe_use_static_A_private PRIVATE static_A_private) - -#---------------------------------------------------------------------------- - -# Test how original and injected dependencies get ordered. - -# A bunch of static libraries that need to be linked in alphabetic order. -# Each library has an extra source to poison all symbols meant to be -# provided by earlier libraries. This enforces ordering on platforms -# whose linkers re-visit static libraries. -add_library(order_A STATIC order_A.c) -add_library(order_B STATIC order_B.c order_B_poison.c) -add_library(order_C STATIC order_C.c order_C_poison.c) -add_library(order_D STATIC order_D.c order_D_poison.c) -add_library(order_E STATIC order_E.c order_E_poison.c) -add_library(order_F STATIC order_F.c order_F_poison.c) -add_library(order_G STATIC order_G.c order_G_poison.c) -add_library(order_H STATIC order_H.c order_H_poison.c) -add_library(order_I STATIC order_I.c order_I_poison.c) -add_library(order_J STATIC order_J.c order_J_poison.c) - -# An executable to drive linking. -add_executable(order_main order_main.c) - -# In the following diagram, connection by a slash means the top -# target lists the bottom target in a link interface property: -# -# \ => INTERFACE_LINK_LIBRARIES -# / => INTERFACE_LINK_LIBRARIES_DIRECT -# -# The top of each tree represents an entry in the exe's LINK_LIBRARIES. -# CMake should evaluate this graph to generate the proper link order. -# -# D H -# / \ / \ -# B J F I -# / / / / \ -# A C E G J -set_property(TARGET order_main PROPERTY LINK_LIBRARIES order_D order_H) -set_property(TARGET order_D PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT order_B) -set_property(TARGET order_D PROPERTY INTERFACE_LINK_LIBRARIES order_J) -set_property(TARGET order_B PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT order_A) -set_property(TARGET order_J PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT order_C) -set_property(TARGET order_H PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT order_F) -set_property(TARGET order_H PROPERTY INTERFACE_LINK_LIBRARIES order_I) -set_property(TARGET order_F PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT order_E) -set_property(TARGET order_I PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT order_G) -set_property(TARGET order_I PROPERTY INTERFACE_LINK_LIBRARIES order_J) - -#---------------------------------------------------------------------------- - -# Test that the original LINK_LIBRARIES cannot be re-ordered by injection -# from usage requirements. - -# A bunch of static libraries that need to be linked in alphabetic order. -# Each library has an extra source to poison all symbols meant to be -# provided by earlier libraries. This enforces ordering on platforms -# whose linkers re-visit static libraries. -add_library(force_A STATIC order_A.c) -add_library(force_B STATIC order_B.c order_B_poison.c) -add_library(force_C STATIC order_C.c order_C_poison.c) -add_library(force_D STATIC order_D.c order_D_poison.c) -add_library(force_E STATIC order_E.c order_E_poison.c) -add_library(force_F STATIC order_F.c order_F_poison.c) -add_library(force_G STATIC order_G.c order_G_poison.c) -add_library(force_H STATIC order_H.c order_H_poison.c) -add_library(force_I STATIC order_I.c order_I_poison.c) -add_library(force_J STATIC order_J.c order_J_poison.c) - -# An executable to drive linking. -add_executable(force_main order_main.c) - -# The executable explicitly lists all the libraries in the right order. -target_link_libraries(force_main PRIVATE force_A force_B force_C force_D force_E force_F force_G force_H) - -# Add legitimate normal dependencies. -set_property(TARGET force_D PROPERTY INTERFACE_LINK_LIBRARIES force_J) -set_property(TARGET force_H PROPERTY INTERFACE_LINK_LIBRARIES force_I) -set_property(TARGET force_I PROPERTY INTERFACE_LINK_LIBRARIES force_J) - -# Add bogus injected direct dependencies to verify that they do not -# change the original order of LINK_LIBRARIES. -set_property(TARGET force_A PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT force_B) -set_property(TARGET force_B PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT force_C) -set_property(TARGET force_C PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT force_D) -set_property(TARGET force_D PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT force_E) -set_property(TARGET force_E PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT force_F) -set_property(TARGET force_F PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT force_G) -set_property(TARGET force_G PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT force_H) diff --git a/Tests/InterfaceLinkLibrariesDirect/ExePlugin.c b/Tests/InterfaceLinkLibrariesDirect/ExePlugin.c deleted file mode 100644 index 40a261c..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/ExePlugin.c +++ /dev/null @@ -1,21 +0,0 @@ -extern int testExePluginHelperObj(int n); - -#ifdef testExePluginHelperObj_NO_OBJECT -int testExePluginHelperObj(int n) -{ - return n; -} -#endif - -#if defined(_WIN32) -__declspec(dllimport) -#endif - int testExePluginAPI(int n); - -#if defined(_WIN32) -__declspec(dllexport) -#endif - int testExePlugin(int n) -{ - return testExePluginAPI(n) + testExePluginHelperObj(n); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/UseSharedLibWithHelper.c b/Tests/InterfaceLinkLibrariesDirect/UseSharedLibWithHelper.c deleted file mode 100644 index 832e31f..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/UseSharedLibWithHelper.c +++ /dev/null @@ -1,18 +0,0 @@ -extern int testSharedLibHelperObj(int n); - -#ifdef testSharedLibHelperObj_NO_OBJECT -int testSharedLibHelperObj(int n) -{ - return n; -} -#endif - -#if defined(_WIN32) -__declspec(dllimport) -#endif - int testSharedLibWithHelper(int n); - -int main(void) -{ - return testSharedLibWithHelper(0) + testSharedLibHelperObj(0); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/a_always.c b/Tests/InterfaceLinkLibrariesDirect/a_always.c deleted file mode 100644 index 007680d..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/a_always.c +++ /dev/null @@ -1,3 +0,0 @@ -void a_always(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A.c b/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A.c deleted file mode 100644 index 732d36e..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A.c +++ /dev/null @@ -1,3 +0,0 @@ -void not_direct_from_A(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A_for_exe.c b/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A_for_exe.c deleted file mode 100644 index 9aed296..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A_for_exe.c +++ /dev/null @@ -1,3 +0,0 @@ -void not_direct_from_A_for_exe(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A_optional.c b/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A_optional.c deleted file mode 100644 index 3572e51..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/a_not_direct_from_A_optional.c +++ /dev/null @@ -1,3 +0,0 @@ -void not_direct_from_A_optional(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A.c b/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A.c deleted file mode 100644 index 6d1963d..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void poison_direct_from_A(void); -void direct_from_A(void) -{ - poison_direct_from_A(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A_for_exe.c b/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A_for_exe.c deleted file mode 100644 index 623fc07..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A_for_exe.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void poison_direct_from_A_for_exe(void); -void direct_from_A_for_exe(void) -{ - poison_direct_from_A_for_exe(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A_optional.c b/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A_optional.c deleted file mode 100644 index 0f1328e..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/a_poison_direct_from_A_optional.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void poison_direct_from_A_optional(void); -void direct_from_A_optional(void) -{ - poison_direct_from_A_optional(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/direct_from_A.c b/Tests/InterfaceLinkLibrariesDirect/direct_from_A.c deleted file mode 100644 index d6d0df3..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/direct_from_A.c +++ /dev/null @@ -1,3 +0,0 @@ -void direct_from_A(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_for_exe.c b/Tests/InterfaceLinkLibrariesDirect/direct_from_A_for_exe.c deleted file mode 100644 index dfa6db1..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_for_exe.c +++ /dev/null @@ -1,3 +0,0 @@ -void direct_from_A_for_exe(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_for_exe_poison.c b/Tests/InterfaceLinkLibrariesDirect/direct_from_A_for_exe_poison.c deleted file mode 100644 index c0ecb0b..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_for_exe_poison.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void poison_not_direct_from_A_for_exe(void); -void not_direct_from_A_for_exe(void) -{ - poison_not_direct_from_A_for_exe(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_optional.c b/Tests/InterfaceLinkLibrariesDirect/direct_from_A_optional.c deleted file mode 100644 index affdaeb..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_optional.c +++ /dev/null @@ -1,3 +0,0 @@ -void direct_from_A_optional(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_optional_poison.c b/Tests/InterfaceLinkLibrariesDirect/direct_from_A_optional_poison.c deleted file mode 100644 index c7c3528..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_optional_poison.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void poison_not_direct_from_A_optional(void); -void not_direct_from_A_optional(void) -{ - poison_not_direct_from_A_optional(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_poison.c b/Tests/InterfaceLinkLibrariesDirect/direct_from_A_poison.c deleted file mode 100644 index b03cdf7..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/direct_from_A_poison.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void poison_not_direct_from_A(void); -void not_direct_from_A(void) -{ - poison_not_direct_from_A(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/exe_use_static_A_private.c b/Tests/InterfaceLinkLibrariesDirect/exe_use_static_A_private.c deleted file mode 100644 index 024e96e..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/exe_use_static_A_private.c +++ /dev/null @@ -1,23 +0,0 @@ -#ifdef DEF_DIRECT_FROM_A -# error "DEF_DIRECT_FROM_A incorrectly defined" -#endif -#ifdef DEF_DIRECT_FROM_A_FOR_EXE -# error "DEF_DIRECT_FROM_A_FOR_EXE incorrectly defined" -#endif -#ifdef DEF_DIRECT_FROM_A_OPTIONAL -# error "DEF_DIRECT_FROM_A_OPTIONAL incorrectly defined" -#endif - -extern void static_A_private(void); -extern void not_direct_from_A(void); -extern void not_direct_from_A_for_exe(void); -extern void not_direct_from_A_optional(void); - -int main(void) -{ - static_A_private(); - not_direct_from_A(); - not_direct_from_A_for_exe(); - not_direct_from_A_optional(); - return 0; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/exe_use_static_A_public.c b/Tests/InterfaceLinkLibrariesDirect/exe_use_static_A_public.c deleted file mode 100644 index b3b0a56..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/exe_use_static_A_public.c +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef DEF_DIRECT_FROM_A -# error "DEF_DIRECT_FROM_A incorrectly not defined" -#endif -#ifndef DEF_DIRECT_FROM_A_FOR_EXE -# error "DEF_DIRECT_FROM_A_FOR_EXE incorrectly not defined" -#endif -#ifndef DEF_DIRECT_FROM_A_OPTIONAL -# error "DEF_DIRECT_FROM_A_OPTIONAL incorrectly not defined" -#endif - -extern void static_A_public(void); -extern void direct_from_A(void); -extern void direct_from_A_for_exe(void); -extern void direct_from_A_optional(void); - -int main(void) -{ - static_A_public(); - direct_from_A(); - direct_from_A_for_exe(); - direct_from_A_optional(); - return 0; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/main.c b/Tests/InterfaceLinkLibrariesDirect/main.c deleted file mode 100644 index 53f0e6d..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/main.c +++ /dev/null @@ -1,5 +0,0 @@ -extern int testStaticLibPlugin(void); -int main(void) -{ - return testStaticLibPlugin(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_A.c b/Tests/InterfaceLinkLibrariesDirect/order_A.c deleted file mode 100644 index 2cd4d60..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_A.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_B(void); -void order_A(void) -{ - order_B(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_B.c b/Tests/InterfaceLinkLibrariesDirect/order_B.c deleted file mode 100644 index 1787f1d..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_B.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_C(void); -void order_B(void) -{ - order_C(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_B_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_B_poison.c deleted file mode 100644 index bcb7b4b..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_B_poison.c +++ /dev/null @@ -1,6 +0,0 @@ -extern void order_B_poison(void); - -void order_A(void) -{ - order_B_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_C.c b/Tests/InterfaceLinkLibrariesDirect/order_C.c deleted file mode 100644 index e67e719..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_C.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_D(void); -void order_C(void) -{ - order_D(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_C_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_C_poison.c deleted file mode 100644 index fc31104..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_C_poison.c +++ /dev/null @@ -1,11 +0,0 @@ -extern void order_C_poison(void); - -void order_A(void) -{ - order_C_poison(); -} - -void order_B(void) -{ - order_C_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_D.c b/Tests/InterfaceLinkLibrariesDirect/order_D.c deleted file mode 100644 index f5bb2d6..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_D.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_E(void); -void order_D(void) -{ - order_E(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_D_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_D_poison.c deleted file mode 100644 index d2d64e6..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_D_poison.c +++ /dev/null @@ -1,16 +0,0 @@ -extern void order_D_poison(void); - -void order_A(void) -{ - order_D_poison(); -} - -void order_B(void) -{ - order_D_poison(); -} - -void order_C(void) -{ - order_D_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_E.c b/Tests/InterfaceLinkLibrariesDirect/order_E.c deleted file mode 100644 index 2a56443..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_E.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_F(void); -void order_E(void) -{ - order_F(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_E_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_E_poison.c deleted file mode 100644 index 7d8b53e..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_E_poison.c +++ /dev/null @@ -1,21 +0,0 @@ -extern void order_E_poison(void); - -void order_A(void) -{ - order_E_poison(); -} - -void order_B(void) -{ - order_E_poison(); -} - -void order_C(void) -{ - order_E_poison(); -} - -void order_D(void) -{ - order_E_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_F.c b/Tests/InterfaceLinkLibrariesDirect/order_F.c deleted file mode 100644 index d242284..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_F.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_G(void); -void order_F(void) -{ - order_G(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_F_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_F_poison.c deleted file mode 100644 index 285f247..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_F_poison.c +++ /dev/null @@ -1,26 +0,0 @@ -extern void order_F_poison(void); - -void order_A(void) -{ - order_F_poison(); -} - -void order_B(void) -{ - order_F_poison(); -} - -void order_C(void) -{ - order_F_poison(); -} - -void order_D(void) -{ - order_F_poison(); -} - -void order_E(void) -{ - order_F_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_G.c b/Tests/InterfaceLinkLibrariesDirect/order_G.c deleted file mode 100644 index ff71038..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_G.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_H(void); -void order_G(void) -{ - order_H(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_G_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_G_poison.c deleted file mode 100644 index 3a1fe1d..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_G_poison.c +++ /dev/null @@ -1,31 +0,0 @@ -extern void order_G_poison(void); - -void order_A(void) -{ - order_G_poison(); -} - -void order_B(void) -{ - order_G_poison(); -} - -void order_C(void) -{ - order_G_poison(); -} - -void order_D(void) -{ - order_G_poison(); -} - -void order_E(void) -{ - order_G_poison(); -} - -void order_F(void) -{ - order_G_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_H.c b/Tests/InterfaceLinkLibrariesDirect/order_H.c deleted file mode 100644 index 9c62bb1..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_H.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_I(void); -void order_H(void) -{ - order_I(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_H_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_H_poison.c deleted file mode 100644 index 0c6b84f..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_H_poison.c +++ /dev/null @@ -1,36 +0,0 @@ -extern void order_H_poison(void); - -void order_A(void) -{ - order_H_poison(); -} - -void order_B(void) -{ - order_H_poison(); -} - -void order_C(void) -{ - order_H_poison(); -} - -void order_D(void) -{ - order_H_poison(); -} - -void order_E(void) -{ - order_H_poison(); -} - -void order_F(void) -{ - order_H_poison(); -} - -void order_G(void) -{ - order_H_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_I.c b/Tests/InterfaceLinkLibrariesDirect/order_I.c deleted file mode 100644 index 96152de..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_I.c +++ /dev/null @@ -1,5 +0,0 @@ -extern void order_J(void); -void order_I(void) -{ - order_J(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_I_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_I_poison.c deleted file mode 100644 index 3fabe1f..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_I_poison.c +++ /dev/null @@ -1,41 +0,0 @@ -extern void order_I_poison(void); - -void order_A(void) -{ - order_I_poison(); -} - -void order_B(void) -{ - order_I_poison(); -} - -void order_C(void) -{ - order_I_poison(); -} - -void order_D(void) -{ - order_I_poison(); -} - -void order_E(void) -{ - order_I_poison(); -} - -void order_F(void) -{ - order_I_poison(); -} - -void order_G(void) -{ - order_I_poison(); -} - -void order_H(void) -{ - order_I_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_J.c b/Tests/InterfaceLinkLibrariesDirect/order_J.c deleted file mode 100644 index 49eec47..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_J.c +++ /dev/null @@ -1,3 +0,0 @@ -void order_J(void) -{ -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_J_poison.c b/Tests/InterfaceLinkLibrariesDirect/order_J_poison.c deleted file mode 100644 index 9724fd5..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_J_poison.c +++ /dev/null @@ -1,46 +0,0 @@ -extern void order_J_poison(void); - -void order_A(void) -{ - order_J_poison(); -} - -void order_B(void) -{ - order_J_poison(); -} - -void order_C(void) -{ - order_J_poison(); -} - -void order_D(void) -{ - order_J_poison(); -} - -void order_E(void) -{ - order_J_poison(); -} - -void order_F(void) -{ - order_J_poison(); -} - -void order_G(void) -{ - order_J_poison(); -} - -void order_H(void) -{ - order_J_poison(); -} - -void order_I(void) -{ - order_J_poison(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/order_main.c b/Tests/InterfaceLinkLibrariesDirect/order_main.c deleted file mode 100644 index eed2453..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/order_main.c +++ /dev/null @@ -1,6 +0,0 @@ -extern void order_A(void); -int main(void) -{ - order_A(); - return 0; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/static_A_private.c b/Tests/InterfaceLinkLibrariesDirect/static_A_private.c deleted file mode 100644 index d98a22c..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/static_A_private.c +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef DEF_DIRECT_FROM_A -# error "DEF_DIRECT_FROM_A incorrectly not defined" -#endif -#ifdef DEF_DIRECT_FROM_A_FOR_EXE -# error "DEF_DIRECT_FROM_A_FOR_EXE incorrectly defined" -#endif -#ifndef DEF_DIRECT_FROM_A_OPTIONAL -# error "DEF_DIRECT_FROM_A_OPTIONAL incorrectly not defined" -#endif - -extern void a_always(void); - -void static_A_private(void) -{ - a_always(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/static_A_public.c b/Tests/InterfaceLinkLibrariesDirect/static_A_public.c deleted file mode 100644 index ed88ca6..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/static_A_public.c +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef DEF_DIRECT_FROM_A -# error "DEF_DIRECT_FROM_A incorrectly not defined" -#endif -#ifdef DEF_DIRECT_FROM_A_FOR_EXE -# error "DEF_DIRECT_FROM_A_FOR_EXE incorrectly defined" -#endif -#ifdef DEF_DIRECT_FROM_A_OPTIONAL -# error "DEF_DIRECT_FROM_A_OPTIONAL incorrectly defined" -#endif - -extern void a_always(void); - -void static_A_public(void) -{ - a_always(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testExePluginHelperObj.c b/Tests/InterfaceLinkLibrariesDirect/testExePluginHelperObj.c deleted file mode 100644 index 49c495f..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testExePluginHelperObj.c +++ /dev/null @@ -1,4 +0,0 @@ -int testExePluginHelperObj(int n) -{ - return n; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testExeWithPluginHelper.c b/Tests/InterfaceLinkLibrariesDirect/testExeWithPluginHelper.c deleted file mode 100644 index f8787db..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testExeWithPluginHelper.c +++ /dev/null @@ -1,12 +0,0 @@ -#ifdef _WIN32 -__declspec(dllexport) -#endif - int testExePluginAPI(int n) -{ - return n; -} - -int main(void) -{ - return 0; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testExeWithPluginHelper.cmake b/Tests/InterfaceLinkLibrariesDirect/testExeWithPluginHelper.cmake deleted file mode 100644 index 97c5b65..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testExeWithPluginHelper.cmake +++ /dev/null @@ -1,7 +0,0 @@ -# Logic common to InterfaceLinkLibrariesDirect and ExportImport tests. -set(src ${CMAKE_CURRENT_LIST_DIR}) -add_executable(testExeWithPluginHelper ${src}/testExeWithPluginHelper.c) -add_library(testExePluginHelperObj OBJECT ${src}/testExePluginHelperObj.c) -set_property(TARGET testExeWithPluginHelper PROPERTY ENABLE_EXPORTS 1) -set_property(TARGET testExeWithPluginHelper PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT $<TARGET_NAME:testExePluginHelperObj>) -set_property(TARGET testExeWithPluginHelper PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE $<1:testExePluginHelperExclude>) diff --git a/Tests/InterfaceLinkLibrariesDirect/testSharedLibHelperObj.c b/Tests/InterfaceLinkLibrariesDirect/testSharedLibHelperObj.c deleted file mode 100644 index 9d55fcb..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testSharedLibHelperObj.c +++ /dev/null @@ -1,4 +0,0 @@ -int testSharedLibHelperObj(int n) -{ - return n; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testSharedLibWithHelper.c b/Tests/InterfaceLinkLibrariesDirect/testSharedLibWithHelper.c deleted file mode 100644 index f942b54..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testSharedLibWithHelper.c +++ /dev/null @@ -1,7 +0,0 @@ -#ifdef _WIN32 -__declspec(dllexport) -#endif - int testSharedLibWithHelper(int n) -{ - return n; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testSharedLibWithHelper.cmake b/Tests/InterfaceLinkLibrariesDirect/testSharedLibWithHelper.cmake deleted file mode 100644 index c51751c..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testSharedLibWithHelper.cmake +++ /dev/null @@ -1,6 +0,0 @@ -# Logic common to InterfaceLinkLibrariesDirect and ExportImport tests. -set(src ${CMAKE_CURRENT_LIST_DIR}) -add_library(testSharedLibWithHelper SHARED ${src}/testSharedLibWithHelper.c) -add_library(testSharedLibHelperObj OBJECT ${src}/testSharedLibHelperObj.c) -set_property(TARGET testSharedLibWithHelper PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT $<TARGET_NAME:testSharedLibHelperObj>) -set_property(TARGET testSharedLibWithHelper PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE $<1:testSharedLibHelperExclude>) diff --git a/Tests/InterfaceLinkLibrariesDirect/testStaticLibPlugin.c b/Tests/InterfaceLinkLibrariesDirect/testStaticLibPlugin.c deleted file mode 100644 index 17f643f..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testStaticLibPlugin.c +++ /dev/null @@ -1,6 +0,0 @@ -extern int testStaticLibWithPlugin1(void); -extern int testStaticLibPluginExtra(void); -int testStaticLibPlugin(void) -{ - return testStaticLibWithPlugin1() + testStaticLibPluginExtra(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testStaticLibPlugin.cmake b/Tests/InterfaceLinkLibrariesDirect/testStaticLibPlugin.cmake deleted file mode 100644 index 907872f..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testStaticLibPlugin.cmake +++ /dev/null @@ -1,14 +0,0 @@ -# Logic common to InterfaceLinkLibrariesDirect and ExportImport tests. -set(src ${CMAKE_CURRENT_LIST_DIR}) -add_library(testStaticLibWithPlugin STATIC - ${src}/testStaticLibWithPlugin1.c # used by testStaticLibPlugin - ${src}/testStaticLibWithPlugin2.c # used by testStaticLibPluginExtra - ${src}/testStaticLibWithPluginBad1.c # link error if not after testStaticLibPlugin - ${src}/testStaticLibWithPluginBad2.c # link error if not after testStaticLibPluginExtra - ) -add_library(testStaticLibPluginExtra STATIC ${src}/testStaticLibPluginExtra.c) -add_library(testStaticLibPlugin STATIC ${src}/testStaticLibPlugin.c) -target_link_libraries(testStaticLibPlugin PUBLIC testStaticLibWithPlugin testStaticLibPluginExtra) -target_link_libraries(testStaticLibPluginExtra PUBLIC testStaticLibWithPlugin) -set_property(TARGET testStaticLibWithPlugin PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT testStaticLibPlugin) -set_property(TARGET testStaticLibWithPlugin PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE testStaticLibWithPlugin) diff --git a/Tests/InterfaceLinkLibrariesDirect/testStaticLibPluginExtra.c b/Tests/InterfaceLinkLibrariesDirect/testStaticLibPluginExtra.c deleted file mode 100644 index 11fe0f8..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testStaticLibPluginExtra.c +++ /dev/null @@ -1,5 +0,0 @@ -extern int testStaticLibWithPlugin2(void); -int testStaticLibPluginExtra(void) -{ - return testStaticLibWithPlugin2(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPlugin1.c b/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPlugin1.c deleted file mode 100644 index 5e75dce..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPlugin1.c +++ /dev/null @@ -1,4 +0,0 @@ -int testStaticLibWithPlugin1(void) -{ - return 0; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPlugin2.c b/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPlugin2.c deleted file mode 100644 index 74ac1ae..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPlugin2.c +++ /dev/null @@ -1,4 +0,0 @@ -int testStaticLibWithPlugin2(void) -{ - return 0; -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPluginBad1.c b/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPluginBad1.c deleted file mode 100644 index b41abc9..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPluginBad1.c +++ /dev/null @@ -1,6 +0,0 @@ -/* Produce an error if if the object compiled from this source is used. */ -extern int testStaticLibWithPlugin_linked_before_testStaticLibPlugin(void); -int testStaticLibPlugin(void) -{ - return testStaticLibWithPlugin_linked_before_testStaticLibPlugin(); -} diff --git a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPluginBad2.c b/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPluginBad2.c deleted file mode 100644 index 43337a5..0000000 --- a/Tests/InterfaceLinkLibrariesDirect/testStaticLibWithPluginBad2.c +++ /dev/null @@ -1,7 +0,0 @@ -/* Produce an error if if the object compiled from this source is used. */ -extern int testStaticLibWithPlugin_linked_before_testStaticLibPluginExtra( - void); -int testStaticLibPluginExtra(void) -{ - return testStaticLibWithPlugin_linked_before_testStaticLibPluginExtra(); -} diff --git a/Tests/ObjectLibrary/Transitive/BarMain.c b/Tests/ObjectLibrary/Transitive/BarMain.c deleted file mode 100644 index aec3e48..0000000 --- a/Tests/ObjectLibrary/Transitive/BarMain.c +++ /dev/null @@ -1,6 +0,0 @@ -extern int BarObject1(void); - -int main(void) -{ - return BarObject1(); -} diff --git a/Tests/ObjectLibrary/Transitive/BarObject1.c b/Tests/ObjectLibrary/Transitive/BarObject1.c deleted file mode 100644 index 2f68386..0000000 --- a/Tests/ObjectLibrary/Transitive/BarObject1.c +++ /dev/null @@ -1,5 +0,0 @@ -extern int BarObject2(void); -int BarObject1(void) -{ - return BarObject2(); -} diff --git a/Tests/ObjectLibrary/Transitive/BarObject2.c b/Tests/ObjectLibrary/Transitive/BarObject2.c deleted file mode 100644 index 881c64a..0000000 --- a/Tests/ObjectLibrary/Transitive/BarObject2.c +++ /dev/null @@ -1,5 +0,0 @@ -extern int BarObject3(void); -int BarObject2(void) -{ - return BarObject3(); -} diff --git a/Tests/ObjectLibrary/Transitive/BarObject3.c b/Tests/ObjectLibrary/Transitive/BarObject3.c deleted file mode 100644 index e557dbc..0000000 --- a/Tests/ObjectLibrary/Transitive/BarObject3.c +++ /dev/null @@ -1,4 +0,0 @@ -int BarObject3(void) -{ - return 0; -} diff --git a/Tests/ObjectLibrary/Transitive/CMakeLists.txt b/Tests/ObjectLibrary/Transitive/CMakeLists.txt index 17247eb..e9f57d4 100644 --- a/Tests/ObjectLibrary/Transitive/CMakeLists.txt +++ b/Tests/ObjectLibrary/Transitive/CMakeLists.txt @@ -9,17 +9,3 @@ add_library(FooObject2 OBJECT FooObject.c) target_link_libraries(FooObject2 INTERFACE FooStatic) add_executable(Transitive2 Transitive.c) target_link_libraries(Transitive2 PRIVATE FooObject2) - -add_library(FooObjectDirect OBJECT FooObject.c) -add_library(FooStaticDirect STATIC FooStatic.c) -set_property(TARGET FooStaticDirect PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT FooObjectDirect) -add_executable(TransitiveDirect Transitive.c) -target_link_libraries(TransitiveDirect PRIVATE FooStaticDirect) - -add_library(BarObject1 OBJECT BarObject1.c) -add_library(BarObject2 OBJECT BarObject2.c) -add_library(BarObject3 OBJECT BarObject3.c) -set_property(TARGET BarObject1 PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT BarObject2) -set_property(TARGET BarObject2 PROPERTY INTERFACE_LINK_LIBRARIES_DIRECT BarObject3) -add_executable(BarMain BarMain.c) -target_link_libraries(BarMain PRIVATE BarObject1) |