This repository has been archived by the owner on Jan 10, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathCMakeLists.txt
56 lines (42 loc) · 1.59 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
cmake_minimum_required(VERSION 3.5)
project(baseencode)
include(GNUInstallDirs)
enable_testing()
add_subdirectory(tests)
set(BUILD_MAJOR "1")
set(BUILD_MINOR "0")
set(BUILD_VERSION "15")
set(BUILD_VERSION ${BUILD_MAJOR}.${BUILD_MINOR}.${BUILD_VERSION})
set(CMAKE_C_STANDARD 11)
set(BASEENCODE_HEADERS src/baseencode.h)
set(SOURCE_FILES src/base32.c src/base64.c)
set(CMAKE_C_FLAGS "-Wall -Werror -fPIC")
add_library(${PROJECT_NAME} SHARED ${SOURCE_FILES})
target_link_libraries(${PROJECT_NAME} ${PROJECT_LIBS})
set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${BUILD_VERSION} SOVERSION ${BUILD_MAJOR})
set(BASEENCODE_LIB_DIR "${CMAKE_INSTALL_LIBDIR}")
set(BASEENCODE_INC_DIR "${CMAKE_INSTALL_INCLUDEDIR}")
install(
TARGETS ${PROJECT_NAME}
ARCHIVE DESTINATION ${BASEENCODE_LIB_DIR}
LIBRARY DESTINATION ${BASEENCODE_LIB_DIR}
COMPONENT library
)
install(
FILES ${BASEENCODE_HEADERS}
DESTINATION ${BASEENCODE_INC_DIR}
)
# Allow adding prefix if CMAKE_INSTALL_INCLUDEDIR not absolute.
if(IS_ABSOLUTE "${CMAKE_INSTALL_INCLUDEDIR}")
set(PKGCONFIG_TARGET_INCLUDES "${CMAKE_INSTALL_INCLUDEDIR}")
else()
set(PKGCONFIG_TARGET_INCLUDES "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
endif()
# Allow adding prefix if CMAKE_INSTALL_LIBDIR not absolute.
if(IS_ABSOLUTE "${CMAKE_INSTALL_LIBDIR}")
set(PKGCONFIG_TARGET_LIBS "${CMAKE_INSTALL_LIBDIR}")
else()
set(PKGCONFIG_TARGET_LIBS "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
endif()
configure_file("baseencode.pc.in" "baseencode.pc" @ONLY)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/baseencode.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig/)