diff options
Diffstat (limited to 'src/build-data/cmake.in')
-rw-r--r-- | src/build-data/cmake.in | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/src/build-data/cmake.in b/src/build-data/cmake.in index 4fa906008..33c6cb962 100644 --- a/src/build-data/cmake.in +++ b/src/build-data/cmake.in @@ -6,23 +6,34 @@ cmake_policy(SET CMP0042 NEW) endif() set(BOTAN_SOURCES -%{cmake_lib_sources}) +%{for lib_srcs} + "${CMAKE_CURRENT_LIST_DIR}/%{i}" +%{endfor} +) set(BOTAN_CLI -%{cmake_cli_sources}) +%{for cli_srcs} + "${CMAKE_CURRENT_LIST_DIR}/%{i}" +%{endfor} +) set(BOTAN_TESTS -%{cmake_test_sources}) +%{for test_srcs} + "${CMAKE_CURRENT_LIST_DIR}/%{i}" +%{endfor} +) -%{cmake_compile_properties} +%{for isa_build_info} +set_source_files_properties("${CMAKE_CURRENT_LIST_DIR}/%{src}" PROPERTIES COMPILE_FLAGS "%{isa_flags}") +%{endfor} option(ENABLED_OPTIONAL_WARINIGS "If enabled more strict warning policy will be used" OFF) option(ENABLED_LTO "If enabled link time optimization will be used" OFF) -set(COMPILER_FEATURES_RELEASE %{cc_lang_flags} %{cc_compile_flags} %{cxx_abi_flags}) +set(COMPILER_FEATURES_RELEASE %{cc_lang_flags} %{cc_compile_opt_flags} %{cxx_abi_opt_flags}) set(COMPILER_FEATURES_DEBUG %{cc_lang_flags} %{cc_compile_debug_flags} %{cxx_abi_debug_flags}) set(COMPILER_FEATURES $<$<NOT:$<CONFIG:DEBUG>>:${COMPILER_FEATURES_RELEASE}> $<$<CONFIG:DEBUG>:${COMPILER_FEATURES_DEBUG}>) -set(SHARED_FEATURES %{cmake_shared_flags}) +set(SHARED_FEATURES %{shared_flags}) set(STATIC_FEATURES -DBOTAN_DLL=) set(COMPILER_WARNINGS %{cc_warning_flags}) set(COMPILER_INCLUDE_DIRS build/include build/include/external) @@ -34,14 +45,14 @@ if(ENABLED_OPTIONAL_WARINIGS) endif() add_library(${PROJECT_NAME} STATIC ${BOTAN_SOURCES}) -target_link_libraries(${PROJECT_NAME} PUBLIC %{cmake_libs_used}) +target_link_libraries(${PROJECT_NAME} PUBLIC %{cmake_link_to}) target_compile_options(${PROJECT_NAME} PUBLIC ${COMPILER_WARNINGS} ${COMPILER_FEATURES} ${COMPILER_OPTIONAL_WARNINGS} PRIVATE ${STATIC_FEATURES}) target_include_directories(${PROJECT_NAME} PUBLIC ${COMPILER_INCLUDE_DIRS}) set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}-static) add_library(${PROJECT_NAME}_shared SHARED ${BOTAN_SOURCES}) -target_link_libraries(${PROJECT_NAME}_shared PUBLIC %{cmake_libs_used}) +target_link_libraries(${PROJECT_NAME}_shared PUBLIC %{cmake_link_to}) target_compile_options(${PROJECT_NAME}_shared PUBLIC ${COMPILER_WARNINGS} ${COMPILER_FEATURES} ${COMPILER_OPTIONAL_WARNINGS} PRIVATE ${SHARED_FEATURES}) target_include_directories(${PROJECT_NAME}_shared PUBLIC ${COMPILER_INCLUDE_DIRS}) set_target_properties(${PROJECT_NAME}_shared PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) |