Martchus
1a478411d6
Default to C++17
2019-05-11 18:42:38 +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
86f3bf8b3b
Apply cmake-format
2019-02-06 17:30:52 +01:00
Martchus
42dd86a16e
Support cmake-format via tidy target
2019-02-05 22:51:07 +01:00
Martchus
8ed1a03f92
Consider *.c and *.hpp files formattable as well
2018-12-08 19:06:01 +01:00
Martchus
2f0a7050ac
Auto-detect bugtracker on Gitea
2018-12-08 19:04:48 +01:00
Martchus
26496c310e
Make path of Git executable configurable
2018-12-08 19:04:01 +01:00
Martchus
3c02ad6d92
Fix check for source files
2018-09-24 22:39:09 +02:00
Martchus
3a65e3ecdd
Adjust CMake modules for better Android support
2018-09-16 00:25:04 +02:00
Martchus
35ebac1cac
Add static-check target for executing clang-tidy
2018-07-27 16:19:16 +02:00
Martchus
3a6bbb0115
Allow enabling GUI config even when no specific sources present
...
Useful when GUI specific code is only wrapped using #ifdef so
there are no extra files.
2018-06-24 20:47:19 +02:00
Martchus
b77607f3e0
Rename META_REQUIRED_FEATURES
...
Because those features are actually not required.
2018-06-03 22:15:20 +02:00
Martchus
4a69db787d
Allow to create header for feature detection
...
The header will only contain some preprocessor conditions.
CMake will *not* do checks with the current compiler.
2018-06-03 21:49:01 +02:00
Martchus
52bf075317
Move creation of srcdirref and testfiles dir to BasicConfig
...
Those make testing more convenient and are also useful when
there's no test target, eg. when testing syncthingtray with
mocked configuration.
2018-05-01 23:59:28 +02:00
Martchus
19332033ec
Format all GUI-only files
2018-03-11 18:58:26 +01:00
Martchus
8a83870ac7
Allow variable number of digits in license versions
2018-02-28 18:01:17 +01:00
Martchus
e57e79f9c9
Stringify meta data in template
2018-02-21 22:07:05 +01:00
Martchus
486c99f7fd
Determine project license automatically
2018-02-21 21:58:27 +01:00
Martchus
486a09c1c5
Add basic template for meta info
2018-02-18 20:18:00 +01:00
Martchus
2203e0a335
Set dependencies of tidy target correctly
2017-10-24 01:01:29 +02:00
Martchus
05605a1b25
Filter files for tidy
2017-09-09 21:35:55 +02:00
Martchus
b7381eb55c
Do not use -static under MacOS
2017-08-05 18:38:02 +02:00
Martchus
e4709099d2
Prevent error in coverage target when building only static libs
2017-07-28 17:34:28 +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
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
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
6807d899d2
Enable source code based coverage analysis
2017-06-18 16:17:44 +02:00
Martchus
5e67a9b691
Make check target depend on .clang-format file
2017-06-01 18:24:14 +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
d76ead0483
Add tidy target using clang-format
2017-05-01 02:57:58 +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
88196b8076
Allow creation of plugins via LibraryTarget
2017-02-20 20:03:16 +01:00
Martchus
64cc931555
Improve CMake modules
2017-02-11 02:30:46 +01:00
Martchus
96c4e24b6c
Require C++14
2017-02-05 19:19:59 +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
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
e8b3f72f50
Log currently processed project
2016-11-04 10:41:16 +01:00
Martchus
4d0807de9b
Fix minor issues in build scripts
2016-09-30 23:52:00 +02:00
Martchus
34cd505bf7
Remove dependencies of install targets
...
Dependencies were preventing installing
static-only builds
2016-09-11 23:10:29 +02:00
Martchus
909b5c2b57
Rename variables for enabling/disabling shared/static libs
...
Avoids conflicts when using mingw-w64-cmake wrapper
2016-09-06 22:51:00 +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