Martchus
e9803a41dc
Fix inconsistent variables for compile options/definitions
...
So these options/definitions should no longer be missing in some
places, e.g. the pkg-config file.
2020-02-14 13:22:47 +01:00
Martchus
4dd2179f19
Fix remaining install dirs to use GNUInstallDirs consistently
2020-02-13 11:32:28 +01:00
Martchus
b2a2773cdf
Support passing absolute path to CMAKE_INSTALL_INCLUDEDIR
...
See https://github.com/Martchus/cpp-utilities/issues/18
2020-02-13 11:19:36 +01:00
Martchus
dcb1d896c2
Apply cmake-format
2020-02-04 15:24:13 +01:00
Martchus
c97dfbfd4c
Use GNUInstallDirs
...
See https://github.com/Martchus/cpp-utilities/issues/17
2020-02-01 00:01:26 +01:00
Martchus
f5e275288d
Reformat CMake files with cmake-format 0.6.7
2020-01-26 19:24:04 +01:00
Martchus
a9cb91bee2
Set default visibility explicitely to hidden
...
Hidden default visibility is already expected to be handled by
users of the library because it is the default under Windows.
2020-01-10 18:05:55 +01:00
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
f9e545abdc
Remove surplus whitespace
2019-08-21 22:31:04 +02:00
Martchus
e14b5bf335
Remove unused CMake variable
2019-08-20 22:08:47 +02:00
Martchus
99bc257755
Apply cmake-format
2019-08-06 00:02:38 +02:00
Martchus
de2d6f6d98
Improve pkg-config file generation
...
* Prevent imported library paths pointing to build directory
ending up in pkg-config file
* Handle targets which reference other targets but have not pkg-config
module
* Fix check for BUNDLED_TARGETS
2019-08-05 23:45:08 +02:00
Martchus
79855f285d
Improve pkg-config file generation
...
* Don't refer to bundles libraries via its imported location
* Add dependencies of imported targets
2019-08-05 19:07:49 +02:00
Martchus
3d47869bcd
Use META_PLUGIN_CATEGORY within build directory
...
The *.so file might not be found when not in the right
subdirectory.
2019-07-26 22:01:00 +02:00
Martchus
7249751d30
Apply clang-format and cmake-format
2019-06-16 16:54:26 +02:00
Martchus
869a3b2ae2
Don't try to install Qt plugins outside of the install prefix
...
Even if QMake tells us that would be the right location because
it breaks development setups which use a custom install prefix
and set QT_PLUGIN_PATH accordingly.
2019-06-16 16:54:00 +02:00
Martchus
fc9e1ff703
Add version header to libraries
2019-06-16 15:33:10 +02:00
Martchus
5607691251
Deal with "bundled" dependencies
...
* Allow exporting targets from 3rd party projects which are
built within my own projects. This is required if the build
scripts of these 3rd party projects don't have an export on
their own but are used in the public interface or as a dependency
of a static library.
* Add those libraries to the pkg-config file as well.
2019-06-15 15:30:56 +02:00
Martchus
6c9a956a4f
Apply cmake-format
2019-06-10 22:43:42 +02:00
Martchus
bfdd6ada2b
Disable mingw-w64 packaging specific code by default
2019-06-01 16:32:21 +02: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
e120a897c5
Add use_package to 3rdParty
2019-05-30 14:04:04 +02:00
Martchus
a865522e67
Use existing TARGET_INCLUDE_DIRECTORY_BUILD_INTERFACE
2019-05-28 17:55:28 +02:00
Martchus
6489cae19e
Apply cmake-format
2019-05-15 15:52:29 +02:00
Martchus
e114b24d3c
Add helper to use pkg-config modules
...
This basically creates imported targets from those
pkg-config modules. It also supports static linkage.
The main effort here is that those imported targets
are also exported appropriately. This is implemented
by letting the config script re-run pkg-config as
required.
2019-05-09 19:27:10 +02:00
Martchus
b4cf641cfd
Fix setting library version
2019-05-07 16:49:19 +02:00
Martchus
a1267f2015
Fix handling undefined INTERFACE_REQUIRED_PACKAGES
2019-05-06 16:22:35 +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
0bd53c77b5
Query install directory for Qt plugins from qmake
2019-02-27 21:05:23 +01:00
Martchus
86f3bf8b3b
Apply cmake-format
2019-02-06 17:30:52 +01:00
Martchus
22795dac8a
Remove code for Android ECM module
...
Use module provided by qtutilities instead
2018-12-22 02:07:49 +01: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
6dcd39f1ac
Set CXX_STANDARD on header-only lib target for Qt Creator
2018-06-26 00:05:26 +02:00
Martchus
79679c0f42
Improve fake target for Qt Creator
...
This target is required so files for header-only libs
show up in Qt Creator. So far it was just a custom target.
However, this way include directories and build flags are
not correctly passed to the code model. So creating an
actual library now.
2018-06-24 20:43:08 +02:00
Martchus
6300e37924
Install shared/static config
2018-02-19 19:45:07 +01:00
Martchus
3fcbaf7fff
Split shared and static configuration
2018-02-16 23:56:29 +01:00
Martchus
a67805cb0f
Allow providing a special include dir for build
2018-01-20 20:43:18 +01:00
Martchus
5c6207c6fa
Do not try to strip header only libs
2018-01-20 17:44:14 +01:00
Martchus
a4e7cbd5c3
Make target 'interface_sources_for_qtcreator' unique
2017-11-16 01:59:43 +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
a869aa8def
Do not add sources to header-only libs
2017-10-23 01:12:51 +02:00
Martchus
9c8bb44843
Fix mingw-w64 targets
2017-08-31 02:16:05 +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