diff options
Diffstat (limited to 'nixpkgs/pkgs/development/compilers')
194 files changed, 4710 insertions, 3912 deletions
diff --git a/nixpkgs/pkgs/development/compilers/4th/default.nix b/nixpkgs/pkgs/development/compilers/4th/default.nix index 7205a979e279..a8923879c06a 100644 --- a/nixpkgs/pkgs/development/compilers/4th/default.nix +++ b/nixpkgs/pkgs/development/compilers/4th/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { makeFlags = [ "-C sources" - "CC=${stdenv.cc}/bin/cc" + "CC=${stdenv.cc.targetPrefix}cc" ]; preInstall = '' @@ -34,6 +34,6 @@ stdenv.mkDerivation rec { description = "A portable Forth compiler"; homepage = "https://thebeez.home.xs4all.nl/4tH/index.html"; license = licenses.lgpl3; - platforms = platforms.linux; + platforms = platforms.all; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/generate-sources.py b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/generate-sources.py index 63b807bd8005..d90953c71d9c 100755 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/generate-sources.py +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/generate-sources.py @@ -6,7 +6,7 @@ import re import requests import sys -releases = ("openjdk8", "openjdk11", "openjdk13", "openjdk14", "openjdk15") +releases = ("openjdk8", "openjdk11", "openjdk13", "openjdk14", "openjdk15", "openjdk16") oses = ("mac", "linux") types = ("jre", "jdk") impls = ("hotspot", "openj9") @@ -63,3 +63,4 @@ for release in releases: with open("sources.json", "w") as f: json.dump(out, f, indent=2, sort_keys=True) + f.write('\n') diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix index 31a7346108e7..0bcfcafaae1b 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-darwin-base.nix @@ -1,4 +1,4 @@ -sourcePerArch: +{ sourcePerArch, knownVulnerabilities ? [] }: { swingSupport ? true # not used for now , lib, stdenv @@ -48,6 +48,7 @@ let cpuName = stdenv.hostPlatform.parsed.cpu.name; description = "AdoptOpenJDK, prebuilt OpenJDK binary"; platforms = [ "x86_64-darwin" ]; # some inherit jre.meta.platforms maintainers = with lib.maintainers; [ taku0 ]; + inherit knownVulnerabilities; }; }; in result diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix index 0fcad6c333f8..95e72facaee2 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix @@ -1,19 +1,34 @@ -sourcePerArch: +{ sourcePerArch, knownVulnerabilities ? [] }: { stdenv , lib , fetchurl , autoPatchelfHook +, makeWrapper +# minimum dependencies , alsaLib -, freetype , fontconfig -, zlib -, xorg +, freetype , libffi +, xorg +, zlib +# runtime dependencies +, cups +# runtime dependencies for GTK+ Look and Feel +, gtkSupport ? true +, cairo +, glib +, gtk3 }: let cpuName = stdenv.hostPlatform.parsed.cpu.name; + runtimeDependencies = [ + cups + ] ++ lib.optionals gtkSupport [ + cairo glib gtk3 + ]; + runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies; in let result = stdenv.mkDerivation rec { @@ -28,11 +43,19 @@ let result = stdenv.mkDerivation rec { }; buildInputs = [ - alsaLib freetype fontconfig zlib xorg.libX11 xorg.libXext xorg.libXtst - xorg.libXi xorg.libXrender stdenv.cc.cc.lib + alsaLib # libasound.so wanted by lib/libjsound.so + fontconfig + freetype + stdenv.cc.cc.lib # libstdc++.so.6 + xorg.libX11 + xorg.libXext + xorg.libXi + xorg.libXrender + xorg.libXtst + zlib ] ++ lib.optional stdenv.isAarch32 libffi; - nativeBuildInputs = [ autoPatchelfHook ]; + nativeBuildInputs = [ autoPatchelfHook makeWrapper ]; # See: https://github.com/NixOS/patchelf/issues/10 dontStrip = 1; @@ -57,6 +80,16 @@ let result = stdenv.mkDerivation rec { cat <<EOF >> "$out/nix-support/setup-hook" if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi EOF + + # We cannot use -exec since wrapProgram is a function but not a command. + # + # jspawnhelper is executed from JVM, so it doesn't need to wrap it, and it + # breaks building OpenJDK (#114495). + for bin in $( find "$out" -executable -type f -not -name jspawnhelper ); do + if patchelf --print-interpreter "$bin" &> /dev/null; then + wrapProgram "$bin" --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}" + fi + done ''; preFixup = '' @@ -74,6 +107,7 @@ let result = stdenv.mkDerivation rec { description = "AdoptOpenJDK, prebuilt OpenJDK binary"; platforms = lib.mapAttrsToList (arch: _: arch + "-linux") sourcePerArch; # some inherit jre.meta.platforms maintainers = with lib.maintainers; [ taku0 ]; + inherit knownVulnerabilities; }; }; in result diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix index d1db77215d16..7fec8fd3ff60 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-darwin-base.nix sources.openjdk11.mac.jdk.hotspot; - jre-hotspot = import ./jdk-darwin-base.nix sources.openjdk11.mac.jre.hotspot; - jdk-openj9 = import ./jdk-darwin-base.nix sources.openjdk11.mac.jdk.openj9; - jre-openj9 = import ./jdk-darwin-base.nix sources.openjdk11.mac.jre.openj9; + jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk11.mac.jdk.hotspot; }; + jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk11.mac.jre.hotspot; }; + jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk11.mac.jdk.openj9; }; + jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk11.mac.jre.openj9; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix index 755ffaab271e..e802e2eea528 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-linux-base.nix sources.openjdk11.linux.jdk.hotspot; - jre-hotspot = import ./jdk-linux-base.nix sources.openjdk11.linux.jre.hotspot; - jdk-openj9 = import ./jdk-linux-base.nix sources.openjdk11.linux.jdk.openj9; - jre-openj9 = import ./jdk-linux-base.nix sources.openjdk11.linux.jre.openj9; + jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk11.linux.jdk.hotspot; }; + jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk11.linux.jre.hotspot; }; + jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk11.linux.jdk.openj9; }; + jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk11.linux.jre.openj9; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix index 48806143c87c..2654c4f9e726 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-darwin-base.nix sources.openjdk13.mac.jdk.hotspot; - jre-hotspot = import ./jdk-darwin-base.nix sources.openjdk13.mac.jre.hotspot; - jdk-openj9 = import ./jdk-darwin-base.nix sources.openjdk13.mac.jdk.openj9; - jre-openj9 = import ./jdk-darwin-base.nix sources.openjdk13.mac.jre.openj9; + jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk13.mac.jdk.hotspot; knownVulnerabilities = ["Support ended"]; }; + jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk13.mac.jre.hotspot; knownVulnerabilities = ["Support ended"]; }; + jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk13.mac.jdk.openj9; knownVulnerabilities = ["Support ended"]; }; + jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk13.mac.jre.openj9; knownVulnerabilities = ["Support ended"]; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix index 1bd7bb884481..c33d6afad102 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-linux-base.nix sources.openjdk13.linux.jdk.hotspot; - jre-hotspot = import ./jdk-linux-base.nix sources.openjdk13.linux.jre.hotspot; - jdk-openj9 = import ./jdk-linux-base.nix sources.openjdk13.linux.jdk.openj9; - jre-openj9 = import ./jdk-linux-base.nix sources.openjdk13.linux.jre.openj9; + jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk13.linux.jdk.hotspot; knownVulnerabilities = ["Support ended"]; }; + jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk13.linux.jre.hotspot; knownVulnerabilities = ["Support ended"]; }; + jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk13.linux.jdk.openj9; knownVulnerabilities = ["Support ended"]; }; + jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk13.linux.jre.openj9; knownVulnerabilities = ["Support ended"]; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix index e440903ad526..6941a6dd0ddf 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-darwin-base.nix sources.openjdk14.mac.jdk.hotspot; - jre-hotspot = import ./jdk-darwin-base.nix sources.openjdk14.mac.jre.hotspot; - jdk-openj9 = import ./jdk-darwin-base.nix sources.openjdk14.mac.jdk.openj9; - jre-openj9 = import ./jdk-darwin-base.nix sources.openjdk14.mac.jre.openj9; + jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk14.mac.jdk.hotspot; knownVulnerabilities = ["Support ended"]; }; + jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk14.mac.jre.hotspot; knownVulnerabilities = ["Support ended"]; }; + jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk14.mac.jdk.openj9; knownVulnerabilities = ["Support ended"]; }; + jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk14.mac.jre.openj9; knownVulnerabilities = ["Support ended"]; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix index 90ae65ba970c..756b419434df 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-linux-base.nix sources.openjdk14.linux.jdk.hotspot; - jre-hotspot = import ./jdk-linux-base.nix sources.openjdk14.linux.jre.hotspot; - jdk-openj9 = import ./jdk-linux-base.nix sources.openjdk14.linux.jdk.openj9; - jre-openj9 = import ./jdk-linux-base.nix sources.openjdk14.linux.jre.openj9; + jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk14.linux.jdk.hotspot; knownVulnerabilities = ["Support ended"]; }; + jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk14.linux.jre.hotspot; knownVulnerabilities = ["Support ended"]; }; + jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk14.linux.jdk.openj9; knownVulnerabilities = ["Support ended"]; }; + jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk14.linux.jre.openj9; knownVulnerabilities = ["Support ended"]; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix index b9b67f271ac5..d627fd9311f8 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-darwin-base.nix sources.openjdk15.mac.jdk.hotspot; - jre-hotspot = import ./jdk-darwin-base.nix sources.openjdk15.mac.jre.hotspot; - jdk-openj9 = import ./jdk-darwin-base.nix sources.openjdk15.mac.jdk.openj9; - jre-openj9 = import ./jdk-darwin-base.nix sources.openjdk15.mac.jre.openj9; + jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jdk.hotspot; }; + jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jre.hotspot; }; + jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jdk.openj9; }; + jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jre.openj9; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix index d48f9312dd6e..6663d9778bc2 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-linux-base.nix sources.openjdk15.linux.jdk.hotspot; - jre-hotspot = import ./jdk-linux-base.nix sources.openjdk15.linux.jre.hotspot; - jdk-openj9 = import ./jdk-linux-base.nix sources.openjdk15.linux.jdk.openj9; - jre-openj9 = import ./jdk-linux-base.nix sources.openjdk15.linux.jre.openj9; + jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.linux.jdk.hotspot; }; + jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.linux.jre.hotspot; }; + jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.linux.jdk.openj9; }; + jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.linux.jre.openj9; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix new file mode 100644 index 000000000000..b2bf2877c8a8 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix @@ -0,0 +1,9 @@ +let + sources = builtins.fromJSON (builtins.readFile ./sources.json); +in +{ + jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jdk.hotspot; }; + jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jre.hotspot; }; + jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jdk.openj9; }; + jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jre.openj9; }; +} diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix new file mode 100644 index 000000000000..738b31fe1d12 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix @@ -0,0 +1,9 @@ +let + sources = builtins.fromJSON (builtins.readFile ./sources.json); +in +{ + jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.linux.jdk.hotspot; }; + jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.linux.jre.hotspot; }; + jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.linux.jdk.openj9; }; + jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.linux.jre.openj9; }; +} diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix index a170e0141cf0..5e2d42276ce7 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-darwin-base.nix sources.openjdk8.mac.jdk.hotspot; - jre-hotspot = import ./jdk-darwin-base.nix sources.openjdk8.mac.jre.hotspot; - jdk-openj9 = import ./jdk-darwin-base.nix sources.openjdk8.mac.jdk.openj9; - jre-openj9 = import ./jdk-darwin-base.nix sources.openjdk8.mac.jre.openj9; + jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk8.mac.jdk.hotspot; }; + jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk8.mac.jre.hotspot; }; + jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk8.mac.jdk.openj9; }; + jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk8.mac.jre.openj9; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix index 4937eace4903..c2a4085f730c 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix @@ -2,8 +2,8 @@ let sources = builtins.fromJSON (builtins.readFile ./sources.json); in { - jdk-hotspot = import ./jdk-linux-base.nix sources.openjdk8.linux.jdk.hotspot; - jre-hotspot = import ./jdk-linux-base.nix sources.openjdk8.linux.jre.hotspot; - jdk-openj9 = import ./jdk-linux-base.nix sources.openjdk8.linux.jdk.openj9; - jre-openj9 = import ./jdk-linux-base.nix sources.openjdk8.linux.jre.openj9; + jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk8.linux.jdk.hotspot; }; + jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk8.linux.jre.hotspot; }; + jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk8.linux.jdk.openj9; }; + jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk8.linux.jre.openj9; }; } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/sources.json b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/sources.json index 14c887554f89..22a893c72427 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/sources.json +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-bin/sources.json @@ -4,92 +4,92 @@ "jdk": { "hotspot": { "aarch64": { - "build": "11", - "sha256": "f90c6f941a95e20e305870700328804e5b48acb69d4928dc9c4627b3c755ae8a", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "420c5d1e5dc66b2ed7dedd30a7bdf94bfaed10d5e1b07dc579722bf60a8114a9", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" }, "armv6l": { - "build": "11", - "sha256": "082a13a9a5fbcf7ca45e67ab39e9682a9ef9e3779395e37aa0bf235e42a8eaf5", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11/OpenJDK11U-jdk_arm_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "34908da9c200f5ef71b8766398b79fd166f8be44d87f97510667698b456c8d44", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jdk_arm_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" }, "armv7l": { - "build": "11", - "sha256": "082a13a9a5fbcf7ca45e67ab39e9682a9ef9e3779395e37aa0bf235e42a8eaf5", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11/OpenJDK11U-jdk_arm_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "34908da9c200f5ef71b8766398b79fd166f8be44d87f97510667698b456c8d44", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jdk_arm_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" }, "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "11", - "sha256": "a3c52b73a76bed0f113604165eb4f2020b767e188704d8cc0bfc8bc4eb596712", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1/OpenJDK11U-jdk_x64_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "ae78aa45f84642545c01e8ef786dfd700d2226f8b12881c844d6a1f71789cb99", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" } }, "openj9": { "aarch64": { - "build": "11", - "sha256": "f0426b6d37085d471a7f577ce6f28af7cc8fe35b9b0b09a5111eccaed80a0447", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11_openj9-0.23.0/OpenJDK11U-jdk_aarch64_linux_openj9_11.0.9_11_openj9-0.23.0.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "0ce9a8c38d154540610dfe03e59389734deb91c5cb9258408404c5026d4afa41", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9_openj9-0.24.0/OpenJDK11U-jdk_aarch64_linux_openj9_11.0.10_9_openj9-0.24.0.tar.gz", + "version": "11.0.10-ea" }, "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "11", - "sha256": "812d58fac39465802039291a1bc530b4feaaa61b58664d9c458a075921ae8091", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11_openj9-0.23.0/OpenJDK11U-jdk_x64_linux_openj9_11.0.9_11_openj9-0.23.0.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "941d5df125d2ad426391340f539408b13d61d00ed31dd79142ff1ac84864a79f", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9_openj9-0.24.0/OpenJDK11U-jdk_x64_linux_openj9_11.0.10_9_openj9-0.24.0.tar.gz", + "version": "11.0.10" } } }, "jre": { "hotspot": { "aarch64": { - "build": "11", - "sha256": "89b9b3108afda968a97961c5602a896bae31fea7c95195b54be5ad68b3af9e45", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "5f9a894bd694f598f2befa4a605169685ac8bcb8ec68d25e587e8db4d2307b74", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" }, "armv6l": { - "build": "11", - "sha256": "8e52de3c7a24edb74e423631fa90a09f7af3193aa9e6e4837b337192669530b0", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11/OpenJDK11U-jre_arm_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "2f2da2149c089c84f00b0eda63c31b77c8b51a1c080e18a70ecb5a78ba40d8c6", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jre_arm_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" }, "armv7l": { - "build": "11", - "sha256": "8e52de3c7a24edb74e423631fa90a09f7af3193aa9e6e4837b337192669530b0", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11/OpenJDK11U-jre_arm_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "2f2da2149c089c84f00b0eda63c31b77c8b51a1c080e18a70ecb5a78ba40d8c6", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jre_arm_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" }, "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "11", - "sha256": "2ed263b662afb8b5d2964d1c9941d20031d07e5af68679ebefdca35d40bb91b1", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1/OpenJDK11U-jre_x64_linux_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "25fdcf9427095ac27c8bdfc82096ad2e615693a3f6ea06c700fca7ffb271131a", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jre_x64_linux_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" } }, "openj9": { "aarch64": { - "build": "11", - "sha256": "b73f406dba1560dc194ac891452a1aacc2ba3b3e5e7b55e91a64559f8c2d9539", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11_openj9-0.23.0/OpenJDK11U-jre_aarch64_linux_openj9_11.0.9_11_openj9-0.23.0.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "c48d2b19bf7040c74dfdcac9e395ba7b8f937522ee756c820465f2e8e3dffec2", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9_openj9-0.24.0/OpenJDK11U-jre_aarch64_linux_openj9_11.0.10_9_openj9-0.24.0.tar.gz", + "version": "11.0.10-ea" }, "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "11", - "sha256": "54c845c167c197ba789eb6c3508faa5b1c95c9abe2ac26878123b6eecc87a111", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11_openj9-0.23.0/OpenJDK11U-jre_x64_linux_openj9_11.0.9_11_openj9-0.23.0.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "7e5f97071f8b86c22c36ddfd7f821c3e8ec531c1128e2e6c931b2e64118a517a", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9_openj9-0.24.0/OpenJDK11U-jre_x64_linux_openj9_11.0.10_9_openj9-0.24.0.tar.gz", + "version": "11.0.10" } } } @@ -100,20 +100,20 @@ "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "11", - "sha256": "7b21961ffb2649e572721a0dfad64169b490e987937b661cb4e13a594c21e764", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1/OpenJDK11U-jdk_x64_mac_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "ee7c98c9d79689aca6e717965747b8bf4eec5413e89d5444cc2bd6dbd59e3811", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jdk_x64_mac_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" } }, "openj9": { "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "11", - "sha256": "382238443d4495d976f9e1a66b0f6e3bc250d3d009b64d2c29d44022afd7e418", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1_openj9-0.23.0/OpenJDK11U-jdk_x64_mac_openj9_11.0.9_11_openj9-0.23.0.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "58f931dc30160b04da2d94af32e0dfa384f4b2cf92b7217c0937fd057e668d54", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9_openj9-0.24.0/OpenJDK11U-jdk_x64_mac_openj9_11.0.10_9_openj9-0.24.0.tar.gz", + "version": "11.0.10" } } }, @@ -122,20 +122,20 @@ "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "11", - "sha256": "cd8965dc8dbd0b5b3b25b6a336857d9bb622965e039b77e3048bc825e5512e95", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1/OpenJDK11U-jre_x64_mac_hotspot_11.0.9_11.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "215e94323d7c74fe31e5383261e3bfc8e9ca3dc03212738c48d29868b02fe875", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jre_x64_mac_hotspot_11.0.10_9.tar.gz", + "version": "11.0.10" } }, "openj9": { "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "11", - "sha256": "33a868f12bbe9326f658e60abe48dac658df33578b3719f551355855a87d1911", - "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9%2B11.1_openj9-0.23.0/OpenJDK11U-jre_x64_mac_openj9_11.0.9_11_openj9-0.23.0.tar.gz", - "version": "11.0.9" + "build": "9", + "sha256": "6e353f0b38a7192ad3e0522009065c7c24356e0d9329899477b21e39d2a7a8da", + "url": "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9_openj9-0.24.0/OpenJDK11U-jre_x64_mac_openj9_11.0.10_9_openj9-0.24.0.tar.gz", + "version": "11.0.10" } } } @@ -146,19 +146,19 @@ "jdk": { "hotspot": { "aarch64": { - "build": "8", + "build": "8.1", "sha256": "0e6081cb51f8a6f3062bef4f4c45dbe1fccfd3f3b4b5d52522a3edb76581e3af", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jdk_aarch64_linux_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" }, "armv6l": { - "build": "8", + "build": "8.1", "sha256": "9beec080f2b2a7f6883b024272f4e8d5a0b027325e83647be318215781af1d1a", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jdk_arm_linux_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" }, "armv7l": { - "build": "8", + "build": "8.1", "sha256": "9beec080f2b2a7f6883b024272f4e8d5a0b027325e83647be318215781af1d1a", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jdk_arm_linux_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" @@ -166,7 +166,7 @@ "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "9ccc063569f19899fd08e41466f8c4cd4e05058abdb5178fa374cb365dcf5998", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jdk_x64_linux_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" @@ -176,7 +176,7 @@ "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "aeecf6d30d0c847db81d07793cf97e5dc44890c29366d7d9f8f9f397f6c52590", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8_openj9-0.18.0/OpenJDK13U-jdk_x64_linux_openj9_13.0.2_8_openj9-0.18.0.tar.gz", "version": "13.0.2" @@ -186,7 +186,7 @@ "jre": { "hotspot": { "aarch64": { - "build": "8", + "build": "8.1", "sha256": "6c4b69d1609f4c65c576c80d6aa101de80048f8ce5566f890e8fff5349228bae", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jre_aarch64_linux_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" @@ -194,7 +194,7 @@ "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "897f16fe8e056395209e35d2384013bd1ff250e717465769079e3f4793628c34", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jre_x64_linux_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" @@ -204,7 +204,7 @@ "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "a0ab38607811e282f64082edc68a2dea3fa6a5113391efb124a6d7d02883110a", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8_openj9-0.18.0/OpenJDK13U-jre_x64_linux_openj9_13.0.2_8_openj9-0.18.0.tar.gz", "version": "13.0.2" @@ -218,7 +218,7 @@ "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "0ddb24efdf5aab541898d19b7667b149a1a64a8bd039b708fc58ee0284fa7e07", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jdk_x64_mac_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" @@ -228,7 +228,7 @@ "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "dd8d92eec98a3455ec5cd065a0a6672cc1aef280c6a68c507c372ccc1d98fbaa", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8_openj9-0.18.0/OpenJDK13U-jdk_x64_mac_openj9_13.0.2_8_openj9-0.18.0.tar.gz", "version": "13.0.2" @@ -240,7 +240,7 @@ "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "3149b9ebf0db1eaf2dc152df9efae82003e7971efb1cf550060e6a4798fe8c5c", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8/OpenJDK13U-jre_x64_mac_hotspot_13.0.2_8.tar.gz", "version": "13.0.2" @@ -250,7 +250,7 @@ "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "8", + "build": "8.1", "sha256": "6a8a636fca4c7e368241e232a37cd73c9867cdec8f0869fd158b1f58c6128cc2", "url": "https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8_openj9-0.18.0/OpenJDK13U-jre_x64_mac_openj9_13.0.2_8_openj9-0.18.0.tar.gz", "version": "13.0.2" @@ -394,92 +394,92 @@ "jdk": { "hotspot": { "aarch64": { - "build": "9", - "sha256": "84398a1566d66ee5a88f3326fb7f0b70504eb510190f8f798bdb386481a3900e", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jdk_aarch64_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "6e8b6b037148cf20a284b5b257ec7bfdf9cc31ccc87778d0dfd95a2fddf228d4", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jdk_aarch64_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" }, "armv6l": { - "build": "9", - "sha256": "bef5e9f4ab8a87645fa2b3d0ffb9f2b97374caa03cd1296597e8c86e8360d5a2", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jdk_arm_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "ff39c0380224e419d940382c4d651cb1e6297a794854e0cc459c1fd4973b3368", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jdk_arm_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" }, "armv7l": { - "build": "9", - "sha256": "bef5e9f4ab8a87645fa2b3d0ffb9f2b97374caa03cd1296597e8c86e8360d5a2", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jdk_arm_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "ff39c0380224e419d940382c4d651cb1e6297a794854e0cc459c1fd4973b3368", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jdk_arm_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" }, "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "9", - "sha256": "61045ecb9434e3320dbc2c597715f9884586b7a18a56d29851b4d4a4d48a2a5e", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jdk_x64_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "94f20ca8ea97773571492e622563883b8869438a015d02df6028180dd9acc24d", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jdk_x64_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" } }, "openj9": { "aarch64": { - "build": "9", - "sha256": "6206643ec4a57597f73880423b72fc06c1018d92cc6b02972ec3ea3fe4d853a2", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9_openj9-0.23.0/OpenJDK15U-jdk_aarch64_linux_openj9_15.0.1_9_openj9-0.23.0.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "b69a4bc87ed2e985d252cff02d53f1a11b8d83d39e0800cd4a1cab4521375314", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7_openj9-0.24.0/OpenJDK15U-jdk_aarch64_linux_openj9_15.0.2_7_openj9-0.24.0.tar.gz", + "version": "15.0.2-ea" }, "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "9", - "sha256": "b1561f7a69c977bfc9991e61e96dcb200c39300dd9ad423254af117c189e4a8d", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9_openj9-0.23.0/OpenJDK15U-jdk_x64_linux_openj9_15.0.1_9_openj9-0.23.0.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "5515ccd79b1b5e8d8a615b80d5fe1272f7bb41100e46d94fb78ee611ea014816", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7_openj9-0.24.0/OpenJDK15U-jdk_x64_linux_openj9_15.0.2_7_openj9-0.24.0.tar.gz", + "version": "15.0.2" } } }, "jre": { "hotspot": { "aarch64": { - "build": "9", - "sha256": "9eecdd39239545b922878abf51015030ba9aed4dda5c4574ddbc669a71ddab31", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jre_aarch64_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "1c1fc968d76004b0be0042027712835dcbe3570a6fc3a208157a4ab6adabbef2", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jre_aarch64_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" }, "armv6l": { - "build": "9", - "sha256": "f289d1b9fc05099889eaa9a52d352275d44698f3448153cc2ef05f2fa1c04cca", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jre_arm_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "304be224952dbea7000cda6223b2978b3eefdf2e3749032c3b381a213c8d9c5e", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jre_arm_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" }, "armv7l": { - "build": "9", - "sha256": "f289d1b9fc05099889eaa9a52d352275d44698f3448153cc2ef05f2fa1c04cca", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jre_arm_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "304be224952dbea7000cda6223b2978b3eefdf2e3749032c3b381a213c8d9c5e", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jre_arm_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" }, "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "9", - "sha256": "e619197c7a5757631f6ea9c912ab47528ebf64c27cf788cdad22bc9245779411", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jre_x64_linux_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "31af7efdb1cc0ffd001bc145c3d255266889ad6b502133283ae8bf233d11334c", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jre_x64_linux_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" } }, "openj9": { "aarch64": { - "build": "9", - "sha256": "1db3c28e8c423d005fcf3b0c8a081061e56c51966273e32e3930d4c57c21bf49", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9_openj9-0.23.0/OpenJDK15U-jre_aarch64_linux_openj9_15.0.1_9_openj9-0.23.0.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "37492012e75d75021dfb2b25fe5cc73664c03fee85532cec30ce4f5a4e5389c6", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7_openj9-0.24.0/OpenJDK15U-jre_aarch64_linux_openj9_15.0.2_7_openj9-0.24.0.tar.gz", + "version": "15.0.2-ea" }, "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "9", - "sha256": "e47fdadfe91f554f3e343b24e678b6862673f9b1dce3703efd1447950188357b", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9_openj9-0.23.0/OpenJDK15U-jre_x64_linux_openj9_15.0.1_9_openj9-0.23.0.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "a4ae1b7275fcfd6d87a3387edacc8e353dc95ee44f00ca5a348ea90331ec2084", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7_openj9-0.24.0/OpenJDK15U-jre_x64_linux_openj9_15.0.2_7_openj9-0.24.0.tar.gz", + "version": "15.0.2" } } } @@ -490,20 +490,20 @@ "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "9", - "sha256": "d32f9429c4992cef7be559a15c542011503d6bc38c89379800cd209a9d7ec539", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jdk_x64_mac_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "d358a7ff03905282348c6c80562a4da2e04eb377b60ad2152be4c90f8d580b7f", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jdk_x64_mac_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" } }, "openj9": { "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "9", - "sha256": "c9b19fd1fda9c581aa0bcddbf5f821204c351a1de29da1c5aa51cb680ee99517", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9.1_openj9-0.23.0/OpenJDK15U-jdk_x64_mac_openj9_15.0.1_9_openj9-0.23.0.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "1336ae5529af3a0e35ae569e4188944831aeed7080a482f2490fc619380cbe53", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7_openj9-0.24.0/OpenJDK15U-jdk_x64_mac_openj9_15.0.2_7_openj9-0.24.0.tar.gz", + "version": "15.0.2" } } }, @@ -512,20 +512,162 @@ "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "9", - "sha256": "fde1713fc51e824a08f8eeb5e2b8a2acf21424d5f9a0e70cfd2e85a77c827bc4", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9/OpenJDK15U-jre_x64_mac_hotspot_15.0.1_9.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "6a7150fa3ca8277394ff5bae6f56a70f61d2144a5dbbea4f008d86a3e5498795", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7/OpenJDK15U-jre_x64_mac_hotspot_15.0.2_7.tar.gz", + "version": "15.0.2" } }, "openj9": { "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "9", - "sha256": "e7c3710d6cc23480ac66eba79b48d9e2bebec34ba688f3053bb5eba406a2c315", - "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.1%2B9.1_openj9-0.23.0/OpenJDK15U-jre_x64_mac_openj9_15.0.1_9_openj9-0.23.0.tar.gz", - "version": "15.0.1" + "build": "7", + "sha256": "2c0ba5e66764d660037343db4bf32f1ed75ad27661e54e9a4df23d40cae448b0", + "url": "https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15.0.2%2B7_openj9-0.24.0/OpenJDK15U-jre_x64_mac_openj9_15.0.2_7_openj9-0.24.0.tar.gz", + "version": "15.0.2" + } + } + } + } + }, + "openjdk16": { + "linux": { + "jdk": { + "hotspot": { + "aarch64": { + "build": "36", + "sha256": "7217a9f9be3b0c8dfc78538f95fd2deb493eb651152d975062920566492b2574", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jdk_aarch64_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + }, + "armv6l": { + "build": "36", + "sha256": "f1d32ba01a40c98889f31368c0e987d6bbda65a7c50b8c088623b48e3a90104a", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jdk_arm_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + }, + "armv7l": { + "build": "36", + "sha256": "f1d32ba01a40c98889f31368c0e987d6bbda65a7c50b8c088623b48e3a90104a", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jdk_arm_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + }, + "packageType": "jdk", + "vmType": "hotspot", + "x86_64": { + "build": "36", + "sha256": "2e031cf37018161c9e59b45fa4b98ff2ce4ce9297b824c512989d579a70f8422", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jdk_x64_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + } + }, + "openj9": { + "aarch64": { + "build": "36", + "sha256": "f4d4e0c0e9e0a4d0f14172878cee5e1a0ae73170058e1c183a452f8d97331ac0", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36_openj9-0.25.0/OpenJDK16-jdk_aarch64_linux_openj9_16_36_openj9-0.25.0.tar.gz", + "version": "16.0.0-ea" + }, + "packageType": "jdk", + "vmType": "openj9", + "x86_64": { + "build": "36", + "sha256": "9f9b327d08cbc71b32f28004ae9d9c2c84ff9bc335cac3068c5a5737bfa4606f", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36_openj9-0.25.0/OpenJDK16-jdk_x64_linux_openj9_16_36_openj9-0.25.0.tar.gz", + "version": "16.0.0" + } + } + }, + "jre": { + "hotspot": { + "aarch64": { + "build": "36", + "sha256": "947b02342513b085946b2e7c376cc1f1cfe89600bc3d30455160f88d41da3509", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jre_aarch64_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + }, + "armv6l": { + "build": "36", + "sha256": "4d3f351a161792779417ee2730413a976258c4cc5f323526f1fbc0cca82aca6e", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jre_arm_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + }, + "armv7l": { + "build": "36", + "sha256": "4d3f351a161792779417ee2730413a976258c4cc5f323526f1fbc0cca82aca6e", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jre_arm_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + }, + "packageType": "jre", + "vmType": "hotspot", + "x86_64": { + "build": "36", + "sha256": "4aa99cbe5a6838c3ed29fa7aa7bee95c39ddd41e3f7544178dcd257b15a9359e", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jre_x64_linux_hotspot_16_36.tar.gz", + "version": "16.0.0" + } + }, + "openj9": { + "aarch64": { + "build": "36", + "sha256": "13ae42f5040d4e5d97b8809e27ebfdf8f7326604771963d85b2c1385abe13742", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36_openj9-0.25.0/OpenJDK16-jre_aarch64_linux_openj9_16_36_openj9-0.25.0.tar.gz", + "version": "16.0.0-ea" + }, + "packageType": "jre", + "vmType": "openj9", + "x86_64": { + "build": "36", + "sha256": "302b8b9bba4f51d0a9ac087ed91929dbd3ae52cf5a5b6c150373563012db60d9", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36_openj9-0.25.0/OpenJDK16-jre_x64_linux_openj9_16_36_openj9-0.25.0.tar.gz", + "version": "16.0.0" + } + } + } + }, + "mac": { + "jdk": { + "hotspot": { + "packageType": "jdk", + "vmType": "hotspot", + "x86_64": { + "build": "36", + "sha256": "b66761b55fd493ed2a5f4df35a32b338ec34a9e0a1244439e3156561ab27c511", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jdk_x64_mac_hotspot_16_36.tar.gz", + "version": "16.0.0" + } + }, + "openj9": { + "packageType": "jdk", + "vmType": "openj9", + "x86_64": { + "build": "36", + "sha256": "e6075cbe939b4de165cc8b4b91352f8885d549873f5cd419e75eba737502542e", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36_openj9-0.25.0/OpenJDK16-jdk_x64_mac_openj9_16_36_openj9-0.25.0.tar.gz", + "version": "16.0.0" + } + } + }, + "jre": { + "hotspot": { + "packageType": "jre", + "vmType": "hotspot", + "x86_64": { + "build": "36", + "sha256": "92cb07e9e9d075996d1a9e0ccfc1d35e6f97f7e188e9bb78088ee1066062a428", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16-jre_x64_mac_hotspot_16_36.tar.gz", + "version": "16.0.0" + } + }, + "openj9": { + "packageType": "jre", + "vmType": "openj9", + "x86_64": { + "build": "36", + "sha256": "9e5c31582778ca5c08fc221e185dc0f4dbce2091cbc69966a1e2617344b722f1", + "url": "https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36_openj9-0.25.0/OpenJDK16-jre_x64_mac_openj9_16_36_openj9-0.25.0.tar.gz", + "version": "16.0.0" } } } @@ -536,92 +678,92 @@ "jdk": { "hotspot": { "aarch64": { - "build": "10", - "sha256": "cfbde5191027c6d25af44af8a3d64625c6e22422dea8c4af6fe9240e7e249baa", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jdk_aarch64_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "9c07cf2099bbc6c850c46fd870bd243f5fcb6635181eabb312bdffe43ffc5080", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_jdk8u282-b08.tar.gz", + "version": "8.0.282" }, "armv6l": { - "build": "10", - "sha256": "b005e9e8a912aa6605debdea3685a223c077d5a4ba7c90bca02d804c5f39d0b9", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jdk_arm_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "1", + "sha256": "e2e41a8705061dfcc766bfb6b7edd4c699e94aac68e4deeb28c8e76734a46fb7", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u275-b01/OpenJDK8U-jdk_arm_linux_hotspot_8u275b01.tar.gz", + "version": "8.0.275" }, "armv7l": { - "build": "10", - "sha256": "b005e9e8a912aa6605debdea3685a223c077d5a4ba7c90bca02d804c5f39d0b9", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jdk_arm_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "1", + "sha256": "e2e41a8705061dfcc766bfb6b7edd4c699e94aac68e4deeb28c8e76734a46fb7", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u275-b01/OpenJDK8U-jdk_arm_linux_hotspot_8u275b01.tar.gz", + "version": "8.0.275" }, "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "10", - "sha256": "6f124b69d07d8d3edf39b9aa5c58473f63a380b686ddb73a5495e01d25c2939a", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jdk_x64_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "e6e6e0356649b9696fa5082cfcb0663d4bef159fc22d406e3a012e71fce83a5c", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u282b08.tar.gz", + "version": "8.0.282" } }, "openj9": { "aarch64": { - "build": "10", - "sha256": "bbc78dc8caf25372578a95287bcf672c4bf62af23939d4a988634b2a1356cd89", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10_openj9-0.23.0/OpenJDK8U-jdk_aarch64_linux_openj9_8u272b10_openj9-0.23.0.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "e107d3b8092f71ee042284b0fc0f0430ef214916812ce02aa6d549aa81b6dc70", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08_openj9-0.24.0/OpenJDK8U-jdk_aarch64_linux_openj9_8u282b08_openj9-0.24.0.tar.gz", + "version": "8.0.282-ea" }, "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "10", - "sha256": "ca852f976e5b27ccd9b73a527a517496bda865b2ae2a85517ca74486fb8de7da", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10_openj9-0.23.0/OpenJDK8U-jdk_x64_linux_openj9_8u272b10_openj9-0.23.0.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "ef10c776dccdff02da6222002a3c023c1cc47d50dd1f6f81314da3d1fe28d13e", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08_openj9-0.24.0/OpenJDK8U-jdk_x64_linux_openj9_8u282b08_openj9-0.24.0.tar.gz", + "version": "8.0.282" } } }, "jre": { "hotspot": { "aarch64": { - "build": "10", - "sha256": "ed3a862d83dd1f19037fc6ccf73500f2ecf453eb245af8b70bec3fb80d084289", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jre_aarch64_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "5ffa116636b90bac486faba2882a2121aca1398a5426ef3e4ad0d913985e680d", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jre_aarch64_linux_hotspot_jdk8u282-b08.tar.gz", + "version": "8.0.282" }, "armv6l": { - "build": "10", - "sha256": "906113d909d81b930c4eb519512d1cc9f9be9789dfd349128d6e7efaeeb36e1c", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jre_arm_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "1", + "sha256": "2e228d39d00ba8d974fd8ccdaaee0225833e79594251b64c724485c4fc94870f", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u275-b01/OpenJDK8U-jre_arm_linux_hotspot_8u275b01.tar.gz", + "version": "8.0.275" }, "armv7l": { - "build": "10", - "sha256": "906113d909d81b930c4eb519512d1cc9f9be9789dfd349128d6e7efaeeb36e1c", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jre_arm_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "1", + "sha256": "2e228d39d00ba8d974fd8ccdaaee0225833e79594251b64c724485c4fc94870f", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u275-b01/OpenJDK8U-jre_arm_linux_hotspot_8u275b01.tar.gz", + "version": "8.0.275" }, "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "10", - "sha256": "e6894601a559c5226c6dc337308df263444d356a6430f4aabb66e02607c82956", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jre_x64_linux_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "3b2e2c6ad3ee04a58ffb8d629e3e242b0ae87b38cfd06425e4446b1f9490f521", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jre_x64_linux_hotspot_8u282b08.tar.gz", + "version": "8.0.282" } }, "openj9": { "aarch64": { - "build": "10", - "sha256": "b0891c3493a9fc6135700d065a826fc67223d54e9d0da3c41b57e6cb6897b726", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10_openj9-0.23.0/OpenJDK8U-jre_aarch64_linux_openj9_8u272b10_openj9-0.23.0.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "1ffc7ac14546ee5e16e0efd616073baaf1b80f55abf61257095f132ded9da1e5", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08_openj9-0.24.0/OpenJDK8U-jre_aarch64_linux_openj9_8u282b08_openj9-0.24.0.tar.gz", + "version": "8.0.282-ea" }, "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "10", - "sha256": "a4e58f3c15ca3bc15cb3aaa9f116de972809ca52ae81e0726f84c059442174d5", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10_openj9-0.23.0/OpenJDK8U-jre_x64_linux_openj9_8u272b10_openj9-0.23.0.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "4fad259c32eb23ec98925c8b2cf28aaacbdb55e034db74c31a7636e75b6af08d", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08_openj9-0.24.0/OpenJDK8U-jre_x64_linux_openj9_8u282b08_openj9-0.24.0.tar.gz", + "version": "8.0.282" } } } @@ -632,20 +774,20 @@ "packageType": "jdk", "vmType": "hotspot", "x86_64": { - "build": "10", - "sha256": "091f9ee39b0bdbc8af8ec19f51aaa0f73e416c2e93a8fb2c79b82f4caac83ab6", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jdk_x64_mac_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "1766d756f6e4a5d41b539f2ecf83e5a33e9336bd75f1602e8f4b4afbb8f47aaa", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_x64_mac_hotspot_8u282b08.tar.gz", + "version": "8.0.282" } }, "openj9": { "packageType": "jdk", "vmType": "openj9", "x86_64": { - "build": "10", - "sha256": "bbd66ec27a4ea9b0b0952f501e1837e69c24262f64b316dab0408d1a8633a527", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10.1_openj9-0.23.0/OpenJDK8U-jdk_x64_mac_openj9_8u272b10_openj9-0.23.0.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "265d4fb01b61ed7a3a9fae6a50bcf6322687b5f08de8598d8e42263cbd8b5772", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08_openj9-0.24.0/OpenJDK8U-jdk_x64_mac_openj9_8u282b08_openj9-0.24.0.tar.gz", + "version": "8.0.282" } } }, @@ -654,20 +796,20 @@ "packageType": "jre", "vmType": "hotspot", "x86_64": { - "build": "10", - "sha256": "afb9c08cb8b93d8e7d4f1e48ced3d43cfb3082491595a2eaf1f00c48abd25428", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10/OpenJDK8U-jre_x64_mac_hotspot_8u272b10.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "9e7a40d570d5151aae23a2fb017359248f5fb82c547c3ecd860c992770228afb", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jre_x64_mac_hotspot_8u282b08.tar.gz", + "version": "8.0.282" } }, "openj9": { "packageType": "jre", "vmType": "openj9", "x86_64": { - "build": "10", - "sha256": "4d90e85240113189d897a86731e672b37a6e345c056f35c7719cb27f3d08385b", - "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u272-b10.1_openj9-0.23.0/OpenJDK8U-jre_x64_mac_openj9_8u272b10_openj9-0.23.0.tar.gz", - "version": "8.0.272" + "build": "8", + "sha256": "884aa20b3aaed504b18ee21575c8da20838f80fb96036e78e70ff6ef613a5283", + "url": "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08_openj9-0.24.0/OpenJDK8U-jre_x64_mac_openj9_8u282b08_openj9-0.24.0.tar.gz", + "version": "8.0.282" } } } diff --git a/nixpkgs/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix b/nixpkgs/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix index e20983380a43..d062c8605b66 100644 --- a/nixpkgs/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix +++ b/nixpkgs/pkgs/development/compilers/adoptopenjdk-icedtea-web/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "adoptopenjdk-icedtea-web"; - version = "1.8.4"; + version = "1.8.6"; src = fetchFromGitHub { owner = "AdoptOpenJDK"; repo = "IcedTea-Web"; rev = "icedtea-web-${version}"; - sha256 = "0pxijw9v5k4j840jczglx9qyfd57df390g5jdaz3qafblfg0k10n"; + sha256 = "sha256-meqbFLGwCMpFoOVAfvtriRAS8ZWr374eSN3m0CdC2aM="; }; nativeBuildInputs = [ autoreconfHook pkg-config bc ]; diff --git a/nixpkgs/pkgs/development/compilers/aldor/default.nix b/nixpkgs/pkgs/development/compilers/aldor/default.nix index 2654cc467fe2..3799f2c92127 100644 --- a/nixpkgs/pkgs/development/compilers/aldor/default.nix +++ b/nixpkgs/pkgs/development/compilers/aldor/default.nix @@ -10,8 +10,8 @@ stdenv.mkDerivation { rev = "15471e75f3d65b93150f414ebcaf59a03054b68d"; }; - buildInputs = [ gmp which flex bison makeWrapper autoconf automake libtool - jdk perl ]; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ gmp which flex bison autoconf automake libtool jdk perl ]; preConfigure = '' cd aldor ; diff --git a/nixpkgs/pkgs/development/compilers/arachne-pnr/default.nix b/nixpkgs/pkgs/development/compilers/arachne-pnr/default.nix index 030da03add84..a08ad91c4a1c 100644 --- a/nixpkgs/pkgs/development/compilers/arachne-pnr/default.nix +++ b/nixpkgs/pkgs/development/compilers/arachne-pnr/default.nix @@ -1,30 +1,28 @@ { lib, stdenv, fetchFromGitHub, icestorm }: -with builtins; - stdenv.mkDerivation rec { pname = "arachne-pnr"; version = "2019.07.29"; src = fetchFromGitHub { - owner = "yosyshq"; - repo = "arachne-pnr"; - rev = "c40fb2289952f4f120cc10a5a4c82a6fb88442dc"; + owner = "yosyshq"; + repo = "arachne-pnr"; + rev = "c40fb2289952f4f120cc10a5a4c82a6fb88442dc"; sha256 = "0lg9rccr486cvips3jf289af2b4a2j9chc8iqnkhykgi1hw4pszc"; }; enableParallelBuilding = true; - makeFlags = - [ "PREFIX=$(out)" - "ICEBOX=${icestorm}/share/icebox" - ]; + makeFlags = [ + "PREFIX=$(out)" + "ICEBOX=${icestorm}/share/icebox" + ]; - patchPhase = '' + postPatch = '' substituteInPlace ./Makefile \ - --replace 'echo UNKNOWN' 'echo ${substring 0 10 src.rev}' + --replace 'echo UNKNOWN' 'echo ${lib.substring 0 10 src.rev}' ''; - meta = { + meta = with lib; { description = "Place and route tool for FPGAs"; longDescription = '' Arachne-pnr implements the place and route step of @@ -37,8 +35,8 @@ stdenv.mkDerivation rec { the IceStorm [2] icepack command. ''; homepage = "https://github.com/cseed/arachne-pnr"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ shell thoughtpolice ]; - platforms = lib.platforms.linux; + license = licenses.mit; + maintainers = with maintainers; [ shell thoughtpolice ]; + platforms = platforms.unix; }; } diff --git a/nixpkgs/pkgs/development/compilers/bluespec/default.nix b/nixpkgs/pkgs/development/compilers/bluespec/default.nix index defe78d7c318..7a76d4948e73 100644 --- a/nixpkgs/pkgs/development/compilers/bluespec/default.nix +++ b/nixpkgs/pkgs/development/compilers/bluespec/default.nix @@ -27,13 +27,13 @@ let ghcWithPackages = ghc.withPackages (g: (with g; [old-time regex-compat syb split ])); in stdenv.mkDerivation rec { pname = "bluespec"; - version = "unstable-2020.11.04"; + version = "unstable-2021.03.29"; src = fetchFromGitHub { owner = "B-Lang-org"; repo = "bsc"; - rev = "103357f32cf63f2ca2b16ebc8e2c675ec5562464"; - sha256 = "0iikzx0fxky0fmc31lyxfldy1wixr2mayzcn24b8d76wd4ix1vk3"; + rev = "00185f7960bd1bd5554a1167be9f37e1f18ac454"; + sha256 = "1bcdhql4cla137d8xr8m2h21dyxv0jpjpalpr5mgj2jxqfsmkbrn"; }; enableParallelBuilding = true; diff --git a/nixpkgs/pkgs/development/compilers/bs-platform/default.nix b/nixpkgs/pkgs/development/compilers/bs-platform/default.nix index 50274c9eca67..ea56b85dec9e 100644 --- a/nixpkgs/pkgs/development/compilers/bs-platform/default.nix +++ b/nixpkgs/pkgs/development/compilers/bs-platform/default.nix @@ -21,7 +21,7 @@ in description = "A JavaScript backend for OCaml focused on smooth integration and clean generated code"; homepage = "https://bucklescript.github.io"; license = licenses.lgpl3; - maintainers = with maintainers; [ turbomack gamb anmonteiro ]; + maintainers = with maintainers; [ turbomack gamb ]; platforms = platforms.all; }; }) diff --git a/nixpkgs/pkgs/development/compilers/carp/default.nix b/nixpkgs/pkgs/development/compilers/carp/default.nix index b0a14534b082..d83e70a703aa 100644 --- a/nixpkgs/pkgs/development/compilers/carp/default.nix +++ b/nixpkgs/pkgs/development/compilers/carp/default.nix @@ -3,20 +3,20 @@ haskellPackages.mkDerivation rec { pname = "carp"; - version = "0.3.0"; + version = "0.5.0"; src = fetchFromGitHub { owner = "carp-lang"; repo = "Carp"; rev = "v${version}"; - sha256 = "07yk3gy4l6h3k7sh8al7lgwk75a13zxwfp7siqpb5gnnqr1z3brc"; + sha256 = "sha256-nTSMY8bq0b/JvE/XQGDC4St2sqdni12E5WQU5FXnuCg="; }; - buildDepends = [ makeWrapper ]; + buildTools = [ makeWrapper ]; executableHaskellDepends = with haskellPackages; [ - HUnit blaze-markup blaze-html split cmdargs ansi-terminal cmark - edit-distance + HUnit blaze-markup blaze-html split ansi-terminal cmark + edit-distance hashable open-browser optparse-applicative ]; isExecutable = true; diff --git a/nixpkgs/pkgs/development/compilers/chicken/4/default.nix b/nixpkgs/pkgs/development/compilers/chicken/4/default.nix index 8d29c7c9a2b5..5445469b776e 100644 --- a/nixpkgs/pkgs/development/compilers/chicken/4/default.nix +++ b/nixpkgs/pkgs/development/compilers/chicken/4/default.nix @@ -1,4 +1,4 @@ -{ newScope } : +{ lib, newScope } : let callPackage = newScope self; @@ -18,4 +18,4 @@ let egg2nix = callPackage ./egg2nix.nix { }; }; -in self +in lib.recurseIntoAttrs self diff --git a/nixpkgs/pkgs/development/compilers/chicken/4/egg2nix.nix b/nixpkgs/pkgs/development/compilers/chicken/4/egg2nix.nix index d2f2805ed7ff..422053ea9d81 100644 --- a/nixpkgs/pkgs/development/compilers/chicken/4/egg2nix.nix +++ b/nixpkgs/pkgs/development/compilers/chicken/4/egg2nix.nix @@ -1,4 +1,4 @@ -{ eggDerivation, fetchurl, chickenEggs }: +{ lib, eggDerivation, fetchurl, chickenEggs }: # Note: This mostly reimplements the default.nix already contained in # the tarball. Is there a nicer way than duplicating code? diff --git a/nixpkgs/pkgs/development/compilers/chicken/4/eggDerivation.nix b/nixpkgs/pkgs/development/compilers/chicken/4/eggDerivation.nix index 4c84ef8c42b0..10cf91579a40 100644 --- a/nixpkgs/pkgs/development/compilers/chicken/4/eggDerivation.nix +++ b/nixpkgs/pkgs/development/compilers/chicken/4/eggDerivation.nix @@ -18,7 +18,8 @@ in stdenv.mkDerivation ({ name = "chicken-${name}"; propagatedBuildInputs = buildInputs; - buildInputs = [ makeWrapper chicken ]; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ chicken ]; CSC_OPTIONS = lib.concatStringsSep " " cscOptions; diff --git a/nixpkgs/pkgs/development/compilers/chicken/5/default.nix b/nixpkgs/pkgs/development/compilers/chicken/5/default.nix index 8d29c7c9a2b5..5445469b776e 100644 --- a/nixpkgs/pkgs/development/compilers/chicken/5/default.nix +++ b/nixpkgs/pkgs/development/compilers/chicken/5/default.nix @@ -1,4 +1,4 @@ -{ newScope } : +{ lib, newScope } : let callPackage = newScope self; @@ -18,4 +18,4 @@ let egg2nix = callPackage ./egg2nix.nix { }; }; -in self +in lib.recurseIntoAttrs self diff --git a/nixpkgs/pkgs/development/compilers/chicken/5/eggDerivation.nix b/nixpkgs/pkgs/development/compilers/chicken/5/eggDerivation.nix index 7102126206ae..a6d19eaeb137 100644 --- a/nixpkgs/pkgs/development/compilers/chicken/5/eggDerivation.nix +++ b/nixpkgs/pkgs/development/compilers/chicken/5/eggDerivation.nix @@ -17,7 +17,8 @@ in stdenv.mkDerivation ({ name = "chicken-${name}"; propagatedBuildInputs = buildInputs; - buildInputs = [ makeWrapper chicken ]; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ chicken ]; CSC_OPTIONS = lib.concatStringsSep " " cscOptions; diff --git a/nixpkgs/pkgs/development/compilers/clean/default.nix b/nixpkgs/pkgs/development/compilers/clean/default.nix index f8121958e292..e360bb05f40d 100644 --- a/nixpkgs/pkgs/development/compilers/clean/default.nix +++ b/nixpkgs/pkgs/development/compilers/clean/default.nix @@ -1,7 +1,8 @@ { lib, stdenv, fetchurl }: stdenv.mkDerivation { - name = "clean-3.0"; + pname = "clean"; + version = "3.0"; src = if stdenv.hostPlatform.system == "i686-linux" then (fetchurl { @@ -45,8 +46,8 @@ stdenv.mkDerivation { ''; homepage = "http://wiki.clean.cs.ru.nl/Clean"; - license = lib.licenses.lgpl21; - maintainers = [ lib.maintainers.kkallio ]; + license = lib.licenses.bsd2; + maintainers = [ lib.maintainers.erin ]; platforms = [ "i686-linux" "x86_64-linux" ]; }; } diff --git a/nixpkgs/pkgs/development/compilers/cmdstan/default.nix b/nixpkgs/pkgs/development/compilers/cmdstan/default.nix index df674b67db85..c52ffa0bafdb 100644 --- a/nixpkgs/pkgs/development/compilers/cmdstan/default.nix +++ b/nixpkgs/pkgs/development/compilers/cmdstan/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, python, runtimeShell }: +{ lib, stdenv, fetchurl, python3, runtimeShell }: stdenv.mkDerivation { name = "cmdstan-2.17.1"; @@ -12,7 +12,7 @@ stdenv.mkDerivation { enableParallelBuilding = true; doCheck = true; - checkInputs = [ python ]; + checkInputs = [ python3 ]; checkPhase = "python ./runCmdStanTests.py src/test/interface"; # see #5368 installPhase = '' diff --git a/nixpkgs/pkgs/development/compilers/crystal/default.nix b/nixpkgs/pkgs/development/compilers/crystal/default.nix index e887bc220895..58e4b3b355d2 100644 --- a/nixpkgs/pkgs/development/compilers/crystal/default.nix +++ b/nixpkgs/pkgs/development/compilers/crystal/default.nix @@ -3,7 +3,7 @@ , fetchFromGitHub , fetchurl , lib -# Dependencies + # Dependencies , boehmgc , coreutils , git @@ -32,11 +32,10 @@ # # We need to keep around at least the latest version released with a stable # NixOS - let archs = { - x86_64-linux = "linux-x86_64"; - i686-linux = "linux-i686"; + x86_64-linux = "linux-x86_64"; + i686-linux = "linux-i686"; x86_64-darwin = "darwin-x86_64"; }; @@ -45,223 +44,239 @@ let checkInputs = [ git gmp openssl readline libxml2 libyaml ]; genericBinary = { version, sha256s, rel ? 1 }: - stdenv.mkDerivation rec { - pname = "crystal-binary"; - inherit version; - - src = fetchurl { - url = "https://github.com/crystal-lang/crystal/releases/download/${version}/crystal-${version}-${toString rel}-${arch}.tar.gz"; - sha256 = sha256s.${stdenv.system}; + stdenv.mkDerivation rec { + pname = "crystal-binary"; + inherit version; + + src = fetchurl { + url = "https://github.com/crystal-lang/crystal/releases/download/${version}/crystal-${version}-${toString rel}-${arch}.tar.gz"; + sha256 = sha256s.${stdenv.system}; + }; + + buildCommand = '' + mkdir -p $out + tar --strip-components=1 -C $out -xf ${src} + ''; }; - buildCommand = '' - mkdir -p $out - tar --strip-components=1 -C $out -xf ${src} - ''; - }; - commonBuildInputs = extraBuildInputs: [ - boehmgc libatomic_ops pcre libevent libyaml zlib libxml2 openssl + boehmgc + libatomic_ops + pcre + libevent + libyaml + zlib + libxml2 + openssl ] ++ extraBuildInputs - ++ lib.optionals stdenv.isDarwin [ libiconv ]; + ++ lib.optionals stdenv.isDarwin [ libiconv ]; generic = ( { version , sha256 , binary , doCheck ? true - , extraBuildInputs ? [] - , buildFlags ? ["all" "docs"] + , extraBuildInputs ? [ ] + , buildFlags ? [ "all" "docs" ] }: - lib.fix (compiler: stdenv.mkDerivation { - pname = "crystal"; - inherit buildFlags doCheck version; + lib.fix (compiler: stdenv.mkDerivation { + pname = "crystal"; + inherit buildFlags doCheck version; - src = fetchFromGitHub { - owner = "crystal-lang"; - repo = "crystal"; - rev = version; - inherit sha256; - }; + src = fetchFromGitHub { + owner = "crystal-lang"; + repo = "crystal"; + rev = version; + inherit sha256; + }; - outputs = [ "out" "lib" "bin" ]; + outputs = [ "out" "lib" "bin" ]; - postPatch = '' - # Add dependency of crystal to docs to avoid issue on flag changes between releases - # https://github.com/crystal-lang/crystal/pull/8792#issuecomment-614004782 - substituteInPlace Makefile \ - --replace 'docs: ## Generate standard library documentation' 'docs: crystal ## Generate standard library documentation' + postPatch = '' + # Add dependency of crystal to docs to avoid issue on flag changes between releases + # https://github.com/crystal-lang/crystal/pull/8792#issuecomment-614004782 + substituteInPlace Makefile \ + --replace 'docs: ## Generate standard library documentation' 'docs: crystal ## Generate standard library documentation' - substituteInPlace src/crystal/system/unix/time.cr \ - --replace /usr/share/zoneinfo ${tzdata}/share/zoneinfo + substituteInPlace src/crystal/system/unix/time.cr \ + --replace /usr/share/zoneinfo ${tzdata}/share/zoneinfo - ln -sf spec/compiler spec/std + ln -sf spec/compiler spec/std - # Dirty fix for when no sandboxing is enabled - rm -rf /tmp/crystal - mkdir -p /tmp/crystal + # Dirty fix for when no sandboxing is enabled + rm -rf /tmp/crystal + mkdir -p /tmp/crystal - substituteInPlace spec/std/file_spec.cr \ - --replace '/bin/ls' '${coreutils}/bin/ls' \ - --replace '/usr/share' '/tmp/crystal' \ - --replace '/usr' '/tmp' + substituteInPlace spec/std/file_spec.cr \ + --replace '/bin/ls' '${coreutils}/bin/ls' \ + --replace '/usr/share' '/tmp/crystal' \ + --replace '/usr' '/tmp' - substituteInPlace spec/std/process_spec.cr \ - --replace '/bin/cat' '${coreutils}/bin/cat' \ - --replace '/bin/ls' '${coreutils}/bin/ls' \ - --replace '/usr/bin/env' '${coreutils}/bin/env' \ - --replace '"env"' '"${coreutils}/bin/env"' \ - --replace '"/usr"' '"/tmp"' + substituteInPlace spec/std/process_spec.cr \ + --replace '/bin/cat' '${coreutils}/bin/cat' \ + --replace '/bin/ls' '${coreutils}/bin/ls' \ + --replace '/usr/bin/env' '${coreutils}/bin/env' \ + --replace '"env"' '"${coreutils}/bin/env"' \ + --replace '"/usr"' '"/tmp"' - substituteInPlace spec/std/socket/tcp_server_spec.cr \ - --replace '{% if flag?(:gnu) %}"listen: "{% else %}"bind: "{% end %}' '"bind: "' + substituteInPlace spec/std/socket/tcp_server_spec.cr \ + --replace '{% if flag?(:gnu) %}"listen: "{% else %}"bind: "{% end %}' '"bind: "' - substituteInPlace spec/std/system_spec.cr \ - --replace '`hostname`' '`${hostname}/bin/hostname`' + substituteInPlace spec/std/system_spec.cr \ + --replace '`hostname`' '`${hostname}/bin/hostname`' - # See https://github.com/crystal-lang/crystal/pull/8640 - substituteInPlace spec/std/http/cookie_spec.cr \ - --replace '01 Jan 2020' '01 Jan #{Time.utc.year + 2}' + # See https://github.com/crystal-lang/crystal/pull/8640 + substituteInPlace spec/std/http/cookie_spec.cr \ + --replace '01 Jan 2020' '01 Jan #{Time.utc.year + 2}' - # See https://github.com/crystal-lang/crystal/issues/8629 - substituteInPlace spec/std/socket/udp_socket_spec.cr \ - --replace 'it "joins and transmits to multicast groups"' 'pending "joins and transmits to multicast groups"' + # See https://github.com/crystal-lang/crystal/issues/8629 + substituteInPlace spec/std/socket/udp_socket_spec.cr \ + --replace 'it "joins and transmits to multicast groups"' 'pending "joins and transmits to multicast groups"' - # See https://github.com/crystal-lang/crystal/pull/8699 - substituteInPlace spec/std/xml/xml_spec.cr \ - --replace 'it "handles errors"' 'pending "handles errors"' - ''; + # See https://github.com/crystal-lang/crystal/pull/8699 + substituteInPlace spec/std/xml/xml_spec.cr \ + --replace 'it "handles errors"' 'pending "handles errors"' + ''; - buildInputs = commonBuildInputs extraBuildInputs; + buildInputs = commonBuildInputs extraBuildInputs; - nativeBuildInputs = [ binary makeWrapper which pkg-config llvmPackages.llvm ]; + nativeBuildInputs = [ binary makeWrapper which pkg-config llvmPackages.llvm ]; - makeFlags = [ - "CRYSTAL_CONFIG_VERSION=${version}" - ]; + makeFlags = [ + "CRYSTAL_CONFIG_VERSION=${version}" + ]; - LLVM_CONFIG = "${llvmPackages.llvm}/bin/llvm-config"; + LLVM_CONFIG = "${llvmPackages.llvm}/bin/llvm-config"; - FLAGS = [ - "--release" - "--single-module" # needed for deterministic builds - ]; + FLAGS = [ + "--release" + "--single-module" # needed for deterministic builds + ]; - # This makes sure we don't keep depending on the previous version of - # crystal used to build this one. - CRYSTAL_LIBRARY_PATH = "${placeholder "lib"}/crystal"; + # This makes sure we don't keep depending on the previous version of + # crystal used to build this one. + CRYSTAL_LIBRARY_PATH = "${placeholder "lib"}/crystal"; - # We *have* to add `which` to the PATH or crystal is unable to build - # stuff later if which is not available. - installPhase = '' - runHook preInstall + # We *have* to add `which` to the PATH or crystal is unable to build + # stuff later if which is not available. + installPhase = '' + runHook preInstall - install -Dm755 .build/crystal $bin/bin/crystal - wrapProgram $bin/bin/crystal \ - --suffix PATH : ${lib.makeBinPath [ pkg-config llvmPackages.clang which ]} \ - --suffix CRYSTAL_PATH : lib:$lib/crystal \ - --suffix CRYSTAL_LIBRARY_PATH : ${ - lib.makeLibraryPath (commonBuildInputs extraBuildInputs) - } - install -dm755 $lib/crystal - cp -r src/* $lib/crystal/ + install -Dm755 .build/crystal $bin/bin/crystal + wrapProgram $bin/bin/crystal \ + --suffix PATH : ${lib.makeBinPath [ pkg-config llvmPackages.clang which ]} \ + --suffix CRYSTAL_PATH : lib:$lib/crystal \ + --suffix CRYSTAL_LIBRARY_PATH : ${ + lib.makeLibraryPath (commonBuildInputs extraBuildInputs) + } + install -dm755 $lib/crystal + cp -r src/* $lib/crystal/ - install -dm755 $out/share/doc/crystal/api - cp -r docs/* $out/share/doc/crystal/api/ - cp -r samples $out/share/doc/crystal/ + install -dm755 $out/share/doc/crystal/api + cp -r docs/* $out/share/doc/crystal/api/ + cp -r samples $out/share/doc/crystal/ - install -Dm644 etc/completion.bash $out/share/bash-completion/completions/crystal - install -Dm644 etc/completion.zsh $out/share/zsh/site-functions/_crystal + install -Dm644 etc/completion.bash $out/share/bash-completion/completions/crystal + install -Dm644 etc/completion.zsh $out/share/zsh/site-functions/_crystal - install -Dm644 man/crystal.1 $out/share/man/man1/crystal.1 + install -Dm644 man/crystal.1 $out/share/man/man1/crystal.1 - install -Dm644 -t $out/share/licenses/crystal LICENSE README.md + install -Dm644 -t $out/share/licenses/crystal LICENSE README.md - mkdir -p $out - ln -s $bin/bin $out/bin - ln -s $lib $out/lib + mkdir -p $out + ln -s $bin/bin $out/bin + ln -s $lib $out/lib - runHook postInstall - ''; + runHook postInstall + ''; - enableParallelBuilding = true; + enableParallelBuilding = true; - dontStrip = true; + dontStrip = true; - checkTarget = "compiler_spec"; + checkTarget = "compiler_spec"; - preCheck = '' - export HOME=/tmp - mkdir -p $HOME/test + preCheck = '' + export HOME=/tmp + mkdir -p $HOME/test - export LIBRARY_PATH=${lib.makeLibraryPath checkInputs}:$LIBRARY_PATH - export PATH=${lib.makeBinPath checkInputs}:$PATH - ''; + export LIBRARY_PATH=${lib.makeLibraryPath checkInputs}:$LIBRARY_PATH + export PATH=${lib.makeBinPath checkInputs}:$PATH + ''; - passthru.buildCrystalPackage = callPackage ./build-package.nix { - crystal = compiler; - }; + passthru.buildCrystalPackage = callPackage ./build-package.nix { + crystal = compiler; + }; - meta = with lib; { - description = "A compiled language with Ruby like syntax and type inference"; - homepage = "https://crystal-lang.org/"; - license = licenses.asl20; - maintainers = with maintainers; [ david50407 fabianhjr manveru peterhoeg ]; - platforms = builtins.attrNames archs; - }; - }) + meta = with lib; { + description = "A compiled language with Ruby like syntax and type inference"; + homepage = "https://crystal-lang.org/"; + license = licenses.asl20; + maintainers = with maintainers; [ david50407 fabianhjr manveru peterhoeg ]; + platforms = builtins.attrNames archs; + # Error running at_exit handler: Nil assertion failed + broken = lib.versions.minor version == "32" && stdenv.isDarwin; + }; + }) ); -in rec { +in +rec { binaryCrystal_0_31 = genericBinary { version = "0.31.1"; sha256s = { - x86_64-linux = "0r8salf572xrnr4m6ll9q5hz6jj8q7ff1rljlhmqb1r26a8mi2ih"; - i686-linux = "0hridnis5vvrswflx0q67xfg5hryhz6ivlwrb9n4pryj5d1gwjrr"; + x86_64-linux = "0r8salf572xrnr4m6ll9q5hz6jj8q7ff1rljlhmqb1r26a8mi2ih"; + i686-linux = "0hridnis5vvrswflx0q67xfg5hryhz6ivlwrb9n4pryj5d1gwjrr"; x86_64-darwin = "1dgxgv0s3swkc5cwawzgpbc6bcd2nx4hjxc7iw2h907y1vgmbipz"; }; }; crystal_0_31 = generic { version = "0.31.1"; - sha256 = "1dswxa32w16gnc6yjym12xj7ibg0g6zk3ngvl76lwdjqb1h6lwz8"; + sha256 = "1dswxa32w16gnc6yjym12xj7ibg0g6zk3ngvl76lwdjqb1h6lwz8"; doCheck = false; # 5 checks are failing now binary = binaryCrystal_0_31; }; crystal_0_32 = generic { version = "0.32.1"; - sha256 = "120ndi3nhh2r52hjvhwfb49cdggr1bzdq6b8xg7irzavhjinfza6"; + sha256 = "120ndi3nhh2r52hjvhwfb49cdggr1bzdq6b8xg7irzavhjinfza6"; binary = crystal_0_31; }; crystal_0_33 = generic { version = "0.33.0"; - sha256 = "1zg0qixcws81s083wrh54hp83ng2pa8iyyafaha55mzrh8293jbi"; + sha256 = "1zg0qixcws81s083wrh54hp83ng2pa8iyyafaha55mzrh8293jbi"; binary = crystal_0_32; }; crystal_0_34 = generic { version = "0.34.0"; - sha256 = "110lfpxk9jnqyznbfnilys65ixj5sdmy8pvvnlhqhc3ccvrlnmq4"; + sha256 = "110lfpxk9jnqyznbfnilys65ixj5sdmy8pvvnlhqhc3ccvrlnmq4"; binary = crystal_0_33; }; crystal_0_35 = generic { version = "0.35.1"; - sha256 = "0p51bjl1nsvwsm64lqq421dcsxa201w7wwq8plw4r8wqarpq0g69"; + sha256 = "0p51bjl1nsvwsm64lqq421dcsxa201w7wwq8plw4r8wqarpq0g69"; binary = crystal_0_34; # Needs git to build as per https://github.com/crystal-lang/crystal/issues/9789 extraBuildInputs = [ git ]; }; crystal_0_36 = generic { - version = "0.36.0"; - sha256 = "0s7g13mrh2jrxxrrrg4hy3gi49rp7fmpn9zg9kj4nbc8w8yir20r"; + version = "0.36.1"; + sha256 = "sha256-5rjrvwZKM4lHpmxLyUVbi0Zw98xT+iJKonxwfUwS/Wk="; binary = crystal_0_35; }; - crystal = crystal_0_36; + crystal_1_0 = generic { + version = "1.0.0"; + sha256 = "sha256-RI+a3w6Rr+uc5jRf7xw0tOenR+q6qii/ewWfID6dbQ8="; + binary = crystal_0_36; + }; + + crystal = crystal_1_0; - crystal2nix = callPackage ./crystal2nix.nix {}; + crystal2nix = callPackage ./crystal2nix.nix { }; } diff --git a/nixpkgs/pkgs/development/compilers/crystal2nix/default.nix b/nixpkgs/pkgs/development/compilers/crystal2nix/default.nix index 25cbbd4d01aa..b1f36b02090c 100644 --- a/nixpkgs/pkgs/development/compilers/crystal2nix/default.nix +++ b/nixpkgs/pkgs/development/compilers/crystal2nix/default.nix @@ -1,14 +1,14 @@ -{ lib, fetchFromGitHub, fetchgit, crystal, makeWrapper, nix-prefetch-git }: +{ lib, fetchFromGitHub, crystal, makeWrapper, nix-prefetch-git }: crystal.buildCrystalPackage rec { pname = "crystal2nix"; - version = "0.1.0"; + version = "0.1.1"; src = fetchFromGitHub { owner = "peterhoeg"; repo = "crystal2nix"; rev = "v${version}"; - sha256 = "sha256-K1ElG8VC/D0axmSRaufH3cE50xNQisAmFucDkV+5O0s="; + sha256 = "sha256-LKZychkhWy/rVdrP3Yo6g8CL1pGdiZlBykzFjnWh0fg="; }; format = "shards"; diff --git a/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix b/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix index b3b7b305fba6..5685f1788764 100644 --- a/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix +++ b/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix @@ -10,47 +10,6 @@ let common = callPackage ./common.nix; in rec { - cudatoolkit_6 = common { - version = "6.0.37"; - url = "http://developer.download.nvidia.com/compute/cuda/6_0/rel/installers/cuda_6.0.37_linux_64.run"; - sha256 = "991e436c7a6c94ec67cf44204d136adfef87baa3ded270544fa211179779bc40"; - gcc = gcc48; - }; - - cudatoolkit_6_5 = common { - version = "6.5.19"; - url = "http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_6.5.19_linux_64.run"; - sha256 = "1x9zdmk8z784d3d35vr2ak1l4h5v4jfjhpxfi9fl9dvjkcavqyaj"; - gcc = gcc48; - }; - - cudatoolkit_7 = common { - version = "7.0.28"; - url = "http://developer.download.nvidia.com/compute/cuda/7_0/Prod/local_installers/cuda_7.0.28_linux.run"; - sha256 = "1km5hpiimx11jcazg0h3mjzk220klwahs2vfqhjavpds5ff2wafi"; - gcc = gcc6; - }; - - cudatoolkit_7_5 = common { - version = "7.5.18"; - url = "http://developer.download.nvidia.com/compute/cuda/7.5/Prod/local_installers/cuda_7.5.18_linux.run"; - sha256 = "1v2ylzp34ijyhcxyh5p6i0cwawwbbdhni2l5l4qm21s1cx9ish88"; - gcc = gcc6; - }; - - cudatoolkit_8 = common { - version = "8.0.61.2"; - url = "https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run"; - sha256 = "1i4xrsqbad283qffvysn88w2pmxzxbbby41lw0j1113z771akv4w"; - runPatches = [ - (fetchurl { - url = "https://developer.nvidia.com/compute/cuda/8.0/Prod2/patches/2/cuda_8.0.61.2_linux-run"; - sha256 = "1iaz5rrsnsb1p99qiqvxn6j3ksc7ry8xlr397kqcjzxqbljbqn9d"; - }) - ]; - gcc = gcc6; - }; - cudatoolkit_9_0 = common { version = "9.0.176.1"; url = "https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run"; @@ -153,5 +112,12 @@ in rec { gcc = gcc9; }; - cudatoolkit_11 = cudatoolkit_11_1; + cudatoolkit_11_2 = common { + version = "11.2.1"; + url = "https://developer.download.nvidia.com/compute/cuda/11.2.1/local_installers/cuda_11.2.1_460.32.03_linux.run"; + sha256 = "sha256-HamMuJfMX1inRFpKZspPaSaGdwbLOvWKZpzc2Nw9F8g="; + gcc = gcc9; + }; + + cudatoolkit_11 = cudatoolkit_11_2; } diff --git a/nixpkgs/pkgs/development/compilers/dmd/default.nix b/nixpkgs/pkgs/development/compilers/dmd/default.nix index 074646f5f416..51f30dbabdaf 100644 --- a/nixpkgs/pkgs/development/compilers/dmd/default.nix +++ b/nixpkgs/pkgs/development/compilers/dmd/default.nix @@ -4,10 +4,10 @@ , targetPackages, fetchpatch, bash , dmdBootstrap ? callPackage ./bootstrap.nix { } , HOST_DMD ? "${dmdBootstrap}/bin/dmd" -, version ? "2.091.1" -, dmdSha256 ? "0brz0n84jdkhr4sq4k91w48p739psbhbb1jk2pi9q60psmx353yr" -, druntimeSha256 ? "0smgpmfriffh110ksski1s5j921kmxbc2zjy0dyj9ksyrxbzklbl" -, phobosSha256 ? "1n00anajgibrfs1xzvrmag28hvbvkc0w1fwlimqbznvhf28rhrxs" +, version ? "2.095.1" +, dmdSha256 ? "sha256:0faca1y42a1h16aml4lb7z118mh9k9fjx3xlw3ki5f1h3ln91xhk" +, druntimeSha256 ? "sha256:0ad4pa5llr9m9wqbvfv4yrcra4zz9qxlh5kx43mrv48f9bcxm2ha" +, phobosSha256 ? "sha256:04w6jw4izix2vbw62j13wvz6q3pi7vivxnmxqj0g8904j5g0cxjl" }: let @@ -53,18 +53,6 @@ stdenv.mkDerivation rec { }) ]; - patchFlags = [ "--directory=dmd" "-p1" "-F3" ]; - patches = [ - (fetchpatch { - url = "https://github.com/dlang/dmd/commit/4157298cf04f7aae9f701432afd1de7b7e05c30f.patch"; - sha256 = "0v4xgqmrx5r8vbx5a4v88s0xnm23mam9nm99yfga7s2sxr0hi5p2"; - }) - (fetchpatch { - url = "https://github.com/dlang/dmd/commit/1b8a4c90b040bf2f0b68a2739de4991315580b13.patch"; - sha256 = "1iih6aalv4fsw9mbrlrybhngkkchzzrzg7q8zl047w36c0x397cs"; - }) - ]; - sourceRoot = "."; # https://issues.dlang.org/show_bug.cgi?id=19553 @@ -76,6 +64,16 @@ stdenv.mkDerivation rec { postPatch = '' substituteInPlace dmd/test/dshell/test6952.d --replace "/usr/bin/env bash" "${bash}/bin/bash" + + rm dmd/test/runnable/gdb1.d + rm dmd/test/runnable/gdb10311.d + rm dmd/test/runnable/gdb14225.d + rm dmd/test/runnable/gdb14276.d + rm dmd/test/runnable/gdb14313.d + rm dmd/test/runnable/gdb14330.d + rm dmd/test/runnable/gdb15729.sh + rm dmd/test/runnable/gdb4149.d + rm dmd/test/runnable/gdb4181.d '' + lib.optionalString stdenv.hostPlatform.isLinux '' substituteInPlace phobos/std/socket.d --replace "assert(ih.addrList[0] == 0x7F_00_00_01);" "" @@ -171,5 +169,7 @@ stdenv.mkDerivation rec { license = licenses.boost; maintainers = with maintainers; [ ThomasMader lionello ]; platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; + # many tests are failing + broken = true; }; } diff --git a/nixpkgs/pkgs/development/compilers/dotnet/combine-packages.nix b/nixpkgs/pkgs/development/compilers/dotnet/combine-packages.nix index 00fb7c6d9b41..a38d44e37efa 100644 --- a/nixpkgs/pkgs/development/compilers/dotnet/combine-packages.nix +++ b/nixpkgs/pkgs/development/compilers/dotnet/combine-packages.nix @@ -4,9 +4,9 @@ let cli = builtins.head packages; in assert lib.assertMsg ((builtins.length packages) != 0) ''You must include at least one package, e.g - `with dotnetCorePackages; combinePackages { - packages = [ sdk_3_0 aspnetcore_2_1 ]; - };`'' ; + `with dotnetCorePackages; combinePackages [ + sdk_3_0 aspnetcore_2_1 + ];`'' ; buildEnv { name = "dotnet-core-combined"; paths = packages; diff --git a/nixpkgs/pkgs/development/compilers/dtc/default.nix b/nixpkgs/pkgs/development/compilers/dtc/default.nix index c5d33590daad..245e5bf2f540 100644 --- a/nixpkgs/pkgs/development/compilers/dtc/default.nix +++ b/nixpkgs/pkgs/development/compilers/dtc/default.nix @@ -1,7 +1,9 @@ { stdenv, lib, fetchgit, flex, bison, pkg-config, which -, pythonSupport ? false, python, swig +, pythonSupport ? false, python ? null, swig }: +assert pythonSupport -> python != null; + stdenv.mkDerivation rec { pname = "dtc"; version = "1.6.0"; diff --git a/nixpkgs/pkgs/development/compilers/ecl/default.nix b/nixpkgs/pkgs/development/compilers/ecl/default.nix index 79a290a6c1c0..083998049c1e 100644 --- a/nixpkgs/pkgs/development/compilers/ecl/default.nix +++ b/nixpkgs/pkgs/development/compilers/ecl/default.nix @@ -70,5 +70,6 @@ stdenv.mkDerivation { license = lib.licenses.mit ; maintainers = [lib.maintainers.raskin]; platforms = lib.platforms.unix; + changelog = "https://gitlab.com/embeddable-common-lisp/ecl/-/raw/${s.version}/CHANGELOG"; }; } diff --git a/nixpkgs/pkgs/development/compilers/elm/default.nix b/nixpkgs/pkgs/development/compilers/elm/default.nix index 333c8c202705..6981bcbd8fdf 100644 --- a/nixpkgs/pkgs/development/compilers/elm/default.nix +++ b/nixpkgs/pkgs/development/compilers/elm/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, pkgs -, haskell, nodejs +, haskell, haskellPackages, nodejs , fetchurl, fetchpatch, makeWrapper, writeScriptBin # Rust dependecies , rustPlatform, openssl, pkg-config, Security @@ -7,7 +7,7 @@ let fetchElmDeps = import ./fetchElmDeps.nix { inherit stdenv lib fetchurl; }; - hsPkgs = haskell.packages.ghc8103.override { + hsPkgs = haskellPackages.override { overrides = self: super: with haskell.lib; with lib; let elmPkgs = rec { elm = overrideCabal (self.callPackage ./packages/elm.nix { }) (drv: { @@ -80,8 +80,8 @@ let # Needed for elm-format indents = self.callPackage ./packages/indents.nix {}; bimap = self.callPackage ./packages/bimap.nix {}; - avh4-lib = self.callPackage ./packages/avh4-lib.nix {}; - elm-format-lib = self.callPackage ./packages/elm-format-lib.nix {}; + avh4-lib = doJailbreak (self.callPackage ./packages/avh4-lib.nix {}); + elm-format-lib = doJailbreak (self.callPackage ./packages/elm-format-lib.nix {}); elm-format-test-lib = self.callPackage ./packages/elm-format-test-lib.nix {}; elm-format-markdown = self.callPackage ./packages/elm-format-markdown.nix {}; }; diff --git a/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix b/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix index 7698d5307327..3453d8d54bf1 100644 --- a/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix +++ b/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix @@ -31,13 +31,13 @@ let sha512 = "HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g=="; }; }; - "@babel/compat-data-7.12.13" = { + "@babel/compat-data-7.13.8" = { name = "_at_babel_slash_compat-data"; packageName = "@babel/compat-data"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.13.tgz"; - sha512 = "U/hshG5R+SIoW7HVWIdmy1cB7s3ki+r3FpyEZiCgpi4tFgPnX/vynY80ZGSASOIrUM6O7VxOgCZgdt7h97bUGg=="; + url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.8.tgz"; + sha512 = "EaI33z19T4qN3xLXsGf48M2cDqa6ei9tPZlfLdb2HC+e/cFtREiRd8hdSqDbwdLB0/+gLwqJmCYASH0z2bUdog=="; }; }; "@babel/core-7.12.10" = { @@ -49,13 +49,13 @@ let sha512 = "eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w=="; }; }; - "@babel/generator-7.12.15" = { + "@babel/generator-7.13.9" = { name = "_at_babel_slash_generator"; packageName = "@babel/generator"; - version = "7.12.15"; + version = "7.13.9"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz"; - sha512 = "6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ=="; + url = "https://registry.npmjs.org/@babel/generator/-/generator-7.13.9.tgz"; + sha512 = "mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw=="; }; }; "@babel/helper-annotate-as-pure-7.12.13" = { @@ -76,40 +76,40 @@ let sha512 = "CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA=="; }; }; - "@babel/helper-compilation-targets-7.12.13" = { + "@babel/helper-compilation-targets-7.13.10" = { name = "_at_babel_slash_helper-compilation-targets"; packageName = "@babel/helper-compilation-targets"; - version = "7.12.13"; + version = "7.13.10"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.12.13.tgz"; - sha512 = "dXof20y/6wB5HnLOGyLh/gobsMvDNoekcC+8MCV2iaTd5JemhFkPD73QB+tK3iFC9P0xJC73B6MvKkyUfS9cCw=="; + url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz"; + sha512 = "/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA=="; }; }; - "@babel/helper-create-class-features-plugin-7.12.13" = { + "@babel/helper-create-class-features-plugin-7.13.10" = { name = "_at_babel_slash_helper-create-class-features-plugin"; packageName = "@babel/helper-create-class-features-plugin"; - version = "7.12.13"; + version = "7.13.10"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.13.tgz"; - sha512 = "Vs/e9wv7rakKYeywsmEBSRC9KtmE7Px+YBlESekLeJOF0zbGUicGfXSNi3o+tfXSNS48U/7K9mIOOCR79Cl3+Q=="; + url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.10.tgz"; + sha512 = "YV7r2YxdTUaw84EwNkyrRke/TJHR/UXGiyvACRqvdVJ2/syV2rQuJNnaRLSuYiop8cMRXOgseTGoJCWX0q2fFg=="; }; }; - "@babel/helper-create-regexp-features-plugin-7.12.13" = { + "@babel/helper-create-regexp-features-plugin-7.12.17" = { name = "_at_babel_slash_helper-create-regexp-features-plugin"; packageName = "@babel/helper-create-regexp-features-plugin"; - version = "7.12.13"; + version = "7.12.17"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.13.tgz"; - sha512 = "XC+kiA0J3at6E85dL5UnCYfVOcIZ834QcAY0TIpgUVnz0zDzg+0TtvZTnJ4g9L1dPRGe30Qi03XCIS4tYCLtqw=="; + url = "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz"; + sha512 = "p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg=="; }; }; - "@babel/helper-explode-assignable-expression-7.12.13" = { + "@babel/helper-explode-assignable-expression-7.13.0" = { name = "_at_babel_slash_helper-explode-assignable-expression"; packageName = "@babel/helper-explode-assignable-expression"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.13.tgz"; - sha512 = "5loeRNvMo9mx1dA/d6yNi+YiKziJZFylZnCo1nmFF4qPU4yJ14abhWESuSMQSlQxWdxdOFzxXjk/PpfudTtYyw=="; + url = "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.13.0.tgz"; + sha512 = "qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA=="; }; }; "@babel/helper-function-name-7.12.13" = { @@ -130,22 +130,22 @@ let sha512 = "DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg=="; }; }; - "@babel/helper-hoist-variables-7.12.13" = { + "@babel/helper-hoist-variables-7.13.0" = { name = "_at_babel_slash_helper-hoist-variables"; packageName = "@babel/helper-hoist-variables"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.12.13.tgz"; - sha512 = "KSC5XSj5HreRhYQtZ3cnSnQwDzgnbdUDEFsxkN0m6Q3WrCRt72xrnZ8+h+pX7YxM7hr87zIO3a/v5p/H3TrnVw=="; + url = "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.0.tgz"; + sha512 = "0kBzvXiIKfsCA0y6cFEIJf4OdzfpRuNk4+YTeHZpGGc666SATFKTz6sRncwFnQk7/ugJ4dSrCj6iJuvW4Qwr2g=="; }; }; - "@babel/helper-member-expression-to-functions-7.12.13" = { + "@babel/helper-member-expression-to-functions-7.13.0" = { name = "_at_babel_slash_helper-member-expression-to-functions"; packageName = "@babel/helper-member-expression-to-functions"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.13.tgz"; - sha512 = "B+7nN0gIL8FZ8SvMcF+EPyB21KnCcZHQZFczCxbiNGV/O0rsrSBlWGLzmtBJ3GMjSVMIm4lpFhR+VdVBuIsUcQ=="; + url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.0.tgz"; + sha512 = "yvRf8Ivk62JwisqV1rFRMxiSMDGnN6KH1/mDMmIrij4jztpQNRoHqqMG3U6apYbGRPJpgPalhva9Yd06HlUxJQ=="; }; }; "@babel/helper-module-imports-7.12.13" = { @@ -157,13 +157,13 @@ let sha512 = "NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g=="; }; }; - "@babel/helper-module-transforms-7.12.13" = { + "@babel/helper-module-transforms-7.13.0" = { name = "_at_babel_slash_helper-module-transforms"; packageName = "@babel/helper-module-transforms"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz"; - sha512 = "acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA=="; + url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.0.tgz"; + sha512 = "Ls8/VBwH577+pw7Ku1QkUWIyRRNHpYlts7+qSqBBFCW3I8QteB9DxfcZ5YJpOwH6Ihe/wn8ch7fMGOP1OhEIvw=="; }; }; "@babel/helper-optimise-call-expression-7.12.13" = { @@ -175,31 +175,31 @@ let sha512 = "BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA=="; }; }; - "@babel/helper-plugin-utils-7.12.13" = { + "@babel/helper-plugin-utils-7.13.0" = { name = "_at_babel_slash_helper-plugin-utils"; packageName = "@babel/helper-plugin-utils"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz"; - sha512 = "C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA=="; + url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz"; + sha512 = "ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ=="; }; }; - "@babel/helper-remap-async-to-generator-7.12.13" = { + "@babel/helper-remap-async-to-generator-7.13.0" = { name = "_at_babel_slash_helper-remap-async-to-generator"; packageName = "@babel/helper-remap-async-to-generator"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.13.tgz"; - sha512 = "Qa6PU9vNcj1NZacZZI1Mvwt+gXDH6CTfgAkSjeRMLE8HxtDK76+YDId6NQR+z7Rgd5arhD2cIbS74r0SxD6PDA=="; + url = "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz"; + sha512 = "pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg=="; }; }; - "@babel/helper-replace-supers-7.12.13" = { + "@babel/helper-replace-supers-7.13.0" = { name = "_at_babel_slash_helper-replace-supers"; packageName = "@babel/helper-replace-supers"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz"; - sha512 = "pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg=="; + url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.0.tgz"; + sha512 = "Segd5me1+Pz+rmN/NFBOplMbZG3SqRJOBlY+mA0SxAv6rjj7zJqr1AVr3SfzUVTLCv7ZLU5FycOM/SBGuLPbZw=="; }; }; "@babel/helper-simple-access-7.12.13" = { @@ -238,76 +238,76 @@ let sha512 = "np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw=="; }; }; - "@babel/helper-validator-option-7.12.11" = { + "@babel/helper-validator-option-7.12.17" = { name = "_at_babel_slash_helper-validator-option"; packageName = "@babel/helper-validator-option"; - version = "7.12.11"; + version = "7.12.17"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.11.tgz"; - sha512 = "TBFCyj939mFSdeX7U7DDj32WtzYY7fDcalgq8v3fBZMNOJQNn7nOYzMaUCiPxPYfCup69mtIpqlKgMZLvQ8Xhw=="; + url = "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz"; + sha512 = "TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw=="; }; }; - "@babel/helper-wrap-function-7.12.13" = { + "@babel/helper-wrap-function-7.13.0" = { name = "_at_babel_slash_helper-wrap-function"; packageName = "@babel/helper-wrap-function"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.12.13.tgz"; - sha512 = "t0aZFEmBJ1LojdtJnhOaQEVejnzYhyjWHSsNSNo8vOYRbAJNh6r6GQF7pd36SqG7OKGbn+AewVQ/0IfYfIuGdw=="; + url = "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz"; + sha512 = "1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA=="; }; }; - "@babel/helpers-7.12.13" = { + "@babel/helpers-7.13.10" = { name = "_at_babel_slash_helpers"; packageName = "@babel/helpers"; - version = "7.12.13"; + version = "7.13.10"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.13.tgz"; - sha512 = "oohVzLRZ3GQEk4Cjhfs9YkJA4TdIDTObdBEZGrd6F/T0GPSnuV6l22eMcxlvcvzVIPH3VTtxbseudM1zIE+rPQ=="; + url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.10.tgz"; + sha512 = "4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ=="; }; }; - "@babel/highlight-7.12.13" = { + "@babel/highlight-7.13.10" = { name = "_at_babel_slash_highlight"; packageName = "@babel/highlight"; - version = "7.12.13"; + version = "7.13.10"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz"; - sha512 = "kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww=="; + url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz"; + sha512 = "5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg=="; }; }; - "@babel/parser-7.12.15" = { + "@babel/parser-7.13.10" = { name = "_at_babel_slash_parser"; packageName = "@babel/parser"; - version = "7.12.15"; + version = "7.13.10"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/parser/-/parser-7.12.15.tgz"; - sha512 = "AQBOU2Z9kWwSZMd6lNjCX0GUgFonL1wAM1db8L8PMk9UDaGsRCArBkU4Sc+UCM3AE4hjbXx+h58Lb3QT4oRmrA=="; + url = "https://registry.npmjs.org/@babel/parser/-/parser-7.13.10.tgz"; + sha512 = "0s7Mlrw9uTWkYua7xWr99Wpk2bnGa0ANleKfksYAES8LpWH4gW1OUr42vqKNf0us5UQNfru2wPqMqRITzq/SIQ=="; }; }; - "@babel/plugin-proposal-async-generator-functions-7.12.13" = { + "@babel/plugin-proposal-async-generator-functions-7.13.8" = { name = "_at_babel_slash_plugin-proposal-async-generator-functions"; packageName = "@babel/plugin-proposal-async-generator-functions"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.13.tgz"; - sha512 = "1KH46Hx4WqP77f978+5Ye/VUbuwQld2hph70yaw2hXS2v7ER2f3nlpNMu909HO2rbvP0NKLlMVDPh9KXklVMhA=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.8.tgz"; + sha512 = "rPBnhj+WgoSmgq+4gQUtXx/vOcU+UYtjy1AA/aeD61Hwj410fwYyqfUcRP3lR8ucgliVJL/G7sXcNUecC75IXA=="; }; }; - "@babel/plugin-proposal-class-properties-7.12.13" = { + "@babel/plugin-proposal-class-properties-7.13.0" = { name = "_at_babel_slash_plugin-proposal-class-properties"; packageName = "@babel/plugin-proposal-class-properties"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.13.tgz"; - sha512 = "8SCJ0Ddrpwv4T7Gwb33EmW1V9PY5lggTO+A8WjyIwxrSHDUyBw4MtF96ifn1n8H806YlxbVCoKXbbmzD6RD+cA=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz"; + sha512 = "KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg=="; }; }; - "@babel/plugin-proposal-dynamic-import-7.12.1" = { + "@babel/plugin-proposal-dynamic-import-7.13.8" = { name = "_at_babel_slash_plugin-proposal-dynamic-import"; packageName = "@babel/plugin-proposal-dynamic-import"; - version = "7.12.1"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.12.1.tgz"; - sha512 = "a4rhUSZFuq5W8/OO8H7BL5zspjnc1FLd9hlOxIK/f7qG4a0qsqk8uvF/ywgBA8/OmjsapjpvaEOYItfGG1qIvQ=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz"; + sha512 = "ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ=="; }; }; "@babel/plugin-proposal-export-namespace-from-7.12.13" = { @@ -319,31 +319,31 @@ let sha512 = "INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw=="; }; }; - "@babel/plugin-proposal-json-strings-7.12.13" = { + "@babel/plugin-proposal-json-strings-7.13.8" = { name = "_at_babel_slash_plugin-proposal-json-strings"; packageName = "@babel/plugin-proposal-json-strings"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.12.13.tgz"; - sha512 = "v9eEi4GiORDg8x+Dmi5r8ibOe0VXoKDeNPYcTTxdGN4eOWikrJfDJCJrr1l5gKGvsNyGJbrfMftC2dTL6oz7pg=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.13.8.tgz"; + sha512 = "w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q=="; }; }; - "@babel/plugin-proposal-logical-assignment-operators-7.12.13" = { + "@babel/plugin-proposal-logical-assignment-operators-7.13.8" = { name = "_at_babel_slash_plugin-proposal-logical-assignment-operators"; packageName = "@babel/plugin-proposal-logical-assignment-operators"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.12.13.tgz"; - sha512 = "fqmiD3Lz7jVdK6kabeSr1PZlWSUVqSitmHEe3Z00dtGTKieWnX9beafvavc32kjORa5Bai4QNHgFDwWJP+WtSQ=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.13.8.tgz"; + sha512 = "aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A=="; }; }; - "@babel/plugin-proposal-nullish-coalescing-operator-7.12.13" = { + "@babel/plugin-proposal-nullish-coalescing-operator-7.13.8" = { name = "_at_babel_slash_plugin-proposal-nullish-coalescing-operator"; packageName = "@babel/plugin-proposal-nullish-coalescing-operator"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.13.tgz"; - sha512 = "Qoxpy+OxhDBI5kRqliJFAl4uWXk3Bn24WeFstPH0iLymFehSAUR8MHpqU7njyXv/qbo7oN6yTy5bfCmXdKpo1Q=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.13.8.tgz"; + sha512 = "iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A=="; }; }; "@babel/plugin-proposal-numeric-separator-7.12.13" = { @@ -355,40 +355,40 @@ let sha512 = "O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w=="; }; }; - "@babel/plugin-proposal-object-rest-spread-7.12.13" = { + "@babel/plugin-proposal-object-rest-spread-7.13.8" = { name = "_at_babel_slash_plugin-proposal-object-rest-spread"; packageName = "@babel/plugin-proposal-object-rest-spread"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.13.tgz"; - sha512 = "WvA1okB/0OS/N3Ldb3sziSrXg6sRphsBgqiccfcQq7woEn5wQLNX82Oc4PlaFcdwcWHuQXAtb8ftbS8Fbsg/sg=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.13.8.tgz"; + sha512 = "DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g=="; }; }; - "@babel/plugin-proposal-optional-catch-binding-7.12.13" = { + "@babel/plugin-proposal-optional-catch-binding-7.13.8" = { name = "_at_babel_slash_plugin-proposal-optional-catch-binding"; packageName = "@babel/plugin-proposal-optional-catch-binding"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.13.tgz"; - sha512 = "9+MIm6msl9sHWg58NvqpNpLtuFbmpFYk37x8kgnGzAHvX35E1FyAwSUt5hIkSoWJFSAH+iwU8bJ4fcD1zKXOzg=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz"; + sha512 = "0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA=="; }; }; - "@babel/plugin-proposal-optional-chaining-7.12.13" = { + "@babel/plugin-proposal-optional-chaining-7.13.8" = { name = "_at_babel_slash_plugin-proposal-optional-chaining"; packageName = "@babel/plugin-proposal-optional-chaining"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.13.tgz"; - sha512 = "0ZwjGfTcnZqyV3y9DSD1Yk3ebp+sIUpT2YDqP8hovzaNZnQq2Kd7PEqa6iOIUDBXBt7Jl3P7YAcEIL5Pz8u09Q=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.13.8.tgz"; + sha512 = "hpbBwbTgd7Cz1QryvwJZRo1U0k1q8uyBmeXOSQUjdg/A2TASkhR/rz7AyqZ/kS8kbpsNA80rOYbxySBJAqmhhQ=="; }; }; - "@babel/plugin-proposal-private-methods-7.12.13" = { + "@babel/plugin-proposal-private-methods-7.13.0" = { name = "_at_babel_slash_plugin-proposal-private-methods"; packageName = "@babel/plugin-proposal-private-methods"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.12.13.tgz"; - sha512 = "sV0V57uUwpauixvR7s2o75LmwJI6JECwm5oPUY5beZB1nBl2i37hc7CJGqB5G+58fur5Y6ugvl3LRONk5x34rg=="; + url = "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.13.0.tgz"; + sha512 = "MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q=="; }; }; "@babel/plugin-proposal-unicode-property-regex-7.12.13" = { @@ -508,22 +508,22 @@ let sha512 = "A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ=="; }; }; - "@babel/plugin-transform-arrow-functions-7.12.13" = { + "@babel/plugin-transform-arrow-functions-7.13.0" = { name = "_at_babel_slash_plugin-transform-arrow-functions"; packageName = "@babel/plugin-transform-arrow-functions"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.13.tgz"; - sha512 = "tBtuN6qtCTd+iHzVZVOMNp+L04iIJBpqkdY42tWbmjIT5wvR2kx7gxMBsyhQtFzHwBbyGi9h8J8r9HgnOpQHxg=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz"; + sha512 = "96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg=="; }; }; - "@babel/plugin-transform-async-to-generator-7.12.13" = { + "@babel/plugin-transform-async-to-generator-7.13.0" = { name = "_at_babel_slash_plugin-transform-async-to-generator"; packageName = "@babel/plugin-transform-async-to-generator"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.13.tgz"; - sha512 = "psM9QHcHaDr+HZpRuJcE1PXESuGWSCcbiGFFhhwfzdbTxaGDVzuVtdNYliAwcRo3GFg0Bc8MmI+AvIGYIJG04A=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz"; + sha512 = "3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg=="; }; }; "@babel/plugin-transform-block-scoped-functions-7.12.13" = { @@ -544,31 +544,31 @@ let sha512 = "Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ=="; }; }; - "@babel/plugin-transform-classes-7.12.13" = { + "@babel/plugin-transform-classes-7.13.0" = { name = "_at_babel_slash_plugin-transform-classes"; packageName = "@babel/plugin-transform-classes"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.13.tgz"; - sha512 = "cqZlMlhCC1rVnxE5ZGMtIb896ijL90xppMiuWXcwcOAuFczynpd3KYemb91XFFPi3wJSe/OcrX9lXoowatkkxA=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.13.0.tgz"; + sha512 = "9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g=="; }; }; - "@babel/plugin-transform-computed-properties-7.12.13" = { + "@babel/plugin-transform-computed-properties-7.13.0" = { name = "_at_babel_slash_plugin-transform-computed-properties"; packageName = "@babel/plugin-transform-computed-properties"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.13.tgz"; - sha512 = "dDfuROUPGK1mTtLKyDPUavmj2b6kFu82SmgpztBFEO974KMjJT+Ytj3/oWsTUMBmgPcp9J5Pc1SlcAYRpJ2hRA=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz"; + sha512 = "RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg=="; }; }; - "@babel/plugin-transform-destructuring-7.12.13" = { + "@babel/plugin-transform-destructuring-7.13.0" = { name = "_at_babel_slash_plugin-transform-destructuring"; packageName = "@babel/plugin-transform-destructuring"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.13.tgz"; - sha512 = "Dn83KykIFzjhA3FDPA1z4N+yfF3btDGhjnJwxIj0T43tP0flCujnU8fKgEkf0C1biIpSv9NZegPBQ1J6jYkwvQ=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.0.tgz"; + sha512 = "zym5em7tePoNT9s964c0/KU3JPPnuq7VhIxPRefJ4/s82cD+q1mgKfuGRDMCPL0HTyKz4dISuQlCusfgCJ86HA=="; }; }; "@babel/plugin-transform-dotall-regex-7.12.13" = { @@ -598,13 +598,13 @@ let sha512 = "fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA=="; }; }; - "@babel/plugin-transform-for-of-7.12.13" = { + "@babel/plugin-transform-for-of-7.13.0" = { name = "_at_babel_slash_plugin-transform-for-of"; packageName = "@babel/plugin-transform-for-of"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.13.tgz"; - sha512 = "xCbdgSzXYmHGyVX3+BsQjcd4hv4vA/FDy7Kc8eOpzKmBBPEOTurt0w5fCRQaGl+GSBORKgJdstQ1rHl4jbNseQ=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz"; + sha512 = "IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg=="; }; }; "@babel/plugin-transform-function-name-7.12.13" = { @@ -634,40 +634,40 @@ let sha512 = "kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg=="; }; }; - "@babel/plugin-transform-modules-amd-7.12.13" = { + "@babel/plugin-transform-modules-amd-7.13.0" = { name = "_at_babel_slash_plugin-transform-modules-amd"; packageName = "@babel/plugin-transform-modules-amd"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.12.13.tgz"; - sha512 = "JHLOU0o81m5UqG0Ulz/fPC68/v+UTuGTWaZBUwpEk1fYQ1D9LfKV6MPn4ttJKqRo5Lm460fkzjLTL4EHvCprvA=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.13.0.tgz"; + sha512 = "EKy/E2NHhY/6Vw5d1k3rgoobftcNUmp9fGjb9XZwQLtTctsRBOTRO7RHHxfIky1ogMN5BxN7p9uMA3SzPfotMQ=="; }; }; - "@babel/plugin-transform-modules-commonjs-7.12.13" = { + "@babel/plugin-transform-modules-commonjs-7.13.8" = { name = "_at_babel_slash_plugin-transform-modules-commonjs"; packageName = "@babel/plugin-transform-modules-commonjs"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.13.tgz"; - sha512 = "OGQoeVXVi1259HjuoDnsQMlMkT9UkZT9TpXAsqWplS/M0N1g3TJAn/ByOCeQu7mfjc5WpSsRU+jV1Hd89ts0kQ=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.13.8.tgz"; + sha512 = "9QiOx4MEGglfYZ4XOnU79OHr6vIWUakIj9b4mioN8eQIoEh+pf5p/zEB36JpDFWA12nNMiRf7bfoRvl9Rn79Bw=="; }; }; - "@babel/plugin-transform-modules-systemjs-7.12.13" = { + "@babel/plugin-transform-modules-systemjs-7.13.8" = { name = "_at_babel_slash_plugin-transform-modules-systemjs"; packageName = "@babel/plugin-transform-modules-systemjs"; - version = "7.12.13"; + version = "7.13.8"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.12.13.tgz"; - sha512 = "aHfVjhZ8QekaNF/5aNdStCGzwTbU7SI5hUybBKlMzqIMC7w7Ho8hx5a4R/DkTHfRfLwHGGxSpFt9BfxKCoXKoA=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz"; + sha512 = "hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A=="; }; }; - "@babel/plugin-transform-modules-umd-7.12.13" = { + "@babel/plugin-transform-modules-umd-7.13.0" = { name = "_at_babel_slash_plugin-transform-modules-umd"; packageName = "@babel/plugin-transform-modules-umd"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.12.13.tgz"; - sha512 = "BgZndyABRML4z6ibpi7Z98m4EVLFI9tVsZDADC14AElFaNHHBcJIovflJ6wtCqFxwy2YJ1tJhGRsr0yLPKoN+w=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.13.0.tgz"; + sha512 = "D/ILzAh6uyvkWjKKyFE/W0FzWwasv6vPTSqPcjxFqn6QpX3u8DjRVliq4F2BamO2Wee/om06Vyy+vPkNrd4wxw=="; }; }; "@babel/plugin-transform-named-capturing-groups-regex-7.12.13" = { @@ -697,13 +697,13 @@ let sha512 = "JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ=="; }; }; - "@babel/plugin-transform-parameters-7.12.13" = { + "@babel/plugin-transform-parameters-7.13.0" = { name = "_at_babel_slash_plugin-transform-parameters"; packageName = "@babel/plugin-transform-parameters"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.13.tgz"; - sha512 = "e7QqwZalNiBRHCpJg/P8s/VJeSRYgmtWySs1JwvfwPqhBbiWfOcHDKdeAi6oAyIimoKWBlwc8oTgbZHdhCoVZA=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.13.0.tgz"; + sha512 = "Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw=="; }; }; "@babel/plugin-transform-property-literals-7.12.13" = { @@ -751,13 +751,13 @@ let sha512 = "xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw=="; }; }; - "@babel/plugin-transform-spread-7.12.13" = { + "@babel/plugin-transform-spread-7.13.0" = { name = "_at_babel_slash_plugin-transform-spread"; packageName = "@babel/plugin-transform-spread"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.13.tgz"; - sha512 = "dUCrqPIowjqk5pXsx1zPftSq4sT0aCeZVAxhdgs3AMgyaDmoUT0G+5h3Dzja27t76aUEIJWlFgPJqJ/d4dbTtg=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz"; + sha512 = "V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg=="; }; }; "@babel/plugin-transform-sticky-regex-7.12.13" = { @@ -769,13 +769,13 @@ let sha512 = "Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg=="; }; }; - "@babel/plugin-transform-template-literals-7.12.13" = { + "@babel/plugin-transform-template-literals-7.13.0" = { name = "_at_babel_slash_plugin-transform-template-literals"; packageName = "@babel/plugin-transform-template-literals"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.13.tgz"; - sha512 = "arIKlWYUgmNsF28EyfmiQHJLJFlAJNYkuQO10jL46ggjBpeb2re1P9K9YGxNJB45BqTbaslVysXDYm/g3sN/Qg=="; + url = "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz"; + sha512 = "d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw=="; }; }; "@babel/plugin-transform-typeof-symbol-7.12.13" = { @@ -841,22 +841,22 @@ let sha512 = "/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA=="; }; }; - "@babel/traverse-7.12.13" = { + "@babel/traverse-7.13.0" = { name = "_at_babel_slash_traverse"; packageName = "@babel/traverse"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz"; - sha512 = "3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA=="; + url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz"; + sha512 = "xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ=="; }; }; - "@babel/types-7.12.13" = { + "@babel/types-7.13.0" = { name = "_at_babel_slash_types"; packageName = "@babel/types"; - version = "7.12.13"; + version = "7.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz"; - sha512 = "oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ=="; + url = "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz"; + sha512 = "hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA=="; }; }; "@hapi/address-2.1.4" = { @@ -1066,13 +1066,13 @@ let sha512 = "tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="; }; }; - "@types/node-14.14.25" = { + "@types/node-14.14.34" = { name = "_at_types_slash_node"; packageName = "@types/node"; - version = "14.14.25"; + version = "14.14.34"; src = fetchurl { - url = "https://registry.npmjs.org/@types/node/-/node-14.14.25.tgz"; - sha512 = "EPpXLOVqDvisVxtlbvzfyqSsFeQxltFbluZNRndIb8tr9KiBnYNLzrc1N3pyKUCww2RNrfHDViqDWWE1LCJQtQ=="; + url = "https://registry.npmjs.org/@types/node/-/node-14.14.34.tgz"; + sha512 = "dBPaxocOK6UVyvhbnpFIj2W+S+1cBTkHQbFQfeeJhoKFbzYcVUGHvddeWPSucKATb3F0+pgDq0i6ghEaZjsugA=="; }; }; "@types/parse-json-4.0.0" = { @@ -1120,13 +1120,13 @@ let sha512 = "W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA=="; }; }; - "@types/uglify-js-3.11.1" = { + "@types/uglify-js-3.13.0" = { name = "_at_types_slash_uglify-js"; packageName = "@types/uglify-js"; - version = "3.11.1"; + version = "3.13.0"; src = fetchurl { - url = "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.11.1.tgz"; - sha512 = "7npvPKV+jINLu1SpSYVWG8KvyJBhBa8tmzMMdDoVc2pWUYHN8KIXlPJhjJ4LT97c4dXJA2SHL/q6ADbDriZN+Q=="; + url = "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.0.tgz"; + sha512 = "EGkrJD5Uy+Pg0NUR8uA4bJ5WMfljyad0G+784vLCNUkD+QwOJXUbBYExXfVGf7YtyzdQp3L/XMYcliB987kL5Q=="; }; }; "@types/webpack-4.41.26" = { @@ -2011,22 +2011,22 @@ let sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="; }; }; - "bn.js-4.11.9" = { + "bn.js-4.12.0" = { name = "bn.js"; packageName = "bn.js"; - version = "4.11.9"; + version = "4.12.0"; src = fetchurl { - url = "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz"; - sha512 = "E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw=="; + url = "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz"; + sha512 = "c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="; }; }; - "bn.js-5.1.3" = { + "bn.js-5.2.0" = { name = "bn.js"; packageName = "bn.js"; - version = "5.1.3"; + version = "5.2.0"; src = fetchurl { - url = "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz"; - sha512 = "GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ=="; + url = "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz"; + sha512 = "D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw=="; }; }; "body-parser-1.18.2" = { @@ -2398,13 +2398,13 @@ let sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw=="; }; }; - "caniuse-lite-1.0.30001185" = { + "caniuse-lite-1.0.30001199" = { name = "caniuse-lite"; packageName = "caniuse-lite"; - version = "1.0.30001185"; + version = "1.0.30001199"; src = fetchurl { - url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001185.tgz"; - sha512 = "Fpi4kVNtNvJ15H0F6vwmXtb3tukv3Zg3qhKkOGUq7KJ1J6b9kf4dnNgtEAFXhRsJo0gNj9W60+wBvn0JcTvdTg=="; + url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001199.tgz"; + sha512 = "ifbK2eChUCFUwGhlEzIoVwzFt1+iriSjyKKFYNfv6hN34483wyWpLLavYQXhnR036LhkdUYaSDpHg1El++VgHQ=="; }; }; "case-sensitive-paths-webpack-plugin-2.3.0" = { @@ -2758,22 +2758,22 @@ let sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="; }; }; - "color-string-1.5.4" = { + "color-string-1.5.5" = { name = "color-string"; packageName = "color-string"; - version = "1.5.4"; + version = "1.5.5"; src = fetchurl { - url = "https://registry.npmjs.org/color-string/-/color-string-1.5.4.tgz"; - sha512 = "57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw=="; + url = "https://registry.npmjs.org/color-string/-/color-string-1.5.5.tgz"; + sha512 = "jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg=="; }; }; - "colorette-1.2.1" = { + "colorette-1.2.2" = { name = "colorette"; packageName = "colorette"; - version = "1.2.1"; + version = "1.2.2"; src = fetchurl { - url = "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz"; - sha512 = "puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw=="; + url = "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz"; + sha512 = "MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w=="; }; }; "colors-1.0.3" = { @@ -2857,13 +2857,13 @@ let sha512 = "U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA=="; }; }; - "commander-7.0.0" = { + "commander-7.1.0" = { name = "commander"; packageName = "commander"; - version = "7.0.0"; + version = "7.1.0"; src = fetchurl { - url = "https://registry.npmjs.org/commander/-/commander-7.0.0.tgz"; - sha512 = "ovx/7NkTrnPuIV8sqk/GjUIIM1+iUQeqA3ye2VNpq9sVoiZsooObWlQy+OPWGI17GDaEoybuAGJm6U8yC077BA=="; + url = "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz"; + sha512 = "pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg=="; }; }; "common-tags-1.8.0" = { @@ -3082,13 +3082,13 @@ let sha512 = "Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="; }; }; - "core-js-compat-3.8.3" = { + "core-js-compat-3.9.1" = { name = "core-js-compat"; packageName = "core-js-compat"; - version = "3.8.3"; + version = "3.9.1"; src = fetchurl { - url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.8.3.tgz"; - sha512 = "1sCb0wBXnBIL16pfFG1Gkvei6UzvKyTNYpiC41yrdjEv0UoJoq9E/abTMzyYJ6JpTkAj15dLjbqifIzEBDVvog=="; + url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.9.1.tgz"; + sha512 = "jXAirMQxrkbiiLsCx9bQPJFA6llDadKMpYrBJQJ3/c4/vsPP/fAf29h24tviRlvwUL6AmY5CHLu2GvjuYviQqA=="; }; }; "core-util-is-1.0.2" = { @@ -3505,13 +3505,13 @@ let sha512 = "0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ=="; }; }; - "defer-to-connect-2.0.0" = { + "defer-to-connect-2.0.1" = { name = "defer-to-connect"; packageName = "defer-to-connect"; - version = "2.0.0"; + version = "2.0.1"; src = fetchurl { - url = "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.0.tgz"; - sha512 = "bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg=="; + url = "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz"; + sha512 = "4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg=="; }; }; "define-properties-1.1.3" = { @@ -3811,13 +3811,13 @@ let sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d"; }; }; - "electron-to-chromium-1.3.657" = { + "electron-to-chromium-1.3.687" = { name = "electron-to-chromium"; packageName = "electron-to-chromium"; - version = "1.3.657"; + version = "1.3.687"; src = fetchurl { - url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.657.tgz"; - sha512 = "/9ROOyvEflEbaZFUeGofD+Tqs/WynbSTbNgNF+/TJJxH1ePD/e6VjZlDJpW3FFFd3nj5l3Hd8ki2vRwy+gyRFw=="; + url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.687.tgz"; + sha512 = "IpzksdQNl3wdgkzf7dnA7/v10w0Utf1dF2L+B4+gKrloBrxCut+au+kky3PYvle3RMdSxZP+UiCZtLbcYRxSNQ=="; }; }; "elliptic-6.5.4" = { @@ -3901,13 +3901,13 @@ let sha512 = "4VbIyCRlCUm/py0E0AjMT3/mwd6DR4Y5Z5gEox6z5JII6ZdKIJmcQzjgWRI5qo5ERJiw9M/Nxhk7SGXFUbZsxQ=="; }; }; - "elm-tooling-1.1.0" = { + "elm-tooling-1.3.0" = { name = "elm-tooling"; packageName = "elm-tooling"; - version = "1.1.0"; + version = "1.3.0"; src = fetchurl { - url = "https://registry.npmjs.org/elm-tooling/-/elm-tooling-1.1.0.tgz"; - sha512 = "wziiwTbqBkK/905a6stCpTWJhYEKNb4CCYt36VEd5XWmaLSelMOR+SxKcEPpxsiK/tFZ4o0PbW+h1QC5tWfYUQ=="; + url = "https://registry.npmjs.org/elm-tooling/-/elm-tooling-1.3.0.tgz"; + sha512 = "OLRg8D7QCbzMmi8QTaebIIsH2qaIj4NiltuJ8vZj4JFHOIVa3utyD5tlfySBGZNfDG7+vZ2K8iDk82TalFaAbw=="; }; }; "elm-webpack-loader-6.0.1" = { @@ -4027,13 +4027,13 @@ let sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g=="; }; }; - "es-abstract-1.18.0-next.2" = { + "es-abstract-1.18.0" = { name = "es-abstract"; packageName = "es-abstract"; - version = "1.18.0-next.2"; + version = "1.18.0"; src = fetchurl { - url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz"; - sha512 = "Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw=="; + url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz"; + sha512 = "LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw=="; }; }; "es-to-primitive-1.2.1" = { @@ -4180,13 +4180,13 @@ let sha512 = "8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw=="; }; }; - "events-3.2.0" = { + "events-3.3.0" = { name = "events"; packageName = "events"; - version = "3.2.0"; + version = "3.3.0"; src = fetchurl { - url = "https://registry.npmjs.org/events/-/events-3.2.0.tgz"; - sha512 = "/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg=="; + url = "https://registry.npmjs.org/events/-/events-3.3.0.tgz"; + sha512 = "mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="; }; }; "eventsource-0.1.6" = { @@ -4396,13 +4396,31 @@ let sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="; }; }; - "fastq-1.10.1" = { + "fast-levenshtein-3.0.0" = { + name = "fast-levenshtein"; + packageName = "fast-levenshtein"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-3.0.0.tgz"; + sha512 = "hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ=="; + }; + }; + "fastest-levenshtein-1.0.12" = { + name = "fastest-levenshtein"; + packageName = "fastest-levenshtein"; + version = "1.0.12"; + src = fetchurl { + url = "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz"; + sha512 = "On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow=="; + }; + }; + "fastq-1.11.0" = { name = "fastq"; packageName = "fastq"; - version = "1.10.1"; + version = "1.11.0"; src = fetchurl { - url = "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz"; - sha512 = "AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA=="; + url = "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz"; + sha512 = "7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g=="; }; }; "faye-websocket-0.10.0" = { @@ -4657,13 +4675,13 @@ let sha512 = "SDgHBgV+RCjrYs8aUwCb9rTgbTVuSdzvFmLaChsLre1yf+D64khCW++VYciaByZ8Rm0uKF8R/XEpXuTRSGUM1A=="; }; }; - "follow-redirects-1.13.2" = { + "follow-redirects-1.13.3" = { name = "follow-redirects"; packageName = "follow-redirects"; - version = "1.13.2"; + version = "1.13.3"; src = fetchurl { - url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz"; - sha512 = "6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA=="; + url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.3.tgz"; + sha512 = "DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA=="; }; }; "for-in-1.0.2" = { @@ -5017,13 +5035,13 @@ let sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae"; }; }; - "glob-parent-5.1.1" = { + "glob-parent-5.1.2" = { name = "glob-parent"; packageName = "glob-parent"; - version = "5.1.1"; + version = "5.1.2"; src = fetchurl { - url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz"; - sha512 = "FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ=="; + url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz"; + sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow=="; }; }; "glob-to-regexp-0.3.0" = { @@ -5116,13 +5134,13 @@ let sha512 = "R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q=="; }; }; - "graceful-fs-4.2.5" = { + "graceful-fs-4.2.6" = { name = "graceful-fs"; packageName = "graceful-fs"; - version = "4.2.5"; + version = "4.2.6"; src = fetchurl { - url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.5.tgz"; - sha512 = "kBBSQbz2K0Nyn+31j/w36fUfxkBW9/gfwRWdUY1ULReH3iokVJgddZAFcD1D0xlgTmFxJCbUkUclAlc6/IDJkw=="; + url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz"; + sha512 = "nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ=="; }; }; "gzip-size-5.0.0" = { @@ -5179,6 +5197,15 @@ let sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91"; }; }; + "has-bigints-1.0.1" = { + name = "has-bigints"; + packageName = "has-bigints"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz"; + sha512 = "LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA=="; + }; + }; "has-flag-3.0.0" = { name = "has-flag"; packageName = "has-flag"; @@ -5206,13 +5233,13 @@ let sha512 = "3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw=="; }; }; - "has-symbols-1.0.1" = { + "has-symbols-1.0.2" = { name = "has-symbols"; packageName = "has-symbols"; - version = "1.0.1"; + version = "1.0.2"; src = fetchurl { - url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz"; - sha512 = "PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg=="; + url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz"; + sha512 = "chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw=="; }; }; "has-to-string-tag-x-1.4.1" = { @@ -5818,6 +5845,15 @@ let sha512 = "eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ=="; }; }; + "is-bigint-1.0.1" = { + name = "is-bigint"; + packageName = "is-bigint"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz"; + sha512 = "J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg=="; + }; + }; "is-binary-path-1.0.1" = { name = "is-binary-path"; packageName = "is-binary-path"; @@ -5836,6 +5872,15 @@ let sha512 = "ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw=="; }; }; + "is-boolean-object-1.1.0" = { + name = "is-boolean-object"; + packageName = "is-boolean-object"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz"; + sha512 = "a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA=="; + }; + }; "is-buffer-1.1.6" = { name = "is-buffer"; packageName = "is-buffer"; @@ -6043,6 +6088,15 @@ let sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="; }; }; + "is-number-object-1.0.4" = { + name = "is-number-object"; + packageName = "is-number-object"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz"; + sha512 = "zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw=="; + }; + }; "is-obj-1.0.1" = { name = "is-obj"; packageName = "is-obj"; @@ -6169,6 +6223,15 @@ let sha512 = "XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw=="; }; }; + "is-string-1.0.5" = { + name = "is-string"; + packageName = "is-string"; + version = "1.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz"; + sha512 = "buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ=="; + }; + }; "is-svg-3.0.0" = { name = "is-svg"; packageName = "is-svg"; @@ -6691,13 +6754,13 @@ let sha512 = "8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="; }; }; - "lodash-4.17.20" = { + "lodash-4.17.21" = { name = "lodash"; packageName = "lodash"; - version = "4.17.20"; + version = "4.17.21"; src = fetchurl { - url = "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz"; - sha512 = "PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA=="; + url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"; + sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="; }; }; "lodash._reinterpolate-3.0.0" = { @@ -7015,31 +7078,31 @@ let sha512 = "QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw=="; }; }; - "mime-2.5.0" = { + "mime-2.5.2" = { name = "mime"; packageName = "mime"; - version = "2.5.0"; + version = "2.5.2"; src = fetchurl { - url = "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz"; - sha512 = "ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag=="; + url = "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz"; + sha512 = "tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg=="; }; }; - "mime-db-1.45.0" = { + "mime-db-1.46.0" = { name = "mime-db"; packageName = "mime-db"; - version = "1.45.0"; + version = "1.46.0"; src = fetchurl { - url = "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz"; - sha512 = "CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w=="; + url = "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz"; + sha512 = "svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ=="; }; }; - "mime-types-2.1.28" = { + "mime-types-2.1.29" = { name = "mime-types"; packageName = "mime-types"; - version = "2.1.28"; + version = "2.1.29"; src = fetchurl { - url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz"; - sha512 = "0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ=="; + url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz"; + sha512 = "Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ=="; }; }; "mimic-fn-1.2.0" = { @@ -7330,13 +7393,13 @@ let sha512 = "M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ=="; }; }; - "nanoid-3.1.20" = { + "nanoid-3.1.21" = { name = "nanoid"; packageName = "nanoid"; - version = "3.1.20"; + version = "3.1.21"; src = fetchurl { - url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz"; - sha512 = "a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw=="; + url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.21.tgz"; + sha512 = "A6oZraK4DJkAOICstsGH98dvycPr/4GGDH7ZWKmMdd3vGcOurZ6JmWFUt0DA5bzrrn2FrUjmv6mFNWvv8jpppA=="; }; }; "nanomatch-1.2.13" = { @@ -7429,13 +7492,13 @@ let sha512 = "h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q=="; }; }; - "node-releases-1.1.70" = { + "node-releases-1.1.71" = { name = "node-releases"; packageName = "node-releases"; - version = "1.1.70"; + version = "1.1.71"; src = fetchurl { - url = "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz"; - sha512 = "Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw=="; + url = "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz"; + sha512 = "zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg=="; }; }; "node-watch-0.5.5" = { @@ -7600,13 +7663,13 @@ let sha512 = "i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw=="; }; }; - "object-is-1.1.4" = { + "object-is-1.1.5" = { name = "object-is"; packageName = "object-is"; - version = "1.1.4"; + version = "1.1.5"; src = fetchurl { - url = "https://registry.npmjs.org/object-is/-/object-is-1.1.4.tgz"; - sha512 = "1ZvAZ4wlF7IyPVOcE1Omikt7UpaFlOQq0HlSti+ZvDH3UiD2brwGMwDbyV43jao2bKJ+4+WdPJHSd7kgzKYVqg=="; + url = "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz"; + sha512 = "3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw=="; }; }; "object-keys-1.1.1" = { @@ -7645,13 +7708,13 @@ let sha512 = "ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg=="; }; }; - "object.getownpropertydescriptors-2.1.1" = { + "object.getownpropertydescriptors-2.1.2" = { name = "object.getownpropertydescriptors"; packageName = "object.getownpropertydescriptors"; - version = "2.1.1"; + version = "2.1.2"; src = fetchurl { - url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.1.tgz"; - sha512 = "6DtXgZ/lIZ9hqx4GtZETobXLR/ZLaa0aqV0kzbn80Rf8Z2e/XFnhA0I7p07N2wH8bBBltr2xQPi6sbKWAY2Eng=="; + url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz"; + sha512 = "WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ=="; }; }; "object.pick-1.3.0" = { @@ -7663,13 +7726,13 @@ let sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747"; }; }; - "object.values-1.1.2" = { + "object.values-1.1.3" = { name = "object.values"; packageName = "object.values"; - version = "1.1.2"; + version = "1.1.3"; src = fetchurl { - url = "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz"; - sha512 = "MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag=="; + url = "https://registry.npmjs.org/object.values/-/object.values-1.1.3.tgz"; + sha512 = "nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw=="; }; }; "obuf-1.1.2" = { @@ -7735,13 +7798,13 @@ let sha512 = "IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg=="; }; }; - "open-7.4.0" = { + "open-7.4.2" = { name = "open"; packageName = "open"; - version = "7.4.0"; + version = "7.4.2"; src = fetchurl { - url = "https://registry.npmjs.org/open/-/open-7.4.0.tgz"; - sha512 = "PGoBCX/lclIWlpS/R2PQuIR4NJoXh6X5AwVzE7WXnWRGvHg7+4TBCgsujUgiPpm0K1y4qvQeWnCWVTpTKZBtvA=="; + url = "https://registry.npmjs.org/open/-/open-7.4.2.tgz"; + sha512 = "MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q=="; }; }; "opn-5.4.0" = { @@ -7843,13 +7906,13 @@ let sha512 = "s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw=="; }; }; - "p-cancelable-2.0.0" = { + "p-cancelable-2.1.0" = { name = "p-cancelable"; packageName = "p-cancelable"; - version = "2.0.0"; + version = "2.1.0"; src = fetchurl { - url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz"; - sha512 = "wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg=="; + url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.0.tgz"; + sha512 = "HAZyB3ZodPo+BDpb4/Iu7Jv4P6cSazBz9ZM0ChhEXp70scx834aWCEjQRwgt41UzzejUAPdbqqONfRWTPYrPAQ=="; }; }; "p-event-4.2.0" = { @@ -8374,13 +8437,13 @@ let sha512 = "3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg=="; }; }; - "postcss-8.2.4" = { + "postcss-8.2.8" = { name = "postcss"; packageName = "postcss"; - version = "8.2.4"; + version = "8.2.8"; src = fetchurl { - url = "https://registry.npmjs.org/postcss/-/postcss-8.2.4.tgz"; - sha512 = "kRFftRoExRVXZlwUuay9iC824qmXPcQQVzAjbCCgjpXnkdMCJYBu2gTwAaFBzv8ewND6O8xFb3aELmEkh9zTzg=="; + url = "https://registry.npmjs.org/postcss/-/postcss-8.2.8.tgz"; + sha512 = "1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw=="; }; }; "postcss-calc-7.0.5" = { @@ -8743,13 +8806,13 @@ let sha1 = "e92434bfa5ea8c19f41cdfd401d741a3c819d897"; }; }; - "pretty-bytes-5.5.0" = { + "pretty-bytes-5.6.0" = { name = "pretty-bytes"; packageName = "pretty-bytes"; - version = "5.5.0"; + version = "5.6.0"; src = fetchurl { - url = "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.5.0.tgz"; - sha512 = "p+T744ZyjjiaFlMUZZv6YPC5JrkNj8maRmPaQCWFJFplUAzpIUTRaTcS+7wmZtUoFXHtESJb23ISliaWyz3SHA=="; + url = "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz"; + sha512 = "FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg=="; }; }; "pretty-error-2.1.2" = { @@ -9004,6 +9067,15 @@ let sha512 = "FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ=="; }; }; + "queue-microtask-1.2.2" = { + name = "queue-microtask"; + packageName = "queue-microtask"; + version = "1.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz"; + sha512 = "dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg=="; + }; + }; "randombytes-2.1.0" = { name = "randombytes"; packageName = "randombytes"; @@ -9418,13 +9490,13 @@ let sha1 = "925d2601d39ac485e091cf0da5c6e694dc3dcaff"; }; }; - "resolve-1.19.0" = { + "resolve-1.20.0" = { name = "resolve"; packageName = "resolve"; - version = "1.19.0"; + version = "1.20.0"; src = fetchurl { - url = "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz"; - sha512 = "rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg=="; + url = "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz"; + sha512 = "wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A=="; }; }; "resolve-cwd-2.0.0" = { @@ -9607,13 +9679,13 @@ let sha512 = "tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ=="; }; }; - "run-parallel-1.1.10" = { + "run-parallel-1.2.0" = { name = "run-parallel"; packageName = "run-parallel"; - version = "1.1.10"; + version = "1.2.0"; src = fetchurl { - url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.10.tgz"; - sha512 = "zb/1OuZ6flOlH6tQyMPUrE3x3Ulxjlo9WIVXR4yVYi4H9UXQaeIsPbLn2R3O3vQCnDKkAl2qHiuocKKX4Tz/Sw=="; + url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz"; + sha512 = "5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA=="; }; }; "run-queue-1.0.3" = { @@ -9625,13 +9697,13 @@ let sha1 = "e848396f057d223f24386924618e25694161ec47"; }; }; - "rxjs-6.6.3" = { + "rxjs-6.6.6" = { name = "rxjs"; packageName = "rxjs"; - version = "6.6.3"; + version = "6.6.6"; src = fetchurl { - url = "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz"; - sha512 = "trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ=="; + url = "https://registry.npmjs.org/rxjs/-/rxjs-6.6.6.tgz"; + sha512 = "/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg=="; }; }; "safe-buffer-5.1.1" = { @@ -10408,31 +10480,31 @@ let sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w=="; }; }; - "string-width-4.2.0" = { + "string-width-4.2.2" = { name = "string-width"; packageName = "string-width"; - version = "4.2.0"; + version = "4.2.2"; src = fetchurl { - url = "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz"; - sha512 = "zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg=="; + url = "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz"; + sha512 = "XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA=="; }; }; - "string.prototype.trimend-1.0.3" = { + "string.prototype.trimend-1.0.4" = { name = "string.prototype.trimend"; packageName = "string.prototype.trimend"; - version = "1.0.3"; + version = "1.0.4"; src = fetchurl { - url = "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz"; - sha512 = "ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw=="; + url = "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz"; + sha512 = "y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A=="; }; }; - "string.prototype.trimstart-1.0.3" = { + "string.prototype.trimstart-1.0.4" = { name = "string.prototype.trimstart"; packageName = "string.prototype.trimstart"; - version = "1.0.3"; + version = "1.0.4"; src = fetchurl { - url = "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz"; - sha512 = "oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg=="; + url = "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz"; + sha512 = "jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw=="; }; }; "string_decoder-0.10.31" = { @@ -11038,13 +11110,13 @@ let sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777"; }; }; - "typescript-3.9.7" = { + "typescript-3.9.9" = { name = "typescript"; packageName = "typescript"; - version = "3.9.7"; + version = "3.9.9"; src = fetchurl { - url = "https://registry.npmjs.org/typescript/-/typescript-3.9.7.tgz"; - sha512 = "BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw=="; + url = "https://registry.npmjs.org/typescript/-/typescript-3.9.9.tgz"; + sha512 = "kdMjTiekY+z/ubJCATUPlRDl39vXYiMV9iyeMuEuXZh2we6zz80uovNN2WlAxmmdE/Z/YQe+EbOEXB5RHEED3w=="; }; }; "uglify-es-3.3.10" = { @@ -11083,6 +11155,15 @@ let sha512 = "UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og=="; }; }; + "unbox-primitive-1.0.0" = { + name = "unbox-primitive"; + packageName = "unbox-primitive"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.0.tgz"; + sha512 = "P/51NX+JXyxK/aigg1/ZgyccdAxm5K1+n8+tvqSntjOivPt19gvm1VC49RWYetsiub8WViUchdxl/KWHHB0kzA=="; + }; + }; "unicode-canonical-property-names-ecmascript-1.0.4" = { name = "unicode-canonical-property-names-ecmascript"; packageName = "unicode-canonical-property-names-ecmascript"; @@ -11272,13 +11353,13 @@ let sha512 = "3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA=="; }; }; - "url-parse-1.4.7" = { + "url-parse-1.5.1" = { name = "url-parse"; packageName = "url-parse"; - version = "1.4.7"; + version = "1.5.1"; src = fetchurl { - url = "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz"; - sha512 = "d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg=="; + url = "https://registry.npmjs.org/url-parse/-/url-parse-1.5.1.tgz"; + sha512 = "HOfCOUJt7iSYzEx/UqgtwKRMC6EU91NFhsCHMv9oM03VJcVo2Qrp8T8kI9D7amFf1cu+/3CEhgb3rF9zL7k85Q=="; }; }; "url-parse-lax-3.0.0" = { @@ -11641,6 +11722,15 @@ let sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="; }; }; + "which-boxed-primitive-1.0.2" = { + name = "which-boxed-primitive"; + packageName = "which-boxed-primitive"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz"; + sha512 = "bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg=="; + }; + }; "which-module-1.0.0" = { name = "which-module"; packageName = "which-module"; @@ -11902,13 +11992,13 @@ let sha512 = "o41D/WmDeca0BqYhsr3nJzQyg9NF5X8l/UdnFNux9cS3lwB+swm8qGWX5rn+aD6xfBU3rGmtHij7g7x6LxFU3A=="; }; }; - "ws-7.4.3" = { + "ws-7.4.4" = { name = "ws"; packageName = "ws"; - version = "7.4.3"; + version = "7.4.4"; src = fetchurl { - url = "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz"; - sha512 = "hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA=="; + url = "https://registry.npmjs.org/ws/-/ws-7.4.4.tgz"; + sha512 = "Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw=="; }; }; "xmlbuilder-13.0.2" = { @@ -11983,13 +12073,13 @@ let sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="; }; }; - "yaml-1.10.0" = { + "yaml-1.10.1" = { name = "yaml"; packageName = "yaml"; - version = "1.10.0"; + version = "1.10.1"; src = fetchurl { - url = "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz"; - sha512 = "yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg=="; + url = "https://registry.npmjs.org/yaml/-/yaml-1.10.1.tgz"; + sha512 = "z/asvd+V08l1ywhaemZVirCwjdzLo6O1/0j2JbYCsGjiezupNQqjs5IIPyNtctbHjPEckqzVGd4jvpU5Lr25vQ=="; }; }; "yargs-13.3.2" = { @@ -12138,7 +12228,7 @@ in sources."fresh-0.5.2" sources."fs-extra-2.0.0" sources."getpass-0.1.7" - sources."graceful-fs-4.2.5" + sources."graceful-fs-4.2.6" sources."har-schema-2.0.0" sources."har-validator-5.1.5" sources."http-errors-1.7.2" @@ -12157,13 +12247,13 @@ in sources."json-stringify-safe-5.0.1" sources."jsonfile-2.4.0" sources."jsprim-1.4.1" - sources."lodash-4.17.20" + sources."lodash-4.17.21" sources."media-typer-0.3.0" sources."merge-descriptors-1.0.1" sources."methods-1.1.2" sources."mime-1.4.1" - sources."mime-db-1.45.0" - sources."mime-types-2.1.28" + sources."mime-db-1.46.0" + sources."mime-types-2.1.29" sources."minimist-1.2.0" sources."ms-2.0.0" sources."negotiator-0.6.2" @@ -12288,7 +12378,7 @@ in sources."ansi-regex-5.0.0" sources."emoji-regex-8.0.0" sources."is-fullwidth-code-point-3.0.0" - sources."string-width-4.2.0" + sources."string-width-4.2.2" sources."strip-ansi-6.0.0" ]; }) @@ -12353,8 +12443,8 @@ in sources."get-caller-file-2.0.5" sources."getpass-0.1.7" sources."glob-7.1.4" - sources."glob-parent-5.1.1" - sources."graceful-fs-4.2.5" + sources."glob-parent-5.1.2" + sources."graceful-fs-4.2.6" sources."har-schema-2.0.0" sources."har-validator-5.1.5" sources."has-flag-3.0.0" @@ -12377,14 +12467,14 @@ in sources."jsonfile-4.0.0" sources."jsprim-1.4.1" sources."locate-path-5.0.0" - sources."lodash-4.17.20" + sources."lodash-4.17.21" (sources."lru-cache-4.1.5" // { dependencies = [ sources."yallist-2.1.2" ]; }) - sources."mime-db-1.45.0" - sources."mime-types-2.1.28" + sources."mime-db-1.46.0" + sources."mime-types-2.1.29" sources."minimatch-3.0.4" sources."minimist-1.2.5" sources."minipass-3.1.3" @@ -12475,7 +12565,7 @@ in sources."color-name-1.1.4" sources."emoji-regex-8.0.0" sources."is-fullwidth-code-point-3.0.0" - sources."string-width-4.2.0" + sources."string-width-4.2.2" sources."strip-ansi-6.0.0" ]; }) @@ -12488,7 +12578,7 @@ in sources."ansi-regex-5.0.0" sources."emoji-regex-8.0.0" sources."is-fullwidth-code-point-3.0.0" - sources."string-width-4.2.0" + sources."string-width-4.2.2" sources."strip-ansi-6.0.0" ]; }) @@ -12571,7 +12661,7 @@ in sources."fsevents-2.3.2" sources."get-stream-4.1.0" sources."glob-7.1.6" - sources."glob-parent-5.1.1" + sources."glob-parent-5.1.2" sources."got-9.6.0" sources."has-flag-4.0.0" sources."http-cache-semantics-4.1.0" @@ -12596,8 +12686,8 @@ in sources."merge-descriptors-1.0.1" sources."methods-1.1.2" sources."mime-1.6.0" - sources."mime-db-1.45.0" - sources."mime-types-2.1.28" + sources."mime-db-1.46.0" + sources."mime-types-2.1.29" sources."mimic-response-1.0.1" sources."minimatch-3.0.4" sources."minimist-1.2.5" @@ -12607,7 +12697,7 @@ in sources."normalize-url-4.5.0" sources."on-finished-2.3.0" sources."once-1.4.0" - sources."open-7.4.0" + sources."open-7.4.2" sources."p-cancelable-1.1.0" sources."package-json-6.5.0" sources."parseurl-1.3.3" @@ -12659,7 +12749,7 @@ in sources."vary-1.1.2" sources."which-2.0.2" sources."wrappy-1.0.2" - sources."ws-7.4.3" + sources."ws-7.4.4" ]; buildInputs = globalBuildInputs; meta = { @@ -12674,10 +12764,10 @@ in "@elm-tooling/elm-language-server" = nodeEnv.buildNodePackage { name = "_at_elm-tooling_slash_elm-language-server"; packageName = "@elm-tooling/elm-language-server"; - version = "2.0.2"; + version = "2.0.3"; src = fetchurl { - url = "https://registry.npmjs.org/@elm-tooling/elm-language-server/-/elm-language-server-2.0.2.tgz"; - sha512 = "9G+n4pGWv/dpV6y7Wvf+J1FbJxQW6jtbtiF/20LYJVYP8LxjlrdMG5uzfZqBCFPNfn8aaIJL/ndkSvtSuFe/JA=="; + url = "https://registry.npmjs.org/@elm-tooling/elm-language-server/-/elm-language-server-2.0.3.tgz"; + sha512 = "pOcQNSFEoxsvXQlsRap2ahloqscf5jGYQ8ZqtM4TjdwvavSmObDejTyM5lNO81pFyrEUavTG6Q7G68HyP8TxBA=="; }; dependencies = [ sources."@nodelib/fs.scandir-2.1.4" @@ -12694,12 +12784,12 @@ in sources."execa-5.0.0" sources."fast-diff-1.2.0" sources."fast-glob-3.2.5" - sources."fastq-1.10.1" + sources."fastq-1.11.0" sources."fill-range-7.0.1" sources."fromentries-1.3.2" sources."fsevents-2.3.2" sources."get-stream-6.0.0" - sources."glob-parent-5.1.1" + sources."glob-parent-5.1.2" sources."globby-11.0.2" sources."human-signals-2.1.0" sources."ignore-5.1.8" @@ -12720,10 +12810,11 @@ in sources."path-type-4.0.0" sources."picomatch-2.2.2" sources."pjson-1.0.9" + sources."queue-microtask-1.2.2" sources."readdirp-3.5.0" sources."reflect-metadata-0.1.13" sources."reusify-1.0.4" - sources."run-parallel-1.1.10" + sources."run-parallel-1.2.0" sources."shebang-command-2.0.0" sources."shebang-regex-3.0.0" sources."signal-exit-3.0.3" @@ -12794,11 +12885,11 @@ in }) sources."fill-range-7.0.1" sources."finalhandler-1.1.2" - sources."follow-redirects-1.13.2" + sources."follow-redirects-1.13.3" sources."fresh-0.5.2" sources."fsevents-2.3.2" sources."get-stream-4.1.0" - sources."glob-parent-5.1.1" + sources."glob-parent-5.1.2" sources."has-ansi-2.0.0" sources."http-errors-1.7.3" sources."http-proxy-1.17.0" @@ -12888,16 +12979,16 @@ in sources."chokidar-3.5.1" sources."color-convert-2.0.1" sources."color-name-1.1.4" - sources."commander-7.0.0" + sources."commander-7.1.0" sources."concat-map-0.0.1" sources."cross-spawn-7.0.3" - sources."elm-tooling-1.1.0" + sources."elm-tooling-1.3.0" sources."fill-range-7.0.1" sources."fs.realpath-1.0.0" sources."fsevents-2.3.2" sources."glob-7.1.6" - sources."glob-parent-5.1.1" - sources."graceful-fs-4.2.5" + sources."glob-parent-5.1.2" + sources."graceful-fs-4.2.6" sources."has-flag-4.0.0" sources."inflight-1.0.6" sources."inherits-2.0.4" @@ -12948,7 +13039,7 @@ in sources."@types/cacheable-request-6.0.1" sources."@types/http-cache-semantics-4.0.0" sources."@types/keyv-3.1.1" - sources."@types/node-14.14.25" + sources."@types/node-14.14.34" sources."@types/responselike-1.0.0" sources."cacheable-lookup-2.0.1" sources."cacheable-request-7.0.1" @@ -12960,14 +13051,14 @@ in }) sources."config-chain-1.1.12" sources."decompress-response-5.0.0" - sources."defer-to-connect-2.0.0" + sources."defer-to-connect-2.0.1" sources."duplexer3-0.1.4" sources."end-of-stream-1.4.4" sources."fs-extra-8.1.0" sources."get-proxy-2.1.0" sources."get-stream-5.2.0" sources."got-10.7.0" - sources."graceful-fs-4.2.5" + sources."graceful-fs-4.2.6" sources."has-symbol-support-x-1.4.2" sources."has-to-string-tag-x-1.4.1" sources."http-cache-semantics-4.1.0" @@ -12984,7 +13075,7 @@ in sources."normalize-url-4.5.0" sources."npm-conf-1.1.3" sources."once-1.4.0" - sources."p-cancelable-2.0.0" + sources."p-cancelable-2.1.0" sources."p-event-4.2.0" sources."p-finally-1.0.0" sources."p-timeout-3.2.0" @@ -13095,8 +13186,8 @@ in sources."get-caller-file-2.0.5" sources."getpass-0.1.7" sources."glob-7.1.4" - sources."glob-parent-5.1.1" - sources."graceful-fs-4.2.5" + sources."glob-parent-5.1.2" + sources."graceful-fs-4.2.6" sources."har-schema-2.0.0" sources."har-validator-5.1.5" sources."has-flag-3.0.0" @@ -13119,8 +13210,8 @@ in sources."jsprim-1.4.1" sources."locate-path-3.0.0" sources."lodash-4.17.15" - sources."mime-db-1.45.0" - sources."mime-types-2.1.28" + sources."mime-db-1.46.0" + sources."mime-types-2.1.29" sources."minimatch-3.0.4" sources."minimist-1.2.5" sources."minipass-2.9.0" @@ -13155,7 +13246,7 @@ in sources."request-promise-4.2.6" (sources."request-promise-core-1.1.4" // { dependencies = [ - sources."lodash-4.17.20" + sources."lodash-4.17.21" ]; }) sources."require-directory-2.1.1" @@ -13222,7 +13313,7 @@ in sources."compare-versions-3.6.0" sources."core-util-is-1.0.2" sources."fs-extra-6.0.1" - sources."graceful-fs-4.2.5" + sources."graceful-fs-4.2.6" sources."inherits-2.0.4" sources."isarray-1.0.0" sources."jsonfile-4.0.0" @@ -13265,46 +13356,50 @@ in dependencies = [ sources."@babel/cli-7.12.10" sources."@babel/code-frame-7.12.13" - sources."@babel/compat-data-7.12.13" + sources."@babel/compat-data-7.13.8" sources."@babel/core-7.12.10" - sources."@babel/generator-7.12.15" + sources."@babel/generator-7.13.9" sources."@babel/helper-annotate-as-pure-7.12.13" sources."@babel/helper-builder-binary-assignment-operator-visitor-7.12.13" - sources."@babel/helper-compilation-targets-7.12.13" - sources."@babel/helper-create-class-features-plugin-7.12.13" - sources."@babel/helper-create-regexp-features-plugin-7.12.13" - sources."@babel/helper-explode-assignable-expression-7.12.13" + (sources."@babel/helper-compilation-targets-7.13.10" // { + dependencies = [ + sources."semver-6.3.0" + ]; + }) + sources."@babel/helper-create-class-features-plugin-7.13.10" + sources."@babel/helper-create-regexp-features-plugin-7.12.17" + sources."@babel/helper-explode-assignable-expression-7.13.0" sources."@babel/helper-function-name-7.12.13" sources."@babel/helper-get-function-arity-7.12.13" - sources."@babel/helper-hoist-variables-7.12.13" - sources."@babel/helper-member-expression-to-functions-7.12.13" + sources."@babel/helper-hoist-variables-7.13.0" + sources."@babel/helper-member-expression-to-functions-7.13.0" sources."@babel/helper-module-imports-7.12.13" - sources."@babel/helper-module-transforms-7.12.13" + sources."@babel/helper-module-transforms-7.13.0" sources."@babel/helper-optimise-call-expression-7.12.13" - sources."@babel/helper-plugin-utils-7.12.13" - sources."@babel/helper-remap-async-to-generator-7.12.13" - sources."@babel/helper-replace-supers-7.12.13" + sources."@babel/helper-plugin-utils-7.13.0" + sources."@babel/helper-remap-async-to-generator-7.13.0" + sources."@babel/helper-replace-supers-7.13.0" sources."@babel/helper-simple-access-7.12.13" sources."@babel/helper-skip-transparent-expression-wrappers-7.12.1" sources."@babel/helper-split-export-declaration-7.12.13" sources."@babel/helper-validator-identifier-7.12.11" - sources."@babel/helper-validator-option-7.12.11" - sources."@babel/helper-wrap-function-7.12.13" - sources."@babel/helpers-7.12.13" - sources."@babel/highlight-7.12.13" - sources."@babel/parser-7.12.15" - sources."@babel/plugin-proposal-async-generator-functions-7.12.13" - sources."@babel/plugin-proposal-class-properties-7.12.13" - sources."@babel/plugin-proposal-dynamic-import-7.12.1" + sources."@babel/helper-validator-option-7.12.17" + sources."@babel/helper-wrap-function-7.13.0" + sources."@babel/helpers-7.13.10" + sources."@babel/highlight-7.13.10" + sources."@babel/parser-7.13.10" + sources."@babel/plugin-proposal-async-generator-functions-7.13.8" + sources."@babel/plugin-proposal-class-properties-7.13.0" + sources."@babel/plugin-proposal-dynamic-import-7.13.8" sources."@babel/plugin-proposal-export-namespace-from-7.12.13" - sources."@babel/plugin-proposal-json-strings-7.12.13" - sources."@babel/plugin-proposal-logical-assignment-operators-7.12.13" - sources."@babel/plugin-proposal-nullish-coalescing-operator-7.12.13" + sources."@babel/plugin-proposal-json-strings-7.13.8" + sources."@babel/plugin-proposal-logical-assignment-operators-7.13.8" + sources."@babel/plugin-proposal-nullish-coalescing-operator-7.13.8" sources."@babel/plugin-proposal-numeric-separator-7.12.13" - sources."@babel/plugin-proposal-object-rest-spread-7.12.13" - sources."@babel/plugin-proposal-optional-catch-binding-7.12.13" - sources."@babel/plugin-proposal-optional-chaining-7.12.13" - sources."@babel/plugin-proposal-private-methods-7.12.13" + sources."@babel/plugin-proposal-object-rest-spread-7.13.8" + sources."@babel/plugin-proposal-optional-catch-binding-7.13.8" + sources."@babel/plugin-proposal-optional-chaining-7.13.8" + sources."@babel/plugin-proposal-private-methods-7.13.0" sources."@babel/plugin-proposal-unicode-property-regex-7.12.13" sources."@babel/plugin-syntax-async-generators-7.8.4" sources."@babel/plugin-syntax-class-properties-7.12.13" @@ -13318,36 +13413,36 @@ in sources."@babel/plugin-syntax-optional-catch-binding-7.8.3" sources."@babel/plugin-syntax-optional-chaining-7.8.3" sources."@babel/plugin-syntax-top-level-await-7.12.13" - sources."@babel/plugin-transform-arrow-functions-7.12.13" - sources."@babel/plugin-transform-async-to-generator-7.12.13" + sources."@babel/plugin-transform-arrow-functions-7.13.0" + sources."@babel/plugin-transform-async-to-generator-7.13.0" sources."@babel/plugin-transform-block-scoped-functions-7.12.13" sources."@babel/plugin-transform-block-scoping-7.12.13" - sources."@babel/plugin-transform-classes-7.12.13" - sources."@babel/plugin-transform-computed-properties-7.12.13" - sources."@babel/plugin-transform-destructuring-7.12.13" + sources."@babel/plugin-transform-classes-7.13.0" + sources."@babel/plugin-transform-computed-properties-7.13.0" + sources."@babel/plugin-transform-destructuring-7.13.0" sources."@babel/plugin-transform-dotall-regex-7.12.13" sources."@babel/plugin-transform-duplicate-keys-7.12.13" sources."@babel/plugin-transform-exponentiation-operator-7.12.13" - sources."@babel/plugin-transform-for-of-7.12.13" + sources."@babel/plugin-transform-for-of-7.13.0" sources."@babel/plugin-transform-function-name-7.12.13" sources."@babel/plugin-transform-literals-7.12.13" sources."@babel/plugin-transform-member-expression-literals-7.12.13" - sources."@babel/plugin-transform-modules-amd-7.12.13" - sources."@babel/plugin-transform-modules-commonjs-7.12.13" - sources."@babel/plugin-transform-modules-systemjs-7.12.13" - sources."@babel/plugin-transform-modules-umd-7.12.13" + sources."@babel/plugin-transform-modules-amd-7.13.0" + sources."@babel/plugin-transform-modules-commonjs-7.13.8" + sources."@babel/plugin-transform-modules-systemjs-7.13.8" + sources."@babel/plugin-transform-modules-umd-7.13.0" sources."@babel/plugin-transform-named-capturing-groups-regex-7.12.13" sources."@babel/plugin-transform-new-target-7.12.13" sources."@babel/plugin-transform-object-super-7.12.13" - sources."@babel/plugin-transform-parameters-7.12.13" + sources."@babel/plugin-transform-parameters-7.13.0" sources."@babel/plugin-transform-property-literals-7.12.13" sources."@babel/plugin-transform-regenerator-7.12.13" sources."@babel/plugin-transform-reserved-words-7.12.13" sources."@babel/plugin-transform-runtime-7.12.10" sources."@babel/plugin-transform-shorthand-properties-7.12.13" - sources."@babel/plugin-transform-spread-7.12.13" + sources."@babel/plugin-transform-spread-7.13.0" sources."@babel/plugin-transform-sticky-regex-7.12.13" - sources."@babel/plugin-transform-template-literals-7.12.13" + sources."@babel/plugin-transform-template-literals-7.13.0" sources."@babel/plugin-transform-typeof-symbol-7.12.13" sources."@babel/plugin-transform-unicode-escapes-7.12.13" sources."@babel/plugin-transform-unicode-regex-7.12.13" @@ -13355,8 +13450,8 @@ in sources."@babel/preset-modules-0.1.4" sources."@babel/runtime-7.12.5" sources."@babel/template-7.12.13" - sources."@babel/traverse-7.12.13" - sources."@babel/types-7.12.13" + sources."@babel/traverse-7.13.0" + sources."@babel/types-7.13.0" sources."@hapi/address-2.1.4" sources."@hapi/bourne-1.3.2" sources."@hapi/hoek-8.5.1" @@ -13370,12 +13465,12 @@ in sources."@types/http-proxy-1.17.5" sources."@types/json-schema-7.0.7" sources."@types/minimatch-3.0.3" - sources."@types/node-14.14.25" + sources."@types/node-14.14.34" sources."@types/parse-json-4.0.0" sources."@types/q-1.5.4" sources."@types/source-list-map-0.1.2" sources."@types/tapable-1.0.6" - (sources."@types/uglify-js-3.11.1" // { + (sources."@types/uglify-js-3.13.0" // { dependencies = [ sources."source-map-0.6.1" ]; @@ -13439,7 +13534,7 @@ in sources."asn1-0.2.4" (sources."asn1.js-5.4.1" // { dependencies = [ - sources."bn.js-4.11.9" + sources."bn.js-4.12.0" ]; }) (sources."assert-1.5.0" // { @@ -13492,7 +13587,7 @@ in sources."binary-extensions-2.2.0" sources."bindings-1.5.0" sources."bluebird-3.7.2" - sources."bn.js-5.1.3" + sources."bn.js-5.2.0" (sources."body-parser-1.19.0" // { dependencies = [ sources."bytes-3.1.0" @@ -13538,7 +13633,7 @@ in sources."camel-case-4.1.2" sources."camelcase-5.3.1" sources."caniuse-api-3.0.0" - sources."caniuse-lite-1.0.30001185" + sources."caniuse-lite-1.0.30001199" sources."case-sensitive-paths-webpack-plugin-2.3.0" sources."caseless-0.12.0" (sources."chalk-2.4.2" // { @@ -13549,7 +13644,7 @@ in sources."chardet-0.7.0" (sources."chokidar-3.5.1" // { dependencies = [ - sources."glob-parent-5.1.1" + sources."glob-parent-5.1.2" ]; }) sources."chownr-1.1.4" @@ -13597,8 +13692,8 @@ in sources."color-3.1.3" sources."color-convert-1.9.3" sources."color-name-1.1.3" - sources."color-string-1.5.4" - sources."colorette-1.2.1" + sources."color-string-1.5.5" + sources."colorette-1.2.2" sources."colors-1.4.0" sources."combined-stream-1.0.8" sources."commander-4.1.1" @@ -13636,7 +13731,7 @@ in ]; }) sources."core-js-2.6.12" - (sources."core-js-compat-3.8.3" // { + (sources."core-js-compat-3.9.1" // { dependencies = [ sources."semver-7.0.0" ]; @@ -13645,7 +13740,7 @@ in sources."cosmiconfig-5.2.1" (sources."create-ecdh-4.0.4" // { dependencies = [ - sources."bn.js-4.11.9" + sources."bn.js-4.12.0" ]; }) sources."create-hash-1.2.0" @@ -13717,7 +13812,7 @@ in }) (sources."diffie-hellman-5.0.3" // { dependencies = [ - sources."bn.js-4.11.9" + sources."bn.js-4.12.0" ]; }) sources."dir-glob-2.2.2" @@ -13741,10 +13836,10 @@ in sources."duplexify-3.7.1" sources."ecc-jsbn-0.1.2" sources."ee-first-1.1.1" - sources."electron-to-chromium-1.3.657" + sources."electron-to-chromium-1.3.687" (sources."elliptic-6.5.4" // { dependencies = [ - sources."bn.js-4.11.9" + sources."bn.js-4.12.0" ]; }) sources."elm-0.19.1-5" @@ -13757,13 +13852,13 @@ in sources."chalk-4.1.0" sources."color-convert-2.0.1" sources."color-name-1.1.4" - sources."commander-7.0.0" + sources."commander-7.1.0" sources."has-flag-4.0.0" sources."rimraf-3.0.2" sources."supports-color-7.2.0" ]; }) - sources."elm-tooling-1.1.0" + sources."elm-tooling-1.3.0" sources."elm-webpack-loader-6.0.1" sources."emoji-regex-8.0.0" sources."emojis-list-3.0.0" @@ -13777,7 +13872,7 @@ in sources."entities-2.2.0" sources."errno-0.1.8" sources."error-ex-1.3.2" - sources."es-abstract-1.18.0-next.2" + sources."es-abstract-1.18.0" sources."es-to-primitive-1.2.1" sources."escalade-3.1.1" sources."escape-html-1.0.3" @@ -13793,7 +13888,7 @@ in sources."esutils-2.0.3" sources."etag-1.8.1" sources."eventemitter3-4.0.7" - sources."events-3.2.0" + sources."events-3.3.0" sources."eventsource-0.1.6" sources."evp_bytestokey-1.0.3" (sources."execa-1.0.0" // { @@ -13904,7 +13999,7 @@ in sources."find-up-4.1.0" sources."firstline-1.3.1" sources."flush-write-stream-1.1.1" - sources."follow-redirects-1.13.2" + sources."follow-redirects-1.13.3" sources."for-in-1.0.2" sources."forever-agent-0.6.1" sources."form-data-2.3.3" @@ -13946,7 +14041,7 @@ in sources."slash-1.0.0" ]; }) - sources."graceful-fs-4.2.5" + sources."graceful-fs-4.2.6" (sources."gzip-size-5.0.0" // { dependencies = [ sources."pify-3.0.0" @@ -13956,8 +14051,9 @@ in sources."har-schema-2.0.0" sources."har-validator-5.1.5" sources."has-1.0.3" + sources."has-bigints-1.0.1" sources."has-flag-3.0.0" - sources."has-symbols-1.0.1" + sources."has-symbols-1.0.2" sources."has-value-1.0.0" (sources."has-values-1.0.0" // { dependencies = [ @@ -14046,7 +14142,9 @@ in sources."is-accessor-descriptor-1.0.0" sources."is-arguments-1.1.0" sources."is-arrayish-0.2.1" + sources."is-bigint-1.0.1" sources."is-binary-path-2.1.0" + sources."is-boolean-object-1.1.0" sources."is-buffer-1.1.6" sources."is-callable-1.2.3" sources."is-color-stop-1.1.0" @@ -14061,6 +14159,7 @@ in sources."is-glob-4.0.1" sources."is-negative-zero-2.0.1" sources."is-number-7.0.0" + sources."is-number-object-1.0.4" sources."is-obj-2.0.0" sources."is-path-cwd-2.2.0" sources."is-path-in-cwd-2.1.0" @@ -14072,6 +14171,7 @@ in sources."is-resolvable-1.1.0" sources."is-root-2.0.0" sources."is-stream-1.1.0" + sources."is-string-1.0.5" sources."is-svg-3.0.0" sources."is-symbol-1.0.3" sources."is-typedarray-1.0.0" @@ -14116,7 +14216,7 @@ in ]; }) sources."locate-path-5.0.0" - sources."lodash-4.17.20" + sources."lodash-4.17.21" sources."lodash._reinterpolate-3.0.0" sources."lodash.memoize-4.1.2" sources."lodash.template-4.5.0" @@ -14138,12 +14238,12 @@ in sources."micromatch-4.0.2" (sources."miller-rabin-4.0.1" // { dependencies = [ - sources."bn.js-4.11.9" + sources."bn.js-4.12.0" ]; }) sources."mime-1.6.0" - sources."mime-db-1.45.0" - sources."mime-types-2.1.28" + sources."mime-db-1.46.0" + sources."mime-types-2.1.29" sources."mimic-fn-1.2.0" (sources."mini-css-extract-plugin-0.12.0" // { dependencies = [ @@ -14167,7 +14267,7 @@ in sources."multicast-dns-service-types-1.1.0" sources."mute-stream-0.0.8" sources."nan-2.14.2" - sources."nanoid-3.1.20" + sources."nanoid-3.1.21" sources."nanomatch-1.2.13" sources."ncp-1.0.1" sources."negotiator-0.6.2" @@ -14189,7 +14289,7 @@ in sources."punycode-1.4.1" ]; }) - sources."node-releases-1.1.70" + sources."node-releases-1.1.71" sources."normalize-package-data-2.5.0" sources."normalize-path-3.0.0" sources."normalize-range-0.1.2" @@ -14217,14 +14317,14 @@ in ]; }) sources."object-inspect-1.9.0" - sources."object-is-1.1.4" + sources."object-is-1.1.5" sources."object-keys-1.1.1" sources."object-visit-1.0.1" sources."object.assign-4.1.2" sources."object.entries-1.1.3" - sources."object.getownpropertydescriptors-2.1.1" + sources."object.getownpropertydescriptors-2.1.2" sources."object.pick-1.3.0" - sources."object.values-1.1.2" + sources."object.values-1.1.3" sources."obuf-1.1.2" sources."on-finished-2.3.0" sources."on-headers-1.0.2" @@ -14420,7 +14520,7 @@ in }) (sources."postcss-safe-parser-5.0.2" // { dependencies = [ - sources."postcss-8.2.4" + sources."postcss-8.2.8" sources."source-map-0.6.1" ]; }) @@ -14433,7 +14533,7 @@ in sources."postcss-unique-selectors-4.0.1" sources."postcss-value-parser-4.1.0" sources."prepend-http-1.0.4" - sources."pretty-bytes-5.5.0" + sources."pretty-bytes-5.6.0" sources."pretty-error-2.1.2" sources."process-0.11.10" sources."process-nextick-args-2.0.1" @@ -14446,7 +14546,7 @@ in sources."psl-1.8.0" (sources."public-encrypt-4.0.3" // { dependencies = [ - sources."bn.js-4.11.9" + sources."bn.js-4.12.0" ]; }) sources."pump-3.0.0" @@ -14543,7 +14643,7 @@ in sources."require-directory-2.1.1" sources."require-main-filename-1.0.1" sources."requires-port-1.0.0" - sources."resolve-1.19.0" + sources."resolve-1.20.0" sources."resolve-cwd-2.0.0" sources."resolve-dir-1.0.1" sources."resolve-from-3.0.0" @@ -14558,7 +14658,7 @@ in sources."ripemd160-2.0.2" sources."run-async-2.4.1" sources."run-queue-1.0.3" - (sources."rxjs-6.6.3" // { + (sources."rxjs-6.6.6" // { dependencies = [ sources."tslib-1.14.1" ]; @@ -14704,9 +14804,9 @@ in sources."stream-shift-1.0.1" sources."strict-uri-encode-1.1.0" sources."string-replace-loader-2.3.0" - sources."string-width-4.2.0" - sources."string.prototype.trimend-1.0.3" - sources."string.prototype.trimstart-1.0.3" + sources."string-width-4.2.2" + sources."string.prototype.trimend-1.0.4" + sources."string.prototype.trimstart-1.0.4" sources."string_decoder-1.1.1" (sources."stringify-object-3.3.0" // { dependencies = [ @@ -14810,6 +14910,7 @@ in sources."yallist-2.1.2" ]; }) + sources."unbox-primitive-1.0.0" sources."unicode-canonical-property-names-ecmascript-1.0.4" sources."unicode-match-property-ecmascript-1.0.4" sources."unicode-match-property-value-ecmascript-1.2.0" @@ -14846,7 +14947,7 @@ in sources."schema-utils-3.0.0" ]; }) - sources."url-parse-1.4.7" + sources."url-parse-1.5.1" sources."use-3.1.1" (sources."util-0.11.1" // { dependencies = [ @@ -14898,7 +14999,7 @@ in }) (sources."webpack-dev-middleware-3.7.3" // { dependencies = [ - sources."mime-2.5.0" + sources."mime-2.5.2" ]; }) (sources."webpack-dev-server-3.11.0" // { @@ -14968,6 +15069,7 @@ in sources."websocket-extensions-0.1.4" sources."whatwg-fetch-3.5.0" sources."which-2.0.2" + sources."which-boxed-primitive-1.0.2" sources."which-module-1.0.0" (sources."winston-2.1.1" // { dependencies = [ @@ -15010,7 +15112,7 @@ in sources."xtend-4.0.2" sources."y18n-4.0.1" sources."yallist-3.1.1" - sources."yaml-1.10.0" + sources."yaml-1.10.1" (sources."yargs-6.6.0" // { dependencies = [ sources."camelcase-3.0.0" @@ -15062,7 +15164,7 @@ in sources."inflight-1.0.6" sources."inherits-2.0.4" sources."isexe-2.0.0" - sources."lodash-4.17.20" + sources."lodash-4.17.21" sources."minimatch-3.0.4" sources."minimist-1.2.5" sources."mkdirp-0.5.5" @@ -15078,7 +15180,7 @@ in sources."supports-color-7.2.0" sources."temp-0.9.4" sources."ts-union-2.3.0" - sources."typescript-3.9.7" + sources."typescript-3.9.9" sources."which-1.3.1" sources."wrappy-1.0.2" ]; @@ -15095,10 +15197,10 @@ in elm-review = nodeEnv.buildNodePackage { name = "elm-review"; packageName = "elm-review"; - version = "2.4.1"; + version = "2.4.6"; src = fetchurl { - url = "https://registry.npmjs.org/elm-review/-/elm-review-2.4.1.tgz"; - sha512 = "2nirbEpOvOCgVylf5l6mtu+IqM//8kBeuj6zELPHmzWtn7heZTC0AS7fUtLVtnkgw9Cws8oh4tFLmHgVALE+dw=="; + url = "https://registry.npmjs.org/elm-review/-/elm-review-2.4.6.tgz"; + sha512 = "O94tBcesK/JytSGrLXh/NEU9jTQ2jGWpDrN6y/vgGu/gmL/i2Z6tdYw1+Jw0DKzigH3I3JtpoQAp2K/Y27y8Gw=="; }; dependencies = [ sources."@sindresorhus/is-2.1.1" @@ -15106,7 +15208,7 @@ in sources."@types/cacheable-request-6.0.1" sources."@types/http-cache-semantics-4.0.0" sources."@types/keyv-3.1.1" - sources."@types/node-14.14.25" + sources."@types/node-14.14.34" sources."@types/responselike-1.0.0" (sources."ansi-escapes-4.3.1" // { dependencies = [ @@ -15140,12 +15242,14 @@ in sources."debug-4.3.2" sources."decompress-response-5.0.0" sources."defaults-1.0.3" - sources."defer-to-connect-2.0.0" + sources."defer-to-connect-2.0.1" sources."duplexer3-0.1.4" - sources."elm-tooling-1.1.0" + sources."elm-tooling-1.3.0" sources."emoji-regex-8.0.0" sources."end-of-stream-1.4.4" sources."escape-string-regexp-1.0.5" + sources."fast-levenshtein-3.0.0" + sources."fastest-levenshtein-1.0.12" sources."fill-range-7.0.1" sources."find-up-4.1.0" sources."folder-hash-3.3.3" @@ -15154,9 +15258,9 @@ in sources."fsevents-2.3.2" sources."get-stream-5.2.0" sources."glob-7.1.6" - sources."glob-parent-5.1.1" + sources."glob-parent-5.1.2" sources."got-10.7.0" - sources."graceful-fs-4.2.5" + sources."graceful-fs-4.2.6" sources."has-flag-4.0.0" sources."http-cache-semantics-4.1.0" sources."inflight-1.0.6" @@ -15200,7 +15304,7 @@ in sources."chalk-3.0.0" ]; }) - sources."p-cancelable-2.0.0" + sources."p-cancelable-2.1.0" sources."p-event-4.2.0" sources."p-finally-1.0.0" sources."p-limit-2.3.0" @@ -15221,7 +15325,7 @@ in sources."shebang-regex-3.0.0" sources."signal-exit-3.0.3" sources."sisteransi-1.0.5" - sources."string-width-4.2.0" + sources."string-width-4.2.2" sources."strip-ansi-6.0.0" sources."supports-color-7.2.0" sources."supports-hyperlinks-2.1.0" diff --git a/nixpkgs/pkgs/development/compilers/factor-lang/default.nix b/nixpkgs/pkgs/development/compilers/factor-lang/default.nix index fc5f478177cb..4ce55b5ca25c 100644 --- a/nixpkgs/pkgs/development/compilers/factor-lang/default.nix +++ b/nixpkgs/pkgs/development/compilers/factor-lang/default.nix @@ -19,9 +19,10 @@ stdenv.mkDerivation rec { ./fuel-dir.patch ]; - buildInputs = with xorg; [ git rlwrap curl pkg-config perl makeWrapper + nativeBuildInputs = [ makeWrapper unzip ]; + buildInputs = with xorg; [ git rlwrap curl pkg-config perl libX11 pango cairo gtk2 gdk-pixbuf gtkglext - mesa libXmu libXt libICE libSM openssl unzip ]; + mesa libXmu libXt libICE libSM openssl ]; buildPhase = '' sed -ie '4i GIT_LABEL = heads/master-${rev}' GNUmakefile diff --git a/nixpkgs/pkgs/development/compilers/flasm/default.nix b/nixpkgs/pkgs/development/compilers/flasm/default.nix index 4257feb87b99..9423f5e15df9 100644 --- a/nixpkgs/pkgs/development/compilers/flasm/default.nix +++ b/nixpkgs/pkgs/development/compilers/flasm/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { stripRoot = false; }; - makeFlags = [ "CC=cc" ]; + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; nativeBuildInputs = [ unzip bison flex gperf ]; diff --git a/nixpkgs/pkgs/development/compilers/flutter/default.nix b/nixpkgs/pkgs/development/compilers/flutter/default.nix index 14f4d93caa03..736178e76ca2 100644 --- a/nixpkgs/pkgs/development/compilers/flutter/default.nix +++ b/nixpkgs/pkgs/development/compilers/flutter/default.nix @@ -4,7 +4,7 @@ let getPatches = dir: let files = builtins.attrNames (builtins.readDir dir); in map (f: dir + ("/" + f)) files; - version = "1.22.4"; + version = "2.0.3"; channel = "stable"; filename = "flutter_linux_${version}-${channel}.tar.xz"; in @@ -15,7 +15,7 @@ in pname = "flutter"; src = fetchurl { url = "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}"; - sha256 = "0qalgav9drqddcj8lfvl9ddf3325n953pvkmgha47lslg9sa88zw"; + sha256 = "14a63cpkp78rgymmlrppds69jsrdarg33dr43nb7s61r0xfh9icm"; }; patches = getPatches ./patches; }; diff --git a/nixpkgs/pkgs/development/compilers/flutter/flutter.nix b/nixpkgs/pkgs/development/compilers/flutter/flutter.nix index 4a7aa0d01463..27436d8b6143 100644 --- a/nixpkgs/pkgs/development/compilers/flutter/flutter.nix +++ b/nixpkgs/pkgs/development/compilers/flutter/flutter.nix @@ -41,11 +41,10 @@ let buildInputs = [ git ]; - inherit src patches; + inherit src patches version; postPatch = '' patchShebangs --build ./bin/ - find ./bin/ -executable -type f -exec patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) {} \; ''; buildPhase = '' diff --git a/nixpkgs/pkgs/development/compilers/flutter/patches/disable-auto-update.patch b/nixpkgs/pkgs/development/compilers/flutter/patches/disable-auto-update.patch index 35ce5b367350..1fe098136843 100644 --- a/nixpkgs/pkgs/development/compilers/flutter/patches/disable-auto-update.patch +++ b/nixpkgs/pkgs/development/compilers/flutter/patches/disable-auto-update.patch @@ -1,8 +1,8 @@ diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh -index 8d613de739..a673466726 100644 +index c44f867746..c9eda34e26 100644 --- a/bin/internal/shared.sh +++ b/bin/internal/shared.sh -@@ -204,8 +204,6 @@ function shared::execute() { +@@ -218,8 +218,6 @@ function shared::execute() { # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS" # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432" @@ -12,20 +12,18 @@ index 8d613de739..a673466726 100644 case "$BIN_NAME" in flutter*) diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -index 8a1a1e29da..778f253358 100644 +index 3dc7929dd1..e65d70d55b 100644 --- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart +++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart -@@ -293,13 +293,6 @@ class FlutterCommandRunner extends CommandRunner<void> { +@@ -246,11 +246,7 @@ class FlutterCommandRunner extends CommandRunner<void> { globals.flutterUsage.suppressAnalytics = true; } -- try { -- await globals.flutterVersion.ensureVersionFile(); -- } on FileSystemException catch (e) { -- globals.printError('Failed to write the version file to the artifact cache: "$e".'); -- globals.printError('Please ensure you have permissions in the artifact cache directory.'); -- throwToolExit('Failed to write the version file'); -- } +- globals.flutterVersion.ensureVersionFile(); final bool machineFlag = topLevelResults['machine'] as bool; - if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { - await globals.flutterVersion.checkFlutterVersionFreshness(); +- if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { +- await globals.flutterVersion.checkFlutterVersionFreshness(); +- } + + // See if the user specified a specific device. + globals.deviceManager.specifiedDeviceId = topLevelResults['device-id'] as String; diff --git a/nixpkgs/pkgs/development/compilers/flutter/patches/move-cache.patch b/nixpkgs/pkgs/development/compilers/flutter/patches/move-cache.patch index dc77496edb31..d6a45a97e581 100644 --- a/nixpkgs/pkgs/development/compilers/flutter/patches/move-cache.patch +++ b/nixpkgs/pkgs/development/compilers/flutter/patches/move-cache.patch @@ -1,59 +1,54 @@ -diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart -index d045c83f04..d51973020b 100644 ---- a/dev/devicelab/lib/framework/runner.dart -+++ b/dev/devicelab/lib/framework/runner.dart -@@ -136,7 +136,7 @@ Future<void> cleanupSystem() async { - print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)'); - final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew'; - final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.'); -- recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir); -+ recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir); - copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper'))); - if (!Platform.isWindows) { - await exec( diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart -index 8da01315ae..bb8d61d7f2 100644 +index a6c59bae07..21f6c9812a 100644 --- a/packages/flutter_tools/lib/src/asset.dart +++ b/packages/flutter_tools/lib/src/asset.dart -@@ -8,6 +8,7 @@ import 'package:meta/meta.dart'; +@@ -5,6 +5,7 @@ + import 'package:meta/meta.dart'; import 'package:package_config/package_config.dart'; - import 'package:yaml/yaml.dart'; +import 'base/common.dart'; import 'base/context.dart'; import 'base/file_system.dart'; - import 'base/utils.dart'; -@@ -399,7 +400,7 @@ List<_Asset> _getMaterialAssets(String fontSet) { - for (final Map<dynamic, dynamic> font in (family['fonts'] as List<dynamic>).cast<Map<dynamic, dynamic>>()) { - final Uri entryUri = globals.fs.path.toUri(font['asset'] as String); - result.add(_Asset( -- baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), -+ baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), - relativeUri: Uri(path: entryUri.pathSegments.last), - entryUri: entryUri, - package: null, + import 'base/logger.dart'; +@@ -14,6 +15,7 @@ import 'cache.dart'; + import 'convert.dart'; + import 'dart/package_map.dart'; + import 'devfs.dart'; ++import 'globals.dart' as globals; + import 'flutter_manifest.dart'; + import 'license_collector.dart'; + import 'project.dart'; +@@ -377,7 +379,7 @@ class ManifestAssetBundle implements AssetBundle { + for (final Map<String, Object> font in family['fonts'] as List<Map<String, Object>>) { + final Uri entryUri = _fileSystem.path.toUri(font['asset'] as String); + result.add(_Asset( +- baseDir: _fileSystem.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), ++ baseDir: _fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), + relativeUri: Uri(path: entryUri.pathSegments.last), + entryUri: entryUri, + package: null, diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart -index a35d8f87d0..a40027dc74 100644 +index 11e3bf3e11..39d6fae0d1 100644 --- a/packages/flutter_tools/lib/src/cache.dart +++ b/packages/flutter_tools/lib/src/cache.dart -@@ -215,8 +215,15 @@ class Cache { +@@ -321,8 +321,15 @@ class Cache { return; } assert(_lock == null); + -+ final Directory dir = globals.fs.directory(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); ++ final Directory dir = _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); + if (!dir.existsSync()) { + dir.createSync(recursive: true); + globals.os.chmod(dir, '755'); + } + final File lockFile = -- globals.fs.file(globals.fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); -+ globals.fs.file(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); +- _fileSystem.file(_fileSystem.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); ++ _fileSystem.file(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); try { _lock = lockFile.openSync(mode: FileMode.write); } on FileSystemException catch (e) { -@@ -319,7 +326,7 @@ class Cache { +@@ -424,7 +431,7 @@ class Cache { if (_rootOverride != null) { return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache')); } else { diff --git a/nixpkgs/pkgs/development/compilers/fpc/lazarus.nix b/nixpkgs/pkgs/development/compilers/fpc/lazarus.nix index 0b7ac647529d..5cd0609960df 100644 --- a/nixpkgs/pkgs/development/compilers/fpc/lazarus.nix +++ b/nixpkgs/pkgs/development/compilers/fpc/lazarus.nix @@ -9,7 +9,7 @@ # 1. the build date is embedded in the binary through `$I %DATE%` - we should dump that let - version = "2.0.10-2"; + version = "2.0.12"; # as of 2.0.10 a suffix is being added. That may or may not disappear and then # come back, so just leave this here. @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://sourceforge/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%20${majorMinorPatch version}/lazarus-${version}.tar.gz"; - sha256 = "sha256-ZNViZGjdJKMzKyBfOr0KWBq33hsGCi1X4hhkBmz9Q7c="; + sha256 = "sha256-umzvf4I6LSgWYimYLvySYDnUIxPEDiL+DGd2wT0AFbI="; }; postPatch = '' diff --git a/nixpkgs/pkgs/development/compilers/gambit/build.nix b/nixpkgs/pkgs/development/compilers/gambit/build.nix index a4b884147db1..d67e0053bbac 100644 --- a/nixpkgs/pkgs/development/compilers/gambit/build.nix +++ b/nixpkgs/pkgs/development/compilers/gambit/build.nix @@ -25,10 +25,11 @@ gccStdenv.mkDerivation rec { inherit src version git-version; bootstrap = gambit-support.gambit-bootstrap; + nativeBuildInputs = [ git autoconf ]; # TODO: if/when we can get all the library packages we depend on to have static versions, # we could use something like (makeStaticLibraries openssl) to enable creation # of statically linked binaries by gsc. - buildInputs = [ git autoconf bootstrap openssl ]; + buildInputs = [ openssl ]; # TODO: patch gambit's source so it has the full path to sed, grep, fgrep? Is there more? # Or wrap relevant programs to add a suitable PATH ? @@ -62,11 +63,11 @@ gccStdenv.mkDerivation rec { lib.optional (!gccStdenv.isDarwin) "--enable-poll"; configurePhase = '' - export CC=${gcc}/bin/gcc \ - CXX=${gcc}/bin/g++ \ - CPP=${gcc}/bin/cpp \ - CXXCPP=${gcc}/bin/cpp \ - LD=${gcc}/bin/ld \ + export CC=${gccStdenv.cc}/bin/${gccStdenv.cc.targetPrefix}gcc \ + CXX=${gccStdenv.cc}/bin/${gccStdenv.cc.targetPrefix}g++ \ + CPP=${gccStdenv.cc}/bin/${gccStdenv.cc.targetPrefix}cpp \ + CXXCPP=${gccStdenv.cc}/bin/${gccStdenv.cc.targetPrefix}cpp \ + LD=${gccStdenv.cc}/bin/${gccStdenv.cc.targetPrefix}ld \ XMKMF=${coreutils}/bin/false unset CFLAGS LDFLAGS LIBS CPPFLAGS CXXFLAGS @@ -76,22 +77,23 @@ gccStdenv.mkDerivation rec { # OS-specific paths are hardcoded in ./configure substituteInPlace config.status \ - --replace /usr/local/opt/openssl/lib "${openssl.out}/lib" \ - --replace /usr/local/opt/openssl@1.1/lib "${openssl.out}/lib" + --replace "/usr/local/opt/openssl@1.1" "${openssl.out}" \ + --replace "/usr/local/opt/openssl" "${openssl.out}" + ./config.status ''; buildPhase = '' # Make bootstrap compiler, from release bootstrap - mkdir -p boot && - cp -rp ${bootstrap}/gambit/. boot/. && - chmod -R u+w boot && - cd boot && - cp ../gsc/makefile.in ../gsc/*.scm gsc/ && # */ - ./configure && - for i in lib gsi gsc ; do (cd $i ; make -j$NIX_BUILD_CORES) ; done && - cd .. && - cp boot/gsc/gsc gsc-boot && + mkdir -p boot + cp -rp ${bootstrap}/gambit/. boot/. + chmod -R u+w boot + cd boot + cp ../gsc/makefile.in ../gsc/*.scm gsc/ + ./configure + for i in lib gsi gsc ; do (cd $i ; make -j$NIX_BUILD_CORES) ; done + cd .. + cp boot/gsc/gsc gsc-boot # Now use the bootstrap compiler to build the real thing! make -j$NIX_BUILD_CORES from-scratch diff --git a/nixpkgs/pkgs/development/compilers/gcc/10/default.nix b/nixpkgs/pkgs/development/compilers/gcc/10/default.nix index 07b0921ec184..1502b09cca6a 100644 --- a/nixpkgs/pkgs/development/compilers/gcc/10/default.nix +++ b/nixpkgs/pkgs/development/compilers/gcc/10/default.nix @@ -181,7 +181,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform gnatboot langAda langGo; + inherit version hostPlatform gnatboot langAda langGo langJit; }; dontDisableStatic = true; diff --git a/nixpkgs/pkgs/development/compilers/gcc/6/default.nix b/nixpkgs/pkgs/development/compilers/gcc/6/default.nix index fa7881e398a8..93c9dde61fc3 100644 --- a/nixpkgs/pkgs/development/compilers/gcc/6/default.nix +++ b/nixpkgs/pkgs/development/compilers/gcc/6/default.nix @@ -78,7 +78,11 @@ let majorVersion = "6"; ++ optional (targetPlatform.libc == "musl") ../libgomp-dont-force-initial-exec.patch # Obtain latest patch with ../update-mcfgthread-patches.sh - ++ optional (!crossStageStatic && targetPlatform.isMinGW) ./Added-mcf-thread-model-support-from-mcfgthread.patch; + ++ optional (!crossStageStatic && targetPlatform.isMinGW) ./Added-mcf-thread-model-support-from-mcfgthread.patch + ++ optional (targetPlatform.libc == "musl" && targetPlatform.isx86_32) (fetchpatch { + url = "https://git.alpinelinux.org/aports/plain/main/gcc/gcc-6.1-musl-libssp.patch?id=5e4b96e23871ee28ef593b439f8c07ca7c7eb5bb"; + sha256 = "1jf1ciz4gr49lwyh8knfhw6l5gvfkwzjy90m7qiwkcbsf4a3fqn2"; + }); javaEcj = fetchurl { # The `$(top_srcdir)/ecj.jar' file is automatically picked up at diff --git a/nixpkgs/pkgs/development/compilers/gcc/7/default.nix b/nixpkgs/pkgs/development/compilers/gcc/7/default.nix index 2ea9033ba63a..d9b4c639b5ab 100644 --- a/nixpkgs/pkgs/development/compilers/gcc/7/default.nix +++ b/nixpkgs/pkgs/development/compilers/gcc/7/default.nix @@ -72,6 +72,10 @@ let majorVersion = "7"; }) ++ optional langFortran ../gfortran-driving.patch ++ optional (targetPlatform.libc == "musl" && targetPlatform.isPower) ../ppc-musl.patch + ++ optional (targetPlatform.libc == "musl" && targetPlatform.isx86_32) (fetchpatch { + url = "https://git.alpinelinux.org/aports/plain/main/gcc/gcc-6.1-musl-libssp.patch?id=5e4b96e23871ee28ef593b439f8c07ca7c7eb5bb"; + sha256 = "1jf1ciz4gr49lwyh8knfhw6l5gvfkwzjy90m7qiwkcbsf4a3fqn2"; + }) ++ optional (targetPlatform.libc == "musl") ../libgomp-dont-force-initial-exec.patch # Obtain latest patch with ../update-mcfgthread-patches.sh diff --git a/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix b/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix index 4bdec26fd993..fc4fbb34c502 100644 --- a/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix +++ b/nixpkgs/pkgs/development/compilers/gcc/common/configure-flags.nix @@ -86,7 +86,6 @@ let else if targetPlatform.isWindows then "mcf" else "single"}" "--enable-nls" - "--disable-decimal-float" # No final libdecnumber (it may work only in 386) ] ++ lib.optionals (targetPlatform.libc == "uclibc" || targetPlatform.libc == "musl") [ # libsanitizer requires netrom/netrom.h which is not # available in uclibc. @@ -94,9 +93,6 @@ let # In uclibc cases, libgomp needs an additional '-ldl' # and as I don't know how to pass it, I disable libgomp. "--disable-libgomp" - ] ++ lib.optionals (targetPlatform.libc == "musl") [ - # musl at least, disable: https://git.buildroot.net/buildroot/commit/?id=873d4019f7fb00f6a80592224236b3ba7d657865 - "--disable-libmpx" ] ++ lib.optional (targetPlatform.libc == "newlib") "--with-newlib" ++ lib.optional (targetPlatform.libc == "avrlibc") "--with-avrlibc" ); @@ -147,6 +143,10 @@ let (lib.enableFeature enablePlugin "plugin") ] + # Support -m32 on powerpc64le + ++ lib.optional (targetPlatform.system == "powerpc64le-linux") + "--enable-targets=powerpcle-linux" + # Optional features ++ lib.optional (isl != null) "--with-isl=${isl}" ++ lib.optionals (cloog != null) [ @@ -181,6 +181,9 @@ let # On Illumos/Solaris GNU as is preferred "--with-gnu-as" "--without-gnu-ld" ] + ++ lib.optional (targetPlatform.libc == "musl") + # musl at least, disable: https://git.buildroot.net/buildroot/commit/?id=873d4019f7fb00f6a80592224236b3ba7d657865 + "--disable-libmpx" ++ lib.optionals (targetPlatform == hostPlatform && targetPlatform.libc == "musl") [ "--disable-libsanitizer" "--disable-symvers" diff --git a/nixpkgs/pkgs/development/compilers/gerbil/build.nix b/nixpkgs/pkgs/development/compilers/gerbil/build.nix index 8297dafff8e2..3d2fd7551e67 100644 --- a/nixpkgs/pkgs/development/compilers/gerbil/build.nix +++ b/nixpkgs/pkgs/development/compilers/gerbil/build.nix @@ -1,4 +1,4 @@ -{ pkgs, gccStdenv, lib, coreutils, bash, # makeStaticLibraries, +{ pkgs, gccStdenv, lib, coreutils, openssl, zlib, sqlite, libxml2, libyaml, libmysqlclient, lmdb, leveldb, postgresql, version, git-version, gambit-support, diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.10.1.nix b/nixpkgs/pkgs/development/compilers/ghc/8.10.1.nix deleted file mode 100644 index 83604630545e..000000000000 --- a/nixpkgs/pkgs/development/compilers/ghc/8.10.1.nix +++ /dev/null @@ -1,268 +0,0 @@ -{ lib, stdenv, pkgsBuildTarget, targetPackages - -# build-tools -, bootPkgs -, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx -, bash - -, libiconv ? null, ncurses - -, # GHC can be built with system libffi or a bundled one. - libffi ? null - -, useLLVM ? !stdenv.targetPlatform.isx86 -, # LLVM is conceptually a run-time-only depedendency, but for - # non-x86, we need LLVM to bootstrap later stages, so it becomes a - # build-time dependency too. - buildLlvmPackages, llvmPackages - -, # If enabled, GHC will be built with the GPL-free but slower integer-simple - # library instead of the faster but GPLed integer-gmp library. - enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp - -, # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform - - # aarch64 outputs otherwise exceed 2GB limit -, enableProfiledLibs ? !stdenv.targetPlatform.isAarch64 - -, # Whether to build dynamic libs for the standard library (on the target - # platform). Static libs are always built. - enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt - -, # Whether to build terminfo. - enableTerminfo ? !stdenv.targetPlatform.isWindows - -, # What flavour to build. An empty string indicates no - # specific flavour and falls back to ghc default values. - ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) - (if useLLVM then "perf-cross" else "perf-cross-ncg") - -, # Whether to disable the large address space allocator - # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/ - disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64 -}: - -assert !enableIntegerSimple -> gmp != null; - -let - inherit (stdenv) buildPlatform hostPlatform targetPlatform; - - inherit (bootPkgs) ghc; - - # TODO(@Ericson2314) Make unconditional - targetPrefix = lib.optionalString - (targetPlatform != hostPlatform) - "${targetPlatform.config}-"; - - buildMK = dontStrip: '' - BuildFlavour = ${ghcFlavour} - ifneq \"\$(BuildFlavour)\" \"\" - include mk/flavours/\$(BuildFlavour).mk - endif - DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"} - INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"} - '' - # We only need to build stage1 on most cross-compilation because - # we will be running the compiler on the native system. In some - # situations, like native Musl compilation, we need the compiler - # to actually link to our new Libc. The iOS simulator is a special - # exception because we canβt actually run simulators binaries - # ourselves. - + lib.optionalString (targetPlatform != hostPlatform) '' - Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"} - CrossCompilePrefix = ${targetPrefix} - HADDOCK_DOCS = NO - BUILD_SPHINX_HTML = NO - BUILD_SPHINX_PDF = NO - '' + lib.optionalString dontStrip '' - STRIP_CMD = : - '' + lib.optionalString (!enableProfiledLibs) '' - GhcLibWays = "v dyn" - '' + lib.optionalString enableRelocatedStaticLibs '' - GhcLibHcOpts += -fPIC - GhcRtsHcOpts += -fPIC - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - EXTRA_CC_OPTS += -std=gnu99 - ''; - - # Splicer will pull out correct variations - libDeps = platform: lib.optional enableTerminfo ncurses - ++ [libffi] - ++ lib.optional (!enableIntegerSimple) gmp - ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; - - toolsForTarget = [ - pkgsBuildTarget.targetPackages.stdenv.cc - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; - - targetCC = builtins.head toolsForTarget; - - # ld.gold is disabled for musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 - # see #84670 and #49071 for more background. - useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false) && !targetPlatform.isMusl; - -in -stdenv.mkDerivation (rec { - version = "8.10.1"; - name = "${targetPrefix}ghc-${version}"; - - src = fetchurl { - url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz"; - sha256 = "1xgdl6ig5jzli3bg054vfryfkg0y6wggf68g66c32sr67bw0ffsf"; - }; - - enableParallelBuilding = true; - - outputs = [ "out" "doc" ]; - - patches = [ - # See upstream patch at - # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build - # from source distributions, the auto-generated configure script needs to be - # patched as well, therefore we use an in-tree patch instead of pulling the - # upstream patch. Don't forget to check backport status of the upstream patch - # when adding new GHC releases in nixpkgs. - ./respect-ar-path.patch - ]; - - postPatch = "patchShebangs ."; - - # GHC is a bit confused on its cross terminology. - preConfigure = '' - for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do - export "''${env#TARGET_}=''${!env}" - done - # GHC is a bit confused on its cross terminology, as these would normally be - # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" - # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip" - - echo -n "${buildMK dontStrip}" > mk/build.mk - sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure - '' + lib.optionalString (!stdenv.isDarwin) '' - export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}" - '' + lib.optionalString stdenv.isDarwin '' - export NIX_LDFLAGS+=" -no_dtrace_dof" - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets - '' + lib.optionalString targetPlatform.isMusl '' - echo "patching llvm-targets for musl targets..." - echo "Cloning these existing '*-linux-gnu*' targets:" - grep linux-gnu llvm-targets | sed 's/^/ /' - echo "(go go gadget sed)" - sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets - echo "llvm-targets now contains these '*-linux-musl*' targets:" - grep linux-musl llvm-targets | sed 's/^/ /' - - echo "And now patching to preserve '-musleabi' as done with '-gnueabi'" - # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen) - for x in configure aclocal.m4; do - substituteInPlace $x \ - --replace '*-android*|*-gnueabi*)' \ - '*-android*|*-gnueabi*|*-musleabi*)' - done - ''; - - # TODO(@Ericson2314): Always pass "--target" and always prefix. - configurePlatforms = [ "build" "host" ] - ++ lib.optional (targetPlatform != hostPlatform) "target"; - - # `--with` flags for libraries needed for RTS linker - configureFlags = [ - "--datadir=$doc/share/doc/ghc" - "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" - ] ++ lib.optionals (libffi != null) [ - "--with-system-libffi" - "--with-ffi-includes=${targetPackages.libffi.dev}/include" - "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ - "--with-gmp-includes=${targetPackages.gmp.dev}/include" - "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ - "--with-iconv-includes=${libiconv}/include" - "--with-iconv-libraries=${libiconv}/lib" - ] ++ lib.optionals (targetPlatform != hostPlatform) [ - "--enable-bootstrap-with-devel-snapshot" - ] ++ lib.optionals useLdGold [ - "CFLAGS=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold" - ] ++ lib.optionals (disableLargeAddressSpace) [ - "--disable-large-address-space" - ]; - - # Make sure we never relax`$PATH` and hooks support for compatibility. - strictDeps = true; - - # Donβt add -liconv to LDFLAGS automatically so that GHC will add it itself. - dontAddExtraLibs = true; - - nativeBuildInputs = [ - perl autoconf automake m4 python3 sphinx - ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour - ]; - - # For building runtime libs - depsBuildTarget = toolsForTarget; - - buildInputs = [ perl bash ] ++ (libDeps hostPlatform); - - propagatedBuildInputs = [ targetPackages.stdenv.cc ] - ++ lib.optional useLLVM llvmPackages.llvm; - - depsTargetTarget = map lib.getDev (libDeps targetPlatform); - depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform); - - # required, because otherwise all symbols from HSffi.o are stripped, and - # that in turn causes GHCi to abort - stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; - - checkTarget = "test"; - - hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie"; - - postInstall = '' - # Install the bash completion file. - install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc - - # Patch scripts to include "readelf" and "cat" in $PATH. - for i in "$out/bin/"*; do - test ! -h $i || continue - egrep --quiet '^#!' <(head -n 1 $i) || continue - sed -i -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i - done - ''; - - passthru = { - inherit bootPkgs targetPrefix; - - inherit llvmPackages; - inherit enableShared; - - # Our Cabal compiler name - haskellCompilerName = "ghc-${version}"; - }; - - meta = { - homepage = "http://haskell.org/ghc"; - description = "The Glasgow Haskell Compiler"; - maintainers = with lib.maintainers; [ marcweber andres peti ]; - timeout = 24 * 3600; - inherit (ghc.meta) license platforms; - }; - - dontStrip = (targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm); - -} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt{ - dontPatchELF = true; - noAuditTmpdir = true; -}) diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.10.2.nix b/nixpkgs/pkgs/development/compilers/ghc/8.10.2.nix deleted file mode 100644 index a42dfce6468a..000000000000 --- a/nixpkgs/pkgs/development/compilers/ghc/8.10.2.nix +++ /dev/null @@ -1,267 +0,0 @@ -{ lib, stdenv, pkgsBuildTarget, targetPackages - -# build-tools -, bootPkgs -, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx -, bash - -, libiconv ? null, ncurses - -, # GHC can be built with system libffi or a bundled one. - libffi ? null - -, useLLVM ? !stdenv.targetPlatform.isx86 -, # LLVM is conceptually a run-time-only depedendency, but for - # non-x86, we need LLVM to bootstrap later stages, so it becomes a - # build-time dependency too. - buildLlvmPackages, llvmPackages - -, # If enabled, GHC will be built with the GPL-free but slower integer-simple - # library instead of the faster but GPLed integer-gmp library. - enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp - -, # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform - - # aarch64 outputs otherwise exceed 2GB limit -, enableProfiledLibs ? !stdenv.targetPlatform.isAarch64 - -, # Whether to build dynamic libs for the standard library (on the target - # platform). Static libs are always built. - enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt - -, # Whether to build terminfo. - enableTerminfo ? !stdenv.targetPlatform.isWindows - -, # What flavour to build. An empty string indicates no - # specific flavour and falls back to ghc default values. - ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) - (if useLLVM then "perf-cross" else "perf-cross-ncg") - -, # Whether to disable the large address space allocator - # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/ - disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64 -}: - -assert !enableIntegerSimple -> gmp != null; - -let - inherit (stdenv) buildPlatform hostPlatform targetPlatform; - - inherit (bootPkgs) ghc; - - # TODO(@Ericson2314) Make unconditional - targetPrefix = lib.optionalString - (targetPlatform != hostPlatform) - "${targetPlatform.config}-"; - - buildMK = '' - BuildFlavour = ${ghcFlavour} - ifneq \"\$(BuildFlavour)\" \"\" - include mk/flavours/\$(BuildFlavour).mk - endif - DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"} - INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"} - '' + lib.optionalString (targetPlatform != hostPlatform) '' - Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"} - CrossCompilePrefix = ${targetPrefix} - HADDOCK_DOCS = NO - BUILD_SPHINX_HTML = NO - BUILD_SPHINX_PDF = NO - '' + lib.optionalString (!enableProfiledLibs) '' - GhcLibWays = "v dyn" - '' + lib.optionalString enableRelocatedStaticLibs '' - GhcLibHcOpts += -fPIC - GhcRtsHcOpts += -fPIC - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - EXTRA_CC_OPTS += -std=gnu99 - ''; - - # Splicer will pull out correct variations - libDeps = platform: lib.optional enableTerminfo ncurses - ++ [libffi] - ++ lib.optional (!enableIntegerSimple) gmp - ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; - - toolsForTarget = [ - pkgsBuildTarget.targetPackages.stdenv.cc - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; - - targetCC = builtins.head toolsForTarget; - - # ld.gold is disabled for musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 - # see #84670 and #49071 for more background. - useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false) && !targetPlatform.isMusl; - -in -stdenv.mkDerivation (rec { - version = "8.10.2"; - name = "${targetPrefix}ghc-${version}"; - - src = fetchurl { - url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz"; - sha256 = "02w8n085bw38vyp694j0lfk5wcnwkdaj7hhp0saj71x74533lmww"; - }; - - enableParallelBuilding = true; - - outputs = [ "out" "doc" ]; - - patches = [ - # See upstream patch at - # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build - # from source distributions, the auto-generated configure script needs to be - # patched as well, therefore we use an in-tree patch instead of pulling the - # upstream patch. Don't forget to check backport status of the upstream patch - # when adding new GHC releases in nixpkgs. - ./respect-ar-path.patch - - # https://gitlab.haskell.org/ghc/ghc/-/issues/18549 - ./issue-18549.patch - ] ++ lib.optionals stdenv.isDarwin [ - # Make Block.h compile with c++ compilers. Remove with the next release - (fetchpatch { - url = "https://gitlab.haskell.org/ghc/ghc/-/commit/97d0b0a367e4c6a52a17c3299439ac7de129da24.patch"; - sha256 = "0r4zjj0bv1x1m2dgxp3adsf2xkr94fjnyj1igsivd9ilbs5ja0b5"; - }) - ]; - - postPatch = "patchShebangs ."; - - # GHC is a bit confused on its cross terminology. - preConfigure = '' - for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do - export "''${env#TARGET_}=''${!env}" - done - # GHC is a bit confused on its cross terminology, as these would normally be - # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" - # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip" - - echo -n "${buildMK}" > mk/build.mk - sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure - '' + lib.optionalString (!stdenv.isDarwin) '' - export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}" - '' + lib.optionalString stdenv.isDarwin '' - export NIX_LDFLAGS+=" -no_dtrace_dof" - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets - '' + lib.optionalString targetPlatform.isMusl '' - echo "patching llvm-targets for musl targets..." - echo "Cloning these existing '*-linux-gnu*' targets:" - grep linux-gnu llvm-targets | sed 's/^/ /' - echo "(go go gadget sed)" - sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets - echo "llvm-targets now contains these '*-linux-musl*' targets:" - grep linux-musl llvm-targets | sed 's/^/ /' - - echo "And now patching to preserve '-musleabi' as done with '-gnueabi'" - # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen) - for x in configure aclocal.m4; do - substituteInPlace $x \ - --replace '*-android*|*-gnueabi*)' \ - '*-android*|*-gnueabi*|*-musleabi*)' - done - ''; - - # TODO(@Ericson2314): Always pass "--target" and always prefix. - configurePlatforms = [ "build" "host" ] - ++ lib.optional (targetPlatform != hostPlatform) "target"; - - # `--with` flags for libraries needed for RTS linker - configureFlags = [ - "--datadir=$doc/share/doc/ghc" - "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" - ] ++ lib.optionals (libffi != null) [ - "--with-system-libffi" - "--with-ffi-includes=${targetPackages.libffi.dev}/include" - "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ - "--with-gmp-includes=${targetPackages.gmp.dev}/include" - "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ - "--with-iconv-includes=${libiconv}/include" - "--with-iconv-libraries=${libiconv}/lib" - ] ++ lib.optionals (targetPlatform != hostPlatform) [ - "--enable-bootstrap-with-devel-snapshot" - ] ++ lib.optionals useLdGold [ - "CFLAGS=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold" - ] ++ lib.optionals (disableLargeAddressSpace) [ - "--disable-large-address-space" - ]; - - # Make sure we never relax`$PATH` and hooks support for compatibility. - strictDeps = true; - - # Donβt add -liconv to LDFLAGS automatically so that GHC will add it itself. - dontAddExtraLibs = true; - - nativeBuildInputs = [ - perl autoconf automake m4 python3 sphinx - ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour - ]; - - # For building runtime libs - depsBuildTarget = toolsForTarget; - - buildInputs = [ perl bash ] ++ (libDeps hostPlatform); - - propagatedBuildInputs = [ targetPackages.stdenv.cc ] - ++ lib.optional useLLVM llvmPackages.llvm; - - depsTargetTarget = map lib.getDev (libDeps targetPlatform); - depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform); - - # required, because otherwise all symbols from HSffi.o are stripped, and - # that in turn causes GHCi to abort - stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; - - checkTarget = "test"; - - hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie"; - - postInstall = '' - # Install the bash completion file. - install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc - - # Patch scripts to include "readelf" and "cat" in $PATH. - for i in "$out/bin/"*; do - test ! -h $i || continue - egrep --quiet '^#!' <(head -n 1 $i) || continue - sed -i -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i - done - ''; - - passthru = { - inherit bootPkgs targetPrefix; - - inherit llvmPackages; - inherit enableShared; - - # Our Cabal compiler name - haskellCompilerName = "ghc-${version}"; - }; - - meta = { - homepage = "http://haskell.org/ghc"; - description = "The Glasgow Haskell Compiler"; - maintainers = with lib.maintainers; [ marcweber andres peti ]; - timeout = 24 * 3600; - inherit (ghc.meta) license platforms; - }; - -} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt { - dontStrip = true; - dontPatchELF = true; - noAuditTmpdir = true; -}) diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.10.3.nix b/nixpkgs/pkgs/development/compilers/ghc/8.10.3.nix deleted file mode 100644 index fe160259f2b3..000000000000 --- a/nixpkgs/pkgs/development/compilers/ghc/8.10.3.nix +++ /dev/null @@ -1,264 +0,0 @@ -{ lib, stdenv, pkgsBuildTarget, targetPackages - -# build-tools -, bootPkgs -, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx -, bash - -, libiconv ? null, ncurses - -, # GHC can be built with system libffi or a bundled one. - libffi ? null - -, useLLVM ? !stdenv.targetPlatform.isx86 -, # LLVM is conceptually a run-time-only depedendency, but for - # non-x86, we need LLVM to bootstrap later stages, so it becomes a - # build-time dependency too. - buildLlvmPackages, llvmPackages - -, # If enabled, GHC will be built with the GPL-free but slower integer-simple - # library instead of the faster but GPLed integer-gmp library. - enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp - -, # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform - - # aarch64 outputs otherwise exceed 2GB limit -, enableProfiledLibs ? !stdenv.targetPlatform.isAarch64 - -, # Whether to build dynamic libs for the standard library (on the target - # platform). Static libs are always built. - enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt - -, # Whether to build terminfo. - enableTerminfo ? !stdenv.targetPlatform.isWindows - -, # What flavour to build. An empty string indicates no - # specific flavour and falls back to ghc default values. - ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) - (if useLLVM then "perf-cross" else "perf-cross-ncg") - -, # Whether to disable the large address space allocator - # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/ - disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64 -}: - -assert !enableIntegerSimple -> gmp != null; - -let - inherit (stdenv) buildPlatform hostPlatform targetPlatform; - - inherit (bootPkgs) ghc; - - # TODO(@Ericson2314) Make unconditional - targetPrefix = lib.optionalString - (targetPlatform != hostPlatform) - "${targetPlatform.config}-"; - - buildMK = '' - BuildFlavour = ${ghcFlavour} - ifneq \"\$(BuildFlavour)\" \"\" - include mk/flavours/\$(BuildFlavour).mk - endif - DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"} - INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"} - '' + lib.optionalString (targetPlatform != hostPlatform) '' - Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"} - CrossCompilePrefix = ${targetPrefix} - HADDOCK_DOCS = NO - BUILD_SPHINX_HTML = NO - BUILD_SPHINX_PDF = NO - '' + lib.optionalString (!enableProfiledLibs) '' - GhcLibWays = "v dyn" - '' + lib.optionalString enableRelocatedStaticLibs '' - GhcLibHcOpts += -fPIC - GhcRtsHcOpts += -fPIC - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - EXTRA_CC_OPTS += -std=gnu99 - ''; - - # Splicer will pull out correct variations - libDeps = platform: lib.optional enableTerminfo ncurses - ++ [libffi] - ++ lib.optional (!enableIntegerSimple) gmp - ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; - - toolsForTarget = [ - pkgsBuildTarget.targetPackages.stdenv.cc - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; - - targetCC = builtins.head toolsForTarget; - - # ld.gold is disabled for musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 - # see #84670 and #49071 for more background. - useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false) && !targetPlatform.isMusl; - -in -stdenv.mkDerivation (rec { - version = "8.10.3"; - name = "${targetPrefix}ghc-${version}"; - - src = fetchurl { - url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz"; - sha256 = "0cdrdvs5qnqr93cr9zvrlfjv2xr671kjjghnsw4afa4hahcq7p6c"; - }; - - enableParallelBuilding = true; - - outputs = [ "out" "doc" ]; - - patches = [ - # See upstream patch at - # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build - # from source distributions, the auto-generated configure script needs to be - # patched as well, therefore we use an in-tree patch instead of pulling the - # upstream patch. Don't forget to check backport status of the upstream patch - # when adding new GHC releases in nixpkgs. - ./respect-ar-path.patch - ] ++ lib.optionals stdenv.isDarwin [ - # Make Block.h compile with c++ compilers. Remove with the next release - (fetchpatch { - url = "https://gitlab.haskell.org/ghc/ghc/-/commit/97d0b0a367e4c6a52a17c3299439ac7de129da24.patch"; - sha256 = "0r4zjj0bv1x1m2dgxp3adsf2xkr94fjnyj1igsivd9ilbs5ja0b5"; - }) - ]; - - postPatch = "patchShebangs ."; - - # GHC is a bit confused on its cross terminology. - preConfigure = '' - for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do - export "''${env#TARGET_}=''${!env}" - done - # GHC is a bit confused on its cross terminology, as these would normally be - # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" - # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip" - - echo -n "${buildMK}" > mk/build.mk - sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure - '' + lib.optionalString (!stdenv.isDarwin) '' - export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}" - '' + lib.optionalString stdenv.isDarwin '' - export NIX_LDFLAGS+=" -no_dtrace_dof" - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets - '' + lib.optionalString targetPlatform.isMusl '' - echo "patching llvm-targets for musl targets..." - echo "Cloning these existing '*-linux-gnu*' targets:" - grep linux-gnu llvm-targets | sed 's/^/ /' - echo "(go go gadget sed)" - sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets - echo "llvm-targets now contains these '*-linux-musl*' targets:" - grep linux-musl llvm-targets | sed 's/^/ /' - - echo "And now patching to preserve '-musleabi' as done with '-gnueabi'" - # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen) - for x in configure aclocal.m4; do - substituteInPlace $x \ - --replace '*-android*|*-gnueabi*)' \ - '*-android*|*-gnueabi*|*-musleabi*)' - done - ''; - - # TODO(@Ericson2314): Always pass "--target" and always prefix. - configurePlatforms = [ "build" "host" ] - ++ lib.optional (targetPlatform != hostPlatform) "target"; - - # `--with` flags for libraries needed for RTS linker - configureFlags = [ - "--datadir=$doc/share/doc/ghc" - "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" - ] ++ lib.optionals (libffi != null) [ - "--with-system-libffi" - "--with-ffi-includes=${targetPackages.libffi.dev}/include" - "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ - "--with-gmp-includes=${targetPackages.gmp.dev}/include" - "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ - "--with-iconv-includes=${libiconv}/include" - "--with-iconv-libraries=${libiconv}/lib" - ] ++ lib.optionals (targetPlatform != hostPlatform) [ - "--enable-bootstrap-with-devel-snapshot" - ] ++ lib.optionals useLdGold [ - "CFLAGS=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold" - ] ++ lib.optionals (disableLargeAddressSpace) [ - "--disable-large-address-space" - ]; - - # Make sure we never relax`$PATH` and hooks support for compatibility. - strictDeps = true; - - # Donβt add -liconv to LDFLAGS automatically so that GHC will add it itself. - dontAddExtraLibs = true; - - nativeBuildInputs = [ - perl autoconf automake m4 python3 sphinx - ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour - ]; - - # For building runtime libs - depsBuildTarget = toolsForTarget; - - buildInputs = [ perl bash ] ++ (libDeps hostPlatform); - - propagatedBuildInputs = [ targetPackages.stdenv.cc ] - ++ lib.optional useLLVM llvmPackages.llvm; - - depsTargetTarget = map lib.getDev (libDeps targetPlatform); - depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform); - - # required, because otherwise all symbols from HSffi.o are stripped, and - # that in turn causes GHCi to abort - stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; - - checkTarget = "test"; - - hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie"; - - postInstall = '' - # Install the bash completion file. - install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc - - # Patch scripts to include "readelf" and "cat" in $PATH. - for i in "$out/bin/"*; do - test ! -h $i || continue - egrep --quiet '^#!' <(head -n 1 $i) || continue - sed -i -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i - done - ''; - - passthru = { - inherit bootPkgs targetPrefix; - - inherit llvmPackages; - inherit enableShared; - - # Our Cabal compiler name - haskellCompilerName = "ghc-${version}"; - }; - - meta = { - homepage = "http://haskell.org/ghc"; - description = "The Glasgow Haskell Compiler"; - maintainers = with lib.maintainers; [ marcweber andres peti ]; - timeout = 24 * 3600; - inherit (ghc.meta) license platforms; - }; - -} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt { - dontStrip = true; - dontPatchELF = true; - noAuditTmpdir = true; -}) diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.2.2-binary.nix b/nixpkgs/pkgs/development/compilers/ghc/8.2.2-binary.nix deleted file mode 100644 index 5f83c2b2afc2..000000000000 --- a/nixpkgs/pkgs/development/compilers/ghc/8.2.2-binary.nix +++ /dev/null @@ -1,191 +0,0 @@ -{ lib, stdenv, substituteAll -, fetchurl, perl, gcc, llvm -, ncurses5, gmp, glibc, libiconv -, llvmPackages -}: - -# Prebuilt only does native -assert stdenv.targetPlatform == stdenv.hostPlatform; - -let - useLLVM = !stdenv.targetPlatform.isx86; - - libPath = lib.makeLibraryPath ([ - ncurses5 gmp - ] ++ lib.optional (stdenv.hostPlatform.isDarwin) libiconv); - - libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY" - + "LD_LIBRARY_PATH"; - - glibcDynLinker = assert stdenv.isLinux; - if stdenv.hostPlatform.libc == "glibc" then - # Could be stdenv.cc.bintools.dynamicLinker, keeping as-is to avoid rebuild. - ''"$(cat $NIX_CC/nix-support/dynamic-linker)"'' - else - "${lib.getLib glibc}/lib/ld-linux*"; - -in - -stdenv.mkDerivation rec { - version = "8.2.2"; - - name = "ghc-${version}-binary"; - - src = fetchurl ({ - i686-linux = { - url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-i386-deb8-linux.tar.xz"; - sha256 = "08w2ik55dp3n95qikmrflc91lsiq01xp53ki3jlhnbj8fqnxfrwy"; - }; - x86_64-linux = { - url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-deb8-linux.tar.xz"; - sha256 = "0ahv26304pqi3dm7i78si4pxwvg5f5dc2jwsfgvcrhcx5g30bqj8"; - }; - armv7l-linux = { - url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-armv7-deb8-linux.tar.xz"; - sha256 = "1jmv8qmnh5bn324fivbwdcaj55kvw7cb2zq9pafmlmv3qwwx7s46"; - }; - aarch64-linux = { - url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-aarch64-deb8-linux.tar.xz"; - sha256 = "1k2amylcp1ad67c75h1pqf7czf9m0zj1i7hdc45ghjklnfq9hrk7"; - }; - x86_64-darwin = { - url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz"; - sha256 = "09swx71gh5habzbx55shz2xykgr96xkcy09nzinnm4z0yxicy3zr"; - }; - }.${stdenv.hostPlatform.system} - or (throw "cannot bootstrap GHC on this platform")); - - nativeBuildInputs = [ perl ]; - propagatedBuildInputs = lib.optionals useLLVM [ llvmPackages.llvm ]; - - # Cannot patchelf beforehand due to relative RPATHs that anticipate - # the final install location/ - ${libEnvVar} = libPath; - - postUnpack = - # GHC has dtrace probes, which causes ld to try to open /usr/lib/libdtrace.dylib - # during linking - lib.optionalString stdenv.isDarwin '' - export NIX_LDFLAGS+=" -no_dtrace_dof" - # not enough room in the object files for the full path to libiconv :( - for exe in $(find . -type f -executable); do - isScript $exe && continue - ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib - install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/6/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe - done - '' + - - # Some scripts used during the build need to have their shebangs patched - '' - patchShebangs ghc-${version}/utils/ - patchShebangs ghc-${version}/configure - '' + - - # Strip is harmful, see also below. It's important that this happens - # first. The GHC Cabal build system makes use of strip by default and - # has hardcoded paths to /usr/bin/strip in many places. We replace - # those below, making them point to our dummy script. - '' - mkdir "$TMP/bin" - for i in strip; do - echo '#! ${stdenv.shell}' > "$TMP/bin/$i" - chmod +x "$TMP/bin/$i" - done - PATH="$TMP/bin:$PATH" - '' + - # We have to patch the GMP paths for the integer-gmp package. - '' - find . -name integer-gmp.buildinfo \ - -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${gmp.out}/lib@" {} \; - '' + lib.optionalString stdenv.isDarwin '' - find . -name base.buildinfo \ - -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${libiconv}/lib@" {} \; - '' + - # Rename needed libraries and binaries, fix interpreter - lib.optionalString stdenv.isLinux '' - find . -type f -perm -0100 -exec patchelf \ - --replace-needed libncurses${lib.optionalString stdenv.is64bit "w"}.so.5 libncurses.so \ - --replace-needed libtinfo.so libtinfo.so.5 \ - --interpreter ${glibcDynLinker} {} \; - - sed -i "s|/usr/bin/perl|perl\x00 |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2 - sed -i "s|/usr/bin/gcc|gcc\x00 |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2 - '' + - # We're kludging a glibc bindist into working with non-glibc... - # Here we patch up the use of `__strdup` (part of glibc binary ABI) - # to instead use `strdup` since musl doesn't provide __strdup - # (`__strdup` is defined to be an alias of `strdup` anyway[1]). - # [1] http://refspecs.linuxbase.org/LSB_4.0.0/LSB-Core-generic/LSB-Core-generic/baselib---strdup-1.html - # Use objcopy magic to make the change: - lib.optionalString stdenv.hostPlatform.isMusl '' - find ./ghc-${version}/rts -name "libHSrts*.a" -exec ''${OBJCOPY:-objcopy} --redefine-sym __strdup=strdup {} \; - ''; - - configurePlatforms = [ ]; - configureFlags = - let - gcc-clang-wrapper = substituteAll { - inherit (stdenv) shell; - isExecutable = true; - src = ./gcc-clang-wrapper.sh; - }; - in - [ "--with-gmp-libraries=${lib.getLib gmp}/lib" - "--with-gmp-includes=${lib.getDev gmp}/include" - ] ++ lib.optional stdenv.isDarwin "--with-gcc=${gcc-clang-wrapper}" - ++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override"; - - # Stripping combined with patchelf breaks the executables (they die - # with a segfault or the kernel even refuses the execve). (NIXPKGS-85) - dontStrip = true; - - # No building is necessary, but calling make without flags ironically - # calls install-strip ... - dontBuild = true; - - # On Linux, use patchelf to modify the executables so that they can - # find editline/gmp. - preFixup = lib.optionalString stdenv.isLinux '' - for p in $(find "$out" -type f -executable); do - if isELF "$p"; then - echo "Patchelfing $p" - patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p - fi - done - '' + lib.optionalString stdenv.isDarwin '' - # not enough room in the object files for the full path to libiconv :( - for exe in $(find "$out" -type f -executable); do - isScript $exe && continue - ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib - install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/6/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe - done - - for file in $(find "$out" -name setup-config); do - substituteInPlace $file --replace /usr/bin/ranlib "$(type -P ranlib)" - done - ''; - - doInstallCheck = true; - installCheckPhase = '' - unset ${libEnvVar} - # Sanity check, can ghc create executables? - cd $TMP - mkdir test-ghc; cd test-ghc - cat > main.hs << EOF - {-# LANGUAGE TemplateHaskell #-} - module Main where - main = putStrLn \$([|"yes"|]) - EOF - $out/bin/ghc --make main.hs || exit 1 - echo compilation ok - [ $(./main) == "yes" ] - ''; - - passthru = { - targetPrefix = ""; - enableShared = true; - }; - - meta.license = lib.licenses.bsd3; - meta.platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin" "armv7l-linux" "aarch64-linux"]; -} diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.6.5.nix b/nixpkgs/pkgs/development/compilers/ghc/8.6.5.nix deleted file mode 100644 index 8237f27241e7..000000000000 --- a/nixpkgs/pkgs/development/compilers/ghc/8.6.5.nix +++ /dev/null @@ -1,275 +0,0 @@ -{ lib, stdenv, pkgsBuildTarget, targetPackages - -# build-tools -, bootPkgs -, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4, sphinx -, bash - -, libiconv ? null, ncurses - -, # GHC can be built with system libffi or a bundled one. - libffi ? null - -, useLLVM ? !stdenv.targetPlatform.isx86 || stdenv.targetPlatform.isiOS -, # LLVM is conceptually a run-time-only depedendency, but for - # non-x86, we need LLVM to bootstrap later stages, so it becomes a - # build-time dependency too. - buildLlvmPackages, llvmPackages - -, # If enabled, GHC will be built with the GPL-free but slower integer-simple - # library instead of the faster but GPLed integer-gmp library. - enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp - -, # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform - -, # Whether to build dynamic libs for the standard library (on the target - # platform). Static libs are always built. - enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt - -, # Whether to build terminfo. - enableTerminfo ? !stdenv.targetPlatform.isWindows - -, # What flavour to build. An empty string indicates no - # specific flavour and falls back to ghc default values. - ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) - (if useLLVM then "perf-cross" else "perf-cross-ncg") - -, # Whether to disable the large address space allocator - # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/ - disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64 -}: - -assert !enableIntegerSimple -> gmp != null; - -let - inherit (stdenv) buildPlatform hostPlatform targetPlatform; - - inherit (bootPkgs) ghc; - - # TODO(@Ericson2314) Make unconditional - targetPrefix = lib.optionalString - (targetPlatform != hostPlatform) - "${targetPlatform.config}-"; - - buildMK = '' - BuildFlavour = ${ghcFlavour} - ifneq \"\$(BuildFlavour)\" \"\" - include mk/flavours/\$(BuildFlavour).mk - endif - DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"} - INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"} - '' - # We only need to build stage1 on most cross-compilation because - # we will be running the compiler on the native system. In some - # situations, like native Musl compilation, we need the compiler - # to actually link to our new Libc. The iOS simulator is a special - # exception because we canβt actually run simulators binaries - # ourselves. - + lib.optionalString (targetPlatform != hostPlatform) '' - Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"} - CrossCompilePrefix = ${targetPrefix} - HADDOCK_DOCS = NO - BUILD_SPHINX_HTML = NO - BUILD_SPHINX_PDF = NO - '' + lib.optionalString enableRelocatedStaticLibs '' - GhcLibHcOpts += -fPIC - GhcRtsHcOpts += -fPIC - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - EXTRA_CC_OPTS += -std=gnu99 - ''; - - # Splicer will pull out correct variations - libDeps = platform: lib.optional enableTerminfo ncurses - ++ [libffi] - ++ lib.optional (!enableIntegerSimple) gmp - ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; - - toolsForTarget = [ - pkgsBuildTarget.targetPackages.stdenv.cc - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; - - targetCC = builtins.head toolsForTarget; - - # ld.gold is disabled for musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 - # see #84670 and #49071 for more background. - useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false) && !targetPlatform.isMusl; - -in -stdenv.mkDerivation (rec { - version = "8.6.5"; - name = "${targetPrefix}ghc-${version}"; - - src = fetchurl { - url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz"; - sha256 = "0qg3zsmbk4rkwkc3jpas3zs74qaxmw4sp4v1mhsbj0a0dzls2jjd"; - }; - - enableParallelBuilding = true; - - outputs = [ "out" "doc" ]; - - patches = [ - # See upstream patch at - # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build - # from source distributions, the auto-generated configure script needs to be - # patched as well, therefore we use an in-tree patch instead of pulling the - # upstream patch. Don't forget to check backport status of the upstream patch - # when adding new GHC releases in nixpkgs. - ./respect-ar-path.patch - - (fetchpatch { # https://phabricator.haskell.org/D5123 - url = "https://gitlab.haskell.org/ghc/ghc/-/commit/13ff0b7ced097286e0d7b054f050871effe07f86.diff"; - name = "D5123.diff"; - sha256 = "140lmnqxra7xkwy370c5pyf8dgdwgmbpcrs1dapnwr2dh8bavn8c"; - }) - (fetchpatch { # https://github.com/haskell/haddock/issues/900 - url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/983.diff"; - name = "loadpluginsinmodules.diff"; - sha256 = "0bvvv0zsfq2581zsir97zfkggc1kkircbbajc2fz3b169ycpbha1"; - extraPrefix = "utils/haddock/"; - stripLen = 1; - }) - ]; - - postPatch = "patchShebangs ."; - - # GHC is a bit confused on its cross terminology. - preConfigure = '' - for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do - export "''${env#TARGET_}=''${!env}" - done - # GHC is a bit confused on its cross terminology, as these would normally be - # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" - # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip" - - echo -n "${buildMK}" > mk/build.mk - sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure - '' + lib.optionalString (!stdenv.isDarwin) '' - export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}" - '' + lib.optionalString stdenv.isDarwin '' - export NIX_LDFLAGS+=" -no_dtrace_dof" - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets - '' + lib.optionalString targetPlatform.isMusl '' - echo "patching llvm-targets for musl targets..." - echo "Cloning these existing '*-linux-gnu*' targets:" - grep linux-gnu llvm-targets | sed 's/^/ /' - echo "(go go gadget sed)" - sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets - echo "llvm-targets now contains these '*-linux-musl*' targets:" - grep linux-musl llvm-targets | sed 's/^/ /' - - echo "And now patching to preserve '-musleabi' as done with '-gnueabi'" - # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen) - for x in configure aclocal.m4; do - substituteInPlace $x \ - --replace '*-android*|*-gnueabi*)' \ - '*-android*|*-gnueabi*|*-musleabi*)' - done - ''; - - # TODO(@Ericson2314): Always pass "--target" and always prefix. - configurePlatforms = [ "build" "host" ] - ++ lib.optional (targetPlatform != hostPlatform) "target"; - # `--with` flags for libraries needed for RTS linker - configureFlags = [ - "--datadir=$doc/share/doc/ghc" - "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" - ] ++ lib.optionals (libffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetPackages.libffi.dev}/include" "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ - "--with-gmp-includes=${targetPackages.gmp.dev}/include" "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ - "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" - ] ++ lib.optionals (targetPlatform != hostPlatform) [ - "--enable-bootstrap-with-devel-snapshot" - ] ++ lib.optionals useLdGold [ - "CFLAGS=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold" - ] ++ lib.optionals (disableLargeAddressSpace) [ - "--disable-large-address-space" - ]; - - # Make sure we never relax`$PATH` and hooks support for compatibility. - strictDeps = true; - - # Donβt add -liconv to LDFLAGS automatically so that GHC will add it itself. - dontAddExtraLibs = true; - - nativeBuildInputs = [ - perl autoconf automake m4 python3 sphinx - ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour - ]; - - # For building runtime libs - depsBuildTarget = toolsForTarget; - - buildInputs = [ perl bash ] ++ (libDeps hostPlatform); - - propagatedBuildInputs = [ targetPackages.stdenv.cc ] - ++ lib.optional useLLVM llvmPackages.llvm; - - depsTargetTarget = map lib.getDev (libDeps targetPlatform); - depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform); - - # required, because otherwise all symbols from HSffi.o are stripped, and - # that in turn causes GHCi to abort - stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; - - # See #63511 - the only unstripped file is the debug rts which isn't meant to - # be stripped. - dontStrip = true; - - checkTarget = "test"; - - hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie"; - - postInstall = '' - # Install the bash completion file. - install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc - - # Patch scripts to include "readelf" and "cat" in $PATH. - for i in "$out/bin/"*; do - test ! -h $i || continue - egrep --quiet '^#!' <(head -n 1 $i) || continue - sed -i -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i - done - '' - # Temporary work-around for https://github.com/NixOS/nixpkgs/issues/66277 - + lib.optionalString hostPlatform.isAarch64 '' - rm -rf "$doc/share/doc/ghc/html/libraries" - ''; - - passthru = { - inherit bootPkgs targetPrefix; - - inherit llvmPackages; - inherit enableShared; - - # Our Cabal compiler name - haskellCompilerName = "ghc-${version}"; - }; - - meta = { - homepage = "http://haskell.org/ghc"; - description = "The Glasgow Haskell Compiler"; - maintainers = with lib.maintainers; [ marcweber andres peti ]; - timeout = 24 * 3600; - inherit (ghc.meta) license platforms; - }; - -} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt { - dontStrip = true; - dontPatchELF = true; - noAuditTmpdir = true; -}) diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.8.2.nix b/nixpkgs/pkgs/development/compilers/ghc/8.8.2.nix deleted file mode 100644 index 144e46459759..000000000000 --- a/nixpkgs/pkgs/development/compilers/ghc/8.8.2.nix +++ /dev/null @@ -1,263 +0,0 @@ -{ lib, stdenv, pkgsBuildTarget, targetPackages - -# build-tools -, bootPkgs -, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx -, bash - -, libiconv ? null, ncurses - -, # GHC can be built with system libffi or a bundled one. - libffi ? null - -, useLLVM ? !stdenv.targetPlatform.isx86 -, # LLVM is conceptually a run-time-only depedendency, but for - # non-x86, we need LLVM to bootstrap later stages, so it becomes a - # build-time dependency too. - buildLlvmPackages, llvmPackages - -, # If enabled, GHC will be built with the GPL-free but slower integer-simple - # library instead of the faster but GPLed integer-gmp library. - enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp - -, # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform - -, # Whether to build dynamic libs for the standard library (on the target - # platform). Static libs are always built. - enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt - -, # Whether to build terminfo. - enableTerminfo ? !stdenv.targetPlatform.isWindows - -, # What flavour to build. An empty string indicates no - # specific flavour and falls back to ghc default values. - ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) - (if useLLVM then "perf-cross" else "perf-cross-ncg") - -, # Whether to disable the large address space allocator - # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/ - disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64 -}: - -assert !enableIntegerSimple -> gmp != null; - -let - inherit (stdenv) buildPlatform hostPlatform targetPlatform; - - inherit (bootPkgs) ghc; - - # TODO(@Ericson2314) Make unconditional - targetPrefix = lib.optionalString - (targetPlatform != hostPlatform) - "${targetPlatform.config}-"; - - buildMK = dontStrip: '' - BuildFlavour = ${ghcFlavour} - ifneq \"\$(BuildFlavour)\" \"\" - include mk/flavours/\$(BuildFlavour).mk - endif - DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"} - INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"} - '' - # We only need to build stage1 on most cross-compilation because - # we will be running the compiler on the native system. In some - # situations, like native Musl compilation, we need the compiler - # to actually link to our new Libc. The iOS simulator is a special - # exception because we canβt actually run simulators binaries - # ourselves. - + lib.optionalString (targetPlatform != hostPlatform) '' - Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"} - CrossCompilePrefix = ${targetPrefix} - HADDOCK_DOCS = NO - BUILD_SPHINX_HTML = NO - BUILD_SPHINX_PDF = NO - '' + lib.optionalString dontStrip '' - STRIP_CMD = : - '' + lib.optionalString enableRelocatedStaticLibs '' - GhcLibHcOpts += -fPIC - GhcRtsHcOpts += -fPIC - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - EXTRA_CC_OPTS += -std=gnu99 - ''; - - # Splicer will pull out correct variations - libDeps = platform: lib.optional enableTerminfo ncurses - ++ [libffi] - ++ lib.optional (!enableIntegerSimple) gmp - ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; - - toolsForTarget = [ - pkgsBuildTarget.targetPackages.stdenv.cc - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; - - targetCC = builtins.head toolsForTarget; - - # ld.gold is disabled for musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 - # see #84670 and #49071 for more background. - useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false) && !targetPlatform.isMusl; - -in -stdenv.mkDerivation (rec { - version = "8.8.2"; - name = "${targetPrefix}ghc-${version}"; - - src = fetchurl { - url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz"; - sha256 = "02qa6wgjpxgakg7hv4zfdlrx9k7zxa5i02wnr6y9fsv8j16sbkh1"; - }; - - enableParallelBuilding = true; - - outputs = [ "out" "doc" ]; - - patches = [ - # See upstream patch at - # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build - # from source distributions, the auto-generated configure script needs to be - # patched as well, therefore we use an in-tree patch instead of pulling the - # upstream patch. Don't forget to check backport status of the upstream patch - # when adding new GHC releases in nixpkgs. - ./respect-ar-path.patch - ]; - - postPatch = "patchShebangs ."; - - # GHC is a bit confused on its cross terminology. - preConfigure = '' - for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do - export "''${env#TARGET_}=''${!env}" - done - # GHC is a bit confused on its cross terminology, as these would normally be - # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" - # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip" - - echo -n "${buildMK dontStrip}" > mk/build.mk - sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure - '' + lib.optionalString (!stdenv.isDarwin) '' - export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}" - '' + lib.optionalString stdenv.isDarwin '' - export NIX_LDFLAGS+=" -no_dtrace_dof" - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets - '' + lib.optionalString targetPlatform.isMusl '' - echo "patching llvm-targets for musl targets..." - echo "Cloning these existing '*-linux-gnu*' targets:" - grep linux-gnu llvm-targets | sed 's/^/ /' - echo "(go go gadget sed)" - sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets - echo "llvm-targets now contains these '*-linux-musl*' targets:" - grep linux-musl llvm-targets | sed 's/^/ /' - - echo "And now patching to preserve '-musleabi' as done with '-gnueabi'" - # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen) - for x in configure aclocal.m4; do - substituteInPlace $x \ - --replace '*-android*|*-gnueabi*)' \ - '*-android*|*-gnueabi*|*-musleabi*)' - done - ''; - - # TODO(@Ericson2314): Always pass "--target" and always prefix. - configurePlatforms = [ "build" "host" ] - ++ lib.optional (targetPlatform != hostPlatform) "target"; - - # `--with` flags for libraries needed for RTS linker - configureFlags = [ - "--datadir=$doc/share/doc/ghc" - "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" - ] ++ lib.optionals (libffi != null) [ - "--with-system-libffi" - "--with-ffi-includes=${targetPackages.libffi.dev}/include" - "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ - "--with-gmp-includes=${targetPackages.gmp.dev}/include" - "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ - "--with-iconv-includes=${libiconv}/include" - "--with-iconv-libraries=${libiconv}/lib" - ] ++ lib.optionals (targetPlatform != hostPlatform) [ - "--enable-bootstrap-with-devel-snapshot" - ] ++ lib.optionals useLdGold [ - "CFLAGS=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold" - ] ++ lib.optionals (disableLargeAddressSpace) [ - "--disable-large-address-space" - ]; - - # Make sure we never relax`$PATH` and hooks support for compatibility. - strictDeps = true; - - # Donβt add -liconv to LDFLAGS automatically so that GHC will add it itself. - dontAddExtraLibs = true; - - nativeBuildInputs = [ - perl autoconf automake m4 python3 sphinx - ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour - ]; - - # For building runtime libs - depsBuildTarget = toolsForTarget; - - buildInputs = [ perl bash ] ++ (libDeps hostPlatform); - - propagatedBuildInputs = [ targetPackages.stdenv.cc ] - ++ lib.optional useLLVM llvmPackages.llvm; - - depsTargetTarget = map lib.getDev (libDeps targetPlatform); - depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform); - - # required, because otherwise all symbols from HSffi.o are stripped, and - # that in turn causes GHCi to abort - stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; - - checkTarget = "test"; - - hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie"; - - postInstall = '' - # Install the bash completion file. - install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc - - # Patch scripts to include "readelf" and "cat" in $PATH. - for i in "$out/bin/"*; do - test ! -h $i || continue - egrep --quiet '^#!' <(head -n 1 $i) || continue - sed -i -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i - done - ''; - - passthru = { - inherit bootPkgs targetPrefix; - - inherit llvmPackages; - inherit enableShared; - - # Our Cabal compiler name - haskellCompilerName = "ghc-${version}"; - }; - - meta = { - homepage = "http://haskell.org/ghc"; - description = "The Glasgow Haskell Compiler"; - maintainers = with lib.maintainers; [ marcweber andres peti ]; - timeout = 24 * 3600; - inherit (ghc.meta) license platforms; - }; - - dontStrip = (targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm); - -} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt{ - dontPatchELF = true; - noAuditTmpdir = true; -}) diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.8.3.nix b/nixpkgs/pkgs/development/compilers/ghc/8.8.3.nix deleted file mode 100644 index 9e99207d9aaa..000000000000 --- a/nixpkgs/pkgs/development/compilers/ghc/8.8.3.nix +++ /dev/null @@ -1,268 +0,0 @@ -{ lib, stdenv, pkgsBuildTarget, targetPackages - -# build-tools -, bootPkgs -, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx -, bash - -, libiconv ? null, ncurses - -, # GHC can be built with system libffi or a bundled one. - libffi ? null - -, useLLVM ? !stdenv.targetPlatform.isx86 -, # LLVM is conceptually a run-time-only depedendency, but for - # non-x86, we need LLVM to bootstrap later stages, so it becomes a - # build-time dependency too. - buildLlvmPackages, llvmPackages - -, # If enabled, GHC will be built with the GPL-free but slower integer-simple - # library instead of the faster but GPLed integer-gmp library. - enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp - -, # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform - - # aarch64 outputs otherwise exceed 2GB limit -, enableProfiledLibs ? !stdenv.targetPlatform.isAarch64 - -, # Whether to build dynamic libs for the standard library (on the target - # platform). Static libs are always built. - enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt - -, # Whether to build terminfo. - enableTerminfo ? !stdenv.targetPlatform.isWindows - -, # What flavour to build. An empty string indicates no - # specific flavour and falls back to ghc default values. - ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) - (if useLLVM then "perf-cross" else "perf-cross-ncg") - -, # Whether to disable the large address space allocator - # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/ - disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64 -}: - -assert !enableIntegerSimple -> gmp != null; - -let - inherit (stdenv) buildPlatform hostPlatform targetPlatform; - - inherit (bootPkgs) ghc; - - # TODO(@Ericson2314) Make unconditional - targetPrefix = lib.optionalString - (targetPlatform != hostPlatform) - "${targetPlatform.config}-"; - - buildMK = dontStrip: '' - BuildFlavour = ${ghcFlavour} - ifneq \"\$(BuildFlavour)\" \"\" - include mk/flavours/\$(BuildFlavour).mk - endif - DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"} - INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"} - '' - # We only need to build stage1 on most cross-compilation because - # we will be running the compiler on the native system. In some - # situations, like native Musl compilation, we need the compiler - # to actually link to our new Libc. The iOS simulator is a special - # exception because we canβt actually run simulators binaries - # ourselves. - + lib.optionalString (targetPlatform != hostPlatform) '' - Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"} - CrossCompilePrefix = ${targetPrefix} - HADDOCK_DOCS = NO - BUILD_SPHINX_HTML = NO - BUILD_SPHINX_PDF = NO - '' + lib.optionalString dontStrip '' - STRIP_CMD = : - '' + lib.optionalString (!enableProfiledLibs) '' - GhcLibWays = "v dyn" - '' + lib.optionalString enableRelocatedStaticLibs '' - GhcLibHcOpts += -fPIC - GhcRtsHcOpts += -fPIC - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - EXTRA_CC_OPTS += -std=gnu99 - ''; - - # Splicer will pull out correct variations - libDeps = platform: lib.optional enableTerminfo ncurses - ++ [libffi] - ++ lib.optional (!enableIntegerSimple) gmp - ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; - - toolsForTarget = [ - pkgsBuildTarget.targetPackages.stdenv.cc - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; - - targetCC = builtins.head toolsForTarget; - - # ld.gold is disabled for musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 - # see #84670 and #49071 for more background. - useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false) && !targetPlatform.isMusl; - -in -stdenv.mkDerivation (rec { - version = "8.8.3"; - name = "${targetPrefix}ghc-${version}"; - - src = fetchurl { - url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz"; - sha256 = "128g932i3wix6ic03v04nh5755vyjiidzri9iybwad72yfmc1p70"; - }; - - enableParallelBuilding = true; - - outputs = [ "out" "doc" ]; - - patches = [ - # See upstream patch at - # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build - # from source distributions, the auto-generated configure script needs to be - # patched as well, therefore we use an in-tree patch instead of pulling the - # upstream patch. Don't forget to check backport status of the upstream patch - # when adding new GHC releases in nixpkgs. - ./respect-ar-path.patch - ]; - - postPatch = "patchShebangs ."; - - # GHC is a bit confused on its cross terminology. - preConfigure = '' - for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do - export "''${env#TARGET_}=''${!env}" - done - # GHC is a bit confused on its cross terminology, as these would normally be - # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" - # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip" - - echo -n "${buildMK dontStrip}" > mk/build.mk - sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure - '' + lib.optionalString (!stdenv.isDarwin) '' - export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}" - '' + lib.optionalString stdenv.isDarwin '' - export NIX_LDFLAGS+=" -no_dtrace_dof" - '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' - sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets - '' + lib.optionalString targetPlatform.isMusl '' - echo "patching llvm-targets for musl targets..." - echo "Cloning these existing '*-linux-gnu*' targets:" - grep linux-gnu llvm-targets | sed 's/^/ /' - echo "(go go gadget sed)" - sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets - echo "llvm-targets now contains these '*-linux-musl*' targets:" - grep linux-musl llvm-targets | sed 's/^/ /' - - echo "And now patching to preserve '-musleabi' as done with '-gnueabi'" - # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen) - for x in configure aclocal.m4; do - substituteInPlace $x \ - --replace '*-android*|*-gnueabi*)' \ - '*-android*|*-gnueabi*|*-musleabi*)' - done - ''; - - # TODO(@Ericson2314): Always pass "--target" and always prefix. - configurePlatforms = [ "build" "host" ] - ++ lib.optional (targetPlatform != hostPlatform) "target"; - - # `--with` flags for libraries needed for RTS linker - configureFlags = [ - "--datadir=$doc/share/doc/ghc" - "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" - ] ++ lib.optionals (libffi != null) [ - "--with-system-libffi" - "--with-ffi-includes=${targetPackages.libffi.dev}/include" - "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ - "--with-gmp-includes=${targetPackages.gmp.dev}/include" - "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ - "--with-iconv-includes=${libiconv}/include" - "--with-iconv-libraries=${libiconv}/lib" - ] ++ lib.optionals (targetPlatform != hostPlatform) [ - "--enable-bootstrap-with-devel-snapshot" - ] ++ lib.optionals useLdGold [ - "CFLAGS=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" - "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold" - ] ++ lib.optionals (disableLargeAddressSpace) [ - "--disable-large-address-space" - ]; - - # Make sure we never relax`$PATH` and hooks support for compatibility. - strictDeps = true; - - # Donβt add -liconv to LDFLAGS automatically so that GHC will add it itself. - dontAddExtraLibs = true; - - nativeBuildInputs = [ - perl autoconf automake m4 python3 sphinx - ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour - ]; - - # For building runtime libs - depsBuildTarget = toolsForTarget; - - buildInputs = [ perl bash ] ++ (libDeps hostPlatform); - - propagatedBuildInputs = [ targetPackages.stdenv.cc ] - ++ lib.optional useLLVM llvmPackages.llvm; - - depsTargetTarget = map lib.getDev (libDeps targetPlatform); - depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform); - - # required, because otherwise all symbols from HSffi.o are stripped, and - # that in turn causes GHCi to abort - stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; - - checkTarget = "test"; - - hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie"; - - postInstall = '' - # Install the bash completion file. - install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc - - # Patch scripts to include "readelf" and "cat" in $PATH. - for i in "$out/bin/"*; do - test ! -h $i || continue - egrep --quiet '^#!' <(head -n 1 $i) || continue - sed -i -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i - done - ''; - - passthru = { - inherit bootPkgs targetPrefix; - - inherit llvmPackages; - inherit enableShared; - - # Our Cabal compiler name - haskellCompilerName = "ghc-${version}"; - }; - - meta = { - homepage = "http://haskell.org/ghc"; - description = "The Glasgow Haskell Compiler"; - maintainers = with lib.maintainers; [ marcweber andres peti ]; - timeout = 24 * 3600; - inherit (ghc.meta) license platforms; - }; - - dontStrip = (targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm); - -} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt{ - dontPatchELF = true; - noAuditTmpdir = true; -}) diff --git a/nixpkgs/pkgs/development/compilers/gleam/default.nix b/nixpkgs/pkgs/development/compilers/gleam/default.nix index 78a335f1b7be..474a960d35f2 100644 --- a/nixpkgs/pkgs/development/compilers/gleam/default.nix +++ b/nixpkgs/pkgs/development/compilers/gleam/default.nix @@ -1,22 +1,22 @@ -{ lib, stdenv, rustPlatform, fetchFromGitHub, pkg-config, openssl, Security }: +{ lib, stdenv, rustPlatform, fetchFromGitHub, pkg-config, openssl, Security, libiconv }: rustPlatform.buildRustPackage rec { pname = "gleam"; - version = "0.13.2"; + version = "0.14.4"; src = fetchFromGitHub { owner = "gleam-lang"; repo = pname; rev = "v${version}"; - sha256 = "sha256-ka1GxukX3HR40fMeiiXHguyPKrpGngG2tXDColR7eQA="; + sha256 = "sha256-iW4mH9zLJzD+E+H/b0NAbPWzfSbDmRpirDwrLlyZppI="; }; nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ] ++ - lib.optionals stdenv.isDarwin [ Security ]; + lib.optionals stdenv.isDarwin [ Security libiconv ]; - cargoSha256 = "sha256-/l54ezS68loljKNh7AdYMIuCiyIbsMI3jqD9ktjZLfc="; + cargoSha256 = "sha256-ErLwrve2Fpyg9JaH3y7VIYuFcOPVP++XAIrRvv5dGm0="; meta = with lib; { description = "A statically typed language for the Erlang VM"; diff --git a/nixpkgs/pkgs/development/compilers/gnu-smalltalk/default.nix b/nixpkgs/pkgs/development/compilers/gnu-smalltalk/default.nix index cd33baad993b..e608a25462cc 100644 --- a/nixpkgs/pkgs/development/compilers/gnu-smalltalk/default.nix +++ b/nixpkgs/pkgs/development/compilers/gnu-smalltalk/default.nix @@ -1,6 +1,6 @@ { config, lib, stdenv, fetchurl, pkg-config, libtool , zip, libffi, libsigsegv, readline, gmp -, gnutls, gnome2, cairo, SDL, sqlite +, gnutls, gtk2, cairo, SDL, sqlite , emacsSupport ? config.emacsSupport or false, emacs ? null }: assert emacsSupport -> (emacs != null); @@ -29,7 +29,7 @@ in stdenv.mkDerivation rec { # http://smalltalk.gnu.org/download nativeBuildInputs = [ pkg-config ]; buildInputs = [ - libtool zip libffi libsigsegv-shared readline gmp gnutls gnome2.gtk + libtool zip libffi libsigsegv-shared readline gmp gnutls gtk2 cairo SDL sqlite ] ++ lib.optional emacsSupport emacs; diff --git a/nixpkgs/pkgs/development/compilers/go/1.14.nix b/nixpkgs/pkgs/development/compilers/go/1.14.nix index 174c299b15b7..92c1cbdfc18b 100644 --- a/nixpkgs/pkgs/development/compilers/go/1.14.nix +++ b/nixpkgs/pkgs/development/compilers/go/1.14.nix @@ -4,15 +4,20 @@ , buildPackages , pkgsBuildTarget , fetchpatch +, callPackage }: let inherit (lib) optionals optionalString; + version = "1.14.15"; + + go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; + goBootstrap = runCommand "go-bootstrap" {} '' mkdir $out - cp -rf ${buildPackages.go_bootstrap}/* $out/ + cp -rf ${go_bootstrap}/* $out/ chmod -R u+w $out find $out -name "*.c" -delete cp -rf $out/bin/* $out/share/go/bin/ @@ -36,11 +41,11 @@ in stdenv.mkDerivation rec { pname = "go"; - version = "1.14.14"; + inherit version; src = fetchurl { url = "https://dl.google.com/go/go${version}.src.tar.gz"; - sha256 = "0vx7r0bb1a500znnnh7v3wgw22ly3p2x06vzyi9hiblgylrby132"; + sha256 = "0jci03f5z09xibbdqg4lnv2k3crhal1phzwr6lc4ajp514i3plby"; }; # perl is used for testing go vet @@ -145,6 +150,13 @@ stdenv.mkDerivation rec { ./skip-nohup-tests.patch ./go_no_vendor_checks-1_14.patch + # support TZ environment variable starting with colon + (fetchpatch { + name = "tz-support-colon.patch"; + url = "https://github.com/golang/go/commit/58fe2cd4022c77946ce4b598cf3e30ccc8367143.patch"; + sha256 = "0vphwiqrm0qykfj3rfayr65qzk22fksg7qkamvaz0lmf6fqvbd2f"; + }) + # fix rare TestDontCacheBrokenHTTP2Conn failure (fetchpatch { url = "https://github.com/golang/go/commit/ea1437a8cdf6bb3c2d2447833a5d06dbd75f7ae4.patch"; @@ -253,5 +265,8 @@ stdenv.mkDerivation rec { license = licenses.bsd3; maintainers = teams.golang.members; platforms = platforms.linux ++ platforms.darwin; + knownVulnerabilities = [ + "Support for Go 1.14 ended with the release of Go 1.16: https://golang.org/doc/devel/release.html#policy" + ]; }; } diff --git a/nixpkgs/pkgs/development/compilers/go/1.15.nix b/nixpkgs/pkgs/development/compilers/go/1.15.nix index c3aef549e680..7f7870b7e06d 100644 --- a/nixpkgs/pkgs/development/compilers/go/1.15.nix +++ b/nixpkgs/pkgs/development/compilers/go/1.15.nix @@ -4,15 +4,20 @@ , buildPackages , pkgsBuildTarget , fetchpatch +, callPackage }: let inherit (lib) optionals optionalString; + version = "1.15.11"; + + go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; + goBootstrap = runCommand "go-bootstrap" {} '' mkdir $out - cp -rf ${buildPackages.go_bootstrap}/* $out/ + cp -rf ${go_bootstrap}/* $out/ chmod -R u+w $out find $out -name "*.c" -delete cp -rf $out/bin/* $out/share/go/bin/ @@ -36,11 +41,11 @@ in stdenv.mkDerivation rec { pname = "go"; - version = "1.15.7"; + inherit version; src = fetchurl { url = "https://dl.google.com/go/go${version}.src.tar.gz"; - sha256 = "1g1a39y1cnvw3y0bjwjms55cz0s9icm8myrgxi295jwfznmb6cc6"; + sha256 = "1rb1s130yqy80kcl140k5a53xhvw4fmrpmclvqygcv67si0j8nzj"; }; # perl is used for testing go vet @@ -153,6 +158,13 @@ stdenv.mkDerivation rec { ./skip-nohup-tests.patch ./skip-cgo-tests-1.15.patch ./go_no_vendor_checks.patch + + # support TZ environment variable starting with colon + (fetchpatch { + name = "tz-support-colon.patch"; + url = "https://github.com/golang/go/commit/58fe2cd4022c77946ce4b598cf3e30ccc8367143.patch"; + sha256 = "0vphwiqrm0qykfj3rfayr65qzk22fksg7qkamvaz0lmf6fqvbd2f"; + }) ] ++ [ # breaks under load: https://github.com/golang/go/issues/25628 (if stdenv.isAarch32 diff --git a/nixpkgs/pkgs/development/compilers/go/1.16.nix b/nixpkgs/pkgs/development/compilers/go/1.16.nix new file mode 100644 index 000000000000..d6690a71088e --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/go/1.16.nix @@ -0,0 +1,267 @@ +{ lib, stdenv, fetchurl, tzdata, iana-etc, runCommand +, perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation, xcbuild +, mailcap, runtimeShell +, buildPackages +, pkgsBuildTarget +, fetchpatch +, callPackage +}: + +let + + inherit (lib) optionals optionalString; + + version = "1.16.2"; + + go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; + + goBootstrap = runCommand "go-bootstrap" {} '' + mkdir $out + cp -rf ${go_bootstrap}/* $out/ + chmod -R u+w $out + find $out -name "*.c" -delete + cp -rf $out/bin/* $out/share/go/bin/ + ''; + + goarch = platform: { + "i686" = "386"; + "x86_64" = "amd64"; + "aarch64" = "arm64"; + "arm" = "arm"; + "armv5tel" = "arm"; + "armv6l" = "arm"; + "armv7l" = "arm"; + "powerpc64le" = "ppc64le"; + }.${platform.parsed.cpu.name} or (throw "Unsupported system"); + + # We need a target compiler which is still runnable at build time, + # to handle the cross-building case where build != host == target + targetCC = pkgsBuildTarget.targetPackages.stdenv.cc; +in + +stdenv.mkDerivation rec { + pname = "go"; + inherit version; + + src = fetchurl { + url = "https://dl.google.com/go/go${version}.src.tar.gz"; + sha256 = "1sl33wkhp6pi9f15f6khp5a7l7xwmpc3sp1zmji8pjr3g8l19jip"; + }; + + # perl is used for testing go vet + nativeBuildInputs = [ perl which pkg-config patch procps ]; + buildInputs = [ cacert pcre ] + ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ] + ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; + + propagatedBuildInputs = optionals stdenv.isDarwin [ xcbuild ]; + + depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ]; + + hardeningDisable = [ "all" ]; + + prePatch = '' + patchShebangs ./ # replace /bin/bash + + # This source produces shell script at run time, + # and thus it is not corrected by patchShebangs. + substituteInPlace misc/cgo/testcarchive/carchive_test.go \ + --replace '#!/usr/bin/env bash' '#!${runtimeShell}' + + # Patch the mimetype database location which is missing on NixOS. + # but also allow static binaries built with NixOS to run outside nix + sed -i 's,\"/etc/mime.types,"${mailcap}/etc/mime.types\"\,\n\t&,' src/mime/type_unix.go + + # Disabling the 'os/http/net' tests (they want files not available in + # chroot builds) + rm src/net/{listen,parse}_test.go + rm src/syscall/exec_linux_test.go + + # !!! substituteInPlace does not seems to be effective. + # The os test wants to read files in an existing path. Just don't let it be /usr/bin. + sed -i 's,/usr/bin,'"`pwd`", src/os/os_test.go + sed -i 's,/bin/pwd,'"`type -P pwd`", src/os/os_test.go + # Fails on aarch64 + sed -i '/TestFallocate/aif true \{ return\; \}' src/cmd/link/internal/ld/fallocate_test.go + # Skip this test since ssl patches mess it up. + sed -i '/TestLoadSystemCertsLoadColonSeparatedDirs/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go + # Disable another PIE test which breaks. + sed -i '/TestTrivialPIE/aif true \{ return\; \}' misc/cgo/testshared/shared_test.go + # Disable the BuildModePie test + sed -i '/TestBuildmodePIE/aif true \{ return\; \}' src/cmd/go/go_test.go + # Disable the unix socket test + sed -i '/TestShutdownUnix/aif true \{ return\; \}' src/net/net_test.go + # Disable the hostname test + sed -i '/TestHostname/aif true \{ return\; \}' src/os/os_test.go + # ParseInLocation fails the test + sed -i '/TestParseInSydney/aif true \{ return\; \}' src/time/format_test.go + # Remove the api check as it never worked + sed -i '/src\/cmd\/api\/run.go/ireturn nil' src/cmd/dist/test.go + # Remove the coverage test as we have removed this utility + sed -i '/TestCoverageWithCgo/aif true \{ return\; \}' src/cmd/go/go_test.go + # Remove the timezone naming test + sed -i '/TestLoadFixed/aif true \{ return\; \}' src/time/time_test.go + # Remove disable setgid test + sed -i '/TestRespectSetgidDir/aif true \{ return\; \}' src/cmd/go/internal/work/build_test.go + # Remove cert tests that conflict with NixOS's cert resolution + sed -i '/TestEnvVars/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go + # TestWritevError hangs sometimes + sed -i '/TestWritevError/aif true \{ return\; \}' src/net/writev_test.go + # TestVariousDeadlines fails sometimes + sed -i '/TestVariousDeadlines/aif true \{ return\; \}' src/net/timeout_test.go + + sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go + sed -i 's,/etc/services,${iana-etc}/etc/services,' src/net/port_unix.go + + # Disable cgo lookup tests not works, they depend on resolver + rm src/net/cgo_unix_test.go + + '' + optionalString stdenv.isLinux '' + # prepend the nix path to the zoneinfo files but also leave the original value for static binaries + # that run outside a nix server + sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go + + '' + optionalString stdenv.isAarch32 '' + echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash + '' + optionalString stdenv.isDarwin '' + substituteInPlace src/race.bash --replace \ + "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true + sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go + sed -i 's,"/etc","'"$TMPDIR"'",' src/os/os_test.go + sed -i 's,/_go_os_test,'"$TMPDIR"'/_go_os_test,' src/os/path_test.go + + sed -i '/TestChdirAndGetwd/aif true \{ return\; \}' src/os/os_test.go + sed -i '/TestCredentialNoSetGroups/aif true \{ return\; \}' src/os/exec/exec_posix_test.go + sed -i '/TestRead0/aif true \{ return\; \}' src/os/os_test.go + sed -i '/TestSystemRoots/aif true \{ return\; \}' src/crypto/x509/root_darwin_test.go + + sed -i '/TestGoInstallRebuildsStalePackagesInOtherGOPATH/aif true \{ return\; \}' src/cmd/go/go_test.go + sed -i '/TestBuildDashIInstallsDependencies/aif true \{ return\; \}' src/cmd/go/go_test.go + + sed -i '/TestDisasmExtld/aif true \{ return\; \}' src/cmd/objdump/objdump_test.go + + sed -i 's/unrecognized/unknown/' src/cmd/link/internal/ld/lib.go + + # TestCurrent fails because Current is not implemented on Darwin + sed -i 's/TestCurrent/testCurrent/g' src/os/user/user_test.go + sed -i 's/TestLookup/testLookup/g' src/os/user/user_test.go + + touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd + ''; + + patches = [ + ./remove-tools-1.11.patch + ./ssl-cert-file-1.16.patch + ./remove-test-pie-1.15.patch + ./creds-test.patch + ./go-1.9-skip-flaky-19608.patch + ./go-1.9-skip-flaky-20072.patch + ./skip-external-network-tests-1.16.patch + ./skip-nohup-tests.patch + ./skip-cgo-tests-1.15.patch + ./go_no_vendor_checks-1.16.patch + ] ++ [ + # breaks under load: https://github.com/golang/go/issues/25628 + (if stdenv.isAarch32 + then ./skip-test-extra-files-on-aarch32-1.14.patch + else ./skip-test-extra-files-on-386-1.14.patch) + ]; + + postPatch = '' + find . -name '*.orig' -exec rm {} ';' + ''; + + GOOS = stdenv.targetPlatform.parsed.kernel.name; + GOARCH = goarch stdenv.targetPlatform; + # GOHOSTOS/GOHOSTARCH must match the building system, not the host system. + # Go will nevertheless build a for host system that we will copy over in + # the install phase. + GOHOSTOS = stdenv.buildPlatform.parsed.kernel.name; + GOHOSTARCH = goarch stdenv.buildPlatform; + + # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those + # to be different from CC/CXX + CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then + "${targetCC}/bin/${targetCC.targetPrefix}cc" + else + null; + CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then + "${targetCC}/bin/${targetCC.targetPrefix}c++" + else + null; + + GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); + GO386 = "softfloat"; # from Arch: don't assume sse2 on i686 + CGO_ENABLED = 1; + # Hopefully avoids test timeouts on Hydra + GO_TEST_TIMEOUT_SCALE = 3; + + # Indicate that we are running on build infrastructure + # Some tests assume things like home directories and users exists + GO_BUILDER_NAME = "nix"; + + GOROOT_BOOTSTRAP="${goBootstrap}/share/go"; + + postConfigure = '' + export GOCACHE=$TMPDIR/go-cache + # this is compiled into the binary + export GOROOT_FINAL=$out/share/go + + export PATH=$(pwd)/bin:$PATH + + ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' + # Independent from host/target, CC should produce code for the building system. + # We only set it when cross-compiling. + export CC=${buildPackages.stdenv.cc}/bin/cc + ''} + ulimit -a + ''; + + postBuild = '' + (cd src && ./make.bash) + ''; + + doCheck = stdenv.hostPlatform == stdenv.targetPlatform && !stdenv.isDarwin; + + checkPhase = '' + runHook preCheck + (cd src && HOME=$TMPDIR GOCACHE=$TMPDIR/go-cache ./run.bash --no-rebuild) + runHook postCheck + ''; + + preInstall = '' + rm -r pkg/obj + # Contains the wrong perl shebang when cross compiling, + # since it is not used for anything we can deleted as well. + rm src/regexp/syntax/make_perl_groups.pl + '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then '' + mv bin/*_*/* bin + rmdir bin/*_* + ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' + rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH} + ''} + '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then '' + rm -rf bin/*_* + ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' + rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH} + ''} + '' else ""); + + installPhase = '' + runHook preInstall + mkdir -p $GOROOT_FINAL + cp -a bin pkg src lib misc api doc $GOROOT_FINAL + ln -s $GOROOT_FINAL/bin $out/bin + runHook postInstall + ''; + + disallowedReferences = [ goBootstrap ]; + + meta = with lib; { + homepage = "http://golang.org/"; + description = "The Go Programming language"; + license = licenses.bsd3; + maintainers = teams.golang.members; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/go/1.4.nix b/nixpkgs/pkgs/development/compilers/go/1.4.nix deleted file mode 100644 index ec3fd97da9b9..000000000000 --- a/nixpkgs/pkgs/development/compilers/go/1.4.nix +++ /dev/null @@ -1,93 +0,0 @@ -{ stdenv, lib, fetchurl, fetchpatch, tzdata, iana-etc, libcCross -, pkg-config -, pcre -, Security }: - -let - libc = if stdenv ? cross then libcCross else stdenv.cc.libc; -in - -stdenv.mkDerivation rec { - pname = "go"; - version = "1.4-bootstrap-${builtins.substring 0 7 revision}"; - revision = "bdd4b9503e47c2c38a9d0a9bb2f5d95ec5ff8ef6"; - - src = fetchurl { - url = "https://github.com/golang/go/archive/${revision}.tar.gz"; - sha256 = "1zdyf883awaqdzm4r3fs76nbpiqx3iswl2p4qxclw2sl5vvynas5"; - }; - - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ pcre ]; - depsTargetTargetPropagated = lib.optional stdenv.isDarwin Security; - - hardeningDisable = [ "all" ]; - - # The tests try to do stuff with 127.0.0.1 and localhost - __darwinAllowLocalNetworking = true; - - # I'm not sure what go wants from its 'src', but the go installation manual - # describes an installation keeping the src. - preUnpack = '' - mkdir -p $out/share - cd $out/share - ''; - - prePatch = '' - # Ensure that the source directory is named go - cd .. - if [ ! -d go ]; then - mv * go - fi - - cd go - patchShebangs ./ # replace /bin/bash - - sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go - '' + lib.optionalString stdenv.isLinux '' - # prepend the nix path to the zoneinfo files but also leave the original value for static binaries - # that run outside a nix server - sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go - - # Find the loader dynamically - LOADER="$(find ${lib.getLib libc}/lib -name ld-linux\* | head -n 1)" - - # Replace references to the loader - find src/cmd -name asm.c -exec sed -i "s,/lib/ld-linux.*\.so\.[0-9],$LOADER," {} \; - ''; - - patches = [ - ./remove-tools-1.4.patch - ]; - - GOOS = if stdenv.isDarwin then "darwin" else "linux"; - GOARCH = if stdenv.isDarwin then "amd64" - else if stdenv.hostPlatform.system == "i686-linux" then "386" - else if stdenv.hostPlatform.system == "x86_64-linux" then "amd64" - else if stdenv.isAarch32 then "arm" - else throw "Unsupported system"; - GOARM = lib.optionalString (stdenv.hostPlatform.system == "armv5tel-linux") "5"; - GO386 = 387; # from Arch: don't assume sse2 on i686 - CGO_ENABLED = 0; - - # The go build actually checks for CC=*/clang and does something different, so we don't - # just want the generic `cc` here. - CC = if stdenv.isDarwin then "clang" else "cc"; - - installPhase = '' - mkdir -p "$out/bin" - export GOROOT="$(pwd)/" - export GOBIN="$out/bin" - export PATH="$GOBIN:$PATH" - cd ./src - ./all.bash - ''; - - meta = with lib; { - homepage = "http://golang.org/"; - description = "The Go Programming language"; - license = licenses.bsd3; - maintainers = with maintainers; [ cstrahan ]; - platforms = platforms.linux ++ platforms.darwin; - }; -} diff --git a/nixpkgs/pkgs/development/compilers/go/2-dev.nix b/nixpkgs/pkgs/development/compilers/go/2-dev.nix index 3e09f7c0fad2..2bdf6a4950cc 100644 --- a/nixpkgs/pkgs/development/compilers/go/2-dev.nix +++ b/nixpkgs/pkgs/development/compilers/go/2-dev.nix @@ -4,15 +4,18 @@ , buildPackages , pkgsBuildTarget , fetchpatch +, callPackage }: let inherit (lib) optionals optionalString; + go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; + goBootstrap = runCommand "go-bootstrap" {} '' mkdir $out - cp -rf ${buildPackages.go_bootstrap}/* $out/ + cp -rf ${go_bootstrap}/* $out/ chmod -R u+w $out find $out -name "*.c" -delete cp -rf $out/bin/* $out/share/go/bin/ diff --git a/nixpkgs/pkgs/development/compilers/go/binary.nix b/nixpkgs/pkgs/development/compilers/go/binary.nix new file mode 100644 index 000000000000..7eb8f8f7b984 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/go/binary.nix @@ -0,0 +1,41 @@ +{ lib, stdenv, fetchurl, version, hashes }: +let + toGoKernel = platform: + if platform.isDarwin then "darwin" + else platform.parsed.kernel.name; + + toGoCPU = platform: { + "i686" = "386"; + "x86_64" = "amd64"; + "aarch64" = "arm64"; + "armv6l" = "armv6l"; + "armv7l" = "armv6l"; + "powerpc64le" = "ppc64le"; + }.${platform.parsed.cpu.name} or (throw "Unsupported CPU ${platform.parsed.cpu.name}"); + + toGoPlatform = platform: "${toGoKernel platform}-${toGoCPU platform}"; + + platform = toGoPlatform stdenv.hostPlatform; +in +stdenv.mkDerivation rec { + name = "go-${version}-${platform}-bootstrap"; + + src = fetchurl { + url = "https://golang.org/dl/go${version}.${platform}.tar.gz"; + sha256 = hashes.${platform} or (throw "Missing Go bootstrap hash for platform ${platform}"); + }; + + # We must preserve the signature on Darwin + dontStrip = stdenv.hostPlatform.isDarwin; + + installPhase = '' + mkdir -p $out/share/go $out/bin + mv bin/* $out/bin + cp -r . $out/share/go + ${lib.optionalString stdenv.isLinux ('' + patchelf \ + --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + $out/bin/go + '')} + '' ; +} diff --git a/nixpkgs/pkgs/development/compilers/go/bootstrap.nix b/nixpkgs/pkgs/development/compilers/go/bootstrap.nix new file mode 100644 index 000000000000..71573b0bdd22 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/go/bootstrap.nix @@ -0,0 +1,15 @@ +{ callPackage }: +callPackage ./binary.nix { + version = "1.16"; + hashes = { + # Use `print-hashes.sh ${version}` to generate the list below + darwin-amd64 = "6000a9522975d116bf76044967d7e69e04e982e9625330d9a539a8b45395f9a8"; + darwin-arm64 = "4dac57c00168d30bbd02d95131d5de9ca88e04f2c5a29a404576f30ae9b54810"; + linux-386 = "ea435a1ac6d497b03e367fdfb74b33e961d813883468080f6e239b3b03bea6aa"; + linux-amd64 = "013a489ebb3e24ef3d915abe5b94c3286c070dfe0818d5bca8108f1d6e8440d2"; + linux-arm64 = "3770f7eb22d05e25fbee8fb53c2a4e897da043eb83c69b9a14f8d98562cd8098"; + linux-armv6l = "d1d9404b1dbd77afa2bdc70934e10fbfcf7d785c372efc29462bb7d83d0a32fd"; + linux-ppc64le = "27a1aaa988e930b7932ce459c8a63ad5b3333b3a06b016d87ff289f2a11aacd6"; + linux-s390x = "be4c9e4e2cf058efc4e3eb013a760cb989ddc4362f111950c990d1c63b27ccbe"; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/go/go_no_vendor_checks-1.16.patch b/nixpkgs/pkgs/development/compilers/go/go_no_vendor_checks-1.16.patch new file mode 100644 index 000000000000..9edf6efa8517 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/go/go_no_vendor_checks-1.16.patch @@ -0,0 +1,23 @@ +Starting from go1.14, go verifes that vendor/modules.txt matches the requirements +and replacements listed in the main module go.mod file, and it is a hard failure if +vendor/modules.txt is missing. + +Relax module consistency checks and switch back to pre go1.14 behaviour if +vendor/modules.txt is missing regardless of go version requirement in go.mod. + +This has been ported from FreeBSD: https://reviews.freebsd.org/D24122 +See https://github.com/golang/go/issues/37948 for discussion. + +diff --git a/src/cmd/go/internal/modload/vendor.go b/src/cmd/go/internal/modload/vendor.go +index d8fd91f1fe..8bc08e6fed 100644 +--- a/src/cmd/go/internal/modload/vendor.go ++++ b/src/cmd/go/internal/modload/vendor.go +@@ -133,7 +133,7 @@ func checkVendorConsistency() { + readVendorList() + + pre114 := false +- if semver.Compare(index.goVersionV, "v1.14") < 0 { ++ if semver.Compare(index.goVersionV, "v1.14") < 0 || (os.Getenv("GO_NO_VENDOR_CHECKS") == "1" && len(vendorMeta) == 0) { + // Go versions before 1.14 did not include enough information in + // vendor/modules.txt to check for consistency. + // If we know that we're on an earlier version, relax the consistency check. diff --git a/nixpkgs/pkgs/development/compilers/go/print-hashes.sh b/nixpkgs/pkgs/development/compilers/go/print-hashes.sh new file mode 100755 index 000000000000..97be7d189ad8 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/go/print-hashes.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +set -euo pipefail + +BASEURL=https://golang.org/dl/ +VERSION=${1:-} + +if [[ -z $VERSION ]] +then + echo "No version supplied" + exit -1 +fi + +curl -s "${BASEURL}?mode=json&include=all" | \ + jq '.[] | select(.version == "go'${VERSION}'")' | \ + jq -r '.files[] | select(.kind == "archive" and (.os == "linux" or .os == "darwin")) | (.os + "-" + .arch + " = \"" + .sha256 + "\";")' diff --git a/nixpkgs/pkgs/development/compilers/go/remove-tools-1.4.patch b/nixpkgs/pkgs/development/compilers/go/remove-tools-1.4.patch deleted file mode 100644 index 807ab8e089c1..000000000000 --- a/nixpkgs/pkgs/development/compilers/go/remove-tools-1.4.patch +++ /dev/null @@ -1,81 +0,0 @@ -diff --git a/misc/makerelease/makerelease.go b/misc/makerelease/makerelease.go -index 3b511b1..a46ebd8 100644 ---- a/misc/makerelease/makerelease.go -+++ b/misc/makerelease/makerelease.go -@@ -65,9 +65,6 @@ const ( - // These must be the command that cmd/go knows to install to $GOROOT/bin - // or $GOROOT/pkg/tool. - var toolPaths = []string{ -- "golang.org/x/tools/cmd/cover", -- "golang.org/x/tools/cmd/godoc", -- "golang.org/x/tools/cmd/vet", - } - - var preBuildCleanFiles = []string{ -diff --git a/src/cmd/dist/build.c b/src/cmd/dist/build.c -index b6c61b4..2006bc2 100644 ---- a/src/cmd/dist/build.c -+++ b/src/cmd/dist/build.c -@@ -210,7 +210,9 @@ init(void) - workdir = xworkdir(); - xatexit(rmworkdir); - -- bpathf(&b, "%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch); -+ xgetenv(&b, "GOTOOLDIR"); -+ if (b.len == 0) -+ bpathf(&b, "%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch); - tooldir = btake(&b); - - bfree(&b); -diff --git a/src/cmd/go/pkg.go b/src/cmd/go/pkg.go -index b71feb7..8468ea8 100644 ---- a/src/cmd/go/pkg.go -+++ b/src/cmd/go/pkg.go -@@ -401,9 +401,9 @@ var goTools = map[string]targetDir{ - "cmd/pack": toTool, - "cmd/pprof": toTool, - "cmd/yacc": toTool, -- "golang.org/x/tools/cmd/cover": toTool, -- "golang.org/x/tools/cmd/godoc": toBin, -- "golang.org/x/tools/cmd/vet": toTool, -+ "nixos.org/x/tools/cmd/cover": toTool, -+ "nixos.org/x/tools/cmd/godoc": toBin, -+ "nixos.org/x/tools/cmd/vet": toTool, - "code.google.com/p/go.tools/cmd/cover": stalePath, - "code.google.com/p/go.tools/cmd/godoc": stalePath, - "code.google.com/p/go.tools/cmd/vet": stalePath, -diff --git a/src/go/build/build.go b/src/go/build/build.go -index 311ecb0..f151d8f 100644 ---- a/src/go/build/build.go -+++ b/src/go/build/build.go -@@ -1367,7 +1367,7 @@ func init() { - } - - // ToolDir is the directory containing build tools. --var ToolDir = filepath.Join(runtime.GOROOT(), "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH) -+var ToolDir = runtime.GOTOOLDIR() - - // IsLocalImport reports whether the import path is - // a local import path, like ".", "..", "./foo", or "../foo". -diff --git a/src/runtime/extern.go b/src/runtime/extern.go -index 6cc5df8..9a9a964 100644 ---- a/src/runtime/extern.go -+++ b/src/runtime/extern.go -@@ -152,6 +152,17 @@ func GOROOT() string { - return defaultGoroot - } - -+// GOTOOLDIR returns the root of the Go tree. -+// It uses the GOTOOLDIR environment variable, if set, -+// or else the root used during the Go build. -+func GOTOOLDIR() string { -+ s := gogetenv("GOTOOLDIR") -+ if s != "" { -+ return s -+ } -+ return GOROOT() + "/pkg/tool/" + GOOS + "_" + GOARCH -+} -+ - // Version returns the Go tree's version string. - // It is either the commit hash and date at the time of the build or, - // when possible, a release tag like "go1.3". diff --git a/nixpkgs/pkgs/development/compilers/go/skip-external-network-tests-1.16.patch b/nixpkgs/pkgs/development/compilers/go/skip-external-network-tests-1.16.patch new file mode 100644 index 000000000000..8f1eb6be7bb8 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/go/skip-external-network-tests-1.16.patch @@ -0,0 +1,33 @@ +diff --git a/src/internal/testenv/testenv.go b/src/internal/testenv/testenv.go +index c902b1404f..66016088a2 100644 +--- a/src/internal/testenv/testenv.go ++++ b/src/internal/testenv/testenv.go +@@ -163,13 +163,15 @@ func MustHaveExecPath(t testing.TB, path string) { + // HasExternalNetwork reports whether the current system can use + // external (non-localhost) networks. + func HasExternalNetwork() bool { +- return !testing.Short() && runtime.GOOS != "js" ++ // Nix sandbox does not external network in sandbox ++ return false + } + + // MustHaveExternalNetwork checks that the current system can use + // external (non-localhost) networks. + // If not, MustHaveExternalNetwork calls t.Skip with an explanation. + func MustHaveExternalNetwork(t testing.TB) { ++ t.Skipf("Nix sandbox does not have networking") + if runtime.GOOS == "js" { + t.Skipf("skipping test: no external network on %s", runtime.GOOS) + } +diff --git a/src/net/dial_test.go b/src/net/dial_test.go +index 57cf5554ad..d00be53b2c 100644 +--- a/src/net/dial_test.go ++++ b/src/net/dial_test.go +@@ -990,6 +990,7 @@ func TestDialerControl(t *testing.T) { + // except that it won't skip testing on non-mobile builders. + func mustHaveExternalNetwork(t *testing.T) { + t.Helper() ++ t.Skipf("Nix sandbox does not have networking") + mobile := runtime.GOOS == "android" || runtime.GOOS == "ios" + if testenv.Builder() == "" || mobile { + testenv.MustHaveExternalNetwork(t) diff --git a/nixpkgs/pkgs/development/compilers/go/ssl-cert-file-1.16.patch b/nixpkgs/pkgs/development/compilers/go/ssl-cert-file-1.16.patch new file mode 100644 index 000000000000..f4bc16e5b8cb --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/go/ssl-cert-file-1.16.patch @@ -0,0 +1,34 @@ +diff --git a/src/crypto/x509/root.go b/src/crypto/x509/root.go +index ac92915128..fb1d70c735 100644 +--- a/src/crypto/x509/root.go ++++ b/src/crypto/x509/root.go +@@ -6,7 +6,11 @@ package x509 + + //go:generate go run root_ios_gen.go -version 55161.140.3 + +-import "sync" ++import ( ++ "io/ioutil" ++ "os" ++ "sync" ++) + + var ( + once sync.Once +@@ -20,6 +24,16 @@ func systemRootsPool() *CertPool { + } + + func initSystemRoots() { ++ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" { ++ data, err := ioutil.ReadFile(file) ++ if err == nil { ++ roots := NewCertPool() ++ roots.AppendCertsFromPEM(data) ++ systemRoots = roots ++ return ++ } ++ } ++ + systemRoots, systemRootsErr = loadSystemRoots() + if systemRootsErr != nil { + systemRoots = nil diff --git a/nixpkgs/pkgs/development/compilers/gprolog/default.nix b/nixpkgs/pkgs/development/compilers/gprolog/default.nix index 59f33db68cbd..87bf767f5bdc 100644 --- a/nixpkgs/pkgs/development/compilers/gprolog/default.nix +++ b/nixpkgs/pkgs/development/compilers/gprolog/default.nix @@ -63,6 +63,6 @@ stdenv.mkDerivation rec { ''; maintainers = [ lib.maintainers.peti ]; - platforms = lib.platforms.gnu ++ lib.platforms.linux; + platforms = lib.platforms.unix; }; } diff --git a/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix b/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix index f3a03b364743..3a8fca2c1a05 100644 --- a/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix +++ b/nixpkgs/pkgs/development/compilers/graalvm/community-edition.nix @@ -1,56 +1,106 @@ -{ lib, stdenv, fetchurl, perl, unzip, glibc, zlib, setJavaClassPath, Foundation, openssl }: +{ stdenv +, lib +, fetchurl +, autoPatchelfHook +, setJavaClassPath +, makeWrapper +# minimum dependencies +, Foundation +, alsaLib +, fontconfig +, freetype +, glibc +, openssl +, perl +, unzip +, xorg +, zlib +# runtime dependencies +, cups +# runtime dependencies for GTK+ Look and Feel +, gtkSupport ? true +, cairo +, glib +, gtk3 +}: let platform = if stdenv.isDarwin then "darwin-amd64" else "linux-amd64"; + runtimeDependencies = [ + cups + ] ++ lib.optionals gtkSupport [ + cairo glib gtk3 + ]; + runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies; common = javaVersion: let javaVersionPlatform = "${javaVersion}-${platform}"; graalvmXXX-ce = stdenv.mkDerivation rec { pname = "graalvm${javaVersion}-ce"; - version = "20.3.0"; + version = "21.0.0"; srcs = [ (fetchurl { - sha256 = { "8-linux-amd64" = "195b20ivvv8ipjn3qq2313j8qf96ji93pqm99nvn20bq23wasp25"; - "11-linux-amd64" = "1mdk1zhazvvh1fa01bzi5v5fxhvx592xmbakx0y1137vykbayyjm"; - "8-darwin-amd64" = "1rrs471204p71knyxpjxymdi8ws98ph2kf5j0knk529g0d24rs01"; - "11-darwin-amd64" = "008dl8dbf37mv4wahb9hbd6jp8svvmpy1rgsiqkn3i4hypxnkf12"; + sha256 = { "8-linux-amd64" = "18q1plrpclp02rlwn3vvv2fcyspvqv2gkzn14f0b59pnladmlv1j"; + "11-linux-amd64" = "1g1xjbr693rimdy2cy6jvz4vgnbnw76wa87xcmaszka206fmpnsc"; + "8-darwin-amd64" = "0giv8f7ybdykadzmxjy91i6njbdx6dclyx7g6vyhwk2l1cvxi4li"; + "11-darwin-amd64" = "1a8gjp6fp11ms05pd62h1x1ifkkr3wv0hrxic670v90bbps9lsqf"; }.${javaVersionPlatform}; url = "https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${version}/graalvm-ce-java${javaVersionPlatform}-${version}.tar.gz"; }) (fetchurl { - sha256 = { "8-linux-amd64" = "1rzbhllz28x5ps8n304v998hykr4m8z1gfg53ybi6laxhkbx3i13"; - "11-linux-amd64" = "09ipdl1489xnbckwl6sl9y7zy7kp5qf5fgf3kgz5d69jrk2z6rvf"; - "8-darwin-amd64" = "1iy2943jbrarh8bm9wy15xk7prnskqwik2ham07a6ybp4j4b81xi"; - "11-darwin-amd64" = "0vk2grlirghzc78kvwg66w0xriy5p8qkcp7qx83i62d7sj0kvwnf"; + sha256 = { "8-linux-amd64" = "0hpq2g9hc8b7j4d8a08kq1mnl6pl7a4kwaj0a3gka3d4m6r7cscg"; + "11-linux-amd64" = "0z3hb2bf0lqzw760civ3h1wvx22a75n7baxc0l2i9h5wxas002y7"; + "8-darwin-amd64" = "1izbgl4hjg5jyi422xnkx006qnw163r1i1djf76q1plms40y01ph"; + "11-darwin-amd64" = "1d9z75gil0if74ndla9yw3xx9i2bfbcs32qa0z6wi5if66cmknb8"; }.${javaVersionPlatform}; url = "https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${version}/native-image-installable-svm-java${javaVersionPlatform}-${version}.jar"; }) (fetchurl { - sha256 = { "8-linux-amd64" = "0v98v44vblhyi3jhrngmvrkb3a6d607x4fpmrb4mrrsg75vbvc6d"; - "11-linux-amd64" = "0kb9472ilwqg40gyw1c4lmzkd9s763raw560sw80ljm3p75k4sc7"; - "8-darwin-amd64" = "192n9ckr4p8qirpxr67ji3wzxpng33yfr7kxynlrcp7b3ghfic6p"; - "11-darwin-amd64" = "1wqdk8wphywa00kl3xikiskclb84rx3nw5a4vi5y2n060kclcp22"; + sha256 = { "8-linux-amd64" = "122p8psgmzhqnjb2fy1lwghg0kw5qa8xkzgyjp682lwg4j8brz43"; + "11-linux-amd64" = "1vdc90m6s013cbhmj58nb4vyxllbxirw0idlgv0iv9cyhx90hzgz"; + "8-darwin-amd64" = "04q0s9xsaskqn9kbhz0mgdk28j2qnxrzqfmw6jn2znr8s8jsc6yp"; + "11-darwin-amd64" = "1pw4xd8g5cc9bm52awmm1zxs96ijws43vws7y10wxa6a0nhv7z5f"; }.${javaVersionPlatform}; url = "https://github.com/oracle/truffleruby/releases/download/vm-${version}/ruby-installable-svm-java${javaVersionPlatform}-${version}.jar"; }) (fetchurl { - sha256 = { "8-linux-amd64" = "1iskmkhrrwlhcq92g1ljvsfi9q403xxkwgzn9m282z5llh2fxv74"; - "11-linux-amd64" = "13bg2gs22rzbngnbw8j68jqgcknbiw30kpxac5jjcn55rf2ymvkz"; - "8-darwin-amd64" = "08pib13q7s5wymnbykkyif66ll146vznxw4yz12qwhb419882jc7"; - "11-darwin-amd64" = "0cb9lhc21yr2dnrm4kwa68laaczvsdnzpcbl2qix50d0v84xl602"; + sha256 = { "8-linux-amd64" = "19m7n4f5jrmsfvgv903sarkcjh55l0nlnw99lvjlcafw5hqzyb91"; + "11-linux-amd64" = "18ibb7l7b4hmbnvyr8j7mrs11mvlsf2j0c8rdd2s93x2114f26ba"; + "8-darwin-amd64" = "1zlzi00339kvg4ym2j75ypfkzn8zbwdpriqmkaz4fh28qjmc1dwq"; + "11-darwin-amd64" = "0x301i1fimakhi2x29ldr0fsqkb3qs0g9jsmjv27d62dpqx8kgc8"; }.${javaVersionPlatform}; url = "https://github.com/graalvm/graalpython/releases/download/vm-${version}/python-installable-svm-java${javaVersionPlatform}-${version}.jar"; }) (fetchurl { - sha256 = { "8-linux-amd64" = "12lvcl1vmc35wh3xw5dqca7yiijsd432x4lim3knzppipy7fmflq"; - "11-linux-amd64" = "1s8zfgjyyw6w53974h9a2ig8a1bvc97aplyrdziywfrijgp6zkqk"; - "8-darwin-amd64" = "06i1n42hkhcf1pfb2bly22ws4a09xgydsgh8b0kvjmb1fapd4paq"; - "11-darwin-amd64" = "1r2bqhfxnw09izxlsc562znlp3m9c1isqzhlki083h3vp548vv9s"; + sha256 = { "8-linux-amd64" = "0dlgbg6kri89r9zbk6n0ch3g8356j1g35bwjng87c2y5y0vcw0b5"; + "11-linux-amd64" = "1yby65hww6zmd2g5pjwbq5pv3iv4gfv060b8fq75fjhwrisyj5gd"; + "8-darwin-amd64" = "1smdj491g23i3z7p5rybid18nnz8bphrqjkv0lg2ffyrpn8k6g93"; + "11-darwin-amd64" = "056zyn0lpd7741k1szzjwwacka0g7rn0j4ypfmav4h1245mjg8lx"; }.${javaVersionPlatform}; url = "https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${version}/wasm-installable-svm-java${javaVersionPlatform}-${version}.jar"; }) ]; - nativeBuildInputs = [ unzip perl ]; + + buildInputs = lib.optionals stdenv.isLinux [ + alsaLib # libasound.so wanted by lib/libjsound.so + fontconfig + freetype + openssl # libssl.so wanted by languages/ruby/lib/mri/openssl.so + stdenv.cc.cc.lib # libstdc++.so.6 + xorg.libX11 + xorg.libXext + xorg.libXi + xorg.libXrender + xorg.libXtst + zlib + ]; + + # Workaround for libssl.so.10 wanted by TruffleRuby + # Resulting TruffleRuby cannot use `openssl` library. + autoPatchelfIgnoreMissingDeps = true; + + nativeBuildInputs = [ unzip perl autoPatchelfHook makeWrapper ]; + unpackPhase = '' unpack_jar() { jar=$1 @@ -136,32 +186,28 @@ let dontStrip = true; - # copy-paste openjdk's preFixup preFixup = '' + # We cannot use -exec since wrapProgram is a function but not a + # command. + # + # jspawnhelper is executed from JVM, so it doesn't need to wrap it, + # and it breaks building OpenJDK (#114495). + for bin in $( find "$out" -executable -type f -not -path '*/languages/ruby/lib/gems/*' -not -name jspawnhelper ); do + if patchelf --print-interpreter "$bin" &> /dev/null || head -n 1 "$bin" | grep '^#!' -q; then + wrapProgram "$bin" \ + --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}" + fi + done + + # copy-paste openjdk's preFixup # Set JAVA_HOME automatically. mkdir -p $out/nix-support cat <<EOF > $out/nix-support/setup-hook if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi EOF - ''; - - postFixup = '' - rpath="${ { "8" = "$out/jre/lib/amd64/jli:$out/jre/lib/amd64/server:$out/jre/lib/amd64"; - "11" = "$out/lib/jli:$out/lib/server:$out/lib"; - }.${javaVersion} - }:${ - lib.makeLibraryPath [ - stdenv.cc.cc.lib # libstdc++.so.6 - zlib # libz.so.1 - ]}" - ${lib.optionalString stdenv.isLinux '' - for f in $(find $out -type f -perm -0100); do - patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$f" || true - patchelf --set-rpath "$rpath" "$f" || true - if ldd "$f" | fgrep 'not found'; then echo "in file $f"; fi - done - ''} + find "$out" -name libfontmanager.so -exec \ + patchelf --add-needed libfontconfig.so {} \; ''; # $out/bin/native-image needs zlib to build native executables. @@ -204,11 +250,13 @@ let echo '1 + 1' | $out/bin/graalpython - # TODO: `irb` on MacOS gives an error saying "Could not find OpenSSL - # headers, install via Homebrew or MacPorts or set OPENSSL_PREFIX", even - # though `openssl` is in `propagatedBuildInputs`. For more details see: - # https://github.com/NixOS/nixpkgs/pull/105815 - # echo '1 + 1' | $out/bin/irb + ${lib.optionalString stdenv.isLinux '' + # TODO: `irb` on MacOS gives an error saying "Could not find OpenSSL + # headers, install via Homebrew or MacPorts or set OPENSSL_PREFIX", even + # though `openssl` is in `propagatedBuildInputs`. For more details see: + # https://github.com/NixOS/nixpkgs/pull/105815 + echo '1 + 1' | $out/bin/irb + ''} echo '1 + 1' | $out/bin/node -i ${lib.optionalString (javaVersion == "11") '' diff --git a/nixpkgs/pkgs/development/compilers/graalvm/default.nix b/nixpkgs/pkgs/development/compilers/graalvm/default.nix index fc30e37e4b7c..ccfb4a18a12a 100644 --- a/nixpkgs/pkgs/development/compilers/graalvm/default.nix +++ b/nixpkgs/pkgs/development/compilers/graalvm/default.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchFromGitHub, fetchurl, fetchzip, fetchgit, mercurial_4, python27, setJavaClassPath, which, zlib, makeWrapper, openjdk, unzip, git, clang, llvm, icu, ruby, glibc, bash, gcc, libobjc, - xcodebuild, gfortran, readline, bzip2, lzma, pcre, curl, ed, libresolv, libiconv, writeScriptBin, + xcodebuild, gfortran, readline, bzip2, xz, pcre, curl, ed, libresolv, libiconv, writeScriptBin, openssl, perl, CoreFoundation, Foundation, JavaNativeFoundation, JavaRuntimeSupport, JavaVM, Cocoa }: @@ -89,7 +89,7 @@ let makeMxCache = list: stdenv.mkDerivation { name = "mx-cache"; - buildInputs = [ unzip ]; + nativeBuildInputs = [ unzip ]; buildCommand = with lib; '' mkdir $out ${lib.concatMapStrings @@ -372,7 +372,7 @@ in rec { buildInputs = [ mx zlib.dev mercurial jvmci8 git llvm clang python27withPackages icu ruby bzip2 which - readline bzip2 lzma pcre curl ed gfortran + readline bzip2 xz pcre curl ed gfortran ] ++ lib.optional stdenv.isDarwin [ CoreFoundation gcc.cc.lib libiconv perl openssl ]; diff --git a/nixpkgs/pkgs/development/compilers/gwt/2.4.0.nix b/nixpkgs/pkgs/development/compilers/gwt/2.4.0.nix index e10d10120347..011a7979df7f 100644 --- a/nixpkgs/pkgs/development/compilers/gwt/2.4.0.nix +++ b/nixpkgs/pkgs/development/compilers/gwt/2.4.0.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation { sha256 = "1gvyg00vx7fdqgfl2w7nhql78clg3abs6fxxy7m03pprdm5qmm17"; }; - buildInputs = [ unzip ]; + nativeBuildInputs = [ unzip ]; installPhase = '' mkdir -p $out diff --git a/nixpkgs/pkgs/development/compilers/haxe/default.nix b/nixpkgs/pkgs/development/compilers/haxe/default.nix index 584511923961..73b82ff48dbf 100644 --- a/nixpkgs/pkgs/development/compilers/haxe/default.nix +++ b/nixpkgs/pkgs/development/compilers/haxe/default.nix @@ -1,20 +1,44 @@ -{ lib, stdenv, fetchgit, coreutils, ocamlPackages, zlib, pcre, neko }: - -let inherit (ocamlPackages) ocaml camlp4; in +{ lib, stdenv, fetchFromGitHub, coreutils, ocaml-ng, zlib, pcre, neko, mbedtls }: let - generic = { version, sha256, prePatch }: + ocamlDependencies = version: + if lib.versionAtLeast version "4.0" + then with ocaml-ng.ocamlPackages; [ + ocaml + findlib + sedlex_2 + xml-light + ptmap + camlp5 + sha + dune_2 + luv + ocaml_extlib + ] else with ocaml-ng.ocamlPackages_4_05; [ + ocaml + camlp4 + ]; + + defaultPatch = '' + substituteInPlace extra/haxelib_src/src/haxelib/client/Main.hx \ + --replace '"neko"' '"${neko}/bin/neko"' + ''; + + generic = { sha256, version, prePatch ? defaultPatch }: stdenv.mkDerivation { pname = "haxe"; inherit version; - buildInputs = [ocaml zlib pcre neko camlp4]; + buildInputs = [ zlib pcre neko ] + ++ lib.optional (lib.versionAtLeast version "4.1") [ mbedtls ] + ++ ocamlDependencies version; - src = fetchgit { - url = "https://github.com/HaxeFoundation/haxe.git"; - inherit sha256; + src = fetchFromGitHub { + owner = "HaxeFoundation"; + repo = "haxe"; + rev = version; fetchSubmodules = true; - rev = "refs/tags/${version}"; + inherit sha256; }; inherit prePatch; @@ -77,8 +101,8 @@ let meta = with lib; { description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++"; homepage = "https://haxe.org"; - license = with licenses; [ gpl2 bsd2 /*?*/ ]; # -> docs/license.txt - maintainers = [ maintainers.marcweber ]; + license = with licenses; [ gpl2Plus mit ]; # based on upstream opam file + maintainers = [ maintainers.marcweber maintainers.locallycompact ]; platforms = platforms.linux ++ platforms.darwin; }; }; @@ -89,15 +113,20 @@ in { sha256 = "1x9ay5a2llq46fww3k07jxx8h1vfpyxb522snc6702a050ki5vz3"; prePatch = '' sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' main.ml - sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/tools/haxelib/Main.hx + substituteInPlace extra/haxelib_src/src/tools/haxelib/Main.hx \ + --replace '"neko"' '"${neko}/bin/neko"' ''; }; haxe_3_4 = generic { version = "3.4.6"; sha256 = "1myc4b8fwp0f9vky17wv45n34a583f5sjvajsc93f5gm1wanp4if"; prePatch = '' + ${defaultPatch} sed -i -re 's!(let +prefix_path += +).*( +in)!\1"'"$out/"'"\2!' src/main.ml - sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx ''; }; + haxe_4_2 = generic { + version = "4.2.1"; + sha256 = "sha256-0j6M21dh8DB1gC/bPYNJrVuDbJyqQbP+61ItO5RBUcA="; + }; } diff --git a/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix b/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix index ebba160fc95a..512865829607 100644 --- a/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix +++ b/nixpkgs/pkgs/development/compilers/intel-graphics-compiler/default.nix @@ -7,7 +7,7 @@ , flex , llvmPackages_8 , opencl-clang -, python +, python3 , spirv-llvm-translator , buildWithPatches ? true @@ -33,9 +33,11 @@ stdenv.mkDerivation rec { sha256 = "1jp3c67ppl1x4pazr5nzy52615cpx0kyckaridhc0fsmrkgilyxq"; }; - nativeBuildInputs = [ clang cmake bison flex llvm python ]; + nativeBuildInputs = [ clang cmake bison flex python3 ]; - buildInputs = [ clang opencl-clang spirv-llvm-translator ]; + buildInputs = [ clang opencl-clang spirv-llvm-translator llvm ]; + + strictDeps = true; # checkInputs = [ lit pythonPackages.nose ]; diff --git a/nixpkgs/pkgs/development/compilers/ispc/default.nix b/nixpkgs/pkgs/development/compilers/ispc/default.nix index d1ac7bcd0efe..fd7481587115 100644 --- a/nixpkgs/pkgs/development/compilers/ispc/default.nix +++ b/nixpkgs/pkgs/development/compilers/ispc/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub +{ lib, stdenv, fetchFromGitHub, fetchpatch , cmake, which, m4, python3, bison, flex, llvmPackages # the default test target is sse4, but that is not supported by all Hydra agents @@ -7,15 +7,27 @@ stdenv.mkDerivation rec { pname = "ispc"; - version = "1.13.0"; + version = "unstable-2021-04-02"; src = fetchFromGitHub { owner = pname; repo = pname; - rev = "v${version}"; - sha256 = "1l74xkpwwxc38k2ngg7mpvswziiy91yxslgfad6688hh1n5jvayd"; + # ISPC release 1.15.0 doesn't build against LLVM 11.1, only against 11.0. So we + # use latest ISPC main branch for now, until they support an LLVM version we have. + # https://github.com/ispc/ispc/issues/2027#issuecomment-784470530 + rev = "3e8313568265d2adfbf95bd6b6e1a4c70ef59bed"; + sha256 = "sha256-gvr+VpoacmwQlP5gT4MnfmKdACZWJduVMIpR0YRzseg="; }; + patches = [ + # Fix cmake error: `Failed to find clang++` + # https://github.com/ispc/ispc/pull/2055 + (fetchpatch { + url = "https://github.com/erictapen/ispc/commit/338119b2f4e11fcf0b0852de296c320928e572a2.patch"; + sha256 = "sha256-+RqDq1LMWomu/K4SgK0Nip47b1RwyM6W0cTSNGD4+m4="; + }) + ]; + nativeBuildInputs = [ cmake which m4 bison flex python3 ]; buildInputs = with llvmPackages; [ # we need to link against libclang, so we need the unwrapped @@ -55,6 +67,7 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DCLANG_EXECUTABLE=${llvmPackages.clang}/bin/clang" + "-DCLANGPP_EXECUTABLE=${llvmPackages.clang}/bin/clang++" "-DISPC_INCLUDE_EXAMPLES=OFF" "-DISPC_INCLUDE_UTILS=OFF" "-DARM_ENABLED=FALSE" diff --git a/nixpkgs/pkgs/development/compilers/julia/1.0.nix b/nixpkgs/pkgs/development/compilers/julia/1.0.nix index 98d7ce90de3b..5b1a4674a88a 100644 --- a/nixpkgs/pkgs/development/compilers/julia/1.0.nix +++ b/nixpkgs/pkgs/development/compilers/julia/1.0.nix @@ -139,7 +139,7 @@ stdenv.mkDerivation rec { "prefix=$(out)" "SHELL=${stdenv.shell}" - "USE_SYSTEM_BLAS=1" + (lib.optionalString (!stdenv.isDarwin) "USE_SYSTEM_BLAS=1") "USE_BLAS64=${if blas.isILP64 then "1" else "0"}" "USE_SYSTEM_LAPACK=1" diff --git a/nixpkgs/pkgs/development/compilers/julia/1.3.nix b/nixpkgs/pkgs/development/compilers/julia/1.3.nix index da60fa8b9888..5e431a552332 100644 --- a/nixpkgs/pkgs/development/compilers/julia/1.3.nix +++ b/nixpkgs/pkgs/development/compilers/julia/1.3.nix @@ -89,7 +89,7 @@ stdenv.mkDerivation rec { "prefix=$(out)" "SHELL=${stdenv.shell}" - "USE_SYSTEM_BLAS=1" + (lib.optionalString (!stdenv.isDarwin) "USE_SYSTEM_BLAS=1") "USE_BLAS64=${if blas.isILP64 then "1" else "0"}" "USE_SYSTEM_LAPACK=1" diff --git a/nixpkgs/pkgs/development/compilers/julia/1.5.nix b/nixpkgs/pkgs/development/compilers/julia/1.5.nix index a523336b7b92..b4c33faa44cd 100644 --- a/nixpkgs/pkgs/development/compilers/julia/1.5.nix +++ b/nixpkgs/pkgs/development/compilers/julia/1.5.nix @@ -1,7 +1,6 @@ -{ lib, stdenv, fetchurl, fetchzip, fetchFromGitHub +{ lib, stdenv, fetchzip # build tools -, gfortran, m4, makeWrapper, patchelf, perl, which, python2 -, cmake +, gfortran, m4, makeWrapper, patchelf, perl, which, python2, cmake # libjulia dependencies , libunwind, readline, utf8proc, zlib # standard library dependencies @@ -19,8 +18,8 @@ with lib; let majorVersion = "1"; minorVersion = "5"; - maintenanceVersion = "3"; - src_sha256 = "sha256:0jds8lrhk4hfdv7dg5p2ibzin9ivga7wrx7zwcmz6dqp3x792n1i"; + maintenanceVersion = "4"; + src_sha256 = "1ba1v7hakgj95xvhyff0zcp0574qv6vailjl48wl1f8w5k54lsw2"; version = "${majorVersion}.${minorVersion}.${maintenanceVersion}"; in @@ -28,10 +27,10 @@ stdenv.mkDerivation rec { pname = "julia"; inherit version; - src = fetchzip { - url = "https://github.com/JuliaLang/julia/releases/download/v${version}/julia-${version}-full.tar.gz"; - sha256 = src_sha256; - }; + src = fetchzip { + url = "https://github.com/JuliaLang/julia/releases/download/v${version}/julia-${version}-full.tar.gz"; + sha256 = src_sha256; + }; patches = [ ./use-system-utf8proc-julia-1.3.patch @@ -89,7 +88,7 @@ stdenv.mkDerivation rec { "prefix=$(out)" "SHELL=${stdenv.shell}" - "USE_SYSTEM_BLAS=1" + (lib.optionalString (!stdenv.isDarwin) "USE_SYSTEM_BLAS=1") "USE_BLAS64=${if blas.isILP64 then "1" else "0"}" "USE_SYSTEM_LAPACK=1" diff --git a/nixpkgs/pkgs/development/compilers/julia/update-1.5.py b/nixpkgs/pkgs/development/compilers/julia/update-1.5.py new file mode 100755 index 000000000000..e37f37d456bf --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/julia/update-1.5.py @@ -0,0 +1,22 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i python3 -p python3 python3Packages.requests + +import os +import re +import requests +import subprocess + +latest = requests.get("https://api.github.com/repos/JuliaLang/julia/releases/latest").json()["tag_name"] +assert latest[0] == "v" +major, minor, patch = latest[1:].split(".") +assert major == "1" +# When a new minor version comes out we'll have to refactor/copy this update script. +assert minor == "5" + +sha256 = subprocess.check_output(["nix-prefetch-url", "--unpack", f"https://github.com/JuliaLang/julia/releases/download/v{major}.{minor}.{patch}/julia-{major}.{minor}.{patch}-full.tar.gz"], text=True).strip() + +nix_path = os.path.join(os.path.dirname(__file__), "1.5.nix") +nix0 = open(nix_path, "r").read() +nix1 = re.sub("maintenanceVersion = \".*\";", f"maintenanceVersion = \"{patch}\";", nix0) +nix2 = re.sub("src_sha256 = \".*\";", f"src_sha256 = \"{sha256}\";", nix1) +open(nix_path, "w").write(nix2) diff --git a/nixpkgs/pkgs/development/compilers/koka/default.nix b/nixpkgs/pkgs/development/compilers/koka/default.nix new file mode 100644 index 000000000000..087b0ad1153b --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/koka/default.nix @@ -0,0 +1,54 @@ +{ stdenv, buildPackages, cmake, gnumake, makeWrapper, mkDerivation, fetchFromGitHub +, alex, array, base, bytestring, cond, containers, directory, extra +, filepath, haskeline, hpack, hspec, hspec-core, json, lib, mtl +, parsec, process, regex-compat, text, time }: + +let + version = "2.1.1"; + src = fetchFromGitHub { + owner = "koka-lang"; + repo = "koka"; + rev = "v${version}"; + sha256 = "sha256-cq+dljfTKJh5NgwQfxQQP9jRcg2PQxxBVEgQ59ll36o="; + fetchSubmodules = true; + }; + kklib = stdenv.mkDerivation { + pname = "kklib"; + inherit version; + src = "${src}/kklib"; + nativeBuildInputs = [ cmake ]; + }; + runtimeDeps = [ + buildPackages.stdenv.cc + buildPackages.stdenv.cc.bintools.bintools + gnumake + cmake + ]; +in +mkDerivation rec { + pname = "koka"; + inherit version src; + isLibrary = false; + isExecutable = true; + libraryToolDepends = [ hpack ]; + executableHaskellDepends = [ + array base bytestring cond containers directory haskeline mtl + parsec process text time kklib + ]; + executableToolDepends = [ alex makeWrapper ]; + postInstall = '' + mkdir -p $out/share/koka/v${version} + cp -a lib $out/share/koka/v${version} + cp -a contrib $out/share/koka/v${version} + cp -a kklib $out/share/koka/v${version} + wrapProgram "$out/bin/koka" \ + --set CC "${lib.getBin buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}cc" \ + --prefix PATH : "${lib.makeSearchPath "bin" runtimeDeps}" + ''; + doCheck = false; + prePatch = "hpack"; + description = "Koka language compiler and interpreter"; + homepage = "https://github.com/koka-lang/koka"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ siraben sternenseemann ]; +} diff --git a/nixpkgs/pkgs/development/compilers/kotlin/default.nix b/nixpkgs/pkgs/development/compilers/kotlin/default.nix index cd613c1b33be..9154b7d76a64 100644 --- a/nixpkgs/pkgs/development/compilers/kotlin/default.nix +++ b/nixpkgs/pkgs/development/compilers/kotlin/default.nix @@ -12,7 +12,7 @@ in stdenv.mkDerivation { }; propagatedBuildInputs = [ jre ] ; - buildInputs = [ makeWrapper unzip ] ; + nativeBuildInputs = [ makeWrapper unzip ]; installPhase = '' mkdir -p $out diff --git a/nixpkgs/pkgs/development/compilers/ldc/default.nix b/nixpkgs/pkgs/development/compilers/ldc/default.nix index e0a689c7fa05..a199747546ab 100644 --- a/nixpkgs/pkgs/development/compilers/ldc/default.nix +++ b/nixpkgs/pkgs/development/compilers/ldc/default.nix @@ -1,4 +1,4 @@ import ./generic.nix { - version = "1.24.0"; - ldcSha256 = "0g5svf55i0kq55q49awmwqj9qi1n907cyrn1vjdjgs8nx6nn35gx"; + version = "1.25.1"; + ldcSha256 = "sha256-DjcW/pknvpEmTR/eXEEHECb2xEJic16evaU4CJthLUA="; } diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt.nix index 37515b5039d8..64d57e3e811d 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/10/compiler-rt.nix @@ -45,7 +45,8 @@ stdenv.mkDerivation rec { # The compiler-rt build infrastructure sniffs supported platforms on Darwin # and finds i386;x86_64;x86_64h. We only build for x86_64, so linking fails # when it tries to use libc++ and libc++api for i386. - "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" + "-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}" ]; outputs = [ "out" "dev" ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix index 3a3e384ad982..2e03112d827d 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/clang/default.nix @@ -8,7 +8,7 @@ let pname = "clang"; inherit version; - src = fetch "clang" "0kab4zmkxffg98a3rx95756jlwhxflalin5w05g1anpwxv175xbk"; + src = fetch "clang" "12sm91qx2m79cvj75a9aazf2x8xybjbd593dv6v7rxficpq8i0ha"; inherit clang-tools-extra_src; unpackPhase = '' diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt.nix index 091f327550b8..88a412f6cb4f 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/compiler-rt.nix @@ -11,7 +11,7 @@ in stdenv.mkDerivation rec { pname = "compiler-rt"; inherit version; - src = fetch pname "1z470r8c5aahdwkmflglx998n0i77j8b1c69d7cir1kf27qy6yq8"; + src = fetch pname "0x1j8ngf1zj63wlnns9vlibafq48qcm72p4jpaxkmkb4qw0grwfy"; nativeBuildInputs = [ cmake python3 llvm ]; buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi; @@ -26,6 +26,8 @@ stdenv.mkDerivation rec { "-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}" ] ++ lib.optionals (stdenv.isDarwin) [ "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" + "-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}" ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [ "-DCOMPILER_RT_BUILD_SANITIZERS=OFF" "-DCOMPILER_RT_BUILD_XRAY=OFF" diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/default.nix index ca9ef4382b4b..e4d9f45c955e 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/default.nix @@ -6,7 +6,7 @@ }: let - release_version = "11.0.1"; + release_version = "11.1.0"; candidate = ""; # empty or "rcN" dash-candidate = lib.optionalString (candidate != "") "-${candidate}"; version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs @@ -17,7 +17,7 @@ let inherit sha256; }; - clang-tools-extra_src = fetch "clang-tools-extra" "1j8n6n4l54k2lrdxh266y1fl4z8vy5dc76wsf0csk5n3ikfi38ic"; + clang-tools-extra_src = fetch "clang-tools-extra" "18n1w1hkv931xzq02b34wglbv6zd6sd0r5kb8piwvag7klj7qw3n"; tools = lib.makeExtensible (tools: let callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; }); diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/libc++/default.nix index 7a34977afe24..6adb824f539d 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/libc++/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/libc++/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version +{ lib, stdenv, fetch, fetchpatch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version , enableShared ? !stdenv.hostPlatform.isStatic }: @@ -6,7 +6,7 @@ stdenv.mkDerivation { pname = "libc++"; inherit version; - src = fetch "libcxx" "0gaybwkn76vhakvipxslp7pmv2wm7agxkqwk5f5aizhzc9lzdmcz"; + src = fetch "libcxx" "1rgqsqpgi0vkga5d7hy0iyfsqgzfz7q1xy7afdfa1snp1qjks8xv"; postUnpack = '' unpackFile ${libcxxabi.src} @@ -15,7 +15,14 @@ stdenv.mkDerivation { mv llvm-* llvm ''; - patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch; + patches = [ + (fetchpatch { + # Backported from LLVM 12, avoids clashes with commonly used "block.h" header. + url = "https://github.com/llvm/llvm-project/commit/19bc9ea480b60b607a3e303f20c7a3a2ea553369.patch"; + sha256 = "sha256-aWa66ogmPkG0xHzSfcpD0qZyZQcNKwLV44js4eiun78="; + stripLen = 1; + }) + ] ++ lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch; preConfigure = lib.optionalString stdenv.hostPlatform.isMusl '' patchShebangs utils/cat_files.py diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi.nix b/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi.nix index 22e4ac4abe4c..d941044ca605 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/libc++abi.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation { pname = "libc++abi"; inherit version; - src = fetch "libcxxabi" "0gv8pxq95gvsybldj21hdfkmm0r5cn1z7jhd72l231n0lmb70saa"; + src = fetch "libcxxabi" "1azcf31mxw59hb1x17xncnm3dyw90ylh8rqx462lvypqh3nr6c8l"; nativeBuildInputs = [ cmake ]; buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind; diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/libunwind.nix b/nixpkgs/pkgs/development/compilers/llvm/11/libunwind.nix index 1b5fe0f57880..0c635cabc0a9 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/libunwind.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/libunwind.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { pname = "libunwind"; inherit version; - src = fetch pname "0zsixkaiwp007afxlpsf5dc7wfrv8sj9wxzjw6f1r4bjv1rv3cvd"; + src = fetch pname "1vpqs2c358v8fbr1r8jmzkfqk12jllimjcfmgxga127ksq9b37nj"; nativeBuildInputs = [ cmake ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/lld.nix b/nixpkgs/pkgs/development/compilers/llvm/11/lld.nix index cead886f49b7..1a16184a6e71 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/lld.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/lld.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { pname = "lld"; inherit version; - src = fetch pname "1dq82dkam8x2niha18v7ckh30zmzyclydzipqkf7h41r3ah0vfk0"; + src = fetch pname "1kk61i7z5bi9i11rzsd2b388d42if1c7a45zkaa4mk0yps67hyh1"; nativeBuildInputs = [ cmake ]; buildInputs = [ llvm libxml2 ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/lldb.nix b/nixpkgs/pkgs/development/compilers/llvm/11/lldb.nix index fcc73cfdeb6d..2f54305736ac 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/lldb.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/lldb.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation (rec { pname = "lldb"; inherit version; - src = fetch pname "1yzjbsn81l2r3v9js2fxrglkwvz1f2rxyxh6430nydbrs0bqklz8"; + src = fetch pname "1vlyg015dyng43xqb8cg2l6r9ix8klibxsajazbfnckdnh54hwxj"; patches = [ ./lldb-procfs.patch ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/llvm.nix b/nixpkgs/pkgs/development/compilers/llvm/11/llvm.nix index 868da1a5b207..cb44643ff78f 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/llvm.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/llvm.nix @@ -32,8 +32,8 @@ in stdenv.mkDerivation (rec { pname = "llvm"; inherit version; - src = fetch pname "0a5mb65xa5bal8q6cb37xgkqis2bip87fsafgq3wbsva9cjprn6c"; - polly_src = fetch "polly" "1smrqm9s0r2g9h0v0nil6y9wn2ih4l5bddk4dhgn538ngc7cxpq8"; + src = fetch pname "199yq3a214avcbi4kk2q0ajriifkvsr0l2dkx3a666m033ihi1ff"; + polly_src = fetch "polly" "031r23ijhx7v93a5n33m2nc0x9xyqmx0d8xg80z7q971p6qd63sq"; unpackPhase = '' unpackFile $src diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix index 5503a98ae5f6..c99358cd2878 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/11/openmp.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetch +, fetchpatch , cmake , llvm , perl @@ -11,7 +12,16 @@ stdenv.mkDerivation rec { pname = "openmp"; inherit version; - src = fetch pname "19rcv25y41ww3zlfg0lwprzijl3cn7jgc0v5540jzpp7j0ds45ad"; + src = fetch pname "0bh5cswgpc79awlq8j5i7hp355adaac7s6zaz0zwp6mkflxli1yi"; + + patches = [ + # Fix compilation on aarch64-darwin, remove after the next release. + (fetchpatch { + url = "https://github.com/llvm/llvm-project/commit/7b5254223acbf2ef9cd278070c5a84ab278d7e5f.patch"; + sha256 = "sha256-A+9/IVIoazu68FK5H5CiXcOEYe1Hpp4xTx2mIw7m8Es="; + stripLen = 1; + }) + ]; nativeBuildInputs = [ cmake perl ]; buildInputs = [ llvm ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/bintools.nix b/nixpkgs/pkgs/development/compilers/llvm/12/bintools.nix new file mode 100644 index 000000000000..53f7941e3369 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/bintools.nix @@ -0,0 +1,29 @@ +{ runCommand, stdenv, llvm, lld, version }: + +let + prefix = + if stdenv.hostPlatform != stdenv.targetPlatform + then "${stdenv.targetPlatform.config}-" + else ""; +in runCommand "llvm-binutils-${version}" { preferLocalBuild = true; } '' + mkdir -p $out/bin + for prog in ${lld}/bin/*; do + ln -s $prog $out/bin/${prefix}$(basename $prog) + done + for prog in ${llvm}/bin/*; do + ln -sf $prog $out/bin/${prefix}$(basename $prog) + done + + ln -s ${llvm}/bin/llvm-ar $out/bin/${prefix}ar + ln -s ${llvm}/bin/llvm-as $out/bin/${prefix}as + ln -s ${llvm}/bin/llvm-dwp $out/bin/${prefix}dwp + ln -s ${llvm}/bin/llvm-nm $out/bin/${prefix}nm + ln -s ${llvm}/bin/llvm-objcopy $out/bin/${prefix}objcopy + ln -s ${llvm}/bin/llvm-objdump $out/bin/${prefix}objdump + ln -s ${llvm}/bin/llvm-ranlib $out/bin/${prefix}ranlib + ln -s ${llvm}/bin/llvm-readelf $out/bin/${prefix}readelf + ln -s ${llvm}/bin/llvm-size $out/bin/${prefix}size + ln -s ${llvm}/bin/llvm-strip $out/bin/${prefix}strip + + ln -s ${lld}/bin/lld $out/bin/${prefix}ld +'' diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix new file mode 100644 index 000000000000..d90d019e6d51 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix @@ -0,0 +1,110 @@ +{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld +, fixDarwinDylibNames +, enableManpages ? false +}: + +let + self = stdenv.mkDerivation ({ + pname = "clang"; + inherit version; + + src = fetch "clang" "185r9rr254v75ja33nmm53j85lcnkj7bzsl18wvnd37jmz2nfxa5"; + inherit clang-tools-extra_src; + + unpackPhase = '' + unpackFile $src + mv clang-* clang + sourceRoot=$PWD/clang + unpackFile ${clang-tools-extra_src} + ''; + + nativeBuildInputs = [ cmake python3 lld ] + ++ lib.optional enableManpages python3.pkgs.sphinx + ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames; + + buildInputs = [ libxml2 llvm ]; + + cmakeFlags = [ + "-DCMAKE_CXX_FLAGS=-std=c++14" + "-DCLANGD_BUILD_XPC=OFF" + ] ++ lib.optionals enableManpages [ + "-DCLANG_INCLUDE_DOCS=ON" + "-DLLVM_ENABLE_SPHINX=ON" + "-DSPHINX_OUTPUT_MAN=ON" + "-DSPHINX_OUTPUT_HTML=OFF" + "-DSPHINX_WARNINGS_AS_ERRORS=OFF" + ]; + + patches = [ + ./purity.patch + # https://reviews.llvm.org/D51899 + ]; + + postPatch = '' + sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \ + -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \ + lib/Driver/ToolChains/*.cpp + + # Patch for standalone doc building + sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt + '' + lib.optionalString stdenv.hostPlatform.isMusl '' + sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp + ''; + + outputs = [ "out" "lib" "python" ]; + + # Clang expects to find LLVMgold in its own prefix + postInstall = '' + if [ -e ${llvm}/lib/LLVMgold.so ]; then + ln -sv ${llvm}/lib/LLVMgold.so $out/lib + fi + + ln -sv $out/bin/clang $out/bin/cpp + + # Move libclang to 'lib' output + moveToOutput "lib/libclang.*" "$lib" + moveToOutput "lib/libclang-cpp.*" "$lib" + substituteInPlace $out/lib/cmake/clang/ClangTargets-release.cmake \ + --replace "\''${_IMPORT_PREFIX}/lib/libclang." "$lib/lib/libclang." \ + --replace "\''${_IMPORT_PREFIX}/lib/libclang-cpp." "$lib/lib/libclang-cpp." + + mkdir -p $python/bin $python/share/clang/ + mv $out/bin/{git-clang-format,scan-view} $python/bin + if [ -e $out/bin/set-xcode-analyzer ]; then + mv $out/bin/set-xcode-analyzer $python/bin + fi + mv $out/share/clang/*.py $python/share/clang + rm $out/bin/c-index-test + ''; + + passthru = { + isClang = true; + inherit llvm; + }; + + meta = { + description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler"; + homepage = "https://llvm.org/"; + license = lib.licenses.ncsa; + platforms = lib.platforms.all; + }; + } // lib.optionalAttrs enableManpages { + pname = "clang-manpages"; + + buildPhase = '' + make docs-clang-man + ''; + + installPhase = '' + mkdir -p $out/share/man/man1 + # Manually install clang manpage + cp docs/man/*.1 $out/share/man/man1/ + ''; + + outputs = [ "out" ]; + + doCheck = false; + + meta.description = "man page for Clang ${version}"; + }); +in self diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/clang/purity.patch b/nixpkgs/pkgs/development/compilers/llvm/12/clang/purity.patch new file mode 100644 index 000000000000..deb230a36c5b --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/clang/purity.patch @@ -0,0 +1,28 @@ +From 4add81bba40dcec62c4ea4481be8e35ac53e89d8 Mon Sep 17 00:00:00 2001 +From: Will Dietz <w@wdtz.org> +Date: Thu, 18 May 2017 11:56:12 -0500 +Subject: [PATCH] "purity" patch for 5.0 + +--- + lib/Driver/ToolChains/Gnu.cpp | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp +index fe3c0191bb..c6a482bece 100644 +--- a/lib/Driver/ToolChains/Gnu.cpp ++++ b/lib/Driver/ToolChains/Gnu.cpp +@@ -487,12 +487,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA, + if (!IsStatic) { + if (Args.hasArg(options::OPT_rdynamic)) + CmdArgs.push_back("-export-dynamic"); +- +- if (!Args.hasArg(options::OPT_shared) && !IsStaticPIE) { +- CmdArgs.push_back("-dynamic-linker"); +- CmdArgs.push_back(Args.MakeArgString(Twine(D.DyldPrefix) + +- ToolChain.getDynamicLinker(Args))); +- } + } + + CmdArgs.push_back("-o"); +-- +2.11.0 diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-X86-support-extension.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-X86-support-extension.patch new file mode 100644 index 000000000000..f6f9336ad5ad --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-X86-support-extension.patch @@ -0,0 +1,23 @@ +diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt +index 3a66dd9c3fb..7efc85d9f9f 100644 +--- a/lib/builtins/CMakeLists.txt ++++ b/lib/builtins/CMakeLists.txt +@@ -301,6 +301,10 @@ if (NOT MSVC) + i386/umoddi3.S + ) + ++ set(i486_SOURCES ${i386_SOURCES}) ++ set(i586_SOURCES ${i386_SOURCES}) ++ set(i686_SOURCES ${i386_SOURCES}) ++ + if (WIN32) + set(i386_SOURCES + ${i386_SOURCES} +@@ -608,6 +612,7 @@ else () + endif() + + foreach (arch ${BUILTIN_SUPPORTED_ARCH}) ++ message("arch: ${arch}") + if (CAN_TARGET_${arch}) + # For ARM archs, exclude any VFP builtins if VFP is not supported + if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$") diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-armv7l.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-armv7l.patch new file mode 100644 index 000000000000..120cfe6feb2a --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-armv7l.patch @@ -0,0 +1,32 @@ +diff -ur compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake +--- compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake 2020-03-24 00:01:02.000000000 +0900 ++++ compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake 2020-05-10 03:42:00.883450706 +0900 +@@ -24,7 +24,7 @@ + + + set(ARM64 aarch64) +-set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k) ++set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k armv7l) + set(HEXAGON hexagon) + set(X86 i386) + set(X86_64 x86_64) +diff -ur compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt +--- compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt 2020-03-24 00:01:02.000000000 +0900 ++++ compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt 2020-05-10 03:44:49.468579650 +0900 +@@ -474,6 +474,7 @@ + set(armv7_SOURCES ${arm_SOURCES}) + set(armv7s_SOURCES ${arm_SOURCES}) + set(armv7k_SOURCES ${arm_SOURCES}) ++set(armv7l_SOURCES ${arm_SOURCES}) + set(arm64_SOURCES ${aarch64_SOURCES}) + + # macho_embedded archs +@@ -595,7 +596,7 @@ + foreach (arch ${BUILTIN_SUPPORTED_ARCH}) + if (CAN_TARGET_${arch}) + # For ARM archs, exclude any VFP builtins if VFP is not supported +- if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$") ++ if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7l|armv7m|armv7em)$") + string(REPLACE ";" " " _TARGET_${arch}_CFLAGS "${TARGET_${arch}_CFLAGS}") + check_compile_definition(__VFP_FP__ "${CMAKE_C_FLAGS} ${_TARGET_${arch}_CFLAGS}" COMPILER_RT_HAS_${arch}_VFP) + if(NOT COMPILER_RT_HAS_${arch}_VFP) diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-codesign.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-codesign.patch new file mode 100644 index 000000000000..3cc12b94b200 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt-codesign.patch @@ -0,0 +1,33 @@ +From 3dec5f3475a26aeb4678627795c4b67c6b7b4785 Mon Sep 17 00:00:00 2001 +From: Will Dietz <w@wdtz.org> +Date: Tue, 19 Sep 2017 13:13:06 -0500 +Subject: [PATCH] remove codesign use on Apple, disable ios sim testing that + needs it + +--- + cmake/Modules/AddCompilerRT.cmake | 8 ------ + test/asan/CMakeLists.txt | 52 --------------------------------------- + test/tsan/CMakeLists.txt | 47 ----------------------------------- + 3 files changed, 107 deletions(-) + +diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake +index bc5fb9ff7..b64eb4246 100644 +--- a/cmake/Modules/AddCompilerRT.cmake ++++ b/cmake/Modules/AddCompilerRT.cmake +@@ -210,14 +210,6 @@ function(add_compiler_rt_runtime name type) + set_target_properties(${libname} PROPERTIES IMPORT_PREFIX "") + set_target_properties(${libname} PROPERTIES IMPORT_SUFFIX ".lib") + endif() +- if(APPLE) +- # Ad-hoc sign the dylibs +- add_custom_command(TARGET ${libname} +- POST_BUILD +- COMMAND codesign --sign - $<TARGET_FILE:${libname}> +- WORKING_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR} +- ) +- endif() + endif() + install(TARGETS ${libname} + ARCHIVE DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR} +2.14.1 + diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt.nix new file mode 100644 index 000000000000..e6ac77b7d265 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt.nix @@ -0,0 +1,90 @@ +{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }: + +let + + useLLVM = stdenv.hostPlatform.useLLVM or false; + bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none"; + inherit (stdenv.hostPlatform) isMusl; + +in + +stdenv.mkDerivation rec { + pname = "compiler-rt"; + inherit version; + src = fetch pname "1x0z875nbdpzhr4qb7linm6r9swvdf6dvwqy1s22pbn4wdcw0cvf"; + + nativeBuildInputs = [ cmake python3 llvm ]; + buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi; + + NIX_CFLAGS_COMPILE = [ + "-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0" + ]; + + cmakeFlags = [ + "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON" + "-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}" + "-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}" + ] ++ lib.optionals (stdenv.isDarwin) [ + "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" + ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [ + "-DCOMPILER_RT_BUILD_SANITIZERS=OFF" + "-DCOMPILER_RT_BUILD_XRAY=OFF" + "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF" + "-DCOMPILER_RT_BUILD_PROFILE=OFF" + ] ++ lib.optionals (useLLVM || bareMetal) [ + "-DCMAKE_C_COMPILER_WORKS=ON" + "-DCMAKE_CXX_COMPILER_WORKS=ON" + "-DCOMPILER_RT_BAREMETAL_BUILD=ON" + "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" + ] ++ lib.optionals (useLLVM) [ + "-DCOMPILER_RT_BUILD_BUILTINS=ON" + "-DCMAKE_C_FLAGS=-nodefaultlibs" + #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program + "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY" + ] ++ lib.optionals (bareMetal) [ + "-DCOMPILER_RT_OS_DIR=baremetal" + ]; + + outputs = [ "out" "dev" ]; + + patches = [ + ./compiler-rt-codesign.patch # Revert compiler-rt commit that makes codesign mandatory + ./compiler-rt-X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config + ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch + ++ lib.optional stdenv.hostPlatform.isAarch32 ./compiler-rt-armv7l.patch; + + + # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks + # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra + # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd + # get no binary cache for the entire platform. If you really find yourself wanting the TSAN, make this controllable by + # a flag and turn the flag off during the stdenv build. + postPatch = lib.optionalString (!stdenv.isDarwin) '' + substituteInPlace cmake/builtin-config-ix.cmake \ + --replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)' + '' + lib.optionalString stdenv.isDarwin '' + substituteInPlace cmake/builtin-config-ix.cmake \ + --replace 'set(ARM64 arm64 arm64e)' 'set(ARM64)' + substituteInPlace cmake/config-ix.cmake \ + --replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)' + '' + lib.optionalString (useLLVM) '' + substituteInPlace lib/builtins/int_util.c \ + --replace "#include <stdlib.h>" "" + substituteInPlace lib/builtins/clear_cache.c \ + --replace "#include <assert.h>" "" + substituteInPlace lib/builtins/cpu_model.c \ + --replace "#include <assert.h>" "" + ''; + + # Hack around weird upsream RPATH bug + postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' + ln -s "$out/lib"/*/* "$out/lib" + '' + lib.optionalString (useLLVM) '' + ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbegin.o + ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtend.o + ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/crtbeginS.o + ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o + ''; + +} diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/default.nix new file mode 100644 index 000000000000..593db716ac6b --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/default.nix @@ -0,0 +1,204 @@ +{ lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs +, libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith +, buildPackages +, buildLlvmTools # tools, but from the previous stage, for cross +, targetLlvmLibraries # libraries, but from the next stage, for cross +, darwin +}: + +let + release_version = "12.0.0"; + candidate = "rc5"; # empty or "rcN" + dash-candidate = lib.optionalString (candidate != "") "-${candidate}"; + version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs + targetConfig = stdenv.targetPlatform.config; + + fetch = name: sha256: fetchurl { + url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/${name}-${release_version}${candidate}.src.tar.xz"; + inherit sha256; + }; + + clang-tools-extra_src = fetch "clang-tools-extra" "1hga9k5m60ywmr7m69jf1v6vj1ra1n6ybv1abzlz94f5q22i1a02"; + + tools = lib.makeExtensible (tools: let + callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; }); + mkExtraBuildCommands = cc: '' + rsrc="$out/resource-root" + mkdir "$rsrc" + ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc" + ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib" + ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share" + echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags + ''; + in { + + llvm = callPackage ./llvm.nix { }; + + clang-unwrapped = callPackage ./clang { + inherit (tools) lld; + inherit clang-tools-extra_src; + }; + + # disabled until recommonmark supports sphinx 3 + #Llvm-manpages = lowPrio (tools.llvm.override { + # enableManpages = true; + # python3 = pkgs.python3; # don't use python-boot + #}); + + clang-manpages = lowPrio (tools.clang-unwrapped.override { + enableManpages = true; + python3 = pkgs.python3; # don't use python-boot + }); + + # disabled until recommonmark supports sphinx 3 + # lldb-manpages = lowPrio (tools.lldb.override { + # enableManpages = true; + # python3 = pkgs.python3; # don't use python-boot + # }); + + libclang = tools.clang-unwrapped.lib; + + clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + + libstdcxxClang = wrapCCWith rec { + cc = tools.clang-unwrapped; + # libstdcxx is taken from gcc in an ad-hoc way in cc-wrapper. + libcxx = null; + extraPackages = [ + targetLlvmLibraries.compiler-rt + ]; + extraBuildCommands = mkExtraBuildCommands cc; + }; + + libcxxClang = wrapCCWith rec { + cc = tools.clang-unwrapped; + libcxx = targetLlvmLibraries.libcxx; + extraPackages = [ + targetLlvmLibraries.libcxxabi + targetLlvmLibraries.compiler-rt + ]; + extraBuildCommands = mkExtraBuildCommands cc; + }; + + lld = callPackage ./lld.nix { + libunwind = libraries.libunwind; + }; + + lldb = callPackage ./lldb.nix { + inherit (darwin) libobjc bootstrap_cmds; + inherit (darwin.apple_sdk.libs) xpc; + inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa; + }; + + # Below, is the LLVM bootstrapping logic. It handles building a + # fully LLVM toolchain from scratch. No GCC toolchain should be + # pulled in. As a consequence, it is very quick to build different + # targets provided by LLVM and we can also build for what GCC + # doesnβt support like LLVM. Probably we should move to some other + # file. + + bintools = callPackage ./bintools.nix {}; + + lldClang = wrapCCWith rec { + cc = tools.clang-unwrapped; + libcxx = targetLlvmLibraries.libcxx; + bintools = wrapBintoolsWith { + inherit (tools) bintools; + }; + extraPackages = [ + targetLlvmLibraries.libcxxabi + targetLlvmLibraries.compiler-rt + ] ++ lib.optionals (!stdenv.targetPlatform.isWasm) [ + targetLlvmLibraries.libunwind + ]; + extraBuildCommands = '' + echo "-rtlib=compiler-rt -Wno-unused-command-line-argument" >> $out/nix-support/cc-cflags + echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags + '' + lib.optionalString (!stdenv.targetPlatform.isWasm) '' + echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags + '' + lib.optionalString stdenv.targetPlatform.isWasm '' + echo "-fno-exceptions" >> $out/nix-support/cc-cflags + '' + mkExtraBuildCommands cc; + }; + + lldClangNoLibcxx = wrapCCWith rec { + cc = tools.clang-unwrapped; + libcxx = null; + bintools = wrapBintoolsWith { + inherit (tools) bintools; + }; + extraPackages = [ + targetLlvmLibraries.compiler-rt + ]; + extraBuildCommands = '' + echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags + echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags + echo "-nostdlib++" >> $out/nix-support/cc-cflags + '' + mkExtraBuildCommands cc; + }; + + lldClangNoLibc = wrapCCWith rec { + cc = tools.clang-unwrapped; + libcxx = null; + bintools = wrapBintoolsWith { + inherit (tools) bintools; + libc = null; + }; + extraPackages = [ + targetLlvmLibraries.compiler-rt + ]; + extraBuildCommands = '' + echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags + echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags + '' + mkExtraBuildCommands cc; + }; + + lldClangNoCompilerRt = wrapCCWith { + cc = tools.clang-unwrapped; + libcxx = null; + bintools = wrapBintoolsWith { + inherit (tools) bintools; + libc = null; + }; + extraPackages = [ ]; + extraBuildCommands = '' + echo "-nostartfiles" >> $out/nix-support/cc-cflags + ''; + }; + + }); + + libraries = lib.makeExtensible (libraries: let + callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; }); + in { + + compiler-rt = callPackage ./compiler-rt.nix ({} // + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt; + })); + + stdenv = overrideCC stdenv buildLlvmTools.clang; + + libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang; + + libcxx = callPackage ./libc++ ({} // + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx; + })); + + libcxxabi = callPackage ./libc++abi.nix ({} // + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx; + libunwind = libraries.libunwind; + })); + + openmp = callPackage ./openmp.nix {}; + + libunwind = callPackage ./libunwind.nix ({} // + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx; + })); + + }); + +in { inherit tools libraries; } // libraries // tools diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libc++/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libc++/default.nix new file mode 100644 index 000000000000..757651c0f4c2 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/libc++/default.nix @@ -0,0 +1,49 @@ +{ lib, stdenv, fetch, fetchpatch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version +, enableShared ? !stdenv.hostPlatform.isStatic +}: + +stdenv.mkDerivation { + pname = "libc++"; + inherit version; + + src = fetch "libcxx" "01abh553dvjgk5cjzzp0ghmg00laqbr4ar4frdhyhpbwhhmwc880"; + + postUnpack = '' + unpackFile ${libcxxabi.src} + mv libcxxabi-* libcxxabi + unpackFile ${llvm.src} + mv llvm-* llvm + ''; + + patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch; + + preConfigure = lib.optionalString stdenv.hostPlatform.isMusl '' + patchShebangs utils/cat_files.py + ''; + + nativeBuildInputs = [ cmake python3 ] + ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; + + buildInputs = [ libcxxabi ]; + + cmakeFlags = [ + "-DLIBCXX_CXX_ABI=libcxxabi" + ] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1" + ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON" + ++ lib.optional stdenv.hostPlatform.isWasm [ + "-DLIBCXX_ENABLE_THREADS=OFF" + "-DLIBCXX_ENABLE_FILESYSTEM=OFF" + "-DLIBCXX_ENABLE_EXCEPTIONS=OFF" + ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF"; + + passthru = { + isLLVM = true; + }; + + meta = { + homepage = "https://libcxx.llvm.org/"; + description = "A new implementation of the C++ standard library, targeting C++11"; + license = with lib.licenses; [ ncsa mit ]; + platforms = lib.platforms.all; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libc++abi.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libc++abi.nix new file mode 100644 index 000000000000..e35480c7bf24 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/libc++abi.nix @@ -0,0 +1,67 @@ +{ lib, stdenv, cmake, python3, fetch, libcxx, libunwind, llvm, version +, enableShared ? !stdenv.hostPlatform.isStatic +}: + +stdenv.mkDerivation { + pname = "libc++abi"; + inherit version; + + src = fetch "libcxxabi" "0mjj4f63ix4j1b72bgzpcki7mzf3qszrq7snqhiq0c5s73skkwx0"; + + nativeBuildInputs = [ cmake python3 ]; + buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind; + + cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [ + "-DLLVM_ENABLE_LIBCXX=ON" + "-DLIBCXXABI_USE_LLVM_UNWINDER=ON" + ] ++ lib.optionals stdenv.hostPlatform.isWasm [ + "-DLIBCXXABI_ENABLE_THREADS=OFF" + "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF" + ] ++ lib.optionals (!enableShared) [ + "-DLIBCXXABI_ENABLE_SHARED=OFF" + ]; + + postUnpack = '' + unpackFile ${libcxx.src} + mv libcxx-* libcxx + unpackFile ${llvm.src} + mv llvm-* llvm + '' + lib.optionalString stdenv.isDarwin '' + export TRIPLE=x86_64-apple-darwin + '' + lib.optionalString stdenv.hostPlatform.isMusl '' + patch -p1 -d libcxx -i ${../libcxx-0001-musl-hacks.patch} + '' + lib.optionalString stdenv.hostPlatform.isWasm '' + patch -p1 -d llvm -i ${./libcxxabi-wasm.patch} + ''; + + installPhase = if stdenv.isDarwin + then '' + for file in lib/*.dylib; do + # this should be done in CMake, but having trouble figuring out + # the magic combination of necessary CMake variables + # if you fancy a try, take a look at + # https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling + install_name_tool -id $out/$file $file + done + make install + install -d 755 $out/include + install -m 644 ../include/*.h $out/include + '' + else '' + install -d -m 755 $out/include $out/lib + install -m 644 lib/libc++abi.a $out/lib + install -m 644 ../include/cxxabi.h $out/include + '' + lib.optionalString enableShared '' + install -m 644 lib/libc++abi.so.1.0 $out/lib + ln -s libc++abi.so.1.0 $out/lib/libc++abi.so + ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1 + ''; + + meta = { + homepage = "https://libcxxabi.llvm.org/"; + description = "A new implementation of low level support for a standard C++ library"; + license = with lib.licenses; [ ncsa mit ]; + maintainers = with lib.maintainers; [ vlstill ]; + platforms = lib.platforms.all; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi-wasm.patch b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi-wasm.patch new file mode 100644 index 000000000000..4ebfe46aa813 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi-wasm.patch @@ -0,0 +1,16 @@ +diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake +index 15497d405e0..33f7f18193a 100644 +--- a/cmake/modules/HandleLLVMOptions.cmake ++++ b/cmake/modules/HandleLLVMOptions.cmake +@@ -127,7 +127,10 @@ else(WIN32) + set(LLVM_HAVE_LINK_VERSION_SCRIPT 1) + endif() + else(FUCHSIA OR UNIX) +- MESSAGE(SEND_ERROR "Unable to determine platform") ++ if(${CMAKE_SYSTEM_NAME} MATCHES "Wasi") ++ else() ++ MESSAGE(SEND_ERROR "Unable to determine platform") ++ endif() + endif(FUCHSIA OR UNIX) + endif(WIN32) + diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libunwind.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind.nix new file mode 100644 index 000000000000..83e76c0c56cd --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind.nix @@ -0,0 +1,21 @@ +{ lib, stdenv, version, fetch, libcxx, llvm, cmake +, enableShared ? !stdenv.hostPlatform.isStatic +}: + +stdenv.mkDerivation rec { + pname = "libunwind"; + inherit version; + + src = fetch pname "0kaq75ygzv9dqfsx27pi5a0clipdjq6a9vghhb89d8k1rf20lslh"; + + postUnpack = '' + unpackFile ${libcxx.src} + mv libcxx-* libcxx + unpackFile ${llvm.src} + mv llvm-* llvm + ''; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF"; +} diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lld.nix b/nixpkgs/pkgs/development/compilers/llvm/12/lld.nix new file mode 100644 index 000000000000..a5e4ab834ecf --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/lld.nix @@ -0,0 +1,39 @@ +{ lib, stdenv +, fetch +, libunwind +, cmake +, libxml2 +, llvm +, version +}: + +stdenv.mkDerivation rec { + pname = "lld"; + inherit version; + + src = fetch pname "044lv1d9am2xmbc3pvssxkkiyxyv72n2xkgk8z3p9k72h3ay00q3"; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ llvm libxml2 ]; + + postPatch = '' + substituteInPlace MachO/CMakeLists.txt --replace \ + '(''${LLVM_MAIN_SRC_DIR}/' '(' + mkdir -p libunwind/include + tar -xf "${libunwind.src}" --wildcards -C libunwind/include --strip-components=2 "libunwind-*/include/" + ''; + + outputs = [ "out" "dev" ]; + + postInstall = '' + moveToOutput include "$dev" + moveToOutput lib "$dev" + ''; + + meta = { + description = "The LLVM Linker"; + homepage = "https://lld.llvm.org/"; + license = lib.licenses.ncsa; + platforms = lib.platforms.all; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lldb-procfs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/lldb-procfs.patch new file mode 100644 index 000000000000..b075dbaeee0a --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/lldb-procfs.patch @@ -0,0 +1,31 @@ +--- a/source/Plugins/Process/Linux/Procfs.h ++++ b/source/Plugins/Process/Linux/Procfs.h +@@ -11,21 +11,12 @@ + // sys/procfs.h on Android/Linux for all supported architectures. + + #include <sys/ptrace.h> ++#include <asm/ptrace.h> + +-#ifdef __ANDROID__ +-#if defined(__arm64__) || defined(__aarch64__) +-typedef unsigned long elf_greg_t; +-typedef elf_greg_t +- elf_gregset_t[(sizeof(struct user_pt_regs) / sizeof(elf_greg_t))]; +-typedef struct user_fpsimd_state elf_fpregset_t; +-#ifndef NT_FPREGSET +-#define NT_FPREGSET NT_PRFPREG +-#endif // NT_FPREGSET +-#elif defined(__mips__) +-#ifndef NT_FPREGSET +-#define NT_FPREGSET NT_PRFPREG +-#endif // NT_FPREGSET +-#endif +-#else // __ANDROID__ ++#if !defined(__GLIBC__) && defined(__powerpc__) ++#define pt_regs musl_pt_regs ++#include <sys/procfs.h> ++#undef pt_regs ++#else + #include <sys/procfs.h> +-#endif // __ANDROID__ ++#endif diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lldb.nix b/nixpkgs/pkgs/development/compilers/llvm/12/lldb.nix new file mode 100644 index 000000000000..67de0c187415 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/lldb.nix @@ -0,0 +1,103 @@ +{ lib, stdenv +, fetch +, cmake +, zlib +, ncurses +, swig +, which +, libedit +, libxml2 +, llvm +, clang-unwrapped +, python3 +, version +, libobjc +, xpc +, Foundation +, bootstrap_cmds +, Carbon +, Cocoa +, lit +, enableManpages ? false +}: + +stdenv.mkDerivation (rec { + pname = "lldb"; + inherit version; + + src = fetch pname "0q4p4s5ws1zszs3i4da5w5fnxkpny0q3fr1s1sh7jp9wcwxbxiqq"; + + patches = [ ./lldb-procfs.patch ]; + + nativeBuildInputs = [ cmake python3 which swig lit ] + ++ lib.optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ]; + + buildInputs = [ + ncurses + zlib + libedit + libxml2 + llvm + ] + ++ lib.optionals stdenv.isDarwin [ + libobjc + xpc + Foundation + bootstrap_cmds + Carbon + Cocoa + ]; + + hardeningDisable = [ "format" ]; + + cmakeFlags = [ + "-DLLVM_ENABLE_RTTI=OFF" + "-DClang_DIR=${clang-unwrapped}/lib/cmake" + "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit" + ] ++ lib.optionals stdenv.isDarwin [ + "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON" + ] ++ lib.optionals (!stdenv.isDarwin) [ + "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic + ] ++ lib.optionals enableManpages [ + "-DLLVM_ENABLE_SPHINX=ON" + "-DSPHINX_OUTPUT_MAN=ON" + "-DSPHINX_OUTPUT_HTML=OFF" + ]; + + postInstall = '' + # Editor support + # vscode: + install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json + mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin + ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin + ''; + + meta = with lib; { + description = "A next-generation high-performance debugger"; + homepage = "https://lldb.llvm.org"; + license = licenses.ncsa; + platforms = platforms.all; + }; +} // lib.optionalAttrs enableManpages { + pname = "lldb-manpages"; + + buildPhase = '' + make docs-lldb-man + ''; + + propagatedBuildInputs = []; + # manually install lldb man page + installPhase = '' + mkdir -p $out/share/man/man1 + install docs/man/lldb.1 -t $out/share/man/man1/ + ''; + + postPatch = null; + postInstall = null; + + outputs = [ "out" ]; + + doCheck = false; + + meta.description = "man pages for LLDB ${version}"; +}) diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/llvm-outputs.patch b/nixpkgs/pkgs/development/compilers/llvm/12/llvm-outputs.patch new file mode 100644 index 000000000000..40096fa3497f --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/llvm-outputs.patch @@ -0,0 +1,26 @@ +diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp +index 94d426b..37f7794 100644 +--- a/tools/llvm-config/llvm-config.cpp ++++ b/tools/llvm-config/llvm-config.cpp +@@ -333,6 +333,21 @@ int main(int argc, char **argv) { + ActiveIncludeOption = "-I" + ActiveIncludeDir; + } + ++ /// Nix-specific multiple-output handling: override ActiveLibDir if --link-shared ++ if (!IsInDevelopmentTree) { ++ bool WantShared = true; ++ for (int i = 1; i < argc; ++i) { ++ StringRef Arg = argv[i]; ++ if (Arg == "--link-shared") ++ WantShared = true; ++ else if (Arg == "--link-static") ++ WantShared = false; // the last one wins ++ } ++ ++ if (WantShared) ++ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; ++ } ++ + /// We only use `shared library` mode in cases where the static library form + /// of the components provided are not available; note however that this is + /// skipped if we're run from within the build dir. However, once installed, diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/llvm.nix b/nixpkgs/pkgs/development/compilers/llvm/12/llvm.nix new file mode 100644 index 000000000000..6e6127ba9494 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/llvm.nix @@ -0,0 +1,189 @@ +{ lib, stdenv +, fetch +, cmake +, python3 +, libffi +, libbfd +, libpfm +, libxml2 +, ncurses +, version +, release_version +, zlib +, buildPackages +, debugVersion ? false +, enableManpages ? false +, enableSharedLibraries ? true +, enablePFM ? !(stdenv.isDarwin + || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245 + || stdenv.isAarch32 # broken for the armv7l builder +) +, enablePolly ? false +}: + +let + inherit (lib) optional optionals optionalString; + + # Used when creating a version-suffixed symlink of libLLVM.dylib + shortVersion = with lib; + concatStringsSep "." (take 1 (splitString "." release_version)); + +in stdenv.mkDerivation (rec { + pname = "llvm"; + inherit version; + + src = fetch pname "088dyv7hppidl3rqfsjdibvn4d3a74896fg2sz4dwaxlg19way93"; + polly_src = fetch "polly" "1qj7gkfr1yrsrz6j086l9p6d2kyyln15fmfiab4isn96g1dhsfb5"; + + unpackPhase = '' + unpackFile $src + mv llvm-${release_version}* llvm + sourceRoot=$PWD/llvm + '' + optionalString enablePolly '' + unpackFile $polly_src + mv polly-* $sourceRoot/tools/polly + ''; + + outputs = [ "out" "python" ] + ++ optional enableSharedLibraries "lib"; + + nativeBuildInputs = [ cmake python3 ] + ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ]; + + buildInputs = [ libxml2 libffi ] + ++ optional enablePFM libpfm; # exegesis + + propagatedBuildInputs = [ ncurses zlib ]; + + postPatch = optionalString stdenv.isDarwin '' + substituteInPlace cmake/modules/AddLLVM.cmake \ + --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ + --replace 'set(_install_rpath "@loader_path/../lib''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" + '' + # Patch llvm-config to return correct library path based on --link-{shared,static}. + + optionalString (enableSharedLibraries) '' + substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib + patch -p1 < ./llvm-outputs.patch + '' + '' + # FileSystem permissions tests fail with various special bits + substituteInPlace unittests/Support/CMakeLists.txt \ + --replace "Path.cpp" "" + rm unittests/Support/Path.cpp + substituteInPlace unittests/IR/CMakeLists.txt \ + --replace "PassBuilderCallbacksTest.cpp" "" + rm unittests/IR/PassBuilderCallbacksTest.cpp + '' + optionalString stdenv.hostPlatform.isMusl '' + patch -p1 -i ${../TLI-musl.patch} + substituteInPlace unittests/Support/CMakeLists.txt \ + --replace "add_subdirectory(DynamicLibrary)" "" + rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp + # valgrind unhappy with musl or glibc, but fails w/musl only + rm test/CodeGen/AArch64/wineh4.mir + '' + optionalString stdenv.hostPlatform.isAarch32 '' + # skip failing X86 test cases on 32-bit ARM + rm test/DebugInfo/X86/convert-debugloc.ll + rm test/DebugInfo/X86/convert-inlined.ll + rm test/DebugInfo/X86/convert-linked.ll + rm test/tools/dsymutil/X86/op-convert.test + '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") '' + # Seems to require certain floating point hardware (NEON?) + rm test/ExecutionEngine/frem.ll + '' + '' + patchShebangs test/BugPoint/compile-custom.ll.py + ''; + + # hacky fix: created binaries need to be run before installation + preBuild = '' + mkdir -p $out/ + ln -sv $PWD/lib $out + ''; + + # E.g. mesa.drivers use the build-id as a cache key (see #93946): + LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1"; + + cmakeFlags = with stdenv; [ + "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" + "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc + "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_ENABLE_FFI=ON" + "-DLLVM_ENABLE_RTTI=ON" + "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" + "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" + "-DLLVM_ENABLE_DUMP=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ] ++ optionals enableManpages [ + "-DLLVM_BUILD_DOCS=ON" + "-DLLVM_ENABLE_SPHINX=ON" + "-DSPHINX_OUTPUT_MAN=ON" + "-DSPHINX_OUTPUT_HTML=OFF" + "-DSPHINX_WARNINGS_AS_ERRORS=OFF" + ] ++ optionals (!isDarwin) [ + "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include" + ] ++ optionals isDarwin [ + "-DLLVM_ENABLE_LIBCXX=ON" + "-DCAN_TARGET_i386=false" + ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ + "-DCMAKE_CROSSCOMPILING=True" + "-DLLVM_TABLEGEN=${buildPackages.llvm_12}/bin/llvm-tblgen" + ]; + + postBuild = '' + rm -R $out + ''; + + preCheck = '' + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib + ''; + + postInstall = '' + mkdir -p $python/share + mv $out/share/opt-viewer $python/share/opt-viewer + '' + + optionalString enableSharedLibraries '' + moveToOutput "lib/libLLVM-*" "$lib" + moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib" + '' + + optionalString (enableSharedLibraries && (!stdenv.isDarwin)) '' + substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \ + --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-" + '' + + optionalString (stdenv.isDarwin && enableSharedLibraries) '' + substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \ + --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib" + ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib + ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib + ''; + + doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl); + + checkTarget = "check-all"; + + requiredSystemFeatures = [ "big-parallel" ]; + meta = { + description = "Collection of modular and reusable compiler and toolchain technologies"; + homepage = "https://llvm.org/"; + license = lib.licenses.ncsa; + maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ]; + platforms = lib.platforms.all; + }; +} // lib.optionalAttrs enableManpages { + pname = "llvm-manpages"; + + buildPhase = '' + make docs-llvm-man + ''; + + installPhase = '' + make -C docs install + ''; + + postPatch = null; + postInstall = null; + + outputs = [ "out" ]; + + doCheck = false; + + meta.description = "man pages for LLVM ${version}"; +}) diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/openmp.nix b/nixpkgs/pkgs/development/compilers/llvm/12/openmp.nix new file mode 100644 index 000000000000..1e4618e4a1b4 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/openmp.nix @@ -0,0 +1,25 @@ +{ lib +, stdenv +, fetch +, cmake +, llvm +, perl +, version +}: + +stdenv.mkDerivation rec { + pname = "openmp"; + inherit version; + + src = fetch pname "1d16r5whjb2n4n28rg8wn2g9krlc92q6nb0qmnnbzhqhx0rbkjfb"; + + nativeBuildInputs = [ cmake perl ]; + buildInputs = [ llvm ]; + + meta = { + description = "Components required to build an executable OpenMP program"; + homepage = "https://openmp.llvm.org/"; + license = lib.licenses.mit; + platforms = lib.platforms.all; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/sanitizers-nongnu.patch b/nixpkgs/pkgs/development/compilers/llvm/12/sanitizers-nongnu.patch new file mode 100644 index 000000000000..1f2ac97818eb --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/12/sanitizers-nongnu.patch @@ -0,0 +1,412 @@ +From f7a253f8f85d0f49df6b73996737a3e84ac64236 Mon Sep 17 00:00:00 2001 +From: Will Dietz <w@wdtz.org> +Date: Mon, 24 Sep 2018 11:17:25 -0500 +Subject: [PATCH] Ported to 7.0, taken from gentoo-musl project. + +------ +Ported to compiler-rt-sanitizers-5.0.0. Taken from + +https://gist.githubusercontent.com/pwaller/2337f3290f12634cad3e3730cff0a6c1/raw/83c87a8585e2f9662494db5662e5361beb093c26/nongnu.patch +Signed-off-by: Jory A. Pratt <anarchy@gentoo.org> + +Taken from gentoo-musl project, with a few additional minor fixes. +--- + lib/asan/asan_linux.cc | 4 +- + lib/interception/interception_linux.cc | 2 +- + lib/interception/interception_linux.h | 2 +- + lib/msan/msan_linux.cc | 2 +- + lib/sanitizer_common/sanitizer_allocator.cc | 2 +- + .../sanitizer_common_interceptors_ioctl.inc | 4 +- + .../sanitizer_common_syscalls.inc | 2 +- + lib/sanitizer_common/sanitizer_linux.cc | 8 +++- + .../sanitizer_linux_libcdep.cc | 10 ++--- + lib/sanitizer_common/sanitizer_platform.h | 6 +++ + .../sanitizer_platform_interceptors.h | 4 +- + .../sanitizer_platform_limits_posix.cc | 37 +++++++++++-------- + lib/tsan/rtl/tsan_platform_linux.cc | 2 +- + 13 files changed, 51 insertions(+), 34 deletions(-) + +diff --git a/lib/asan/asan_linux.cc b/lib/asan/asan_linux.cc +index 625f32d40..73cf77aca 100644 +--- a/lib/asan/asan_linux.cc ++++ b/lib/asan/asan_linux.cc +@@ -46,7 +46,7 @@ + #include <link.h> + #endif + +-#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS ++#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU + #include <ucontext.h> + extern "C" void* _DYNAMIC; + #elif SANITIZER_NETBSD +@@ -139,7 +139,7 @@ void AsanApplyToGlobals(globals_op_fptr op, const void *needle) { + UNIMPLEMENTED(); + } + +-#if SANITIZER_ANDROID ++#if SANITIZER_ANDROID || SANITIZER_NONGNU + // FIXME: should we do anything for Android? + void AsanCheckDynamicRTPrereqs() {} + void AsanCheckIncompatibleRT() {} +diff --git a/lib/interception/interception_linux.cc b/lib/interception/interception_linux.cc +index 26bfcd8f6..529b234f7 100644 +--- a/lib/interception/interception_linux.cc ++++ b/lib/interception/interception_linux.cc +@@ -43,7 +43,7 @@ bool GetRealFunctionAddress(const char *func_name, uptr *func_addr, + } + + // Android and Solaris do not have dlvsym +-#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD ++#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU + void *GetFuncAddrVer(const char *func_name, const char *ver) { + return dlvsym(RTLD_NEXT, func_name, ver); + } +diff --git a/lib/interception/interception_linux.h b/lib/interception/interception_linux.h +index 942c25609..24a4d5080 100644 +--- a/lib/interception/interception_linux.h ++++ b/lib/interception/interception_linux.h +@@ -36,7 +36,7 @@ void *GetFuncAddrVer(const char *func_name, const char *ver); + (::__interception::uptr) & WRAP(func)) + + // Android, Solaris and OpenBSD do not have dlvsym +-#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD ++#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU + #define INTERCEPT_FUNCTION_VER_LINUX_OR_FREEBSD(func, symver) \ + (::__interception::real_##func = (func##_f)( \ + unsigned long)::__interception::GetFuncAddrVer(#func, symver)) +diff --git a/lib/msan/msan_linux.cc b/lib/msan/msan_linux.cc +index 385a650c4..6e30a8ce9 100644 +--- a/lib/msan/msan_linux.cc ++++ b/lib/msan/msan_linux.cc +@@ -13,7 +13,7 @@ + //===----------------------------------------------------------------------===// + + #include "sanitizer_common/sanitizer_platform.h" +-#if SANITIZER_FREEBSD || SANITIZER_LINUX || SANITIZER_NETBSD ++#if SANITIZER_FREEBSD || (SANITIZER_LINUX && !SANITIZER_NONGNU) || SANITIZER_NETBSD + + #include "msan.h" + #include "msan_report.h" +diff --git a/lib/sanitizer_common/sanitizer_allocator.cc b/lib/sanitizer_common/sanitizer_allocator.cc +index 6bfd5e5ee..048f6154f 100644 +--- a/lib/sanitizer_common/sanitizer_allocator.cc ++++ b/lib/sanitizer_common/sanitizer_allocator.cc +@@ -27,7 +27,7 @@ const char *SecondaryAllocatorName = "LargeMmapAllocator"; + + // ThreadSanitizer for Go uses libc malloc/free. + #if SANITIZER_GO || defined(SANITIZER_USE_MALLOC) +-# if SANITIZER_LINUX && !SANITIZER_ANDROID ++# if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + extern "C" void *__libc_malloc(uptr size); + # if !SANITIZER_GO + extern "C" void *__libc_memalign(uptr alignment, uptr size); +diff --git a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +index 2d633c173..b6eb23116 100644 +--- a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc ++++ b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +@@ -104,7 +104,7 @@ static void ioctl_table_fill() { + _(SIOCGETVIFCNT, WRITE, struct_sioc_vif_req_sz); + #endif + +-#if SANITIZER_LINUX ++#if SANITIZER_LINUX && !SANITIZER_NONGNU + // Conflicting request ids. + // _(CDROMAUDIOBUFSIZ, NONE, 0); + // _(SNDCTL_TMR_CONTINUE, NONE, 0); +@@ -365,7 +365,7 @@ static void ioctl_table_fill() { + _(VT_WAITACTIVE, NONE, 0); + #endif + +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + // _(SIOCDEVPLIP, WRITE, struct_ifreq_sz); // the same as EQL_ENSLAVE + _(CYGETDEFTHRESH, WRITE, sizeof(int)); + _(CYGETDEFTIMEOUT, WRITE, sizeof(int)); +diff --git a/lib/sanitizer_common/sanitizer_common_syscalls.inc b/lib/sanitizer_common/sanitizer_common_syscalls.inc +index 469c8eb7e..24f87867d 100644 +--- a/lib/sanitizer_common/sanitizer_common_syscalls.inc ++++ b/lib/sanitizer_common/sanitizer_common_syscalls.inc +@@ -2038,7 +2038,7 @@ POST_SYSCALL(setrlimit)(long res, long resource, void *rlim) { + } + } + +-#if !SANITIZER_ANDROID ++#if !SANITIZER_ANDROID && !SANITIZER_NONGNU + PRE_SYSCALL(prlimit64)(long pid, long resource, const void *new_rlim, + void *old_rlim) { + if (new_rlim) PRE_READ(new_rlim, struct_rlimit64_sz); +diff --git a/lib/sanitizer_common/sanitizer_linux.cc b/lib/sanitizer_common/sanitizer_linux.cc +index 96d6c1eff..9e2b7fb9d 100644 +--- a/lib/sanitizer_common/sanitizer_linux.cc ++++ b/lib/sanitizer_common/sanitizer_linux.cc +@@ -541,13 +541,13 @@ const char *GetEnv(const char *name) { + #endif + } + +-#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD ++#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_NONGNU + extern "C" { + SANITIZER_WEAK_ATTRIBUTE extern void *__libc_stack_end; + } + #endif + +-#if !SANITIZER_GO && !SANITIZER_FREEBSD && !SANITIZER_NETBSD && \ ++#if (!SANITIZER_GO || SANITIZER_NONGNU) && !SANITIZER_FREEBSD && !SANITIZER_NETBSD && \ + !SANITIZER_OPENBSD + static void ReadNullSepFileToArray(const char *path, char ***arr, + int arr_size) { +@@ -590,6 +590,10 @@ static void GetArgsAndEnv(char ***argv, char ***envp) { + #elif SANITIZER_NETBSD + *argv = __ps_strings->ps_argvstr; + *envp = __ps_strings->ps_envstr; ++#elif SANITIZER_NONGNU ++ static const int kMaxArgv = 2000, kMaxEnvp = 2000; ++ ReadNullSepFileToArray("/proc/self/cmdline", argv, kMaxArgv); ++ ReadNullSepFileToArray("/proc/self/environ", envp, kMaxEnvp); + #else // SANITIZER_FREEBSD + #if !SANITIZER_GO + if (&__libc_stack_end) { +diff --git a/lib/sanitizer_common/sanitizer_linux_libcdep.cc b/lib/sanitizer_common/sanitizer_linux_libcdep.cc +index 4962ff832..438f94dbe 100644 +--- a/lib/sanitizer_common/sanitizer_linux_libcdep.cc ++++ b/lib/sanitizer_common/sanitizer_linux_libcdep.cc +@@ -179,7 +179,7 @@ __attribute__((unused)) static bool GetLibcVersion(int *major, int *minor, + } + + #if !SANITIZER_FREEBSD && !SANITIZER_ANDROID && !SANITIZER_GO && \ +- !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS ++ !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS && !SANITIZER_NONGNU + static uptr g_tls_size; + + #ifdef __i386__ +@@ -261,7 +261,7 @@ void InitTlsSize() { } + #if (defined(__x86_64__) || defined(__i386__) || defined(__mips__) || \ + defined(__aarch64__) || defined(__powerpc64__) || defined(__s390__) || \ + defined(__arm__)) && \ +- SANITIZER_LINUX && !SANITIZER_ANDROID ++ SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + // sizeof(struct pthread) from glibc. + static atomic_uintptr_t thread_descriptor_size; + +@@ -426,7 +426,7 @@ int GetSizeFromHdr(struct dl_phdr_info *info, size_t size, void *data) { + + #if !SANITIZER_GO + static void GetTls(uptr *addr, uptr *size) { +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + # if defined(__x86_64__) || defined(__i386__) || defined(__s390__) + *addr = ThreadSelf(); + *size = GetTlsSize(); +@@ -470,7 +470,7 @@ static void GetTls(uptr *addr, uptr *size) { + #elif SANITIZER_OPENBSD + *addr = 0; + *size = 0; +-#elif SANITIZER_ANDROID ++#elif SANITIZER_ANDROID || SANITIZER_NONGNU + *addr = 0; + *size = 0; + #elif SANITIZER_SOLARIS +@@ -486,7 +486,7 @@ static void GetTls(uptr *addr, uptr *size) { + #if !SANITIZER_GO + uptr GetTlsSize() { + #if SANITIZER_FREEBSD || SANITIZER_ANDROID || SANITIZER_NETBSD || \ +- SANITIZER_OPENBSD || SANITIZER_SOLARIS ++ SANITIZER_OPENBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU + uptr addr, size; + GetTls(&addr, &size); + return size; +diff --git a/lib/sanitizer_common/sanitizer_platform.h b/lib/sanitizer_common/sanitizer_platform.h +index d81e25580..e10680ac8 100644 +--- a/lib/sanitizer_common/sanitizer_platform.h ++++ b/lib/sanitizer_common/sanitizer_platform.h +@@ -208,6 +208,12 @@ + # define SANITIZER_SOLARIS32 0 + #endif + ++#if defined(__linux__) && !defined(__GLIBC__) ++# define SANITIZER_NONGNU 1 ++#else ++# define SANITIZER_NONGNU 0 ++#endif ++ + #if defined(__myriad2__) + # define SANITIZER_MYRIAD2 1 + #else +diff --git a/lib/sanitizer_common/sanitizer_platform_interceptors.h b/lib/sanitizer_common/sanitizer_platform_interceptors.h +index f95539a73..6c53b3415 100644 +--- a/lib/sanitizer_common/sanitizer_platform_interceptors.h ++++ b/lib/sanitizer_common/sanitizer_platform_interceptors.h +@@ -39,7 +39,7 @@ + # include "sanitizer_platform_limits_solaris.h" + #endif + +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + # define SI_LINUX_NOT_ANDROID 1 + #else + # define SI_LINUX_NOT_ANDROID 0 +@@ -322,7 +322,7 @@ + #define SANITIZER_INTERCEPT_ETHER_R (SI_FREEBSD || SI_LINUX_NOT_ANDROID) + #define SANITIZER_INTERCEPT_SHMCTL \ + (SI_NETBSD || SI_OPENBSD || SI_SOLARIS || \ +- ((SI_FREEBSD || SI_LINUX_NOT_ANDROID) && \ ++ ((SI_FREEBSD || SI_LINUX_NOT_ANDROID || SANITIZER_NONGNU) && \ + SANITIZER_WORDSIZE == 64)) // NOLINT + #define SANITIZER_INTERCEPT_RANDOM_R SI_LINUX_NOT_ANDROID + #define SANITIZER_INTERCEPT_PTHREAD_ATTR_GET SI_POSIX +diff --git a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc +index 54da635d7..2f6ff69c3 100644 +--- a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc ++++ b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc +@@ -14,6 +14,9 @@ + + #include "sanitizer_platform.h" + ++// Workaround musl <--> linux conflicting definition of 'struct sysinfo' ++#define _LINUX_SYSINFO_H ++ + #if SANITIZER_LINUX || SANITIZER_FREEBSD || SANITIZER_MAC + // Tests in this file assume that off_t-dependent data structures match the + // libc ABI. For example, struct dirent here is what readdir() function (as +@@ -138,12 +141,14 @@ typedef struct user_fpregs elf_fpregset_t; + + #if SANITIZER_LINUX && !SANITIZER_ANDROID + #include <glob.h> +-#include <obstack.h> ++# if !SANITIZER_NONGNU ++# include <obstack.h> ++# endif + #include <mqueue.h> +-#include <net/if_ppp.h> +-#include <netax25/ax25.h> +-#include <netipx/ipx.h> +-#include <netrom/netrom.h> ++#include <linux/if_ppp.h> ++#include <linux/ax25.h> ++#include <linux/ipx.h> ++#include <linux/netrom.h> + #if HAVE_RPC_XDR_H + # include <rpc/xdr.h> + #elif HAVE_TIRPC_RPC_XDR_H +@@ -251,7 +256,7 @@ namespace __sanitizer { + unsigned struct_itimerspec_sz = sizeof(struct itimerspec); + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD + +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which + // has been removed from glibc 2.28. + #if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \ +@@ -322,7 +327,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(ElfW(Phdr)); + unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + #endif + +-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID ++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU + int glob_nomatch = GLOB_NOMATCH; + int glob_altdirfunc = GLOB_ALTDIRFUNC; + #endif +@@ -416,7 +421,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_termios_sz = sizeof(struct termios); + unsigned struct_winsize_sz = sizeof(struct winsize); + +-#if SANITIZER_LINUX ++#if SANITIZER_LINUX && !SANITIZER_NONGNU + unsigned struct_arpreq_sz = sizeof(struct arpreq); + unsigned struct_cdrom_msf_sz = sizeof(struct cdrom_msf); + unsigned struct_cdrom_multisession_sz = sizeof(struct cdrom_multisession); +@@ -466,7 +471,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_vt_mode_sz = sizeof(struct vt_mode); + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD + +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + unsigned struct_ax25_parms_struct_sz = sizeof(struct ax25_parms_struct); + unsigned struct_cyclades_monitor_sz = sizeof(struct cyclades_monitor); + #if EV_VERSION > (0x010000) +@@ -834,7 +839,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned IOCTL_VT_WAITACTIVE = VT_WAITACTIVE; + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD + +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + unsigned IOCTL_CYGETDEFTHRESH = CYGETDEFTHRESH; + unsigned IOCTL_CYGETDEFTIMEOUT = CYGETDEFTIMEOUT; + unsigned IOCTL_CYGETMON = CYGETMON; +@@ -989,7 +994,7 @@ CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phdr); + CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phnum); + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD + +-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID ++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU + CHECK_TYPE_SIZE(glob_t); + CHECK_SIZE_AND_OFFSET(glob_t, gl_pathc); + CHECK_SIZE_AND_OFFSET(glob_t, gl_pathv); +@@ -1023,6 +1028,7 @@ CHECK_TYPE_SIZE(iovec); + CHECK_SIZE_AND_OFFSET(iovec, iov_base); + CHECK_SIZE_AND_OFFSET(iovec, iov_len); + ++#if !SANITIZER_NONGNU + CHECK_TYPE_SIZE(msghdr); + CHECK_SIZE_AND_OFFSET(msghdr, msg_name); + CHECK_SIZE_AND_OFFSET(msghdr, msg_namelen); +@@ -1036,6 +1042,7 @@ CHECK_TYPE_SIZE(cmsghdr); + CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_len); + CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_level); + CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_type); ++#endif + + #ifndef __GLIBC_PREREQ + #define __GLIBC_PREREQ(x, y) 0 +@@ -1145,7 +1152,7 @@ CHECK_SIZE_AND_OFFSET(mntent, mnt_passno); + + CHECK_TYPE_SIZE(ether_addr); + +-#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID ++#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU + CHECK_TYPE_SIZE(ipc_perm); + # if SANITIZER_FREEBSD + CHECK_SIZE_AND_OFFSET(ipc_perm, key); +@@ -1206,7 +1213,7 @@ CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_dstaddr); + CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_data); + #endif + +-#if SANITIZER_LINUX ++#if SANITIZER_LINUX && !SANITIZER_NONGNU + COMPILER_CHECK(sizeof(__sanitizer_mallinfo) == sizeof(struct mallinfo)); + #endif + +@@ -1256,7 +1263,7 @@ COMPILER_CHECK(__sanitizer_XDR_DECODE == XDR_DECODE); + COMPILER_CHECK(__sanitizer_XDR_FREE == XDR_FREE); + #endif + +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + COMPILER_CHECK(sizeof(__sanitizer_FILE) <= sizeof(FILE)); + CHECK_SIZE_AND_OFFSET(FILE, _flags); + CHECK_SIZE_AND_OFFSET(FILE, _IO_read_ptr); +@@ -1275,7 +1282,7 @@ CHECK_SIZE_AND_OFFSET(FILE, _chain); + CHECK_SIZE_AND_OFFSET(FILE, _fileno); + #endif + +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + COMPILER_CHECK(sizeof(__sanitizer__obstack_chunk) <= sizeof(_obstack_chunk)); + CHECK_SIZE_AND_OFFSET(_obstack_chunk, limit); + CHECK_SIZE_AND_OFFSET(_obstack_chunk, prev); +diff --git a/lib/tsan/rtl/tsan_platform_linux.cc b/lib/tsan/rtl/tsan_platform_linux.cc +index de989b780..51a97b554 100644 +--- a/lib/tsan/rtl/tsan_platform_linux.cc ++++ b/lib/tsan/rtl/tsan_platform_linux.cc +@@ -294,7 +294,7 @@ void InitializePlatform() { + // This is required to properly "close" the fds, because we do not see internal + // closes within glibc. The code is a pure hack. + int ExtractResolvFDs(void *state, int *fds, int nfd) { +-#if SANITIZER_LINUX && !SANITIZER_ANDROID ++#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU + int cnt = 0; + struct __res_state *statp = (struct __res_state*)state; + for (int i = 0; i < MAXNS && cnt < nfd; i++) { +-- +2.19.0 + diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt.nix index 909c6b190536..81dbe7048e6b 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/5/compiler-rt.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation { # The compiler-rt build infrastructure sniffs supported platforms on Darwin # and finds i386;x86_64;x86_64h. We only build for x86_64, so linking fails # when it tries to use libc++ and libc++api for i386. - "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" ]; outputs = [ "out" "dev" ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt.nix index 6e47ffe8acaf..11d46289afe8 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/6/compiler-rt.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation { # The compiler-rt build infrastructure sniffs supported platforms on Darwin # and finds i386;x86_64;x86_64h. We only build for x86_64, so linking fails # when it tries to use libc++ and libc++api for i386. - "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" ]; outputs = [ "out" "dev" ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/default.nix index a98314d1181f..fe6984ee58bd 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/6/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/6/default.nix @@ -36,6 +36,7 @@ let llvm-manpages = lowPrio (tools.llvm.override { enableManpages = true; + enableSharedLibraries = false; python3 = pkgs.python3; # don't use python-boot }); diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt.nix index 6320a3405d27..0f91f3c5e6c1 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/7/compiler-rt.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation { # The compiler-rt build infrastructure sniffs supported platforms on Darwin # and finds i386;x86_64;x86_64h. We only build for x86_64, so linking fails # when it tries to use libc++ and libc++api for i386. - "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" ]; outputs = [ "out" "dev" ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt.nix index 2e49ef17346d..a9dabebb59a0 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/8/compiler-rt.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation { # The compiler-rt build infrastructure sniffs supported platforms on Darwin # and finds i386;x86_64;x86_64h. We only build for x86_64, so linking fails # when it tries to use libc++ and libc++api for i386. - "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" ]; outputs = [ "out" "dev" ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt.nix b/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt.nix index 2ab9dc8ffa2e..1e9aa1d5d1bf 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/9/compiler-rt.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation rec { # The compiler-rt build infrastructure sniffs supported platforms on Darwin # and finds i386;x86_64;x86_64h. We only build for x86_64, so linking fails # when it tries to use libc++ and libc++api for i386. - "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}" ]; outputs = [ "out" "dev" ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix index 54a7733f4bae..135fcd2d25ae 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix @@ -1,12 +1,12 @@ -{ lib, stdenv, fetchFromGitHub, callPackage, wrapCCWith }: +{ lib, fetchFromGitHub, callPackage, wrapCCWith }: let - version = "4.0.1"; + version = "4.1.0"; src = fetchFromGitHub { owner = "RadeonOpenCompute"; repo = "llvm-project"; rev = "rocm-${version}"; - hash = "sha256-5mQ8tN7A045JCF7tHKgAZAbyVmXOd6Wf0CVUiPA80YM="; + hash = "sha256-DlId/dF5r0ULl2omYPCyu1Ic3XKlLL7ndiCA0RaF264="; }; in rec { clang = wrapCCWith rec { diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/lld.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/lld.nix index 2a05331f7a0f..a6e993bb203f 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/rocm/lld.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/lld.nix @@ -18,6 +18,8 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" ]; + cmakeFlags = [ "-DLLVM_MAIN_SRC_DIR=${llvm.src}" ]; + postInstall = '' moveToOutput include "$dev" moveToOutput lib "$dev" diff --git a/nixpkgs/pkgs/development/compilers/llvm/update.sh b/nixpkgs/pkgs/development/compilers/llvm/update.sh new file mode 100755 index 000000000000..8f28d34073cd --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/update.sh @@ -0,0 +1,44 @@ +#!/usr/bin/env bash + +set -eu + +# Example usage: ./pkgs/development/compilers/llvm/update.sh 12.0.0-rc4 + +readonly VERSION="$1" +readonly VERSION_MAJOR="${VERSION%%.*}" +readonly VERSION_MAIN="${VERSION%%-*}" +declare VERSION_PATCH="${VERSION/$VERSION_MAIN/}" +readonly VERSION_PATCH="${VERSION_PATCH/-/}" + +readonly DIR="pkgs/development/compilers/llvm/$VERSION_MAJOR" +readonly FILE="$DIR/default.nix" + +sed -Ei \ + -e "s/release_version = \".+\";/release_version = \"$VERSION_MAIN\";/" \ + -e "s/candidate = \".*\";/candidate = \"$VERSION_PATCH\";/" \ + "$FILE" + +readonly ATTRSET="llvmPackages_$VERSION_MAJOR" +readonly SOURCES=( + "clang-unwrapped.src" + "compiler-rt.src" + "clang-unwrapped.clang-tools-extra_src" + "libcxx.src" + "libcxxabi.src" + "libunwind.src" + "lld.src" + "lldb.src" + "llvm.src" + "llvm.polly_src" + "openmp.src" +) + +for SOURCE in "${SOURCES[@]}"; do + echo "Updating the hash of $SOURCE:" + declare ATTR="$ATTRSET.$SOURCE" + declare OLD_HASH="$(nix eval -f . $ATTR.outputHash)" + declare NEW_HASH="\"$(nix-prefetch-url -A $ATTR)\"" + find "$DIR" -type f -exec sed -i "s/$OLD_HASH/$NEW_HASH/" {} + +done + +echo OK diff --git a/nixpkgs/pkgs/development/compilers/mercury/default.nix b/nixpkgs/pkgs/development/compilers/mercury/default.nix index e063c4c09217..c5e767a46cde 100644 --- a/nixpkgs/pkgs/development/compilers/mercury/default.nix +++ b/nixpkgs/pkgs/development/compilers/mercury/default.nix @@ -10,8 +10,8 @@ stdenv.mkDerivation rec { sha256 = "ef093ae81424c4f3fe696eff9aefb5fb66899e11bb17ae0326adfb70d09c1c1f"; }; - buildInputs = [ gcc flex bison texinfo jdk erlang makeWrapper - readline ]; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ gcc flex bison texinfo jdk erlang readline ]; patchPhase = '' # Fix calls to programs in /bin diff --git a/nixpkgs/pkgs/development/compilers/microscheme/default.nix b/nixpkgs/pkgs/development/compilers/microscheme/default.nix index ee2de8518f36..1f3a98de821e 100644 --- a/nixpkgs/pkgs/development/compilers/microscheme/default.nix +++ b/nixpkgs/pkgs/development/compilers/microscheme/default.nix @@ -1,21 +1,24 @@ -{ lib, stdenv, fetchzip, vim, makeWrapper }: +{ lib, stdenv, fetchFromGitHub, makeWrapper, unixtools }: stdenv.mkDerivation rec { pname = "microscheme"; version = "0.9.3"; - src = fetchzip { - name = "${pname}-${version}-src"; - url = "https://github.com/ryansuchocki/microscheme/archive/v${version}.tar.gz"; - sha256 = "1r3ng4pw1s9yy1h5rafra1rq19d3vmb5pzbpcz1913wz22qdd976"; + src = fetchFromGitHub { + owner = "ryansuchocki"; + repo = "microscheme"; + rev = "v${version}"; + sha256 = "5qTWsBCfj5DCZ3f9W1bdo6WAc1DZqVxg8D7pwC95duQ="; }; - buildInputs = [ makeWrapper vim ]; - - installPhase = '' - make install PREFIX=$out + postPatch = '' + substituteInPlace makefile --replace gcc ${stdenv.cc.targetPrefix}cc ''; + nativeBuildInputs = [ makeWrapper unixtools.xxd ]; + + makeFlags = [ "PREFIX=${placeholder "out"}" ]; + meta = with lib; { homepage = "http://microscheme.org"; description = "A Scheme subset for Atmel microcontrollers"; @@ -24,7 +27,7 @@ stdenv.mkDerivation rec { microcontrollers, especially as found on Arduino boards. ''; license = licenses.mit; - platforms = platforms.linux; + platforms = platforms.all; maintainers = with maintainers; [ ardumont ]; }; } diff --git a/nixpkgs/pkgs/development/compilers/mint/default.nix b/nixpkgs/pkgs/development/compilers/mint/default.nix index d1d103c047fb..1024ddb6a8a6 100644 --- a/nixpkgs/pkgs/development/compilers/mint/default.nix +++ b/nixpkgs/pkgs/development/compilers/mint/default.nix @@ -1,15 +1,18 @@ -{ lib, fetchFromGitHub, crystal_0_33, openssl }: +{ lib, fetchFromGitHub, crystal_0_36, openssl }: -let crystal = crystal_0_33; -in crystal.buildCrystalPackage rec { - version = "0.9.0"; +let + crystal = crystal_0_36; + +in +crystal.buildCrystalPackage rec { + version = "0.11.0"; pname = "mint"; src = fetchFromGitHub { owner = "mint-lang"; repo = "mint"; rev = version; - sha256 = "0y1qr616x7s0pjgih6s1n4wiwb8kn8l1knnzmib6j4jmqax0jhz0"; + sha256 = "sha256-QqO4Kc8hf6WNCENPvLwYIF9gtXG/VRR7DhyZvxB4VsA="; }; postPatch = '' diff --git a/nixpkgs/pkgs/development/compilers/mint/shards.nix b/nixpkgs/pkgs/development/compilers/mint/shards.nix index 8e2b6b6ad4df..595f9c5ebee7 100644 --- a/nixpkgs/pkgs/development/compilers/mint/shards.nix +++ b/nixpkgs/pkgs/development/compilers/mint/shards.nix @@ -2,20 +2,20 @@ admiral = { owner = "jwaldrip"; repo = "admiral.cr"; - rev = "v1.9.0"; - sha256 = "0y8gsh1qz42bc9jawcrn0i49mzzfvf8znmivd8lybapf0f53fblz"; + rev = "v1.11.2"; + sha256 = "0rxsy41d0qpw9h1d3jvhmbmzqba9yhgyzc0jrdbg28f59fl7zp7q"; }; ameba = { owner = "crystal-ameba"; repo = "ameba"; - rev = "v0.12.0"; - sha256 = "0g68yijbm2j4ig536fwq49d1z7x2iv9kp4g3gjklf5zn1sbqhm12"; + rev = "v0.13.3"; + sha256 = "0yhb8vfrfzsm3a45h2jmcrn1n7jy3zn2hwims3dikgq8kaggws9y"; }; baked_file_system = { owner = "schovi"; repo = "baked_file_system"; - rev = "v0.9.8"; - sha256 = "12l375jllg1lxvfh610dz0a39p803xw6q9fxlmnc6hy55i0gm0y3"; + rev = "7183bfde8d86a976a6912f582b51cbd1783456af"; + sha256 = "0s1bsrimz30wfkkfmb4bm49mx44nhqj0hky8jkn0kz0mpc28mkkl"; }; diff = { owner = "MakeNowJust"; @@ -38,8 +38,8 @@ kemal = { owner = "kemalcr"; repo = "kemal"; - rev = "v0.26.1"; - sha256 = "169pwkjmk7x6j8i0rf5rpyk1y0hl7jaf9h6yrq4ha2ag9yq9i8fr"; + rev = "v0.27.0"; + sha256 = "01p5fkm6q9k6390dhhw3dwwzlxhxafykknkkcayv1k4ynn126hi7"; }; kilt = { owner = "jeromegn"; @@ -50,8 +50,8 @@ markd = { owner = "icyleaf"; repo = "markd"; - rev = "v0.2.0"; - sha256 = "0n27fndd77mlkgw1r4pf0sa8fz4gwsh7dpnjck95c0ml91cr8j1a"; + rev = "620845abb6776d1765d20d86cc0220aa40f89a91"; + sha256 = "1nq1ddmd2kgnl8vrk0y65lqhy145740a3s68kn0advm2xx8rbhmy"; }; radix = { owner = "luislavena"; @@ -72,9 +72,9 @@ sha256 = "0mmssnabf476i07sajm7s3rlvfcav4lkh0n8g12rybxr6c9f683v"; }; tree_template = { - owner = "anykeyh"; + owner = "gdotdesign"; repo = "tree_template"; - rev = "3fcb71ee6852040077dd1a2c8c55c67f4a95ba4e"; - sha256 = "04w89wpnkna4ipyy3pxshqqwgk965hz1d31vqp0mrb0ilmpsywdk"; + rev = "7e24c92208cc99938f3fbd8f5fecda22bcbe3cc3"; + sha256 = "0ixscq7nqlp83x976d41kq83a5gw9kkk7lnxhlsc91000hm5h3wq"; }; } diff --git a/nixpkgs/pkgs/development/compilers/miranda/default.nix b/nixpkgs/pkgs/development/compilers/miranda/default.nix index 298cb5e21ead..5de16633ed7d 100644 --- a/nixpkgs/pkgs/development/compilers/miranda/default.nix +++ b/nixpkgs/pkgs/development/compilers/miranda/default.nix @@ -53,7 +53,7 @@ stdenv.mkDerivation rec { ]; makeFlags = [ - "CC=cc" + "CC=${stdenv.cc.targetPrefix}cc" "CFLAGS=-O2" "PREFIX=${placeholder "out"}" ]; @@ -62,6 +62,7 @@ stdenv.mkDerivation rec { postPatch = '' patchShebangs quotehostinfo + substituteInPlace Makefile --replace strip '${stdenv.cc.targetPrefix}strip' ''; meta = with lib; { @@ -69,5 +70,6 @@ stdenv.mkDerivation rec { homepage = "https://www.cs.kent.ac.uk/people/staff/dat/miranda/"; license = licenses.bsd2; maintainers = with maintainers; [ siraben ]; + platforms = platforms.all; }; } diff --git a/nixpkgs/pkgs/development/compilers/mosml/default.nix b/nixpkgs/pkgs/development/compilers/mosml/default.nix index ec8fa793cfd4..f6d2053f315c 100644 --- a/nixpkgs/pkgs/development/compilers/mosml/default.nix +++ b/nixpkgs/pkgs/development/compilers/mosml/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { buildInputs = [ gmp perl ]; - makeFlags = [ "PREFIX=$(out)" ] ++ lib.optionals stdenv.isDarwin [ "CC=cc" ]; + makeFlags = [ "PREFIX=$(out)" "CC=${stdenv.cc.targetPrefix}cc" ]; src = fetchurl { url = "https://github.com/kfl/mosml/archive/ver-${version}.tar.gz"; diff --git a/nixpkgs/pkgs/development/compilers/mozart/binary.nix b/nixpkgs/pkgs/development/compilers/mozart/binary.nix index 8366fd77a47a..b043187e6c1e 100644 --- a/nixpkgs/pkgs/development/compilers/mozart/binary.nix +++ b/nixpkgs/pkgs/development/compilers/mozart/binary.nix @@ -33,7 +33,7 @@ stdenv.mkDerivation { TK_LIBRARY = "${tk-8_5}/lib/tk8.5"; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; buildCommand = '' mkdir $out diff --git a/nixpkgs/pkgs/development/compilers/mruby/default.nix b/nixpkgs/pkgs/development/compilers/mruby/default.nix index 25d35adff944..4d046cd7f84f 100644 --- a/nixpkgs/pkgs/development/compilers/mruby/default.nix +++ b/nixpkgs/pkgs/development/compilers/mruby/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "mruby"; - version = "2.1.2"; + version = "3.0.0"; src = fetchFromGitHub { owner = "mruby"; repo = "mruby"; rev = version; - sha256 = "0fhfv8pi7i8jn2vgk2n2rjnbnfa12nhj514v8i4k353n7q4pmkh3"; + sha256 = "sha256-C3K7ZooaOMa+V2HjxwiKxrrMb7ffl4QAgPsftRtb60c="; }; nativeBuildInputs = [ ruby bison rake ]; diff --git a/nixpkgs/pkgs/development/compilers/muon/default.nix b/nixpkgs/pkgs/development/compilers/muon/default.nix index 2e178f775b6e..aef02bca970d 100644 --- a/nixpkgs/pkgs/development/compilers/muon/default.nix +++ b/nixpkgs/pkgs/development/compilers/muon/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { buildPhase = '' mkdir -p $out/bin $out/share/mu cp -r lib $out/share/mu - gcc -O3 -o $out/bin/mu-unwrapped bootstrap/mu64.c + ${stdenv.cc.targetPrefix}cc -o $out/bin/mu-unwrapped bootstrap/mu64.c ''; installPhase = '' @@ -29,6 +29,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/nickmqb/muon"; license = licenses.mit; maintainers = with maintainers; [ Br1ght0ne ]; - platforms = [ "x86_64-linux" ]; + platforms = platforms.all; }; } diff --git a/nixpkgs/pkgs/development/compilers/neko/default.nix b/nixpkgs/pkgs/development/compilers/neko/default.nix index 8b157fb4ca00..52606781935b 100644 --- a/nixpkgs/pkgs/development/compilers/neko/default.nix +++ b/nixpkgs/pkgs/development/compilers/neko/default.nix @@ -1,14 +1,16 @@ -{ lib, stdenv, fetchurl, boehmgc, zlib, sqlite, pcre, cmake, pkg-config +{ lib, stdenv, fetchFromGitHub, boehmgc, zlib, sqlite, pcre, cmake, pkg-config , git, apacheHttpd, apr, aprutil, libmysqlclient, mbedtls, openssl, pkgs, gtk2, libpthreadstubs }: stdenv.mkDerivation rec { pname = "neko"; - version = "2.2.0"; + version = "2.3.0"; - src = fetchurl { - url = "https://nekovm.org/media/neko-${version}-src.tar.gz"; - sha256 = "1qv47zaa0vzhjlq5wb71627n7dbsxpc1gqpg0hsngjxnbnh1q46g"; + src = fetchFromGitHub { + owner = "HaxeFoundation"; + repo = "neko"; + rev = "v${lib.replaceStrings [ "." ] [ "-" ] version}"; + sha256 = "19rc59cx7qqhcqlb0znwbnwbg04c1yq6xmvrwm1xi46k3vxa957g"; }; nativeBuildInputs = [ cmake pkg-config git ]; @@ -31,8 +33,17 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A high-level dynamically typed programming language"; homepage = "https://nekovm.org"; - license = licenses.lgpl21; - maintainers = [ maintainers.marcweber ]; + license = [ + # list based on https://github.com/HaxeFoundation/neko/blob/v2-3-0/LICENSE + licenses.gpl2Plus # nekoc, nekoml + licenses.lgpl21Plus # mysql.ndll + licenses.bsd3 # regexp.ndll + licenses.zlib # zlib.ndll + licenses.asl20 # mod_neko, mod_tora, mbedTLS + licenses.mit # overall, other libs + "https://github.com/HaxeFoundation/neko/blob/v2-3-0/LICENSE#L24-L40" # boehm gc + ]; + maintainers = [ maintainers.marcweber maintainers.locallycompact ]; platforms = platforms.linux ++ platforms.darwin; }; } diff --git a/nixpkgs/pkgs/development/compilers/nim/default.nix b/nixpkgs/pkgs/development/compilers/nim/default.nix index 27427e75d003..676e35b06bb4 100644 --- a/nixpkgs/pkgs/development/compilers/nim/default.nix +++ b/nixpkgs/pkgs/development/compilers/nim/default.nix @@ -1,22 +1,10 @@ # https://nim-lang.github.io/Nim/packaging.html +# https://nim-lang.org/docs/nimc.html -{ stdenv, lib, fetchurl, fetchgit, fetchFromGitHub, makeWrapper, gdb, openssl -, pcre, readline, boehmgc, sqlite, nim-unwrapped, nimble-unwrapped }: +{ lib, buildPackages, stdenv, fetchurl, fetchgit, fetchFromGitHub, makeWrapper +, openssl, pcre, readline, boehmgc, sqlite, nim-unwrapped }: let - version = "1.4.2"; - src = fetchurl { - url = "https://nim-lang.org/download/nim-${version}.tar.xz"; - sha256 = "0q8i56343b69f1bh48a8vxkqman9i2kscyj0lf017n3xfy1pb903"; - }; - - meta = with lib; { - description = "Statically typed, imperative programming language"; - homepage = "https://nim-lang.org/"; - license = licenses.mit; - maintainers = with maintainers; [ ehmry ]; - }; - parseCpu = platform: with platform; # Derive a Nim CPU identifier @@ -83,197 +71,251 @@ let nimHost = parsePlatform stdenv.hostPlatform; nimTarget = parsePlatform stdenv.targetPlatform; - wrapperInputs = rec { + bootstrapCompiler = stdenv.mkDerivation rec { + pname = "nim-bootstrap"; + version = "0.20.0"; - bootstrap = stdenv.mkDerivation rec { - pname = "nim-bootstrap"; - version = "0.20.0"; + src = fetchgit { + # A Git checkout is much smaller than a GitHub tarball. + url = "https://github.com/nim-lang/csources.git"; + rev = "v${version}"; + sha256 = "0i6vsfy1sgapx43n226q8m0pvn159sw2mhp50zm3hhb9zfijanis"; + }; - src = fetchgit { - # A Git checkout is much smaller than a GitHub tarball. - url = "https://github.com/nim-lang/csources.git"; - rev = "v" + version; - sha256 = "0i6vsfy1sgapx43n226q8m0pvn159sw2mhp50zm3hhb9zfijanis"; - }; + enableParallelBuilding = true; - enableParallelBuilding = true; + installPhase = '' + runHook preInstall + install -Dt $out/bin bin/nim + runHook postInstall + ''; + }; - installPhase = '' - runHook preInstall - install -Dt $out/bin bin/nim - runHook postInstall - ''; - }; +in { - unwrapped = stdenv.mkDerivation { - pname = "nim-unwrapped"; - inherit version src; + nim-unwrapped = stdenv.mkDerivation rec { + pname = "nim-unwrapped"; + version = "1.4.4"; + strictDeps = true; - buildInputs = [ boehmgc openssl pcre readline sqlite ]; + src = fetchurl { + url = "https://nim-lang.org/download/nim-${version}.tar.xz"; + sha256 = "03k642nnjca0s6jlbn1v4jld51mbkix97jli4ky74gqlxyfp4wvd"; + }; - patches = [ - ./NIM_CONFIG_DIR.patch - # Override compiler configuration via an environmental variable + buildInputs = [ boehmgc openssl pcre readline sqlite ]; - ./nixbuild.patch - # Load libraries at runtime by absolute path - ]; + patches = [ + ./NIM_CONFIG_DIR.patch + # Override compiler configuration via an environmental variable - configurePhase = '' - runHook preConfigure - cp ${bootstrap}/bin/nim bin/ - echo 'define:nixbuild' >> config/nim.cfg - runHook postConfigure - ''; + ./nixbuild.patch + # Load libraries at runtime by absolute path + ]; - kochArgs = [ - "--cpu:${nimHost.cpu}" - "--os:${nimHost.os}" - "-d:release" - "-d:useGnuReadline" - ] ++ lib.optional (stdenv.isDarwin || stdenv.isLinux) - "-d:nativeStacktrace"; + configurePhase = '' + runHook preConfigure + cp ${bootstrapCompiler}/bin/nim bin/ + echo 'define:nixbuild' >> config/nim.cfg + runHook postConfigure + ''; - buildPhase = '' - runHook preBuild - local HOME=$TMPDIR - ./bin/nim c koch - ./koch boot $kochArgs --parallelBuild:$NIX_BUILD_CORES - ./koch toolsNoExternal $kochArgs --parallelBuild:$NIX_BUILD_CORES - runHook postBuild - ''; + kochArgs = [ + "--cpu:${nimHost.cpu}" + "--os:${nimHost.os}" + "-d:release" + "-d:useGnuReadline" + ] ++ lib.optional (stdenv.isDarwin || stdenv.isLinux) "-d:nativeStacktrace"; + + buildPhase = '' + runHook preBuild + local HOME=$TMPDIR + ./bin/nim c koch + ./koch boot $kochArgs --parallelBuild:$NIX_BUILD_CORES + ./koch toolsNoExternal $kochArgs --parallelBuild:$NIX_BUILD_CORES + runHook postBuild + ''; - installPhase = '' - runHook preInstall - install -Dt $out/bin bin/* - ln -sf $out/nim/bin/nim $out/bin/nim - ./install.sh $out - runHook postInstall - ''; + installPhase = '' + runHook preInstall + install -Dt $out/bin bin/* + ln -sf $out/nim/bin/nim $out/bin/nim + ./install.sh $out + runHook postInstall + ''; - inherit meta; + meta = with lib; { + description = "Statically typed, imperative programming language"; + homepage = "https://nim-lang.org/"; + license = licenses.mit; + maintainers = with maintainers; [ ehmry ]; }; + }; - nimble-unwrapped = stdenv.mkDerivation rec { - pname = "nimble-unwrapped"; - version = "0.12.0"; - - src = fetchFromGitHub { - owner = "nim-lang"; - repo = "nimble"; - rev = "v" + version; - sha256 = "0vx0mdk31n00dr2rhiip6f4x7aa3z3mnblnmwk7f65ixd5hayq6y"; - }; + nimble-unwrapped = stdenv.mkDerivation rec { + pname = "nimble-unwrapped"; + version = "0.13.1"; + strictDeps = true; - nativeBuildInputs = [ nim-unwrapped ]; - buildInputs = [ openssl ]; + src = fetchFromGitHub { + owner = "nim-lang"; + repo = "nimble"; + rev = "v${version}"; + sha256 = "1idb4r0kjbqv16r6bgmxlr13w2vgq5332hmnc8pjbxiyfwm075x8"; + }; - nimFlags = [ "--cpu:${nimHost.cpu}" "--os:${nimHost.os}" "-d:release" ]; + depsBuildBuild = [ nim-unwrapped ]; + buildInputs = [ openssl ]; - buildPhase = '' - runHook preBuild - HOME=$NIX_BUILD_TOP nim c $nimFlags src/nimble - runHook postBuild - ''; + nimFlags = [ "--cpu:${nimHost.cpu}" "--os:${nimHost.os}" "-d:release" ]; - installPhase = '' - runHook preBuild - install -Dt $out/bin src/nimble - runHook postBuild - ''; - }; + buildPhase = '' + runHook preBuild + HOME=$NIX_BUILD_TOP nim c $nimFlags src/nimble + runHook postBuild + ''; + installPhase = '' + runHook preBuild + install -Dt $out/bin src/nimble + runHook postBuild + ''; }; - wrapped = let - nim' = nim-unwrapped; - nimble' = nimble-unwrapped; + nim = let + nim' = buildPackages.nim-unwrapped; + nimble' = buildPackages.nimble-unwrapped; inherit (stdenv) targetPlatform; in stdenv.mkDerivation { name = "${targetPlatform.config}-nim-wrapper-${nim'.version}"; inherit (nim') version; preferLocalBuild = true; + strictDeps = true; nativeBuildInputs = [ makeWrapper ]; + patches = [ + ./nim.cfg.patch + # Remove configurations that clash with ours + ]; + unpackPhase = '' runHook preUnpack - tar xf ${nim'.src} nim-$version/config/nim.cfg + tar xf ${nim'.src} nim-$version/config cd nim-$version runHook postUnpack ''; dontConfigure = true; + buildPhase = + # Configure the Nim compiler to use $CC and $CXX as backends + # The compiler is configured by two configuration files, each with + # a different DSL. The order of evaluation matters and that order + # is not documented, so duplicate the configuration across both files. + '' + runHook preBuild + cat >> config/config.nims << WTF + + switch("os", "${nimTarget.os}") + switch("cpu", "${nimTarget.cpu}") + switch("define", "nixbuild") + + # Configure the compiler using the $CC set by Nix at build time + import strutils + let cc = getEnv"CC" + if cc.contains("gcc"): + switch("cc", "gcc") + elif cc.contains("clang"): + switch("cc", "clang") + WTF + + mv config/nim.cfg config/nim.cfg.old + cat > config/nim.cfg << WTF + os = "${nimTarget.os}" + cpu = "${nimTarget.cpu}" + define:"nixbuild" + WTF + + cat >> config/nim.cfg < config/nim.cfg.old + rm config/nim.cfg.old + + cat >> config/nim.cfg << WTF + + clang.cpp.exe %= "\$CXX" + clang.cpp.linkerexe %= "\$CXX" + clang.exe %= "\$CC" + clang.linkerexe %= "\$CC" + gcc.cpp.exe %= "\$CXX" + gcc.cpp.linkerexe %= "\$CXX" + gcc.exe %= "\$CC" + gcc.linkerexe %= "\$CC" + WTF + + runHook postBuild + ''; + wrapperArgs = [ - "--prefix PATH : ${lib.makeBinPath [ stdenv.cc gdb ]}:${ + "--prefix PATH : ${lib.makeBinPath [ buildPackages.gdb ]}:${ placeholder "out" }/bin" - "--prefix LD_LIBRARY_PATH : ${ - lib.makeLibraryPath [ stdenv.cc.libc openssl ] - }" + # Used by nim-gdb + + "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ openssl pcre ]}" + # These libraries may be referred to by the standard library. + # This is broken for cross-compilation because the package + # set will be shifted back by nativeBuildInputs. + "--set NIM_CONFIG_PATH ${placeholder "out"}/etc/nim" + # Use the custom configuration + ''--set NIX_HARDENING_ENABLE "''${NIX_HARDENING_ENABLE/fortify}"'' # Fortify hardening appends -O2 to gcc flags which is unwanted for unoptimized nim builds. ]; - buildPhase = with stdenv; - let - ccType = if cc.isGNU then - "gcc" - else if cc.isClang then - "clang" - else - abort "no Nim configuration available for ${cc.name}"; - in '' - runHook preBuild - cat >> config/nim.cfg << EOF - - define:nixbuild - os = ${nimTarget.os} - cpu = ${nimTarget.cpu} - cc = ${ccType} - EOF - - mkdir -p $out/bin $out/etc/nim - export cc=$CC - export cxx=$CXX - substituteAll config/nim.cfg $out/etc/nim/nim.cfg \ - --replace "cc = gcc" "" - - for binpath in ${nim'}/bin/nim?*; do - local binname=`basename $binpath` - makeWrapper \ - $binpath $out/bin/${targetPlatform.config}-$binname \ - $wrapperArgs - ln -s $out/bin/${targetPlatform.config}-$binname $out/bin/$binname - done + installPhase = '' + runHook preInstall - makeWrapper \ - ${nim'}/nim/bin/nim $out/bin/${targetPlatform.config}-nim \ - $wrapperArgs - ln -s $out/bin/${targetPlatform.config}-nim $out/bin/nim + mkdir -p $out/bin $out/etc + + cp -r config $out/etc/nim + for binpath in ${nim'}/bin/nim?*; do + local binname=`basename $binpath` makeWrapper \ - ${nim'}/bin/testament $out/bin/${targetPlatform.config}-testament \ + $binpath $out/bin/${targetPlatform.config}-$binname \ $wrapperArgs - ln -s $out/bin/${targetPlatform.config}-testament $out/bin/testament + ln -s $out/bin/${targetPlatform.config}-$binname $out/bin/$binname + done - makeWrapper \ - ${nimble'}/bin/nimble $out/bin/${targetPlatform.config}-nimble \ - --suffix PATH : $out/bin - ln -s $out/bin/${targetPlatform.config}-nimble $out/bin/nimble + makeWrapper \ + ${nim'}/nim/bin/nim $out/bin/${targetPlatform.config}-nim \ + $wrapperArgs + ln -s $out/bin/${targetPlatform.config}-nim $out/bin/nim - runHook postBuild - ''; + makeWrapper \ + ${nim'}/bin/testament $out/bin/${targetPlatform.config}-testament \ + $wrapperArgs + ln -s $out/bin/${targetPlatform.config}-testament $out/bin/testament + + makeWrapper \ + ${nimble'}/bin/nimble $out/bin/${targetPlatform.config}-nimble \ + --suffix PATH : $out/bin + ln -s $out/bin/${targetPlatform.config}-nimble $out/bin/nimble - dontInstall = true; + runHook postInstall + ''; + + passthru = { + nim = nim'; + nimble = nimble'; + }; - meta = meta // { + meta = nim'.meta // { description = nim'.meta.description + " (${targetPlatform.config} wrapper)"; - platforms = lib.platforms.unix; + platforms = with lib.platforms; unix ++ genode; }; }; -in wrapped // wrapperInputs +} diff --git a/nixpkgs/pkgs/development/compilers/nim/nim.cfg.patch b/nixpkgs/pkgs/development/compilers/nim/nim.cfg.patch new file mode 100644 index 000000000000..a95b672d1c1d --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/nim/nim.cfg.patch @@ -0,0 +1,70 @@ +diff --git a/config/nim.cfg b/config/nim.cfg +index a33a2f0a9..e069193ff 100644 +--- a/config/nim.cfg ++++ b/config/nim.cfg +@@ -8,26 +8,12 @@ + # Environment variables can be accessed like so: + # gcc.path %= "$CC_PATH" + +-cc = gcc +- + # additional options always passed to the compiler: + --parallel_build: "0" # 0 to auto-detect number of processors + + hint[LineTooLong]=off + #hint[XDeclaredButNotUsed]=off + +-# Examples of how to setup a cross-compiler: +- +-# Cross-compiling for Raspberry Pi. +-# (This compiler is available in gcc-arm-linux-gnueabihf package on Ubuntu) +-arm.linux.gcc.exe = "arm-linux-gnueabihf-gcc" +-arm.linux.gcc.linkerexe = "arm-linux-gnueabihf-gcc" +- +-# For OpenWRT, you will also need to adjust PATH to point to your toolchain. +-mips.linux.gcc.exe = "mips-openwrt-linux-gcc" +-mips.linux.gcc.linkerexe = "mips-openwrt-linux-gcc" +- +- + path="$lib/deprecated/core" + path="$lib/deprecated/pure" + path="$lib/pure/collections" +@@ -111,7 +97,7 @@ path="$lib/pure" + @end + + @if unix: +- @if not bsd or haiku: ++ @if not bsd or genode or haiku: + # -fopenmp + gcc.options.linker = "-ldl" + gcc.cpp.options.linker = "-ldl" +@@ -295,29 +281,6 @@ vcc.cpp.options.size = "/O1" + # Configuration for the Tiny C Compiler: + tcc.options.always = "-w" + +-# Configuration for the Genode toolchain +-@if genode: +- noCppExceptions # avoid std C++ +- tlsEmulation:on # no TLS segment register magic +- @if i386 or amd64: +- gcc.exe = "genode-x86-gcc" +- gcc.cpp.exe = "genode-x86-g++" +- gcc.cpp.linkerexe = "genode-x86-ld" +- @elif arm: +- gcc.exe = "genode-arm-gcc" +- gcc.cpp.exe = "genode-arm-g++" +- gcc.cpp.linkerexe = "genode-arm-ld" +- @elif arm64: +- gcc.exe = "genode-aarch64-gcc" +- gcc.cpp.exe = "genode-aarch64-g++" +- gcc.cpp.linkerexe = "genode-aarch64-ld" +- @elif riscv64: +- gcc.exe = "genode-riscv-gcc" +- gcc.cpp.exe = "genode-riscv-g++" +- gcc.cpp.linkerexe = "genode-riscv-ld" +- @end +-@end +- + @if arm or arm64: + --define:nimEmulateOverflowChecks + @end diff --git a/nixpkgs/pkgs/development/compilers/ocaml/3.08.0.nix b/nixpkgs/pkgs/development/compilers/ocaml/3.08.0.nix deleted file mode 100644 index 5762bed41a4a..000000000000 --- a/nixpkgs/pkgs/development/compilers/ocaml/3.08.0.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ stdenv, fetchurl, xlibsWrapper }: - -stdenv.mkDerivation rec { - pname = "ocaml"; - version = "3.08.0"; - - builder = ./builder.sh; - src = fetchurl { - url = "http://tarballs.nixos.org/${pname}-${version}.tar.gz"; - sha256 = "135g5waj7djzrj0dbc8z1llasfs2iv5asq41jifhldxb4l2b97mx"; - }; - configureScript = ./configure-3.08.0; - dontAddPrefix = "True"; - configureFlags = ["-no-tk" "-x11lib" xlibsWrapper]; - buildFlags = ["world" "bootstrap" "opt"]; - checkTarget = ["opt.opt"]; - - meta = { - platforms = lib.platforms.linux; - }; -} diff --git a/nixpkgs/pkgs/development/compilers/ocaml/3.10.0.nix b/nixpkgs/pkgs/development/compilers/ocaml/3.10.0.nix deleted file mode 100644 index e3778457fd3f..000000000000 --- a/nixpkgs/pkgs/development/compilers/ocaml/3.10.0.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ stdenv, fetchurl, xlibsWrapper, ncurses }: - -stdenv.mkDerivation (rec { - - pname = "ocaml"; - version = "3.10.0"; - - src = fetchurl { - url = "https://caml.inria.fr/pub/distrib/ocaml-3.10/${pname}-${version}.tar.bz2"; - sha256 = "1ihmx1civ78s7k2hfc05z1s9vbyx2qw7fg8lnbxnfd6zxkk8878d"; - }; - - prefixKey = "-prefix "; - configureFlags = ["-no-tk" "-x11lib" xlibsWrapper]; - buildFlags = [ "world" "bootstrap" "world.opt" ]; - buildInputs = [xlibsWrapper ncurses]; - installTargets = "install installopt"; - patchPhase = '' - CAT=$(type -tp cat) - sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang - ''; - postBuild = '' - mkdir -p $out/include - ln -sv $out/lib/ocaml/caml $out/include/caml - ''; - - meta = { - homepage = "http://caml.inria.fr/ocaml"; - license = with lib.licenses; [ qpl lgpl2 ]; - description = "Most popular variant of the Caml language"; - platforms = lib.platforms.linux; - }; - -}) diff --git a/nixpkgs/pkgs/development/compilers/ocaml/3.11.2.nix b/nixpkgs/pkgs/development/compilers/ocaml/3.11.2.nix deleted file mode 100644 index 642b0d91b7f8..000000000000 --- a/nixpkgs/pkgs/development/compilers/ocaml/3.11.2.nix +++ /dev/null @@ -1,75 +0,0 @@ -{ stdenv, fetchurl, ncurses, xlibsWrapper }: - -let - useX11 = stdenv.isi686 || stdenv.isx86_64; - useNativeCompilers = stdenv.isi686 || stdenv.isx86_64 || stdenv.isMips; - inherit (lib) optionals optionalString; -in - -stdenv.mkDerivation rec { - - pname = "ocaml"; - version = "3.11.2"; - - src = fetchurl { - url = "https://caml.inria.fr/pub/distrib/ocaml-3.11/${pname}-${version}.tar.bz2"; - sha256 = "86f3387a0d7e7c8be2a3c53af083a5a726e333686208d5ea0dd6bb5ac3f58143"; - }; - - # Needed to avoid a SIGBUS on the final executable on mips - NIX_CFLAGS_COMPILE = if stdenv.isMips then "-fPIC" else ""; - - patches = optionals stdenv.isDarwin [ ./gnused-on-osx-fix.patch ] ++ - [ (fetchurl { - name = "0007-Fix-ocamlopt-w.r.t.-binutils-2.21.patch"; - url = "http://caml.inria.fr/mantis/file_download.php?file_id=418&type=bug"; - sha256 = "612a9ac108bbfce2238aa5634123da162f0315dedb219958be705e0d92dcdd8e"; - }) - ]; - - prefixKey = "-prefix "; - configureFlags = ["-no-tk"] ++ optionals useX11 [ "-x11lib" xlibsWrapper ]; - buildFlags = [ "world" ] ++ optionals useNativeCompilers [ "bootstrap" "world.opt" ]; - buildInputs = [ncurses] ++ optionals useX11 [ xlibsWrapper ]; - installTargets = "install" + optionalString useNativeCompilers " installopt"; - prePatch = '' - CAT=$(type -tp cat) - sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang - patch -p0 < ${./mips64.patch} - ''; - postBuild = '' - mkdir -p $out/include - ln -sv $out/lib/ocaml/caml $out/include/caml - ''; - - meta = with lib; { - homepage = "http://caml.inria.fr/ocaml"; - license = with licenses; [ - qpl /* compiler */ - lgpl2 /* library */ - ]; - description = "Most popular variant of the Caml language"; - - longDescription = - '' Objective Caml is the most popular variant of the Caml language. - From a language standpoint, it extends the core Caml language with a - fully-fledged object-oriented layer, as well as a powerful module - system, all connected by a sound, polymorphic type system featuring - type inference. - - The Objective Caml system is an industrial-strength implementation - of this language, featuring a high-performance native-code compiler - (ocamlopt) for 9 processor architectures (IA32, PowerPC, AMD64, - Alpha, Sparc, Mips, IA64, HPPA, StrongArm), as well as a bytecode - compiler (ocamlc) and an interactive read-eval-print loop (ocaml) - for quick development and portability. The Objective Caml - distribution includes a comprehensive standard library, a replay - debugger (ocamldebug), lexer (ocamllex) and parser (ocamlyacc) - generators, a pre-processor pretty-printer (camlp4) and a - documentation generator (ocamldoc). - ''; - - platforms = with platforms; linux ++ darwin; - }; - -} diff --git a/nixpkgs/pkgs/development/compilers/ocaml/3.12.1-darwin-fix-configure.patch b/nixpkgs/pkgs/development/compilers/ocaml/3.12.1-darwin-fix-configure.patch deleted file mode 100644 index 4b867bbb1e6f..000000000000 --- a/nixpkgs/pkgs/development/compilers/ocaml/3.12.1-darwin-fix-configure.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff -Nuar ocaml-3.12.1/configure ocaml-3.12.1-fix-configure/configure ---- ocaml-3.12.1/configure 2011-07-04 23:15:01.000000000 +0200 -+++ ocaml-3.12.1-fix-configure/configure 2012-06-06 22:20:40.000000000 +0200 -@@ -259,7 +259,7 @@ - bytecccompopts="-fno-defer-pop $gcc_warnings -DSHRINKED_GNUC" - mathlib="";; - *,*-*-darwin*) -- bytecccompopts="-fno-defer-pop -no-cpp-precomp $gcc_warnings" -+ bytecccompopts="-fno-defer-pop $gcc_warnings" - mathlib="" - # Tell gcc that we can use 32-bit code addresses for threaded code - # unless we are compiled for a shared library (-fPIC option) -@@ -739,7 +739,7 @@ - *,*,rhapsody,*) nativecccompopts="$gcc_warnings -DDARWIN_VERSION_6 $dl_defs" - if $arch64; then partialld="ld -r -arch ppc64"; fi;; - *,gcc*,cygwin,*) nativecccompopts="$gcc_warnings -U_WIN32";; -- amd64,gcc*,macosx,*) partialld="ld -r -arch x86_64";; -+ amd64,gcc*,macosx,*) partialld="ld -r";; - amd64,gcc*,solaris,*) partialld="ld -r -m elf_x86_64";; - *,gcc*,*,*) nativecccompopts="$gcc_warnings";; - esac -@@ -752,8 +752,8 @@ - asppprofflags='-pg -DPROFILING';; - alpha,*,*) as='as' - aspp='gcc -c';; -- amd64,*,macosx) as='as -arch x86_64' -- aspp='gcc -arch x86_64 -c';; -+ amd64,*,macosx) as='as' -+ aspp='gcc -c';; - amd64,*,solaris) as='as --64' - aspp='gcc -m64 -c';; - amd64,*,*) as='as' diff --git a/nixpkgs/pkgs/development/compilers/ocaml/3.12.1.nix b/nixpkgs/pkgs/development/compilers/ocaml/3.12.1.nix deleted file mode 100644 index 781b5be09824..000000000000 --- a/nixpkgs/pkgs/development/compilers/ocaml/3.12.1.nix +++ /dev/null @@ -1,69 +0,0 @@ -{ stdenv, fetchurl, ncurses, xlibsWrapper }: - -let - useX11 = !stdenv.isAarch32 && !stdenv.isMips; - useNativeCompilers = !stdenv.isMips; - inherit (lib) optionals optionalString; -in - -stdenv.mkDerivation rec { - - pname = "ocaml"; - version = "3.12.1"; - - src = fetchurl { - url = "https://caml.inria.fr/pub/distrib/ocaml-3.12/${pname}-${version}.tar.bz2"; - sha256 = "13cmhkh7s6srnlvhg3s9qzh3a5dbk2m9qr35jzq922sylwymdkzd"; - }; - - prefixKey = "-prefix "; - configureFlags = ["-no-tk"] ++ optionals useX11 [ "-x11lib" xlibsWrapper ]; - buildFlags = [ "world" ] ++ optionals useNativeCompilers [ "bootstrap" "world.opt" ]; - buildInputs = [ncurses] ++ optionals useX11 [ xlibsWrapper ]; - installTargets = "install" + optionalString useNativeCompilers " installopt"; - patches = optionals stdenv.isDarwin [ ./3.12.1-darwin-fix-configure.patch ]; - preConfigure = '' - CAT=$(type -tp cat) - sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang - ''; - postBuild = '' - mkdir -p $out/include - ln -sv $out/lib/ocaml/caml $out/include/caml - ''; - - passthru = { - nativeCompilers = useNativeCompilers; - }; - - meta = with lib; { - homepage = "http://caml.inria.fr/ocaml"; - branch = "3.12"; - license = with licenses; [ - qpl /* compiler */ - lgpl2 /* library */ - ]; - description = "Most popular variant of the Caml language"; - - longDescription = - '' - OCaml is the most popular variant of the Caml language. From a - language standpoint, it extends the core Caml language with a - fully-fledged object-oriented layer, as well as a powerful module - system, all connected by a sound, polymorphic type system featuring - type inference. - - The OCaml system is an industrial-strength implementation of this - language, featuring a high-performance native-code compiler (ocamlopt) - for 9 processor architectures (IA32, PowerPC, AMD64, Alpha, Sparc, - Mips, IA64, HPPA, StrongArm), as well as a bytecode compiler (ocamlc) - and an interactive read-eval-print loop (ocaml) for quick development - and portability. The OCaml distribution includes a comprehensive - standard library, a replay debugger (ocamldebug), lexer (ocamllex) and - parser (ocamlyacc) generators, a pre-processor pretty-printer (camlp4) - and a documentation generator (ocamldoc). - ''; - - platforms = with platforms; linux; - }; - -} diff --git a/nixpkgs/pkgs/development/compilers/ocaml/4.11.nix b/nixpkgs/pkgs/development/compilers/ocaml/4.11.nix index afda8592818f..3e5aefc11f1c 100644 --- a/nixpkgs/pkgs/development/compilers/ocaml/4.11.nix +++ b/nixpkgs/pkgs/development/compilers/ocaml/4.11.nix @@ -1,6 +1,6 @@ import ./generic.nix { major_version = "4"; minor_version = "11"; - patch_version = "1"; - sha256 = "0k4521c0p10c5ams6vjv5qkkjhmpkb0bfn04llcz46ah0f3r2jpa"; + patch_version = "2"; + sha256 = "1m3wrgkkv3f77wvcymjm0i2srxzmx62y6jln3i0a2px07ng08l9z"; } diff --git a/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix b/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix index c422d2a15a3f..0662e66e0b6a 100644 --- a/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix +++ b/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix @@ -1,9 +1,6 @@ import ./generic.nix { major_version = "4"; minor_version = "12"; - patch_version = "0-beta1"; - src = fetchTarball { - url = "http://caml.inria.fr/pub/distrib/ocaml-4.12/ocaml-4.12.0~beta1.tar.xz"; - sha256 = "1rny74mi0knl8byqg2naw1mgvn22c2zihlwvzbkd56j97flqsxsm"; - }; + patch_version = "0"; + sha256 = "1hxy349jfa2vkfgmxf6pvd9w4z5bmcgsg0fxfdabcghyvjw9vvir"; } diff --git a/nixpkgs/pkgs/development/compilers/ocaml/generic.nix b/nixpkgs/pkgs/development/compilers/ocaml/generic.nix index d4a6b6250b52..d9853dd642ab 100644 --- a/nixpkgs/pkgs/development/compilers/ocaml/generic.nix +++ b/nixpkgs/pkgs/development/compilers/ocaml/generic.nix @@ -66,6 +66,10 @@ stdenv.mkDerivation (args // { preConfigure = optionalString (!lib.versionAtLeast version "4.04") '' CAT=$(type -tp cat) sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang + '' + optionalString (stdenv.isDarwin && stdenv.isAarch64) '' + # Do what upstream does by default now: https://github.com/ocaml/ocaml/pull/10176 + # This is required for aarch64-darwin, everything else works as is. + AS="${stdenv.cc}/bin/cc -c" ASPP="${stdenv.cc}/bin/cc -c" ''; postBuild = '' mkdir -p $out/include diff --git a/nixpkgs/pkgs/development/compilers/opa/default.nix b/nixpkgs/pkgs/development/compilers/opa/default.nix index 5e648c9de4ad..8e70ca8dac25 100644 --- a/nixpkgs/pkgs/development/compilers/opa/default.nix +++ b/nixpkgs/pkgs/development/compilers/opa/default.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { sha256 = "1qs91rq9xrafv2mf2v415k8lv91ab3ycz0xkpjh1mng5ca3pjlf3"; }; - patches = [ ./ocaml-4.03.patch ]; + patches = [ ./ocaml-4.03.patch ./ocaml-4.04.patch ]; # Paths so the opa compiler code generation will use the same programs as were # used to build opa. diff --git a/nixpkgs/pkgs/development/compilers/opa/ocaml-4.04.patch b/nixpkgs/pkgs/development/compilers/opa/ocaml-4.04.patch new file mode 100644 index 000000000000..45cae411fb34 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/opa/ocaml-4.04.patch @@ -0,0 +1,75 @@ +diff --git a/compiler/libbsl/bslLib.ml b/compiler/libbsl/bslLib.ml +index b9f75bd1..171af065 100644 +--- a/compiler/libbsl/bslLib.ml ++++ b/compiler/libbsl/bslLib.ml +@@ -726,7 +726,7 @@ struct + let root elt = !(elt.root) + let elt_name elt = elt.name + let elts e = e +- let children = List.map (fun e -> e.name, e) ++ let children m = List.map (fun e -> e.name, e) m + let is_root e = Path.is_root e.pwd + + let parent e = +diff --git a/compiler/passes/surfaceAstDependencies.ml b/compiler/passes/surfaceAstDependencies.ml +index f4354a3f..81253d32 100644 +--- a/compiler/passes/surfaceAstDependencies.ml ++++ b/compiler/passes/surfaceAstDependencies.ml +@@ -66,7 +66,6 @@ open SurfaceAst + + (* shorthands *) + module SAH = SurfaceAstHelper +-module C = SurfaceAstCons.ExprIdentCons + module D = SurfaceAstDecons + module S = SurfaceAst + +diff --git a/compiler/passes/surfaceAstPasses.ml b/compiler/passes/surfaceAstPasses.ml +index 10edf5cb..00de59fa 100644 +--- a/compiler/passes/surfaceAstPasses.ml ++++ b/compiler/passes/surfaceAstPasses.ml +@@ -25,7 +25,6 @@ open SurfaceAstPassesTypes + + (* alias *) + module C = SurfaceAstCons.ExprIdentCons +-module CS = SurfaceAstCons.StringCons + + + +diff --git a/compiler/qmlslicer/qmlSimpleSlicer.ml b/compiler/qmlslicer/qmlSimpleSlicer.ml +index 2eebd96b..04ce77c8 100644 +--- a/compiler/qmlslicer/qmlSimpleSlicer.ml ++++ b/compiler/qmlslicer/qmlSimpleSlicer.ml +@@ -17,7 +17,6 @@ + *) + module Format = Base.Format + module List = Base.List +-module String = Base.String + module Q = QmlAst + module Package = ObjectFiles.Package + +diff --git a/ocamllib/libbase/baseObj.mli b/ocamllib/libbase/baseObj.mli +index da2d9736..82d72963 100644 +--- a/ocamllib/libbase/baseObj.mli ++++ b/ocamllib/libbase/baseObj.mli +@@ -21,7 +21,7 @@ type t = Obj.t + external repr : 'a -> t = "%identity" + external obj : t -> 'a = "%identity" + external magic : 'a -> 'b = "%identity" +-external is_block : t -> bool = "caml_obj_is_block" ++val [@inline always] is_block : t -> bool + external is_int : t -> bool = "%obj_is_int" + external tag : t -> int = "caml_obj_tag" + external set_tag : t -> int -> unit = "caml_obj_set_tag" +diff --git a/ocamllib/libbase/baseString.ml b/ocamllib/libbase/baseString.ml +index 640ce2fa..6931c608 100644 +--- a/ocamllib/libbase/baseString.ml ++++ b/ocamllib/libbase/baseString.ml +@@ -20,7 +20,7 @@ + (* depends *) + module Char = BaseChar + +-include Bytes ++include String + + let compare_int (a:int) b = Pervasives.compare a b + diff --git a/nixpkgs/pkgs/development/compilers/openjdk/11.nix b/nixpkgs/pkgs/development/compilers/openjdk/11.nix index 18440a718d19..f9dd7205659e 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/11.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/11.nix @@ -11,8 +11,8 @@ let major = "11"; minor = "0"; - update = "9"; - build = "11"; + update = "10"; + build = "9"; openjdk = stdenv.mkDerivation rec { pname = "openjdk" + lib.optionalString headless "-headless"; @@ -22,12 +22,12 @@ let owner = "openjdk"; repo = "jdk${major}u"; rev = "jdk-${version}"; - sha256 = "11j2rqz9nag5y562g99py4p72f2kv4wwwyrnaspmrzax00wynyx7"; + sha256 = "06pm3hpz4ggiqwvkgzxr39y9kga7vk4flakfznz5979bvgb926vw"; }; - nativeBuildInputs = [ pkg-config autoconf ]; + nativeBuildInputs = [ pkg-config autoconf unzip ]; buildInputs = [ - cpio file which unzip zip perl zlib cups freetype alsaLib libjpeg giflib + cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst libXi libXinerama libXcursor libXrandr fontconfig openjdk11-bootstrap ] ++ lib.optionals (!headless && enableGnome2) [ diff --git a/nixpkgs/pkgs/development/compilers/openjdk/12.nix b/nixpkgs/pkgs/development/compilers/openjdk/12.nix index f1c6d8493eb7..8c12b5be7f2e 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/12.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/12.nix @@ -22,9 +22,9 @@ let sha256 = "1ndlxmikyy298z7lqpr1bd0zxq7yx6xidj8y3c8mw9m9fy64h9c7"; }; - nativeBuildInputs = [ pkg-config autoconf ]; + nativeBuildInputs = [ pkg-config autoconf unzip ]; buildInputs = [ - cpio file which unzip zip perl zlib cups freetype alsaLib libjpeg giflib + cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst libXi libXinerama libXcursor libXrandr fontconfig openjdk11 ] ++ lib.optionals (!headless && enableGnome2) [ diff --git a/nixpkgs/pkgs/development/compilers/openjdk/13.nix b/nixpkgs/pkgs/development/compilers/openjdk/13.nix index 05e367e63146..7e4d9fc7d693 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/13.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/13.nix @@ -22,9 +22,9 @@ let sha256 = "1871ziss7ny19rw8f7bay5vznmhpqbfi4ihn3yygs06wyxhm0zmv"; }; - nativeBuildInputs = [ pkg-config autoconf ]; + nativeBuildInputs = [ pkg-config autoconf unzip ]; buildInputs = [ - cpio file which unzip zip perl zlib cups freetype alsaLib libjpeg giflib + cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst libXi libXinerama libXcursor libXrandr fontconfig openjdk13-bootstrap ] ++ lib.optionals (!headless && enableGnome2) [ diff --git a/nixpkgs/pkgs/development/compilers/openjdk/14.nix b/nixpkgs/pkgs/development/compilers/openjdk/14.nix index bda6444a8f98..d98d0e9f8ee6 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/14.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/14.nix @@ -22,9 +22,9 @@ let sha256 = "1s1pc6ihzf0awp4hbaqfxmbica0hnrg8nr7s0yd2hfn7nan8xmf3"; }; - nativeBuildInputs = [ pkg-config autoconf ]; + nativeBuildInputs = [ pkg-config autoconf unzip ]; buildInputs = [ - cpio file which unzip zip perl zlib cups freetype alsaLib libjpeg giflib + cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst libXi libXinerama libXcursor libXrandr fontconfig openjdk14-bootstrap ] ++ lib.optionals (!headless && enableGnome2) [ diff --git a/nixpkgs/pkgs/development/compilers/openjdk/8.nix b/nixpkgs/pkgs/development/compilers/openjdk/8.nix index 96a01b0cd925..75dc722b1b22 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/8.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/8.nix @@ -83,9 +83,9 @@ let outputs = [ "out" "jre" ]; - nativeBuildInputs = [ pkg-config lndir ]; + nativeBuildInputs = [ pkg-config lndir unzip ]; buildInputs = [ - cpio file which unzip zip perl openjdk8-bootstrap zlib cups freetype alsaLib + cpio file which zip perl openjdk8-bootstrap zlib cups freetype alsaLib libjpeg giflib libX11 libICE libXext libXrender libXtst libXt libXtst libXi libXinerama libXcursor libXrandr fontconfig ] ++ lib.optionals (!headless && enableGnome2) [ diff --git a/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix b/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix index 64654351886f..6bcd79b274be 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/darwin/11.nix @@ -7,15 +7,16 @@ let }; jdk = stdenv.mkDerivation rec { - name = "zulu11.2.3-jdk11.0.1"; + name = "zulu11.43.21-ca-jdk11.0.9"; src = fetchurl { url = "https://cdn.azul.com/zulu/bin/${name}-macosx_x64.tar.gz"; - sha256 = "1jxnxmy79inwf3146ygry1mzv3dj6yrzqll16j7dpr91x1p3dpqy"; + sha256 = "1j19fb5mwdkfn6y8wfsnvxsz6wfpcab4xv439fqssxy520n6q4zs"; curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/zulu-mac/"; }; - buildInputs = [ unzip freetype ]; + nativeBuildInputs = [ unzip ]; + buildInputs = [ freetype ]; installPhase = '' mkdir -p $out diff --git a/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix b/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix index 4df180c1f5a7..a5cd15817e9a 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/darwin/8.nix @@ -18,7 +18,8 @@ let curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/zulu-linux/"; }; - buildInputs = [ unzip freetype ]; + nativeBuildInputs = [ unzip ]; + buildInputs = [ freetype ]; installPhase = '' mkdir -p $out diff --git a/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix b/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix index 8885db4115ea..938210547605 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/darwin/default.nix @@ -7,15 +7,17 @@ let }; jdk = stdenv.mkDerivation rec { - name = "zulu15.28.51-ca-jdk15.0.1"; + pname = "zulu15.28.51-ca-jdk"; + version = "15.0.1"; src = fetchurl { - url = "https://cdn.azul.com/zulu/bin/${name}-macosx_x64.tar.gz"; + url = "https://cdn.azul.com/zulu/bin/${pname}${version}-macosx_x64.tar.gz"; sha256 = "0h738pbnwcn7pjp0qyryzazqj5nw5sy2f8l0ycl39crm9ia6akvh"; curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/"; }; - buildInputs = [ unzip freetype ]; + nativeBuildInputs = [ unzip ]; + buildInputs = [ freetype ]; installPhase = '' mkdir -p $out diff --git a/nixpkgs/pkgs/development/compilers/openjdk/default.nix b/nixpkgs/pkgs/development/compilers/openjdk/default.nix index ddd523ad7871..5606059c62d3 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/default.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/default.nix @@ -22,9 +22,9 @@ let sha256 = "1h8n5figc9q0k9p8b0qggyhvqagvxanfih1lj5j492c74cd1mx1l"; }; - nativeBuildInputs = [ pkg-config autoconf ]; + nativeBuildInputs = [ pkg-config autoconf unzip ]; buildInputs = [ - cpio file which unzip zip perl zlib cups freetype alsaLib libjpeg giflib + cpio file which zip perl zlib cups freetype alsaLib libjpeg giflib libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst libXi libXinerama libXcursor libXrandr fontconfig openjdk15-bootstrap ] ++ lib.optionals (!headless && enableGnome2) [ diff --git a/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix b/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix index f9059ae2fc43..655b29f6535d 100644 --- a/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix +++ b/nixpkgs/pkgs/development/compilers/openjdk/openjfx/15.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchFromGitHub, writeText, openjdk11_headless, gradleGen , pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsaLib -, ffmpeg_3, python, ruby }: +, ffmpeg, python3, ruby }: let major = "15"; @@ -21,8 +21,8 @@ let sha256 = "019glq8rhn6amy3n5jc17vi2wpf1pxpmmywvyz1ga8n09w7xscq1"; }; - buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsaLib ffmpeg_3 ]; - nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python ruby ]; + buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsaLib ffmpeg ]; + nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ]; dontUseCmakeConfigure = true; diff --git a/nixpkgs/pkgs/development/compilers/ophis/default.nix b/nixpkgs/pkgs/development/compilers/ophis/default.nix new file mode 100644 index 000000000000..f28513a9bb26 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/ophis/default.nix @@ -0,0 +1,29 @@ +{ lib, buildPythonApplication, fetchFromGitHub }: + +buildPythonApplication rec { + pname = "ophis"; + version = "unstable-2019-04-13"; + + src = fetchFromGitHub { + owner = "michaelcmartin"; + repo = "Ophis"; + rev = "99f074da278d4ec80689c0e22e20c5552ea12512"; + sha256 = "2x8vwLTSngqQqmVrVh/mM4peATgaRqOSwrfm5XCkg/g="; + }; + + sourceRoot = "./src"; + + meta = with lib; { + homepage = "http://michaelcmartin.github.io/Ophis/"; + description = "A cross-assembler for the 6502 series of microprocessors"; + longDescription = '' + Ophis is an assembler for the 6502 microprocessor - the famous chip used + in the vast majority of the classic 8-bit computers and consoles. Its + primary design goals are code readability and output flexibility - Ophis + has successfully been used to create programs for the Nintendo + Entertainment System, the Atari 2600, and the Commodore 64. + ''; + license = licenses.mit; + maintainers = with maintainers; [ AndersonTorres ]; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix index 7a6cdf4d7052..41f4befe469f 100644 --- a/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix +++ b/nixpkgs/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix @@ -83,11 +83,9 @@ let result = stdenv.mkDerivation rec { sha256 = sha256.${stdenv.hostPlatform.system}; }; - nativeBuildInputs = [ file ] + nativeBuildInputs = [ file makeWrapper ] ++ lib.optional installjce unzip; - buildInputs = [ makeWrapper ]; - # See: https://github.com/NixOS/patchelf/issues/10 dontStrip = 1; diff --git a/nixpkgs/pkgs/development/compilers/owl-lisp/default.nix b/nixpkgs/pkgs/development/compilers/owl-lisp/default.nix index d8d141a5e567..2471910fdb5b 100644 --- a/nixpkgs/pkgs/development/compilers/owl-lisp/default.nix +++ b/nixpkgs/pkgs/development/compilers/owl-lisp/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ which ]; - makeFlags = [ "PREFIX=${placeholder "out"}" "CC=cc" ]; + makeFlags = [ "PREFIX=${placeholder "out"}" "CC=${stdenv.cc.targetPrefix}cc" ]; # tests are run as part of the compilation process doCheck = false; diff --git a/nixpkgs/pkgs/development/compilers/ponyc/default.nix b/nixpkgs/pkgs/development/compilers/ponyc/default.nix index 3a2e3c4b944c..9fc8188daa10 100644 --- a/nixpkgs/pkgs/development/compilers/ponyc/default.nix +++ b/nixpkgs/pkgs/development/compilers/ponyc/default.nix @@ -1,15 +1,15 @@ -{ lib, stdenv, fetchFromGitHub, fetchurl, makeWrapper, pcre2, coreutils, which, libressl, libxml2, cmake, z3, substituteAll, +{ lib, stdenv, fetchFromGitHub, fetchurl, makeWrapper, pcre2, coreutils, which, openssl, libxml2, cmake, z3, substituteAll, cc ? stdenv.cc, lto ? !stdenv.isDarwin }: stdenv.mkDerivation (rec { pname = "ponyc"; - version = "0.38.1"; + version = "0.38.3"; src = fetchFromGitHub { owner = "ponylang"; repo = pname; rev = version; - sha256 = "1hk810k9h3bl641pgw91y4x2qw67rvbapx6p2pk9qz5p7nfcn7qh"; + sha256 = "14kivmyphi7gbd7mgd4cnsiwl4cl7wih8kwzh7n79s2s4c5hj4ak"; # Due to a bug in LLVM 9.x, ponyc has to include its own vendored patched # LLVM. (The submodule is a specific tag in the LLVM source tree). @@ -24,7 +24,7 @@ stdenv.mkDerivation (rec { }; ponygbenchmark = fetchurl { - url = https://github.com/google/benchmark/archive/v1.5.0.tar.gz; + url = "https://github.com/google/benchmark/archive/v1.5.0.tar.gz"; sha256 = "06i2cr4rj126m1zfz0x1rbxv1mw1l7a11mzal5kqk56cdrdicsiw"; name = "v1.5.0.tar.gz"; }; @@ -39,7 +39,7 @@ stdenv.mkDerivation (rec { (substituteAll { src = ./make-safe-for-sandbox.patch; googletest = fetchurl { - url = https://github.com/google/googletest/archive/release-1.8.1.tar.gz; + url = "https://github.com/google/googletest/archive/release-1.8.1.tar.gz"; sha256 = "17147961i01fl099ygxjx4asvjanwdd446nwbq9v8156h98zxwcv"; name = "release-1.8.1.tar.gz"; }; @@ -95,7 +95,7 @@ stdenv.mkDerivation (rec { wrapProgram $out/bin/ponyc \ --prefix PATH ":" "${stdenv.cc}/bin" \ --set-default CC "$CC" \ - --prefix PONYPATH : "${lib.makeLibraryPath [ pcre2 libressl (placeholder "out") ]}" + --prefix PONYPATH : "${lib.makeLibraryPath [ pcre2 openssl (placeholder "out") ]}" ''; # Stripping breaks linking for ponyc diff --git a/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix b/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix index 5da1ec77016c..8910d7f1e610 100644 --- a/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix +++ b/nixpkgs/pkgs/development/compilers/ponyc/pony-corral.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation ( rec { pname = "corral"; - version = "0.4.0"; + version = "0.4.1"; src = fetchFromGitHub { owner = "ponylang"; repo = pname; rev = version; - sha256 = "0kydx4psl6k4n46as9xc5xwbwapibm6g7haxds7y9d392807qfqk"; + sha256 = "sha256-YJZ1jGMOeZKGZaTrWO2mtR94F0voC2DXaghi0LytF7I="; }; buildInputs = [ ponyc ]; diff --git a/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix b/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix index 741d0ec7d1c3..6d7f05ebdae7 100644 --- a/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix +++ b/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix @@ -18,19 +18,19 @@ let in stdenv.mkDerivation rec { pname = "purescript"; - version = "0.13.8"; + version = "0.14.0"; src = if stdenv.isDarwin then fetchurl { url = "https://github.com/${pname}/${pname}/releases/download/v${version}/macos.tar.gz"; - sha256 = "058w8w24g7xbdkn5l97jfj9dcg81vkfh3w8112anj982lynk6391"; + sha256 = "0dfnn5ar7zgvgvxcvw5f6vwpkgkwa017y07s7mvdv44zf4hzsj3s"; } else fetchurl { url = "https://github.com/${pname}/${pname}/releases/download/v${version}/linux64.tar.gz"; - sha256 = "01xb9sl6rmg02ypdrv4n0mkzmdr5y9rajcdmg9c3j46q7z6q9mxy"; + sha256 = "1l3i7mxlzb2dkq6ff37rvnaarikxzxj0fg9i2kk26s8pz7vpqgjh"; }; diff --git a/nixpkgs/pkgs/development/compilers/rasm/default.nix b/nixpkgs/pkgs/development/compilers/rasm/default.nix index c2415899f6b4..0feaabc92e62 100644 --- a/nixpkgs/pkgs/development/compilers/rasm/default.nix +++ b/nixpkgs/pkgs/development/compilers/rasm/default.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { buildPhase = '' # according to official documentation - cc rasm_v*.c -O2 -lm -lrt -o rasm + ${stdenv.cc.targetPrefix}cc rasm_v*.c -O2 -lm -o rasm ''; installPhase = '' @@ -28,6 +28,6 @@ stdenv.mkDerivation rec { # use -n option to display all licenses license = licenses.mit; # expat version maintainers = [ ]; - platforms = platforms.linux; + platforms = platforms.all; }; } diff --git a/nixpkgs/pkgs/development/compilers/reason/default.nix b/nixpkgs/pkgs/development/compilers/reason/default.nix index 2807ddb6b5fd..2293c83cc02c 100644 --- a/nixpkgs/pkgs/development/compilers/reason/default.nix +++ b/nixpkgs/pkgs/development/compilers/reason/default.nix @@ -3,14 +3,14 @@ }: stdenv.mkDerivation rec { - name = "ocaml${ocaml.version}-reason-${version}"; - version = "3.6.2"; + pname = "ocaml${ocaml.version}-reason"; + version = "3.7.0"; src = fetchFromGitHub { owner = "facebook"; repo = "reason"; - rev = "6017d6dd930f4989177c3f7c3c20cffbaabaa49a"; - sha256 = "17wkcl3r0ckhlki9fk0mcwbnd7kpkqm1h0xjw2j2x1097n470df0"; + rev = "daa11255cb4716ce1c370925251021bd6e3bd974"; + sha256 = "0m6ldrci1a4j0qv1cbwh770zni3al8qxsphl353rv19f6rblplhs"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/nixpkgs/pkgs/development/compilers/rust/1_49.nix b/nixpkgs/pkgs/development/compilers/rust/1_50.nix index 3e76cdfe9690..4e393a588fb3 100644 --- a/nixpkgs/pkgs/development/compilers/rust/1_49.nix +++ b/nixpkgs/pkgs/development/compilers/rust/1_50.nix @@ -15,43 +15,43 @@ , CoreFoundation, Security , pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost , makeRustPlatform -, llvmPackages_5, llvm_11 +, llvmPackages_11, llvm_11 } @ args: import ./default.nix { - rustcVersion = "1.49.0"; - rustcSha256 = "0yf7kll517398dgqsr7m3gldzj0iwsp3ggzxrayckpqzvylfy2mm"; + rustcVersion = "1.50.0"; + rustcSha256 = "0pjs7j62maiyvkmhp9zrxl528g2n0fphp4rq6ap7aqdv0a6qz5wm"; llvmSharedForBuild = pkgsBuildBuild.llvm_11.override { enableSharedLibraries = true; }; llvmSharedForHost = pkgsBuildHost.llvm_11.override { enableSharedLibraries = true; }; llvmSharedForTarget = pkgsBuildTarget.llvm_11.override { enableSharedLibraries = true; }; - llvmBootstrapForDarwin = llvmPackages_5; + llvmBootstrapForDarwin = llvmPackages_11; # For use at runtime llvmShared = llvm_11.override { enableSharedLibraries = true; }; # Note: the version MUST be one version prior to the version we're # building - bootstrapVersion = "1.48.0"; + bootstrapVersion = "1.49.0"; # fetch hashes by running `print-hashes.sh ${bootstrapVersion}` bootstrapHashes = { - i686-unknown-linux-gnu = "7fdb8836a1f0427d5b47e6a2d496f67ebff04350407411f57cf20c9b3544e26f"; - x86_64-unknown-linux-gnu = "950420a35b2dd9091f1b93a9ccd5abc026ca7112e667f246b1deb79204e2038b"; - x86_64-unknown-linux-musl = "4ed9627f57b4e0b9807fc5e7513d9731f4791668b7f875b9e44e65e21072c56f"; - arm-unknown-linux-gnueabihf = "e68a81eebd4570343a0fc35cb8ee24cad911d6cee2e374f284b76546ca6636d5"; - armv7-unknown-linux-gnueabihf = "3aed4a63ebdd57690a31d11afbe95e6407edc224a6769be5694a1ed43bf899cb"; - aarch64-unknown-linux-gnu = "c4769418d8d89f432e4a3a21ad60f99629e4b13bbfc29aef7d9d51c4e8ee8a8a"; - aarch64-unknown-linux-musl = "ac4de580a28e45a9773b389b296d13bfeeb08263cb1f8343859577a54940dae9"; - x86_64-apple-darwin = "20e727cad10f43e3abcedb2a80979ae26923038e0e8a855e8a783da255054113"; - powerpc64le-unknown-linux-gnu = "e6457a0214f3b1b04bd5b2618bba7e3826e254216420dede2971b571a1c13bb1"; + i686-unknown-linux-gnu = "5371bfa2c8e566aa283acdfa93d24b981c789d7c040ac1ca74e76bff1c7f6598"; + x86_64-unknown-linux-gnu = "8b14446df82f3707d69cf58fed92f18e0bff91621c62baf89288ef70e3e92981"; + x86_64-unknown-linux-musl = "f92a5a4adcfac4206a223d089a364a8375d1b6f112f3f2efa3f6d53d08a61904"; + arm-unknown-linux-gnueabihf = "e5d93576eef874a9b22be9aa157cac5c8cdebebde8b57f0693248d4a589df42c"; + armv7-unknown-linux-gnueabihf = "34ba3c979b144ef27d3c71d177cc1774551edf26e79d36719c86a51d9b9e34c0"; + aarch64-unknown-linux-gnu = "b551bd482041307fa3373a687d6d6a2c4c0931c2e0a68b8b75dc80bc5cf5f002"; + aarch64-unknown-linux-musl = "0a43d96a508c720520328112d609916d062f866a5c35f1db8f906284035d6d98"; + x86_64-apple-darwin = "fe3e248bc4b0ee0a2595693687ad845c8a8bda824a56c9321520bcca02433716"; + powerpc64le-unknown-linux-gnu = "365d7721dd2521e5dad12aa73651bad2be375e798e443636d2c523cad5b54359"; }; - selectRustPackage = pkgs: pkgs.rust_1_49; + selectRustPackage = pkgs: pkgs.rust_1_50; rustcPatches = [ ]; } -(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_5" "llvm_11"]) +(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvm_11"]) diff --git a/nixpkgs/pkgs/development/compilers/rust/binary.nix b/nixpkgs/pkgs/development/compilers/rust/binary.nix index 770cc3415f2c..ce4250f675e9 100644 --- a/nixpkgs/pkgs/development/compilers/rust/binary.nix +++ b/nixpkgs/pkgs/development/compilers/rust/binary.nix @@ -83,8 +83,8 @@ rec { license = [ licenses.mit licenses.asl20 ]; }; - buildInputs = [ makeWrapper bash ] - ++ lib.optional stdenv.isDarwin Security; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ bash ] ++ lib.optional stdenv.isDarwin Security; postPatch = '' patchShebangs . diff --git a/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix b/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix index 4b1f572bebb8..584b1fdbe438 100644 --- a/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix +++ b/nixpkgs/pkgs/development/compilers/rust/make-rust-platform.nix @@ -12,7 +12,8 @@ rec { }; buildRustPackage = callPackage ../../../build-support/rust { - inherit rustc cargo fetchCargoTarball; + inherit cargoBuildHook cargoCheckHook cargoInstallHook cargoSetupHook + fetchCargoTarball rustc; }; rustcSrc = callPackage ./rust-src.nix { @@ -22,4 +23,9 @@ rec { rustLibSrc = callPackage ./rust-lib-src.nix { inherit rustc; }; + + # Hooks + inherit (callPackage ../../../build-support/rust/hooks { + inherit cargo; + }) cargoBuildHook cargoCheckHook cargoInstallHook cargoSetupHook maturinBuildHook; } diff --git a/nixpkgs/pkgs/development/compilers/rust/rls/default.nix b/nixpkgs/pkgs/development/compilers/rust/rls/default.nix index ee860d782580..aa55866def51 100644 --- a/nixpkgs/pkgs/development/compilers/rust/rls/default.nix +++ b/nixpkgs/pkgs/development/compilers/rust/rls/default.nix @@ -2,7 +2,7 @@ , openssh, openssl, pkg-config, cmake, zlib, curl, libiconv , CoreFoundation, Security }: -rustPlatform.buildRustPackage { +rustPlatform.buildRustPackage rec { pname = "rls"; inherit (rustPlatform.rust.rustc) src version; @@ -14,7 +14,7 @@ rustPlatform.buildRustPackage { preBuild = '' # client tests are flaky - rm tests/client.rs + rm ${buildAndTestSubdir}/tests/client.rs ''; # a nightly compiler is required unless we use this cheat code. @@ -28,8 +28,8 @@ rustPlatform.buildRustPackage { # rls-rustc links to rustc_private crates CARGO_BUILD_RUSTFLAGS = if stdenv.isDarwin then "-C rpath" else null; - nativeBuildInputs = [ pkg-config cmake ]; - buildInputs = [ openssh openssl curl zlib libiconv makeWrapper rustPlatform.rust.rustc.llvm ] + nativeBuildInputs = [ pkg-config cmake makeWrapper ]; + buildInputs = [ openssh openssl curl zlib libiconv rustPlatform.rust.rustc.llvm ] ++ (lib.optionals stdenv.isDarwin [ CoreFoundation Security ]); doCheck = true; diff --git a/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix b/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix new file mode 100644 index 000000000000..bbc171a8d986 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix @@ -0,0 +1,4 @@ +import ./common.nix { + version = "2.0.8"; + sha256 = "1xwrwvps7drrpyw3wg5h3g2qajmkwqs9gz0fdw1ns9adp7vld390"; +} diff --git a/nixpkgs/pkgs/development/compilers/sbcl/2.0.9.nix b/nixpkgs/pkgs/development/compilers/sbcl/2.0.9.nix index ada098ec1829..80b30ec87f48 100644 --- a/nixpkgs/pkgs/development/compilers/sbcl/2.0.9.nix +++ b/nixpkgs/pkgs/development/compilers/sbcl/2.0.9.nix @@ -1,114 +1,4 @@ -{ lib, stdenv, fetchurl, writeText, sbclBootstrap -, sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit" -, threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system) -, disableImmobileSpace ? false - # Meant for sbcl used for creating binaries portable to non-NixOS via save-lisp-and-die. - # Note that the created binaries still need `patchelf --set-interpreter ...` - # to get rid of ${glibc} dependency. -, purgeNixReferences ? false -, texinfo -}: - -stdenv.mkDerivation rec { - pname = "sbcl"; +import ./common.nix { version = "2.0.9"; - - src = fetchurl { - url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2"; - sha256 = "sha256:17wvrcwgp45z9b6arik31fjnz7908qhr5ackxq1y0gqi1hsh1xy4"; - }; - - buildInputs = [texinfo]; - - patchPhase = '' - echo '"${version}.nixos"' > version.lisp-expr - - pwd - - # SBCL checks whether files are up-to-date in many places.. - # Unfortunately, same timestamp is not good enough - sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp - #sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp - sed -i src/cold/slam.lisp -e \ - '/file-write-date input/a)' - sed -i src/cold/slam.lisp -e \ - '/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))' - sed -i src/code/target-load.lisp -e \ - '/date defaulted-fasl/a)' - sed -i src/code/target-load.lisp -e \ - '/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))' - - # Fix the tests - sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp - sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp - - # Use whatever `cc` the stdenv provides - substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc - - substituteInPlace src/runtime/Config.x86-64-darwin \ - --replace mmacosx-version-min=10.4 mmacosx-version-min=10.5 - '' - + (if purgeNixReferences - then - # This is the default location to look for the core; by default in $out/lib/sbcl - '' - sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \ - -i src/runtime/runtime.c - '' - else - # Fix software version retrieval - '' - sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp \ - src/code/run-program.lisp - '' - ); - - - preBuild = '' - export INSTALL_ROOT=$out - mkdir -p test-home - export HOME=$PWD/test-home - ''; - - enableFeatures = with lib; - optional threadSupport "sb-thread" ++ - optional stdenv.isAarch32 "arm"; - - disableFeatures = with lib; - optional (!threadSupport) "sb-thread" ++ - optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ]; - - buildPhase = '' - sh make.sh --prefix=$out --xc-host="${sbclBootstrapHost}" ${ - lib.concatStringsSep " " - (builtins.map (x: "--with-${x}") enableFeatures ++ - builtins.map (x: "--without-${x}") disableFeatures) - } - (cd doc/manual ; make info) - ''; - - installPhase = '' - INSTALL_ROOT=$out sh install.sh - '' - + lib.optionalString (!purgeNixReferences) '' - cp -r src $out/lib/sbcl - cp -r contrib $out/lib/sbcl - cat >$out/lib/sbcl/sbclrc <<EOF - (setf (logical-pathname-translations "SYS") - '(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*") - ("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*"))) - EOF - ''; - - setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" '' - addEnvHooks "$targetOffset" _setSbclHome - _setSbclHome() { - export SBCL_HOME='@out@/lib/sbcl/' - } - ''); - - meta = sbclBootstrap.meta // { - inherit version; - updateWalker = true; - }; + sha256 = "17wvrcwgp45z9b6arik31fjnz7908qhr5ackxq1y0gqi1hsh1xy4"; } diff --git a/nixpkgs/pkgs/development/compilers/sbcl/2.1.1.nix b/nixpkgs/pkgs/development/compilers/sbcl/2.1.1.nix new file mode 100644 index 000000000000..a32f8a4a28b3 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/sbcl/2.1.1.nix @@ -0,0 +1,4 @@ +import ./common.nix { + version = "2.1.1"; + sha256 = "15wa66sachhzgvg5n35vihmkpasg100lh561c1d1bdrql0p8kbd9"; +} diff --git a/nixpkgs/pkgs/development/compilers/sbcl/2.1.2.nix b/nixpkgs/pkgs/development/compilers/sbcl/2.1.2.nix new file mode 100644 index 000000000000..4f4c85b286c7 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/sbcl/2.1.2.nix @@ -0,0 +1,4 @@ +import ./common.nix { + version = "2.1.2"; + sha256 = "sha256:02scrqyp2izsd8xjm2k5j5lhn4pdhd202jlcb54ysmcqjd80awdp"; +} diff --git a/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix b/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix index cb42235bc8e2..8bdbbadc9d60 100644 --- a/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix +++ b/nixpkgs/pkgs/development/compilers/sbcl/bootstrap.nix @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { sha256 = cfg.sha256; }; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; installPhase = '' mkdir -p $out/bin diff --git a/nixpkgs/pkgs/development/compilers/sbcl/default.nix b/nixpkgs/pkgs/development/compilers/sbcl/common.nix index df80bb8af1d7..11ae960a5317 100644 --- a/nixpkgs/pkgs/development/compilers/sbcl/default.nix +++ b/nixpkgs/pkgs/development/compilers/sbcl/common.nix @@ -1,3 +1,5 @@ +{ version, sha256 }: + { lib, stdenv, fetchurl, writeText, sbclBootstrap , sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit" , threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system) @@ -11,20 +13,18 @@ stdenv.mkDerivation rec { pname = "sbcl"; - version = "2.0.8"; + inherit version; src = fetchurl { - url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2"; - sha256 = "sha256:1xwrwvps7drrpyw3wg5h3g2qajmkwqs9gz0fdw1ns9adp7vld390"; + url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2"; + inherit sha256; }; buildInputs = [texinfo]; - patchPhase = '' + postPatch = '' echo '"${version}.nixos"' > version.lisp-expr - pwd - # SBCL checks whether files are up-to-date in many places.. # Unfortunately, same timestamp is not good enough sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp @@ -41,12 +41,6 @@ stdenv.mkDerivation rec { # Fix the tests sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp - - # Use whatever `cc` the stdenv provides - substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc - - substituteInPlace src/runtime/Config.x86-64-darwin \ - --replace mmacosx-version-min=10.4 mmacosx-version-min=10.5 '' + (if purgeNixReferences then @@ -79,16 +73,24 @@ stdenv.mkDerivation rec { optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ]; buildPhase = '' + runHook preBuild + sh make.sh --prefix=$out --xc-host="${sbclBootstrapHost}" ${ lib.concatStringsSep " " (builtins.map (x: "--with-${x}") enableFeatures ++ builtins.map (x: "--without-${x}") disableFeatures) } (cd doc/manual ; make info) + + runHook postBuild ''; installPhase = '' + runHook preInstall + INSTALL_ROOT=$out sh install.sh + + runHook postInstall '' + lib.optionalString (!purgeNixReferences) '' cp -r src $out/lib/sbcl diff --git a/nixpkgs/pkgs/development/compilers/scala/2.x.nix b/nixpkgs/pkgs/development/compilers/scala/2.x.nix index d3fa31ddd94b..a0a5f1a2b22c 100644 --- a/nixpkgs/pkgs/development/compilers/scala/2.x.nix +++ b/nixpkgs/pkgs/development/compilers/scala/2.x.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl, makeWrapper, jre, gnugrep, coreutils, nixosTests +{ stdenv, lib, fetchurl, makeWrapper, jre, gnugrep, coreutils , writeScript, common-updater-scripts, git, gnused, nix, nixfmt, majorVersion }: with lib; @@ -26,8 +26,8 @@ let }; "2.13" = { - version = "2.13.4"; - sha256 = "1alcnzmxga00nsvgy8yky91zw5b4q0xg2697vrrdgjlglpxiqwdw"; + version = "2.13.5"; + sha256 = "1ah5rw6xqksiayi5i95r3pcff961q71ilishzn2kmg673z0j2b7d"; pname = "scala_2_13"; }; }; @@ -46,23 +46,25 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ jre ]; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; installPhase = '' - mkdir -p $out - rm bin/*.bat - mv * $out - # put docs in correct subdirectory - mkdir -p $out/share/doc - mv $out/doc $out/share/doc/${name} - mv $out/man $out/share/man + runHook preInstall + mkdir -p $out + rm bin/*.bat + mv * $out + # put docs in correct subdirectory + mkdir -p $out/share/doc + mv $out/doc $out/share/doc/${name} + mv $out/man $out/share/man for p in $(ls $out/bin/) ; do wrapProgram $out/bin/$p \ --prefix PATH ":" ${coreutils}/bin \ --prefix PATH ":" ${gnugrep}/bin \ --prefix PATH ":" ${jre}/bin \ --set JAVA_HOME ${jre} - done + done + runHook postInstall ''; doInstallCheck = true; diff --git a/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix b/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix index b173de58049b..66a634914dfb 100644 --- a/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix +++ b/nixpkgs/pkgs/development/compilers/scala/dotty-bare.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; propagatedBuildInputs = [ jre ncurses.dev ] ; - buildInputs = [ makeWrapper ] ; + nativeBuildInputs = [ makeWrapper ]; installPhase = '' mkdir -p $out diff --git a/nixpkgs/pkgs/development/compilers/serpent/default.nix b/nixpkgs/pkgs/development/compilers/serpent/default.nix index 775a78a97341..fbcbf4485a47 100644 --- a/nixpkgs/pkgs/development/compilers/serpent/default.nix +++ b/nixpkgs/pkgs/development/compilers/serpent/default.nix @@ -14,6 +14,10 @@ stdenv.mkDerivation { sha256 = "1bns9wgn5i1ahj19qx7v1wwdy8ca3q3pigxwznm5nywsw7s7lqxs"; }; + postPatch = '' + substituteInPlace Makefile --replace 'g++' '${stdenv.cc.targetPrefix}c++' + ''; + installPhase = '' mkdir -p $out/bin mv serpent $out/bin @@ -33,6 +37,6 @@ stdenv.mkDerivation { homepage = "https://github.com/ethereum/wiki/wiki/Serpent"; license = with licenses; [ wtfpl ]; maintainers = with maintainers; [ chris-martin ]; - platforms = with platforms; linux; + platforms = platforms.all; }; } diff --git a/nixpkgs/pkgs/development/compilers/sjasmplus/default.nix b/nixpkgs/pkgs/development/compilers/sjasmplus/default.nix new file mode 100644 index 000000000000..422181679846 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/sjasmplus/default.nix @@ -0,0 +1,32 @@ +{ lib, stdenv, fetchFromGitHub }: + +stdenv.mkDerivation rec { + pname = "sjasmplus"; + version = "1.18.2"; + + src = fetchFromGitHub { + owner = "z00m128"; + repo = "sjasmplus"; + rev = "v${version}"; + sha256 = "04348zcmc0b3crzwhvj1shx6f1n3x05vs8d5qdm7qhgdfki8r74v"; + }; + + buildFlags = [ + "CC=${stdenv.cc.targetPrefix}cc" + "CXX=${stdenv.cc.targetPrefix}c++" + ]; + + installPhase = '' + runHook preInstall + install -D sjasmplus $out/bin/sjasmplus + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://z00m128.github.io/sjasmplus/"; + description = "A Z80 assembly language cross compiler. It is based on the SjASM source code by Sjoerd Mastijn"; + license = licenses.bsd3; + platforms = platforms.all; + maintainers = with maintainers; [ electrified ]; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/smlnj/bootstrap.nix b/nixpkgs/pkgs/development/compilers/smlnj/bootstrap.nix index 113b22768d9f..91eb9fc84172 100644 --- a/nixpkgs/pkgs/development/compilers/smlnj/bootstrap.nix +++ b/nixpkgs/pkgs/development/compilers/smlnj/bootstrap.nix @@ -10,7 +10,8 @@ stdenv.mkDerivation rec { sha256 = "12jn50h5jz0ac1vzld2mb94p1dyc8h0mk0hip2wj5xqk1dbzwxl4"; }; - buildInputs = [ cpio rsync makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ cpio rsync ]; unpackPhase = '' ${xar}/bin/xar -xf $src diff --git a/nixpkgs/pkgs/development/compilers/solc/0.7.nix b/nixpkgs/pkgs/development/compilers/solc/0.7.nix new file mode 100644 index 000000000000..99b67b56510d --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/solc/0.7.nix @@ -0,0 +1,78 @@ +{ lib, gccStdenv, fetchzip, boost, cmake, ncurses, python3, coreutils +, z3Support ? true, z3 ? null, cvc4Support ? true, cvc4 ? null +, cln ? null, gmp ? null +}: + +# compiling source/libsmtutil/CVC4Interface.cpp breaks on clang on Darwin, +# general commandline tests fail at abiencoderv2_no_warning/ on clang on NixOS + +assert z3Support -> z3 != null && lib.versionAtLeast z3.version "4.6.0"; +assert cvc4Support -> cvc4 != null && cln != null && gmp != null; + +let + jsoncppVersion = "1.9.4"; + jsoncppUrl = "https://github.com/open-source-parsers/jsoncpp/archive/${jsoncppVersion}.tar.gz"; + jsoncpp = fetchzip { + url = jsoncppUrl; + sha256 = "0qnx5y6c90fphl9mj9d20j2dfgy6s5yr5l0xnzid0vh71zrp6jwv"; + }; +in +gccStdenv.mkDerivation rec { + + pname = "solc"; + version = "0.7.4"; + + # upstream suggests avoid using archive generated by github + src = fetchzip { + url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz"; + sha256 = "02261l54jdbvxk612z7zsyvmchy1rx4lf27b3f616sd7r56krpkg"; + }; + + postPatch = '' + substituteInPlace cmake/jsoncpp.cmake \ + --replace "${jsoncppUrl}" ${jsoncpp} + ''; + + cmakeFlags = [ + "-DBoost_USE_STATIC_LIBS=OFF" + ] ++ lib.optionals (!z3Support) [ + "-DUSE_Z3=OFF" + ] ++ lib.optionals (!cvc4Support) [ + "-DUSE_CVC4=OFF" + ]; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ boost ] + ++ lib.optionals z3Support [ z3 ] + ++ lib.optionals cvc4Support [ cvc4 cln gmp ]; + checkInputs = [ ncurses python3 ]; + + # Test fails on darwin for unclear reason + doCheck = gccStdenv.hostPlatform.isLinux; + + checkPhase = '' + while IFS= read -r -d ''' dir + do + LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$(pwd)/$dir + export LD_LIBRARY_PATH + done < <(find . -type d -print0) + + pushd .. + # IPC tests need aleth avaliable, so we disable it + sed -i "s/IPC_ENABLED=true/IPC_ENABLED=false\nIPC_FLAGS=\"--no-ipc\"/" ./scripts/tests.sh + for i in ./scripts/*.sh ./scripts/*.py ./test/*.sh; do + patchShebangs "$i" + done + TERM=xterm ./scripts/tests.sh + popd + ''; + + meta = with lib; { + description = "Compiler for Ethereum smart contract language Solidity"; + homepage = "https://github.com/ethereum/solidity"; + license = licenses.gpl3; + platforms = with platforms; linux; # darwin is currently broken + maintainers = with maintainers; [ dbrock akru lionello sifmelcara ]; + inherit version; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/solc/default.nix b/nixpkgs/pkgs/development/compilers/solc/default.nix index 546697d8efec..c8f0c50d8a59 100644 --- a/nixpkgs/pkgs/development/compilers/solc/default.nix +++ b/nixpkgs/pkgs/development/compilers/solc/default.nix @@ -1,6 +1,16 @@ -{ lib, gccStdenv, fetchzip, boost, cmake, ncurses, python3, coreutils -, z3Support ? true, z3 ? null, cvc4Support ? true, cvc4 ? null -, cln ? null, gmp ? null +{ lib, gccStdenv, fetchzip +, boost +, cmake +, coreutils +, fetchpatch +, ncurses +, python3 +, z3Support ? true +, z3 ? null +, cvc4Support ? true +, cvc4 ? null +, cln ? null +, gmp ? null }: # compiling source/libsmtutil/CVC4Interface.cpp breaks on clang on Darwin, @@ -10,69 +20,88 @@ assert z3Support -> z3 != null && lib.versionAtLeast z3.version "4.6.0"; assert cvc4Support -> cvc4 != null && cln != null && gmp != null; let - jsoncppVersion = "1.9.4"; + jsoncppVersion = "1.9.3"; jsoncppUrl = "https://github.com/open-source-parsers/jsoncpp/archive/${jsoncppVersion}.tar.gz"; jsoncpp = fetchzip { url = jsoncppUrl; - sha256 = "0qnx5y6c90fphl9mj9d20j2dfgy6s5yr5l0xnzid0vh71zrp6jwv"; + sha256 = "1vbhi503rgwarf275ajfdb8vpdcbn1f7917wjkf8jghqwb1c24lq"; }; -in -gccStdenv.mkDerivation rec { - - pname = "solc"; - version = "0.7.4"; - # upstream suggests avoid using archive generated by github - src = fetchzip { - url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz"; - sha256 = "02261l54jdbvxk612z7zsyvmchy1rx4lf27b3f616sd7r56krpkg"; + range3Version = "0.11.0"; + range3Url = "https://github.com/ericniebler/range-v3/archive/${range3Version}.tar.gz"; + range3 = fetchzip { + url = range3Url; + sha256 = "18230bg4rq9pmm5f8f65j444jpq56rld4fhmpham8q3vr1c1bdjh"; }; - postPatch = '' - substituteInPlace cmake/jsoncpp.cmake \ - --replace "${jsoncppUrl}" ${jsoncpp} - ''; + solc = gccStdenv.mkDerivation rec { + pname = "solc"; + version = "0.8.2"; + + # upstream suggests avoid using archive generated by github + src = fetchzip { + url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz"; + sha256 = "11w7sa1y2dirzh84k04fkwbfc6xpjp5jr65w1pmb2pnkjvvf46xq"; + }; + + postPatch = '' + substituteInPlace cmake/jsoncpp.cmake \ + --replace "${jsoncppUrl}" ${jsoncpp} + substituteInPlace cmake/range-v3.cmake \ + --replace "${range3Url}" ${range3} + ''; - cmakeFlags = [ - "-DBoost_USE_STATIC_LIBS=OFF" - ] ++ lib.optionals (!z3Support) [ - "-DUSE_Z3=OFF" - ] ++ lib.optionals (!cvc4Support) [ - "-DUSE_CVC4=OFF" - ]; + cmakeFlags = [ + "-DBoost_USE_STATIC_LIBS=OFF" + ] ++ lib.optionals (!z3Support) [ + "-DUSE_Z3=OFF" + ] ++ lib.optionals (!cvc4Support) [ + "-DUSE_CVC4=OFF" + ]; - nativeBuildInputs = [ cmake ]; - buildInputs = [ boost ] - ++ lib.optionals z3Support [ z3 ] - ++ lib.optionals cvc4Support [ cvc4 cln gmp ]; - checkInputs = [ ncurses python3 ]; + nativeBuildInputs = [ cmake ]; + buildInputs = [ boost ] + ++ lib.optionals z3Support [ z3 ] + ++ lib.optionals cvc4Support [ cvc4 cln gmp ]; + checkInputs = [ ncurses python3 ]; - # Test fails on darwin for unclear reason - doCheck = gccStdenv.hostPlatform.isLinux; + # tests take 60+ minutes to complete, only run as part of passthru tests + doCheck = false; - checkPhase = '' - while IFS= read -r -d ''' dir - do - LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$(pwd)/$dir - export LD_LIBRARY_PATH - done < <(find . -type d -print0) + checkPhase = '' + while IFS= read -r -d ''' dir + do + LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$(pwd)/$dir + export LD_LIBRARY_PATH + done < <(find . -type d -print0) - pushd .. - # IPC tests need aleth avaliable, so we disable it - sed -i "s/IPC_ENABLED=true/IPC_ENABLED=false\nIPC_FLAGS=\"--no-ipc\"/" ./scripts/tests.sh - for i in ./scripts/*.sh ./scripts/*.py ./test/*.sh; do - patchShebangs "$i" - done - TERM=xterm ./scripts/tests.sh - popd - ''; + pushd .. + # IPC tests need aleth avaliable, so we disable it + sed -i "s/IPC_ENABLED=true/IPC_ENABLED=false\nIPC_FLAGS=\"--no-ipc\"/" ./scripts/tests.sh + for i in ./scripts/*.sh ./scripts/*.py ./test/*.sh ./test/*.py; do + patchShebangs "$i" + done + TERM=xterm ./scripts/tests.sh + popd + ''; - meta = with lib; { - description = "Compiler for Ethereum smart contract language Solidity"; - homepage = "https://github.com/ethereum/solidity"; - license = licenses.gpl3; - platforms = with platforms; linux ++ darwin; - maintainers = with maintainers; [ dbrock akru lionello sifmelcara ]; - inherit version; + doInstallCheck = true; + installCheckPhase = '' + $out/bin/solc --version > /dev/null + ''; + + passthru.tests = { + solcWithTests = solc.overrideAttrs (attrs: { doCheck = true; }); + }; + + meta = with lib; { + description = "Compiler for Ethereum smart contract language Solidity"; + homepage = "https://github.com/ethereum/solidity"; + license = licenses.gpl3; + platforms = with platforms; linux; # darwin is currently broken + maintainers = with maintainers; [ dbrock akru lionello sifmelcara ]; + inherit version; + }; }; -} +in + solc diff --git a/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix b/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix index ce666852e38a..addf64138011 100644 --- a/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix +++ b/nixpkgs/pkgs/development/compilers/swi-prolog/default.nix @@ -4,7 +4,32 @@ , cmake, libyaml, Security , libjpeg, libX11, libXext, libXft, libXinerama , extraLibraries ? [ jdk unixODBC libXpm libSM libXt freetype fontconfig ] -, extraPacks ? [] +# Packs must be installed from a local directory during the build, with dependencies +# resolved manually, e.g. to install the 'julian' pack, which depends on the 'delay', 'list_util' and 'typedef' packs: +# julian = pkgs.fetchzip { +# name = "swipl-pack-julian"; +# url = "https://github.com/mndrix/julian/archive/v0.1.3.zip"; +# sha256 = "1sgql7c21p3c5m14kwa0bcmlwn9fql612krn9h36gla1j9yjdfgy"; +# }; +# delay = pkgs.fetchzip { +# name = "swipl-pack-delay"; +# url = "https://github.com/mndrix/delay/archive/v0.3.3.zip"; +# sha256 = "0ira87afxnc2dnbbmgwmrr8qvary8lhzvhqwd52dccm6yqd3nybg"; +# }; +# list_util = pkgs.fetchzip { +# name = "swipl-pack-list_util"; +# url = "https://github.com/mndrix/list_util/archive/v0.13.0.zip"; +# sha256 = "0lx7vffflak0y8l8vg8k0g8qddwwn23ksbz02hi3f8rbarh1n89q"; +# }; +# typedef = builtins.fetchTarball { +# name = "swipl-pack-typedef"; +# url = "https://raw.githubusercontent.com/samer--/prolog/master/typedef/release/typedef-0.1.9.tgz"; +# sha256 = "056nqjn01g18fb1b2qivv9s7hb4azk24nx2d4kvkbmm1k91f44p3"; +# }; +# swiProlog = pkgs.swiProlog.override { extraPacks = map (dep-path: "'file://${dep-path}'") [ +# julian delay list_util typedef +# ]; }; +, extraPacks ? [] , withGui ? false }: @@ -26,6 +51,11 @@ stdenv.mkDerivation { fetchSubmodules = true; }; + # Add the packInstall path to the swipl pack search path + postPatch = '' + echo "user:file_search_path(pack, '$out/lib/swipl/pack')." >> /build/$sourceRoot/boot/init.pl + ''; + nativeBuildInputs = [ cmake pkg-config ]; buildInputs = [ gmp readline openssl @@ -39,6 +69,10 @@ stdenv.mkDerivation { cmakeFlags = [ "-DSWIPL_INSTALL_IN_LIB=ON" ]; + preInstall = '' + mkdir -p $out/lib/swipl/pack + ''; + postInstall = builtins.concatStringsSep "\n" ( builtins.map (packInstall "$out") extraPacks ); diff --git a/nixpkgs/pkgs/development/compilers/tinygo/default.nix b/nixpkgs/pkgs/development/compilers/tinygo/default.nix index 0aee1ca1f394..218b207f2435 100644 --- a/nixpkgs/pkgs/development/compilers/tinygo/default.nix +++ b/nixpkgs/pkgs/development/compilers/tinygo/default.nix @@ -40,7 +40,8 @@ buildGoModule rec { ''; subPackages = [ "." ]; - buildInputs = [ llvm clang-unwrapped makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ llvm clang-unwrapped ]; propagatedBuildInputs = [ lld avrgcc avrdude openocd gcc-arm-embedded ]; postInstall = '' diff --git a/nixpkgs/pkgs/development/compilers/urn/default.nix b/nixpkgs/pkgs/development/compilers/urn/default.nix index f7e338cf43ff..7381e7c89fec 100644 --- a/nixpkgs/pkgs/development/compilers/urn/default.nix +++ b/nixpkgs/pkgs/development/compilers/urn/default.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation { sha256 = "0nclr3d8ap0y5cg36i7g4ggdqci6m5q27y9f26b57km8p266kcpy"; }; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; # Any packages that depend on the compiler have a transitive # dependency on the Urn runtime support. propagatedBuildInputs = [ urn-rt ]; @@ -53,6 +53,7 @@ stdenv.mkDerivation { description = "Yet another Lisp variant which compiles to Lua"; license = licenses.bsd3; maintainers = with maintainers; [ CrazedProgrammer ]; + platforms = platforms.all; }; passthru = { diff --git a/nixpkgs/pkgs/development/compilers/vala/default.nix b/nixpkgs/pkgs/development/compilers/vala/default.nix index 222ad903ec14..b56f509b31aa 100644 --- a/nixpkgs/pkgs/development/compilers/vala/default.nix +++ b/nixpkgs/pkgs/development/compilers/vala/default.nix @@ -38,6 +38,8 @@ let "0.48" = ./disable-graphviz-0.46.1.patch; + "0.50" = ./disable-graphviz-0.46.1.patch; + }.${lib.versions.majorMinor version} or (throw "no graphviz patch for this version of vala"); disableGraphviz = lib.versionAtLeast version "0.38" && !withGraphviz; @@ -108,8 +110,8 @@ in rec { }; vala_0_40 = generic { - version = "0.40.18"; - sha256 = "1f7cdkjdysg4dcri1wbzdddm46amk2s48jkwb5ghpdvhjb4l5j2m"; + version = "0.40.25"; + sha256 = "1pxpack8rrmywlf47v440hc6rv3vi8q9c6niwqnwikxvb2pwf3w7"; }; vala_0_44 = generic { @@ -118,13 +120,18 @@ in rec { }; vala_0_46 = generic { - version = "0.46.5"; - sha256 = "07fv895sp9wq74b20qig7hic0r4ynrr5pfaqba02r44xb794fy0s"; + version = "0.46.13"; + sha256 = "0d7l4vh2xra3q75kw3sy2d9bn5p6s3g3r7j37bdn6ir8l3wp2ivs"; }; vala_0_48 = generic { - version = "0.48.9"; - sha256 = "1agyrvslv2yh9ikiw7k5nw6j6il1l2zrzfan0pzdpb9xpg9idslw"; + version = "0.48.14"; + sha256 = "0iz3zzimmk5wxvy5bi75v8ckv153gjrz3r5iqvl8xqackzi7v9fw"; + }; + + vala_0_50 = generic { + version = "0.50.4"; + sha256 = "1353j852h04d1x6b4n6lbg3ay40ph0adb9yi25dh74pligx33z2q"; }; vala = vala_0_48; diff --git a/nixpkgs/pkgs/development/compilers/vyper/default.nix b/nixpkgs/pkgs/development/compilers/vyper/default.nix index 81ee04edf088..d0bfa5b0b962 100644 --- a/nixpkgs/pkgs/development/compilers/vyper/default.nix +++ b/nixpkgs/pkgs/development/compilers/vyper/default.nix @@ -14,11 +14,11 @@ in buildPythonPackage rec { pname = "vyper"; - version = "0.2.8"; + version = "0.2.11"; src = fetchPypi { inherit pname version; - sha256 = "0d9fv630ayd1989qnklldh08vksa2lf0r06lm914qy5r5cvbl1v2"; + sha256 = "e763561a161c35c03b92a0c176096dd9b4c78ab003c2f08324d443f459b3de84"; }; nativeBuildInputs = [ pytestrunner ]; diff --git a/nixpkgs/pkgs/development/compilers/xa/dxa.nix b/nixpkgs/pkgs/development/compilers/xa/dxa.nix new file mode 100644 index 000000000000..03f2d054cc80 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/xa/dxa.nix @@ -0,0 +1,40 @@ +{ lib +, stdenv +, fetchurl +, installShellFiles +}: + +stdenv.mkDerivation rec { + pname = "dxa"; + version = "0.1.4"; + + src = fetchurl { + url = "https://www.floodgap.com/retrotech/xa/dists/${pname}-${version}.tar.gz"; + hash = "sha256-C0rgwK51Ij9EZCm9GeiVnWIkEkse0d60ok8G9hm2a5U="; + }; + + nativeBuildInputs = [ installShellFiles ]; + + dontConfigure = true; + + postPatch = '' + substituteInPlace Makefile \ + --replace "CC = gcc" "CC = ${stdenv.cc.targetPrefix}cc" + ''; + + installPhase = '' + runHook preInstall + install -d $out/bin/ + install dxa $out/bin/ + installManPage dxa.1 + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://www.floodgap.com/retrotech/xa/"; + description = "Andre Fachat's open-source 6502 disassembler"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = with platforms; unix; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/xa/xa.nix b/nixpkgs/pkgs/development/compilers/xa/xa.nix new file mode 100644 index 000000000000..c445940f5cde --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/xa/xa.nix @@ -0,0 +1,51 @@ +{ lib +, stdenv +, fetchurl +}: + +stdenv.mkDerivation rec { + pname = "xa"; + version = "2.3.11"; + + src = fetchurl { + url = "https://www.floodgap.com/retrotech/xa/dists/${pname}-${version}.tar.gz"; + hash = "sha256-MvIWTJnjBSGOmSlwhW3Y4jCbXLasR1jXsq/jv+vJAS0="; + }; + + dontConfigure = true; + + postPatch = '' + substituteInPlace Makefile \ + --replace "DESTDIR" "PREFIX" \ + --replace "CC = gcc" "CC = ${stdenv.cc.targetPrefix}cc" \ + --replace "LDD = gcc" "LDD = ${stdenv.cc.targetPrefix}cc" \ + --replace "CFLAGS = -O2" "CFLAGS ?=" \ + --replace "LDFLAGS = -lc" "LDFLAGS ?= -lc" + ''; + + makeFlags = [ "PREFIX=${placeholder "out"}" ]; + + meta = with lib; { + homepage = "https://www.floodgap.com/retrotech/xa/"; + description = "Andre Fachat's open-source 6502 cross assembler"; + longDescription = '' + xa is a high-speed, two-pass portable cross-assembler. It understands + mnemonics and generates code for NMOS 6502s (such as 6502A, 6504, 6507, + 6510, 7501, 8500, 8501, 8502 ...), CMOS 6502s (65C02 and Rockwell R65C02) + and the 65816. + + Key amongst its features: + + - C-like preprocessor (and understands cpp for additional feature support) + - rich expression syntax and pseudo-op vocabulary + - multiple character sets + - binary linking + - supports o65 relocatable objects with a full linker and relocation + suite, as well as "bare" plain binary object files + - block structure for label scoping + ''; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = with platforms; unix; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/yosys/default.nix b/nixpkgs/pkgs/development/compilers/yosys/default.nix index 9ac7603ea200..a0c02e26db0c 100644 --- a/nixpkgs/pkgs/development/compilers/yosys/default.nix +++ b/nixpkgs/pkgs/development/compilers/yosys/default.nix @@ -1,4 +1,5 @@ -{ stdenv, lib +{ stdenv +, lib , abc-verifier , bash , bison @@ -33,13 +34,13 @@ stdenv.mkDerivation rec { pname = "yosys"; - version = "0.9+3830"; + version = "0.9+4052"; src = fetchFromGitHub { owner = "YosysHQ"; repo = "yosys"; - rev = "b72c29465392c8d260ddf55def169438f7fb64b2"; - sha256 = "12h3pgj8bjb254q2qaafc3qxwhqdqrx0sxjhgjrfy8cmkdm92dvy"; + rev = "687f381b6985d9dda7e11535628e2fafff267af5"; + sha256 = "15lcj798ckh9zwvdqb5gnvicilsxjyxv01gcviijg310hq62n7vf"; }; enableParallelBuilding = true; diff --git a/nixpkgs/pkgs/development/compilers/zulu/8.nix b/nixpkgs/pkgs/development/compilers/zulu/8.nix index 2bc90539be1e..dd1660d9fec7 100644 --- a/nixpkgs/pkgs/development/compilers/zulu/8.nix +++ b/nixpkgs/pkgs/development/compilers/zulu/8.nix @@ -1,7 +1,24 @@ -{ stdenv, lib, fetchurl, unzip, makeWrapper, setJavaClassPath -, zulu, glib, libxml2, ffmpeg_3, libxslt, libGL, alsaLib -, fontconfig, freetype, pango, gtk2, cairo, gdk-pixbuf, atk, xorg -, swingSupport ? true }: +{ stdenv +, lib +, fetchurl +, autoPatchelfHook +, unzip +, makeWrapper +, setJavaClassPath +, zulu +# minimum dependencies +, alsaLib +, fontconfig +, freetype +, xorg +# runtime dependencies +, cups +# runtime dependencies for GTK+ Look and Feel +, gtkSupport ? stdenv.isLinux +, cairo +, glib +, gtk3 +}: let version = "8.48.0.53"; @@ -14,14 +31,12 @@ let hash = if stdenv.isDarwin then sha256_darwin else sha256_linux; extension = if stdenv.isDarwin then "zip" else "tar.gz"; - libraries = [ - stdenv.cc.libc glib libxml2 ffmpeg_3 libxslt libGL - xorg.libXxf86vm alsaLib fontconfig freetype pango - gtk2 cairo gdk-pixbuf atk - ] ++ (lib.optionals swingSupport (with xorg; [ - xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp - xorg.libXt xorg.libXrender stdenv.cc.cc - ])); + runtimeDependencies = [ + cups + ] ++ lib.optionals gtkSupport [ + cairo glib gtk3 + ]; + runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies; in stdenv.mkDerivation { inherit version openjdk platform hash extension; @@ -33,26 +48,28 @@ in stdenv.mkDerivation { sha256 = hash; }; - buildInputs = [ makeWrapper ] ++ lib.optional stdenv.isDarwin unzip; + buildInputs = lib.optionals stdenv.isLinux [ + alsaLib # libasound.so wanted by lib/libjsound.so + fontconfig + freetype + stdenv.cc.cc # libstdc++.so.6 + xorg.libX11 + xorg.libXext + xorg.libXi + xorg.libXrender + xorg.libXtst + ]; + + nativeBuildInputs = [ + autoPatchelfHook makeWrapper + ] ++ lib.optionals stdenv.isDarwin [ + unzip + ]; installPhase = '' mkdir -p $out cp -r ./* "$out/" - jrePath="$out/jre" - - rpath=$rpath''${rpath:+:}$jrePath/lib/amd64/jli - rpath=$rpath''${rpath:+:}$jrePath/lib/amd64/server - rpath=$rpath''${rpath:+:}$jrePath/lib/amd64/xawt - rpath=$rpath''${rpath:+:}$jrePath/lib/amd64 - - # set all the dynamic linkers - find $out -type f -perm -0100 \ - -exec patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "$rpath" {} \; - - find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \; - mkdir -p $out/nix-support printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs @@ -60,9 +77,19 @@ in stdenv.mkDerivation { cat <<EOF >> $out/nix-support/setup-hook if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi EOF + '' + lib.optionalString stdenv.isLinux '' + # We cannot use -exec since wrapProgram is a function but not a command. + for bin in $( find "$out" -executable -type f ); do + if patchelf --print-interpreter "$bin" &> /dev/null; then + wrapProgram "$bin" --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}" + fi + done ''; - rpath = lib.strings.makeLibraryPath libraries; + preFixup = '' + find "$out" -name libfontmanager.so -exec \ + patchelf --add-needed libfontconfig.so {} \; + ''; passthru = { home = zulu; diff --git a/nixpkgs/pkgs/development/compilers/zulu/default.nix b/nixpkgs/pkgs/development/compilers/zulu/default.nix index cbfa9997b8db..c7b01877ad54 100644 --- a/nixpkgs/pkgs/development/compilers/zulu/default.nix +++ b/nixpkgs/pkgs/development/compilers/zulu/default.nix @@ -1,7 +1,25 @@ -{ stdenv, lib, fetchurl, unzip, makeWrapper, setJavaClassPath -, zulu, glib, libxml2, ffmpeg_3, libxslt, libGL, alsaLib -, fontconfig, freetype, pango, gtk2, cairo, gdk-pixbuf, atk, xorg, zlib -, swingSupport ? true }: +{ stdenv +, lib +, fetchurl +, autoPatchelfHook +, unzip +, makeWrapper +, setJavaClassPath +, zulu +# minimum dependencies +, alsaLib +, fontconfig +, freetype +, zlib +, xorg +# runtime dependencies +, cups +# runtime dependencies for GTK+ Look and Feel +, gtkSupport ? stdenv.isLinux +, cairo +, glib +, gtk3 +}: let version = "11.41.23"; @@ -14,14 +32,12 @@ let hash = if stdenv.isDarwin then sha256_darwin else sha256_linux; extension = if stdenv.isDarwin then "zip" else "tar.gz"; - libraries = [ - stdenv.cc.libc glib libxml2 ffmpeg_3 libxslt libGL - xorg.libXxf86vm alsaLib fontconfig freetype pango - gtk2 cairo gdk-pixbuf atk zlib - ] ++ (lib.optionals swingSupport (with xorg; [ - xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp - xorg.libXt xorg.libXrender stdenv.cc.cc - ])); + runtimeDependencies = [ + cups + ] ++ lib.optionals gtkSupport [ + cairo glib gtk3 + ]; + runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies; in stdenv.mkDerivation { inherit version openjdk platform hash extension; @@ -33,23 +49,29 @@ in stdenv.mkDerivation { sha256 = hash; }; - buildInputs = [ makeWrapper ] ++ lib.optional stdenv.isDarwin unzip; + buildInputs = lib.optionals stdenv.isLinux [ + alsaLib # libasound.so wanted by lib/libjsound.so + fontconfig + freetype + stdenv.cc.cc # libstdc++.so.6 + xorg.libX11 + xorg.libXext + xorg.libXi + xorg.libXrender + xorg.libXtst + zlib + ]; + + nativeBuildInputs = [ + autoPatchelfHook makeWrapper + ] ++ lib.optionals stdenv.isDarwin [ + unzip + ]; installPhase = '' mkdir -p $out cp -r ./* "$out/" - rpath=$rpath''${rpath:+:}$out/lib/jli - rpath=$rpath''${rpath:+:}$out/lib/server - rpath=$rpath''${rpath:+:}$out/lib - - # set all the dynamic linkers - find $out -type f -perm -0100 \ - -exec patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "$rpath" {} \; - - find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \; - mkdir -p $out/nix-support printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs @@ -57,9 +79,20 @@ in stdenv.mkDerivation { cat <<EOF >> $out/nix-support/setup-hook if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi EOF + '' + lib.optionalString stdenv.isLinux '' + # We cannot use -exec since wrapProgram is a function but not a command. + # + # jspawnhelper is executed from JVM, so it doesn't need to wrap it, and it + # breaks building OpenJDK (#114495). + for bin in $( find "$out" -executable -type f -not -name jspawnhelper ); do + wrapProgram "$bin" --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}" + done ''; - rpath = lib.strings.makeLibraryPath libraries; + preFixup = '' + find "$out" -name libfontmanager.so -exec \ + patchelf --add-needed libfontconfig.so {} \; + ''; passthru = { home = zulu; diff --git a/nixpkgs/pkgs/development/compilers/zz/default.nix b/nixpkgs/pkgs/development/compilers/zz/default.nix index dade163c5273..81c6e546e95f 100644 --- a/nixpkgs/pkgs/development/compilers/zz/default.nix +++ b/nixpkgs/pkgs/development/compilers/zz/default.nix @@ -2,19 +2,19 @@ rustPlatform.buildRustPackage rec { pname = "zz"; - version = "unstable-2021-01-26"; + version = "unstable-2021-03-07"; - # commit chosen by using the latest build from http://bin.zetz.it/ + # when updating, choose commit of the latest build on http://bin.zetz.it/ src = fetchFromGitHub { owner = "zetzit"; repo = "zz"; - rev = "0b5c52674e9adf795fbfb051d4dceef3126e669f"; - sha256 = "0bb77ll1g5i6a04ybpgx6lqsb74xs4v4nyqm9j4j6x24407h8l89"; + rev = "d3fc968ba2ae6668f930e39077f9a90aecb9fdc4"; + sha256 = "18p17lgwq6rq1n76sj0dwb32bpxflfd7knky1v0sgmaxfpaq04y3"; }; nativeBuildInputs = [ makeWrapper ]; - cargoSha256 = "1lf4k3n89w2797c1yrj1dp97y8a8d5hnixr1nwa2qcq1sxmm5rcg"; + cargoSha256 = "0i3c459d4699z4dwvdw1495krdv3c2qpygrsw0cz3j0zd2n5gqj6"; postPatch = '' # remove search path entry which would reference /build @@ -31,7 +31,7 @@ rustPlatform.buildRustPackage rec { ''; meta = with lib; { - description = "πΊπ ZetZ a zymbolic verifier and tranzpiler to bare metal C"; + description = "ZetZ a zymbolic verifier and tranzpiler to bare metal C"; homepage = "https://github.com/zetzit/zz"; license = licenses.mit; maintainers = [ maintainers.marsam ]; |