cmake_minimum_required(VERSION 3.7) project(ublexec) find_package(PkgConfig REQUIRED) pkg_check_modules(GTK REQUIRED gtkmm-3.0) include_directories(${GTK_INCLUDE_DIRS}) link_directories(${GTK_LIBRARY_DIRS}) add_definitions(${GTK_CFLAGS_OTHER}) option(WEBKIT_FOUND "" ON) if(WEBKIT_FOUND) PKG_CHECK_MODULES(WEBKIT REQUIRED webkit2gtk-4.0 webkit2gtk-web-extension-4.0) include_directories(${WEBKIT_INCLUDE_DIRS}) link_directories(${WEBKIT_LIBRARY_DIRS}) add_definitions(${WEBKIT_CFLAGS_OTHER}) endif() #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a -g") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always \ -O2 -pipe -fno-plt -fexceptions \ -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ -fstack-clash-protection -fcf-protection -g") set(SOURCE_FILES main.cc ublexec.cc ublexec.h ubl-util-standard.h ubl-util-standard.c) set(LIBRARIES ${GTK_LIBRARIES} pthread) add_executable(ublexec ${SOURCE_FILES}) target_link_libraries(ublexec PUBLIC ${WEBKIT_LIBRARIES} ${LIBRARIES}) target_include_directories(ublexec PUBLIC "${PROJECT_BINARY_DIR}" ${WEBKIT_INCLUDE_DIRS} ) install(TARGETS ublexec DESTINATION bin)