32 lines
1.8 KiB
CMake
32 lines
1.8 KiB
CMake
cmake_minimum_required(VERSION 2.8)
|
|
|
|
project(yacos)
|
|
#set(CMAKE_BUILD_TYPE Release)
|
|
set(CMAKE_C_FLAGS "-Wall")
|
|
|
|
find_package(PkgConfig REQUIRED)
|
|
pkg_check_modules(GLIB2 REQUIRED glib-2.0)
|
|
pkg_check_modules(GOBJECT2 REQUIRED gobject-2.0)
|
|
pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
|
|
pkg_check_modules(NFC REQUIRED libnfc)
|
|
pkg_check_modules(SOUP REQUIRED libsoup-2.4)
|
|
pkg_check_modules(JSON REQUIRED json-glib-1.0)
|
|
|
|
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS} ${GOBJECT2_INCLUDE_DIRS} ${GTK3_INCLUDE_DIRS} ${NFC_INCLUDE_DIRS} ${SOUP_INCLUDE_DIRS} ${JSON_INCLUDE_DIRS})
|
|
LINK_DIRECTORIES (${GLIB2_LIBRARY_DIRS} ${GOBJECT2_LIBRARY_DIRS} ${GTK3_LIBRARY_DIRS} ${NFC_LIBRARY_DIRS} ${SOUP_LIBRARY_DIRS} ${JSON_LIBRARY_DIRS})
|
|
add_definitions(${GLIB2_CFLAGS_OTHER} ${GOBJECT2_CFLAGS_OTHER} ${GTK3_CFLAGS_OTHER} ${NFC_CFLAGS_OTHER} ${SOUP_CFLAGS_OTHER} ${JSON_CFLAGS_OTHER})
|
|
|
|
add_custom_target(glib-resources DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/resources.c)
|
|
add_custom_command(DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/glade/*.glade "${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.gresource.xml"
|
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/resources.c
|
|
COMMAND glib-compile-resources --target="${CMAKE_CURRENT_BINARY_DIR}/resources.c" --sourcedir="${CMAKE_CURRENT_SOURCE_DIR}" --generate-source "${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.gresource.xml")
|
|
|
|
FILE(GLOB_RECURSE HEADERS "src/*.h")
|
|
aux_source_directory(./src SRC_LIST)
|
|
add_executable(${PROJECT_NAME} ${SRC_LIST} "${CMAKE_CURRENT_BINARY_DIR}/resources.c" "${HEADERS}")
|
|
add_dependencies(${PROJECT_NAME} glib-resources)
|
|
SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/resources.c PROPERTIES GENERATED 1)
|
|
target_link_libraries(${PROJECT_NAME} ${GTK3_LIBRARIES} ${NFC_LIBRARIES} ${SOUP_LIBRARIES} ${JSON_LIBRARIES})
|
|
|
|
install (TARGETS ${PROJECT_NAME} DESTINATION bin)
|