commit 5638813066453bf094650fca795f38f201d311b0 parent 7404f481ba8eb2291bef14323c0e6f9ee0157dfb Author: dundargoc <33953936+dundargoc@users.noreply.github.com> Date: Wed, 8 Feb 2023 19:31:10 +0100 build: reuse source files with interface library (#22177) This will minimize duplication by only needing to specify required files for nvim and libnvim once. Diffstat:
| M | src/nvim/CMakeLists.txt | | | 20 | +++++++++----------- |
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt @@ -664,9 +664,14 @@ else() target_compile_definitions(nvim PRIVATE $<$<CONFIG:Debug>:UNIT_TESTING>) endif() -target_sources(nvim PRIVATE ${NVIM_GENERATED_FOR_SOURCES} ${NVIM_GENERATED_FOR_HEADERS} - ${NVIM_GENERATED_SOURCES} ${NVIM_SOURCES} ${NVIM_HEADERS} - ${EXTERNAL_SOURCES} ${EXTERNAL_HEADERS}) +target_sources(main_lib INTERFACE + ${NVIM_GENERATED_FOR_SOURCES} + ${NVIM_GENERATED_FOR_HEADERS} + ${NVIM_GENERATED_SOURCES} + ${NVIM_SOURCES} + ${NVIM_HEADERS} + ${EXTERNAL_SOURCES} + ${EXTERNAL_HEADERS}) set_target_properties(nvim PROPERTIES @@ -809,14 +814,7 @@ install(DIRECTORY ${BINARY_LIB_DIR} DESTINATION ${CMAKE_INSTALL_LIBDIR}/nvim/ USE_SOURCE_PERMISSIONS) -add_library( - libnvim - STATIC - EXCLUDE_FROM_ALL - ${NVIM_SOURCES} ${NVIM_GENERATED_SOURCES} - ${NVIM_HEADERS} ${NVIM_GENERATED_FOR_SOURCES} ${NVIM_GENERATED_FOR_HEADERS} - ${EXTERNAL_SOURCES} ${EXTERNAL_HEADERS} -) +add_library(libnvim STATIC EXCLUDE_FROM_ALL) if(MSVC) set(LIBNVIM_NAME libnvim) else()