Age | Commit message (Collapse) | Author |
|
regex gets slightly adjusted to only run on kde.org urls, the actual
repo name may now contain slash as well since
a) basenames aren't necessarily unique anymore
b) by extension we need to give fetchpo an actually unique repo path so
it can resolve the underlying project and its translations
|
|
Required for module test to pass.
|
|
According to
https://api.kde.org/ecm/module/ECMGenerateDBusServiceFile.html the macro
being tested works differently on windows. The path to the binary
executable is removed on windows.
|
|
When creating a library or executable, several source files are combined
into a binary artifact that has an outbound license of its own. This test
generator allows to check if the combined source files are compatible
with the desired outbound license.
Requirements for using these tests:
- input source files must contain the SPDX-License-Information tag
- python3 must be available
- the "reuse spdx" tool must be available
|
|
|
|
As CheckAtomic.cmake is a copy and we need to keep sync.
a348de480d34257ffe394ab51b880c9aef243d80
Date: 04/18/2020
repo: https://github.com/llvm/llvm-project
file: /llvm/cmake/modules/CheckAtomic.cmake
|
|
Application need to test, if they need to build against atomic libray.
In order to not duplicate the code over and over again, let's have one
version in ecm.
|
|
|
|
|
|
|
|
Also document --android-platform parameter
|
|
Also pass along these values to androiddeployqt
|
|
|
|
|
|
Our August releases produce invalid octal numbers ("08") otherwise.
|
|
qmlplugindump sometimes hangs forever and thus blocks a build. Setting an (arguably arbitrary) timeout works around that.
|
|
An intended use case is to generate client-side and server-side code for
protocols shipped in the wayland-protocols package with qtwaylandscanner.
|
|
|
|
it only updates the database iff there's new files and is specifically
meant for post-install invocation. since cmake only installs files when
they actually changed this effectively turns repeated cmake --install
calls noop as far as database updates are concerned
this stops all sources with mimetype definitions from rebuilding the
mime database on every install even when nothing changed. it saves
literal seconds every install call
-n was introduced in 1.4 which is like 6 years old and there are no
pratcically relevant distribution versions around with older versions
|
|
|
|
|
|
|
|
This reverts commit 3830dde78f9bde7ebe01fddca49d5806d4e52bea.
|
|
|
|
Summary:
It serves as a replacement for `kdbusaddons_generate_dbus_service_file`.
An application can be a DBus-activated service just fine without using KDBusAddons.
Moreover, this new module uses named arguments for future-proofing, and adds support for specifying a `SystemdService`.
It also cleans up the confusion on what the "path" is about: Rather than requiring to specify executable and path separately, we just extract the executable file name on Windows, if necessary.
Usage:
```
ecm_generate_dbus_service_file(NAME org.kde.kded5
EXECUTABLE ${KDE_INSTALL_FULL_BINDIR}/kded5
SYSTEMD_SERVICE plasma-kded)
```
Test Plan:
* Was able to generate a kded service file
* Was able to generate a kded service file with `SystemdUnit`
* Verified that it moaned when executable wasn't an absolute path
* Untested on Windwos
Reviewers: #frameworks, davidedmundson, kossebau, kfunk, habacker
Subscribers: kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29051
|
|
Summary:
This, as the name suggests, configures a file and installs it.
It's not very complicated but it's a repeated pattern in plasma that
gets quite messy dealing with temporary files.
Test Plan: Used in a project
Reviewers: #build_system
Subscribers: apol, kossebau, pino, kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D28355
|
|
This is useful if a library intends to reparse the original wayland.xml
file instead of using the pregenerated headers.
|
|
Lexer for CMake could not parse this broken grammar,
because it is ".cmake.in", not just ".cmake".
CMake itself solves this problems by declaring such code blocks
as generic "::" blocks instead. For example, take a look at the
last code block at CMakePackageConfigHelpers help page:
- https://cmake.org/cmake/help/v3.18/module/CMakePackageConfigHelpers.html#example-generating-package-files
- https://github.com/Kitware/CMake/blob/0464298956a204578aa8421ca0b84c089a97e0aa/Modules/CMakePackageConfigHelpers.cmake#L208
|
|
GIT_SILENT
|
|
Png2Ico provides lower quality icons compared to icoutils as png2ico
predates the current icon standard.
Still lloking for png2ico prints
* Png2Ico, Executable that converts a collection of PNG files into a Windows icon file, <https://www.winterdrache.de/freeware/png2ico/ or https://commits.kde.org/kdewin>
which confuses new users.
|
|
Without this simple space, FindTaglib doesn't appear on
the generated ecm-find-modules.7.html page.
|
|
|
|
Qt adds the Android ABI to the suffix there unconditionally, without also
adjusting CMAKE_FIND_LIBRARY_SUFFIXES accordingly, breaking find_library()
for things built that way. Unfortunately we can't just set this in our
toolchain file, as CMAKE_FIND_LIBRARY_SUFFIXES is overwritten by CMake
after evaluating the toolchain file. So we need to use the variable_watch
hack for this here, thanks to Aleix for the idea.
With this, find_library() works for both suffixed and un-suffixed libraries
again, such as Poppler built with or without Qt support.
|
|
Based on https://phabricator.kde.org/D21695
Several KDE projects use taglib, so we really need to provide a proper
find module in ECM.
AFAIK taglib-config should not be portable, so we don't try to
run it on WIN32. See also:
https://invent.kde.org/network/kio-extras/-/commit/548f525f4308810888c85f42a570139029c40618
|
|
|
|
|
|
|
|
|
|
Summary:
Now and then tagging some API as deprecated for the compiler is forgotten.
Doing this retractivitly in newer versions but using the official version
might break build setups configured to only show warnings up to a certain
version and otherwise fail a build, using -Werror=deprecated-declarations.
To allow retroactive tagging of API for compiler warnings, and showing the
official version in the warniung message, while reacting only to warning
controls for the current version where the tag is added, avoids any such
annoying experiences, without wrong version info at the same time.
Reviewers: #frameworks, #build_system, dfaure
Reviewed By: dfaure
Subscribers: kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29573
|
|
Summary:
This allows `make create-apk` to directly write the APK to /output instead of the cp-with-prefix step in /opt/helpers/create-apk. It's also useful for manual development builds where one would need to copy it to some output location manually or for CI setups that expect the output in a certain location.
If ANDROID_APK_INSTALL_DIR is not set the current behaviour is kept.
Reviewers: #frameworks, #android, apol, vkrause
Reviewed By: #android, apol
Subscribers: kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29631
|
|
|
|
Test Plan: works as before for the case where it's relative.
Reviewers: cgiboudeaux, vatra, kfunk, apol, vkrause
Reviewed By: cgiboudeaux
Subscribers: kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29524
|
|
Summary:
Instead of generating
QT.KArchive.includes = /full/path/include/KF5/KArchive
make it
QT.KArchive.includes = $$PWD/../../include/KF5/KArchive
This makes the whole install prefix relocatable after the fact,
the includes will be found based on where the .pri file ended up.
This is especially useful for Conan support, says Bogdan.
Test Plan: After make install in ECM, cd karchive/examples/helloworld && qmake && make
Reviewers: vatra, kfunk, apol, vkrause
Reviewed By: vkrause
Subscribers: ablu, kossebau, kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29274
|
|
Summary:
cmake introduced a new find_package mismatch check in 3.17, but also allows
user to suppress the warning by setting a variable (Or parameter, but
require new cmake 3.17). Same technique is also used with in cmake,
e.g. FindGTK2.cmake.
Test Plan: Test with FindXCB.cmake
Reviewers: #frameworks, #build_system, apol
Reviewed By: apol
Subscribers: apol, kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29396
|
|
Summary: Makes them easier to use afterwards.
Test Plan: Tested locally
Reviewers: #android, #frameworks, nicolasfella
Reviewed By: nicolasfella
Subscribers: vkrause, kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29079
|
|
|
|
Test Plan: KF modules configure build as before, same some apps.
Reviewers: #frameworks, #build_system, cgiboudeaux
Reviewed By: cgiboudeaux
Subscribers: apol, kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D29097
|
|
|
|
Summary: Tells cmake not to automoc certain files that don't need it, which would become a big fuss on the cmake output.
Test Plan: No warnings
Reviewers: #build_system, #kwin, #frameworks, davidedmundson
Reviewed By: #kwin, davidedmundson
Subscribers: kde-frameworks-devel, kde-buildsystem
Tags: #frameworks, #build_system
Differential Revision: https://phabricator.kde.org/D28900
|
|
|