diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 84b5b91e8..6ee20e895 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,5 +1,3 @@ -set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib) - aux_source_directory(. rime_api_src) aux_source_directory(rime rime_base_src) aux_source_directory(rime/algo rime_algo_src) @@ -82,7 +80,9 @@ if(BUILD_SHARED_LIBS) set_target_properties(rime PROPERTIES DEFINE_SYMBOL "RIME_EXPORTS" VERSION ${rime_version} - SOVERSION ${rime_soversion}) + SOVERSION ${rime_soversion} + LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib + RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) if(XCODE_VERSION) set_target_properties(rime PROPERTIES INSTALL_NAME_DIR "@rpath") endif() @@ -95,7 +95,9 @@ if(BUILD_SHARED_LIBS) ${rime_library}) set_target_properties(rime-dict PROPERTIES VERSION ${rime_version} - SOVERSION ${rime_soversion}) + SOVERSION ${rime_soversion} + LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib + RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) if(XCODE_VERSION) set_target_properties(rime-dict PROPERTIES INSTALL_NAME_DIR "@rpath") endif() @@ -108,7 +110,9 @@ if(BUILD_SHARED_LIBS) ${rime_dict_library}) set_target_properties(rime-gears PROPERTIES VERSION ${rime_version} - SOVERSION ${rime_soversion}) + SOVERSION ${rime_soversion} + LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib + RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) if(XCODE_VERSION) set_target_properties(rime-gears PROPERTIES INSTALL_NAME_DIR "@rpath") endif() @@ -121,7 +125,9 @@ if(BUILD_SHARED_LIBS) ${rime_dict_library}) set_target_properties(rime-levers PROPERTIES VERSION ${rime_version} - SOVERSION ${rime_soversion}) + SOVERSION ${rime_soversion} + LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib + RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) if(XCODE_VERSION) set_target_properties(rime-levers PROPERTIES INSTALL_NAME_DIR "@rpath") endif() @@ -138,7 +144,9 @@ if(BUILD_SHARED_LIBS) ${rime_gears_library}) set_target_properties(rime-plugins PROPERTIES VERSION ${rime_version} - SOVERSION ${rime_soversion}) + SOVERSION ${rime_soversion} + LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib + RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) if(XCODE_VERSION) set_target_properties(rime-plugins PROPERTIES INSTALL_NAME_DIR "@rpath") endif() @@ -148,6 +156,8 @@ if(BUILD_SHARED_LIBS) else() add_library(rime-static STATIC ${rime_src}) target_link_libraries(rime-static ${rime_deps}) - set_target_properties(rime-static PROPERTIES OUTPUT_NAME "rime" PREFIX "lib") + set_target_properties(rime-static PROPERTIES + OUTPUT_NAME "rime" PREFIX "lib" + ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) install(TARGETS rime-static DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}) endif()