1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(hal-backend-device-common C)
4 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
10 INCLUDE(FindPkgConfig)
11 pkg_check_modules(hal-backend-device-common_pkgs REQUIRED libusbgx libsyscommon dlog libudev)
13 FOREACH(flag ${hal-backend-device-common_pkgs_CFLAGS})
14 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
17 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
18 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
20 ADD_DEFINITIONS("-D_GNU_SOURCE")
21 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
23 IF(ENABLE_DLOG STREQUAL on)
24 ADD_DEFINITIONS("-DFEATURE_DLOG")
27 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${hal-backend-device-common_pkgs_LDFLAGS})
29 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${HAL_LIB_DIR} COMPONENT RuntimeLibraries)
31 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.Apache-2.0 DESTINATION ${HAL_LICENSE_DIR}/${PROJECT_NAME})
32 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/hal-backend-common.h DESTINATION ${HAL_INCLUDE_DIR}/device)
33 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/hal-backend-common-udev.h DESTINATION ${HAL_INCLUDE_DIR}/device)
35 CONFIGURE_FILE(hal-backend-device-common.pc.in hal-backend-device-common.pc @ONLY)
36 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/hal-backend-device-common.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)