diff options
Diffstat (limited to 'pkgs/development/compilers/ghcjs/8.10')
6 files changed, 0 insertions, 352 deletions
diff --git a/pkgs/development/compilers/ghcjs/8.10/common-overrides.nix b/pkgs/development/compilers/ghcjs/8.10/common-overrides.nix deleted file mode 100644 index 8f791b73abff..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/common-overrides.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ haskellLib, fetchpatch, buildPackages }: - -let inherit (haskellLib) addBuildTools appendConfigureFlag dontHaddock doJailbreak markUnbroken overrideCabal; -in self: super: { - ghcjs = overrideCabal (drv: { - # Jailbreak and patch can be dropped after https://github.com/ghcjs/ghcjs/pull/833 - jailbreak = true; - patches = drv.patches or [] ++ [ - (fetchpatch { - name = "ghcjs-aeson-2.0.patch"; - url = "https://github.com/ghcjs/ghcjs/commit/9ef1f92d740e8503d15d91699f57db147f0474cc.patch"; - sha256 = "0cgxcy6b5870bv4kj54n3bzcqinh4gl4w4r78dg43h2mblhkzbnj"; - }) - ]; - }) (super.ghcjs.overrideScope (self: super: { - # Allow transformers-compat >= 0.7 - optparse-applicative = doJailbreak self.optparse-applicative_0_15_1_0; - ansi-wl-pprint = self.ansi-wl-pprint_0_6_9; - })); -} diff --git a/pkgs/development/compilers/ghcjs/8.10/configured-ghcjs-src.nix b/pkgs/development/compilers/ghcjs/8.10/configured-ghcjs-src.nix deleted file mode 100644 index c9e6d2f09cf7..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/configured-ghcjs-src.nix +++ /dev/null @@ -1,67 +0,0 @@ -{ perl -, autoconf -, automake -, python3 -, gcc -, cabal-install -, runCommand -, fetchpatch - -, ghc -, happy -, alex - -, ghcjsSrc -, version -}: - -runCommand "configured-ghcjs-src" { - nativeBuildInputs = [ - perl - autoconf - automake - python3 - ghc - happy - alex - cabal-install - gcc - ]; - - inherit ghcjsSrc; - - ctimePatch = fetchpatch { - name = "ghcjs-base-ctime-64-bit.patch"; - url = "https://github.com/ghcjs/ghcjs/commit/b7711fbca7c3f43a61f1dba526e6f2a2656ef44c.patch"; - hash = "sha256-zZ3l8/5gbIGtvu0s2Xl92fEDhkhJ2c2w+5Ql5qkvr3s="; - }; -} '' - export HOME=$(pwd) - mkdir $HOME/.cabal - touch $HOME/.cabal/config - cp -r "$ghcjsSrc" "$out" - chmod -R +w "$out" - cd "$out" - - patch -p1 -i "$ctimePatch" - - # TODO: Find a better way to avoid impure version numbers - sed -i 's/RELEASE=NO/RELEASE=YES/' ghc/configure.ac - - # These files are needed by ghc-boot package, and these are generated by the - # make/hadrian build system when compiling ghc. Since we dont have access to - # the generated code of the ghc while it got built, here is a little hack to - # generate these again. - runhaskell ${./generate_host_version.hs} - mkdir -p utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Platform - mv Host.hs utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Platform/Host.hs - mv Version.hs utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Version.hs - - # The ghcjs has the following hardcoded paths of lib dir in its code. Patching - # these to match the path expected by the nixpkgs's generic-builder, etc. - sed -i 's/libSubDir = "lib"/libSubDir = "lib\/ghcjs-${version}"/' src-bin/Boot.hs - sed -i 's@let libDir = takeDirectory haddockPath </> ".." </> "lib"@let libDir = takeDirectory haddockPath </> ".." </> "lib/ghcjs-${version}"@' src-bin/HaddockDriver.hs - - patchShebangs . - ./utils/makePackages.sh copy -'' diff --git a/pkgs/development/compilers/ghcjs/8.10/default.nix b/pkgs/development/compilers/ghcjs/8.10/default.nix deleted file mode 100644 index 4363dc32c21e..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/default.nix +++ /dev/null @@ -1,128 +0,0 @@ -{ stdenv -, pkgsHostHost -, callPackage -, fetchgit -, fetchpatch -, ghcjsSrcJson ? null -, ghcjsSrc ? fetchgit (lib.importJSON ghcjsSrcJson) -, bootPkgs -, stage0 -, haskellLib -, cabal-install -, nodejs -, makeWrapper -, xorg -, gmp -, pkg-config -, gcc -, lib -, ghcjsDepOverrides ? (_:_:{}) -, haskell -, linkFarm -, buildPackages -}: - -let - passthru = { - configuredSrc = callPackage ./configured-ghcjs-src.nix { - inherit ghcjsSrc; - inherit (bootPkgs) ghc alex; - inherit (bootGhcjs) version; - happy = bootPkgs.happy_1_19_12; - }; - bootPkgs = bootPkgs.extend (lib.foldr lib.composeExtensions (_:_:{}) [ - (self: _: import stage0 { - inherit (passthru) configuredSrc; - inherit (self) callPackage; - }) - - (callPackage ./common-overrides.nix { - inherit haskellLib fetchpatch buildPackages; - }) - ghcjsDepOverrides - ]); - - targetPrefix = ""; - inherit bootGhcjs; - inherit (bootGhcjs) version; - isGhcjs = true; - - llvmPackages = null; - enableShared = true; - - socket-io = pkgsHostHost.nodePackages."socket.io"; - - haskellCompilerName = "ghcjs-${bootGhcjs.version}"; - }; - - bootGhcjs = haskellLib.justStaticExecutables passthru.bootPkgs.ghcjs; - - # This provides the stuff we need from the emsdk - emsdk = linkFarm "emsdk" [ - { name = "upstream/bin"; path = buildPackages.clang + "/bin";} - { name = "upstream/emscripten"; path = buildPackages.emscripten + "/bin"; } - ]; - -in stdenv.mkDerivation { - name = bootGhcjs.name; - src = passthru.configuredSrc; - nativeBuildInputs = [ - bootGhcjs - passthru.bootPkgs.ghc - cabal-install - nodejs - makeWrapper - xorg.lndir - gmp - pkg-config - ] ++ lib.optionals stdenv.isDarwin [ - gcc # https://github.com/ghcjs/ghcjs/issues/663 - ]; - dontConfigure = true; - dontInstall = true; - - # Newer versions of `config.sub` reject the `js-ghcjs` host string, but the - # older `config.sub` filed vendored within `ghc` still works - dontUpdateAutotoolsGnuConfigScripts = true; - - buildPhase = '' - export HOME=$TMP - mkdir $HOME/.cabal - touch $HOME/.cabal/config - cd lib/boot - - mkdir -p $out/bin - mkdir -p $out/lib/${bootGhcjs.name} - lndir ${bootGhcjs}/bin $out/bin - chmod -R +w $out/bin - rm $out/bin/ghcjs-boot - cp ${bootGhcjs}/bin/ghcjs-boot $out/bin - rm $out/bin/haddock - cp ${bootGhcjs}/bin/haddock $out/bin - cp ${bootGhcjs}/bin/private-ghcjs-hsc2hs $out/bin/ghcjs-hsc2hs - - wrapProgram $out/bin/ghcjs-boot --set ghcjs_libexecdir $out/bin - - wrapProgram $out/bin/ghcjs --add-flags "-B$out/lib/${bootGhcjs.name}" - wrapProgram $out/bin/haddock --add-flags "-B$out/lib/${bootGhcjs.name}" - wrapProgram $out/bin/ghcjs-pkg --add-flags "--global-package-db=$out/lib/${bootGhcjs.name}/package.conf.d" - wrapProgram $out/bin/ghcjs-hsc2hs --add-flags "-I$out/lib/${bootGhcjs.name}/include --template=$out/lib/${bootGhcjs.name}/include/template-hsc.h" - - env PATH=$out/bin:$PATH $out/bin/ghcjs-boot --with-emsdk=${emsdk} --no-haddock - ''; - - enableParallelBuilding = true; - - inherit passthru; - - meta = { - platforms = with lib.platforms; linux ++ darwin; - - # Hydra limits jobs to only outputting 1 gigabyte worth of files. - # GHCJS outputs over 3 gigabytes. - # https://github.com/NixOS/nixpkgs/pull/137066#issuecomment-922335563 - hydraPlatforms = lib.platforms.none; - - maintainers = with lib.maintainers; [ obsidian-systems-maintenance ]; - }; - } diff --git a/pkgs/development/compilers/ghcjs/8.10/generate_host_version.hs b/pkgs/development/compilers/ghcjs/8.10/generate_host_version.hs deleted file mode 100644 index 8bf2583d238c..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/generate_host_version.hs +++ /dev/null @@ -1,54 +0,0 @@ --- Generate the Host.hs and Version.hs as done by hadrian/src/Rules/Generate.hs - -import GHC.Platform.Host -import GHC.Version - -main = do - writeFile "Version.hs" versionHs - writeFile "Host.hs" platformHostHs - --- | Generate @Version.hs@ files. -versionHs :: String -versionHs = unlines - [ "module GHC.Version where" - , "" - , "import Prelude -- See Note [Why do we import Prelude here?]" - , "" - , "cProjectGitCommitId :: String" - , "cProjectGitCommitId = " ++ show cProjectGitCommitId - , "" - , "cProjectVersion :: String" - , "cProjectVersion = " ++ show cProjectVersion - , "" - , "cProjectVersionInt :: String" - , "cProjectVersionInt = " ++ show cProjectVersionInt - , "" - , "cProjectPatchLevel :: String" - , "cProjectPatchLevel = " ++ show cProjectPatchLevel - , "" - , "cProjectPatchLevel1 :: String" - , "cProjectPatchLevel1 = " ++ show cProjectPatchLevel1 - , "" - , "cProjectPatchLevel2 :: String" - , "cProjectPatchLevel2 = " ++ show cProjectPatchLevel2 - ] - --- | Generate @Platform/Host.hs@ files. -platformHostHs :: String -platformHostHs = unlines - [ "module GHC.Platform.Host where" - , "" - , "import GHC.Platform" - , "" - , "cHostPlatformArch :: Arch" - , "cHostPlatformArch = " ++ show cHostPlatformArch - , "" - , "cHostPlatformOS :: OS" - , "cHostPlatformOS = " ++ show cHostPlatformOS - , "" - , "cHostPlatformMini :: PlatformMini" - , "cHostPlatformMini = PlatformMini" - , " { platformMini_arch = cHostPlatformArch" - , " , platformMini_os = cHostPlatformOS" - , " }" - ] diff --git a/pkgs/development/compilers/ghcjs/8.10/git.json b/pkgs/development/compilers/ghcjs/8.10/git.json deleted file mode 100644 index 18804d84acb1..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/git.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "url": "https://github.com/obsidiansystems/ghcjs", - "rev": "9fc935f2c3ba6c33ec62eb83afc9f52a893eb68c", - "sha256": "sha256:063dmir39c4i1z8ypnmq86g1x2vhqndmdpzc4hyzsy5jjqcbx6i3", - "fetchSubmodules": true -} diff --git a/pkgs/development/compilers/ghcjs/8.10/stage0.nix b/pkgs/development/compilers/ghcjs/8.10/stage0.nix deleted file mode 100644 index d173d5a2e557..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/stage0.nix +++ /dev/null @@ -1,77 +0,0 @@ -{ callPackage, configuredSrc }: - -{ - - ghcjs = callPackage - ({ mkDerivation, aeson, alex, array, attoparsec, base, base16-bytestring - , base64-bytestring, binary, bytestring, Cabal, containers - , cryptohash, data-default, deepseq, directory, executable-path - , filepath, ghc-boot, ghc-boot-th, ghc-compact, ghc-heap, ghc-paths - , ghci, happy, hashable, hpc, http-types, HUnit, lens, lib - , lifted-base, mtl, network, optparse-applicative, parallel, parsec - , process, random, safe, shelly, split, stringsearch, syb, tar - , template-haskell, terminfo, test-framework, test-framework-hunit - , text, time, transformers, unix, unix-compat, unordered-containers - , vector, wai, wai-app-static, wai-extra, wai-websockets, warp - , webdriver, websockets, wl-pprint-text, xhtml, yaml - }: - mkDerivation { - pname = "ghcjs"; - version = "8.10.7"; - src = configuredSrc + /.; - isLibrary = true; - isExecutable = true; - libraryHaskellDepends = [ - aeson array attoparsec base base16-bytestring base64-bytestring - binary bytestring Cabal containers cryptohash data-default deepseq - directory filepath ghc-boot ghc-boot-th ghc-compact ghc-heap - ghc-paths ghci hashable hpc lens mtl optparse-applicative parallel - parsec process safe split stringsearch syb template-haskell - terminfo text time transformers unix unordered-containers vector - wl-pprint-text yaml - ]; - libraryToolDepends = [ alex happy ]; - executableHaskellDepends = [ - aeson array base binary bytestring Cabal containers deepseq - directory executable-path filepath ghc-boot lens mtl - optparse-applicative parsec process tar terminfo text time - transformers unix unix-compat unordered-containers vector xhtml - yaml - ]; - testHaskellDepends = [ - aeson base bytestring data-default deepseq directory filepath - http-types HUnit lens lifted-base network optparse-applicative - process random shelly test-framework test-framework-hunit text time - transformers unordered-containers wai wai-app-static wai-extra - wai-websockets warp webdriver websockets yaml - ]; - description = "Haskell to JavaScript compiler"; - license = lib.licenses.mit; - }) {}; - - ghcjs-th = callPackage - ({ mkDerivation, base, binary, bytestring, containers, ghc-prim - , ghci, lib, template-haskell - }: - mkDerivation { - pname = "ghcjs-th"; - version = "0.1.0.0"; - src = configuredSrc + /lib/ghcjs-th; - libraryHaskellDepends = [ - base binary bytestring containers ghc-prim ghci template-haskell - ]; - homepage = "https://github.com/ghcjs"; - license = lib.licenses.mit; - }) {}; - - ghcjs-prim = callPackage - ({ mkDerivation, base, ghc-prim, lib }: - mkDerivation { - pname = "ghcjs-prim"; - version = "0.1.1.0"; - src = ./.; - libraryHaskellDepends = [ base ghc-prim ]; - homepage = "https://github.com/ghcjs"; - license = lib.licenses.mit; - }) {}; -} |