From 03ae11014e016425300e95b180376c8cfd6ca32d Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Tue, 6 Jun 2023 16:34:31 +0300 Subject: [PATCH] foundationdb{51,52,60,61}: drop --- pkgs/servers/foundationdb/cmake.nix | 30 +--- pkgs/servers/foundationdb/default.nix | 88 +--------- .../foundationdb/patches/clang-libcxx.patch | 52 ------ .../patches/fix-scm-version.patch | 42 ----- .../foundationdb/patches/gcc-fixes.patch | 138 ---------------- .../patches/include-fixes-6.0.patch | 137 ---------------- .../foundationdb/patches/ldflags-5.1.patch | 90 ----------- .../foundationdb/patches/ldflags-5.2.patch | 90 ----------- .../foundationdb/patches/ldflags-6.0.patch | 78 --------- .../foundationdb/patches/stdexcept-6.1.patch | 24 --- .../patches/suppress-clang-warnings.patch | 34 ---- pkgs/servers/foundationdb/test-list.txt | 80 ---------- pkgs/servers/foundationdb/vsmake.nix | 150 ------------------ pkgs/top-level/aliases.nix | 4 + pkgs/top-level/all-packages.nix | 9 +- pkgs/top-level/python-aliases.nix | 4 + pkgs/top-level/python-packages.nix | 4 - 17 files changed, 19 insertions(+), 1035 deletions(-) delete mode 100644 pkgs/servers/foundationdb/patches/clang-libcxx.patch delete mode 100644 pkgs/servers/foundationdb/patches/fix-scm-version.patch delete mode 100644 pkgs/servers/foundationdb/patches/gcc-fixes.patch delete mode 100644 pkgs/servers/foundationdb/patches/include-fixes-6.0.patch delete mode 100644 pkgs/servers/foundationdb/patches/ldflags-5.1.patch delete mode 100644 pkgs/servers/foundationdb/patches/ldflags-5.2.patch delete mode 100644 pkgs/servers/foundationdb/patches/ldflags-6.0.patch delete mode 100644 pkgs/servers/foundationdb/patches/stdexcept-6.1.patch delete mode 100644 pkgs/servers/foundationdb/patches/suppress-clang-warnings.patch delete mode 100644 pkgs/servers/foundationdb/test-list.txt delete mode 100644 pkgs/servers/foundationdb/vsmake.nix diff --git a/pkgs/servers/foundationdb/cmake.nix b/pkgs/servers/foundationdb/cmake.nix index 6f22fb02a3d0..f01b20c93865 100644 --- a/pkgs/servers/foundationdb/cmake.nix +++ b/pkgs/servers/foundationdb/cmake.nix @@ -1,7 +1,7 @@ # This builder is for FoundationDB CMake build system. { lib, fetchFromGitHub -, cmake, ninja, python3, openjdk, mono, pkg-config +, cmake, ninja, python3, openjdk8, mono, pkg-config , msgpack, toml11 , gccStdenv, llvmPackages @@ -12,8 +12,6 @@ let stdenv = if useClang then llvmPackages.libcxxStdenv else gccStdenv; - tests = builtins.replaceStrings [ "\n" ] [ " " ] (lib.fileContents ./test-list.txt); - # Only even numbered versions compile on aarch64; odd numbered versions have avx enabled. avxEnabled = version: let @@ -39,10 +37,9 @@ let inherit rev sha256; }; - buildInputs = [ ssl boost ] - ++ lib.optionals (lib.versionAtLeast version "7.1.0") [ msgpack toml11 ]; + buildInputs = [ ssl boost msgpack toml11 ]; - nativeBuildInputs = [ pkg-config cmake ninja python3 openjdk mono ] + nativeBuildInputs = [ pkg-config cmake ninja python3 openjdk8 mono ] ++ lib.optionals useClang [ llvmPackages.lld ]; separateDebugInfo = true; @@ -71,14 +68,7 @@ let # Same with LLD when Clang is available. (lib.optionalString useClang "-DUSE_LD=LLD") (lib.optionalString (!useClang) "-DUSE_LD=GOLD") - ] ++ lib.optionals (lib.versionOlder version "7.0.0") - [ # FIXME: why can't libressl be found automatically? - "-DLIBRESSL_USE_STATIC_LIBS=FALSE" - "-DLIBRESSL_INCLUDE_DIR=${ssl.dev}" - "-DLIBRESSL_CRYPTO_LIBRARY=${ssl.out}/lib/libcrypto.so" - "-DLIBRESSL_SSL_LIBRARY=${ssl.out}/lib/libssl.so" - "-DLIBRESSL_TLS_LIBRARY=${ssl.out}/lib/libtls.so" - ] ++ lib.optionals (lib.versionAtLeast version "7.1.0" && lib.versionOlder version "7.2.0") + ] ++ lib.optionals (lib.versionOlder version "7.2.0") [ # FIXME: why can't openssl be found automatically? "-DOPENSSL_USE_STATIC_LIBS=FALSE" "-DOPENSSL_CRYPTO_LIBRARY=${ssl.out}/lib/libcrypto.so" @@ -100,17 +90,9 @@ let # coherently install packages as most linux distros expect -- it's designed to build # packaged artifacts that are shipped in RPMs, etc. we need to add some extra code to # cmake upstream to fix this, and if we do, i think most of this can go away. - postInstall = lib.optionalString (lib.versionOlder version "7.0.0") '' - mv $out/fdbmonitor/fdbmonitor $out/bin/fdbmonitor && rm -rf $out/fdbmonitor - mkdir $out/libexec && ln -sfv $out/bin/fdbbackup $out/libexec/backup_agent - rm -rf $out/Library - rm -rf $out/lib/foundationdb/ - mkdir $out/include/foundationdb && \ - mv $out/include/*.h $out/include/*.options $out/include/foundationdb - '' + lib.optionalString (lib.versionAtLeast version "7.0.0") '' + postInstall = '' mv $out/sbin/fdbmonitor $out/bin/fdbmonitor mkdir $out/libexec && mv $out/usr/lib/foundationdb/backup_agent/backup_agent $out/libexec/backup_agent - '' + '' mv $out/sbin/fdbserver $out/bin/fdbserver rm -rf $out/etc $out/lib/foundationdb $out/lib/systemd $out/log $out/sbin $out/usr $out/var @@ -144,7 +126,7 @@ let homepage = "https://www.foundationdb.org"; license = licenses.asl20; platforms = [ "x86_64-linux" ] - ++ lib.optionals (lib.versionAtLeast version "7.1.0" && !(avxEnabled version)) [ "aarch64-linux" ]; + ++ lib.optionals (!(avxEnabled version)) [ "aarch64-linux" ]; maintainers = with maintainers; [ thoughtpolice lostnet ]; }; }; diff --git a/pkgs/servers/foundationdb/default.nix b/pkgs/servers/foundationdb/default.nix index 5dc25e011011..560b4ae892fc 100644 --- a/pkgs/servers/foundationdb/default.nix +++ b/pkgs/servers/foundationdb/default.nix @@ -1,93 +1,13 @@ -{ gcc6Stdenv, gccStdenv, llvmPackages -, lib, fetchurl, fetchpatch, fetchFromGitHub +{ gccStdenv, llvmPackages +, lib, fetchFromGitHub -, cmake, ninja, which, findutils, m4, gawk -, python2, python3, openjdk, mono, libressl, openssl, boost168, boost178 +, cmake, ninja, python3, openjdk8, mono, openssl, boost178 , pkg-config, msgpack, toml11 }@args: let - vsmakeBuild = import ./vsmake.nix args; cmakeBuild = import ./cmake.nix args; - - python3-six-patch = fetchpatch { - name = "update-python-six.patch"; - url = "https://github.com/apple/foundationdb/commit/4bd9efc4fc74917bc04b07a84eb065070ea7edb2.patch"; - sha256 = "030679lmc86f1wzqqyvxnwjyfrhh54pdql20ab3iifqpp9i5mi85"; - }; - - python3-print-patch = fetchpatch { - name = "import-for-python-print.patch"; - url = "https://github.com/apple/foundationdb/commit/ded17c6cd667f39699cf663c0e87fe01e996c153.patch"; - sha256 = "11y434w68cpk7shs2r22hyrpcrqi8vx02cw7v5x79qxvnmdxv2an"; - }; - - glibc230-fix = fetchpatch { - url = "https://github.com/Ma27/foundationdb/commit/e133cb974b9a9e4e1dc2d4ac15881d31225c0197.patch"; - sha256 = "1v9q2fyc73msigcykjnbmfig45zcrkrzcg87b0r6mxpnby8iryl1"; - }; - -in with builtins; { - - # Older versions use the bespoke 'vsmake' build system - # ------------------------------------------------------ - - foundationdb51 = vsmakeBuild { - version = "5.1.7"; - branch = "release-5.1"; - sha256 = "1rc472ih24f9s5g3xmnlp3v62w206ny0pvvw02bzpix2sdrpbp06"; - - patches = [ - ./patches/ldflags-5.1.patch - ./patches/fix-scm-version.patch - ./patches/gcc-fixes.patch - python3-six-patch - python3-print-patch - ]; - }; - - foundationdb52 = vsmakeBuild { - version = "5.2.8"; - branch = "release-5.2"; - sha256 = "1kbmmhk2m9486r4kyjlc7bb3wd50204i0p6dxcmvl6pbp1bs0wlb"; - - patches = [ - ./patches/ldflags-5.2.patch - ./patches/fix-scm-version.patch - ./patches/gcc-fixes.patch - python3-six-patch - python3-print-patch - ]; - }; - - foundationdb60 = vsmakeBuild { - version = "6.0.18"; - branch = "release-6.0"; - sha256 = "0q1mscailad0z7zf1nypv4g7gx3damfp45nf8nzyq47nsw5gz69p"; - - patches = [ - ./patches/ldflags-6.0.patch - ./patches/include-fixes-6.0.patch - ]; - }; - - # 6.1 and later versions should always use CMake - # ------------------------------------------------------ - - foundationdb61 = cmakeBuild { - version = "6.1.13"; - sha256 = "10vd694dcnh2pp91mri1m80kfbwjanhiy50c53c5ncqfa6pwvk00"; - boost = boost168; - ssl = libressl; - - patches = [ - ./patches/clang-libcxx.patch - ./patches/suppress-clang-warnings.patch - ./patches/stdexcept-6.1.patch - glibc230-fix - ]; - }; - +in { foundationdb71 = cmakeBuild { version = "7.1.30"; sha256 = "sha256-dAnAE1m2NZLHgP4QJvURBPcxArXvWWdhqEYwh3tU+tU"; diff --git a/pkgs/servers/foundationdb/patches/clang-libcxx.patch b/pkgs/servers/foundationdb/patches/clang-libcxx.patch deleted file mode 100644 index ebbacdf871ea..000000000000 --- a/pkgs/servers/foundationdb/patches/clang-libcxx.patch +++ /dev/null @@ -1,52 +0,0 @@ -commit 7ed4745a092a203f92fc37ab5894e92117db0c94 -Author: Austin Seipp -Date: Sat May 4 15:23:35 2019 -0500 - - flow: fix a build failure with Clang/libcxx on Linux - - 11bd7d7da introduced a hack on Linux to work around a missing symbol in - libstdc++'s _pic library on Ubuntu. Unfortunately, this causes the build - to fail when using Clang, as it doesn't believe this symbol is part of - its headers in c++11 mode. - - Unfortunately there's no good way to distinguish libcxx from libstdc++ - with the preprocessor, so we merely gate it by only checking for clang, - iff we are on Linux. - - With this change, Clang 8.x can build FoundationDB on Linux using libcxx - as the standard C++ library. - - Signed-off-by: Austin Seipp - -diff --git a/flow/Platform.cpp b/flow/Platform.cpp -index 3d3f1ac0..9f21dfd4 100644 ---- a/flow/Platform.cpp -+++ b/flow/Platform.cpp -@@ -2841,13 +2841,26 @@ void setupSlowTaskProfiler() { - #endif - } - --#ifdef __linux__ -+#if defined(__linux__) && !defined(__clang__) - // There's no good place to put this, so it's here. - // Ubuntu's packaging of libstdc++_pic offers different symbols than libstdc++. Go figure. - // Notably, it's missing a definition of std::istream::ignore(long), which causes compilation errors - // in the bindings. Thus, we provide weak versions of their definitions, so that if the - // linked-against libstdc++ is missing their definitions, we'll be able to use the provided - // ignore(long, int) version. -+// -+// Note that this hack is DISABLED when we use Clang. It is only needed when we statically link -+// to the _pic libraries, but only official FDB Linux binaries are built this way using GCC. If we -+// don't use the _pic libraries, then this hack is entirely unneeded -- likely the case when using -+// Clang on Linux. -+// -+// Doing this allows us to use LLVM's libc++ with Clang on Linux -- otherwise, providing -+// a weak symbol definition for an internal (non-public) class member fails (due to that member -+// being non-existant on libc++.) See upstream GitHub issue #1533 for more information. -+// -+// TODO FIXME: Obliterate this when the official build environment is upgraded beyond Ubuntu 14.04. -+// (This problem should be fixed in later LTS releases.) -+ - #include - namespace std { - typedef basic_istream> char_basic_istream; diff --git a/pkgs/servers/foundationdb/patches/fix-scm-version.patch b/pkgs/servers/foundationdb/patches/fix-scm-version.patch deleted file mode 100644 index 0e0df7ade82b..000000000000 --- a/pkgs/servers/foundationdb/patches/fix-scm-version.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff --git a/build/scver.mk b/build/scver.mk -index bdae8be..7539864 100644 ---- a/build/scver.mk -+++ b/build/scver.mk -@@ -98,33 +98,10 @@ endif - GITPRESENT := $(wildcard $(FDBDIR)/.git) - HGPRESENT := $(wildcard $(FDBDIR)/.hg) - --# Use Git, if not missing --ifneq ($(GITPRESENT),) -- SCVER := $(shell cd "$(FDBDIR)" && git --version 2>/dev/null) -- ifneq ($(SCVER),) -- VERSION_ID := $(shell cd "$(FDBDIR)" && git rev-parse --verify HEAD) -- SOURCE_CONTROL := GIT -- SCBRANCH := $(shell cd "$(FDBDIR)" && git rev-parse --abbrev-ref HEAD) -- else --$(error Missing git executable on $(PLATFORM) ) -- endif --# Otherwise, use Mercurial --else -- # Otherwise, use Mercurial, if not missing -- ifneq ($(HGPRESENT),) -- SCVER := $(shell cd "$(FDBDIR)" && hg --version 2>/dev/null) -- ifdef SCVER -- VERSION_ID := $(shell cd "$(FDBDIR)" && hg id -n) -- SOURCE_CONTROL := MERCURIAL -- SCBRANCH := $(shell cd "$(FDBDIR)" && hg branch) -- else --$(error Missing hg executable on $(PLATFORM)) -- endif -- else -- FDBFILES := (shell ls -la $(FDBDIR)) --$(error Missing source control information for source on $(PLATFORM) in directory: $(FDBDIR) with files: $(FDBFILES)) -- endif --endif -+# NixOS-specific non-VCS packaging, filled out by the nix build -+SOURCE_CONTROL := GIT -+VERSION_ID := @NIXOS_FDB_VERSION_ID@ -+SCBRANCH := @NIXOS_FDB_SCBRANCH@ - - # Set the RELEASE variable based on the KVRELEASE variable. - ifeq ($(KVRELEASE),1) diff --git a/pkgs/servers/foundationdb/patches/gcc-fixes.patch b/pkgs/servers/foundationdb/patches/gcc-fixes.patch deleted file mode 100644 index a5c77d463fb5..000000000000 --- a/pkgs/servers/foundationdb/patches/gcc-fixes.patch +++ /dev/null @@ -1,138 +0,0 @@ -diff --git a/fdbrpc/ContinuousSample.h b/fdbrpc/ContinuousSample.h -index 54ff1b109..577c228ae 100644 ---- a/fdbrpc/ContinuousSample.h -+++ b/fdbrpc/ContinuousSample.h -@@ -26,6 +26,7 @@ - #include "flow/IRandom.h" - #include - #include -+#include - - template - class ContinuousSample { -diff --git a/fdbrpc/Smoother.h b/fdbrpc/Smoother.h -index 3ed8e6e98..fb4694750 100644 ---- a/fdbrpc/Smoother.h -+++ b/fdbrpc/Smoother.h -@@ -23,6 +23,7 @@ - #pragma once - - #include "flow/flow.h" -+#include - - struct Smoother { - // Times (t) are expected to be nondecreasing -@@ -90,4 +91,4 @@ struct TimerSmoother { - double time, total, estimate; - }; - --#endif -\ No newline at end of file -+#endif -diff --git a/fdbrpc/libcoroutine/Coro.c b/fdbrpc/libcoroutine/Coro.c -index cbfdc8fde..9993cee44 100644 ---- a/fdbrpc/libcoroutine/Coro.c -+++ b/fdbrpc/libcoroutine/Coro.c -@@ -66,6 +66,8 @@ VALGRIND_STACK_DEREGISTER((coro)->valgrindStackId) - #define STACK_DEREGISTER(coro) - #endif - -+#pragma GCC diagnostic ignored "-Wreturn-local-addr" -+ - // Define outside - extern intptr_t g_stackYieldLimit; - -diff --git a/fdbserver/Knobs.cpp b/fdbserver/Knobs.cpp -index 819c513c6..acfbfe7db 100644 ---- a/fdbserver/Knobs.cpp -+++ b/fdbserver/Knobs.cpp -@@ -20,6 +20,7 @@ - - #include "Knobs.h" - #include "fdbrpc/Locality.h" -+#include - - ServerKnobs const* SERVER_KNOBS = new ServerKnobs(); - -diff --git a/flow/Knobs.cpp b/flow/Knobs.cpp -index b485a8495..82541d439 100644 ---- a/flow/Knobs.cpp -+++ b/flow/Knobs.cpp -@@ -20,6 +20,7 @@ - - #include "Knobs.h" - #include "flow/flow.h" -+#include - - FlowKnobs const* FLOW_KNOBS = new FlowKnobs(); - -diff --git a/flow/Platform.cpp b/flow/Platform.cpp -index 69dac889a..62bda9edb 100644 ---- a/flow/Platform.cpp -+++ b/flow/Platform.cpp -@@ -40,6 +40,7 @@ - #include - - #include -+#include - #include - #include - #include -@@ -623,7 +624,7 @@ void getDiskStatistics(std::string const& directory, uint64_t& currentIOs, uint6 - unsigned int minorId; - disk_stream >> majorId; - disk_stream >> minorId; -- if(majorId == (unsigned int) major(buf.st_dev) && minorId == (unsigned int) minor(buf.st_dev)) { -+ if(majorId == (unsigned int) gnu_dev_major(buf.st_dev) && minorId == (unsigned int) gnu_dev_minor(buf.st_dev)) { - std::string ignore; - uint64_t rd_ios; /* # of reads completed */ - // This is the total number of reads completed successfully. -diff --git a/flow/Profiler.actor.cpp b/flow/Profiler.actor.cpp -index 27af613e6..69f38c237 100644 ---- a/flow/Profiler.actor.cpp -+++ b/flow/Profiler.actor.cpp -@@ -35,8 +35,6 @@ - - extern volatile int profilingEnabled; - --static uint64_t gettid() { return syscall(__NR_gettid); } -- - struct SignalClosure { - void (* func)(int, siginfo_t*, void*, void*); - void *userdata; -diff --git a/flow/TDMetric.actor.h b/flow/TDMetric.actor.h -index 5421b83b5..711a96093 100755 ---- a/flow/TDMetric.actor.h -+++ b/flow/TDMetric.actor.h -@@ -36,6 +36,7 @@ - #include "CompressedInt.h" - #include - #include -+#include - - struct MetricNameRef { - MetricNameRef() {} -diff --git a/flow/flow.h b/flow/flow.h -index 0c220afae..f685fbc63 100644 ---- a/flow/flow.h -+++ b/flow/flow.h -@@ -248,19 +248,6 @@ public: - } - } - -- bool operator == (ErrorOr const& o) const { -- return error == o.error && (!present() || get() == o.get()); -- } -- bool operator != (ErrorOr const& o) const { -- return !(*this == o); -- } -- -- bool operator < (ErrorOr const& o) const { -- if (error != o.error) return error < o.error; -- if (!present()) return false; -- return get() < o.get(); -- } -- - bool isError() const { return error.code() != invalid_error_code; } - bool isError(int code) const { return error.code() == code; } - Error getError() const { ASSERT(isError()); return error; } diff --git a/pkgs/servers/foundationdb/patches/include-fixes-6.0.patch b/pkgs/servers/foundationdb/patches/include-fixes-6.0.patch deleted file mode 100644 index 93959def44f8..000000000000 --- a/pkgs/servers/foundationdb/patches/include-fixes-6.0.patch +++ /dev/null @@ -1,137 +0,0 @@ -diff --git a/fdbrpc/ContinuousSample.h b/fdbrpc/ContinuousSample.h -index 54ff1b109..577c228ae 100644 ---- a/fdbrpc/ContinuousSample.h -+++ b/fdbrpc/ContinuousSample.h -@@ -26,6 +26,7 @@ - #include "flow/IRandom.h" - #include - #include -+#include - - template - class ContinuousSample { -diff --git a/fdbrpc/Smoother.h b/fdbrpc/Smoother.h -index 3ed8e6e98..f3e4504b6 100644 ---- a/fdbrpc/Smoother.h -+++ b/fdbrpc/Smoother.h -@@ -23,6 +23,7 @@ - #pragma once - - #include "flow/flow.h" -+#include - - struct Smoother { - // Times (t) are expected to be nondecreasing -@@ -50,7 +51,7 @@ struct Smoother { - double elapsed = t - time; - if(elapsed) { - time = t; -- estimate += (total-estimate) * (1-exp( -elapsed/eFoldingTime )); -+ estimate += (total-estimate) * (1-std::exp( -elapsed/eFoldingTime )); - } - } - -@@ -83,11 +84,11 @@ struct TimerSmoother { - void update(double t) { - double elapsed = t - time; - time = t; -- estimate += (total-estimate) * (1-exp( -elapsed/eFoldingTime )); -+ estimate += (total-estimate) * (1-std::exp( -elapsed/eFoldingTime )); - } - - double eFoldingTime; - double time, total, estimate; - }; - --#endif -\ No newline at end of file -+#endif -diff --git a/fdbserver/Knobs.cpp b/fdbserver/Knobs.cpp -index a924bc905..0dc70e7ac 100644 ---- a/fdbserver/Knobs.cpp -+++ b/fdbserver/Knobs.cpp -@@ -20,6 +20,7 @@ - - #include "Knobs.h" - #include "fdbrpc/Locality.h" -+#include - - ServerKnobs const* SERVER_KNOBS = new ServerKnobs(); - -diff --git a/flow/Knobs.cpp b/flow/Knobs.cpp -index 2d706dddd..5dbe08861 100644 ---- a/flow/Knobs.cpp -+++ b/flow/Knobs.cpp -@@ -20,6 +20,7 @@ - - #include "Knobs.h" - #include "flow/flow.h" -+#include - - FlowKnobs const* FLOW_KNOBS = new FlowKnobs(); - -@@ -128,7 +129,7 @@ FlowKnobs::FlowKnobs(bool randomize, bool isSimulated) { - init( MAX_METRICS, 600 ); - init( MAX_METRIC_SIZE, 2500 ); - init( MAX_METRIC_LEVEL, 25 ); -- init( METRIC_LEVEL_DIVISOR, log(4) ); -+ init( METRIC_LEVEL_DIVISOR, std::log(4) ); - init( METRIC_LIMIT_START_QUEUE_SIZE, 10 ); // The queue size at which to start restricting logging by disabling levels - init( METRIC_LIMIT_RESPONSE_FACTOR, 10 ); // The additional queue size at which to disable logging of another level (higher == less restrictive) - -diff --git a/flow/Platform.cpp b/flow/Platform.cpp -index a754c8747..4d47fad32 100644 ---- a/flow/Platform.cpp -+++ b/flow/Platform.cpp -@@ -98,6 +98,8 @@ - #include - /* Needed for crash handler */ - #include -+/* Needed for major() and minor() with recent glibc */ -+#include - #endif - - #ifdef __APPLE__ -diff --git a/flow/Profiler.actor.cpp b/flow/Profiler.actor.cpp -index 4603dcb77..78eda7278 100644 ---- a/flow/Profiler.actor.cpp -+++ b/flow/Profiler.actor.cpp -@@ -35,8 +35,6 @@ - - extern volatile int profilingEnabled; - --static uint64_t gettid() { return syscall(__NR_gettid); } -- - struct SignalClosure { - void (* func)(int, siginfo_t*, void*, void*); - void *userdata; -diff --git a/flow/TDMetric.actor.h b/flow/TDMetric.actor.h -index 306352c39..fc63e12f9 100755 ---- a/flow/TDMetric.actor.h -+++ b/flow/TDMetric.actor.h -@@ -35,6 +35,7 @@ - #include "genericactors.actor.h" - #include "CompressedInt.h" - #include -+#include - #include - - struct MetricNameRef { -@@ -799,7 +800,7 @@ struct EventMetric : E, ReferenceCounted>, MetricUtilMAX_METRIC_LEVEL-1; - else -- l = std::min(FLOW_KNOBS->MAX_METRIC_LEVEL-1, (int64_t)(::log(1.0/x) / FLOW_KNOBS->METRIC_LEVEL_DIVISOR)); -+ l = std::min(FLOW_KNOBS->MAX_METRIC_LEVEL-1, (int64_t)(std::log(1.0/x) / FLOW_KNOBS->METRIC_LEVEL_DIVISOR)); - - if(!canLog(l)) - return 0; -@@ -1274,7 +1275,7 @@ public: - l = std::min( - FLOW_KNOBS->MAX_METRIC_LEVEL-1, - (int64_t)( -- log((toggleTime - tv.time) / x) / -+ std::log((toggleTime - tv.time) / x) / - FLOW_KNOBS->METRIC_LEVEL_DIVISOR - ) - ); diff --git a/pkgs/servers/foundationdb/patches/ldflags-5.1.patch b/pkgs/servers/foundationdb/patches/ldflags-5.1.patch deleted file mode 100644 index 4d523a7ecdd3..000000000000 --- a/pkgs/servers/foundationdb/patches/ldflags-5.1.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff --git a/FDBLibTLS/local.mk b/FDBLibTLS/local.mk -index 0b6eac8..b1891ca 100644 ---- a/FDBLibTLS/local.mk -+++ b/FDBLibTLS/local.mk -@@ -1,6 +1,5 @@ - FDBLibTLS_CFLAGS := -fPIC -I/usr/local/include -I$(BOOSTDIR) --FDBLibTLS_STATIC_LIBS := -ltls -lssl -lcrypto --FDBLibTLS_LDFLAGS := -L/usr/local/lib -static-libstdc++ -static-libgcc -lrt -+FDBLibTLS_LDFLAGS := -L/usr/local/lib -static-libstdc++ -static-libgcc -lrt -ltls -lssl -lcrypto - FDBLibTLS_LDFLAGS += -Wl,-soname,FDBLibTLS.so -Wl,--version-script=FDBLibTLS/FDBLibTLS.map - - # The plugin isn't a typical library, so it feels more sensible to have a copy -diff --git a/bindings/c/local.mk b/bindings/c/local.mk -index 44f0c31..7aea5a4 100644 ---- a/bindings/c/local.mk -+++ b/bindings/c/local.mk -@@ -29,8 +29,8 @@ fdb_c_tests_HEADERS := -Ibindings/c - CLEAN_TARGETS += fdb_c_tests_clean - - ifeq ($(PLATFORM),linux) -- fdb_c_LIBS += lib/libstdc++.a -lm -lpthread -lrt -ldl -- fdb_c_LDFLAGS += -Wl,--version-script=bindings/c/fdb_c.map -static-libgcc -Wl,-z,nodelete -+ fdb_c_LIBS += lib/libstdc++.a -+ fdb_c_LDFLAGS += -Wl,--version-script=bindings/c/fdb_c.map -static-libgcc -Wl,-z,nodelete -lm -lpthread -lrt -ldl - fdb_c_tests_LIBS += -lpthread - endif - -diff --git a/bindings/flow/tester/local.mk b/bindings/flow/tester/local.mk -index 2ef4fcb..6e59625 100644 ---- a/bindings/flow/tester/local.mk -+++ b/bindings/flow/tester/local.mk -@@ -35,8 +35,7 @@ _fdb_flow_tester_clean: - @rm -rf bindings/flow/bin - - ifeq ($(PLATFORM),linux) -- fdb_flow_tester_LIBS += -ldl -lpthread -lrt -- fdb_flow_tester_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdb_flow_tester_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - else ifeq ($(PLATFORM),osx) - fdb_flow_tester_LDFLAGS += -lc++ - endif -diff --git a/fdbbackup/local.mk b/fdbbackup/local.mk -index 033fe7d..865fc92 100644 ---- a/fdbbackup/local.mk -+++ b/fdbbackup/local.mk -@@ -25,8 +25,7 @@ fdbbackup_LDFLAGS := $(fdbrpc_LDFLAGS) - fdbbackup_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a - - ifeq ($(PLATFORM),linux) -- fdbbackup_LIBS += -ldl -lpthread -lrt -- fdbbackup_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdbbackup_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - - # GPerfTools profiler (uncomment to use) - # fdbbackup_CFLAGS += -I/opt/gperftools/include -DUSE_GPERFTOOLS=1 -diff --git a/fdbcli/local.mk b/fdbcli/local.mk -index 81a4a42..892c079 100644 ---- a/fdbcli/local.mk -+++ b/fdbcli/local.mk -@@ -22,14 +22,13 @@ - - fdbcli_CFLAGS := $(fdbclient_CFLAGS) - fdbcli_LDFLAGS := $(fdbrpc_LDFLAGS) --fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a -ldl -+fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a - fdbcli_STATIC_LIBS := - - fdbcli_GENERATED_SOURCES += versions.h - - ifeq ($(PLATFORM),linux) -- fdbcli_LDFLAGS += -static-libstdc++ -static-libgcc -- fdbcli_LIBS += -lpthread -lrt -+ fdbcli_LDFLAGS += -static-libstdc++ -static-libgcc -lpthread -lrt -ldl - else ifeq ($(PLATFORM),osx) - fdbcli_LDFLAGS += -lc++ - endif -diff --git a/fdbserver/local.mk b/fdbserver/local.mk -index 78cad1b..36f2c0f 100644 ---- a/fdbserver/local.mk -+++ b/fdbserver/local.mk -@@ -25,8 +25,7 @@ fdbserver_LDFLAGS := $(fdbrpc_LDFLAGS) - fdbserver_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a - - ifeq ($(PLATFORM),linux) -- fdbserver_LIBS += -ldl -lpthread -lrt -- fdbserver_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdbserver_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - - # GPerfTools profiler (uncomment to use) - # fdbserver_CFLAGS += -I/opt/gperftools/include -DUSE_GPERFTOOLS=1 diff --git a/pkgs/servers/foundationdb/patches/ldflags-5.2.patch b/pkgs/servers/foundationdb/patches/ldflags-5.2.patch deleted file mode 100644 index ee5911e495f8..000000000000 --- a/pkgs/servers/foundationdb/patches/ldflags-5.2.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff --git a/FDBLibTLS/local.mk b/FDBLibTLS/local.mk -index 5e6b9cfb..73f4e5f3 100644 ---- a/FDBLibTLS/local.mk -+++ b/FDBLibTLS/local.mk -@@ -1,6 +1,5 @@ - FDBLibTLS_CFLAGS := -fPIC -I/usr/local/include -I$(BOOSTDIR) -Ifdbrpc --FDBLibTLS_STATIC_LIBS := -ltls -lssl -lcrypto --FDBLibTLS_LDFLAGS := -L/usr/local/lib -static-libstdc++ -static-libgcc -lrt -+FDBLibTLS_LDFLAGS := -L/usr/local/lib -static-libstdc++ -static-libgcc -lrt -ltls -lssl -lcrypto - FDBLibTLS_LDFLAGS += -Wl,-soname,FDBLibTLS.so -Wl,--version-script=FDBLibTLS/FDBLibTLS.map - - # The plugin isn't a typical library, so it feels more sensible to have a copy -diff --git a/bindings/c/local.mk b/bindings/c/local.mk -index 44f0c31b..7aea5a4f 100644 ---- a/bindings/c/local.mk -+++ b/bindings/c/local.mk -@@ -29,8 +29,8 @@ fdb_c_tests_HEADERS := -Ibindings/c - CLEAN_TARGETS += fdb_c_tests_clean - - ifeq ($(PLATFORM),linux) -- fdb_c_LIBS += lib/libstdc++.a -lm -lpthread -lrt -ldl -- fdb_c_LDFLAGS += -Wl,--version-script=bindings/c/fdb_c.map -static-libgcc -Wl,-z,nodelete -+ fdb_c_LIBS += lib/libstdc++.a -+ fdb_c_LDFLAGS += -Wl,--version-script=bindings/c/fdb_c.map -static-libgcc -Wl,-z,nodelete -lm -lpthread -lrt -ldl - fdb_c_tests_LIBS += -lpthread - endif - -diff --git a/bindings/flow/tester/local.mk b/bindings/flow/tester/local.mk -index 2ef4fcb7..6e59625c 100644 ---- a/bindings/flow/tester/local.mk -+++ b/bindings/flow/tester/local.mk -@@ -35,8 +35,7 @@ _fdb_flow_tester_clean: - @rm -rf bindings/flow/bin - - ifeq ($(PLATFORM),linux) -- fdb_flow_tester_LIBS += -ldl -lpthread -lrt -- fdb_flow_tester_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdb_flow_tester_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - else ifeq ($(PLATFORM),osx) - fdb_flow_tester_LDFLAGS += -lc++ - endif -diff --git a/fdbbackup/local.mk b/fdbbackup/local.mk -index 033fe7d4..865fc923 100644 ---- a/fdbbackup/local.mk -+++ b/fdbbackup/local.mk -@@ -25,8 +25,7 @@ fdbbackup_LDFLAGS := $(fdbrpc_LDFLAGS) - fdbbackup_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a - - ifeq ($(PLATFORM),linux) -- fdbbackup_LIBS += -ldl -lpthread -lrt -- fdbbackup_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdbbackup_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - - # GPerfTools profiler (uncomment to use) - # fdbbackup_CFLAGS += -I/opt/gperftools/include -DUSE_GPERFTOOLS=1 -diff --git a/fdbcli/local.mk b/fdbcli/local.mk -index 81a4a42e..892c079c 100644 ---- a/fdbcli/local.mk -+++ b/fdbcli/local.mk -@@ -22,14 +22,13 @@ - - fdbcli_CFLAGS := $(fdbclient_CFLAGS) - fdbcli_LDFLAGS := $(fdbrpc_LDFLAGS) --fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a -ldl -+fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a - fdbcli_STATIC_LIBS := - - fdbcli_GENERATED_SOURCES += versions.h - - ifeq ($(PLATFORM),linux) -- fdbcli_LDFLAGS += -static-libstdc++ -static-libgcc -- fdbcli_LIBS += -lpthread -lrt -+ fdbcli_LDFLAGS += -static-libstdc++ -static-libgcc -lpthread -lrt -ldl - else ifeq ($(PLATFORM),osx) - fdbcli_LDFLAGS += -lc++ - endif -diff --git a/fdbserver/local.mk b/fdbserver/local.mk -index 78cad1bf..36f2c0f7 100644 ---- a/fdbserver/local.mk -+++ b/fdbserver/local.mk -@@ -25,8 +25,7 @@ fdbserver_LDFLAGS := $(fdbrpc_LDFLAGS) - fdbserver_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a - - ifeq ($(PLATFORM),linux) -- fdbserver_LIBS += -ldl -lpthread -lrt -- fdbserver_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdbserver_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - - # GPerfTools profiler (uncomment to use) - # fdbserver_CFLAGS += -I/opt/gperftools/include -DUSE_GPERFTOOLS=1 diff --git a/pkgs/servers/foundationdb/patches/ldflags-6.0.patch b/pkgs/servers/foundationdb/patches/ldflags-6.0.patch deleted file mode 100644 index 1fa17a9615aa..000000000000 --- a/pkgs/servers/foundationdb/patches/ldflags-6.0.patch +++ /dev/null @@ -1,78 +0,0 @@ -diff --git a/bindings/c/local.mk b/bindings/c/local.mk -index c861a29c..ff886e93 100644 ---- a/bindings/c/local.mk -+++ b/bindings/c/local.mk -@@ -30,8 +30,8 @@ fdb_c_tests_HEADERS := -Ibindings/c - CLEAN_TARGETS += fdb_c_tests_clean - - ifeq ($(PLATFORM),linux) -- fdb_c_LIBS += lib/libstdc++.a -lm -lpthread -lrt -ldl -- fdb_c_LDFLAGS += -Wl,--version-script=bindings/c/fdb_c.map -static-libgcc -Wl,-z,nodelete -+ fdb_c_LIBS += lib/libstdc++.a -+ fdb_c_LDFLAGS += -Wl,--version-script=bindings/c/fdb_c.map -static-libgcc -Wl,-z,nodelete -lm -lpthread -lrt -ldl - fdb_c_tests_LIBS += -lpthread - endif - -diff --git a/bindings/flow/tester/local.mk b/bindings/flow/tester/local.mk -index 2ef4fcb7..6e59625c 100644 ---- a/bindings/flow/tester/local.mk -+++ b/bindings/flow/tester/local.mk -@@ -35,8 +35,7 @@ _fdb_flow_tester_clean: - @rm -rf bindings/flow/bin - - ifeq ($(PLATFORM),linux) -- fdb_flow_tester_LIBS += -ldl -lpthread -lrt -- fdb_flow_tester_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdb_flow_tester_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - else ifeq ($(PLATFORM),osx) - fdb_flow_tester_LDFLAGS += -lc++ - endif -diff --git a/fdbbackup/local.mk b/fdbbackup/local.mk -index ca5dbab6..012f0130 100644 ---- a/fdbbackup/local.mk -+++ b/fdbbackup/local.mk -@@ -26,8 +26,7 @@ fdbbackup_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a $(FDB_TLS_LIB - fdbbackup_STATIC_LIBS := $(TLS_LIBS) - - ifeq ($(PLATFORM),linux) -- fdbbackup_LIBS += -ldl -lpthread -lrt -- fdbbackup_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdbbackup_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - - # GPerfTools profiler (uncomment to use) - # fdbbackup_CFLAGS += -I/opt/gperftools/include -DUSE_GPERFTOOLS=1 -diff --git a/fdbcli/local.mk b/fdbcli/local.mk -index fd738876..3af026b9 100644 ---- a/fdbcli/local.mk -+++ b/fdbcli/local.mk -@@ -22,14 +22,13 @@ - - fdbcli_CFLAGS := $(fdbclient_CFLAGS) - fdbcli_LDFLAGS := $(fdbrpc_LDFLAGS) --fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a -ldl $(FDB_TLS_LIB) -+fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a $(FDB_TLS_LIB) - fdbcli_STATIC_LIBS := $(TLS_LIBS) - - fdbcli_GENERATED_SOURCES += versions.h - - ifeq ($(PLATFORM),linux) -- fdbcli_LDFLAGS += -static-libstdc++ -static-libgcc -- fdbcli_LIBS += -lpthread -lrt -+ fdbcli_LDFLAGS += -static-libstdc++ -static-libgcc -lpthread -lrt -ldl - else ifeq ($(PLATFORM),osx) - fdbcli_LDFLAGS += -lc++ - endif -diff --git a/fdbserver/local.mk b/fdbserver/local.mk -index 690916d0..475abbaf 100644 ---- a/fdbserver/local.mk -+++ b/fdbserver/local.mk -@@ -26,8 +26,7 @@ fdbserver_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a $(FDB_TLS_LIB - fdbserver_STATIC_LIBS := $(TLS_LIBS) - - ifeq ($(PLATFORM),linux) -- fdbserver_LIBS += -ldl -lpthread -lrt -- fdbserver_LDFLAGS += -static-libstdc++ -static-libgcc -+ fdbserver_LDFLAGS += -static-libstdc++ -static-libgcc -ldl -lpthread -lrt - - # GPerfTools profiler (uncomment to use) - # fdbserver_CFLAGS += -I/opt/gperftools/include -DUSE_GPERFTOOLS=1 diff --git a/pkgs/servers/foundationdb/patches/stdexcept-6.1.patch b/pkgs/servers/foundationdb/patches/stdexcept-6.1.patch deleted file mode 100644 index 9ebe0c6c0fb5..000000000000 --- a/pkgs/servers/foundationdb/patches/stdexcept-6.1.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/FDBLibTLS/FDBLibTLSPolicy.cpp b/FDBLibTLS/FDBLibTLSPolicy.cpp -index 728ff871d..46e1dd289 100644 ---- a/FDBLibTLS/FDBLibTLSPolicy.cpp -+++ b/FDBLibTLS/FDBLibTLSPolicy.cpp -@@ -31,6 +31,7 @@ - #include - #include - #include -+#include - #include - #include - -diff --git a/FDBLibTLS/FDBLibTLSVerify.cpp b/FDBLibTLS/FDBLibTLSVerify.cpp -index 594389916..1c8b9b50d 100644 ---- a/FDBLibTLS/FDBLibTLSVerify.cpp -+++ b/FDBLibTLS/FDBLibTLSVerify.cpp -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - static int hexValue(char c) { - static char const digits[] = "0123456789ABCDEF"; diff --git a/pkgs/servers/foundationdb/patches/suppress-clang-warnings.patch b/pkgs/servers/foundationdb/patches/suppress-clang-warnings.patch deleted file mode 100644 index 9d1ae992efc9..000000000000 --- a/pkgs/servers/foundationdb/patches/suppress-clang-warnings.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit 8076537a52bb026941f13f5542395aac69ef0825 -Author: Austin Seipp -Date: Sat May 4 17:34:51 2019 -0500 - - cmake: add workarounds for NixOS-specific deficiencies [NixOS] - - The NixOS debug builder hook adds '-Wa,--compress-debug-sections' to the - link flags (it actually adds it to the compiler flags, but the compiler - is used for linking, so...). This makes the compiler angry when -Werror - is passed, because it's unused at link-time (-Wa applies to the - assembler). Suppress this warning with -Wno-unused-command-line-argument - - NB: we *could* use -Wno-error=unused-command-line-argument, but that - still results in warnings anyway, just not fatal ones. We'd like to - remove them all for the sake of the build output. - - Signed-off-by: Austin Seipp - -diff --git a/cmake/ConfigureCompiler.cmake b/cmake/ConfigureCompiler.cmake -index 03af9c10..7d059375 100644 ---- a/cmake/ConfigureCompiler.cmake -+++ b/cmake/ConfigureCompiler.cmake -@@ -119,6 +119,11 @@ else() - else() - add_compile_options(-Werror) - endif() -+ if (CLANG) -+ # aseipp: NixOS hack -+ add_compile_options(-Wno-unused-command-line-argument) -+ add_link_options(-Wno-unused-command-line-argument) -+ endif() - add_compile_options($<$:-Wno-pragmas>) - add_compile_options(-Wno-error=format - -Wunused-variable diff --git a/pkgs/servers/foundationdb/test-list.txt b/pkgs/servers/foundationdb/test-list.txt deleted file mode 100644 index 3e9ce1428ada..000000000000 --- a/pkgs/servers/foundationdb/test-list.txt +++ /dev/null @@ -1,80 +0,0 @@ -fast/AtomicBackupCorrectness.txt -fast/AtomicBackupToDBCorrectness.txt -fast/AtomicOps.txt -fast/AtomicOpsApiCorrectness.txt -fast/BackupCorrectness.txt -fast/BackupCorrectnessClean.txt -fast/BackupToDBCorrectness.txt -fast/BackupToDBCorrectnessClean.txt -fast/CloggedSideband.txt -fast/ConstrainedRandomSelector.txt -fast/CycleAndLock.txt -fast/CycleTest.txt -fast/FuzzApiCorrectness.txt -fast/FuzzApiCorrectnessClean.txt -fast/IncrementTest.txt -fast/InventoryTestAlmostReadOnly.txt -fast/InventoryTestSomeWrites.txt -fast/KillRegionCycle.txt -fast/LongStackWriteDuringRead.txt -fast/LowLatency.txt -fast/MemoryLifetime.txt -fast/MoveKeysCycle.txt -fast/RandomSelector.txt -fast/RandomUnitTests.txt -fast/SelectorCorrectness.txt -fast/Sideband.txt -fast/SidebandWithStatus.txt -fast/SwizzledRollbackSideband.txt -fast/SystemRebootTestCycle.txt -fast/TaskBucketCorrectness.txt -fast/TimeKeeperCorrectness.txt -fast/Unreadable.txt -fast/VersionStamp.txt -fast/Watches.txt -fast/WriteDuringRead.txt -fast/WriteDuringReadClean.txt -rare/CheckRelocation.txt -rare/ClogUnclog.txt -rare/CloggedCycleWithKills.txt -rare/ConflictRangeCheck.txt -rare/ConflictRangeRYOWCheck.txt -rare/CycleRollbackClogged.txt -rare/CycleWithKills.txt -rare/FuzzTest.txt -rare/InventoryTestHeavyWrites.txt -rare/LargeApiCorrectness.txt -rare/LargeApiCorrectnessStatus.txt -rare/RYWDisable.txt -rare/RandomReadWriteTest.txt -rare/SwizzledLargeApiCorrectness.txt -slow/ApiCorrectness.txt -slow/ApiCorrectnessAtomicRestore.txt -slow/ApiCorrectnessSwitchover.txt -slow/ClogWithRollbacks.txt -slow/CloggedCycleTest.txt -slow/CloggedStorefront.txt -slow/CommitBug.txt -slow/ConfigureTest.txt -slow/CycleRollbackPlain.txt -slow/DDBalanceAndRemove.txt -slow/DDBalanceAndRemoveStatus.txt -slow/FastTriggeredWatches.txt -slow/LowLatencyWithFailures.txt -slow/MoveKeysClean.txt -slow/MoveKeysSideband.txt -slow/RyowCorrectness.txt -slow/Serializability.txt -slow/SharedBackupCorrectness.txt -slow/SharedBackupToDBCorrectness.txt -slow/StorefrontTest.txt -slow/SwizzledApiCorrectness.txt -slow/SwizzledCycleTest.txt -slow/SwizzledDdBalance.txt -slow/SwizzledRollbackTimeLapse.txt -slow/SwizzledRollbackTimeLapseIncrement.txt -slow/VersionStampBackupToDB.txt -slow/VersionStampSwitchover.txt -slow/WriteDuringReadAtomicRestore.txt -slow/WriteDuringReadSwitchover.txt -slow/ddbalance.txt diff --git a/pkgs/servers/foundationdb/vsmake.nix b/pkgs/servers/foundationdb/vsmake.nix deleted file mode 100644 index 21ee2e4f8485..000000000000 --- a/pkgs/servers/foundationdb/vsmake.nix +++ /dev/null @@ -1,150 +0,0 @@ -# This builder is for FoundationDB's original, somewhat strange visual studio + -# make build system. In FoundationDB 6.1 and later, there's a new CMake system -# (which will eventually become the default version.) -{ gcc6Stdenv, lib, fetchurl, fetchFromGitHub - -, which, m4 -, python2, openjdk, mono, libressl -, ... -}: - -let - # hysterical raisins dictate a version of boost this old. however, - # we luckily do not need to build anything, we just need the header - # files. - boost152 = gcc6Stdenv.mkDerivation { - name = "boost-headers-1.52.0"; - - src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_52_0.tar.bz2"; - sha256 = "14mc7gsnnahdjaxbbslzk79rc0d12h1i681cd3srdwr3fzynlar2"; - }; - - dontConfigure = true; - dontBuild = true; - installPhase = "mkdir -p $out/include && cp -R boost $out/include/"; - }; - - makeFdb = - { version - , branch - , sha256 - - # the revision can be inferred from the fdb tagging policy - , rev ? "refs/tags/${version}" - - # in theory newer versions of fdb support newer boost versions, but they - # don't :( maybe one day - , boost ? boost152 - - # if an release is unofficial/a prerelease, then make sure this is set - , officialRelease ? true - - , patches ? [] - }: gcc6Stdenv.mkDerivation { - pname = "foundationdb"; - inherit version; - - src = fetchFromGitHub { - owner = "apple"; - repo = "foundationdb"; - inherit rev sha256; - }; - - nativeBuildInputs = [ python2 openjdk which m4 mono ]; - buildInputs = [ libressl boost ]; - - inherit patches; - postPatch = '' - # note: this does not do anything for 6.0+ - substituteInPlace ./build/scver.mk \ - --subst-var-by NIXOS_FDB_VERSION_ID "${rev}" \ - --subst-var-by NIXOS_FDB_SCBRANCH "${branch}" - - substituteInPlace ./Makefile \ - --replace 'shell which ccache' 'shell true' \ - --replace -Werror "" - - substituteInPlace ./Makefile \ - --replace libstdc++_pic libstdc++ - - substituteInPlace ./build/link-validate.sh \ - --replace 'exit 1' '#exit 1' - - patchShebangs . - '' + lib.optionalString (lib.versionAtLeast version "6.0") '' - substituteInPlace ./Makefile \ - --replace 'TLS_LIBS +=' '#TLS_LIBS +=' \ - --replace 'LDFLAGS :=' 'LDFLAGS := -ltls -lssl -lcrypto' - ''; - - separateDebugInfo = true; - enableParallelBuilding = true; - - makeFlags = [ "all" "fdb_java" "fdb_python" ] - # Don't compile FDBLibTLS if we don't need it in 6.0 or later; - # it gets statically linked in - ++ lib.optionals (lib.versionOlder version "6.0") [ "fdb_c" ] - # Needed environment overrides - ++ [ "KVRELEASE=1" - "NOSTRIP=1" - ] ++ lib.optionals officialRelease [ "RELEASE=true" ]; - - # on 6.0 and later, we can specify all this information manually - configurePhase = lib.optionalString (lib.versionAtLeast version "6.0") '' - export SOURCE_CONTROL=GIT - export SCBRANCH="${branch}" - export VERSION_ID="${rev}" - ''; - - installPhase = '' - mkdir -vp $out/{bin,libexec/plugins} $lib/{lib,share/java} $dev/include/foundationdb - - '' + lib.optionalString (lib.versionOlder version "6.0") '' - # we only copy the TLS library on < 6.0, since it's compiled-in otherwise - cp -v ./lib/libFDBLibTLS.so $out/libexec/plugins/FDBLibTLS.so - '' + '' - - # C API - cp -v ./lib/libfdb_c.so $lib/lib - cp -v ./bindings/c/foundationdb/fdb_c.h $dev/include/foundationdb - cp -v ./bindings/c/foundationdb/fdb_c_options.g.h $dev/include/foundationdb - cp -v ./fdbclient/vexillographer/fdb.options $dev/include/foundationdb - - # java - cp -v ./bindings/java/foundationdb-client.jar $lib/share/java/fdb-java.jar - - # python - cp LICENSE ./bindings/python - substitute ./bindings/python/setup.py.in ./bindings/python/setup.py \ - --replace 'VERSION' "${version}" - rm -f ./bindings/python/setup.py.in - rm -f ./bindings/python/fdb/*.pth # remove useless files - rm -f ./bindings/python/*.rst ./bindings/python/*.mk - - cp -R ./bindings/python/ tmp-pythonsrc/ - tar -zcf $pythonsrc --transform s/tmp-pythonsrc/python-foundationdb/ ./tmp-pythonsrc/ - - # binaries - for x in fdbbackup fdbcli fdbserver fdbmonitor; do - cp -v "./bin/$x" $out/bin; - done - - ln -sfv $out/bin/fdbbackup $out/bin/dr_agent - ln -sfv $out/bin/fdbbackup $out/bin/fdbrestore - ln -sfv $out/bin/fdbbackup $out/bin/fdbdr - - ln -sfv $out/bin/fdbbackup $out/libexec/backup_agent - ''; - - outputs = [ "out" "lib" "dev" "pythonsrc" ]; - - meta = with lib; { - description = "Open source, distributed, transactional key-value store"; - homepage = "https://www.foundationdb.org"; - license = licenses.asl20; - platforms = [ "x86_64-linux" ]; - maintainers = with maintainers; [ thoughtpolice ]; - }; - }; -in makeFdb diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index cbdaeb1b0b40..800dfa442639 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -524,6 +524,10 @@ mapAliases ({ ''; foomatic_filters = throw "'foomatic_filters' has been renamed to/replaced by 'foomatic-filters'"; # Converted to throw 2022-02-22 + foundationdb51 = throw "foundationdb51 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 + foundationdb52 = throw "foundationdb52 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 + foundationdb60 = throw "foundationdb60 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 + foundationdb61 = throw "foundationdb61 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 foxitreader = throw "foxitreader has been removed because it had vulnerabilities and was unmaintained"; # added 2023-02-20 fscryptctl-experimental = throw "The package fscryptctl-experimental has been removed. Please switch to fscryptctl"; # Added 2021-11-07 fsharp41 = throw "fsharp41 has been removed, please use dotnet-sdk_5 or later"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 349550028226..ead3624f895b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7808,16 +7808,9 @@ with pkgs; fusuma = callPackage ../tools/inputmethods/fusuma { }; - fdbPackages = dontRecurseIntoAttrs (callPackage ../servers/foundationdb { - openjdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 - libressl = libressl_3_4; - }); + fdbPackages = dontRecurseIntoAttrs (callPackage ../servers/foundationdb { }); inherit (fdbPackages) - foundationdb51 - foundationdb52 - foundationdb60 - foundationdb61 foundationdb71 ; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 5e531b9544e7..f117211f1c2d 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -114,6 +114,10 @@ mapAliases ({ flask_testing = flask-testing; # added 2022-04-25 flask_wtf = flask-wtf; # added 2022-05-24 FormEncode = formencode; # added 2023-02-19 + foundationdb51 = throw "foundationdb51 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 + foundationdb52 = throw "foundationdb52 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 + foundationdb60 = throw "foundationdb60 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 + foundationdb61 = throw "foundationdb61 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06 functorch = throw "functorch is now part of the torch package and has therefore been removed. See https://github.com/pytorch/functorch/releases/tag/v1.13.0 for more info."; # added 2022-12-01 garages-amsterdam = throw "garages-amsterdam has been renamed odp-amsterdam."; # added 2023-01-04 garminconnect-ha = garminconnect; # added 2022-02-05 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 39e7f1158fc9..5d6026ce290c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3824,10 +3824,6 @@ self: super: with self; { formulaic = callPackage ../development/python-modules/formulaic { }; - foundationdb51 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb51; }; - foundationdb52 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb52; }; - foundationdb60 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb60; }; - foundationdb61 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb61; }; foundationdb71 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb71; }; fountains = callPackage ../development/python-modules/fountains { };