source: ogBrowser-Git/src/CMakeLists.txt @ 816ccac

jenkinsmain
Last change on this file since 816ccac was 5e5c125, checked in by Vadim Troshchinskiy Shmelev <vtroshchinskiy@…>, 16 months ago

Add CPack for packaging

  • Property mode set to 100644
File size: 2.5 KB
RevLine 
[98c1a79]1cmake_minimum_required(VERSION 3.16)
2
3project(OGBrowser LANGUAGES CXX)
4
5set(CMAKE_INCLUDE_CURRENT_DIR ON)
6
7set(CMAKE_AUTOUIC ON)
8set(CMAKE_AUTOMOC ON)
9set(CMAKE_AUTORCC ON)
10
[5e5c125]11set(KB_LAYOUT_DIR "/usr/lib/qtermwidget/kb" CACHE INTERNAL "")
12
[98c1a79]13
[07ea3f8]14find_package(QT NAMES Qt6 COMPONENTS Widgets LinguistTools Network WebEngineWidgets REQUIRED)
[98c1a79]15find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets LinguistTools Network WebEngineWidgets REQUIRED)
16
17
18message(STATUS "Building browser with Qt ${QT_VERSION}")
19
20set(SOURCES
21    main.cpp
22    mainwindow.cpp
[07ea3f8]23    ogurlhandler.cpp
[00271ab]24)
[98c1a79]25
[00271ab]26file(GLOB TRANSLATIONS "${PROJECT_SOURCE_DIR}/i18n/*.ts")
27message(STATUS "Translations: ${TRANSLATIONS}")
[98c1a79]28
[00271ab]29
30
31
32add_executable(OGBrowser ${SOURCES})
33
34qt6_add_translations(OGBrowser TS_FILES ${TRANSLATIONS} QM_FILES_OUTPUT_VARIABLE qm_files)
[98c1a79]35
36set_property(TARGET OGBrowser PROPERTY CXX_STANDARD 17)
37set_property(TARGET OGBrowser PROPERTY CXX_STANDARD_REQUIRED ON)
38
39target_include_directories(OGBrowser PRIVATE "digitalclock" "qtermwidget/lib")
[07ea3f8]40target_link_libraries(OGBrowser PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Network Qt${QT_VERSION_MAJOR}::WebEngineWidgets DigitalClock qtermwidget6)
[98c1a79]41
42message(STATUS "Looking for headers in ${PROJECT_BINARY_DIR}")
43target_include_directories(OGBrowser PRIVATE ${qtermwidget_INCLUDE_DIRS} ${DigitalClock_INCLUDE_DIRS} ${qtermwidget_LIB_DIRS}/lib ${PROJECT_BINARY_DIR}/../lib)
44target_link_directories(OGBrowser PRIVATE ${qtermwidget_LIB_DIRS} ${DigitalClock_LIB_DIRS})
45
46
[10e022b]47install(TARGETS OGBrowser DESTINATION bin )
[00271ab]48install(FILES ${qm_files} DESTINATION "translations")
[98c1a79]49
[5e5c125]50
51
52# CPack settings must be set before including CPack
53set(CPACK_PACKAGE_NAME "OGBrowser")
54set(CPACK_PACKAGE_VENDOR "OpenGnsys")
55set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenGnsys Browser")
56set(CMAKE_PROJECT_HOMEPAGE_URL "https://opengnsys.es/web/")
57set(CPACK_PACKAGE_VERSION "2.0")
58
59set(CPACK_SET_DESTDIR true)
60set(CPACK_PACKAGING_INSTALL_PREFIX "/usr")
61
62# Debian package support
63set(CPACK_PACKAGE_CONTACT "Vadim Troshchinskiy <vadim@qindel.com>")
64set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Vadim Troshchinskiy <vadim@qindel.com>")
65set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS "ON")
66set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS_POLICY ">=")
67#set(CPACK_DEBIAN_PACKAGE_DEPENDS "")
68set(CPACK_DEBIAN_PACKAGE_SECTION "web")
69
70# RedHat package support. Dependencies are automatically detected
71set(CPACK_RPM_PACKAGE_GROUP "Applications/Internet")
72set(CPACK_RPM_PACKAGE_RELEASE "1")
73set(CPACK_RPM_PACKAGE_LICENSE "GPL-3.0")
74
75# This goes last
76include(CPack)
77
78
Note: See TracBrowser for help on using the repository browser.