Compare commits

...

66 Commits

Author SHA1 Message Date
7545b6ee99 Update Standards-Version to 4.7.1, no changes needed. 2025-02-21 15:58:14 -06:00
d20ac464c6 Upload to Plucky 2025-01-03 01:49:28 -06:00
08d2558ab6 Bump the minimum C++ standard to 20. 2025-01-03 01:49:01 -06:00
6a830527f0 Upload to Plucky 2024-11-15 15:34:45 -06:00
5265072648 New upstream release. 2024-11-05 11:00:18 -06:00
Aaron Rainbolt
b9b47695a9 Upload to Plucky 2024-11-05 10:59:34 -06:00
f9547b646a pkg-config -> pkgconf 2024-04-23 15:35:40 -05:00
33e3f37553 Bump Standards-version to 4.7.0, no changes needed. 2024-04-23 15:30:30 -05:00
6efce24ec0 Update debian/copyright. 2024-04-23 15:29:49 -05:00
92039c8848 Update build and runtime dependencies for Qt 6. 2024-04-23 15:29:22 -05:00
3cc388ced7 New upstream release. 2024-04-23 15:23:31 -05:00
ed82705efd Upload to Mantic. 2023-05-10 11:34:20 -05:00
fdd29ab40a Update Standards-version to 4.6.2, no changes needed. 2023-05-10 11:33:54 -05:00
16d49cb644 Update copyright years. 2023-05-10 11:33:06 -05:00
b69b6e2e95 Run wrap-and-sort. 2023-05-10 11:20:24 -05:00
1a5d20464a Remove reverse-applicable cpp17.patch. 2023-05-10 11:19:58 -05:00
b35c117cec New upstream release. 2023-05-10 11:19:28 -05:00
eeb07eef61 Build using C++17 by default instead of C++14, to be compatible with KDE Frameworks and Qt. 2023-01-25 11:40:03 -06:00
7d0b5f0a9b Put the release name in. 2022-11-28 07:14:46 -06:00
8d937a7595 Overhauled copyright file. 2022-11-27 18:35:57 -06:00
71d6036ed0 Added 'Rules-Requires-Root: no'. 2022-11-27 13:49:24 -06:00
583d3a3c33 Upload to Ubuntu. 2022-11-16 17:05:37 -06:00
a622f01e69 Brief copyright update. 2022-11-16 17:04:36 -06:00
3a5b0b4dbe Remove upstream-applicable patch. 2022-11-16 16:57:42 -06:00
9f599a311e Lubuntuify the package slightly, to make debhelper happy. 2022-11-16 16:56:12 -06:00
5538f4717b Actually fix the uscan error. Thanks for the help, arraybolt3! 2022-11-16 16:53:09 -06:00
723fcf251c Start a new changelog entry. 2022-11-16 16:49:31 -06:00
4a3b50aa64 Sync with Debian version 0.11.0-2. 2022-11-16 16:48:25 -06:00
7a0b14c5d6 Sync with Debian version 0.11.0-1. 2022-11-16 16:47:05 -06:00
848ca31f01 Sync with Debian version 0.11.0-0.1. 2022-11-16 16:46:18 -06:00
19375834f1 Sync with Ubuntu version 0.10.0-1ubuntu1. 2022-11-16 16:43:52 -06:00
057c7dac5c Sync with Debian version 0.10.0-1. 2022-11-16 16:42:49 -06:00
apt-ghetto
32624029a8 New upstream version
Summary:
Packaged new upstream version 0.9.0.
Update debian/copyright
Update debian/changelog
Update debian/control to use debhelper-compat 13
Run wrap-and-sort

Test Plan: The package does not fail to build

Reviewers: kc2bez, wxl, tsimonq2

Reviewed By: kc2bez

Differential Revision: https://phab.lubuntu.me/D113
2021-08-08 14:35:04 -04:00
Raman Sarda
2e714bd117 New upstream version.
Summary: Merge was stuck in merge-o-matic due to Diff3 conflict markers. Now resolved.

Test Plan: check if this is indeed correct merge according to ubuntu standards.

Reviewers: wxl, kc2bez

Reviewed By: wxl, kc2bez

