1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 SET(PACKAGE_NAME privilege-info)
3 PROJECT(${PACKAGE_NAME})
6 ${PROJECT_SOURCE_DIR}/privilege_information.c
9 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include)
11 SET(requires glib-2.0 dlog security-privilege-manager cynara-client cynara-session libsmack capi-system-info)
12 INCLUDE(FindPkgConfig)
13 pkg_check_modules(${PACKAGE_NAME} REQUIRED ${requires})
14 FOREACH(flag ${${PACKAGE_NAME}_CFLAGS})
15 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
19 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fPIC -fvisibility=hidden -D_WITH_SYSTEMD_")
20 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ${PACKAGE_NAME_CFLAGS}")
22 ########################################################
23 # For libprivilege-info libraries(.so)
24 ########################################################
26 SET(TARGET_PRIV_INFO_LIB "privilege-info")
28 SET(VERSION "${SO_VERSION}.0.0")
30 ADD_LIBRARY(${TARGET_PRIV_INFO_LIB} SHARED ${PRIV_INFO_SOURCES})
32 SET_TARGET_PROPERTIES(${TARGET_PRIV_INFO_LIB} PROPERTIES
33 SOVERSION ${SO_VERSION}
37 TARGET_LINK_LIBRARIES(${TARGET_PRIV_INFO_LIB} ${${PACKAGE_NAME}_LDFLAGS})
39 #######################################################
41 INSTALL(TARGETS ${PACKAGE_NAME} DESTINATION ${LIBDIR})
42 INSTALL(FILES ${PROJECT_SOURCE_DIR}/include/privilege_information.h DESTINATION ${INCLUDEDIR})
44 SET(PC_LDFLAGS -l${PACKAGE_NAME})
45 CONFIGURE_FILE(../${PACKAGE_NAME}.pc.in ${PACKAGE_NAME}.pc @ONLY)
46 INSTALL(FILES ${PACKAGE_NAME}.pc DESTINATION ${LIBDIR}/pkgconfig)