From 3d821e0013ed72073a028552f013c2ffcc96279d Mon Sep 17 00:00:00 2001 From: Charles Strahan Date: Wed, 24 Dec 2014 21:58:45 -0500 Subject: [PATCH] update ghcjs --- .../tools/haskell/Cabal-ghcjs/default.nix | 4 ++-- .../tools/haskell/ghcjs/default.nix | 17 +++++++------- .../tools/haskell/ghcjs/ghcjs.patch | 23 +++++++++++++------ 3 files changed, 27 insertions(+), 17 deletions(-) diff --git a/pkgs/development/tools/haskell/Cabal-ghcjs/default.nix b/pkgs/development/tools/haskell/Cabal-ghcjs/default.nix index b1a6e81f9277..9185c75e1aab 100644 --- a/pkgs/development/tools/haskell/Cabal-ghcjs/default.nix +++ b/pkgs/development/tools/haskell/Cabal-ghcjs/default.nix @@ -8,8 +8,8 @@ cabal.mkDerivation (self: { version = "7471c95f23"; src = fetchgit { url = git://github.com/ghcjs/cabal.git; - rev = "7471c95f230170342bbdc7bcb8881d5d06145f95"; # Must be from the ghcjs branch - sha256 = "a4bbb0db43d25d73f78760ca4aa1431bf00b6dd1c43483e9b659f8b13ef9ebfc"; + rev = "0a9531272ed50b4057e788005e3c6e5a7e2442bd"; # Must be from the ghcjs branch + sha256 = "212af6d134ff85b8046977c8754852e4048872d330ab2250b94cd51373328daa"; }; preConfigure = "cd Cabal"; configureFlags = "--program-suffix=-js"; diff --git a/pkgs/development/tools/haskell/ghcjs/default.nix b/pkgs/development/tools/haskell/ghcjs/default.nix index 9f998b17ccd9..4e2cc4220b40 100644 --- a/pkgs/development/tools/haskell/ghcjs/default.nix +++ b/pkgs/development/tools/haskell/ghcjs/default.nix @@ -16,8 +16,8 @@ let libDir = "share/ghcjs/${pkgs.stdenv.system}-${version}-${ghc.ghc.version}/ghcjs"; ghcjsBoot = fetchgit { url = git://github.com/ghcjs/ghcjs-boot.git; - rev = "8bf2861c0c776eec42e0a1833f220e36681e810c"; - sha256 = "0fwnng56d1y98fpp2s9yl9xy21584p7fsszr4m9d3wmjciiazcv2"; + rev = "28f328ae5acb7427483ee1aaca66a4ed2df38472"; + sha256 = "107sqpadbjqxs3ym23qbp141ihra0a8ijaar94dbpa69g8b0xyyl"; # no .git }; shims = fetchgit { url = git://github.com/ghcjs/shims.git; @@ -29,8 +29,8 @@ let version = "0.1.0.0"; src = fetchgit { url = git://github.com/ghcjs/ghcjs-prim.git; - rev = "915f263c06b7f4a246c6e02ecdf2b9a0550ed967"; - sha256 = "11ngifn822d8ac5p139g32rafa0wf319yl3blh6piknhwav5ip9l"; + rev = "8e003e1a1df10233bc3f03d7bbd7d37de13d2a84"; + sha256 = "11k2r87s58wmpxykn61lihn4vm3x67cm1dygvdl26papifinj6pz"; }; buildDepends = [ primitive ]; }); @@ -39,8 +39,8 @@ in cabal.mkDerivation (self: rec { inherit version; src = fetchgit { url = git://github.com/ghcjs/ghcjs.git; - rev = "5c2d279982466e076223fcbe1e1096e22956e5a9"; - sha256 = "07zpdvpbmk9rg4iwffi7rdjr4icr1j2kkskg2a520ffhid77phqb"; + rev = "fa0cc146b2fbdac28136fdca621e95930e2fd035"; + sha256 = "1mvs4x0x1cv11m32n5kjil3q1jxszj6capshvgz3a7mzdm5cdqp8"; }; isLibrary = true; isExecutable = true; @@ -68,7 +68,7 @@ in cabal.mkDerivation (self: rec { substituteInPlace src/Compiler/Info.hs --replace "@PREFIX@" "$out" substituteInPlace src-bin/Boot.hs --replace "@PREFIX@" "$out" ''; - postInstall = '' + preBuild = '' local topDir=$out/${libDir} mkdir -p $topDir @@ -77,7 +77,8 @@ in cabal.mkDerivation (self: rec { cp -r ${shims} $topDir/shims chmod -R u+w $topDir/shims - + ''; + postInstall = '' PATH=$out/bin:${CabalGhcjs}/bin:$PATH LD_LIBRARY_PATH=${gmp}/lib:${gcc.gcc}/lib64:$LD_LIBRARY_PATH \ env -u GHC_PACKAGE_PATH $out/bin/ghcjs-boot \ --dev \ diff --git a/pkgs/development/tools/haskell/ghcjs/ghcjs.patch b/pkgs/development/tools/haskell/ghcjs/ghcjs.patch index 053480b9bfdb..f5197e46d204 100644 --- a/pkgs/development/tools/haskell/ghcjs/ghcjs.patch +++ b/pkgs/development/tools/haskell/ghcjs/ghcjs.patch @@ -1,8 +1,8 @@ diff --git a/src-bin/Boot.hs b/src-bin/Boot.hs -index ed348db..b102695 100644 +index d2c1fb3..15bf815 100644 --- a/src-bin/Boot.hs +++ b/src-bin/Boot.hs -@@ -510,9 +510,7 @@ initPackageDB :: B () +@@ -512,9 +512,7 @@ initPackageDB :: B () initPackageDB = do msg info "creating package databases" initDB "--global" <^> beLocations . blGlobalDB @@ -12,7 +12,7 @@ index ed348db..b102695 100644 initDB dbName db = do rm_rf db >> mkdir_p db ghcjs_pkg_ ["init", toTextI db] `catchAny_` return () -@@ -536,29 +534,22 @@ installDevelopmentTree = subTop $ do +@@ -538,29 +536,22 @@ installDevelopmentTree = subTop $ do msgD info $ "preparing development boot tree" checkpoint' "ghcjs-boot-git" "ghcjs-boot repository already cloned and prepared" $ do testGit "ghcjs-boot" >>= \case @@ -46,7 +46,16 @@ index ed348db..b102695 100644 mapM_ patchPackage =<< allPackages preparePrimops buildGenPrim -@@ -1093,7 +1084,9 @@ cabalInstallFlags parmakeGhcjs = do +@@ -672,7 +663,7 @@ patchPackage pkg + p' <- absPath p + cd (fromText pkg') + when isWindows (git_ ["config", "core.filemode", "false"]) +- git_ ["apply", "-3", toTextI p'] ++ git_ ["apply", toTextI p'] + in sub $ cond applyPatch (msg info $ "no patch for package " <> pkgName <> " found") =<< test_f p + | otherwise = return () + +@@ -1082,7 +1073,9 @@ cabalInstallFlags parmakeGhcjs = do , "--builddir", "dist" , "--with-compiler", ghcjs ^. pgmLocText , "--with-hc-pkg", ghcjsPkg ^. pgmLocText @@ -56,12 +65,12 @@ index ed348db..b102695 100644 + , "--libsubdir", "$pkgid" , bool haddock "--enable-documentation" "--disable-documentation" , "--haddock-html" - , "--haddock-hoogle" + -- workaround for hoogle support being broken in haddock for GHC 7.10RC1 diff --git a/src/Compiler/Info.hs b/src/Compiler/Info.hs -index 2e19849..4c9e94d 100644 +index 33a401f..5d09c86 100644 --- a/src/Compiler/Info.hs +++ b/src/Compiler/Info.hs -@@ -48,7 +48,7 @@ compilerInfo nativeToo dflags = do +@@ -49,7 +49,7 @@ compilerInfo nativeToo dflags = do -- | the directory to use if started without -B flag getDefaultTopDir :: IO FilePath getDefaultTopDir = do