socket: change debug callbacks to pass struct nl_msg
[project/libnl-tiny.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 3.0)
2
3 PROJECT(libnl-tiny C)
4 INCLUDE(GNUInstallDirs)
5
6 INCLUDE_DIRECTORIES(include)
7
8 ADD_DEFINITIONS(-Wall -Werror -Wextra -Wno-unused-parameter)
9 STRING(REPLACE "-DNDEBUG" "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
10
11 SET(SOURCES
12 attr.c
13 cache.c
14 cache_mngt.c
15 error.c
16 genl.c
17 genl_ctrl.c
18 genl_family.c
19 genl_mngt.c
20 handlers.c
21 msg.c
22 nl.c
23 object.c
24 socket.c
25 unl.c
26 )
27
28 SET(SOVERSION 1 CACHE STRING "Override libnl-tiny library version")
29
30 ADD_LIBRARY(nl-tiny SHARED ${SOURCES})
31 SET_TARGET_PROPERTIES(nl-tiny PROPERTIES SOVERSION ${SOVERSION})
32
33 ADD_LIBRARY(nl-tiny-static STATIC ${SOURCES})
34 SET_TARGET_PROPERTIES(nl-tiny-static PROPERTIES OUTPUT_NAME nl-tiny)
35
36 CONFIGURE_FILE(
37 "${CMAKE_CURRENT_SOURCE_DIR}/libnl-tiny.pc.in"
38 "${CMAKE_CURRENT_BINARY_DIR}/libnl-tiny.pc"
39 @ONLY
40 )
41
42 INSTALL(TARGETS nl-tiny nl-tiny-static LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
43 INSTALL(FILES ${CMAKE_BINARY_DIR}/libnl-tiny.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
44 INSTALL(
45 DIRECTORY ${CMAKE_SOURCE_DIR}/include/
46 DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libnl-tiny
47 FILES_MATCHING PATTERN "*.h"
48 )