mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 20:12:57 +01:00
9b6a05df66
0fbf051fec723f86f49ab14ea15c91bb1435c656 depends: fix BDB compilation on OpenBSD (Sebastian Falbesoner)
Pull request description:
Compiling C++ code with `-D_XOPEN_SOURCE=600` causes problems on OpenBSD. If that define is set, the C++ standard header detection routine in BDB's configure script fails due to a missing type name for `locale_t` (see https://gist.github.com/theStack/b41884e31ebc5cdca3220bcaa674cb70 for the relevant config.log part).
This results in `HAVE_CXX_STDHEADERS` not being defined, which then it turn leads to the inclusion of `<iostream.h>` (rather than `<iostream>`), which doesn't exist, as described in #28963.
According to a mailing list post discussing a similar problem [1], "OpenBSD provides the POSIX APIs by default", so we don't need this define anyway and can remove it. This fixes the BDB build problem as described in issue #28963. See also f87e75ae71
for a similar fix for google's flatbuffer project.
Tested on OpenBSD 7.4 with clang 13.0.0. Fixes #28963.
[1] https://www.mail-archive.com/tech@openbsd.org/msg63386.html
ACKs for top commit:
fanquake:
ACK 0fbf051fec723f86f49ab14ea15c91bb1435c656
Tree-SHA512: 02139e9081ed855e067bfba8c81b54c657417576e553cc1035a916ada9be049358f5e14d756d5f234c5226bd7e943f61c6ae8990c1b152f9125681b7b777c9b3
35 lines
1.2 KiB
Makefile
35 lines
1.2 KiB
Makefile
package=bdb
|
|
$(package)_version=4.8.30
|
|
$(package)_download_path=https://download.oracle.com/berkeley-db
|
|
$(package)_file_name=db-$($(package)_version).NC.tar.gz
|
|
$(package)_sha256_hash=12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef
|
|
$(package)_build_subdir=build_unix
|
|
$(package)_patches=clang_cxx_11.patch
|
|
|
|
define $(package)_set_vars
|
|
$(package)_config_opts=--disable-shared --enable-cxx --disable-replication --enable-option-checking
|
|
$(package)_config_opts_mingw32=--enable-mingw
|
|
$(package)_cflags+=-Wno-error=implicit-function-declaration -Wno-error=format-security -Wno-error=implicit-int
|
|
$(package)_cxxflags+=-std=c++17
|
|
$(package)_cppflags_freebsd=-D_XOPEN_SOURCE=600 -D__BSD_VISIBLE=1
|
|
$(package)_cppflags_netbsd=-D_XOPEN_SOURCE=600
|
|
$(package)_cppflags_mingw32=-DUNICODE -D_UNICODE
|
|
endef
|
|
|
|
define $(package)_preprocess_cmds
|
|
patch -p1 < $($(package)_patch_dir)/clang_cxx_11.patch && \
|
|
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub dist
|
|
endef
|
|
|
|
define $(package)_config_cmds
|
|
../dist/$($(package)_autoconf)
|
|
endef
|
|
|
|
define $(package)_build_cmds
|
|
$(MAKE) libdb_cxx-4.8.a libdb-4.8.a
|
|
endef
|
|
|
|
define $(package)_stage_cmds
|
|
$(MAKE) DESTDIR=$($(package)_staging_dir) install_lib install_include
|
|
endef
|