aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-01-28Add missing Import Env Variablev5.67.0-rc1v5.67.0Tomaz Canabrava
Summary: Without this, in Qt 5.14 I get an android-like QQC2 theme This used to work on Qt 5.13 so I assume that it's a regression Reviewers: mart Reviewed By: mart Subscribers: apol, davidedmundson, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D26573
2020-01-26ECMAddAppIcon: Add sc in regex to extract extension from valid namesPatrick José Pereira
Summary: Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com> Reviewers: tcanabrava, apol Reviewed By: tcanabrava, apol Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D26751
2020-01-23ECMAddQch: support & document K_DOXYGEN macro usageFriedrich W. H. Kossebau
2020-01-11GIT_SILENT Upgrade ECM version to 5.67.0.l10n daemon script
2020-01-04[android] Fix apk install targetv5.66.0-rc1v5.66.0Nicolas Fella
Summary: The APK output path changed at some point Test Plan: can do make install-apk-appname again Reviewers: apol Reviewed By: apol Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D26402
2019-12-19API dox: fix rst syntax for KDEClangFormat textFriedrich W. H. Kossebau
2019-12-19API dox: add missing entry for KDEClangFormatFriedrich W. H. Kossebau
2019-12-16GIT_SILENT Upgrade ECM version to 5.66.0.l10n daemon script
2019-12-15Support PyQt5 compiled with SIP 5Antonio Rojas
When PyQt5 is compiled with SIP 5, the sip files are installed to ${python-site-packages}/PyQt5/bindings, so search for them there too. This doesn't add support for compiling KF5 bindings themselves with sip5, that requires more work. Differential Revision: https://phabricator.kde.org/D25972
2019-12-05EBN extra-cmake-modules transport cleanupv5.65.0-rc1v5.65.0John Hayes
Summary: Change transport protocol from http to https Reviewers: apol, cgiboudeaux Reviewed By: apol, cgiboudeaux Subscribers: cgiboudeaux, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D25753
2019-12-05EBN extra-cmake-modules comments spelling cleanupJohn Hayes
Summary: Correct spelling in extra-cmake-modules comments. Reviewers: apol Reviewed By: apol Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D25752
2019-12-02ECMGenerateExportHeader: add NO_BUILD_SET_DEPRECATED_WARNINGS_SINCE flagFriedrich W. H. Kossebau
Summary: The original intention has been that by default during the build of a library no warnings should be emitted on using own deprecated API, as for one that has to be implemented as well as often deprecated API is implemented using other deprecated API, so the warnings are not helpful, and having to add lots of push/pop warnings instructions in the code for the compiler harms readability more than it helps ensuring to only use deprecated API where one has to. The original intention was satisfied due to the default mechanism in the generated export header code, where DEPRECATED_WARNINGS_SINCE if not set defaults to DISABLE_DEPRECATED_BEFORE_AND_AT. That though breaks once the group version of DEPRECATED_WARNINGS_SINCE is set in the build, as this default has higher priority by design, even if the usage here only wants to target dependency libs of the same group, not the current library. To restore the intented default behaviour, by default DEPRECATED_WARNINGS_SINCE is now explicitely set for the library build itself to the EXCLUDE_DEPRECATED_BEFORE_AND_AT value, and a new macro option allows to disable this. Reviewers: #build_system, #frameworks, dfaure Reviewed By: dfaure Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D25589
2019-11-30Fix EcmGenerateExportHeader tests on WindowsDavid Redondo
Summary: -weXXXX errors on warning XXXX. C4996 warns on deprecated declarations. Test Plan: Tests pass. Reviewers: kossebau, #windows, #frameworks Reviewed By: kossebau Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D25626
2019-11-26Fix typoDavid Edmundson
2019-11-26Explicitly use lib for systemd directoriesDavid Edmundson
Systemd searches "/usr/local/lib/systemd/user", "/usr/local/share/systemd/user", USER_DATA_UNIT_PATH, "/usr/lib/systemd/user", "/usr/share/systemd/user", LIBDIR could be lib or lib64, so we need to be explicit here. Reviewed on D25107
2019-11-10GIT_SILENT Upgrade ECM version to 5.65.0.l10n daemon script
2019-11-06Documentation typo correctionDavid Edmundson
2019-11-04Fix ECMSetupVersion tests for old policy with project() wo/ VERSIONFriedrich W. H. Kossebau
With min required cmake version now bumped to 3.5, the policy for CMP0048 needs to be set explicitly to old now to prepare what the tests check. Fixup for 5ca01895e3c50322f79feeef5054d7f28b164d68
2019-11-03Add install dir for systemd unitsDavid Edmundson
Summary: Like we have for other FD.O projects like DBus service files Test Plan: Unit test passes Used in another project, and it installed to the correct place Reviewers: apol Reviewed By: apol Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D25107
2019-11-03KDEFrameworkCompilerSettings: enable all Qt % KF deprecation warningsFriedrich W. H. Kossebau
Reviewers: #frameworks, #build_system, apol, dfaure Reviewed By: apol, dfaure Subscribers: dfaure, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D24990
2019-10-30ECMGenerateExportHeader: allow ecm_[..]_format_version wo/ CURRENT_VERSIONv5.64.0-rc1v5.64.0Friedrich W. H. Kossebau
GIT_SILENT
2019-10-23Don't set C/C++ standards if already setDavid Faure
Summary: Fixes regression from https://phabricator.kde.org/D24841 Reviewers: cgiboudeaux Reviewed By: cgiboudeaux Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D24882
2019-10-22Use modern way to set the C/CXX standadHannah von Reth
Summary: This allows later modification of the selected standard. Raise C from C89 to C90 as C89 is not supported by the CMAKE flag https://cmake.org/cmake/help/v3.16/prop_tgt/C_STANDARD.html#prop_tgt:C_STANDARD Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D24841
2019-10-22Raise CMake requirements to 3.5Hannah von Reth
2019-10-22ECMAddQch: in doxygen config template blank macros with =, not =""Friedrich W. H. Kossebau
GIT_SILENT
2019-10-22ECMAddQch: support PREDEFINED_MACROS/BLANK_MACROS with blanks & quotesFriedrich W. H. Kossebau
2019-10-22ECMGenerateExportHeader: fix deprecation text concatenation having quotesFriedrich W. H. Kossebau
GIT_SILENT
2019-10-20Provide clang-format target with a KDE Frameworks style fileChristoph Cullmann
Summary: Provides a clang-format target if wanted Example usage: include(KDEClangFormat) # add clang-format target for all our real source files file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES autotests/src/*.cpp autotests/src/*.h src/*.cpp src/*.h templates/*.cpp templates/*.h) kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) Test Plan: Tried that above usage thingy in KTextEditor Reviewers: #frameworks, dfaure Reviewed By: dfaure Subscribers: zzag, sitter, mwolff, ochurlaud, nalvarez, kossebau, aacid, davidedmundson, dhaumann, apol, ognarb, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D24568
2019-10-16ECMGenerateExportHeader: generate code with C90-compatible commentsFriedrich W. H. Kossebau
GIT_SILENT
2019-10-12GIT_SILENT Upgrade ECM version to 5.64.0.l10n daemon script
2019-10-11ECMGenerateExportHeader: adapt too small DEPRECATED_BASE_VERSION, not failFriedrich W. H. Kossebau
More friendly to users which mix arguments DEPRECATED_BASE_VERSION & EXCLUDE_DEPRECATED_BEFORE_AND_AT, but e.g. allow the latter to be configured during library build setup GIT_SILENT
2019-10-11ECMGenerateExportHeader: for DEPRECATED_BASE_VERSION support value CURRENTFriedrich W. H. Kossebau
GIT_SILENT
2019-10-11ECMGenerateExportHeader: use final hex numbers in generated codeFriedrich W. H. Kossebau
GIT_SILENT
2019-10-11ECMGenerateExportHeader: fix DEPRECATED_BASE_VERSION, value 0 and docsFriedrich W. H. Kossebau
GIT_SILENT
2019-10-10Add ECMGenerateExportHeader, for improved handling of deprecated APIFriedrich W. H. Kossebau
Summary: Generates additional macros in the export header which can be used for fine-grained disabling of warnings & visibility as well as excluding from the build. Reviewers: #frameworks, #build_system Subscribers: chehrlic, dfaure, cgiboudeaux, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D23789
2019-10-01new module ECMSourceVersionControlv5.63.0-rc2v5.63.0-rc1v5.63.0Harald Sitter
Summary: simply sets a variable when the source is under version control. use it to auto-enable Debug builds. there are also plans to switch special assertion logic on in KIO when used from git, so there definitely is a more generic use case of wanting to control behavior based on whether it the source is likely used to make a development or production build. conceivably the module could be used in the future to get git rev-parse or the like, hence the generic name. Test Plan: with .git the var is true, without it is false Reviewers: kde-buildsystem, dfaure Reviewed By: dfaure Subscribers: apol, kossebau, kde-frameworks-devel Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D24159
2019-09-24Fix FindEGL when using EmscriptenSimon Hausmann
When using the Emscripten toolchain, there is no library linkage necessary (there is no library) and the system include search paths provide EGL headers. Reviewed By: vkrause Differential Revision: https://phabricator.kde.org/D24182
2019-09-18API dox: fix ":" to "::"Friedrich W. H. Kossebau
As intended by original code, to generate consistent output per this document for the given lists of variables GIT_SILENT
2019-09-15ECMAddQch: add INCLUDE_DIRS argumentFriedrich W. H. Kossebau
Summary: Allows to have headers be found by doxygen, e.g. to properly process preprocessor macros. Reviewers: #build_system, dfaure Reviewed By: dfaure Subscribers: dfaure, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D23791
2019-09-14GIT_SILENT Upgrade ECM version to 5.63.0.l10n daemon script
2019-09-06ECMAddQtDesignerPlugin: pass code sample indirectly via variable name argv5.62.0-rc1v5.62.0Friedrich W. H. Kossebau
Summary: The initial API asked to have custom C++ code to be parsed as string arguments. As any ";" in such strings would be treated as list separators, the initial API as workaround required to encode those in the passed code text with "@SEMICOLON@". As alternative variant the approach from the GENERATE_EXPORT_HEADER() macro and its CUSTOM_CONTENT_FROM_VARIABLE is now used, where instead the name of the variable is passed, from which then the full code could be fetched and directly used. As API user one no longer can pass code snippets directly inline as argument, but no longer needs to use the awkward @SEMICOLON@. As ECMAddQtDesignerPlugin is not yet part of a released version, the API can be still changed. Reviewers: #frameworks, #build_system, vkrause Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D23725
2019-08-28Keep 'lib' as default LIBDIR on Arch Linux based systemsAntonio Rojas
Port of upstream commit https://gitlab.kitware.com/cmake/cmake/commit/18365587c86396f988e256b5acf4d2312f3be2bb Differential Revision: https://phabricator.kde.org/D23497
2019-08-19disable autouic again - it breaks buildsHarald Sitter
Summary: autouic (like automoc) assumes that every ui_*.h include statement it finds relates to a .ui file that needs generating. this is not always true. e.g. we have software which generates ui_debug.h which is simply a qloggingcategory header for the UI category of that software which would then trip up autouic because it would assume there's a .ui file when there really isn't one. unfortunately the ui_ assumption cannot be selectively disabled, so we can't have explicit listing of .ui in source lists ``` set(foo_SRCS foo.cpp foo.ui) ``` without also getting the not particularly compatible include assumptions. this should be revisited for kf6 since there isn't a technical need for files to be called ui_*, they could just as well be *_ui or anything else so as to not clash with autouic assumption. autorcc does not suffer from this problem so we can leave it enabled, for now anyway. Test Plan: sonnet builds again Reviewers: apol, nicolasfella, cullmann Reviewed By: apol Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D23262
2019-08-19set autorcc and autouic by defaultHarald Sitter
Summary: I couldn't find any pertinent discussion on the topic but some reviews I stumbled over did set it on some of our application repos and also wonder why we don't enable it by default. autorcc allows more idiomatic use of qrc as they may be used like any "ordinary" source file and cmake will know what to do with them (namely compile into relevant cpp for inclusion in target) without the developer having to worry about anything. autouic does the same albeit for .ui files. Test Plan: .qrc files can be added to src list variables and will get automatically generated into cpp files in the binary dir and built into the target Reviewers: apol Reviewed By: apol Subscribers: cgiboudeaux, vkrause, kossebau, apol, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D22805
2019-08-15Define install location for JAR/AAR files for AndroidVolker Krause
Summary: This follows where Qt installs those, and thus androiddeployqt looks for them. Currently this is hardcoded in knotifications for example, seems cleaner to have this here. Reviewers: #build_system, #android, apol Reviewed By: #android, apol Subscribers: apol, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D23131
2019-08-11GIT_SILENT Upgrade ECM version to 5.62.0.l10n daemon script
2019-08-05Add ECMAddQtDesignerPluginFriedrich W. H. Kossebau
Summary: ECMAddQtDesignerPlugin provides two macros that can be used to replace the usage of the tool kgendesignerplugin from KDesignerPlugin. This allows to have ECM-using libraries to create Qt Designer plugins without the need for another separate tool. For that purpose option structure & defaults are inspired from that one, to allow simple porting. Main difference is that ECMAddQtDesignerPlugin expects the widget metadata definition to be done in CMake code, using a dedicated function, instead of in a ini-style separate ".widgets" file. Porting of ".widgets" files basically means: copy content into cmake, transform ini code into arguments to util method. Key names need a bit of adaption, current names are open for dicussion. Porting example: ``` [KActionSelector] IncludeFile=kactionselector.h ToolTip=A widget for selecting and arranging actions/objects Group=Views (KF5) ``` gets ``` ecm_qtdesignerplugin_widget(KActionSelector INCLUDE_FILE kactionselector.h TOOLTIP "A widget for selecting and arranging actions/objects" GROUP "Views (KF5)" ) ``` Reviewers: #build_system, #frameworks Subscribers: apol, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D22724
2019-07-29android: Allow overriding ANDROID_ARCH and ANDROID_ARCH_ABI as envvarsv5.61.0-rc1v5.61.0Aleix Pol
2019-07-25Notify users when not using KDE_INSTALL_USE_QT_SYS_PATHS about prefix.shAleix Pol
Summary: It's especially when KDE_INSTALL_USE_QT_SYS_PATHS=OFF that the different environment variables will have to be initialised. This adds a message that should tell users about the script so they have a hint of what is going on. Reviewers: #frameworks, albertvaka, cgiboudeaux Reviewed By: albertvaka, cgiboudeaux Subscribers: cgiboudeaux, albertvaka, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D22580
2019-07-23Provide a more sensible CMAKE_INSTALL_PREFIX defaultAleix Pol
Summary: If no prefix is passed, use ECM's by default, instead of defaulting to /usr/local which isn't optimal in any case. Reviewers: cgiboudeaux Reviewed By: cgiboudeaux Subscribers: cgiboudeaux, kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D22676