@@ -969,6 +969,26 @@ haskell-nix.haskellLib.makeCompilerDeps (stdenv.mkDerivation (rec {
969969 '' ;
970970 buildPhase = ''
971971 runHook preBuild
972+ '' + lib . optionalString ( ! enableShared && targetPlatform . isAndroid && targetPlatform . isAarch64 )
973+ # This is rather idiotic, but we need to create the dynamic (.so) files because
974+ # hadrian expects them in the src/Rules/Rts.hs:160 or thereabout.
975+ ''
976+ mkdir -p _build/stage1/lib/aarch64-android-ghc-${ ghc-version } /
977+ touch _build/stage1/lib/aarch64-android-ghc-${ ghc-version } /libHSrts-1.0.2_thr_debug-ghc${ ghc-version } .so
978+ touch _build/stage1/lib/aarch64-android-ghc-${ ghc-version } /libHSrts-1.0.2_thr-ghc${ ghc-version } .so
979+ touch _build/stage1/lib/aarch64-android-ghc-${ ghc-version } /libHSrts-1.0.2_debug-ghc${ ghc-version } .so
980+ touch _build/stage1/lib/aarch64-android-ghc-${ ghc-version } /libHSrts-1.0.2-ghc${ ghc-version } .so
981+ '' + lib . optionalString ( ! enableShared && targetPlatform . isAndroid && targetPlatform . isAarch32 )
982+ # This is rather idiotic, but we need to create the dynamic (.so) files because
983+ # hadrian expects them in the src/Rules/Rts.hs:160 or thereabout.
984+ ''
985+ mkdir -p _build/stage1/lib/arm-android-ghc-${ ghc-version } /
986+ touch _build/stage1/lib/arm-android-ghc-${ ghc-version } /libHSrts-1.0.2_thr_debug-ghc${ ghc-version } .so
987+ touch _build/stage1/lib/arm-android-ghc-${ ghc-version } /libHSrts-1.0.2_thr-ghc${ ghc-version } .so
988+ touch _build/stage1/lib/arm-android-ghc-${ ghc-version } /libHSrts-1.0.2_debug-ghc${ ghc-version } .so
989+ touch _build/stage1/lib/arm-android-ghc-${ ghc-version } /libHSrts-1.0.2-ghc${ ghc-version } .so
990+ ''
991+ + ''
972992 ${ hadrian } /bin/hadrian ${ hadrianArgs }
973993 '' + lib . optionalString ( installStage1 && ! stdenv . targetPlatform . isGhcjs && builtins . compareVersions ghc-version "9.8" < 0 ) ''
974994 ${ hadrian } /bin/hadrian ${ hadrianArgs } stage1:lib:libiserv
0 commit comments