Martchus
05605a1b25
Filter files for tidy
2017-09-09 21:35:55 +02:00
Martchus
6df6474840
Allow configuring supported image formats
...
This allows to add an option for linking against static Qt
image format plugins in qtutilities.
2017-09-03 17:53:20 +02:00
Martchus
7754cf82d8
dependency info: Support prefixed static Qt 5 modules
2017-09-03 17:50:23 +02: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
032111eef0
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:15:46 +02:00
Martchus
17a08baeb5
Fix including config when building app as testlib
2017-08-30 22:53:35 +02:00
Martchus
11e2c48c06
Prevent usage of include_directories
...
Rather use target_include_directories
2017-08-23 23:10:05 +02:00
Martchus
a475ef8693
Make creating overall test coverage depend on awk script
2017-08-17 17:59:08 +02:00
Martchus
b45fe7eaeb
Allow providing a shared lib as dependency for a static lib
...
Previously the case when the dependency of a static library
was provided by a dynamic library has not been handled
correctly leading to linker errors when building the final
application.
2017-08-06 00:35:11 +02:00
Martchus
86e12a1164
Fix include dirs for build interface
...
* The project directory is part of the include
directives, eg. #include <c++utilities/...
* So the include search path must be one level
above the project directory.
2017-08-05 18:41:41 +02:00
Martchus
b7381eb55c
Do not use -static under MacOS
2017-08-05 18:38:02 +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
15bf2779c5
Make pkg-config file for both, dynamic and static target
2017-07-30 00:56:12 +02:00
Martchus
e4709099d2
Prevent error in coverage target when building only static libs
2017-07-28 17:34:28 +02:00
Martchus
c966e3fb1b
Improve finding cppunit
...
* Add include dir
* Make library/include dir configurable via cache variable
2017-07-22 15:33:41 +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
326551ee02
Allow to force use of external iconv
2017-07-20 01:25:13 +02:00
Martchus
73f11eeb2a
detecting 3rdparty libs: Fix overriding cache variables
2017-07-20 01:24:35 +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
28f76db46e
Add install target for 'extra-files'
...
So additional files like tests/calculateoverallcoverage.awk
and coding-style.clang-format are installed and can be used
by other projects, too.
2017-07-11 19:34:38 +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
a4fc4024b5
Make tidy and coverage optional and disabled by default
...
* Prevent warnings about required tools being unavailable
when tidy/coverage targets aren't desired anyways (eg.
when packaging)
* Do not automatically execute tidy check when packaging
in unclean environment
2017-06-20 23:38:45 +02:00
Martchus
57d5d04d9f
Merge prof data of subprocesses created when executing tests
...
So coverage is accounted correctly when tests create subprocesses
of the application to be tested using execApp().
2017-06-20 23:19:49 +02:00
Martchus
1e14b09e64
Fix passing application path to tests
2017-06-19 14:15:44 +02:00
Martchus
64572e6860
Add general coverage target
2017-06-19 14:01:33 +02:00
Martchus
6807d899d2
Enable source code based coverage analysis
2017-06-18 16:17:44 +02:00
Martchus
2174dc516a
Allow specifying target compile options via variable
2017-06-18 16:14:45 +02:00
Martchus
5e67a9b691
Make check target depend on .clang-format file
2017-06-01 18:24:14 +02:00
Martchus
ecce539a18
Do not set global include dirs
...
TODO: Set include dirs on target level
2017-05-24 23:29:17 +02:00
Martchus
ac348ee3b9
Find cppunit via pkg-config
2017-05-23 00:49:45 +02:00
Martchus
13ac2305d5
Allow not to link tests against cppunit
2017-05-23 00:10:27 +02:00
Martchus
04c1f98361
Format test code, too
2017-05-02 23:31:12 +02:00
Martchus
7e49d3994f
Allow skipping creation of tidy target
2017-05-01 03:03:20 +02:00
Martchus
2ef55c439c
Add tidy test
2017-05-01 02:57:58 +02:00
Martchus
7e0f65ed78
Call clang-format with all src files
2017-05-01 02:57:58 +02:00
Martchus
b74327d961
Move creation of check target to BasicConfig.cmake
...
* So other tests like tidy check can be added
* Even if there are no tests after all, the
check target shoudn't cause any problems
2017-05-01 02:57:58 +02:00
Martchus
8799698f01
Adapt global.h.in to new coding style
2017-05-01 02:57:58 +02:00
Martchus
d76ead0483
Add tidy target using clang-format
2017-05-01 02:57:58 +02:00
Martchus
ead0fadac3
Unset version info when not available
2017-04-15 23:33:52 +02:00
Martchus
6042336038
Allow checking whether external lib is used
2017-04-15 23:20:27 +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
be03e5ad4c
Provide meta-data in CMake config
2017-04-15 22:39: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
bfa12a9870
Allow creation of header-only library
...
* Create interface target if only headers present
* Include workaround to show header files in Qt Creator
2017-04-14 23:30:46 +02:00
Martchus
2e0df8aa6a
Allow linking only tests in 3rdParty macros
...
So tagparser tests can link against OpenSSL
for computing checksums
2017-04-08 18:29:21 +02:00
Martchus
f86a8b3700
Fix adding dependencies of install-mingw-w64 target
2017-04-04 01:01:03 +02:00
Martchus
cb82630665
Add general target for generating API doc
2017-04-04 01:00:17 +02:00