diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-11-19 16:49:21 +0100 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-11-19 16:51:12 +0100 |
commit | b9c0b3f126472b144c543d8d77a8047e8d905ada (patch) | |
tree | 2ad99b8789bcb62b993ed18d2877905f7f02bdac /nixpkgs/pkgs/development/compilers | |
parent | 67419f0e56f99b0ebbe14574d3492110ac84c8d6 (diff) | |
parent | c757e9bd77b16ca2e03c89bf8bc9ecb28e0c06ad (diff) | |
download | nixlib-b9c0b3f126472b144c543d8d77a8047e8d905ada.tar nixlib-b9c0b3f126472b144c543d8d77a8047e8d905ada.tar.gz nixlib-b9c0b3f126472b144c543d8d77a8047e8d905ada.tar.bz2 nixlib-b9c0b3f126472b144c543d8d77a8047e8d905ada.tar.lz nixlib-b9c0b3f126472b144c543d8d77a8047e8d905ada.tar.xz nixlib-b9c0b3f126472b144c543d8d77a8047e8d905ada.tar.zst nixlib-b9c0b3f126472b144c543d8d77a8047e8d905ada.zip |
Merge branch 'nixos-unstable' of https://github.com/NixOS/nixpkgs into HEAD
Conflicts: nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix nixpkgs/pkgs/top-level/perl-packages.nix
Diffstat (limited to 'nixpkgs/pkgs/development/compilers')
59 files changed, 978 insertions, 273 deletions
diff --git a/nixpkgs/pkgs/development/compilers/aspectj/builder.sh b/nixpkgs/pkgs/development/compilers/aspectj/builder.sh index 7ea0a40d3748..31ec97942e52 100755 --- a/nixpkgs/pkgs/development/compilers/aspectj/builder.sh +++ b/nixpkgs/pkgs/development/compilers/aspectj/builder.sh @@ -1,4 +1,4 @@ -if [ -e .attrs.sh ]; then source .attrs.sh; fi +if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi source $stdenv/setup export JAVA_HOME=$jre diff --git a/nixpkgs/pkgs/development/compilers/binaryen/default.nix b/nixpkgs/pkgs/development/compilers/binaryen/default.nix index 5a139fb29064..dcadf054bc30 100644 --- a/nixpkgs/pkgs/development/compilers/binaryen/default.nix +++ b/nixpkgs/pkgs/development/compilers/binaryen/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "binaryen"; - version = "114"; + version = "116"; src = fetchFromGitHub { owner = "WebAssembly"; repo = "binaryen"; rev = "version_${version}"; - hash = "sha256-bzHNIQy0AN8mIFGG+638p/MBSqlkWuaOzKGSsMDAPH4="; + hash = "sha256-gMwbWiP+YDCVafQMBWhTuJGWmkYtnhEdn/oofKaUT08="; }; nativeBuildInputs = [ cmake python3 ]; diff --git a/nixpkgs/pkgs/development/compilers/chicken/4/chicken.nix b/nixpkgs/pkgs/development/compilers/chicken/4/chicken.nix index f33e594b7e25..29cf5b115b30 100644 --- a/nixpkgs/pkgs/development/compilers/chicken/4/chicken.nix +++ b/nixpkgs/pkgs/development/compilers/chicken/4/chicken.nix @@ -20,6 +20,13 @@ stdenv.mkDerivation { sha256 = "0hvckhi5gfny3mlva6d7y9pmx7cbwvq0r7mk11k3sdiik9hlkmdd"; }; + postPatch = lib.optionalString stdenv.isDarwin '' + # There is not enough space in the load command to accomodate a full path to the store, + # so use `@executable_path` to specify a relative path to chicken’s lib folder. + sed -e '/POSTINSTALL_PROGRAM_FLAGS = /{s|$(LIBDIR)|@executable_path/../lib|}' \ + -i Makefile.macosx + ''; + setupHook = lib.optional (bootstrap-chicken != null) ./setup-hook.sh; # -fno-strict-overflow is not a supported argument in clang on darwin @@ -31,7 +38,7 @@ stdenv.mkDerivation { ] ++ (lib.optionals stdenv.isDarwin [ "XCODE_TOOL_PATH=${darwin.binutils.bintools}/bin" "C_COMPILER=$(CC)" - "POSTINSTALL_PROGRAM=install_name_tool" + "POSTINSTALL_PROGRAM=${stdenv.cc.targetPrefix}install_name_tool" ]); # We need a bootstrap-chicken to regenerate the c-files after diff --git a/nixpkgs/pkgs/development/compilers/chicken/4/fetchegg/builder.sh b/nixpkgs/pkgs/development/compilers/chicken/4/fetchegg/builder.sh index cb56eabc5d78..78535382a7ca 100644 --- a/nixpkgs/pkgs/development/compilers/chicken/4/fetchegg/builder.sh +++ b/nixpkgs/pkgs/development/compilers/chicken/4/fetchegg/builder.sh @@ -1,4 +1,4 @@ -if [ -e .attrs.sh ]; then source .attrs.sh; fi +if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi source $stdenv/setup echo "exporting egg ${eggName} (version $version) into $out" diff --git a/nixpkgs/pkgs/development/compilers/elm/default.nix b/nixpkgs/pkgs/development/compilers/elm/default.nix index b72d418a97dc..9ae727f93767 100644 --- a/nixpkgs/pkgs/development/compilers/elm/default.nix +++ b/nixpkgs/pkgs/development/compilers/elm/default.nix @@ -274,6 +274,17 @@ in lib.makeScope pkgs.newScope (self: with self; { } ); + elm-land = nodePkgs."elm-land".overrideAttrs ( + old: { + meta = with lib; nodePkgs."elm-land".meta // { + description = "A production-ready framework for building Elm applications."; + homepage = "https://elm.land/"; + license = licenses.bsd3; + maintainers = [ maintainers.zupo ]; + }; + } + ); + lamdera = callPackage ./packages/lamdera.nix {}; elm-doc-preview = nodePkgs."elm-doc-preview".overrideAttrs (old: { diff --git a/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.json b/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.json index 30b2662ba490..8112b01bc9e8 100644 --- a/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.json +++ b/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.json @@ -3,6 +3,7 @@ "elm-coverage", "elm-doc-preview", "@elm-tooling/elm-language-server", + "elm-land", "elm-live", "elm-spa", "elm-test", diff --git a/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix b/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix index 5bf0474e66fa..bfc0fcdf7bdb 100644 --- a/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix +++ b/nixpkgs/pkgs/development/compilers/elm/packages/node-packages.nix @@ -4,13 +4,13 @@ let sources = { - "@adobe/css-tools-4.2.0" = { + "@adobe/css-tools-4.3.1" = { name = "_at_adobe_slash_css-tools"; packageName = "@adobe/css-tools"; - version = "4.2.0"; + version = "4.3.1"; src = fetchurl { - url = "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz"; - sha512 = "E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA=="; + url = "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.1.tgz"; + sha512 = "/62yikz7NLScCGAAST5SHdnjaDJQBDq0M2muyRTpf2VQhw6StBg2ALiu73zSJQ4fMVLA+0uBhBHAle7Wg+2kSg=="; }; }; "@babel/cli-7.12.10" = { @@ -1399,6 +1399,69 @@ let sha512 = "GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw=="; }; }; + "@lydell/elm-0.19.1-14" = { + name = "_at_lydell_slash_elm"; + packageName = "@lydell/elm"; + version = "0.19.1-14"; + src = fetchurl { + url = "https://registry.npmjs.org/@lydell/elm/-/elm-0.19.1-14.tgz"; + sha512 = "otpGlYiNRvL7F9k6MJOTcuyIgHr+XWy/1NtHpGUgQi8lHrnuyCjwKFPPiimKpr3bcZTwpD4nebHuYR0bmPIKuA=="; + }; + }; + "@lydell/elm_darwin_arm64-0.19.1-3" = { + name = "_at_lydell_slash_elm_darwin_arm64"; + packageName = "@lydell/elm_darwin_arm64"; + version = "0.19.1-3"; + src = fetchurl { + url = "https://registry.npmjs.org/@lydell/elm_darwin_arm64/-/elm_darwin_arm64-0.19.1-3.tgz"; + sha512 = "RuKTz5ck+RBx4urj1EL/r0xWZZqBMPEXzNBQTEBCAMWLSi4Ck3TVz5pkhBaK+cRZXI+cCgytm/1bIttbp2fFIg=="; + }; + }; + "@lydell/elm_darwin_x64-0.19.1-2" = { + name = "_at_lydell_slash_elm_darwin_x64"; + packageName = "@lydell/elm_darwin_x64"; + version = "0.19.1-2"; + src = fetchurl { + url = "https://registry.npmjs.org/@lydell/elm_darwin_x64/-/elm_darwin_x64-0.19.1-2.tgz"; + sha512 = "MXfQwxdQfmuQ22iDCFlcXu5YTA0w6/ASzbxmWc+8DkgUkHTynjViGBVkQljAbYe4ZWgrYGWinZQQyhVnp/5oZw=="; + }; + }; + "@lydell/elm_linux_arm-0.19.1-0" = { + name = "_at_lydell_slash_elm_linux_arm"; + packageName = "@lydell/elm_linux_arm"; + version = "0.19.1-0"; + src = fetchurl { + url = "https://registry.npmjs.org/@lydell/elm_linux_arm/-/elm_linux_arm-0.19.1-0.tgz"; + sha512 = "crKrLzuT6jn4OOS7PWKZGYFw6vHwPu3iNP7lg8rFkOog/HxlkRwX4S695aILBG8SGTLhEdfP9tg28SQ7vR4Lpg=="; + }; + }; + "@lydell/elm_linux_arm64-0.19.1-4" = { + name = "_at_lydell_slash_elm_linux_arm64"; + packageName = "@lydell/elm_linux_arm64"; + version = "0.19.1-4"; + src = fetchurl { + url = "https://registry.npmjs.org/@lydell/elm_linux_arm64/-/elm_linux_arm64-0.19.1-4.tgz"; + sha512 = "JuUkkVBtJjUajtTriQFFANHDmwA14NhqNqgIcq5LCJ6vUQv5/LVd6NUOkl/Rdq7Ju/VN/XwBD1/vm7MGIMOTqA=="; + }; + }; + "@lydell/elm_linux_x64-0.19.1-1" = { + name = "_at_lydell_slash_elm_linux_x64"; + packageName = "@lydell/elm_linux_x64"; + version = "0.19.1-1"; + src = fetchurl { + url = "https://registry.npmjs.org/@lydell/elm_linux_x64/-/elm_linux_x64-0.19.1-1.tgz"; + sha512 = "1Y8UAb+GfUqlSjUTX9CaaZhJqvhVcfNbYC0N9AEutlXf1CzFMvF4VsDeZdxzhNI4allPRWBD1IqtdlLhBTFacA=="; + }; + }; + "@lydell/elm_win32_x64-0.19.1-1" = { + name = "_at_lydell_slash_elm_win32_x64"; + packageName = "@lydell/elm_win32_x64"; + version = "0.19.1-1"; + src = fetchurl { + url = "https://registry.npmjs.org/@lydell/elm_win32_x64/-/elm_win32_x64-0.19.1-1.tgz"; + sha512 = "3LMiJ+uUxDFLNnCd6HBmvVWSjSWjs/Z9dMXZWCMOcw3vrW9iOkRrsNGNxohRXun2YRd8wXOX8/DwVn8i2SJ3KA=="; + }; + }; "@mrmlnc/readdir-enhanced-2.2.1" = { name = "_at_mrmlnc_slash_readdir-enhanced"; packageName = "@mrmlnc/readdir-enhanced"; @@ -1642,13 +1705,13 @@ let sha512 = "U5icWpv7YnZYGsN4/cmh3WD2onMY0aJIiTE6+51TwJCttdHvtCYmkBNOobHlXwrJRL0nkH9jH4kD+1FAdMN4Tg=="; }; }; - "@types/node-20.8.9" = { + "@types/node-20.8.10" = { name = "_at_types_slash_node"; packageName = "@types/node"; - version = "20.8.9"; + version = "20.8.10"; src = fetchurl { - url = "https://registry.npmjs.org/@types/node/-/node-20.8.9.tgz"; - sha512 = "UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg=="; + url = "https://registry.npmjs.org/@types/node/-/node-20.8.10.tgz"; + sha512 = "TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w=="; }; }; "@types/node-8.10.66" = { @@ -1957,13 +2020,13 @@ let sha512 = "XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ=="; }; }; - "acorn-8.11.0" = { + "acorn-8.11.2" = { name = "acorn"; packageName = "acorn"; - version = "8.11.0"; + version = "8.11.2"; src = fetchurl { - url = "https://registry.npmjs.org/acorn/-/acorn-8.11.0.tgz"; - sha512 = "hNiSyky+cuYVALBrsjB7f9gMN9P4u09JyAiMNMLaVfsmkDJuH84M1T/0pfDX/OJfGWcobd2A7ecXYzygn8wibA=="; + url = "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz"; + sha512 = "nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w=="; }; }; "address-1.0.3" = { @@ -3190,13 +3253,13 @@ let sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw=="; }; }; - "caniuse-lite-1.0.30001554" = { + "caniuse-lite-1.0.30001561" = { name = "caniuse-lite"; packageName = "caniuse-lite"; - version = "1.0.30001554"; + version = "1.0.30001561"; src = fetchurl { - url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001554.tgz"; - sha512 = "A2E3U//MBwbJVzebddm1YfNp7Nud5Ip+IPn4BozBmn4KqVX7AvluoIDFWjsv5OkGnKUXQVmMSoMKLa3ScCblcQ=="; + url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001561.tgz"; + sha512 = "NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw=="; }; }; "case-sensitive-paths-webpack-plugin-2.3.0" = { @@ -3946,13 +4009,13 @@ let sha512 = "Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="; }; }; - "core-js-compat-3.33.1" = { + "core-js-compat-3.33.2" = { name = "core-js-compat"; packageName = "core-js-compat"; - version = "3.33.1"; + version = "3.33.2"; src = fetchurl { - url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.1.tgz"; - sha512 = "6pYKNOgD/j/bkC5xS5IIg6bncid3rfrI42oBH1SQJbsmYPKF7rhzcFzYCcxYMmNQQ0rCEB8WqpW7QHndOggaeQ=="; + url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.2.tgz"; + sha512 = "axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw=="; }; }; "core-util-is-1.0.2" = { @@ -4810,13 +4873,13 @@ let sha512 = "WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="; }; }; - "electron-to-chromium-1.4.567" = { + "electron-to-chromium-1.4.576" = { name = "electron-to-chromium"; packageName = "electron-to-chromium"; - version = "1.4.567"; + version = "1.4.576"; src = fetchurl { - url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.567.tgz"; - sha512 = "8KR114CAYQ4/r5EIEsOmOMqQ9j0MRbJZR3aXD/KFA8RuKzyoUB4XrUCg+l8RUGqTVQgKNIgTpjaG8YHRPAbX2w=="; + url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.576.tgz"; + sha512 = "yXsZyXJfAqzWk1WKryr0Wl0MN2D47xodPvEEwlVePBnhU5E7raevLQR+E6b9JAD3GfL/7MbAL9ZtWQQPcLx7wA=="; }; }; "elliptic-6.5.4" = { @@ -7204,15 +7267,6 @@ let sha512 = "opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q=="; }; }; - "is-accessor-descriptor-0.1.6" = { - name = "is-accessor-descriptor"; - packageName = "is-accessor-descriptor"; - version = "0.1.6"; - src = fetchurl { - url = "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz"; - sha512 = "e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A=="; - }; - }; "is-accessor-descriptor-1.0.1" = { name = "is-accessor-descriptor"; packageName = "is-accessor-descriptor"; @@ -7330,15 +7384,6 @@ let sha512 = "hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw=="; }; }; - "is-data-descriptor-0.1.4" = { - name = "is-data-descriptor"; - packageName = "is-data-descriptor"; - version = "0.1.4"; - src = fetchurl { - url = "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz"; - sha512 = "+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg=="; - }; - }; "is-data-descriptor-1.0.1" = { name = "is-data-descriptor"; packageName = "is-data-descriptor"; @@ -7357,22 +7402,22 @@ let sha512 = "9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ=="; }; }; - "is-descriptor-0.1.6" = { + "is-descriptor-0.1.7" = { name = "is-descriptor"; packageName = "is-descriptor"; - version = "0.1.6"; + version = "0.1.7"; src = fetchurl { - url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz"; - sha512 = "avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg=="; + url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz"; + sha512 = "C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg=="; }; }; - "is-descriptor-1.0.2" = { + "is-descriptor-1.0.3" = { name = "is-descriptor"; packageName = "is-descriptor"; - version = "1.0.2"; + version = "1.0.3"; src = fetchurl { - url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz"; - sha512 = "2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg=="; + url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz"; + sha512 = "JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw=="; }; }; "is-directory-0.3.1" = { @@ -8122,15 +8167,6 @@ let sha512 = "24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw=="; }; }; - "kind-of-5.1.0" = { - name = "kind-of"; - packageName = "kind-of"; - version = "5.1.0"; - src = fetchurl { - url = "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz"; - sha512 = "NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="; - }; - }; "kind-of-6.0.3" = { name = "kind-of"; packageName = "kind-of"; @@ -10957,13 +10993,13 @@ let sha512 = "jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ=="; }; }; - "punycode-2.3.0" = { + "punycode-2.3.1" = { name = "punycode"; packageName = "punycode"; - version = "2.3.0"; + version = "2.3.1"; src = fetchurl { - url = "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz"; - sha512 = "rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA=="; + url = "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz"; + sha512 = "vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="; }; }; "q-1.5.1" = { @@ -12928,13 +12964,13 @@ let sha512 = "7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g=="; }; }; - "stylus-0.60.0" = { + "stylus-0.61.0" = { name = "stylus"; packageName = "stylus"; - version = "0.60.0"; + version = "0.61.0"; src = fetchurl { - url = "https://registry.npmjs.org/stylus/-/stylus-0.60.0.tgz"; - sha512 = "j2pBgEwzCu05yCuY4cmyp0FtPQQFBBAGB7TY7QaNl7eztiHwkxzwvIp5vjZJND/a1JNOka+ZW9ewVPFZpI3pcA=="; + url = "https://registry.npmjs.org/stylus/-/stylus-0.61.0.tgz"; + sha512 = "oaV9T4sRBiQfChXE0av9SrLD+ovEdQiWzPJ5kwIeYvMhjUDJnZtdubAG6lSSbaR4sCnoT6sw411IOl5Akcht4Q=="; }; }; "sudo-prompt-8.2.5" = { @@ -13108,13 +13144,22 @@ let sha512 = "4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw=="; }; }; - "terser-5.22.0" = { + "terser-5.15.1" = { name = "terser"; packageName = "terser"; - version = "5.22.0"; + version = "5.15.1"; src = fetchurl { - url = "https://registry.npmjs.org/terser/-/terser-5.22.0.tgz"; - sha512 = "hHZVLgRA2z4NWcN6aS5rQDc+7Dcy58HOf2zbYwmFcQ+ua3h6eEFf5lIDKTzbWwlazPyOZsFQO8V80/IjVNExEw=="; + url = "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz"; + sha512 = "K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw=="; + }; + }; + "terser-5.24.0" = { + name = "terser"; + packageName = "terser"; + version = "5.24.0"; + src = fetchurl { + url = "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz"; + sha512 = "ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw=="; }; }; "terser-5.3.8" = { @@ -13549,6 +13594,15 @@ let sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q=="; }; }; + "typescript-4.9.3" = { + name = "typescript"; + packageName = "typescript"; + version = "4.9.3"; + src = fetchurl { + url = "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz"; + sha512 = "CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA=="; + }; + }; "typescript-4.9.5" = { name = "typescript"; packageName = "typescript"; @@ -13720,13 +13774,13 @@ let sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg=="; }; }; - "universalify-2.0.0" = { + "universalify-2.0.1" = { name = "universalify"; packageName = "universalify"; - version = "2.0.0"; + version = "2.0.1"; src = fetchurl { - url = "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz"; - sha512 = "hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ=="; + url = "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz"; + sha512 = "gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw=="; }; }; "unpipe-1.0.0" = { @@ -13990,6 +14044,15 @@ let sha512 = "ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw=="; }; }; + "vite-4.3.9" = { + name = "vite"; + packageName = "vite"; + version = "4.3.9"; + src = fetchurl { + url = "https://registry.npmjs.org/vite/-/vite-4.3.9.tgz"; + sha512 = "qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg=="; + }; + }; "vite-4.5.0" = { name = "vite"; packageName = "vite"; @@ -14880,7 +14943,7 @@ in sources."process-nextick-args-1.0.7" sources."proxy-addr-2.0.7" sources."psl-1.9.0" - sources."punycode-2.3.0" + sources."punycode-2.3.1" sources."qs-6.7.0" sources."range-parser-1.2.1" sources."raw-body-2.4.0" @@ -15118,7 +15181,7 @@ in sources."picomatch-2.3.1" sources."pseudomap-1.0.2" sources."psl-1.9.0" - sources."punycode-2.3.0" + sources."punycode-2.3.1" sources."qs-6.5.3" sources."readdirp-3.1.3" sources."request-2.88.2" @@ -15471,6 +15534,148 @@ in bypassCache = true; reconstructLock = true; }; + elm-land = nodeEnv.buildNodePackage { + name = "elm-land"; + packageName = "elm-land"; + version = "0.19.4"; + src = fetchurl { + url = "https://registry.npmjs.org/elm-land/-/elm-land-0.19.4.tgz"; + sha512 = "ruspCQ7s+ZOSILEJ8psXuQMb4ASGfgXCqmMjiLIyV7oX42nSpQGYADTXwiAwo+E7ESev1TWspn/DkAxsuDo6Qg=="; + }; + dependencies = [ + sources."@adobe/css-tools-4.3.1" + sources."@esbuild/android-arm-0.17.19" + sources."@esbuild/android-arm64-0.17.19" + sources."@esbuild/android-x64-0.17.19" + sources."@esbuild/darwin-arm64-0.17.19" + sources."@esbuild/darwin-x64-0.17.19" + sources."@esbuild/freebsd-arm64-0.17.19" + sources."@esbuild/freebsd-x64-0.17.19" + sources."@esbuild/linux-arm-0.17.19" + sources."@esbuild/linux-arm64-0.17.19" + sources."@esbuild/linux-ia32-0.17.19" + sources."@esbuild/linux-loong64-0.17.19" + sources."@esbuild/linux-mips64el-0.17.19" + sources."@esbuild/linux-ppc64-0.17.19" + sources."@esbuild/linux-riscv64-0.17.19" + sources."@esbuild/linux-s390x-0.17.19" + sources."@esbuild/linux-x64-0.17.19" + sources."@esbuild/netbsd-x64-0.17.19" + sources."@esbuild/openbsd-x64-0.17.19" + sources."@esbuild/sunos-x64-0.17.19" + sources."@esbuild/win32-arm64-0.17.19" + sources."@esbuild/win32-ia32-0.17.19" + sources."@esbuild/win32-x64-0.17.19" + sources."@jridgewell/gen-mapping-0.3.3" + sources."@jridgewell/resolve-uri-3.1.1" + sources."@jridgewell/set-array-1.1.2" + sources."@jridgewell/source-map-0.3.5" + sources."@jridgewell/sourcemap-codec-1.4.15" + sources."@jridgewell/trace-mapping-0.3.20" + sources."@lydell/elm-0.19.1-14" + sources."@lydell/elm_darwin_arm64-0.19.1-3" + sources."@lydell/elm_darwin_x64-0.19.1-2" + sources."@lydell/elm_linux_arm-0.19.1-0" + sources."@lydell/elm_linux_arm64-0.19.1-4" + sources."@lydell/elm_linux_x64-0.19.1-1" + sources."@lydell/elm_win32_x64-0.19.1-1" + sources."@types/node-20.8.10" + sources."acorn-8.11.2" + sources."anymatch-3.1.3" + sources."balanced-match-1.0.2" + sources."binary-extensions-2.2.0" + sources."brace-expansion-1.1.11" + sources."braces-3.0.2" + sources."buffer-from-1.1.2" + sources."chokidar-3.5.3" + sources."commander-2.20.3" + sources."concat-map-0.0.1" + sources."copy-anything-2.0.6" + sources."cross-spawn-6.0.5" + sources."debug-3.2.7" + sources."errno-0.1.8" + sources."esbuild-0.17.19" + sources."fill-range-7.0.1" + sources."find-elm-dependencies-2.0.4" + sources."firstline-1.3.1" + sources."fs.realpath-1.0.0" + sources."fsevents-2.3.3" + sources."glob-7.2.3" + sources."glob-parent-5.1.2" + sources."graceful-fs-4.2.11" + sources."iconv-lite-0.6.3" + sources."image-size-0.5.5" + sources."immutable-4.3.4" + sources."inflight-1.0.6" + sources."inherits-2.0.4" + sources."is-binary-path-2.1.0" + sources."is-extglob-2.1.1" + sources."is-glob-4.0.3" + sources."is-number-7.0.0" + sources."is-what-3.14.1" + sources."isexe-2.0.0" + sources."less-4.2.0" + sources."lodash-4.17.21" + sources."make-dir-2.1.0" + sources."mime-1.6.0" + sources."minimatch-3.1.2" + sources."minimist-1.2.8" + sources."mkdirp-0.5.6" + sources."ms-2.1.3" + sources."nanoid-3.3.6" + sources."needle-3.2.0" + sources."nice-try-1.0.5" + sources."node-elm-compiler-5.0.6" + sources."normalize-path-3.0.0" + sources."once-1.4.0" + sources."parse-node-version-1.0.1" + sources."path-is-absolute-1.0.1" + sources."path-key-2.0.1" + sources."picocolors-1.0.0" + sources."picomatch-2.3.1" + sources."pify-4.0.1" + sources."postcss-8.4.31" + sources."prr-1.0.1" + sources."readdirp-3.6.0" + sources."rimraf-2.6.3" + sources."rollup-3.29.4" + sources."safer-buffer-2.1.2" + sources."sass-1.69.5" + sources."sax-1.3.0" + sources."semver-5.7.2" + sources."shebang-command-1.2.0" + sources."shebang-regex-1.0.0" + sources."source-map-0.6.1" + sources."source-map-js-1.0.2" + sources."source-map-support-0.5.21" + (sources."stylus-0.61.0" // { + dependencies = [ + sources."debug-4.3.4" + sources."ms-2.1.2" + sources."source-map-0.7.4" + ]; + }) + sources."sugarss-4.0.1" + sources."temp-0.9.4" + sources."terser-5.15.1" + sources."to-regex-range-5.0.1" + sources."tslib-2.6.2" + sources."typescript-4.9.3" + sources."undici-types-5.26.5" + sources."vite-4.3.9" + sources."which-1.3.1" + sources."wrappy-1.0.2" + ]; + buildInputs = globalBuildInputs; + meta = { + description = "Reliable web apps for everyone"; + homepage = "https://elm.land"; + license = "ISC"; + }; + production = true; + bypassCache = true; + reconstructLock = true; + }; elm-live = nodeEnv.buildNodePackage { name = "elm-live"; packageName = "elm-live"; @@ -15756,7 +15961,7 @@ in sources."@types/cacheable-request-6.0.3" sources."@types/http-cache-semantics-4.0.3" sources."@types/keyv-3.1.4" - sources."@types/node-20.8.9" + sources."@types/node-20.8.10" sources."@types/responselike-1.0.2" sources."cacheable-lookup-2.0.1" sources."cacheable-request-7.0.4" @@ -15920,7 +16125,7 @@ in (sources."fs-extra-11.1.1" // { dependencies = [ sources."jsonfile-6.1.0" - sources."universalify-2.0.0" + sources."universalify-2.0.1" ]; }) sources."fs-minipass-1.2.7" @@ -15984,7 +16189,7 @@ in sources."performance-now-2.1.0" sources."picomatch-2.3.1" sources."psl-1.9.0" - sources."punycode-2.3.0" + sources."punycode-2.3.1" sources."qs-6.5.3" sources."readdirp-3.1.3" sources."request-2.88.2" @@ -16264,7 +16469,7 @@ in sources."@types/http-proxy-1.17.13" sources."@types/json-schema-7.0.14" sources."@types/minimatch-5.1.2" - sources."@types/node-20.8.9" + sources."@types/node-20.8.10" sources."@types/parse-json-4.0.1" sources."@types/q-1.5.7" sources."@types/source-list-map-0.1.4" @@ -16435,7 +16640,7 @@ in sources."camel-case-4.1.2" sources."camelcase-5.3.1" sources."caniuse-api-3.0.0" - sources."caniuse-lite-1.0.30001554" + sources."caniuse-lite-1.0.30001561" sources."case-sensitive-paths-webpack-plugin-2.3.0" sources."caseless-0.12.0" (sources."chalk-2.4.2" // { @@ -16455,18 +16660,7 @@ in (sources."class-utils-0.3.6" // { dependencies = [ sources."define-property-0.2.5" - (sources."is-accessor-descriptor-0.1.6" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - (sources."is-data-descriptor-0.1.4" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - sources."is-descriptor-0.1.6" - sources."kind-of-5.1.0" + sources."is-descriptor-0.1.7" ]; }) (sources."clean-css-4.2.4" // { @@ -16534,7 +16728,7 @@ in ]; }) sources."core-js-2.6.12" - sources."core-js-compat-3.33.1" + sources."core-js-compat-3.33.2" sources."core-util-is-1.0.3" sources."cosmiconfig-5.2.1" (sources."create-ecdh-4.0.4" // { @@ -16659,7 +16853,7 @@ in sources."duplexify-3.7.1" sources."ecc-jsbn-0.1.2" sources."ee-first-1.1.1" - sources."electron-to-chromium-1.4.567" + sources."electron-to-chromium-1.4.576" (sources."elliptic-6.5.4" // { dependencies = [ sources."bn.js-4.12.0" @@ -16732,18 +16926,7 @@ in sources."debug-2.6.9" sources."define-property-0.2.5" sources."extend-shallow-2.0.1" - (sources."is-accessor-descriptor-0.1.6" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - (sources."is-data-descriptor-0.1.4" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - sources."is-descriptor-0.1.6" - sources."kind-of-5.1.0" + sources."is-descriptor-0.1.7" sources."ms-2.0.0" ]; }) @@ -16987,7 +17170,7 @@ in sources."is-core-module-2.13.1" sources."is-data-descriptor-1.0.1" sources."is-date-object-1.0.5" - sources."is-descriptor-1.0.2" + sources."is-descriptor-1.0.3" sources."is-directory-0.3.1" sources."is-extendable-0.1.1" sources."is-extglob-2.1.1" @@ -17144,13 +17327,7 @@ in (sources."object-copy-0.1.0" // { dependencies = [ sources."define-property-0.2.5" - sources."is-accessor-descriptor-0.1.6" - sources."is-data-descriptor-0.1.4" - (sources."is-descriptor-0.1.6" // { - dependencies = [ - sources."kind-of-5.1.0" - ]; - }) + sources."is-descriptor-0.1.7" sources."kind-of-3.2.2" ]; }) @@ -17520,7 +17697,7 @@ in sources."pump-2.0.1" ]; }) - sources."punycode-2.3.0" + sources."punycode-2.3.1" sources."q-1.5.1" sources."qs-6.5.3" sources."query-string-4.3.4" @@ -17696,18 +17873,7 @@ in sources."debug-2.6.9" sources."define-property-0.2.5" sources."extend-shallow-2.0.1" - (sources."is-accessor-descriptor-0.1.6" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - (sources."is-data-descriptor-0.1.4" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - sources."is-descriptor-0.1.6" - sources."kind-of-5.1.0" + sources."is-descriptor-0.1.7" sources."ms-2.0.0" ]; }) @@ -17764,18 +17930,7 @@ in (sources."static-extend-0.1.2" // { dependencies = [ sources."define-property-0.2.5" - (sources."is-accessor-descriptor-0.1.6" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - (sources."is-data-descriptor-0.1.4" // { - dependencies = [ - sources."kind-of-3.2.2" - ]; - }) - sources."is-descriptor-0.1.6" - sources."kind-of-5.1.0" + sources."is-descriptor-0.1.7" ]; }) sources."statuses-2.0.1" @@ -18231,7 +18386,7 @@ in sha512 = "EFwDCYHm3rwCiwXwfSUKeDDcIYrQ61deChDk7ruXPN4y0PkIINIKbljLu3uOnKSYhzc5CGSc7avwiAlkxXnJsA=="; }; dependencies = [ - sources."@adobe/css-tools-4.2.0" + sources."@adobe/css-tools-4.3.1" sources."@esbuild/android-arm-0.17.19" sources."@esbuild/android-arm64-0.17.19" sources."@esbuild/android-x64-0.17.19" @@ -18284,7 +18439,7 @@ in sources."@types/rimraf-2.0.5" sources."@types/tmp-0.0.33" sources."accepts-1.3.8" - sources."acorn-8.11.0" + sources."acorn-8.11.2" (sources."agent-base-6.0.2" // { dependencies = [ sources."debug-4.3.4" @@ -18593,7 +18748,7 @@ in sources."proxy-addr-2.0.7" sources."prr-1.0.1" sources."pump-3.0.0" - sources."punycode-2.3.0" + sources."punycode-2.3.1" sources."qs-6.11.0" sources."queue-microtask-1.2.3" sources."range-parser-1.2.1" @@ -18671,11 +18826,10 @@ in sources."strip-ansi-cjs-6.0.1" sources."strip-bom-string-1.0.0" sources."strip-json-comments-2.0.1" - (sources."stylus-0.60.0" // { + (sources."stylus-0.61.0" // { dependencies = [ sources."debug-4.3.4" sources."ms-2.1.2" - sources."sax-1.2.4" sources."source-map-0.7.4" ]; }) @@ -18692,7 +18846,7 @@ in sources."mkdirp-1.0.4" ]; }) - (sources."terser-5.22.0" // { + (sources."terser-5.24.0" // { dependencies = [ sources."commander-2.20.3" ]; @@ -18707,7 +18861,7 @@ in sources."undici-types-5.26.5" sources."unique-filename-3.0.0" sources."unique-slug-4.0.0" - sources."universalify-2.0.0" + sources."universalify-2.0.1" sources."unpipe-1.0.0" sources."url-parse-lax-3.0.0" sources."utf-8-validate-5.0.10" @@ -18737,7 +18891,7 @@ in sources."@esbuild/win32-arm64-0.18.20" sources."@esbuild/win32-ia32-0.18.20" sources."@esbuild/win32-x64-0.18.20" - sources."@types/node-20.8.9" + sources."@types/node-20.8.10" sources."esbuild-0.18.20" ]; }) @@ -18789,7 +18943,7 @@ in sources."@types/cacheable-request-6.0.3" sources."@types/http-cache-semantics-4.0.3" sources."@types/keyv-3.1.4" - sources."@types/node-20.8.9" + sources."@types/node-20.8.10" sources."@types/responselike-1.0.2" sources."ansi-escapes-4.3.2" sources."ansi-regex-6.0.1" @@ -18938,7 +19092,7 @@ in sources."to-regex-range-5.0.1" sources."type-fest-0.21.3" sources."undici-types-5.26.5" - sources."universalify-2.0.0" + sources."universalify-2.0.1" sources."util-deprecate-1.0.2" sources."wcwidth-1.0.1" sources."which-2.0.2" diff --git a/nixpkgs/pkgs/development/compilers/emscripten/default.nix b/nixpkgs/pkgs/development/compilers/emscripten/default.nix index 37ccb5f1a02b..436fda2a0521 100644 --- a/nixpkgs/pkgs/development/compilers/emscripten/default.nix +++ b/nixpkgs/pkgs/development/compilers/emscripten/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { pname = "emscripten"; - version = "3.1.45"; + version = "3.1.47"; llvmEnv = symlinkJoin { name = "emscripten-llvm-${version}"; @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { name = "emscripten-node-modules-${version}"; inherit pname version src; - npmDepsHash = "sha256-kcWAio1fKuwqFCFlupX9KevjWPbv9W/Z/5EPrihQ6ms="; + npmDepsHash = "sha256-Qft+//za5ed6Oquxtcdpv7g5oOc2WmWuRJ/CDe+FEiI="; dontBuild = true; @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "emscripten-core"; repo = "emscripten"; - hash = "sha256-yf0Yb/UjaBQpIEPZzzjaUmR+JzKPSJHMkrYLHxDXwOg="; + hash = "sha256-cRNkQ+7vUqJLNlf5dieeDcyT1jlBUeVxO8avoUvOPHI="; rev = version; }; @@ -85,6 +85,9 @@ stdenv.mkDerivation rec { cp -r . $appdir chmod -R +w $appdir + mkdir -p $appdir/node_modules + cp -r ${nodeModules}/* $appdir/node_modules + mkdir -p $out/bin for b in em++ em-config emar embuilder.py emcc emcmake emconfigure emmake emranlib emrun emscons emsize; do makeWrapper $appdir/$b $out/bin/$b \ diff --git a/nixpkgs/pkgs/development/compilers/erg/default.nix b/nixpkgs/pkgs/development/compilers/erg/default.nix index 27e32df06312..6d052179ebd8 100644 --- a/nixpkgs/pkgs/development/compilers/erg/default.nix +++ b/nixpkgs/pkgs/development/compilers/erg/default.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage rec { pname = "erg"; - version = "0.6.24"; + version = "0.6.25"; src = fetchFromGitHub { owner = "erg-lang"; repo = "erg"; rev = "v${version}"; - hash = "sha256-J8Zw79TXYpDfnsx6UgB4sqY1vdwVHildqtCcXlBvUxQ="; + hash = "sha256-z3481/vWmR5QlULfJZtLdGhwsJKBbLcvyC87SCngMVg="; }; - cargoHash = "sha256-4FhD9MvAhP88WGqVIUG2JHxd/gbDYf++bdlS6lVW0xs="; + cargoHash = "sha256-+jN+6At8tLHA/ilSBxugHIS79Cw8bGhE0RUNU4sSGeM="; nativeBuildInputs = [ makeWrapper diff --git a/nixpkgs/pkgs/development/compilers/fpc/binary-builder-darwin.sh b/nixpkgs/pkgs/development/compilers/fpc/binary-builder-darwin.sh index 39db0518281d..8a8600f1f639 100755 --- a/nixpkgs/pkgs/development/compilers/fpc/binary-builder-darwin.sh +++ b/nixpkgs/pkgs/development/compilers/fpc/binary-builder-darwin.sh @@ -1,4 +1,4 @@ -if [ -e .attrs.sh ]; then source .attrs.sh; fi +if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi source $stdenv/setup pkgdir=$(pwd)/pkg diff --git a/nixpkgs/pkgs/development/compilers/fpc/binary-builder.sh b/nixpkgs/pkgs/development/compilers/fpc/binary-builder.sh index c471378c275f..568c3094107a 100755 --- a/nixpkgs/pkgs/development/compilers/fpc/binary-builder.sh +++ b/nixpkgs/pkgs/development/compilers/fpc/binary-builder.sh @@ -1,4 +1,4 @@ -if [ -e .attrs.sh ]; then source .attrs.sh; fi +if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi source $stdenv/setup tar xf $src diff --git a/nixpkgs/pkgs/development/compilers/gcc/default.nix b/nixpkgs/pkgs/development/compilers/gcc/default.nix index 0fe23000cc90..01f172513080 100644 --- a/nixpkgs/pkgs/development/compilers/gcc/default.nix +++ b/nixpkgs/pkgs/development/compilers/gcc/default.nix @@ -108,8 +108,8 @@ let inherit version; /* Cross-gcc settings (build == host != target) */ crossMingw = targetPlatform != hostPlatform && targetPlatform.isMinGW; - stageNameAddon = if withoutTargetLibc then "stage-static" else "stage-final"; - crossNameAddon = optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}-${stageNameAddon}-"; + stageNameAddon = optionalString withoutTargetLibc "-nolibc"; + crossNameAddon = optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}${stageNameAddon}-"; javaAwtGtk = langJava && x11Support; xlibs = [ diff --git a/nixpkgs/pkgs/development/compilers/gcc/patches/12/mangle-NIX_STORE-in-__FILE__.patch b/nixpkgs/pkgs/development/compilers/gcc/patches/12/mangle-NIX_STORE-in-__FILE__.patch new file mode 100644 index 000000000000..d938d67a2d06 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/gcc/patches/12/mangle-NIX_STORE-in-__FILE__.patch @@ -0,0 +1,85 @@ +From b10785c1be469319a09b10bc69db21159b0599ee Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich <siarheit@google.com> +Date: Fri, 22 Sep 2023 22:41:49 +0100 +Subject: [PATCH] gcc/file-prefix-map.cc: always mangle __FILE__ into invalid + store path + +Without the change `__FILE__` used in static inline functions in headers +embed paths to header files into executable images. For local headers +it's not a problem, but for headers in `/nix/store` this causes `-dev` +inputs to be retained in runtime closure. + +Typical examples are `nix` -> `nlohmann_json` and `pipewire` -> +`lttng-ust.dev`. + +Ideally we would like to use `-fmacro-prefix-map=` feature of `gcc` as: + + -fmacro-prefix-map=/nix/store/$hash1-nlohmann-json-ver=/nix/store/eeee.eee-nlohmann-json-ver + -fmacro-prefix-map=/nix/... + +In practice it quickly exhausts argument lengtth limit due to `gcc` +deficiency: https://gcc.gnu.org/PR111527 + +Until it;s fixed let's hardcode header mangling if $NIX_STORE variable +is present in the environment. + +Tested as: + + $ printf "# 0 \"/nix/store/01234567890123456789012345678901-pppppp-vvvvvvv\" \nconst char * f(void) { return __FILE__; }" | NIX_STORE=/nix/store ./gcc/xgcc -Bgcc -x c - -S -o - + ... + .string "/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-pppppp-vvvvvvv" + ... + +Mangled successfully. +--- a/gcc/file-prefix-map.cc ++++ b/gcc/file-prefix-map.cc +@@ -60,6 +60,9 @@ add_prefix_map (file_prefix_map *&maps, const char *arg, const char *opt) + maps = map; + } + ++/* Forward declaration for a $NIX_STORE remap hack below. */ ++static file_prefix_map *macro_prefix_maps; /* -fmacro-prefix-map */ ++ + /* Perform user-specified mapping of filename prefixes. Return the + GC-allocated new name corresponding to FILENAME or FILENAME if no + remapping was performed. */ +@@ -76,7 +79,30 @@ remap_filename (file_prefix_map *maps, const char *filename) + if (filename_ncmp (filename, map->old_prefix, map->old_len) == 0) + break; + if (!map) +- return filename; ++ { ++ if (maps == macro_prefix_maps) ++ { ++ /* Remap all fo $NIX_STORE/.{32} paths to ++ * equivalent $NIX_STORE/e{32}. ++ * ++ * That way we avoid argument parameters explosion ++ * and still avoid embedding headers into runtime closure: ++ * https://gcc.gnu.org/PR111527 ++ */ ++ char * nix_store = getenv("NIX_STORE"); ++ size_t nix_store_len = nix_store ? strlen(nix_store) : 0; ++ const char * name = filename; ++ size_t name_len = strlen(name); ++ if (nix_store && name_len >= nix_store_len + 1 + 32 && memcmp(name, nix_store, nix_store_len) == 0) ++ { ++ s = (char *) ggc_alloc_atomic (name_len + 1); ++ memcpy(s, name, name_len + 1); ++ memset(s + nix_store_len + 1, 'e', 32); ++ return s; ++ } ++ } ++ return filename; ++ } + name = filename + map->old_len; + name_len = strlen (name) + 1; + +@@ -90,7 +116,6 @@ remap_filename (file_prefix_map *maps, const char *filename) + ignore it in DW_AT_producer (dwarf2out.cc). */ + + /* Linked lists of file_prefix_map structures. */ +-static file_prefix_map *macro_prefix_maps; /* -fmacro-prefix-map */ + static file_prefix_map *debug_prefix_maps; /* -fdebug-prefix-map */ + static file_prefix_map *profile_prefix_maps; /* -fprofile-prefix-map */ + diff --git a/nixpkgs/pkgs/development/compilers/gcc/patches/13/mangle-NIX_STORE-in-__FILE__.patch b/nixpkgs/pkgs/development/compilers/gcc/patches/13/mangle-NIX_STORE-in-__FILE__.patch new file mode 100644 index 000000000000..57ae2111f020 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/gcc/patches/13/mangle-NIX_STORE-in-__FILE__.patch @@ -0,0 +1,84 @@ +From b10785c1be469319a09b10bc69db21159b0599ee Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich <siarheit@google.com> +Date: Fri, 22 Sep 2023 22:41:49 +0100 +Subject: [PATCH] gcc/file-prefix-map.cc: always mangle __FILE__ into invalid + store path + +Without the change `__FILE__` used in static inline functions in headers +embed paths to header files into executable images. For local headers +it's not a problem, but for headers in `/nix/store` this causes `-dev` +inputs to be retained in runtime closure. + +Typical examples are `nix` -> `nlohmann_json` and `pipewire` -> +`lttng-ust.dev`. + +Ideally we would like to use `-fmacro-prefix-map=` feature of `gcc` as: + + -fmacro-prefix-map=/nix/store/$hash1-nlohmann-json-ver=/nix/store/eeee.eee-nlohmann-json-ver + -fmacro-prefix-map=/nix/... + +In practice it quickly exhausts argument lengtth limit due to `gcc` +deficiency: https://gcc.gnu.org/PR111527 + +Until it;s fixed let's hardcode header mangling if $NIX_STORE variable +is present in the environment. + +Tested as: + + $ printf "# 0 \"/nix/store/01234567890123456789012345678901-pppppp-vvvvvvv\" \nconst char * f(void) { return __FILE__; }" | NIX_STORE=/nix/store ./gcc/xgcc -Bgcc -x c - -S -o - + ... + .string "/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-pppppp-vvvvvvv" + ... + +Mangled successfully. +--- a/gcc/file-prefix-map.cc ++++ b/gcc/file-prefix-map.cc +@@ -69,6 +69,9 @@ add_prefix_map (file_prefix_map *&maps, const char *arg, const char *opt) + maps = map; + } + ++/* Forward declaration for a $NIX_STORE remap hack below. */ ++static file_prefix_map *macro_prefix_maps; /* -fmacro-prefix-map */ ++ + /* Perform user-specified mapping of filename prefixes. Return the + GC-allocated new name corresponding to FILENAME or FILENAME if no + remapping was performed. */ +@@ -102,6 +105,29 @@ remap_filename (file_prefix_map *maps, const char *filename) + break; + if (!map) + { ++ if (maps == macro_prefix_maps) ++ { ++ /* Remap all fo $NIX_STORE/.{32} paths to ++ * equivalent $NIX_STORE/e{32}. ++ * ++ * That way we avoid argument parameters explosion ++ * and still avoid embedding headers into runtime closure: ++ * https://gcc.gnu.org/PR111527 ++ */ ++ char * nix_store = getenv("NIX_STORE"); ++ size_t nix_store_len = nix_store ? strlen(nix_store) : 0; ++ const char * name = realname ? realname : filename; ++ size_t name_len = strlen(name); ++ if (nix_store && name_len >= nix_store_len + 1 + 32 && memcmp(name, nix_store, nix_store_len) == 0) ++ { ++ s = (char *) ggc_alloc_atomic (name_len + 1); ++ memcpy(s, name, name_len + 1); ++ memset(s + nix_store_len + 1, 'e', 32); ++ if (realname != filename) ++ free (const_cast <char *> (realname)); ++ return s; ++ } ++ } + if (realname != filename) + free (const_cast <char *> (realname)); + return filename; +@@ -124,7 +150,6 @@ remap_filename (file_prefix_map *maps, const char *filename) + ignore it in DW_AT_producer (gen_command_line_string in opts.cc). */ + + /* Linked lists of file_prefix_map structures. */ +-static file_prefix_map *macro_prefix_maps; /* -fmacro-prefix-map */ + static file_prefix_map *debug_prefix_maps; /* -fdebug-prefix-map */ + static file_prefix_map *profile_prefix_maps; /* -fprofile-prefix-map */ + + diff --git a/nixpkgs/pkgs/development/compilers/gcc/patches/default.nix b/nixpkgs/pkgs/development/compilers/gcc/patches/default.nix index 15880913bde1..c4b0dbf91b66 100644 --- a/nixpkgs/pkgs/development/compilers/gcc/patches/default.nix +++ b/nixpkgs/pkgs/development/compilers/gcc/patches/default.nix @@ -63,8 +63,8 @@ in ++ optionals (noSysDirs) ( [(if atLeast12 then ./gcc-12-no-sys-dirs.patch else ./no-sys-dirs.patch)] ++ ({ - "13" = [ ./13/no-sys-dirs-riscv.patch ]; - "12" = [ ./no-sys-dirs-riscv.patch ]; + "13" = [ ./13/no-sys-dirs-riscv.patch ./13/mangle-NIX_STORE-in-__FILE__.patch ]; + "12" = [ ./no-sys-dirs-riscv.patch ./12/mangle-NIX_STORE-in-__FILE__.patch ]; "11" = [ ./no-sys-dirs-riscv.patch ]; "10" = [ ./no-sys-dirs-riscv.patch ]; "9" = [ ./no-sys-dirs-riscv-gcc9.patch ]; diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.0.2.nix b/nixpkgs/pkgs/development/compilers/ghc/9.0.2.nix index f5f0c9317147..6be098972ee4 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.0.2.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.0.2.nix @@ -194,6 +194,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch # fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482 (fetchpatch { url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch"; diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.2.4.nix b/nixpkgs/pkgs/development/compilers/ghc/9.2.4.nix index 6aa87a152015..3ed263a43325 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.2.4.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.2.4.nix @@ -194,6 +194,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch # fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482 (fetchpatch { url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch"; diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.2.5.nix b/nixpkgs/pkgs/development/compilers/ghc/9.2.5.nix index c5aa5897761e..6246630f5495 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.2.5.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.2.5.nix @@ -194,6 +194,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch # fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482 (fetchpatch { url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch"; diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.2.6.nix b/nixpkgs/pkgs/development/compilers/ghc/9.2.6.nix index 651ff1e7d44b..124303c0c81a 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.2.6.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.2.6.nix @@ -194,6 +194,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch # fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482 (fetchpatch { url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch"; diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.2.7.nix b/nixpkgs/pkgs/development/compilers/ghc/9.2.7.nix index 74c0088473b8..a627f74179bb 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.2.7.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.2.7.nix @@ -194,6 +194,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch # fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482 (fetchpatch { url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch"; diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.2.8.nix b/nixpkgs/pkgs/development/compilers/ghc/9.2.8.nix index 973e62f95539..a0451f57c6ec 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.2.8.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.2.8.nix @@ -194,6 +194,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch # fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482 (fetchpatch { url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch"; diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.4.2.nix b/nixpkgs/pkgs/development/compilers/ghc/9.4.2.nix index 3c51fb981afd..7b921ecc441f 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.4.2.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.4.2.nix @@ -205,6 +205,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [ # Prevent the paths module from emitting symbols that we don't use # when building with separate outputs. diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.4.3.nix b/nixpkgs/pkgs/development/compilers/ghc/9.4.3.nix index 87ce19f66054..2bddbea7bc7d 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.4.3.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.4.3.nix @@ -205,6 +205,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [ # Prevent the paths module from emitting symbols that we don't use # when building with separate outputs. diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.4.4.nix b/nixpkgs/pkgs/development/compilers/ghc/9.4.4.nix index fa184a6fe171..e7465a950042 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.4.4.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.4.4.nix @@ -205,6 +205,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [ # Prevent the paths module from emitting symbols that we don't use # when building with separate outputs. diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.4.5.nix b/nixpkgs/pkgs/development/compilers/ghc/9.4.5.nix index 91032cb03d6e..9442f2bf19b4 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.4.5.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.4.5.nix @@ -205,6 +205,7 @@ stdenv.mkDerivation (rec { url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch"; sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv"; }) + ./docs-sphinx-7.patch ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [ # Prevent the paths module from emitting symbols that we don't use # when building with separate outputs. diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.4.6.nix b/nixpkgs/pkgs/development/compilers/ghc/9.4.6.nix index 3b0bef212a06..b64b3ba5ec6c 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.4.6.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.4.6.nix @@ -197,6 +197,7 @@ stdenv.mkDerivation (rec { extraPrefix = "libraries/Cabal/"; sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY="; }) + ./docs-sphinx-7.patch # Work around a type not being defined when including Rts.h in bytestring's cbits # due to missing feature macros. See https://gitlab.haskell.org/ghc/ghc/-/issues/23810. diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.4.7.nix b/nixpkgs/pkgs/development/compilers/ghc/9.4.7.nix index 48cec53e3b18..7ee135a13b44 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/9.4.7.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/9.4.7.nix @@ -197,6 +197,7 @@ stdenv.mkDerivation (rec { extraPrefix = "libraries/Cabal/"; sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY="; }) + ./docs-sphinx-7.patch ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [ # Prevent the paths module from emitting symbols that we don't use # when building with separate outputs. diff --git a/nixpkgs/pkgs/development/compilers/ghc/common-hadrian.nix b/nixpkgs/pkgs/development/compilers/ghc/common-hadrian.nix index d2d6dade497e..5687555d5d95 100644 --- a/nixpkgs/pkgs/development/compilers/ghc/common-hadrian.nix +++ b/nixpkgs/pkgs/development/compilers/ghc/common-hadrian.nix @@ -266,6 +266,11 @@ stdenv.mkDerivation ({ enableParallelBuilding = true; + patches = [ + (if lib.versionAtLeast version "9.8" + then ./docs-sphinx-7-ghc98.patch + else ./docs-sphinx-7.patch ) + ]; postPatch = '' patchShebangs --build . ''; diff --git a/nixpkgs/pkgs/development/compilers/ghc/docs-sphinx-7-ghc98.patch b/nixpkgs/pkgs/development/compilers/ghc/docs-sphinx-7-ghc98.patch new file mode 100644 index 000000000000..3fc1a0f21561 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/ghc/docs-sphinx-7-ghc98.patch @@ -0,0 +1,8 @@ +Fix build of docs after sphinx update. +https://github.com/sphinx-doc/sphinx/pull/11381 +https://gitlab.haskell.org/ghc/ghc/-/issues/24129 +--- a/docs/users_guide/rtd-theme/layout.html ++++ b/docs/users_guide/rtd-theme/layout.html +@@ -28 +28 @@ +- <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" /> ++ <link rel="stylesheet" href="{{ pathto('_static/' + styles[-1], 1) }}" type="text/css" /> diff --git a/nixpkgs/pkgs/development/compilers/ghc/docs-sphinx-7.patch b/nixpkgs/pkgs/development/compilers/ghc/docs-sphinx-7.patch new file mode 100644 index 000000000000..49fa45d1b9a2 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/ghc/docs-sphinx-7.patch @@ -0,0 +1,8 @@ +Fix build of docs after sphinx update. +https://github.com/sphinx-doc/sphinx/pull/11381 +https://gitlab.haskell.org/ghc/ghc/-/issues/24129 +--- a/docs/users_guide/rtd-theme/layout.html ++++ b/docs/users_guide/rtd-theme/layout.html +@@ -67 +67 @@ +- <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" /> ++ <link rel="stylesheet" href="{{ pathto('_static/' + styles[-1], 1) }}" type="text/css" /> diff --git a/nixpkgs/pkgs/development/compilers/glslang/default.nix b/nixpkgs/pkgs/development/compilers/glslang/default.nix index 9753a1077a63..ff55201ebd03 100644 --- a/nixpkgs/pkgs/development/compilers/glslang/default.nix +++ b/nixpkgs/pkgs/development/compilers/glslang/default.nix @@ -9,13 +9,13 @@ }: stdenv.mkDerivation rec { pname = "glslang"; - version = "12.3.1"; + version = "13.1.1"; src = fetchFromGitHub { owner = "KhronosGroup"; repo = "glslang"; rev = version; - hash = "sha256-NP5ph598YSPbpzJJUR2r+EkqFmuItxgvOSDgDaN+Swg="; + hash = "sha256-fuzNsVYdnThMzd4tLN/sTbCBXg6qXKLDJRziOKyOBGg="; }; # These get set at all-packages, keep onto them for child drvs diff --git a/nixpkgs/pkgs/development/compilers/go/1.21.nix b/nixpkgs/pkgs/development/compilers/go/1.21.nix index 7806cf074438..c12af4db34c5 100644 --- a/nixpkgs/pkgs/development/compilers/go/1.21.nix +++ b/nixpkgs/pkgs/development/compilers/go/1.21.nix @@ -46,11 +46,11 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "go"; - version = "1.21.3"; + version = "1.21.4"; src = fetchurl { url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz"; - hash = "sha256-GG8rb4yLcE5paCGwmrIEGlwe4T3LwxVqE63PdZMe5Ig="; + hash = "sha256-R7Jqg9K2WjwcG8rOJztpvuSaentRaKdgTe09JqN714c="; }; strictDeps = true; diff --git a/nixpkgs/pkgs/development/compilers/ios-cross-compile/9.2_builder.sh b/nixpkgs/pkgs/development/compilers/ios-cross-compile/9.2_builder.sh index 47459664af0a..4eef8acb0693 100644 --- a/nixpkgs/pkgs/development/compilers/ios-cross-compile/9.2_builder.sh +++ b/nixpkgs/pkgs/development/compilers/ios-cross-compile/9.2_builder.sh @@ -1,5 +1,5 @@ # -*- shell-script -*- -if [ -e .attrs.sh ]; then source .attrs.sh; fi +if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi source $stdenv/setup function extract diff --git a/nixpkgs/pkgs/development/compilers/julia/1.9-bin.nix b/nixpkgs/pkgs/development/compilers/julia/1.9-bin.nix index 85c0d7043efd..04e768d0bff8 100644 --- a/nixpkgs/pkgs/development/compilers/julia/1.9-bin.nix +++ b/nixpkgs/pkgs/development/compilers/julia/1.9-bin.nix @@ -24,24 +24,24 @@ let in stdenv.mkDerivation rec { pname = "julia-bin"; - version = "1.9.3"; + version = "1.9.4"; src = { x86_64-linux = fetchurl { url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz"; - sha256 = "d76670cc9ba3e0fd4c1545dd3d00269c0694976a1176312795ebce1692d323d1"; + sha256 = "07d20c4c2518833e2265ca0acee15b355463361aa4efdab858dad826cf94325c"; }; aarch64-linux = fetchurl { url = "https://julialang-s3.julialang.org/bin/linux/aarch64/${lib.versions.majorMinor version}/julia-${version}-linux-aarch64.tar.gz"; - sha256 = "55437879f6b98470d96c4048b922501b643dfffb8865abeb90c7333a83df7524"; + sha256 = "541d0c5a9378f8d2fc384bb8595fc6ffe20d61054629a6e314fb2f8dfe2f2ade"; }; x86_64-darwin = fetchurl { url = "https://julialang-s3.julialang.org/bin/mac/x64/${lib.versions.majorMinor version}/julia-${version}-mac64.tar.gz"; - sha256 = "6eea87748424488226090d1e7d553e72ab106a873d63c732fc710a3d080abb97"; + sha256 = "67eec264f6afc9e9bf72c0f62c84d91c2ebdfaed6a0aa11606e3c983d278b441"; }; aarch64-darwin = fetchurl { url = "https://julialang-s3.julialang.org/bin/mac/aarch64/${lib.versions.majorMinor version}/julia-${version}-macaarch64.tar.gz"; - sha256 = "f518e38d7bd5b37766fb051916bd295993aa4b52a47018f4c98b5fde721ced87"; + sha256 = "67542975e86102eec95bc4bb7c30c5d8c7ea9f9a0b388f0e10f546945363b01a"; }; }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); diff --git a/nixpkgs/pkgs/development/compilers/julia/1.9.nix b/nixpkgs/pkgs/development/compilers/julia/1.9.nix index 002cca08aac5..715414e7dab9 100644 --- a/nixpkgs/pkgs/development/compilers/julia/1.9.nix +++ b/nixpkgs/pkgs/development/compilers/julia/1.9.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation rec { pname = "julia"; - version = "1.9.3"; + version = "1.9.4"; src = fetchurl { url = "https://github.com/JuliaLang/julia/releases/download/v${version}/julia-${version}-full.tar.gz"; - hash = "sha256-j8DJ3FRDoo01m9ed2jlA+pS6K3lmuJhlvrINqBEjwxY="; + hash = "sha256-YYQ7lkf9BtOymU8yd6ZN4ctaWlKX2TC4yOO8DpN0ACQ="; }; patches = [ diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix index c4e6f2827e82..c09ec676e9ea 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/10/llvm/default.nix @@ -133,7 +133,17 @@ in stdenv.mkDerivation (rec { hash = "sha256-CXwYxQezTq5vdmc8Yn88BUAEly6YZ5VEIA6X3y5NNOs="; stripLen = 1; }) - ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch; + ] ++ lib.optionals enablePolly [ + ./gnu-install-dirs-polly.patch + # Add missing isl header includess required to build LLVM 10 + Polly with clang 16. + (fetchpatch { + name = "polly-ppcg-isl-headers.patch"; + url = "https://repo.or.cz/ppcg.git/patch/098ba285306114dc71497f7b51c357f69c9b4472"; + hash = "sha256-c9L30rDROYAMbUSuaK9U/ixyFMlH/Sa1n+VgLODzSCQ="; + extraPrefix = "tools/polly/lib/External/ppcg/"; + stripLen = 1; + }) + ]; postPatch = optionalString stdenv.isDarwin '' substituteInPlace cmake/modules/AddLLVM.cmake \ diff --git a/nixpkgs/pkgs/development/compilers/llvm/15/default.nix b/nixpkgs/pkgs/development/compilers/llvm/15/default.nix index 863d31874ec8..6a3b8cbabab7 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/15/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/15/default.nix @@ -266,11 +266,13 @@ in let targetLlvmLibraries.compiler-rt ]; extraBuildCommands = mkExtraBuildCommands cc; - nixSupport.cc-cflags = [ - "-rtlib=compiler-rt" - "-B${targetLlvmLibraries.compiler-rt}/lib" - "-nostdlib++" - ]; + nixSupport.cc-cflags = + [ + "-rtlib=compiler-rt" + "-B${targetLlvmLibraries.compiler-rt}/lib" + "-nostdlib++" + ] + ++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions"; }; clangNoLibc = wrapCCWith rec { @@ -281,10 +283,12 @@ in let targetLlvmLibraries.compiler-rt ]; extraBuildCommands = mkExtraBuildCommands cc; - nixSupport.cc-cflags = [ - "-rtlib=compiler-rt" - "-B${targetLlvmLibraries.compiler-rt}/lib" - ]; + nixSupport.cc-cflags = + [ + "-rtlib=compiler-rt" + "-B${targetLlvmLibraries.compiler-rt}/lib" + ] + ++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions"; }; clangNoCompilerRt = wrapCCWith rec { @@ -293,16 +297,22 @@ in let bintools = bintoolsNoLibc'; extraPackages = [ ]; extraBuildCommands = mkExtraBuildCommands0 cc; - nixSupport.cc-cflags = [ "-nostartfiles" ]; + nixSupport.cc-cflags = + [ + "-nostartfiles" + ] + ++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions"; }; - clangNoCompilerRtWithLibc = wrapCCWith rec { + clangNoCompilerRtWithLibc = wrapCCWith (rec { cc = tools.clang-unwrapped; libcxx = null; bintools = bintools'; extraPackages = [ ]; extraBuildCommands = mkExtraBuildCommands0 cc; - }; + } // lib.optionalAttrs stdenv.targetPlatform.isWasm { + nixSupport.cc-cflags = [ "-fno-exceptions" ]; + }); }); diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/16/compiler-rt/default.nix index fc0d7533c994..9b6ab0a77c2a 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/16/compiler-rt/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/16/compiler-rt/default.nix @@ -119,9 +119,9 @@ stdenv.mkDerivation { ''; # Hack around weird upsream RPATH bug - postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' + postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin) '' ln -s "$out/lib"/*/* "$out/lib" - '' + lib.optionalString (useLLVM) '' + '' + lib.optionalString (useLLVM && stdenv.hostPlatform.isLinux) '' ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbegin.o ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtend.o # Note the history of crt{begin,end}S in previous versions of llvm in nixpkg: diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/default.nix b/nixpkgs/pkgs/development/compilers/llvm/16/default.nix index 24dd31ea9fef..541db8c400de 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/16/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/16/default.nix @@ -271,11 +271,13 @@ in let targetLlvmLibraries.compiler-rt ]; extraBuildCommands = mkExtraBuildCommands cc; - nixSupport.cc-cflags = [ - "-rtlib=compiler-rt" - "-B${targetLlvmLibraries.compiler-rt}/lib" - "-nostdlib++" - ]; + nixSupport.cc-cflags = + [ + "-rtlib=compiler-rt" + "-B${targetLlvmLibraries.compiler-rt}/lib" + "-nostdlib++" + ] + ++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions"; }; clangNoLibc = wrapCCWith rec { @@ -286,10 +288,12 @@ in let targetLlvmLibraries.compiler-rt ]; extraBuildCommands = mkExtraBuildCommands cc; - nixSupport.cc-cflags = [ - "-rtlib=compiler-rt" - "-B${targetLlvmLibraries.compiler-rt}/lib" - ]; + nixSupport.cc-cflags = + [ + "-rtlib=compiler-rt" + "-B${targetLlvmLibraries.compiler-rt}/lib" + ] + ++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions"; }; clangNoCompilerRt = wrapCCWith rec { @@ -298,17 +302,29 @@ in let bintools = bintoolsNoLibc'; extraPackages = [ ]; extraBuildCommands = mkExtraBuildCommands0 cc; - nixSupport.cc-cflags = [ "-nostartfiles" ]; + nixSupport.cc-cflags = + [ + "-nostartfiles" + ] + ++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions"; }; - clangNoCompilerRtWithLibc = wrapCCWith rec { + clangNoCompilerRtWithLibc = wrapCCWith (rec { cc = tools.clang-unwrapped; libcxx = null; bintools = bintools'; extraPackages = [ ]; extraBuildCommands = mkExtraBuildCommands0 cc; - }; + } // lib.optionalAttrs stdenv.targetPlatform.isWasm { + nixSupport.cc-cflags = [ "-fno-exceptions" ]; + }); + # Has to be in tools despite mostly being a library, + # because we use a native helper executable from a + # non-cross build in cross builds. + libclc = callPackage ./libclc { + inherit buildLlvmTools; + }; }); libraries = lib.makeExtensible (libraries: let diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/libclc/default.nix b/nixpkgs/pkgs/development/compilers/llvm/16/libclc/default.nix new file mode 100644 index 000000000000..6fa0751f906b --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/16/libclc/default.nix @@ -0,0 +1,54 @@ +{ lib, stdenv, version, runCommand, monorepoSrc, llvm, buildPackages, buildLlvmTools, ninja, cmake, python3 }: + +stdenv.mkDerivation rec { + pname = "libclc"; + inherit version; + + src = runCommand "${pname}-src-${version}" {} '' + mkdir -p "$out" + cp -r ${monorepoSrc}/cmake "$out" + cp -r ${monorepoSrc}/${pname} "$out" + ''; + + sourceRoot = "${src.name}/${pname}"; + + outputs = [ "out" "dev" ]; + + patches = [ + ./libclc-gnu-install-dirs.patch + ]; + + # cmake expects all required binaries to be in the same place, so it will not be able to find clang without the patch + postPatch = '' + substituteInPlace CMakeLists.txt \ + --replace 'find_program( LLVM_CLANG clang PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \ + 'find_program( LLVM_CLANG clang PATHS "${buildLlvmTools.clang.cc}/bin" NO_DEFAULT_PATH )' \ + --replace 'find_program( LLVM_AS llvm-as PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \ + 'find_program( LLVM_AS llvm-as PATHS "${buildLlvmTools.llvm}/bin" NO_DEFAULT_PATH )' \ + --replace 'find_program( LLVM_LINK llvm-link PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \ + 'find_program( LLVM_LINK llvm-link PATHS "${buildLlvmTools.llvm}/bin" NO_DEFAULT_PATH )' \ + --replace 'find_program( LLVM_OPT opt PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \ + 'find_program( LLVM_OPT opt PATHS "${buildLlvmTools.llvm}/bin" NO_DEFAULT_PATH )' \ + --replace 'find_program( LLVM_SPIRV llvm-spirv PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \ + 'find_program( LLVM_SPIRV llvm-spirv PATHS "${buildPackages.spirv-llvm-translator}/bin" NO_DEFAULT_PATH )' + '' + lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' + substituteInPlace CMakeLists.txt \ + --replace 'COMMAND prepare_builtins' 'COMMAND ${buildPackages.libclc.dev}/bin/prepare_builtins' + ''; + + nativeBuildInputs = [ cmake ninja python3 ]; + buildInputs = [ llvm ]; + strictDeps = true; + + postInstall = '' + install -Dt $dev/bin prepare_builtins + ''; + + meta = with lib; { + broken = stdenv.isDarwin; + homepage = "http://libclc.llvm.org/"; + description = "Implementation of the library requirements of the OpenCL C programming language"; + license = licenses.mit; + platforms = platforms.all; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/libclc/libclc-gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/16/libclc/libclc-gnu-install-dirs.patch new file mode 100644 index 000000000000..1e5108a27c38 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/16/libclc/libclc-gnu-install-dirs.patch @@ -0,0 +1,10 @@ +--- a/libclc.pc.in ++++ b/libclc.pc.in +@@ -1,5 +1,5 @@ +-includedir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@ +-libexecdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_DATADIR@/clc ++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ ++libexecdir=@CMAKE_INSTALL_FULL_DATADIR@/clc + + Name: libclc + Description: Library requirements of the OpenCL C programming language diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/libcxx/default.nix b/nixpkgs/pkgs/development/compilers/llvm/16/libcxx/default.nix index c387764b4f65..78cd632024cd 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/16/libcxx/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/16/libcxx/default.nix @@ -62,7 +62,7 @@ stdenv.mkDerivation rec { buildInputs = lib.optionals (!headersOnly) [ cxxabi ] - ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [ libunwind ]; + ++ lib.optionals (stdenv.hostPlatform.useLLVM or false && !stdenv.hostPlatform.isWasm) [ libunwind ]; cmakeFlags = let # See: https://libcxx.llvm.org/BuildingLibcxx.html#cmdoption-arg-libcxx-cxx-abi-string @@ -87,6 +87,7 @@ stdenv.mkDerivation rec { "-DLIBCXX_ENABLE_THREADS=OFF" "-DLIBCXX_ENABLE_FILESYSTEM=OFF" "-DLIBCXX_ENABLE_EXCEPTIONS=OFF" + "-DUNIX=ON" # Required otherwise libc++ fails to detect the correct linker ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF" # If we're only building the headers we don't actually *need* a functioning # C/C++ compiler: diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/libcxxabi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/16/libcxxabi/default.nix index 04bfee14aa18..90c57dc52a2d 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/16/libcxxabi/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/16/libcxxabi/default.nix @@ -28,8 +28,6 @@ stdenv.mkDerivation rec { postUnpack = lib.optionalString stdenv.isDarwin '' export TRIPLE=x86_64-apple-darwin - '' + lib.optionalString stdenv.hostPlatform.isWasm '' - patch -p1 -d llvm -i ${../../common/libcxxabi/wasm.patch} ''; prePatch = '' @@ -65,7 +63,7 @@ stdenv.mkDerivation rec { # CMake however checks for this anyways; this flag tells it not to. See: # https://github.com/llvm/llvm-project/blob/4bd3f3759259548e159aeba5c76efb9a0864e6fa/llvm/runtimes/CMakeLists.txt#L243 "-DCMAKE_CXX_COMPILER_WORKS=ON" - ] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [ + ] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false && !stdenv.hostPlatform.isWasm) [ "-DLLVM_ENABLE_LIBCXX=ON" "-DLIBCXXABI_USE_LLVM_UNWINDER=ON" # libcxxabi's CMake looks as though it treats -nostdlib++ as implying -nostdlib, @@ -74,8 +72,11 @@ stdenv.mkDerivation rec { "-DCMAKE_EXE_LINKER_FLAGS=-nostdlib" "-DCMAKE_SHARED_LINKER_FLAGS=-nostdlib" ] ++ lib.optionals stdenv.hostPlatform.isWasm [ + "-DCMAKE_C_COMPILER_WORKS=ON" + "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DLIBCXXABI_ENABLE_THREADS=OFF" "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF" + "-DUNIX=ON" # Required otherwise libc++ fails to detect the correct linker ] ++ lib.optionals (!enableShared) [ "-DLIBCXXABI_ENABLE_SHARED=OFF" ]; diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/lld/add-table-base.patch b/nixpkgs/pkgs/development/compilers/llvm/16/lld/add-table-base.patch new file mode 100644 index 000000000000..15fc903a5e3f --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/llvm/16/lld/add-table-base.patch @@ -0,0 +1,190 @@ +From 93adcb770b99351b18553089c164fe3ef2119699 Mon Sep 17 00:00:00 2001 +From: Sam Clegg <sbc@chromium.org> +Date: Fri, 25 Aug 2023 13:56:16 -0700 +Subject: [PATCH] [lld][WebAssembly] Add `--table-base` setting + +This is similar to `--global-base` but determines where to place the +table segments rather than that data segments. + +See https://github.com/emscripten-core/emscripten/issues/20097 + +Differential Revision: https://reviews.llvm.org/D158892 +--- + test/wasm/table-base.s | 72 ++++++++++++++++++++++++++++++++++++++ + wasm/Driver.cpp | 19 ++++++++-- + wasm/Options.td | 5 ++- + wasm/Writer.cpp | 8 ----- + 4 files changed, 93 insertions(+), 11 deletions(-) + create mode 100644 test/wasm/table-base.s + +diff --git a/test/wasm/table-base.s b/test/wasm/table-base.s +new file mode 100644 +index 000000000000000..56fff414fd31d96 +--- /dev/null ++++ b/test/wasm/table-base.s +@@ -0,0 +1,72 @@ ++# RUN: llvm-mc -filetype=obj -triple=wasm32-unknown-unknown %s -o %t.o ++ ++# RUN: wasm-ld --export=__table_base -o %t.wasm %t.o ++# RUN: obj2yaml %t.wasm | FileCheck %s -check-prefix=CHECK-DEFAULT ++ ++# RUN: wasm-ld --table-base=100 --export=__table_base -o %t.wasm %t.o ++# RUN: obj2yaml %t.wasm | FileCheck %s -check-prefix=CHECK-100 ++ ++.globl _start ++_start: ++ .functype _start () -> () ++ i32.const _start ++ drop ++ end_function ++ ++# CHECK-DEFAULT: - Type: TABLE ++# CHECK-DEFAULT-NEXT: Tables: ++# CHECK-DEFAULT-NEXT: - Index: 0 ++# CHECK-DEFAULT-NEXT: ElemType: FUNCREF ++# CHECK-DEFAULT-NEXT: Limits: ++# CHECK-DEFAULT-NEXT: Flags: [ HAS_MAX ] ++# CHECK-DEFAULT-NEXT: Minimum: 0x2 ++# CHECK-DEFAULT-NEXT: Maximum: 0x2 ++ ++# CHECK-DEFAULT: - Type: GLOBAL ++# CHECK-DEFAULT-NEXT: Globals: ++# CHECK-DEFAULT-NEXT: - Index: 0 ++# CHECK-DEFAULT-NEXT: Type: I32 ++# CHECK-DEFAULT-NEXT: Mutable: true ++# CHECK-DEFAULT-NEXT: InitExpr: ++# CHECK-DEFAULT-NEXT: Opcode: I32_CONST ++# CHECK-DEFAULT-NEXT: Value: 66560 ++# CHECK-DEFAULT-NEXT: - Index: 1 ++# CHECK-DEFAULT-NEXT: Type: I32 ++# CHECK-DEFAULT-NEXT: Mutable: false ++# CHECK-DEFAULT-NEXT: InitExpr: ++# CHECK-DEFAULT-NEXT: Opcode: I32_CONST ++# CHECK-DEFAULT-NEXT: Value: 1 ++ ++# CHECK-DEFAULT: - Type: EXPORT ++# CHECK-DEFAULT: - Name: __table_base ++# CHECK-DEFAULT-NEXT: Kind: GLOBAL ++# CHECK-DEFAULT-NEXT: Index: 1 ++ ++# CHECK-100: - Type: TABLE ++# CHECK-100-NEXT: Tables: ++# CHECK-100-NEXT: - Index: 0 ++# CHECK-100-NEXT: ElemType: FUNCREF ++# CHECK-100-NEXT: Limits: ++# CHECK-100-NEXT: Flags: [ HAS_MAX ] ++# CHECK-100-NEXT: Minimum: 0x65 ++# CHECK-100-NEXT: Maximum: 0x65 ++ ++# CHECK-100: - Type: GLOBAL ++# CHECK-100-NEXT: Globals: ++# CHECK-100-NEXT: - Index: 0 ++# CHECK-100-NEXT: Type: I32 ++# CHECK-100-NEXT: Mutable: true ++# CHECK-100-NEXT: InitExpr: ++# CHECK-100-NEXT: Opcode: I32_CONST ++# CHECK-100-NEXT: Value: 66560 ++# CHECK-100-NEXT: - Index: 1 ++# CHECK-100-NEXT: Type: I32 ++# CHECK-100-NEXT: Mutable: false ++# CHECK-100-NEXT: InitExpr: ++# CHECK-100-NEXT: Opcode: I32_CONST ++# CHECK-100-NEXT: Value: 100 ++ ++# CHECK-100: - Type: EXPORT ++# CHECK-100: - Name: __table_base ++# CHECK-100-NEXT: Kind: GLOBAL ++# CHECK-100-NEXT: Index: 1 +diff --git a/wasm/Driver.cpp b/wasm/Driver.cpp +index 84304881f5ca34e..c2f5f0185781f36 100644 +--- a/wasm/Driver.cpp ++++ b/wasm/Driver.cpp +@@ -502,6 +502,7 @@ static void readConfigs(opt::InputArgList &args) { + + config->initialMemory = args::getInteger(args, OPT_initial_memory, 0); + config->globalBase = args::getInteger(args, OPT_global_base, 0); ++ config->tableBase = args::getInteger(args, OPT_table_base, 0); + config->maxMemory = args::getInteger(args, OPT_max_memory, 0); + config->zStackSize = + args::getZOptionValue(args, OPT_z, "stack-size", WasmPageSize); +@@ -573,6 +574,17 @@ static void setConfigs() { + if (config->exportTable) + error("-shared/-pie is incompatible with --export-table"); + config->importTable = true; ++ } else { ++ // Default table base. Defaults to 1, reserving 0 for the NULL function ++ // pointer. ++ if (!config->tableBase) ++ config->tableBase = 1; ++ // The default offset for static/global data, for when --global-base is ++ // not specified on the command line. The precise value of 1024 is ++ // somewhat arbitrary, and pre-dates wasm-ld (Its the value that ++ // emscripten used prior to wasm-ld). ++ if (!config->globalBase && !config->relocatable && !config->stackFirst) ++ config->globalBase = 1024; + } + + if (config->relocatable) { +@@ -666,8 +678,11 @@ static void checkOptions(opt::InputArgList &args) { + warn("-Bsymbolic is only meaningful when combined with -shared"); + } + +- if (config->globalBase && config->isPic) { +- error("--global-base may not be used with -shared/-pie"); ++ if (config->isPic) { ++ if (config->globalBase) ++ error("--global-base may not be used with -shared/-pie"); ++ if (config->tableBase) ++ error("--table-base may not be used with -shared/-pie"); + } + } + +diff --git a/wasm/Options.td b/wasm/Options.td +index 50417d2928e0a34..bb764396bf4df14 100644 +--- a/wasm/Options.td ++++ b/wasm/Options.td +@@ -191,7 +191,7 @@ def growable_table: FF<"growable-table">, + HelpText<"Remove maximum size from function table, allowing table to grow">; + + def global_base: JJ<"global-base=">, +- HelpText<"Where to start to place global data">; ++ HelpText<"Memory offset at which to place global data (Defaults to 1024)">; + + def import_memory: FF<"import-memory">, + HelpText<"Import the module's memory from the default module of \"env\" with the name \"memory\".">; +@@ -224,6 +224,9 @@ def no_entry: FF<"no-entry">, + def stack_first: FF<"stack-first">, + HelpText<"Place stack at start of linear memory rather than after data">; + ++def table_base: JJ<"table-base=">, ++ HelpText<"Table offset at which to place address taken functions (Defaults to 1)">; ++ + defm whole_archive: B<"whole-archive", + "Force load of all members in a static library", + "Do not force load of all members in a static library (default)">; +diff --git a/wasm/Writer.cpp b/wasm/Writer.cpp +index f25d358dc5bae6f..0576bf2907e49c4 100644 +--- a/wasm/Writer.cpp ++++ b/wasm/Writer.cpp +@@ -358,13 +358,6 @@ void Writer::layoutMemory() { + memoryPtr = config->globalBase; + } + } else { +- if (!config->globalBase && !config->relocatable && !config->isPic) { +- // The default offset for static/global data, for when --global-base is +- // not specified on the command line. The precise value of 1024 is +- // somewhat arbitrary, and pre-dates wasm-ld (Its the value that +- // emscripten used prior to wasm-ld). +- config->globalBase = 1024; +- } + memoryPtr = config->globalBase; + } + +@@ -1685,7 +1678,6 @@ void Writer::run() { + // For PIC code the table base is assigned dynamically by the loader. + // For non-PIC, we start at 1 so that accessing table index 0 always traps. + if (!config->isPic) { +- config->tableBase = 1; + if (WasmSym::definedTableBase) + WasmSym::definedTableBase->setVA(config->tableBase); + if (WasmSym::definedTableBase32) diff --git a/nixpkgs/pkgs/development/compilers/llvm/16/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/16/lld/default.nix index cc18aee76a44..84943e8effce 100644 --- a/nixpkgs/pkgs/development/compilers/llvm/16/lld/default.nix +++ b/nixpkgs/pkgs/development/compilers/llvm/16/lld/default.nix @@ -26,6 +26,7 @@ stdenv.mkDerivation rec { patches = [ ./gnu-install-dirs.patch + ./add-table-base.patch ]; nativeBuildInputs = [ cmake ninja ]; diff --git a/nixpkgs/pkgs/development/compilers/lunarml/default.nix b/nixpkgs/pkgs/development/compilers/lunarml/default.nix index 35ebea77782f..1fa448fe9d8e 100644 --- a/nixpkgs/pkgs/development/compilers/lunarml/default.nix +++ b/nixpkgs/pkgs/development/compilers/lunarml/default.nix @@ -6,7 +6,7 @@ }: let - version = "0.0.20230924"; + version = "0.0.20231113"; in stdenvNoCC.mkDerivation { inherit version; @@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation { owner = "minoki"; repo = "LunarML"; rev = "refs/tags/v${version}"; - sha256 = "QN5iJEpJJZZuUfY/z57bpOQHDU31ecmJPWQtkXsLmDg="; + hash = "sha256-LmS+pkdCraY8sor+lsq/vCODFyVneKkZqjZqbJ1trb4="; }; outputs = [ "out" "doc" ]; diff --git a/nixpkgs/pkgs/development/compilers/mcpp/default.nix b/nixpkgs/pkgs/development/compilers/mcpp/default.nix index 0f556f85daa3..e8eb62a15f13 100644 --- a/nixpkgs/pkgs/development/compilers/mcpp/default.nix +++ b/nixpkgs/pkgs/development/compilers/mcpp/default.nix @@ -14,6 +14,10 @@ stdenv.mkDerivation (finalAttrs: { hash= "sha256-T4feegblOeG+NU+c+PAobf8HT8KDSfcINkRAa1hNpkY="; }; + patches = [ + ./readlink.patch + ]; + configureFlags = [ "--enable-mcpplib" ]; meta = with lib; { diff --git a/nixpkgs/pkgs/development/compilers/mcpp/readlink.patch b/nixpkgs/pkgs/development/compilers/mcpp/readlink.patch new file mode 100644 index 000000000000..0f5fc6d7e963 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/mcpp/readlink.patch @@ -0,0 +1,24 @@ +From 1c4b0f26614bff331eb8a9f2b514309af6f31fd0 Mon Sep 17 00:00:00 2001 +From: Jose <pepone@users.noreply.github.com> +Date: Mon, 26 Jun 2023 16:43:43 +0200 +Subject: [PATCH] Add 'unistd' header for readlink (#8) + +--- + src/system.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/system.c b/src/system.c +index a3501f9..646caf6 100644 +--- a/src/system.c ++++ b/src/system.c +@@ -37,6 +37,11 @@ + * 2. append the system-dependent routines in this file. + */ ++ ++#ifndef _MSC_VER ++# include <unistd.h> // For readlink() ++#endif ++ + #if PREPROCESSED + #include "mcpp.H" + #else diff --git a/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix b/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix index a8bf26bacdfd..0996702ec625 100644 --- a/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix +++ b/nixpkgs/pkgs/development/compilers/mrustc/bootstrap.nix @@ -2,7 +2,6 @@ , fetchurl , mrustc , mrustc-minicargo -, rust , llvm_12 , llvmPackages_12 , libffi @@ -74,7 +73,7 @@ stdenv.mkDerivation rec { "MRUSTC=${mrustc}/bin/mrustc" #"MINICARGO=${mrustc-minicargo}/bin/minicargo" # FIXME: we need to rebuild minicargo locally so --manifest-overrides is applied "LLVM_CONFIG=${llvm_12.dev}/bin/llvm-config" - "RUSTC_TARGET=${rust.toRustTarget stdenv.targetPlatform}" + "RUSTC_TARGET=${stdenv.targetPlatform.rust.rustcTarget}" ]; buildPhase = '' @@ -129,7 +128,7 @@ stdenv.mkDerivation rec { cp run_rustc/${outputDir}/prefix/bin/rustc_binary $out/bin/rustc cp -r run_rustc/${outputDir}/prefix/lib/* $out/lib/ - cp $out/lib/rustlib/${rust.toRustTarget stdenv.targetPlatform}/lib/*.so $out/lib/ + cp $out/lib/rustlib/${stdenv.targetPlatform.rust.rustcTarget}/lib/*.so $out/lib/ runHook postInstall ''; @@ -146,4 +145,3 @@ stdenv.mkDerivation rec { platforms = [ "x86_64-linux" ]; }; } - diff --git a/nixpkgs/pkgs/development/compilers/neko/default.nix b/nixpkgs/pkgs/development/compilers/neko/default.nix index 40e39d411d69..fff5762a38d7 100644 --- a/nixpkgs/pkgs/development/compilers/neko/default.nix +++ b/nixpkgs/pkgs/development/compilers/neko/default.nix @@ -29,6 +29,9 @@ stdenv.mkDerivation rec { ++ lib.optionals stdenv.isDarwin [ pkgs.darwin.apple_sdk.frameworks.Security pkgs.darwin.apple_sdk.frameworks.Carbon]; cmakeFlags = [ "-DRUN_LDCONFIG=OFF" ]; + env = lib.optionalAttrs stdenv.cc.isClang { + NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; + }; installCheckPhase = '' bin/neko bin/test.n diff --git a/nixpkgs/pkgs/development/compilers/ocaml/builder.sh b/nixpkgs/pkgs/development/compilers/ocaml/builder.sh index 88acc0654cf2..85b26848f4e4 100644 --- a/nixpkgs/pkgs/development/compilers/ocaml/builder.sh +++ b/nixpkgs/pkgs/development/compilers/ocaml/builder.sh @@ -1,4 +1,4 @@ -if [ -e .attrs.sh ]; then source .attrs.sh; fi +if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi source $stdenv/setup configureFlags="-prefix $out $configureFlags" diff --git a/nixpkgs/pkgs/development/compilers/rust/1_72.nix b/nixpkgs/pkgs/development/compilers/rust/1_73.nix index f540c229c6ff..37e75e0a7a4f 100644 --- a/nixpkgs/pkgs/development/compilers/rust/1_72.nix +++ b/nixpkgs/pkgs/development/compilers/rust/1_73.nix @@ -20,8 +20,8 @@ } @ args: import ./default.nix { - rustcVersion = "1.72.1"; - rustcSha256 = "sha256-f0iEX2pSzbtdY/sFKP1fUg60QydbVfmOMoFZ+GVo+JU="; + rustcVersion = "1.73.0"; + rustcSha256 = "sha256-ltYubR8tId96yKyzuYgkEfnnxwNhc/fy7enh8faxuzo="; llvmSharedForBuild = pkgsBuildBuild.llvmPackages_16.libllvm.override { enableSharedLibraries = true; }; llvmSharedForHost = pkgsBuildHost.llvmPackages_16.libllvm.override { enableSharedLibraries = true; }; @@ -35,25 +35,24 @@ import ./default.nix { # Note: the version MUST be one version prior to the version we're # building - bootstrapVersion = "1.71.1"; + bootstrapVersion = "1.72.1"; # fetch hashes by running `print-hashes.sh ${bootstrapVersion}` bootstrapHashes = { - i686-unknown-linux-gnu = "ea544e213cdf65194d9650df9d521dd2ed63251e2abe89c8123e336dfe580b21"; - x86_64-unknown-linux-gnu = "34778d1cda674990dfc0537bc600066046ae9cb5d65a07809f7e7da31d4689c4"; - x86_64-unknown-linux-musl = "67acc1744293e52f4b49231f3c503e8ad187c477e7b567e27925ec792d946a01"; - arm-unknown-linux-gnueabihf = "4c88b32849132504fce5b93bebf06dd0fa17988340c7fe97afa661e038dfa258"; - armv7-unknown-linux-gnueabihf = "8f8556dbd8b0350364c7dc8fda57549934bf3c26c65498dda5842087f5c90d60"; - aarch64-unknown-linux-gnu = "c7cf230c740a62ea1ca6a4304d955c286aea44e3c6fc960b986a8c2eeea4ec3f"; - aarch64-unknown-linux-musl = "da87f4ca2534886f1006b2e8abb0dda8db231ce82cc67b4857233ad48a21c87c"; - x86_64-apple-darwin = "916056603da88336aba68bbeab49711cc8fdb9cfb46a49b04850c0c09761f58c"; - aarch64-apple-darwin = "f4061b65b31ac75b9b5384c1f518e555f3da23f93bcf64dce252461ee65e9351"; - powerpc64le-unknown-linux-gnu = "bac57066882366e4628d1ed2bbe4ab19c0b373aaf45582c2da9f639f2f6ea537"; - riscv64gc-unknown-linux-gnu = "fcb67647b764669f3b4e61235fbdc0eca287229adf9aed8c41ce20ffaad4a3ea"; - mips64el-unknown-linux-gnuabi64 = "6523efea9cd48c0375bd621460d890c65457a5534fafb2d8b69a37ee1e2a39ed"; + i686-unknown-linux-gnu = "a2a849a701dfd6643aaaa27e1ed5ac56aea00f7dee26c00d81c520808efd8911"; + x86_64-unknown-linux-gnu = "4fbd8df2000cf73c632d67a219a7fc153537ceffa2e6474491e3db71fdd5a410"; + x86_64-unknown-linux-musl = "94eddc044868a944a887d0b0375e393cb3acc6ebc034e3eac2ef2890ec7c0eac"; + arm-unknown-linux-gnueabihf = "a4d90538882181722d3e7cb8d7f021770e29e6b6d28375452e31a98049600110"; + armv7-unknown-linux-gnueabihf = "4c8e6b3c705a84d17894d3a1cfe744fb6083dd57c61868e67aac8b8512640ecb"; + aarch64-unknown-linux-gnu = "190d0473cbe619f163d33a6c4e2ef982abdd4178f73abc3194631cd2d5c8ed8b"; + aarch64-unknown-linux-musl = "c83778d1a95f6604bc3610a9070e8a8435c60a8bca5117aad71ffab36dea020f"; + x86_64-apple-darwin = "d01e7e9a7482f88a51b4fd888f06234274b49f51b5476c2d14fd46fd6e99ba9e"; + aarch64-apple-darwin = "42b0aaf269b6d9c60db13a64a920336d6064ab11d0c7043c9deeb9d4f67b3983"; + powerpc64le-unknown-linux-gnu = "9310df247efc072f2ca27354a875c4989cf3c29c9e545255a7472895d830163c"; + riscv64gc-unknown-linux-gnu = "1e08cd3ecd29d5bf247e3f7f4bc97318b439f0443dd9c99c36edcfa717d55101"; }; - selectRustPackage = pkgs: pkgs.rust_1_72; + selectRustPackage = pkgs: pkgs.rust_1_73; rustcPatches = [ ]; } diff --git a/nixpkgs/pkgs/development/compilers/rust/bootstrap.nix b/nixpkgs/pkgs/development/compilers/rust/bootstrap.nix index 7c0b46d55931..97ac69270252 100644 --- a/nixpkgs/pkgs/development/compilers/rust/bootstrap.nix +++ b/nixpkgs/pkgs/development/compilers/rust/bootstrap.nix @@ -1,7 +1,7 @@ -{ stdenv, fetchurl, rust, callPackage, version, hashes }: +{ stdenv, fetchurl, callPackage, version, hashes }: let - platform = rust.toRustTarget stdenv.hostPlatform; + platform = stdenv.hostPlatform.rust.rustcTarget; src = fetchurl { url = "https://static.rust-lang.org/dist/rust-${version}-${platform}.tar.gz"; diff --git a/nixpkgs/pkgs/development/compilers/rust/cargo.nix b/nixpkgs/pkgs/development/compilers/rust/cargo.nix index 46e238ff4797..8eb628aa536b 100644 --- a/nixpkgs/pkgs/development/compilers/rust/cargo.nix +++ b/nixpkgs/pkgs/development/compilers/rust/cargo.nix @@ -1,6 +1,6 @@ { lib, stdenv, pkgsBuildHost, pkgsHostHost , file, curl, pkg-config, python3, openssl, cmake, zlib -, installShellFiles, makeWrapper, rustPlatform, rust, rustc +, installShellFiles, makeWrapper, rustPlatform, rustc , CoreFoundation, Security , auditable ? !cargo-auditable.meta.broken , cargo-auditable @@ -116,6 +116,6 @@ rustPlatform.buildRustPackage.override { broken = stdenv.hostPlatform.isx86 && stdenv.buildPlatform != stdenv.hostPlatform; }; } -// lib.optionalAttrs (rust.toRustTarget stdenv.buildPlatform != rust.toRustTarget stdenv.hostPlatform) { +// lib.optionalAttrs (stdenv.buildPlatform.rust.rustcTarget != stdenv.hostPlatform.rust.rustcTarget) { HOST_PKG_CONFIG_PATH="${pkgsBuildBuild.pkg-config}/bin/pkg-config"; }) diff --git a/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh b/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh index dd2c116a341b..ebf8d900bb3b 100755 --- a/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh +++ b/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh @@ -19,7 +19,6 @@ PLATFORMS=( aarch64-apple-darwin powerpc64le-unknown-linux-gnu riscv64gc-unknown-linux-gnu - mips64el-unknown-linux-gnuabi64 ) BASEURL=https://static.rust-lang.org/dist VERSION=${1:-} diff --git a/nixpkgs/pkgs/development/compilers/rust/rustc.nix b/nixpkgs/pkgs/development/compilers/rust/rustc.nix index 1550887c3567..1758abb6bea5 100644 --- a/nixpkgs/pkgs/development/compilers/rust/rustc.nix +++ b/nixpkgs/pkgs/development/compilers/rust/rustc.nix @@ -1,7 +1,7 @@ { lib, stdenv, removeReferencesTo, pkgsBuildBuild, pkgsBuildHost, pkgsBuildTarget, targetPackages , llvmShared, llvmSharedForBuild, llvmSharedForHost, llvmSharedForTarget, llvmPackages , fetchurl, file, python3 -, darwin, cargo, cmake, rust, rustc, rustfmt +, darwin, cargo, cmake, rustc, rustfmt , pkg-config, openssl, xz , libiconv , which, libffi @@ -53,7 +53,7 @@ in stdenv.mkDerivation (finalAttrs: { # but it does support checking these idiosyncratic PKG_CONFIG_${TRIPLE} # environment variables. # [1]: https://github.com/rust-lang/pkg-config-rs/issues/53 - "PKG_CONFIG_${builtins.replaceStrings ["-"] ["_"] (rust.toRustTarget stdenv.buildPlatform)}" = + "PKG_CONFIG_${builtins.replaceStrings ["-"] ["_"] stdenv.buildPlatform.rust.rustcTarget}" = "${pkgsBuildHost.stdenv.cc.targetPrefix}pkg-config"; NIX_LDFLAGS = toString ( @@ -68,15 +68,18 @@ in stdenv.mkDerivation (finalAttrs: { # We need rust to build rust. If we don't provide it, configure will try to download it. # Reference: https://github.com/rust-lang/rust/blob/master/src/bootstrap/configure.py configureFlags = let - setBuild = "--set=target.${rust.toRustTarget stdenv.buildPlatform}"; - setHost = "--set=target.${rust.toRustTarget stdenv.hostPlatform}"; - setTarget = "--set=target.${rust.toRustTarget stdenv.targetPlatform}"; - ccForBuild = "${pkgsBuildBuild.targetPackages.stdenv.cc}/bin/${pkgsBuildBuild.targetPackages.stdenv.cc.targetPrefix}cc"; - cxxForBuild = "${pkgsBuildBuild.targetPackages.stdenv.cc}/bin/${pkgsBuildBuild.targetPackages.stdenv.cc.targetPrefix}c++"; - ccForHost = "${pkgsBuildHost.targetPackages.stdenv.cc}/bin/${pkgsBuildHost.targetPackages.stdenv.cc.targetPrefix}cc"; - cxxForHost = "${pkgsBuildHost.targetPackages.stdenv.cc}/bin/${pkgsBuildHost.targetPackages.stdenv.cc.targetPrefix}c++"; - ccForTarget = "${pkgsBuildTarget.targetPackages.stdenv.cc}/bin/${pkgsBuildTarget.targetPackages.stdenv.cc.targetPrefix}cc"; - cxxForTarget = "${pkgsBuildTarget.targetPackages.stdenv.cc}/bin/${pkgsBuildTarget.targetPackages.stdenv.cc.targetPrefix}c++"; + prefixForStdenv = stdenv: "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}"; + ccPrefixForStdenv = stdenv: "${prefixForStdenv stdenv}${if (stdenv.cc.isClang or false) then "clang" else "cc"}"; + cxxPrefixForStdenv = stdenv: "${prefixForStdenv stdenv}${if (stdenv.cc.isClang or false) then "clang++" else "c++"}"; + setBuild = "--set=target.${stdenv.buildPlatform.rust.rustcTarget}"; + setHost = "--set=target.${stdenv.hostPlatform.rust.rustcTarget}"; + setTarget = "--set=target.${stdenv.targetPlatform.rust.rustcTarget}"; + ccForBuild = ccPrefixForStdenv pkgsBuildBuild.targetPackages.stdenv; + cxxForBuild = cxxPrefixForStdenv pkgsBuildBuild.targetPackages.stdenv; + ccForHost = ccPrefixForStdenv pkgsBuildHost.targetPackages.stdenv; + cxxForHost = cxxPrefixForStdenv pkgsBuildHost.targetPackages.stdenv; + ccForTarget = ccPrefixForStdenv pkgsBuildTarget.targetPackages.stdenv; + cxxForTarget = cxxPrefixForStdenv pkgsBuildTarget.targetPackages.stdenv; in [ "--release-channel=stable" "--set=build.rustc=${rustc}/bin/rustc" @@ -90,23 +93,23 @@ in stdenv.mkDerivation (finalAttrs: { "--tools=rustc,rust-analyzer-proc-macro-srv" "--enable-rpath" "--enable-vendor" - "--build=${rust.toRustTargetSpec stdenv.buildPlatform}" - "--host=${rust.toRustTargetSpec stdenv.hostPlatform}" + "--build=${stdenv.buildPlatform.rust.rustcTargetSpec}" + "--host=${stdenv.hostPlatform.rust.rustcTargetSpec}" # std is built for all platforms in --target. "--target=${concatStringsSep "," ([ - (rust.toRustTargetSpec stdenv.targetPlatform) + stdenv.targetPlatform.rust.rustcTargetSpec # (build!=target): When cross-building a compiler we need to add # the build platform as well so rustc can compile build.rs # scripts. ] ++ optionals (stdenv.buildPlatform != stdenv.targetPlatform && !fastCross) [ - (rust.toRustTargetSpec stdenv.buildPlatform) + stdenv.buildPlatform.rust.rustcTargetSpec # (host!=target): When building a cross-targeting compiler we # need to add the host platform as well so rustc can compile # build.rs scripts. ] ++ optionals (stdenv.hostPlatform != stdenv.targetPlatform && !fastCross) [ - (rust.toRustTargetSpec stdenv.hostPlatform) + stdenv.hostPlatform.rust.rustcTargetSpec ])}" "${setBuild}.cc=${ccForBuild}" @@ -137,7 +140,7 @@ in stdenv.mkDerivation (finalAttrs: { "${setHost}.musl-root=${pkgsBuildHost.targetPackages.stdenv.cc.libc}" ] ++ optionals stdenv.targetPlatform.isMusl [ "${setTarget}.musl-root=${pkgsBuildTarget.targetPackages.stdenv.cc.libc}" - ] ++ optionals (rust.IsNoStdTarget stdenv.targetPlatform) [ + ] ++ optionals stdenv.targetPlatform.rust.isNoStdTarget [ "--disable-docs" ] ++ optionals (stdenv.isDarwin && stdenv.isx86_64) [ # https://github.com/rust-lang/rust/issues/92173 @@ -149,12 +152,12 @@ in stdenv.mkDerivation (finalAttrs: { buildPhase = if fastCross then " runHook preBuild - mkdir -p build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-{std,rustc}/${rust.toRustTargetSpec stdenv.hostPlatform}/release/ - ln -s ${rustc}/lib/rustlib/${rust.toRustTargetSpec stdenv.hostPlatform}/libstd-*.so build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-std/${rust.toRustTargetSpec stdenv.hostPlatform}/release/libstd.so - ln -s ${rustc}/lib/rustlib/${rust.toRustTargetSpec stdenv.hostPlatform}/librustc_driver-*.so build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-rustc/${rust.toRustTargetSpec stdenv.hostPlatform}/release/librustc.so - ln -s ${rustc}/bin/rustc build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-rustc/${rust.toRustTargetSpec stdenv.hostPlatform}/release/rustc-main - touch build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-std/${rust.toRustTargetSpec stdenv.hostPlatform}/release/.libstd.stamp - touch build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-rustc/${rust.toRustTargetSpec stdenv.hostPlatform}/release/.librustc.stamp + mkdir -p build/${stdenv.hostPlatform.rust.rustcTargetSpec}/stage0-{std,rustc}/${stdenv.hostPlatform.rust.rustcTargetSpec}/release/ + ln -s ${rustc}/lib/rustlib/${stdenv.hostPlatform.rust.rustcTargetSpec}/libstd-*.so build/${stdenv.hostPlatform.rust.rustcTargetSpec}/stage0-std/${stdenv.hostPlatform.rust.rustcTargetSpec}/release/libstd.so + ln -s ${rustc}/lib/rustlib/${stdenv.hostPlatform.rust.rustcTargetSpec}/librustc_driver-*.so build/${stdenv.hostPlatform.rust.rustcTargetSpec}/stage0-rustc/${stdenv.hostPlatform.rust.rustcTargetSpec}/release/librustc.so + ln -s ${rustc}/bin/rustc build/${stdenv.hostPlatform.rust.rustcTargetSpec}/stage0-rustc/${stdenv.hostPlatform.rust.rustcTargetSpec}/release/rustc-main + touch build/${stdenv.hostPlatform.rust.rustcTargetSpec}/stage0-std/${stdenv.hostPlatform.rust.rustcTargetSpec}/release/.libstd.stamp + touch build/${stdenv.hostPlatform.rust.rustcTargetSpec}/stage0-rustc/${stdenv.hostPlatform.rust.rustcTargetSpec}/release/.librustc.stamp python ./x.py --keep-stage=0 --stage=1 build library/std runHook postBuild @@ -167,8 +170,8 @@ in stdenv.mkDerivation (finalAttrs: { mkdir -v $out/bin $doc $man makeWrapper ${rustc}/bin/rustc $out/bin/rustc --add-flags "--sysroot $out" makeWrapper ${rustc}/bin/rustdoc $out/bin/rustdoc --add-flags "--sysroot $out" - ln -s ${rustc}/lib/rustlib/{manifest-rust-std-,}${rust.toRustTargetSpec stdenv.hostPlatform} $out/lib/rustlib/ - echo rust-std-${rust.toRustTargetSpec stdenv.hostPlatform} >> $out/lib/rustlib/components + ln -s ${rustc}/lib/rustlib/{manifest-rust-std-,}${stdenv.hostPlatform.rust.rustcTargetSpec} $out/lib/rustlib/ + echo rust-std-${stdenv.hostPlatform.rust.rustcTargetSpec} >> $out/lib/rustlib/components lndir ${rustc.doc} $doc lndir ${rustc.man} $man @@ -288,9 +291,8 @@ in stdenv.mkDerivation (finalAttrs: { "i686-freebsd13" "x86_64-freebsd13" "x86_64-solaris" "aarch64-linux" "armv6l-linux" "armv7l-linux" "i686-linux" - "loongarch64-linux" "mipsel-linux" "mips64el-linux" - "powerpc64-linux" "powerpc64le-linux" "riscv64-linux" - "s390x-linux" "x86_64-linux" + "loongarch64-linux" "powerpc64-linux" "powerpc64le-linux" + "riscv64-linux" "s390x-linux" "x86_64-linux" "aarch64-netbsd" "armv7l-netbsd" "i686-netbsd" "powerpc-netbsd" "x86_64-netbsd" "i686-openbsd" "x86_64-openbsd" diff --git a/nixpkgs/pkgs/development/compilers/souffle/default.nix b/nixpkgs/pkgs/development/compilers/souffle/default.nix index 6a06213e9599..68ceb1a7d7f6 100644 --- a/nixpkgs/pkgs/development/compilers/souffle/default.nix +++ b/nixpkgs/pkgs/development/compilers/souffle/default.nix @@ -10,13 +10,13 @@ let in stdenv.mkDerivation rec { pname = "souffle"; - version = "2.4"; + version = "2.4.1"; src = fetchFromGitHub { owner = "souffle-lang"; repo = "souffle"; rev = version; - sha256 = "sha256-5g2Ikbfm5nQrsgGntZZ/VbjqSDOj0AP/mnH1nW2b4co="; + sha256 = "sha256-U3/1iNOLFzuXiBsVDAc5AXnK4F982Uifp18jjFNUv2o="; }; patches = [ @@ -34,6 +34,10 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DSOUFFLE_GIT=OFF" ]; + env = lib.optionalAttrs stdenv.cc.isClang { + NIX_CFLAGS_COMPILE = "-Wno-error=unused-but-set-variable"; + }; + postInstall = '' wrapProgram "$out/bin/souffle" --prefix PATH : "${toolsPath}" ''; diff --git a/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix b/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix index c6c743ce1e59..f19501a6d7d8 100644 --- a/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix +++ b/nixpkgs/pkgs/development/compilers/spirv-llvm-translator/default.nix @@ -55,10 +55,10 @@ stdenv.mkDerivation { }) ]; - nativeBuildInputs = [ pkg-config cmake spirv-tools ] + nativeBuildInputs = [ pkg-config cmake ] ++ (if isROCm then [ llvm ] else [ llvm.dev ]); - buildInputs = [ spirv-headers ] + buildInputs = [ spirv-headers spirv-tools ] ++ lib.optionals (!isROCm) [ llvm ]; nativeCheckInputs = [ lit ]; diff --git a/nixpkgs/pkgs/development/compilers/squeak/default.nix b/nixpkgs/pkgs/development/compilers/squeak/default.nix index 818ad22fae74..79627eba7c83 100644 --- a/nixpkgs/pkgs/development/compilers/squeak/default.nix +++ b/nixpkgs/pkgs/development/compilers/squeak/default.nix @@ -1,8 +1,8 @@ { lib, stdenv, fetchFromGitHub, fetchurl, fetchzip , autoconf, automake, autoreconfHook, clang, dos2unix, file, perl , pkg-config -, alsa-lib, coreutils, freetype, glib, glibc, gnugrep, libpulseaudio, libtool -, libuuid, openssl, pango, xorg +, alsa-lib, coreutils, freetype, glib, glibc, gnugrep, libGL, libpulseaudio +, libtool, libuuid, openssl, pango, xorg , squeakImageHash ? null, squeakSourcesHash ? null, squeakSourcesVersion ? null , squeakVersion ? null, squeakVmCommitHash ? null, squeakVmCommitHashHash ? null , squeakVmVersion ? null @@ -88,6 +88,7 @@ in stdenv.mkDerivation { glib glibc gnugrep + libGL libpulseaudio libtool libuuid |