Commit Graph

136 Commits

Author SHA1 Message Date
Martchus c707591128 Don't mix building static and shared libraries 2019-04-21 16:44:54 +02:00
Martchus 9e51708da1 Add detection of ANDROID_APK_TOOLCHAIN_VERSION for 32-bit ARM 2019-03-03 21:43:41 +01:00
Martchus 8741195cfe Remove libdir before invoking androiddeployqt
Otherwise it might fail to remove that directory on
its own. (Likely after some subdirectory has accidently
been added.)
2019-02-23 13:51:00 +01:00
Martchus 9dd033996a Fix bundling unnecessary files into APK
So not the entire share folder is bundles. And QML
paths are also not required here (although they contain
come plugin SO files).

There are still unnecessary plugins bundles, though.
2019-02-23 13:48:20 +01:00
Martchus 190e58fe67 Apply cmake-format 2019-02-06 17:32:10 +01:00
Martchus 72d642c892 Allow to specify variables for making APK
So when those variables can not be detected they can at least
be specified manually as command line arguments.
2019-02-03 23:53:22 +01:00
Martchus c24d5c5949 Ensure libs from current build get bundled into APK 2018-12-22 02:11:08 +01:00
Martchus 4ab91f33c0 Add --verbose option to androiddeployqt 2018-12-22 02:10:11 +01:00
Martchus dbb9dfec57 Adjust output directory of APK for Qt 5.12.0 2018-12-22 02:09:43 +01:00
Martchus a97906360f Rebuild APK when modifying contents of android subdir
Still does not work when files get added or removed, though
2018-12-08 19:07:54 +01:00
Martchus 86a84dd3cf Reduce indentation in QtLinkage CMake module 2018-12-05 15:24:04 +01:00
Martchus e7b3ec67c5 APK: Handle Qt being configured with custom paths 2018-12-02 21:44:20 +01:00
Martchus 0bee777a04 APK: Allow forcing debug mode if otherwise in release mode 2018-12-02 21:44:20 +01:00
Martchus d61c3b86bd APK: Fix detection for toolchain version when using Clang 2018-12-02 21:44:20 +01:00
Martchus 530d61fc41 APK: Add check for SDK/NDK path 2018-12-02 21:37:57 +01:00
Martchus 390716a330 Allow to sign release APKs 2018-09-18 22:41:28 +02:00
Martchus 881ed0a2cb Add module to create Android APK using androiddeployqt 2018-09-16 00:38:46 +02:00
Martchus 90ee0c6519 Always link against Qt Qml when Qt Quick GUI enabled 2018-08-31 22:45:24 +02:00
Martchus c48c669095 Make depending on QQC2 for Quick GUI a one-liner 2018-06-16 13:11:18 +02:00
Martchus 1946816ce0 Enable QML debugging if build type is debug 2018-05-23 23:20:58 +02:00
Martchus df76e333fa Fix comments in JavaScript header templates 2018-04-07 19:02:04 +02:00
Martchus 9a90f6b99e Fix definition of @META_PROJECT_VARNAME_UPPER@_NO_JSENGINE 2018-04-07 17:55:28 +02:00
Martchus ccca2f123a Don't care about policy CMP0071 too much
Seems like CMake under Leap is too old so don't enforce
the policy (for now).
2018-03-13 19:57:44 +01:00
Martchus 0409b77831 Split Qt-specific config from other config
So adding Qt-specific config does not require a change
in c++utilities anymore.
2018-03-07 18:22:53 +01:00
Martchus 4980c8df95 Ensure generated sources are processed by AUTOMOC and AUTOUIC 2018-03-07 18:21:47 +01:00
Martchus e6e968e4ea Fix locating Qt's translations under openSUSE 2018-02-10 20:06:45 +01:00
Martchus ad1e6d21ba Prevent installing built-in Qt translations 2018-01-20 22:33:45 +01:00
Martchus 22639edfed Force use of INTERFACE_LINK_LIBRARIES_RELEASE for any config
Ensures we're getting the correct transitive dependencies
for all static Qt modules regardless of the configuration.
2017-12-15 20:35:09 +01:00
Martchus 29a2f993a3 Configure static Qt Widget style plugins
* Fix missing "Vista style" in static, Qt 5.10 based
  Windows build
* Required since the platform styles have been
  "pluginized" in Qt 5.10
