Quick and dirty install target

Signed-off-by: Slendi <slendi@socopon.com>
This commit is contained in:
2025-08-24 21:33:29 +03:00
parent 34ce572098
commit e457d0f362
3 changed files with 52 additions and 0 deletions

View File

@@ -11,6 +11,46 @@ add_library(smath INTERFACE)
target_include_directories(smath INTERFACE ${CMAKE_SOURCE_DIR}/include)
add_library(smath::smath ALIAS smath)
include(CMakePackageConfigHelpers)
install(TARGETS smath
EXPORT smathTargets
)
install(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include)
install(EXPORT smathTargets
NAMESPACE smath::
FILE smathTargets.cmake
DESTINATION lib/cmake/smath
)
write_basic_package_version_file(
"${CMAKE_CURRENT_BINARY_DIR}/smathConfigVersion.cmake"
VERSION ${PROJECT_VERSION}
COMPATIBILITY SameMajorVersion
)
configure_package_config_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/smathConfig.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/smathConfig.cmake"
INSTALL_DESTINATION "lib/cmake/smath"
)
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/smath.pc.in"
"${CMAKE_CURRENT_BINARY_DIR}/smath.pc"
@ONLY
)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/smath.pc"
DESTINATION lib/pkgconfig
)
install(FILES
"${CMAKE_CURRENT_BINARY_DIR}/smathConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/smathConfigVersion.cmake"
DESTINATION lib/cmake/smath
)
if(BUILD_EXAMPLES)
file(GLOB EXAMPLE_SOURCES "${CMAKE_SOURCE_DIR}/examples/*.cpp")
foreach(EXAMPLE_FILE ${EXAMPLE_SOURCES})

8
cmake/smath.pc.in Normal file
View File

@@ -0,0 +1,8 @@
prefix=@CMAKE_INSTALL_PREFIX@
includedir=${prefix}/include
Name: smath
Description: Simple header-only math library
Version: @PROJECT_VERSION@
Cflags: -I${includedir}
Libs:

View File

@@ -0,0 +1,4 @@
@PACKAGE_INIT@
include("${CMAKE_CURRENT_LIST_DIR}/smathTargets.cmake")
check_required_components(smath)