Martchus
1ce06517cc
Apply cmake-format 0.6.5
2019-12-27 01:45:30 +01:00
Martchus
3fb40baebc
Reformat CMake scripts against cmake-format 0.6.3
2019-12-15 18:58:42 +01:00
Martchus
6376819c07
Apply cmake-format v0.6.0
2019-11-30 17:58:01 +01:00
Martchus
ea2804f147
Allow user to append custom libs to linker line
...
Use-case is explained in the documentation. This implementation
takes care that the additional libs actually occur at the end
of the linker line despite the use of imported targets with
INTERFACE_LINK_LIBRARIES. It might still not be perfect but
sufficient for current use-cases.
2019-08-24 13:00:32 +02:00
Martchus
99bc257755
Apply cmake-format
2019-08-06 00:02:38 +02:00
Chih-Hsuan Yen
9264f1ac76
Add icons (*.icns) for Mac OS X/macOS .app bundles
2019-07-20 12:14:30 +08:00
Chih-Hsuan Yen
6f3a1fa086
Make .app bundles work on macOS
...
By setting CMake variables for Info.plist generation. Some of them are
necessary and others are good to have.
2019-07-17 17:53:16 +08:00
Martchus
bc0d7af67f
Apply cmake-format 0.5.1
...
* Disable autosort as it messes with add_library and
add_executable calls
2019-06-01 12:14:30 +02:00
Martchus
0443905986
Fix creation of desktop files
2019-05-05 23:19:05 +02:00
Martchus
a17f322f3c
Apply cmake-format
2019-05-04 20:57:56 +02:00
Martchus
1480d9ab63
Support installing multiple configurations within the same prefix
2019-05-04 01:59:45 +02:00
Martchus
8ffe0e6a51
Polish CMake code
2019-04-22 22:19:08 +02:00
Martchus
e9cc26478b
Don't mix building static and shared libraries
2019-04-22 20:42:48 +02:00
Martchus
716af584c5
Use CMakeParseArguments for add_custom_desktop_file()
2019-04-13 20:33:39 +02:00
Martchus
86f3bf8b3b
Apply cmake-format
2019-02-06 17:30:52 +01:00
Martchus
3a65e3ecdd
Adjust CMake modules for better Android support
2018-09-16 00:25:04 +02:00
Martchus
2e2b66e398
Add mingw-w64 specific targets only when using mingw-w64
2018-07-27 16:18:27 +02:00
Martchus
989d1d20c8
Allow using templated appdata body
2018-02-21 21:55:52 +01:00
Martchus
486a09c1c5
Add basic template for meta info
2018-02-18 20:18:00 +01:00
Martchus
a7880e3d0c
Remove *.qm files from targets when built-in translations enabled
...
This prevents updating *.ts files twice and in parallel leading to
build errors.
2017-11-02 00:10:06 +01:00
Martchus
9c8bb44843
Fix mingw-w64 targets
2017-08-31 02:16:05 +02:00
Martchus
f8c7a0a0a8
Do not set BUNDLE DESTINATION unless platform is MacOS X
...
Because that seems to prevent executables from being installed
when using install-binary target
2017-08-31 02:15:56 +02:00
Martchus
6ed336bf94
Allow specifying install destination for bundles
...
* Install destination for bundles can be set via
cache variable BUNDLE_INSTALL_DESTINATION
* Default is the dir used for regular applications
2017-08-05 18:33:57 +02:00
Martchus
36b2498dd6
Allow disabling install targets
...
Might be useful if install targets cause
problems, eg. under MacOS
2017-07-20 01:43:10 +02:00
Martchus
942c14ce3d
Fix target include dirs
...
* Add include path of own header files for build
and external use via imported target. Previously
only include dirs required for external libs were
added.
* Using global include dirs is no longer required.
* When PUBLIC_SHARED_INCLUDE_DIRS is empty, adding
"${PUBLIC_SHARED_INCLUDE_DIRS}" to public include dirs
does not leave INTERFACE_INCLUDE_DIRECTORIES property
empty. Instead the source dir is added. So just don't
use quotes here.
2017-07-11 22:02:27 +02:00
Martchus
442f7a9b25
Exclude generated files from coverage
...
* So files generated by moc or qdbusxml2cpp are not
part of coverage statistics
* When filtering files, llvm-cov prints multiple tables
showing coverage on function level.
-> Generate overall coverage stats via awk.
2017-07-09 23:38:11 +02:00
Martchus
6f146072ea
Allow overriding 3rd party libs/includes
...
So passwordfile can be told to use legacy OpenSSL
header in accordance with Qt 5 which still requires
OpenSSL 1.0
2017-07-04 22:44:32 +02:00
Martchus
2174dc516a
Allow specifying target compile options via variable
2017-06-18 16:14:45 +02:00
Martchus
b8c2e79e3d
Use meta-data provided in CMake config for version info
...
* Don't set custom meta-data on targets
* It isn't exported anyways
* Remove version on application target because itcauses
CMake to create symlinks
2017-04-15 23:02:41 +02:00
Martchus
412e725309
Append Git revision to version
...
* Append Git revision and ID of latest commit
to version displayed via --help
* Can be turned off via option
* Has no effect if the source dir is not
a Git checkout or Git is not installed
* Implements
https://github.com/Martchus/tageditor/issues/13
2017-04-15 01:45:03 +02:00
Martchus
91e5a8b0b0
Show version of used libraries in --help
...
* Include only own libraries and Qt 5 modules
so far
* First step to implement
https://github.com/Martchus/tageditor/issues/13
2017-04-15 01:10:38 +02:00
Martchus
f86a8b3700
Fix adding dependencies of install-mingw-w64 target
2017-04-04 01:01:03 +02:00
Martchus
663b31c5fe
Allow skipping install targets
...
* via variable META_NO_INSTALL_TARGETS
* since this is just to silence some warnings
no need to bump minor version
2017-04-01 16:18:32 +02:00
Martchus
2965f0cd00
Improve testing applications
...
When LINK_TESTS_AGAINST_APP_TARGET set, create a
library in addition to the application so tests can
link against it to check particular functions. This
replaces the current approach of linking against the
application directly which lead to linker errors.
2017-03-27 11:15:14 +02:00
Martchus
64cc931555
Improve CMake modules
2017-02-11 02:30:46 +01:00
Martchus
9087e8da7e
Fix dependency of res file for built-in translations
2017-02-09 16:22:33 +01:00
Martchus
cb3b50c28c
Allow overriding default CXX_STANDARD
...
to ease using newer C++ features in further
projects without setting the standard manually
for each target
2017-02-04 17:44:46 +01:00
Martchus
722e9ae590
Improve install-mingw-w64-strip target
2016-11-12 02:06:52 +01:00
Martchus
b903adccdb
Provide an imported target for libs
2016-11-12 02:06:52 +01:00
Martchus
e09386f6ed
Allow adding 'GenericName' in *.desktop file
2016-11-04 14:02:23 +01:00
Martchus
73d42c287c
Support desktop actions and other additional desktop entries
2016-10-19 20:59:54 +02:00
Martchus
4d0807de9b
Fix minor issues in build scripts
2016-09-30 23:52:00 +02:00
Martchus
00f7795dcd
Link test target against neccassary libraries
...
In addition to previous libs, also link against
- same libs as app/lib target
- the app target itself if required
2016-09-20 20:52:29 +02:00
Martchus
d6b08b8ed9
Fix decoration for static builds
...
- Also add improvemnts a few other things in the build system
2016-08-29 15:35:48 +02:00
Martchus
fe4e4b2ef5
Fix issues concerning building/using static libraries
...
- Ensure static versions of 3rd party libs are
found correctly
- Link tests against statically if only static
libraries have been built
- Ensure standard lib is linked statically when
static linkage is enabled
2016-08-19 16:14:55 +02:00
Martchus
189a6fe6ba
Approach to enable static linkage
...
Linking statically might be useful, especially
when linking Windows applications since MinGW
is less buggy then.
2016-07-22 01:35:32 +02:00
Martchus
8efe38dadf
Improve details in the build system
...
- add target to run cross compiled Windows binaries with wine
- quit tests if --help has been specified
2016-07-16 23:04:22 +02:00
Martchus
46edfccc8f
Set TARGET_EXECUTABLE in CMake pro
2016-07-02 02:04:32 +02:00
Martchus
4d1c874b56
Add target for API doc
2016-06-10 10:24:54 +02:00
Martchus
b3d801bca6
Fix executable path in *.desktop file
2016-05-26 21:38:19 +02:00