CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(hal-api-common C)
+PROJECT(hal-api-common)
SET(VERSION_MAJOR 0)
SET(VERSION "${VERSION_MAJOR}.1.0")
SET(LIBDIR ${CMAKE_LIBDIR_PREFIX})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src)
SET(PKG_MODULES
dlog
gio-2.0
glib-2.0
+ json-c
)
INCLUDE(FindPkgConfig)
SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
ENDFOREACH(flag)
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -fPIE")
+SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -fPIC")
SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -fno-omit-frame-pointer -finstrument-functions")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -lrt")
SET(CMAKE_EXE_LINKER_FLAGS "-pie")
ADD_DEFINITIONS("-DLOG_TAG=\"HALAPI_COMMON\"")
SET(SRCS
- src/hal-api-common.c)
-
-ADD_LIBRARY( ${PROJECT_NAME} SHARED ${SRCS})
-TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${pkgs_LDFLAGS} -Wl,-z,nodelete,--no-undefined)
-SET_TARGET_PROPERTIES( ${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
-SET_TARGET_PROPERTIES( ${PROJECT_NAME} PROPERTIES VERSION ${VERSION})
-
-CONFIGURE_FILE( ${PROJECT_NAME}.pc ${PROJECT_NAME}.pc @ONLY)
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIBDIR}/hal)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/hal-common.h DESTINATION ${INCLUDEDIR}/hal)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIBDIR}/pkgconfig)
+ src/hal-api-common.c
+ src/hal-api-conf.c)
+
+ADD_LIBRARY( ${PROJECT_NAME} SHARED ${SRCS})
+TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${pkgs_LDFLAGS} -ldl -Wl,-z,nodelete,--no-undefined)
+SET_TARGET_PROPERTIES( ${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
+SET_TARGET_PROPERTIES( ${PROJECT_NAME} PROPERTIES VERSION ${VERSION})
+
+CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/packaging/${PROJECT_NAME}.pc.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/packaging/${PROJECT_NAME}.pc
+ @ONLY)
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIBDIR}/hal)
+INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/
+ DESTINATION ${INCLUDEDIR}/hal
+ FILES_MATCHING PATTERN "*.h")
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/${PROJECT_NAME}.pc
+ DESTINATION ${LIBDIR}/pkgconfig)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/hal-rpmdb-checker.conf
+ DESTINATION /usr/lib/tmpfiles.d)
+
+ADD_SUBDIRECTORY(tests)