Merge pull request #40210 from ElvishJerricco/fix-android-prebuilt-ghc
Fix android prebuilt ghc [Fixes #40194]
This commit is contained in:
commit
83fdfb9837
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
# build-tools
|
# build-tools
|
||||||
, bootPkgs, alex, happy
|
, bootPkgs, alex, happy
|
||||||
, autoconf, automake, coreutils, fetchurl, perl, python3
|
, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3
|
||||||
|
|
||||||
, libffi, libiconv ? null, ncurses
|
, libffi, libiconv ? null, ncurses
|
||||||
|
|
||||||
@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
, # Whether to build dynamic libs for the standard library (on the target
|
||||||
# platform). Static libs are always built.
|
# platform). Static libs are always built.
|
||||||
enableShared ? true
|
enableShared ? !targetPlatform.useAndroidPrebuilt
|
||||||
|
|
||||||
, version ? "8.4.2"
|
, version ? "8.4.2"
|
||||||
}:
|
}:
|
||||||
@ -50,6 +50,8 @@ let
|
|||||||
'' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
|
'' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
|
||||||
GhcLibHcOpts += -fPIC
|
GhcLibHcOpts += -fPIC
|
||||||
GhcRtsHcOpts += -fPIC
|
GhcRtsHcOpts += -fPIC
|
||||||
|
'' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
||||||
|
EXTRA_CC_OPTS += -std=gnu99
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Splicer will pull out correct variations
|
# Splicer will pull out correct variations
|
||||||
@ -79,6 +81,13 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
outputs = [ "out" "doc" ];
|
outputs = [ "out" "doc" ];
|
||||||
|
|
||||||
|
patches = [(fetchpatch {
|
||||||
|
url = "https://git.haskell.org/hsc2hs.git/patch/738f3666c878ee9e79c3d5e819ef8b3460288edf";
|
||||||
|
sha256 = "0plzsbfaq6vb1023lsarrjglwgr9chld4q3m99rcfzx0yx5mibp3";
|
||||||
|
extraPrefix = "utils/hsc2hs/";
|
||||||
|
stripLen = 1;
|
||||||
|
})];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
|
||||||
# GHC is a bit confused on its cross terminology.
|
# GHC is a bit confused on its cross terminology.
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
, # Whether to build dynamic libs for the standard library (on the target
|
||||||
# platform). Static libs are always built.
|
# platform). Static libs are always built.
|
||||||
enableShared ? true
|
enableShared ? !targetPlatform.useAndroidPrebuilt
|
||||||
|
|
||||||
, version ? "8.5.20180118"
|
, version ? "8.5.20180118"
|
||||||
}:
|
}:
|
||||||
@ -50,6 +50,8 @@ let
|
|||||||
'' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
|
'' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
|
||||||
GhcLibHcOpts += -fPIC
|
GhcLibHcOpts += -fPIC
|
||||||
GhcRtsHcOpts += -fPIC
|
GhcRtsHcOpts += -fPIC
|
||||||
|
'' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
||||||
|
EXTRA_CC_OPTS += -std=gnu99
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Splicer will pull out correct variations
|
# Splicer will pull out correct variations
|
||||||
|
Loading…
Reference in New Issue
Block a user