diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 67481034a7ee..da10f1a3139b 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -11855,6 +11855,12 @@ githubId = 13804737; keys = [ { fingerprint = "7FE2 113A A08B 695A C8B8 DDE6 AE53 B4C2 E58E DD45"; } ]; }; + lgbishop = { + email = "lachlan.bishop@hotmail.com"; + github = "lgbishop"; + githubId = 125634066; + name = "Lachlan Bishop"; + }; lgcl = { email = "dev@lgcl.de"; name = "Leon Vack"; diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix index 77365da2b596..5981faab2d1c 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix @@ -29,6 +29,8 @@ lib.packagesFromDirectoryRecursive { tree-sitter-langs = callPackage ./manual-packages/tree-sitter-langs { final = self; }; + zstd = callPackage ./manual-packages/zstd { inherit (pkgs) zstd; }; + # From old emacsPackages (pre emacsPackagesNg) cedille = callPackage ./manual-packages/cedille { inherit (pkgs) cedille; }; diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/zstd/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/zstd/default.nix new file mode 100644 index 000000000000..4dfe2484dbfd --- /dev/null +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/zstd/default.nix @@ -0,0 +1,37 @@ +{ + lib, + melpaBuild, + stdenv, + fetchFromGitHub, + zstd, +}: + +let + libExt = stdenv.hostPlatform.extensions.sharedLibrary; +in +melpaBuild { + pname = "zstd"; + version = "0-unstable-2020-06-03"; + + src = fetchFromGitHub { + owner = "syohex"; + repo = "emacs-zstd"; + rev = "072b264e2cbd5c05be06a1208ebccc2dab44be39"; + hash = "sha256-p8bxefytTOSV6vIG8PAPBXfVKA2rfmWdRtVwjE42mAw="; + }; + + buildInputs = [ zstd ]; + + preBuild = '' + $CC -std=gnu99 -shared -o zstd-core${libExt} zstd-core.c -lzstd + ''; + + files = ''(:defaults "zstd-core${libExt}")''; + + meta = { + homepage = "https://github.com/syohex/emacs-zstd"; + description = "Zstd binding for Emacs Lisp"; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ nagy ]; + }; +} diff --git a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix index 0ea8a7943153..d61d83bb5aaa 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix @@ -364,6 +364,13 @@ let forge = buildWithGit super.forge; + gnuplot = super.gnuplot.overrideAttrs (attrs: { + postPatch = attrs.postPatch or "" + '' + substituteInPlace gnuplot.el \ + --replace-fail 'gnuplot-program "gnuplot"' 'gnuplot-program "${lib.getExe pkgs.gnuplot}"' + ''; + }); + gnuplot-mode = super.gnuplot-mode.overrideAttrs (attrs: { postPatch = attrs.postPatch or "" + '' substituteInPlace gnuplot-mode.el \ diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index 3d58a59a61c4..873b4fd3676c 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -4867,8 +4867,8 @@ let mktplcRef = { name = "uiua-vscode"; publisher = "uiua-lang"; - version = "0.0.53"; - hash = "sha256-5CHAX1jGyJ2VVEBTh5G1JM8+L9paryBa2zJoTkZ+G7Q="; + version = "0.0.54"; + hash = "sha256-oY8z3q4LOLhiTttm9Rtcy/CnhaSHkjyCBjwqYnuNBQA="; }; meta = { description = "VSCode language extension for Uiua"; diff --git a/pkgs/applications/networking/cluster/helm/plugins/helm-diff.nix b/pkgs/applications/networking/cluster/helm/plugins/helm-diff.nix index bc9082351edd..94828973bd1f 100644 --- a/pkgs/applications/networking/cluster/helm/plugins/helm-diff.nix +++ b/pkgs/applications/networking/cluster/helm/plugins/helm-diff.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "helm-diff"; - version = "3.9.10"; + version = "3.9.11"; src = fetchFromGitHub { owner = "databus23"; repo = pname; rev = "v${version}"; - hash = "sha256-umb8f0qCqFVN8K5T441Koyl2pq7VOskDxKCXlqB5UoA="; + hash = "sha256-DwZZi7A6/UsKiFJSgMdo/zqlsRFz9RkFy8+s8RTumXg="; }; - vendorHash = "sha256-pWynrkL/d6TPojeyCJ6RjLNel4qA21UP+jzWnC8DnB8="; + vendorHash = "sha256-3TtUpwg8HLHp/fILH5/qBnMKFmBlALOGSSYoEg3s1h0="; ldflags = [ "-s" "-w" "-X github.com/databus23/helm-diff/v3/cmd.Version=${version}" ]; diff --git a/pkgs/by-name/an/anytype/package.nix b/pkgs/by-name/an/anytype/package.nix index 387681956e51..8c99a0d24be8 100644 --- a/pkgs/by-name/an/anytype/package.nix +++ b/pkgs/by-name/an/anytype/package.nix @@ -1,4 +1,4 @@ -{ lib, fetchurl, appimageTools, makeWrapper }: +{ lib, fetchurl, appimageTools, makeWrapper, commandLineArgs ? "" }: let pname = "anytype"; @@ -17,7 +17,8 @@ in appimageTools.wrapType2 { extraInstallCommands = '' source "${makeWrapper}/nix-support/setup-hook" wrapProgram $out/bin/${pname} \ - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \ + --add-flags ${lib.escapeShellArg commandLineArgs} install -m 444 -D ${appimageContents}/anytype.desktop -t $out/share/applications substituteInPlace $out/share/applications/anytype.desktop \ --replace 'Exec=AppRun' 'Exec=${pname}' diff --git a/pkgs/by-name/co/compose2nix/package.nix b/pkgs/by-name/co/compose2nix/package.nix index 87b875ab33f3..af02f0d7c6da 100644 --- a/pkgs/by-name/co/compose2nix/package.nix +++ b/pkgs/by-name/co/compose2nix/package.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "compose2nix"; - version = "0.2.2"; + version = "0.2.3"; src = fetchFromGitHub { owner = "aksiksi"; repo = "compose2nix"; rev = "v${version}"; - hash = "sha256-2t4pXTzd5TDpAOzNS8MfnE9p8Rm55OPLaEpSPF4/UbE="; + hash = "sha256-qN7MFw6JKBbzwiqURkZ3or/8hT29mRpfITovSHdzDEY="; }; - vendorHash = "sha256-SwJzyOXE23BLoJ+efFuSIhDTMjirEUmBhGGmgrnKhXw="; + vendorHash = "sha256-yGBdsej6DjRMWzS13WyqCLaY5M/N9BrMARAM3oHsc+s="; passthru.tests = { version = testers.testVersion { diff --git a/pkgs/by-name/ui/uiua/package.nix b/pkgs/by-name/ui/uiua/package.nix index 86c238328e3a..a3d6dd08bbab 100644 --- a/pkgs/by-name/ui/uiua/package.nix +++ b/pkgs/by-name/ui/uiua/package.nix @@ -18,16 +18,16 @@ let in rustPlatform.buildRustPackage rec { pname = "uiua"; - version = "0.12.3"; + version = "0.13.0-dev.1"; src = fetchFromGitHub { owner = "uiua-lang"; repo = "uiua"; rev = version; - hash = "sha256-gI+FaiNN7Hql9HMsrl5skJuJDJv/mVarsFqslLXVvLU="; + hash = "sha256-dwiwv24bhn8/WVxrq8uReEPhU/5zn3oaH/AMjNJiA4M="; }; - cargoHash = "sha256-9mdspWwuZ+dLBnhklSqi4Lg2SjJyhhfn5Ax58evtkDA="; + cargoHash = "sha256-4XHKcmOeaeSGfl7uvQQdhm29DBWEdZLX021d9+Ebrww="; nativeBuildInputs = lib.optionals stdenv.isDarwin [ rustPlatform.bindgenHook ] diff --git a/pkgs/by-name/wl/wl-gammarelay-applet/package.nix b/pkgs/by-name/wl/wl-gammarelay-applet/package.nix new file mode 100644 index 000000000000..64388cf0b7be --- /dev/null +++ b/pkgs/by-name/wl/wl-gammarelay-applet/package.nix @@ -0,0 +1,54 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, + stdenv, + wayland, + libxkbcommon, + fontconfig, + pkg-config, + autoPatchelfHook, +}: + +rustPlatform.buildRustPackage { + pname = "wl-gammarelay-applet"; + version = "0.1.4"; + + src = fetchFromGitHub { + owner = "lgbishop"; + repo = "wl-gammarelay-applet"; + rev = "8a0d9e6364d7445fc69c59b2f168cfec91c2fe87"; + sha256 = "sha256-t6bycmaquZ0IMs/WnAzkz5FnIWKIq0BTbeeoUFLeuYg="; + }; + + cargoHash = "sha256-1hJLu/ndnBYdzJ+NjLaCYENFszvAj9MYpLsZyLEq0Sg="; + + nativeBuildInputs = [ + pkg-config + autoPatchelfHook + ]; + + buildInputs = [ + stdenv.cc.cc.lib + ]; + + runtimeDependencies = [ + wayland + libxkbcommon + fontconfig.lib + ]; + + meta = { + description = "Control wl-gammarelay-rs via applet"; + longDescription = '' + wl-gammarelay-applet is a small desktop applet for controlling + wl-gammarelay-rs via DBus. This applet is written in Rust and + provides a Slint UI. + ''; + homepage = "https://github.com/lgbishop/wl-gammarelay-applet"; + mainProgram = "wl-gammarelay-applet"; + license = lib.licenses.mit; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ lgbishop ]; + }; +} diff --git a/pkgs/by-name/zo/zoekt/package.nix b/pkgs/by-name/zo/zoekt/package.nix index afc6e099c0ad..49a4bc5887e9 100644 --- a/pkgs/by-name/zo/zoekt/package.nix +++ b/pkgs/by-name/zo/zoekt/package.nix @@ -7,16 +7,16 @@ buildGoModule { pname = "zoekt"; - version = "0-unstable-2024-09-05"; + version = "3.7.2-2-unstable-2024-09-10"; src = fetchFromGitHub { owner = "sourcegraph"; repo = "zoekt"; - rev = "35dda3e212b7d7fb0df43dcbd88eb7a7b49ad9d8"; - hash = "sha256-YdInCAq7h7iC1sfMekLgxqu3plUHr5Ku6FxyPKluQzw="; + rev = "44eab0c512ef7ff25b09b2c133d4cba3d9850519"; + hash = "sha256-ZQs0JPCEIA1+mxOm/uhu+Ulhb393kE7fBz/zUIcvRRE="; }; - vendorHash = "sha256-GPeMRL5zWVjJVYpFPnB211Gfm/IaqisP1s6RNaLvN6M="; + vendorHash = "sha256-+ayixWCD2e+7Nh9WJmDAloSzp63v9hQYQd8UMuo8qxQ="; nativeCheckInputs = [ git diff --git a/pkgs/development/libraries/wlroots/default.nix b/pkgs/development/libraries/wlroots/default.nix index 9a8d0b299f19..7f6213c7df18 100644 --- a/pkgs/development/libraries/wlroots/default.nix +++ b/pkgs/development/libraries/wlroots/default.nix @@ -137,8 +137,8 @@ rec { }; wlroots_0_18 = generic { - version = "0.18.0"; - hash = "sha256-LiRnvu7qCbfSg+ONWVCtWwdzxxFZHfbgmy7zApCIW40="; + version = "0.18.1"; + hash = "sha256-BlI3EUoGEHdO6IBh99o/Aadct2dd7Xjc4PG0Sv+flqI="; extraNativeBuildInputs = [ hwdata ]; diff --git a/pkgs/development/tools/misc/elfutils/cxx-header-collision.patch b/pkgs/development/tools/misc/elfutils/cxx-header-collision.patch new file mode 100644 index 000000000000..a3442c6aa276 --- /dev/null +++ b/pkgs/development/tools/misc/elfutils/cxx-header-collision.patch @@ -0,0 +1,331 @@ +From: Tristan Ross +Date: Wed, 31 Jul 2024 04:03:03 +0000 (-0700) +Subject: Prevent binaries in src from colliding with libc++ headers +X-Git-Url: https://sourceware.org/git/?p=elfutils.git;a=commitdiff_plain;h=232b9ede92cbecabbd61291c2fc9aaf3fc61061f;hp=87a60d22299c4ba7b94cbce04a32c2abf015f98a + +Prevent binaries in src from colliding with libc++ headers + +Discovered with Nix and LLVM 17. Headers inside of libc++ can easily +collide with binaries being linked in src. This results in clang trying +to include a binary as a header. + +Fix this by removing '-I.' and '-I$(srcdir)' from AM_CPPFLAGS and +DEFAULT_INCLUDES in src/Makefile.am. + +To facilitate this config/eu.am has been refactored. New file +config/eu-common.am contains all of the old eu.am but with the +AM_CPPFLAGS definition removed. eu.am now includes eu-common.am and +contains the old AM_CPPFLAGS definition. + +eu.am functionality does not change, but src/Makefile.am can instead +include eu-common.am and define its own AM_CPPFLAGS without causing a +"multiply defined" warning during autoreconf. + +Signed-off-by: Tristan Ross +--- + +diff --git a/config/eu-common.am b/config/eu-common.am +new file mode 100644 +index 000000000..9cc7f6969 +--- /dev/null ++++ b/config/eu-common.am +@@ -0,0 +1,148 @@ ++## Common automake fragments for elfutils subdirectory makefiles. ++## ++## Copyright (C) 2010, 2014, 2016 Red Hat, Inc. ++## Copyright (C) 2023, Mark J. Wielaard ++## ++## This file is part of elfutils. ++## ++## This file is free software; you can redistribute it and/or modify ++## it under the terms of either ++## ++## * the GNU Lesser General Public License as published by the Free ++## Software Foundation; either version 3 of the License, or (at ++## your option) any later version ++## ++## or ++## ++## * the GNU General Public License as published by the Free ++## Software Foundation; either version 2 of the License, or (at ++## your option) any later version ++## ++## or both in parallel, as here. ++## ++## elfutils is distributed in the hope that it will be useful, but ++## WITHOUT ANY WARRANTY; without even the implied warranty of ++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++## General Public License for more details. ++## ++## You should have received copies of the GNU General Public License and ++## the GNU Lesser General Public License along with this program. If ++## not, see . ++## ++ ++DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' ++ ++# Drop the 'u' flag that automake adds by default. It is incompatible ++# with deterministic archives. ++ARFLAGS = cr ++ ++# Warn about stack usage of more than 256K = 262144 bytes. ++if ADD_STACK_USAGE_WARNING ++STACK_USAGE_WARNING=-Wstack-usage=262144 ++STACK_USAGE_NO_ERROR=-Wno-error=stack-usage= ++else ++STACK_USAGE_WARNING= ++STACK_USAGE_NO_ERROR= ++endif ++ ++if SANE_LOGICAL_OP_WARNING ++LOGICAL_OP_WARNING=-Wlogical-op ++else ++LOGICAL_OP_WARNING= ++endif ++ ++if HAVE_DUPLICATED_COND_WARNING ++DUPLICATED_COND_WARNING=-Wduplicated-cond ++else ++DUPLICATED_COND_WARNING= ++endif ++ ++if HAVE_NULL_DEREFERENCE_WARNING ++NULL_DEREFERENCE_WARNING=-Wnull-dereference ++else ++NULL_DEREFERENCE_WARNING= ++endif ++ ++if HAVE_IMPLICIT_FALLTHROUGH_WARNING ++# Use strict fallthrough. Only __attribute__((fallthrough)) will prevent the ++# warning ++if HAVE_IMPLICIT_FALLTHROUGH_5_WARNING ++IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough=5 ++else ++IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough ++endif ++else ++IMPLICIT_FALLTHROUGH_WARNING= ++endif ++ ++if HAVE_TRAMPOLINES_WARNING ++TRAMPOLINES_WARNING=-Wtrampolines ++else ++TRAMPOLINES_WARNING= ++endif ++ ++if HAVE_NO_PACKED_NOT_ALIGNED_WARNING ++NO_PACKED_NOT_ALIGNED_WARNING=-Wno-packed-not-aligned ++else ++NO_PACKED_NOT_ALIGNED_WARNING= ++endif ++ ++if HAVE_USE_AFTER_FREE3_WARNING ++USE_AFTER_FREE3_WARNING=-Wuse-after-free=3 ++else ++USE_AFTER_FREE3_WARNING= ++endif ++ ++AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ ++ -Wold-style-definition -Wstrict-prototypes $(TRAMPOLINES_WARNING) \ ++ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ ++ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ ++ $(USE_AFTER_FREE3_WARNING) \ ++ $(if $($(*F)_no_Werror),,-Werror) \ ++ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ ++ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ ++ $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ ++ $($(*F)_CFLAGS) ++ ++AM_CXXFLAGS = -std=c++11 -Wall -Wshadow \ ++ $(TRAMPOLINES_WARNING) \ ++ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ ++ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ ++ $(if $($(*F)_no_Werror),,-Werror) \ ++ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ ++ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ ++ $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ ++ $($(*F)_CXXFLAGS) ++ ++COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) ++ ++DEFS.os = -DPIC -DSHARED ++if SYMBOL_VERSIONING ++DEFS.os += -DSYMBOL_VERSIONING ++else ++endif ++ ++%.os: %.c %.o ++if AMDEP ++ $(AM_V_CC)if $(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) -MT $@ -MD -MP \ ++ -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \ ++ then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \ ++ rm -f "$(DEPDIR)/$*.Tpo"; \ ++ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ ++ fi ++else ++ $(AM_V_CC)$(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) $< ++endif ++ ++CLEANFILES = *.gcno *.gcda ++ ++textrel_msg = echo "WARNING: TEXTREL found in '$@'" ++if FATAL_TEXTREL ++textrel_found = $(textrel_msg); exit 1 ++else ++textrel_found = $(textrel_msg) ++endif ++textrel_check = if $(READELF) -d $@ | grep -F -q TEXTREL; then $(textrel_found); fi ++ ++print-%: ++ @echo $*=$($*) +diff --git a/config/eu.am b/config/eu.am +index e6c241f9d..3aa6048aa 100644 +--- a/config/eu.am ++++ b/config/eu.am +@@ -1,4 +1,5 @@ +-## Common automake fragments for elfutils subdirectory makefiles. ++## Common automake fragments for elfutils subdirectory makefiles ++## with AM_CPPFLAGS set. + ## + ## Copyright (C) 2010, 2014, 2016 Red Hat, Inc. + ## Copyright (C) 2023, Mark J. Wielaard +@@ -30,120 +31,5 @@ + ## not, see . + ## + +-DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' + AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. +- +-# Drop the 'u' flag that automake adds by default. It is incompatible +-# with deterministic archives. +-ARFLAGS = cr +- +-# Warn about stack usage of more than 256K = 262144 bytes. +-if ADD_STACK_USAGE_WARNING +-STACK_USAGE_WARNING=-Wstack-usage=262144 +-STACK_USAGE_NO_ERROR=-Wno-error=stack-usage= +-else +-STACK_USAGE_WARNING= +-STACK_USAGE_NO_ERROR= +-endif +- +-if SANE_LOGICAL_OP_WARNING +-LOGICAL_OP_WARNING=-Wlogical-op +-else +-LOGICAL_OP_WARNING= +-endif +- +-if HAVE_DUPLICATED_COND_WARNING +-DUPLICATED_COND_WARNING=-Wduplicated-cond +-else +-DUPLICATED_COND_WARNING= +-endif +- +-if HAVE_NULL_DEREFERENCE_WARNING +-NULL_DEREFERENCE_WARNING=-Wnull-dereference +-else +-NULL_DEREFERENCE_WARNING= +-endif +- +-if HAVE_IMPLICIT_FALLTHROUGH_WARNING +-# Use strict fallthrough. Only __attribute__((fallthrough)) will prevent the +-# warning +-if HAVE_IMPLICIT_FALLTHROUGH_5_WARNING +-IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough=5 +-else +-IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough +-endif +-else +-IMPLICIT_FALLTHROUGH_WARNING= +-endif +- +-if HAVE_TRAMPOLINES_WARNING +-TRAMPOLINES_WARNING=-Wtrampolines +-else +-TRAMPOLINES_WARNING= +-endif +- +-if HAVE_NO_PACKED_NOT_ALIGNED_WARNING +-NO_PACKED_NOT_ALIGNED_WARNING=-Wno-packed-not-aligned +-else +-NO_PACKED_NOT_ALIGNED_WARNING= +-endif +- +-if HAVE_USE_AFTER_FREE3_WARNING +-USE_AFTER_FREE3_WARNING=-Wuse-after-free=3 +-else +-USE_AFTER_FREE3_WARNING= +-endif +- +-AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ +- -Wold-style-definition -Wstrict-prototypes $(TRAMPOLINES_WARNING) \ +- $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ +- $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ +- $(USE_AFTER_FREE3_WARNING) \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ +- $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ +- $($(*F)_CFLAGS) +- +-AM_CXXFLAGS = -std=c++11 -Wall -Wshadow \ +- $(TRAMPOLINES_WARNING) \ +- $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ +- $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ +- $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ +- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ +- $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ +- $($(*F)_CXXFLAGS) +- +-COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) +- +-DEFS.os = -DPIC -DSHARED +-if SYMBOL_VERSIONING +-DEFS.os += -DSYMBOL_VERSIONING +-else +-endif +- +-%.os: %.c %.o +-if AMDEP +- $(AM_V_CC)if $(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) -MT $@ -MD -MP \ +- -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \ +- then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \ +- rm -f "$(DEPDIR)/$*.Tpo"; \ +- else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ +- fi +-else +- $(AM_V_CC)$(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) $< +-endif +- +-CLEANFILES = *.gcno *.gcda +- +-textrel_msg = echo "WARNING: TEXTREL found in '$@'" +-if FATAL_TEXTREL +-textrel_found = $(textrel_msg); exit 1 +-else +-textrel_found = $(textrel_msg) +-endif +-textrel_check = if $(READELF) -d $@ | grep -F -q TEXTREL; then $(textrel_found); fi +- +-print-%: +- @echo $*=$($*) ++include $(top_srcdir)/config/eu-common.am +diff --git a/src/Makefile.am b/src/Makefile.am +index 1d592d4de..5fcebc21d 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -16,10 +16,12 @@ + ## You should have received a copy of the GNU General Public License + ## along with this program. If not, see . + ## +-include $(top_srcdir)/config/eu.am ++include $(top_srcdir)/config/eu-common.am + DEFS += $(YYDEBUG) -DDEBUGPRED=@DEBUGPRED@ \ + -DSRCDIR=\"$(shell cd $(srcdir);pwd)\" -DOBJDIR=\"$(shell pwd)\" +-AM_CPPFLAGS += -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ ++DEFAULT_INCLUDES = -I$(top_builddir) ++AM_CPPFLAGS = -I$(top_srcdir)/lib -I.. \ ++ -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ + -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf \ + -I$(srcdir)/../libdwfl -I$(srcdir)/../libasm -I../debuginfod diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix index 7aca041b3c00..c2c1109e2e06 100644 --- a/pkgs/development/tools/misc/elfutils/default.nix +++ b/pkgs/development/tools/misc/elfutils/default.nix @@ -2,7 +2,7 @@ , musl-obstack, m4, zlib, zstd, bzip2, bison, flex, gettext, xz, setupDebugInfoDirs , argp-standalone , enableDebuginfod ? lib.meta.availableOn stdenv.hostPlatform libarchive, sqlite, curl, libmicrohttpd, libarchive -, gitUpdater +, gitUpdater, autoreconfHook }: # TODO: Look at the hardcoded paths to kernel, modules etc. @@ -37,7 +37,10 @@ stdenv.mkDerivation rec { url = "https://git.alpinelinux.org/aports/plain/main/elfutils/musl-strndupa.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; sha256 = "sha256-7daehJj1t0wPtQzTv+/Rpuqqs5Ng/EYnZzrcf2o/Lb0="; }) - ] ++ lib.optionals stdenv.hostPlatform.isMusl [ ./musl-error_h.patch ]; + ] ++ lib.optionals stdenv.hostPlatform.isMusl [ ./musl-error_h.patch ] + # Prevent headers and binaries from colliding which results in an error. + # https://sourceware.org/pipermail/elfutils-devel/2024q3/007281.html + ++ lib.optional (stdenv.targetPlatform.useLLVM or false) ./cxx-header-collision.patch; postPatch = '' patchShebangs tests/*.sh @@ -53,7 +56,8 @@ stdenv.mkDerivation rec { # We need bzip2 in NativeInputs because otherwise we can't unpack the src, # as the host-bzip2 will be in the path. nativeBuildInputs = [ m4 bison flex gettext bzip2 ] - ++ lib.optional enableDebuginfod pkg-config; + ++ lib.optional enableDebuginfod pkg-config + ++ lib.optional (stdenv.targetPlatform.useLLVM or false) autoreconfHook; buildInputs = [ zlib zstd bzip2 xz ] ++ lib.optionals stdenv.hostPlatform.isMusl [ argp-standalone diff --git a/pkgs/tools/package-management/nix/common.nix b/pkgs/tools/package-management/nix/common.nix index 58923e44b48d..a6f9f3c5b594 100644 --- a/pkgs/tools/package-management/nix/common.nix +++ b/pkgs/tools/package-management/nix/common.nix @@ -263,14 +263,6 @@ self = stdenv.mkDerivation { perl-bindings = perl.pkgs.toPerlModule (callPackage ./nix-perl.nix { nix = self; inherit Security; }); tests = { - nixi686 = pkgsi686Linux.nixVersions.${self_attribute_name}; - nixStatic = pkgsStatic.nixVersions.${self_attribute_name}; - - # Basic smoke test that needs to pass when upgrading nix. - # Note that this test does only test the nixVersions.stable attribute. - misc = nixosTests.nix-misc.default; - upgrade = nixosTests.nix-upgrade; - srcVersion = runCommand "nix-src-version" { inherit version; } '' @@ -291,6 +283,16 @@ self = stdenv.mkDerivation { inherit lib pkgs; nix = self; }; + } // lib.optionalAttrs stdenv.isLinux { + nixStatic = pkgsStatic.nixVersions.${self_attribute_name}; + + # Basic smoke tests that needs to pass when upgrading nix. + # Note that this test does only test the nixVersions.stable attribute. + misc = nixosTests.nix-misc.default; + upgrade = nixosTests.nix-upgrade; + simpleUefiSystemdBoot = nixosTests.installer.simpleUefiSystemdBoot; + } // lib.optionalAttrs (stdenv.hostPlatform.system == "x86_64-linux") { + nixi686 = pkgsi686Linux.nixVersions.${self_attribute_name}; }; };