target_link_libraries(Step2 PUBLIC
MathFunctions
)
9. option
option(USE_MATH "Use my math functions"ON)
10. if
if(USE_MATH)add_subdirectory(3rdParty/MathFunctions)list(APPEND EXTRA_LIBS MathFunctions)list(APPEND EXTRA_INCLUDES
"${PROJECT_SOURCE_DIR}/3rdParty/MathFunctions")endif()if(HAVE_LOG AND HAVE_EXP)target_compile_definitions(MathFunctions
PRIVATE"HAVE_LOG""HAVE_EXP")endif()if(line MATCHES"=")string(REGEX MATCH "^[^=]*" name ${line})string(REGEX MATCH "[^=]*$" value ${line})set(${name}${value})endif()if(TARGET MySqrt)list(APPEND installable_libs MySqrt)endif()
11. list
list(APPEND EXTRA_LIBS MathFunctions)
12. install
install(TARGETS MathFunctions
DESTINATION lib
)install(FILES MathFunctions.h
DESTINATION include/MathFunctions
)install(TARGETS ${PROJECT_NAME}${PROJECT_NAME}_static
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
RUNTIME DESTINATION bin
INCLUDES DESTINATION include
)install(DIRECTORY include
DESTINATION include
)install(TARGETS ${installable_libs}
EXPORT MathFunctionsTargets
LIBRARY DESTINATION lib
)install(EXPORT MathFunctionsTargets
FILE MathFunctionsTargets.cmake
NAMESPACE ${PROJECT_NAME}::
DESTINATION lib/cmake/MathFunctions
)
foreach(line ${CONFIG_CONTENT})string(REGEX MTACH "^[^#]*" line ${line})if(line MATCHED "=")string(REGEX MATCH "^[^=]*" name ${line})string(REGEX MATCH "[^=]*$" value ${line})set(${name}${value})endif()endforeach()