source: ogBrowser-Git/src/CMakeLists.txt

jenkins
Last change on this file was 2ff26a8, checked in by Vadim Troshchinskiy Shmelev <vtroshchinskiy@…>, 2 months ago

fix versioning some more

  • Property mode set to 100644
File size: 3.0 KB
Line 
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
11
12
13if (NOT DEFINED CPACK_PACKAGE_VERSION_MAJOR)
14    set(CPACK_PACKAGE_VERSION_MAJOR "2")
15endif()
16
17
18
19if (NOT DEFINED CPACK_PACKAGE_VERSION_MINOR)
20    set(CPACK_PACKAGE_VERSION_MINOR "0")
21endif()
22
23
24if (NOT DEFINED CPACK_PACKAGE_VERSION_PATCH)
25    set(CPACK_PACKAGE_VERSION_PATCH "0")
26endif()
27
28
29set(KB_LAYOUT_DIR "/usr/lib/qtermwidget/kb" CACHE INTERNAL "")
30
31
32find_package(QT NAMES Qt6 COMPONENTS Widgets LinguistTools Network WebEngineWidgets REQUIRED)
33find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets LinguistTools Network WebEngineWidgets REQUIRED)
34
35
36message(STATUS "Building browser with Qt ${QT_VERSION}")
37message(STATUS "Browser version is ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
38
39set(SOURCES
40    main.cpp
41    mainwindow.cpp
42    ogurlhandler.cpp
43    desktopparser.cpp
44    ogwebpage.cpp
45)
46
47file(GLOB TRANSLATIONS "${PROJECT_SOURCE_DIR}/i18n/*.ts")
48message(STATUS "Translations: ${TRANSLATIONS}")
49
50
51
52
53add_executable(OGBrowser ${SOURCES})
54
55qt6_add_translations(OGBrowser TS_FILES ${TRANSLATIONS} QM_FILES_OUTPUT_VARIABLE qm_files)
56
57set_property(TARGET OGBrowser PROPERTY CXX_STANDARD 17)
58set_property(TARGET OGBrowser PROPERTY CXX_STANDARD_REQUIRED ON)
59
60target_include_directories(OGBrowser PRIVATE "digitalclock" "qtermwidget/lib")
61target_link_libraries(OGBrowser PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Network Qt${QT_VERSION_MAJOR}::WebEngineWidgets DigitalClock qtermwidget6)
62
63message(STATUS "Looking for headers in ${PROJECT_BINARY_DIR}")
64target_include_directories(OGBrowser PRIVATE ${qtermwidget_INCLUDE_DIRS} ${DigitalClock_INCLUDE_DIRS} ${qtermwidget_LIB_DIRS}/lib ${PROJECT_BINARY_DIR}/../lib)
65target_link_directories(OGBrowser PRIVATE ${qtermwidget_LIB_DIRS} ${DigitalClock_LIB_DIRS})
66
67
68install(TARGETS OGBrowser DESTINATION bin )
69install(FILES ${qm_files} DESTINATION "translations")
70
71
72
73# CPack settings must be set before including CPack
74set(CPACK_PACKAGE_NAME "OGBrowser")
75set(CPACK_PACKAGE_VENDOR "OpenGnsys")
76set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenGnsys Browser")
77set(CMAKE_PROJECT_HOMEPAGE_URL "https://opengnsys.es/web/")
78
79set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
80
81set(CPACK_SET_DESTDIR true)
82set(CPACK_PACKAGING_INSTALL_PREFIX "/usr")
83
84# Debian package support
85set(CPACK_PACKAGE_CONTACT "Vadim Troshchinskiy <vadim@qindel.com>")
86set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Vadim Troshchinskiy <vadim@qindel.com>")
87set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS "ON")
88set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS_POLICY ">=")
89#set(CPACK_DEBIAN_PACKAGE_DEPENDS "")
90set(CPACK_DEBIAN_PACKAGE_SECTION "web")
91
92# RedHat package support. Dependencies are automatically detected
93set(CPACK_RPM_PACKAGE_GROUP "Applications/Internet")
94set(CPACK_RPM_PACKAGE_RELEASE "1")
95set(CPACK_RPM_PACKAGE_LICENSE "GPL-3.0")
96
97# This goes last
98include(CPack)
99
100
Note: See TracBrowser for help on using the repository browser.