Differential Revision: https://phab.lubuntu.me/D104
2021-01-24 01:14:08 +05:30
e82e02f9cb Upload to Groovy. 2020-06-03 22:07:05 -05:00
493786cee8 Run wrap-and-sort. 2020-04-28 18:21:33 -05:00
8d68aa451a Bump Standards-version to 4.5.0, no changes needed. 2020-04-28 18:21:05 -05:00
f8821818c2 Update the upstream signing key. 2020-04-28 18:20:06 -05:00
7be89078c4 New upstream release. 2020-04-28 18:19:50 -05:00
Rik Mills
cb3001e7d9 merge from debian buster 2019-04-02 17:44:44 +01:00
Simon Quigley
537626be45 Upload to Disco. 2019-01-25 22:01:55 -06:00
Simon Quigley
be45f5c1be Bump debhelper compat to 12, no changes needed. 2019-01-25 21:58:17 -06:00
Simon Quigley
7945d10241 Bump Standards-version to 4.3.0, no changes needed. 2019-01-25 21:57:48 -06:00
Simon Quigley
1bf17935e9 New upstream release. 2019-01-25 21:57:28 -06:00
Simon Quigley
147560d1c6 Upload to Cosmic. 2018-05-21 21:42:27 -05:00
Simon Quigley
b2724208a6 Remove erraneous whitespace. 2018-05-21 21:40:37 -05:00
Simon Quigley
a2826c90f9 Remove pristine-tar files. 2018-05-21 21:39:30 -05:00
Simon Quigley
208a3baaeb Update build depends. 2018-05-21 21:38:59 -05:00
Simon Quigley
018ed6c225 Update copyright. 2018-05-21 21:38:38 -05:00
Simon Quigley
468f62bee9 Update Vcs-* and Maintainer to Lubuntu values. 2018-05-21 21:36:59 -05:00
Simon Quigley
d442a72338 New upstream release. 2018-05-21 21:34:28 -05:00
Alf Gaida
ffd86091c4 Really fixed VCS fields and watch file 2018-04-29 23:12:46 +02:00
Alf Gaida
f7d7aa1c1b Some updates in debian $foo
* Bumped compat to 11
* Bumped debhelper to >= 11~
* Removed cmake minimum version
* Bumped Standards to 4.1.4
* Changed VCS fields for salsa
* Fixed homepage and Sources url to /lxqt
* Bumped years in copyright
* Removed trailing whitespaces
2018-04-26 21:00:40 +02:00
Alf Gaida
f8f952e391 Cleanup debian/*
* Bumped Standards to 4.1.2
* Removed branch from VCS fields
* Removed debian/gbp.conf
2017-12-14 18:28:12 +01:00
Alf Gaida
7971e93b54 Switch to sid 2017-12-04 02:50:23 +01:00
Alf Gaida
4a1b765d5f Merge branch 'debian/experimental' into debian/sid 2017-12-04 02:45:14 +01:00
Alf Gaida
5f7c4b9c79 Prepare Migration experimental --> sid 2017-12-03 21:03:49 +01:00
Alf Gaida
4523a1c669 Imported upstream release 0.4.0. 2017-12-03 20:52:09 +01:00
Alf Gaida
ef7b3bb1fa Demote git and lintian to recommends
- if not installed some dev-scripts will not  work, a dev should
  know how to handle the situation.
2017-10-25 01:42:30 +02:00
Alf Gaida
750c14fdde Some things polished
* Fixed symmangle - sort order is defined by LC_ALL, so using
  LC_ALL=C is a good idea in the script
* Renamed get-snapshot to git-snapshot
* Bumped qtxdg dependency to >= 3.1.0
* Added lintian-overrides
2017-10-22 17:02:16 +02:00
Alf Gaida
322fb74ec3 Cherry-picking new upstream release 0.4.0
Added some pkg-lxqt tools:
- evil: the (in)famous lintian -EvIL ...
- mangle: mangle single symbols
- symmangle: mangle whole symbol files
- git-versions: get current upstream git versions
- get-snapshot: get a git snapshot
2017-09-23 16:28:23 +02:00
Alf Gaida
39e12b69cf Add BSD-3-clause license headers to scripts 2017-09-23 16:21:33 +02:00
Alf Gaida
4f6bd462c8 Imported upstream version 0.4.0. 2017-09-23 16:06:13 +02:00
Alf Gaida
e6ed253846 Added some scripts for pkg-lxqt 2017-09-23 15:58:13 +02:00
Alf Gaida
af39872104 Prepare upcoming release 2017-09-23 14:06:36 +02:00
Alf Gaida
e53294cb38 Added some maintenance scripts, WIP 2017-09-04 23:14:59 +02:00
47 changed files with 875 additions and 2300 deletions

27
AUTHORS
View File

@ -1,27 +0,0 @@
Upstream Authors:
LXQt team: http://lxqt.org
Razor team: http://razor-qt.org
Luís Pereira <luis.artur.pereira@gmail.com>
Alexander Sokolov <sokoloff.a@gmail.com>
Hong Jen Yee (PCMan) <pcman.tw@gmail.com>
Palo Kisa <palo.kisa@gmail.com>
Petr Vanek <petr@yarpen.cz>
Alec Moskvin <alecm@gmx.com>
Jerome Leclanche <jerome@leclan.ch>
Paulo Lieuthier <paulolieuthier@gmail.com>
Alf Gaida <agaida@siduction.org>
Bartosz Taczala <bartosz.taczala@tieto.com>
Julien Lavergne <julien.lavergne@gmail.com>
Helio Chissini de Castro <helio@kde.org>
Kuzma Shapran <kuzma.shapran@gmail.com>
Veeti Paananen <veeti.paananen@rojekti.fi>
Anssi Hannula <anssi@mageia.org>
Christian Surlykke <christian@surlykke.dk>
Hong Hao <oahong@oahong.me>
Ivailo Monev <xakepa10@gmail.com>
Ludger Krämer <dbluelle@blau-weissoedingen.de>
Thomas Viehweger <ThomasVie@users.noreply.github.com>
kinabcd <kinabcd@gmail.com>
License: BSD-3-Clause
The full text of the licenses can be found in the 'BSD-3-Clause' file.

View File

@ -1,25 +0,0 @@
License: BSD-3-Clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE HOLDERS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

233
CHANGELOG
View File

@ -1,233 +0,0 @@
lxqt-build-tools-0.3.2 / 2017-01-14
===================================
* Bump version to 0.3.2 - finally the build tools are arch: all (#15)
* Warnings (#16)
* Remove arched bits from version.cmake-file (#14)
0.3.1 / 2017-01-01
==================
* Release 0.3.1: Update changelog
* Bump LXQT_PATCH_VERSION and build tools version (#13)
* 32 64 bit ness (#12)
* Use "gcc-ar" and "gcc-ranlib" tools when building static libs with gcc link-time optimization. (#11)
0.3.0 / 2016-12-06
==================
* Release 0.3.0: Update changelog
* Adds an FindXCB CMake module
* FindUDev: Add VERSION_STRING support
* FindUDev: Set REQUIRED_VARS
* FindUdev: Feed pkg_modules_modules results to find_library/path
* FindUDev: Adds Feature Summary
* Adds FindUDev module
* Enables colored diagnostics for CLang/Ninja combination
* Disable link-time optimization for clang++/llvm since after some testing it breaks QObject signal/slot sometimes. * Remove trailing spaces.
* Use different link-time optimization compiler options for gcc and clang and move -Bsymbolic flags to linker flags.
* Add more linker options to turn on linker-time optimizations for gcc & clang.
* Set CMAKE_BUILD_TYPE to Release by default if it's value is not set.
* FindGLIB: Improve gio-unix handling
* Adds a FindGLIB CMake module
* Adds a FindMenuCache CMake module
* Adds a FindFm CMake module
* move project name to top
* Fixes the name of package config file name in superbuild mode
0.2.0 / 2016-10-30
==================
* Release 0.2.0: Update changelog
* Bump minor to 2 (#7)
* Added Qt5Core to README.md (#6)
* Adds an LXQtConfigVars module
* Adds superbuild support
* README.md: Update dependencies
0.1.0 / 2016-10-14
==================
* Release 0.1.0: Update changelog
* Adds LXQtCreatePortableHeaders module
* Authors and license (#2)
* Add README.md
* Make lxqt-build-tools be usable
0.0.0 / 2016-09-30
==================
* Remove cpack (#107)
* Bump version ot 0.11.0 (#105)
* Settings: Add "homemade" XDG_CONFIG_DIRS support
* translations: Change default translations repository
* Don't lock the screen when it's already locked.
* LXQtTranslateTs.cmake: Enable PULL_TRANSLATIONS by default
* LXQtTranslateTs.cmake: Use/update template in remote repo
* .gitignore: Cleanup
* build: Use external translations
* translations: Fix external translations logic
* translations: Add external translations support
* Adds CMAKE_INSTALL_PREFIX to the LXQt Theme search paths
* LXQtCompilerSettings: Add QT_USE_QSTRINGBUILDER to the compile definitions
* TranslateDesktopTs: Adds UPDATE_OPTIONS options
* TranslateDesktop: Remove lupdate absolute option
* TranslateDesktop: Use -a switch in grep commands
* Use CMAKE_INSTALL_FULL_DATAROOTDIR
* Add LXQT_GRAPHICS_DIR directory definition
* Adds FindXdgUserDirs CMake find_package module
* Release 0.10.0
* pluginTranslation: removed using QStringLiteral as it was causing SEGFAULT in static finalization time
* pluginTranslation: add some symbol for referencing (for file to be not stripped out in static linking time)
* Adds "automatic" plugin translations loader support
* Rename LxQt to LXQt everywhere
* Handles CMake policy CMP0063
* Adds an lxqt_enable_target_exceptions() CMake function
* Adds LXQtCompilerSettings CMake module
* LXQtCreatePkgConfigFile.cmake: Makes install COMPONENT configurable
* LXQtTranslateTs.cmake Adds install COMPONENT option
* Adds Runtime install COMPONENT
* Fixes an SuperBuild/NormalBuild FTBFS
* CMake: Use CMAKE_AUTOUIC, drop qt5_wrap()
* CMake: Quote variables
* CMake: Removes unused variables
* Removes LIB_INSTALL_DIR CACHE PATH variable
* Use relative paths in install DESTINATION
* Marks link libraries as PUBLIC
* Use target_compile_definitions() instead of add_definitions()
* Make Release the default build type
* Simplifies build type matching
* lxqt-config.cmake.in: Use find_dependency()
* Updates the build system to the Targets infrastructure
* Sort .desktop translations. Fix typos in the comments. Remove local dir artifact.
* pkg-config: Adds Qt5Xdg to the required dependencies
* Updates lxqt_create_pkgconfig_file()
* Stops using Qt5Xdg dropped stuff
* Adds LXQT_DATA_DIR configuration variable
* Moves the about dialog to lxqt-about
* debug: showing qDebug()/qWarning() only in "debug" build
* debug: strip debug messages in "release" build
* Remove AddPluginDialog as it is no longer used
* Add KDevelop4 project type to .gitignore
* require c++11 support
* Release 0.9.0
* - Remove KF5 from prefix. This will fix compilation when KDE framework headers are not in standard paths.
* i18n/i10n: Updates documentation and behavior
* remove lxqtleave from liblxqt
* lxqt_translate_desktop: pass -h instead of --no-filename to grep which is compatible with Busybox
* add executable to handle leave actions
* lxqt_translate_desktop: Updates code to cope with the cmake-policy CMP0054
* - Use simple approach to data dir. Current setup of code not allows both qt4 and qt5 cohexists, and data files are same for both libraries. If a different data dir is required for specifics reason, is possible to set in cmake run -DLXQT_LIBRARY_NAME:STRING="string"
* Adds the LxQt::SingleApplication class.
* CMakeLists.txt maintenaince
* Fixes yet another translations install dir mistake
* Fixes translations install dir
* Use the new LXQtTranslate modules.
* Fixes Qt5LinguistToolsMacros file extension bug
* Copied Qt5LinguistToolsMacros.cmake
* Removes cmake commented code
* Removes duplicates add_definitions()
* Removes lxqt_translate_desktop() from the _use.cnake
* Adds Qt5TranslationLoader cmake module
* Fix HtmlDelegate and move it to its own file. Also get rid of X11 on CMakeLists.txt.
* Delete XfitMan class. Fixes lxde/lxde-qt#226
* Don't update (extract) translations by default.
* Includes all LXQt translation modules
* Adds automatic translations loaders for LXQt libs and apps
* Adds LXQtTranslateDesktop module
* Adds the LXQtranslateTs cmake module
* Clean up CMakeLists.txt and drop Qt 4 support
* Release v0.8.0
* Updates translations installation and search paths
* Generate source.ts when updating translations
* Don't translate uic generated files
* Add -locations absolute option to lupdate so our *.ts files can contain informations about the source lines.
* Add code to update the *.ts files when the UPDATE_TRANSLATIONS option is turned on.
* remove magic from cmake. USE_QT5 should be the only trigger
* Use the "new" CMake FIND_PACKAGE case policy
* Add include(${QTXDG_USE_FILE}) to Qt5 also.
* Use the "new" CMake FIND_PACKAGE case policy
* Adds missing libqtxdg dependency
* Don't allow #include <lxqt-qt5/lxqtxxxxx.h>
* Updates the Qt4 and Qt5 library names and related stuff
* Use the same header namespace everywhere
* Don't use undefined variables
* Find liblxqt dependencies automatically
* Removes another duplicated installation of a file
* Removes duplicate installation of a file
* Fixes extra misleading slashes in path names
* Cleans commented unneeded stuff
* Fix a typo in variable name
* Fix broken build of qt4 version
* Use newer version of cmake 2.8.9
* Detect the path of qmake correctly for Qt5.
* Fix after merging from master, by removing dupplicated items
* Merge branch 'master' of https://github.com/lxde/liblxqt into qt5
* Update qt5 porting
* Install pkgconfig file to /usr/local/libdata/pkgconfig when FreeBSD is detected.
* Set link directories properly
* Release 0.7.0
* Release 0.6.99 (0.7.0pre alpha)
* Add CPack rules for creating tarball
* Don't append library suffix to library path and use it by default
* CMakeLists.txt: Adds quotes to the lib string
* Respect standard LIB_INSTALL_DIR
* Reformats CMakeLists.txt to fit in an 80x24 terminal
* Removes blank lines
* Use cmake export functionality.
* Retain old CMAKE_CXX_FLAGS while adding visibility stuff. Add -Wl,-no-undefined -Wall flags to ensure correctness.
* Use gcc visibility feature to decrease number of exported symbols to half.
* Qt5 support (step 1)
* Fix renaming bugs, replacing lxqt-qt with lxde-qt
* Finish the crazy razor=>lxqt renaming tasks.
* Intree build
* Rename razor to lxqt and fix XdgDir header inclusion.
* Fix namespace for LxQt::xFitMan() to avoid undefined reference when linking with liblxqt.
* The Translatator class added, all translations moved to /usr/<local>/share/lxde/transalations
* Descriptions for translators
* Simplify translations script
* Simplify translations script
* All public files has lxqt prefix
* Razorsettings => LxQt::Settings
* RazorPluginInfo => LxQt::PluginInfo
* RazorNotification => LxQt::Notification
* RazorGridLayout => LxQt::GridLayout
* RazorAutostartEntry => LxQt::AutostartEntry
* RazorApplication => LxQt::Application
* RazorConfigDialog=>LxQt::ConfigDialog
* RazorAboutDlg => LxQt::AboutDialog
* RazorPower => LxQt::Power
* Cmake find_package files
* Fix broken CMakeLists.txt and make the lib compile again.
* Make liblxqt (original librazorqt) compiles independently.
* Old files removed
* Rotated widget added
* libraries: Removes unneeded include(RazorLibSuffix)
* ProgramFinder: a set of functions to check if programs are installed
* Improved razorpanellayout and new razorgridlayout.
* Add autostart entry API into the library
* Added "Copy to clipboard" button to razor-about->technical information.
* Fix components missing translations
* Translators info & refactoring of the About dialog
* Fixed librazorqt.qm directory
* Translations for librazorqt
* Implement new RazorNotification class
* Remove RazorNotification classes (no license/copyright)
* fixed #277 cmake installs private class
* Remove custom settings, use razor ones
* Moving notification client library to razorqt
* Revert "Global shortcuts now based on PSI code."
* Global shortcuts now based on PSI code
* RazorApplication class implemented; all modules ported to this class
* Create a "standardized" configuration dialog
* XdgAutoStart rewriten (lgpl2+)
* menus are adopted to the new backends; old code removed; check for running razor-session to allow/disallow "logout" item
* New power engine & razor-power program
* SVK translation finalized
* implemented #70: pkg-config for libs
* razorqt: add find_package(X11) as ${X11_X11_LIB} is used
* New doxygen ifrastructure
* missing translations in CMakeLists
* XdgDesktopFile is implicitly shared
* huge refactoring of the libraries build organization

View File

@ -1,127 +0,0 @@
project(lxqt-build-tools)
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
option(WITH_XDG_DIRS_FALLBACK "Use our XDG_CONFIG_DIRS fallback" ON)
set(LXQT_BUILD_TOOLS_MAJOR_VERSION 0)
set(LXQT_BUILD_TOOLS_MINOR_VERSION 3)
set(LXQT_BUILD_TOOLS_PATCH_VERSION 2)
set(LXQT_BUILD_TOOLS_VERSION ${LXQT_BUILD_TOOLS_MAJOR_VERSION}.${LXQT_BUILD_TOOLS_MINOR_VERSION}.${LXQT_BUILD_TOOLS_PATCH_VERSION})
set(LXQT_MAJOR_VERSION 0)
set(LXQT_MINOR_VERSION 11)
set(LXQT_PATCH_VERSION 1)
set(LXQT_VERSION ${LXQT_MAJOR_VERSION}.${LXQT_MINOR_VERSION}.${LXQT_PATCH_VERSION})
include(CMakePackageConfigHelpers)
include(GNUInstallDirs) # Standard directories for installation
include(cmake/FindInstallConfigPath.cmake) # sets LXQT_ETC_XDG_DIR, if unset
#-----------------------------------------------------------------------------
# LXQT_DATA_DIR defaults to CMAKE_INSTALL_FULL_DATADIR. It's added to
# XDG_DATA_DIRS by the startlxqt script
# Warning: Setting LXQT_DATA_DIR must be done after including GNUInstallDirs
#-----------------------------------------------------------------------------
if (NOT DEFINED LXQT_DATA_DIR)
set(LXQT_DATA_DIR "${CMAKE_INSTALL_FULL_DATADIR}" CACHE PATH
"LXQt base directory relative to which data files should be searched"
)
endif()
set(LXQT_LIBRARY_NAME "lxqt" CACHE STRING "lxqt")
set(LXQT_RELATIVE_SHARE_DIR "${LXQT_LIBRARY_NAME}")
set(LXQT_SHARE_DIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}/${LXQT_RELATIVE_SHARE_DIR}")
set(LXQT_RELATIVE_TRANSLATIONS_DIR "${LXQT_LIBRARY_NAME}/translations")
set(LXQT_TRANSLATIONS_DIR "${LXQT_SHARE_DIR}/translations")
set(LXQT_GRAPHICS_DIR "${LXQT_SHARE_DIR}/graphics")
file(GLOB toInstallFindModules
"${PROJECT_SOURCE_DIR}/cmake/find-modules/*.cmake"
)
file(GLOB toInstallModules
"${PROJECT_SOURCE_DIR}/cmake/modules/*.cmake"
"${PROJECT_SOURCE_DIR}/cmake/modules/*.in"
)
#-----------------------------------------------------------------------------
# Superbuild mode
#-----------------------------------------------------------------------------
set(FIND_MODULES_INSTALL_DIR "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/lxqt-build-tools/cmake/find-modules/")
set(MODULES_INSTALL_DIR "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/lxqt-build-tools/cmake/modules/")
file(COPY
${toInstallFindModules}
DESTINATION "${FIND_MODULES_INSTALL_DIR}"
)
file(COPY
${toInstallModules}
DESTINATION "${MODULES_INSTALL_DIR}"
)
configure_package_config_file(
"${CMAKE_CURRENT_SOURCE_DIR}/lxqt-build-tools-config.cmake.in"
"${CMAKE_BINARY_DIR}/lxqt-build-tools-config.cmake"
INSTALL_DESTINATION "neverland" # required, altough we don't install it
PATH_VARS
MODULES_INSTALL_DIR
FIND_MODULES_INSTALL_DIR
)
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/LXQtConfigVars.cmake.in"
"${MODULES_INSTALL_DIR}/LXQtConfigVars.cmake"
@ONLY
)
#-----------------------------------------------------------------------------
# Installable mode
#-----------------------------------------------------------------------------
set(CMAKECONFIG_INSTALL_DIR "${CMAKE_INSTALL_DATAROOTDIR}/cmake/lxqt-build-tools/")
set(FIND_MODULES_INSTALL_DIR "${CMAKE_INSTALL_DATAROOTDIR}/cmake/lxqt-build-tools/find-modules/")
set(MODULES_INSTALL_DIR "${CMAKE_INSTALL_DATAROOTDIR}/cmake/lxqt-build-tools/modules/")
configure_package_config_file(
"${CMAKE_CURRENT_SOURCE_DIR}/lxqt-build-tools-config.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/install/lxqt-build-tools-config.cmake"
INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
PATH_VARS
MODULES_INSTALL_DIR
FIND_MODULES_INSTALL_DIR
)
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/LXQtConfigVars.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/install/LXQtConfigVars.cmake"
@ONLY
)
# The package version file is common to superbuild and installable mode
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/lxqt-build-tools-config-version.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/lxqt-build-tools-config-version.cmake"
@ONLY
)
install(FILES
"${CMAKE_CURRENT_BINARY_DIR}/install/lxqt-build-tools-config.cmake"
"${CMAKE_BINARY_DIR}/lxqt-build-tools-config-version.cmake"
DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
)
install(
FILES ${toInstallFindModules}
DESTINATION "${FIND_MODULES_INSTALL_DIR}"
)
install(
FILES
${toInstallModules}
"${CMAKE_CURRENT_BINARY_DIR}/install/LXQtConfigVars.cmake"
DESTINATION
"${MODULES_INSTALL_DIR}"
)

View File

@ -1,21 +0,0 @@
# lxqt-build-tools
## Introduction
This repository is providing several tools needed to build LXQt itself as well as other components maintained by the LXQt project.
These tools used to be spread over the repositories of various other components and were summarized to ease dependency management. So far many components, in particular [liblxqt](https://github.com/lxde/liblxqt), were representing a build dependency without being needed themselves but only because their repository was providing a subset of the tools which are now summarized here. So the use of this repository will reduce superfluous and bloated dependencies.
## Installation
### Compiling sources
To build only CMake and Qt5Core are needed, optionally Git to pull VCS checkouts. Runtime dependencies do not exist.
Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX` has to be set to `/usr` on most operating systems.
To build run `make`, to install `make install` which accepts variable `DESTDIR` as usual. (Strictly speaking `make` isn't even needed right now. On the other hand it doesn't hurt so packagers may just include it in case it'll be needed one day.)
## Packagers
This package is arch-independent now. You can simply package it as `BuildArch: noarch` (rpm) or `arch: all` (deb).

View File

@ -1,26 +0,0 @@
# XDG standards expects system-wide configuration files in the /etc/xdg/lxqt location.
# Unfortunately QSettings we are using internally can be overriden in the Qt compilation
# time to use different path for system-wide configs. (for example configure ... -sysconfdir /etc/settings ...)
# This path can be found calling Qt4's qmake:
# qmake -query QT_INSTALL_CONFIGURATION
#
find_package(Qt5Core REQUIRED)
if(NOT DEFINED LXQT_ETC_XDG_DIR)
get_target_property(QT_QMAKE_EXECUTABLE ${Qt5Core_QMAKE_EXECUTABLE} IMPORTED_LOCATION)
message(STATUS "${QT_QMAKE_EXECUTABLE}")
if(NOT QT_QMAKE_EXECUTABLE)
message(FATAL_ERROR "LXQT_ETC_XDG_DIR: qmake executable not found (included before qt was configured?)")
endif()
execute_process(COMMAND ${QT_QMAKE_EXECUTABLE} -query QT_INSTALL_CONFIGURATION
OUTPUT_VARIABLE LXQT_ETC_XDG_DIR
OUTPUT_STRIP_TRAILING_WHITESPACE)
message(STATUS "LXQT_ETC_XDG_DIR autodetected as '${LXQT_ETC_XDG_DIR}'")
message(STATUS "You can set it manually with -DLXQT_ETC_XDG_DIR=<value>")
message(STATUS "")
endif ()

View File

@ -1,40 +0,0 @@
# The module defines the following variables
#
# LXQT_SHARE_DIR - This allows to install and read the configs from non-standard locations
#
# LXQT_TRANSLATIONS_DIR - The default translations directory
#
# LXQT_ETC_XDG_DIR - XDG standards expects system-wide configuration files in the
# /etc/xdg/lxqt location. Unfortunately QSettings we are using internally
# can be overriden in the Qt compilation time to use different path for
# system-wide configs. (for example configure ... -sysconfdir /etc/settings ...)
# This path can be found calling Qt's qmake:
# qmake -query QT_INSTALL_CONFIGURATION
#
# LXQT_DATA_DIR - LXQt base directory relative to which data files should
# be searched.Defaults to CMAKE_INSTALL_FULL_DATADIR. It's
# added to XDG_DATA_DIRS by the startlxqt script.
set(LXQT_MAJOR_VERSION "@LXQT_MAJOR_VERSION@")
set(LXQT_MINOR_VERSION "@LXQT_MINOR_VERSION@")
set(LXQT_PATCH_VERSION "@LXQT_PATCH_VERSION@")
set(LXQT_VERSION "@LXQT_VERSION@")
set(LXQT_LIBRARY_NAME "@LXQT_LIBRARY_NAME@")
set(LXQT_RELATIVE_SHARE_DIR "@LXQT_RELATIVE_SHARE_DIR@")
set(LXQT_SHARE_DIR "@LXQT_SHARE_DIR@")
set(LXQT_RELATIVE_TRANSLATIONS_DIR "@LXQT_RELATIVE_TRANSLATIONS_DIR@")
set(LXQT_TRANSLATIONS_DIR "@LXQT_TRANSLATIONS_DIR@")
set(LXQT_GRAPHICS_DIR "@LXQT_GRAPHICS_DIR@")
set(LXQT_ETC_XDG_DIR "@LXQT_ETC_XDG_DIR@")
set(LXQT_DATA_DIR "@LXQT_DATA_DIR@")
add_definitions("-DLXQT_RELATIVE_SHARE_DIR=\"${LXQT_RELATIVE_SHARE_DIR}\"")
add_definitions("-DLXQT_SHARE_DIR=\"${LXQT_SHARE_DIR}\"")
add_definitions("-DLXQT_RELATIVE_SHARE_TRANSLATIONS_DIR=\"${LXQT_RELATIVE_TRANSLATIONS_DIR}\"")
add_definitions("-DLXQT_SHARE_TRANSLATIONS_DIR=\"${LXQT_TRANSLATIONS_DIR}\"")
add_definitions("-DLXQT_GRAPHICS_DIR=\"${LXQT_GRAPHICS_DIR}\"")
add_definitions("-DLXQT_ETC_XDG_DIR=\"${LXQT_ETC_XDG_DIR}\"")
add_definitions("-DLXQT_DATA_DIR=\"${LXQT_DATA_DIR}\"")
add_definitions("-DLXQT_VERSION=\"${LXQT_VERSION}\"")

View File

@ -1,80 +0,0 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# BSD-3-Clause file for details.
#.rst:
# FindFm
# -----------
#
# Try to find the Fm library
#
# Once done this will define
#
# ::
#
# FM_FOUND - System has the Fm library
# FM_INCLUDE_DIR - The Fm library include directory
# FM_INCLUDE_DIRS - Location of the headers needed to use the Fm library
# FM_LIBRARIES - The libraries needed to use the Fm library
# FM_DEFINITIONS - Compiler switches required for using the Fm library
# FM_VERSION_STRING - the version of the Fm library found
# use pkg-config to get the directories and then use these values
# in the find_path() and find_library() calls
find_package(PkgConfig QUIET)
pkg_check_modules(PC_FM QUIET libfm)
set(FM_DEFINITIONS ${PC_FM_CFLAGS_OTHER})
find_path(FM_INCLUDE_DIR NAMES libfm/fm.h
HINTS
${PC_FM_INCLUDEDIR}
${PC_FM_INCLUDE_DIRS}
PATH_SUFFIXES libfm
)
find_library(FM_LIBRARIES NAMES fm libfm
HINTS
${PC_FM_LIBDIR}
${PC_FM_LIBRARY_DIRS}
)
# iterate over all dependencies
unset(FD_LIBRARIES)
foreach(depend ${PC_FM_LIBRARIES})
find_library(_DEPEND_LIBRARIES
NAMES
${depend}
HINTS
${PC_FM_LIBDIR}
${PC_FM_LIBRARY_DIRS}
)
if (_DEPEND_LIBRARIES)
list(APPEND FD_LIBRARIES ${_DEPEND_LIBRARIES})
endif()
unset(_DEPEND_LIBRARIES CACHE)
endforeach()
set(FM_VERSION_STRING ${PC_FM_VERSION})
set(FM_INCLUDE_DIR ${PC_FM_INCLUDEDIR})
list(APPEND FM_INCLUDE_DIRS
${FM_INCLUDE_DIR}
${PC_FM_INCLUDE_DIRS}
)
list(REMOVE_DUPLICATES FM_INCLUDE_DIRS)
list(APPEND FM_LIBRARIES
${FD_LIBRARIES}
)
list(REMOVE_DUPLICATES FM_LIBRARIES)
# handle the QUIETLY and REQUIRED arguments and set FM_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Fm
REQUIRED_VARS FM_LIBRARIES FM_INCLUDE_DIR FM_INCLUDE_DIRS
VERSION_VAR FM_VERSION_STRING)
mark_as_advanced(FM_INCLUDE_DIR FM_LIBRARIES)

View File

@ -1,126 +0,0 @@
# - Try to find Glib and its components (gio, gobject etc)
# Once done, this will define
#
# GLIB_FOUND - system has Glib
# GLIB_INCLUDE_DIRS - the Glib include directories
# GLIB_LIBRARIES - link these to use Glib
#
# Optionally, the COMPONENTS keyword can be passed to find_package()
# and Glib components can be looked for. Currently, the following
# components can be used, and they define the following variables if
# found:
#
# gio: GLIB_GIO_LIBRARIES
# gobject: GLIB_GOBJECT_LIBRARIES
# gmodule: GLIB_GMODULE_LIBRARIES
# gthread: GLIB_GTHREAD_LIBRARIES
#
# Note that the respective _INCLUDE_DIR variables are not set, since
# all headers are in the same directory as GLIB_INCLUDE_DIRS.
#
# Copyright (C) 2012 Raphael Kubo da Costa <rakuco@webkit.org>
# Copyright (C) 2016 Luís Pereira <luis.artur.pereira@gmail.com>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``AS
# IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ITS
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
find_package(PkgConfig)
pkg_check_modules(PC_GLIB QUIET glib-2.0)
find_library(GLIB_LIBRARIES
NAMES glib-2.0
HINTS ${PC_GLIB_LIBDIR}
${PC_GLIB_LIBRARY_DIRS}
)
# Files in glib's main include path may include glibconfig.h, which,
# for some odd reason, is normally in $LIBDIR/glib-2.0/include.
get_filename_component(_GLIB_LIBRARY_DIR ${GLIB_LIBRARIES} PATH)
find_path(GLIBCONFIG_INCLUDE_DIR
NAMES glibconfig.h
HINTS ${PC_LIBDIR} ${PC_LIBRARY_DIRS} ${_GLIB_LIBRARY_DIR}
${PC_GLIB_INCLUDEDIR} ${PC_GLIB_INCLUDE_DIRS}
PATH_SUFFIXES glib-2.0/include
)
find_path(GLIB_INCLUDE_DIR
NAMES glib.h
HINTS ${PC_GLIB_INCLUDEDIR}
${PC_GLIB_INCLUDE_DIRS}
PATH_SUFFIXES glib-2.0
)
set(GLIB_INCLUDE_DIRS ${GLIB_INCLUDE_DIR} ${GLIBCONFIG_INCLUDE_DIR})
# Version detection
if (EXISTS "${GLIBCONFIG_INCLUDE_DIR}/glibconfig.h")
file(READ "${GLIBCONFIG_INCLUDE_DIR}/glibconfig.h" GLIBCONFIG_H_CONTENTS)
string(REGEX MATCH "#define GLIB_MAJOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}")
set(GLIB_VERSION_MAJOR "${CMAKE_MATCH_1}")
string(REGEX MATCH "#define GLIB_MINOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}")
set(GLIB_VERSION_MINOR "${CMAKE_MATCH_1}")
string(REGEX MATCH "#define GLIB_MICRO_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}")
set(GLIB_VERSION_MICRO "${CMAKE_MATCH_1}")
set(GLIB_VERSION "${GLIB_VERSION_MAJOR}.${GLIB_VERSION_MINOR}.${GLIB_VERSION_MICRO}")
endif ()
# Additional Glib components. We only look for libraries, as not all of them
# have corresponding headers and all headers are installed alongside the main
# glib ones.
foreach (_component ${GLIB_FIND_COMPONENTS})
if (${_component} STREQUAL "gio")
find_library(GLIB_GIO_LIBRARIES NAMES gio-2.0 HINTS ${_GLIB_LIBRARY_DIR})
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GIO_LIBRARIES)
elseif (${_component} STREQUAL "gobject")
find_library(GLIB_GOBJECT_LIBRARIES NAMES gobject-2.0 HINTS ${_GLIB_LIBRARY_DIR})
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GOBJECT_LIBRARIES)
elseif (${_component} STREQUAL "gmodule")
find_library(GLIB_GMODULE_LIBRARIES NAMES gmodule-2.0 HINTS ${_GLIB_LIBRARY_DIR})
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GMODULE_LIBRARIES)
elseif (${_component} STREQUAL "gthread")
find_library(GLIB_GTHREAD_LIBRARIES NAMES gthread-2.0 HINTS ${_GLIB_LIBRARY_DIR})
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GTHREAD_LIBRARIES)
elseif (${_component} STREQUAL "gio-unix")
pkg_check_modules(GIO_UNIX QUIET gio-unix-2.0)
find_path(GLIB_GIO_UNIX_INCLUDE_DIR
NAMES gio/gunixconnection.h
HINTS ${GIO_UNIX_INCLUDEDIR}
PATH_SUFFIXES gio-unix-2.0)
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GIO_UNIX_INCLUDE_DIR)
endif ()
endforeach ()
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GLIB REQUIRED_VARS GLIB_INCLUDE_DIRS GLIB_LIBRARIES ${ADDITIONAL_REQUIRED_VARS}
VERSION_VAR GLIB_VERSION)
mark_as_advanced(
GLIBCONFIG_INCLUDE_DIR
GLIB_GIO_LIBRARIES
GLIB_GIO_UNIX_INCLUDE_DIR
GLIB_GMODULE_LIBRARIES
GLIB_GOBJECT_LIBRARIES
GLIB_GTHREAD_LIBRARIES
GLIB_INCLUDE_DIR
GLIB_INCLUDE_DIRS
GLIB_LIBRARIES
)

View File

@ -1,88 +0,0 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# BSD-3-Clause file for details.
#.rst:
# FindMenuCache
# -----------
#
# Try to find the MenuCache library
#
# Once done this will define
#
# ::
#
# MENUCACHE_FOUND - System has the MenuCache library
# MENUCACHE_INCLUDE_DIR - The MenuCache library include directory
# MENUCACHE_INCLUDE_DIRS - Location of the headers needed to use the MenuCache library
# MENUCACHE_LIBRARIES - The libraries needed to the MenuCache library
# MENUCACHE_DEFINITIONS - Compiler switches required for using the MenuCache library
# MENUCACHE_VERSION_STRING - the version of MenuCache library found
# use pkg-config to get the directories and then use these values
# in the find_path() and find_library() calls
find_package(PkgConfig QUIET)
pkg_check_modules(PC_MENUCACHE QUIET libmenu-cache)
set(MENUCACHE_DEFINITIONS ${PC_MENUCACHE_CFLAGS_OTHER})
find_path(MENUCACHE_INCLUDE_DIRS
NAMES
menu-cache.h
menu-cache/menu-cache.h
HINTS
${PC_MENUCACHE_INCLUDEDIR}
${PC_MENUCACHE_INCLUDE_DIRS}
PATH_SUFFIXES
libmenu-cache
)
find_library(MENUCACHE_LIBRARIES
NAMES
menu-cache
libmenu-cache
HINTS
${PC_MENUCACHE_LIBDIR}
${PC_MENUCACHE_LIBRARY_DIRS}
)
# iterate over all dependencies
unset(FD_LIBRARIES)
foreach(depend ${PC_MENUCACHE_LIBRARIES})
find_library(_DEPEND_LIBRARIES
NAMES
${depend}
HINTS
${PC_MENUCACHE_LIBDIR}
${PC_MENUCACHE_LIBRARY_DIRS}
)
if (_DEPEND_LIBRARIES)
list(APPEND FD_LIBRARIES ${_DEPEND_LIBRARIES})
endif()
unset(_DEPEND_LIBRARIES CACHE)
endforeach()
set(MENUCACHE_VERSION_STRING ${PC_MENUCACHE_VERSION})
set(MENUCACHE_INCLUDE_DIR ${PC_MENUCACHE_INCLUDEDIR})
list(APPEND MENUCACHE_INCLUDE_DIRS
${MENUCACHE_INCLUDE_DIR}
${PC_MENUCACHE_INCLUDE_DIRS}
)
list(REMOVE_DUPLICATES MENUCACHE_INCLUDE_DIRS)
list(APPEND MENUCACHE_LIBRARIES
${FD_LIBRARIES}
)
list(REMOVE_DUPLICATES MENUCACHE_LIBRARIES)
# handle the QUIETLY and REQUIRED arguments and set MENUCACHE_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(MenuCache
REQUIRED_VARS MENUCACHE_LIBRARIES MENUCACHE_INCLUDE_DIR MENUCACHE_INCLUDE_DIRS
VERSION_VAR MENUCACHE_VERSION_STRING)
mark_as_advanced(MENUCACHE_INCLUDE_DIR MENUCACHE_LIBRARIES)

View File

@ -1,65 +0,0 @@
# - Try to find the UDev library
# Once done this will define
#
# UDEV_FOUND - system has UDev
# UDEV_INCLUDE_DIR - the libudev include directory
# UDEV_LIBS - The libudev libraries
# Copyright (c) 2010, Rafael Fernández López, <ereslibre@kde.org>
# Copyright (c) 2016, Luís Pereira, <luis.artur.pereira@gmail.com>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. Neither the name of the University nor the names of its contributors
# may be used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
find_package(PkgConfig)
pkg_check_modules(PC_UDEV QUIET libudev)
find_path(UDEV_INCLUDE_DIR libudev.h
HINTS ${PC_UDEV_INCLUDEDIR} ${PC_UDEV_INCLUDE_DIRS})
find_library(UDEV_LIBS udev HINTS ${PC_UDEV_LIBDIR} ${PC_UDEV_LIBRARY_DIRS})
if(UDEV_INCLUDE_DIR AND UDEV_LIBS)
include(CheckFunctionExists)
include(CMakePushCheckState)
cmake_push_check_state()
set(CMAKE_REQUIRED_LIBRARIES ${UDEV_LIBS} )
cmake_pop_check_state()
endif()
set(UDEV_VERSION_STRING ${PC_UDEV_VERSION})
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(UDev
REQUIRED_VARS UDEV_INCLUDE_DIR UDEV_LIBS
VERSION_VAR ${UDEV_VERSION_STRING})
mark_as_advanced(UDEV_INCLUDE_DIR UDEV_LIBS)
include(FeatureSummary)
set_package_properties(UDev PROPERTIES
URL "https://www.kernel.org/pub/linux/utils/kernel/hotplug/udev/udev.html"
DESCRIPTION "Linux dynamic device management")

View File

@ -1,53 +0,0 @@
#.rst:
# FindXCB
# -------
#
# Find XCB libraries
#
# Tries to find xcb libraries on unix systems.
#
# - Be sure to set the COMPONENTS to the components you want to link to
# - The XCB_LIBRARIES variable is set ONLY to your COMPONENTS list
# - To use only a specific component check the XCB_LIBRARIES_${COMPONENT} variable
#
# The following values are defined
#
# ::
#
# XCB_FOUND - True if xcb is available
# XCB_INCLUDE_DIRS - Include directories for xcb
# XCB_LIBRARIES - List of libraries for xcb
# XCB_DEFINITIONS - List of definitions for xcb
#
#=============================================================================
# Copyright (c) 2015 Jari Vetoniemi
#
# Distributed under the OSI-approved BSD License (the "License");
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
include(FeatureSummary)
set_package_properties(XCB PROPERTIES
URL "http://xcb.freedesktop.org/"
DESCRIPTION "X protocol C-language Binding")
find_package(PkgConfig)
pkg_check_modules(PC_XCB QUIET xcb ${XCB_FIND_COMPONENTS})
find_library(XCB_LIBRARIES xcb HINTS ${PC_XCB_LIBRARY_DIRS})
find_path(XCB_INCLUDE_DIRS xcb/xcb.h PATH_SUFFIXES xcb HINTS ${PC_XCB_INCLUDE_DIRS})
foreach(COMPONENT ${XCB_FIND_COMPONENTS})
find_library(XCB_LIBRARIES_${COMPONENT} ${COMPONENT} HINTS ${PC_XCB_LIBRARY_DIRS})
list(APPEND XCB_LIBRARIES ${XCB_LIBRARIES_${COMPONENT}})
mark_as_advanced(XCB_LIBRARIES_${COMPONENT})
endforeach(COMPONENT ${XCB_FIND_COMPONENTS})
set(XCB_DEFINITIONS ${PC_XCB_CFLAGS_OTHER})
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(XCB DEFAULT_MSG XCB_LIBRARIES XCB_INCLUDE_DIRS)
mark_as_advanced(XCB_INCLUDE_DIRS XCB_LIBRARIES XCB_DEFINITIONS)

View File

@ -1,15 +0,0 @@
/* This file has been generated by the CMake lxqt_app_translation_loader().
* It loads LXQt application translations.
*
* Attention: All changes will be overwritten!!!
*/
#include <QCoreApplication>
#include <LXQt/Translator>
static void loadAppTranslation()
{
LXQt::Translator::translateApplication(QStringLiteral("@catalog_name@"));
}
Q_COREAPP_STARTUP_FUNCTION(loadAppTranslation)

