From 2e34bfb45ab7d074009653a32daf8aa69cc9f4e2 Mon Sep 17 00:00:00 2001 From: Hunter Jones Date: Thu, 22 Apr 2021 14:38:30 -0500 Subject: [PATCH 1/3] boost: generalize version numbers --- pkgs/development/libraries/boost/1.55.nix | 4 ++-- pkgs/development/libraries/boost/1.59.nix | 4 ++-- pkgs/development/libraries/boost/1.60.nix | 4 ++-- pkgs/development/libraries/boost/1.65.nix | 4 ++-- pkgs/development/libraries/boost/1.66.nix | 4 ++-- pkgs/development/libraries/boost/1.68.nix | 4 ++-- pkgs/development/libraries/boost/1.69.nix | 4 ++-- pkgs/development/libraries/boost/1.70.nix | 4 ++-- pkgs/development/libraries/boost/1.72.nix | 5 ++--- pkgs/development/libraries/boost/1.73.nix | 5 ++--- pkgs/development/libraries/boost/1.74.nix | 4 ++-- pkgs/development/libraries/boost/1.75.nix | 4 ++-- 12 files changed, 24 insertions(+), 26 deletions(-) diff --git a/pkgs/development/libraries/boost/1.55.nix b/pkgs/development/libraries/boost/1.55.nix index bcb452ea4f86..b01f62e9dea6 100644 --- a/pkgs/development/libraries/boost/1.55.nix +++ b/pkgs/development/libraries/boost/1.55.nix @@ -1,12 +1,12 @@ { callPackage, fetchurl, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.55.0"; patches = [ ./clang-math.patch ./clang-math-2.patch ./gcc-5.patch ]; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_55_0.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; sha256 = "0lkv5dzssbl5fmh2nkaszi8x9qbj80pr4acf9i26sj3rvlih1w7z"; }; }) diff --git a/pkgs/development/libraries/boost/1.59.nix b/pkgs/development/libraries/boost/1.59.nix index 0f6e9a35b6e0..88e584f5e415 100644 --- a/pkgs/development/libraries/boost/1.59.nix +++ b/pkgs/development/libraries/boost/1.59.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.59.0"; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_59_0.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; sha256 = "1jj1aai5rdmd72g90a3pd8sw9vi32zad46xv5av8fhnr48ir6ykj"; }; }) diff --git a/pkgs/development/libraries/boost/1.60.nix b/pkgs/development/libraries/boost/1.60.nix index 4bc7a1cc7327..0cf81a060293 100644 --- a/pkgs/development/libraries/boost/1.60.nix +++ b/pkgs/development/libraries/boost/1.60.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.60.0"; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_60_0.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; sha256 = "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"; }; diff --git a/pkgs/development/libraries/boost/1.65.nix b/pkgs/development/libraries/boost/1.65.nix index 764f38d5b747..6238a88424ff 100644 --- a/pkgs/development/libraries/boost/1.65.nix +++ b/pkgs/development/libraries/boost/1.65.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.65.1"; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_65_1.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; # SHA256 from http://www.boost.org/users/history/version_1_65_1.html sha256 = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81"; }; diff --git a/pkgs/development/libraries/boost/1.66.nix b/pkgs/development/libraries/boost/1.66.nix index af61aa51944c..5bc3dcbff5ac 100644 --- a/pkgs/development/libraries/boost/1.66.nix +++ b/pkgs/development/libraries/boost/1.66.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.66.0"; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_66_0.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; # SHA256 from http://www.boost.org/users/history/version_1_66_0.html sha256 = "5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9"; }; diff --git a/pkgs/development/libraries/boost/1.68.nix b/pkgs/development/libraries/boost/1.68.nix index 920dd9a300b1..7fb85d7239f2 100644 --- a/pkgs/development/libraries/boost/1.68.nix +++ b/pkgs/development/libraries/boost/1.68.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, fetchpatch, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.68.0"; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_68_0.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; # SHA256 from http://www.boost.org/users/history/version_1_68_0.html sha256 = "7f6130bc3cf65f56a618888ce9d5ea704fa10b462be126ad053e80e553d6d8b7"; }; diff --git a/pkgs/development/libraries/boost/1.69.nix b/pkgs/development/libraries/boost/1.69.nix index 7292356ecd1c..d934e3267fcb 100644 --- a/pkgs/development/libraries/boost/1.69.nix +++ b/pkgs/development/libraries/boost/1.69.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, fetchpatch, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.69.0"; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_69_0.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; # SHA256 from http://www.boost.org/users/history/version_1_69_0.html sha256 = "8f32d4617390d1c2d16f26a27ab60d97807b35440d45891fa340fc2648b04406"; }; diff --git a/pkgs/development/libraries/boost/1.70.nix b/pkgs/development/libraries/boost/1.70.nix index 3b898cfc0ae5..bc70797acda8 100644 --- a/pkgs/development/libraries/boost/1.70.nix +++ b/pkgs/development/libraries/boost/1.70.nix @@ -1,10 +1,10 @@ { callPackage, fetchurl, fetchpatch, ... } @ args: -callPackage ./generic.nix (args // { +callPackage ./generic.nix (args // rec { version = "1.70.0"; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_70_0.tar.bz2"; + url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"; # SHA256 from http://www.boost.org/users/history/version_1_70_0.html sha256 = "430ae8354789de4fd19ee52f3b1f739e1fba576f0aded0897c3c2bc00fb38778"; }; diff --git a/pkgs/development/libraries/boost/1.72.nix b/pkgs/development/libraries/boost/1.72.nix index 97dad9b6c8a8..bb2fccdfaf78 100644 --- a/pkgs/development/libraries/boost/1.72.nix +++ b/pkgs/development/libraries/boost/1.72.nix @@ -4,10 +4,9 @@ callPackage ./generic.nix (args // rec { version = "1.72.0"; src = fetchurl { - #url = "mirror://sourceforge/boost/boost_1_72_0.tar.bz2"; urls = [ - "mirror://sourceforge/boost/boost_1_72_0.tar.bz2" - "https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.bz2" + "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" + "https://dl.bintray.com/boostorg/release/${version}/source/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" ]; # SHA256 from http://www.boost.org/users/history/version_1_72_0.html sha256 = "59c9b274bc451cf91a9ba1dd2c7fdcaf5d60b1b3aa83f2c9fa143417cc660722"; diff --git a/pkgs/development/libraries/boost/1.73.nix b/pkgs/development/libraries/boost/1.73.nix index 289bea197c35..1d53ebcccd75 100644 --- a/pkgs/development/libraries/boost/1.73.nix +++ b/pkgs/development/libraries/boost/1.73.nix @@ -4,10 +4,9 @@ callPackage ./generic.nix (args // rec { version = "1.73.0"; src = fetchurl { - #url = "mirror://sourceforge/boost/boost_1_73_0.tar.bz2"; urls = [ - "mirror://sourceforge/boost/boost_1_73_0.tar.bz2" - "https://dl.bintray.com/boostorg/release/1.73.0/source/boost_1_73_0.tar.bz2" + "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" + "https://dl.bintray.com/boostorg/release/${version}/source/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" ]; # SHA256 from http://www.boost.org/users/history/version_1_73_0.html sha256 = "4eb3b8d442b426dc35346235c8733b5ae35ba431690e38c6a8263dce9fcbb402"; diff --git a/pkgs/development/libraries/boost/1.74.nix b/pkgs/development/libraries/boost/1.74.nix index a181ed94c266..f3a29dafbcd9 100644 --- a/pkgs/development/libraries/boost/1.74.nix +++ b/pkgs/development/libraries/boost/1.74.nix @@ -5,8 +5,8 @@ callPackage ./generic.nix (args // rec { src = fetchurl { urls = [ - "mirror://sourceforge/boost/boost_1_74_0.tar.bz2" - "https://dl.bintray.com/boostorg/release/1.74.0/source/boost_1_74_0.tar.bz2" + "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" + "https://dl.bintray.com/boostorg/release/${version}/source/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" ]; # SHA256 from http://www.boost.org/users/history/version_1_74_0.html sha256 = "83bfc1507731a0906e387fc28b7ef5417d591429e51e788417fe9ff025e116b1"; diff --git a/pkgs/development/libraries/boost/1.75.nix b/pkgs/development/libraries/boost/1.75.nix index ff1073bd0268..1432899f9967 100644 --- a/pkgs/development/libraries/boost/1.75.nix +++ b/pkgs/development/libraries/boost/1.75.nix @@ -5,8 +5,8 @@ callPackage ./generic.nix (args // rec { src = fetchurl { urls = [ - "mirror://sourceforge/boost/boost_1_75_0.tar.bz2" - "https://dl.bintray.com/boostorg/release/1.75.0/source/boost_1_75_0.tar.bz2" + "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" + "https://dl.bintray.com/boostorg/release/${version}/source/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" ]; # SHA256 from http://www.boost.org/users/history/version_1_75_0.html sha256 = "953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb"; From eca50883fc25ecc4b27a9ec3e694f261bba2f21e Mon Sep 17 00:00:00 2001 From: Hunter Jones Date: Fri, 17 Sep 2021 12:17:40 -0500 Subject: [PATCH 2/3] boost: default to boost 1.77 --- pkgs/development/libraries/boost/1.77.nix | 15 ++++++++ pkgs/development/libraries/boost/default.nix | 1 + pkgs/top-level/all-packages.nix | 38 ++++++-------------- 3 files changed, 27 insertions(+), 27 deletions(-) create mode 100644 pkgs/development/libraries/boost/1.77.nix diff --git a/pkgs/development/libraries/boost/1.77.nix b/pkgs/development/libraries/boost/1.77.nix new file mode 100644 index 000000000000..634523b244ce --- /dev/null +++ b/pkgs/development/libraries/boost/1.77.nix @@ -0,0 +1,15 @@ +{ callPackage, fetchurl, fetchpatch, ... } @ args: + +callPackage ./generic.nix (args // rec { + version = "1.77.0"; + + src = fetchurl { + urls = [ + "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" + "https://dl.bintray.com/boostorg/release/${version}/source/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2" + ]; + # SHA256 from http://www.boost.org/users/history/version_1_77_0.html + sha256 = "sha256-/J+F/AMOIzFCkIJBr3qEbmBjCqc4jeml+vsfOiaECFQ="; + }; +}) + diff --git a/pkgs/development/libraries/boost/default.nix b/pkgs/development/libraries/boost/default.nix index 3b79378605f2..aeb0878a0d11 100644 --- a/pkgs/development/libraries/boost/default.nix +++ b/pkgs/development/libraries/boost/default.nix @@ -44,4 +44,5 @@ in { boost173 = makeBoost ./1.73.nix; boost174 = makeBoost ./1.74.nix; boost175 = makeBoost ./1.75.nix; + boost177 = makeBoost ./1.77.nix; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0b9fa4192e72..01968bf421d8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4595,9 +4595,7 @@ with pkgs; vorta = libsForQt5.callPackage ../applications/backup/vorta { }; - vowpal-wabbit = callPackage ../applications/science/machine-learning/vowpal-wabbit { - boost = boost17x; - }; + vowpal-wabbit = callPackage ../applications/science/machine-learning/vowpal-wabbit { }; utahfs = callPackage ../applications/networking/utahfs { }; @@ -14814,9 +14812,7 @@ with pkgs; uefi-firmware-parser = callPackage ../development/tools/analysis/uefi-firmware-parser { }; uhd3_5 = callPackage ../applications/radio/uhd/3.5.nix { }; - uhd = callPackage ../applications/radio/uhd { - boost = boost17x; - }; + uhd = callPackage ../applications/radio/uhd { }; uisp = callPackage ../development/embedded/uisp { }; @@ -15129,12 +15125,13 @@ with pkgs; boost173 boost174 boost175 + boost177 ; boost15x = boost159; boost16x = boost169; - boost17x = boost175; - boost = boost16x; + boost17x = boost177; + boost = boost17x; boost_process = callPackage ../development/libraries/boost-process { }; @@ -20718,14 +20715,10 @@ with pkgs; libtool = darwin.cctools; }; - # Fails to compile with boost >= 1.72 - rippled = callPackage ../servers/rippled { - boost = boost17x; - }; + # Fails to compile with boost <= 1.72 + rippled = callPackage ../servers/rippled { }; - rippled-validator-keys-tool = callPackage ../servers/rippled/validator-keys-tool.nix { - boost = boost17x; - }; + rippled-validator-keys-tool = callPackage ../servers/rippled/validator-keys-tool.nix { }; roon-bridge = callPackage ../servers/roon-bridge { }; @@ -24147,7 +24140,6 @@ with pkgs; unwrapped = callPackage ../applications/radio/gnuradio { inherit (darwin.apple_sdk.frameworks) CoreAudio; python = python3; - boost = boost17x; }; }; gnuradioPackages = lib.recurseIntoAttrs gnuradio.pkgs; @@ -24177,7 +24169,6 @@ with pkgs; unwrapped = callPackage ../applications/radio/gnuradio/3.8.nix { inherit (darwin.apple_sdk.frameworks) CoreAudio; python = python3; - boost = boost17x; }; }; gnuradio3_8Packages = lib.recurseIntoAttrs gnuradio3_8.pkgs; @@ -26814,9 +26805,7 @@ with pkgs; qmapshack = libsForQt5.callPackage ../applications/gis/qmapshack { }; - qmediathekview = libsForQt5.callPackage ../applications/video/qmediathekview { - boost = boost17x; - }; + qmediathekview = libsForQt5.callPackage ../applications/video/qmediathekview { }; qmplay2 = libsForQt5.callPackage ../applications/video/qmplay2 { }; @@ -28801,16 +28790,11 @@ with pkgs; monero = callPackage ../applications/blockchains/monero { inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC; - boost = boost17x; }; - oxen = callPackage ../applications/blockchains/oxen { - boost = boost17x; - }; + oxen = callPackage ../applications/blockchains/oxen { }; - monero-gui = libsForQt5.callPackage ../applications/blockchains/monero-gui { - boost = boost17x; - }; + monero-gui = libsForQt5.callPackage ../applications/blockchains/monero-gui { }; masari = callPackage ../applications/blockchains/masari { boost = boost165; }; From b772490d9b9e7d30ddb8ca9319cbdc59cfcaed57 Mon Sep 17 00:00:00 2001 From: Hunter Jones Date: Mon, 11 Oct 2021 12:59:20 -0500 Subject: [PATCH 3/3] boost-build: make darwin patch work across all versions --- .../tools/boost-build/darwin-default-toolset.patch | 12 ------------ pkgs/development/tools/boost-build/default.nix | 9 +++++---- 2 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 pkgs/development/tools/boost-build/darwin-default-toolset.patch diff --git a/pkgs/development/tools/boost-build/darwin-default-toolset.patch b/pkgs/development/tools/boost-build/darwin-default-toolset.patch deleted file mode 100644 index ebe3f8d2e1ea..000000000000 --- a/pkgs/development/tools/boost-build/darwin-default-toolset.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/build-system.jam b/src/build-system.jam -index 60425c54..c6842217 100644 ---- a/src/build-system.jam -+++ b/src/build-system.jam -@@ -644,7 +644,7 @@ local rule should-clean-project ( project ) - } - else if [ os.name ] = MACOSX - { -- default-toolset = darwin ; -+ default-toolset = clang-darwin ; - } - } diff --git a/pkgs/development/tools/boost-build/default.nix b/pkgs/development/tools/boost-build/default.nix index c6c66d4d212d..044589a9664b 100644 --- a/pkgs/development/tools/boost-build/default.nix +++ b/pkgs/development/tools/boost-build/default.nix @@ -33,10 +33,11 @@ stdenv.mkDerivation { sourceRoot="$sourceRoot/tools/build" ''; - patches = [ - # Upstream defaults to gcc on darwin, but we use clang. - ./darwin-default-toolset.patch - ]; + # Upstream defaults to gcc on darwin, but we use clang. + postPatch = '' + substituteInPlace src/build-system.jam \ + --replace "default-toolset = darwin" "default-toolset = clang-darwin" + ''; nativeBuildInputs = [ bison