CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(hal-backend-device-common C) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include) SET(SRCS src/udev/udev.c ) INCLUDE(FindPkgConfig) pkg_check_modules(hal-backend-device-common_pkgs REQUIRED libusbgx libsyscommon dlog libudev) FOREACH(flag ${hal-backend-device-common_pkgs_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") ADD_DEFINITIONS("-D_GNU_SOURCE") ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS}) IF(ENABLE_DLOG STREQUAL on) ADD_DEFINITIONS("-DFEATURE_DLOG") ENDIF() TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${hal-backend-device-common_pkgs_LDFLAGS}) INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${HAL_LIB_DIR} COMPONENT RuntimeLibraries) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.Apache-2.0 DESTINATION ${HAL_LICENSE_DIR}/${PROJECT_NAME}) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/hal-backend-common.h DESTINATION ${HAL_INCLUDE_DIR}/device) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/hal-backend-common-udev.h DESTINATION ${HAL_INCLUDE_DIR}/device) CONFIGURE_FILE(hal-backend-device-common.pc.in hal-backend-device-common.pc @ONLY) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/hal-backend-device-common.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)