55 lines
2.1 KiB
Diff
55 lines
2.1 KiB
Diff
From 041cef434afe0d0c6da8b6ac1d1fa26087246dda Mon Sep 17 00:00:00 2001
|
|
From: Eric Haszlakiewicz <erh+git@nimenees.com>
|
|
Date: Mon, 15 Feb 2021 20:19:56 +0000
|
|
Subject: [PATCH] Add a DISABLE_EXTRA_LIBS option to skip using libbsd, per
|
|
@neheb's request on issue #692/commit 0f61f692.
|
|
|
|
---
|
|
CMakeLists.txt | 3 ++-
|
|
cmake-configure | 4 ++++
|
|
2 files changed, 6 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index 30b4f2d2fa..79038aa390 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -97,6 +97,7 @@ option(DISABLE_WERROR "Avoid treating compiler warnings as fatal
|
|
option(ENABLE_RDRAND "Enable RDRAND Hardware RNG Hash Seed." OFF)
|
|
option(ENABLE_THREADING "Enable partial threading support." OFF)
|
|
option(OVERRIDE_GET_RANDOM_SEED "Override json_c_get_random_seed() with custom code." OFF)
|
|
+option(DISABLE_EXTRA_LIBS "Avoid linking against extra libraries, such as libbsd." OFF)
|
|
|
|
|
|
if (UNIX OR MINGW OR CYGWIN)
|
|
@@ -171,7 +172,7 @@ check_symbol_exists(vsnprintf "stdio.h" HAVE_VSNPRINTF)
|
|
check_symbol_exists(vprintf "stdio.h" HAVE_VPRINTF)
|
|
|
|
check_symbol_exists(arc4random "stdlib.h" HAVE_ARC4RANDOM)
|
|
-if (NOT HAVE_ARC4RANDOM)
|
|
+if (NOT HAVE_ARC4RANDOM AND DISABLE_EXTRA_LIBS STREQUAL "OFF")
|
|
check_include_file(bsd/stdlib.h HAVE_BSD_STDLIB_H)
|
|
if (HAVE_BSD_STDLIB_H)
|
|
list(APPEND CMAKE_REQUIRED_LIBRARIES "-lbsd")
|
|
diff --git a/cmake-configure b/cmake-configure
|
|
index c8e44aeed4..dc695e5a7d 100755
|
|
--- a/cmake-configure
|
|
+++ b/cmake-configure
|
|
@@ -30,6 +30,7 @@ $0 [<configure_options>] [-- [<cmake options>]]
|
|
--enable-static build static libraries [default=yes]
|
|
--disable-Bsymbolic Avoid linking with -Bsymbolic-function
|
|
--disable-werror Avoid treating compiler warnings as fatal errors
|
|
+ --disable-extra-libs Avoid linking against extra libraries, such as libbsd
|
|
|
|
EOF
|
|
exit
|
|
@@ -73,6 +74,9 @@ while [ $# -gt 0 ] ; do
|
|
--disable-werror)
|
|
FLAGS+=(-DDISABLE_WERROR=ON)
|
|
;;
|
|
+ --disable-extra-libs)
|
|
+ FLAGS+=(-DDISABLE_EXTRA_LIBS=ON)
|
|
+ ;;
|
|
--)
|
|
shift
|
|
break
|