Age | Commit message (Collapse) | Author |
|
The suffix is used later to run the clang executable in order to
determine the built-in system includes.
|
|
The dist-packages directory which is currently hardcoded is unsuitable
to non-debian package creation. Set the directory to 'site-packages' by
default.
|
|
Currently this is rather simple, allowing only matching typedefs by
name. If we need more later, we can extend the interface. This will
make it possible to add bindings for the K18n framework.
|
|
|
|
Don't use the text 'Parse error' for warnings, which might confuse IDEs.
|
|
The Python logging module uses logging severities with numerical values
which form a sequence in steps of 10. The Clang cindex.Diagnostic
numerical values use a step size of 1, so the two are incompatible.
Introduce a mapping function so that appropriate errors get issued when
attempting to build the bindings. The logging module has one surplus
diagnostic level, but we simply never use it.
BUG: 374801
|
|
The generator expression here looks like it should work, but it does not
set the appropriate flags for compilation. It seems that the
CXX_STANDARD property is not yet populated at the time the generator
expression is evaluated (to be investigated later).
This came to light because users of Qt 5.7+ attempted to generate the
bindings, but they encountered errors. The step of using libclang to
parse the provided headers was actually failing, but that was not
noticed, perhaps because the logging infrastructure in sip_generator
does not emit it (to investigate later).
BUG: 374801
|
|
The Q_DECLARE_TR_FUNCTIONS macro contains a `public:` access specifier,
but the sip_generator just pastes the entire macro name. Adjust the
generator to extract the correct access specifier.
|
|
Note which rule has a modification effect.
|
|
It is unused.
|
|
|
|
|
|
Summary: Cut-and-paste-o from the Python detection code.
Reviewers: #frameworks, skelly, apol
Reviewed By: apol
Subscribers: #buildsystem
Tags: #frameworks, #buildsystem
Differential Revision: https://phabricator.kde.org/D3952
|
|
|
|
This can be used by KF5 libraries to generate python 2 and 3 bindings.
|
|
When sip is executed it is passed one .sip file. However, it uses that
to generate multiple cpp source files, one per class in the sip file.
Buildsystems need to know the outputs of commands, so this does not work
well as the output can't easily be predicted.
So, create a unity build of all files to compile into the python module.
|
|
The ruleset is used to transform or omit artifacts in C++ header files
when determining the SIP content to generate. Some content common to
all Qt-using libraries can be processed by using the rule set present
here. For example, most Q_METATYPE internal declarations should be
discarded.
|
|
These files process C++ headers with libclang and python-clang bindings,
using the AST to generate SIP files for PyQt binding library generation.
The design allows for further extensions which can process other
artifacts found in headers. This iteration of the design is a simple
minimum which suffices to generate headers for KItemModels and some
other libraries.
|
|
FindPoppler wasn't available in ecm < 5.19
CCMAIL:faure@kde.org
|
|
At least Okular and KBibTex include a FindPoppler.cmake module but this one
uses the new ECMFindModuleHelpers and has imported targets.
REVIEW: 126183
|
|
REVIEW: 126414
|
|
The XINPUT library is unlikely to be available on many systems,
including a lot of Linux distributions. This will warn developers in
advance by (a) not searching for XINPUT unless it was explicitly
requested, and (b) printing a warning if they do request it.
REVIEW: 125935
|
|
REVIEW: 123470
|
|
|
|
http://www.winterdrache.de/freeware/png2ico/
|
|
There is no "\t" in CMake's regular expression syntax; we need to make
the character be interpreted when CMake parses it as a string.
|
|
Debian likes to install qt binaries into an obscure path, search here as well
REVIEW: 122526
|
|
|
|
|
|
This adds an application icon to an executable from PNG files for
Windows and Mac OS X. Unlike the similar kde4_add_app_icon macro from
kdelibs, this requires icons to be explicitly listed as arguments
(meaning CMake can tell when ones are added or deleted and reconfigure
as appropriate), and it works with Matthias Benkmann's png2ico tool, as
well as the KDE-Win tool of the same name.
Currently missing unit tests. Also completely untested (except that
`make test` runs on Linux, so there are no obvious syntax errors).
With thanks to Ralf Habacker for the inital work on porting
kde4_add_app_icon.
CHANGELOG: Add ECMAddAppIcon module to add icons to executable targets
on Windows and Mac OS X.
|
|
While the search is unlikely to succeed on Windows, having different
behaviour between the platforms (eg: find_package(Wayland REQUIRED) was
not fatal on Windows, even though Wayland_FOUND would always be FALSE)
is not ideal, and if someone did port them to Windows for some reason,
the find modules should support that.
If applications actually want different behaviour between platforms
(like requiring a module on Unix, but not on Windows), they should
implement that logic themselves (since they will have to deal with
targets not being defined, etc, anyway).
REVIEW: 120481
|
|
Add a couple of find modules for wayland-scanner and qtwaylandscanner.
These modules find the respective executables and create a target that
points to the executable.
Targets are respectively Wayland::Scanner and Wayland::QtScanner.
There are also macros to generate C protocols with wayland-scanner and
C++ wrappers with qtwaylandscanner.
REVIEW: 120034
|
|
add FindLibGit2.cmake + doc link
scripts tries to detect version not by pkgconfig to work on windows without pkgconfig, too
REVIEW: 120196
|
|
REVIEW: 117780
|
|
ECMUseFindModules allows find modules to be copied to a local directory.
These find modules may use ECMFindModuleHelpers, but they will not be in
the same relative location to ECMFindModuleHelpers.cmake and there is no
guarantee that ECMFindModulesHelpers.cmake will be in the CMake module
path.
To solve this, we make sure there is always a stub file in the same
directory as the find modules that includes the real
ECMFindModuleHelpers.cmake. The one installed with ECM just includes
"../modules/ECMFindModuleHelpers.cmake", while ecm_use_find_modules
generates a stub that uses an absolute path.
REVIEW 117658
|
|
The traditional *_LIBRARIES, *_INCLUDE_DIRS and *_DEFINITIONS do have
some uses - they make it easier to create package config files that use
found libraries in their link interface. So this makes sure these
variables are set by ecm_find_package_handle_library_components() (and
hence by FindWayland.cmake and FindXCB.cmake).
REVIEW: 117585
|
|
Imported target, version handling, package description etc.
REVIEW: 117491
|
|
- Add version handling
- Improve the docs
- mark cache variables as advanced
- make the pkg-config call actually work
REVIEW: 117490
|
|
This is deliberately modelled very closely on CMake's documentation
system. It's a hefty patch, because it involved changing all the
documentation to be in reStructuredText format. I also cleaned up the
copyright/license statements at the same time.
Note that the find modules contain the full license, due to the fact
that ecm_use_find_module() copies them out of the ECM distribution.
|
|
This currently mostly contains macros for handling components;
FindWayland and FindXCB are ported to use this module, which comes with
various improvements for them.
REVIEW: 116653
|
|
The thumbnail: ioslave from kde-runtime needs it.
Reviewed-By: Alex Merry
|
|
REVIEW: 116616
|
|
First part of the diff makes sure find_package_handle_standard_args()
gets a version number to check against.
Second part ensures we get proper results from pkg-config even if not all
components are available. find_package(Wayland COMPONENTS Client Egl)
was failing for me because I have Client installed but not Egl, causing
pkg_check_modules() to not set any PKG_Wayland_${comp} variable.
REVIEW: 116598
|
|
These are only really useful to kdoctools, so they may as well live
there.
REVIEW: 115897
|
|
* define imported targets for all components
* add version information
* print message on Windows
* add package properties
* use handle components
REVIEW: 116046
|
|
Inspired by the FindXCB module it's using components to simplify
finding just the parts which are really required.
REVIEW: 116018
|
|
This module finds the egl library through pkg-config.
REVIEW: 116014
|
|
This is used by many projects (including any that install any extra mime
info).
REVIEW: 115749
|
|
The functionality of it is now provided by a KF5Config.cmake file.
Remember to remove it from your install prefix to avoid future
confusion.
CCMAIL: kde-frameworks-devel@kde.org
|
|
|