Martchus
1c6315a078
Add opt-outs for additional linker flags to achieve a fully statically linked build
...
See https://github.com/Martchus/syncthingtray/issues/64
2020-04-27 22:55:06 +02:00
Martchus
3fb40baebc
Reformat CMake scripts against cmake-format 0.6.3
2019-12-15 18:58:42 +01:00
Martchus
99bc257755
Apply cmake-format
2019-08-06 00:02:38 +02:00
Martchus
81a3d4fa94
Don't skip entire use_pkg_config_module if target exists
...
Otherwise the same library can not be added to another library
variable.
2019-07-09 18:36:28 +02:00
Martchus
6c9a956a4f
Apply cmake-format
2019-06-10 22:43:42 +02:00
Martchus
93bdf5b4f1
Do not error-out if file system lib not found
2019-06-07 16:45:06 +02:00
Martchus
d9b4ca5381
Fix build when not file system library required
2019-06-06 15:20:42 +02:00
Martchus
aebd324cf4
Add CMake function to use std::filesystem
2019-06-05 23:48:01 +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
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
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
c0f74e4c89
Add BOOST_IOSTREAMS_DYN_LINK to compile defs
...
if linking dynamically against Boost.Iostreams
2018-10-21 20:24:55 +02:00
Martchus
749eea2ab6
Support NativeFileStream via Boost.Iostreams
...
So it can also be enabled when not using libstdc++.
2018-09-30 13:55:30 +02:00
Martchus
0dcbb3de55
Improve coding style in CMake modules
2018-02-21 23:07:51 +01:00
Martchus
ae249140bc
Use also actual lib name to check whether dependency is public
...
In accordance to 'Fix adding public Qt modules in pkg-config'
in qtutilities (b2e3506ff59ae4b610c91bd9ee96333871fa5864).
2017-10-08 20:24:48 +02:00
Martchus
472e0296d0
Fix adding public static lib dependencies
2017-10-08 19:42:55 +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
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
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
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
ecce539a18
Do not set global include dirs
...
TODO: Set include dirs on target level
2017-05-24 23:29:17 +02:00
Martchus
6042336038
Allow checking whether external lib is used
2017-04-15 23:20:27 +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
64cc931555
Improve CMake modules
2017-02-11 02:30:46 +01:00
Martchus
f23c381da4
Support dylib extension used under macOS
2017-01-15 17:44:23 +01:00
Martchus
b903adccdb
Provide an imported target for libs
2016-11-12 02:06:52 +01:00
Martchus
6e7e87b73f
Improve use of 3rd party libs
2016-10-29 00:19:47 +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
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