aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-08-30GNU HURD supporthurdPasha
2022-08-27ECMGenerateExportHeader: fix & document CUSTOM_CONTENT_FROM_VARIABLEHEADmasterFriedrich W. H. Kossebau
2022-08-25Work around exiv2 still using std::auto_ptrVolker Krause
std::auto_ptr is being removed when building with newer C++ standards. Our consumers so far work around that by reducing the C++ standard for files or targets using exiv2. That however no longer works with Qt 6, which insists on C++17 at least. Instead, we now make std::auto_ptr visible again in libc++ for exiv2 users. This should fix the FreeBSD Qt 6 build of KFileMetaData.
2022-08-24Add FreeBSD Qt 6 CIVolker Krause
2022-08-17GIT_SILENT Upgrade ECM version to 5.98.0.l10n daemon script
2022-08-13Add OpenBSD supportRafael Sadowski
2022-08-09Sync QT_MIN_VERSION with KF's REQUIRED_QT_VERSIONÖmer Fadıl Usta
In KF 5.90 we already looking for 5.15.2 and looking something lower than that is a bit meaningless
2022-08-08[FindXCB] Remove special treatment for XINPUTNicolas Fella
By now everyone should have it Warning that it is unstable is just producing noise If someone really doesn't have it available the caller must not request it
2022-08-08Revert "clang-format.cmake: don't change spaces after '//' in code comments"Ahmad Samir
This reverts commit 178c4dfbf4eb5ad7c5aef4838f190f717f97766f. Instead of creating an MR, I forgot I was on master... GIT_SILENT
2022-08-08clang-format.cmake: don't change spaces after '//' in code commentsAhmad Samir
For example, if you have: //This is a comment now clang-format won't change it to: // This is a comment We're mainly interested in formatting the code, not the comments, so that cuts down on some noise when running clang-format. CCBUG: 456819
2022-07-15kde-modules/KDEGitCommitHooks.cmake - handle non-toplevel projectv5.97.0-rc1v5.97.0Allen Winter
Only install pre-commit hooks if KDE_CONFIGURE_GIT_PRE_COMMIT_HOOK is called frm CMAKE_CURRENT_PROEJECT, eg. don't install pre-commit hooks if ECM is inside a submodule or fetched-content.
2022-07-09GIT_SILENT Upgrade ECM version to 5.97.0.l10n daemon script
2022-06-25ECMDeprecationSettings: enable warnings by defaultv5.96.0-rc1v5.96.0Friedrich W. H. Kossebau
The main target consumers of this macro currently (should) want to be informed about new deprecations as early as possible. As do the authors of the warnings. So instead let's make no warnings an opt-in. Not documenting the now deprecated flag in the docs, given no wide-spread use yet, just supporting still in the code with a note to users.
2022-06-17ECMAddQch: let doxygen update the config file instead of "outdated" warningsFriedrich W. H. Kossebau
2022-06-16Fix SHOW_DEPRECATIONS option not getting respected when function is calledAlexander Lohnau
This got messed up when refactoring the value from an one-value-keyword to an option.
2022-06-15Document addition of -Werror=undefAhmad Samir
2022-06-15Change -Wundef warning to an errorAhmad Samir
This should catch undefined preprocessor expressions, i.e. instead of showing a warning if FOO_BAR_H is undefined: #if FOO_BAR_H make the build fai lwith an error instead. This combined with using #cmakedefine01 (instead of #cmakedefine), could catch things like: https://invent.kde.org/pim/kdepim-runtime/-/commit/05a0e5bbfbb06ed6aa88640f25f563cf7e5b1330
2022-06-12GIT_SILENT Upgrade ECM version to 5.96.0.l10n daemon script
2022-06-12API dox: fix broken link markupFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-12API dox: drop ECMQtDeclareLoggingCategory outdated notes about Qt <= 5.5Friedrich W. H. Kossebau
Complements 6f8e9ff84b959ba763fcff18f0c519075ea1df03 NO_CHANGELOG
2022-06-12API dox: turn some more verbal "Note" into full note sectionsFriedrich W. H. Kossebau
Should help readers being aware of pitfalls NO_CHANGELOG
2022-06-12API dox: ECMGenerateExportHeader turn note about BIC hiding into warningFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-12API dox: fix sphinx warning about Title underline too shortFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-12API dox: have QtVersionOption rst docs also in bracket commentsFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-12API dox: use more markup for code or commandline samplesFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-12API dox: fix missing empty line, --warningFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-12API dox: QT -> Qt for official namingFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-12API dox: improve linking to other modules referenced in textFriedrich W. H. Kossebau
NO_CHANGELOG
2022-06-07FindXCB: fix typo in warningv5.95.0-rc1v5.95.0Samuel Gaist
The message read odd with the missing be
2022-06-06fix linking on OpenBSDChristoph Cullmann
OpenBSD has a similar patch inside the ports, see Allow KDE5 libraries to be built without having to link to libc explicitly. Index: kde-modules/KDECompilerSettings.cmake --- kde-modules/KDECompilerSettings.cmake.orig +++ kde-modules/KDECompilerSettings.cmake @@ -530,6 +530,8 @@ endfunction() # Better diagnostics (warnings, errors) ############################################################ +set(ALLOW_UNDEFINED_LIB_SYMBOLS No CACHE BOOL "allow undefined symbols in generated shared objects") + if ((CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT APPLE) OR (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND NOT APPLE) OR (CMAKE_CXX_COMPILER_ID STREQUAL "Intel" AND NOT WIN32)) @@ -537,9 +539,11 @@ if ((CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT APPL set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings ${CMAKE_SHARED_LINKER_FLAGS}") set(CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings ${CMAKE_MODULE_LINKER_FLAGS}") - # Do not allow undefined symbols, even in non-symbolic shared libraries - set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined ${CMAKE_SHARED_LINKER_FLAGS}") - set(CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined ${CMAKE_MODULE_LINKER_FLAGS}") + if (NOT ${ALLOW_UNDEFINED_LIB_SYMBOLS}) + # Do not allow undefined symbols, even in non-symbolic shared libraries + set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined ${CMAKE_SHARED_LINKER_FLAGS}") + set(CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined ${CMAKE_MODULE_LINKER_FLAGS}") + endif() endif() set(_KDE_GCC_COMMON_WARNING_FLAGS "-Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef")
2022-06-04ECMQtDeclareLoggingCategory: drop support for Qt < 5.4Friedrich W. H. Kossebau
Given ECM is released tightly bundled with KF, which itself requires Qt 5.15 now, and no Linux distribution is known by repology.org which ships older Qt, but current ECM, that support is considered of no more use.
2022-06-02ECMAddQtDesignerPlugin: drop support for Qt < 5.9Friedrich W. H. Kossebau
Given ECM is released tighly bundled with KF, which itself requires Qt 5.15 now, and no Linux distribution is known by repology.org which ships older Qt, but current ECM, that support is considered of no more use.
2022-06-01ECMAddQtDesignerPlugin: fix support for Qt6Friedrich W. H. Kossebau
2022-06-01ECMAddQtDesignerPlugin: fix missing FeatureSummary includeFriedrich W. H. Kossebau
The use of set_package_properties() requires the include, which might not have been done by the macro consumer.
2022-05-30KDEGitCommitHooks: Check if KDEClangFormat was includedAlexander Lohnau
If the module is not included, the current message would be misleading. Including the module by default is undesirable, because we print out a warning that we do not override an existing module. While this warning is reasonable in most cases, it is annoying for projects that have a custom clang-format file. Checking if a .clang-format file exists and if not including KDEClangFormat is fragile, because it depends on the include order of the modules. Considering all that, a proper warning with instructions on how to fix the issue is IMHO the best way to go.
2022-05-14GIT_SILENT Upgrade ECM version to 5.95.0.l10n daemon script
2022-05-10KDEGitCommitHooks: Fix quoting of variablesAlex Richardson
I was getting CMake errors in repositories that had a pre-existing commit hook: `string sub-command FIND requires 3 or 4 parameters.` Adding quotes around the variables from 6224e7b8c28d434b81a19ac47b88cb58fee9d7d5 fixes this issue for me.
2022-05-01typo--v5.94.0-rc1v5.94.0Harald Sitter
2022-04-23[KDEMetaInfoPlatformCheck] Add missing doc linkJulius Künzel
@aacid related to your MR !245
2022-04-23Drop lib prefix when building for Windows (MinGW)Julius Künzel
QQmlImportDatabase::resolvePlugin doesn't accept lib prefixes under Windows, causing to fail to import when using as a dynamic plugin. Inspired by kirigami!34
2022-04-20Allow ecm_add_qtwayland_{client,server}_protocol take targetsVlad Zahorodnii
Allows us to avoid using source variables.
2022-04-20Allow ecm_add_wayland_{client,server}_protocol take targetsVlad Zahorodnii
Allows us to avoid using source variables.
2022-04-15ECMQueryQt: always use CMake target to find the qmake/qtpaths binaryAhmad Samir
This means removing the find_program() logic, since it was only useful if we don't want to make CMake spend time finding a compiler; so it was only useful for building modules that don't need a compiler at all, wallpapers, icon themes ...etc; so find_program() is only useful when it comes before the find_package() and enable_language() calls. Thanks to Christophe Giboudeaux for the explanation. This might make the build time for such modules a tiny bit longer, but it's worth it to make finding qmake/qtpaths
2022-04-10KDEGitCommitHooks: don't overwrite git pre-commit hook scriptAhmad Samir
If the .git/hooks/pre-commit already exists, only add the clang-format line if it doesn't already exist.
2022-04-10KDEGitCommitHooks: only configure pre-commit hook if neededAhmad Samir
If clang-format isn't found, there is nothing to write to the file.
2022-04-09GIT_SILENT Upgrade ECM version to 5.94.0.l10n daemon script
2022-04-06Add Windows CINicolas Fella
2022-03-30Fix finding qmakev5.93.0-rc1v5.93.0Nicolas Fella
Fix finding qmake when executable has no version suffix
2022-03-28ECMQueryQt: don't fail when TRY is usedAhmad Samir
Like is done in the Qt5 qmake code path.
2022-03-26ECMQueryQt: Add fallbacksChristophe Giboudeaux
Some applications look for ECM and need to know Qt paths but don't need to link to anything. That's the case for icons or wallpapers. For these cases, ECMQueryQt will first try to find qmake or qtpaths before looking for Qt CMake config files. Also handle cases where project() sets 'LANGUAGE' to 'NONE'. The CXX language needs to be enabled for find_package to look for Qt into library dirs.