Merge pull request #160000 from thefloweringash/boost159-aarch64-darwin

boost159: fix build on aarch64-darwin
main
Sandro 2 years ago committed by GitHub
commit 0014ad177c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 15
      pkgs/development/libraries/boost/1.59.nix
  2. 5
      pkgs/development/libraries/boost/generic.nix
  3. 2
      pkgs/development/tools/boost-build/default.nix

@ -1,8 +1,21 @@
{ callPackage, fetchurl, ... } @ args:
{ callPackage, fetchurl, fetchpatch, ... } @ args:
callPackage ./generic.nix (args // rec {
version = "1.59.0";
boostBuildPatches = [
# Fixes a segfault on aarch64-darwin from an implicitly defined varargs function.
# https://github.com/boostorg/build/pull/238
(fetchpatch {
url = "https://github.com/boostorg/build/commit/48e9017139dd94446633480661e5447c7e0d8b1b.diff";
excludes = [
# Doesn't apply, isn't critical.
"src/engine/filesys.h"
];
sha256 = "sha256-/HLOJKBcGqcK9yBYKSRCSMmTNhCH3sSpK1s3OzkIqx8";
})
];
src = fetchurl {
url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2";
sha256 = "1jj1aai5rdmd72g90a3pd8sw9vi32zad46xv5av8fhnr48ir6ykj";

@ -15,6 +15,7 @@
, enableNumpy ? false
, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
, patches ? []
, boostBuildPatches ? []
, useMpi ? false
, mpi
, extraB2Args ? []
@ -170,6 +171,10 @@ stdenv.mkDerivation {
(stdenv.hostPlatform.isMips64n64 && (versionOlder version "1.65"));
};
passthru = {
inherit boostBuildPatches;
};
preConfigure = optionalString useMpi ''
cat << EOF >> user-config.jam
using mpi : ${mpi}/bin/mpiCC ;

@ -33,6 +33,8 @@ stdenv.mkDerivation {
sourceRoot="$sourceRoot/tools/build"
'';
patches = useBoost.boostBuildPatches or [];
# Upstream defaults to gcc on darwin, but we use clang.
postPatch = ''
substituteInPlace src/build-system.jam \

Loading…
Cancel
Save