From 04aca3f5874fc8e6bc70a2c992c81879115cabc0 Mon Sep 17 00:00:00 2001
From: sohalt <sohalt@sohalt.net>
Date: Wed, 30 Sep 2020 02:41:58 +0200
Subject: [PATCH 1/3] folly: 2019.11.11.00 -> 2020.09.28.00, fix build

---
 pkgs/development/libraries/folly/default.nix | 45 +++++++++++++++++---
 1 file changed, 38 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/folly/default.nix b/pkgs/development/libraries/folly/default.nix
index be648cf5a8451c..c4349a75977cc1 100644
--- a/pkgs/development/libraries/folly/default.nix
+++ b/pkgs/development/libraries/folly/default.nix
@@ -1,18 +1,37 @@
-{ stdenv, fetchFromGitHub, cmake, boost, libevent, double-conversion, glog
-, gflags, libiberty, openssl }:
+{ stdenv
+, fetchFromGitHub
+, cmake
+, boost
+, libevent
+, double-conversion
+, glog
+, gflags
+, libiberty
+, lz4
+, lzma
+, zlib
+, jemalloc
+, openssl
+, pkg-config
+, libunwind
+, fmt
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (rec {
   pname = "folly";
-  version = "2019.11.11.00";
+  version = "2020.09.28.00";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "folly";
     rev = "v${version}";
-    sha256 = "1sgv7sdalbs7zhz3zcc95gn2h8j2xjf7hkw2c618zc3pdn6aa58w";
+    sha256 = "1ry2nqfavcbz0jvsqw71105gbxm5hpmdi2k1w155m957jrv3n5vg";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
 
   # See CMake/folly-deps.cmake in the Folly source tree.
   buildInputs = [
@@ -23,8 +42,17 @@ stdenv.mkDerivation rec {
     libevent
     libiberty
     openssl
+    lz4
+    lzma
+    zlib
+    jemalloc
+    libunwind
+    fmt
   ];
 
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ]
+               ++ stdenv.lib.optionals stdenv.cc.isClang [ "-DCOMPILER_HAS_F_ALIGNED_NEW=OFF" ];
+
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
@@ -35,4 +63,7 @@ stdenv.mkDerivation rec {
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
     maintainers = with maintainers; [ abbradar pierreis ];
   };
-}
+} // stdenv.lib.optionalAttrs stdenv.isDarwin {
+  CXXFLAGS = "-faligned-allocation";
+  LDFLAGS = "-ljemalloc";
+})

From db14c1a7860966b40cdb11cd4d851ec87f8e607c Mon Sep 17 00:00:00 2001
From: Dmitry Kalinkin <dmitry.kalinkin@gmail.com>
Date: Sun, 20 Dec 2020 16:32:52 -0500
Subject: [PATCH 2/3] folly: remove -faligned-new workarounds

---
 pkgs/development/libraries/folly/default.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/folly/default.nix b/pkgs/development/libraries/folly/default.nix
index c4349a75977cc1..bc5d0eee40ea7b 100644
--- a/pkgs/development/libraries/folly/default.nix
+++ b/pkgs/development/libraries/folly/default.nix
@@ -50,8 +50,7 @@ stdenv.mkDerivation (rec {
     fmt
   ];
 
-  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ]
-               ++ stdenv.lib.optionals stdenv.cc.isClang [ "-DCOMPILER_HAS_F_ALIGNED_NEW=OFF" ];
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
 
   enableParallelBuilding = true;
 
@@ -64,6 +63,5 @@ stdenv.mkDerivation (rec {
     maintainers = with maintainers; [ abbradar pierreis ];
   };
 } // stdenv.lib.optionalAttrs stdenv.isDarwin {
-  CXXFLAGS = "-faligned-allocation";
   LDFLAGS = "-ljemalloc";
 })

From 519648e13694d39e2d09b146ce5a793173094c70 Mon Sep 17 00:00:00 2001
From: Dmitry Kalinkin <dmitry.kalinkin@gmail.com>
Date: Mon, 21 Dec 2020 10:53:39 -0500
Subject: [PATCH 3/3] folly: remove redundant enableParallelBuilding

---
 pkgs/development/libraries/folly/default.nix | 2 --
 1 file changed, 2 deletions(-)

diff --git a/pkgs/development/libraries/folly/default.nix b/pkgs/development/libraries/folly/default.nix
index bc5d0eee40ea7b..62f73a361916d9 100644
--- a/pkgs/development/libraries/folly/default.nix
+++ b/pkgs/development/libraries/folly/default.nix
@@ -52,8 +52,6 @@ stdenv.mkDerivation (rec {
 
   cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
 
-  enableParallelBuilding = true;
-
   meta = with stdenv.lib; {
     description = "An open-source C++ library developed and used at Facebook";
     homepage = "https://github.com/facebook/folly";