Age | Commit message (Collapse) | Author |
|
Rather than blindly using ${LIB_INSTALL_DIR} and ${INCLUDE_INSTALL_DIR}
(which assume the inclusion of KDEInstallDirs), this checks whether they
exist, also checks for ${CMAKE_INSTALL_LIBDIR} and
${CMAKE_INSTALL_INCLUDEDIR} (set by GNUInstallDirs), provides hard-coded
defaults and allows arguments to be used to override the values.
This should make it useful to projects that aren't KDE Frameworks.
REVIEW: 117593
|
|
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
|
|
This means frameworks will only depend on qttools if you have a po
directory when building them.
Approved by agateau and alexmerry on IRC.
|
|
- Always load "en" translation: This way if a plural string is not translated,
we fallback to the correct english plural form.
- Generate .ts files with correct plural settings
REVIEW: 117629
|
|
This allows a more straightforward way of using it, which matches the
macros that generate things like D-Bus interfaces.
REVIEW: 117475
|
|
This is the variable set by GNUInstallDirs.
REVIEW: 117596
|
|
REVIEW: 117560
|
|
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 causes problem with .po files whose name contains "-". A nice side
effect of this approach is we pass a QLocale to QTranslator, which means
it will try to load translations for all "ui languages" [1] instead of just
the one returned by QLocale::name().
[1]: http://doc-snapshot.qt-project.org/qt5-stable/qlocale.html#uiLanguages
REVIEW: 117296
|
|
Simplifies translation handling for frameworks using Qt translation system.
REVIEW: 117052
|
|
Always printed Wayland.
REVIEW: 117114
|
|
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
|
|
Specifically, we namespace the variables to avoid conflicts, and make
the version argument optional.
REVIEW: 116080
|
|
This will be available in CMake 3.0.0. This way, we automatically pick
up any new features from it.
REVIEW: 115775
|
|
All the frameworks are ported now, so this is no longer necessary.
Checked by building everything with kdesrc-build.
|
|
Now that we no longer have to support the old syntax, some of the
more complex bits of the argument parsing can be removed.
REVIEW: 115869
|
|
Overriding a CMake package like this will just cause all sorts of
headaches later on. In this particular case, projects that depended on
CMake 2.8.13 or later (more likely 3.0.0) would fail with a message
about removing the CMakePackageConfigHelpers file, but would have no way
to do that while still using ECM.
This also renames the configure_package_config_file() macro to
ecm_configure_package_config_file(), so that anything including
CMakePackageConfigHelpers afterwards does not overwrite the macro
unexpectedly.
For now, we keep a CMakePackageConfigHelpers.cmake file that just wraps
ecm_configure_package_config_file() as configure_package_config_file()
to keep the frameworks building while they are ported.
REVIEW: 115496
Reviewed by Sune Vuorela <kde@pusling.com>
|
|
[at least everything that kdesrc-build builds. If there's something else,
then it should be added to kdesrc-build...]
|
|
ecm_generate_headers() now allows/forces the caller to collect the paths
of the generated headers, so that they can be passed to the install
command. This avoids issues of unexpected files being in the CamelCase
includes directory, both from previous builds and because of
case-insensitive file systems.
MODULE_NAME is removed, as it is no longer desirable or necessary.
Instead, the headers are placed directly in the output directory
(usually CMAKE_CURRENT_BUILD_DIR).
Overall, this makes ecm_generate_headers() behave much more like other
file generation macros (like the Qt ones).
The old syntax is still supported for now, to make the porting effort
easier.
REVIEW: 115765
|
|
Reviewed by: alexmerry
|
|
ECM_GENERATE_PRI_FILE() creates a .pri file for a library so that qmake-based
apps can more easily use the library.
It also sets ECM_MKSPECS_INSTALL_DIR as the directory to install the .pri file to.
REVIEW: 115099
|
|
This makes it easier for other functions to access the project version,
for instance my upcoming ECM_GENERATE_PRI_FILE()
|
|
This behaviour can be overriden by passing the GUI flag to the command
REVIEW: 115211
|
|
REVIEW: 114888
|
|
version
This is all internal, doesn't change the API or effects of ecm_setup_version.
|
|
headers
|
|
RELATIVE is needed because some projects have their headers (and sources)
split into different subdirectories.
REQUIRED_HEADERS gives the opportunity to receive a list of all the headers
we're depending on, in case the user wants to re-use it.
|
|
Create ECM_GENERATE_HEADERS, a cmake function that will generate the
forward headers like we used to, in cmake configure time.
REVIEW: 113406
|
|
REVIEW: 113522
|
|
I can't find any use of it, which is semi-expected. It is replaced
by CMakePrintHelpers.cmake in CMake upstream.
|
|
REVIEW: 113483
|
|
These are not used anywhere.
|
|
|
|
ecm_add_test was renamed eventually, but all uses weren't adapted
|
|
Every framework in KF5 has a macro similar to these, this reduces
the unnecessary duplication inside all of the frameworks
REVIEW: 112828
|
|
|
|
|
|
|
|
Accept a single version argument instead of three. The old signature
will be an error in a few days.
|
|
Both macros are obsoleted by ecm_setup_version.
REVIEW: 112665
|
|
Add a macro for finding dependencies. It should be in a future
version of CMake. Finding dependencies is one of the major missing
pieces of KF5 Config files.
|
|
|
|
|
|
|
|
|
|
Make FindQt5Transitional.cmake handle this transparently.
REVIEW: 107438
|
|
Alex
|
|
This commit
-adds the macro ecm_setup_version(), as proposed on the kde-frameworks list
-sets CMAKE_INSTALL_DEFAULT_COMPONENT_NAME to ${PROJECT_NAME} if a project has been set
-makes e-c-m require cmake 2.8.10.1
Alex
|
|
"Can you please rename it to ECMDBusAddActivationService.cmake and
the contained macro to ecm_dbus_add_activation_service(), so it follows the
naming conventions in cmake (macro has the same name as the file) and ecm (all
macros have the prefix ecm)." -> Done.
Nothing to adapt in kdelibs-frameworks yet, it has its own copy for now
(I'll get rid of it at the next ECM version upgrade).
|
|
|