From 7982ecebe1c1c41e82779a65fa2d93f19ffd755f Mon Sep 17 00:00:00 2001 From: Yegor Yefremov Date: Wed, 5 Feb 2020 12:28:44 +0100 Subject: [PATCH] CMake: fix object library usage Object libraries cannot be use in target_link_libraries() command as they are no normal binary files like *.a or *.so but a collection of object files. See add_library() definition for details. Signed-off-by: Yegor Yefremov --- CMakeLists.txt | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index af8010f..028a7bb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -83,8 +83,7 @@ target_compile_definitions(libninja PRIVATE _WIN32_WINNT=0x0601 __USE_MINGW_ANSI endif() # Main executable is library plus main() function. -add_executable(ninja src/ninja.cc) -target_link_libraries(ninja PRIVATE libninja libninja-re2c) +add_executable(ninja src/ninja.cc $ $) # Tests all build into ninja_test executable. add_executable(ninja_test @@ -106,11 +105,12 @@ add_executable(ninja_test src/subprocess_test.cc src/test.cc src/util_test.cc + $ + $ ) if(WIN32) target_sources(ninja_test PRIVATE src/includes_normalize_test.cc src/msvc_helper_test.cc) endif() -target_link_libraries(ninja_test PRIVATE libninja libninja-re2c) foreach(perftest build_log_perftest @@ -120,8 +120,7 @@ foreach(perftest hash_collision_bench manifest_parser_perftest ) - add_executable(${perftest} src/${perftest}.cc) - target_link_libraries(${perftest} PRIVATE libninja libninja-re2c) + add_executable(${perftest} src/${perftest}.cc $ $) endforeach() enable_testing() -- 2.17.0