You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
2.0 KiB
61 lines
2.0 KiB
cmake_minimum_required(VERSION 3.9)
|
|
project(ublsettings-gtk3 VERSION 3.1)
|
|
include(GNUInstallDirs)
|
|
|
|
find_package(PkgConfig REQUIRED)
|
|
|
|
pkg_check_modules(GTK REQUIRED gtk+-3.0)
|
|
include_directories(${GTK_INCLUDE_DIRS})
|
|
link_directories(${GTK_LIBRARY_DIRS})
|
|
add_definitions(${GTK_CFLAGS_OTHER})
|
|
|
|
pkg_check_modules(VTE291 REQUIRED vte-2.91)
|
|
include_directories(${VTE291_INCLUDE_DIRS})
|
|
link_directories(${VTE291_LIBRARY_DIRS})
|
|
add_definitions(${VTE291_CFLAGS_OTHER})
|
|
|
|
find_library(WEBKIT_LIBRARIES_FOUND webkit2gtk-4.0 webkit2gtk-web-extension-4.0)
|
|
|
|
option(WEBKIT_FOUND "No" OFF)
|
|
if(WEBKIT_LIBRARIES_FOUND)
|
|
option(WEBKIT_FOUND "Yes" ON)
|
|
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 \
|
|
# -O2 -pipe -fno-plt -fexceptions \
|
|
# -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
|
|
# -fstack-clash-protection -fcf-protection")
|
|
|
|
add_library(${PROJECT_NAME} SHARED
|
|
ublsettings-gtk3.c
|
|
ublsettings-gtk3.h)
|
|
|
|
|
|
set(LIBRARIES
|
|
${GTK_LIBRARIES}
|
|
${WEBKIT_LIBRARIES}
|
|
${VTE291_LIBRARIES}
|
|
ublsettings
|
|
pthread)
|
|
|
|
message(${CMAKE_INSTALL_LIBDIR})
|
|
|
|
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_BINARY_DIR})
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC ${LIBRARIES})
|
|
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE C)
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${PROJECT_VERSION})
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES SOVERSION ${PROJECT_VERSION_MAJOR})
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER ${PROJECT_NAME}.h)
|
|
|
|
install(TARGETS ${PROJECT_NAME}
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
|
)
|
|
# Set pkg-config file to install. |