Commit Graph

370 Commits

Author SHA1 Message Date
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
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 daaedb7ba3 Fix issues in TestTarget.cmake
* Fix error message
* Improve comments
* Improve target names
* Fix working directory for check target
* Add info that calling enable_testing() on root
  level is required for check target to work
* Create workingdir for tests under binary dir to
  prevent polluting source dir
2017-03-27 22:12:20 +02:00
Martchus 7b100010c2 Fix error message in ConfigHeader.cmake 2017-03-27 22:07:36 +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 fdbe874bcd Allow to disable excluding tests from all target 2017-03-23 20:31:57 +01:00
Martchus 675b49f95c Add all doc files (not only first one) 2017-03-12 19:47:53 +01: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 789b9e9184 Add macro to auto init resources of static deps
The actual generation of the macro code is done
in qtutilities
2017-02-11 02:03:02 +01:00
Martchus 9087e8da7e Fix dependency of res file for built-in translations 2017-02-09 16:22:33 +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 f23c381da4 Support dylib extension used under macOS 2017-01-15 17:44:23 +01:00
Martchus 640d20c463 Make Qt translations of dependencies available in config.h 2017-01-07 16:07:03 +01:00
Martchus 36246d3895 Allow adding files for documentation only 2016-12-11 17:09:02 +01:00
Martchus 416008da1a Set compile definitions for tests 2016-11-26 13:06:27 +01:00
Martchus 4503f3fd9d Include imported targets actually 2016-11-21 20:14:10 +01:00
Martchus ade4565e0c Make Windows icon optional 2016-11-21 19:54:53 +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 e8b3f72f50 Log currently processed project 2016-11-04 10:41:16 +01:00
Martchus 438ca48cbb Improve doc 2016-10-30 00:30:54 +02:00
Martchus 6e7e87b73f Improve use of 3rd party libs 2016-10-29 00:19:47 +02:00
Martchus 77c454b304 Allow exact shared object version 2016-10-22 21:00:33 +02:00
Martchus 73d42c287c Support desktop actions and other additional desktop entries 2016-10-19 20:59:54 +02:00
Martchus deabf7f6bf Handle transitive Qt module dependencies correctly
Required in case of static builds
2016-10-08 19:04:30 +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 62c0145bce Fix completion install destination 2016-09-12 00:21:36 +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 27d99f0bda Fix install destination of pkg-config files 2016-09-11 21:00:34 +02:00
Martchus 7b946864a6 Remove pthread dependency from test target 2016-09-11 20:32:59 +02:00
Martchus 7be0b15d37 Add strip targets appropriately 2016-09-11 20:32:18 +02:00
Martchus 056fad7732 Allow disabling default cropping 2016-09-06 22:53:27 +02:00
Martchus 925688bcf4 Fix messages in TemplateFinder.cmake 2016-09-06 22:52:12 +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 cf521a3255 Add option for built-in SVG icon support 2016-08-19 22:38:36 +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 9f68a95920 Add pkg-config file 2016-08-14 16:49:40 +02:00
Martchus 17d22be584 Support testing applications 2016-07-30 22:34:31 +02:00
Martchus 822d77484b Load translations also for Qt modules not in qtbase 2016-07-27 21:43:37 +02:00
Martchus a69712d30f Fix CMake module ListToString 2016-07-27 21:43:31 +02:00
Martchus 2f1f20c8c3 Generate config header in extra module 2016-07-27 21:38:40 +02:00
Martchus 323ad615cb Add macro to use iconv 2016-07-27 18:21:43 +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 18845b3ce0 Use option for CMake options 2016-07-10 00:16:43 +02:00
Martchus 03094a1f61 Add support for bash completion 2016-07-04 02:46:54 +02:00
Martchus 209b953754 Add CMake variable to control logging 2016-07-03 22:13:04 +02:00
Martchus 46edfccc8f Set TARGET_EXECUTABLE in CMake pro 2016-07-02 02:04:32 +02:00
Martchus 0cc508dc93 Add option to specify lib dir suffix 2016-06-30 17:04:07 +02:00
Martchus 757b539b95 Make install target for API doc optional 2016-06-15 21:40:03 +02:00
Martchus 980794066b Provide workaround for GCC Bug 66145 2016-06-14 22:53:19 +02:00
Martchus ca8432c5ec Use version as Doxygen project number 2016-06-11 00:54:02 +02:00
Martchus d28d477ffe Complete generation of API doc
- Use README.md for main page
- Add install target for API doc
- Improve some doc comments
2016-06-10 22:59:22 +02:00
Martchus 4d1c874b56 Add target for API doc 2016-06-10 10:24:54 +02:00
Martchus 01dee5de09 Allow creation of static libs in general 2016-05-28 01:52:55 +02:00
Martchus b3d801bca6 Fix executable path in *.desktop file 2016-05-26 21:38:19 +02:00
Martchus 2a58a83c3c Fix template paths 2016-05-23 00:04:06 +02:00
Martchus 176b81b431 set META_PROJECT_VARNAME and META_PROJECT_VARNAME_UPPER if not specified
explicitely
2016-04-21 23:57:45 +02:00
Martchus d27520af68 fixed some issues caused the build system changeings 2016-04-16 18:32:22 +02:00
Martchus bd0cbd5802 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:05 +02:00