* See 4f3249f32d
2017-12-15 20:22:29 +01:00
Martchus 591325aa44 Execute target for updating translations not by default 2017-10-16 09:56:35 +02:00
Martchus b2e3506ff5 Fix adding public Qt modules in pkg-config 2017-10-08 19:40:51 +02:00
Martchus d65835be50 Link only applications against static Qt plugins
* Which plugins should be included should only be decided
  when building the final application and not before.
* Also prevents those libs from appearing in pkg-config
  files.
2017-10-08 19:27:31 +02:00
Martchus ff4f495a5d Make translations of dependencies always available
And not only if the project itself contains translations
2017-09-08 16:46:35 +02:00
Martchus bf1519d357 Improve handling static Qt plugins
* Only link targets using static Qt Gui/Widgets/Quick
  against static plugins since currently only GUI-related
  plugins are relevant
* Don't require to link explicitely against the related
  module (eg. Qt Svg for the Svg icon engine) because the
  imported target of the plugin should pull all required
  dependencies
* Add option for linking against static Qt image format
  plugins
* Link GUI applications using static Qt Gui/Widgets/Quick
  against the static X11 platform integration plugin if it
  is available
2017-09-03 18:03:41 +02:00
Martchus b94c23f238 Distinguish exporting/enabling resources of static libs
Required because we now allow to provide dynamic libs as
dependencies of static libs
2017-08-31 02:14:52 +02:00
Martchus b45f2e7edf Don't include static svg plugin if not using static Qt 2017-08-20 02:23:02 +02:00
Martchus 260b8217da Use Svg module when linking statically against related plugins
Seems to be required, otherwise getting linker errors.
2017-08-11 22:13:44 +02:00
Martchus 7c6483f5a6 Link GUI apps against Cocoa integration plugin under MacOS 2017-08-06 00:44:20 +02:00
Martchus bbee85ce07 Fix using static Qt without 'Static' prefix 2017-08-06 00:43:09 +02:00
Martchus 2d155e48ac Avoid duplicate resource initialization 2017-08-06 00:41:00 +02:00
Martchus e2bf82214d Make translations optional 2017-08-06 00:40:11 +02:00
Martchus 3e72eadc00 Allow specifying options for lupdate 2017-08-01 10:47:27 +02:00
Martchus 9741ff26ab Allow disabling install targets
Might be useful if install targets cause
problems, eg. under MacOS
2017-07-20 01:43:48 +02:00
Martchus d3de8e5c62 Don't append generated D-Bus files to sources
Allows to distinguish generated files for coverage
report
2017-07-09 23:45:17 +02:00
Martchus 61a544d42f Make definitions for gui support project specific 2017-04-27 22:03:37 +02:00
Martchus 1d49f41582 Fix marking Qt module deps as public 2017-04-22 20:57:57 +02:00
Martchus 784781b409 Set 'MACOSX_BUNDLE' for GUI apps under MacOS
This makes it a GUI executable that can be launched from
the Finder. Not tested yet.
2017-03-29 00:17:26 +02:00
Martchus 263418b9d5 Provide header files to select Qt Script/QML
Allows supporting Qt Script and Qt QML as JavaScript
provider at the same time more conveniently
2017-03-14 23:24:04 +01:00
Martchus 8151d1c23a Fail if definition for web view provider missing 2017-03-14 22:57:08 +01:00
Martchus 14c3c7690a Provide header files to select Qt WebKit/WebEngine
Allows supporting Qt WebKit and Qt WebEngine at the
same time more conveniently
2017-03-14 22:45:33 +01:00
Martchus 12133a26fd Make QM_FILES only additional cond for built-in translations
There might be external translations to be built-in (eg. Qt
translations).
2017-02-26 18:42:08 +01:00
Martchus f6e1f6adcf Only include Qt translations when building the final app
Otherwise the files are also included for each single
library unnecessarily increasing the binary size
2017-02-26 18:40:06 +01:00
Martchus aae9fd5c85 Fix messages in QtGuiConfig 2017-02-20 20:04:33 +01:00
Martchus 2777498f6d Allow customizing install dir for Qt plugins 2017-02-20 20:03:57 +01:00
Martchus e8b061737c Fix typo 2017-02-11 02:56:28 +01:00
Martchus 48f0a19554 Do not built-in icon themes when building libs
Only including the list of icons required by the final
application should be sufficient as it is supposed to
contain all relevant icons from dependencies, too.
2017-02-11 02:56:19 +01:00
Martchus 26b8f069c6 Improve CMake modules 2017-02-11 02:31:43 +01:00
Martchus 8f2e3f0476 Add macro to auto init resources of static deps
Generated macro code is made available via config
header implemented in c++utilities
2017-02-11 02:04:12 +01:00
Martchus a2edd64dbd Give generated qrc files a unique name 2017-02-09 23:34:13 +01:00
Martchus 557c5d5af9 Fix dependency of res file for built-in translations 2017-02-09 16:20:15 +01:00
Martchus 0ccee40fa4 Check for Qt 5.6 or higher by default
which is required by qtutilities itself and most other
projects eg. Tag Editor
2017-02-06 21:35:08 +01:00
Martchus aca86b0681 Load translations of dependencies, too 2017-01-07 16:09:38 +01:00
Martchus 3c2c8ed650 Fix reverse lookup for pc and 'StaticQt5::' 2016-12-13 20:23:20 +01:00
Martchus 653d954a54 Fix use of static Qt 5 plugins 2016-11-26 21:58:42 +01:00
Martchus 70a9d68555 Use StaticQt5::* for static Qt5 imported targets
Fallback to old version (Qt5::static::*) if not found
2016-11-12 02:24:06 +01:00
Martchus c443250989 Add dependencies of localization target correctly 2016-11-12 02:08:02 +01:00
Martchus 6d623989a8 Declare all used Qt module public dependencies 2016-11-10 23:42:53 +01:00
Martchus e1a8a12670 Provide an imported target for libs 2016-11-10 23:42:53 +01:00
Martchus 5531450c0a Don't built-in icons already provided as fallback 2016-11-01 14:05:48 +01:00
Martchus d9380d024e Allow building shared and static libs at the same time
Use 'Static'-prefixed CMake modules provided by patched
mingw-w64-qt5 packages
2016-10-29 00:26:06 +02:00
Martchus b35e5311a9 Improve handling Svg support 2016-10-19 20:33:59 +02:00
Martchus 812f2d2afd Fix indentation of QtLinkage.cmake 2016-09-11 23:11:19 +02:00
Martchus 7f9afcda73 Fix decoration for static builds
- Also fix finding static web view and JavaScript provider
2016-08-29 15:41:21 +02:00
Martchus 924c3b9f61 Allow including icon themes under another name 2016-08-27 15:01:04 +02:00
Martchus 9e61cf8e18 Add option for built-in SVG icon support 2016-08-19 22:37:43 +02:00
Martchus d97e112f0d Allow using static Qt libraries 2016-08-19 16:16:10 +02:00
Martchus 7edccd9f75 Move options for GUI to BasicConfig 2016-08-14 16:51:19 +02:00
Martchus b5bd368c5c Load translations also for Qt modules not in qtbase 2016-07-27 21:52:01 +02:00
Martchus babb75a205 Attempt to link statically against Qt
Linking statically against Qt with CMake still doesn't work. Seems like
there is still some work to do on the Qt side. Patches from MSYS2 might
help.
2016-07-27 18:51:25 +02:00
Martchus 5a0eba3726 Allow built-in translations and icons
- Allow to built-in qm files for translations
  using the Qt resource system
- Allow to built-in required icons from specified
  icon themes using the Qt resource system
- Provide bash script to determine required icons
2016-07-16 23:12:02 +02:00
Martchus c66d1513f9 Using option for CMake options 2016-07-11 19:52:52 +02:00
Martchus d94f4e7dd8 Don't require WebView/JS provider if none explicitely specified 2016-07-09 23:52:43 +02:00
Martchus 10726b4dee also update TS files via CMake 2016-04-24 20:53:14 +02:00
Martchus 3ccbb07bbf fixed CMake modules {Js,WebView}ProviderConfig 2016-04-21 23:58:52 +02:00
Martchus 36de73756b fixed some issues caused the build system changeings 2016-04-16 18:32:56 +02:00
Martchus 9cf5656efe reduce code duplication in build system
- get rid of qmake project file
- provide CMake modules for common tasks
- provide templates for *.desktop files
2016-04-16 02:11:20 +02:00