From nobody Mon Nov 14 21:46:44 2022 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4NB2vT1HVCz4fjF6; Mon, 14 Nov 2022 21:46:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4NB2vT0gsyz3lLS; Mon, 14 Nov 2022 21:46:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1668462405; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vWjWfPxaGK4wy79gJGFCINgvaCBsylLvYd6bkR1dEiE=; b=BJvSMNz+SpY45XSTcFrpG0SlcJc2NoMYJAb1dGHIpV1mIJyLgCQiIhbvn3D/BxVJf8NFRp Nohyb70KRaXwFGYbYJs+7ByZ20emERdXdxTu3phDKK+cjj3ceTDWjwy1xrBW9DP1mLYywp m6B1+MNqgnpizaYjPkVd9yqeiF4SjlgKtH0SrGKXqp0735n7bw9tz8hZI2dee6v2DAc5LG P+4o9Sxu9ThiU3P2vKpXNC0gkWigOrWW1+nWOLMHwLKtiAUegMykGTKhNDaFKyeHD379JT KSika99Yd8hBDBkW341KpF2ksK0JysV1GALiQkCnXzf1GKOAfbdL9NFMvneTbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1668462405; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vWjWfPxaGK4wy79gJGFCINgvaCBsylLvYd6bkR1dEiE=; b=ZZitTb8c0zqlyIzUbUf6/LAq1E2xV3pvOukFCos07dpy5UsiX49i3a3C5A+Mvvf2ivpkaM MIR+McOjqNHpvtTDC7lI1NjUY5+eDYRdcfZLzgHcpJ6yDbAjuW7hcD4iAnuSHhSapA3BZA NtxL+WNoDbSlEe6UGYUx1OPodHlAzdm3l6kpNU25fIOv9OLDsh6zjGrufBGRtCovvRReY4 wlGN8X5RJqqRii+PVAcd1IorbNUg1oMo/kjMILJlPatVn8ONxC+lUKKJOiIGU8Tm7br2QK a1UNv/ZFRDUHWkBbn/JeTUCqSBBzAHqAPftDpvb7vo4KSvYW/0+3X6d4/6FGDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1668462405; a=rsa-sha256; cv=none; b=s9UuO4QrM7cllfjTZDSNaB3ddYWbotqj7hN6yEm7Uua8xK/KDFat7FHu9XrvL9Hrt8Aix0 h82YIV9EdqrGKw0cJXMZdQQgkimVkcTmwoh4scXTsdwSUS+M6t+NBzthnjR4xwQi52Sygk 9wVpbr0YMn3T+QXBSR5789W2TQ5Po0VRvHAzvPlriiuNrwO78umNHTj8Fgl9qngSK2umpH puxE7pcngDyrvRJKIp8PnUTEoCjU0W7uoi+mkVRd6NFXldP+xDQET3axCCmHgc2GhNG8CA XUyxRO9Bb1lnTJtO6NHhLvBP/yxRWyc+sqppdWoORHZtNoVxjb1NwbrGzj7LuQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4NB2vS6k8CzxSh; Mon, 14 Nov 2022 21:46:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 2AELkioI021927; Mon, 14 Nov 2022 21:46:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 2AELkiQe021926; Mon, 14 Nov 2022 21:46:44 GMT (envelope-from git) Date: Mon, 14 Nov 2022 21:46:44 GMT Message-Id: <202211142146.2AELkiQe021926@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Dave Cottlehuber Subject: git: cc88ff5bcc4f - main - databases/foundationdb-devel: update to 7.1.25 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dch X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cc88ff5bcc4fbf923043ee79a280670c6ef46d19 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dch: URL: https://cgit.FreeBSD.org/ports/commit/?id=cc88ff5bcc4fbf923043ee79a280670c6ef46d19 commit cc88ff5bcc4fbf923043ee79a280670c6ef46d19 Author: Dave Cottlehuber AuthorDate: 2022-11-13 21:27:18 +0000 Commit: Dave Cottlehuber CommitDate: 2022-11-14 21:46:31 +0000 databases/foundationdb-devel: update to 7.1.25 broken on arm64 PR: 266207 Sponsored by: SkunkWerks, GmbH --- databases/foundationdb-devel/Makefile | 46 +++++++++++++--------- databases/foundationdb-devel/distinfo | 6 +-- .../foundationdb-devel/files/foundationdb.conf.in | 44 ++++++++++----------- databases/foundationdb-devel/files/foundationdb.in | 18 +++++++-- .../foundationdb-devel/files/patch-CMakeLists.txt | 4 +- .../files/patch-bindings_c_CMakeLists.txt | 4 +- ...indings_c_test_unit_third__party_CMakeLists.txt | 22 ----------- .../files/patch-cmake_CompileBoost.cmake | 6 +-- .../files/patch-cmake_FDBComponents.cmake | 16 ++++---- .../files/patch-cmake_GetMsgpack.cmake | 24 +++++++++++ .../files/patch-fdbmonitor_CMakeLists.txt | 11 ++++++ .../files/patch-fdbmonitor_fdbmonitor.cpp | 42 ++++++++++++++++++++ .../files/patch-fdbserver_FDBExecHelper.actor.cpp | 32 +++++++++++++++ .../files/patch-fdbserver_fdbserver.actor.cpp | 30 ++++++++++++++ databases/foundationdb-devel/pkg-plist | 7 ++-- 15 files changed, 225 insertions(+), 87 deletions(-) diff --git a/databases/foundationdb-devel/Makefile b/databases/foundationdb-devel/Makefile index 7e256e33a608..83dcb62a3d8a 100644 --- a/databases/foundationdb-devel/Makefile +++ b/databases/foundationdb-devel/Makefile @@ -1,6 +1,5 @@ PORTNAME= foundationdb-devel -DISTVERSION= 7.0.0 -PORTREVISION= 2 +DISTVERSION= 7.1.25 CATEGORIES= databases # PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/pull/ @@ -12,17 +11,17 @@ WWW= https://www.foundationdb.org/ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE +BROKEN_aarch64= invalid asm rdtsc ONLY_FOR_ARCHS= aarch64 amd64 ONLY_FOR_ARCHS_REASON= not yet ported to anything else -BUILD_DEPENDS= ${LOCALBASE}/include/doctest/doctest.h:devel/doctest \ +BUILD_DEPENDS= ${LOCALBASE}/include/msgpack.hpp:devel/msgpack-cxx \ ${LOCALBASE}/include/toml.hpp:devel/toml11 \ bash:shells/bash \ git:devel/git LIB_DEPENDS= libboost_system.so:devel/boost-libs \ libeio.so:devel/libeio - USES= cmake compiler:c++17-lang mono:build python:build shebangfix \ ssl USE_GITHUB= yes @@ -31,8 +30,6 @@ GH_PROJECT= foundationdb USE_LDCONFIG= yes USE_RC_SUBR= foundationdb -CONFLICTS_INSTALL= foundationdb - SHEBANG_FILES= bindings/c/generate_asm.py CMAKE_ARGS= -DOPENSSL_ROOT_DIR=${OPENSSLLIB} @@ -40,16 +37,27 @@ CMAKE_OFF= DISABLE_TLS USE_DTRACE USE_JEMALLOC WITH_CONTRIB WITH_FLOWBENCH MAKE_ENV= MONO_REGISTRY_PATH=/tmp/registry +CONFLICTS_INSTALL= foundationdb + +FOUNDATIONDB_USER?= foundationdb +FOUNDATIONDB_GROUP?= foundationdb +FOUNDATIONDB_ETCDIR?= ${PREFIX}/etc/foundationdb +FOUNDATIONDB_DBDIR?= /var/db/foundationdb +FOUNDATIONDB_LOGDIR?= /var/log/foundationdb + +SUB_FDB= FOUNDATIONDB_DBDIR=${FOUNDATIONDB_DBDIR} \ + FOUNDATIONDB_ETCDIR=${FOUNDATIONDB_ETCDIR} \ + FOUNDATIONDB_GROUP=${FOUNDATIONDB_GROUP} \ + FOUNDATIONDB_LOGDIR=${FOUNDATIONDB_LOGDIR} \ + FOUNDATIONDB_USER=${FOUNDATIONDB_USER} + +SUB_FILES= foundationdb.conf +SUB_LIST= ${SUB_FDB} + USERS= foundationdb GROUPS= foundationdb -DBDIR?= /var/db/foundationdb -LOGDIR?= /var/log/foundationdb -SUB_FDB= DB_USER=${USERS} DB_GROUP=${GROUPS} DB_DIR=${DBDIR} \ - LOG_DIR=${LOGDIR} -SUB_FILES+= foundationdb.conf -SUB_LIST+= ${SUB_FDB} -PLIST_SUB+= ${SUB_FDB} +PLIST_SUB= ${SUB_FDB} post-patch: ${REINPLACE_CMD} 's/OPENSSL_USE_STATIC_LIBS TRUE/OPENSSL_USE_STATIC_LIBS FALSE/' \ @@ -59,8 +67,8 @@ post-patch: do-install: # commands on first line, dev tools on next two -.for f in fdbbackup fdbcli fdbmonitor fdbserver \ - actor_flamegraph fdb_flow_tester fdbconvert fdbdecode tutorial +.for f in fdbbackup fdbcli fdbmonitor fdbserver actor_flamegraph fdb_flow_tester \ + fdbconvert fdbdecode tutorial ${INSTALL_PROGRAM} ${WRKDIR}/.build/bin/${f} ${STAGEDIR}${PREFIX}/bin/ .endfor .for s in backup_agent dr_agent fastrestore_agent fdbr fdbrestore @@ -81,10 +89,10 @@ do-install: ${INSTALL_DATA} ${WRKDIR}/.build/bindings/c/foundationdb/fdb_c_options.g.h \ ${STAGEDIR}/${PREFIX}/include/foundationdb/ # runtime related - ${MKDIR} ${STAGEDIR}${DBDIR} \ - ${STAGEDIR}${LOGDIR} \ - ${STAGEDIR}${PREFIX}/etc/foundationdb + ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_ETCDIR} + ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_DBDIR} + ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_LOGDIR} ${INSTALL_DATA} ${WRKDIR}/foundationdb.conf \ - ${STAGEDIR}${PREFIX}/etc/foundationdb/foundationdb.conf.sample + ${STAGEDIR}${FOUNDATIONDB_ETCDIR}/foundationdb.conf.sample .include diff --git a/databases/foundationdb-devel/distinfo b/databases/foundationdb-devel/distinfo index d6b0c7b9492a..902fdaf207b6 100644 --- a/databases/foundationdb-devel/distinfo +++ b/databases/foundationdb-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1640764452 -SHA256 (apple-foundationdb-7.0.0_GH0.tar.gz) = 9a5ef672e32b6976b04a20c013b28c4aeeb7d35456afdefbc552707d52bc31ca -SIZE (apple-foundationdb-7.0.0_GH0.tar.gz) = 10875992 +TIMESTAMP = 1668350492 +SHA256 (apple-foundationdb-7.1.25_GH0.tar.gz) = 0c4679afb982932dfa37cbb7544eee4c8efc2409864af55743345c153407cb2c +SIZE (apple-foundationdb-7.1.25_GH0.tar.gz) = 11657831 diff --git a/databases/foundationdb-devel/files/foundationdb.conf.in b/databases/foundationdb-devel/files/foundationdb.conf.in index 5b47e46f2185..6fae1a863cb5 100644 --- a/databases/foundationdb-devel/files/foundationdb.conf.in +++ b/databases/foundationdb-devel/files/foundationdb.conf.in @@ -5,36 +5,36 @@ ## https://apple.github.io/foundationdb/configuration.html#the-configuration-file [fdbmonitor] -user = %%DB_USER%% -group = %%DB_GROUP%% +user = %%FOUNDATIONDB_USER%% +group = %%FOUNDATIONDB_GROUP%% [general] -restart_delay = 60 -## by default, restart_backoff = restart_delay_reset_interval = restart_delay -# initial_restart_delay = 0 -# restart_backoff = 60 -# restart_delay_reset_interval = 60 -cluster_file = %%PREFIX%%/etc/foundationdb/fdb.cluster -# delete_envvars = -# kill_on_configuration_change = true +restart-delay = 60 +## by default, restart-backoff = restart-delay-reset-interval = restart-delay +# initial-restart-delay = 0 +# restart-backoff = 60 +# restart-delay-reset-interval = 60 +cluster-file = %%FOUNDATIONDB_ETCDIR%%/fdb.cluster +# delete-envvars = +# kill-on-configuration-change = true ## Default parameters for individual fdbserver processes [fdbserver] command = %%PREFIX%%/bin/fdbserver -public_address = auto:$ID -listen_address = public -datadir = %%DB_DIR%%/data/$ID -logdir = %%LOG_DIR%% +public-address = auto:$ID +listen-address = public +datadir = %%FOUNDATIONDB_DBDIR%%/data/$ID +logdir = %%FOUNDATIONDB_LOGDIR%% # logsize = 10MiB # maxlogssize = 100MiB -# machine_id = -# datacenter_id = -# class = +# machine-id = +# datacenter-id = +# class = # memory = 8GiB -# storage_memory = 1GiB -# cache_memory = 2GiB -# metrics_cluster = -# metrics_prefix = +# storage-memory = 1GiB +# cache-memory = 2GiB +# metrics-cluster = +# metrics-prefix = ## An individual fdbserver process with id 4500 ## Parameters set here override defaults from the [fdbserver] section @@ -42,6 +42,6 @@ logdir = %%LOG_DIR%% [backup_agent] command = %%PREFIX%%/bin/backup_agent -logdir = %%LOG_DIR%% +logdir = %%FOUNDATIONDB_LOGDIR%% [backup_agent.1] diff --git a/databases/foundationdb-devel/files/foundationdb.in b/databases/foundationdb-devel/files/foundationdb.in index 1bcd503816f8..84e0a036a8ae 100644 --- a/databases/foundationdb-devel/files/foundationdb.in +++ b/databases/foundationdb-devel/files/foundationdb.in @@ -18,13 +18,25 @@ name="foundationdb" rcvar="${name}_enable" -foundationdb_enable=${foundationdb_enable:-"NO"} -command=%%PREFIX%%/bin/fdbmonitor -pidfile="/var/run/fdbmonitor.pid" load_rc_config "$name" + : ${foundationdb_enable="NO"} +: ${foundationdb_user="%%FOUNDATIONDB_USER%%"} +: ${foundationdb_group="%%FOUNDATIONDB_GROUP%%"} : ${foundationdb_config="%%PREFIX%%/etc/foundationdb/foundationdb.conf"} +start_precmd="foundationdb_start_precmd" + +pidfile="/var/run/fdbmonitor.pid" +command=%%PREFIX%%/bin/fdbmonitor command_args="--conffile ${foundationdb_config} --lockfile ${pidfile} --daemonize" + +foundationdb_start_precmd() +{ + if [ ! -e "${pidfile}" ]; then + install -m 0600 -o "${foundationdb_user}" -g "${foundationdb_group}" /dev/null "${pidfile}" + fi +} + run_rc_command $1 diff --git a/databases/foundationdb-devel/files/patch-CMakeLists.txt b/databases/foundationdb-devel/files/patch-CMakeLists.txt index c39b3c3eb46e..78d6244a990c 100644 --- a/databases/foundationdb-devel/files/patch-CMakeLists.txt +++ b/databases/foundationdb-devel/files/patch-CMakeLists.txt @@ -1,6 +1,6 @@ ---- CMakeLists.txt.orig 2021-12-29 09:04:08 UTC +--- CMakeLists.txt.orig 2022-09-19 11:42:41 UTC +++ CMakeLists.txt -@@ -172,9 +172,13 @@ else() +@@ -183,9 +183,13 @@ add_subdirectory(fdbbackup) add_subdirectory(fdbservice) endif() add_subdirectory(fdbbackup) diff --git a/databases/foundationdb-devel/files/patch-bindings_c_CMakeLists.txt b/databases/foundationdb-devel/files/patch-bindings_c_CMakeLists.txt index c05798bb5aaa..7c58fb132630 100644 --- a/databases/foundationdb-devel/files/patch-bindings_c_CMakeLists.txt +++ b/databases/foundationdb-devel/files/patch-bindings_c_CMakeLists.txt @@ -1,6 +1,6 @@ ---- bindings/c/CMakeLists.txt.orig 2021-12-29 13:15:46 UTC +--- bindings/c/CMakeLists.txt.orig 2022-09-19 11:42:41 UTC +++ bindings/c/CMakeLists.txt -@@ -65,7 +65,7 @@ if(WIN32) +@@ -78,7 +78,7 @@ endif() endif() # The tests don't build on windows diff --git a/databases/foundationdb-devel/files/patch-bindings_c_test_unit_third__party_CMakeLists.txt b/databases/foundationdb-devel/files/patch-bindings_c_test_unit_third__party_CMakeLists.txt deleted file mode 100644 index 23838e3972e5..000000000000 --- a/databases/foundationdb-devel/files/patch-bindings_c_test_unit_third__party_CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ ---- bindings/c/test/unit/third_party/CMakeLists.txt.orig 2021-12-07 03:03:34 UTC -+++ bindings/c/test/unit/third_party/CMakeLists.txt -@@ -1,18 +1 @@ --# Download doctest repo. --include(ExternalProject) --find_package(Git REQUIRED) -- --ExternalProject_Add( -- doctest -- PREFIX ${CMAKE_BINARY_DIR}/doctest -- GIT_REPOSITORY https://github.com/onqtam/doctest.git -- GIT_TAG 1c8da00c978c19e00a434b2b1f854fcffc9fba35 # v2.4.0 -- TIMEOUT 10 -- CONFIGURE_COMMAND "" -- BUILD_COMMAND "" -- INSTALL_COMMAND "" -- LOG_DOWNLOAD ON --) -- --ExternalProject_Get_Property(doctest source_dir) --set(DOCTEST_INCLUDE_DIR ${source_dir}/doctest CACHE INTERNAL "Path to include folder for doctest") -+set(DOCTEST_INCLUDE_DIR %%LOCALBASE%%/include/doctest CACHE INTERNAL "Path to include folder for doctest") diff --git a/databases/foundationdb-devel/files/patch-cmake_CompileBoost.cmake b/databases/foundationdb-devel/files/patch-cmake_CompileBoost.cmake index de9f48861488..c72e610786f0 100644 --- a/databases/foundationdb-devel/files/patch-cmake_CompileBoost.cmake +++ b/databases/foundationdb-devel/files/patch-cmake_CompileBoost.cmake @@ -1,11 +1,11 @@ ---- cmake/CompileBoost.cmake.orig 2022-04-19 01:08:48 UTC +--- cmake/CompileBoost.cmake.orig 2022-09-19 11:42:41 UTC +++ cmake/CompileBoost.cmake @@ -113,7 +113,7 @@ endif() return() endif() --find_package(Boost 1.72.0 EXACT QUIET COMPONENTS context CONFIG PATHS ${BOOST_HINT_PATHS}) -+find_package(Boost 1.72.0 COMPONENTS context CONFIG PATHS ${BOOST_HINT_PATHS}) +-find_package(Boost 1.78.0 EXACT QUIET COMPONENTS context CONFIG PATHS ${BOOST_HINT_PATHS}) ++find_package(Boost 1.78.0 COMPONENTS context CONFIG PATHS ${BOOST_HINT_PATHS}) set(FORCE_BOOST_BUILD OFF CACHE BOOL "Forces cmake to build boost and ignores any installed boost") if(Boost_FOUND AND NOT FORCE_BOOST_BUILD) diff --git a/databases/foundationdb-devel/files/patch-cmake_FDBComponents.cmake b/databases/foundationdb-devel/files/patch-cmake_FDBComponents.cmake index e4b75371774d..556fe68a9257 100644 --- a/databases/foundationdb-devel/files/patch-cmake_FDBComponents.cmake +++ b/databases/foundationdb-devel/files/patch-cmake_FDBComponents.cmake @@ -1,15 +1,15 @@ ---- cmake/FDBComponents.cmake.orig 2021-12-07 03:03:34 UTC +--- cmake/FDBComponents.cmake.orig 2022-09-19 11:42:41 UTC +++ cmake/FDBComponents.cmake -@@ -24,7 +24,7 @@ set(DISABLE_TLS OFF CACHE BOOL "Don't try to find Open +@@ -24,7 +24,7 @@ else() if(DISABLE_TLS) set(WITH_TLS OFF) else() - set(OPENSSL_USE_STATIC_LIBS TRUE) + set(OPENSSL_USE_STATIC_LIBS FALSE) - find_package(OpenSSL) - if(OPENSSL_FOUND) - set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) -@@ -203,6 +203,13 @@ else() + if(WIN32) + set(OPENSSL_MSVC_STATIC_RT ON) + endif() +@@ -198,6 +198,13 @@ endif() endif() ################################################################################ @@ -23,12 +23,12 @@ # Coroutine implementation ################################################################################ -@@ -236,6 +243,8 @@ function(print_components) +@@ -242,6 +249,8 @@ function(print_components) message(STATUS "Build Documentation (make html): ${WITH_DOCUMENTATION}") message(STATUS "Build Python sdist (make package): ${WITH_PYTHON_BINDING}") message(STATUS "Configure CTest (depends on Python): ${WITH_PYTHON}") + message(STATUS "Build contrib: ${WITH_CONTRIB}") + message(STATUS "Build with FlowBench: ${WITH_FLOWBENCH}") message(STATUS "Build with RocksDB: ${WITH_ROCKSDB_EXPERIMENTAL}") + message(STATUS "Build with AWS SDK: ${WITH_AWS_BACKUP}") message(STATUS "=========================================") - endfunction() diff --git a/databases/foundationdb-devel/files/patch-cmake_GetMsgpack.cmake b/databases/foundationdb-devel/files/patch-cmake_GetMsgpack.cmake new file mode 100644 index 000000000000..dee8066686d4 --- /dev/null +++ b/databases/foundationdb-devel/files/patch-cmake_GetMsgpack.cmake @@ -0,0 +1,24 @@ +--- cmake/GetMsgpack.cmake.orig 2022-09-19 11:42:41 UTC ++++ cmake/GetMsgpack.cmake +@@ -1,20 +1,7 @@ +-find_package(msgpack 3.3.0 EXACT QUIET CONFIG) ++find_package(msgpack REQUIRED QUIET CONFIG) + + add_library(msgpack INTERFACE) + + if(msgpack_FOUND) + target_link_libraries(msgpack INTERFACE msgpackc-cxx) +-else() +- include(ExternalProject) +- ExternalProject_add(msgpackProject +- URL "https://github.com/msgpack/msgpack-c/releases/download/cpp-3.3.0/msgpack-3.3.0.tar.gz" +- URL_HASH SHA256=6e114d12a5ddb8cb11f669f83f32246e484a8addd0ce93f274996f1941c1f07b +- CONFIGURE_COMMAND "" +- BUILD_COMMAND "" +- INSTALL_COMMAND "" +- ) +- +- ExternalProject_Get_property(msgpackProject SOURCE_DIR) +- target_include_directories(msgpack SYSTEM INTERFACE "${SOURCE_DIR}/include") +- add_dependencies(msgpack msgpackProject) + endif() diff --git a/databases/foundationdb-devel/files/patch-fdbmonitor_CMakeLists.txt b/databases/foundationdb-devel/files/patch-fdbmonitor_CMakeLists.txt new file mode 100644 index 000000000000..2b5912204a6a --- /dev/null +++ b/databases/foundationdb-devel/files/patch-fdbmonitor_CMakeLists.txt @@ -0,0 +1,11 @@ +--- fdbmonitor/CMakeLists.txt.orig 2022-09-19 11:42:41 UTC ++++ fdbmonitor/CMakeLists.txt +@@ -56,8 +56,3 @@ endif() + configure_file(${CMAKE_SOURCE_DIR}/contrib/generate_profile.sh + ${CMAKE_BINARY_DIR}/contrib/generate_profile.sh) + endif() +- +-add_custom_target(generate_profile +- COMMAND ${CMAKE_BINARY_DIR}/contrib/generate_profile.sh ${CMAKE_BINARY_DIR}) +- +-add_dependencies(generate_profile fdbmonitor fdbserver mako fdbcli) diff --git a/databases/foundationdb-devel/files/patch-fdbmonitor_fdbmonitor.cpp b/databases/foundationdb-devel/files/patch-fdbmonitor_fdbmonitor.cpp new file mode 100644 index 000000000000..862461539f53 --- /dev/null +++ b/databases/foundationdb-devel/files/patch-fdbmonitor_fdbmonitor.cpp @@ -0,0 +1,42 @@ +--- fdbmonitor/fdbmonitor.cpp.orig 2022-09-19 11:42:41 UTC ++++ fdbmonitor/fdbmonitor.cpp +@@ -27,6 +27,8 @@ + + #ifdef __linux__ + #include ++#elif defined(__FreeBSD__) ++#include + #endif + + #include +@@ -751,6 +753,10 @@ void start_process(Command* cmd, ProcessID id, uid_t u + signal(SIGHUP, SIG_DFL); + signal(SIGINT, SIG_DFL); + signal(SIGTERM, SIG_DFL); ++#ifdef __linux__ ++ signal(SIGCHLD, SIG_DFL); ++#endif ++ sigprocmask(SIG_SETMASK, mask, nullptr); + + /* All output in this block should be to stdout (for SevInfo messages) or stderr (for SevError messages) */ + /* Using log_msg() or log_err() from the child will cause the logs to be written incorrectly */ +@@ -780,13 +786,15 @@ void start_process(Command* cmd, ProcessID id, uid_t u + } + + #ifdef __linux__ +- signal(SIGCHLD, SIG_DFL); +- +- sigprocmask(SIG_SETMASK, mask, nullptr); +- + /* death of our parent raises SIGHUP */ + prctl(PR_SET_PDEATHSIG, SIGHUP); + if (getppid() == 1) /* parent already died before prctl */ ++ exit(0); ++#elif defined(__FreeBSD__) ++ /* death of our parent raises SIGHUP */ ++ const int sig = SIGHUP; ++ procctl(P_PID, 0, PROC_PDEATHSIG_CTL, (void*)&sig); ++ if (getppid() == 1) /* parent already died before procctl */ + exit(0); + #endif + diff --git a/databases/foundationdb-devel/files/patch-fdbserver_FDBExecHelper.actor.cpp b/databases/foundationdb-devel/files/patch-fdbserver_FDBExecHelper.actor.cpp new file mode 100644 index 000000000000..4950f7fd5e8b --- /dev/null +++ b/databases/foundationdb-devel/files/patch-fdbserver_FDBExecHelper.actor.cpp @@ -0,0 +1,32 @@ +--- fdbserver/FDBExecHelper.actor.cpp.orig 2022-09-19 11:42:41 UTC ++++ fdbserver/FDBExecHelper.actor.cpp +@@ -18,6 +18,14 @@ + * limitations under the License. + */ + ++#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__INTEL_COMPILER) ++#define BOOST_SYSTEM_NO_LIB ++#define BOOST_DATE_TIME_NO_LIB ++#define BOOST_REGEX_NO_LIB ++#include ++#endif ++#include ++ + #include "flow/TLSConfig.actor.h" + #include "flow/Trace.h" + #include "flow/Platform.h" +@@ -33,14 +41,6 @@ + #include "fdbserver/FDBExecHelper.actor.h" + #include "fdbserver/Knobs.h" + #include "fdbserver/RemoteIKeyValueStore.actor.h" +- +-#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__INTEL_COMPILER) +-#define BOOST_SYSTEM_NO_LIB +-#define BOOST_DATE_TIME_NO_LIB +-#define BOOST_REGEX_NO_LIB +-#include +-#endif +-#include + + #include "flow/actorcompiler.h" // This must be the last #include. + diff --git a/databases/foundationdb-devel/files/patch-fdbserver_fdbserver.actor.cpp b/databases/foundationdb-devel/files/patch-fdbserver_fdbserver.actor.cpp new file mode 100644 index 000000000000..1720825f36ac --- /dev/null +++ b/databases/foundationdb-devel/files/patch-fdbserver_fdbserver.actor.cpp @@ -0,0 +1,30 @@ +--- fdbserver/fdbserver.actor.cpp.orig 2022-09-19 11:42:41 UTC ++++ fdbserver/fdbserver.actor.cpp +@@ -84,7 +84,11 @@ + #if defined(__linux__) || defined(__FreeBSD__) + #include + #include ++#if defined(__linux__) + #include ++#elif defined(__FreeBSD__) ++#include ++#endif + #ifdef ALLOC_INSTRUMENTATION + #include + #endif +@@ -2225,9 +2229,14 @@ int main(int argc, char* argv[]) { + f = result; + } else if (role == ServerRole::FlowProcess) { + TraceEvent(SevDebug, "StartingFlowProcess").detail("From", "fdbserver"); +-#if defined(__linux__) || defined(__FreeBSD__) ++#if defined(__linux__) + prctl(PR_SET_PDEATHSIG, SIGTERM); + if (getppid() == 1) /* parent already died before prctl */ ++ flushAndExit(FDB_EXIT_SUCCESS); ++#elif defined(__FreeBSD__) ++ const int sig = SIGTERM; ++ procctl(P_PID, 0, PROC_PDEATHSIG_CTL, (void*)&sig); ++ if (getppid() == 1) /* parent already died before procctl */ + flushAndExit(FDB_EXIT_SUCCESS); + #endif + diff --git a/databases/foundationdb-devel/pkg-plist b/databases/foundationdb-devel/pkg-plist index 6a089bd26277..453f6054fc15 100644 --- a/databases/foundationdb-devel/pkg-plist +++ b/databases/foundationdb-devel/pkg-plist @@ -1,6 +1,7 @@ -@dir(%%DB_USER%%,%%DB_GROUP%%,) %%DB_DIR%% -@dir(%%DB_USER%%,%%DB_GROUP%%,) %%LOG_DIR%% -@sample etc/foundationdb/foundationdb.conf.sample +@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_ETCDIR%% +@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_DBDIR%% +@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_LOGDIR%% +@sample %%FOUNDATIONDB_ETCDIR%%/foundationdb.conf.sample bin/actor_flamegraph bin/backup_agent bin/dr_agent