forked from mirrors/nixpkgs
boost159: fix build on aarch64-darwin
This commit is contained in:
parent
bdd431d5a0
commit
de396a3c0a
|
@ -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…
Reference in a new issue