cmake_minimum_required(VERSION 2.8) project(mdiary) #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(WEBKIT REQUIRED webkit2gtk-4.0) INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS} ${GOBJECT2_INCLUDE_DIRS} ${GTK3_INCLUDE_DIRS} ${WEBKIT_INCLUDE_DIRS}) LINK_DIRECTORIES (${GLIB2_LIBRARY_DIRS} ${GOBJECT2_LIBRARY_DIRS} ${GTK3_LIBRARY_DIRS} ${WEBKIT_LIBRARY_DIRS}) add_definitions(${GLIB2_CFLAGS_OTHER} ${GOBJECT2_CFLAGS_OTHER} ${GTK3_CFLAGS_OTHER} ${WEBKIT_CFLAGS_OTHER}) add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/resources.c" COMMAND glib-compile-resources "${CMAKE_CURRENT_SOURCE_DIR}/mdiary.gresource.xml" --target="${CMAKE_CURRENT_BINARY_DIR}/resources.c" --generate-source WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/glade/mainWindow.glade" "${CMAKE_CURRENT_SOURCE_DIR}/mdiary.gresource.xml" COMMENT "Generating resources" ) add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/hoedown/libhoedown.a" COMMAND make libhoedown.a WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/src/hoedown" COMMENT "Compiling libhoedown" ) ADD_LIBRARY(HOEDOWN STATIC IMPORTED) SET_TARGET_PROPERTIES(HOEDOWN PROPERTIES IMPORTED_LOCATION "${CMAKE_CURRENT_SOURCE_DIR}/src/hoedown/libhoedown.a" ) aux_source_directory(./src SRC_LIST) add_executable(${PROJECT_NAME} ${SRC_LIST}) target_sources(${PROJECT_NAME} PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/resources.c") target_sources(${PROJECT_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/src/hoedown/libhoedown.a") target_link_libraries(${PROJECT_NAME} ${GTK3_LIBRARIES} ${WEBKIT_LIBRARIES} HOEDOWN) install (TARGETS ${PROJECT_NAME} DESTINATION bin)