mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-07-22 00:20:58 +00:00
Compare commits
114 Commits
wip-home-a
...
staging
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
26cfad56d0 | ||
|
|
1c88beab89 | ||
|
|
0cce77b482 | ||
|
|
e3850b7cb0 | ||
|
|
7973bd606a | ||
|
|
e2f1003d54 | ||
|
|
e5e485993a | ||
|
|
2f1ba1e607 | ||
|
|
c89f3fbd2d | ||
|
|
481f060889 | ||
|
|
9bcdcbe201 | ||
|
|
c1fac1327d | ||
|
|
d793e2af82 | ||
|
|
737bea0291 | ||
|
|
1ea19ce3da | ||
|
|
0567cbfd3c | ||
|
|
85f3793b05 | ||
|
|
34a0c1b8bc | ||
|
|
b43c707be2 | ||
|
|
aa4219ffaa | ||
|
|
951e50ec2b | ||
|
|
72dfbeef2f | ||
|
|
52325bf865 | ||
|
|
8741663b37 | ||
|
|
f6c466042e | ||
|
|
2709d6b4f4 | ||
|
|
fb6f0040ba | ||
|
|
b2aab90a9c | ||
|
|
5029ec8c4b | ||
|
|
7daffa6483 | ||
|
|
85698966be | ||
|
|
89d7ad761d | ||
|
|
06dfd43f5a | ||
|
|
9d32e5581e | ||
|
|
5f6ddcdf15 | ||
|
|
1780b903fd | ||
|
|
ce8a82fb44 | ||
|
|
33ca91a44e | ||
|
|
aa3e83b5be | ||
|
|
0fb5f0c1d5 | ||
|
|
eaaeed2a57 | ||
|
|
66b5ff6922 | ||
|
|
bb64af82c3 | ||
|
|
030180ff42 | ||
|
|
93c2daee52 | ||
|
|
cf5eebf360 | ||
|
|
3d43477063 | ||
|
|
80d7920bdd | ||
|
|
be8bc646d4 | ||
|
|
d3ea2a3180 | ||
|
|
a756cf1950 | ||
|
|
c9a869ef27 | ||
|
|
631bb3f063 | ||
|
|
8fb20960f6 | ||
|
|
6ba22d1955 | ||
|
|
14c9361dac | ||
|
|
9652e1332d | ||
|
|
e6f60a365a | ||
|
|
fe496ec525 | ||
|
|
4f6ec6fc96 | ||
|
|
979d1af798 | ||
|
|
01b81663af | ||
|
|
143000035a | ||
|
|
6a00cf9029 | ||
|
|
b8849050c9 | ||
|
|
35eba27db6 | ||
|
|
67204887a8 | ||
|
|
007ea29d17 | ||
|
|
63f496d8fb | ||
|
|
56caf75a2b | ||
|
|
e79e57c3d0 | ||
|
|
f659de9be2 | ||
|
|
339568c9f9 | ||
|
|
36077ec8f8 | ||
|
|
c0216ed720 | ||
|
|
dac609047e | ||
|
|
0e0204bf39 | ||
|
|
b5231255ab | ||
|
|
3e44519ed5 | ||
|
|
4c4644e487 | ||
|
|
0b99f61e56 | ||
|
|
e72f7e0e9e | ||
|
|
6efd50f603 | ||
|
|
5ff3d47156 | ||
|
|
f2f80d3cde | ||
|
|
68a131f652 | ||
|
|
33f1076b16 | ||
|
|
50e42b2d6c | ||
|
|
107ecb2533 | ||
|
|
84d99e1916 | ||
|
|
4893b4e92d | ||
|
|
dfea27aa96 | ||
|
|
ba6c358aff | ||
|
|
a51d057203 | ||
|
|
d0cbf1997e | ||
|
|
a043bd8b36 | ||
|
|
bd7c058954 | ||
|
|
290bcbbbb4 | ||
|
|
18c75074ca | ||
|
|
26482ee87c | ||
|
|
af253c905a | ||
|
|
55781a05ed | ||
|
|
6204aa2983 | ||
|
|
12babd1e2a | ||
|
|
d88eb9f171 | ||
|
|
5614859b5a | ||
|
|
9508ddad2b | ||
|
|
35bc596317 | ||
|
|
5526f30e5a | ||
|
|
d14289b445 | ||
|
|
d066489411 | ||
|
|
3259398327 | ||
|
|
b3a0b19271 | ||
|
|
0565c96604 |
@@ -31,6 +31,6 @@
|
||||
assert ("Latitude: 12.345000°" in whereAmI), f"Incorrect latitude in:\n{whereAmI}"
|
||||
assert ("Longitude: -67.890000°" in whereAmI), f"Incorrect longitude in:\n{whereAmI}"
|
||||
assert ("Altitude: 123.450000 meters" in whereAmI), f"Incorrect altitude in:\n{whereAmI}"
|
||||
assert ("Accuracy: 1000.000000 meters" in whereAmI), f"Incorrect accuracy in:\n{whereAmI}"
|
||||
assert ("Accuracy: 1000 meters" in whereAmI), f"Incorrect accuracy in:\n{whereAmI}"
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -460,19 +460,17 @@ in
|
||||
nodes.machine = common;
|
||||
|
||||
testScript =
|
||||
let
|
||||
oldVersion = "222";
|
||||
in
|
||||
# python
|
||||
''
|
||||
machine.succeed("mount -o remount,rw /boot")
|
||||
|
||||
def switch():
|
||||
# Replace version inside sd-boot with something older. See magic[] string in systemd src/boot/efi/boot.c
|
||||
# Replace version inside sd-boot with something older. See SD_MAGIC in systemd src/boot/boot.c
|
||||
# Note: the sed replacement has to be length-preserving, because section length matters.
|
||||
machine.succeed(
|
||||
"""
|
||||
r"""
|
||||
find /boot -iname '*boot*.efi' -print0 | \
|
||||
xargs -0 -I '{}' sed -i 's/#### LoaderInfo: systemd-boot .* ####/#### LoaderInfo: systemd-boot ${oldVersion} ####/' '{}'
|
||||
xargs -0 -I '{}' sed -i 's/#### LoaderInfo: systemd-boot [0-9]\(.*\) ####/#### LoaderInfo: systemd-boot 0\1 ####/' '{}'
|
||||
"""
|
||||
)
|
||||
return machine.succeed("/run/current-system/bin/switch-to-configuration boot 2>&1")
|
||||
|
||||
@@ -20,7 +20,7 @@ let
|
||||
lib.concatStringsSep "\n\n" extraCertificateStrings
|
||||
);
|
||||
|
||||
version = "3.125";
|
||||
version = "3.126";
|
||||
meta = {
|
||||
homepage = "https://firefox-source-docs.mozilla.org/security/nss/runbooks/rootstore.html#root-store-consumers";
|
||||
description = "Bundle of X.509 certificates of public Certificate Authorities (CA)";
|
||||
@@ -52,7 +52,7 @@ stdenv.mkDerivation {
|
||||
"https://hg-edge.mozilla.org/projects/nss/raw-file/${tag}/${file}"
|
||||
"https://raw.githubusercontent.com/nss-dev/nss/refs/tags/${tag}/${file}"
|
||||
];
|
||||
hash = "sha256-5XkSgI2u97Kw+k3yzPF+R66vJsg5o4+Fx2AD66/YZr0=";
|
||||
hash = "sha256-gbfyV2MzouNg5nP5Etewt6dl2DbHMQA+NIpGysXTcZg=";
|
||||
};
|
||||
|
||||
unpackPhase = ''
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "doctest";
|
||||
version = "2.5.2";
|
||||
version = "2.5.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "doctest";
|
||||
repo = "doctest";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-4jW6xPFCFxk1l47EkSUVojhycrtluPhOc5Adf/25R7M=";
|
||||
hash = "sha256-+/IEISqN9HdaCJ0udLVUitOUziLvF/D3POecZMoXuho=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
@@ -9,11 +9,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ethtool";
|
||||
version = "7.0";
|
||||
version = "7.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/software/network/ethtool/ethtool-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-Zgv5clp4cTQ6DSMgaKdjT7z7abbC+O/0VYJ/rvsM0WI=";
|
||||
hash = "sha256-TXjCbtwCVbyS9LmVtf1mEI11/5Zu1GlPYCWm03C8JJY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "fluidsynth";
|
||||
version = "2.5.5";
|
||||
version = "2.5.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FluidSynth";
|
||||
repo = "fluidsynth";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-WEzOYHtPIUkPZu3v4dWcCh3dOJUyG1xRxDuoSXqiGbk=";
|
||||
hash = "sha256-q4NdfemCprYEYCrKlHumeRM8TyNz8eJcFM18EsB0p0c=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
@@ -52,6 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/FluidSynth/fluidsynth/blob/${finalAttrs.src.tag}/doc/wiki/ChangeLog.md";
|
||||
description = "Real-time software synthesizer based on the SoundFont 2 specifications";
|
||||
homepage = "https://www.fluidsynth.org";
|
||||
license = lib.licenses.lgpl21Plus;
|
||||
|
||||
13
pkgs/by-name/ge/geoclue2/fix-sysusers_dir.patch
Normal file
13
pkgs/by-name/ge/geoclue2/fix-sysusers_dir.patch
Normal file
@@ -0,0 +1,13 @@
|
||||
diff --git a/data/meson.build b/data/meson.build
|
||||
index 2591e6a..dc1bd8d 100644
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -69,7 +69,7 @@ if get_option('enable-backend')
|
||||
if systemd.found()
|
||||
sysusers_dir = systemd.get_variable(pkgconfig: 'sysusersdir')
|
||||
else
|
||||
- sysusers_dir = '/usr/lib/sysusers.d'
|
||||
+ sysusers_dir = join_paths(get_option('prefix'), 'usr/lib/sysusers.d')
|
||||
endif
|
||||
configure_file(output: 'geoclue-sysusers.conf',
|
||||
input: 'geoclue-sysusers.conf.in',
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "geoclue";
|
||||
version = "2.7.2";
|
||||
version = "2.8.1";
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
@@ -42,11 +42,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
owner = "geoclue";
|
||||
repo = "geoclue";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-LwL1WtCdHb/NwPr3/OLISwaAwplhJwiZT9vUdX29Bbs=";
|
||||
hash = "sha256-CyZhUMAa2vMUi61sL+gGBZFxGo0lu7Cm68fTjcbblTg=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./add-option-for-installation-sysconfdir.patch
|
||||
./fix-sysusers_dir.patch
|
||||
];
|
||||
|
||||
separateDebugInfo = true;
|
||||
|
||||
@@ -11,11 +11,11 @@
|
||||
version ?
|
||||
# This is a workaround for update-source-version to be able to update this
|
||||
let
|
||||
_version = "0-unstable-2026-04-01";
|
||||
_version = "0-unstable-2026-05-27";
|
||||
in
|
||||
_version,
|
||||
rev ? "6e8dcdebbadf4f8aa75e6a4b6e0bdf89dce1513a",
|
||||
hash ? "sha256-BTPD8WM1pVAMkFDlHekMdWFGyf63KdhKkKwsqikqoBQ=",
|
||||
rev ? "3357c4f51b1a9e676378c695dd9c7e9911c35ee6",
|
||||
hash ? "sha256-/1A+DkzAQj2zGPe/A/G0Z3VrYJXUxq4Hd/+d/o5p3G8=",
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
||||
@@ -40,13 +40,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "graphviz";
|
||||
version = "14.1.2";
|
||||
version = "15.1.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "graphviz";
|
||||
repo = "graphviz";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-LkyiKl0ulS9ujEdVLfyeoc4CtjITd6CAc35IUtlHSfw=";
|
||||
hash = "sha256-5v/ib8hwqHrJLs+jvDGvg0aJiKIt8ipXEd1EUzew7XU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -22,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
# Fix build on i686 by not trying to build AVX2 code
|
||||
# Submitted upstream: https://github.com/HdrHistogram/HdrHistogram_c/pull/143
|
||||
${if stdenv.hostPlatform.isi686 then "patches" else null} = [
|
||||
patches = [
|
||||
./no-avx2-i386.patch
|
||||
];
|
||||
|
||||
|
||||
@@ -67,26 +67,6 @@
|
||||
assert libXtSupport -> libX11Support;
|
||||
assert libraqmSupport -> freetypeSupport;
|
||||
|
||||
let
|
||||
arch =
|
||||
if stdenv.hostPlatform.system == "i686-linux" then
|
||||
"i686"
|
||||
else if
|
||||
stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "x86_64-darwin"
|
||||
then
|
||||
"x86-64"
|
||||
else if stdenv.hostPlatform.system == "armv7l-linux" then
|
||||
"armv7l"
|
||||
else if
|
||||
stdenv.hostPlatform.system == "aarch64-linux" || stdenv.hostPlatform.system == "aarch64-darwin"
|
||||
then
|
||||
"aarch64"
|
||||
else if stdenv.hostPlatform.system == "powerpc64le-linux" then
|
||||
"ppc64le"
|
||||
else
|
||||
null;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "imagemagick";
|
||||
version = "7.1.2-27";
|
||||
@@ -113,7 +93,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"MVDelegate=${lib.getExe' coreutils "mv"}"
|
||||
"RMDelegate=${lib.getExe' coreutils "rm"}"
|
||||
"--with-frozenpaths"
|
||||
(lib.withFeatureAs (arch != null) "gcc-arch" arch)
|
||||
"--with-gcc-arch=generic"
|
||||
(lib.withFeature librsvgSupport "rsvg")
|
||||
(lib.withFeature librsvgSupport "pango")
|
||||
(lib.withFeature liblqr1Support "lqr")
|
||||
|
||||
@@ -32,13 +32,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libapparmor";
|
||||
version = "5.0.1";
|
||||
version = "5.0.2";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "apparmor";
|
||||
repo = "apparmor";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-y5r8X7Cpwp7TSsKYXNoAeyy0MbgxLSW8gNtLsIvKP8c=";
|
||||
hash = "sha256-Kuc5Nrz4iq5MC5AOcJL9Sb54DWNKlEk3b3DW0vpgSZg=";
|
||||
};
|
||||
sourceRoot = "${finalAttrs.src.name}/libraries/libapparmor";
|
||||
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libmysofa";
|
||||
version = "1.3.3";
|
||||
version = "1.3.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hoene";
|
||||
repo = "libmysofa";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-jvib1hGPJEY2w/KjlD7iTtRy1s8LFG+Qhb2d6xdpUyc=";
|
||||
hash = "sha256-gP/RjKzMx8JIYcyiivBGvy3kIdwHMEKY6abssyVUKNQ=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libsodium";
|
||||
version = "1.0.22-unstable-2026-04-16";
|
||||
version = "1.0.22-unstable-2026-07-08";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jedisct1";
|
||||
repo = "libsodium";
|
||||
rev = "33cc75ab1565d9dcbe808354191bd572ad6b64d0";
|
||||
hash = "sha256-8kS9FBoaFaJOjH7XZc8IG3GaQaUiYD/awQOhs7j0n1Y=";
|
||||
rev = "77a422c85a3b8b487de50c811b38d18394831ba6";
|
||||
hash = "sha256-Ahka2PnrmYvTLjZMzik5mFsxhDpMLRMKT/I5ftUb0Xc=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
|
||||
@@ -19,11 +19,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libssh";
|
||||
version = "0.12.0";
|
||||
version = "0.12.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.libssh.org/files/${lib.versions.majorMinor finalAttrs.version}/libssh-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-Gmr0JNgyfl7t705f5/W5JCJt1hesnz3oDyF9gqNqcSE=";
|
||||
hash = "sha256-05Qa8KLXjV2C7Xo2mI6RM5lDEvA1uWWabkP42zloeEw=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
|
||||
@@ -37,13 +37,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libtiff";
|
||||
version = "4.7.1";
|
||||
version = "4.7.2";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "libtiff";
|
||||
repo = "libtiff";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-UiC6s86i7UavW86EKm74oPVlEacvoKmwW7KETjpnNaI=";
|
||||
hash = "sha256-60Lpg5WRfWMzlOoOUA+C6KLlYIZ+3BjXidOVqv4M2GA=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
}:
|
||||
|
||||
callPackage ./generic.nix {
|
||||
version = "4.1.0";
|
||||
hash = "sha256-TA1uka13So8URttw+JJVdKIL+IonkhIQSc0IfraXpIM=";
|
||||
version = "4.2.0";
|
||||
hash = "sha256-Xz5W5zYPNlASPyc1/Sz2O1LONdxpUkg1hgzKdax/3ag=";
|
||||
|
||||
patches = [
|
||||
# Fixes the build with GCC 14 on aarch64.
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
}:
|
||||
|
||||
callPackage ./generic.nix {
|
||||
version = "3.6.6";
|
||||
hash = "sha256-+PW41/c8M/Yz0EVWM4Gt4HTNBMUTU5MayaKVZ+upLIo=";
|
||||
version = "3.6.7";
|
||||
hash = "sha256-t1ZPeFA3ftKaEIaXQ7RXZEsiOAYK4KSSm55SFr9g17A=";
|
||||
|
||||
patches = [
|
||||
# Fixes the build with GCC 14 on aarch64.
|
||||
|
||||
@@ -13,16 +13,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "prek";
|
||||
version = "0.4.4";
|
||||
version = "0.4.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "j178";
|
||||
repo = "prek";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-PAEmRQ5Vro83fkegOWsdY59U7WAQxBPSEalzxZV6K4o=";
|
||||
hash = "sha256-tTr/Aob6jP1YL+n5vGkUkByew73WdP3mqLW5Lci1gNM=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-EmlR6Lmt5XR0uS/y3FqY5yGNeVBSdtLtEGH9jZLcP2o=";
|
||||
cargoHash = "sha256-He55uH7t7NI5sYgowujqCMK5yjhC2F+8ZLxKG6TLjYY=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "srt";
|
||||
version = "1.5.5";
|
||||
version = "1.5.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Haivision";
|
||||
repo = "srt";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-hOkLlmtF9dKqXZTjAeBntkkg5WsmsZN6DKhyakoIF1k=";
|
||||
sha256 = "sha256-fdgj6URuMaem+ZVy7D8Hnf2Ev1HindevdvX0xyxCL4M=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
@@ -8,16 +8,16 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tzdata";
|
||||
version = "2026b";
|
||||
version = "2026c";
|
||||
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://data.iana.org/time-zones/releases/tzdata${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-EUVD2fGaa/61vKQ2hq6hc9OHVaPbHy7sESZHrpLG9UQ=";
|
||||
hash = "sha256-5KF4pEd/PQ6nfMMYKP9yqjj+/41hqhPn6Z4ULp2QK+Q=";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://data.iana.org/time-zones/releases/tzcode${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-N+nthCf101IcIvxY4pPL+wQ9cO7fEAOHCzPzY/Yco0Q=";
|
||||
hash = "sha256-sc/8Os5MTHzQ77ovet2G7D0LedpIvPA1gmcf08j+rOg=";
|
||||
})
|
||||
];
|
||||
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xsimd";
|
||||
version = "14.2.0";
|
||||
version = "14.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xtensor-stack";
|
||||
repo = "xsimd";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-BTiN4B3//wlB3nmOoluM/7bL7J7YIBp5afih9zUP1yw=";
|
||||
hash = "sha256-0m9gUDCgGh58lf9uPp1Obw4rsqWEL1RffWYB6s315p0=";
|
||||
};
|
||||
|
||||
# strictDeps raises the chance that xsimd will be able to be cross compiled
|
||||
|
||||
@@ -38,14 +38,7 @@
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xvfb";
|
||||
|
||||
# TODO: commented out for rebuild avoidance after xorg-server update. revert
|
||||
# on staging.
|
||||
# inherit (xorg-server) src version;
|
||||
version = "21.1.23";
|
||||
src = fetchurl {
|
||||
url = "mirror://xorg/individual/xserver/xorg-server-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-45gy5WF9ra8HL9+fDhnl0uHCoTYHrCgLrBq6n4/hRjQ=";
|
||||
};
|
||||
inherit (xorg-server) src version;
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
|
||||
@@ -50,8 +50,8 @@ let
|
||||
in
|
||||
import ./default.nix
|
||||
{
|
||||
rustcVersion = "1.97.0";
|
||||
rustcSha256 = "sha256-HAhV2JgqD7HQMhtgVLVbcy07HRfIRoQet/0Ks3vydvg=";
|
||||
rustcVersion = "1.97.1";
|
||||
rustcSha256 = "sha256-YiwrQpxTy/3A3TpR0DVU6RzWPr7BkSwfVwlkDN/vGp0=";
|
||||
|
||||
llvmSharedForBuild = llvmSharedFor pkgsBuildBuild;
|
||||
llvmSharedForHost = llvmSharedFor pkgsBuildHost;
|
||||
@@ -65,27 +65,27 @@ import ./default.nix
|
||||
# Note: the version MUST be the same version that we are building. Upstream
|
||||
# ensures that each released compiler can compile itself:
|
||||
# https://github.com/NixOS/nixpkgs/pull/351028#issuecomment-2438244363
|
||||
bootstrapVersion = "1.97.0";
|
||||
bootstrapVersion = "1.97.1";
|
||||
|
||||
# fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
|
||||
bootstrapHashes = {
|
||||
i686-unknown-linux-gnu = "d066e5dd59c15fc1c793173d53b41719162de4470b5c34041a8bc664542df375";
|
||||
x86_64-unknown-linux-gnu = "eb89b20287153391c49ebcdb7fd91b683a12438d129bfb92eadcc495545af3a7";
|
||||
x86_64-unknown-linux-musl = "675bb2d574efc64da0563a9cb70cc017560394c5938e04c92987cad383299e8d";
|
||||
arm-unknown-linux-gnueabihf = "180e487a1f7abaeda374b942d369dd7faa4364b1267629d48552d9a17a5bc4ab";
|
||||
armv7-unknown-linux-gnueabihf = "2f9dfd76694efcf391f6d4947e97be17d1f469c9e989ed194660ddd85877ca60";
|
||||
aarch64-unknown-linux-gnu = "70fb01b4894d56fad34c260ce63aee647589be57a26ab33730110d8228cbcf02";
|
||||
aarch64-unknown-linux-musl = "28efcf4ee31235eb5f7820dadba46400ab9dbbb030719e7a2ab284b02c8cbf82";
|
||||
x86_64-apple-darwin = "3dc9ad8ec35a9f0acd2c5ae2c80c36baf5c7010423bf339ca55709fc995885d4";
|
||||
aarch64-apple-darwin = "c2e6a5ef480f5715ae9874188c1fa749b6a6f90d8d911f5a3a5d768f0ac70427";
|
||||
powerpc64-unknown-linux-gnu = "62c9f9b7887505fc4dcda40784469f23909657d245e53025a7a8124b016d6631";
|
||||
powerpc64le-unknown-linux-gnu = "a8d3f487d07cebc48ce03ad66a970a5f5138a5c1e7c7cec12fb9b6e47a24bf1a";
|
||||
powerpc64le-unknown-linux-musl = "09fee3b9ede1e94ff6c3bad3918dc231be909c74bb182e0acd583c03a9f1df5f";
|
||||
riscv64gc-unknown-linux-gnu = "be239392f7112f6a81f20c9e715d5743319a8b773592e027ad800d73527d8fae";
|
||||
s390x-unknown-linux-gnu = "fee699e31d0a0034f46669c473e61a88af6734f8c5902d77329ac236fcd9b538";
|
||||
loongarch64-unknown-linux-gnu = "37ad9d55b98cc680a2d75c7184e6457b632ce82690a56be7a2044e32c91176ce";
|
||||
loongarch64-unknown-linux-musl = "bfba202bae252ac372026171d9bc98e5eb80578d576546f56e8aee2e9d64ecf0";
|
||||
x86_64-unknown-freebsd = "77101232e3769395e99c0e663d2c8beb3d4127857945cf7c812c1886ba823b8f";
|
||||
i686-unknown-linux-gnu = "914c2702deada0b9cf1d64bb3495d76e55cb3eba07d508472dde8b55a93e3759";
|
||||
x86_64-unknown-linux-gnu = "b4cdbc7cc6b0ee0a2666b1872769fdb2ad8393b28b63952f6493b4b400e4832b";
|
||||
x86_64-unknown-linux-musl = "40dbea28193cf2b488cf3e4a89274ccfb60efa50883f19917a382f84fd05bdc4";
|
||||
arm-unknown-linux-gnueabihf = "ba62fe07ad85b507907705a14adc1e8bc258de5f6177ba41d77bbff9f469a4ce";
|
||||
armv7-unknown-linux-gnueabihf = "e89c5e33aaddc6ef56857000c9117875c2997e9a1a500bd7b16277c9874b002f";
|
||||
aarch64-unknown-linux-gnu = "2f2496c70bd336a66a4c8baf2d303ba161f3552f192444c3639ba903c7c1e2c5";
|
||||
aarch64-unknown-linux-musl = "c5f45b5c6eb7f8fdb277c54c08402b7c931516740fbd4eccc26ba148f7cd5d57";
|
||||
x86_64-apple-darwin = "5f4c84d2bcce7983468642855a45fc4978fba1324cfdd1ea0b182face3ab4ffa";
|
||||
aarch64-apple-darwin = "cbd14c36f039f6f11f38148a6295d8234d18ddf20bea53031c86f119423a8b26";
|
||||
powerpc64-unknown-linux-gnu = "2b507d5eb9b5c4c041b50e93e069db56d094f02e6df103dc74c016155141bfae";
|
||||
powerpc64le-unknown-linux-gnu = "ff524eef5a59d801df09ccad5cdaf9ea1f0a07d75cbed2a7e9f013a9eb76a3c1";
|
||||
powerpc64le-unknown-linux-musl = "15630f33fbea2dd9661f8482b6c612da271549aba40401444aaa53650e646b9b";
|
||||
riscv64gc-unknown-linux-gnu = "59bec35d8febb2ab918fa41cffbaa5b07146a63bdc33f029ff756d70a3151ece";
|
||||
s390x-unknown-linux-gnu = "808268af9e880d41b8cb32b242e38c9bd3ea7aba6409b02fbffa0fbc5370c538";
|
||||
loongarch64-unknown-linux-gnu = "d5a925962854730ae7641420d8337af93988ea4ff47b503a856ec53776c87841";
|
||||
loongarch64-unknown-linux-musl = "3fb653299d228e3e0726afb179b07dd10a51a2ecc3cdfcd740011b1d8420ca97";
|
||||
x86_64-unknown-freebsd = "77866a4c449bcccb40e9d6712bf3eb899d29018ed8e841fd9d8d59370751f152";
|
||||
};
|
||||
|
||||
selectRustPackage = pkgs: pkgs.rust_1_97;
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "fontconfig";
|
||||
version = "2.18.1";
|
||||
version = "2.18.2";
|
||||
|
||||
outputs = [
|
||||
"bin"
|
||||
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# ref: https://github.com/NixOS/nixpkgs/pull/401037#discussion_r2055430206
|
||||
src = fetchurl {
|
||||
url = "https://gitlab.freedesktop.org/api/v4/projects/890/packages/generic/fontconfig/${finalAttrs.version}/fontconfig-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-IwDz2/pyU7OkT0/uzbyN+kXd5dws+3H86vMfOUy0EDE=";
|
||||
hash = "sha256-z45ldu8EhMFQeb2vd82cUcRk31NlgUraTT7nMx6jHrU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -48,14 +48,14 @@
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "aiohttp";
|
||||
version = "3.14.1";
|
||||
version = "3.14.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aio-libs";
|
||||
repo = "aiohttp";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-OJSLv/NfVrKESZqNr51FJUzLRz7wLMRdGoNjKC5EhlI=";
|
||||
hash = "sha256-gpAYbANSlUZoB0lATEP2N288GxlF8/GzD7bEW1AkHZw=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -3,16 +3,16 @@
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
cython,
|
||||
packaging,
|
||||
pkgconfig,
|
||||
setuptools,
|
||||
wheel,
|
||||
pytestCheckHook,
|
||||
python,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "faust-cchardet";
|
||||
version = "2.1.19";
|
||||
version = "2.1.20";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
@@ -20,14 +20,19 @@ buildPythonPackage rec {
|
||||
repo = "cChardet";
|
||||
tag = "v${version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-yY6YEhXC4S47rxnkKAta4m16IVGn7gkHSt056bYOYJ4=";
|
||||
hash = "sha256-MeRX/g38c+q2jiTtEhUpaGYf+5tkhexRGuIG0PdUGvI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail "packaging<26" packaging
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
cython
|
||||
packaging
|
||||
pkgconfig
|
||||
setuptools
|
||||
wheel
|
||||
];
|
||||
|
||||
postFixup = ''
|
||||
@@ -41,7 +46,7 @@ buildPythonPackage rec {
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/faust-streaming/cChardet/blob/${src.rev}/CHANGES.rst";
|
||||
changelog = "https://github.com/faust-streaming/cChardet/blob/${src.tag}/CHANGES.rst";
|
||||
description = "High-speed universal character encoding detector";
|
||||
mainProgram = "cchardetect";
|
||||
homepage = "https://github.com/faust-streaming/cChardet";
|
||||
|
||||
@@ -2,27 +2,30 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
setuptools,
|
||||
python-dateutil,
|
||||
lxml,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "feedgen";
|
||||
version = "1.0.0";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
inherit (finalAttrs) pname version;
|
||||
hash = "sha256-2b1Rw7XpVqKlKZjDcIxNLHKfL8wxEYjh5dO5cmOTVGo=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
python-dateutil
|
||||
lxml
|
||||
];
|
||||
|
||||
# No tests in archive
|
||||
doCheck = false;
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
|
||||
meta = {
|
||||
description = "Python module to generate ATOM feeds, RSS feeds and Podcasts";
|
||||
@@ -34,4 +37,4 @@ buildPythonPackage rec {
|
||||
];
|
||||
maintainers = with lib.maintainers; [ casey ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -2,24 +2,29 @@
|
||||
buildPythonPackage,
|
||||
lib,
|
||||
fetchPypi,
|
||||
setuptools,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "fields";
|
||||
version = "5.0.0";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
inherit (finalAttrs) pname version;
|
||||
hash = "sha256-MdSqA9jUTjXfE8Qx3jUTaZfwR6kkpZfYT3vCCeG+Vyc=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
pythonImportsCheck = [ "fields" ];
|
||||
|
||||
doCheck = false; # Argument(s) {'path'} are declared in the hookimpl but can not be found in the hookspec
|
||||
|
||||
meta = {
|
||||
description = "Container class boilerplate killer";
|
||||
homepage = "https://github.com/ionelmc/python-fields";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = [ lib.maintainers.sheepforce ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -41,6 +41,7 @@ buildPythonPackage (finalAttrs: {
|
||||
"tests/test_virtualenv.py"
|
||||
# Very prone to timeouts on busy machines
|
||||
"tests/test_filelock.py"
|
||||
"tests/test_read_write.py"
|
||||
];
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -69,13 +69,13 @@ let
|
||||
in
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
version = "3.11.0";
|
||||
version = "3.11.1";
|
||||
pname = "matplotlib";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit (finalAttrs) pname version;
|
||||
hash = "sha256-aMDHvgGzDcyjY4k09/WR33NAEjXL2/DRqxxx59t/i1c=";
|
||||
hash = "sha256-aWR9tXRpQceT1uRFpM00kyP/uH2cyVjCrYSmWbSDLTA=";
|
||||
};
|
||||
|
||||
env.XDG_RUNTIME_DIR = "/tmp";
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "multipart";
|
||||
version = "1.3.1";
|
||||
version = "2.0.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "defnull";
|
||||
repo = "multipart";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-kLiOK6ovW3ki1CONXVQZCJw/U3K1AoR6rrmJUstwZOw=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-1/G8qUnY7i5OvxkTSebC2pae9lzzfvnozJSVVylqB7w=";
|
||||
};
|
||||
|
||||
build-system = [ flit-core ];
|
||||
@@ -25,10 +25,10 @@ buildPythonPackage rec {
|
||||
pythonImportsCheck = [ "multipart" ];
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/defnull/multipart/blob/${src.tag}/CHANGELOG.rst";
|
||||
changelog = "https://github.com/defnull/multipart/blob/${finalAttrs.src.tag}/CHANGELOG.rst";
|
||||
description = "Parser for multipart/form-data";
|
||||
homepage = "https://github.com/defnull/multipart";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
prek,
|
||||
pyprojectVersionPatchHook,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
@@ -33,7 +32,6 @@ buildPythonPackage (finalAttrs: {
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
prek
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
@@ -38,7 +38,9 @@ buildPythonPackage rec {
|
||||
"test_unicode_path"
|
||||
# fails to import itself after modifying the environment
|
||||
"test_environment"
|
||||
# timing sensitive through usage of sleep(1) and signal handling
|
||||
# timing sensitive due to strict timeouts
|
||||
"test_done_callback_no_deadlock"
|
||||
"test_timeout_overstep"
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
# Disable tests that fail on Darwin sandbox
|
||||
|
||||
@@ -203,13 +203,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
inherit pname;
|
||||
version = "261";
|
||||
version = "261.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "systemd";
|
||||
repo = "systemd";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-6IB1ZEQqQ0impwBhCaLZAEgMVkVFU61JDVlGotxNzGQ=";
|
||||
hash = "sha256-4iOitWGdRmGgJjEXGWtq2lEhPtGguma+qrjTShrps2g=";
|
||||
};
|
||||
|
||||
# PATCH POLICY
|
||||
|
||||
@@ -13,24 +13,19 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "findutils";
|
||||
version = "4.10.0";
|
||||
version = "4.11.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/findutils/findutils-${finalAttrs.version}.tar.xz";
|
||||
sha256 = "sha256-E4fgtn/yR9Kr3pmPkN+/cMFJE5Glnd/suK5ph4nwpPU=";
|
||||
sha256 = "sha256-v9GcsGzHHzNS1WfpAoTYzawCrIl3S76t8LUzsMEUMv0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace xargs/xargs.c --replace 'char default_cmd[] = "echo";' 'char default_cmd[] = "${coreutils}/bin/echo";'
|
||||
substituteInPlace xargs/xargs.c --replace 'char default_cmd[] = "echo";' 'char default_cmd[] = "${lib.getExe' coreutils "echo"}";'
|
||||
'';
|
||||
|
||||
patches = [
|
||||
./no-install-statedir.patch
|
||||
|
||||
# Fixes test-float failure on ppc64 with C23
|
||||
# https://lists.gnu.org/archive/html/bug-gnulib/2025-07/msg00021.html
|
||||
# Multiple upstream commits squashed with adjustments, see header
|
||||
./gnulib-float-h-tests-port-to-C23-PowerPC-GCC.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
|
||||
@@ -53,7 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
configureFlags = [
|
||||
# "sort" need not be on the PATH as a run-time dep, so we need to tell
|
||||
# configure where it is. Covers the cross and native case alike.
|
||||
"SORT=${coreutils}/bin/sort"
|
||||
"SORT=${lib.getExe' coreutils "sort"}"
|
||||
"--localstatedir=/var/cache"
|
||||
];
|
||||
|
||||
@@ -86,6 +81,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
meta = {
|
||||
homepage = "https://www.gnu.org/software/findutils/";
|
||||
changelog = "https://cgit.git.savannah.gnu.org/cgit/findutils.git/tree/NEWS?h=v${finalAttrs.version}";
|
||||
description = "GNU Find Utilities, the basic directory searching utilities of the GNU operating system";
|
||||
longDescription = ''
|
||||
The GNU Find Utilities are the basic directory searching
|
||||
|
||||
@@ -1,225 +0,0 @@
|
||||
Applied the following incremental gnulib commits:
|
||||
|
||||
- 55a366a06fbd98bf13adc531579e3513cee97a32
|
||||
- 65ed9d3b24ad09fd61d326c83e7f1b05f6e9d65f
|
||||
- ce8e9de0bf34bc63dffc67ab384334c509175f64
|
||||
- 6164b4cb0887b5331a4e64449107decd37d32735
|
||||
|
||||
With adjustments specific to the structure & differences in findutils:
|
||||
|
||||
- gnulib code is split across gl/lib and gnulib-tests
|
||||
- float.in.h seems old, lacking blocks for standards C11 and up. Relevant code for LDBL_NORM_MAX was added.
|
||||
- A Makefile.in is used for the test flags instead of the fancy automake modules
|
||||
in the upstream gnulib project, so we add -lm to the float test there.
|
||||
Surrounding texts in this file are slightly different in every project.
|
||||
---
|
||||
diff '--color=auto' -ruN a/gl/lib/float.c b/gl/lib/float.c
|
||||
--- a/gl/lib/float.c 2024-01-01 21:35:38.000000000 +0100
|
||||
+++ b/gl/lib/float.c 2026-01-02 16:11:07.508755119 +0100
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
#if (defined _ARCH_PPC || defined _POWER) && (defined _AIX || defined __linux__) && (LDBL_MANT_DIG == 106) && defined __GNUC__
|
||||
const union gl_long_double_union gl_LDBL_MAX =
|
||||
- { { DBL_MAX, DBL_MAX / (double)134217728UL / (double)134217728UL } };
|
||||
+ { { DBL_MAX, DBL_MAX / 0x1p53 } };
|
||||
#elif defined __i386__
|
||||
const union gl_long_double_union gl_LDBL_MAX =
|
||||
{ { 0xFFFFFFFF, 0xFFFFFFFF, 32766 } };
|
||||
diff '--color=auto' -ruN a/gl/lib/float.in.h b/gl/lib/float.in.h
|
||||
--- a/gl/lib/float.in.h 2024-01-01 21:35:38.000000000 +0100
|
||||
+++ b/gl/lib/float.in.h 2026-01-02 16:13:56.571684867 +0100
|
||||
@@ -111,44 +111,38 @@
|
||||
# define LDBL_MAX_10_EXP 4932
|
||||
#endif
|
||||
|
||||
-/* On AIX 7.1 with gcc 4.2, the values of LDBL_MIN_EXP, LDBL_MIN, LDBL_MAX are
|
||||
- wrong.
|
||||
- On Linux/PowerPC with gcc 4.4, the value of LDBL_MAX is wrong. */
|
||||
-#if (defined _ARCH_PPC || defined _POWER) && defined _AIX && (LDBL_MANT_DIG == 106) && defined __GNUC__
|
||||
+/* On PowerPC with gcc 15 when using __ibm128 long double, the value of
|
||||
+ LDBL_MIN_EXP, LDBL_MIN, LDBL_MAX, and LDBL_NORM_MAX are wrong. */
|
||||
+#if ((defined _ARCH_PPC || defined _POWER) && LDBL_MANT_DIG == 106 \
|
||||
+ && defined __GNUC__)
|
||||
# undef LDBL_MIN_EXP
|
||||
# define LDBL_MIN_EXP DBL_MIN_EXP
|
||||
# undef LDBL_MIN_10_EXP
|
||||
# define LDBL_MIN_10_EXP DBL_MIN_10_EXP
|
||||
# undef LDBL_MIN
|
||||
# define LDBL_MIN 2.22507385850720138309023271733240406422e-308L /* DBL_MIN = 2^-1022 */
|
||||
-#endif
|
||||
-#if (defined _ARCH_PPC || defined _POWER) && (defined _AIX || defined __linux__) && (LDBL_MANT_DIG == 106) && defined __GNUC__
|
||||
# undef LDBL_MAX
|
||||
-/* LDBL_MAX is represented as { 0x7FEFFFFF, 0xFFFFFFFF, 0x7C8FFFFF, 0xFFFFFFFF }.
|
||||
- It is not easy to define:
|
||||
- #define LDBL_MAX 1.79769313486231580793728971405302307166e308L
|
||||
- is too small, whereas
|
||||
- #define LDBL_MAX 1.79769313486231580793728971405302307167e308L
|
||||
- is too large. Apparently a bug in GCC decimal-to-binary conversion.
|
||||
- Also, I can't get values larger than
|
||||
- #define LDBL63 ((long double) (1ULL << 63))
|
||||
- #define LDBL882 (LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63)
|
||||
- #define LDBL945 (LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63)
|
||||
- #define LDBL1008 (LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63)
|
||||
- #define LDBL_MAX (LDBL1008 * 65535.0L + LDBL945 * (long double) 9223372036821221375ULL + LDBL882 * (long double) 4611686018427387904ULL)
|
||||
- which is represented as { 0x7FEFFFFF, 0xFFFFFFFF, 0x7C8FFFFF, 0xF8000000 }.
|
||||
- So, define it like this through a reference to an external variable
|
||||
+/* LDBL_MAX is 2**1024 - 2**918, represented as: { 0x7FEFFFFF, 0xFFFFFFFF,
|
||||
+ 0x7C9FFFFF, 0xFFFFFFFF }.
|
||||
+
|
||||
+ Do not write it as a constant expression, as GCC would likely treat
|
||||
+ that as infinity due to the vagaries of this platform's funky arithmetic.
|
||||
+ Instead, define it through a reference to an external variable.
|
||||
+ Like the following, but using a union to avoid type mismatches:
|
||||
|
||||
- const double LDBL_MAX[2] = { DBL_MAX, DBL_MAX / (double)134217728UL / (double)134217728UL };
|
||||
+ const double LDBL_MAX[2] = { DBL_MAX, DBL_MAX / 0x1p53 };
|
||||
extern const long double LDBL_MAX;
|
||||
|
||||
- or through a pointer cast
|
||||
+ The following alternative would not work as well when GCC is optimizing:
|
||||
+
|
||||
+ #define LDBL_MAX (*(long double const *) (double[])
|
||||
+ { DBL_MAX, DBL_MAX / 0x1p53 })
|
||||
|
||||
- #define LDBL_MAX \
|
||||
- (*(const long double *) (double[]) { DBL_MAX, DBL_MAX / (double)134217728UL / (double)134217728UL })
|
||||
+ The following alternative would require GCC 6 or later:
|
||||
|
||||
- Unfortunately, this is not a constant expression, and the latter expression
|
||||
- does not work well when GCC is optimizing.. */
|
||||
+ #define LDBL_MAX __builtin_pack_longdouble (DBL_MAX, DBL_MAX / 0x1p53)
|
||||
+
|
||||
+ Unfortunately none of the alternatives are constant expressions. */
|
||||
# if !GNULIB_defined_long_double_union
|
||||
union gl_long_double_union
|
||||
{
|
||||
@@ -159,6 +153,8 @@
|
||||
# endif
|
||||
extern const union gl_long_double_union gl_LDBL_MAX;
|
||||
# define LDBL_MAX (gl_LDBL_MAX.ld)
|
||||
+# undef LDBL_NORM_MAX
|
||||
+# define LDBL_NORM_MAX LDBL_MAX
|
||||
#endif
|
||||
|
||||
/* On IRIX 6.5, with cc, the value of LDBL_MANT_DIG is wrong.
|
||||
@@ -179,6 +175,35 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
+/* On PowerPC platforms, 'long double' has a double-double representation.
|
||||
+ Up to ISO C 17, this was outside the scope of ISO C because it can represent
|
||||
+ numbers with mantissas of the form 1.<52 bits><many zeroes><52 bits>, such as
|
||||
+ 1.0L + 4.94065645841246544176568792868221e-324L = 1 + 2^-1074; see
|
||||
+ ISO C 17 § 5.2.4.2.2.(3).
|
||||
+ In ISO C 23, wording has been included that makes this 'long double'
|
||||
+ representation compliant; see ISO C 23 § 5.2.5.3.3.(8)-(9). In this setting,
|
||||
+ numbers with mantissas of the form 1.<52 bits><many zeroes><52 bits> are
|
||||
+ called "unnormalized". And since LDBL_EPSILON must be normalized (per
|
||||
+ ISO C 23 § 5.2.5.3.3.(33)), it must be 2^-105. */
|
||||
+#if defined __powerpc__ && LDBL_MANT_DIG == 106
|
||||
+# undef LDBL_EPSILON
|
||||
+# define LDBL_EPSILON 2.46519032881566189191165176650870696773e-32L /* 2^-105 */
|
||||
+#endif
|
||||
+
|
||||
+/* ============================ ISO C23 support ============================ */
|
||||
+
|
||||
+/* 'long double' properties */
|
||||
+
|
||||
+#ifndef LDBL_NORM_MAX
|
||||
+# ifdef __LDBL_NORM_MAX__
|
||||
+# define LDBL_NORM_MAX __LDBL_NORM_MAX__
|
||||
+# else
|
||||
+# define LDBL_NORM_MAX LDBL_MAX
|
||||
+# endif
|
||||
+#endif
|
||||
+
|
||||
+/* ================================= Other ================================= */
|
||||
+
|
||||
#if @REPLACE_ITOLD@
|
||||
/* Pull in a function that fixes the 'int' to 'long double' conversion
|
||||
of glibc 2.7. */
|
||||
diff '--color=auto' -ruN a/gnulib-tests/Makefile.in b/gnulib-tests/Makefile.in
|
||||
--- a/gnulib-tests/Makefile.in 2024-06-01 18:18:09.000000000 +0200
|
||||
+++ b/gnulib-tests/Makefile.in 2026-01-02 15:56:12.645625323 +0100
|
||||
@@ -1172,7 +1172,7 @@
|
||||
../gl/lib/libgnulib.a libtests.a $(am__DEPENDENCIES_1)
|
||||
test_float_SOURCES = test-float.c
|
||||
test_float_OBJECTS = test-float.$(OBJEXT)
|
||||
-test_float_LDADD = $(LDADD)
|
||||
+test_float_LDADD = $(LDADD) -lm
|
||||
test_float_DEPENDENCIES = libtests.a ../gl/lib/libgnulib.a libtests.a \
|
||||
../gl/lib/libgnulib.a libtests.a $(am__DEPENDENCIES_1)
|
||||
test_fnmatch_SOURCES = test-fnmatch.c
|
||||
diff '--color=auto' -ruN a/gnulib-tests/test-float.c b/gnulib-tests/test-float.c
|
||||
--- a/gnulib-tests/test-float.c 2024-05-27 21:48:37.000000000 +0200
|
||||
+++ b/gnulib-tests/test-float.c 2026-01-02 16:15:21.261123584 +0100
|
||||
@@ -59,6 +59,8 @@
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
+#include <math.h>
|
||||
+
|
||||
#include "fpucw.h"
|
||||
#include "macros.h"
|
||||
|
||||
@@ -295,6 +297,44 @@
|
||||
|
||||
/* -------------------- Check macros for 'long double' -------------------- */
|
||||
|
||||
+static int
|
||||
+test_isfinitel (long double volatile x)
|
||||
+{
|
||||
+ if (x != x)
|
||||
+ return 0;
|
||||
+ long double volatile zero = x * 0;
|
||||
+ return zero == 0;
|
||||
+}
|
||||
+
|
||||
+/* Return X after normalization. This makes a difference on platforms
|
||||
+ where long double can represent unnormalized values. For example,
|
||||
+ suppose x = 1 + 2**-106 on PowerPC with IBM long double where
|
||||
+ FLT_RADIX = 2, LDBL_MANT_DIG = 106, and LDBL_EPSILON = 2**-105.
|
||||
+ Then 1 < x < 1 + LDBL_EPSILON, and normalize_long_double (x) returns 1. */
|
||||
+static long double
|
||||
+normalize_long_double (long double volatile x)
|
||||
+{
|
||||
+ if (FLT_RADIX == 2 && test_isfinitel (x))
|
||||
+ {
|
||||
+ int xexp;
|
||||
+ long double volatile
|
||||
+ frac = frexpl (x, &xexp),
|
||||
+ significand = frac * pow2l (LDBL_MANT_DIG),
|
||||
+ normalized_significand = truncl (significand),
|
||||
+ normalized_x = normalized_significand * pow2l (xexp - LDBL_MANT_DIG);
|
||||
+
|
||||
+ /* The test_isfinitel defends against PowerPC with IBM long double,
|
||||
+ which fritzes out near LDBL_MAX. */
|
||||
+ if (test_isfinitel (normalized_x))
|
||||
+ x = normalized_x;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ /* Hope that X is already normalized. */
|
||||
+ }
|
||||
+ return x;
|
||||
+}
|
||||
+
|
||||
static void
|
||||
test_long_double (void)
|
||||
{
|
||||
@@ -354,11 +394,14 @@
|
||||
for (n = 0; n <= 2 * LDBL_MANT_DIG; n++)
|
||||
{
|
||||
volatile long double half_n = pow2l (- n); /* 2^-n */
|
||||
- volatile long double x = me - half_n;
|
||||
+ volatile long double x = normalize_long_double (me - half_n);
|
||||
if (x < me)
|
||||
ASSERT (x <= 1.0L);
|
||||
}
|
||||
}
|
||||
+
|
||||
+ /* Check the value of LDBL_NORM_MAX. */
|
||||
+ ASSERT (LDBL_NORM_MAX == normalize_long_double (LDBL_MAX));
|
||||
}
|
||||
|
||||
int
|
||||
Reference in New Issue
Block a user