View File

@ -1,210 +0,0 @@
#=============================================================================
# Copyright 2015 Luís Pereira <luis.artur.pereira@gmail.com>
# Copyright 2015 Palo Kisa <palo.kisa@gmail.com>
# Copyright 2013 Hong Jen Yee (PCMan) <pcman.tw@gmail.com>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
#-----------------------------------------------------------------------------
# Build with release mode by default (turn on compiler optimizations)
#-----------------------------------------------------------------------------
if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
endif()
#-----------------------------------------------------------------------------
# Honor visibility properties for all target types.
#
# The ``<LANG>_VISIBILITY_PRESET`` and
# ``VISIBILITY_INLINES_HIDDEN`` target properties affect visibility
# of symbols during dynamic linking. When first introduced these properties
# affected compilation of sources only in shared libraries, module libraries,
# and executables with the ``ENABLE_EXPORTS`` property set. This
# was sufficient for the basic use cases of shared libraries and executables
# with plugins. However, some sources may be compiled as part of static
# libraries or object libraries and then linked into a shared library later.
# CMake 3.3 and above prefer to honor these properties for sources compiled
# in all target types. This policy preserves compatibility for projects
# expecting the properties to work only for some target types.
#
# The ``OLD`` behavior for this policy is to ignore the visibility properties
# for static libraries, object libraries, and executables without exports.
# The ``NEW`` behavior for this policy is to honor the visibility properties
# for all target types.
#
# This policy was introduced in CMake version 3.3. CMake version
# 3.3.0 warns when the policy is not set and uses ``OLD`` behavior. Use
# the ``cmake_policy()`` command to set it to ``OLD`` or ``NEW``
# explicitly.
#-----------------------------------------------------------------------------
if(COMMAND CMAKE_POLICY)
if (POLICY CMP0063)
cmake_policy(SET CMP0063 NEW)
endif()
endif()
include(CheckCXXCompilerFlag)
#-----------------------------------------------------------------------------
# Global definitions
#-----------------------------------------------------------------------------
add_definitions(
-DQT_USE_QSTRINGBUILDER
)
#-----------------------------------------------------------------------------
# Detect Clang compiler
#-----------------------------------------------------------------------------
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(LXQT_COMPILER_IS_CLANGCXX 1)
endif()
#-----------------------------------------------------------------------------
# Set visibility to hidden to hide symbols, unless they're exported manually
# in the code
#-----------------------------------------------------------------------------
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
#-----------------------------------------------------------------------------
# Disable exceptions
#-----------------------------------------------------------------------------
if (CMAKE_COMPILER_IS_GNUCXX OR LXQT_COMPILER_IS_CLANGCXX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
endif()
#-----------------------------------------------------------------------------
# Common warning flags
#-----------------------------------------------------------------------------
set(__LXQT_COMMON_WARNING_FLAGS "-Wall -Wextra -Wchar-subscripts -Wno-long-long -Wpointer-arith -Wundef -Wformat-security")
#-----------------------------------------------------------------------------
# Warning flags
#-----------------------------------------------------------------------------
if (CMAKE_COMPILER_IS_GNUCXX OR LXQT_COMPILER_IS_CLANGCXX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${__LXQT_COMMON_WARNING_FLAGS} -Wnon-virtual-dtor -Woverloaded-virtual -Wpedantic")
endif()
if (LXQT_COMPILER_IS_CLANGCXX)
# qCDebug(), qCWarning, etc trigger a very verbose warning, about.... nothing. Disable it.
# Found when building lxqt-session.
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-gnu-zero-variadic-macro-arguments")
endif()
#-----------------------------------------------------------------------------
# Linker flags
# Do not allow undefined symbols
#-----------------------------------------------------------------------------
if (CMAKE_COMPILER_IS_GNUCXX OR LXQT_COMPILER_IS_CLANGCXX)
# -Bsymbolic-functions: replace dynamic symbols used internally in
# shared libs with direct addresses.
set(SYMBOLIC_FLAGS
"-Wl,-Bsymbolic-functions -Wl,-Bsymbolic"
)
set(CMAKE_SHARED_LINKER_FLAGS
"-Wl,--no-undefined ${SYMBOLIC_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS}"
)
set(CMAKE_MODULE_LINKER_FLAGS
"-Wl,--no-undefined ${SYMBOLIC_FLAGS} ${CMAKE_MODULE_LINKER_FLAGS}"
)
set(CMAKE_EXE_LINKER_FLAGS
"${SYMBOLIC_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}"
)
endif()
#-----------------------------------------------------------------------------
# Turn on more aggrassive optimizations not supported by CMake
# References: https://wiki.qt.io/Performance_Tip_Startup_Time
#-----------------------------------------------------------------------------
if (CMAKE_COMPILER_IS_GNUCXX OR LXQT_COMPILER_IS_CLANGCXX)
# -flto: use link-time optimizations to generate more efficient code
if (CMAKE_COMPILER_IS_GNUCXX)
set(LTO_FLAGS "-flto -fuse-linker-plugin")
# When building static libraries with LTO in gcc >= 4.9,
# "gcc-ar" and "gcc-ranlib" should be used instead of "ar" and "ranlib".
# references:
# https://gcc.gnu.org/gcc-4.9/changes.html
# http://hubicka.blogspot.tw/2014/04/linktime-optimization-in-gcc-2-firefox.html
# https://github.com/monero-project/monero/pull/1065/commits/1855213c8fb8f8727f4107716aab8e7ba826462b
if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.9.0") # gcc >= 4.9
set(CMAKE_AR "gcc-ar")
set(CMAKE_RANLIB "gcc-ranlib")
endif()
elseif (LXQT_COMPILER_IS_CLANGCXX)
# The link-time optimization of clang++/llvm seems to be too aggrassive.
# After testing, it breaks the signal/slots of QObject sometimes.
# So disable it for now until there is a solution.
# set(LTO_FLAGS "-flto")
endif()
# apply these options to "Release" build type only
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${LTO_FLAGS}")
endif()
#-----------------------------------------------------------------------------
# CXX11 and CXX0X requirements
#-----------------------------------------------------------------------------
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
if(COMPILER_SUPPORTS_CXX11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
elseif(COMPILER_SUPPORTS_CXX0X)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
else()
message(FATAL "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. C++11 support is required")
endif()
#-----------------------------------------------------------------------------
# Enable colored diagnostics for the CLang/Ninja combination
#-----------------------------------------------------------------------------
if (LXQT_COMPILER_IS_CLANGCXX AND CMAKE_GENERATOR STREQUAL "Ninja")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fcolor-diagnostics")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fcolor-diagnostics")
endif()
#-----------------------------------------------------------------------------
# Enable exceptions for an target
#
# lxqt_enable_target_exceptions(<target>
# <INTERFACE|PUBLIC|PRIVATE>
# )
#
#-----------------------------------------------------------------------------
function(lxqt_enable_target_exceptions target mode)
target_compile_options(${target} ${mode}
"$<$<OR:$<CXX_COMPILER_ID:GNU>,$<CXX_COMPILER_ID:Clang>>:-fexceptions>"
)
endfunction()

View File

@ -1,252 +0,0 @@
#=============================================================================
# Copyright 2015 Luís Pereira <luis.artur.pereira@gmail.com>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================#
# lxqt_create_pkgconfig_file(PACKAGE_NAME <package_name>
# VERSION <version>
# [PREFIX <path>]
# [EXEC_PREFIX <path>]
# [INCLUDEDIR_PREFIX <path>]
# [INCLUDEDIRS <path1> <path2> ... <path3>]
# [LIBDIR_PREFIX <path>]
# [DESCRIPTIVE_NAME <name>]
# [DESCRIPTION <description>]
# [URL <url>]
# [REQUIRES <dep1> <dep2> ... <dep3>]
# [REQUIRES_PRIVATE <dep1> <dep2> ... <dep3>]
# [LIB_INSTALLDIR <dir>]
# [CFLAGS <cflags>]
# [PATH <path>]
# [INSTALL]
# [COMPONENT] component)
#
#
# PACKAGE_NAME and VERSION are mandatory. Everything else is optional
include(CMakeParseArguments)
include(GNUInstallDirs)
function(lxqt_create_pkgconfig_file)
set(options INSTALL)
set(oneValueArgs
PACKAGE_NAME
PREFIX
EXEC_PREFIX
INCLUDEDIR_PREFIX
LIBDIR_PREFIX
DESCRIPTIVE_NAME
DESCRIPTION
URL
VERSION
PATH
COMPONENT
)
set(multiValueArgs
INCLUDEDIRS
REQUIRES
REQUIRES_PRIVATE
CONFLICTS
CFLAGS
LIBS
LIBS_PRIVATE
)
cmake_parse_arguments(USER "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
if (USER_UNPARSED_ARGUMENTS)
message(FATAL_ERROR "Unknown keywords given to create_pkgconfig_file(): \"${USER_UNPARSED_ARGUMENTS}\"")
endif()
# Check for mandatory args. Abort if not set
if (NOT DEFINED USER_PACKAGE_NAME)
message(FATAL_ERROR "Required argument PACKAGE_NAME missing in generate_pkgconfig_file() call")
else()
set(_PKGCONFIG_PACKAGE_NAME "${USER_PACKAGE_NAME}")
endif()
if (NOT DEFINED USER_VERSION)
message(FATAL_ERROR "Required argument VERSION missing in generate_pkgconfig_file() call")
else()
set(_PKGCONFIG_VERSION "${USER_VERSION}")
endif()
# Optional args
if (NOT DEFINED USER_PREFIX)
set(_PKGCONFIG_PREFIX "${CMAKE_INSTALL_PREFIX}")
endif()
if (NOT DEFINED USER_EXEC_PREFIX)
set(_PKGCONFIG_EXEC_PREFIX "\${prefix}")
endif()
if (NOT DEFINED USER_INCLUDEDIR_PREFIX)
set(_PKGCONFIG_INCLUDEDIR_PREFIX "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
endif()
if (NOT DEFINED USER_LIBDIR_PREFIX)
set(_PKGCONFIG_LIBDIR_PREFIX "\${prefix}/${CMAKE_INSTALL_LIBDIR}")
endif()
if (NOT DEFINED USER_DESCRIPTIVE_NAME)
set(_PKGCONFIG_DESCRIPTIVE_NAME "")
else()
set(_PKGCONFIG_DESCRIPTIVE_NAME "${USER_DESCRIPTIVE_NAME}")
endif()
if (DEFINED USER_INCLUDEDIRS)
set(tmp "")
foreach(dir ${USER_INCLUDEDIRS})
if (NOT IS_ABSOLUTE "${dir}")
list(APPEND tmp "-I\${includedir}/${dir}")
endif()
endforeach()
string(REPLACE ";" " " _INCLUDEDIRS "${tmp}")
endif()
if (DEFINED USER_REQUIRES)
string(REPLACE ";" ", " _PKGCONFIG_REQUIRES "${USER_REQUIRES}")
endif()
if (DEFINED USER_REQUIRES_PRIVATE)
string(REPLACE ";" ", " _PKGCONFIG_REQUIRES_PRIVATE "${USER_REQUIRES_PRIVATE}")
else()
set(_PKGCONFIG_REQUIRES_PRIVATE "")
endif()
if (NOT DEFINED USER_CFLAGS)
set(_PKGCONFIG_CFLAGS "-I\${includedir} ${_INCLUDEDIRS}")
endif()
if (NOT DEFINED USER_LIBS)
set(_PKGCONFIG_LIBS "-L\${libdir}")
else()
set(tmp "-L\${libdir}")
set(_libs "${USER_LIBS}")
foreach(lib ${_libs})
list(APPEND tmp "-l${lib}")
endforeach()
string(REPLACE ";" " " _PKGCONFIG_LIBS "${tmp}")
endif()
if (NOT DEFINED USER_LIBS_PRIVATE)
set(PKGCONFIG_LIBS "-L\${libdir}")
else()
set(tmp "")
set(_libs "${USER_LIBS_PRIVATE}")
foreach(lib ${_libs})
list(APPEND tmp "-l${lib}")
endforeach()
string(REPLACE ";" " " _PKGCONFIG_LIBS_PRIVATE "${tmp}")
endif()
if (DEFINED USER_DESCRIPTION)
set(_PKGCONFIG_DESCRIPTION "${USER_DESCRIPTION}")
else()
set(_PKGCONFIG_DESCRIPTION "")
endif()
if (DEFINED USER_URL)
set(_PKFCONFIG_URL "${USER_URL}")
else()
set(_PKGCONFIG_URL "")
endif()
if (NOT DEFINED USER_PATH)
set(_PKGCONFIG_FILE "${PROJECT_BINARY_DIR}/${_PKGCONFIG_PACKAGE_NAME}.pc")
else()
if (IS_ABSOLUTE "${USER_PATH}")
set(_PKGCONFIG_FILE "${USER_PATH}/${_PKGCONFIG_PACKAGE_NAME}.pc")
else()
set(_PKGCONFIG_FILE "${PROJECT_BINARY_DIR}/${USER_PATH}/${_PKGCONFIG_PACKAGE_NAME}.pc")
endif()
endif()
# Write the .pc file
FILE(WRITE "${_PKGCONFIG_FILE}"
"# file generated by create_pkgconfig_file()\n"
"prefix=${_PKGCONFIG_PREFIX}\n"
"exec_prefix=${_PKGCONFIG_EXEC_PREFIX}\n"
"libdir=${_PKGCONFIG_LIBDIR_PREFIX}\n"
"includedir=${_PKGCONFIG_INCLUDEDIR_PREFIX}\n"
"\n"
"Name: ${_PKGCONFIG_DESCRIPTIVE_NAME}\n"
)
if (NOT "${_PKGCONFIG_DESCRIPTION}" STREQUAL "")
FILE(APPEND ${_PKGCONFIG_FILE}
"Description: ${_PKGCONFIG_DESCRIPTION}\n"
)
endif()
if (NOT "${_PKGCONFIG_URL}" STREQUAL "")
FILE(APPEND ${_PKGCONFIG_FILE} "URL: ${_PKGCONFIG_URL}\n")
endif()
FILE(APPEND ${_PKGCONFIG_FILE} "Version: ${_PKGCONFIG_VERSION}\n")
if (NOT "${_PKGCONFIG_REQUIRES}" STREQUAL "")
FILE(APPEND ${_PKGCONFIG_FILE} "Requires: ${_PKGCONFIG_REQUIRES}\n")
endif()
if (NOT "${_PKGCONFIG_REQUIRES_PRIVATE}" STREQUAL "")
FILE(APPEND ${_PKGCONFIG_FILE}
"Requires.private: ${_PKGCONFIG_REQUIRES_PRIVATE}\n"
)
endif()
FILE(APPEND ${_PKGCONFIG_FILE}
"Cflags: ${_PKGCONFIG_CFLAGS}\n"
"Libs: ${_PKGCONFIG_LIBS}\n"
)
if (NOT "${_PKGCONFIG_LIBS_PRIVATE}" STREQUAL "")
FILE(APPEND ${_PKGCONFIG_FILE}
"Libs.private: ${_PKGCONFIG_REQUIRES_PRIVATE}\n"
)
endif()
if (DEFINED USER_INSTALL)
# FreeBSD loves to install files to different locations
# http://www.freebsd.org/doc/handbook/dirstructure.html
if(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
set(_PKGCONFIG_INSTALL_DESTINATION "libdata/pkgconfig")
else()
set(_PKGCONFIG_INSTALL_DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
endif()
if (DEFINED USER_COMPONENT)
set(_COMPONENT "${USER_COMPONENT}")
else()
set(_COMPONENT "Devel")
endif()
install(FILES "${_PKGCONFIG_FILE}"
DESTINATION "${_PKGCONFIG_INSTALL_DESTINATION}"
COMPONENT "${_COMPONENT}")
endif()
endfunction()

View File

@ -1,110 +0,0 @@
#=============================================================================
# Copyright 2015 Luís Pereira <luis.artur.pereira@gmail.com>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
# lxqt_create_portable_headers(<portable_headers>
# HEADER_NAMES <CamelCaseName> [<CamelCaseName1> [...]]
# [OUTPUT_DIR <output_dir>]
# )
#
# Creates portable headers; e.g.:
# Creates XdgAction from xdgaction.h
# XdgAction contents:
# #include "xdgaction.h"
#
# Output:
# portable_headers File locations of the created headers
#
# Input:
# HEADER_NAMES Header CamelCaseNames. An CamelCaseName header will be created
# that includes camelcasename.h file
#
# OUTPUT_DIR Specifies where the files will be created. Defaults to
# ``${CMAKE_CURRENT_BINARY_DIR}``. If the value is an relative path, it
# will be appended to ``${CMAKE_CURRENT_BINARY_DIR}``.
#
# Use:
# set(PUBLIC_CLASSES MyClass YourClass)
# lxqt_create_portable_headers(PORTABLE_HEADERS ${PUBLIC_CLASSES})
# PORTABLE_HEADER is an return value that contains the full name of the
# generated headers.
function(lxqt_create_portable_headers outfiles)
set(options)
set(oneValueArgs OUTPUT_DIR PATH_PREFIX NAME_PREFIX)
set(multiValueArgs HEADER_NAMES)
cmake_parse_arguments(USER "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
if (USER_UNPARSED_ARGUMENTS)
message(FATAL_ERROR "Unknown keywords given to lxqt_create_portable_headers(): \"${USER_UNPARSED_ARGUMENTS}\"")
endif()
if (NOT DEFINED USER_HEADER_NAMES)
message(FATAL_ERROR "Required argument HEADER_NAMES missing in lxqt_create_portable_headers() call")
else()
set(_HEADER_NAMES "${USER_HEADER_NAMES}")
endif()
if (NOT DEFINED USER_OUTPUT_DIR)
set(_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}")
else()
if (IS_ABSOLUTE "${USER_OUTPUT_DIR}")
set(_OUTPUT_DIR "${USER_OUTPUT_DIR}")
else()
set(_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/${USER_OUTPUT_DIR}")
endif()
endif()
if (NOT DEFINED USER_PATH_PREFIX)
set(_PATH_PREFIX "")
else()
set(_PATH_PREFIX "${USER_PATH_PREFIX}")
endif()
if (NOT DEFINED USER_NAME_PREFIX)
set(_NAME_PREFIX "")
else()
set(_NAME_PREFIX "${USER_NAME_PREFIX}")
endif()
set(class_list ${_HEADER_NAMES})
foreach(f ${class_list})
string(TOLOWER "${f}.h" _filename)
if ("${_PATH_PREFIX}" STREQUAL "")
file(WRITE "${_OUTPUT_DIR}/${f}"
"#include \"${_NAME_PREFIX}${_filename}\"")
else()
file(WRITE "${_OUTPUT_DIR}/${f}"
"#include \"${_PATH_PREFIX}${_NAME_PREFIX}/${_filename}\"")
endif()
list(APPEND ${outfiles} "${_OUTPUT_DIR}/${f}")
endforeach()
set(${outfiles} ${${outfiles}} PARENT_SCOPE)
endfunction()

View File

@ -1,15 +0,0 @@
/* This file has been generated by the CMake lxqt_app_translation_loader().
* It loads LXQt libraries translations.
*
* Attention: All changes will be overwritten!!!
*/
#include <QCoreApplication>
#include <LXQt/Translator>
static void loadLibTranslation()
{
LXQt::Translator::translateLibrary(QStringLiteral("@catalog_name@"));
}
Q_COREAPP_STARTUP_FUNCTION(loadLibTranslation)

View File

@ -1,23 +0,0 @@
/* This file has been generated by the CMake lxqt_plugin_translation_loader().
* It loads LXQt plugin translations.
*
* Attention: All changes will be overwritten!!!
*/
#include <QCoreApplication>
#include <LXQt/Translator>
/* Dummy helper symbol for referencing.
* In case plugin is linked as static (lib*.a) unreferenced objects are stripped in linking time
* => we need to reference some symbol from this file to be not stripped as a whole.
*/
void * loadPluginTranslation_@catalog_name@_helper = nullptr;
static void loadPluginTranslation()
{
//XXX: we don't use the QStringLiteral here because it causes SEGFAULT in static finalization time
// (the string is stored in static QHash and it's destructor can reference already deleted static QString (generated by QStringLiteral))
LXQt::Translator::translatePlugin("@catalog_name@", "@plugin_type@");
}
Q_COREAPP_STARTUP_FUNCTION(loadPluginTranslation)

View File

@ -1,107 +0,0 @@
#=============================================================================
# The lxqt_translate_desktop() function was copied from the
# LXQt LXQtTranslate.cmake
#
# Original Author: Alexander Sokolov <sokoloff.a@gmail.com>
#
# funtion lxqt_translate_desktop(_RESULT
# SOURCES <sources>
# [TRANSLATION_DIR] translation_directory
# )
# Output:
# _RESULT The generated .desktop (.desktop) files
#
# Input:
#
# SOURCES List of input desktop files (.destktop.in) to be translated
# (merged), relative to the CMakeList.txt.
#
# TRANSLATION_DIR Optional path to the directory with the .ts files,
# relative to the CMakeList.txt. Defaults to
# "translations".
#
#=============================================================================
function(lxqt_translate_desktop _RESULT)
# Parse arguments ***************************************
set(oneValueArgs TRANSLATION_DIR)
set(multiValueArgs SOURCES)
cmake_parse_arguments(_ARGS "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
# check for unknown arguments
set(_UNPARSED_ARGS ${_ARGS_UNPARSED_ARGUMENTS})
if (NOT ${_UNPARSED_ARGS} STREQUAL "")
MESSAGE(FATAL_ERROR
"Unknown arguments '${_UNPARSED_ARGS}'.\n"
"See lxqt_translate_desktop() documentation for more information.\n"
)
endif()
if (NOT DEFINED _ARGS_SOURCES)
set(${_RESULT} "" PARENT_SCOPE)
return()
else()
set(_sources ${_ARGS_SOURCES})
endif()
if (NOT DEFINED _ARGS_TRANSLATION_DIR)
set(_translationDir "translations")
else()
set(_translationDir ${_ARGS_TRANSLATION_DIR})
endif()
get_filename_component (_translationDir ${_translationDir} ABSOLUTE)
foreach (_inFile ${_sources})
get_filename_component(_inFile ${_inFile} ABSOLUTE)
get_filename_component(_fileName ${_inFile} NAME_WE)
#Extract the real extension ............
get_filename_component(_fileExt ${_inFile} EXT)
string(REPLACE ".in" "" _fileExt ${_fileExt})
#.......................................
set(_outFile "${CMAKE_CURRENT_BINARY_DIR}/${_fileName}${_fileExt}")
file(GLOB _translations
${_translationDir}/${_fileName}_*${_fileExt}
)
set(_pattern "'\\[.*]\\s*='")
if (_translations)
list(SORT _translations)
add_custom_command(OUTPUT ${_outFile}
COMMAND grep -v -a "'#TRANSLATIONS_DIR='" ${_inFile} > ${_outFile}
COMMAND grep -h -a ${_pattern} ${_translations} >> ${_outFile}
COMMENT "Generating ${_fileName}${_fileExt}"
)
else()
add_custom_command(OUTPUT ${_outFile}
COMMAND grep -v -a "'#TRANSLATIONS_DIR='" ${_inFile} > ${_outFile}
COMMENT "Generating ${_fileName}${_fileExt}"
)
endif()
set(__result ${__result} ${_outFile})
# TX file ***********************************************
set(_txFile "${CMAKE_BINARY_DIR}/tx/${_fileName}${_fileExt}.tx.sh")
string(REPLACE "${CMAKE_SOURCE_DIR}/" "" _tx_translationDir ${_translationDir})
string(REPLACE "${CMAKE_SOURCE_DIR}/" "" _tx_inFile ${_inFile})
string(REPLACE "." "" _fileType ${_fileExt})
file(WRITE ${_txFile}
"[ -f ${_inFile} ] || exit 0\n"
"echo '[lxde-qt.${_fileName}_${_fileType}]'\n"
"echo 'type = DESKTOP'\n"
"echo 'source_lang = en'\n"
"echo 'source_file = ${_tx_inFile}'\n"
"echo 'file_filter = ${_tx_translationDir}/${_fileName}_<lang>${_fileExt}'\n"
"echo ''\n"
)
endforeach()
set(${_RESULT} ${__result} PARENT_SCOPE)
endfunction(lxqt_translate_desktop)

View File

@ -1,281 +0,0 @@
#=============================================================================
# Copyright 2014 Luís Pereira <luis.artur.pereira@gmail.com>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
#
# funtion lxqt_translate_ts(qmFiles
# [USE_QT5 [Yes | No]]
# [UPDATE_TRANSLATIONS [Yes | No]]
# SOURCES <sources>
# [UPDATE_OPTIONS] update_options
# [TEMPLATE] translation_template
# [TRANSLATION_DIR] translation_directory
# [INSTALL_DIR] install_directory
# [COMPONENT] component
# [PULL_TRANSLATIONS [Yes | No]]
# [CLEAN_TRANSLATIONS [Yes | No]]
# [REPO_SUBDIR] repository_subdirectory
# [TRANSLATIONS_REPO] remote_translation_repo
# [TRANSLATIONS_REFSPEC] translations_remote_branch
# )
# Output:
# qmFiles The generated compiled translations (.qm) files
#
# Input:
# USE_QT5 Optional flag to choose between Qt4 and Qt5. Defaults to Qt5
#
# UPDATE_TRANSLATIONS Optional flag. Setting it to Yes, extracts and
# compiles the translations. Setting it No, only
# compiles them.
#
# UPDATE_OPTIONS Optional options to lupdate when UPDATE_TRANSLATIONS
# is True.
#
# TEMPLATE Optional translations files base name. Defaults to
# ${PROJECT_NAME}. An .ts extensions is added.
#
# TRANSLATION_DIR Optional path to the directory with the .ts files,
# relative to the CMakeList.txt. Defaults to
# "translations".
#
# INSTALL_DIR Optional destination of the file compiled files (qmFiles).
# If not present no installation is performed
#
# COMPONENT Optional install component. Only effective if INSTALL_DIR
# present. Defaults to "Runtime".
#
# PULL_TRANSLATIONS Optional flag. If set, the translations are pulled
# from external repository in cmake phase (not in build/make time)
# into directory "${TRANSLATION_DIR}/${REPO_SUBDIR}".
#
# CLEAN_TRANSLATIONS Optional flag. If set, the externally pulled
# translations are removed.
#
# REPO_SUBDIR Optional path in the "translations repository" to directory
# with translations. Only effective if PULL_TRANSLATIONS enabled.
# Defaults to "${TEMPLATE}".
#
# TRANSLATIONS_REPO External git repository with translations - only the ${TEMPLATE} directory
# is pulled (using the "sparse checkout").
# Optional (defaults to "https://github.com/lxde/lxqt-l10n.git").
#
# TRANSLATIONS_REFSPEC Optional refspec of external repository. Used in git pull.
# Defaults to "master".
# CMake v2.8.3 needed to use the CMakeParseArguments module
cmake_minimum_required(VERSION 2.8.3 FATAL_ERROR)
# We use our patched version to round a annoying bug.
include(Qt5PatchedLinguistToolsMacros)
option(PULL_TRANSLATIONS "Pull translations" Yes)
option(CLEAN_TRANSLATIONS "Clean translations" No)
function(lxqt_translate_ts qmFiles)
set(oneValueArgs
USE_QT5
UPDATE_TRANSLATIONS
TEMPLATE
TRANSLATION_DIR
INSTALL_DIR
COMPONENT
PULL_TRANSLATIONS
CLEAN_TRANSLATIONS
REPO_SUBDIR
TRANSLATIONS_REPO
TRANSLATIONS_REFSPEC
)
set(multiValueArgs SOURCES UPDATE_OPTIONS)
cmake_parse_arguments(TR "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
if (NOT DEFINED TR_UPDATE_TRANSLATIONS)
set(TR_UPDATE_TRANSLATIONS "No")
endif()
if (NOT DEFINED TR_UPDATE_OPTIONS)
set(TR_UPDATE_OPTIONS "")
endif()
if (NOT DEFINED TR_USE_QT5)
set(TR_USE_QT5 "Yes")
endif()
if(NOT DEFINED TR_TEMPLATE)
set(TR_TEMPLATE "${PROJECT_NAME}")
endif()
if (NOT DEFINED TR_TRANSLATION_DIR)
set(TR_TRANSLATION_DIR "translations")
endif()
get_filename_component(TR_TRANSLATION_DIR "${TR_TRANSLATION_DIR}" ABSOLUTE)
if (NOT DEFINED TR_CLEAN_TRANSLATIONS)
set(TR_CLEAN_TRANSLATIONS "No")
endif()
if (NOT DEFINED TR_PULL_TRANSLATIONS)
set(TR_PULL_TRANSLATIONS "No")
endif()
if (NOT DEFINED TR_REPO_SUBDIR)
set(TR_REPO_SUBDIR "${TR_TEMPLATE}")
endif()
if (NOT DEFINED TR_TRANSLATIONS_REPO)
set(TR_TRANSLATIONS_REPO "https://github.com/lxde/lxqt-l10n.git")
endif()
if (NOT DEFINED TR_TRANSLATIONS_REFSPEC)
set(TR_TRANSLATIONS_REFSPEC "master")
endif()
if (TR_CLEAN_TRANSLATIONS)
message(STATUS "Cleaning translations dir '${TR_TRANSLATION_DIR}' ...")
set(DIR_TO_REMOVE "${TR_TRANSLATION_DIR}/${TR_REPO_SUBDIR}")
get_filename_component(PARENT_DIR "${DIR_TO_REMOVE}" DIRECTORY)
while (NOT "${PARENT_DIR}" STREQAL "${TR_TRANSLATION_DIR}")
set(DIR_TO_REMOVE "${PARENT_DIR}")
get_filename_component(PARENT_DIR "${DIR_TO_REMOVE}" DIRECTORY)
endwhile ()
#TODO: is there a way to check successfulness of file command !?!
file(REMOVE_RECURSE "${TR_TRANSLATION_DIR}/.git" "${DIR_TO_REMOVE}")
endif ()
if (TR_PULL_TRANSLATIONS)
find_package(Git REQUIRED)
if (NOT (GIT_FOUND AND GIT_VERSION_STRING VERSION_GREATER "1.7.0"))
message(FATAL_ERROR "Git > 1.7.0 is needed For pulling translations!")
endif ()
if (NOT EXISTS "${TR_TRANSLATION_DIR}/${TR_REPO_SUBDIR}")
message(STATUS "Setting git repository in the translations dir '${TR_TRANSLATION_DIR}' ...")
if (EXISTS "${TR_TRANSLATION_DIR}/.git")
execute_process(COMMAND rm -Rf .git
WORKING_DIRECTORY "${TR_TRANSLATION_DIR}"
RESULT_VARIABLE ex_result
)
if (NOT "${ex_result}" EQUAL 0)
message(FATAL_ERROR "Initialization(cleanup) of translations dir failed!")
endif ()
endif()
# make sure the dir exist, otherwise git init will fail
file(MAKE_DIRECTORY "${TR_TRANSLATION_DIR}")
execute_process(COMMAND "${GIT_EXECUTABLE}" init
WORKING_DIRECTORY "${TR_TRANSLATION_DIR}"
RESULT_VARIABLE ex_result
)
if (NOT "${ex_result}" EQUAL 0)
message(FATAL_ERROR "Initialization(init) of translations dir failed!")
endif ()
execute_process(COMMAND "${GIT_EXECUTABLE}" remote add origin "${TR_TRANSLATIONS_REPO}"
WORKING_DIRECTORY "${TR_TRANSLATION_DIR}"
RESULT_VARIABLE ex_result
)
if (NOT "${ex_result}" EQUAL 0)
message(FATAL_ERROR "Initialization(remote) of translations dir failed!")
endif ()
execute_process(COMMAND "${GIT_EXECUTABLE}" config core.sparseCheckout true
WORKING_DIRECTORY "${TR_TRANSLATION_DIR}"
RESULT_VARIABLE ex_result
)
if (NOT "${ex_result}" EQUAL 0)
message(FATAL_ERROR "Initialization(config) of translations dir failed!")
endif ()
file(WRITE "${TR_TRANSLATION_DIR}/.git/info/sparse-checkout" "${TR_REPO_SUBDIR}")
endif ()
message(STATUS "Pulling the translations...")
execute_process(COMMAND "${GIT_EXECUTABLE}" pull origin "${TR_TRANSLATIONS_REFSPEC}"
WORKING_DIRECTORY "${TR_TRANSLATION_DIR}"
RESULT_VARIABLE ex_result
)
if (NOT "${ex_result}" EQUAL 0)
message(FATAL_ERROR "Pulling translations failed!")
endif ()
endif ()
#project/module can use it's own translations (not from external)
if (EXISTS "${TR_TRANSLATION_DIR}/${TR_REPO_SUBDIR}/")
file(GLOB tsFiles "${TR_TRANSLATION_DIR}/${TR_REPO_SUBDIR}/*_*.ts")
set(templateFile "${TR_TRANSLATION_DIR}/${TR_REPO_SUBDIR}/${TR_TEMPLATE}.ts")
else ()
file(GLOB tsFiles "${TR_TRANSLATION_DIR}/${TR_TEMPLATE}_*.ts")
set(templateFile "${TR_TRANSLATION_DIR}/${TR_TEMPLATE}.ts")
endif ()
if(TR_USE_QT5)
# Qt5
if (TR_UPDATE_TRANSLATIONS)
qt5_patched_create_translation(QMS
${TR_SOURCES}
${templateFile}
OPTIONS ${TR_UPDATE_OPTIONS}
)
qt5_patched_create_translation(QM
${TR_SOURCES}
${tsFiles}
OPTIONS ${TR_UPDATE_OPTIONS}
)
else()
qt5_patched_add_translation(QM ${tsFiles})
endif()
else()
# Qt4
if(TR_UPDATE_TRANSLATIONS)
qt4_create_translation(QMS
${TR_SOURCES}
${templateFile}
OPTIONS ${TR_UPDATE_OPTIONS}
)
qt4_create_translation(QM
${TR_SOURCES}
${tsFiles}
OPTIONS ${TR_UPDATE_OPTIONS}
)
else()
qt4_add_translation(QM ${tsFiles})
endif()
endif()
if(TR_UPDATE_TRANSLATIONS)
add_custom_target("update_${TR_TEMPLATE}_ts" ALL DEPENDS ${QMS})
endif()
if(DEFINED TR_INSTALL_DIR)
if(NOT DEFINED TR_COMPONENT)
set(TR_COMPONENT "Runtime")
endif()
install(FILES ${QM}
DESTINATION "${TR_INSTALL_DIR}"
COMPONENT "${TR_COMPONENT}"
)
endif()
set(${qmFiles} ${QM} PARENT_SCOPE)
endfunction()

View File

@ -1,73 +0,0 @@
#=============================================================================
# Copyright 2014 Luís Pereira <luis.artur.pereira@gmail.com>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
#
# These functions enables "automatic" translation loading in LXQt Qt5 apps
# and libs. They generate a .cpp file that takes care of everything. The
# user doesn't have to do anything in the source code.
#
# Typical use:
# include(LXQtTranslationLoader)
# lxqt_app_translation_loader(lxqt-app_QM_LOADER ${PROJECT_NAME})
# add_executable(${PROJECT_NAME}
# ${lxqt-app_QM_LOADER}
# ...
# )
# lxqt_app_translation_loader(<source_files> <catalog_name>)
# <source_files> The generated .cpp file is added to <source_files>
# <catalog_name> Translations catalog to be loaded
function(lxqt_app_translation_loader source_files catalog_name)
configure_file(
${LXQT_CMAKE_MODULES_DIR}/LXQtAppTranslationLoader.cpp.in
LXQtAppTranslationLoader.cpp @ONLY
)
set(${source_files} ${${source_files}} ${CMAKE_CURRENT_BINARY_DIR}/LXQtAppTranslationLoader.cpp PARENT_SCOPE)
endfunction()
# lxqt_lib_translation_loader(<source_files> <catalog_name>)
# <source_files> The generated .cpp file is added to <source_files>
# <catalog_name> Translations catalog to be loaded
function(lxqt_lib_translation_loader source_files catalog_name)
configure_file(
${LXQT_CMAKE_MODULES_DIR}/LXQtLibTranslationLoader.cpp.in
LXQtLibTranslationLoader.cpp @ONLY
)
set(${source_files} ${${source_files}} ${CMAKE_CURRENT_BINARY_DIR}/LXQtLibTranslationLoader.cpp PARENT_SCOPE)
endfunction()
# lxqt_plugin_translation_loader(<source_files> <catalog_name>)
# <source_files> The generated .cpp file is added to <source_files>
# <catalog_name> Translations catalog to be loaded
# <plugin_type> Plugin type. Example: lxqt-panel
function(lxqt_plugin_translation_loader source_files catalog_name plugin_type)
configure_file(
${LXQT_CMAKE_MODULES_DIR}/LXQtPluginTranslationLoader.cpp.in
LXQtPluginTranslationLoader.cpp @ONLY
)
set(${source_files} ${${source_files}} ${CMAKE_CURRENT_BINARY_DIR}/LXQtPluginTranslationLoader.cpp PARENT_SCOPE)
endfunction()

View File

@ -1,112 +0,0 @@
#=============================================================================
# Copyright 2005-2011 Kitware, Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# * Neither the name of Kitware, Inc. nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
include(CMakeParseArguments)
function(QT5_PATCHED_CREATE_TRANSLATION _qm_files)
set(options)
set(oneValueArgs)
set(multiValueArgs OPTIONS)
cmake_parse_arguments(_LUPDATE "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
set(_lupdate_files ${_LUPDATE_UNPARSED_ARGUMENTS})
set(_lupdate_options ${_LUPDATE_OPTIONS})
set(_my_sources)
set(_my_tsfiles)
foreach(_file ${_lupdate_files})
get_filename_component(_ext ${_file} EXT)
get_filename_component(_abs_FILE ${_file} ABSOLUTE)
if(_ext MATCHES "ts")
list(APPEND _my_tsfiles ${_abs_FILE})
else()
list(APPEND _my_sources ${_abs_FILE})
endif()
endforeach()
foreach(_ts_file ${_my_tsfiles})
if(_my_sources)
# make a list file to call lupdate on, so we don't make our commands too
# long for some systems
# get_filename_component(_ts_name ${_ts_file} NAME_WE)
get_filename_component(_name ${_ts_file} NAME)
string(REGEX REPLACE "^(.+)(\\.[^.]+)$" "\\1" _ts_name ${_name})
set(_ts_lst_file "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${_ts_name}_lst_file")
set(_lst_file_srcs)
foreach(_lst_file_src ${_my_sources})
set(_lst_file_srcs "${_lst_file_src}\n${_lst_file_srcs}")
endforeach()
get_directory_property(_inc_DIRS INCLUDE_DIRECTORIES)
foreach(_pro_include ${_inc_DIRS})
get_filename_component(_abs_include "${_pro_include}" ABSOLUTE)
set(_lst_file_srcs "-I${_pro_include}\n${_lst_file_srcs}")
endforeach()
file(WRITE ${_ts_lst_file} "${_lst_file_srcs}")
endif()
add_custom_command(OUTPUT ${_ts_file}
COMMAND ${Qt5_LUPDATE_EXECUTABLE}
ARGS ${_lupdate_options} "@${_ts_lst_file}" -ts ${_ts_file}
DEPENDS ${_my_sources} ${_ts_lst_file} VERBATIM)
endforeach()
qt5_patched_add_translation(${_qm_files} ${_my_tsfiles})
set(${_qm_files} ${${_qm_files}} PARENT_SCOPE)
endfunction()
function(QT5_PATCHED_ADD_TRANSLATION _qm_files)
foreach(_current_FILE ${ARGN})
get_filename_component(_abs_FILE ${_current_FILE} ABSOLUTE)
# get_filename_component(qm ${_abs_FILE} NAME_WE)
get_filename_component(_name ${_abs_FILE} NAME)
string(REGEX REPLACE "^(.+)(\\.[^.]+)$" "\\1" qm ${_name})
get_source_file_property(output_location ${_abs_FILE} OUTPUT_LOCATION)
if(output_location)
file(MAKE_DIRECTORY "${output_location}")
set(qm "${output_location}/${qm}.qm")
else()
set(qm "${CMAKE_CURRENT_BINARY_DIR}/${qm}.qm")
endif()
add_custom_command(OUTPUT ${qm}
COMMAND ${Qt5_LRELEASE_EXECUTABLE}
ARGS ${_abs_FILE} -qm ${qm}
DEPENDS ${_abs_FILE} VERBATIM
)
list(APPEND ${_qm_files} ${qm})
endforeach()
set(${_qm_files} ${${_qm_files}} PARENT_SCOPE)
endfunction()

View File

@ -1,33 +0,0 @@
/* This file has been generated by the CMake qt_translation_loader().
* It loads Qt application translations.
*
* Attention: All changes will be overwritten!!!
*/
#include <QCoreApplication>
#include <QLocale>
#include <QTranslator>
#include <QLibraryInfo>
static void loadQtTranslation()
{
QString locale = QLocale::system().name();
QTranslator *qtTranslator = new QTranslator(qApp);
if (qtTranslator->load("qt_" + locale, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) {
qApp->installTranslator(qtTranslator);
} else {
delete qtTranslator;
}
QTranslator *appTranslator = new QTranslator(qApp);
if (appTranslator->load(QString("@translations_dir@/@catalog_name@_%1.qm").arg(locale))) {
QCoreApplication::installTranslator(appTranslator);
} else if (locale == QLatin1String("C") ||
locale.startsWith(QLatin1String("en"))) {
// English is the default. It's translated anyway.
delete appTranslator;
}
}
Q_COREAPP_STARTUP_FUNCTION(loadQtTranslation)

12
cmake/modules/LXQtTranslate.cmake → debian/bin/evil vendored Normal file → Executable file
View File

@ -1,5 +1,6 @@
#!/bin/bash
#=============================================================================
# Copyright 2014 Luís Pereira <luis.artur.pereira@gmail.com>
# Copyright 2015-2017 Alf Gaida <agaida@siduction.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@ -24,9 +25,8 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
#
# An convenience module that loads all the LXQt translations modules at once.
include(LXQtTranslateTs)
include(LXQtTranslateDesktop)
include(LXQtTranslationLoader)
# Usage: evil
lintian -EvIL +pedantic --show-overrides --no-tag-display-limit *changes

View File

@ -1,5 +1,6 @@
#!/bin/bash
#=============================================================================
# Copyright 2015 Luís Pereira <luis.artur.pereira@gmail.com>
# Copyright 2019 Alf Gaida <agaida@siduction.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@ -24,33 +25,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
# FindXdgUserDirs
#
# Try to find xdg-user-dirs-update.
#
# If the xdg-user-dirs-update executable is not in your PATH, you can provide
# an alternative name or full path location with the
# `XdgUserDirsUpdate_EXECUTABLE` variable.
#
# This will define the following variables:
#
# `XdgUserDirs_FOUND`
# True if xdg-user-dirs-update is available.
#
# `XdgUserDirsUpdate_EXECUTABLE`
# The xdg-user-dirs-update executable.
#
# Find xdg-user-dirs-update
find_program(XdgUserDirsUpdate_EXECUTABLE NAMES xdg-user-dirs-update)
# Usage: gbp-buildpackage
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(XdgUserDirs
FOUND_VAR
XdgUserDirs_FOUND
REQUIRED_VARS
XdgUserDirsUpdate_EXECUTABLE
)
mark_as_advanced(XdgUserDirsUpdate_EXECUTABLE)
gbp buildpackage

View File

@ -1,5 +1,6 @@
#!/bin/bash
#=============================================================================
# Copyright 2014 Luís Pereira <luis.artur.pereira@gmail.com>
# Copyright 2019 Alf Gaida <agaida@siduction.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@ -24,24 +25,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
#
# These functions enables "automatic" translation loading in Qt5 apps
# and libs. They generate a .cpp file that takes care of everything. The
# user doesn't have to do anything in the source code.
#
# qt5_translation_loader(<source_files> <translations_dir> <catalog_name>)
#
# Output:
# <source_files> Appends the generated file to this variable.
#
# Input:
# <translations_dir> Full path name to the translations dir.
# <catalog_name> Translation catalog to be loaded.
function(qt5_translation_loader source_files translations_dir catalog_name)
configure_file(
${LXQT_CMAKE_MODULES_DIR}/Qt5TranslationLoader.cpp.in
Qt5TranslationLoader.cpp @ONLY
)
set(${source_files} ${${source_files}} ${CMAKE_CURRENT_BINARY_DIR}/Qt5TranslationLoader.cpp PARENT_SCOPE)
endfunction()
# Usage: gbp-import-orig
gbp import-orig --pristine-tar --uscan

213
debian/bin/git-snapshot vendored Executable file
View File

@ -0,0 +1,213 @@
#!/bin/bash
# Copyright 2015-2019 Alf Gaida <agaida@siduction.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
# Usage: get-snapshot (in package dir)
# One will need a debian/repository.spec file in place
usage()
{
cat << EOF
usage: $0 options
#ToDo Write some useful description
OPTIONS:
-h Show this message
-b build (default="yes")
-c clean (default="yes")
-g git commit (default="yes")
-n dryrun (aka. do nothing default="no")
-p git push (default="yes")
-u upload (default="yes")
EOF
}
build="yes"
clean="yes"
gitcommit="yes"
push="yes"
upload="yes"
dryrun="no"
unset commit
unset branch
target_dir="snapshot"
[ ! -d debian ] && echo "No debian dir found!" && exit 1
if [ -f "debian/repository.spec" ]; then
source debian/repository.spec
else
echo "File debian/repository.spec not found!"
echo "Copied example spec to debian/"
cp /usr/share/lxqt-build-tools/repository.spec.example debian/repository.spec
exit 2;
fi
while getopts “b:c:g:u:hn” OPTION; do
case ${OPTION} in
h) usage
exit
;;
b) build=${OPTARG}
;;
c) clean=${OPTARG}
;;
g) gitcommit=${OPTARG}
;;
n) dryrun="yes";
echo -e "\n\n ... dry run ... \n\n"
;;
p) push=${OPTARG}
;;
u) upload=${OPTARG}
;;
esac
done
if [ "$dryrun" = "yes" ]; then
build="no"
clean="no"
gitcommit="no"
push="no"
upload="no"
fi
if [ "$dryrun" = "no" ]; then
debclean -d
ls | grep -v "debian" | xargs rm -rf
rm -rf .pc
fi
echo ""
echo "┌───────────────────┐"
echo "│ Upstream Settings │"
echo "└───────────────────┘"
[ ! -z "${repository}" ] && echo "repository: ${repository}"
[ ! -z "${branch}" ] && echo "branch: ${branch}"
[ ! -z "${commit}" ] && echo "commit: ${commit}"
[ ! -z "${target_dir}" ] && echo "target_dir: ${target_dir}"
echo ""
declare -f "cleanup"
declared=$?
echo ""
snapdir=$(mktemp -d)
pushd "$snapdir" &>/dev/null
echo "git clone ${branch} ${repository} ${target_dir}"
git clone ${branch} ${repository} ${target_dir}
pushd snapshot &>/dev/null
[ ! -z "${commit}" ] && git reset --hard "${commit}"
description=$(git describe --tags)
commitsaftertag=$(git describe --tags | sed "s#[^-]*-##")
echo "ERRORCODE $?"
# cleanup must be defined in repository
[ "$declared" ] && cleanup
popd &>/dev/null
tar cfJ snapshot.orig.tar.xz snapshot
popd &>/dev/null
if [ "$dryrun" = "no" ]; then
tar xf "$snapdir/snapshot.orig.tar.xz" --strip-components 1
rm -rf "$snapdir"
fi
# New Version
currentversion=$(dpkg-parsechangelog -S version)
newversion="${baseversion}${commitsaftertag}-1"
if [ ! "$currentversion" "==" "$newversion" ]; then
echo -e "\n\nCurrent Version: $currentversion"
echo -e "New Version: $newversion\n\n"
else
echo -e "\n\nCurrent Version: $currentversion"
echo -e "New Version: $newversion\n\n"
echo -e "\n\nkeine neue version\n\n"
exit 0 # should be handled with a variable
fi
# Add a new entry to debian changelog
if [ "$dryrun" = "no" ]; then
dch --newversion "$newversion" \
--distribution "${distribution}" \
--force-distribution \
"New snapshot: $description"
fi
# commit changes to git
if [ "gitcommit" = "yes" ]; then
echo "gitcommit: $gitcommit"
git add --all
git commit -m "New snapshot: $description"
git push
fi
# clean up old builds
if [ "$clean" = "yes" ]; then
echo "clean: $clean"
echo "dryrun: $dryrun"
debclean
fi
# build a source package
if [ "$build" = "yes" ]; then
echo "build: $build"
echo "dryrun: $dryrun"
debuild -S
fi
# upload source package
if [ "$upload" = "yes" ]; then
echo "upload: $upload"
echo "dryrun: $dryrun"
uploads=$(ls ../*changes)
for i in $uploads; do
dput $uploadrepo $i
done
fi
# git commit
if [ "$gitcommit" = "yes" ]; then
echo "gitcommit: $gitcommit"
echo "dryrun: $dryrun"
git add --all
git commit -m "New snapshot: $newversion"
fi
# git push
if [ "$push" = "yes" ]; then
echo "push: $push"
echo "dryrun: $dryrun"
git push
fi

70
debian/bin/git-versions vendored Executable file
View File

@ -0,0 +1,70 @@
#!/bin/bash
#=============================================================================
# Copyright 2015-2017 Alf Gaida <agaida@siduction.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
# Usage: git versions
# one should have a valid versions list in the source dir
[ ! -d "auto" ] && mkdir auto
echo "Current Repository Versions"
echo "==========================="
if [ ! -f ./.git-versions.list ]; then
echo "Please create a valid ./.git-verisions.list"
echo "One can find the LXQt template in /usr/share/lxqt-build-tools"
else
source ./.git-versions.list
fi
for i in $repositories; do
if [[ "$i" =~ "==" ]]; then
echo ""
echo "$i"
else
pushd $i >/dev/null
if [ ! -d upstream ]; then
echo "$i: please clone upstream"
else
pushd upstream &>/dev/null
# cleanup possible debris and make sure we are on master
git reset --hard &>/dev/null
# git clean -ffdx &>/dev/null
git remote prune origin &>/dev/null
git checkout master &>/dev/null
## end cleanup
oldversion=$(git describe --tags --dirty 2>/dev/null)
[[ -z "$oldversion" ]] && oldversion=$(git describe --tags --dirty)
git pull --all --tags >/dev/null 2>/dev/null
version=$(git describe --tags --dirty 2>/dev/null)
[[ -z "$version" ]] && version=$(git describe --tags --dirty)
unset new && [ "$oldversion" != "$version" ] && new="NEW!!"
echo "$i: $version $new"
popd &>/dev/null
fi
popd &>/dev/null
fi
done

31
debian/bin/mangle vendored Executable file
View File

@ -0,0 +1,31 @@
#!/bin/bash
#=============================================================================
# Copyright 2015-2017 Alf Gaida <agaida@siduction.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
# Usage: mangle $symbolstring
echo "A: $@" | sed 's/ \(_.*\) \(.*\)/ (c++)"\1" \2/' | c++filt

38
debian/bin/symmangle vendored Executable file
View File

@ -0,0 +1,38 @@
#!/bin/bash
#=============================================================================
# Copyright 2015-2017 Alf Gaida <agaida@siduction.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
# Usage: symmangle
# One should use this in the package dir after locale builds in case of
# symbol diffs during the build
if [ -d ./debian ]; then
for i in `find . -name symbols`; do
k=`echo $i | sed "s#/DEBIAN/symbols##" | sed "s#./debian/##"`
cat "$i" | sed 's/ \(_.*\) \(.*\)/ (c++)"\1" \2/' | c++filt | LC_ALL=C sort -u | tee "debian/$k.mangled";
done
fi

230
debian/changelog vendored
View File

@ -1,7 +1,233 @@
lxqt-build-tools (2.1.0-0ubuntu3) plucky; urgency=medium
* Update Standards-Version to 4.7.1, no changes needed.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 21 Feb 2025 15:57:52 -0600
lxqt-build-tools (2.1.0-0ubuntu2) plucky; urgency=medium
* Bump the minimum C++ standard to 20.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 03 Jan 2025 01:49:22 -0600
lxqt-build-tools (2.1.0-0ubuntu1) plucky; urgency=medium
* New upstream release.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 15 Nov 2024 15:32:28 -0600
lxqt-build-tools (2.0.0-0ubuntu1) oracular; urgency=medium
[ Simon Quigley ]
* New upstream release.
- Update build and runtime dependencies for Qt 6.
* Update debian/copyright.
* Bump Standards-version to 4.7.0, no changes needed.
* pkg-config -> pkgconf
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 15 Aug 2024 15:58:15 -0500
lxqt-build-tools (0.13.0-0ubuntu1) mantic; urgency=medium
* New upstream release.
* Remove reverse-applicable cpp17.patch.
* Run wrap-and-sort.
* Update copyright years.
* Update Standards-version to 4.6.2, no changes needed.
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 10 May 2023 11:34:02 -0500
lxqt-build-tools (0.12.0-0ubuntu3) lunar; urgency=medium
* Build using C++17 by default instead of C++14, to be compatible with KDE
Frameworks and Qt.
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 25 Jan 2023 11:36:17 -0600
lxqt-build-tools (0.12.0-0ubuntu2) lunar; urgency=medium
* Added 'Rules-Requires-Root: no'.
* Overhauled copyright file.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Sun, 27 Nov 2022 13:48:55 -0600
lxqt-build-tools (0.12.0-0ubuntu1) lunar; urgency=medium
* New upstream release.
* Actually fix the uscan error. Thanks for the help, arraybolt3!
* Lubuntuify the package slightly, to make debhelper happy.
* Remove upstream-applicable patch.
* Brief copyright update.
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 16 Nov 2022 17:04:59 -0600
lxqt-build-tools (0.11.0-2) unstable; urgency=medium
* debian/watch: fix uscan error.
-- Andrew Lee (李健秋) <ajqlee@debian.org> Sat, 22 Oct 2022 18:45:37 +0800
lxqt-build-tools (0.11.0-1) unstable; urgency=medium
* Team Upload
[ Debian Janitor ]
* Set upstream metadata fields: Repository, Repository-Browse.
* Remove obsolete field Name from debian/upstream/metadata (already present in
machine-readable debian/copyright).
* Avoid explicitly specifying -Wl,--as-needed linker flag.
[ Yao Wei (魏銘廷) ]
* debian/patches: Use gdesktopappinfo.h to find gio-unix-2.0
* debian/upstream/metadata: Remove Repository-Browser (typoed entry)
* debian/control:
- Bump Standards-Version to 4.6.1; No related changes.
- Update version dependency of libglib2.0-dev
-- Yao Wei (魏銘廷) <mwei@debian.org> Sat, 17 Sep 2022 21:17:34 +0800
lxqt-build-tools (0.11.0-0.1) unstable; urgency=medium
* Non-maintainer upload.
* New upstream release.
- Fixes compatibility with GLib ≥ 2.71.1 (closes: #1008416).
-- Dmitry Shachnev <mitya57@debian.org> Sat, 14 May 2022 16:00:20 +0300
lxqt-build-tools (0.10.0-1) unstable; urgency=medium
[ Andrew Lee (李健秋) ]
* New upstream version 0.10.0
* Add debian/salsa-ci.yml file.
[ Severus Septimius ]
* Update debian/changelog
* Update debian/copyright
* Bump Standards to 4.6.0 (no changes)
[ Andrew Lee (李健秋) ]
* Update debian/copyright.
* Added myself as uploader.
* Use debhelper-compat = 13, no changes needed.
-- Andrew Lee (李健秋) <ajqlee@debian.org> Sat, 08 Jan 2022 18:01:14 +0800
lxqt-build-tools (0.8.0-1) unstable; urgency=medium
* Team upload.
[ Sophie Brun ]
* Update the debian/upstream/signing-key.asc
* New upstream version 0.8.0
* Move the specific lxqt build scripts in usr/share/lxqt-build-tools/bin
* Bump Standards-Version to 4.5.1 (no changes)
* Update debian/copyright
[ Raphael Hertzog ]
* Drop ${shlib:Depends} as this is an arch all package
-- Sophie Brun <sophie@offensive-security.com> Wed, 16 Dec 2020 09:51:50 +0100
lxqt-build-tools (0.6.0-3) unstable; urgency=medium
* Switched to gbp
* Bumped Standards-Version to 4.4.0, no changes needed
* Added debin/bin/gbp-buildpackage - first iteration
* Added debian/bin/gbp-import-orig - first iteration
* Fixed .gitignore
-- Alf Gaida <agaida@siduction.org> Mon, 26 Aug 2019 02:31:21 +0200
lxqt-build-tools (0.6.0-2) unstable; urgency=medium
* Removed libqt5xdg-dev - would introduce a cycle dependency when used
with libqtxdg
-- Alf Gaida <agaida@siduction.org> Sun, 24 Feb 2019 15:31:13 +0100
lxqt-build-tools (0.6.0-1) unstable; urgency=medium
* Cherry-picking new upstream release 0.6.0
* Bumped Standards to 4.3.0, no changes needed
* Dropped d/compat, use debhelper-compat = 12, no changes needed
* Fixed years in d/copyright
* Fixed d/lintian-overrides
-- Alf Gaida <agaida@siduction.org> Sun, 27 Jan 2019 13:11:49 +0100
lxqt-build-tools (0.5.0-1) unstable; urgency=medium
* Cherry-picking new upstream release 0.5.0
-- Alf Gaida <agaida@siduction.org> Wed, 23 May 2018 02:50:35 +0200
lxqt-build-tools (0.4.0-7) unstable; urgency=medium
* Really fixed VCS fields
* Fixed watch file
-- Alf Gaida <agaida@siduction.org> Sun, 29 Apr 2018 23:12:38 +0200
lxqt-build-tools (0.4.0-6) unstable; urgency=medium
* Bumped compat to 11
* Bumped debhelper to >= 11~
* Removed cmake minimum version
* Bumped Standards to 4.1.4
* Changed VCS fields for salsa
* Fixed homepage and Sources url to /lxqt
* Bumped years in copyright
* Removed trailing whitespaces
-- Alf Gaida <agaida@siduction.org> Thu, 26 Apr 2018 20:48:51 +0200
lxqt-build-tools (0.4.0-5) unstable; urgency=medium
* Bumped Standards to 4.1.2
* Removed branch from VCS fields
* Removed debian/gbp.conf
-- Alf Gaida <agaida@siduction.org> Thu, 14 Dec 2017 18:28:07 +0100
lxqt-build-tools (0.4.0-4) unstable; urgency=medium
* Switch to unstable
-- Alf Gaida <agaida@siduction.org> Mon, 04 Dec 2017 02:49:26 +0100
lxqt-build-tools (0.4.0-3) experimental; urgency=medium
* Demote git and lintian to recommends - if not installed some dev-scripts
will not work, a dev should know how to handle the situation.
-- Alf Gaida <agaida@siduction.org> Wed, 25 Oct 2017 01:42:18 +0200
lxqt-build-tools (0.4.0-2) experimental; urgency=medium
* Fixed symmangle - sort order is defined by LC_ALL, so using
LC_ALL=C is a good idea in the script
* Renamed get-snapshot to git-snapshot
* Bumped qtxdg dependency to >= 3.1.0
* Added lintian-overrides
-- Alf Gaida <agaida@siduction.org> Sun, 22 Oct 2017 17:01:49 +0200
lxqt-build-tools (0.4.0-1) experimental; urgency=medium
* Cherry-picking new upstream release 0.4.0
* Added some pkg-lxqt tools:
- evil: the (in)famous lintian -EvIL ...
- mangle: mangle single symbols
- symmangle: mangle whole symbol files
- git-versions: get current upstream git versions
- get-snapshot: get a git snapshot
-- Alf Gaida <agaida@siduction.org> Sat, 23 Sep 2017 16:28:13 +0200
lxqt-build-tools (0.3.2-1) unstable; urgency=medium
* Cherry-picking upstream version 0.3.2.
* Switched Architecture any --> all
* Switched Architecture any --> all
-- Alf Gaida <agaida@siduction.org> Sat, 14 Jan 2017 00:55:40 +0100
@ -15,7 +241,7 @@ lxqt-build-tools (0.3.1-1) unstable; urgency=medium
lxqt-build-tools (0.3.0-1) unstable; urgency=medium
* Cherry-picking upstream version 0.3.0.
* Fixed VCS-Fields to branch debian/sid
* Fixed VCS-Fields to branch debian/sid
-- Alf Gaida <agaida@siduction.org> Tue, 06 Dec 2016 22:27:16 +0100

1
debian/compat vendored
View File

@ -1 +0,0 @@
10

38
debian/control vendored
View File

@ -1,26 +1,34 @@
Source: lxqt-build-tools
Maintainer: LXQt Packaging Team <pkg-lxqt-devel@lists.alioth.debian.org>
Maintainer: Lubuntu Developers <lubuntu-devel@lists.ubuntu.com>
XSBC-Original-Maintainer: LXQt Packaging Team <pkg-lxqt-devel@lists.alioth.debian.org>
Uploaders: Alf Gaida <agaida@siduction.org>,
Andrew Lee (李健秋) <ajqlee@debian.org>,
ChangZhuo Chen (陳昌倬) <czchen@debian.org>
Section: devel
Priority: optional
Build-Depends: debhelper (>= 10),
cmake (>= 3.0.2),
qtbase5-dev
Standards-Version: 3.9.8
Vcs-Browser: https://anonscm.debian.org/cgit/pkg-lxqt/lxqt-build-tools.git/?h=debian/sid
Vcs-Git: https://anonscm.debian.org/git/pkg-lxqt/lxqt-build-tools.git -b debian/sid
Homepage: https://github.com/lxde/lxqt-build-tools
Build-Depends: debhelper-compat (= 13),
cmake,
libglib2.0-dev,
pkgconf,
qt6-base-dev (>= 6.6.0)
Standards-Version: 4.7.1
Vcs-Browser: https://git.lubuntu.me/Lubuntu/lxqt-build-tools-packaging
Vcs-Git: https://git.lubuntu.me/Lubuntu/lxqt-build-tools-packaging.git
XS-Debian-Vcs-Browser: https://salsa.debian.org/lxqt-team/lxqt-build-tools
XS-Debian-Vcs-Git: https://salsa.debian.org/lxqt-team/lxqt-build-tools.git
Homepage: https://github.com/lxqt/lxqt-build-tools
Rules-Requires-Root: no
Package: lxqt-build-tools
Architecture: all
Depends: ${shlibs:Depends},
${misc:Depends},
cmake (>= 3.0.2),
libqt5xdg-dev (>= 2.0.0),
pkg-config,
qttools5-dev,
qttools5-dev-tools
Depends: binutils,
cmake,
libglib2.0-dev (>= 2.73.1),
pkgconf,
qt6-tools-dev,
qt6-tools-dev-tools,
${misc:Depends}
Recommends: git, lintian
Description: Build tools for the LXQt desktop environment
LXQt is an advanced, easy-to-use, and fast desktop environment based on Qt
technologies. It has been tailored for users who value simplicity, speed, and

80
debian/copyright vendored
View File

@ -1,16 +1,61 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: lxqt-build-tools
Source: https://github.com/lxde/lxqt-build-tools
Source: https://github.com/lxqt/lxqt-build-tools
Files: *
Copyright: 2010-2012 Razor team
2012-2017 LXQt team
Copyright: 2012-2023 LXQt team
2010-2012 Razor team
License: BSD-3-Clause
Files: lxqt-transupdate
cmake/find-modules/FindClazy.cmake
cmake/find-modules/FindFontconfig.cmake
cmake/find-modules/FindUDev.cmake
cmake/find-modules/FindXCB.cmake
cmake/find-modules/FindXdgEmail.cmake
cmake/find-modules/FindXdgMime.cmake
cmake/find-modules/FindXdgOpen.cmake
cmake/find-modules/FindXdgScreensaver.cmake
cmake/find-modules/FindXdgSettings.cmake
cmake/find-modules/FindXdgUserDirs.cmake
cmake/find-modules/FindXKBCommon.cmake
cmake/find-modules/FindXTerm.cmake
cmake/modules/ECMFindModuleHelpers.cmake
cmake/modules/LXQtCompilerSettings.cmake
cmake/modules/LXQtCreatePkgConfigFile.cmake
cmake/modules/LXQtCreatePortableHeaders.cmake
cmake/modules/LXQtPreventInSourceBuilds.cmake
cmake/modules/LXQtTranslate.cmake
cmake/modules/LXQtTranslateTs.cmake.in
cmake/modules/LXQtTranslationLoader.cmake
cmake/modules/Qt6TranslationLoader.cmake
Copyright: 2018 Alf Gaida <agaida@siduction.org>
2014-2020 Luís Pereira <luis.artur.pereira@gmail.com>
2006-2007 Laurent Montel <montel@kde.org>
2018 Volker Krause <vkrause@kde.org>
2010 Rafael Fernández López <ereslibre@kde.org>
2015 Jari Vetoniemi
2014 Alex Merry <alex.merry@kde.org>
2015 Palo Kisa <palo.kisa@gmail.com>
2013 Hong Jen Yee (PCMan) <pcman.tw@gmail.com>
License: BSD-3-Clause
Files: debian/*
Copyright: 2016-2017 Alf Gaida <agaida@siduction.org>
Copyright:
2015-2019 Alf Gaida <agaida@siduction.org>
2016 ChangZhuo Chen (陳昌倬) <czchen@debian.org>
2020 Sophie Brun <sophie@offensive-security.com>
2020 Raphaël Hertzog <raphael@offensive-security.com>
2022 Andrew Lee (李健秋) <ajqlee@debian.org>
2022 Severus Septimius <severusseptimius7@gmail.com>
2022 Aaron Rainbolt <arraybolt3@ubuntu.com>
2022-2024 Simon Quigley <tsimonq2@ubuntu.com>
License: BSD-3-Clause
Copyright: Alf Gaida <agaida@siduction.org>
Files: debian/usr/share/lxqt-build-tools/repository.spec.example
License: WTFPL-2
License: BSD-3-Clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
@ -25,14 +70,25 @@ License: BSD-3-Clause
without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE HOLDERS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: WTFPL-2
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
.
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
.
0. You just DO WHAT THE FUCK YOU WANT TO.

4
debian/gbp.conf vendored
View File

@ -2,7 +2,5 @@
debian-branch = debian/sid
upstream-branch = upstream/latest
pristine-tar = True
compression = xz
[import-orig]
# Use git cherrypick -n upstream instead.
merge = False

2
debian/install vendored Normal file
View File

@ -0,0 +1,2 @@
debian/bin/* /usr/share/lxqt-build-tools/bin
debian/usr/* /usr

26
debian/patches/cpp20.patch vendored Normal file
View File

@ -0,0 +1,26 @@
Description: Bump the minimum compatibility level to C++20
This pull request is very similar to
https://github.com/lxqt/lxqt-build-tools/pull/83, except this is proactive
rather than reactive.
Author: Simon Quigley <tsimonq2@ubuntu.com>
Origin: upstream
Forwarded: https://github.com/lxqt/lxqt-build-tools/pull/102
Last-Update: 2025-01-03
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/cmake/modules/LXQtCompilerSettings.cmake
+++ b/cmake/modules/LXQtCompilerSettings.cmake
@@ -181,11 +181,11 @@ endif()
#-----------------------------------------------------------------------------
-# CXX17 requirements - no checks, we just set it
+# CXX20 requirements - no checks, we just set it
#-----------------------------------------------------------------------------
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(CMAKE_CXX_EXTENSIONS OFF)
-set(CMAKE_CXX_STANDARD 17 CACHE STRING "C++ ISO Standard")
+set(CMAKE_CXX_STANDARD 20 CACHE STRING "C++ ISO Standard")
#-----------------------------------------------------------------------------

1
debian/patches/series vendored Normal file
View File

@ -0,0 +1 @@
cpp20.patch

1
debian/rules vendored
View File

@ -2,7 +2,6 @@
# export DH_VERBOSE=1
export LC_ALL=C.UTF-8
export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
%:

12
debian/salsa-ci.yml vendored Normal file
View File

@ -0,0 +1,12 @@
# For more information on what jobs are run see:
# https://salsa.debian.org/salsa-ci-team/pipeline
#
# To enable the jobs, go to your repository (at salsa.debian.org)
# and click over Settings > CI/CD > Expand (in General pipelines).
# In "Custom CI config path" write debian/salsa-ci.yml and click
# in "Save Changes". The CI tests will run after the next commit.
---
include:
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml

6
debian/upstream/metadata vendored Normal file
View File

@ -0,0 +1,6 @@
Bug-Database: https://github.com/lxqt/lxqt-build-tools/issues
Bug-Submit: https://github.com/lxqt/lxqt-build-tools/issues/new
Changelog: https://github.com/lxqt/lxqt-build-tools/blob/master/CHANGELOG
Repository: https://github.com/lxqt/lxqt-build-tools.git
Repository-Browse: https://github.com/lxqt/lxqt-build-tools

View File

@ -1,50 +1,53 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Comment: Signed by Sophie Brun
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
=h7ww
mQINBF6cxrwBEADfl3ydxNfLBbWGPesXty2baQgixZ3D6aCxadI2kX+aikmT8rd0
ttDKN18cXV52Ssxnj0qhgf4hwnu/b0be6BzqSEyGM+UQR3X2CYpxrMakfW32Q18K
X5ec0RPR2ucBq9G0r9t6FYC8FkJ4uQUU3xxrLW3z302S0Makjgzm8BV9WrFQ7oFF
uJQj0BHbHYC4RyaZb2AfxY4Y92BPGTjtGekWqgw6vEXCCnvAbGYVQzvxZt3nw21/
1YmV4g7xhGFQPbOf9v3ejFUJeJIGzuJf5NAh7kvfCdUBAGYH0gnj0GpOve4ftnaG
sAId2CQwm3oYF4Tu7yBPTOBpkaKkNaT+UdwTyeKERuCZ9ocZWX++/YF9ItRkJ5mM
zoP1GluWn2atNWpRh/K97gyAGgr2fSmrAA4d1JrVbMujZAHoHAOKwJKqX9jPziPZ
BFHfhcIOzG3ZhXAuumHsd7uwfPBVt20g+G+cOjBghbSSu9EOtMkAZl1g3ybvZixu
Jtxa5exZWEmU7vtytEb8eq9Dj5XcGoTDbErE2RpJ/20HPzhyRKg9RN4iGS+0OiHS
oRbDi5IEOizvQjp2bsBmfa3rsoDSOqF2pevp+u8I56I6bU1GFpxxNC5IGvgo2Q79
quz0oIk5hs3eLlUdEYsLGwR6pWJaJyf36vuDsq7iLrLyvHI5irAowO4r1QARAQAB
tCVQZWRyYW0gUG91cmFuZyA8dHN1amFuMjAwMEBnbWFpbC5jb20+iQJOBBMBCAA4
FiEEGd/fOleb1QnbtXLYvnkwB60i334FAl6cxrwCGwMFCwkIBwIGFQoJCAsCBBYC
AwECHgECF4AACgkQvnkwB60i335f9RAAgRpn8gUa/l10UkVAnpM2Cz0MuNMwwCOq
IfVnuZuPBtYYiTU5Su++/aPZe3fF5B4v61F+XjNi7qeVL2t52X3jZ/iIx9Syasb+
vDAIfQ5t6lKXvOptWxf6vteOg6CHbXwpGHbPjUkUS2vQwRikjBnR0SnkrMoXtgSX
amPFqsitNrOhEJfeDfo0NzKESZuliWrCFt2v8c5q18G8cCZAvPLBlGuwRl58cDep
3EIibMI/9MUSJbKoiHlK+LcHtG7BQTNis/e7Pe1PkRmExfhxe1lNajtOx8FO72Tq
B6zY6drippM9VaIc1M+zp9BRpsFu8whOmapCqlXHRgAK8xTdQRIGInQFqLWPOxSC
f0B6N+EvQvgkyFQ1rW+u91OJBma46uKkhrwf+mDttVRncaIAkgE6e6pqm18yIPFk
D42rt/yHcOl+2qkcJS3gPcg5UvlCzqOwg1rKZQIk+TcPuDx3r2UghDEYZN9X6vw3
zCBufr7ygZNf4tkbnVARFWTR4GzyCseFkWgOVZL9DccAhs8NeMy1WLkUzB75adeR
3LONmEL7xOI8FuknKY4e6EcWhmstNIDgXfRe0hwO0VBdW3unoZC/K2ZM/ZuZyMdK
TFjvYJrNewmymKge68wo0054bGZn8oz17i2AosJz7kW+ITsxmxhVcpfl4bav9Neq
RpQwhnhK9bC5Ag0EXpzGvAEQANbeRHFbpgQVIqV9WVOVnTj4FIqrTPTPKKa02vJA
7tGpgFapgvjdxnMxJfV6wuwOBUUFLR7DrXlV8EVFAYc5qTIeSQXvJsWw6gQ3+f0D
z13oGOhZPBIzIKnV/MZI/jhIio8kSPWAuM5hR2X9Hvw3/CLo+H+hZZ6cFYoCxrQS
tTzcKMkdQizLLa+WNbqUSxg6I/P5k/smUDY9gKW7RtI5t/PupA3WTnsVD6CYWa3Q
c1O/1mUgqT6nQ5N9KCPpjZQRT6D6eIMmePtS85z4PPeYMJxPsKRYWPGRxKhCSdZl
/0wsC8aRtmwYT729e0ZgTAmUnj+rQp5hboF/ZPFjIoXR9G+0HnoY0a/nqVO4lUON
AV25GnMFGVyiHHlbH/0gboywwnzEg8BZbk+Z/61oOzBIW09sfG8fn8bsbkpL+nHf
Mi/Vauge6wSfw7I5AfSiwrSDNHmKVsu39koWV6JGxEeFr2MffF+CuaoJCNOr/ZII
SYR5ku3Y/lMKyUH1Oas0RWzFrdRcInqYK90A0x083zP4V445MvCwbRPzQAkm9wOP
kILLhE5FW+9/O0/9bpx4joJUDLV4d3hFZy7GSHKiZUs1QW6BV75JQKqoi+cVt+/L
+o1S8CMNekjqdC2mWRosM3doo51zT/FWNzQA1QcoZP2hORJDfw66y+4wPq6o8y1W
jR35ABEBAAGJAjYEGAEIACAWIQQZ3986V5vVCdu1cti+eTAHrSLffgUCXpzGvAIb
DAAKCRC+eTAHrSLffgbJD/4qW5YOo/BayBhaUh2L7VP7JNlECb/2xNNOFKI1NjNr
nOmgSJLzf74Uhmt5W+iVjmJBHrDceprIPkizmPrn90kIsPIMtHIDNxzUgKZHbnza
j1vZyAeC+JV79X1hOVpprj1TJwy65lpxXNyYnGqeIOgyFokn9fOHXv8aMQwpNuUr
bdUJ1C75jYrvwy/NR1DczIFFYgsbkDGDtjVBjyMc5JAgvUBz37/iVPJfWP6dKVnf
abRnUVzHgvgK7bnab00SA1TiWvjHURGjo+5rnRtv8X/AgStc2Phjq68TMIgMn0F2
kjUVvfQotNqzo9madNshvUDmsGtAzKh4e0dS1ear7u3nRp4Z7fqSrTEtXKNbEPwZ
wdWrWmmQLacNQBSe/FtcMzGF6xIVr4lnrL0bFjqBdQpdTC7vns3QSKk8/GFiEfpv
kzXrDbGV7jX2OWDjNHKcmXX2+E1CsNaJgS7zOgZw5jvbvlTLJUwyYNlM1VLI2OFW
Oa86l8pqli+B7rpTbsAE9Ut8qUaWjm87oUNSJbaKgqNnMaE+b/8VJaEeWHgQJwsD
bJSJ/O/vzlRtDjOJ1JDlMRLs7TnOFeUh5pgwyaJoidYbJEiGlMGJbI6BjwhDTBFO
NLJtd3SsRjc7ICtGdCvej59IvCDTjxtkhx5okF03APi1aXpHQrE18/arFD7BpoGO
sw==
=gSIv
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -0,0 +1,61 @@
repositories="\
==0== \
libqtxdg \
\
==I== \
lxqt-build-tools \
\
==II== \
liblxqt \
libsysstat \
\
==III== \
compton-conf \
libfm-qt \
lxqt-l10n \
lxqt-themes \
obconf-qt \
pavucontrol-qt \
qtermwidget \
\
==IV== \
lximage-qt \
lxqt-about \
lxqt-admin \
lxqt-config \
lxqt-globalkeys \
lxqt-notificationd \
lxqt-openssh-askpass \
lxqt-policykit \
lxqt-powermanagement \
lxqt-qtplugin \
lxqt-session \
lxqt-sudo \
pcmanfm-qt \
qterminal \
\
==V== \
lxqt-panel \
lxqt-runner \
\
==VI== \
cmst \
juffed \
nomacs \
qlipper \
qps \
screengrab \
trojita \
\
==MISC== \
calamares \
connman \
fswatch \
libfm \
menu-cache \
meteo-qt \
orbital \
qtstyleplugins \
quassel \
sddm \
vokoscreen"

View File

@ -0,0 +1,26 @@
# Author: Alf Gaida <agaida@siduction.org>
# License: WTFPL-2
# 0. You just DO WHAT THE FUCK YOU WANT TO.
# Variables
# =========
# repository= your repository
# branch= your branch, if needed
# commit= your commit , if needed
# target_dir= target dir, if needed, default is snapshot
#
# Functions
# =========
# cleanup ()
repository="git@$domain.tld:$foo/$bar"
# cleanup function definiton
cleanup() {
echo ""
echo "┌─────────────┐"
echo "│ Cleanup ... │"
echo "└─────────────┘"
rm -rf .git*
}

6
debian/watch vendored
View File

@ -1,3 +1,5 @@
version=4
opts="pgpsigurlmangle=s/$/.asc/" \
https://github.com/lxde/lxqt-build-tools/releases .*/lxqt-build-tools-([\d\.]+).tar.xz
opts="searchmode=plain, \
pgpsigurlmangle=s/$/.asc/, \
uversionmangle=s/(\d+\.\d+\.\d+).*/$1/" \
https://api.github.com/repos/lxqt/@PACKAGE@/releases https:\/\/github.com\/lxqt\/@PACKAGE@\/releases\/download\/@ANY_VERSION@\/@PACKAGE@-@ANY_VERSION@.tar.xz

View File

@ -1,10 +0,0 @@
set(PACKAGE_VERSION "@LXQT_BUILD_TOOLS_VERSION@")
if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
set(PACKAGE_VERSION_COMPATIBLE FALSE)
else()
set(PACKAGE_VERSION_COMPATIBLE TRUE)
if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)
set(PACKAGE_VERSION_EXACT TRUE)
endif()
endif()

View File

@ -1,9 +0,0 @@
@PACKAGE_INIT@
set(LXQT_CMAKE_MODULES_DIR "@PACKAGE_MODULES_INSTALL_DIR@")
set(LXQT_CMAKE_FIND_MODULES_DIR "@PACKAGE_FIND_MODULES_INSTALL_DIR@")
list(APPEND CMAKE_MODULE_PATH
"${LXQT_CMAKE_MODULES_DIR}"
"${LXQT_CMAKE_FIND_MODULES_DIR}"
)