Ben Boeckel
ce71c01f11
cmake: work around a bug with implicit link directories
...
Unfortunately, this is necessary because CMake doesn't detect whether
mingw libraries are static or shared and doesn't put a -static flag around
the -lfoo argument which then makes the shared library be linked to.
2014-11-18 17:04:47 -05:00
Ben Boeckel
18c56abe4b
msys: don't use LTO
...
This causes duplicate symbol errors on msys' mingw install.
2014-11-17 18:19:54 -05:00
Ben Boeckel
5680c9cac7
msys: factor out -Werror on msys
...
There are Windows-related warnings turned into errors here.
2014-11-17 18:19:54 -05:00
Ben Boeckel
475154255a
msys: look in msys' directory for files
...
This tells find_path and find_library to look under this directory first
which is what we want on msys2.
2014-11-17 18:19:53 -05:00
Ben Boeckel
7d708e4223
cmake: support 2.8.7
...
Older versions of CMake support LINK_{PUBLIC,PRIVATE} while newer
versions prefer PUBLIC and PRIVATE instead, but still support the LINK_
prefix.
2014-10-24 15:29:51 -04:00
Ben Boeckel
9689df925c
cmake: clean up EXTRA_LIBRARIES
...
pthread is handled by CMAKE_THREAD_LIBS_INIT while libdl isn't needed.
2014-10-23 16:42:35 -04:00
Ben Boeckel
3b7bdcb790
cmake: set the project name
2014-10-23 16:42:35 -04:00
Ben Boeckel
0f0efc4af2
cmake: prepend to CMAKE_MODULE_PATH
2014-10-23 16:42:35 -04:00
Ben Boeckel
abbd5c0bdb
unbound: import cmake build system
2014-10-23 16:42:35 -04:00
Ben Boeckel
475fe209a8
cmake: minor cleanups (indentation and typos)
2014-10-23 16:42:35 -04:00
Ben Boeckel
799e8b241f
cmake: use option() for STATIC
2014-10-23 16:42:35 -04:00
Ben Boeckel
c24d22b44e
cmake: clean up if auto-dereferencing
...
CMake will auto-dereference variable names in if statements, so there's
no need to dereference them manually.
2014-10-23 16:42:35 -04:00
Ben Boeckel
eba180a1c7
cmake: support git info in released tarballs
2014-10-23 16:42:34 -04:00
Ben Boeckel
eeffac6839
cmake: fix up BOOST_IGNORE_SYSTEM_PATHS
...
The option was set twice when it only needs to be set once. Also fix a
bogus dereference and spurious whitespace.
2014-10-23 16:42:34 -04:00
Ben Boeckel
a43f1a88d8
cmake: remove configuration variables
...
CMAKE_BUILD_TYPE is meant for single-config build tools (e.g., make and
ninja) while CMAKE_CONFIGURATION_TYPES is meant for multi-config build
tools (e.g., Xcode and Visual Studio). They should not be mixed or
manually set.
2014-10-23 16:42:34 -04:00
Ben Boeckel
a87ce09461
cmake: factor out error messages
...
Instead of using BoldRed and ColourReset everywhere, wrap it up in a
function.
2014-10-23 16:42:34 -04:00
Riccardo Spagni
26728d94fe
mingw library tweaks
2014-10-06 22:34:44 +02:00
Riccardo Spagni
2cf94c1321
fix for mingw not playing nicely with libunbound configure, fix for correctly finding static libs on various operating systems
2014-10-06 22:29:07 +02:00
Riccardo Spagni
b05e27f8b1
need to link with -ldl on Linux when building statically
2014-10-06 21:17:31 +02:00
Riccardo Spagni
1afba7311e
quieten CMake when it can't find packages
2014-10-06 18:56:59 +02:00
Riccardo Spagni
6b7ac4b37f
enforce static libraries when building statically
2014-10-06 18:46:18 +02:00
Riccardo Spagni
cee87473ad
build libunbound from external if no local libunbound or for static builds
2014-10-06 18:08:32 +02:00
Riccardo Spagni
99945a5c47
dependencies enforced, send que error message log level moved
2014-09-29 20:13:15 +02:00
Riccardo Spagni
524eae58cc
never use the baked-in miniupnpc on FreeBSD because explosions
2014-09-24 20:57:09 +02:00
Riccardo Spagni
bff1f9d4c4
redo FindUnbound.cmake
2014-09-24 20:38:24 +02:00
Thomas Winget
24f325a33d
Fixed artifacts from cherry-picking devel->master
2014-09-23 22:59:47 +02:00
Thomas Winget
5bd343778f
Fixed CMake search for libunbound
...
As it turns out, some of CMake's built-in modules for detecting headers
and libraries don't work if you have certain compiler flags set, such as
-Werror=old-style-definition, as they do "int main()" rather than
"int main(void)". Having CMake search for libs before compiler flags
are set alleviates this issue, and I believe the underlying issue will
be fixed in future releases of CMake.
2014-09-23 22:58:31 +02:00
Thomas Winget
dea98df6b1
Updated CMake files -- added libunbound linker flag
...
CMake config file written, but was unable to test/get it working
properly because of a bug in CMake with functions related to
find_package. Simple "-lunbound" flag used in its stead for now. May
not build on non-Linux systems, not sure yet.
2014-09-23 22:58:02 +02:00
Riccardo Spagni
b5d51e30d9
moved msys2 toolchain, boost libs fix
2014-09-22 12:30:53 +02:00
Riccardo Spagni
ca569549ec
added mikezackles' missing boost function in CMakeLists
2014-09-22 12:09:46 +02:00
Riccardo Spagni
0e21944b97
turns out we do need -static-libgcc etc. on Linux
2014-09-15 23:17:24 +02:00
Riccardo Spagni
d8257fb67b
explicitly disable LTO for Clang
2014-09-15 22:47:26 +02:00
Zachary Michaels
ed41ee4c26
Use LTO by default
...
The mingw toolchains override this for now.
2014-09-15 22:36:58 +02:00
Zachary Michaels
729d4bb91d
User setting to turn LTO on and off
...
This isn't currently working on mingw
2014-09-15 22:29:39 +02:00
Zachary Michaels
e1dfd58bdb
Remove unnecessary else
2014-09-15 22:29:39 +02:00
Zachary Michaels
1b90c6f3d5
Hack to add pthread to link libraries on mingw
...
This should link winpthreads. We really shouldn't be passing these this
way, but that seems to be the existing solution, and it works for now.
2014-09-15 22:29:27 +02:00
Zachary Michaels
f9f4fc1b00
Change to -static gcc flag
2014-09-15 22:28:35 +02:00
Zachary Michaels
44f920b0fd
Set the boost thread api for mingw
2014-09-15 22:27:16 +02:00
Zachary Michaels
a31d6bb9fb
Hack to allow toolchains to pass flags to mingw
2014-09-15 22:27:16 +02:00
Zachary Michaels
9c848ceae7
Ignore another warning to make mingw happy
2014-09-15 22:27:16 +02:00
Zachary Michaels
0fe311b2f0
Remove unused CMake function
2014-09-15 22:25:04 +02:00
Zachary Michaels
8d6a04a9f0
Default to static linking on both MSVC and MINGW
2014-09-15 22:22:31 +02:00
Riccardo Spagni
5a3ce8a7dc
FreeBSD static linking fixes
2014-09-15 08:08:03 +02:00
Riccardo Spagni
8334ce0b24
versioning now includes the commit hash, or -final for tagged releases
2014-09-12 13:12:43 +02:00
Riccardo Spagni
446a7ddc49
always check git diff
2014-09-12 13:12:43 +02:00
fluffypony
d21cf293e1
added license to CMake
2014-09-11 08:25:07 +02:00
fluffypony
36c7ea9f77
more CMake tweaks to allow detection on OS X
2014-09-11 08:22:49 +02:00
fluffypony
8d8b47e69f
more dynamic miniupnp fixes
2014-09-10 20:01:30 +02:00
fluffypony
7d01dad8f4
use external miniupnpc if available
2014-09-10 18:14:57 +02:00
fluffypony
81490d2aea
miniupnpc changes for freebsd
2014-09-10 14:19:42 +02:00