From 0b0b0bad03a8cd5e802bf3a64f7d2331aba52e7f Mon Sep 17 00:00:00 2001 From: Mikael Urankar Date: Fri, 19 Aug 2022 11:13:16 +0200 Subject: net-im/libsignal-node: Fix build on FreeBSD 12.x and 13.x Limit _XOPEN_SOURCE to Linux as it breaks FreeBSD build. This is an import of an upstream patch: https://github.com/google/boringssl/commit/387f82054c8ffa7d2b9e31d908586fbd47f34039 --- .../files/patch-limit_XOPEN_SOURCE_to_Linux | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 net-im/libsignal-node/files/patch-limit_XOPEN_SOURCE_to_Linux (limited to 'net-im/libsignal-node') diff --git a/net-im/libsignal-node/files/patch-limit_XOPEN_SOURCE_to_Linux b/net-im/libsignal-node/files/patch-limit_XOPEN_SOURCE_to_Linux new file mode 100644 index 000000000000..a9f0dc35014b --- /dev/null +++ b/net-im/libsignal-node/files/patch-limit_XOPEN_SOURCE_to_Linux @@ -0,0 +1,31 @@ +https://github.com/google/boringssl/commit/387f82054c8ffa7d2b9e31d908586fbd47f34039 + +Limit _XOPEN_SOURCE to Linux. + +POSIX feature macros are a mess. Reportedly, FreeBSD also breaks with +_XOPEN_SOURCE, so try leaving it unset by default. + +Update-Note: It's possible this will break yet another obscure UNIX. +Hopefully we can eventually find a combination that works? + +Bug: 471 +Change-Id: I103f8093110d343789b9c5a22eb056ab78d9cd14 +Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/51145 +Reviewed-by: Adam Langley + + +--- ../boring-e1c719c0964ba37e6935355e9bf19821b072797e/boring-sys/deps/boringssl/CMakeLists.txt.orig 2022-08-19 10:54:32.212105000 +0200 ++++ ../boring-e1c719c0964ba37e6935355e9bf19821b072797e/boring-sys/deps/boringssl/CMakeLists.txt 2022-08-19 10:55:12.577991000 +0200 +@@ -21,8 +21,11 @@ endif() + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden -fno-common -std=c11") + endif() + +-# pthread_rwlock_t requires a feature flag. +-if(NOT WIN32) ++# pthread_rwlock_t on Linux requires a feature flag. We limit this to Linux ++# because, on Apple platforms, it instead disables APIs we use. See compat(5) ++# and sys/cdefs.h. Reportedly, FreeBSD also breaks when this is set. See ++# https://crbug.com/boringssl/471. ++if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_XOPEN_SOURCE=700") + endif() -- cgit v1.2.3