Skip to content

Instantly share code, notes, and snippets.

@colemickens
Created November 28, 2020 19:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save colemickens/d473846709dab727b6e48b2c3dd3c5dc to your computer and use it in GitHub Desktop.
Save colemickens/d473846709dab727b6e48b2c3dd3c5dc to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
 nix-archive-1(typeregularcontents Derive([("out","/nix/store/lan2w3ab1mvpxj3ppiw2sizh8i7rpz7s-busybox","r:sha256","ef4c1be6c7ae57e4f654efd90ae2d2e204d6769364c46469fa9ff3761195cba1")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable","1"),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","busybox"),("out","/nix/store/lan2w3ab1mvpxj3ppiw2sizh8i7rpz7s-busybox"),("outputHash","ef4c1be6c7ae57e4f654efd90ae2d2e204d6769364c46469fa9ff3761195cba1"),("outputHashAlgo","sha256"),("outputHashMode","recursive"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://tarballs.nixos.org/stdenv-linux/i686/4907fc9e8d0d82b28b3c56e3a478a2882f1d700f/busybox"),("urls","http://tarballs.nixos.org/stdenv-linux/i686/4907fc9e8d0d82b28b3c56e3a478a2882f1d700f/busybox")]))NIXE7/nix/store/b7irlwi2wjlx5aj1dghx4c8k3ax6m56q-busybox.drv nix-archive-1(typeregularcontentsgDerive([("out","/nix/store/cijs9ypwccmdfjhkq9a35nin7qizg6jm-bootstrap-tools.tar.xz","sha256","a5ce9c155ed09397614646c9717fc7cd94b1023d7b76b618d409e4fefd6e9d39")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bootstrap-tools.tar.xz"),("out","/nix/store/cijs9ypwccmdfjhkq9a35nin7qizg6jm-bootstrap-tools.tar.xz"),("outputHash","a5ce9c155ed09397614646c9717fc7cd94b1023d7b76b618d409e4fefd6e9d39"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://tarballs.nixos.org/stdenv-linux/x86_64/c5aabb0d603e2c1ea05f5a93b3be82437f5ebf31/bootstrap-tools.tar.xz"),("urls","http://tarballs.nixos.org/stdenv-linux/x86_64/c5aabb0d603e2c1ea05f5a93b3be82437f5ebf31/bootstrap-tools.tar.xz")]))NIXEF/nix/store/bzq60ip2z5xgi7jk6jgdw8cngfiwjrcm-bootstrap-tools.tar.xz.drv nix-archive-1(typeregularcontents�# Unpack the bootstrap tools tarball.
echo Unpacking the bootstrap tools...
$builder mkdir $out
< $tarball $builder unxz | $builder tar x -C $out
# Set the ELF interpreter / RPATH in the bootstrap binaries.
echo Patching the bootstrap tools...
if test -f $out/lib/ld.so.?; then
# MIPS case
LD_BINARY=$out/lib/ld.so.?
elif test -f $out/lib/ld64.so.?; then
# ppc64(le)
LD_BINARY=$out/lib/ld64.so.?
else
# i686, x86_64 and armv5tel
LD_BINARY=$out/lib/ld-*so.?
fi
# On x86_64, ld-linux-x86-64.so.2 barfs on patchelf'ed programs. So
# use a copy of patchelf.
LD_LIBRARY_PATH=$out/lib $LD_BINARY $out/bin/cp $out/bin/patchelf .
for i in $out/bin/* $out/libexec/gcc/*/*/*; do
if [ -L "$i" ]; then continue; fi
if [ -z "${i##*/liblto*}" ]; then continue; fi
echo patching "$i"
LD_LIBRARY_PATH=$out/lib $LD_BINARY \
./patchelf --set-interpreter $LD_BINARY --set-rpath $out/lib --force-rpath "$i"
done
for i in $out/lib/librt-*.so $out/lib/libpcre*; do
if [ -L "$i" ]; then continue; fi
echo patching "$i"
$out/bin/patchelf --set-rpath $out/lib --force-rpath "$i"
done
export PATH=$out/bin
# Provide some additional symlinks.
ln -s bash $out/bin/sh
ln -s bzip2 $out/bin/bunzip2
# Provide a gunzip script.
cat > $out/bin/gunzip <<EOF
#!$out/bin/sh
exec $out/bin/gzip -d "\$@"
EOF
chmod +x $out/bin/gunzip
# Provide fgrep/egrep.
echo "#! $out/bin/sh" > $out/bin/egrep
echo "exec $out/bin/grep -E \"\$@\"" >> $out/bin/egrep
echo "#! $out/bin/sh" > $out/bin/fgrep
echo "exec $out/bin/grep -F \"\$@\"" >> $out/bin/fgrep
# Provide xz (actually only xz -d will work).
echo "#! $out/bin/sh" > $out/bin/xz
echo "exec $builder unxz \"\$@\"" >> $out/bin/xz
chmod +x $out/bin/egrep $out/bin/fgrep $out/bin/xz
)NIXEE/nix/store/wzdwpgqf2384hr2npma78mqillg5lv08-unpack-bootstrap-tools.sh nix-archive-1(typeregularcontents Derive([("out","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools","","")],[("/nix/store/b7irlwi2wjlx5aj1dghx4c8k3ax6m56q-busybox.drv",["out"]),("/nix/store/bzq60ip2z5xgi7jk6jgdw8cngfiwjrcm-bootstrap-tools.tar.xz.drv",["out"])],["/nix/store/wzdwpgqf2384hr2npma78mqillg5lv08-unpack-bootstrap-tools.sh"],"x86_64-linux","/nix/store/lan2w3ab1mvpxj3ppiw2sizh8i7rpz7s-busybox",["ash","-e","/nix/store/wzdwpgqf2384hr2npma78mqillg5lv08-unpack-bootstrap-tools.sh"],[("builder","/nix/store/lan2w3ab1mvpxj3ppiw2sizh8i7rpz7s-busybox"),("isGNU","1"),("langC","1"),("langCC","1"),("name","bootstrap-tools"),("out","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("system","x86_64-linux"),("tarball","/nix/store/cijs9ypwccmdfjhkq9a35nin7qizg6jm-bootstrap-tools.tar.xz")]))NIXE?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv7/nix/store/b7irlwi2wjlx5aj1dghx4c8k3ax6m56q-busybox.drvF/nix/store/bzq60ip2z5xgi7jk6jgdw8cngfiwjrcm-bootstrap-tools.tar.xz.drvE/nix/store/wzdwpgqf2384hr2npma78mqillg5lv08-unpack-bootstrap-tools.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2","sha256","5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","xz-5.2.5.tar.bz2"),("out","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2"),("outputHash","1ps2i8i212n0f4xpq6clp7h13q7m1y8slqvxha9i8d0bj0qgj5si"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://tukaani.org/xz/xz-5.2.5.tar.bz2"),("urls","https://tukaani.org/xz/xz-5.2.5.tar.bz2")]))NIXE@/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv nix-archive-1(typeregularcontents"source $stdenv/setup
genericBuild
)NIXE>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh nix-archive-1(typeregularcontents�# This setup hook calls patchelf to automatically remove unneeded
# directories from the RPATH of every library or executable in every
# output.
fixupOutputHooks+=('if [ -z "${dontPatchELF-}" ]; then patchELF "$prefix"; fi')
patchELF() {
local dir="$1"
[ -e "$dir" ] || return 0
header "shrinking RPATHs of ELF executables and libraries in $dir"
local i
while IFS= read -r -d $'\0' i; do
if [[ "$i" =~ .build-id ]]; then continue; fi
if ! isELF "$i"; then continue; fi
echo "shrinking $i"
patchelf --shrink-rpath "$i" || true
done < <(find "$dir" -type f -print0)
stopNest
}
)NIXE9/nix/store/03f77phmfdmsbfpcc6mspjfff3yc9fdj-setup-hook.sh nix-archive-1(typeregularcontentsDerive([("out","/nix/store/vfzd71kq2aa2i65wy3lpqc6gv3v6rjj7-patchelf-0.12.tar.bz2","sha256","699a31cf52211cf5ad6e35a8801eb637bc7f3c43117140426400d67b7babd792")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","patchelf-0.12.tar.bz2"),("out","/nix/store/vfzd71kq2aa2i65wy3lpqc6gv3v6rjj7-patchelf-0.12.tar.bz2"),("outputHash","14npmdxppmh0ci140w8i8cy7zg1pnqg81a1mdsnza711ab7k36k9"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://github.com/NixOS/patchelf/releases/download/0.12/patchelf-0.12.tar.bz2"),("urls","https://github.com/NixOS/patchelf/releases/download/0.12/patchelf-0.12.tar.bz2")]))NIXEE/nix/store/b550kvx7kg32hkxxf826bsl0nikhxr01-patchelf-0.12.tar.bz2.drv nix-archive-1(typeregularcontents�# The base package for automatic multiple-output splitting. Used in stdenv as well.
preConfigureHooks+=(_multioutConfig)
preFixupHooks+=(_multioutDocs)
preFixupHooks+=(_multioutDevs)
postFixupHooks+=(_multioutPropagateDev)
# Assign the first string containing nonempty variable to the variable named $1
_assignFirst() {
local varName="$1"
local REMOVE=REMOVE # slightly hacky - we allow REMOVE (i.e. not a variable name)
shift
while (( $# )); do
if [ -n "${!1-}" ]; then eval "${varName}"="$1"; return; fi
shift
done
echo "Error: _assignFirst found no valid variant!"
return 1 # none found
}
# Same as _assignFirst, but only if "$1" = ""
_overrideFirst() {
if [ -z "${!1-}" ]; then
_assignFirst "$@"
fi
}
# Setup chains of sane default values with easy overridability.
# The variables are global to be usable anywhere during the build.
# Typical usage in package is defining outputBin = "dev";
_overrideFirst outputDev "dev" "out"
_overrideFirst outputBin "bin" "out"
_overrideFirst outputInclude "$outputDev"
# so-libs are often among the main things to keep, and so go to $out
_overrideFirst outputLib "lib" "out"
_overrideFirst outputDoc "doc" "out"
_overrideFirst outputDevdoc "devdoc" REMOVE # documentation for developers
# man and info pages are small and often useful to distribute with binaries
_overrideFirst outputMan "man" "$outputBin"
_overrideFirst outputDevman "devman" "devdoc" "$outputMan"
_overrideFirst outputInfo "info" "$outputBin"
# Add standard flags to put files into the desired outputs.
_multioutConfig() {
if [ "$outputs" = "out" ] || [ -z "${setOutputFlags-1}" ]; then return; fi;
# try to detect share/doc/${shareDocName}
# Note: sadly, $configureScript detection comes later in configurePhase,
# and reordering would cause more trouble than worth.
if [ -z "$shareDocName" ]; then
local confScript="$configureScript"
if [ -z "$confScript" ] && [ -x ./configure ]; then
confScript=./configure
fi
if [ -f "$confScript" ]; then
local shareDocName="$(sed -n "s/^PACKAGE_TARNAME='\(.*\)'$/\1/p" < "$confScript")"
fi
# PACKAGE_TARNAME sometimes contains garbage.
if [ -z "$shareDocName" ] || echo "$shareDocName" | grep -q '[^a-zA-Z0-9_-]'; then
shareDocName="$(echo "$name" | sed 's/-[^a-zA-Z].*//')"
fi
fi
configureFlags="\
--bindir=${!outputBin}/bin --sbindir=${!outputBin}/sbin \
--includedir=${!outputInclude}/include --oldincludedir=${!outputInclude}/include \
--mandir=${!outputMan}/share/man --infodir=${!outputInfo}/share/info \
--docdir=${!outputDoc}/share/doc/${shareDocName} \
--libdir=${!outputLib}/lib --libexecdir=${!outputLib}/libexec \
--localedir=${!outputLib}/share/locale \
$configureFlags"
installFlags="\
pkgconfigdir=${!outputDev}/lib/pkgconfig \
m4datadir=${!outputDev}/share/aclocal aclocaldir=${!outputDev}/share/aclocal \
$installFlags"
}
# Add rpath prefixes to library paths, and avoid stdenv doing it for $out.
_addRpathPrefix "${!outputLib}"
NIX_NO_SELF_RPATH=1
# Move subpaths that match pattern $1 from under any output/ to the $2 output/
# Beware: only globbing patterns are accepted, e.g.: * ? {foo,bar}
# A special target "REMOVE" is allowed: moveToOutput foo REMOVE
moveToOutput() {
local patt="$1"
local dstOut="$2"
local output
for output in $outputs; do
if [ "${!output}" = "$dstOut" ]; then continue; fi
local srcPath
for srcPath in "${!output}"/$patt; do
# apply to existing files/dirs, *including* broken symlinks
if [ ! -e "$srcPath" ] && [ ! -L "$srcPath" ]; then continue; fi
if [ "$dstOut" = REMOVE ]; then
echo "Removing $srcPath"
rm -r "$srcPath"
else
local dstPath="$dstOut${srcPath#${!output}}"
echo "Moving $srcPath to $dstPath"
if [ -d "$dstPath" ] && [ -d "$srcPath" ]
then # attempt directory merge
# check the case of trying to move an empty directory
rmdir "$srcPath" --ignore-fail-on-non-empty
if [ -d "$srcPath" ]; then
mv -t "$dstPath" "$srcPath"/*
rmdir "$srcPath"
fi
else # usual move
mkdir -p "$(readlink -m "$dstPath/..")"
mv "$srcPath" "$dstPath"
fi
fi
# remove empty directories, printing iff at least one gets removed
local srcParent="$(readlink -m "$srcPath/..")"
if rmdir "$srcParent"; then
echo "Removing empty $srcParent/ and (possibly) its parents"
rmdir -p --ignore-fail-on-non-empty "$(readlink -m "$srcParent/..")" \
2> /dev/null || true # doesn't ignore failure for some reason
fi
done
done
}
# Move documentation to the desired outputs.
_multioutDocs() {
local REMOVE=REMOVE # slightly hacky - we expand ${!outputFoo}
moveToOutput share/info "${!outputInfo}"
moveToOutput share/doc "${!outputDoc}"
moveToOutput share/gtk-doc "${!outputDevdoc}"
moveToOutput share/devhelp/books "${!outputDevdoc}"
# the default outputMan is in $bin
moveToOutput share/man "${!outputMan}"
moveToOutput share/man/man3 "${!outputDevman}"
}
# Move development-only stuff to the desired outputs.
_multioutDevs() {
if [ "$outputs" = "out" ] || [ -z "${moveToDev-1}" ]; then return; fi;
moveToOutput include "${!outputInclude}"
# these files are sometimes provided even without using the corresponding tool
moveToOutput lib/pkgconfig "${!outputDev}"
moveToOutput share/pkgconfig "${!outputDev}"
moveToOutput lib/cmake "${!outputDev}"
moveToOutput share/aclocal "${!outputDev}"
# don't move *.la, as libtool needs them in the directory of the library
for f in "${!outputDev}"/{lib,share}/pkgconfig/*.pc; do
echo "Patching '$f' includedir to output ${!outputInclude}"
sed -i "/^includedir=/s,=\${prefix},=${!outputInclude}," "$f"
done
}
# Make the "dev" propagate other outputs needed for development.
_multioutPropagateDev() {
if [ "$outputs" = "out" ]; then return; fi;
local outputFirst
for outputFirst in $outputs; do
break
done
local propagaterOutput="$outputDev"
if [ -z "$propagaterOutput" ]; then
propagaterOutput="$outputFirst"
fi
# Default value: propagate binaries, includes and libraries
if [ -z "${propagatedBuildOutputs+1}" ]; then
local po_dirty="$outputBin $outputInclude $outputLib"
set +o pipefail
propagatedBuildOutputs=`echo "$po_dirty" \
| tr -s ' ' '\n' | grep -v -F "$propagaterOutput" \
| sort -u | tr '\n' ' ' `
set -o pipefail
fi
# The variable was explicitly set to empty or we resolved it so
if [ -z "$propagatedBuildOutputs" ]; then
return
fi
mkdir -p "${!propagaterOutput}"/nix-support
for output in $propagatedBuildOutputs; do
echo -n " ${!output}" >> "${!propagaterOutput}"/nix-support/propagated-build-inputs
done
}
)NIXE?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh nix-archive-1(typeregularcontents�# This setup hook strips libraries and executables in the fixup phase.
fixupOutputHooks+=(_doStrip)
_doStrip() {
# We don't bother to strip build platform code because it shouldn't make it
# to $out anyways---if it does, that's a bigger problem that a lack of
# stripping will help catch.
local -ra flags=(dontStripHost dontStripTarget)
local -ra stripCmds=(STRIP TARGET_STRIP)
# Optimization
if [[ "${STRIP-}" == "${TARGET_STRIP-}" ]]; then
dontStripTarget+=1
fi
local i
for i in ${!stripCmds[@]}; do
local -n flag="${flags[$i]}"
local -n stripCmd="${stripCmds[$i]}"
# `dontStrip` disables them all
if [[ "${dontStrip-}" || "${flag-}" ]] || ! type -f "${stripCmd-}" 2>/dev/null
then continue; fi
stripDebugList=${stripDebugList:-lib lib32 lib64 libexec bin sbin}
if [ -n "$stripDebugList" ]; then
stripDirs "$stripCmd" "$stripDebugList" "${stripDebugFlags:--S}"
fi
stripAllList=${stripAllList:-}
if [ -n "$stripAllList" ]; then
stripDirs "$stripCmd" "$stripAllList" "${stripAllFlags:--s}"
fi
done
}
stripDirs() {
local cmd="$1"
local dirs="$2"
local stripFlags="$3"
local dirsNew=
local d
for d in ${dirs}; do
if [ -d "$prefix/$d" ]; then
dirsNew="${dirsNew} $prefix/$d "
fi
done
dirs=${dirsNew}
if [ -n "${dirs}" ]; then
header "stripping (with command $cmd and flags $stripFlags) in$dirs"
find $dirs -type f -print0 | xargs -0 ${xargsFlags:--r} $cmd $commonStripFlags $stripFlags 2>/dev/null || true
stopNest
fi
}
)NIXE4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh nix-archive-1(typeregularcontents'# This setup hook causes the fixup phase to rewrite all script
# interpreter file names (`#! /path') to paths found in $PATH. E.g.,
# /bin/sh will be rewritten to /nix/store/<hash>-some-bash/bin/sh.
# /usr/bin/env gets special treatment so that ".../bin/env python" is
# rewritten to /nix/store/<hash>/bin/python. Interpreters that are
# already in the store are left untouched.
# A script file must be marked as executable, otherwise it will not be
# considered.
fixupOutputHooks+=(patchShebangsAuto)
# Run patch shebangs on a directory or file.
# Can take multiple paths as arguments.
# patchShebangs [--build | --host] PATH...
# Flags:
# --build : Lookup commands available at build-time
# --host : Lookup commands available at runtime
# Example use cases,
# $ patchShebangs --host /nix/store/...-hello-1.0/bin
# $ patchShebangs --build configure
patchShebangs() {
local pathName
if [ "$1" = "--host" ]; then
pathName=HOST_PATH
shift
elif [ "$1" = "--build" ]; then
pathName=PATH
shift
fi
echo "patching script interpreter paths in $@"
local f
local oldPath
local newPath
local arg0
local args
local oldInterpreterLine
local newInterpreterLine
if [ $# -eq 0 ]; then
echo "No arguments supplied to patchShebangs" >&2
return 0
fi
local f
while IFS= read -r -d $'\0' f; do
isScript "$f" || continue
oldInterpreterLine=$(head -1 "$f" | tail -c+3)
read -r oldPath arg0 args <<< "$oldInterpreterLine"
if [ -z "$pathName" ]; then
if [ -n "$strictDeps" ] && [[ "$f" = "$NIX_STORE"* ]]; then
pathName=HOST_PATH
else
pathName=PATH
fi
fi
if $(echo "$oldPath" | grep -q "/bin/env$"); then
# Check for unsupported 'env' functionality:
# - options: something starting with a '-'
# - environment variables: foo=bar
if $(echo "$arg0" | grep -q -- "^-.*\|.*=.*"); then
echo "$f: unsupported interpreter directive \"$oldInterpreterLine\" (set dontPatchShebangs=1 and handle shebang patching yourself)" >&2
exit 1
fi
newPath="$(PATH="${!pathName}" command -v "$arg0" || true)"
else
if [ "$oldPath" = "" ]; then
# If no interpreter is specified linux will use /bin/sh. Set
# oldpath="/bin/sh" so that we get /nix/store/.../sh.
oldPath="/bin/sh"
fi
newPath="$(PATH="${!pathName}" command -v "$(basename "$oldPath")" || true)"
args="$arg0 $args"
fi
# Strip trailing whitespace introduced when no arguments are present
newInterpreterLine="$(echo "$newPath $args" | sed 's/[[:space:]]*$//')"
if [ -n "$oldPath" -a "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ]; then
if [ -n "$newPath" -a "$newPath" != "$oldPath" ]; then
echo "$f: interpreter directive changed from \"$oldInterpreterLine\" to \"$newInterpreterLine\""
# escape the escape chars so that sed doesn't interpret them
escapedInterpreterLine=$(echo "$newInterpreterLine" | sed 's|\\|\\\\|g')
# Preserve times, see: https://github.com/NixOS/nixpkgs/pull/33281
timestamp=$(mktemp)
touch -r "$f" "$timestamp"
sed -i -e "1 s|.*|#\!$escapedInterpreterLine|" "$f"
touch -r "$timestamp" "$f"
rm "$timestamp"
fi
fi
done < <(find "$@" -type f -perm -0100 -print0)
stopNest
}
patchShebangsAuto () {
if [ -z "${dontPatchShebangs-}" -a -e "$prefix" ]; then
# Dev output will end up being run on the build platform. An
# example case of this is sdl2-config. Otherwise, we can just
# use the runtime path (--host).
if [ "$output" != out ] && [ "$output" = "$outputDev" ]; then
patchShebangs --build "$prefix"
else
patchShebangs --host "$prefix"
fi
fi
}
)NIXE=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh nix-archive-1(typeregularcontents�# Check whether RPATHs or wrapper scripts contain references to
# $TMPDIR. This is a serious security bug because it allows any user
# to inject files into search paths of other users' processes.
#
# It might be better to have Nix scan build output for any occurrence
# of $TMPDIR (which would also be good for reproducibility), but at
# the moment that would produce too many spurious errors (e.g. debug
# info or assertion messages that refer to $TMPDIR).
fixupOutputHooks+=('if [[ -z "${noAuditTmpdir-}" && -e "$prefix" ]]; then auditTmpdir "$prefix"; fi')
auditTmpdir() {
local dir="$1"
[ -e "$dir" ] || return 0
header "checking for references to $TMPDIR/ in $dir..."
local i
while IFS= read -r -d $'\0' i; do
if [[ "$i" =~ .build-id ]]; then continue; fi
if isELF "$i"; then
if { printf :; patchelf --print-rpath "$i"; } | grep -q -F ":$TMPDIR/"; then
echo "RPATH of binary $i contains a forbidden reference to $TMPDIR/"
exit 1
fi
fi
if isScript "$i"; then
if [ -e "$(dirname "$i")/.$(basename "$i")-wrapped" ]; then
if grep -q -F "$TMPDIR/" "$i"; then
echo "wrapper script $i contains a forbidden reference to $TMPDIR/"
exit 1
fi
fi
fi
done < <(find "$dir" -type f -print0)
stopNest
}
)NIXE;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh nix-archive-1(typeregular
executablecontents�#!/usr/bin/env bash
# This setup hook, for each output, moves everything in
# $output/lib/systemd/user to $output/share/systemd/user, and replaces
# $output/lib/systemd/user with a symlink to
# $output/share/systemd/user.
fixupOutputHooks+=(_moveSystemdUserUnits)
_moveSystemdUserUnits() {
if [ "${dontMoveSystemdUserUnits:-0}" = 1 ]; then return; fi
if [ ! -e "${prefix:?}/lib/systemd/user" ]; then return; fi
local source="$prefix/lib/systemd/user"
local target="$prefix/share/systemd/user"
echo "moving $source/* to $target"
mkdir -p "$target"
(
shopt -s dotglob
for i in "$source"/*; do
mv "$i" "$target"
done
)
rmdir "$source"
ln -s "$target" "$source"
}
)NIXEF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh nix-archive-1(typeregularcontents�# Clear dependency_libs in libtool files for shared libraries.
# Shared libraries already encode their dependencies with locations. .la
# files do not always encode those locations, and sometimes encode the
# locations in the wrong Nix output. .la files are not needed for shared
# libraries, but without dependency_libs they do not hurt either.
fixupOutputHooks+=(_pruneLibtoolFiles)
_pruneLibtoolFiles() {
if [ "${dontPruneLibtoolFiles-}" ] || [ ! -e "$prefix" ]; then
return
fi
# Libtool uses "dlname" and "library_names" fields for shared libraries and
# the "old_library" field for static libraries. We are processing only
# those .la files that do not describe static libraries.
find "$prefix" -type f -name '*.la' \
-exec grep -q '^# Generated by .*libtool' {} \; \
-exec grep -q "^old_library=''" {} \; \
-exec sed -i {} -e "/^dependency_libs='[^']/ c dependency_libs='' #pruned" \;
}
)NIXEB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh nix-archive-1(typeregularcontents�export PATH=
for i in $initialPath; do
if [ "$i" = / ]; then i=; fi
PATH=$PATH${PATH:+:}$i/bin
done
mkdir $out
echo "export SHELL=$shell" > $out/setup
echo "initialPath=\"$initialPath\"" >> $out/setup
echo "defaultNativeBuildInputs=\"$defaultNativeBuildInputs\"" >> $out/setup
echo "defaultBuildInputs=\"$defaultBuildInputs\"" >> $out/setup
echo "$preHook" >> $out/setup
cat "$setup" >> $out/setup
# Allow the user to install stdenv using nix-env and get the packages
# in stdenv.
mkdir $out/nix-support
if [ "$propagatedUserEnvPkgs" ]; then
printf '%s ' $propagatedUserEnvPkgs > $out/nix-support/propagated-user-env-packages
fi
)NIXE6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh nix-archive-1(typeregularcontents# This setup hook, for each output, moves everything in $output/lib64
# to $output/lib, and replaces $output/lib64 with a symlink to
# $output/lib. The rationale is that lib64 directories are unnecessary
# in Nix (since 32-bit and 64-bit builds of a package are in different
# store paths anyway).
# If the move would overwrite anything, it should fail on rmdir.
fixupOutputHooks+=(_moveLib64)
_moveLib64() {
if [ "${dontMoveLib64-}" = 1 ]; then return; fi
if [ ! -e "$prefix/lib64" -o -L "$prefix/lib64" ]; then return; fi
echo "moving $prefix/lib64/* to $prefix/lib"
mkdir -p $prefix/lib
shopt -s dotglob
for i in $prefix/lib64/*; do
mv --no-clobber "$i" $prefix/lib
done
shopt -u dotglob
rmdir $prefix/lib64
ln -s lib $prefix/lib64
}
)NIXE9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh nix-archive-1(typeregularcontents$# This setup hook, for each output, moves everything in $output/sbin
# to $output/bin, and replaces $output/sbin with a symlink to
# $output/bin.
fixupOutputHooks+=(_moveSbin)
_moveSbin() {
if [ "${dontMoveSbin-}" = 1 ]; then return; fi
if [ ! -e "$prefix/sbin" -o -L "$prefix/sbin" ]; then return; fi
echo "moving $prefix/sbin/* to $prefix/bin"
mkdir -p $prefix/bin
shopt -s dotglob
for i in $prefix/sbin/*; do
mv "$i" $prefix/bin
done
shopt -u dotglob
rmdir $prefix/sbin
ln -s bin $prefix/sbin
}
)NIXE8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh nix-archive-1(typeregularcontentsV�set -eu
set -o pipefail
if (( "${NIX_DEBUG:-0}" >= 6 )); then
set -x
fi
: ${outputs:=out}
######################################################################
# Hook handling.
# Run all hooks with the specified name in the order in which they
# were added, stopping if any fails (returns a non-zero exit
# code). The hooks for <hookName> are the shell function or variable
# <hookName>, and the values of the shell array ‘<hookName>Hooks’.
runHook() {
local hookName="$1"
shift
local hooksSlice="${hookName%Hook}Hooks[@]"
local hook
# Hack around old bash being bad and thinking empty arrays are
# undefined.
for hook in "_callImplicitHook 0 $hookName" ${!hooksSlice+"${!hooksSlice}"}; do
_eval "$hook" "$@"
done
return 0
}
# Run all hooks with the specified name, until one succeeds (returns a
# zero exit code). If none succeed, return a non-zero exit code.
runOneHook() {
local hookName="$1"
shift
local hooksSlice="${hookName%Hook}Hooks[@]"
local hook ret=1
# Hack around old bash like above
for hook in "_callImplicitHook 1 $hookName" ${!hooksSlice+"${!hooksSlice}"}; do
if _eval "$hook" "$@"; then
ret=0
break
fi
done
return "$ret"
}
# Run the named hook, either by calling the function with that name or
# by evaluating the variable with that name. This allows convenient
# setting of hooks both from Nix expressions (as attributes /
# environment variables) and from shell scripts (as functions). If you
# want to allow multiple hooks, use runHook instead.
_callImplicitHook() {
local def="$1"
local hookName="$2"
if declare -F "$hookName" > /dev/null; then
"$hookName"
elif type -p "$hookName" > /dev/null; then
source "$hookName"
elif [ -n "${!hookName:-}" ]; then
eval "${!hookName}"
else
return "$def"
fi
# `_eval` expects hook to need nounset disable and leave it
# disabled anyways, so Ok to to delegate. The alternative of a
# return trap is no good because it would affect nested returns.
}
# A function wrapper around ‘eval’ that ensures that ‘return’ inside
# hooks exits the hook, not the caller. Also will only pass args if
# command can take them
_eval() {
if declare -F "$1" > /dev/null 2>&1; then
"$@" # including args
else
eval "$1"
fi
}
######################################################################
# Logging.
# Obsolete.
stopNest() { true; }
header() { echo "$1"; }
closeNest() { true; }
# Prints a command such that all word splits are unambiguous. We need
# to split the command in three parts because the middle format string
# will be, and must be, repeated for each argument. The first argument
# goes before the ':' and is just for convenience.
echoCmd() {
printf "%s:" "$1"
shift
printf ' %q' "$@"
echo
}
######################################################################
# Error handling.
exitHandler() {
exitCode="$?"
set +e
if [ -n "${showBuildStats:-}" ]; then
times > "$NIX_BUILD_TOP/.times"
local -a times=($(cat "$NIX_BUILD_TOP/.times"))
# Print the following statistics:
# - user time for the shell
# - system time for the shell
# - user time for all child processes
# - system time for all child processes
echo "build time elapsed: " "${times[@]}"
fi
if (( "$exitCode" != 0 )); then
runHook failureHook
# If the builder had a non-zero exit code and
# $succeedOnFailure is set, create the file
# ‘$out/nix-support/failed’ to signal failure, and exit
# normally. Otherwise, return the original exit code.
if [ -n "${succeedOnFailure:-}" ]; then
echo "build failed with exit code $exitCode (ignored)"
mkdir -p "$out/nix-support"
printf "%s" "$exitCode" > "$out/nix-support/failed"
exit 0
fi
else
runHook exitHook
fi
exit "$exitCode"
}
trap "exitHandler" EXIT
######################################################################
# Helper functions.
addToSearchPathWithCustomDelimiter() {
local delimiter="$1"
local varName="$2"
local dir="$3"
if [ -d "$dir" ]; then
export "${varName}=${!varName:+${!varName}${delimiter}}${dir}"
fi
}
addToSearchPath() {
addToSearchPathWithCustomDelimiter ":" "$@"
}
# Add $1/lib* into rpaths.
# The function is used in multiple-outputs.sh hook,
# so it is defined here but tried after the hook.
_addRpathPrefix() {
if [ "${NIX_NO_SELF_RPATH:-0}" != 1 ]; then
export NIX_LDFLAGS="-rpath $1/lib ${NIX_LDFLAGS-}"
if [ -n "${NIX_LIB64_IN_SELF_RPATH:-}" ]; then
export NIX_LDFLAGS="-rpath $1/lib64 ${NIX_LDFLAGS-}"
fi
if [ -n "${NIX_LIB32_IN_SELF_RPATH:-}" ]; then
export NIX_LDFLAGS="-rpath $1/lib32 ${NIX_LDFLAGS-}"
fi
fi
}
# Return success if the specified file is an ELF object.
isELF() {
local fn="$1"
local fd
local magic
exec {fd}< "$fn"
read -r -n 4 -u "$fd" magic
exec {fd}<&-
if [ "$magic" = $'\177ELF' ]; then return 0; else return 1; fi
}
# Return success if the specified file is a script (i.e. starts with
# "#!").
isScript() {
local fn="$1"
local fd
local magic
exec {fd}< "$fn"
read -r -n 2 -u "$fd" magic
exec {fd}<&-
if [[ "$magic" =~ \#! ]]; then return 0; else return 1; fi
}
# printf unfortunately will print a trailing newline regardless
printLines() {
(( "$#" > 0 )) || return 0
printf '%s\n' "$@"
}
printWords() {
(( "$#" > 0 )) || return 0
printf '%s ' "$@"
}
######################################################################
# Initialisation.
# Set a fallback default value for SOURCE_DATE_EPOCH, used by some build tools
# to provide a deterministic substitute for the "current" time. Note that
# 315532800 = 1980-01-01 12:00:00. We use this date because python's wheel
# implementation uses zip archive and zip does not support dates going back to
# 1970.
export SOURCE_DATE_EPOCH
: ${SOURCE_DATE_EPOCH:=315532800}
# Wildcard expansions that don't match should expand to an empty list.
# This ensures that, for instance, "for i in *; do ...; done" does the
# right thing.
shopt -s nullglob
# Set up the initial path.
PATH=
HOST_PATH=
for i in $initialPath; do
if [ "$i" = / ]; then i=; fi
addToSearchPath PATH "$i/bin"
# For backward compatibility, we add initial path to HOST_PATH so
# it can be used in auto patch-shebangs. Unfortunately this will
# not work with cross compilation.
if [ -z "${strictDeps-}" ]; then
addToSearchPath HOST_PATH "$i/bin"
fi
done
unset i
if (( "${NIX_DEBUG:-0}" >= 1 )); then
echo "initial path: $PATH"
fi
# Check that the pre-hook initialised SHELL.
if [ -z "${SHELL:-}" ]; then echo "SHELL not set"; exit 1; fi
BASH="$SHELL"
export CONFIG_SHELL="$SHELL"
# Execute the pre-hook.
if [ -z "${shell:-}" ]; then export shell="$SHELL"; fi
runHook preHook
# Allow the caller to augment buildInputs (it's not always possible to
# do this before the call to setup.sh, since the PATH is empty at that
# point; here we have a basic Unix environment).
runHook addInputsHook
# Package accumulators
# shellcheck disable=SC2034
declare -a pkgsBuildBuild pkgsBuildHost pkgsBuildTarget
declare -a pkgsHostHost pkgsHostTarget
declare -a pkgsTargetTarget
declare -a pkgBuildAccumVars=(pkgsBuildBuild pkgsBuildHost pkgsBuildTarget)
declare -a pkgHostAccumVars=(pkgsHostHost pkgsHostTarget)
declare -a pkgTargetAccumVars=(pkgsTargetTarget)
declare -a pkgAccumVarVars=(pkgBuildAccumVars pkgHostAccumVars pkgTargetAccumVars)
# Hooks
declare -a envBuildBuildHooks envBuildHostHooks envBuildTargetHooks
declare -a envHostHostHooks envHostTargetHooks
declare -a envTargetTargetHooks
declare -a pkgBuildHookVars=(envBuildBuildHook envBuildHostHook envBuildTargetHook)
declare -a pkgHostHookVars=(envHostHostHook envHostTargetHook)
declare -a pkgTargetHookVars=(envTargetTargetHook)
declare -a pkgHookVarVars=(pkgBuildHookVars pkgHostHookVars pkgTargetHookVars)
# Add env hooks for all sorts of deps with the specified host offset.
addEnvHooks() {
local depHostOffset="$1"
shift
local pkgHookVarsSlice="${pkgHookVarVars[$depHostOffset + 1]}[@]"
local pkgHookVar
for pkgHookVar in "${!pkgHookVarsSlice}"; do
eval "${pkgHookVar}s"'+=("$@")'
done
}
# Propagated dep files
declare -a propagatedBuildDepFiles=(
propagated-build-build-deps
propagated-native-build-inputs # Legacy name for back-compat
propagated-build-target-deps
)
declare -a propagatedHostDepFiles=(
propagated-host-host-deps
propagated-build-inputs # Legacy name for back-compat
)
declare -a propagatedTargetDepFiles=(
propagated-target-target-deps
)
declare -a propagatedDepFilesVars=(
propagatedBuildDepFiles
propagatedHostDepFiles
propagatedTargetDepFiles
)
# Platform offsets: build = -1, host = 0, target = 1
declare -a allPlatOffsets=(-1 0 1)
# Mutually-recursively find all build inputs. See the dependency section of the
# stdenv chapter of the Nixpkgs manual for the specification this algorithm
# implements.
findInputs() {
local -r pkg="$1"
local -ri hostOffset="$2"
local -ri targetOffset="$3"
# Sanity check
(( "$hostOffset" <= "$targetOffset" )) || exit -1
local varVar="${pkgAccumVarVars[$hostOffset + 1]}"
local varRef="$varVar[\$targetOffset - \$hostOffset]"
local var="${!varRef}"
unset -v varVar varRef
# TODO(@Ericson2314): Restore using associative array once Darwin
# nix-shell doesn't use impure bash. This should replace the O(n)
# case with an O(1) hash map lookup, assuming bash is implemented
# well :D.
local varSlice="$var[*]"
# ${..-} to hack around old bash empty array problem
case "${!varSlice-}" in
*" $pkg "*) return 0 ;;
esac
unset -v varSlice
eval "$var"'+=("$pkg")'
if ! [ -e "$pkg" ]; then
echo "build input $pkg does not exist" >&2
exit 1
fi
# The current package's host and target offset together
# provide a <=-preserving homomorphism from the relative
# offsets to current offset
local -i mapOffsetResult
function mapOffset() {
local -ri inputOffset="$1"
if (( "$inputOffset" <= 0 )); then
local -ri outputOffset="$inputOffset + $hostOffset"
else
local -ri outputOffset="$inputOffset - 1 + $targetOffset"
fi
mapOffsetResult="$outputOffset"
}
# Host offset relative to that of the package whose immediate
# dependencies we are currently exploring.
local -i relHostOffset
for relHostOffset in "${allPlatOffsets[@]}"; do
# `+ 1` so we start at 0 for valid index
local files="${propagatedDepFilesVars[$relHostOffset + 1]}"
# Host offset relative to the package currently being
# built---as absolute an offset as will be used.
mapOffset relHostOffset
local -i hostOffsetNext="$mapOffsetResult"
# Ensure we're in bounds relative to the package currently
# being built.
[[ "${allPlatOffsets[*]}" = *"$hostOffsetNext"* ]] || continue
# Target offset relative to the *host* offset of the package
# whose immediate dependencies we are currently exploring.
local -i relTargetOffset
for relTargetOffset in "${allPlatOffsets[@]}"; do
(( "$relHostOffset" <= "$relTargetOffset" )) || continue
local fileRef="${files}[$relTargetOffset - $relHostOffset]"
local file="${!fileRef}"
unset -v fileRef
# Target offset relative to the package currently being
# built.
mapOffset relTargetOffset
local -i targetOffsetNext="$mapOffsetResult"
# Once again, ensure we're in bounds relative to the
# package currently being built.
[[ "${allPlatOffsets[*]}" = *"$targetOffsetNext"* ]] || continue
[[ -f "$pkg/nix-support/$file" ]] || continue
local pkgNext
read -r -d '' pkgNext < "$pkg/nix-support/$file" || true
for pkgNext in $pkgNext; do
findInputs "$pkgNext" "$hostOffsetNext" "$targetOffsetNext"
done
done
done
}
# Make sure all are at least defined as empty
: ${depsBuildBuild=} ${depsBuildBuildPropagated=}
: ${nativeBuildInputs=} ${propagatedNativeBuildInputs=} ${defaultNativeBuildInputs=}
: ${depsBuildTarget=} ${depsBuildTargetPropagated=}
: ${depsHostHost=} ${depsHostHostPropagated=}
: ${buildInputs=} ${propagatedBuildInputs=} ${defaultBuildInputs=}
: ${depsTargetTarget=} ${depsTargetTargetPropagated=}
for pkg in $depsBuildBuild $depsBuildBuildPropagated; do
findInputs "$pkg" -1 -1
done
for pkg in $nativeBuildInputs $propagatedNativeBuildInputs; do
findInputs "$pkg" -1 0
done
for pkg in $depsBuildTarget $depsBuildTargetPropagated; do
findInputs "$pkg" -1 1
done
for pkg in $depsHostHost $depsHostHostPropagated; do
findInputs "$pkg" 0 0
done
for pkg in $buildInputs $propagatedBuildInputs ; do
findInputs "$pkg" 0 1
done
for pkg in $depsTargetTarget $depsTargetTargetPropagated; do
findInputs "$pkg" 1 1
done
# Default inputs must be processed last
for pkg in $defaultNativeBuildInputs; do
findInputs "$pkg" -1 0
done
for pkg in $defaultBuildInputs; do
findInputs "$pkg" 0 1
done
# Add package to the future PATH and run setup hooks
activatePackage() {
local pkg="$1"
local -ri hostOffset="$2"
local -ri targetOffset="$3"
# Sanity check
(( "$hostOffset" <= "$targetOffset" )) || exit -1
if [ -f "$pkg" ]; then
source "$pkg"
fi
# Only dependencies whose host platform is guaranteed to match the
# build platform are included here. That would be `depsBuild*`,
# and legacy `nativeBuildInputs`, in general. If we aren't cross
# compiling, however, everything can be put on the PATH. To ease
# the transition, we do include everything in thatcase.
#
# TODO(@Ericson2314): Don't special-case native compilation
if [[ ( -z "${strictDeps-}" || "$hostOffset" -le -1 ) && -d "$pkg/bin" ]]; then
addToSearchPath _PATH "$pkg/bin"
fi
if [[ "$hostOffset" -eq 0 && -d "$pkg/bin" ]]; then
addToSearchPath _HOST_PATH "$pkg/bin"
fi
if [[ -f "$pkg/nix-support/setup-hook" ]]; then
source "$pkg/nix-support/setup-hook"
fi
}
_activatePkgs() {
local -i hostOffset targetOffset
local pkg
for hostOffset in "${allPlatOffsets[@]}"; do
local pkgsVar="${pkgAccumVarVars[$hostOffset + 1]}"
for targetOffset in "${allPlatOffsets[@]}"; do
(( "$hostOffset" <= "$targetOffset" )) || continue
local pkgsRef="${pkgsVar}[$targetOffset - $hostOffset]"
local pkgsSlice="${!pkgsRef}[@]"
for pkg in ${!pkgsSlice+"${!pkgsSlice}"}; do
activatePackage "$pkg" "$hostOffset" "$targetOffset"
done
done
done
}
# Run the package setup hooks and build _PATH
_activatePkgs
# Set the relevant environment variables to point to the build inputs
# found above.
#
# These `depOffset`s, beyond indexing the arrays, also tell the env
# hook what sort of dependency (ignoring propagatedness) is being
# passed to the env hook. In a real language, we'd append a closure
# with this information to the relevant env hook array, but bash
# doesn't have closures, so it's easier to just pass this in.
_addToEnv() {
local -i depHostOffset depTargetOffset
local pkg
for depHostOffset in "${allPlatOffsets[@]}"; do
local hookVar="${pkgHookVarVars[$depHostOffset + 1]}"
local pkgsVar="${pkgAccumVarVars[$depHostOffset + 1]}"
for depTargetOffset in "${allPlatOffsets[@]}"; do
(( "$depHostOffset" <= "$depTargetOffset" )) || continue
local hookRef="${hookVar}[$depTargetOffset - $depHostOffset]"
if [[ -z "${strictDeps-}" ]]; then
# Keep track of which packages we have visited before.
local visitedPkgs=""
# Apply environment hooks to all packages during native
# compilation to ease the transition.
#
# TODO(@Ericson2314): Don't special-case native compilation
for pkg in \
${pkgsBuildBuild+"${pkgsBuildBuild[@]}"} \
${pkgsBuildHost+"${pkgsBuildHost[@]}"} \
${pkgsBuildTarget+"${pkgsBuildTarget[@]}"} \
${pkgsHostHost+"${pkgsHostHost[@]}"} \
${pkgsHostTarget+"${pkgsHostTarget[@]}"} \
${pkgsTargetTarget+"${pkgsTargetTarget[@]}"}
do
if [[ "$visitedPkgs" = *"$pkg"* ]]; then
continue
fi
runHook "${!hookRef}" "$pkg"
visitedPkgs+=" $pkg"
done
else
local pkgsRef="${pkgsVar}[$depTargetOffset - $depHostOffset]"
local pkgsSlice="${!pkgsRef}[@]"
for pkg in ${!pkgsSlice+"${!pkgsSlice}"}; do
runHook "${!hookRef}" "$pkg"
done
fi
done
done
}
# Run the package-specific hooks set by the setup-hook scripts.
_addToEnv
# Unset setup-specific declared variables
unset allPlatOffsets
unset pkgBuildAccumVars pkgHostAccumVars pkgTargetAccumVars pkgAccumVarVars
unset pkgBuildHookVars pkgHostHookVars pkgTargetHookVars pkgHookVarVars
unset propagatedDepFilesVars
_addRpathPrefix "$out"
# Set the TZ (timezone) environment variable, otherwise commands like
# `date' will complain (e.g., `Tue Mar 9 10:01:47 Local time zone must
# be set--see zic manual page 2004').
export TZ=UTC
# Set the prefix. This is generally $out, but it can be overriden,
# for instance if we just want to perform a test build/install to a
# temporary location and write a build report to $out.
if [ -z "${prefix:-}" ]; then
prefix="$out";
fi
if [ "${useTempPrefix:-}" = 1 ]; then
prefix="$NIX_BUILD_TOP/tmp_prefix";
fi
PATH="${_PATH-}${_PATH:+${PATH:+:}}$PATH"
HOST_PATH="${_HOST_PATH-}${_HOST_PATH:+${HOST_PATH:+:}}$HOST_PATH"
if (( "${NIX_DEBUG:-0}" >= 1 )); then
echo "final path: $PATH"
echo "final host path: $HOST_PATH"
fi
unset _PATH
unset _HOST_PATH
# Make GNU Make produce nested output.
export NIX_INDENT_MAKE=1
# Normalize the NIX_BUILD_CORES variable. The value might be 0, which
# means that we're supposed to try and auto-detect the number of
# available CPU cores at run-time.
if [ -z "${NIX_BUILD_CORES:-}" ]; then
NIX_BUILD_CORES="1"
elif [ "$NIX_BUILD_CORES" -le 0 ]; then
NIX_BUILD_CORES=$(nproc 2>/dev/null || true)
if expr >/dev/null 2>&1 "$NIX_BUILD_CORES" : "^[0-9][0-9]*$"; then
:
else
NIX_BUILD_CORES="1"
fi
fi
export NIX_BUILD_CORES
# Prevent SSL libraries from using certificates in /etc/ssl, unless set explicitly.
# Leave it in impure shells for convenience.
if [ -z "${NIX_SSL_CERT_FILE:-}" ] && [ "${IN_NIX_SHELL:-}" != "impure" ]; then
export NIX_SSL_CERT_FILE=/no-cert-file.crt
fi
# Another variant left for compatibility.
if [ -z "${SSL_CERT_FILE:-}" ] && [ "${IN_NIX_SHELL:-}" != "impure" ]; then
export SSL_CERT_FILE=/no-cert-file.crt
fi
######################################################################
# Textual substitution functions.
substituteStream() {
local var=$1
local description=$2
shift 2
while (( "$#" )); do
case "$1" in
--replace)
pattern="$2"
replacement="$3"
shift 3
local savedvar
savedvar="${!var}"
eval "$var"'=${'"$var"'//"$pattern"/"$replacement"}'
if [ "$pattern" != "$replacement" ]; then
if [ "${!var}" == "$savedvar" ]; then
echo "substituteStream(): WARNING: pattern '$pattern' doesn't match anything in $description" >&2
fi
fi
;;
--subst-var)
local varName="$2"
shift 2
# check if the used nix attribute name is a valid bash name
if ! [[ "$varName" =~ ^[a-zA-Z_][a-zA-Z0-9_]*$ ]]; then
echo "substituteStream(): ERROR: substitution variables must be valid Bash names, \"$varName\" isn't." >&2
return 1
fi
if [ -z ${!varName+x} ]; then
echo "substituteStream(): ERROR: variable \$$varName is unset" >&2
return 1
fi
pattern="@$varName@"
replacement="${!varName}"
eval "$var"'=${'"$var"'//"$pattern"/"$replacement"}'
;;
--subst-var-by)
pattern="@$2@"
replacement="$3"
eval "$var"'=${'"$var"'//"$pattern"/"$replacement"}'
shift 3
;;
*)
echo "substituteStream(): ERROR: Invalid command line argument: $1" >&2
return 1
;;
esac
done
printf "%s" "${!var}"
}
consumeEntire() {
# read returns non-0 on EOF, so we want read to fail
if IFS='' read -r -N 0 $1; then
echo "consumeEntire(): ERROR: Input null bytes, won't process" >&2
return 1
fi
}
substitute() {
local input="$1"
local output="$2"
shift 2
if [ ! -f "$input" ]; then
echo "substitute(): ERROR: file '$input' does not exist" >&2
return 1
fi
local content
consumeEntire content < "$input"
if [ -e "$output" ]; then chmod +w "$output"; fi
substituteStream content "file '$input'" "$@" > "$output"
}
substituteInPlace() {
local fileName="$1"
shift
substitute "$fileName" "$fileName" "$@"
}
_allFlags() {
for varName in $(awk 'BEGIN { for (v in ENVIRON) if (v ~ /^[a-z][a-zA-Z0-9_]*$/) print v }'); do
if (( "${NIX_DEBUG:-0}" >= 1 )); then
printf "@%s@ -> %q\n" "${varName}" "${!varName}"
fi
args+=("--subst-var" "$varName")
done
}
substituteAllStream() {
local -a args=()
_allFlags
substituteStream "$1" "$2" "${args[@]}"
}
# Substitute all environment variables that start with a lowercase character and
# are valid Bash names.
substituteAll() {
local input="$1"
local output="$2"
local -a args=()
_allFlags
substitute "$input" "$output" "${args[@]}"
}
substituteAllInPlace() {
local fileName="$1"
shift
substituteAll "$fileName" "$fileName" "$@"
}
######################################################################
# What follows is the generic builder.
# This function is useful for debugging broken Nix builds. It dumps
# all environment variables to a file `env-vars' in the build
# directory. If the build fails and the `-K' option is used, you can
# then go to the build directory and source in `env-vars' to reproduce
# the environment used for building.
dumpVars() {
if [ "${noDumpEnvVars:-0}" != 1 ]; then
export >| "$NIX_BUILD_TOP/env-vars" || true
fi
}
# Utility function: echo the base name of the given path, with the
# prefix `HASH-' removed, if present.
stripHash() {
local strippedName casematchOpt=0
# On separate line for `set -e`
strippedName="$(basename -- "$1")"
shopt -q nocasematch && casematchOpt=1
shopt -u nocasematch
if [[ "$strippedName" =~ ^[a-z0-9]{32}- ]]; then
echo "${strippedName:33}"
else
echo "$strippedName"
fi
if (( casematchOpt )); then shopt -s nocasematch; fi
}
unpackCmdHooks+=(_defaultUnpack)
_defaultUnpack() {
local fn="$1"
if [ -d "$fn" ]; then
# We can't preserve hardlinks because they may have been
# introduced by store optimization, which might break things
# in the build.
cp -pr --reflink=auto -- "$fn" "$(stripHash "$fn")"
else
case "$fn" in
*.tar.xz | *.tar.lzma | *.txz)
# Don't rely on tar knowing about .xz.
xz -d < "$fn" | tar xf -
;;
*.tar | *.tar.* | *.tgz | *.tbz2 | *.tbz)
# GNU tar can automatically select the decompression method
# (info "(tar) gzip").
tar xf "$fn"
;;
*)
return 1
;;
esac
fi
}
unpackFile() {
curSrc="$1"
header "unpacking source archive $curSrc" 3
if ! runOneHook unpackCmd "$curSrc"; then
echo "do not know how to unpack source archive $curSrc"
exit 1
fi
}
unpackPhase() {
runHook preUnpack
if [ -z "${srcs:-}" ]; then
if [ -z "${src:-}" ]; then
# shellcheck disable=SC2016
echo 'variable $src or $srcs should point to the source'
exit 1
fi
srcs="$src"
fi
# To determine the source directory created by unpacking the
# source archives, we record the contents of the current
# directory, then look below which directory got added. Yeah,
# it's rather hacky.
local dirsBefore=""
for i in *; do
if [ -d "$i" ]; then
dirsBefore="$dirsBefore $i "
fi
done
# Unpack all source archives.
for i in $srcs; do
unpackFile "$i"
done
# Find the source directory.
# set to empty if unset
: ${sourceRoot=}
if [ -n "${setSourceRoot:-}" ]; then
runOneHook setSourceRoot
elif [ -z "$sourceRoot" ]; then
for i in *; do
if [ -d "$i" ]; then
case $dirsBefore in
*\ $i\ *)
;;
*)
if [ -n "$sourceRoot" ]; then
echo "unpacker produced multiple directories"
exit 1
fi
sourceRoot="$i"
;;
esac
fi
done
fi
if [ -z "$sourceRoot" ]; then
echo "unpacker appears to have produced no directories"
exit 1
fi
echo "source root is $sourceRoot"
# By default, add write permission to the sources. This is often
# necessary when sources have been copied from other store
# locations.
if [ "${dontMakeSourcesWritable:-0}" != 1 ]; then
chmod -R u+w -- "$sourceRoot"
fi
runHook postUnpack
}
patchPhase() {
runHook prePatch
for i in ${patches:-}; do
header "applying patch $i" 3
local uncompress=cat
case "$i" in
*.gz)
uncompress="gzip -d"
;;
*.bz2)
uncompress="bzip2 -d"
;;
*.xz)
uncompress="xz -d"
;;
*.lzma)
uncompress="lzma -d"
;;
esac
# "2>&1" is a hack to make patch fail if the decompressor fails (nonexistent patch, etc.)
# shellcheck disable=SC2086
$uncompress < "$i" 2>&1 | patch ${patchFlags:--p1}
done
runHook postPatch
}
fixLibtool() {
sed -i -e 's^eval sys_lib_.*search_path=.*^^' "$1"
}
configurePhase() {
runHook preConfigure
# set to empty if unset
: ${configureScript=}
: ${configureFlags=}
if [[ -z "$configureScript" && -x ./configure ]]; then
configureScript=./configure
fi
if [ -z "${dontFixLibtool:-}" ]; then
local i
find . -iname "ltmain.sh" -print0 | while IFS='' read -r -d '' i; do
echo "fixing libtool script $i"
fixLibtool "$i"
done
fi
if [[ -z "${dontAddPrefix:-}" && -n "$prefix" ]]; then
configureFlags="${prefixKey:---prefix=}$prefix $configureFlags"
fi
# Add --disable-dependency-tracking to speed up some builds.
if [ -z "${dontAddDisableDepTrack:-}" ]; then
if [ -f "$configureScript" ] && grep -q dependency-tracking "$configureScript"; then
configureFlags="--disable-dependency-tracking $configureFlags"
fi
fi
# By default, disable static builds.
if [ -z "${dontDisableStatic:-}" ]; then
if [ -f "$configureScript" ] && grep -q enable-static "$configureScript"; then
configureFlags="--disable-static $configureFlags"
fi
fi
if [ -n "$configureScript" ]; then
# Old bash empty array hack
# shellcheck disable=SC2086
local flagsArray=(
$configureFlags ${configureFlagsArray+"${configureFlagsArray[@]}"}
)
echoCmd 'configure flags' "${flagsArray[@]}"
# shellcheck disable=SC2086
$configureScript "${flagsArray[@]}"
unset flagsArray
else
echo "no configure script, doing nothing"
fi
runHook postConfigure
}
buildPhase() {
runHook preBuild
# set to empty if unset
: ${makeFlags=}
if [[ -z "$makeFlags" && -z "${makefile:-}" && ! ( -e Makefile || -e makefile || -e GNUmakefile ) ]]; then
echo "no Makefile, doing nothing"
else
foundMakefile=1
# Old bash empty array hack
# shellcheck disable=SC2086
local flagsArray=(
${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}
SHELL=$SHELL
$makeFlags ${makeFlagsArray+"${makeFlagsArray[@]}"}
$buildFlags ${buildFlagsArray+"${buildFlagsArray[@]}"}
)
echoCmd 'build flags' "${flagsArray[@]}"
make ${makefile:+-f $makefile} "${flagsArray[@]}"
unset flagsArray
fi
runHook postBuild
}
checkPhase() {
runHook preCheck
if [[ -z "${foundMakefile:-}" ]]; then
echo "no Makefile or custom checkPhase, doing nothing"
runHook postCheck
return
fi
if [[ -z "${checkTarget:-}" ]]; then
#TODO(@oxij): should flagsArray influence make -n?
if make -n ${makefile:+-f $makefile} check >/dev/null 2>&1; then
checkTarget=check
elif make -n ${makefile:+-f $makefile} test >/dev/null 2>&1; then
checkTarget=test
fi
fi
if [[ -z "${checkTarget:-}" ]]; then
echo "no check/test target in ${makefile:-Makefile}, doing nothing"
else
# Old bash empty array hack
# shellcheck disable=SC2086
local flagsArray=(
${enableParallelChecking:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}
SHELL=$SHELL
$makeFlags ${makeFlagsArray+"${makeFlagsArray[@]}"}
${checkFlags:-VERBOSE=y} ${checkFlagsArray+"${checkFlagsArray[@]}"}
${checkTarget}
)
echoCmd 'check flags' "${flagsArray[@]}"
make ${makefile:+-f $makefile} "${flagsArray[@]}"
unset flagsArray
fi
runHook postCheck
}
installPhase() {
runHook preInstall
if [ -n "$prefix" ]; then
mkdir -p "$prefix"
fi
# Old bash empty array hack
# shellcheck disable=SC2086
local flagsArray=(
SHELL=$SHELL
$makeFlags ${makeFlagsArray+"${makeFlagsArray[@]}"}
$installFlags ${installFlagsArray+"${installFlagsArray[@]}"}
${installTargets:-install}
)
echoCmd 'install flags' "${flagsArray[@]}"
make ${makefile:+-f $makefile} "${flagsArray[@]}"
unset flagsArray
runHook postInstall
}
# The fixup phase performs generic, package-independent stuff, like
# stripping binaries, running patchelf and setting
# propagated-build-inputs.
fixupPhase() {
# Make sure everything is writable so "strip" et al. work.
local output
for output in $outputs; do
if [ -e "${!output}" ]; then chmod -R u+w "${!output}"; fi
done
runHook preFixup
# Apply fixup to each output.
local output
for output in $outputs; do
prefix="${!output}" runHook fixupOutput
done
# Propagate dependencies & setup hook into the development output.
declare -ra flatVars=(
# Build
depsBuildBuildPropagated
propagatedNativeBuildInputs
depsBuildTargetPropagated
# Host
depsHostHostPropagated
propagatedBuildInputs
# Target
depsTargetTargetPropagated
)
declare -ra flatFiles=(
"${propagatedBuildDepFiles[@]}"
"${propagatedHostDepFiles[@]}"
"${propagatedTargetDepFiles[@]}"
)
local propagatedInputsIndex
for propagatedInputsIndex in "${!flatVars[@]}"; do
local propagatedInputsSlice="${flatVars[$propagatedInputsIndex]}[@]"
local propagatedInputsFile="${flatFiles[$propagatedInputsIndex]}"
[[ "${!propagatedInputsSlice}" ]] || continue
mkdir -p "${!outputDev}/nix-support"
# shellcheck disable=SC2086
printWords ${!propagatedInputsSlice} > "${!outputDev}/nix-support/$propagatedInputsFile"
done
if [ -n "${setupHook:-}" ]; then
mkdir -p "${!outputDev}/nix-support"
substituteAll "$setupHook" "${!outputDev}/nix-support/setup-hook"
fi
# TODO(@Ericson2314): Remove after https://github.com/NixOS/nixpkgs/pull/31414
if [ -n "${setupHooks:-}" ]; then
mkdir -p "${!outputDev}/nix-support"
local hook
for hook in $setupHooks; do
local content
consumeEntire content < "$hook"
substituteAllStream content "file '$hook'" >> "${!outputDev}/nix-support/setup-hook"
unset -v content
done
unset -v hook
fi
# Propagate user-env packages into the output with binaries, TODO?
if [ -n "${propagatedUserEnvPkgs:-}" ]; then
mkdir -p "${!outputBin}/nix-support"
# shellcheck disable=SC2086
printWords $propagatedUserEnvPkgs > "${!outputBin}/nix-support/propagated-user-env-packages"
fi
runHook postFixup
}
installCheckPhase() {
runHook preInstallCheck
if [[ -z "${foundMakefile:-}" ]]; then
echo "no Makefile or custom installCheckPhase, doing nothing"
#TODO(@oxij): should flagsArray influence make -n?
elif [[ -z "${installCheckTarget:-}" ]] \
&& ! make -n ${makefile:+-f $makefile} ${installCheckTarget:-installcheck} >/dev/null 2>&1; then
echo "no installcheck target in ${makefile:-Makefile}, doing nothing"
else
# Old bash empty array hack
# shellcheck disable=SC2086
local flagsArray=(
${enableParallelChecking:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}
SHELL=$SHELL
$makeFlags ${makeFlagsArray+"${makeFlagsArray[@]}"}
$installCheckFlags ${installCheckFlagsArray+"${installCheckFlagsArray[@]}"}
${installCheckTarget:-installcheck}
)
echoCmd 'installcheck flags' "${flagsArray[@]}"
make ${makefile:+-f $makefile} "${flagsArray[@]}"
unset flagsArray
fi
runHook postInstallCheck
}
distPhase() {
runHook preDist
# Old bash empty array hack
# shellcheck disable=SC2086
local flagsArray=(
$distFlags ${distFlagsArray+"${distFlagsArray[@]}"} ${distTarget:-dist}
)
echo 'dist flags: %q' "${flagsArray[@]}"
make ${makefile:+-f $makefile} "${flagsArray[@]}"
if [ "${dontCopyDist:-0}" != 1 ]; then
mkdir -p "$out/tarballs"
# Note: don't quote $tarballs, since we explicitly permit
# wildcards in there.
# shellcheck disable=SC2086
cp -pvd ${tarballs:-*.tar.gz} "$out/tarballs"
fi
runHook postDist
}
showPhaseHeader() {
local phase="$1"
case "$phase" in
unpackPhase) header "unpacking sources";;
patchPhase) header "patching sources";;
configurePhase) header "configuring";;
buildPhase) header "building";;
checkPhase) header "running tests";;
installPhase) header "installing";;
fixupPhase) header "post-installation fixup";;
installCheckPhase) header "running install tests";;
*) header "$phase";;
esac
}
genericBuild() {
if [ -f "${buildCommandPath:-}" ]; then
source "$buildCommandPath"
return
fi
if [ -n "${buildCommand:-}" ]; then
eval "$buildCommand"
return
fi
if [ -z "${phases:-}" ]; then
phases="${prePhases:-} unpackPhase patchPhase ${preConfigurePhases:-} \
configurePhase ${preBuildPhases:-} buildPhase checkPhase \
${preInstallPhases:-} installPhase ${preFixupPhases:-} fixupPhase installCheckPhase \
${preDistPhases:-} distPhase ${postPhases:-}";
fi
for curPhase in $phases; do
if [[ "$curPhase" = unpackPhase && -n "${dontUnpack:-}" ]]; then continue; fi
if [[ "$curPhase" = patchPhase && -n "${dontPatch:-}" ]]; then continue; fi
if [[ "$curPhase" = configurePhase && -n "${dontConfigure:-}" ]]; then continue; fi
if [[ "$curPhase" = buildPhase && -n "${dontBuild:-}" ]]; then continue; fi
if [[ "$curPhase" = checkPhase && -z "${doCheck:-}" ]]; then continue; fi
if [[ "$curPhase" = installPhase && -n "${dontInstall:-}" ]]; then continue; fi
if [[ "$curPhase" = fixupPhase && -n "${dontFixup:-}" ]]; then continue; fi
if [[ "$curPhase" = installCheckPhase && -z "${doInstallCheck:-}" ]]; then continue; fi
if [[ "$curPhase" = distPhase && -z "${doDist:-}" ]]; then continue; fi
if [[ -n $NIX_LOG_FD ]]; then
echo "@nix { \"action\": \"setPhase\", \"phase\": \"$curPhase\" }" >&$NIX_LOG_FD
fi
showPhaseHeader "$curPhase"
dumpVars
# Evaluate the variable named $curPhase if it exists, otherwise the
# function named $curPhase.
eval "${!curPhase:-$curPhase}"
if [ "$curPhase" = unpackPhase ]; then
cd "${sourceRoot:-.}"
fi
done
}
# Execute the post-hooks.
runHook postHook
# Execute the global user hook (defined through the Nixpkgs
# configuration option ‘stdenv.userHook’). This can be used to set
# global compiler optimisation flags, for instance.
runHook userHook
dumpVars
# Disable nounset for nix-shell.
set +u
)NIXE4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh nix-archive-1(typeregularcontents�fixupOutputHooks+=(_makeSymlinksRelative)
# For every symlink in $output that refers to another file in $output
# ensure that the symlink is relative. This removes references to the output
# has from the resulting store paths and thus the NAR files.
_makeSymlinksRelative() {
local symlinkTarget
if [ -n "${dontRewriteSymlinks-}" ]; then
return 0
fi
while IFS= read -r -d $'\0' f; do
symlinkTarget=$(readlink "$f")
if [[ "$symlinkTarget"/ != "$prefix"/* ]]; then
# skip this symlink as it doesn't point to $prefix
continue
fi
if [ ! -e "$symlinkTarget" ]; then
echo "the symlink $f is broken, it points to $symlinkTarget (which is missing)"
fi
echo "rewriting symlink $f to be relative to $prefix"
ln -snrf "$symlinkTarget" "$f"
done < <(find $prefix -type l -print0)
}
)NIXEE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh nix-archive-1(typeregularcontents�# This setup hook moves $out/{man,doc,info} to $out/share; moves
# $out/share/man to $man/share/man; and moves $out/share/doc to
# $man/share/doc.
preFixupHooks+=(_moveToShare)
_moveToShare() {
forceShare=${forceShare:=man doc info}
if [ -z "$forceShare" -o -z "$out" ]; then return; fi
for d in $forceShare; do
if [ -d "$out/$d" ]; then
if [ -d "$out/share/$d" ]; then
echo "both $d/ and share/$d/ exist!"
else
echo "moving $out/$d to $out/share/$d"
mkdir -p $out/share
mv $out/$d $out/share/
fi
fi
done
}
)NIXE8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh nix-archive-1(typeregularcontentsdupdateSourceDateEpoch() {
local path="$1"
# Get the last modification time of all regular files, sort them,
# and get the most recent. Maybe we should use
# https://github.com/0-wiz-0/findnewest here.
local -a res=($(find "$path" -type f -not -newer "$NIX_BUILD_TOP/.." -printf '%T@ %p\0' \
| sort -n --zero-terminated | tail -n1 --zero-terminated | head -c -1))
local time="${res[0]//\.[0-9]*/}" # remove the fraction part
local newestFile="${res[1]}"
# Update $SOURCE_DATE_EPOCH if the most recent file we found is newer.
if [ "${time:-0}" -gt "$SOURCE_DATE_EPOCH" ]; then
echo "setting SOURCE_DATE_EPOCH to timestamp $time of file $newestFile"
export SOURCE_DATE_EPOCH="$time"
# Warn if the new timestamp is too close to the present. This
# may indicate that we were being applied to a file generated
# during the build, or that an unpacker didn't restore
# timestamps properly.
local now="$(date +%s)"
if [ "$time" -gt $((now - 60)) ]; then
echo "warning: file $newestFile may be generated; SOURCE_DATE_EPOCH may be non-deterministic"
fi
fi
}
postUnpackHooks+=(_updateSourceDateEpochFromSourceRoot)
_updateSourceDateEpochFromSourceRoot() {
if [ -n "$sourceRoot" ]; then
updateSourceDateEpoch "$sourceRoot"
fi
}
)NIXEN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh nix-archive-1(typeregularcontents�fixupOutputHooks+=('if [ -z "${dontGzipMan-}" ]; then compressManPages "$prefix"; fi')
compressManPages() {
local dir="$1"
if [ -L "$dir"/share ] || [ -L "$dir"/share/man ] || [ ! -d "$dir/share/man" ]
then return
fi
echo "gzipping man pages under $dir/share/man/"
# Compress all uncompressed manpages. Don't follow symlinks, etc.
find "$dir"/share/man/ -type f -a '!' -regex '.*\.\(bz2\|gz\)$' -print0 \
| while IFS= read -r -d $'\0' f
do
if gzip -c -n "$f" > "$f".gz; then
rm "$f"
else
rm "$f".gz
fi
done
# Point symlinks to compressed manpages.
find "$dir"/share/man/ -type l -a '!' -regex '.*\.\(bz2\|gz\)$' -print0 \
| while IFS= read -r -d $'\0' f
do
local target
target="$(readlink -f "$f")"
if [ -f "$target".gz ]; then
ln -sf "$target".gz "$f".gz && rm "$f"
fi
done
}
)NIXEA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents� # N.B. It may be a surprise that the derivation-specific variables are exported,
# since this is just sourced by the wrapped binaries---the end consumers. This
# is because one wrapper binary may invoke another (e.g. cc invoking ld). In
# that case, it is cheaper/better to not repeat this step and let the forked
# wrapped binary just inherit the work of the forker's wrapper script.
var_templates_list=(
NIX_CFLAGS_COMPILE
NIX_CFLAGS_COMPILE_BEFORE
NIX_CFLAGS_LINK
NIX_CXXSTDLIB_COMPILE
NIX_CXXSTDLIB_LINK
NIX_GNATFLAGS_COMPILE
)
var_templates_bool=(
NIX_ENFORCE_NO_NATIVE
)
accumulateRoles
# We need to mangle names for hygiene, but also take parameters/overrides
# from the environment.
for var in "${var_templates_list[@]}"; do
mangleVarList "$var" ${role_suffixes[@]+"${role_suffixes[@]}"}
done
for var in "${var_templates_bool[@]}"; do
mangleVarBool "$var" ${role_suffixes[@]+"${role_suffixes[@]}"}
done
# `-B@out@/bin' forces cc to use ld-wrapper.sh when calling ld.
NIX_CFLAGS_COMPILE_@suffixSalt@="-B@out@/bin/ $NIX_CFLAGS_COMPILE_@suffixSalt@"
# Export and assign separately in order that a failing $(..) will fail
# the script.
if [[ "$cInclude" = 1 ]] && [ -e @out@/nix-support/libc-cflags ]; then
NIX_CFLAGS_COMPILE_@suffixSalt@="$(< @out@/nix-support/libc-cflags) $NIX_CFLAGS_COMPILE_@suffixSalt@"
fi
if [ -e @out@/nix-support/libc-crt1-cflags ]; then
NIX_CFLAGS_COMPILE_@suffixSalt@="$(< @out@/nix-support/libc-crt1-cflags) $NIX_CFLAGS_COMPILE_@suffixSalt@"
fi
if [ -e @out@/nix-support/libcxx-cxxflags ]; then
NIX_CXXSTDLIB_COMPILE_@suffixSalt@+=" $(< @out@/nix-support/libcxx-cxxflags)"
fi
if [ -e @out@/nix-support/libcxx-ldflags ]; then
NIX_CXXSTDLIB_LINK_@suffixSalt@+=" $(< @out@/nix-support/libcxx-ldflags)"
fi
if [ -e @out@/nix-support/cc-cflags ]; then
NIX_CFLAGS_COMPILE_@suffixSalt@="$(< @out@/nix-support/cc-cflags) $NIX_CFLAGS_COMPILE_@suffixSalt@"
fi
if [ -e @out@/nix-support/gnat-cflags ]; then
NIX_GNATFLAGS_COMPILE_@suffixSalt@="$(< @out@/nix-support/gnat-cflags) $NIX_GNATFLAGS_COMPILE_@suffixSalt@"
fi
if [ -e @out@/nix-support/cc-ldflags ]; then
NIX_LDFLAGS_@suffixSalt@+=" $(< @out@/nix-support/cc-ldflags)"
fi
if [ -e @out@/nix-support/cc-cflags-before ]; then
NIX_CFLAGS_COMPILE_BEFORE_@suffixSalt@="$(< @out@/nix-support/cc-cflags-before) $NIX_CFLAGS_COMPILE_BEFORE_@suffixSalt@"
fi
# That way forked processes will not extend these environment variables again.
export NIX_CC_WRAPPER_FLAGS_SET_@suffixSalt@=1
)NIXE8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh nix-archive-1(typeregularcontents#! @shell@
set -eu -o pipefail +o posix
shopt -s nullglob
if (( "${NIX_DEBUG:-0}" >= 7 )); then
set -x
fi
path_backup="$PATH"
# That @-vars are substituted separately from bash evaluation makes
# shellcheck think this, and others like it, are useless conditionals.
# shellcheck disable=SC2157
if [[ -n "@coreutils_bin@" && -n "@gnugrep_bin@" ]]; then
PATH="@coreutils_bin@/bin:@gnugrep_bin@/bin"
fi
source @out@/nix-support/utils.bash
# Parse command line options and set several variables.
# For instance, figure out if linker flags should be passed.
# GCC prints annoying warnings when they are not needed.
dontLink=0
nonFlagArgs=0
cc1=0
# shellcheck disable=SC2193
[[ "@prog@" = *++ ]] && isCpp=1 || isCpp=0
cppInclude=1
cInclude=1
expandResponseParams "$@"
declare -i n=0
nParams=${#params[@]}
while (( "$n" < "$nParams" )); do
p=${params[n]}
p2=${params[n+1]:-} # handle `p` being last one
if [ "$p" = -c ]; then
dontLink=1
elif [ "$p" = -S ]; then
dontLink=1
elif [ "$p" = -E ]; then
dontLink=1
elif [ "$p" = -E ]; then
dontLink=1
elif [ "$p" = -M ]; then
dontLink=1
elif [ "$p" = -MM ]; then
dontLink=1
elif [[ "$p" = -x && "$p2" = *-header ]]; then
dontLink=1
elif [[ "$p" = -x && "$p2" = c++* && "$isCpp" = 0 ]]; then
isCpp=1
elif [ "$p" = -nostdlib ]; then
isCpp=-1
elif [ "$p" = -nostdinc ]; then
cInclude=0
cppInclude=0
elif [ "$p" = -nostdinc++ ]; then
cppInclude=0
elif [[ "$p" != -?* ]]; then
# A dash alone signifies standard input; it is not a flag
nonFlagArgs=1
elif [ "$p" = -cc1 ]; then
cc1=1
fi
n+=1
done
# If we pass a flag like -Wl, then gcc will call the linker unless it
# can figure out that it has to do something else (e.g., because of a
# "-c" flag). So if no non-flag arguments are given, don't pass any
# linker flags. This catches cases like "gcc" (should just print
# "gcc: no input files") and "gcc -v" (should print the version).
if [ "$nonFlagArgs" = 0 ]; then
dontLink=1
fi
# Optionally filter out paths not refering to the store.
if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "$NIX_STORE" ]]; then
rest=()
nParams=${#params[@]}
declare -i n=0
while (( "$n" < "$nParams" )); do
p=${params[n]}
p2=${params[n+1]:-} # handle `p` being last one
if [ "${p:0:3}" = -L/ ] && badPath "${p:2}"; then
skip "${p:2}"
elif [ "$p" = -L ] && badPath "$p2"; then
n+=1; skip "$p2"
elif [ "${p:0:3}" = -I/ ] && badPath "${p:2}"; then
skip "${p:2}"
elif [ "$p" = -I ] && badPath "$p2"; then
n+=1; skip "$p2"
elif [ "$p" = -isystem ] && badPath "$p2"; then
n+=1; skip "$p2"
else
rest+=("$p")
fi
n+=1
done
# Old bash empty array hack
params=(${rest+"${rest[@]}"})
fi
# Flirting with a layer violation here.
if [ -z "${NIX_BINTOOLS_WRAPPER_FLAGS_SET_@suffixSalt@:-}" ]; then
source @bintools@/nix-support/add-flags.sh
fi
# Put this one second so libc ldflags take priority.
if [ -z "${NIX_CC_WRAPPER_FLAGS_SET_@suffixSalt@:-}" ]; then
source @out@/nix-support/add-flags.sh
fi
# Clear march/mtune=native -- they bring impurity.
if [ "$NIX_ENFORCE_NO_NATIVE_@suffixSalt@" = 1 ]; then
rest=()
# Old bash empty array hack
for p in ${params+"${params[@]}"}; do
if [[ "$p" = -m*=native ]]; then
skip "$p"
else
rest+=("$p")
fi
done
# Old bash empty array hack
params=(${rest+"${rest[@]}"})
fi
if [[ "$isCpp" = 1 ]]; then
if [[ "$cppInclude" = 1 ]]; then
NIX_CFLAGS_COMPILE_@suffixSalt@+=" $NIX_CXXSTDLIB_COMPILE_@suffixSalt@"
fi
NIX_CFLAGS_LINK_@suffixSalt@+=" $NIX_CXXSTDLIB_LINK_@suffixSalt@"
fi
source @out@/nix-support/add-hardening.sh
# Add the flags for the C compiler proper.
extraAfter=($NIX_CFLAGS_COMPILE_@suffixSalt@)
extraBefore=(${hardeningCFlags[@]+"${hardeningCFlags[@]}"} $NIX_CFLAGS_COMPILE_BEFORE_@suffixSalt@)
if [ "$dontLink" != 1 ]; then
# Add the flags that should only be passed to the compiler when
# linking.
extraAfter+=($NIX_CFLAGS_LINK_@suffixSalt@)
# Add the flags that should be passed to the linker (and prevent
# `ld-wrapper' from adding NIX_LDFLAGS_@suffixSalt@ again).
for i in $NIX_LDFLAGS_BEFORE_@suffixSalt@; do
extraBefore+=("-Wl,$i")
done
for i in $NIX_LDFLAGS_@suffixSalt@; do
if [ "${i:0:3}" = -L/ ]; then
extraAfter+=("$i")
else
extraAfter+=("-Wl,$i")
fi
done
export NIX_LDFLAGS_SET_@suffixSalt@=1
fi
# As a very special hack, if the arguments are just `-v', then don't
# add anything. This is to prevent `gcc -v' (which normally prints
# out the version number and returns exit code 0) from printing out
# `No input files specified' and returning exit code 1.
if [ "$*" = -v ]; then
extraAfter=()
extraBefore=()
fi
# clang's -cc1 mode is not compatible with most options
# that we would pass. Rather than trying to pass only
# options that would work, let's just remove all of them.
if [ "$cc1" = 1 ]; then
extraAfter=()
extraBefore=()
fi
# Optionally print debug info.
if (( "${NIX_DEBUG:-0}" >= 1 )); then
# Old bash workaround, see ld-wrapper for explanation.
echo "extra flags before to @prog@:" >&2
printf " %q\n" ${extraBefore+"${extraBefore[@]}"} >&2
echo "original flags to @prog@:" >&2
printf " %q\n" ${params+"${params[@]}"} >&2
echo "extra flags after to @prog@:" >&2
printf " %q\n" ${extraAfter+"${extraAfter[@]}"} >&2
fi
PATH="$path_backup"
# Old bash workaround, see above.
exec @prog@ \
${extraBefore+"${extraBefore[@]}"} \
${params+"${params[@]}"} \
${extraAfter+"${extraAfter[@]}"}
)NIXE9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh nix-archive-1(typeregularcontents�
Derive([("out","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh "),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage0-stdenv-linux"),("out","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents� declare -a hardeningCFlags=()
declare -A hardeningEnableMap=()
# Intentionally word-split in case 'NIX_HARDENING_ENABLE' is defined in Nix. The
# array expansion also prevents undefined variables from causing trouble with
# `set -u`.
for flag in ${NIX_HARDENING_ENABLE_@suffixSalt@-}; do
hardeningEnableMap["$flag"]=1
done
# Remove unsupported flags.
for flag in @hardening_unsupported_flags@; do
unset -v "hardeningEnableMap[$flag]"
done
if (( "${NIX_DEBUG:-0}" >= 1 )); then
declare -a allHardeningFlags=(fortify stackprotector pie pic strictoverflow format)
declare -A hardeningDisableMap=()
# Determine which flags were effectively disabled so we can report below.
for flag in "${allHardeningFlags[@]}"; do
if [[ -z "${hardeningEnableMap[$flag]-}" ]]; then
hardeningDisableMap["$flag"]=1
fi
done
printf 'HARDENING: disabled flags:' >&2
(( "${#hardeningDisableMap[@]}" )) && printf ' %q' "${!hardeningDisableMap[@]}" >&2
echo >&2
if (( "${#hardeningEnableMap[@]}" )); then
echo 'HARDENING: Is active (not completely disabled with "all" flag)' >&2;
fi
fi
for flag in "${!hardeningEnableMap[@]}"; do
case $flag in
fortify)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling fortify >&2; fi
hardeningCFlags+=('-O2' '-D_FORTIFY_SOURCE=2')
;;
stackprotector)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling stackprotector >&2; fi
hardeningCFlags+=('-fstack-protector-strong' '--param' 'ssp-buffer-size=4')
;;
pie)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling CFlags -fPIE >&2; fi
hardeningCFlags+=('-fPIE')
if [[ ! ("$*" =~ " -shared " || "$*" =~ " -static ") ]]; then
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling LDFlags -pie >&2; fi
hardeningCFlags+=('-pie')
fi
;;
pic)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling pic >&2; fi
hardeningCFlags+=('-fPIC')
;;
strictoverflow)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling strictoverflow >&2; fi
hardeningCFlags+=('-fno-strict-overflow')
;;
format)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling format >&2; fi
hardeningCFlags+=('-Wformat' '-Wformat-security' '-Werror=format-security')
;;
*)
# Ignore unsupported. Checked in Nix that at least *some*
# tool supports each flag.
;;
esac
done
)NIXE</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh nix-archive-1(typeregularcontents|# CC Wrapper hygiene
#
# For at least cross compilation, we need to depend on multiple cc-wrappers at
# once---specifically up to one per sort of dependency. This follows from having
# different tools targeting different platforms, and different flags for those
# tools. For example:
#
# # Flags for compiling (whether or not linking) C code for the...
# NIX_CFLAGS_COMPILE_FOR_BUILD # ...build platform
# NIX_CFLAGS_COMPILE # ...host platform
# NIX_CFLAGS_COMPILE_FOR_TARGET # ...target platform
#
# Notice that these platforms are the 3 *relative* to the package using
# cc-wrapper, not absolute like `x86_64-pc-linux-gnu`.
#
# The simplest solution would be to have separate cc-wrappers per (3 intended
# use-cases * n absolute concrete platforms). For the use-case axis, we would
# @-splice in 'BUILD_' '' 'TARGET_' to use the write environment variables when
# building the cc-wrapper, and likewise prefix the binaries' names so they didn't
# clobber each other on the PATH. But the need for 3x cc-wrappers, along with
# non-standard name prefixes, is annoying and liable to break packages' build
# systems.
#
# Instead, we opt to have just one cc-wrapper per absolute platform. Matching
# convention, the binaries' names can just be prefixed with their target
# platform. On the other hand, that means packages will depend on not just
# multiple cc-wrappers, but the exact same cc-wrapper derivation multiple ways.
# That means the exact same cc-wrapper derivation must be able to avoid
# conflicting with itself, despite the fact that `setup-hook.sh`, the `addCvars`
# function, and `add-flags.sh` are all communicating with each other with
# environment variables. Yuck.
#
# The basic strategy is:
#
# - Everyone exclusively *adds information* to relative-platform-specific
# environment variables, like `NIX_CFLAGS_COMPILE_FOR_TARGET`, to communicate
# with the wrapped binaries.
#
# - The wrapped binaries will exclusively *read* cc-wrapper-derivation-specific
# environment variables distinguished with with `suffixSalt`, like
# `NIX_CFLAGS_COMPILE_@suffixSalt@`.
#
# - `add-flags`, beyond its old task of reading extra flags stuck inside the
# cc-wrapper derivation, will convert the relative-platform-specific
# variables to cc-wrapper-derivation-specific variables. This conversion is
# the only time all but one of the cc-wrapper-derivation-specific variables
# are set.
#
# This ensures the flow of information is exclusive from
# relative-platform-specific variables to cc-wrapper-derivation-specific
# variables. This allows us to support the general case of a many--many relation
# between relative platforms and cc-wrapper derivations.
#
# For more details, read the individual files where the mechanisms used to
# accomplish this will be individually documented.
# Skip setup hook if we're neither a build-time dep, nor, temporarily, doing a
# native compile.
#
# TODO(@Ericson2314): No native exception
[[ -z ${strictDeps-} ]] || (( "$hostOffset" < 0 )) || return 0
# It's fine that any other cc-wrapper will redefine this. Bash functions close
# over no state, and there's no @-substitutions within, so any redefined
# function is guaranteed to be exactly the same.
ccWrapper_addCVars () {
# See ../setup-hooks/role.bash
local role_post
getHostRoleEnvHook
if [ -d "$1/include" ]; then
export NIX_CFLAGS_COMPILE${role_post}+=" -isystem $1/include"
fi
if [ -d "$1/Library/Frameworks" ]; then
export NIX_CFLAGS_COMPILE${role_post}+=" -iframework $1/Library/Frameworks"
fi
}
# See ../setup-hooks/role.bash
getTargetRole
getTargetRoleWrapper
# We use the `targetOffset` to choose the right env hook to accumulate the right
# sort of deps (those with that offset).
addEnvHooks "$targetOffset" ccWrapper_addCVars
# Note 1: these come *after* $out in the PATH (see setup.sh).
# Note 2: phase separation makes this look useless to shellcheck.
# shellcheck disable=SC2157
if [ -n "@cc@" ]; then
addToSearchPath _PATH @cc@/bin
fi
# shellcheck disable=SC2157
if [ -n "@libc_bin@" ]; then
addToSearchPath _PATH @libc_bin@/bin
fi
# shellcheck disable=SC2157
if [ -n "@coreutils_bin@" ]; then
addToSearchPath _PATH @coreutils_bin@/bin
fi
# Export tool environment variables so various build systems use the right ones.
export NIX_CC${role_post}=@out@
export CC${role_post}=@named_cc@
export CXX${role_post}=@named_cxx@
export CC${role_post}=@named_cc@
export CXX${role_post}=@named_cxx@
# If unset, assume the default hardening flags.
: ${NIX_HARDENING_ENABLE="fortify stackprotector pic strictoverflow format relro bindnow"}
export NIX_HARDENING_ENABLE
# No local scope in sourced file
unset -v role_post
)NIXE9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh nix-archive-1(typeregularcontentsT# See cc-wrapper for comments.
var_templates_list=(
NIX_IGNORE_LD_THROUGH_GCC
NIX_LDFLAGS
NIX_LDFLAGS_BEFORE
NIX_LDFLAGS_AFTER
NIX_LDFLAGS_HARDEN
NIX_HARDENING_ENABLE
)
var_templates_bool=(
NIX_SET_BUILD_ID
NIX_DONT_SET_RPATH
)
accumulateRoles
for var in "${var_templates_list[@]}"; do
mangleVarList "$var" ${role_suffixes[@]+"${role_suffixes[@]}"}
done
for var in "${var_templates_bool[@]}"; do
mangleVarBool "$var" ${role_suffixes[@]+"${role_suffixes[@]}"}
done
if [ -e @out@/nix-support/libc-ldflags ]; then
NIX_LDFLAGS_@suffixSalt@+=" $(< @out@/nix-support/libc-ldflags)"
fi
if [ -e @out@/nix-support/libc-ldflags-before ]; then
NIX_LDFLAGS_BEFORE_@suffixSalt@="$(< @out@/nix-support/libc-ldflags-before) $NIX_LDFLAGS_BEFORE_@suffixSalt@"
fi
export NIX_BINTOOLS_WRAPPER_FLAGS_SET_@suffixSalt@=1
)NIXE8/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh nix-archive-1(typeregularcontentsV# Binutils Wrapper hygiene
#
# See comments in cc-wrapper's setup hook. This works exactly the same way.
# Skip setup hook if we're neither a build-time dep, nor, temporarily, doing a
# native compile.
#
# TODO(@Ericson2314): No native exception
[[ -z ${strictDeps-} ]] || (( "$hostOffset" < 0 )) || return 0
bintoolsWrapper_addLDVars () {
# See ../setup-hooks/role.bash
local role_post
getHostRoleEnvHook
if [[ -d "$1/lib64" && ! -L "$1/lib64" ]]; then
export NIX_LDFLAGS${role_post}+=" -L$1/lib64"
fi
if [[ -d "$1/lib" ]]; then
# Don't add the /lib directory if it actually doesn't contain any libraries. For instance,
# Python and Haskell packages often only have directories like $out/lib/ghc-8.4.3/ or
# $out/lib/python3.6/, so having them in LDFLAGS just makes the linker search unnecessary
# directories and bloats the size of the environment variable space.
local -a glob=( $1/lib/lib* )
if [ "${#glob[*]}" -gt 0 ]; then
export NIX_LDFLAGS${role_post}+=" -L$1/lib"
fi
fi
}
# See ../setup-hooks/role.bash
getTargetRole
getTargetRoleWrapper
addEnvHooks "$targetOffset" bintoolsWrapper_addLDVars
# shellcheck disable=SC2157
if [ -n "@bintools_bin@" ]; then
addToSearchPath _PATH @bintools_bin@/bin
fi
# shellcheck disable=SC2157
if [ -n "@libc_bin@" ]; then
addToSearchPath _PATH @libc_bin@/bin
fi
# shellcheck disable=SC2157
if [ -n "@coreutils_bin@" ]; then
addToSearchPath _PATH @coreutils_bin@/bin
fi
# Export tool environment variables so various build systems use the right ones.
export NIX_BINTOOLS${role_post}=@out@
for cmd in \
ar as ld nm objcopy objdump readelf ranlib strip strings size windres
do
if
PATH=$_PATH type -p "@targetPrefix@${cmd}" > /dev/null
then
export "${cmd^^}${role_post}=@targetPrefix@${cmd}";
fi
done
# If unset, assume the default hardening flags.
: ${NIX_HARDENING_ENABLE="fortify stackprotector pic strictoverflow format relro bindnow"}
export NIX_HARDENING_ENABLE
# No local scope in sourced file
unset -v role_post cmd upper_case
)NIXE9/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh nix-archive-1(typeregularcontents�#! @shell@
set -eu -o pipefail +o posix
shopt -s nullglob
if (( "${NIX_DEBUG:-0}" >= 7 )); then
set -x
fi
path_backup="$PATH"
# phase separation makes this look useless
# shellcheck disable=SC2157
if [ -n "@coreutils_bin@" ]; then
PATH="@coreutils_bin@/bin"
fi
source @out@/nix-support/utils.bash
if [ -z "${NIX_BINTOOLS_WRAPPER_FLAGS_SET_@suffixSalt@:-}" ]; then
source @out@/nix-support/add-flags.sh
fi
# Optionally filter out paths not refering to the store.
expandResponseParams "$@"
if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "${NIX_STORE:-}"
&& ( -z "$NIX_IGNORE_LD_THROUGH_GCC_@suffixSalt@" || -z "${NIX_LDFLAGS_SET_@suffixSalt@:-}" ) ]]; then
rest=()
nParams=${#params[@]}
declare -i n=0
while (( "$n" < "$nParams" )); do
p=${params[n]}
p2=${params[n+1]:-} # handle `p` being last one
if [ "${p:0:3}" = -L/ ] && badPath "${p:2}"; then
skip "${p:2}"
elif [ "$p" = -L ] && badPath "$p2"; then
n+=1; skip "$p2"
elif [ "$p" = -rpath ] && badPath "$p2"; then
n+=1; skip "$p2"
elif [ "$p" = -dynamic-linker ] && badPath "$p2"; then
n+=1; skip "$p2"
elif [ "${p:0:1}" = / ] && badPath "$p"; then
# We cannot skip this; barf.
echo "impure path \`$p' used in link" >&2
exit 1
elif [ "${p:0:9}" = --sysroot ]; then
# Our ld is not built with sysroot support (Can we fix that?)
:
else
rest+=("$p")
fi
n+=1
done
# Old bash empty array hack
params=(${rest+"${rest[@]}"})
fi
source @out@/nix-support/add-hardening.sh
extraAfter=()
extraBefore=(${hardeningLDFlags[@]+"${hardeningLDFlags[@]}"})
if [ -z "${NIX_LDFLAGS_SET_@suffixSalt@:-}" ]; then
extraAfter+=($NIX_LDFLAGS_@suffixSalt@)
extraBefore+=($NIX_LDFLAGS_BEFORE_@suffixSalt@)
fi
extraAfter+=($NIX_LDFLAGS_AFTER_@suffixSalt@)
# Specify the target emulation if nothing is passed in ("-m" overrides this
# environment variable). Ensures we never blindly fallback on targeting the host
# platform.
: ${LDEMULATION:=@emulation@}
# Three tasks:
#
# 1. Find all -L... switches for rpath
#
# 2. Find relocatable flag for build id.
#
# 3. Choose 32-bit dynamic linker if needed
declare -a libDirs
declare -A libs
declare -i relocatable=0 link32=0
if
[ "$NIX_DONT_SET_RPATH_@suffixSalt@" != 1 ] \
|| [ "$NIX_SET_BUILD_ID_@suffixSalt@" = 1 ] \
|| [ -e @out@/nix-support/dynamic-linker-m32 ]
then
prev=
# Old bash thinks empty arrays are undefined, ugh.
for p in \
${extraBefore+"${extraBefore[@]}"} \
${params+"${params[@]}"} \
${extraAfter+"${extraAfter[@]}"}
do
case "$prev" in
-L)
libDirs+=("$p")
;;
-l)
libs["lib${p}.so"]=1
;;
-m)
# Presumably only the last `-m` flag has any effect.
case "$p" in
elf_i386) link32=1;;
*) link32=0;;
esac
;;
-dynamic-linker | -plugin)
# Ignore this argument, or it will match *.so and be added to rpath.
;;
*)
case "$p" in
-L/*)
libDirs+=("${p:2}")
;;
-l?*)
libs["lib${p:2}.so"]=1
;;
"${NIX_STORE:-}"/*.so | "${NIX_STORE:-}"/*.so.*)
# This is a direct reference to a shared library.
libDirs+=("${p%/*}")
libs["${p##*/}"]=1
;;
-r | --relocatable | -i)
relocatable=1
esac
;;
esac
prev="$p"
done
fi
if [ -e "@out@/nix-support/dynamic-linker-m32" ] && (( "$link32" )); then
# We have an alternate 32-bit linker and we're producing a 32-bit ELF, let's
# use it.
extraAfter+=(
'-dynamic-linker'
"$(< @out@/nix-support/dynamic-linker-m32)"
)
fi
# Add all used dynamic libraries to the rpath.
if [ "$NIX_DONT_SET_RPATH_@suffixSalt@" != 1 ]; then
# For each directory in the library search path (-L...),
# see if it contains a dynamic library used by a -l... flag. If
# so, add the directory to the rpath.
# It's important to add the rpath in the order of -L..., so
# the link time chosen objects will be those of runtime linking.
declare -A rpaths
for dir in ${libDirs+"${libDirs[@]}"}; do
if [[ "$dir" =~ [/.][/.] ]] && dir2=$(readlink -f "$dir"); then
dir="$dir2"
fi
if [ -n "${rpaths[$dir]:-}" ] || [[ "$dir" != "${NIX_STORE:-}"/* ]]; then
# If the path is not in the store, don't add it to the rpath.
# This typically happens for libraries in /tmp that are later
# copied to $out/lib. If not, we're screwed.
continue
fi
for path in "$dir"/*; do
file="${path##*/}"
if [ "${libs[$file]:-}" ]; then
# This library may have been provided by a previous directory,
# but if that library file is inside an output of the current
# derivation, it can be deleted after this compilation and
# should be found in a later directory, so we add all
# directories that contain any of the libraries to rpath.
rpaths["$dir"]=1
extraAfter+=(-rpath "$dir")
break
fi
done
done
fi
# This is outside the DONT_SET_RPATH branch because it's more targeted and we
# usually want it (on Darwin) even if DONT_SET_RPATH is set.
if [ -n "${NIX_COREFOUNDATION_RPATH:-}" ]; then
extraAfter+=(-rpath $NIX_COREFOUNDATION_RPATH)
fi
# Only add --build-id if this is a final link. FIXME: should build gcc
# with --enable-linker-build-id instead?
if [ "$NIX_SET_BUILD_ID_@suffixSalt@" = 1 ] && ! (( "$relocatable" )); then
extraAfter+=(--build-id)
fi
# Optionally print debug info.
if (( "${NIX_DEBUG:-0}" >= 1 )); then
# Old bash workaround, see above.
echo "extra flags before to @prog@:" >&2
printf " %q\n" ${extraBefore+"${extraBefore[@]}"} >&2
echo "original flags to @prog@:" >&2
printf " %q\n" ${params+"${params[@]}"} >&2
echo "extra flags after to @prog@:" >&2
printf " %q\n" ${extraAfter+"${extraAfter[@]}"} >&2
fi
PATH="$path_backup"
# Old bash workaround, see above.
exec @prog@ \
${extraBefore+"${extraBefore[@]}"} \
${params+"${params[@]}"} \
${extraAfter+"${extraAfter[@]}"}
)NIXE9/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh nix-archive-1(typeregularcontents�# Since the same derivation can be depend on in multiple ways, we need to
# accumulate *each* role (i.e. host and target platforms relative the depending
# derivation) in which the derivation is used.
#
# The role is intened to be use as part of other variables names like
# - $NIX_SOMETHING${role_post}
function getRole() {
case $1 in
-1)
role_post='_FOR_BUILD'
;;
0)
role_post=''
;;
1)
role_post='_FOR_TARGET'
;;
*)
echo "@name@: used as improper sort of dependency" >2
return 1
;;
esac
}
# `hostOffset` describes how the host platform of the package is slid relative
# to the depending package. `targetOffset` likewise describes the target
# platform of the package. Both are brought into scope of the setup hook defined
# for dependency whose setup hook is being processed relative to the package
# being built.
function getHostRole() {
getRole "$hostOffset"
}
function getTargetRole() {
getRole "$targetOffset"
}
# `depHostOffset` describes how the host platform of the dependencies are slid
# relative to the depending package. `depTargetOffset` likewise describes the
# target platform of dependenices. Both are brought into scope of the
# environment hook defined for the dependency being applied relative to the
# package being built.
function getHostRoleEnvHook() {
getRole "$depHostOffset"
}
function getTargetRoleEnvHook() {
getRole "$depTargetOffset"
}
# This variant is inteneded specifically for code-prodocing tool wrapper scripts
# `NIX_@wrapperName@_TARGET_*_@suffixSalt@` tracks this (needs to be an exported
# env var so can't use fancier data structures).
function getTargetRoleWrapper() {
case $targetOffset in
-1)
export NIX_@wrapperName@_TARGET_BUILD_@suffixSalt@=1
;;
0)
export NIX_@wrapperName@_TARGET_HOST_@suffixSalt@=1
;;
1)
export NIX_@wrapperName@_TARGET_TARGET_@suffixSalt@=1
;;
*)
echo "@name@: used as improper sort of dependency" >2
return 1
;;
esac
}
)NIXE5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash nix-archive-1(typeregularcontents�declare -a hardeningLDFlags=()
declare -A hardeningEnableMap=()
# Intentionally word-split in case 'NIX_HARDENING_ENABLE' is defined in Nix. The
# array expansion also prevents undefined variables from causing trouble with
# `set -u`.
for flag in ${NIX_HARDENING_ENABLE_@suffixSalt@-}; do
hardeningEnableMap["$flag"]=1
done
# Remove unsupported flags.
for flag in @hardening_unsupported_flags@; do
unset -v "hardeningEnableMap[$flag]"
done
if (( "${NIX_DEBUG:-0}" >= 1 )); then
declare -a allHardeningFlags=(pie relro bindnow)
declare -A hardeningDisableMap=()
# Determine which flags were effectively disabled so we can report below.
for flag in "${allHardeningFlags[@]}"; do
if [[ -z "${hardeningEnableMap[$flag]-}" ]]; then
hardeningDisableMap[$flag]=1
fi
done
printf 'HARDENING: disabled flags:' >&2
(( "${#hardeningDisableMap[@]}" )) && printf ' %q' "${!hardeningDisableMap[@]}" >&2
echo >&2
if (( "${#hardeningEnableMap[@]}" )); then
echo 'HARDENING: Is active (not completely disabled with "all" flag)' >&2;
fi
fi
for flag in "${!hardeningEnableMap[@]}"; do
case $flag in
pie)
if [[ ! ("$*" =~ " -shared " || "$*" =~ " -static ") ]]; then
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling LDFlags -pie >&2; fi
hardeningLDFlags+=('-pie')
fi
;;
relro)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling relro >&2; fi
hardeningLDFlags+=('-z' 'relro')
;;
bindnow)
if (( "${NIX_DEBUG:-0}" >= 1 )); then echo HARDENING: enabling bindnow >&2; fi
hardeningLDFlags+=('-z' 'now')
;;
*)
# Ignore unsupported. Checked in Nix that at least *some*
# tool supports each flag.
;;
esac
done
)NIXE</nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildCommand","mkdir -p $out\nln -s /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib $out/lib\nln -s /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/include-glibc $out/include\n"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","bootstrap-stage0-glibc"),("nativeBuildInputs",""),("out","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXEF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv nix-archive-1(typeregularcontents� # Accumulate suffixes for taking in the right input parameters with the `mangle*`
# functions below. See setup-hook for details.
accumulateRoles() {
declare -ga role_suffixes=()
if [ "${NIX_@wrapperName@_TARGET_BUILD_@suffixSalt@:-}" ]; then
role_suffixes+=('_FOR_BUILD')
fi
if [ "${NIX_@wrapperName@_TARGET_HOST_@suffixSalt@:-}" ]; then
role_suffixes+=('')
fi
if [ "${NIX_@wrapperName@_TARGET_TARGET_@suffixSalt@:-}" ]; then
role_suffixes+=('_FOR_TARGET')
fi
}
mangleVarList() {
local var="$1"
shift
local -a role_suffixes=("$@")
local outputVar="${var}_@suffixSalt@"
declare -gx ${outputVar}+=''
# For each role we serve, we accumulate the input parameters into our own
# cc-wrapper-derivation-specific environment variables.
for suffix in "${role_suffixes[@]}"; do
local inputVar="${var}${suffix}"
if [ -v "$inputVar" ]; then
export ${outputVar}+="${!outputVar:+ }${!inputVar}"
fi
done
}
mangleVarBool() {
local var="$1"
shift
local -a role_suffixes=("$@")
local outputVar="${var}_@suffixSalt@"
declare -gxi ${outputVar}+=0
for suffix in "${role_suffixes[@]}"; do
local inputVar="${var}${suffix}"
if [ -v "$inputVar" ]; then
# "1" in the end makes `let` return success error code when
# expression itself evaluates to zero.
# We don't use `|| true` because that would silence actual
# syntax errors from bad variable values.
let "${outputVar} |= ${!inputVar:-0}" "1"
fi
done
}
skip () {
if (( "${NIX_DEBUG:-0}" >= 1 )); then
echo "skipping impure path $1" >&2
fi
}
# Checks whether a path is impure. E.g., `/lib/foo.so' is impure, but
# `/nix/store/.../lib/foo.so' isn't.
badPath() {
local p=$1
# Relative paths are okay (since they're presumably relative to
# the temporary build directory).
if [ "${p:0:1}" != / ]; then return 1; fi
# Otherwise, the path should refer to the store or some temporary
# directory (including the build directory).
test \
"$p" != "/dev/null" -a \
"${p#${NIX_STORE}}" = "$p" -a \
"${p#${NIX_BUILD_TOP}}" = "$p" -a \
"${p#/tmp}" = "$p" -a \
"${p#${TMP:-/tmp}}" = "$p" -a \
"${p#${TMPDIR:-/tmp}}" = "$p" -a \
"${p#${TEMP:-/tmp}}" = "$p" -a \
"${p#${TEMPDIR:-/tmp}}" = "$p"
}
expandResponseParams() {
declare -ga params=("$@")
local arg
for arg in "$@"; do
if [[ "$arg" == @* ]]; then
# phase separation makes this look useless
# shellcheck disable=SC2157
if [ -x "@expandResponseParams@" ]; then
# params is used by caller
#shellcheck disable=SC2034
readarray -d '' params < <("@expandResponseParams@" "$@")
return 0
fi
fi
done
}
)NIXE6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontentsDerive([("out","/nix/store/z9zvvgczdrmyjf66lm7qgz9zsw50vgv9-bootstrap-stage0-binutils-wrapper-","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh","/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("dynamicLinker","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/ld-linux-x86-64.so.2"),("emulation","elf64-x86-64"),("expand-response-params",""),("expandResponseParams","/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $bintools_bin > $out/nix-support/orig-bintools\n\nldPath=\"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin\"\nif [ -e $ldPath/as ]; then\n ln -s $ldPath/as $out/bin/as\nfi\n\nwrap ld /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh ${ld:-$ldPath/ld}\n\nfor variant in ld.gold ld.bfd ld.lld; do\n local underlying=$ldPath/$variant\n [[ -e \"$underlying\" ]] || continue\n wrap $variant /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh $underlying\ndone\n"),("libc_bin","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_dev","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_lib","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("name","bootstrap-stage0-binutils-wrapper-"),("nativeBuildInputs",""),("out","/nix/store/z9zvvgczdrmyjf66lm7qgz9zsw50vgv9-bootstrap-stage0-binutils-wrapper-"),("outputs","out"),("patches",""),("pname","bootstrap-stage0-binutils-wrapper"),("postFixup","touch \"$out/nix-support/libc-ldflags\"\necho \"-L/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib\" >> $out/nix-support/libc-ldflags\n\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc-dev\nif [[ -z ${dynamicLinker+x} ]]; then\n echo \"Don't know the name of the dynamic linker for platform 'x86_64-unknown-linux-gnu', so guessing instead.\" >&2\n local dynamicLinker=\"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/ld*.so.?\"\nfi\ndynamicLinker=($dynamicLinker)\n\ncase ${#dynamicLinker[@]} in\n 0) echo \"No dynamic linker found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\n 1) echo \"Using dynamic linker: '$dynamicLinker'\" >&2;;\n *) echo \"Multiple dynamic linkers found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\nesac\n\nif [ -n \"${dynamicLinker-}\" ]; then\n echo $dynamicLinker > $out/nix-support/dynamic-linker\n\nif [ -e /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/32/ld-linux.so.2 ]; then\n echo /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/32/ld-linux.so.2 > $out/nix-support/dynamic-linker-m32\nfi\necho -dynamic-linker \"$dynamicLinker\" >> $out/nix-support/libc-ldflags-before\nfi\nprintWords /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc > $out/nix-support/propagated-user-env-packages\nexport hardening_unsupported_flags=\"\"\nif [[ \"$($ldPath/ld -z now 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" bindnow\"\nfi\nif [[ \"$($ldPath/ld -z relro 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" relro\"\nfi\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version",""),("wrapperName","BINTOOLS_WRAPPER")]))NIXER/nix/store/nzsb5d5yyx74328f6agwprjnhc1rpnyz-bootstrap-stage0-binutils-wrapper-.drv
?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv9/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh9/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash</nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.shF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents�Derive([("out","/nix/store/hmwlad0xk4dpg9jj1rp15bsbgh066npx-bootstrap-stage1-gcc-wrapper-","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"]),("/nix/store/nzsb5d5yyx74328f6agwprjnhc1rpnyz-bootstrap-stage0-binutils-wrapper-.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh","/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools","/nix/store/z9zvvgczdrmyjf66lm7qgz9zsw50vgv9-bootstrap-stage0-binutils-wrapper-"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cc","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("expand-response-params",""),("expandResponseParams","/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $cc > $out/nix-support/orig-cc\n\nccPath=\"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin\"\nfor bbin in $bintools/bin/*; do\n mkdir -p \"$out/bin\"\n ln -s \"$bbin\" \"$out/bin/$(basename $bbin)\"\ndone\nexport named_cc=cc\nexport named_cxx=c++\n\nif [ -e $ccPath/gcc ]; then\n wrap gcc $wrapper $ccPath/gcc\n ln -s gcc $out/bin/cc\n export named_cc=gcc\n export named_cxx=g++\nelif [ -e $ccPath/clang ]; then\n wrap clang $wrapper $ccPath/clang\n ln -s clang $out/bin/cc\n export named_cc=clang\n export named_cxx=clang++\nfi\n\nif [ -e $ccPath/g++ ]; then\n wrap g++ $wrapper $ccPath/g++\n ln -s g++ $out/bin/c++\nelif [ -e $ccPath/clang++ ]; then\n wrap clang++ $wrapper $ccPath/clang++\n ln -s clang++ $out/bin/c++\nfi\n\nif [ -e $ccPath/cpp ]; then\n wrap cpp $wrapper $ccPath/cpp\nfi\n"),("libc_bin","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_dev","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_lib","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("name","bootstrap-stage1-gcc-wrapper-"),("nativeBuildInputs",""),("out","/nix/store/hmwlad0xk4dpg9jj1rp15bsbgh066npx-bootstrap-stage1-gcc-wrapper-"),("outputs","out"),("patches",""),("pname","bootstrap-stage1-gcc-wrapper"),("postFixup","touch \"$out/nix-support/cc-cflags\"\ntouch \"$out/nix-support/cc-ldflags\"\nif [[ -f \"$bintools/nix-support/dynamic-linker\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker\" \"$out/nix-support\"\nfi\nif [[ -f \"$bintools/nix-support/dynamic-linker-m32\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker-m32\" \"$out/nix-support\"\nfi\ntouch \"$out/nix-support/libc-cflags\"\ntouch \"$out/nix-support/libc-ldflags\"\necho \"-B/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/\" >> $out/nix-support/libc-crt1-cflags\necho \"-idirafter /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/include\" >> $out/nix-support/libc-cflags\nfor dir in \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools\"/lib/gcc/*/*/include-fixed; do\n echo '-idirafter' ${dir} >> $out/nix-support/libc-cflags\ndone\n\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc-dev\ntouch \"$out/nix-support/libcxx-cxxflags\"\ntouch \"$out/nix-support/libcxx-ldflags\"\nif [ -e \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" -a ! -L \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" ]; then\n ccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\n ccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\nfi\nccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\nccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\n\necho \"$ccLDFlags\" >> $out/nix-support/cc-ldflags\necho \"$ccCFlags\" >> $out/nix-support/cc-cflags\nexport hardening_unsupported_flags=\"\"\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs","/nix/store/z9zvvgczdrmyjf66lm7qgz9zsw50vgv9-bootstrap-stage0-binutils-wrapper-"),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version",""),("wrapper","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh"),("wrapperName","CC_WRAPPER")]))NIXEM/nix/store/8fj4q1xrlsb733rry08zvi64hap5pvig-bootstrap-stage1-gcc-wrapper-.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.shR/nix/store/nzsb5d5yyx74328f6agwprjnhc1rpnyz-bootstrap-stage0-binutils-wrapper-.drv5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bashF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents� Derive([("out","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8fj4q1xrlsb733rry08zvi64hap5pvig-bootstrap-stage1-gcc-wrapper-.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/hmwlad0xk4dpg9jj1rp15bsbgh066npx-bootstrap-stage1-gcc-wrapper-"),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage1-stdenv-linux"),("out","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.shM/nix/store/8fj4q1xrlsb733rry08zvi64hap5pvig-bootstrap-stage1-gcc-wrapper-.drv;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents7
#include <assert.h>
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct { char *data; size_t len, cap; } String;
void resize(String *s, size_t len) {
s->len = len;
if (s->cap < s->len) {
s->cap = s->len * 2;
s->data = (char *)realloc(s->data, s->cap);
assert(s->data);
}
}
void append(String *s, const char *data, size_t len) {
resize(s, s->len + len);
memcpy(s->data + s->len - len, data, len);
}
typedef enum { space = 0, other = 1, backslash = 2, apostrophe = 3, quotation_mark = 4 } CharClass;
typedef enum { outside, unq, unq_esc, sq, sq_esc, dq, dq_esc } State;
// current State -> CharClass -> next State
const State transitions[][5] = {
[outside] = {outside, unq, unq_esc, sq, dq},
[unq] = {outside, unq, unq_esc, sq, dq},
[unq_esc] = {unq, unq, unq, unq, unq},
[sq] = {sq, sq, sq_esc, unq, sq},
[sq_esc] = {sq, sq, sq, sq, sq},
[dq] = {dq, dq, dq_esc, dq, unq},
[dq_esc] = {dq, dq, dq, dq, dq},
};
CharClass charClass(int c) {
return c == '\\' ? backslash : c == '\'' ? apostrophe : c == '"' ? quotation_mark :
isspace(c) ? space : other;
}
// expandArg writes NULL-terminated expansions of `arg', a NULL-terminated
// string, to stdout. If arg does not begin with `@' or does not refer to a
// file, it is written as is. Otherwise the contents of the file are
// recursively expanded. On unexpected EOF in malformed response files an
// incomplete final argument is written, even if it is empty, to parse like GCC.
void expandArg(String *arg) {
FILE *f;
if (arg->data[0] != '@' || !(f = fopen(&arg->data[1], "r"))) {
fwrite(arg->data, 1, arg->len, stdout);
return;
}
resize(arg, 0);
State cur = outside;
int c;
do {
c = fgetc(f);
State next = transitions[cur][charClass(c)];
if ((cur == unq && next == outside) || (cur != outside && c == EOF)) {
append(arg, "", 1);
expandArg(arg);
resize(arg, 0);
} else if (cur == unq_esc || cur == sq_esc || cur == dq_esc ||
(cur == outside ? next == unq : cur == next)) {
char s = c;
append(arg, &s, 1);
}
cur = next;
} while (c != EOF);
fclose(f);
}
int main(int argc, char **argv) {
String arg = { 0 };
while (*++argv) {
resize(&arg, 0);
append(&arg, *argv, strlen(*argv) + 1);
expandArg(&arg);
}
free(arg.data);
return EXIT_SUCCESS;
}
)NIXED/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c nix-archive-1(typeregularcontentsXDerive([("out","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("buildPhase","\"$CC\" -std=c99 -O3 -o \"expand-response-params\" expand-response-params.c\n"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("installPhase","mkdir -p $prefix/bin\nmv expand-response-params $prefix/bin/\n"),("name","expand-response-params"),("nativeBuildInputs",""),("out","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("unpackPhase","cp \"$src\" expand-response-params.c\nsrc=$PWD\n")]))NIXEF/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drvM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shD/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c nix-archive-1(typeregularcontents�
Derive([("out","/nix/store/d1ww955lsl8ipb7iabylyij2wwjq1bqc-bootstrap-stage1-stdenv-linux","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh "),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage1-stdenv-linux"),("out","/nix/store/d1ww955lsl8ipb7iabylyij2wwjq1bqc-bootstrap-stage1-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/j609knn4ghacd4dj6ij0kbmax842jp40-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents�XFrom d55c3e36094f06bb1fb02f5eac19fdccf1d91f7e Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Wed, 8 Aug 2018 06:09:15 -0700
Subject: [PATCH] x86: Properly merge GNU_PROPERTY_X86_ISA_1_USED
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Without the GNU_PROPERTY_X86_ISA_1_USED property, all ISAs may be used.
If a bit in the GNU_PROPERTY_X86_ISA_1_USED property is unset, the
corresponding x86 instruction set isn’t used. When merging properties
from 2 input files and one input file doesn't have the
GNU_PROPERTY_X86_ISA_1_USED property, the output file shouldn't have
it neither. This patch removes the GNU_PROPERTY_X86_ISA_1_USED
property if an input file doesn't have it.
This patch replaces the GNU_PROPERTY_X86_ISA_1_USED property with the
GNU_PROPERTY_X86_ISA_1_NEEDED property which is the minimum ISA
requirement.
bfd/
PR ld/23486
* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove
GNU_PROPERTY_X86_ISA_1_USED if an input file doesn't have it.
(_bfd_x86_elf_link_setup_gnu_properties): Adding the
GNU_PROPERTY_X86_ISA_1_NEEDED, instead of
GNU_PROPERTY_X86_ISA_1_USED, property.
ld/
PR ld/23486
* testsuite/ld-i386/i386.exp: Run PR ld/23486 tests.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/pr23486a.d: New file.
* testsuite/ld-i386/pr23486b.d: Likewise.
* testsuite/ld-x86-64/pr23486a-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486a.d: Likewise.
* testsuite/ld-x86-64/pr23486a.s: Likewise.
* testsuite/ld-x86-64/pr23486b-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486b.d: Likewise.
* testsuite/ld-x86-64/pr23486b.s: Likewise.
* testsuite/ld-i386/property-3.r: Remove "x86 ISA used".
* testsuite/ld-i386/property-4.r: Likewise.
* testsuite/ld-i386/property-5.r: Likewise.
* testsuite/ld-i386/property-x86-ibt3a.d: Likewise.
* testsuite/ld-i386/property-x86-ibt3b.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3a.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3b.d: Likewise.
* testsuite/ld-x86-64/property-3.r: Likewise.
* testsuite/ld-x86-64/property-4.r: Likewise.
* testsuite/ld-x86-64/property-5.r: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise.
(cherry picked from commit f7309df20c4e787041cedc4a6aced89c15259e54)
---
bfd/elfxx-x86.c | 25 ++++++++++++---
ld/testsuite/ld-i386/i386.exp | 2 ++
ld/testsuite/ld-i386/pr23486a.d | 10 ++++++
ld/testsuite/ld-i386/pr23486b.d | 10 ++++++
ld/testsuite/ld-i386/property-3.r | 1 -
ld/testsuite/ld-i386/property-4.r | 1 -
ld/testsuite/ld-i386/property-5.r | 1 -
ld/testsuite/ld-i386/property-x86-ibt3a.d | 5 ++-
ld/testsuite/ld-i386/property-x86-ibt3b.d | 5 ++-
ld/testsuite/ld-i386/property-x86-shstk3a.d | 5 ++-
ld/testsuite/ld-i386/property-x86-shstk3b.d | 5 ++-
ld/testsuite/ld-x86-64/pr23486a-x32.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486a.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486a.s | 30 +++++++++++++++++
ld/testsuite/ld-x86-64/pr23486b-x32.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486b.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486b.s | 30 +++++++++++++++++
ld/testsuite/ld-x86-64/property-3.r | 1 -
ld/testsuite/ld-x86-64/property-4.r | 1 -
ld/testsuite/ld-x86-64/property-5.r | 1 -
.../ld-x86-64/property-x86-ibt3a-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-ibt3a.d | 5 ++-
.../ld-x86-64/property-x86-ibt3b-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-ibt3b.d | 5 ++-
.../ld-x86-64/property-x86-shstk3a-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-shstk3a.d | 5 ++-
.../ld-x86-64/property-x86-shstk3b-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-shstk3b.d | 5 ++-
ld/testsuite/ld-x86-64/x86-64.exp | 4 +++
31 files changed, 211 insertions(+), 47 deletions(-)
create mode 100644 ld/testsuite/ld-i386/pr23486a.d
create mode 100644 ld/testsuite/ld-i386/pr23486b.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a.s
create mode 100644 ld/testsuite/ld-x86-64/pr23486b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486b.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486b.s
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -2407,12 +2407,27 @@ _bfd_x86_elf_merge_gnu_properties (struct bfd_link_info *info,
switch (pr_type)
{
case GNU_PROPERTY_X86_ISA_1_USED:
+ if (aprop == NULL || bprop == NULL)
+ {
+ /* Only one of APROP and BPROP can be NULL. */
+ if (aprop != NULL)
+ {
+ /* Remove this property since the other input file doesn't
+ have it. */
+ aprop->pr_kind = property_remove;
+ updated = TRUE;
+ }
+ break;
+ }
+ goto or_property;
+
case GNU_PROPERTY_X86_ISA_1_NEEDED:
if (aprop != NULL && bprop != NULL)
{
+or_property:
number = aprop->u.number;
aprop->u.number = number | bprop->u.number;
- /* Remove the property if ISA bits are empty. */
+ /* Remove the property if all bits are empty. */
if (aprop->u.number == 0)
{
aprop->pr_kind = property_remove;
@@ -2428,14 +2443,14 @@ _bfd_x86_elf_merge_gnu_properties (struct bfd_link_info *info,
{
if (aprop->u.number == 0)
{
- /* Remove APROP if ISA bits are empty. */
+ /* Remove APROP if all bits are empty. */
aprop->pr_kind = property_remove;
updated = TRUE;
}
}
else
{
- /* Return TRUE if APROP is NULL and ISA bits of BPROP
+ /* Return TRUE if APROP is NULL and all bits of BPROP
aren't empty to indicate that BPROP should be added
to ABFD. */
updated = bprop->u.number != 0;
@@ -2582,9 +2597,9 @@ _bfd_x86_elf_link_setup_gnu_properties
{
/* If the separate code program header is needed, make sure
that the first read-only PT_LOAD segment has no code by
- adding a GNU_PROPERTY_X86_ISA_1_USED note. */
+ adding a GNU_PROPERTY_X86_ISA_1_NEEDED note. */
prop = _bfd_elf_get_property (ebfd,
- GNU_PROPERTY_X86_ISA_1_USED,
+ GNU_PROPERTY_X86_ISA_1_NEEDED,
4);
prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
prop->pr_kind = property_number;
diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp
index 6d794fe653..78dad02579 100644
--- a/ld/testsuite/ld-i386/i386.exp
+++ b/ld/testsuite/ld-i386/i386.exp
@@ -462,6 +462,8 @@ run_dump_test "pr23189"
run_dump_test "pr23194"
run_dump_test "pr23372a"
run_dump_test "pr23372b"
+run_dump_test "pr23486a"
+run_dump_test "pr23486b"
if { !([istarget "i?86-*-linux*"]
|| [istarget "i?86-*-gnu*"]
diff --git a/ld/testsuite/ld-i386/pr23486a.d b/ld/testsuite/ld-i386/pr23486a.d
new file mode 100644
index 0000000000..41a6dcf7d5
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr23486a.d
@@ -0,0 +1,10 @@
+#source: ../ld-x86-64/pr23486a.s
+#source: ../ld-x86-64/pr23486b.s
+#as: --32
+#ld: -r -m elf_i386
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-i386/pr23486b.d b/ld/testsuite/ld-i386/pr23486b.d
new file mode 100644
index 0000000000..08019b7274
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr23486b.d
@@ -0,0 +1,10 @@
+#source: ../ld-x86-64/pr23486b.s
+#source: ../ld-x86-64/pr23486a.s
+#as: --32
+#ld: -r -m elf_i386
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-i386/property-3.r b/ld/testsuite/ld-i386/property-3.r
index 0ed91f5922..d03203c1e5 100644
--- a/ld/testsuite/ld-i386/property-3.r
+++ b/ld/testsuite/ld-i386/property-3.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: 586, SSE
x86 ISA needed: i486, 586
#pass
diff --git a/ld/testsuite/ld-i386/property-4.r b/ld/testsuite/ld-i386/property-4.r
index cb2bc15d9a..da295eb6c7 100644
--- a/ld/testsuite/ld-i386/property-4.r
+++ b/ld/testsuite/ld-i386/property-4.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-i386/property-5.r b/ld/testsuite/ld-i386/property-5.r
index 552965058c..e4141594b3 100644
--- a/ld/testsuite/ld-i386/property-5.r
+++ b/ld/testsuite/ld-i386/property-5.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x900000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-i386/property-x86-ibt3a.d b/ld/testsuite/ld-i386/property-x86-ibt3a.d
index 4bb35b00fb..0aedea1614 100644
--- a/ld/testsuite/ld-i386/property-x86-ibt3a.d
+++ b/ld/testsuite/ld-i386/property-x86-ibt3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-i386/property-x86-ibt3b.d b/ld/testsuite/ld-i386/property-x86-ibt3b.d
index 418d58a8f7..bd69ac6478 100644
--- a/ld/testsuite/ld-i386/property-x86-ibt3b.d
+++ b/ld/testsuite/ld-i386/property-x86-ibt3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-i386/property-x86-shstk3a.d b/ld/testsuite/ld-i386/property-x86-shstk3a.d
index e261038f60..76d2a39f2c 100644
--- a/ld/testsuite/ld-i386/property-x86-shstk3a.d
+++ b/ld/testsuite/ld-i386/property-x86-shstk3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-i386/property-x86-shstk3b.d b/ld/testsuite/ld-i386/property-x86-shstk3b.d
index 25f3d2361e..e770ecffa5 100644
--- a/ld/testsuite/ld-i386/property-x86-shstk3b.d
+++ b/ld/testsuite/ld-i386/property-x86-shstk3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-x86-64/pr23486a-x32.d b/ld/testsuite/ld-x86-64/pr23486a-x32.d
new file mode 100644
index 0000000000..6d9fa68cdb
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486a-x32.d
@@ -0,0 +1,10 @@
+#source: pr23486a.s
+#source: pr23486b.s
+#as: --x32
+#ld: -r -m elf32_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486a.d b/ld/testsuite/ld-x86-64/pr23486a.d
new file mode 100644
index 0000000000..dc2b7bf760
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486a.d
@@ -0,0 +1,10 @@
+#source: pr23486a.s
+#source: pr23486b.s
+#as: --64 -defsym __64_bit__=1
+#ld: -r -m elf_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486a.s b/ld/testsuite/ld-x86-64/pr23486a.s
new file mode 100644
index 0000000000..a07d0c7ced
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486a.s
@@ -0,0 +1,30 @@
+ .section ".note.gnu.property", "a"
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ .long 1f - 0f /* name length. */
+ .long 4f - 1f /* data length. */
+ /* NT_GNU_PROPERTY_TYPE_0 */
+ .long 5 /* note type. */
+0:
+ .asciz "GNU" /* vendor name. */
+1:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ /* GNU_PROPERTY_X86_ISA_1_USED */
+ .long 0xc0000000 /* pr_type. */
+ .long 3f - 2f /* pr_datasz. */
+2:
+ .long 0xa
+3:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+4:
diff --git a/ld/testsuite/ld-x86-64/pr23486b-x32.d b/ld/testsuite/ld-x86-64/pr23486b-x32.d
new file mode 100644
index 0000000000..0445e69d82
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486b-x32.d
@@ -0,0 +1,10 @@
+#source: pr23486b.s
+#source: pr23486a.s
+#as: --x32
+#ld: -r -m elf32_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486b.d b/ld/testsuite/ld-x86-64/pr23486b.d
new file mode 100644
index 0000000000..dc2b7bf760
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486b.d
@@ -0,0 +1,10 @@
+#source: pr23486a.s
+#source: pr23486b.s
+#as: --64 -defsym __64_bit__=1
+#ld: -r -m elf_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486b.s b/ld/testsuite/ld-x86-64/pr23486b.s
new file mode 100644
index 0000000000..c5167eeb65
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486b.s
@@ -0,0 +1,30 @@
+ .section ".note.gnu.property", "a"
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ .long 1f - 0f /* name length. */
+ .long 4f - 1f /* data length. */
+ /* NT_GNU_PROPERTY_TYPE_0 */
+ .long 5 /* note type. */
+0:
+ .asciz "GNU" /* vendor name. */
+1:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ /* GNU_PROPERTY_X86_ISA_1_NEEDED */
+ .long 0xc0000001 /* pr_type. */
+ .long 3f - 2f /* pr_datasz. */
+2:
+ .long 0x3
+3:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+4:
diff --git a/ld/testsuite/ld-x86-64/property-3.r b/ld/testsuite/ld-x86-64/property-3.r
index 0ed91f5922..d03203c1e5 100644
--- a/ld/testsuite/ld-x86-64/property-3.r
+++ b/ld/testsuite/ld-x86-64/property-3.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: 586, SSE
x86 ISA needed: i486, 586
#pass
diff --git a/ld/testsuite/ld-x86-64/property-4.r b/ld/testsuite/ld-x86-64/property-4.r
index cb2bc15d9a..da295eb6c7 100644
--- a/ld/testsuite/ld-x86-64/property-4.r
+++ b/ld/testsuite/ld-x86-64/property-4.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-x86-64/property-5.r b/ld/testsuite/ld-x86-64/property-5.r
index 552965058c..e4141594b3 100644
--- a/ld/testsuite/ld-x86-64/property-5.r
+++ b/ld/testsuite/ld-x86-64/property-5.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x900000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d b/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d
index 011426f5a4..4cec728dc7 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3a.d b/ld/testsuite/ld-x86-64/property-x86-ibt3a.d
index 1b4229a037..a8df49a351 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3a.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d b/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d
index 290ed6abf1..c112626711 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3b.d b/ld/testsuite/ld-x86-64/property-x86-ibt3b.d
index 1142e03272..f10dffdc2c 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3b.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d b/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d
index 819542d181..0147a3c7b6 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3a.d b/ld/testsuite/ld-x86-64/property-x86-shstk3a.d
index 4c5d0e0a18..1f8c2dc929 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3a.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d b/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d
index ba181e0bc5..7ca2539ca5 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3b.d b/ld/testsuite/ld-x86-64/property-x86-shstk3b.d
index 5216f385dd..f66a40e449 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3b.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp
index 6edb9e86f4..ae21e554ad 100644
--- a/ld/testsuite/ld-x86-64/x86-64.exp
+++ b/ld/testsuite/ld-x86-64/x86-64.exp
@@ -403,6 +403,10 @@ run_dump_test "pr23372a"
run_dump_test "pr23372a-x32"
run_dump_test "pr23372b"
run_dump_test "pr23372b-x32"
+run_dump_test "pr23486a"
+run_dump_test "pr23486a-x32"
+run_dump_test "pr23486b"
+run_dump_test "pr23486b-x32"
if { ![istarget "x86_64-*-linux*"] && ![istarget "x86_64-*-nacl*"]} {
return
--
2.20.1
)NIXEe/nix/store/064jmylcq7h6fa5asg0rna9awcqz3765-0001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/rrzja19jbqxbfryp2zchb2ma5h041rxh-zlib-1.2.11.tar.gz","sha256","c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","zlib-1.2.11.tar.gz"),("out","/nix/store/rrzja19jbqxbfryp2zchb2ma5h041rxh-zlib-1.2.11.tar.gz"),("outputHash","c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://www.zlib.net/fossils/zlib-1.2.11.tar.gz"),("urls","https://www.zlib.net/fossils/zlib-1.2.11.tar.gz")]))NIXEB/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/jfsx1kxdwj5jy1xha5p5sfhgqin65gww-zlib-1.2.11-dev","",""),("out","/nix/store/7rgz6iv0q8119r1755i902nkks6hp430-zlib-1.2.11","",""),("static","/nix/store/7rp9qc82hhayz98vw8n6vn0fwmyw1m3f-zlib-1.2.11-static","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-static-libgcc"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--shared"),("configurePlatforms",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/jfsx1kxdwj5jy1xha5p5sfhgqin65gww-zlib-1.2.11-dev"),("doCheck","1"),("doInstallCheck",""),("dontStrip",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("installFlags",""),("makeFlags","PREFIX= SHARED_MODE=1"),("name","zlib-1.2.11"),("nativeBuildInputs",""),("out","/nix/store/7rgz6iv0q8119r1755i902nkks6hp430-zlib-1.2.11"),("outputDoc","dev"),("outputs","out dev static"),("patches",""),("postInstall","moveToOutput lib/libz.a \"$static\"\n"),("postPatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("src","/nix/store/rrzja19jbqxbfryp2zchb2ma5h041rxh-zlib-1.2.11.tar.gz"),("static","/nix/store/7rp9qc82hhayz98vw8n6vn0fwmyw1m3f-zlib-1.2.11-static"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.2.11")]))NIXE;/nix/store/0xc63namfcpqa688sg3ki9vwrjck7i84-zlib-1.2.11.drvM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shB/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv nix-archive-1(type directoryentry(name?0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patchnode(typeregularcontents�=From 6737a6b34f4823deb7142f27b4074831a37ac1e1 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Fri, 20 Jul 2018 09:18:47 -0700
Subject: [PATCH] x86: Add a GNU_PROPERTY_X86_ISA_1_USED note if needed
When -z separate-code, which is enabled by default for Linux/x86, is
used to create executable, ld won't place any data in the code-only
PT_LOAD segment. If there are no data sections placed before the
code-only PT_LOAD segment, the program headers won't be mapped into
any PT_LOAD segment. When the executable tries to access it (based
on the program header address passed in AT_PHDR), it will lead to
segfault. This patch inserts a GNU_PROPERTY_X86_ISA_1_USED note if
there may be no data sections before the text section so that the
first PT_LOAD segment won't be code-only and will contain the program
header.
Testcases are adjusted to either pass "-z noseparate-code" to ld or
discard the .note.gnu.property section. A Linux/x86 run-time test is
added.
bfd/
PR ld/23428
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): If the
separate code program header is needed, make sure that the first
read-only PT_LOAD segment has no code by adding a
GNU_PROPERTY_X86_ISA_1_USED note.
ld/
PR ld/23428
* testsuite/ld-elf/linux-x86.S: New file.
* testsuite/ld-elf/linux-x86.exp: Likewise.
* testsuite/ld-elf/pr23428.c: Likewise.
* testsuite/ld-elf/sec64k.exp: Pass "-z noseparate-code" to ld
for Linux/x86 targets.
* testsuite/ld-i386/abs-iamcu.d: Likewise.
* testsuite/ld-i386/abs.d: Likewise.
* testsuite/ld-i386/pr12718.d: Likewise.
* testsuite/ld-i386/pr12921.d: Likewise.
* testsuite/ld-x86-64/abs-k1om.d: Likewise.
* testsuite/ld-x86-64/abs-l1om.d: Likewise.
* testsuite/ld-x86-64/abs.d: Likewise.
* testsuite/ld-x86-64/pr12718.d: Likewise.
* testsuite/ld-x86-64/pr12921.d: Likewise.
* testsuite/ld-linkonce/zeroeh.ld: Discard .note.gnu.property
section.
* testsuite/ld-scripts/print-memory-usage.t: Likewise.
* testsuite/ld-scripts/size-2.t: Likewise.
* testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Use ld
to create executable if language is "asm".
(cherry picked from commit 241e64e3b42cd9eba514b8e0ad2ef39a337f10a5)
---
bfd/elfxx-x86.c | 60 ++++++++++++++-----
ld/testsuite/ld-elf/linux-x86.S | 63 ++++++++++++++++++++
ld/testsuite/ld-elf/linux-x86.exp | 46 ++++++++++++++
ld/testsuite/ld-elf/pr23428.c | 43 +++++++++++++
ld/testsuite/ld-elf/sec64k.exp | 2 +
ld/testsuite/ld-i386/abs-iamcu.d | 2 +-
ld/testsuite/ld-i386/abs.d | 2 +-
ld/testsuite/ld-i386/pr12718.d | 2 +-
ld/testsuite/ld-i386/pr12921.d | 2 +-
ld/testsuite/ld-linkonce/zeroeh.ld | 1 +
ld/testsuite/ld-scripts/print-memory-usage.t | 2 +
ld/testsuite/ld-scripts/size-2.t | 1 +
ld/testsuite/ld-x86-64/abs-k1om.d | 2 +-
ld/testsuite/ld-x86-64/abs-l1om.d | 2 +-
ld/testsuite/ld-x86-64/abs.d | 2 +-
ld/testsuite/ld-x86-64/pr12718.d | 2 +-
ld/testsuite/ld-x86-64/pr12921.d | 2 +-
ld/testsuite/lib/ld-lib.exp | 5 +-
20 files changed, 248 insertions(+), 25 deletions(-)
create mode 100644 ld/testsuite/ld-elf/linux-x86.S
create mode 100644 ld/testsuite/ld-elf/linux-x86.exp
create mode 100644 ld/testsuite/ld-elf/pr23428.c
diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
index a2497aab86..2e4ff88f1f 100644
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -2524,6 +2524,7 @@ _bfd_x86_elf_link_setup_gnu_properties
const struct elf_backend_data *bed;
unsigned int class_align = ABI_64_P (info->output_bfd) ? 3 : 2;
unsigned int got_align;
+ bfd_boolean has_text = FALSE;
features = 0;
if (info->ibt)
@@ -2538,24 +2539,59 @@ _bfd_x86_elf_link_setup_gnu_properties
if (bfd_get_flavour (pbfd) == bfd_target_elf_flavour
&& bfd_count_sections (pbfd) != 0)
{
+ if (!has_text)
+ {
+ /* Check if there is no non-empty text section. */
+ sec = bfd_get_section_by_name (pbfd, ".text");
+ if (sec != NULL && sec->size != 0)
+ has_text = TRUE;
+ }
+
ebfd = pbfd;
if (elf_properties (pbfd) != NULL)
break;
}
- if (ebfd != NULL && features)
+ bed = get_elf_backend_data (info->output_bfd);
+
+ htab = elf_x86_hash_table (info, bed->target_id);
+ if (htab == NULL)
+ return pbfd;
+
+ if (ebfd != NULL)
{
- /* If features is set, add GNU_PROPERTY_X86_FEATURE_1_IBT and
- GNU_PROPERTY_X86_FEATURE_1_SHSTK. */
- prop = _bfd_elf_get_property (ebfd,
- GNU_PROPERTY_X86_FEATURE_1_AND,
- 4);
- prop->u.number |= features;
- prop->pr_kind = property_number;
+ prop = NULL;
+ if (features)
+ {
+ /* If features is set, add GNU_PROPERTY_X86_FEATURE_1_IBT and
+ GNU_PROPERTY_X86_FEATURE_1_SHSTK. */
+ prop = _bfd_elf_get_property (ebfd,
+ GNU_PROPERTY_X86_FEATURE_1_AND,
+ 4);
+ prop->u.number |= features;
+ prop->pr_kind = property_number;
+ }
+ else if (has_text
+ && elf_properties (ebfd) == NULL
+ && elf_tdata (info->output_bfd)->o->build_id.sec == NULL
+ && !htab->elf.dynamic_sections_created
+ && !info->traditional_format
+ && (info->output_bfd->flags & D_PAGED) != 0
+ && info->separate_code)
+ {
+ /* If the separate code program header is needed, make sure
+ that the first read-only PT_LOAD segment has no code by
+ adding a GNU_PROPERTY_X86_ISA_1_USED note. */
+ prop = _bfd_elf_get_property (ebfd,
+ GNU_PROPERTY_X86_ISA_1_USED,
+ 4);
+ prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
+ prop->pr_kind = property_number;
+ }
/* Create the GNU property note section if needed. */
- if (pbfd == NULL)
+ if (prop != NULL && pbfd == NULL)
{
sec = bfd_make_section_with_flags (ebfd,
NOTE_GNU_PROPERTY_SECTION_NAME,
@@ -2581,12 +2617,6 @@ error_alignment:
pbfd = _bfd_elf_link_setup_gnu_properties (info);
- bed = get_elf_backend_data (info->output_bfd);
-
- htab = elf_x86_hash_table (info, bed->target_id);
- if (htab == NULL)
- return pbfd;
-
htab->r_info = init_table->r_info;
htab->r_sym = init_table->r_sym;
diff --git a/ld/testsuite/ld-elf/linux-x86.S b/ld/testsuite/ld-elf/linux-x86.S
new file mode 100644
index 0000000000..bdf40c6e01
--- /dev/null
+++ b/ld/testsuite/ld-elf/linux-x86.S
@@ -0,0 +1,63 @@
+ .text
+ .globl _start
+ .type _start,@function
+ .p2align 4
+_start:
+ xorl %ebp, %ebp
+#ifdef __LP64__
+ popq %rdi
+ movq %rsp, %rsi
+ andq $~15, %rsp
+#elif defined __x86_64__
+ mov (%rsp),%edi
+ addl $4,%esp
+ movl %esp, %esi
+ andl $~15, %esp
+#else
+ popl %esi
+ movl %esp, %ecx
+ andl $~15, %esp
+
+ subl $8,%esp
+ pushl %ecx
+ pushl %esi
+#endif
+
+ call main
+
+ hlt
+
+ .type syscall, @function
+ .globl syscall
+ .p2align 4
+syscall:
+#ifdef __x86_64__
+ movq %rdi, %rax /* Syscall number -> rax. */
+ movq %rsi, %rdi /* shift arg1 - arg5. */
+ movq %rdx, %rsi
+ movq %rcx, %rdx
+ movq %r8, %r10
+ movq %r9, %r8
+ movq 8(%rsp),%r9 /* arg6 is on the stack. */
+ syscall /* Do the system call. */
+#else
+ push %ebp
+ push %edi
+ push %esi
+ push %ebx
+ mov 0x2c(%esp),%ebp
+ mov 0x28(%esp),%edi
+ mov 0x24(%esp),%esi
+ mov 0x20(%esp),%edx
+ mov 0x1c(%esp),%ecx
+ mov 0x18(%esp),%ebx
+ mov 0x14(%esp),%eax
+ int $0x80
+ pop %ebx
+ pop %esi
+ pop %edi
+ pop %ebp
+#endif
+ ret /* Return to caller. */
+ .size syscall, .-syscall
+ .section .note.GNU-stack,"",@progbits
diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp
new file mode 100644
index 0000000000..36217c6fb4
--- /dev/null
+++ b/ld/testsuite/ld-elf/linux-x86.exp
@@ -0,0 +1,46 @@
+# Expect script for simple native Linux/x86 tests.
+# Copyright (C) 2018 Free Software Foundation, Inc.
+#
+# This file is part of the GNU Binutils.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program 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 a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+#
+
+# Test very simple native Linux/x86 programs with linux-x86.S.
+if { ![isnative] || [which $CC] == 0 \
+ || (![istarget "i?86-*-linux*"] \
+ && ![istarget "x86_64-*-linux*"] \
+ && ![istarget "amd64-*-linux*"]) } {
+ return
+}
+
+# Add $PLT_CFLAGS if PLT is expected.
+global PLT_CFLAGS
+# Add $NOPIE_CFLAGS and $NOPIE_LDFLAGS if non-PIE is required.
+global NOPIE_CFLAGS NOPIE_LDFLAGS
+
+run_ld_link_exec_tests [list \
+ [list \
+ "Run PR ld/23428 test" \
+ "--no-dynamic-linker -z separate-code" \
+ "" \
+ { linux-x86.S pr23428.c } \
+ "pr23428" \
+ "pass.out" \
+ "$NOPIE_CFLAGS -fno-asynchronous-unwind-tables" \
+ "asm" \
+ ] \
+]
diff --git a/ld/testsuite/ld-elf/pr23428.c b/ld/testsuite/ld-elf/pr23428.c
new file mode 100644
index 0000000000..3631ed7926
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr23428.c
@@ -0,0 +1,43 @@
+#include <unistd.h>
+#include <link.h>
+#include <syscall.h>
+
+#define STRING_COMMA_LEN(STR) (STR), (sizeof (STR) - 1)
+
+int
+main (int argc, char **argv)
+{
+ char **ev = &argv[argc + 1];
+ char **evp = ev;
+ ElfW(auxv_t) *av;
+ const ElfW(Phdr) *phdr = NULL;
+ size_t phnum = 0;
+ size_t loadnum = 0;
+ int fd = STDOUT_FILENO;
+ size_t i;
+
+ while (*evp++ != NULL)
+ ;
+
+ av = (ElfW(auxv_t) *) evp;
+
+ for (; av->a_type != AT_NULL; ++av)
+ switch (av->a_type)
+ {
+ case AT_PHDR:
+ phdr = (const void *) av->a_un.a_val;
+ break;
+ case AT_PHNUM:
+ phnum = av->a_un.a_val;
+ break;
+ }
+
+ for (i = 0; i < phnum; i++, phdr++)
+ if (phdr->p_type == PT_LOAD)
+ loadnum++;
+
+ syscall (SYS_write, fd, STRING_COMMA_LEN ("PASS\n"));
+
+ syscall (SYS_exit, !loadnum);
+ return 0;
+}
diff --git a/ld/testsuite/ld-elf/sec64k.exp b/ld/testsuite/ld-elf/sec64k.exp
index b58139e9dd..3909c0eaa1 100644
--- a/ld/testsuite/ld-elf/sec64k.exp
+++ b/ld/testsuite/ld-elf/sec64k.exp
@@ -177,6 +177,8 @@ if { ![istarget "d10v-*-*"]
foreach sfile $sfiles { puts $ofd "#source: $sfile" }
if { [istarget spu*-*-*] } {
puts $ofd "#ld: --local-store 0:0"
+ } elseif { [istarget "i?86-*-linux*"] || [istarget "x86_64-*-linux*"] } {
+ puts $ofd "#ld: -z noseparate-code"
} else {
puts $ofd "#ld:"
}
diff --git a/ld/testsuite/ld-i386/abs-iamcu.d b/ld/testsuite/ld-i386/abs-iamcu.d
index ac9beff2e5..aba7d6b03f 100644
--- a/ld/testsuite/ld-i386/abs-iamcu.d
+++ b/ld/testsuite/ld-i386/abs-iamcu.d
@@ -2,7 +2,7 @@
#source: abs.s
#source: zero.s
#as: --32 -march=iamcu
-#ld: -m elf_iamcu
+#ld: -m elf_iamcu -z noseparate-code
#objdump: -rs -j .text
.*: file format .*
diff --git a/ld/testsuite/ld-i386/abs.d b/ld/testsuite/ld-i386/abs.d
index e660aca524..191ee4456a 100644
--- a/ld/testsuite/ld-i386/abs.d
+++ b/ld/testsuite/ld-i386/abs.d
@@ -2,7 +2,7 @@
#as: --32
#source: abs.s
#source: zero.s
-#ld: -melf_i386
+#ld: -melf_i386 -z noseparate-code
#objdump: -rs
.*: file format .*
diff --git a/ld/testsuite/ld-i386/pr12718.d b/ld/testsuite/ld-i386/pr12718.d
index ec51540a42..7eba52d95e 100644
--- a/ld/testsuite/ld-i386/pr12718.d
+++ b/ld/testsuite/ld-i386/pr12718.d
@@ -1,6 +1,6 @@
#name: PR ld/12718
#as: --32
-#ld: -melf_i386
+#ld: -melf_i386 -z noseparate-code
#readelf: -S
There are 5 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/ld-i386/pr12921.d b/ld/testsuite/ld-i386/pr12921.d
index e49079b3c8..ea2da3eb51 100644
--- a/ld/testsuite/ld-i386/pr12921.d
+++ b/ld/testsuite/ld-i386/pr12921.d
@@ -1,6 +1,6 @@
#name: PR ld/12921
#as: --32
-#ld: -melf_i386
+#ld: -melf_i386 -z noseparate-code
#readelf: -S --wide
There are 7 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/ld-linkonce/zeroeh.ld b/ld/testsuite/ld-linkonce/zeroeh.ld
index b22eaa12c9..f89855a08f 100644
--- a/ld/testsuite/ld-linkonce/zeroeh.ld
+++ b/ld/testsuite/ld-linkonce/zeroeh.ld
@@ -2,4 +2,5 @@ SECTIONS {
.text 0xa00 : { *(.text); *(.gnu.linkonce.t.*) }
.gcc_except_table 0x2000 : { *(.gcc_except_table) }
.eh_frame 0x4000 : { *(.eh_frame) }
+ /DISCARD/ : { *(.note.gnu.property) }
}
diff --git a/ld/testsuite/ld-scripts/print-memory-usage.t b/ld/testsuite/ld-scripts/print-memory-usage.t
index 5ff057a5e3..6eda1d2dc4 100644
--- a/ld/testsuite/ld-scripts/print-memory-usage.t
+++ b/ld/testsuite/ld-scripts/print-memory-usage.t
@@ -11,4 +11,6 @@ SECTIONS
*(.data)
*(.rw)
}
+
+ /DISCARD/ : { *(.note.gnu.property) }
}
diff --git a/ld/testsuite/ld-scripts/size-2.t b/ld/testsuite/ld-scripts/size-2.t
index 723863995e..c3c4eddab4 100644
--- a/ld/testsuite/ld-scripts/size-2.t
+++ b/ld/testsuite/ld-scripts/size-2.t
@@ -18,4 +18,5 @@ SECTIONS
LONG (SIZEOF (.tdata))
LONG (SIZEOF (.tbss))
} :image
+ /DISCARD/ : { *(.note.gnu.property) }
}
diff --git a/ld/testsuite/ld-x86-64/abs-k1om.d b/ld/testsuite/ld-x86-64/abs-k1om.d
index 2c26639fc0..6b0fde0eed 100644
--- a/ld/testsuite/ld-x86-64/abs-k1om.d
+++ b/ld/testsuite/ld-x86-64/abs-k1om.d
@@ -2,7 +2,7 @@
#source: ../ld-i386/abs.s
#source: ../ld-i386/zero.s
#as: --64 -march=k1om
-#ld: -m elf_k1om
+#ld: -m elf_k1om -z noseparate-code
#objdump: -rs -j .text
.*: file format .*
diff --git a/ld/testsuite/ld-x86-64/abs-l1om.d b/ld/testsuite/ld-x86-64/abs-l1om.d
index 1fb96d44b7..f87869f9d0 100644
--- a/ld/testsuite/ld-x86-64/abs-l1om.d
+++ b/ld/testsuite/ld-x86-64/abs-l1om.d
@@ -2,7 +2,7 @@
#source: ../ld-i386/abs.s
#source: ../ld-i386/zero.s
#as: --64 -march=l1om
-#ld: -m elf_l1om
+#ld: -m elf_l1om -z noseparate-code
#objdump: -rs -j .text
#target: x86_64-*-linux*
diff --git a/ld/testsuite/ld-x86-64/abs.d b/ld/testsuite/ld-x86-64/abs.d
index b24b018639..d99ab4685d 100644
--- a/ld/testsuite/ld-x86-64/abs.d
+++ b/ld/testsuite/ld-x86-64/abs.d
@@ -1,7 +1,7 @@
#name: Absolute non-overflowing relocs
#source: ../ld-i386/abs.s
#source: ../ld-i386/zero.s
-#ld:
+#ld: -z noseparate-code
#objdump: -rs
.*: file format .*
diff --git a/ld/testsuite/ld-x86-64/pr12718.d b/ld/testsuite/ld-x86-64/pr12718.d
index 07d17325d0..2c503ffbaa 100644
--- a/ld/testsuite/ld-x86-64/pr12718.d
+++ b/ld/testsuite/ld-x86-64/pr12718.d
@@ -1,6 +1,6 @@
#name: PR ld/12718
#as: --64
-#ld: -melf_x86_64
+#ld: -melf_x86_64 -z noseparate-code
#readelf: -S --wide
There are 5 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/ld-x86-64/pr12921.d b/ld/testsuite/ld-x86-64/pr12921.d
index 6fe6abee09..1162d55818 100644
--- a/ld/testsuite/ld-x86-64/pr12921.d
+++ b/ld/testsuite/ld-x86-64/pr12921.d
@@ -1,6 +1,6 @@
#name: PR ld/12921
#as: --64
-#ld: -melf_x86_64
+#ld: -melf_x86_64 -z noseparate-code
#readelf: -S --wide
There are 7 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index cfbefe9028..1095091882 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -1482,7 +1482,10 @@ proc run_ld_link_exec_tests { ldtests args } {
continue
}
- if { [ string match "c++" $lang ] } {
+ if { [ string match "asm" $lang ] } {
+ set link_proc ld_link
+ set link_cmd $ld
+ } elseif { [ string match "c++" $lang ] } {
set link_proc ld_link
set link_cmd $CXX
} else {
--
2.20.1
))entry(name50001-x86-Properly-add-X86_ISA_1_NEEDED-property.patchnode(typeregularcontents From 28a27bdbb9500797e6767f80c8128b09112aeed5 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Sat, 11 Aug 2018 06:41:33 -0700
Subject: [PATCH] x86: Properly add X86_ISA_1_NEEDED property
Existing properties may be removed during property merging. We avoid
adding X86_ISA_1_NEEDED property only if existing properties won't be
removed.
bfd/
PR ld/23428
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't
add X86_ISA_1_NEEDED property only if existing properties won't
be removed.
ld/
PR ld/23428
* testsuite/ld-elf/dummy.s: New file.
* testsuite/ld-elf/linux-x86.S: Add X86_FEATURE_1_AND property.
* testsuite/ld-elf/linux-x86.exp: Add dummy.s to pr23428.
(cherry picked from commit ab9e342807d132182892de1be1a92d6e91a5c1da)
---
bfd/elfxx-x86.c | 28 ++++++++++++++++++++++------
ld/testsuite/ld-elf/dummy.s | 1 +
ld/testsuite/ld-elf/linux-x86.S | 28 ++++++++++++++++++++++++++++
ld/testsuite/ld-elf/linux-x86.exp | 2 +-
6 files changed, 66 insertions(+), 7 deletions(-)
create mode 100644 ld/testsuite/ld-elf/dummy.s
diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
index 7ccfd25815..2d8f7b640b 100644
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -2588,7 +2588,6 @@ _bfd_x86_elf_link_setup_gnu_properties
prop->pr_kind = property_number;
}
else if (has_text
- && elf_properties (ebfd) == NULL
&& elf_tdata (info->output_bfd)->o->build_id.sec == NULL
&& !htab->elf.dynamic_sections_created
&& !info->traditional_format
@@ -2598,11 +2597,28 @@ _bfd_x86_elf_link_setup_gnu_properties
/* If the separate code program header is needed, make sure
that the first read-only PT_LOAD segment has no code by
adding a GNU_PROPERTY_X86_ISA_1_NEEDED note. */
- prop = _bfd_elf_get_property (ebfd,
- GNU_PROPERTY_X86_ISA_1_NEEDED,
- 4);
- prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
- prop->pr_kind = property_number;
+ elf_property_list *list;
+ bfd_boolean need_property = TRUE;
+
+ for (list = elf_properties (ebfd); list; list = list->next)
+ switch (list->property.pr_type)
+ {
+ case GNU_PROPERTY_STACK_SIZE:
+ case GNU_PROPERTY_NO_COPY_ON_PROTECTED:
+ case GNU_PROPERTY_X86_ISA_1_NEEDED:
+ /* These properties won't be removed during merging. */
+ need_property = FALSE;
+ break;
+ }
+
+ if (need_property)
+ {
+ prop = _bfd_elf_get_property (ebfd,
+ GNU_PROPERTY_X86_ISA_1_NEEDED,
+ 4);
+ prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
+ prop->pr_kind = property_number;
+ }
}
/* Create the GNU property note section if needed. */
diff --git a/ld/testsuite/ld-elf/dummy.s b/ld/testsuite/ld-elf/dummy.s
new file mode 100644
index 0000000000..403f98000d
--- /dev/null
+++ b/ld/testsuite/ld-elf/dummy.s
@@ -0,0 +1 @@
+# Dummy
diff --git a/ld/testsuite/ld-elf/linux-x86.S b/ld/testsuite/ld-elf/linux-x86.S
index bdf40c6e01..d94abc1106 100644
--- a/ld/testsuite/ld-elf/linux-x86.S
+++ b/ld/testsuite/ld-elf/linux-x86.S
@@ -61,3 +61,31 @@ syscall:
ret /* Return to caller. */
.size syscall, .-syscall
.section .note.GNU-stack,"",@progbits
+
+ .section ".note.gnu.property", "a"
+#ifdef __LP64__
+ .p2align 3
+#else
+ .p2align 2
+#endif
+ .long 1f - 0f /* name length */
+ .long 5f - 2f /* data length */
+ .long 5 /* note type */
+0: .asciz "GNU" /* vendor name */
+1:
+#ifdef __LP64__
+ .p2align 3
+#else
+ .p2align 2
+#endif
+2: .long 0xc0000002 /* pr_type. */
+ .long 4f - 3f /* pr_datasz. */
+3:
+ .long 0x2
+4:
+#ifdef __LP64__
+ .p2align 3
+#else
+ .p2align 2
+#endif
+5:
diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp
index 36217c6fb4..f6f5a80853 100644
--- a/ld/testsuite/ld-elf/linux-x86.exp
+++ b/ld/testsuite/ld-elf/linux-x86.exp
@@ -37,7 +37,7 @@ run_ld_link_exec_tests [list \
"Run PR ld/23428 test" \
"--no-dynamic-linker -z separate-code" \
"" \
- { linux-x86.S pr23428.c } \
+ { linux-x86.S pr23428.c dummy.s } \
"pr23428" \
"pass.out" \
"$NOPIE_CFLAGS -fno-asynchronous-unwind-tables" \
--
2.20.1
))entry(name90001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patchnode(typeregularcontents�XFrom d55c3e36094f06bb1fb02f5eac19fdccf1d91f7e Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Wed, 8 Aug 2018 06:09:15 -0700
Subject: [PATCH] x86: Properly merge GNU_PROPERTY_X86_ISA_1_USED
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Without the GNU_PROPERTY_X86_ISA_1_USED property, all ISAs may be used.
If a bit in the GNU_PROPERTY_X86_ISA_1_USED property is unset, the
corresponding x86 instruction set isn’t used. When merging properties
from 2 input files and one input file doesn't have the
GNU_PROPERTY_X86_ISA_1_USED property, the output file shouldn't have
it neither. This patch removes the GNU_PROPERTY_X86_ISA_1_USED
property if an input file doesn't have it.
This patch replaces the GNU_PROPERTY_X86_ISA_1_USED property with the
GNU_PROPERTY_X86_ISA_1_NEEDED property which is the minimum ISA
requirement.
bfd/
PR ld/23486
* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove
GNU_PROPERTY_X86_ISA_1_USED if an input file doesn't have it.
(_bfd_x86_elf_link_setup_gnu_properties): Adding the
GNU_PROPERTY_X86_ISA_1_NEEDED, instead of
GNU_PROPERTY_X86_ISA_1_USED, property.
ld/
PR ld/23486
* testsuite/ld-i386/i386.exp: Run PR ld/23486 tests.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/pr23486a.d: New file.
* testsuite/ld-i386/pr23486b.d: Likewise.
* testsuite/ld-x86-64/pr23486a-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486a.d: Likewise.
* testsuite/ld-x86-64/pr23486a.s: Likewise.
* testsuite/ld-x86-64/pr23486b-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486b.d: Likewise.
* testsuite/ld-x86-64/pr23486b.s: Likewise.
* testsuite/ld-i386/property-3.r: Remove "x86 ISA used".
* testsuite/ld-i386/property-4.r: Likewise.
* testsuite/ld-i386/property-5.r: Likewise.
* testsuite/ld-i386/property-x86-ibt3a.d: Likewise.
* testsuite/ld-i386/property-x86-ibt3b.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3a.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3b.d: Likewise.
* testsuite/ld-x86-64/property-3.r: Likewise.
* testsuite/ld-x86-64/property-4.r: Likewise.
* testsuite/ld-x86-64/property-5.r: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise.
(cherry picked from commit f7309df20c4e787041cedc4a6aced89c15259e54)
---
bfd/elfxx-x86.c | 25 ++++++++++++---
ld/testsuite/ld-i386/i386.exp | 2 ++
ld/testsuite/ld-i386/pr23486a.d | 10 ++++++
ld/testsuite/ld-i386/pr23486b.d | 10 ++++++
ld/testsuite/ld-i386/property-3.r | 1 -
ld/testsuite/ld-i386/property-4.r | 1 -
ld/testsuite/ld-i386/property-5.r | 1 -
ld/testsuite/ld-i386/property-x86-ibt3a.d | 5 ++-
ld/testsuite/ld-i386/property-x86-ibt3b.d | 5 ++-
ld/testsuite/ld-i386/property-x86-shstk3a.d | 5 ++-
ld/testsuite/ld-i386/property-x86-shstk3b.d | 5 ++-
ld/testsuite/ld-x86-64/pr23486a-x32.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486a.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486a.s | 30 +++++++++++++++++
ld/testsuite/ld-x86-64/pr23486b-x32.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486b.d | 10 ++++++
ld/testsuite/ld-x86-64/pr23486b.s | 30 +++++++++++++++++
ld/testsuite/ld-x86-64/property-3.r | 1 -
ld/testsuite/ld-x86-64/property-4.r | 1 -
ld/testsuite/ld-x86-64/property-5.r | 1 -
.../ld-x86-64/property-x86-ibt3a-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-ibt3a.d | 5 ++-
.../ld-x86-64/property-x86-ibt3b-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-ibt3b.d | 5 ++-
.../ld-x86-64/property-x86-shstk3a-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-shstk3a.d | 5 ++-
.../ld-x86-64/property-x86-shstk3b-x32.d | 5 ++-
ld/testsuite/ld-x86-64/property-x86-shstk3b.d | 5 ++-
ld/testsuite/ld-x86-64/x86-64.exp | 4 +++
31 files changed, 211 insertions(+), 47 deletions(-)
create mode 100644 ld/testsuite/ld-i386/pr23486a.d
create mode 100644 ld/testsuite/ld-i386/pr23486b.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a.s
create mode 100644 ld/testsuite/ld-x86-64/pr23486b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486b.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486b.s
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -2407,12 +2407,27 @@ _bfd_x86_elf_merge_gnu_properties (struct bfd_link_info *info,
switch (pr_type)
{
case GNU_PROPERTY_X86_ISA_1_USED:
+ if (aprop == NULL || bprop == NULL)
+ {
+ /* Only one of APROP and BPROP can be NULL. */
+ if (aprop != NULL)
+ {
+ /* Remove this property since the other input file doesn't
+ have it. */
+ aprop->pr_kind = property_remove;
+ updated = TRUE;
+ }
+ break;
+ }
+ goto or_property;
+
case GNU_PROPERTY_X86_ISA_1_NEEDED:
if (aprop != NULL && bprop != NULL)
{
+or_property:
number = aprop->u.number;
aprop->u.number = number | bprop->u.number;
- /* Remove the property if ISA bits are empty. */
+ /* Remove the property if all bits are empty. */
if (aprop->u.number == 0)
{
aprop->pr_kind = property_remove;
@@ -2428,14 +2443,14 @@ _bfd_x86_elf_merge_gnu_properties (struct bfd_link_info *info,
{
if (aprop->u.number == 0)
{
- /* Remove APROP if ISA bits are empty. */
+ /* Remove APROP if all bits are empty. */
aprop->pr_kind = property_remove;
updated = TRUE;
}
}
else
{
- /* Return TRUE if APROP is NULL and ISA bits of BPROP
+ /* Return TRUE if APROP is NULL and all bits of BPROP
aren't empty to indicate that BPROP should be added
to ABFD. */
updated = bprop->u.number != 0;
@@ -2582,9 +2597,9 @@ _bfd_x86_elf_link_setup_gnu_properties
{
/* If the separate code program header is needed, make sure
that the first read-only PT_LOAD segment has no code by
- adding a GNU_PROPERTY_X86_ISA_1_USED note. */
+ adding a GNU_PROPERTY_X86_ISA_1_NEEDED note. */
prop = _bfd_elf_get_property (ebfd,
- GNU_PROPERTY_X86_ISA_1_USED,
+ GNU_PROPERTY_X86_ISA_1_NEEDED,
4);
prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
prop->pr_kind = property_number;
diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp
index 6d794fe653..78dad02579 100644
--- a/ld/testsuite/ld-i386/i386.exp
+++ b/ld/testsuite/ld-i386/i386.exp
@@ -462,6 +462,8 @@ run_dump_test "pr23189"
run_dump_test "pr23194"
run_dump_test "pr23372a"
run_dump_test "pr23372b"
+run_dump_test "pr23486a"
+run_dump_test "pr23486b"
if { !([istarget "i?86-*-linux*"]
|| [istarget "i?86-*-gnu*"]
diff --git a/ld/testsuite/ld-i386/pr23486a.d b/ld/testsuite/ld-i386/pr23486a.d
new file mode 100644
index 0000000000..41a6dcf7d5
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr23486a.d
@@ -0,0 +1,10 @@
+#source: ../ld-x86-64/pr23486a.s
+#source: ../ld-x86-64/pr23486b.s
+#as: --32
+#ld: -r -m elf_i386
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-i386/pr23486b.d b/ld/testsuite/ld-i386/pr23486b.d
new file mode 100644
index 0000000000..08019b7274
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr23486b.d
@@ -0,0 +1,10 @@
+#source: ../ld-x86-64/pr23486b.s
+#source: ../ld-x86-64/pr23486a.s
+#as: --32
+#ld: -r -m elf_i386
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-i386/property-3.r b/ld/testsuite/ld-i386/property-3.r
index 0ed91f5922..d03203c1e5 100644
--- a/ld/testsuite/ld-i386/property-3.r
+++ b/ld/testsuite/ld-i386/property-3.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: 586, SSE
x86 ISA needed: i486, 586
#pass
diff --git a/ld/testsuite/ld-i386/property-4.r b/ld/testsuite/ld-i386/property-4.r
index cb2bc15d9a..da295eb6c7 100644
--- a/ld/testsuite/ld-i386/property-4.r
+++ b/ld/testsuite/ld-i386/property-4.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-i386/property-5.r b/ld/testsuite/ld-i386/property-5.r
index 552965058c..e4141594b3 100644
--- a/ld/testsuite/ld-i386/property-5.r
+++ b/ld/testsuite/ld-i386/property-5.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x900000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-i386/property-x86-ibt3a.d b/ld/testsuite/ld-i386/property-x86-ibt3a.d
index 4bb35b00fb..0aedea1614 100644
--- a/ld/testsuite/ld-i386/property-x86-ibt3a.d
+++ b/ld/testsuite/ld-i386/property-x86-ibt3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-i386/property-x86-ibt3b.d b/ld/testsuite/ld-i386/property-x86-ibt3b.d
index 418d58a8f7..bd69ac6478 100644
--- a/ld/testsuite/ld-i386/property-x86-ibt3b.d
+++ b/ld/testsuite/ld-i386/property-x86-ibt3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-i386/property-x86-shstk3a.d b/ld/testsuite/ld-i386/property-x86-shstk3a.d
index e261038f60..76d2a39f2c 100644
--- a/ld/testsuite/ld-i386/property-x86-shstk3a.d
+++ b/ld/testsuite/ld-i386/property-x86-shstk3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-i386/property-x86-shstk3b.d b/ld/testsuite/ld-i386/property-x86-shstk3b.d
index 25f3d2361e..e770ecffa5 100644
--- a/ld/testsuite/ld-i386/property-x86-shstk3b.d
+++ b/ld/testsuite/ld-i386/property-x86-shstk3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: i486, 586, SSE2, SSE3
- x86 ISA needed: 586, SSE, SSE3, SSE4_1
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1
diff --git a/ld/testsuite/ld-x86-64/pr23486a-x32.d b/ld/testsuite/ld-x86-64/pr23486a-x32.d
new file mode 100644
index 0000000000..6d9fa68cdb
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486a-x32.d
@@ -0,0 +1,10 @@
+#source: pr23486a.s
+#source: pr23486b.s
+#as: --x32
+#ld: -r -m elf32_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486a.d b/ld/testsuite/ld-x86-64/pr23486a.d
new file mode 100644
index 0000000000..dc2b7bf760
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486a.d
@@ -0,0 +1,10 @@
+#source: pr23486a.s
+#source: pr23486b.s
+#as: --64 -defsym __64_bit__=1
+#ld: -r -m elf_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486a.s b/ld/testsuite/ld-x86-64/pr23486a.s
new file mode 100644
index 0000000000..a07d0c7ced
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486a.s
@@ -0,0 +1,30 @@
+ .section ".note.gnu.property", "a"
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ .long 1f - 0f /* name length. */
+ .long 4f - 1f /* data length. */
+ /* NT_GNU_PROPERTY_TYPE_0 */
+ .long 5 /* note type. */
+0:
+ .asciz "GNU" /* vendor name. */
+1:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ /* GNU_PROPERTY_X86_ISA_1_USED */
+ .long 0xc0000000 /* pr_type. */
+ .long 3f - 2f /* pr_datasz. */
+2:
+ .long 0xa
+3:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+4:
diff --git a/ld/testsuite/ld-x86-64/pr23486b-x32.d b/ld/testsuite/ld-x86-64/pr23486b-x32.d
new file mode 100644
index 0000000000..0445e69d82
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486b-x32.d
@@ -0,0 +1,10 @@
+#source: pr23486b.s
+#source: pr23486a.s
+#as: --x32
+#ld: -r -m elf32_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486b.d b/ld/testsuite/ld-x86-64/pr23486b.d
new file mode 100644
index 0000000000..dc2b7bf760
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486b.d
@@ -0,0 +1,10 @@
+#source: pr23486a.s
+#source: pr23486b.s
+#as: --64 -defsym __64_bit__=1
+#ld: -r -m elf_x86_64
+#readelf: -n
+
+Displaying notes found in: .note.gnu.property
+ Owner Data size Description
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586
diff --git a/ld/testsuite/ld-x86-64/pr23486b.s b/ld/testsuite/ld-x86-64/pr23486b.s
new file mode 100644
index 0000000000..c5167eeb65
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr23486b.s
@@ -0,0 +1,30 @@
+ .section ".note.gnu.property", "a"
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ .long 1f - 0f /* name length. */
+ .long 4f - 1f /* data length. */
+ /* NT_GNU_PROPERTY_TYPE_0 */
+ .long 5 /* note type. */
+0:
+ .asciz "GNU" /* vendor name. */
+1:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+ /* GNU_PROPERTY_X86_ISA_1_NEEDED */
+ .long 0xc0000001 /* pr_type. */
+ .long 3f - 2f /* pr_datasz. */
+2:
+ .long 0x3
+3:
+.ifdef __64_bit__
+ .p2align 3
+.else
+ .p2align 2
+.endif
+4:
diff --git a/ld/testsuite/ld-x86-64/property-3.r b/ld/testsuite/ld-x86-64/property-3.r
index 0ed91f5922..d03203c1e5 100644
--- a/ld/testsuite/ld-x86-64/property-3.r
+++ b/ld/testsuite/ld-x86-64/property-3.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: 586, SSE
x86 ISA needed: i486, 586
#pass
diff --git a/ld/testsuite/ld-x86-64/property-4.r b/ld/testsuite/ld-x86-64/property-4.r
index cb2bc15d9a..da295eb6c7 100644
--- a/ld/testsuite/ld-x86-64/property-4.r
+++ b/ld/testsuite/ld-x86-64/property-4.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x800000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-x86-64/property-5.r b/ld/testsuite/ld-x86-64/property-5.r
index 552965058c..e4141594b3 100644
--- a/ld/testsuite/ld-x86-64/property-5.r
+++ b/ld/testsuite/ld-x86-64/property-5.r
@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0
Properties: stack size: 0x900000
- x86 ISA used: i486, 586, SSE
x86 ISA needed: i486, 586, SSE
#pass
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d b/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d
index 011426f5a4..4cec728dc7 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3a.d b/ld/testsuite/ld-x86-64/property-x86-ibt3a.d
index 1b4229a037..a8df49a351 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3a.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d b/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d
index 290ed6abf1..c112626711 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3b.d b/ld/testsuite/ld-x86-64/property-x86-ibt3b.d
index 1142e03272..f10dffdc2c 100644
--- a/ld/testsuite/ld-x86-64/property-x86-ibt3b.d
+++ b/ld/testsuite/ld-x86-64/property-x86-ibt3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d b/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d
index 819542d181..0147a3c7b6 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3a.d b/ld/testsuite/ld-x86-64/property-x86-shstk3a.d
index 4c5d0e0a18..1f8c2dc929 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3a.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3a.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d b/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d
index ba181e0bc5..7ca2539ca5 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3b.d b/ld/testsuite/ld-x86-64/property-x86-shstk3b.d
index 5216f385dd..f66a40e449 100644
--- a/ld/testsuite/ld-x86-64/property-x86-shstk3b.d
+++ b/ld/testsuite/ld-x86-64/property-x86-shstk3b.d
@@ -6,6 +6,5 @@
Displaying notes found in: .note.gnu.property
Owner Data size Description
- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1
- x86 ISA needed: i486, 586, SSE2, SSE3
+ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
+ Properties: x86 ISA needed: i486, 586, SSE2, SSE3
diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp
index 6edb9e86f4..ae21e554ad 100644
--- a/ld/testsuite/ld-x86-64/x86-64.exp
+++ b/ld/testsuite/ld-x86-64/x86-64.exp
@@ -403,6 +403,10 @@ run_dump_test "pr23372a"
run_dump_test "pr23372a-x32"
run_dump_test "pr23372b"
run_dump_test "pr23372b-x32"
+run_dump_test "pr23486a"
+run_dump_test "pr23486a-x32"
+run_dump_test "pr23486b"
+run_dump_test "pr23486b-x32"
if { ![istarget "x86_64-*-linux*"] && ![istarget "x86_64-*-nacl*"]} {
return
--
2.20.1
))entry(namealways-search-rpath.patchnode(typeregularcontents�diff --git a/ld/genscripts.sh b/ld/genscripts.sh
index b6940d376d..0feb1adfd0 100755
--- a/ld/genscripts.sh
+++ b/ld/genscripts.sh
@@ -125,6 +125,9 @@ if test "x$NATIVE" = "xyes" ; then
USE_LIBPATH=yes
fi
+# TODO: why is this needed?
+USE_LIBPATH=yes
+
# Set the library search path, for libraries named by -lfoo.
# If LIB_PATH is defined (e.g., by Makefile) and non-empty, it is used.
# Otherwise, the default is set here.
))entry(name!build-components-separately.patchnode(typeregularcontents�From bc09a9236f67e710d545ac11bcdac7b55dbcc1a0 Mon Sep 17 00:00:00 2001
From: John Ericson <John.Ericson@Obsidian.Systems>
Date: Thu, 12 Oct 2017 11:16:57 -0400
Subject: [PATCH] Build components separately
---
bfd/configure.ac | 18 +++---------------
opcodes/Makefile.am | 17 +++++++++++++----
opcodes/configure.ac | 45 ++++++---------------------------------------
3 files changed, 22 insertions(+), 58 deletions(-)
diff --git a/bfd/configure.ac b/bfd/configure.ac
index 9a183c1628..8728837384 100644
--- a/bfd/configure.ac
+++ b/bfd/configure.ac
@@ -241,31 +241,19 @@ AC_CACHE_CHECK(linker --as-needed support, bfd_cv_ld_as_needed,
LT_LIB_M
-# When building a shared libbfd, link against the pic version of libiberty
-# so that apps that use libbfd won't need libiberty just to satisfy any
-# libbfd references.
-# We can't do that if a pic libiberty is unavailable since including non-pic
-# code would insert text relocations into libbfd.
SHARED_LIBADD=
-SHARED_LDFLAGS=
+SHARED_LDFLAGS=-liberty
if test "$enable_shared" = "yes"; then
-changequote(,)dnl
- x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
-changequote([,])dnl
- if test -n "$x"; then
- SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
- fi
-
# More hacks to build DLLs on Windows.
case "${host}" in
*-*-cygwin*)
SHARED_LDFLAGS="-no-undefined"
- SHARED_LIBADD="-L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin -lkernel32"
+ SHARED_LIBADD="-liberty -lintl -lcygwin -lkernel32"
;;
# Hack to build or1k-src on OSX
or1k*-*-darwin*)
- SHARED_LIBADD="-L`pwd`/../libiberty/pic -L`pwd`/../intl -liberty -lintl"
+ SHARED_LIBADD="-liberty -lintl"
;;
esac
diff --git a/opcodes/Makefile.am b/opcodes/Makefile.am
index 925e7ff651..47b395c195 100644
--- a/opcodes/Makefile.am
+++ b/opcodes/Makefile.am
@@ -52,7 +52,7 @@ libopcodes_la_LDFLAGS += -rpath $(rpath_bfdlibdir)
endif
# This is where bfd.h lives.
-BFD_H = ../bfd/bfd.h
+BFD_H = $(BFDDIR)/bfd.h
BUILD_LIBS = @BUILD_LIBS@
BUILD_LIB_DEPS = @BUILD_LIB_DEPS@
@@ -303,7 +303,7 @@ OFILES = @BFD_MACHINES@
# development.sh is used to determine -Werror default.
CONFIG_STATUS_DEPENDENCIES = $(BFDDIR)/development.sh
-AM_CPPFLAGS = -I. -I$(srcdir) -I../bfd -I$(INCDIR) -I$(BFDDIR) @HDEFINES@ @INCINTL@
+AM_CPPFLAGS = -I. -I$(srcdir) -I$(INCDIR) -I$(BFDDIR) @HDEFINES@ @INCINTL@
disassemble.lo: disassemble.c
if am__fastdepCC
@@ -324,12 +324,21 @@ libopcodes_la_SOURCES = dis-buf.c disassemble.c dis-init.c
# old version of libbfd, or to pick up libbfd for the wrong architecture
# if host != build. So for building with shared libraries we use a
# hardcoded path to libbfd.so instead of relying on the entries in libbfd.la.
-libopcodes_la_DEPENDENCIES = $(OFILES) @SHARED_DEPENDENCIES@
+libopcodes_la_DEPENDENCIES = $(OFILES) @SHARED_DEPENDENCIES@ libtool-soversion
libopcodes_la_LIBADD = $(OFILES) @SHARED_LIBADD@
-libopcodes_la_LDFLAGS += -release `cat ../bfd/libtool-soversion` @SHARED_LDFLAGS@
+libopcodes_la_LDFLAGS += -release `cat libtool-soversion` @SHARED_LDFLAGS@
# Allow dependency tracking to work on all the source files.
EXTRA_libopcodes_la_SOURCES = $(LIBOPCODES_CFILES)
+libtool-soversion:
+ @echo "creating $@"
+ bfd_soversion="$(VERSION)" ;\
+ . $(BFDDIR)/development.sh ;\
+ if test "$$development" = true ; then \
+ bfd_soversion="$(VERSION).$${bfd_version_date}" ;\
+ fi ;\
+ echo "$${bfd_soversion}" > $@
+
# libtool will build .libs/libopcodes.a. We create libopcodes.a in
# the build directory so that we don't have to convert all the
# programs that use libopcodes.a simultaneously. This is a hack which
diff --git a/opcodes/configure.ac b/opcodes/configure.ac
index b9f5eb8a4f..ef2c2152b7 100644
--- a/opcodes/configure.ac
+++ b/opcodes/configure.ac
@@ -89,6 +89,7 @@ AC_PROG_INSTALL
AC_CHECK_HEADERS(string.h strings.h stdlib.h limits.h)
ACX_HEADER_STRING
+GCC_HEADER_STDINT(bfd_stdint.h)
AC_CHECK_DECLS([basename, stpcpy])
@@ -134,61 +135,27 @@ AC_CACHE_CHECK(linker --as-needed support, bfd_cv_ld_as_needed,
LT_LIB_M
-#Libs for generator progs
-if test "x$cross_compiling" = "xno"; then
- BUILD_LIBS=../libiberty/libiberty.a
- BUILD_LIB_DEPS=$BUILD_LIBS
-else
- # if cross-compiling, assume that the system provides -liberty
- # and that the version is compatible with new headers.
- BUILD_LIBS=-liberty
- BUILD_LIB_DEPS=
-fi
-BUILD_LIBS="$BUILD_LIBS $LIBINTL"
-BUILD_LIB_DEPS="$BUILD_LIB_DEPS $LIBINTL_DEP"
+BUILD_LIBS="-liberty $LIBINTL"
+BUILD_LIB_DEPS="$LIBINTL_DEP"
AC_SUBST(BUILD_LIBS)
AC_SUBST(BUILD_LIB_DEPS)
# Horrible hacks to build DLLs on Windows and a shared library elsewhere.
SHARED_LDFLAGS=
-SHARED_LIBADD=
+SHARED_LIBADD=-liberty
SHARED_DEPENDENCIES=
if test "$enable_shared" = "yes"; then
-# When building a shared libopcodes, link against the pic version of libiberty
-# so that apps that use libopcodes won't need libiberty just to satisfy any
-# libopcodes references.
-# We can't do that if a pic libiberty is unavailable since including non-pic
-# code would insert text relocations into libopcodes.
# Note that linking against libbfd as we do here, which is itself linked
# against libiberty, may not satisfy all the libopcodes libiberty references
# since libbfd may not pull in the entirety of libiberty.
-changequote(,)dnl
- x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
-changequote([,])dnl
- if test -n "$x"; then
- SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
- fi
-
case "${host}" in
*-*-cygwin*)
SHARED_LDFLAGS="-no-undefined"
- SHARED_LIBADD="-L`pwd`/../bfd -lbfd -L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin"
+ SHARED_LIBADD="-lbfd -liberty -lintl -lcygwin"
;;
- *-*-darwin*)
- SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.dylib ${SHARED_LIBADD}"
- SHARED_DEPENDENCIES="../bfd/libbfd.la"
- ;;
*)
- case "$host_vendor" in
- hp)
- SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.sl ${SHARED_LIBADD}"
- ;;
- *)
- SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.so ${SHARED_LIBADD}"
- ;;
- esac
- SHARED_DEPENDENCIES="../bfd/libbfd.la"
+ SHARED_LIBADD="-lbfd ${SHARED_LIBADD}"
;;
esac
--
2.14.2
))entry(namedeterministic.patchnode(typeregularcontents�diff -ur orig/binutils-2.23.1/ld/ldlang.c binutils-2.23.1/ld/ldlang.c
--- orig/ld/ldlang.c
+++ new/ld/ldlang.c
@@ -3095,6 +3095,8 @@
ldfile_output_machine))
einfo (_("%P%F:%s: can not set architecture: %E\n"), name);
+ link_info.output_bfd->flags |= BFD_DETERMINISTIC_OUTPUT;
+
link_info.hash = bfd_link_hash_table_create (link_info.output_bfd);
if (link_info.hash == NULL)
einfo (_("%P%F: can not create hash table: %E\n"));
))entry(namedisambiguate-arm-targets.patchnode(typeregularcontents:diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index 9f956d3..f5b61f1 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -19585,7 +19585,10 @@ elf32_arm_vxworks_final_write_processing (bfd *abfd, bfd_boolean linker)
#undef ELF_MAXPAGESIZE
#define ELF_MAXPAGESIZE 0x1000
+/* Prioritize elf32-*arm (priority 1) over elf32-*arm-vxworks (priority 2) */
+#define elf_match_priority 2
#include "elf32-target.h"
+#undef elf_match_priority
/* Merge backend specific data from an object file to the output
@@ -19974,4 +19977,7 @@ elf32_arm_symbian_plt_sym_val (bfd_vma i, const asection *plt,
#undef ELF_MAXPAGESIZE
#define ELF_MAXPAGESIZE 0x8000
+/* Prioritize elf32-*arm (priority 1) over elf32-*arm-symbian (priority 2) */
+#define elf_match_priority 2
#include "elf32-target.h"
+#undef elf_match_priority
))entry(namegold-symbol-visibility.patchnode(typeregularcontents� commit 8564af037f5c4c6d2744a89497691359205b2bbc
Author: Shea Levy <shea@shealevy.com>
Date: Mon Mar 19 10:52:40 2018 -0400
Revert "Allow multiply-defined absolute symbols when they have the same value."
This reverts commit 5dc824ed42cd173c1525f5abc76f4091f11a4dbc.
diff --git a/gold/ChangeLog-2017 b/gold/ChangeLog-2017
index b2a47710b5..d7ca1b48c0 100644
--- a/gold/ChangeLog-2017
+++ b/gold/ChangeLog-2017
@@ -114,11 +114,6 @@
(localedir): Define as @localedir@.
(gnulocaledir, gettextsrcdir): Use @datarootdir@.
-2017-11-28 Cary Coutant <ccoutant@gmail.com>
-
- * resolve.cc (Symbol_table::resolve): Allow multiply-defined absolute
- symbols when they have the same value.
-
2017-11-28 Cary Coutant <ccoutant@gmail.com>
* object.h (class Sized_relobj_file): Remove discarded_eh_frame_shndx_.
diff --git a/gold/resolve.cc b/gold/resolve.cc
index 4a5784cf8b..803576bfed 100644
--- a/gold/resolve.cc
+++ b/gold/resolve.cc
@@ -247,28 +247,18 @@ Symbol_table::resolve(Sized_symbol<size>* to,
Object* object, const char* version,
bool is_default_version)
{
- bool to_is_ordinary;
- const unsigned int to_shndx = to->shndx(&to_is_ordinary);
-
// It's possible for a symbol to be defined in an object file
// using .symver to give it a version, and for there to also be
// a linker script giving that symbol the same version. We
// don't want to give a multiple-definition error for this
// harmless redefinition.
+ bool to_is_ordinary;
if (to->source() == Symbol::FROM_OBJECT
&& to->object() == object
- && to->is_defined()
&& is_ordinary
+ && to->is_defined()
+ && to->shndx(&to_is_ordinary) == st_shndx
&& to_is_ordinary
- && to_shndx == st_shndx
- && to->value() == sym.get_st_value())
- return;
-
- // Likewise for an absolute symbol defined twice with the same value.
- if (!is_ordinary
- && st_shndx == elfcpp::SHN_ABS
- && !to_is_ordinary
- && to_shndx == elfcpp::SHN_ABS
&& to->value() == sym.get_st_value())
return;
@@ -360,8 +350,8 @@ Symbol_table::resolve(Sized_symbol<size>* to,
&& (sym.get_st_bind() == elfcpp::STB_WEAK
|| to->binding() == elfcpp::STB_WEAK)
&& orig_st_shndx != elfcpp::SHN_UNDEF
+ && to->shndx(&to_is_ordinary) != elfcpp::SHN_UNDEF
&& to_is_ordinary
- && to_shndx != elfcpp::SHN_UNDEF
&& sym.get_st_size() != 0 // Ignore weird 0-sized symbols.
&& to->symsize() != 0
&& (sym.get_st_type() != to->type()
@@ -372,7 +362,7 @@ Symbol_table::resolve(Sized_symbol<size>* to,
{
Symbol_location fromloc
= { object, orig_st_shndx, static_cast<off_t>(sym.get_st_value()) };
- Symbol_location toloc = { to->object(), to_shndx,
+ Symbol_location toloc = { to->object(), to->shndx(&to_is_ordinary),
static_cast<off_t>(to->value()) };
this->candidate_odr_violations_[to->name()].insert(fromloc);
this->candidate_odr_violations_[to->name()].insert(toloc);
))entry(nameno-plugins.patchnode(typeregularcontents�diff -ru binutils-2.27-orig/bfd/plugin.c binutils-2.27/bfd/plugin.c
--- binutils-2.27-orig/bfd/plugin.c 2016-10-14 17:46:30.791315555 +0200
+++ binutils-2.27/bfd/plugin.c 2016-10-14 17:46:38.583298765 +0200
@@ -333,6 +333,7 @@
if (plugin_program_name == NULL)
return found;
+#if 0
plugin_dir = concat (BINDIR, "/../lib/bfd-plugins", NULL);
p = make_relative_prefix (plugin_program_name,
BINDIR,
@@ -364,6 +365,7 @@
free (p);
if (d)
closedir (d);
+#endif
return found;
}
)))NIXE0/nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31 nix-archive-1(typeregularcontents� commit 8564af037f5c4c6d2744a89497691359205b2bbc
Author: Shea Levy <shea@shealevy.com>
Date: Mon Mar 19 10:52:40 2018 -0400
Revert "Allow multiply-defined absolute symbols when they have the same value."
This reverts commit 5dc824ed42cd173c1525f5abc76f4091f11a4dbc.
diff --git a/gold/ChangeLog-2017 b/gold/ChangeLog-2017
index b2a47710b5..d7ca1b48c0 100644
--- a/gold/ChangeLog-2017
+++ b/gold/ChangeLog-2017
@@ -114,11 +114,6 @@
(localedir): Define as @localedir@.
(gnulocaledir, gettextsrcdir): Use @datarootdir@.
-2017-11-28 Cary Coutant <ccoutant@gmail.com>
-
- * resolve.cc (Symbol_table::resolve): Allow multiply-defined absolute
- symbols when they have the same value.
-
2017-11-28 Cary Coutant <ccoutant@gmail.com>
* object.h (class Sized_relobj_file): Remove discarded_eh_frame_shndx_.
diff --git a/gold/resolve.cc b/gold/resolve.cc
index 4a5784cf8b..803576bfed 100644
--- a/gold/resolve.cc
+++ b/gold/resolve.cc
@@ -247,28 +247,18 @@ Symbol_table::resolve(Sized_symbol<size>* to,
Object* object, const char* version,
bool is_default_version)
{
- bool to_is_ordinary;
- const unsigned int to_shndx = to->shndx(&to_is_ordinary);
-
// It's possible for a symbol to be defined in an object file
// using .symver to give it a version, and for there to also be
// a linker script giving that symbol the same version. We
// don't want to give a multiple-definition error for this
// harmless redefinition.
+ bool to_is_ordinary;
if (to->source() == Symbol::FROM_OBJECT
&& to->object() == object
- && to->is_defined()
&& is_ordinary
+ && to->is_defined()
+ && to->shndx(&to_is_ordinary) == st_shndx
&& to_is_ordinary
- && to_shndx == st_shndx
- && to->value() == sym.get_st_value())
- return;
-
- // Likewise for an absolute symbol defined twice with the same value.
- if (!is_ordinary
- && st_shndx == elfcpp::SHN_ABS
- && !to_is_ordinary
- && to_shndx == elfcpp::SHN_ABS
&& to->value() == sym.get_st_value())
return;
@@ -360,8 +350,8 @@ Symbol_table::resolve(Sized_symbol<size>* to,
&& (sym.get_st_bind() == elfcpp::STB_WEAK
|| to->binding() == elfcpp::STB_WEAK)
&& orig_st_shndx != elfcpp::SHN_UNDEF
+ && to->shndx(&to_is_ordinary) != elfcpp::SHN_UNDEF
&& to_is_ordinary
- && to_shndx != elfcpp::SHN_UNDEF
&& sym.get_st_size() != 0 // Ignore weird 0-sized symbols.
&& to->symsize() != 0
&& (sym.get_st_type() != to->type()
@@ -372,7 +362,7 @@ Symbol_table::resolve(Sized_symbol<size>* to,
{
Symbol_location fromloc
= { object, orig_st_shndx, static_cast<off_t>(sym.get_st_value()) };
- Symbol_location toloc = { to->object(), to_shndx,
+ Symbol_location toloc = { to->object(), to->shndx(&to_is_ordinary),
static_cast<off_t>(to->value()) };
this->candidate_odr_violations_[to->name()].insert(fromloc);
this->candidate_odr_violations_[to->name()].insert(toloc);
)NIXEH/nix/store/fbqjjd9g3csmpj6dnxw0s06y9zl3ryxv-gold-symbol-visibility.patch nix-archive-1(typeregularcontents From 28a27bdbb9500797e6767f80c8128b09112aeed5 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Sat, 11 Aug 2018 06:41:33 -0700
Subject: [PATCH] x86: Properly add X86_ISA_1_NEEDED property
Existing properties may be removed during property merging. We avoid
adding X86_ISA_1_NEEDED property only if existing properties won't be
removed.
bfd/
PR ld/23428
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't
add X86_ISA_1_NEEDED property only if existing properties won't
be removed.
ld/
PR ld/23428
* testsuite/ld-elf/dummy.s: New file.
* testsuite/ld-elf/linux-x86.S: Add X86_FEATURE_1_AND property.
* testsuite/ld-elf/linux-x86.exp: Add dummy.s to pr23428.
(cherry picked from commit ab9e342807d132182892de1be1a92d6e91a5c1da)
---
bfd/elfxx-x86.c | 28 ++++++++++++++++++++++------
ld/testsuite/ld-elf/dummy.s | 1 +
ld/testsuite/ld-elf/linux-x86.S | 28 ++++++++++++++++++++++++++++
ld/testsuite/ld-elf/linux-x86.exp | 2 +-
6 files changed, 66 insertions(+), 7 deletions(-)
create mode 100644 ld/testsuite/ld-elf/dummy.s
diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
index 7ccfd25815..2d8f7b640b 100644
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -2588,7 +2588,6 @@ _bfd_x86_elf_link_setup_gnu_properties
prop->pr_kind = property_number;
}
else if (has_text
- && elf_properties (ebfd) == NULL
&& elf_tdata (info->output_bfd)->o->build_id.sec == NULL
&& !htab->elf.dynamic_sections_created
&& !info->traditional_format
@@ -2598,11 +2597,28 @@ _bfd_x86_elf_link_setup_gnu_properties
/* If the separate code program header is needed, make sure
that the first read-only PT_LOAD segment has no code by
adding a GNU_PROPERTY_X86_ISA_1_NEEDED note. */
- prop = _bfd_elf_get_property (ebfd,
- GNU_PROPERTY_X86_ISA_1_NEEDED,
- 4);
- prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
- prop->pr_kind = property_number;
+ elf_property_list *list;
+ bfd_boolean need_property = TRUE;
+
+ for (list = elf_properties (ebfd); list; list = list->next)
+ switch (list->property.pr_type)
+ {
+ case GNU_PROPERTY_STACK_SIZE:
+ case GNU_PROPERTY_NO_COPY_ON_PROTECTED:
+ case GNU_PROPERTY_X86_ISA_1_NEEDED:
+ /* These properties won't be removed during merging. */
+ need_property = FALSE;
+ break;
+ }
+
+ if (need_property)
+ {
+ prop = _bfd_elf_get_property (ebfd,
+ GNU_PROPERTY_X86_ISA_1_NEEDED,
+ 4);
+ prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
+ prop->pr_kind = property_number;
+ }
}
/* Create the GNU property note section if needed. */
diff --git a/ld/testsuite/ld-elf/dummy.s b/ld/testsuite/ld-elf/dummy.s
new file mode 100644
index 0000000000..403f98000d
--- /dev/null
+++ b/ld/testsuite/ld-elf/dummy.s
@@ -0,0 +1 @@
+# Dummy
diff --git a/ld/testsuite/ld-elf/linux-x86.S b/ld/testsuite/ld-elf/linux-x86.S
index bdf40c6e01..d94abc1106 100644
--- a/ld/testsuite/ld-elf/linux-x86.S
+++ b/ld/testsuite/ld-elf/linux-x86.S
@@ -61,3 +61,31 @@ syscall:
ret /* Return to caller. */
.size syscall, .-syscall
.section .note.GNU-stack,"",@progbits
+
+ .section ".note.gnu.property", "a"
+#ifdef __LP64__
+ .p2align 3
+#else
+ .p2align 2
+#endif
+ .long 1f - 0f /* name length */
+ .long 5f - 2f /* data length */
+ .long 5 /* note type */
+0: .asciz "GNU" /* vendor name */
+1:
+#ifdef __LP64__
+ .p2align 3
+#else
+ .p2align 2
+#endif
+2: .long 0xc0000002 /* pr_type. */
+ .long 4f - 3f /* pr_datasz. */
+3:
+ .long 0x2
+4:
+#ifdef __LP64__
+ .p2align 3
+#else
+ .p2align 2
+#endif
+5:
diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp
index 36217c6fb4..f6f5a80853 100644
--- a/ld/testsuite/ld-elf/linux-x86.exp
+++ b/ld/testsuite/ld-elf/linux-x86.exp
@@ -37,7 +37,7 @@ run_ld_link_exec_tests [list \
"Run PR ld/23428 test" \
"--no-dynamic-linker -z separate-code" \
"" \
- { linux-x86.S pr23428.c } \
+ { linux-x86.S pr23428.c dummy.s } \
"pr23428" \
"pass.out" \
"$NOPIE_CFLAGS -fno-asynchronous-unwind-tables" \
--
2.20.1
)NIXEa/nix/store/h0if43b7mx5vp92c7pkyzj9lh4ifpiwp-0001-x86-Properly-add-X86_ISA_1_NEEDED-property.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/44jrbhsylds7kh3lyrdcnrckd8hj56fk-bison-3.7.3.tar.gz","sha256","104fe912f2212ab4e4a59df888a93b719a046ffc38d178e943f6c54b1f27b3c7")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bison-3.7.3.tar.gz"),("out","/nix/store/44jrbhsylds7kh3lyrdcnrckd8hj56fk-bison-3.7.3.tar.gz"),("outputHash","1ixk4wglpign8glpil9qziph96ki7flqiy4xlpjb8ai1y89fjkqh"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bison/bison-3.7.3.tar.gz"),("urls","https://ftpmirror.gnu.org/bison/bison-3.7.3.tar.gz")]))NIXEB/nix/store/bv2jbnx022vjgvcnhk1lsgm3k82lnd4w-bison-3.7.3.tar.gz.drv nix-archive-1(typeregularcontentstaddPerlLibPath () {
addToSearchPath PERL5LIB $1/lib/perl5/site_perl
}
addEnvHooks "$hostOffset" addPerlLibPath
)NIXE9/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh nix-archive-1(typeregularcontentsd"diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure
--- perl-5.20.0-orig/Configure 2014-05-26 15:34:18.000000000 +0200
+++ perl-5.20.0/Configure 2014-06-25 10:43:35.368285986 +0200
@@ -106,15 +106,7 @@
fi
: Proper PATH setting
-paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
-paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
-paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
-paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
-paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
-paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
-paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
-paths="$paths /sbin /usr/sbin /usr/libexec"
-paths="$paths /system/gnu_library/bin"
+paths=''
for p in $paths
do
@@ -1337,8 +1329,7 @@
archname=''
: Possible local include directories to search.
: Set locincpth to "" in a hint file to defeat local include searches.
-locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
-locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
+locincpth=""
:
: no include file wanted by default
inclwanted=''
@@ -1349,17 +1340,12 @@
libnames=''
: change the next line if compiling for Xenix/286 on Xenix/386
-xlibpth='/usr/lib/386 /lib/386'
+xlibpth=''
: Possible local library directories to search.
-loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
-loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
+loclibpth=""
: general looking path for locating libraries
-glibpth="/lib /usr/lib $xlibpth"
-glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
-test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
-test -f /shlib/libc.so && glibpth="/shlib $glibpth"
-test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64"
+glibpth=""
: Private path used by Configure to find libraries. Its value
: is prepended to libpth. This variable takes care of special
@@ -1391,8 +1377,6 @@
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
-glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
-glibpth="/usr/shlib $glibpth"
: Do not use vfork unless overridden by a hint file.
usevfork=false
@@ -2446,7 +2430,6 @@
zip
"
pth=`echo $PATH | sed -e "s/$p_/ /g"`
-pth="$pth $sysroot/lib $sysroot/usr/lib"
for file in $loclist; do
eval xxx=\$$file
case "$xxx" in
@@ -4936,7 +4919,7 @@
: Set private lib path
case "$plibpth" in
'') if ./mips; then
- plibpth="$incpath/usr/lib $sysroot/usr/local/lib $sysroot/usr/ccs/lib"
+ plibpth="$incpath/usr/lib"
fi;;
esac
case "$libpth" in
@@ -8600,13 +8583,8 @@
echo " "
case "$sysman" in
'')
- syspath='/usr/share/man/man1 /usr/man/man1'
- syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1"
- syspath="$syspath /usr/man/u_man/man1"
- syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1"
- syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1"
- syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1"
- sysman=`./loc . /usr/man/man1 $syspath`
+ syspath=''
+ sysman=''
;;
esac
if $test -d "$sysman"; then
@@ -19900,9 +19878,10 @@
case "$full_ar" in
'') full_ar=$ar ;;
esac
+full_ar=ar
: Store the full pathname to the sed program for use in the C program
-full_sed=$sed
+full_sed=sed
: see what type gids are declared as in the kernel
echo " "
Only in perl-5.20.0/: Configure.orig
diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/ext/Errno/Errno_pm.PL perl-5.20.0/ext/Errno/Errno_pm.PL
--- perl-5.20.0-orig/ext/Errno/Errno_pm.PL 2014-05-26 15:34:20.000000000 +0200
+++ perl-5.20.0/ext/Errno/Errno_pm.PL 2014-06-25 10:31:24.317970047 +0200
@@ -134,12 +126,7 @@
if ($dep =~ /(\S+errno\.h)/) {
$file{$1} = 1;
}
- } elsif ($^O eq 'linux' &&
- $Config{gccversion} ne '' &&
- $Config{gccversion} !~ /intel/i &&
- # might be using, say, Intel's icc
- $linux_errno_h
- ) {
+ } elsif (0) {
$file{$linux_errno_h} = 1;
} elsif ($^O eq 'haiku') {
# hidden in a special place
Only in perl-5.20.0/ext/Errno: Errno_pm.PL.orig
diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/freebsd.sh perl-5.20.0/hints/freebsd.sh
--- perl-5.20.0-orig/hints/freebsd.sh 2014-01-31 22:55:51.000000000 +0100
+++ perl-5.20.0/hints/freebsd.sh 2014-06-25 10:25:53.263964680 +0200
@@ -119,21 +119,21 @@
objformat=`/usr/bin/objformat`
if [ x$objformat = xaout ]; then
if [ -e /usr/lib/aout ]; then
- libpth="/usr/lib/aout /usr/local/lib /usr/lib"
- glibpth="/usr/lib/aout /usr/local/lib /usr/lib"
+ libpth=""
+ glibpth=""
fi
lddlflags='-Bshareable'
else
- libpth="/usr/lib /usr/local/lib"
- glibpth="/usr/lib /usr/local/lib"
+ libpth=""
+ glibpth=""
ldflags="-Wl,-E "
lddlflags="-shared "
fi
cccdlflags='-DPIC -fPIC'
;;
*)
- libpth="/usr/lib /usr/local/lib"
- glibpth="/usr/lib /usr/local/lib"
+ libpth=""
+ glibpth=""
ldflags="-Wl,-E "
lddlflags="-shared "
cccdlflags='-DPIC -fPIC'
diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/linux.sh
--- perl-5.20.0-orig/hints/linux.sh 2014-05-26 15:34:20.000000000 +0200
+++ perl-5.20.0/hints/linux.sh 2014-06-25 10:33:47.354883843 +0200
@@ -150,28 +150,6 @@ case "$optimize" in
;;
esac
-# Ubuntu 11.04 (and later, presumably) doesn't keep most libraries
-# (such as -lm) in /lib or /usr/lib. So we have to ask gcc to tell us
-# where to look. We don't want gcc's own libraries, however, so we
-# filter those out.
-# This could be conditional on Unbuntu, but other distributions may
-# follow suit, and this scheme seems to work even on rather old gcc's.
-# This unconditionally uses gcc because even if the user is using another
-# compiler, we still need to find the math library and friends, and I don't
-# know how other compilers will cope with that situation.
-# Morever, if the user has their own gcc earlier in $PATH than the system gcc,
-# we don't want its libraries. So we try to prefer the system gcc
-# Still, as an escape hatch, allow Configure command line overrides to
-# plibpth to bypass this check.
-if [ -x /usr/bin/gcc ] ; then
- gcc=/usr/bin/gcc
-# clang also provides -print-search-dirs
-elif ${cc:-cc} --version 2>/dev/null | grep -q '^clang ' ; then
- gcc=${cc:-cc}
-else
- gcc=gcc
-fi
-
case "$plibpth" in
'') plibpth=`LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries |
cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'`
@@ -208,32 +186,6 @@ case "$usequadmath" in
;;
esac
-case "$libc" in
-'')
-# If you have glibc, then report the version for ./myconfig bug reporting.
-# (Configure doesn't need to know the specific version since it just uses
-# gcc to load the library for all tests.)
-# We don't use __GLIBC__ and __GLIBC_MINOR__ because they
-# are insufficiently precise to distinguish things like
-# libc-2.0.6 and libc-2.0.7.
- for p in $plibpth
- do
- for trylib in libc.so.6 libc.so
- do
- if $test -e $p/$trylib; then
- libc=`ls -l $p/$trylib | awk '{print $NF}'`
- if $test "X$libc" != X; then
- break
- fi
- fi
- done
- if $test "X$libc" != X; then
- break
- fi
- done
- ;;
-esac
-
if ${sh:-/bin/sh} -c exit; then
echo ''
echo 'You appear to have a working bash. Good.'
@@ -311,33 +263,6 @@ sparc*)
;;
esac
-# SuSE8.2 has /usr/lib/libndbm* which are ld scripts rather than
-# true libraries. The scripts cause binding against static
-# version of -lgdbm which is a bad idea. So if we have 'nm'
-# make sure it can read the file
-# NI-S 2003/08/07
-case "$nm" in
- '') ;;
- *)
- for p in $plibpth
- do
- if $test -r $p/libndbm.so; then
- if $nm $p/libndbm.so >/dev/null 2>&1 ; then
- echo 'Your shared -lndbm seems to be a real library.'
- _libndbm_real=1
- break
- fi
- fi
- done
- if $test "X$_libndbm_real" = X; then
- echo 'Your shared -lndbm is not a real library.'
- set `echo X "$libswanted "| sed -e 's/ ndbm / /'`
- shift
- libswanted="$*"
- fi
- ;;
-esac
-
# Linux on Synology.
if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then
# Tested on Synology DS213 and DS413
)NIXEB/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/bl6b2p0aw8phljjn0s3xzyghbbzawl2r-perl-5.32.0.tar.gz","sha256","efeb1ce1f10824190ad1cadbcccf6fdb8a5d37007d0100d2d9ae5f2b5900c0b4")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","perl-5.32.0.tar.gz"),("out","/nix/store/bl6b2p0aw8phljjn0s3xzyghbbzawl2r-perl-5.32.0.tar.gz"),("outputHash","1d6001cjnpxfv79000bx00vmv2nvdz7wrnyas451j908y7hirszg"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://cpan.metacpan.org/src/5.0/perl-5.32.0.tar.gz"),("urls","https://cpan.metacpan.org/src/5.0/perl-5.32.0.tar.gz")]))NIXEB/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drv nix-archive-1(typeregularcontents"Derive([("devdoc","/nix/store/h56dnclh88xqmmpdfnxinmzd3knqa3ph-perl-5.32.0-devdoc","",""),("man","/nix/store/lpdp0hzx9kxsbanp6clrnr95xh2h6p9p-perl-5.32.0-man","",""),("out","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8fj4q1xrlsb733rry08zvi64hap5pvig-bootstrap-stage1-gcc-wrapper-.drv",["out"]),("/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","-de -Dcc=cc -Uinstallusrbinperl -Dinstallstyle=lib/perl5 -Duseshrplib -Dlocincpth=/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/include -Dloclibpth=/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib -Dprefix=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9 -Dman1dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man1 -Dman3dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man3"),("configureScript","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash ./Configure"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("devdoc","/nix/store/h56dnclh88xqmmpdfnxinmzd3knqa3ph-perl-5.32.0-devdoc"),("disallowedReferences","/nix/store/hmwlad0xk4dpg9jj1rp15bsbgh066npx-bootstrap-stage1-gcc-wrapper-"),("doCheck",""),("doInstallCheck",""),("dontAddPrefix","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/lpdp0hzx9kxsbanp6clrnr95xh2h6p9p-perl-5.32.0-man"),("name","perl-5.32.0"),("nativeBuildInputs",""),("out","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("outputs","out man devdoc"),("patches","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"),("postInstall","# Remove dependency between \"out\" and \"man\" outputs.\nrm \"$out\"/lib/perl5/*/*/.packlist\n\n# Remove dependencies on glibc and gcc\nsed \"/ *libpth =>/c libpth => ' ',\" \\\n -i \"$out\"/lib/perl5/*/*/Config.pm\n# TODO: removing those paths would be cleaner than overwriting with nonsense.\nsubstituteInPlace \"$out\"/lib/perl5/*/*/Config_heavy.pl \\\n --replace \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" /no-such-path \\\n --replace \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools\" /no-such-path \\\n --replace \"/nix/store/hmwlad0xk4dpg9jj1rp15bsbgh066npx-bootstrap-stage1-gcc-wrapper-\" /no-such-path \\\n --replace \"$man\" /no-such-path\n"),("postPatch","substituteInPlace dist/PathTools/Cwd.pm \\\n --replace \"/bin/pwd\" \"$(type -P pwd)\"\nunset src\n"),("preConfigure","substituteInPlace ./Configure --replace '`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`' 'Thu Jan 1 00:00:01 UTC 1970'\nsubstituteInPlace ./Configure --replace '$uname -a' '$uname --kernel-name --machine --operating-system'\n# We need to do this because the bootstrap doesn't have a static libpthread\nsed -i 's,\\(libswanted.*\\)pthread,\\1,g' Configure\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("setupHook","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh"),("src","/nix/store/bl6b2p0aw8phljjn0s3xzyghbbzawl2r-perl-5.32.0.tar.gz"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","5.32.0")]))NIXE;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvM/nix/store/8fj4q1xrlsb733rry08zvi64hap5pvig-bootstrap-stage1-gcc-wrapper-.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.shB/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patchB/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drvF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv nix-archive-1(typeregularcontentsmDerive([("out","/nix/store/zxjcqfp682dn9n797aa83b635jz3yc4q-01-fix-ftbfs-with-glibc-2.28.patch","sha256","13874095e1fa9faab45d95a348cf57adb118b3204c5e3881df8e265a976d958a")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","01-fix-ftbfs-with-glibc-2.28.patch"),("out","/nix/store/zxjcqfp682dn9n797aa83b635jz3yc4q-01-fix-ftbfs-with-glibc-2.28.patch"),("outputHash","12lmdnbml9lfvy0khpjc42riicddaz7li8wmbnsam7zsw6al11qk"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://sources.debian.org/data/main/m/m4/1.4.18-2/debian/patches/01-fix-ftbfs-with-glibc-2.28.patch"),("urls","https://sources.debian.org/data/main/m/m4/1.4.18-2/debian/patches/01-fix-ftbfs-with-glibc-2.28.patch")]))NIXER/nix/store/7x9q5qdd27aljvvrnrvabb6h6b0sh082-01-fix-ftbfs-with-glibc-2.28.patch.drv nix-archive-1(typeregularcontentsHFails to build with glibc 2.12.1 without this patch.
http://lists.gnu.org/archive/html/bug-m4/2010-05/msg00002.html
--- a/src/path.c
+++ b/src/path.c
@@ -22,6 +22,7 @@
/* Handling of path search of included files via the builtins "include"
and "sinclude". */
#include "m4.h"
+#include "sys/stat.h"
struct includes
)NIXE9/nix/store/hvz9dmw8ka9y3kc8asay2rgvi0n689d6-s_isdir.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/v9lnrjcmf6bm655yjfamjvc82ydmgck9-m4-1.4.18.tar.bz2","sha256","6640d76b043bc658139c8903e293d5978309bf0f408107146505eca701e67cf6")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","m4-1.4.18.tar.bz2"),("out","/nix/store/v9lnrjcmf6bm655yjfamjvc82ydmgck9-m4-1.4.18.tar.bz2"),("outputHash","1xkwwq0sgv05cla0g0a01yzhk0wpsn9y40w9kh9miiiv0imxfh36"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/m4/m4-1.4.18.tar.bz2"),("urls","https://ftpmirror.gnu.org/m4/m4-1.4.18.tar.bz2")]))NIXEA/nix/store/w82bmsq3lbczpnvqr82dhj50igar0k6g-m4-1.4.18.tar.bz2.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7x9q5qdd27aljvvrnrvabb6h6b0sh082-01-fix-ftbfs-with-glibc-2.28.patch.drv",["out"]),("/nix/store/w82bmsq3lbczpnvqr82dhj50igar0k6g-m4-1.4.18.tar.bz2.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/hvz9dmw8ka9y3kc8asay2rgvi0n689d6-s_isdir.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-syscmd-shell=/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","gnum4-1.4.18"),("nativeBuildInputs",""),("out","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("outputs","out"),("patches","/nix/store/hvz9dmw8ka9y3kc8asay2rgvi0n689d6-s_isdir.patch /nix/store/zxjcqfp682dn9n797aa83b635jz3yc4q-01-fix-ftbfs-with-glibc-2.28.patch"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/v9lnrjcmf6bm655yjfamjvc82ydmgck9-m4-1.4.18.tar.bz2"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drvM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvR/nix/store/7x9q5qdd27aljvvrnrvabb6h6b0sh082-01-fix-ftbfs-with-glibc-2.28.patch.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/hvz9dmw8ka9y3kc8asay2rgvi0n689d6-s_isdir.patchA/nix/store/w82bmsq3lbczpnvqr82dhj50igar0k6g-m4-1.4.18.tar.bz2.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/bv2jbnx022vjgvcnhk1lsgm3k82lnd4w-bison-3.7.3.tar.gz.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","bison-3.7.3"),("nativeBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18 /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("out","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3"),("outputs","out"),("patches",""),("pname","bison"),("propagatedBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("propagatedNativeBuildInputs",""),("src","/nix/store/44jrbhsylds7kh3lyrdcnrckd8hj56fk-bison-3.7.3.tar.gz"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","3.7.3")]))NIXE;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drvM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shB/nix/store/bv2jbnx022vjgvcnhk1lsgm3k82lnd4w-bison-3.7.3.tar.gz.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv nix-archive-1(typeregularcontentsDerive([("bin","/nix/store/iiz9af6gqns2jjmpilf3y6a6vd0lg7ws-xz-5.2.5-bin","",""),("dev","/nix/store/50zkrfzlhhrkkbwfd0gs5c841ramkcil-xz-5.2.5-dev","",""),("doc","/nix/store/4drh9digmk5fbixw7vm6hfk65a8c3bzy-xz-5.2.5-doc","",""),("man","/nix/store/qv7s7ginllcxwsz4jhspjip6l7ypmylg-xz-5.2.5-man","",""),("out","/nix/store/pfa6lcn9yz209jfv35kc8q0lggzq44k6-xz-5.2.5","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/iiz9af6gqns2jjmpilf3y6a6vd0lg7ws-xz-5.2.5-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/50zkrfzlhhrkkbwfd0gs5c841ramkcil-xz-5.2.5-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/4drh9digmk5fbixw7vm6hfk65a8c3bzy-xz-5.2.5-doc"),("man","/nix/store/qv7s7ginllcxwsz4jhspjip6l7ypmylg-xz-5.2.5-man"),("name","xz-5.2.5"),("nativeBuildInputs",""),("out","/nix/store/pfa6lcn9yz209jfv35kc8q0lggzq44k6-xz-5.2.5"),("outputs","bin dev out man doc"),("patches",""),("postInstall","rm -rf $out/share/doc"),("preCheck","# Tests have a /bin/sh dependency...\npatchShebangs tests\n"),("preConfigure","CONFIG_SHELL=/bin/sh"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/1yp7ni0gh2mcg723ji3kdmhfnjwrvnny-xz-5.2.5.drvM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/s1bb06rzbxlvq08sg0ymwdgcgd1a7xh3-gettext-0.21.tar.gz","sha256","c77d0da3102aec9c07f43671e60611ebff89a996ef159497ce8e59d075786b12")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","gettext-0.21.tar.gz"),("out","/nix/store/s1bb06rzbxlvq08sg0ymwdgcgd1a7xh3-gettext-0.21.tar.gz"),("outputHash","04kbg1sx0ncfrsbr85ggjslqkzzb243fcw9nyh3rrv1a22ihszf7"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/gettext/gettext-0.21.tar.gz"),("urls","https://ftpmirror.gnu.org/gettext/gettext-0.21.tar.gz")]))NIXEC/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv nix-archive-1(typeregularcontents,gettextDataDirsHook() {
# See pkgs/build-support/setup-hooks/role.bash
getHostRoleEnvHook
if [ -d "$1/share/gettext" ]; then
addToSearchPath "GETTEXTDATADIRS${role_post}" "$1/share/gettext"
fi
}
addEnvHooks "$hostOffset" gettextDataDirsHook
# libintl must be listed in load flags on non-Glibc
# it doesn't hurt to have it in Glibc either though
if [ -n "@gettextNeedsLdflags@" -a -z "${dontAddExtraLibs-}" ]; then
# See pkgs/build-support/setup-hooks/role.bash
getHostRole
export NIX_LDFLAGS${role_post}+=" -lintl"
fi
)NIXEA/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh nix-archive-1(typeregularcontents�diff --git a/gettext-runtime/src/gettext.sh.in b/gettext-runtime/src/gettext.sh.in
index 1dfa3bb..d6ef8a8 100644
--- a/gettext-runtime/src/gettext.sh.in
+++ b/gettext-runtime/src/gettext.sh.in
@@ -86,14 +86,14 @@ fi
# looks up the translation of MSGID and substitutes shell variables in the
# result.
eval_gettext () {
- gettext "$1" | (export PATH `envsubst --variables "$1"`; envsubst "$1")
+ @out@/bin/gettext "$1" | (export PATH `@out@/bin/envsubst --variables "$1"`; @out@/bin/envsubst "$1")
}
# eval_ngettext MSGID MSGID-PLURAL COUNT
# looks up the translation of MSGID / MSGID-PLURAL for COUNT and substitutes
# shell variables in the result.
eval_ngettext () {
- ngettext "$1" "$2" "$3" | (export PATH `envsubst --variables "$1 $2"`; envsubst "$1 $2")
+ @out@/bin/ngettext "$1" "$2" "$3" | (export PATH `@out@/bin/envsubst --variables "$1 $2"`; @out@/bin/envsubst "$1 $2")
}
# Note: This use of envsubst is much safer than using the shell built-in 'eval'
)NIXE?/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff nix-archive-1(typeregularcontents� Derive([("doc","/nix/store/yxn9nw7r72wgh9hcsg2z43fvl8ssg0p7-gettext-0.21-doc","",""),("info","/nix/store/0gkqgvr9fsxnv71p51qcm1lkjm6m25y7-gettext-0.21-info","",""),("man","/nix/store/icwzqcl2frjy6jffy7z9g9jv3g4bfazi-gettext-0.21-man","",""),("out","/nix/store/mvg8nzl1c5wbli40f54z73ppiw4802q2-gettext-0.21","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/1yp7ni0gh2mcg723ji3kdmhfnjwrvnny-xz-5.2.5.drv",["bin","dev"]),("/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("LDFLAGS",""),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--disable-csharp --with-xz"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/yxn9nw7r72wgh9hcsg2z43fvl8ssg0p7-gettext-0.21-doc"),("enableParallelBuilding","1"),("enableParallelChecking",""),("gettextNeedsLdflags",""),("hardeningDisable","format"),("info","/nix/store/0gkqgvr9fsxnv71p51qcm1lkjm6m25y7-gettext-0.21-info"),("man","/nix/store/icwzqcl2frjy6jffy7z9g9jv3g4bfazi-gettext-0.21-man"),("name","gettext-0.21"),("nativeBuildInputs","/nix/store/50zkrfzlhhrkkbwfd0gs5c841ramkcil-xz-5.2.5-dev /nix/store/iiz9af6gqns2jjmpilf3y6a6vd0lg7ws-xz-5.2.5-bin"),("out","/nix/store/mvg8nzl1c5wbli40f54z73ppiw4802q2-gettext-0.21"),("outputs","out man doc info"),("patches","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff"),("pname","gettext"),("postPatch","substituteAllInPlace gettext-runtime/src/gettext.sh.in\nsubstituteInPlace gettext-tools/projects/KDE/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/projects/GNOME/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/src/project-id --replace \"/bin/pwd\" pwd\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh"),("src","/nix/store/s1bb06rzbxlvq08sg0ymwdgcgd1a7xh3-gettext-0.21.tar.gz"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.21")]))NIXE</nix/store/q64fcri5aa4vl7n3wq5ml3jj93mw7ay1-gettext-0.21.drvM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/1yp7ni0gh2mcg723ji3kdmhfnjwrvnny-xz-5.2.5.drvC/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shA/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh?/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash nix-archive-1(typeregularcontents�Derive([("out","/nix/store/n1pp66v5mya20j0rq5mbzkak0pf6sal0-binutils-2.31.1.tar.bz2","sha256","ffcc382695bf947da6135e7436b8ed52d991cf270db897190f19d6f9838564d0")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","binutils-2.31.1.tar.bz2"),("out","/nix/store/n1pp66v5mya20j0rq5mbzkak0pf6sal0-binutils-2.31.1.tar.bz2"),("outputHash","1l34hn1zkmhr1wcrgf0d4z7r3najxnw3cx2y2fk7v55zjlk3ik7z"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/binutils/binutils-2.31.1.tar.bz2"),("urls","https://ftpmirror.gnu.org/binutils/binutils-2.31.1.tar.bz2")]))NIXEG/nix/store/z5x1p3p59d5v0xsx5plpp2f28sl47gbd-binutils-2.31.1.tar.bz2.drv nix-archive-1(typeregularcontents�=From 6737a6b34f4823deb7142f27b4074831a37ac1e1 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Fri, 20 Jul 2018 09:18:47 -0700
Subject: [PATCH] x86: Add a GNU_PROPERTY_X86_ISA_1_USED note if needed
When -z separate-code, which is enabled by default for Linux/x86, is
used to create executable, ld won't place any data in the code-only
PT_LOAD segment. If there are no data sections placed before the
code-only PT_LOAD segment, the program headers won't be mapped into
any PT_LOAD segment. When the executable tries to access it (based
on the program header address passed in AT_PHDR), it will lead to
segfault. This patch inserts a GNU_PROPERTY_X86_ISA_1_USED note if
there may be no data sections before the text section so that the
first PT_LOAD segment won't be code-only and will contain the program
header.
Testcases are adjusted to either pass "-z noseparate-code" to ld or
discard the .note.gnu.property section. A Linux/x86 run-time test is
added.
bfd/
PR ld/23428
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): If the
separate code program header is needed, make sure that the first
read-only PT_LOAD segment has no code by adding a
GNU_PROPERTY_X86_ISA_1_USED note.
ld/
PR ld/23428
* testsuite/ld-elf/linux-x86.S: New file.
* testsuite/ld-elf/linux-x86.exp: Likewise.
* testsuite/ld-elf/pr23428.c: Likewise.
* testsuite/ld-elf/sec64k.exp: Pass "-z noseparate-code" to ld
for Linux/x86 targets.
* testsuite/ld-i386/abs-iamcu.d: Likewise.
* testsuite/ld-i386/abs.d: Likewise.
* testsuite/ld-i386/pr12718.d: Likewise.
* testsuite/ld-i386/pr12921.d: Likewise.
* testsuite/ld-x86-64/abs-k1om.d: Likewise.
* testsuite/ld-x86-64/abs-l1om.d: Likewise.
* testsuite/ld-x86-64/abs.d: Likewise.
* testsuite/ld-x86-64/pr12718.d: Likewise.
* testsuite/ld-x86-64/pr12921.d: Likewise.
* testsuite/ld-linkonce/zeroeh.ld: Discard .note.gnu.property
section.
* testsuite/ld-scripts/print-memory-usage.t: Likewise.
* testsuite/ld-scripts/size-2.t: Likewise.
* testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Use ld
to create executable if language is "asm".
(cherry picked from commit 241e64e3b42cd9eba514b8e0ad2ef39a337f10a5)
---
bfd/elfxx-x86.c | 60 ++++++++++++++-----
ld/testsuite/ld-elf/linux-x86.S | 63 ++++++++++++++++++++
ld/testsuite/ld-elf/linux-x86.exp | 46 ++++++++++++++
ld/testsuite/ld-elf/pr23428.c | 43 +++++++++++++
ld/testsuite/ld-elf/sec64k.exp | 2 +
ld/testsuite/ld-i386/abs-iamcu.d | 2 +-
ld/testsuite/ld-i386/abs.d | 2 +-
ld/testsuite/ld-i386/pr12718.d | 2 +-
ld/testsuite/ld-i386/pr12921.d | 2 +-
ld/testsuite/ld-linkonce/zeroeh.ld | 1 +
ld/testsuite/ld-scripts/print-memory-usage.t | 2 +
ld/testsuite/ld-scripts/size-2.t | 1 +
ld/testsuite/ld-x86-64/abs-k1om.d | 2 +-
ld/testsuite/ld-x86-64/abs-l1om.d | 2 +-
ld/testsuite/ld-x86-64/abs.d | 2 +-
ld/testsuite/ld-x86-64/pr12718.d | 2 +-
ld/testsuite/ld-x86-64/pr12921.d | 2 +-
ld/testsuite/lib/ld-lib.exp | 5 +-
20 files changed, 248 insertions(+), 25 deletions(-)
create mode 100644 ld/testsuite/ld-elf/linux-x86.S
create mode 100644 ld/testsuite/ld-elf/linux-x86.exp
create mode 100644 ld/testsuite/ld-elf/pr23428.c
diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
index a2497aab86..2e4ff88f1f 100644
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -2524,6 +2524,7 @@ _bfd_x86_elf_link_setup_gnu_properties
const struct elf_backend_data *bed;
unsigned int class_align = ABI_64_P (info->output_bfd) ? 3 : 2;
unsigned int got_align;
+ bfd_boolean has_text = FALSE;
features = 0;
if (info->ibt)
@@ -2538,24 +2539,59 @@ _bfd_x86_elf_link_setup_gnu_properties
if (bfd_get_flavour (pbfd) == bfd_target_elf_flavour
&& bfd_count_sections (pbfd) != 0)
{
+ if (!has_text)
+ {
+ /* Check if there is no non-empty text section. */
+ sec = bfd_get_section_by_name (pbfd, ".text");
+ if (sec != NULL && sec->size != 0)
+ has_text = TRUE;
+ }
+
ebfd = pbfd;
if (elf_properties (pbfd) != NULL)
break;
}
- if (ebfd != NULL && features)
+ bed = get_elf_backend_data (info->output_bfd);
+
+ htab = elf_x86_hash_table (info, bed->target_id);
+ if (htab == NULL)
+ return pbfd;
+
+ if (ebfd != NULL)
{
- /* If features is set, add GNU_PROPERTY_X86_FEATURE_1_IBT and
- GNU_PROPERTY_X86_FEATURE_1_SHSTK. */
- prop = _bfd_elf_get_property (ebfd,
- GNU_PROPERTY_X86_FEATURE_1_AND,
- 4);
- prop->u.number |= features;
- prop->pr_kind = property_number;
+ prop = NULL;
+ if (features)
+ {
+ /* If features is set, add GNU_PROPERTY_X86_FEATURE_1_IBT and
+ GNU_PROPERTY_X86_FEATURE_1_SHSTK. */
+ prop = _bfd_elf_get_property (ebfd,
+ GNU_PROPERTY_X86_FEATURE_1_AND,
+ 4);
+ prop->u.number |= features;
+ prop->pr_kind = property_number;
+ }
+ else if (has_text
+ && elf_properties (ebfd) == NULL
+ && elf_tdata (info->output_bfd)->o->build_id.sec == NULL
+ && !htab->elf.dynamic_sections_created
+ && !info->traditional_format
+ && (info->output_bfd->flags & D_PAGED) != 0
+ && info->separate_code)
+ {
+ /* If the separate code program header is needed, make sure
+ that the first read-only PT_LOAD segment has no code by
+ adding a GNU_PROPERTY_X86_ISA_1_USED note. */
+ prop = _bfd_elf_get_property (ebfd,
+ GNU_PROPERTY_X86_ISA_1_USED,
+ 4);
+ prop->u.number = GNU_PROPERTY_X86_ISA_1_486;
+ prop->pr_kind = property_number;
+ }
/* Create the GNU property note section if needed. */
- if (pbfd == NULL)
+ if (prop != NULL && pbfd == NULL)
{
sec = bfd_make_section_with_flags (ebfd,
NOTE_GNU_PROPERTY_SECTION_NAME,
@@ -2581,12 +2617,6 @@ error_alignment:
pbfd = _bfd_elf_link_setup_gnu_properties (info);
- bed = get_elf_backend_data (info->output_bfd);
-
- htab = elf_x86_hash_table (info, bed->target_id);
- if (htab == NULL)
- return pbfd;
-
htab->r_info = init_table->r_info;
htab->r_sym = init_table->r_sym;
diff --git a/ld/testsuite/ld-elf/linux-x86.S b/ld/testsuite/ld-elf/linux-x86.S
new file mode 100644
index 0000000000..bdf40c6e01
--- /dev/null
+++ b/ld/testsuite/ld-elf/linux-x86.S
@@ -0,0 +1,63 @@
+ .text
+ .globl _start
+ .type _start,@function
+ .p2align 4
+_start:
+ xorl %ebp, %ebp
+#ifdef __LP64__
+ popq %rdi
+ movq %rsp, %rsi
+ andq $~15, %rsp
+#elif defined __x86_64__
+ mov (%rsp),%edi
+ addl $4,%esp
+ movl %esp, %esi
+ andl $~15, %esp
+#else
+ popl %esi
+ movl %esp, %ecx
+ andl $~15, %esp
+
+ subl $8,%esp
+ pushl %ecx
+ pushl %esi
+#endif
+
+ call main
+
+ hlt
+
+ .type syscall, @function
+ .globl syscall
+ .p2align 4
+syscall:
+#ifdef __x86_64__
+ movq %rdi, %rax /* Syscall number -> rax. */
+ movq %rsi, %rdi /* shift arg1 - arg5. */
+ movq %rdx, %rsi
+ movq %rcx, %rdx
+ movq %r8, %r10
+ movq %r9, %r8
+ movq 8(%rsp),%r9 /* arg6 is on the stack. */
+ syscall /* Do the system call. */
+#else
+ push %ebp
+ push %edi
+ push %esi
+ push %ebx
+ mov 0x2c(%esp),%ebp
+ mov 0x28(%esp),%edi
+ mov 0x24(%esp),%esi
+ mov 0x20(%esp),%edx
+ mov 0x1c(%esp),%ecx
+ mov 0x18(%esp),%ebx
+ mov 0x14(%esp),%eax
+ int $0x80
+ pop %ebx
+ pop %esi
+ pop %edi
+ pop %ebp
+#endif
+ ret /* Return to caller. */
+ .size syscall, .-syscall
+ .section .note.GNU-stack,"",@progbits
diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp
new file mode 100644
index 0000000000..36217c6fb4
--- /dev/null
+++ b/ld/testsuite/ld-elf/linux-x86.exp
@@ -0,0 +1,46 @@
+# Expect script for simple native Linux/x86 tests.
+# Copyright (C) 2018 Free Software Foundation, Inc.
+#
+# This file is part of the GNU Binutils.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program 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 a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+#
+
+# Test very simple native Linux/x86 programs with linux-x86.S.
+if { ![isnative] || [which $CC] == 0 \
+ || (![istarget "i?86-*-linux*"] \
+ && ![istarget "x86_64-*-linux*"] \
+ && ![istarget "amd64-*-linux*"]) } {
+ return
+}
+
+# Add $PLT_CFLAGS if PLT is expected.
+global PLT_CFLAGS
+# Add $NOPIE_CFLAGS and $NOPIE_LDFLAGS if non-PIE is required.
+global NOPIE_CFLAGS NOPIE_LDFLAGS
+
+run_ld_link_exec_tests [list \
+ [list \
+ "Run PR ld/23428 test" \
+ "--no-dynamic-linker -z separate-code" \
+ "" \
+ { linux-x86.S pr23428.c } \
+ "pr23428" \
+ "pass.out" \
+ "$NOPIE_CFLAGS -fno-asynchronous-unwind-tables" \
+ "asm" \
+ ] \
+]
diff --git a/ld/testsuite/ld-elf/pr23428.c b/ld/testsuite/ld-elf/pr23428.c
new file mode 100644
index 0000000000..3631ed7926
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr23428.c
@@ -0,0 +1,43 @@
+#include <unistd.h>
+#include <link.h>
+#include <syscall.h>
+
+#define STRING_COMMA_LEN(STR) (STR), (sizeof (STR) - 1)
+
+int
+main (int argc, char **argv)
+{
+ char **ev = &argv[argc + 1];
+ char **evp = ev;
+ ElfW(auxv_t) *av;
+ const ElfW(Phdr) *phdr = NULL;
+ size_t phnum = 0;
+ size_t loadnum = 0;
+ int fd = STDOUT_FILENO;
+ size_t i;
+
+ while (*evp++ != NULL)
+ ;
+
+ av = (ElfW(auxv_t) *) evp;
+
+ for (; av->a_type != AT_NULL; ++av)
+ switch (av->a_type)
+ {
+ case AT_PHDR:
+ phdr = (const void *) av->a_un.a_val;
+ break;
+ case AT_PHNUM:
+ phnum = av->a_un.a_val;
+ break;
+ }
+
+ for (i = 0; i < phnum; i++, phdr++)
+ if (phdr->p_type == PT_LOAD)
+ loadnum++;
+
+ syscall (SYS_write, fd, STRING_COMMA_LEN ("PASS\n"));
+
+ syscall (SYS_exit, !loadnum);
+ return 0;
+}
diff --git a/ld/testsuite/ld-elf/sec64k.exp b/ld/testsuite/ld-elf/sec64k.exp
index b58139e9dd..3909c0eaa1 100644
--- a/ld/testsuite/ld-elf/sec64k.exp
+++ b/ld/testsuite/ld-elf/sec64k.exp
@@ -177,6 +177,8 @@ if { ![istarget "d10v-*-*"]
foreach sfile $sfiles { puts $ofd "#source: $sfile" }
if { [istarget spu*-*-*] } {
puts $ofd "#ld: --local-store 0:0"
+ } elseif { [istarget "i?86-*-linux*"] || [istarget "x86_64-*-linux*"] } {
+ puts $ofd "#ld: -z noseparate-code"
} else {
puts $ofd "#ld:"
}
diff --git a/ld/testsuite/ld-i386/abs-iamcu.d b/ld/testsuite/ld-i386/abs-iamcu.d
index ac9beff2e5..aba7d6b03f 100644
--- a/ld/testsuite/ld-i386/abs-iamcu.d
+++ b/ld/testsuite/ld-i386/abs-iamcu.d
@@ -2,7 +2,7 @@
#source: abs.s
#source: zero.s
#as: --32 -march=iamcu
-#ld: -m elf_iamcu
+#ld: -m elf_iamcu -z noseparate-code
#objdump: -rs -j .text
.*: file format .*
diff --git a/ld/testsuite/ld-i386/abs.d b/ld/testsuite/ld-i386/abs.d
index e660aca524..191ee4456a 100644
--- a/ld/testsuite/ld-i386/abs.d
+++ b/ld/testsuite/ld-i386/abs.d
@@ -2,7 +2,7 @@
#as: --32
#source: abs.s
#source: zero.s
-#ld: -melf_i386
+#ld: -melf_i386 -z noseparate-code
#objdump: -rs
.*: file format .*
diff --git a/ld/testsuite/ld-i386/pr12718.d b/ld/testsuite/ld-i386/pr12718.d
index ec51540a42..7eba52d95e 100644
--- a/ld/testsuite/ld-i386/pr12718.d
+++ b/ld/testsuite/ld-i386/pr12718.d
@@ -1,6 +1,6 @@
#name: PR ld/12718
#as: --32
-#ld: -melf_i386
+#ld: -melf_i386 -z noseparate-code
#readelf: -S
There are 5 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/ld-i386/pr12921.d b/ld/testsuite/ld-i386/pr12921.d
index e49079b3c8..ea2da3eb51 100644
--- a/ld/testsuite/ld-i386/pr12921.d
+++ b/ld/testsuite/ld-i386/pr12921.d
@@ -1,6 +1,6 @@
#name: PR ld/12921
#as: --32
-#ld: -melf_i386
+#ld: -melf_i386 -z noseparate-code
#readelf: -S --wide
There are 7 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/ld-linkonce/zeroeh.ld b/ld/testsuite/ld-linkonce/zeroeh.ld
index b22eaa12c9..f89855a08f 100644
--- a/ld/testsuite/ld-linkonce/zeroeh.ld
+++ b/ld/testsuite/ld-linkonce/zeroeh.ld
@@ -2,4 +2,5 @@ SECTIONS {
.text 0xa00 : { *(.text); *(.gnu.linkonce.t.*) }
.gcc_except_table 0x2000 : { *(.gcc_except_table) }
.eh_frame 0x4000 : { *(.eh_frame) }
+ /DISCARD/ : { *(.note.gnu.property) }
}
diff --git a/ld/testsuite/ld-scripts/print-memory-usage.t b/ld/testsuite/ld-scripts/print-memory-usage.t
index 5ff057a5e3..6eda1d2dc4 100644
--- a/ld/testsuite/ld-scripts/print-memory-usage.t
+++ b/ld/testsuite/ld-scripts/print-memory-usage.t
@@ -11,4 +11,6 @@ SECTIONS
*(.data)
*(.rw)
}
+
+ /DISCARD/ : { *(.note.gnu.property) }
}
diff --git a/ld/testsuite/ld-scripts/size-2.t b/ld/testsuite/ld-scripts/size-2.t
index 723863995e..c3c4eddab4 100644
--- a/ld/testsuite/ld-scripts/size-2.t
+++ b/ld/testsuite/ld-scripts/size-2.t
@@ -18,4 +18,5 @@ SECTIONS
LONG (SIZEOF (.tdata))
LONG (SIZEOF (.tbss))
} :image
+ /DISCARD/ : { *(.note.gnu.property) }
}
diff --git a/ld/testsuite/ld-x86-64/abs-k1om.d b/ld/testsuite/ld-x86-64/abs-k1om.d
index 2c26639fc0..6b0fde0eed 100644
--- a/ld/testsuite/ld-x86-64/abs-k1om.d
+++ b/ld/testsuite/ld-x86-64/abs-k1om.d
@@ -2,7 +2,7 @@
#source: ../ld-i386/abs.s
#source: ../ld-i386/zero.s
#as: --64 -march=k1om
-#ld: -m elf_k1om
+#ld: -m elf_k1om -z noseparate-code
#objdump: -rs -j .text
.*: file format .*
diff --git a/ld/testsuite/ld-x86-64/abs-l1om.d b/ld/testsuite/ld-x86-64/abs-l1om.d
index 1fb96d44b7..f87869f9d0 100644
--- a/ld/testsuite/ld-x86-64/abs-l1om.d
+++ b/ld/testsuite/ld-x86-64/abs-l1om.d
@@ -2,7 +2,7 @@
#source: ../ld-i386/abs.s
#source: ../ld-i386/zero.s
#as: --64 -march=l1om
-#ld: -m elf_l1om
+#ld: -m elf_l1om -z noseparate-code
#objdump: -rs -j .text
#target: x86_64-*-linux*
diff --git a/ld/testsuite/ld-x86-64/abs.d b/ld/testsuite/ld-x86-64/abs.d
index b24b018639..d99ab4685d 100644
--- a/ld/testsuite/ld-x86-64/abs.d
+++ b/ld/testsuite/ld-x86-64/abs.d
@@ -1,7 +1,7 @@
#name: Absolute non-overflowing relocs
#source: ../ld-i386/abs.s
#source: ../ld-i386/zero.s
-#ld:
+#ld: -z noseparate-code
#objdump: -rs
.*: file format .*
diff --git a/ld/testsuite/ld-x86-64/pr12718.d b/ld/testsuite/ld-x86-64/pr12718.d
index 07d17325d0..2c503ffbaa 100644
--- a/ld/testsuite/ld-x86-64/pr12718.d
+++ b/ld/testsuite/ld-x86-64/pr12718.d
@@ -1,6 +1,6 @@
#name: PR ld/12718
#as: --64
-#ld: -melf_x86_64
+#ld: -melf_x86_64 -z noseparate-code
#readelf: -S --wide
There are 5 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/ld-x86-64/pr12921.d b/ld/testsuite/ld-x86-64/pr12921.d
index 6fe6abee09..1162d55818 100644
--- a/ld/testsuite/ld-x86-64/pr12921.d
+++ b/ld/testsuite/ld-x86-64/pr12921.d
@@ -1,6 +1,6 @@
#name: PR ld/12921
#as: --64
-#ld: -melf_x86_64
+#ld: -melf_x86_64 -z noseparate-code
#readelf: -S --wide
There are 7 section headers, starting at offset 0x[0-9a-f]+:
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index cfbefe9028..1095091882 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -1482,7 +1482,10 @@ proc run_ld_link_exec_tests { ldtests args } {
continue
}
- if { [ string match "c++" $lang ] } {
+ if { [ string match "asm" $lang ] } {
+ set link_proc ld_link
+ set link_cmd $ld
+ } elseif { [ string match "c++" $lang ] } {
set link_proc ld_link
set link_cmd $CXX
} else {
--
2.20.1
)NIXEk/nix/store/zn2h0kln2b02x4x6jqxymd4sg9cwvdsx-0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch nix-archive-1(typeregularcontents�Derive([("info","/nix/store/yc16qgl8gq429wf0gh0lk940w16kg3d4-binutils-2.31.1-info","",""),("man","/nix/store/231mn1zs79vmyhj571a964pszikibw99-binutils-2.31.1-man","",""),("out","/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1","","")],[("/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/0xc63namfcpqa688sg3ki9vwrjck7i84-zlib-1.2.11.drv",["dev"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8fj4q1xrlsb733rry08zvi64hap5pvig-bootstrap-stage1-gcc-wrapper-.drv",["out"]),("/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv",["out"]),("/nix/store/q64fcri5aa4vl7n3wq5ml3jj93mw7ay1-gettext-0.21.drv",["out"]),("/nix/store/z5x1p3p59d5v0xsx5plpp2f28sl47gbd-binutils-2.31.1.tar.bz2.drv",["out"])],["/nix/store/064jmylcq7h6fa5asg0rna9awcqz3765-0001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31","/nix/store/fbqjjd9g3csmpj6dnxw0s06y9zl3ryxv-gold-symbol-visibility.patch","/nix/store/h0if43b7mx5vp92c7pkyzj9lh4ifpiwp-0001-x86-Properly-add-X86_ISA_1_NEEDED-property.patch","/nix/store/zn2h0kln2b02x4x6jqxymd4sg9cwvdsx-0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-static-libgcc"),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs","/nix/store/jfsx1kxdwj5jy1xha5p5sfhgqin65gww-zlib-1.2.11-dev /nix/store/mvg8nzl1c5wbli40f54z73ppiw4802q2-gettext-0.21"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--enable-shared --disable-static --enable-64-bit-bfd --with-system-zlib --enable-deterministic-archives --disable-werror --enable-fix-loongson2f-nop --enable-new-dtags --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu"),("configurePlatforms","build host"),("depsBuildBuild","/nix/store/hmwlad0xk4dpg9jj1rp15bsbgh066npx-bootstrap-stage1-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("hardeningDisable","format pie"),("info","/nix/store/yc16qgl8gq429wf0gh0lk940w16kg3d4-binutils-2.31.1-info"),("man","/nix/store/231mn1zs79vmyhj571a964pszikibw99-binutils-2.31.1-man"),("name","binutils-2.31.1"),("nativeBuildInputs","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3"),("noSysDirs","1"),("out","/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1"),("outputs","out info man"),("patches","/nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/deterministic.patch /nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/no-plugins.patch /nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/disambiguate-arm-targets.patch /nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/always-search-rpath.patch /nix/store/fbqjjd9g3csmpj6dnxw0s06y9zl3ryxv-gold-symbol-visibility.patch /nix/store/zn2h0kln2b02x4x6jqxymd4sg9cwvdsx-0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch /nix/store/064jmylcq7h6fa5asg0rna9awcqz3765-0001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch /nix/store/h0if43b7mx5vp92c7pkyzj9lh4ifpiwp-0001-x86-Properly-add-X86_ISA_1_NEEDED-property.patch"),("pname","binutils"),("postFixup",""),("preConfigure","# Clear the default library search path.\nif test \"$noSysDirs\" = \"1\"; then\n echo 'NATIVE_LIB_DIRS=' >> ld/configure.tgt\nfi\n\n# Use symlinks instead of hard links to save space (\"strip\" in the\n# fixup phase strips each hard link separately).\nfor i in binutils/Makefile.in gas/Makefile.in ld/Makefile.in gold/Makefile.in; do\n sed -i \"$i\" -e 's|ln |ln -s |'\ndone\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/n1pp66v5mya20j0rq5mbzkak0pf6sal0-binutils-2.31.1.tar.bz2"),("stdenv","/nix/store/m0fivh84yp5ddrl0lfg9h6nbz4wq18k2-bootstrap-stage1-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","2.31.1")]))NIXE?/nix/store/rgdrg9vvx9idxnjmxjhczaq0xin6pkqq-binutils-2.31.1.drv e/nix/store/064jmylcq7h6fa5asg0rna9awcqz3765-0001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patchM/nix/store/07jvvkzr9rpylx1l2jb0maxsz4jbcbfg-bootstrap-stage1-stdenv-linux.drv;/nix/store/0xc63namfcpqa688sg3ki9vwrjck7i84-zlib-1.2.11.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvM/nix/store/8fj4q1xrlsb733rry08zvi64hap5pvig-bootstrap-stage1-gcc-wrapper-.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh0/nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31H/nix/store/fbqjjd9g3csmpj6dnxw0s06y9zl3ryxv-gold-symbol-visibility.patcha/nix/store/h0if43b7mx5vp92c7pkyzj9lh4ifpiwp-0001-x86-Properly-add-X86_ISA_1_NEEDED-property.patch;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv</nix/store/q64fcri5aa4vl7n3wq5ml3jj93mw7ay1-gettext-0.21.drvG/nix/store/z5x1p3p59d5v0xsx5plpp2f28sl47gbd-binutils-2.31.1.tar.bz2.drvk/nix/store/zn2h0kln2b02x4x6jqxymd4sg9cwvdsx-0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch nix-archive-1(typeregularcontentsDerive([("info","/nix/store/8cji3p08j34cdvxp8hain71slngjf0rh-binutils-wrapper-2.31.1-info","",""),("man","/nix/store/3m3xgjvqvr6hhkv0n12g1rgdnfq1g9ff-binutils-wrapper-2.31.1-man","",""),("out","/nix/store/6mk2rwhkrd7bqxxcwl2mc6slgy2pv2cc-binutils-wrapper-2.31.1","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drv",["out"]),("/nix/store/j609knn4ghacd4dj6ij0kbmax842jp40-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/rgdrg9vvx9idxnjmxjhczaq0xin6pkqq-binutils-2.31.1.drv",["info","man","out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh","/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools_bin","/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("dynamicLinker","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/ld-linux-x86-64.so.2"),("emulation","elf64-x86-64"),("expand-response-params","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params"),("expandResponseParams","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("info","/nix/store/8cji3p08j34cdvxp8hain71slngjf0rh-binutils-wrapper-2.31.1-info"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $bintools_bin > $out/nix-support/orig-bintools\n\nldPath=\"/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1/bin\"\nif [ -e $ldPath/as ]; then\n ln -s $ldPath/as $out/bin/as\nfi\n\nwrap ld /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh ${ld:-$ldPath/ld}\n\nfor variant in ld.gold ld.bfd ld.lld; do\n local underlying=$ldPath/$variant\n [[ -e \"$underlying\" ]] || continue\n wrap $variant /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh $underlying\ndone\n"),("libc_bin","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_dev","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_lib","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("man","/nix/store/3m3xgjvqvr6hhkv0n12g1rgdnfq1g9ff-binutils-wrapper-2.31.1-man"),("name","binutils-wrapper-2.31.1"),("nativeBuildInputs",""),("out","/nix/store/6mk2rwhkrd7bqxxcwl2mc6slgy2pv2cc-binutils-wrapper-2.31.1"),("outputs","out man info"),("patches",""),("pname","binutils-wrapper"),("postFixup","touch \"$out/nix-support/libc-ldflags\"\necho \"-L/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib\" >> $out/nix-support/libc-ldflags\n\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc-dev\nif [[ -z ${dynamicLinker+x} ]]; then\n echo \"Don't know the name of the dynamic linker for platform 'x86_64-unknown-linux-gnu', so guessing instead.\" >&2\n local dynamicLinker=\"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/ld*.so.?\"\nfi\ndynamicLinker=($dynamicLinker)\n\ncase ${#dynamicLinker[@]} in\n 0) echo \"No dynamic linker found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\n 1) echo \"Using dynamic linker: '$dynamicLinker'\" >&2;;\n *) echo \"Multiple dynamic linkers found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\nesac\n\nif [ -n \"${dynamicLinker-}\" ]; then\n echo $dynamicLinker > $out/nix-support/dynamic-linker\n\nif [ -e /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/32/ld-linux.so.2 ]; then\n echo /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/32/ld-linux.so.2 > $out/nix-support/dynamic-linker-m32\nfi\necho -dynamic-linker \"$dynamicLinker\" >> $out/nix-support/libc-ldflags-before\nfi\nprintWords /nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1 /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc > $out/nix-support/propagated-user-env-packages\nln -s /nix/store/231mn1zs79vmyhj571a964pszikibw99-binutils-2.31.1-man $man\nln -s /nix/store/yc16qgl8gq429wf0gh0lk940w16kg3d4-binutils-2.31.1-info $info\nexport hardening_unsupported_flags=\"\"\nif [[ \"$($ldPath/ld -z now 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" bindnow\"\nfi\nif [[ \"$($ldPath/ld -z relro 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" relro\"\nfi\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/d1ww955lsl8ipb7iabylyij2wwjq1bqc-bootstrap-stage1-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","2.31.1"),("wrapperName","BINTOOLS_WRAPPER")]))NIXEG/nix/store/hc1zs2iqc5l07crsg4lzl19fdnim02fv-binutils-wrapper-2.31.1.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh9/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.shF/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drvM/nix/store/j609knn4ghacd4dj6ij0kbmax842jp40-bootstrap-stage1-stdenv-linux.drv5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash</nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh?/nix/store/rgdrg9vvx9idxnjmxjhczaq0xin6pkqq-binutils-2.31.1.drvF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontentsqDerive([("out","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"]),("/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drv",["out"]),("/nix/store/hc1zs2iqc5l07crsg4lzl19fdnim02fv-binutils-wrapper-2.31.1.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh","/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools","/nix/store/6mk2rwhkrd7bqxxcwl2mc6slgy2pv2cc-binutils-wrapper-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cc","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("expand-response-params","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params"),("expandResponseParams","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $cc > $out/nix-support/orig-cc\n\nccPath=\"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin\"\nfor bbin in $bintools/bin/*; do\n mkdir -p \"$out/bin\"\n ln -s \"$bbin\" \"$out/bin/$(basename $bbin)\"\ndone\nexport named_cc=cc\nexport named_cxx=c++\n\nif [ -e $ccPath/gcc ]; then\n wrap gcc $wrapper $ccPath/gcc\n ln -s gcc $out/bin/cc\n export named_cc=gcc\n export named_cxx=g++\nelif [ -e $ccPath/clang ]; then\n wrap clang $wrapper $ccPath/clang\n ln -s clang $out/bin/cc\n export named_cc=clang\n export named_cxx=clang++\nfi\n\nif [ -e $ccPath/g++ ]; then\n wrap g++ $wrapper $ccPath/g++\n ln -s g++ $out/bin/c++\nelif [ -e $ccPath/clang++ ]; then\n wrap clang++ $wrapper $ccPath/clang++\n ln -s clang++ $out/bin/c++\nfi\n\nif [ -e $ccPath/cpp ]; then\n wrap cpp $wrapper $ccPath/cpp\nfi\n"),("libc_bin","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_dev","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("libc_lib","/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc"),("name","bootstrap-stage2-gcc-wrapper-"),("nativeBuildInputs",""),("out","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("outputs","out"),("patches",""),("pname","bootstrap-stage2-gcc-wrapper"),("postFixup","touch \"$out/nix-support/cc-cflags\"\ntouch \"$out/nix-support/cc-ldflags\"\nif [[ -f \"$bintools/nix-support/dynamic-linker\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker\" \"$out/nix-support\"\nfi\nif [[ -f \"$bintools/nix-support/dynamic-linker-m32\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker-m32\" \"$out/nix-support\"\nfi\ntouch \"$out/nix-support/libc-cflags\"\ntouch \"$out/nix-support/libc-ldflags\"\necho \"-B/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib/\" >> $out/nix-support/libc-crt1-cflags\necho \"-idirafter /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/include\" >> $out/nix-support/libc-cflags\nfor dir in \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools\"/lib/gcc/*/*/include-fixed; do\n echo '-idirafter' ${dir} >> $out/nix-support/libc-cflags\ndone\n\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc\necho \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" > $out/nix-support/orig-libc-dev\ntouch \"$out/nix-support/libcxx-cxxflags\"\ntouch \"$out/nix-support/libcxx-ldflags\"\nif [ -e \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" -a ! -L \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" ]; then\n ccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\n ccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\nfi\nccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\nccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\n\necho \"$ccLDFlags\" >> $out/nix-support/cc-ldflags\necho \"$ccCFlags\" >> $out/nix-support/cc-cflags\nexport hardening_unsupported_flags=\"\"\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs","/nix/store/6mk2rwhkrd7bqxxcwl2mc6slgy2pv2cc-binutils-wrapper-2.31.1"),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version",""),("wrapper","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh"),("wrapperName","CC_WRAPPER")]))NIXEM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drvF/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drvG/nix/store/hc1zs2iqc5l07crsg4lzl19fdnim02fv-binutils-wrapper-2.31.1.drv</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bashF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents� Derive([("out","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage2-stdenv-linux"),("out","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.shM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/b550kvx7kg32hkxxf826bsl0nikhxr01-patchelf-0.12.tar.bz2.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"])],["/nix/store/03f77phmfdmsbfpcc6mspjfff3yc9fdj-setup-hook.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","patchelf-0.12"),("nativeBuildInputs",""),("out","/nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12"),("outputs","out"),("patches",""),("pname","patchelf"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHook","/nix/store/03f77phmfdmsbfpcc6mspjfff3yc9fdj-setup-hook.sh"),("src","/nix/store/vfzd71kq2aa2i65wy3lpqc6gv3v6rjj7-patchelf-0.12.tar.bz2"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.12")]))NIXE=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv9/nix/store/03f77phmfdmsbfpcc6mspjfff3yc9fdj-setup-hook.sh?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shE/nix/store/b550kvx7kg32hkxxf826bsl0nikhxr01-patchelf-0.12.tar.bz2.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv nix-archive-1(typeregularcontentsbDerive([("out","/nix/store/nqa9d4yxz1l2cgswzqr1pkm4jfrksm0q-locale-C.diff","sha256","c4b6e84ecb37c78421f46746f0fa48ac24b37ac6faf0f2388d2145a121303247")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","locale-C.diff"),("out","/nix/store/nqa9d4yxz1l2cgswzqr1pkm4jfrksm0q-locale-C.diff"),("outputHash","0irj60hs2i91ilwg5w7sqrxb695c93xg0ik7yhhq9irprd7fidn4"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://salsa.debian.org/glibc-team/glibc/raw/49767c9f7de4828220b691b29de0baf60d8a54ec/debian/patches/localedata/locale-C.diff"),("urls","https://salsa.debian.org/glibc-team/glibc/raw/49767c9f7de4828220b691b29de0baf60d8a54ec/debian/patches/localedata/locale-C.diff")]))NIXE=/nix/store/1zi0k7y01rhqr2gfqb42if0icswg65sj-locale-C.diff.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/i26v5b0npl8rpnmd8535pn0xdaxicq2f-libidn2-2.3.0.tar.gz","sha256","e1cb1db3d2e249a6a3eb6f0946777c2e892d5c5dc7bd91c74394fc3a01cab8b5")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","libidn2-2.3.0.tar.gz"),("out","/nix/store/i26v5b0npl8rpnmd8535pn0xdaxicq2f-libidn2-2.3.0.tar.gz"),("outputHash","1ddqr80kmz4l8g3r3gf7bmf2v29fgivlc2bgxfiscjg2sarivjz1"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/gnu/libidn/libidn2-2.3.0.tar.gz"),("urls","https://ftpmirror.gnu.org/gnu/libidn/libidn2-2.3.0.tar.gz")]))NIXED/nix/store/23vwwg48wr0zmc0iw5ppbv3lxmhnnmlv-libidn2-2.3.0.tar.gz.drv nix-archive-1(typeregularcontents�
Derive([("out","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh "),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage2-stdenv-linux"),("out","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/5m08x67a3jal6raac09zk1057niyj2cl-bootstrap-stage0-glibc-iconv-","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildCommand","mkdir -p $out/include\nln -sv /nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/include/iconv.h $out/include\n"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","bootstrap-stage0-glibc-iconv-"),("nativeBuildInputs",""),("out","/nix/store/5m08x67a3jal6raac09zk1057niyj2cl-bootstrap-stage0-glibc-iconv-"),("outputs","out"),("passAsFile","buildCommand"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("stdenv","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXEM/nix/store/67kk6f1pm7d447lsdswl6m7j5nvwkvji-bootstrap-stage0-glibc-iconv-.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drvF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv nix-archive-1(typeregularcontentsDerive([("out","/nix/store/babxnqqqs87g5dqn01k4x2r3arz1ffan-libunistring-0.9.10.tar.gz","sha256","a82e5b333339a88ea4608e4635479a1cfb2e01aafb925e1290b65710d43f610b")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","libunistring-0.9.10.tar.gz"),("out","/nix/store/babxnqqqs87g5dqn01k4x2r3arz1ffan-libunistring-0.9.10.tar.gz"),("outputHash","02v17za10mxnj095x4pvm80jxyqwk93kailfc2j8xa1r6crmnbm8"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/libunistring/libunistring-0.9.10.tar.gz"),("urls","https://ftpmirror.gnu.org/libunistring/libunistring-0.9.10.tar.gz")]))NIXEJ/nix/store/nz1w09p3ndf4p5migx2m4givlpnycch1-libunistring-0.9.10.tar.gz.drv nix-archive-1(typeregularcontents+source $stdenv/setup
mkdir -p $out/bin
cat > $out/bin/nuke-refs <<EOF
#! $SHELL -e
excludes=""
while getopts e: o; do
case "\$o" in
e) storeId=\$(echo "\$OPTARG" | $perl/bin/perl -ne "print \"\\\$1\" if m|^\Q$NIX_STORE\E/([a-z0-9]{32})-.*|")
if [ -z "\$storeId" ]; then
echo "-e argument must be a Nix store path"
exit 1
fi
excludes="\$excludes(?!\$storeId)"
;;
esac
done
shift \$((\$OPTIND-1))
for i in "\$@"; do
if test ! -L "\$i" -a -f "\$i"; then
cat "\$i" | $perl/bin/perl -pe "s|\Q$NIX_STORE\E/\$excludes[a-z0-9]{32}-|$NIX_STORE/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-|g" > "\$i.tmp"
if test -x "\$i"; then chmod +x "\$i.tmp"; fi
mv "\$i.tmp" "\$i"
fi
done
EOF
chmod +x $out/bin/nuke-refs
)NIXE6/nix/store/l62skckvzzlv3nb7klhcqcrs7ni1pi1w-builder.sh nix-archive-1(typeregularcontents4Derive([("out","/nix/store/rvr805jchb7447dy340572m0ws2zpg08-nuke-references","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"])],["/nix/store/l62skckvzzlv3nb7klhcqcrs7ni1pi1w-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/l62skckvzzlv3nb7klhcqcrs7ni1pi1w-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","nuke-references"),("nativeBuildInputs",""),("out","/nix/store/rvr805jchb7447dy340572m0ws2zpg08-nuke-references"),("outputs","out"),("patches",""),("perl","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("stdenv","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE?/nix/store/sqyz0sycphpjim6p25qw42llz80sc741-nuke-references.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvM/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv6/nix/store/l62skckvzzlv3nb7klhcqcrs7ni1pi1w-builder.sh nix-archive-1(typeregularcontentsL Derive([("dev","/nix/store/8n72hy1zk2rxahlrnk04brvxjbnaa1sg-libunistring-0.9.10-dev","",""),("doc","/nix/store/p6whq9b2dzhjppkqg283fjmcaj8ifibr-libunistring-0.9.10-doc","",""),("info","/nix/store/00l4qakdimj6cyxdn9mykm6p3razv9fn-libunistring-0.9.10-info","",""),("out","/nix/store/ma8xwfjik16p74wxdj640d7mk8wj58z9-libunistring-0.9.10","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/67kk6f1pm7d447lsdswl6m7j5nvwkvji-bootstrap-stage0-glibc-iconv-.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/nz1w09p3ndf4p5migx2m4givlpnycch1-libunistring-0.9.10.tar.gz.drv",["out"]),("/nix/store/sqyz0sycphpjim6p25qw42llz80sc741-nuke-references.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("am_cv_func_iconv_works","yes"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-libiconv-prefix=/nix/store/5m08x67a3jal6raac09zk1057niyj2cl-bootstrap-stage0-glibc-iconv-"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/8n72hy1zk2rxahlrnk04brvxjbnaa1sg-libunistring-0.9.10-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/p6whq9b2dzhjppkqg283fjmcaj8ifibr-libunistring-0.9.10-doc"),("enableParallelBuilding",""),("info","/nix/store/00l4qakdimj6cyxdn9mykm6p3razv9fn-libunistring-0.9.10-info"),("name","libunistring-0.9.10"),("nativeBuildInputs",""),("out","/nix/store/ma8xwfjik16p74wxdj640d7mk8wj58z9-libunistring-0.9.10"),("outputs","out dev info doc"),("patches",""),("pname","libunistring"),("postFixup","/nix/store/rvr805jchb7447dy340572m0ws2zpg08-nuke-references/bin/nuke-refs \"$out\"/lib/lib*.so.*.*\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/babxnqqqs87g5dqn01k4x2r3arz1ffan-libunistring-0.9.10.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.9.10")]))NIXEC/nix/store/mdakkb8gz46xav44ivjjnv0idf982xm1-libunistring-0.9.10.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvM/nix/store/67kk6f1pm7d447lsdswl6m7j5nvwkvji-bootstrap-stage0-glibc-iconv-.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvJ/nix/store/nz1w09p3ndf4p5migx2m4givlpnycch1-libunistring-0.9.10.tar.gz.drv?/nix/store/sqyz0sycphpjim6p25qw42llz80sc741-nuke-references.drv nix-archive-1(typeregularcontents;
Derive([("bin","/nix/store/llk05ab6xlg6d21730ngbs4bwdk2y4qd-libidn2-2.3.0-bin","",""),("dev","/nix/store/sm010ki452bkpq9jrz2q2k8nkv7qadk9-libidn2-2.3.0-dev","",""),("devdoc","/nix/store/nvxkravv6ikdlv5nl4qmcg3vqgfybrn5-libidn2-2.3.0-devdoc","",""),("info","/nix/store/fgyxcv36m16w6n029msyxdy2p9a9dgzc-libidn2-2.3.0-info","",""),("out","/nix/store/g4gk96z9i98hyyf2j4mzn8vvws6gb7i3-libidn2-2.3.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/23vwwg48wr0zmc0iw5ppbv3lxmhnnmlv-libidn2-2.3.0.tar.gz.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/mdakkb8gz46xav44ivjjnv0idf982xm1-libunistring-0.9.10.drv",["dev","out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"]),("/nix/store/sqyz0sycphpjim6p25qw42llz80sc741-nuke-references.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/llk05ab6xlg6d21730ngbs4bwdk2y4qd-libidn2-2.3.0-bin"),("buildInputs","/nix/store/8n72hy1zk2rxahlrnk04brvxjbnaa1sg-libunistring-0.9.10-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/sm010ki452bkpq9jrz2q2k8nkv7qadk9-libidn2-2.3.0-dev"),("devdoc","/nix/store/nvxkravv6ikdlv5nl4qmcg3vqgfybrn5-libidn2-2.3.0-devdoc"),("doCheck",""),("doInstallCheck",""),("info","/nix/store/fgyxcv36m16w6n029msyxdy2p9a9dgzc-libidn2-2.3.0-info"),("name","libidn2-2.3.0"),("nativeBuildInputs",""),("out","/nix/store/g4gk96z9i98hyyf2j4mzn8vvws6gb7i3-libidn2-2.3.0"),("outputs","bin dev out info devdoc"),("patches",""),("pname","libidn2"),("postFixup","/nix/store/rvr805jchb7447dy340572m0ws2zpg08-nuke-references/bin/nuke-refs -e '/nix/store/ma8xwfjik16p74wxdj640d7mk8wj58z9-libunistring-0.9.10' \\\n \"$out\"/lib/lib*.so.*.*\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/i26v5b0npl8rpnmd8535pn0xdaxicq2f-libidn2-2.3.0.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","2.3.0")]))NIXE=/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvD/nix/store/23vwwg48wr0zmc0iw5ppbv3lxmhnnmlv-libidn2-2.3.0.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvC/nix/store/mdakkb8gz46xav44ivjjnv0idf982xm1-libunistring-0.9.10.drvM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv?/nix/store/sqyz0sycphpjim6p25qw42llz80sc741-nuke-references.drv nix-archive-1(typeregularcontentsqdiff -Naur glibc-2.27-orig/elf/ldconfig.c glibc-2.27/elf/ldconfig.c
--- glibc-2.27-orig/elf/ldconfig.c 2018-02-01 11:17:18.000000000 -0500
+++ glibc-2.27/elf/ldconfig.c 2018-02-17 22:43:17.232175182 -0500
@@ -51,7 +51,7 @@
#endif
#ifndef LD_SO_CONF
-# define LD_SO_CONF SYSCONFDIR "/ld.so.conf"
+# define LD_SO_CONF PREFIX "/etc/ld.so.conf"
#endif
/* Get libc version number. */
diff -Naur glibc-2.27-orig/elf/Makefile glibc-2.27/elf/Makefile
--- glibc-2.27-orig/elf/Makefile 2018-02-01 11:17:18.000000000 -0500
+++ glibc-2.27/elf/Makefile 2018-02-17 22:44:50.334006750 -0500
@@ -559,13 +559,13 @@
$(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o)
-SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
-CFLAGS-ldconfig.c += $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \
+PREFIX-FLAGS := -D'PREFIX="$(prefix)"'
+CFLAGS-ldconfig.c += $(PREFIX-FLAGS) -D'LIBDIR="$(libdir)"' \
-D'SLIBDIR="$(slibdir)"'
libof-ldconfig = ldconfig
-CFLAGS-dl-cache.c += $(SYSCONF-FLAGS)
-CFLAGS-cache.c += $(SYSCONF-FLAGS)
-CFLAGS-rtld.c += $(SYSCONF-FLAGS)
+CFLAGS-dl-cache.c += $(PREFIX-FLAGS)
+CFLAGS-cache.c += $(PREFIX-FLAGS)
+CFLAGS-rtld.c += $(PREFIX-FLAGS)
cpp-srcs-left := $(all-rtld-routines:=.os)
lib := rtld
diff -Naur glibc-2.27-orig/sysdeps/generic/dl-cache.h glibc-2.27/sysdeps/generic/dl-cache.h
--- glibc-2.27-orig/sysdeps/generic/dl-cache.h 2018-02-01 11:17:18.000000000 -0500
+++ glibc-2.27/sysdeps/generic/dl-cache.h 2018-02-17 22:45:20.471598816 -0500
@@ -28,7 +28,7 @@
#endif
#ifndef LD_SO_CACHE
-# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache"
+# define LD_SO_CACHE PREFIX "/etc/ld.so.cache"
#endif
#ifndef add_system_dir
)NIXEM/nix/store/5212825a2npxaf7qd81sxfrqq6219rlx-dont-use-system-ld-so-cache.patch nix-archive-1(typeregularcontents�From 3288c6da64add3b4561b8c10fff522027caea01c Mon Sep 17 00:00:00 2001
From: Nicholas Miell <nmiell@gmail.com>
Date: Sat, 17 Jun 2017 18:21:07 -0700
Subject: [PATCH] Align the stack on entry to __tls_get_addr()
Old versions of gcc (4 & 5) didn't align the stack according to the
AMD64 psABI when calling __tls_get_addr(). Apparently new versions of
gcc (7) got much more aggressive about vectorizing and generating MOVAPS
instructions, which means old binaries built with the buggy versions of
gcc are much more likely to crash when using versions of glibc built
using gcc 7.
For example, a large number of Linux games built using the Unity game
engine and available for purchase on Steam.
---
elf/dl-tls.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/elf/dl-tls.c b/elf/dl-tls.c
index 5aba33b3fa..3f3cb917de 100644
--- a/elf/dl-tls.c
+++ b/elf/dl-tls.c
@@ -827,6 +827,10 @@ rtld_hidden_proto (__tls_get_addr)
rtld_hidden_def (__tls_get_addr)
#endif
+#ifdef __x86_64__
+/* Old versions of gcc didn't align the stack. */
+__attribute__((force_align_arg_pointer))
+#endif
/* The generic dynamic and local dynamic model cannot be used in
statically linked applications. */
void *
--
2.13.0
)NIXE=/nix/store/7kw224hdyxd7115lrqh9a4dv2x8msq2s-fix-x64-abi.patch nix-archive-1(typeregularcontents�export NIX_SET_BUILD_ID=1
export NIX_LDFLAGS+=" --compress-debug-sections=zlib"
export NIX_CFLAGS_COMPILE+=" -ggdb -Wa,--compress-debug-sections"
dontStrip=1
fixupOutputHooks+=(_separateDebugInfo)
_separateDebugInfo() {
[ -e "$prefix" ] || return 0
local dst="${debug:-$out}"
if [ "$prefix" = "$dst" ]; then return 0; fi
dst="$dst/lib/debug/.build-id"
# Find executables and dynamic libraries.
local i magic
while IFS= read -r -d $'\0' i; do
if ! isELF "$i"; then continue; fi
# Extract the Build ID. FIXME: there's probably a cleaner way.
local id="$($READELF -n "$i" | sed 's/.*Build ID: \([0-9a-f]*\).*/\1/; t; d')"
if [ "${#id}" != 40 ]; then
echo "could not find build ID of $i, skipping" >&2
continue
fi
# Extract the debug info.
header "separating debug info from $i (build ID $id)"
mkdir -p "$dst/${id:0:2}"
$OBJCOPY --only-keep-debug "$i" "$dst/${id:0:2}/${id:2}.debug"
$STRIP --strip-debug "$i"
# Also a create a symlink <original-name>.debug.
ln -sfn ".build-id/${id:0:2}/${id:2}.debug" "$dst/../$(basename "$i")"
done < <(find "$prefix" -type f -print0)
}
)NIXEB/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh nix-archive-1(typeregularcontents�--- a/arch/x86/Makefile
+++ b/arch/x86/Makefile
@@ -231,3 +231,3 @@ endif
archscripts: scripts_basic
- $(Q)$(MAKE) $(build)=arch/x86/tools relocs
+ $(Q)$(MAKE) $(build)=arch/x86/tools
)NIXE;/nix/store/69lyjyca86317hdsc1rwf3ahn7s5kiyn-no-relocs.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/rp872px5z7n5kvb7lq6w6f669pbzls8b-linux-5.5.tar.xz","sha256","a6fbd4ee903c128367892c2393ee0d9657b6ed3ea90016d4dc6f1f6da20b2330")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","linux-5.5.tar.xz"),("out","/nix/store/rp872px5z7n5kvb7lq6w6f669pbzls8b-linux-5.5.tar.xz"),("outputHash","0c131fi6s7vgvka1c0597vnvcmwn1pp968rci5kq64iwj3pd9yx6"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.tar.xz"),("urls","http://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.tar.xz")]))NIXE@/nix/store/z4164na8b4gz84gb2dy2iz50z8v9vqjs-linux-5.5.tar.xz.drv nix-archive-1(typeregularcontents Derive([("out","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"]),("/nix/store/z4164na8b4gz84gb2dy2iz50z8v9vqjs-linux-5.5.tar.xz.drv",["out"])],["/nix/store/69lyjyca86317hdsc1rwf3ahn7s5kiyn-no-relocs.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("ARCH","x86_64"),("buildInputs",""),("buildPhase","make mrproper $makeFlags\nmake headers $makeFlags\n"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("checkPhase","make headers_check $makeFlags\n"),("configureFlags",""),("depsBuildBuild","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("extraIncludeDirs",""),("hardeningDisable",""),("installPhase","mkdir -p $out\ncp -r usr/include $out\nfind $out -type f ! -name '*.h' -delete\nmkdir -p $out/include/config\necho \"5.5-default\" > $out/include/config/kernel.release\n"),("makeFlags","SHELL=bash cc-version:=9999 cc-fullversion:=999999 HOSTCC:=$(CC_FOR_BUILD) HOSTCXX:=$(CXX_FOR_BUILD)"),("name","linux-headers-5.5"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0 "),("out","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5"),("outputs","out"),("patches","/nix/store/69lyjyca86317hdsc1rwf3ahn7s5kiyn-no-relocs.patch"),("pname","linux-headers"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/rp872px5z7n5kvb7lq6w6f669pbzls8b-linux-5.5.tar.xz"),("stdenv","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","5.5")]))NIXEA/nix/store/gfnp0925raad5m6xagsqidhjgh7mz25z-linux-headers-5.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv;/nix/store/69lyjyca86317hdsc1rwf3ahn7s5kiyn-no-relocs.patch>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv@/nix/store/z4164na8b4gz84gb2dy2iz50z8v9vqjs-linux-5.5.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/pfpaiyl1nx0g37lxrmw33krwjxh1dhds-Python-3.8.6.tar.xz","sha256","a9e0b79d27aa056eb9cce8d63a427b5f9bab1465dee3f942dcfdb25a82f4ab8a")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","Python-3.8.6.tar.xz"),("out","/nix/store/pfpaiyl1nx0g37lxrmw33krwjxh1dhds-Python-3.8.6.tar.xz"),("outputHash","qeC3nSeqBW65zOjWOkJ7X5urFGXe4/lC3P2yWoL0q4o="),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://www.python.org/ftp/python/3.8.6/Python-3.8.6.tar.xz"),("urls","https://www.python.org/ftp/python/3.8.6/Python-3.8.6.tar.xz")]))NIXEC/nix/store/0hfyfy1wxlri4gdcmikg7v0ybvpkl3yl-Python-3.8.6.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/22w7prrkdk70ll462csh1j02q5ajrr51-libtool-2.4.6.tar.gz","sha256","e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","libtool-2.4.6.tar.gz"),("out","/nix/store/22w7prrkdk70ll462csh1j02q5ajrr51-libtool-2.4.6.tar.gz"),("outputHash","1qq61k6lp1fp75xs398yzi6wvbx232l7xbyn3p13cnh27mflvgg3"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz"),("urls","https://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz")]))NIXED/nix/store/0pc18b91az604bmggly2891hgrjd9qbf-libtool-2.4.6.tar.gz.drv nix-archive-1(typeregularcontentsDerive([("out","/nix/store/53ar6y7s69wmgf5bsb2grphlq5hp2zfd-gettext-1.07.tar.gz","sha256","909d47954697e7c04218f972915b787bd1244d75e3bd01620bc167d5bbc49c15")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","gettext-1.07.tar.gz"),("out","/nix/store/53ar6y7s69wmgf5bsb2grphlq5hp2zfd-gettext-1.07.tar.gz"),("outputHash","05cwqjxxary11di03gg3fm6j9lbvg1dr2wpr311c1rwp8salg7ch"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://cpan.metacpan.org/authors/id/P/PV/PVANDRY/gettext-1.07.tar.gz"),("urls","https://cpan.metacpan.org/authors/id/P/PV/PVANDRY/gettext-1.07.tar.gz")]))NIXEC/nix/store/kf2lcp7fx5s8qsk7ls2ci8gp0m1nqnxj-gettext-1.07.tar.gz.drv nix-archive-1(typeregularcontentsDerive([("bin","/nix/store/0nylz4fvyggilixi410ilp9wmlfsbq5b-xz-5.2.5-bin","",""),("dev","/nix/store/061mcbx30h5gfm2jy7rmsck7fijnsr8s-xz-5.2.5-dev","",""),("doc","/nix/store/53bj30hknqr56fkjg4pk8n8n52pv0aks-xz-5.2.5-doc","",""),("man","/nix/store/1j6jv553w7m0lci5ribqi7pkd7mpa5s8-xz-5.2.5-man","",""),("out","/nix/store/y7smmcgy3mh7li2xch5x3la3himi5p4w-xz-5.2.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/0nylz4fvyggilixi410ilp9wmlfsbq5b-xz-5.2.5-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/061mcbx30h5gfm2jy7rmsck7fijnsr8s-xz-5.2.5-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/53bj30hknqr56fkjg4pk8n8n52pv0aks-xz-5.2.5-doc"),("man","/nix/store/1j6jv553w7m0lci5ribqi7pkd7mpa5s8-xz-5.2.5-man"),("name","xz-5.2.5"),("nativeBuildInputs",""),("out","/nix/store/y7smmcgy3mh7li2xch5x3la3himi5p4w-xz-5.2.5"),("outputs","bin dev out man doc"),("patches",""),("postInstall","rm -rf $out/share/doc"),("preCheck","# Tests have a /bin/sh dependency...\npatchShebangs tests\n"),("preConfigure","CONFIG_SHELL=/bin/sh"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/sccl29dq52iakbgpm6c2smm20vk6razr-xz-5.2.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv nix-archive-1(typeregularcontents� Derive([("doc","/nix/store/kzqgkl502gdhay1l753zn6ax973bw070-gettext-0.21-doc","",""),("info","/nix/store/zgbwyp478p9pyb4ihcxn0pbxb5q21vj8-gettext-0.21-info","",""),("man","/nix/store/925sa7wk7vb3xx62hkn16q1xfn53f7r1-gettext-0.21-man","",""),("out","/nix/store/zi6syzvwc13g1y2xbl3g56ii96ki2phk-gettext-0.21","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/sccl29dq52iakbgpm6c2smm20vk6razr-xz-5.2.5.drv",["bin","dev"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("LDFLAGS",""),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--disable-csharp --with-xz"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/kzqgkl502gdhay1l753zn6ax973bw070-gettext-0.21-doc"),("enableParallelBuilding","1"),("enableParallelChecking",""),("gettextNeedsLdflags",""),("hardeningDisable","format"),("info","/nix/store/zgbwyp478p9pyb4ihcxn0pbxb5q21vj8-gettext-0.21-info"),("man","/nix/store/925sa7wk7vb3xx62hkn16q1xfn53f7r1-gettext-0.21-man"),("name","gettext-0.21"),("nativeBuildInputs","/nix/store/061mcbx30h5gfm2jy7rmsck7fijnsr8s-xz-5.2.5-dev /nix/store/0nylz4fvyggilixi410ilp9wmlfsbq5b-xz-5.2.5-bin"),("out","/nix/store/zi6syzvwc13g1y2xbl3g56ii96ki2phk-gettext-0.21"),("outputs","out man doc info"),("patches","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff"),("pname","gettext"),("postPatch","substituteAllInPlace gettext-runtime/src/gettext.sh.in\nsubstituteInPlace gettext-tools/projects/KDE/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/projects/GNOME/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/src/project-id --replace \"/bin/pwd\" pwd\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh"),("src","/nix/store/s1bb06rzbxlvq08sg0ymwdgcgd1a7xh3-gettext-0.21.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.21")]))NIXE</nix/store/kjw253j24ykhbknhvp0fca6j3ip5h2dh-gettext-0.21.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvC/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvA/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh?/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash8/nix/store/sccl29dq52iakbgpm6c2smm20vk6razr-xz-5.2.5.drv nix-archive-1(typeregularcontents�Derive([("devdoc","/nix/store/8vgmsw8akqagc765ijxhrd1sml3jk23r-perl-5.32.0-devdoc","",""),("man","/nix/store/ax7nz5ljljr5kyw2sjqvpv85vaxq8l3r-perl-5.32.0-man","",""),("out","/nix/store/6qz5w251a7c647biflc4602dmkkdm8za-perl-5.32.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drv",["out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","-de -Dcc=cc -Uinstallusrbinperl -Dinstallstyle=lib/perl5 -Duseshrplib -Dlocincpth=/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/include -Dloclibpth=/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib -Dusethreads -Dprefix=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9 -Dman1dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man1 -Dman3dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man3"),("configureScript","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash ./Configure"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("devdoc","/nix/store/8vgmsw8akqagc765ijxhrd1sml3jk23r-perl-5.32.0-devdoc"),("disallowedReferences","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("doCheck",""),("doInstallCheck",""),("dontAddPrefix","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/ax7nz5ljljr5kyw2sjqvpv85vaxq8l3r-perl-5.32.0-man"),("name","perl-5.32.0"),("nativeBuildInputs",""),("out","/nix/store/6qz5w251a7c647biflc4602dmkkdm8za-perl-5.32.0"),("outputs","out man devdoc"),("patches","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"),("postInstall","# Remove dependency between \"out\" and \"man\" outputs.\nrm \"$out\"/lib/perl5/*/*/.packlist\n\n# Remove dependencies on glibc and gcc\nsed \"/ *libpth =>/c libpth => ' ',\" \\\n -i \"$out\"/lib/perl5/*/*/Config.pm\n# TODO: removing those paths would be cleaner than overwriting with nonsense.\nsubstituteInPlace \"$out\"/lib/perl5/*/*/Config_heavy.pl \\\n --replace \"/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc\" /no-such-path \\\n --replace \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools\" /no-such-path \\\n --replace \"/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-\" /no-such-path \\\n --replace \"$man\" /no-such-path\n"),("postPatch","substituteInPlace dist/PathTools/Cwd.pm \\\n --replace \"/bin/pwd\" \"$(type -P pwd)\"\nunset src\n"),("preConfigure","substituteInPlace ./Configure --replace '`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`' 'Thu Jan 1 00:00:01 UTC 1970'\nsubstituteInPlace ./Configure --replace '$uname -a' '$uname --kernel-name --machine --operating-system'\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("setupHook","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh"),("src","/nix/store/bl6b2p0aw8phljjn0s3xzyghbbzawl2r-perl-5.32.0.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","5.32.0")]))NIXE;/nix/store/mqgkjnhsfpy5yd586x93m2mg1m1bnr9d-perl-5.32.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvB/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patchB/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drvM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drvF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv nix-archive-1(typeregularcontents2source $stdenv/setup
PERL5LIB="$PERL5LIB${PERL5LIB:+:}$out/lib/perl5/site_perl"
perlFlags=
for i in $(IFS=:; echo $PERL5LIB); do
perlFlags="$perlFlags -I$i"
done
oldPreConfigure="$preConfigure"
preConfigure() {
eval "$oldPreConfigure"
find . | while read fn; do
if test -f "$fn"; then
first=$(dd if="$fn" count=2 bs=1 2> /dev/null)
if test "$first" = "#!"; then
echo "patching $fn..."
sed -i "$fn" -e "s|^#\!\(.*\bperl\b.*\)$|#\!\1$perlFlags|"
fi
fi
done
perl Makefile.PL PREFIX=$out INSTALLDIRS=site $makeMakerFlags PERL=$(type -P perl) FULLPERL=\"$fullperl/bin/perl\"
}
if test -n "$perlPreHook"; then
eval "$perlPreHook"
fi
genericBuild
if test -n "$perlPostHook"; then
eval "$perlPostHook"
fi
)NIXE6/nix/store/qf3mzpvsmkrw963xchbivcci06078n13-builder.sh nix-archive-1(typeregularcontentsFDerive([("devdoc","/nix/store/pjb7kab0vfnnwz8663zd267qhsihrlwp-perl5.32.0-gettext-1.07-devdoc","",""),("out","/nix/store/fk417rfd4g2zp5r87mf739szc1c4iiln-perl5.32.0-gettext-1.07","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/kf2lcp7fx5s8qsk7ls2ci8gp0m1nqnxj-gettext-1.07.tar.gz.drv",["out"]),("/nix/store/kjw253j24ykhbknhvp0fca6j3ip5h2dh-gettext-0.21.drv",["out"]),("/nix/store/mqgkjnhsfpy5yd586x93m2mg1m1bnr9d-perl-5.32.0.drv",["out"])],["/nix/store/qf3mzpvsmkrw963xchbivcci06078n13-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/qf3mzpvsmkrw963xchbivcci06078n13-builder.sh"],[("AUTOMATED_TESTING","1"),("LANG","C"),("PERL_AUTOINSTALL","--skipdeps"),("PERL_USE_UNSAFE_INC","1"),("buildInputs","/nix/store/zi6syzvwc13g1y2xbl3g56ii96ki2phk-gettext-0.21 /nix/store/6qz5w251a7c647biflc4602dmkkdm8za-perl-5.32.0"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("checkTarget","test"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("devdoc","/nix/store/pjb7kab0vfnnwz8663zd267qhsihrlwp-perl5.32.0-gettext-1.07-devdoc"),("doCheck","1"),("doInstallCheck",""),("fullperl","/nix/store/6qz5w251a7c647biflc4602dmkkdm8za-perl-5.32.0"),("name","perl5.32.0-gettext-1.07"),("nativeBuildInputs","/nix/store/6qz5w251a7c647biflc4602dmkkdm8za-perl-5.32.0"),("out","/nix/store/fk417rfd4g2zp5r87mf739szc1c4iiln-perl5.32.0-gettext-1.07"),("outputs","out devdoc"),("patches",""),("pname","perl5.32.0-gettext"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/53ar6y7s69wmgf5bsb2grphlq5hp2zfd-gettext-1.07.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.07")]))NIXEG/nix/store/iz9s8fi7rc3jwbpn02hxr6iiisfa2m3a-perl5.32.0-gettext-1.07.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvC/nix/store/kf2lcp7fx5s8qsk7ls2ci8gp0m1nqnxj-gettext-1.07.tar.gz.drv</nix/store/kjw253j24ykhbknhvp0fca6j3ip5h2dh-gettext-0.21.drv;/nix/store/mqgkjnhsfpy5yd586x93m2mg1m1bnr9d-perl-5.32.0.drv6/nix/store/qf3mzpvsmkrw963xchbivcci06078n13-builder.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/81baqr3pzpab3whkmfpa26n013hdfa3p-help2man-1.47.16.tar.xz","sha256","3ef8580c5b86e32ca092ce8de43df204f5e6f714b0cd32bc6237e6cd0f34a8f4")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","help2man-1.47.16.tar.xz"),("out","/nix/store/81baqr3pzpab3whkmfpa26n013hdfa3p-help2man-1.47.16.tar.xz"),("outputHash","1x586h7wvripcay35kdh2kvydx84y8yy93ffjah2rqw6bc65iy1y"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/help2man/help2man-1.47.16.tar.xz"),("urls","https://ftpmirror.gnu.org/help2man/help2man-1.47.16.tar.xz")]))NIXEG/nix/store/qf88413j4i0mddpxcjfnvw9y7hxs29wy-help2man-1.47.16.tar.xz.drv nix-archive-1(typeregularcontentsjDerive([("out","/nix/store/wzyhgyc168h3digwwmbddimqm4ik41j7-help2man-1.47.16","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/iz9s8fi7rc3jwbpn02hxr6iiisfa2m3a-perl5.32.0-gettext-1.07.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/kjw253j24ykhbknhvp0fca6j3ip5h2dh-gettext-0.21.drv",["out"]),("/nix/store/mqgkjnhsfpy5yd586x93m2mg1m1bnr9d-perl-5.32.0.drv",["out"]),("/nix/store/qf88413j4i0mddpxcjfnvw9y7hxs29wy-help2man-1.47.16.tar.xz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/6qz5w251a7c647biflc4602dmkkdm8za-perl-5.32.0 /nix/store/fk417rfd4g2zp5r87mf739szc1c4iiln-perl5.32.0-gettext-1.07"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","help2man-1.47.16"),("nativeBuildInputs","/nix/store/zi6syzvwc13g1y2xbl3g56ii96ki2phk-gettext-0.21 /nix/store/fk417rfd4g2zp5r87mf739szc1c4iiln-perl5.32.0-gettext-1.07"),("out","/nix/store/wzyhgyc168h3digwwmbddimqm4ik41j7-help2man-1.47.16"),("outputs","out"),("postInstall","mv $out/bin/help2man $out/bin/.help2man-wrapped\ncat > $out/bin/help2man <<EOF\n#! $SHELL -e\nexport PERL5LIB=\\${PERL5LIB:+:}/nix/store/fk417rfd4g2zp5r87mf739szc1c4iiln-perl5.32.0-gettext-1.07/lib/perl5/site_perl\n\nexec -a \\$0 $out/bin/.help2man-wrapped \"\\$@\"\nEOF\nchmod +x $out/bin/help2man\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/81baqr3pzpab3whkmfpa26n013hdfa3p-help2man-1.47.16.tar.xz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE@/nix/store/igwz5hlcwzzqvvi2cjn63nhqps0wc26b-help2man-1.47.16.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shG/nix/store/iz9s8fi7rc3jwbpn02hxr6iiisfa2m3a-perl5.32.0-gettext-1.07.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv</nix/store/kjw253j24ykhbknhvp0fca6j3ip5h2dh-gettext-0.21.drv;/nix/store/mqgkjnhsfpy5yd586x93m2mg1m1bnr9d-perl-5.32.0.drvG/nix/store/qf88413j4i0mddpxcjfnvw9y7hxs29wy-help2man-1.47.16.tar.xz.drv nix-archive-1(typeregularcontents,Derive([("lib","/nix/store/z530d6yhd0jv3c2k9ksk9wpvyspyrlsi-libtool-2.4.6-lib","",""),("out","/nix/store/qz7wmm9biv1934s7fs2x2jnmgznzp1zn-libtool-2.4.6","","")],[("/nix/store/0pc18b91az604bmggly2891hgrjd9qbf-libtool-2.4.6.tar.gz.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/igwz5hlcwzzqvvi2cjn63nhqps0wc26b-help2man-1.47.16.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontPatchShebangs","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("lib","/nix/store/z530d6yhd0jv3c2k9ksk9wpvyspyrlsi-libtool-2.4.6-lib"),("name","libtool-2.4.6"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0 /nix/store/wzyhgyc168h3digwwmbddimqm4ik41j7-help2man-1.47.16 /nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("out","/nix/store/qz7wmm9biv1934s7fs2x2jnmgznzp1zn-libtool-2.4.6"),("outputs","out lib"),("patches",""),("pname","libtool"),("propagatedBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("propagatedNativeBuildInputs",""),("src","/nix/store/22w7prrkdk70ll462csh1j02q5ajrr51-libtool-2.4.6.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","2.4.6")]))NIXE=/nix/store/h75idxmgcx6ab9d3zxrsvr2rbw8zv43v-libtool-2.4.6.drvD/nix/store/0pc18b91az604bmggly2891hgrjd9qbf-libtool-2.4.6.tar.gz.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh@/nix/store/igwz5hlcwzzqvvi2cjn63nhqps0wc26b-help2man-1.47.16.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv nix-archive-1(typeregularcontents�preConfigurePhases+=" autoreconfPhase"
autoreconfPhase() {
runHook preAutoreconf
autoreconf ${autoreconfFlags:---install --force --verbose}
runHook postAutoreconf
}
)NIXE9/nix/store/ji24g9ychlik5nj2g8hqrg06cn9sn41j-autoreconf.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/sm3m6c71sxa8rwzk85zllm9xjqrdvdb4-autoconf-2.69.tar.xz","sha256","64ebcec9f8ac5b2487125a86a7760d2591ac9e1d3dbd59489633f9de62a57684")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","autoconf-2.69.tar.xz"),("out","/nix/store/sm3m6c71sxa8rwzk85zllm9xjqrdvdb4-autoconf-2.69.tar.xz"),("outputHash","113nlmidxy9kjr45kg9x3ngar4951mvag1js2a3j8nxcz34wxsv4"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.xz"),("urls","https://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.xz")]))NIXED/nix/store/6kxn0zj4ipzpg2p4csxzy64njknwydy6-autoconf-2.69.tar.xz.drv nix-archive-1(typeregularcontentsDerive([("out","/nix/store/pm5qx2ghh3s18gy6ay7kmjzbhrgrmmi6-autoconf-2.69","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/6kxn0zj4ipzpg2p4csxzy64njknwydy6-autoconf-2.69.tar.xz.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontPatchShebangs","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("name","autoconf-2.69"),("nativeBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18 /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("out","/nix/store/pm5qx2ghh3s18gy6ay7kmjzbhrgrmmi6-autoconf-2.69"),("outputs","out"),("patches",""),("preCheck","export TESTSUITEFLAGS=\"-j$NIX_BUILD_CORES\"\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/sm3m6c71sxa8rwzk85zllm9xjqrdvdb4-autoconf-2.69.tar.xz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE=/nix/store/wf3yr6lqwwh9bfcsqca1nwqfzrda5jby-autoconf-2.69.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvD/nix/store/6kxn0zj4ipzpg2p4csxzy64njknwydy6-autoconf-2.69.tar.xz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/fb977wdh1w62mq1qsbzf9bwkcdmxh8yc-automake-1.16.2.tar.xz","sha256","ccc459de3d710e066ab9e12d2f119bd164a08c9341ca24ba22c9adaa179eedd0")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","automake-1.16.2.tar.xz"),("out","/nix/store/fb977wdh1w62mq1qsbzf9bwkcdmxh8yc-automake-1.16.2.tar.xz"),("outputHash","1l7dkqbsmbf94ax29jj1jf6a0r6ikc8jybg1p5m0c3ki7pg5ki6c"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/automake/automake-1.16.2.tar.xz"),("urls","https://ftpmirror.gnu.org/automake/automake-1.16.2.tar.xz")]))NIXEF/nix/store/1cfiqf7wlkvfrm9m26hgsrlwqlvnmrw1-automake-1.16.2.tar.xz.drv nix-archive-1(typeregularcontents�addAclocals () {
addToSearchPathWithCustomDelimiter : ACLOCAL_PATH $1/share/aclocal
}
addEnvHooks "$hostOffset" addAclocals
)NIXE9/nix/store/4cmjzk8yr6i5vls5d2050p653zzdvmvp-setup-hook.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/sfhy6833lpa8lgqhjbmv0d2sh4xh4x88-automake-1.16.2","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/1cfiqf7wlkvfrm9m26hgsrlwqlvnmrw1-automake-1.16.2.tar.xz.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/wf3yr6lqwwh9bfcsqca1nwqfzrda5jby-autoconf-2.69.drv",["out"])],["/nix/store/4cmjzk8yr6i5vls5d2050p653zzdvmvp-setup-hook.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/pm5qx2ghh3s18gy6ay7kmjzbhrgrmmi6-autoconf-2.69"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontPatchShebangs","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("name","automake-1.16.2"),("nativeBuildInputs","/nix/store/pm5qx2ghh3s18gy6ay7kmjzbhrgrmmi6-autoconf-2.69 /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("out","/nix/store/sfhy6833lpa8lgqhjbmv0d2sh4xh4x88-automake-1.16.2"),("outputs","out"),("patches",""),("preCheck","unset NIX_INDENT_MAKE"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHook","/nix/store/4cmjzk8yr6i5vls5d2050p653zzdvmvp-setup-hook.sh"),("src","/nix/store/fb977wdh1w62mq1qsbzf9bwkcdmxh8yc-automake-1.16.2.tar.xz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE?/nix/store/ww10axng99k1n9rjv35vmpgd50b4r6ib-automake-1.16.2.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvF/nix/store/1cfiqf7wlkvfrm9m26hgsrlwqlvnmrw1-automake-1.16.2.tar.xz.drv9/nix/store/4cmjzk8yr6i5vls5d2050p653zzdvmvp-setup-hook.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv=/nix/store/wf3yr6lqwwh9bfcsqca1nwqfzrda5jby-autoconf-2.69.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/l3k7fn94psqyfgm1mfpqzf5158xhbxkr-hook","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/h75idxmgcx6ab9d3zxrsvr2rbw8zv43v-libtool-2.4.6.drv",["out"]),("/nix/store/kjw253j24ykhbknhvp0fca6j3ip5h2dh-gettext-0.21.drv",["out"]),("/nix/store/wf3yr6lqwwh9bfcsqca1nwqfzrda5jby-autoconf-2.69.drv",["out"]),("/nix/store/ww10axng99k1n9rjv35vmpgd50b4r6ib-automake-1.16.2.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ji24g9ychlik5nj2g8hqrg06cn9sn41j-autoreconf.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildCommand","mkdir -p $out/nix-support\ncp /nix/store/ji24g9ychlik5nj2g8hqrg06cn9sn41j-autoreconf.sh $out/nix-support/setup-hook\nprintWords /nix/store/pm5qx2ghh3s18gy6ay7kmjzbhrgrmmi6-autoconf-2.69 /nix/store/sfhy6833lpa8lgqhjbmv0d2sh4xh4x88-automake-1.16.2 /nix/store/zi6syzvwc13g1y2xbl3g56ii96ki2phk-gettext-0.21 /nix/store/qz7wmm9biv1934s7fs2x2jnmgznzp1zn-libtool-2.4.6 > $out/nix-support/propagated-build-inputs\n"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","hook"),("nativeBuildInputs",""),("out","/nix/store/l3k7fn94psqyfgm1mfpqzf5158xhbxkr-hook"),("outputs","out"),("passAsFile","buildCommand"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("stdenv","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE4/nix/store/h41kzqplwwhf60y66l97br6fn3fpx61h-hook.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv=/nix/store/h75idxmgcx6ab9d3zxrsvr2rbw8zv43v-libtool-2.4.6.drv9/nix/store/ji24g9ychlik5nj2g8hqrg06cn9sn41j-autoreconf.sh</nix/store/kjw253j24ykhbknhvp0fca6j3ip5h2dh-gettext-0.21.drv=/nix/store/wf3yr6lqwwh9bfcsqca1nwqfzrda5jby-autoconf-2.69.drv?/nix/store/ww10axng99k1n9rjv35vmpgd50b4r6ib-automake-1.16.2.drv nix-archive-1(typeregularcontents�diff --git a/bzip2recover.c b/bzip2recover.c
index f9de049..252c1b7 100644
--- a/bzip2recover.c
+++ b/bzip2recover.c
@@ -457,6 +457,7 @@ Int32 main ( Int32 argc, Char** argv )
bsPutUChar ( bsWr, 0x50 ); bsPutUChar ( bsWr, 0x90 );
bsPutUInt32 ( bsWr, blockCRC );
bsClose ( bsWr );
+ outFile = NULL;
}
if (wrBlock >= rbCtr) break;
wrBlock++;
)NIXE?/nix/store/r8acyr4xb2yw1k73qjzm9sxmpws27gjr-CVE-2016-3189.patch nix-archive-1(typeregularcontents1Derive([("out","/nix/store/7ir1ygibs1ap5jca2mf403srz9jjqj2g-bzip2-1.0.6.0.1.tar.gz","sha256","0c6d715ec22fab14bb376f6d86c71681981192b42133aa9d6154afc3d02dab2c")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bzip2-1.0.6.0.1.tar.gz"),("out","/nix/store/7ir1ygibs1ap5jca2mf403srz9jjqj2g-bzip2-1.0.6.0.1.tar.gz"),("outputHash","0b5b5p8c7bslc6fslcr1nj9136412v3qcvbg6yxi9argq9g72v8c"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://ftp.uni-kl.de/pub/linux/suse/people/sbrabec/bzip2/tarballs/bzip2-1.0.6.0.1.tar.gz"),("urls","http://ftp.uni-kl.de/pub/linux/suse/people/sbrabec/bzip2/tarballs/bzip2-1.0.6.0.1.tar.gz")]))NIXEF/nix/store/w4lch504bmsyisr3j22s7mj6v66s793z-bzip2-1.0.6.0.1.tar.gz.drv nix-archive-1(typeregularcontentshttps://gitlab.com/federicomenaquintero/bzip2/commit/74de1e2e6ffc9d
diff --git a/decompress.c b/decompress.c
--- a/decompress.c
+++ b/decompress.c
@@ -287,7 +287,7 @@
GET_BITS(BZ_X_SELECTOR_1, nGroups, 3);
if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR);
GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15);
- if (nSelectors < 1) RETURN(BZ_DATA_ERROR);
+ if (nSelectors < 1 || nSelectors > BZ_MAX_SELECTORS) RETURN(BZ_DATA_ERROR);
for (i = 0; i < nSelectors; i++) {
j = 0;
while (True) {
)NIXE@/nix/store/wnf28g32lllbi3i80n97gyzfj2sf9zyx-cve-2019-12900.patch nix-archive-1(typeregularcontentsT Derive([("bin","/nix/store/cg8rwk5ns77q3y292w11a3wb4cj0xkry-bzip2-1.0.6.0.1-bin","",""),("dev","/nix/store/d05vk5c1s9yv5jwffwjb7lqx35zg4z43-bzip2-1.0.6.0.1-dev","",""),("man","/nix/store/2cf6015ssydkj3n6mixx9ws9w9k9hb9r-bzip2-1.0.6.0.1-man","",""),("out","/nix/store/rzz54fgdgy3v49zddcpy01v2hjfzdvhj-bzip2-1.0.6.0.1","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/h41kzqplwwhf60y66l97br6fn3fpx61h-hook.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/w4lch504bmsyisr3j22s7mj6v66s793z-bzip2-1.0.6.0.1.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/r8acyr4xb2yw1k73qjzm9sxmpws27gjr-CVE-2016-3189.patch","/nix/store/wnf28g32lllbi3i80n97gyzfj2sf9zyx-cve-2019-12900.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/cg8rwk5ns77q3y292w11a3wb4cj0xkry-bzip2-1.0.6.0.1-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/d05vk5c1s9yv5jwffwjb7lqx35zg4z43-bzip2-1.0.6.0.1-dev"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/2cf6015ssydkj3n6mixx9ws9w9k9hb9r-bzip2-1.0.6.0.1-man"),("name","bzip2-1.0.6.0.1"),("nativeBuildInputs","/nix/store/l3k7fn94psqyfgm1mfpqzf5158xhbxkr-hook"),("out","/nix/store/rzz54fgdgy3v49zddcpy01v2hjfzdvhj-bzip2-1.0.6.0.1"),("outputs","bin dev out man"),("patches","/nix/store/r8acyr4xb2yw1k73qjzm9sxmpws27gjr-CVE-2016-3189.patch /nix/store/wnf28g32lllbi3i80n97gyzfj2sf9zyx-cve-2019-12900.patch"),("pname","bzip2"),("postPatch","sed -i -e '/<sys\\\\stat\\.h>/s|\\\\|/|' bzip2.c\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/7ir1ygibs1ap5jca2mf403srz9jjqj2g-bzip2-1.0.6.0.1.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.0.6.0.1")]))NIXE?/nix/store/8baw3nx9mx0lpvyib7qj0xl1zscykiji-bzip2-1.0.6.0.1.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh4/nix/store/h41kzqplwwhf60y66l97br6fn3fpx61h-hook.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv?/nix/store/r8acyr4xb2yw1k73qjzm9sxmpws27gjr-CVE-2016-3189.patchF/nix/store/w4lch504bmsyisr3j22s7mj6v66s793z-bzip2-1.0.6.0.1.tar.gz.drv@/nix/store/wnf28g32lllbi3i80n97gyzfj2sf9zyx-cve-2019-12900.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/xf097h6i4i3dpg4dk45zzpkbfz6kw6cf-libffi-3.3.tar.gz","sha256","72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","libffi-3.3.tar.gz"),("out","/nix/store/xf097h6i4i3dpg4dk45zzpkbfz6kw6cf-libffi-3.3.tar.gz"),("outputHash","0mi0cpf8aa40ljjmzxb7im6dbj45bb0kllcd09xgmp834y9agyvj"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://sourceware.org/pub/libffi/libffi-3.3.tar.gz"),("urls","https://sourceware.org/pub/libffi/libffi-3.3.tar.gz")]))NIXEA/nix/store/vd1qyrzvbchgflbgrf3y588k5af0d7mj-libffi-3.3.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/wbsn77b9pvsxq39j26rg00sjf9w7c9lm-libffi-3.3-dev","",""),("info","/nix/store/ka2anxlk6w8cipvv67bzcr9dpjw295iz-libffi-3.3-info","",""),("man","/nix/store/d504fqiigq0davviw1nrqw4v2nm589qw-libffi-3.3-man","",""),("out","/nix/store/mmz9xz2q1miq7v7f56d5c757c1vsz19n-libffi-3.3","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/vd1qyrzvbchgflbgrf3y588k5af0d7mj-libffi-3.3.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-gcc-arch=generic --enable-pax_emutramp"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/wbsn77b9pvsxq39j26rg00sjf9w7c9lm-libffi-3.3-dev"),("doCheck",""),("doInstallCheck",""),("dontStrip",""),("info","/nix/store/ka2anxlk6w8cipvv67bzcr9dpjw295iz-libffi-3.3-info"),("man","/nix/store/d504fqiigq0davviw1nrqw4v2nm589qw-libffi-3.3-man"),("name","libffi-3.3"),("nativeBuildInputs",""),("out","/nix/store/mmz9xz2q1miq7v7f56d5c757c1vsz19n-libffi-3.3"),("outputs","out dev man info"),("patches",""),("preCheck","# The tests use -O0 which is not compatible with -D_FORTIFY_SOURCE.\nNIX_HARDENING_ENABLE=${NIX_HARDENING_ENABLE/fortify/}\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/xf097h6i4i3dpg4dk45zzpkbfz6kw6cf-libffi-3.3.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE:/nix/store/9w35ffzrlxv8a61f1apmkrgv00x1kiiy-libffi-3.3.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvA/nix/store/vd1qyrzvbchgflbgrf3y588k5af0d7mj-libffi-3.3.tar.gz.drv nix-archive-1(typeregularcontentsFrom 1911995b1a1252d80bf2b9651840e185a1a6baf5 Mon Sep 17 00:00:00 2001
From: Hong Xu <hong@topbug.net>
Date: Thu, 25 Jul 2019 10:25:55 -0700
Subject: [PATCH] On all posix systems, not just Darwin, set LDSHARED (if not
set) according to CC
This patch is slightly different from https://bugs.python.org/issue24935
, except that we now handle LDSHARED according to CC on all posix
systems, not just Darwin or Linux.
---
Lib/distutils/sysconfig.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
index 37feae5df7..9fdce6896d 100644
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
@@ -199,10 +199,10 @@ def customize_compiler(compiler):
if 'CC' in os.environ:
newcc = os.environ['CC']
- if (sys.platform == 'darwin'
+ if (os.name == 'posix'
and 'LDSHARED' not in os.environ
and ldshared.startswith(cc)):
- # On OS X, if CC is overridden, use that as the default
+ # On POSIX systems, if CC is overridden, use that as the default
# command for LDSHARED as well
ldshared = newcc + ldshared[len(cc):]
cc = newcc
--
2.25.1
)NIXEk/nix/store/cv1ynpzvjjr0s72jkbblbzz3ymr87lpi-0001-On-all-posix-systems-not-just-Darwin-set-LDSHARED-if.patch nix-archive-1(typeregularcontents"diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index c3682b4..16826c6 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -5880,15 +5880,13 @@ error:
#if defined(HAVE_OPENPTY) || defined(HAVE_FORKPTY) || defined(HAVE_DEV_PTMX)
#ifdef HAVE_PTY_H
#include <pty.h>
-#else
+#endif
#ifdef HAVE_LIBUTIL_H
#include <libutil.h>
-#else
+#endif
#ifdef HAVE_UTIL_H
#include <util.h>
-#endif /* HAVE_UTIL_H */
-#endif /* HAVE_LIBUTIL_H */
-#endif /* HAVE_PTY_H */
+#endif
#ifdef HAVE_STROPTS_H
#include <stropts.h>
#endif
)NIXE@/nix/store/dkb2rjyj7lwmvsn4zzwx85kx8r61nk9w-darwin-libutil.patch nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/nnmpacnwyq6sfipcjb1qac188mrlbkil-zlib-1.2.11-dev","",""),("out","/nix/store/s8c0vw596rhclj30l023xl171vvgxs0c-zlib-1.2.11","",""),("static","/nix/store/fm92slaf8gg295p1zfcfwwpd1lwl4drd-zlib-1.2.11-static","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-static-libgcc"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--shared"),("configurePlatforms",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/nnmpacnwyq6sfipcjb1qac188mrlbkil-zlib-1.2.11-dev"),("doCheck","1"),("doInstallCheck",""),("dontStrip",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("installFlags",""),("makeFlags","PREFIX= SHARED_MODE=1"),("name","zlib-1.2.11"),("nativeBuildInputs",""),("out","/nix/store/s8c0vw596rhclj30l023xl171vvgxs0c-zlib-1.2.11"),("outputDoc","dev"),("outputs","out dev static"),("patches",""),("postInstall","moveToOutput lib/libz.a \"$static\"\n"),("postPatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("src","/nix/store/rrzja19jbqxbfryp2zchb2ma5h041rxh-zlib-1.2.11.tar.gz"),("static","/nix/store/fm92slaf8gg295p1zfcfwwpd1lwl4drd-zlib-1.2.11-static"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.2.11")]))NIXE;/nix/store/dym9wqiy1ysdjs876hil8ycbg36pa176-zlib-1.2.11.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvB/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv nix-archive-1(typeregularcontentsRFrom 597e73f2a4b2f0b508127931b36d5540d6941823 Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
Date: Mon, 28 Aug 2017 09:24:06 +0200
Subject: [PATCH] Don't use ldconfig
---
Lib/ctypes/util.py | 70 ++----------------------------------------------------
1 file changed, 2 insertions(+), 68 deletions(-)
diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
index 5e8b31a854..7b45ce6c15 100644
--- a/Lib/ctypes/util.py
+++ b/Lib/ctypes/util.py
@@ -94,46 +94,7 @@ elif os.name == "posix":
import re, tempfile
def _findLib_gcc(name):
- # Run GCC's linker with the -t (aka --trace) option and examine the
- # library name it prints out. The GCC command will fail because we
- # haven't supplied a proper program with main(), but that does not
- # matter.
- expr = os.fsencode(r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name))
-
- c_compiler = shutil.which('gcc')
- if not c_compiler:
- c_compiler = shutil.which('cc')
- if not c_compiler:
- # No C compiler available, give up
- return None
-
- temp = tempfile.NamedTemporaryFile()
- try:
- args = [c_compiler, '-Wl,-t', '-o', temp.name, '-l' + name]
-
- env = dict(os.environ)
- env['LC_ALL'] = 'C'
- env['LANG'] = 'C'
- try:
- proc = subprocess.Popen(args,
- stdout=subprocess.PIPE,
- stderr=subprocess.STDOUT,
- env=env)
- except OSError: # E.g. bad executable
- return None
- with proc:
- trace = proc.stdout.read()
- finally:
- try:
- temp.close()
- except FileNotFoundError:
- # Raised if the file was already removed, which is the normal
- # behaviour of GCC if linking fails
- pass
- res = re.search(expr, trace)
- if not res:
- return None
- return os.fsdecode(res.group(0))
+ return None
if sys.platform == "sunos5":
@@ -255,34 +216,7 @@ elif os.name == "posix":
else:
def _findSoname_ldconfig(name):
- import struct
- if struct.calcsize('l') == 4:
- machine = os.uname().machine + '-32'
- else:
- machine = os.uname().machine + '-64'
- mach_map = {
- 'x86_64-64': 'libc6,x86-64',
- 'ppc64-64': 'libc6,64bit',
- 'sparc64-64': 'libc6,64bit',
- 's390x-64': 'libc6,64bit',
- 'ia64-64': 'libc6,IA-64',
- }
- abi_type = mach_map.get(machine, 'libc6')
-
- # XXX assuming GLIBC's ldconfig (with option -p)
- regex = r'\s+(lib%s\.[^\s]+)\s+\(%s'
- regex = os.fsencode(regex % (re.escape(name), abi_type))
- try:
- with subprocess.Popen(['/sbin/ldconfig', '-p'],
- stdin=subprocess.DEVNULL,
- stderr=subprocess.DEVNULL,
- stdout=subprocess.PIPE,
- env={'LC_ALL': 'C', 'LANG': 'C'}) as p:
- res = re.search(regex, p.stdout.read())
- if res:
- return os.fsdecode(res.group(1))
- except OSError:
- pass
+ return None
def _findLib_ld(name):
# See issue #9998 for why this is needed
--
2.15.0
)NIXE=/nix/store/gd8ycd6j3qhcq1qccaqz68zdq5l4c2wf-no-ldconfig.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/gffadngj1b38vrs3cw1davbndlfccj8r-bash44-013","sha256","1b25efacbc1c4683b886d065b7a089a3601964555bcbf11f3a58989d38e853b6")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-013"),("out","/nix/store/gffadngj1b38vrs3cw1davbndlfccj8r-bash44-013"),("outputHash","1djkx0w9v62q78gz3jsvamj1jq53i6hbfrfhhsw86ihwpjnfy98v"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-013"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-013")]))NIXE:/nix/store/58y89v7rl254dc2cygcfd5wzhv0kjm4m-bash44-013.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/h2lap34xv5znjb5wcgqcj813939gwd2h-bash44-018","sha256","5bc494b42f719a8b0d844b7bd9ad50ebaae560e97f67c833c9e7e9d53981a8cc")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-018"),("out","/nix/store/h2lap34xv5znjb5wcgqcj813939gwd2h-bash44-018"),("outputHash","1k58h4wxbsg7r4rwhrvzx5hfbapba2nxjysbhh6qp6ki5ys99i2v"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-018"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-018")]))NIXE:/nix/store/bkhp2l6yxbziq265a77v60v0s68494ba-bash44-018.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/9mhyazyw3rv5lmibkyb1x61lsw29fqch-bash44-019","sha256","27170d6edfe8819835407fdc08b401d2e161b1400fe9d0c5317a51104c89c11e")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-019"),("out","/nix/store/9mhyazyw3rv5lmibkyb1x61lsw29fqch-bash44-019"),("outputHash","07n1i5610lbs672x1s8g82qn3qfj06s0ip3z80sri0g8vxp0s5r7"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-019"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-019")]))NIXE:/nix/store/bwpr6g17bq0j17r5d4isxahhxn52cnnr-bash44-019.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/v4zzrwb6m2wl3lpy8ycf82i49dgm947l-bash44-001","sha256","3e28d91531752df9a8cb167ad07cc542abaf944de9353fe8c6a535c9f1f17f0f")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-001"),("out","/nix/store/v4zzrwb6m2wl3lpy8ycf82i49dgm947l-bash44-001"),("outputHash","03vzy7qwjdd5qvl3ydg99naazas2qmyd0yhnrflgjbbm64axja1y"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-001"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-001")]))NIXE:/nix/store/c8svmxmwjkzvwszy8ga7x2fwx0qbmm10-bash44-001.drv nix-archive-1(typeregularcontents%diff -u ./configure ../bash-4.4-fixed/configure
--- ./configure 2016-09-07 22:57:01.000000000 +0200
+++ ../bash-4.4-fixed/configure 2020-01-08 14:10:26.316858174 +0100
@@ -16064,10 +16064,7 @@
solaris2*) LOCAL_CFLAGS=-DSOLARIS ;;
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
- case "`uname -r`" in
- 2.[456789]*|[34]*) $as_echo "#define PGRP_PIPE 1" >>confdefs.h
- ;;
- esac ;;
+ $as_echo "#define PGRP_PIPE 1" >>confdefs.h ;;
*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
powerux*) LOCAL_LIBS="-lgen" ;;
diff -u ./configure.ac ../bash-4.4-fixed/configure.ac
--- ./configure.ac 2016-09-07 22:56:28.000000000 +0200
+++ ../bash-4.4-fixed/configure.ac 2016-09-07 22:56:28.000000000 +0200
@@ -1092,9 +1092,7 @@
solaris2*) LOCAL_CFLAGS=-DSOLARIS ;;
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
- case "`uname -r`" in
- 2.[[456789]]*|[[34]]*) AC_DEFINE(PGRP_PIPE) ;;
- esac ;;
+ AC_DEFINE(PGRP_PIPE) ;;
*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
powerux*) LOCAL_LIBS="-lgen" ;;
)NIXE?/nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/n781p1a8193xl6vf7y8z6s0rgi8gmg9h-bash44-004","sha256","ad080a30a4ac6c1273373617f29628cc320a35c8cd06913894794293dc52c8b3")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-004"),("out","/nix/store/n781p1a8193xl6vf7y8z6s0rgi8gmg9h-bash44-004"),("outputHash","1cy8abf96hkrjhw921ndr0shlcnc52bg45rn6xri4v5clhq0l25d"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-004"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-004")]))NIXE:/nix/store/djmmx28jvbngp9wa15z4xasllaaqd1z0-bash44-004.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/7danzrkb22gignb90jhhl508k0x74fid-bash44-002","sha256","7020a0183e17a7233e665b979c78c184ea369cfaf3e8b4b11f5547ecb7c13c53")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-002"),("out","/nix/store/7danzrkb22gignb90jhhl508k0x74fid-bash44-002"),("outputHash","0lrwq6vyqism3yqv9s7kzaf3dsl4q5w9r5svcqz279qp7qca083h"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-002"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-002")]))NIXE:/nix/store/f30binazxhx8g0xkiav6lglp29h4a164-bash44-002.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/kqykzisj9ll5dva7lr6hhjf0v1l5svar-bash44-007","sha256","de1ccc07b7bfc9e25243ad854f3bbb5d3ebf9155b0477df16aaf00a7b0d5edaf")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-007"),("out","/nix/store/kqykzisj9ll5dva7lr6hhjf0v1l5svar-bash44-007"),("outputHash","1bzdsnqaf05gdbqpsixhan8vygjxpcxlz1dd8d9f5jdznw3wq76y"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-007"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-007")]))NIXE:/nix/store/fgg03wqpa11paihmbxc3dfqxhqgf10bi-bash44-007.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/zskj1jz5s2iix97iz5kxjyh3kqd8v28m-bash44-006","sha256","6a8e2e2a6180d0f1ce39dcd651622fb6d2fd05db7c459f64ae42d667f1e344b8")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-006"),("out","/nix/store/zskj1jz5s2iix97iz5kxjyh3kqd8v28m-bash44-006"),("outputHash","1f24wgqngmj2mrj9yibwvc2zvlmn5xi53mnw777g3l40c4m2x3ka"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-006"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-006")]))NIXE:/nix/store/ghyy9947nssi1vn8m6h0giik5sxgbvww-bash44-006.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/lr5586viy3k10cphp6ka39r7qr8cirgg-bash44-017","sha256","773f90b98768d4662a22470ea8eec5fdd8e3439f370f94638872aaf884bcd270")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-017"),("out","/nix/store/lr5586viy3k10cphp6ka39r7qr8cirgg-bash44-017"),("outputHash","0w6jpj2giakji1ir83rpkx1y7n7xqppah3j748m6dm38hywr0gvp"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-017"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-017")]))NIXE:/nix/store/gk0dvdga6634xw6sy9ajyb381qaczdrd-bash44-017.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/5086pd6ljw546sahagxzjg53d5hdrq09-bash44-009","sha256","0b6bdd1a18a0d20e330cc3bc71e048864e4a13652e29dc0ebf3918bea729343c")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-009"),("out","/nix/store/5086pd6ljw546sahagxzjg53d5hdrq09-bash44-009"),("outputHash","0g1l56kvw61rpw7dqa9fcl9llkl693h73g631hrhxlm030ddssqb"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-009"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-009")]))NIXE:/nix/store/ip70l59j1w6lfmi0fx02lmzjr2rahlgv-bash44-009.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/r08yflna5b3x8f0fa8n2nkpw51slm411-bash44-005","sha256","221e4b725b770ad0bb6924df3f8d04f89eeca4558f6e4c777dfa93e967090529")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-005"),("out","/nix/store/r08yflna5b3x8f0fa8n2nkpw51slm411-bash44-005"),("outputHash","0a8515kyk4zsgmvlqvlganjfr7pq0j6kzpr4d6xx02kpbdr4n7i2"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-005"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-005")]))NIXE:/nix/store/kpr5qx791p55y7kgbypw230nqp673fya-bash44-005.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/202rpp7v7f21bx2kq06dpc6gaic2gvjh-bash44-011","sha256","dd56426ef7d7295e1107c0b3d06c192eb9298f4023c202ca2ba6266c613d170d")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-011"),("out","/nix/store/202rpp7v7f21bx2kq06dpc6gaic2gvjh-bash44-011"),("outputHash","038p7mhnq9m65g505hi3827jkf9f35nd1cy00w8mwafpyxp44mnx"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-011"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-011")]))NIXE:/nix/store/l42vs1awqpx8pf681fql357s3pa8qqk3-bash44-011.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/ih1alzqkqpinbw745lrm48f7jfk5ab3b-bash44-008","sha256","86144700465933636d7b945e89b77df95d3620034725be161ca0ca5a42e239ba")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-008"),("out","/nix/store/ih1alzqkqpinbw745lrm48f7jfk5ab3b-bash44-008"),("outputHash","1firw915mjm03hbbw9a70ch3cpgrgnvqjpllgdnn6csr8q04f546"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-008"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-008")]))NIXE:/nix/store/lx3frlxywbvvr9823sxqp07jlfniib9p-bash44-008.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/x9cyj78gzd1wjf0xsiad1pa3ricbj566-bash44-023","sha256","4fec236f3fbd3d0c47b893fdfa9122142a474f6ef66c20ffb6c0f4864dd591b6")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-023"),("out","/nix/store/x9cyj78gzd1wjf0xsiad1pa3ricbj566-bash44-023"),("outputHash","1dlism6qdx60nvzj0v7ndr7lfahl4a8zmzckp13hqgdx7xpj7v2g"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-023"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-023")]))NIXE:/nix/store/m5j1yp47lw1psd9n6bzina1167abbprr-bash44-023.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/rv68r40mwx7xa7vrlmanczkkjcnkc452-bash-4.4.tar.gz","sha256","d86b3392c1202e8ff5a423b302e6284db7f8f435ea9f39b5b1b20fd3ac36dfcb")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash-4.4.tar.gz"),("out","/nix/store/rv68r40mwx7xa7vrlmanczkkjcnkc452-bash-4.4.tar.gz"),("outputHash","1jyz6snd63xjn6skk7za6psgidsd53k05cr3lksqybi0q6936syq"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4.tar.gz"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4.tar.gz")]))NIXE?/nix/store/myfzvw3m2fzg7r3xkzr15c0flbc9mxiq-bash-4.4.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/lsxbyvlsqk38fka1p2f9vlfnmxvhs8vi-bash44-016","sha256","501f91cc89fadced16c73aa8858796651473602c722bb29f86a8ba588d0ff1b1")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-016"),("out","/nix/store/lsxbyvlsqk38fka1p2f9vlfnmxvhs8vi-bash44-016"),("outputHash","1cgi1y6mifm8hsgv4avj5ih76535js3qba1sqwbfvp7si76927sh"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-016"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-016")]))NIXE:/nix/store/n1qz6fhb4fkz0i5f9sl6f1vqyrlnaiqv-bash44-016.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/nqvgwsxabymj6k9cap1n4lnsbnpz9dx9-bash44-015","sha256","d37602ecbeb62d5a22c8167ea1e621fcdbaaa79925890a973a45c810dd01c326")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-015"),("out","/nix/store/nqvgwsxabymj6k9cap1n4lnsbnpz9dx9-bash44-015"),("outputHash","09n307fi1j257abhm295k6ksmnzw47ka2zhnr0i5lbdnpvn04xnk"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-015"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-015")]))NIXE:/nix/store/n3g29b5ha33ssq0v79gsf4vd198vj5r3-bash44-015.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/li9vlg439jbbfz3anb7nx0a8dp2adsgc-bash44-012","sha256","fac271d2bf6372c9903e3b353cb9eda044d7fe36b5aab52f21f3f21cd6a2063e")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-012"),("out","/nix/store/li9vlg439jbbfz3anb7nx0a8dp2adsgc-bash44-012"),("outputHash","0gh6lbb1rwpk44pvbamm6vzdfi50xnwkqd9v7s8cjwk3pz973hps"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-012"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-012")]))NIXE:/nix/store/pxjkwfqmn0hmzjqgbsh5j31wrqflhxbf-bash44-012.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/hhxq0jb8dbkw68z5dvarwgdrliamr76c-bash44-003","sha256","51df5a9192fdefe0ddca4bdf290932f74be03ffd0503a3d112e4199905e718b2")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-003"),("out","/nix/store/hhxq0jb8dbkw68z5dvarwgdrliamr76c-bash44-003"),("outputHash","1chqww2rj6g42b8s60q5zlzy0jzp684jkpsbrbfy1vzxja8mmpsi"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-003"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-003")]))NIXE:/nix/store/q8hxz4f402ps0vwhj3sgfyp6x0ss35sv-bash44-003.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/9x7zwqc14g6knm77r6s23z2jk0plwp4c-bash44-010","sha256","8465c6f2c56afe559402265b39d9e94368954930f9aa7f3dfa6d36dd66868e06")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-010"),("out","/nix/store/9x7zwqc14g6knm77r6s23z2jk0plwp4c-bash44-010"),("outputHash","01lfhrkdsdkdz8ypzapr614ras23x7ckjnr60aa5bzkaqprccrc4"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-010"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-010")]))NIXE:/nix/store/r4lwjq1nvwpaqabaaj5bv001xxfj4ziq-bash44-010.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/wmq4fmib2r79gxmhis01cghcd7phrcgw-bash44-020","sha256","1840e2cbf26ba822913662f74037594ed562361485390c52813b38156c99522c")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-020"),("out","/nix/store/wmq4fmib2r79gxmhis01cghcd7phrcgw-bash44-020"),("outputHash","0b2jk5n1af1vh590qfc52hv65mafb4vl1xv26s8j5a3byb5y4h0q"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-020"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-020")]))NIXE:/nix/store/xadh3b1m14451ky8c8a297063nzrf1zn-bash44-020.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/nca55pyd81bylc46s0h5mjvb6dk8azwa-bash44-014","sha256","a7f75cedb43c5845ab1c60afade22dcb5e5dc12dd98c0f5a3abcfb9f309bb17c")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-014"),("out","/nix/store/nca55pyd81bylc46s0h5mjvb6dk8azwa-bash44-014"),("outputHash","0z5ikcq9zyxw79d0z36r5p0mspnb5piavbv03jmlan1wnknmrxx7"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-014"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-014")]))NIXE:/nix/store/xs5c12bzf9vrrniscd53p2j9vkmvww2p-bash44-014.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/d5iz3skv66k7vx15pnbjq8xgyfk7hy6w-bash44-022","sha256","45331f0936e36ab91bfe44b936e33ed8a1b1848fa896e8a1d0f2ef74f297cb79")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-022"),("out","/nix/store/d5iz3skv66k7vx15pnbjq8xgyfk7hy6w-bash44-022"),("outputHash","0yfbjzr79vzjs2hyi5m8iy2b38fq7vikdfa4zqdvjsp36q4iycs5"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-022"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-022")]))NIXE:/nix/store/z4ym1w4ssi236w2i6nsf7ba0s5ji9hd9-bash44-022.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/2fr3wiy7q2i4gan2f8w27c9hrsr9x13c-bash44-021","sha256","bd8f59054a763ec1c64179ad5cb607f558708a317c2bdb22b814e3da456374c1")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","bash44-021"),("out","/nix/store/2fr3wiy7q2i4gan2f8w27c9hrsr9x13c-bash44-021"),("outputHash","1hblcd2xmqqlp0idnavw66570n7m0yv5rbbr873c2gkn982mk3xx"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-021"),("urls","https://ftpmirror.gnu.org/bash/bash-4.4-patches/bash44-021")]))NIXE:/nix/store/zr7jikfinzgh6k2b10zp9jmfg4gv7za0-bash44-021.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/sjq4cj3i5nh07hiwr7hxgdy3dpcjz7vy-bash-4.4-p23-dev","",""),("doc","/nix/store/dzrbi9aspghi18nps6q49ld0mmczqi0a-bash-4.4-p23-doc","",""),("info","/nix/store/yy2jbdkfy1wrabif702xlh1py7mwdcvi-bash-4.4-p23-info","",""),("man","/nix/store/w1zklb2m130g9ckcgasdbdz4xk845n1d-bash-4.4-p23-man","",""),("out","/nix/store/frby5v3xn7nz17z3ygvkcyxv9xyhwzcl-bash-4.4-p23","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/58y89v7rl254dc2cygcfd5wzhv0kjm4m-bash44-013.drv",["out"]),("/nix/store/bkhp2l6yxbziq265a77v60v0s68494ba-bash44-018.drv",["out"]),("/nix/store/bwpr6g17bq0j17r5d4isxahhxn52cnnr-bash44-019.drv",["out"]),("/nix/store/c8svmxmwjkzvwszy8ga7x2fwx0qbmm10-bash44-001.drv",["out"]),("/nix/store/djmmx28jvbngp9wa15z4xasllaaqd1z0-bash44-004.drv",["out"]),("/nix/store/f30binazxhx8g0xkiav6lglp29h4a164-bash44-002.drv",["out"]),("/nix/store/fgg03wqpa11paihmbxc3dfqxhqgf10bi-bash44-007.drv",["out"]),("/nix/store/ghyy9947nssi1vn8m6h0giik5sxgbvww-bash44-006.drv",["out"]),("/nix/store/gk0dvdga6634xw6sy9ajyb381qaczdrd-bash44-017.drv",["out"]),("/nix/store/ip70l59j1w6lfmi0fx02lmzjr2rahlgv-bash44-009.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/kpr5qx791p55y7kgbypw230nqp673fya-bash44-005.drv",["out"]),("/nix/store/l42vs1awqpx8pf681fql357s3pa8qqk3-bash44-011.drv",["out"]),("/nix/store/lx3frlxywbvvr9823sxqp07jlfniib9p-bash44-008.drv",["out"]),("/nix/store/m5j1yp47lw1psd9n6bzina1167abbprr-bash44-023.drv",["out"]),("/nix/store/myfzvw3m2fzg7r3xkzr15c0flbc9mxiq-bash-4.4.tar.gz.drv",["out"]),("/nix/store/n1qz6fhb4fkz0i5f9sl6f1vqyrlnaiqv-bash44-016.drv",["out"]),("/nix/store/n3g29b5ha33ssq0v79gsf4vd198vj5r3-bash44-015.drv",["out"]),("/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv",["out"]),("/nix/store/pxjkwfqmn0hmzjqgbsh5j31wrqflhxbf-bash44-012.drv",["out"]),("/nix/store/q8hxz4f402ps0vwhj3sgfyp6x0ss35sv-bash44-003.drv",["out"]),("/nix/store/r4lwjq1nvwpaqabaaj5bv001xxfj4ziq-bash44-010.drv",["out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"]),("/nix/store/xadh3b1m14451ky8c8a297063nzrf1zn-bash44-020.drv",["out"]),("/nix/store/xs5c12bzf9vrrniscd53p2j9vkmvww2p-bash44-014.drv",["out"]),("/nix/store/z4ym1w4ssi236w2i6nsf7ba0s5ji9hd9-bash44-022.drv",["out"]),("/nix/store/zr7jikfinzgh6k2b10zp9jmfg4gv7za0-bash44-021.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-DSYS_BASHRC=\"/etc/bashrc\"\n-DSYS_BASH_LOGOUT=\"/etc/bash_logout\"\n-DDEFAULT_PATH_VALUE=\"/no-such-path\"\n-DSTANDARD_UTILS_PATH=\"/no-such-path\"\n-DNON_INTERACTIVE_LOGIN_SHELLS\n-DSSH_SOURCE_BASHRC\n"),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--disable-readline"),("depsBuildBuild","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/sjq4cj3i5nh07hiwr7hxgdy3dpcjz7vy-bash-4.4-p23-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/dzrbi9aspghi18nps6q49ld0mmczqi0a-bash-4.4-p23-doc"),("enableParallelBuilding",""),("hardeningDisable","format"),("info","/nix/store/yy2jbdkfy1wrabif702xlh1py7mwdcvi-bash-4.4-p23-info"),("makeFlags",""),("man","/nix/store/w1zklb2m130g9ckcgasdbdz4xk845n1d-bash-4.4-p23-man"),("name","bash-4.4-p23"),("nativeBuildInputs","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3"),("out","/nix/store/frby5v3xn7nz17z3ygvkcyxv9xyhwzcl-bash-4.4-p23"),("outputs","out dev man doc info"),("patchFlags","-p0 -T"),("patches","/nix/store/v4zzrwb6m2wl3lpy8ycf82i49dgm947l-bash44-001 /nix/store/7danzrkb22gignb90jhhl508k0x74fid-bash44-002 /nix/store/hhxq0jb8dbkw68z5dvarwgdrliamr76c-bash44-003 /nix/store/n781p1a8193xl6vf7y8z6s0rgi8gmg9h-bash44-004 /nix/store/r08yflna5b3x8f0fa8n2nkpw51slm411-bash44-005 /nix/store/zskj1jz5s2iix97iz5kxjyh3kqd8v28m-bash44-006 /nix/store/kqykzisj9ll5dva7lr6hhjf0v1l5svar-bash44-007 /nix/store/ih1alzqkqpinbw745lrm48f7jfk5ab3b-bash44-008 /nix/store/5086pd6ljw546sahagxzjg53d5hdrq09-bash44-009 /nix/store/9x7zwqc14g6knm77r6s23z2jk0plwp4c-bash44-010 /nix/store/202rpp7v7f21bx2kq06dpc6gaic2gvjh-bash44-011 /nix/store/li9vlg439jbbfz3anb7nx0a8dp2adsgc-bash44-012 /nix/store/gffadngj1b38vrs3cw1davbndlfccj8r-bash44-013 /nix/store/nca55pyd81bylc46s0h5mjvb6dk8azwa-bash44-014 /nix/store/nqvgwsxabymj6k9cap1n4lnsbnpz9dx9-bash44-015 /nix/store/lsxbyvlsqk38fka1p2f9vlfnmxvhs8vi-bash44-016 /nix/store/lr5586viy3k10cphp6ka39r7qr8cirgg-bash44-017 /nix/store/h2lap34xv5znjb5wcgqcj813939gwd2h-bash44-018 /nix/store/9mhyazyw3rv5lmibkyb1x61lsw29fqch-bash44-019 /nix/store/wmq4fmib2r79gxmhis01cghcd7phrcgw-bash44-020 /nix/store/2fr3wiy7q2i4gan2f8w27c9hrsr9x13c-bash44-021 /nix/store/d5iz3skv66k7vx15pnbjq8xgyfk7hy6w-bash44-022 /nix/store/x9cyj78gzd1wjf0xsiad1pa3ricbj566-bash44-023 /nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch"),("postFixup","rm -rf \"$out/share\" \"$out/bin/bashbug\"\n"),("postInstall","ln -s bash \"$out/bin/sh\"\nrm -f $out/lib/bash/Makefile.inc\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/rv68r40mwx7xa7vrlmanczkkjcnkc452-bash-4.4.tar.gz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.4")]))NIXE</nix/store/j3g71cizqxj7sbrlnxii6v4jgvldj3bd-bash-4.4-p23.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/58y89v7rl254dc2cygcfd5wzhv0kjm4m-bash44-013.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh:/nix/store/bkhp2l6yxbziq265a77v60v0s68494ba-bash44-018.drv:/nix/store/bwpr6g17bq0j17r5d4isxahhxn52cnnr-bash44-019.drv:/nix/store/c8svmxmwjkzvwszy8ga7x2fwx0qbmm10-bash44-001.drv?/nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch:/nix/store/djmmx28jvbngp9wa15z4xasllaaqd1z0-bash44-004.drv:/nix/store/f30binazxhx8g0xkiav6lglp29h4a164-bash44-002.drv:/nix/store/fgg03wqpa11paihmbxc3dfqxhqgf10bi-bash44-007.drv:/nix/store/ghyy9947nssi1vn8m6h0giik5sxgbvww-bash44-006.drv:/nix/store/gk0dvdga6634xw6sy9ajyb381qaczdrd-bash44-017.drv:/nix/store/ip70l59j1w6lfmi0fx02lmzjr2rahlgv-bash44-009.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv:/nix/store/kpr5qx791p55y7kgbypw230nqp673fya-bash44-005.drv:/nix/store/l42vs1awqpx8pf681fql357s3pa8qqk3-bash44-011.drv:/nix/store/lx3frlxywbvvr9823sxqp07jlfniib9p-bash44-008.drv:/nix/store/m5j1yp47lw1psd9n6bzina1167abbprr-bash44-023.drv?/nix/store/myfzvw3m2fzg7r3xkzr15c0flbc9mxiq-bash-4.4.tar.gz.drv:/nix/store/n1qz6fhb4fkz0i5f9sl6f1vqyrlnaiqv-bash44-016.drv:/nix/store/n3g29b5ha33ssq0v79gsf4vd198vj5r3-bash44-015.drv;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv:/nix/store/pxjkwfqmn0hmzjqgbsh5j31wrqflhxbf-bash44-012.drv:/nix/store/q8hxz4f402ps0vwhj3sgfyp6x0ss35sv-bash44-003.drv:/nix/store/r4lwjq1nvwpaqabaaj5bv001xxfj4ziq-bash44-010.drvM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv:/nix/store/xadh3b1m14451ky8c8a297063nzrf1zn-bash44-020.drv:/nix/store/xs5c12bzf9vrrniscd53p2j9vkmvww2p-bash44-014.drv:/nix/store/z4ym1w4ssi236w2i6nsf7ba0s5ji9hd9-bash44-022.drv:/nix/store/zr7jikfinzgh6k2b10zp9jmfg4gv7za0-bash44-021.drv nix-archive-1(typeregularcontentsDerive([("out","/nix/store/b8z13b0fbg3gmdd2bnbanv1nmp16an9x-expat-2.2.10.tar.xz","sha256","5dfe538f8b5b63f03e98edac520d7d9a6a4d22e482e5c96d4d06fcc5485c25f2")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","expat-2.2.10.tar.xz"),("out","/nix/store/b8z13b0fbg3gmdd2bnbanv1nmp16an9x-expat-2.2.10.tar.xz"),("outputHash","sha256-Xf5Tj4tbY/A+mO2sUg19mmpNIuSC5cltTQb8xUhcJfI="),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://github.com/libexpat/libexpat/releases/download/R_2_2_10/expat-2.2.10.tar.xz"),("urls","https://github.com/libexpat/libexpat/releases/download/R_2_2_10/expat-2.2.10.tar.xz")]))NIXEC/nix/store/pky1gmrqjv5x8rm0lizqdpf6vb780igi-expat-2.2.10.tar.xz.drv nix-archive-1(typeregularcontents[Derive([("dev","/nix/store/kgc46gba3kfnhggvz6886qiyk3d8x4iw-expat-2.2.10-dev","",""),("out","/nix/store/kmd2qjwrg0qh9djyadx1kbdd2pcqi5zr-expat-2.2.10","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/pky1gmrqjv5x8rm0lizqdpf6vb780igi-expat-2.2.10.tar.xz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/kgc46gba3kfnhggvz6886qiyk3d8x4iw-expat-2.2.10-dev"),("doCheck","1"),("doInstallCheck",""),("name","expat-2.2.10"),("nativeBuildInputs",""),("out","/nix/store/kmd2qjwrg0qh9djyadx1kbdd2pcqi5zr-expat-2.2.10"),("outputBin","dev"),("outputMan","dev"),("outputs","out dev"),("patches",""),("preCheck","patchShebangs ./run.sh\npatchShebangs ./test-driver-wrapper.sh\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/b8z13b0fbg3gmdd2bnbanv1nmp16an9x-expat-2.2.10.tar.xz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE</nix/store/j8a3klmkfp1s8fa7y648vyd5w6n6kzj8-expat-2.2.10.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvC/nix/store/pky1gmrqjv5x8rm0lizqdpf6vb780igi-expat-2.2.10.tar.xz.drv nix-archive-1(typeregularcontentsEaddPythonPath() {
addToSearchPathWithCustomDelimiter : PYTHONPATH $1/@sitePackages@
}
toPythonPath() {
local paths="$1"
local result=
for i in $paths; do
p="$i/@sitePackages@"
result="${result}${result:+:}$p"
done
echo $result
}
if [ -z "${dontAddPythonPath:-}" ]; then
addEnvHooks "$hostOffset" addPythonPath
fi
# Determinism: The interpreter is patched to write null timestamps when compiling python files.
# This way python doesn't try to update them when we freeze timestamps in nix store.
export DETERMINISTIC_BUILD=1;
# Determinism: We fix the hashes of str, bytes and datetime objects.
export PYTHONHASHSEED=0;
# Determinism. Whenever Python is included, it should not check user site-packages.
# This option is only relevant when the sandbox is disabled.
export PYTHONNOUSERSITE=1;
)NIXE9/nix/store/zi0m9pfmvy5lw89x7a8x674rm99i8qiq-setup-hook.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/xqs78m863bz9s9k9vznm5ycy71sz8j9d-python-setup-hook.sh","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/zi0m9pfmvy5lw89x7a8x674rm99i8qiq-setup-hook.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildCommand","cp /nix/store/zi0m9pfmvy5lw89x7a8x674rm99i8qiq-setup-hook.sh hook.sh\nsubstituteAllInPlace hook.sh\nmv hook.sh $out\n"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","python-setup-hook.sh"),("nativeBuildInputs",""),("out","/nix/store/xqs78m863bz9s9k9vznm5ycy71sz8j9d-python-setup-hook.sh"),("outputs","out"),("passAsFile","buildCommand"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("sitePackages","lib/python3.8/site-packages"),("stdenv","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXED/nix/store/p8nzmh6d8ram3h3br0h7sk4c1xzcs04i-python-setup-hook.sh.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv9/nix/store/zi0m9pfmvy5lw89x7a8x674rm99i8qiq-setup-hook.sh nix-archive-1(typeregularcontentsmDerive([("out","/nix/store/vpm5nzr3aqqgxxs1v5ck4ji89f970yv3-python3-minimal-3.8.6","","")],[("/nix/store/0hfyfy1wxlri4gdcmikg7v0ybvpkl3yl-Python-3.8.6.tar.xz.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8baw3nx9mx0lpvyib7qj0xl1zscykiji-bzip2-1.0.6.0.1.drv",["dev","out"]),("/nix/store/9w35ffzrlxv8a61f1apmkrgv00x1kiiy-libffi-3.3.drv",["dev","out"]),("/nix/store/dym9wqiy1ysdjs876hil8ycbg36pa176-zlib-1.2.11.drv",["dev","out"]),("/nix/store/h41kzqplwwhf60y66l97br6fn3fpx61h-hook.drv",["out"]),("/nix/store/j3g71cizqxj7sbrlnxii6v4jgvldj3bd-bash-4.4-p23.drv",["out"]),("/nix/store/j8a3klmkfp1s8fa7y648vyd5w6n6kzj8-expat-2.2.10.drv",["dev","out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/p8nzmh6d8ram3h3br0h7sk4c1xzcs04i-python-setup-hook.sh.drv",["out"]),("/nix/store/sccl29dq52iakbgpm6c2smm20vk6razr-xz-5.2.5.drv",["dev","out"]),("/nix/store/sqyz0sycphpjim6p25qw42llz80sc741-nuke-references.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/cv1ynpzvjjr0s72jkbblbzz3ymr87lpi-0001-On-all-posix-systems-not-just-Darwin-set-LDSHARED-if.patch","/nix/store/dkb2rjyj7lwmvsn4zzwx85kx8r61nk9w-darwin-libutil.patch","/nix/store/gd8ycd6j3qhcq1qccaqz68zdq5l4c2wf-no-ldconfig.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("CPPFLAGS","-I/nix/store/nnmpacnwyq6sfipcjb1qac188mrlbkil-zlib-1.2.11-dev/include -I/nix/store/d05vk5c1s9yv5jwffwjb7lqx35zg4z43-bzip2-1.0.6.0.1-dev/include -I/nix/store/kgc46gba3kfnhggvz6886qiyk3d8x4iw-expat-2.2.10-dev/include -I/nix/store/061mcbx30h5gfm2jy7rmsck7fijnsr8s-xz-5.2.5-dev/include -I/nix/store/wbsn77b9pvsxq39j26rg00sjf9w7c9lm-libffi-3.3-dev/include"),("LDFLAGS","-L/nix/store/s8c0vw596rhclj30l023xl171vvgxs0c-zlib-1.2.11/lib -L/nix/store/rzz54fgdgy3v49zddcpy01v2hjfzdvhj-bzip2-1.0.6.0.1/lib -L/nix/store/kmd2qjwrg0qh9djyadx1kbdd2pcqi5zr-expat-2.2.10/lib -L/nix/store/y7smmcgy3mh7li2xch5x3la3himi5p4w-xz-5.2.5/lib -L/nix/store/mmz9xz2q1miq7v7f56d5c757c1vsz19n-libffi-3.3/lib"),("LIBS","-lcrypt "),("NIX_LDFLAGS","-lgcc_s"),("PYTHONHASHSEED","0"),("buildInputs","/nix/store/nnmpacnwyq6sfipcjb1qac188mrlbkil-zlib-1.2.11-dev /nix/store/d05vk5c1s9yv5jwffwjb7lqx35zg4z43-bzip2-1.0.6.0.1-dev /nix/store/kgc46gba3kfnhggvz6886qiyk3d8x4iw-expat-2.2.10-dev /nix/store/061mcbx30h5gfm2jy7rmsck7fijnsr8s-xz-5.2.5-dev /nix/store/wbsn77b9pvsxq39j26rg00sjf9w7c9lm-libffi-3.3-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--enable-shared --without-ensurepip --with-system-expat --with-system-ffi ac_cv_func_lchmod=no"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("disallowedReferences",""),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("name","python3-minimal-3.8.6"),("nativeBuildInputs","/nix/store/l3k7fn94psqyfgm1mfpqzf5158xhbxkr-hook /nix/store/rvr805jchb7447dy340572m0ws2zpg08-nuke-references"),("out","/nix/store/vpm5nzr3aqqgxxs1v5ck4ji89f970yv3-python3-minimal-3.8.6"),("outputs","out"),("patches","/nix/store/gd8ycd6j3qhcq1qccaqz68zdq5l4c2wf-no-ldconfig.patch /nix/store/dkb2rjyj7lwmvsn4zzwx85kx8r61nk9w-darwin-libutil.patch /nix/store/cv1ynpzvjjr0s72jkbblbzz3ymr87lpi-0001-On-all-posix-systems-not-just-Darwin-set-LDSHARED-if.patch"),("pname","python3-minimal"),("postInstall","# needed for some packages, especially packages that backport functionality\n# to 2.x from 3.x\nfor item in $out/lib/python3.8/test/*; do\n if [[ \"$item\" != */test_support.py*\n && \"$item\" != */test/support\n && \"$item\" != */test/libregrtest\n && \"$item\" != */test/regrtest.py* ]]; then\n rm -rf \"$item\"\n else\n echo $item\n fi\ndone\ntouch $out/lib/python3.8/test/__init__.py\n\nln -s \"$out/include/python3.8m\" \"$out/include/python3.8\"\n\n# Determinism: Windows installers were not deterministic.\n# We're also not interested in building Windows installers.\nfind \"$out\" -name 'wininst*.exe' | xargs -r rm -f\n\n# Use Python3 as default python\nln -s \"$out/bin/idle3\" \"$out/bin/idle\"\nln -s \"$out/bin/pydoc3\" \"$out/bin/pydoc\"\nln -s \"$out/bin/python3\" \"$out/bin/python\"\nln -s \"$out/bin/python3-config\" \"$out/bin/python-config\"\nln -s \"$out/lib/pkgconfig/python3.pc\" \"$out/lib/pkgconfig/python.pc\"\n\n# Get rid of retained dependencies on -dev packages, and remove\n# some $TMPDIR references to improve binary reproducibility.\n# Note that the .pyc file of _sysconfigdata.py should be regenerated!\nfor i in $out/lib/python3.8/_sysconfigdata*.py $out/lib/python3.8/config-38*/Makefile; do\n sed -i $i -e \"s|$TMPDIR|/no-such-path|g\"\ndone\n\n# Further get rid of references. https://github.com/NixOS/nixpkgs/issues/51668\nfind $out/lib/python*/config-* -type f -print -exec nuke-refs -e $out '{}' +\nfind $out/lib -name '_sysconfigdata*.py*' -print -exec nuke-refs -e $out '{}' +\n\nrm -R $out/bin/python*-config $out/lib/python*/config-*\n# Strip IDLE (and turtledemo, which uses it)\nrm -R $out/bin/idle* $out/lib/python*/{idlelib,turtledemo}\nrm -R $out/lib/python*/tkinter\n# Strip tests\nrm -R $out/lib/python*/test $out/lib/python*/**/test{,s}\nfind $out -type d -name __pycache__ -print0 | xargs -0 -I {} rm -rf \"{}\"\n"),("postPatch","substituteInPlace Lib/subprocess.py \\\n --replace \"'/bin/sh'\" \"'/nix/store/frby5v3xn7nz17z3ygvkcyxv9xyhwzcl-bash-4.4-p23/bin/sh'\"\n"),("preConfigure","for i in /usr /sw /opt /pkg; do\t# improve purity\n substituteInPlace ./setup.py --replace $i /no-such-path\ndone\n"),("preFixup",""),("prePatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHook","/nix/store/xqs78m863bz9s9k9vznm5ycy71sz8j9d-python-setup-hook.sh"),("src","/nix/store/pfpaiyl1nx0g37lxrmw33krwjxh1dhds-Python-3.8.6.tar.xz"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","3.8.6")]))NIXEE/nix/store/kxx3xjyjbfkvppjx0dss9g2kqp0cha55-python3-minimal-3.8.6.drvC/nix/store/0hfyfy1wxlri4gdcmikg7v0ybvpkl3yl-Python-3.8.6.tar.xz.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/8baw3nx9mx0lpvyib7qj0xl1zscykiji-bzip2-1.0.6.0.1.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh:/nix/store/9w35ffzrlxv8a61f1apmkrgv00x1kiiy-libffi-3.3.drvk/nix/store/cv1ynpzvjjr0s72jkbblbzz3ymr87lpi-0001-On-all-posix-systems-not-just-Darwin-set-LDSHARED-if.patch@/nix/store/dkb2rjyj7lwmvsn4zzwx85kx8r61nk9w-darwin-libutil.patch;/nix/store/dym9wqiy1ysdjs876hil8ycbg36pa176-zlib-1.2.11.drv=/nix/store/gd8ycd6j3qhcq1qccaqz68zdq5l4c2wf-no-ldconfig.patch4/nix/store/h41kzqplwwhf60y66l97br6fn3fpx61h-hook.drv</nix/store/j3g71cizqxj7sbrlnxii6v4jgvldj3bd-bash-4.4-p23.drv</nix/store/j8a3klmkfp1s8fa7y648vyd5w6n6kzj8-expat-2.2.10.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvD/nix/store/p8nzmh6d8ram3h3br0h7sk4c1xzcs04i-python-setup-hook.sh.drv8/nix/store/sccl29dq52iakbgpm6c2smm20vk6razr-xz-5.2.5.drv?/nix/store/sqyz0sycphpjim6p25qw42llz80sc741-nuke-references.drv nix-archive-1(typeregularcontentsoDerive([("out","/nix/store/3l70d7kcfsh91w6792h4fqs4kjbq17py-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb","sha256","fa96766b69df8b262e9459682499540156f6beecd9e707d0602ff4ece7982b24")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb"),("out","/nix/store/3l70d7kcfsh91w6792h4fqs4kjbq17py-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb"),("outputHash","091bk3kyrx1gc380gryrxjzgcmh1ajcj8s2rjhp2d2yzd5mpd5ps"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/patches/glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb"),("urls","https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/patches/glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb")]))NIXE�/nix/store/l5zr5m1agvvnic49fg6qc44g5fgj3la1-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb.drv nix-archive-1(typeregularcontents]diff -ru glibc-2.20-orig/elf/rtld.c glibc-2.20/elf/rtld.c
--- glibc-2.20-orig/elf/rtld.c 2014-09-07 10:09:09.000000000 +0200
+++ glibc-2.20/elf/rtld.c 2014-10-27 11:32:25.203043157 +0100
@@ -1513,7 +1513,7 @@
open(). So we do this first. If it succeeds we do almost twice
the work but this does not matter, since it is not for production
use. */
- static const char preload_file[] = "/etc/ld.so.preload";
+ static const char preload_file[] = "/etc/ld-nix.so.preload";
if (__glibc_unlikely (__access (preload_file, R_OK) == 0))
{
/* Read the contents of the file. */
)NIXEO/nix/store/mnglr8rr7nl444h7p50ysyq8qd0fm1lm-dont-use-system-ld-so-preload.patch nix-archive-1(typeregularcontents[diff -Naur glibc-2.27-orig/locale/loadarchive.c glibc-2.27/locale/loadarchive.c
--- glibc-2.27-orig/locale/loadarchive.c 2018-02-01 11:17:18.000000000 -0500
+++ glibc-2.27/locale/loadarchive.c 2018-02-17 22:32:25.680169462 -0500
@@ -123,6 +123,23 @@
return MAX (namehash_end, MAX (string_end, locrectab_end));
}
+static int
+open_locale_archive (void)
+{
+ int fd = -1;
+ char *versioned_path = getenv ("LOCALE_ARCHIVE_2_27");
+ char *path = getenv ("LOCALE_ARCHIVE");
+ if (versioned_path)
+ fd = __open_nocancel (versioned_path, O_RDONLY|O_LARGEFILE|O_CLOEXEC);
+ if (path && fd < 0)
+ fd = __open_nocancel (path, O_RDONLY|O_LARGEFILE|O_CLOEXEC);
+ if (fd < 0)
+ fd = __open_nocancel (archfname, O_RDONLY|O_LARGEFILE|O_CLOEXEC);
+ if (fd < 0)
+ fd = __open_nocancel ("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC);
+ return fd;
+}
+
/* Find the locale *NAMEP in the locale archive, and return the
internalized data structure for its CATEGORY data. If this locale has
@@ -202,7 +219,7 @@
archmapped = &headmap;
/* The archive has never been opened. */
- fd = __open_nocancel (archfname, O_RDONLY|O_LARGEFILE|O_CLOEXEC);
+ fd = open_locale_archive ();
if (fd < 0)
/* Cannot open the archive, for whatever reason. */
return NULL;
@@ -397,8 +414,7 @@
if (fd == -1)
{
struct stat64 st;
- fd = __open_nocancel (archfname,
- O_RDONLY|O_LARGEFILE|O_CLOEXEC);
+ fd = open_locale_archive ();
if (fd == -1)
/* Cannot open the archive, for whatever reason. */
return NULL;
diff -Naur glibc-2.27-orig/locale/programs/locale.c glibc-2.27/locale/programs/locale.c
--- glibc-2.27-orig/locale/programs/locale.c 2018-02-01 11:17:18.000000000 -0500
+++ glibc-2.27/locale/programs/locale.c 2018-02-17 22:36:39.726293213 -0500
@@ -633,6 +633,24 @@
static int
+open_locale_archive (void)
+{
+ int fd = -1;
+ char *versioned_path = getenv ("LOCALE_ARCHIVE_2_27");
+ char *path = getenv ("LOCALE_ARCHIVE");
+ if (versioned_path)
+ fd = open64 (versioned_path, O_RDONLY);
+ if (path && fd < 0)
+ fd = open64 (path, O_RDONLY);
+ if (fd < 0)
+ fd = open64 (ARCHIVE_NAME, O_RDONLY);
+ if (fd < 0)
+ fd = open64 ("/usr/lib/locale/locale-archive", O_RDONLY);
+ return fd;
+}
+
+
+static int
write_archive_locales (void **all_datap, char *linebuf)
{
struct stat64 st;
@@ -644,7 +662,7 @@
int fd, ret = 0;
uint32_t cnt;
- fd = open64 (ARCHIVE_NAME, O_RDONLY);
+ fd = open_locale_archive ();
if (fd < 0)
return 0;
diff -Naur glibc-2.27-orig/locale/programs/locarchive.c glibc-2.27/locale/programs/locarchive.c
--- glibc-2.27-orig/locale/programs/locarchive.c 2018-02-01 11:17:18.000000000 -0500
+++ glibc-2.27/locale/programs/locarchive.c 2018-02-17 22:40:51.245293975 -0500
@@ -117,6 +117,22 @@
}
+static int
+open_locale_archive (const char * archivefname, int flags)
+{
+ int fd = -1;
+ char *versioned_path = getenv ("LOCALE_ARCHIVE_2_27");
+ char *path = getenv ("LOCALE_ARCHIVE");
+ if (versioned_path)
+ fd = open64 (versioned_path, flags);
+ if (path && fd < 0)
+ fd = open64 (path, flags);
+ if (fd < 0)
+ fd = open64 (archivefname, flags);
+ return fd;
+}
+
+
static void
create_archive (const char *archivefname, struct locarhandle *ah)
{
@@ -578,7 +594,7 @@
while (1)
{
/* Open the archive. We must have exclusive write access. */
- fd = open64 (archivefname, readonly ? O_RDONLY : O_RDWR);
+ fd = open_locale_archive (archivefname, readonly ? O_RDONLY : O_RDWR);
if (fd == -1)
{
/* Maybe the file does not yet exist? If we are opening
)NIXED/nix/store/pp29isd0nvy4jrm9q2f92pjlc83xwa0i-nix-locale-archive.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/yl0acs9vzng0cd4qfdcgb3zpwjm034nw-glibc-2.32.tar.xz","sha256","1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","glibc-2.32.tar.xz"),("out","/nix/store/yl0acs9vzng0cd4qfdcgb3zpwjm034nw-glibc-2.32.tar.xz"),("outputHash","0di848ibffrnwq7g2dvgqrnn4xqhj3h96csn69q4da51ymafl9qn"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/glibc/glibc-2.32.tar.xz"),("urls","https://ftpmirror.gnu.org/glibc/glibc-2.32.tar.xz")]))NIXEA/nix/store/vpz8r54w9rh6cr7c840yczh1bp7m9rij-glibc-2.32.tar.xz.drv nix-archive-1(typeregularcontents_diff --git a/sysdeps/unix/sysv/linux/configure b/sysdeps/unix/sysv/linux/configure
index cace758c01..38fe7fe0b0 100644
--- a/sysdeps/unix/sysv/linux/configure
+++ b/sysdeps/unix/sysv/linux/configure
@@ -69,7 +69,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for kernel header at least $minimum_kernel" >&5
$as_echo_n "checking for kernel header at least $minimum_kernel... " >&6; }
decnum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/(\1 * 65536 + \2 * 256 + \3)/'`;
-abinum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1,\2,\3/'`;
+abinum=`echo "2.6.32.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1,\2,\3/'`;
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <linux/version.h>
diff --git a/sysdeps/unix/sysv/linux/configure.ac b/sysdeps/unix/sysv/linux/configure.ac
index 13abda0a51..6abc12eaed 100644
--- a/sysdeps/unix/sysv/linux/configure.ac
+++ b/sysdeps/unix/sysv/linux/configure.ac
@@ -50,7 +50,7 @@ fi
AC_MSG_CHECKING(for kernel header at least $minimum_kernel)
changequote(,)dnl
decnum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/(\1 * 65536 + \2 * 256 + \3)/'`;
-abinum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1,\2,\3/'`;
+abinum=`echo "2.6.32.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1,\2,\3/'`;
changequote([,])dnl
AC_TRY_COMPILE([#include <linux/version.h>
#if LINUX_VERSION_CODE < $decnum
diff --git a/sysdeps/unix/sysv/linux/dl-osinfo.h b/sysdeps/unix/sysv/linux/dl-osinfo.h
index 823cd8224d..482caaeeec 100644
--- a/sysdeps/unix/sysv/linux/dl-osinfo.h
+++ b/sysdeps/unix/sysv/linux/dl-osinfo.h
@@ -39,7 +39,7 @@
GLRO(dl_osversion) = version; \
\
/* Now we can test with the required version. */ \
- if (__LINUX_KERNEL_VERSION > 0 && version < __LINUX_KERNEL_VERSION) \
+ if (__LINUX_KERNEL_VERSION > 0 && version < __LINUX_KERNEL_VERSION && version != 0x020620) \
/* Not sufficent. */ \
FATAL ("FATAL: kernel too old\n"); \
} \
)NIXEE/nix/store/xkd50xxii6k7l1kmw4l5x6xzbhamcs87-allow-kernel-2.6.32.patch nix-archive-1(typeregularcontentsUdiff -ubr glibc-2.17-orig/sysdeps/unix/confstr.h glibc-2.17/sysdeps/unix/confstr.h
--- glibc-2.17-orig/sysdeps/unix/confstr.h 2013-06-03 22:01:44.829726968 +0200
+++ glibc-2.17/sysdeps/unix/confstr.h 2013-06-03 22:04:39.469376740 +0200
@@ -1 +1 @@
-#define CS_PATH "/bin:/usr/bin"
+#define CS_PATH "/run/current-system/sw/bin:/bin:/usr/bin"
)NIXEO/nix/store/za0pg7fmysrcwrqcal26fnmzw6vycgdn-fix_path_attribute_in_getconf.patch nix-archive-1(typeregularcontents�Derive([("bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin","",""),("debug","/nix/store/87bv5i7g3amybckdwby4c6pz49nw0mib-glibc-2.32-debug","",""),("dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev","",""),("out","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32","",""),("static","/nix/store/xlyj2087fragaqjww9gz6jfpj4fkfc7j-glibc-2.32-static","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/1zi0k7y01rhqr2gfqb42if0icswg65sj-locale-C.diff.drv",["out"]),("/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drv",["out"]),("/nix/store/gfnp0925raad5m6xagsqidhjgh7mz25z-linux-headers-5.5.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/kxx3xjyjbfkvppjx0dss9g2kqp0cha55-python3-minimal-3.8.6.drv",["out"]),("/nix/store/l5zr5m1agvvnic49fg6qc44g5fgj3la1-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb.drv",["out"]),("/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv",["out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"]),("/nix/store/vpz8r54w9rh6cr7c840yczh1bp7m9rij-glibc-2.32.tar.xz.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/5212825a2npxaf7qd81sxfrqq6219rlx-dont-use-system-ld-so-cache.patch","/nix/store/7kw224hdyxd7115lrqh9a4dv2x8msq2s-fix-x64-abi.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh","/nix/store/mnglr8rr7nl444h7p50ysyq8qd0fm1lm-dont-use-system-ld-so-preload.patch","/nix/store/pp29isd0nvy4jrm9q2f92pjlc83xwa0i-nix-locale-archive.patch","/nix/store/xkd50xxii6k7l1kmw4l5x6xzbhamcs87-allow-kernel-2.6.32.patch","/nix/store/za0pg7fmysrcwrqcal26fnmzw6vycgdn-fix_path_attribute_in_getconf.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("BASH_SHELL","/bin/sh"),("NIX_CFLAGS_COMPILE",""),("NIX_HARDENING_ENABLE","pic strictoverflow format relro bindnow"),("NIX_NO_SELF_RPATH","1"),("bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("buildInputs","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","-C --enable-add-ons --sysconfdir=/etc --enable-stackguard-randomization --with-headers=/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5/include --disable-profile --enable-kernel=3.2.0"),("debug","/nix/store/87bv5i7g3amybckdwby4c6pz49nw0mib-glibc-2.32-debug"),("depsBuildBuild","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("hardeningDisable","stackprotector fortify"),("installFlags","sysconfdir=$(out)/etc"),("is64bit","1"),("linuxHeaders","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5"),("name","glibc-2.32"),("nativeBuildInputs","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3 /nix/store/vpm5nzr3aqqgxxs1v5ck4ji89f970yv3-python3-minimal-3.8.6 /nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh"),("out","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("outputs","out bin dev static debug"),("patches","/nix/store/pp29isd0nvy4jrm9q2f92pjlc83xwa0i-nix-locale-archive.patch /nix/store/5212825a2npxaf7qd81sxfrqq6219rlx-dont-use-system-ld-so-cache.patch /nix/store/mnglr8rr7nl444h7p50ysyq8qd0fm1lm-dont-use-system-ld-so-preload.patch /nix/store/za0pg7fmysrcwrqcal26fnmzw6vycgdn-fix_path_attribute_in_getconf.patch /nix/store/xkd50xxii6k7l1kmw4l5x6xzbhamcs87-allow-kernel-2.6.32.patch /nix/store/3l70d7kcfsh91w6792h4fqs4kjbq17py-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb /nix/store/nqa9d4yxz1l2cgswzqr1pkm4jfrksm0q-locale-C.diff /nix/store/7kw224hdyxd7115lrqh9a4dv2x8msq2s-fix-x64-abi.patch"),("postConfigure","# Hack: get rid of the `-static' flag set by the bootstrap stdenv.\n# This has to be done *after* `configure' because it builds some\n# test binaries.\nexport NIX_CFLAGS_LINK=\nexport NIX_LDFLAGS_BEFORE=\n\nexport NIX_DONT_SET_RPATH=1\nunset CFLAGS\n\n# Apparently --bindir is not respected.\nmakeFlagsArray+=(\"bindir=$bin/bin\" \"sbindir=$bin/sbin\" \"rootsbindir=$bin/sbin\")\n"),("postInstall","echo SUPPORTED-LOCALES=C.UTF-8/UTF-8 > ../glibc-2*/localedata/SUPPORTED\nmake -j${NIX_BUILD_CORES:-1} -l${NIX_BUILD_CORES:-1} localedata/install-locales\n\ntest -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache\n\nif test -n \"$linuxHeaders\"; then\n # Include the Linux kernel headers in Glibc, except the `scsi'\n # subdirectory, which Glibc provides itself.\n (cd $dev/include && \\\n ln -sv $(ls -d $linuxHeaders/include/* | grep -v scsi\\$) .)\nfi\n\n# Fix for NIXOS-54 (ldd not working on x86_64). Make a symlink\n# \"lib64\" to \"lib\".\nif test -n \"$is64bit\"; then\n ln -s lib $out/lib64\nfi\n\n# Get rid of more unnecessary stuff.\nrm -rf $out/var $bin/bin/sln\n\nfor i in \"$out\"/lib/*.a; do\n [ \"$i\" = \"$out/lib/libm.a\" ] || $STRIP -S \"$i\"\ndone\n\n# Put libraries for static linking in a separate output. Note\n# that libc_nonshared.a and libpthread_nonshared.a are required\n# for dynamically-linked applications.\nmkdir -p $static/lib\nmv $out/lib/*.a $static/lib\nmv $static/lib/lib*_nonshared.a $out/lib\n# Some of *.a files are linker scripts where moving broke the paths.\nsed \"/^GROUP/s|$out/lib/lib|$static/lib/lib|g\" \\\n -i \"$static\"/lib/*.a\n\n# Work around a Nix bug: hard links across outputs cause a build failure.\ncp $bin/bin/getconf $bin/bin/getconf_\nmv $bin/bin/getconf_ $bin/bin/getconf\n"),("postPatch","# Needed for glibc to build with the gnumake 3.82\n# http://comments.gmane.org/gmane.linux.lfs.support/31227\nsed -i 's/ot \\$/ot:\\n\\ttouch $@\\n$/' manual/Makefile\n\n# nscd needs libgcc, and we don't want it dynamically linked\n# because we don't want it to depend on bootstrap-tools libs.\necho \"LDFLAGS-nscd += -static-libgcc\" >> nscd/Makefile\n\n# Ensure that libidn2 is found.\npatch -p 1 <<EOF\n--- a/inet/idna.c\n+++ b/inet/idna.c\n@@ -25,1 +25,1 @@\n-#define LIBIDN2_SONAME \"libidn2.so.0\"\n+#define LIBIDN2_SONAME \"/nix/store/g4gk96z9i98hyyf2j4mzn8vvws6gb7i3-libidn2-2.3.0/lib/libidn2.so.0\"\nEOF\n"),("preBuild",""),("preConfigure","export PWD_P=$(type -tP pwd)\nfor i in configure io/ftwtest-sh; do\n # Can't use substituteInPlace here because replace hasn't been\n # built yet in the bootstrap.\n sed -i \"$i\" -e \"s^/bin/pwd^$PWD_P^g\"\ndone\n\nmkdir ../build\ncd ../build\n\nconfigureScript=\"`pwd`/../$sourceRoot/configure\"\n\nmakeFlags=\"$makeFlags BUILD_LDFLAGS=-Wl,-rpath,/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib\"\n\n\n"),("preInstall","if [ -f /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib/libgcc_s.so.1 ]; then\n mkdir -p $out/lib\n cp /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib/libgcc_s.so.1 $out/lib/libgcc_s.so.1\n # the .so It used to be a symlink, but now it is a script\n cp -a /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib/libgcc_s.so $out/lib/libgcc_s.so\nfi\n"),("profilingLibraries",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("separateDebugInfo","1"),("src","/nix/store/yl0acs9vzng0cd4qfdcgb3zpwjm034nw-glibc-2.32.tar.xz"),("static","/nix/store/xlyj2087fragaqjww9gz6jfpj4fkfc7j-glibc-2.32-static"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","2.32")]))NIXE:/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv=/nix/store/1zi0k7y01rhqr2gfqb42if0icswg65sj-locale-C.diff.drv=/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drvM/nix/store/5212825a2npxaf7qd81sxfrqq6219rlx-dont-use-system-ld-so-cache.patch=/nix/store/7kw224hdyxd7115lrqh9a4dv2x8msq2s-fix-x64-abi.patch>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shB/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.shA/nix/store/gfnp0925raad5m6xagsqidhjgh7mz25z-linux-headers-5.5.drvM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvE/nix/store/kxx3xjyjbfkvppjx0dss9g2kqp0cha55-python3-minimal-3.8.6.drv�/nix/store/l5zr5m1agvvnic49fg6qc44g5fgj3la1-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb.drvO/nix/store/mnglr8rr7nl444h7p50ysyq8qd0fm1lm-dont-use-system-ld-so-preload.patch;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drvD/nix/store/pp29isd0nvy4jrm9q2f92pjlc83xwa0i-nix-locale-archive.patchM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drvA/nix/store/vpz8r54w9rh6cr7c840yczh1bp7m9rij-glibc-2.32.tar.xz.drvF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drvE/nix/store/xkd50xxii6k7l1kmw4l5x6xzbhamcs87-allow-kernel-2.6.32.patchO/nix/store/za0pg7fmysrcwrqcal26fnmzw6vycgdn-fix_path_attribute_in_getconf.patch nix-archive-1(typeregularcontentsXDerive([("out","/nix/store/n1zg4dzpfkq1hnfixg7wasg2jfq74pqy-expand-response-params","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("buildPhase","\"$CC\" -std=c99 -O3 -o \"expand-response-params\" expand-response-params.c\n"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("installPhase","mkdir -p $prefix/bin\nmv expand-response-params $prefix/bin/\n"),("name","expand-response-params"),("nativeBuildInputs",""),("out","/nix/store/n1zg4dzpfkq1hnfixg7wasg2jfq74pqy-expand-response-params"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("unpackPhase","cp \"$src\" expand-response-params.c\nsrc=$PWD\n")]))NIXEF/nix/store/sm2b9m5kha0b5sm80sq15iwdmbqicjgi-expand-response-params.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shD/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.cM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/04fnvpbrs1w614syy05ygc13509pq8x7-binutils-wrapper-2.31.1-info","",""),("man","/nix/store/9cp8g92qw7kwqr9088wqqfqps4kynh91-binutils-wrapper-2.31.1-man","",""),("out","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drv",["out"]),("/nix/store/j609knn4ghacd4dj6ij0kbmax842jp40-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/rgdrg9vvx9idxnjmxjhczaq0xin6pkqq-binutils-2.31.1.drv",["info","man","out"])],["/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh","/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools_bin","/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("dynamicLinker","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/ld-linux-x86-64.so.2"),("emulation","elf64-x86-64"),("expand-response-params","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params"),("expandResponseParams","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("info","/nix/store/04fnvpbrs1w614syy05ygc13509pq8x7-binutils-wrapper-2.31.1-info"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $bintools_bin > $out/nix-support/orig-bintools\n\nldPath=\"/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1/bin\"\nif [ -e $ldPath/as ]; then\n ln -s $ldPath/as $out/bin/as\nfi\n\nwrap ld /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh ${ld:-$ldPath/ld}\n\nfor variant in ld.gold ld.bfd ld.lld; do\n local underlying=$ldPath/$variant\n [[ -e \"$underlying\" ]] || continue\n wrap $variant /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh $underlying\ndone\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("man","/nix/store/9cp8g92qw7kwqr9088wqqfqps4kynh91-binutils-wrapper-2.31.1-man"),("name","binutils-wrapper-2.31.1"),("nativeBuildInputs",""),("out","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("outputs","out man info"),("patches",""),("pname","binutils-wrapper"),("postFixup","touch \"$out/nix-support/libc-ldflags\"\necho \"-L/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib\" >> $out/nix-support/libc-ldflags\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\nif [[ -z ${dynamicLinker+x} ]]; then\n echo \"Don't know the name of the dynamic linker for platform 'x86_64-unknown-linux-gnu', so guessing instead.\" >&2\n local dynamicLinker=\"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/ld*.so.?\"\nfi\ndynamicLinker=($dynamicLinker)\n\ncase ${#dynamicLinker[@]} in\n 0) echo \"No dynamic linker found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\n 1) echo \"Using dynamic linker: '$dynamicLinker'\" >&2;;\n *) echo \"Multiple dynamic linkers found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\nesac\n\nif [ -n \"${dynamicLinker-}\" ]; then\n echo $dynamicLinker > $out/nix-support/dynamic-linker\n\nif [ -e /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/32/ld-linux.so.2 ]; then\n echo /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/32/ld-linux.so.2 > $out/nix-support/dynamic-linker-m32\nfi\necho -dynamic-linker \"$dynamicLinker\" >> $out/nix-support/libc-ldflags-before\nfi\nprintWords /nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1 /nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin > $out/nix-support/propagated-user-env-packages\nln -s /nix/store/231mn1zs79vmyhj571a964pszikibw99-binutils-2.31.1-man $man\nln -s /nix/store/yc16qgl8gq429wf0gh0lk940w16kg3d4-binutils-2.31.1-info $info\nexport hardening_unsupported_flags=\"\"\nif [[ \"$($ldPath/ld -z now 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" bindnow\"\nfi\nif [[ \"$($ldPath/ld -z relro 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" relro\"\nfi\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/d1ww955lsl8ipb7iabylyij2wwjq1bqc-bootstrap-stage1-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","2.31.1"),("wrapperName","BINTOOLS_WRAPPER")]))NIXEG/nix/store/vf2144qgqdiik6vcr4r303qp6x5hgndg-binutils-wrapper-2.31.1.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv8/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh9/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.shF/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drvM/nix/store/j609knn4ghacd4dj6ij0kbmax842jp40-bootstrap-stage1-stdenv-linux.drv5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash</nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh?/nix/store/rgdrg9vvx9idxnjmxjhczaq0xin6pkqq-binutils-2.31.1.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents-Derive([("out","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"]),("/nix/store/sm2b9m5kha0b5sm80sq15iwdmbqicjgi-expand-response-params.drv",["out"]),("/nix/store/vf2144qgqdiik6vcr4r303qp6x5hgndg-binutils-wrapper-2.31.1.drv",["out"])],["/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh","/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cc","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("expand-response-params","/nix/store/n1zg4dzpfkq1hnfixg7wasg2jfq74pqy-expand-response-params"),("expandResponseParams","/nix/store/n1zg4dzpfkq1hnfixg7wasg2jfq74pqy-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $cc > $out/nix-support/orig-cc\n\nccPath=\"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin\"\nfor bbin in $bintools/bin/*; do\n mkdir -p \"$out/bin\"\n ln -s \"$bbin\" \"$out/bin/$(basename $bbin)\"\ndone\nexport named_cc=cc\nexport named_cxx=c++\n\nif [ -e $ccPath/gcc ]; then\n wrap gcc $wrapper $ccPath/gcc\n ln -s gcc $out/bin/cc\n export named_cc=gcc\n export named_cxx=g++\nelif [ -e $ccPath/clang ]; then\n wrap clang $wrapper $ccPath/clang\n ln -s clang $out/bin/cc\n export named_cc=clang\n export named_cxx=clang++\nfi\n\nif [ -e $ccPath/g++ ]; then\n wrap g++ $wrapper $ccPath/g++\n ln -s g++ $out/bin/c++\nelif [ -e $ccPath/clang++ ]; then\n wrap clang++ $wrapper $ccPath/clang++\n ln -s clang++ $out/bin/c++\nfi\n\nif [ -e $ccPath/cpp ]; then\n wrap cpp $wrapper $ccPath/cpp\nfi\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("name","bootstrap-stage3-gcc-wrapper-"),("nativeBuildInputs",""),("out","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("outputs","out"),("patches",""),("pname","bootstrap-stage3-gcc-wrapper"),("postFixup","touch \"$out/nix-support/cc-cflags\"\ntouch \"$out/nix-support/cc-ldflags\"\nif [[ -f \"$bintools/nix-support/dynamic-linker\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker\" \"$out/nix-support\"\nfi\nif [[ -f \"$bintools/nix-support/dynamic-linker-m32\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker-m32\" \"$out/nix-support\"\nfi\ntouch \"$out/nix-support/libc-cflags\"\ntouch \"$out/nix-support/libc-ldflags\"\necho \"-B/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/\" >> $out/nix-support/libc-crt1-cflags\necho \"-idirafter /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include\" >> $out/nix-support/libc-cflags\nfor dir in \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools\"/lib/gcc/*/*/include-fixed; do\n echo '-idirafter' ${dir} >> $out/nix-support/libc-cflags\ndone\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\ntouch \"$out/nix-support/libcxx-cxxflags\"\ntouch \"$out/nix-support/libcxx-ldflags\"\nif [ -e \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" -a ! -L \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" ]; then\n ccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\n ccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\nfi\nccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\nccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\n\necho \"$ccLDFlags\" >> $out/nix-support/cc-ldflags\necho \"$ccCFlags\" >> $out/nix-support/cc-cflags\nexport hardening_unsupported_flags=\"\"\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version",""),("wrapper","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh"),("wrapperName","CC_WRAPPER")]))NIXEM/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh:/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bashF/nix/store/sm2b9m5kha0b5sm80sq15iwdmbqicjgi-expand-response-params.drvG/nix/store/vf2144qgqdiik6vcr4r303qp6x5hgndg-binutils-wrapper-2.31.1.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents# Derive([("out","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux","","")],[("/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12 /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage3-stdenv-linux"),("out","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.shM/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontentsDerive([("bin","/nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin","",""),("dev","/nix/store/85l759krwxjn851xgg5d9hvwmkiwv3pb-xz-5.2.5-dev","",""),("doc","/nix/store/8dyq09v61xsvfz7lgqljsy05sclv2782-xz-5.2.5-doc","",""),("man","/nix/store/88i7r45iz86xnr6msqv6b3in77zkzg9x-xz-5.2.5-man","",""),("out","/nix/store/3jjqa00hg3prkbkdgnj3nh4h58gr11nn-xz-5.2.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/85l759krwxjn851xgg5d9hvwmkiwv3pb-xz-5.2.5-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/8dyq09v61xsvfz7lgqljsy05sclv2782-xz-5.2.5-doc"),("man","/nix/store/88i7r45iz86xnr6msqv6b3in77zkzg9x-xz-5.2.5-man"),("name","xz-5.2.5"),("nativeBuildInputs",""),("out","/nix/store/3jjqa00hg3prkbkdgnj3nh4h58gr11nn-xz-5.2.5"),("outputs","bin dev out man doc"),("patches",""),("postInstall","rm -rf $out/share/doc"),("preCheck","# Tests have a /bin/sh dependency...\npatchShebangs tests\n"),("preConfigure","CONFIG_SHELL=/bin/sh"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/pm7j1xsa1vmycd9208vql2cn6nz4zj5l-xz-5.2.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv nix-archive-1(typeregularcontentsXDerive([("out","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("buildPhase","\"$CC\" -std=c99 -O3 -o \"expand-response-params\" expand-response-params.c\n"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("installPhase","mkdir -p $prefix/bin\nmv expand-response-params $prefix/bin/\n"),("name","expand-response-params"),("nativeBuildInputs",""),("out","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("unpackPhase","cp \"$src\" expand-response-params.c\nsrc=$PWD\n")]))NIXEF/nix/store/0d9243zx1sxs07sf25dr09c2q7h3d5k0-expand-response-params.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drvD/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c nix-archive-1(typeregularcontents� Derive([("doc","/nix/store/b6mgshcxh6z6h42qqnp987ipmqykavsc-gettext-0.21-doc","",""),("info","/nix/store/7cqvxikq1pdph69hldhzh06xwhgb83k5-gettext-0.21-info","",""),("man","/nix/store/ak2xv8wias41xi6pp922dkdy5na3rgv2-gettext-0.21-man","",""),("out","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/pm7j1xsa1vmycd9208vql2cn6nz4zj5l-xz-5.2.5.drv",["bin","dev"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("LDFLAGS",""),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--disable-csharp --with-xz"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/b6mgshcxh6z6h42qqnp987ipmqykavsc-gettext-0.21-doc"),("enableParallelBuilding","1"),("enableParallelChecking",""),("gettextNeedsLdflags",""),("hardeningDisable","format"),("info","/nix/store/7cqvxikq1pdph69hldhzh06xwhgb83k5-gettext-0.21-info"),("man","/nix/store/ak2xv8wias41xi6pp922dkdy5na3rgv2-gettext-0.21-man"),("name","gettext-0.21"),("nativeBuildInputs","/nix/store/85l759krwxjn851xgg5d9hvwmkiwv3pb-xz-5.2.5-dev /nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin"),("out","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("outputs","out man doc info"),("patches","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff"),("pname","gettext"),("postPatch","substituteAllInPlace gettext-runtime/src/gettext.sh.in\nsubstituteInPlace gettext-tools/projects/KDE/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/projects/GNOME/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/src/project-id --replace \"/bin/pwd\" pwd\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh"),("src","/nix/store/s1bb06rzbxlvq08sg0ymwdgcgd1a7xh3-gettext-0.21.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.21")]))NIXE</nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvC/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drvA/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh?/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff8/nix/store/pm7j1xsa1vmycd9208vql2cn6nz4zj5l-xz-5.2.5.drv5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash nix-archive-1(typeregularcontents�)source $stdenv/setup
oldOpts="$(shopt -po nounset)" || true
set -euo pipefail
export NIX_FIXINC_DUMMY="$NIX_BUILD_TOP/dummy"
mkdir "$NIX_FIXINC_DUMMY"
if test "$staticCompiler" = "1"; then
EXTRA_LDFLAGS="-static"
else
EXTRA_LDFLAGS="-Wl,-rpath,${!outputLib}/lib"
fi
# GCC interprets empty paths as ".", which we don't want.
if test -z "${CPATH-}"; then unset CPATH; fi
if test -z "${LIBRARY_PATH-}"; then unset LIBRARY_PATH; fi
echo "\$CPATH is \`${CPATH-}'"
echo "\$LIBRARY_PATH is \`${LIBRARY_PATH-}'"
if test "$noSysDirs" = "1"; then
declare \
EXTRA_FLAGS_FOR_BUILD EXTRA_FLAGS EXTRA_FLAGS_FOR_TARGET \
EXTRA_LDFLAGS_FOR_BUILD EXTRA_LDFLAGS_FOR_TARGET
# Extract flags from Bintools Wrappers
for post in '_FOR_BUILD' ''; do
curBintools="NIX_BINTOOLS${post}"
declare -a extraLDFlags=()
if [[ -e "${!curBintools}/nix-support/orig-libc" ]]; then
# Figure out what extra flags when linking to pass to the gcc
# compilers being generated to make sure that they use our libc.
extraLDFlags=($(< "${!curBintools}/nix-support/libc-ldflags") $(< "${!curBintools}/nix-support/libc-ldflags-before" || true))
# The path to the Libc binaries such as `crti.o'.
libc_libdir="$(< "${!curBintools}/nix-support/orig-libc")/lib"
else
# Hack: support impure environments.
extraLDFlags=("-L/usr/lib64" "-L/usr/lib")
libc_libdir="/usr/lib"
fi
extraLDFlags=("-L$libc_libdir" "-rpath" "$libc_libdir"
"${extraLDFlags[@]}")
for i in "${extraLDFlags[@]}"; do
declare EXTRA_LDFLAGS${post}+=" -Wl,$i"
done
done
# Extract flags from CC Wrappers
for post in '_FOR_BUILD' ''; do
curCC="NIX_CC${post}"
curFIXINC="NIX_FIXINC_DUMMY${post}"
declare -a extraFlags=()
if [[ -e "${!curCC}/nix-support/orig-libc" ]]; then
# Figure out what extra compiling flags to pass to the gcc compilers
# being generated to make sure that they use our libc.
extraFlags=($(< "${!curCC}/nix-support/libc-crt1-cflags") $(< "${!curCC}/nix-support/libc-cflags"))
# The path to the Libc headers
libc_devdir="$(< "${!curCC}/nix-support/orig-libc-dev")"
# Use *real* header files, otherwise a limits.h is generated that
# does not include Libc's limits.h (notably missing SSIZE_MAX,
# which breaks the build).
declare NIX_FIXINC_DUMMY${post}="$libc_devdir/include"
else
# Hack: support impure environments.
extraFlags=("-isystem" "/usr/include")
declare NIX_FIXINC_DUMMY${post}=/usr/include
fi
extraFlags=("-I${!curFIXINC}" "${extraFlags[@]}")
# BOOT_CFLAGS defaults to `-g -O2'; since we override it below, make
# sure to explictly add them so that files compiled with the bootstrap
# compiler are optimized and (optionally) contain debugging information
# (info "(gccinstall) Building").
if test -n "${dontStrip-}"; then
extraFlags=("-O2" "-g" "${extraFlags[@]}")
else
# Don't pass `-g' at all; this saves space while building.
extraFlags=("-O2" "${extraFlags[@]}")
fi
declare EXTRA_FLAGS${post}="${extraFlags[*]}"
done
if test -z "${targetConfig-}"; then
# host = target, so the flags are the same
EXTRA_FLAGS_FOR_TARGET="$EXTRA_FLAGS"
EXTRA_LDFLAGS_FOR_TARGET="$EXTRA_LDFLAGS"
fi
# CFLAGS_FOR_TARGET are needed for the libstdc++ configure script to find
# the startfiles.
# FLAGS_FOR_TARGET are needed for the target libraries to receive the -Bxxx
# for the startfiles.
makeFlagsArray+=(
"BUILD_SYSTEM_HEADER_DIR=$NIX_FIXINC_DUMMY_FOR_BUILD"
"SYSTEM_HEADER_DIR=$NIX_FIXINC_DUMMY_FOR_BUILD"
"NATIVE_SYSTEM_HEADER_DIR=$NIX_FIXINC_DUMMY"
"LDFLAGS_FOR_BUILD=$EXTRA_LDFLAGS_FOR_BUILD"
#"LDFLAGS=$EXTRA_LDFLAGS"
"LDFLAGS_FOR_TARGET=$EXTRA_LDFLAGS_FOR_TARGET"
"CFLAGS_FOR_BUILD=$EXTRA_FLAGS_FOR_BUILD $EXTRA_LDFLAGS_FOR_BUILD"
"CXXFLAGS_FOR_BUILD=$EXTRA_FLAGS_FOR_BUILD $EXTRA_LDFLAGS_FOR_BUILD"
"FLAGS_FOR_BUILD=$EXTRA_FLAGS_FOR_BUILD $EXTRA_LDFLAGS_FOR_BUILD"
# It seems there is a bug in GCC 5
#"CFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
#"CXXFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
"CFLAGS_FOR_TARGET=$EXTRA_FLAGS_FOR_TARGET $EXTRA_LDFLAGS_FOR_TARGET"
"CXXFLAGS_FOR_TARGET=$EXTRA_FLAGS_FOR_TARGET $EXTRA_LDFLAGS_FOR_TARGET"
"FLAGS_FOR_TARGET=$EXTRA_FLAGS_FOR_TARGET $EXTRA_LDFLAGS_FOR_TARGET"
)
if test -z "${targetConfig-}"; then
makeFlagsArray+=(
"BOOT_CFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
"BOOT_LDFLAGS=$EXTRA_FLAGS_FOR_TARGET $EXTRA_LDFLAGS_FOR_TARGET"
)
fi
if test "$crossStageStatic" == 1; then
# We don't want the gcc build to assume there will be a libc providing
# limits.h in this stage
makeFlagsArray+=(
'LIMITS_H_TEST=false'
)
else
makeFlagsArray+=(
'LIMITS_H_TEST=true'
)
fi
fi
if test -n "${targetConfig-}"; then
# The host strip will destroy some important details of the objects
dontStrip=1
fi
eval "$oldOpts"
providedPreConfigure="$preConfigure";
preConfigure() {
if test -n "$newlibSrc"; then
tar xvf "$newlibSrc" -C ..
ln -s ../newlib-*/newlib newlib
# Patch to get armvt5el working:
sed -i -e 's/ arm)/ arm*)/' newlib/configure.host
fi
# Bug - they packaged zlib
if test -d "zlib"; then
# This breaks the build without-headers, which should build only
# the target libgcc as target libraries.
# See 'configure:5370'
rm -Rf zlib
fi
if test -f "$NIX_CC/nix-support/orig-libc"; then
# Patch the configure script so it finds glibc headers. It's
# important for example in order not to get libssp built,
# because its functionality is in glibc already.
sed -i \
-e "s,glibc_header_dir=/usr/include,glibc_header_dir=$libc_dev/include", \
gcc/configure
fi
if test -n "$crossMingw" -a -n "$crossStageStatic"; then
mkdir -p ../mingw
# --with-build-sysroot expects that:
cp -R $libcCross/include ../mingw
configureFlags="$configureFlags --with-build-sysroot=`pwd`/.."
fi
# Eval the preConfigure script from nix expression.
eval "$providedPreConfigure"
# Perform the build in a different directory.
mkdir ../build
cd ../build
configureScript=../$sourceRoot/configure
}
postConfigure() {
# Don't store the configure flags in the resulting executables.
sed -e '/TOPLEVEL_CONFIGURE_ARGUMENTS=/d' -i Makefile
}
preInstall() {
mkdir -p "$out/${targetConfig}/lib"
mkdir -p "${!outputLib}/${targetConfig}/lib"
# Make ‘lib64’ symlinks to ‘lib’.
if [ -n "$is64bit" -a -z "$enableMultilib" ]; then
ln -s lib "$out/${targetConfig}/lib64"
ln -s lib "${!outputLib}/${targetConfig}/lib64"
fi
}
postInstall() {
# Move runtime libraries to lib output.
moveToOutput "${targetConfig+$targetConfig/}lib/lib*.so*" "${!outputLib}"
moveToOutput "${targetConfig+$targetConfig/}lib/lib*.la" "${!outputLib}"
moveToOutput "${targetConfig+$targetConfig/}lib/lib*.dylib" "${!outputLib}"
moveToOutput "${targetConfig+$targetConfig/}lib/lib*.dll.a" "${!outputLib}"
moveToOutput "share/gcc-*/python" "${!outputLib}"
for i in "${!outputLib}/${targetConfig}"/lib/*.{la,py}; do
substituteInPlace "$i" --replace "$out" "${!outputLib}"
done
if [ -n "$enableMultilib" ]; then
moveToOutput "${targetConfig+$targetConfig/}lib64/lib*.so*" "${!outputLib}"
moveToOutput "${targetConfig+$targetConfig/}lib64/lib*.la" "${!outputLib}"
moveToOutput "${targetConfig+$targetConfig/}lib64/lib*.dylib" "${!outputLib}"
for i in "${!outputLib}/${targetConfig}"/lib64/*.{la,py}; do
substituteInPlace "$i" --replace "$out" "${!outputLib}"
done
fi
# Remove `fixincl' to prevent a retained dependency on the
# previous gcc.
rm -rf $out/libexec/gcc/*/*/install-tools
rm -rf $out/lib/gcc/*/*/install-tools
# More dependencies with the previous gcc or some libs (gccbug stores the build command line)
rm -rf $out/bin/gccbug
if [[ buildConfig == *"linux"* ]]; then
# Take out the bootstrap-tools from the rpath, as it's not needed at all having $out
for i in $(find "$out"/libexec/gcc/*/*/* -type f -a \! -name '*.la'); do
PREV_RPATH=`patchelf --print-rpath "$i"`
NEW_RPATH=`echo "$PREV_RPATH" | sed 's,:[^:]*bootstrap-tools/lib,,g'`
patchelf --set-rpath "$NEW_RPATH" "$i" && echo OK
done
fi
if [[ targetConfig == *"linux"* ]]; then
# For some reason, when building for linux on darwin, the libs retain
# RPATH to $out.
for i in "$lib"/"$targetConfig"/lib/{libtsan,libasan,libubsan}.so.*.*.*; do
PREV_RPATH=`patchelf --print-rpath "$i"`
NEW_RPATH=`echo "$PREV_RPATH" | sed "s,:${out}[^:]*,,g"`
patchelf --set-rpath "$NEW_RPATH" "$i" && echo OK
done
fi
if type "install_name_tool"; then
for i in "${!outputLib}"/lib/*.*.dylib "${!outputLib}"/lib/*.so.[0-9]; do
install_name_tool -id "$i" "$i" || true
for old_path in $(otool -L "$i" | grep "$out" | awk '{print $1}'); do
new_path=`echo "$old_path" | sed "s,$out,${!outputLib},"`
install_name_tool -change "$old_path" "$new_path" "$i" || true
done
done
fi
# Get rid of some "fixed" header files
rm -rfv $out/lib/gcc/*/*/include-fixed/{root,linux}
# Replace hard links for i686-pc-linux-gnu-gcc etc. with symlinks.
for i in $out/bin/*-gcc*; do
if cmp -s $out/bin/gcc $i; then
ln -sfn gcc $i
fi
done
for i in $out/bin/c++ $out/bin/*-c++* $out/bin/*-g++*; do
if cmp -s $out/bin/g++ $i; then
ln -sfn g++ $i
fi
done
# Two identical man pages are shipped (moving and compressing is done later)
for i in "$out"/share/man/man1/*g++.1; do
if test -e "$i"; then
man_prefix=`echo "$i" | sed "s,.*/\(.*\)g++.1,\1,"`
ln -sf "$man_prefix"gcc.1 "$i"
fi
done
}
genericBuild
)NIXE6/nix/store/5rmzq5ldn60cw87f30hjn6y9syf5crfd-builder.sh nix-archive-1(typeregularcontents�diff --git a/lib/elf_repl.h b/lib/elf_repl.h
index c5cf90f..7e1e8df 100644
--- a/lib/elf_repl.h
+++ b/lib/elf_repl.h
@@ -45,7 +45,7 @@ typedef __libelf_u32_t Elf32_Word;
#define ELF32_FSZ_SWORD 4
#define ELF32_FSZ_WORD 4
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef __libelf_u64_t Elf64_Addr;
typedef __libelf_u16_t Elf64_Half;
@@ -93,7 +93,7 @@ typedef struct {
Elf32_Half e_shstrndx;
} Elf32_Ehdr;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
unsigned char e_ident[EI_NIDENT];
Elf64_Half e_type;
@@ -307,7 +307,7 @@ typedef struct {
Elf32_Word sh_entsize;
} Elf32_Shdr;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Word sh_name;
Elf64_Word sh_type;
@@ -434,7 +434,7 @@ typedef struct {
Elf32_Half st_shndx;
} Elf32_Sym;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Word st_name;
unsigned char st_info;
@@ -457,7 +457,7 @@ typedef struct {
#define ELF32_ST_TYPE(i) ((i)&0xf)
#define ELF32_ST_INFO(b,t) (((b)<<4)+((t)&0xf))
-#if __LIBELF64
+#if defined(__LIBELF64)
#define ELF64_ST_BIND(i) ((i)>>4)
#define ELF64_ST_TYPE(i) ((i)&0xf)
#define ELF64_ST_INFO(b,t) (((b)<<4)+((t)&0xf))
@@ -495,7 +495,7 @@ typedef struct {
* Macros for manipulating st_other
*/
#define ELF32_ST_VISIBILITY(o) ((o)&0x3)
-#if __LIBELF64
+#if defined(__LIBELF64)
#define ELF64_ST_VISIBILITY(o) ((o)&0x3)
#endif /* __LIBELF64 */
@@ -521,7 +521,7 @@ typedef struct {
Elf32_Sword r_addend;
} Elf32_Rela;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Addr r_offset;
Elf64_Xword r_info;
@@ -541,7 +541,7 @@ typedef struct {
#define ELF32_R_TYPE(i) ((unsigned char)(i))
#define ELF32_R_INFO(s,t) (((s)<<8)+(unsigned char)(t))
-#if __LIBELF64
+#if defined(__LIBELF64)
#define ELF64_R_SYM(i) ((Elf64_Xword)(i)>>32)
#define ELF64_R_TYPE(i) ((i)&0xffffffffL)
#define ELF64_R_INFO(s,t) (((Elf64_Xword)(s)<<32)+((t)&0xffffffffL))
@@ -556,7 +556,7 @@ typedef struct {
Elf32_Word n_type; /* descriptor type */
} Elf32_Nhdr;
-#if __LIBELF64
+#if defined(__LIBELF64)
/* Solaris and GNU use this layout. Be compatible. */
/* XXX: Latest ELF specs say it's 64-bit!!! */
typedef struct {
@@ -587,7 +587,7 @@ typedef struct {
Elf32_Word p_align;
} Elf32_Phdr;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Word p_type;
Elf64_Word p_flags;
@@ -654,7 +654,7 @@ typedef struct {
} d_un;
} Elf32_Dyn;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Sxword d_tag;
union {
@@ -798,7 +798,7 @@ typedef struct {
Elf32_Half si_flags;
} Elf32_Syminfo;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Half si_boundto;
Elf64_Half si_flags;
@@ -863,7 +863,7 @@ typedef struct {
typedef Elf32_Half Elf32_Versym;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Half vd_version;
@@ -933,7 +933,7 @@ typedef Elf64_Half Elf64_Versym;
/*
* Move section
*/
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf32_Lword m_value;
@@ -973,7 +973,7 @@ typedef struct {
} c_un;
} Elf32_Cap;
-#if __LIBELF64
+#if defined(__LIBELF64)
typedef struct {
Elf64_Xword c_tag;
diff --git a/lib/gelf.h b/lib/gelf.h
index 5af0558..98a759c 100644
--- a/lib/gelf.h
+++ b/lib/gelf.h
@@ -22,15 +22,15 @@
#ifndef _GELF_H
#define _GELF_H
-#if __LIBELF_INTERNAL__
+#if defined(__LIBELF_INTERNAL__)
#include <libelf.h>
#else /* __LIBELF_INTERNAL__ */
#include <libelf/libelf.h>
#endif /* __LIBELF_INTERNAL__ */
-#if __LIBELF_NEED_LINK_H
+#if defined(__LIBELF_NEED_LINK_H)
#include <link.h>
-#elif __LIBELF_NEED_SYS_LINK_H
+#elif defined(__LIBELF_NEED_SYS_LINK_H)
#include <sys/link.h>
#endif /* __LIBELF_NEED_LINK_H */
@@ -46,7 +46,7 @@ extern "C" {
# endif /* __STDC__ || defined(__cplusplus) */
#endif /* __P */
-#if !__LIBELF64
+#if !defined(__LIBELF64)
#error "GElf is not supported on this system."
@@ -71,7 +71,7 @@ typedef Elf64_Sym GElf_Sym;
/*
* Symbol versioning
*/
-#if __LIBELF_SYMBOL_VERSIONS
+#if defined(__LIBELF_SYMBOL_VERSIONS)
typedef Elf64_Verdef GElf_Verdef;
typedef Elf64_Verneed GElf_Verneed;
typedef Elf64_Verdaux GElf_Verdaux;
diff --git a/lib/libelf.h b/lib/libelf.h
index 3ebd0f3..788482d 100644
--- a/lib/libelf.h
+++ b/lib/libelf.h
@@ -25,7 +25,7 @@
#include <stddef.h> /* for size_t */
#include <sys/types.h>
-#if __LIBELF_INTERNAL__
+#if defined(__LIBELF_INTERNAL__)
#include <sys_elf.h>
#else /* __LIBELF_INTERNAL__ */
#include <libelf/sys_elf.h>
@@ -224,7 +224,7 @@ extern Elf_Data *elf32_xlatetom __P((Elf_Data *__dst, const Elf_Data *__src,
*/
extern long elf32_checksum __P((Elf *__elf));
-#if __LIBELF64
+#if defined(__LIBELF64)
/*
* 64-bit ELF functions
* Not available on all platforms
diff --git a/lib/sys_elf.h.in b/lib/sys_elf.h.in
index b71a20d..722051b 100644
--- a/lib/sys_elf.h.in
+++ b/lib/sys_elf.h.in
@@ -68,7 +68,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
#ifdef __LIBELF_HEADER_ELF_H
# include __LIBELF_HEADER_ELF_H
#else /* __LIBELF_HEADER_ELF_H */
-# if __LIBELF_INTERNAL__
+# if defined(__LIBELF_INTERNAL__)
# include <elf_repl.h>
# else /* __LIBELF_INTERNAL__ */
# include <libelf/elf_repl.h>
@@ -92,7 +92,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
# define STN_UNDEF 0
# endif /* STN_UNDEF */
-# if __LIBELF64
+# if defined(__LIBELF64)
# ifndef ELF64_FSZ_ADDR
# define ELF64_FSZ_ADDR 8
@@ -116,7 +116,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
# define ELF64_R_INFO(s,t) (((Elf64_Xword)(s)<<32)+((t)&0xffffffffL))
# endif /* ELF64_R_SYM */
-# if __LIBELF64_LINUX
+# if defined(__LIBELF64_LINUX)
typedef __libelf_u64_t Elf64_Addr;
typedef __libelf_u16_t Elf64_Half;
typedef __libelf_u64_t Elf64_Off;
diff --git a/lib/sys_elf.h.w32 b/lib/sys_elf.h.w32
index 0f93c55..7360104 100644
--- a/lib/sys_elf.h.w32
+++ b/lib/sys_elf.h.w32
@@ -68,7 +68,7 @@
#ifdef __LIBELF_HEADER_ELF_H
# include __LIBELF_HEADER_ELF_H
#else /* __LIBELF_HEADER_ELF_H */
-# if __LIBELF_INTERNAL__
+# if defined(__LIBELF_INTERNAL__)
# include <elf_repl.h>
# else /* __LIBELF_INTERNAL__ */
# include <libelf/elf_repl.h>
@@ -92,7 +92,7 @@
# define STN_UNDEF 0
# endif /* STN_UNDEF */
-# if __LIBELF64
+# if defined(__LIBELF64)
# ifndef ELF64_FSZ_ADDR
# define ELF64_FSZ_ADDR 8
@@ -116,7 +116,7 @@
# define ELF64_R_INFO(s,t) (((Elf64_Xword)(s)<<32)+((t)&0xffffffffL))
# endif /* ELF64_R_SYM */
-# if __LIBELF64_LINUX
+# if defined(__LIBELF64_LINUX)
typedef __libelf_u64_t Elf64_Addr;
typedef __libelf_u16_t Elf64_Half;
typedef __libelf_u64_t Elf64_Off;
)NIXEG/nix/store/21qssx8jl5688qmn5qnyrihfw9fibqv5-preprocessor-warnings.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/ggpgsklddx6h8dk0wkmlnk4brcxdb0jh-libelf-0.8.13.tar.gz","sha256","591a9b4ec81c1f2042a97aa60564e0cb79d041c52faa7416acb38bc95bd2c76d")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","libelf-0.8.13.tar.gz"),("out","/nix/store/ggpgsklddx6h8dk0wkmlnk4brcxdb0jh-libelf-0.8.13.tar.gz"),("outputHash","0vf7s9dwk2xkmhb79aigqm0x0yfbw1j0b9ksm51207qwr179n6jr"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://fossies.org/linux/misc/old/libelf-0.8.13.tar.gz"),("urls","https://fossies.org/linux/misc/old/libelf-0.8.13.tar.gz")]))NIXED/nix/store/5s87b3i5xfdd1mrl2haavfjrzfp4w4zf-libelf-0.8.13.tar.gz.drv nix-archive-1(typeregularcontents�--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -27,7 +27,7 @@ installdirs = $(libdir) $(includedir) $(includedir)/libelf
CC = @CC@
LD = @LD@
-AR = ar
+AR ?= ar
MV = mv -f
RM = rm -f
LN_S = @LN_S@
)NIXEB/nix/store/lzmxj8jf7dsy73injx2q3x6j329fjlk2-dont-hardcode-ar.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drv",["out"]),("/nix/store/5s87b3i5xfdd1mrl2haavfjrzfp4w4zf-libelf-0.8.13.tar.gz.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/21qssx8jl5688qmn5qnyrihfw9fibqv5-preprocessor-warnings.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/lzmxj8jf7dsy73injx2q3x6j329fjlk2-dont-hardcode-ar.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("name","libelf-0.8.13"),("nativeBuildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("out","/nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13"),("outputs","out"),("patches","/nix/store/lzmxj8jf7dsy73injx2q3x6j329fjlk2-dont-hardcode-ar.patch /nix/store/21qssx8jl5688qmn5qnyrihfw9fibqv5-preprocessor-warnings.patch"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/ggpgsklddx6h8dk0wkmlnk4brcxdb0jh-libelf-0.8.13.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE=/nix/store/bgkd8xs4zhi5vxdwrq61xih0r5ylr5w5-libelf-0.8.13.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvG/nix/store/21qssx8jl5688qmn5qnyrihfw9fibqv5-preprocessor-warnings.patch</nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drvD/nix/store/5s87b3i5xfdd1mrl2haavfjrzfp4w4zf-libelf-0.8.13.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drvB/nix/store/lzmxj8jf7dsy73injx2q3x6j329fjlk2-dont-hardcode-ar.patch nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev","",""),("out","/nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11","",""),("static","/nix/store/a1jplb7bywvd9x00mpxihihb40k428v7-zlib-1.2.11-static","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-static-libgcc"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--shared"),("configurePlatforms",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev"),("doCheck","1"),("doInstallCheck",""),("dontStrip",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("installFlags",""),("makeFlags","PREFIX= SHARED_MODE=1"),("name","zlib-1.2.11"),("nativeBuildInputs",""),("out","/nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11"),("outputDoc","dev"),("outputs","out dev static"),("patches",""),("postInstall","moveToOutput lib/libz.a \"$static\"\n"),("postPatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("src","/nix/store/rrzja19jbqxbfryp2zchb2ma5h041rxh-zlib-1.2.11.tar.gz"),("static","/nix/store/a1jplb7bywvd9x00mpxihihb40k428v7-zlib-1.2.11-static"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.2.11")]))NIXE;/nix/store/chrxdqzyqxsz6v5pv1z5iqbvj1qjdjf5-zlib-1.2.11.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drvB/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/37kc4p9d6fgfxyvc6r1zjb3sjfbgbi02-gmp-6.2.0.tar.bz2","sha256","f51c99cb114deb21a60075ffb494c1a210eb9d7cb729ed042ddb7de9534451ea")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","gmp-6.2.0.tar.bz2"),("out","/nix/store/37kc4p9d6fgfxyvc6r1zjb3sjfbgbi02-gmp-6.2.0.tar.bz2"),("outputHash","1sji8i9yjzfv5l2fsadpgjfyn452q6ab9zvm02k23ssd275rj77m"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/gmp/gmp-6.2.0.tar.bz2"),("urls","https://ftpmirror.gnu.org/gmp/gmp-6.2.0.tar.bz2")]))NIXEA/nix/store/pg06sapvblkmmff11jw7wydgc9szc641-gmp-6.2.0.tar.bz2.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev","",""),("info","/nix/store/jrmh8079c47pi090ycb00vf9l4zwn9hb-gmp-6.2.0-info","",""),("out","/nix/store/45w7v0ahs6p0sswwpmaaflh8izxbzh73-gmp-6.2.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/pg06sapvblkmmff11jw7wydgc9szc641-gmp-6.2.0.tar.bz2.drv",["out"]),("/nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--with-pic --enable-cxx --enable-fat --build=x86_64-unknown-linux-gnu --enable-static --disable-shared"),("depsBuildBuild","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev"),("doCheck","1"),("doInstallCheck",""),("dontDisableStatic","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("info","/nix/store/jrmh8079c47pi090ycb00vf9l4zwn9hb-gmp-6.2.0-info"),("mesonFlags","-Ddefault_library=static"),("name","gmp-6.2.0"),("nativeBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("out","/nix/store/45w7v0ahs6p0sswwpmaaflh8izxbzh73-gmp-6.2.0"),("outputs","out dev info"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/37kc4p9d6fgfxyvc6r1zjb3sjfbgbi02-gmp-6.2.0.tar.bz2"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE9/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvM/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drvA/nix/store/pg06sapvblkmmff11jw7wydgc9szc641-gmp-6.2.0.tar.bz2.drv</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/nl9ycnfgc3j36kv95ljhvrgj6m8nblw9-mpfr-4.1.0.tar.xz","sha256","0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","mpfr-4.1.0.tar.xz"),("out","/nix/store/nl9ycnfgc3j36kv95ljhvrgj6m8nblw9-mpfr-4.1.0.tar.xz"),("outputHash","0zwaanakrqjf84lfr5hfsdr7hncwv9wj0mchlr7cmxigfgqs760c"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz"),("urls","https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz")]))NIXEA/nix/store/lv1hwcmry75256awiysfa7mb93a0c49c-mpfr-4.1.0.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev","",""),("doc","/nix/store/gnghdh3x39dwbgxhzizsr4d7kqgwpid5-mpfr-4.1.0-doc","",""),("info","/nix/store/k45sxg0cvpw1adns69v8jwa062xs84jg-mpfr-4.1.0-info","",""),("out","/nix/store/ldxj13laaggdhn345rvgxcyyk335xn2c-mpfr-4.1.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv",["dev"]),("/nix/store/lv1hwcmry75256awiysfa7mb93a0c49c-mpfr-4.1.0.tar.xz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--with-pic --enable-static --disable-shared"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/gnghdh3x39dwbgxhzizsr4d7kqgwpid5-mpfr-4.1.0-doc"),("dontDisableStatic","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("info","/nix/store/k45sxg0cvpw1adns69v8jwa062xs84jg-mpfr-4.1.0-info"),("mesonFlags","-Ddefault_library=static"),("name","mpfr-4.1.0"),("nativeBuildInputs",""),("out","/nix/store/ldxj13laaggdhn345rvgxcyyk335xn2c-mpfr-4.1.0"),("outputs","out dev doc info"),("patches",""),("pname","mpfr"),("propagatedBuildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev"),("propagatedNativeBuildInputs",""),("src","/nix/store/nl9ycnfgc3j36kv95ljhvrgj6m8nblw9-mpfr-4.1.0.tar.xz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.1.0")]))NIXE:/nix/store/m2fi5ddvxkg1c9jncva4kslimnsn7ymg-mpfr-4.1.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv9/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drvA/nix/store/lv1hwcmry75256awiysfa7mb93a0c49c-mpfr-4.1.0.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/zqlka7nngksil7r0p0z8xd8x91d7rnm5-mpc-1.2.0.tar.gz","sha256","e90f2d99553a9c19911abdb4305bf8217106a957e3994436428572c8dfe8fda6")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","mpc-1.2.0.tar.gz"),("out","/nix/store/zqlka7nngksil7r0p0z8xd8x91d7rnm5-mpc-1.2.0.tar.gz"),("outputHash","19pxx3gwhwl588v496g3aylhcw91z1dk1d5x3a8ik71sancjs3z9"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/mpc/mpc-1.2.0.tar.gz"),("urls","https://ftpmirror.gnu.org/mpc/mpc-1.2.0.tar.gz")]))NIXE@/nix/store/l9b8lmsw6h22ccrk819wz08a31r83mpa-mpc-1.2.0.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv",["dev"]),("/nix/store/l9b8lmsw6h22ccrk819wz08a31r83mpa-mpc-1.2.0.tar.gz.drv",["out"]),("/nix/store/m2fi5ddvxkg1c9jncva4kslimnsn7ymg-mpfr-4.1.0.drv",["dev"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev /nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--enable-static --disable-shared"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("dontDisableStatic","1"),("mesonFlags","-Ddefault_library=static"),("name","libmpc-1.2.0"),("nativeBuildInputs",""),("out","/nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0"),("outputs","out"),("patches",""),("pname","libmpc"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/zqlka7nngksil7r0p0z8xd8x91d7rnm5-mpc-1.2.0.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.2.0")]))NIXE</nix/store/mf5bh6gxfjpkplrgqbw118yhgl47yplf-libmpc-1.2.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv9/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv@/nix/store/l9b8lmsw6h22ccrk819wz08a31r83mpa-mpc-1.2.0.tar.gz.drv:/nix/store/m2fi5ddvxkg1c9jncva4kslimnsn7ymg-mpfr-4.1.0.drv nix-archive-1(typeregularcontents�diff -ru -x '*~' gcc-4.8.3-orig/gcc/cppdefault.c gcc-4.8.3/gcc/cppdefault.c
--- gcc-4.8.3-orig/gcc/cppdefault.c 2013-01-10 21:38:27.000000000 +0100
+++ gcc-4.8.3/gcc/cppdefault.c 2014-08-18 16:20:32.893944536 +0200
@@ -35,6 +35,8 @@
# undef CROSS_INCLUDE_DIR
#endif
+#undef LOCAL_INCLUDE_DIR
+
const struct default_include cpp_include_defaults[]
#ifdef INCLUDE_DEFAULTS
= INCLUDE_DEFAULTS;
diff -ru -x '*~' gcc-4.8.3-orig/gcc/gcc.c gcc-4.8.3/gcc/gcc.c
--- gcc-4.8.3-orig/gcc/gcc.c 2014-03-23 12:30:57.000000000 +0100
+++ gcc-4.8.3/gcc/gcc.c 2014-08-18 13:19:32.689201690 +0200
@@ -1162,10 +1162,10 @@
/* Default prefixes to attach to command names. */
#ifndef STANDARD_STARTFILE_PREFIX_1
-#define STANDARD_STARTFILE_PREFIX_1 "/lib/"
+#define STANDARD_STARTFILE_PREFIX_1 ""
#endif
#ifndef STANDARD_STARTFILE_PREFIX_2
-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/"
+#define STANDARD_STARTFILE_PREFIX_2 ""
#endif
#ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */
)NIXE=/nix/store/pz03lhak99nzyyni72m14zsjzfjvqvr8-no-sys-dirs.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/qz3xm3v88flpwpsa06czmj3jzn01z9bx-texinfo-6.7.tar.xz","sha256","988403c1542d15ad044600b909997ba3079b10e03224c61188117f3676b02caa")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","texinfo-6.7.tar.xz"),("out","/nix/store/qz3xm3v88flpwpsa06czmj3jzn01z9bx-texinfo-6.7.tar.xz"),("outputHash","1aicn1v3czqii08wc91jw089n1x3gfchkf808q2as59dak0h714q"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/texinfo/texinfo-6.7.tar.xz"),("urls","https://ftpmirror.gnu.org/texinfo/texinfo-6.7.tar.xz")]))NIXEB/nix/store/5bz70pp9hwhmlmiya3r49fgzmnrs4xqj-texinfo-6.7.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/4gpi8j0b4lnl4kc9awrawv6q5a0shfhl-texinfo-6.7","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5bz70pp9hwhmlmiya3r49fgzmnrs4xqj-texinfo-6.7.tar.xz.drv",["out"]),("/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/pm7j1xsa1vmycd9208vql2cn6nz4zj5l-xz-5.2.5.drv",["bin"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","PERL=/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0/bin/perl"),("depsBuildBuild","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper- /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("installFlags","TEXMF=$(out)/texmf-dist"),("installTargets","install install-tex"),("name","texinfo-6.7"),("nativeBuildInputs",""),("out","/nix/store/4gpi8j0b4lnl4kc9awrawv6q5a0shfhl-texinfo-6.7"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/qz3xm3v88flpwpsa06czmj3jzn01z9bx-texinfo-6.7.tar.xz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","6.7")]))NIXE;/nix/store/vg1imdynd20mprl1w6mwp903rjm920zq-texinfo-6.7.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvB/nix/store/5bz70pp9hwhmlmiya3r49fgzmnrs4xqj-texinfo-6.7.tar.xz.drvM/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv8/nix/store/pm7j1xsa1vmycd9208vql2cn6nz4zj5l-xz-5.2.5.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/349f140sh7m12vy9mp1wkp58axyp06c9-which-2.21.tar.gz","sha256","f4a245b94124b377d8b49646bf421f9155d36aa7614b6ebf83705d3ffc76eaad")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","which-2.21.tar.gz"),("out","/nix/store/349f140sh7m12vy9mp1wkp58axyp06c9-which-2.21.tar.gz"),("outputHash","1bgafvy3ypbhhfznwjv1lxmd6mci3x1byilnnkc7gcr486wlb8pl"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/which/which-2.21.tar.gz"),("urls","https://ftpmirror.gnu.org/which/which-2.21.tar.gz")]))NIXEA/nix/store/01n3wxxw29wj2pkjqimmmjzv7pihzmd7-which-2.21.tar.gz.drv nix-archive-1(typeregularcontents@Derive([("out","/nix/store/wjl5j99r9rq8kwsr9wihdqxmlkdk0gg0-which-2.21","","")],[("/nix/store/01n3wxxw29wj2pkjqimmmjzv7pihzmd7-which-2.21.tar.gz.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","which-2.21"),("nativeBuildInputs",""),("out","/nix/store/wjl5j99r9rq8kwsr9wihdqxmlkdk0gg0-which-2.21"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/349f140sh7m12vy9mp1wkp58axyp06c9-which-2.21.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE:/nix/store/w0y2vg4hgs0bii44yppx3529m1ad4q63-which-2.21.drvA/nix/store/01n3wxxw29wj2pkjqimmmjzv7pihzmd7-which-2.21.tar.gz.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/x9v0hmr76dm68pijzldzxks01iqzag1z-isl-0.20.tar.xz","sha256","a5596a9fb8a5b365cb612e4b9628735d6e67e9178fae134a816ae195017e77aa")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","isl-0.20.tar.xz"),("out","/nix/store/x9v0hmr76dm68pijzldzxks01iqzag1z-isl-0.20.tar.xz"),("outputHash","1akpgq0rbqbah5517blg2zlnfvjxfcl9cjrfc75nbcx5p2gnlnd5"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://isl.gforge.inria.fr/isl-0.20.tar.xz"),("urls","http://isl.gforge.inria.fr/isl-0.20.tar.xz")]))NIXE?/nix/store/mksyw0bf46w7q8rb9202n0g7fpkhxfcf-isl-0.20.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv",["dev"]),("/nix/store/mksyw0bf46w7q8rb9202n0g7fpkhxfcf-isl-0.20.tar.xz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--enable-static --disable-shared"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontDisableStatic","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("mesonFlags","-Ddefault_library=static"),("name","isl-0.20"),("nativeBuildInputs",""),("out","/nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/x9v0hmr76dm68pijzldzxks01iqzag1z-isl-0.20.tar.xz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/x9p871l3j31c42jp7y6rncfqzcp1mnxq-isl-0.20.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv9/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv?/nix/store/mksyw0bf46w7q8rb9202n0g7fpkhxfcf-isl-0.20.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/2d3h5cp4fq2rpn7vmjchw3fnlnp703mb-gcc-9.3.0.tar.xz","sha256","71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","gcc-9.3.0.tar.xz"),("out","/nix/store/2d3h5cp4fq2rpn7vmjchw3fnlnp703mb-gcc-9.3.0.tar.xz"),("outputHash","1la2yy27ziasyf0jvzk58y1i5b5bq2h176qil550bxhifs39gqbi"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://bigsearcher.com/mirrors/gcc/releases/gcc-9.3.0/gcc-9.3.0.tar.xz"),("urls","https://bigsearcher.com/mirrors/gcc/releases/gcc-9.3.0/gcc-9.3.0.tar.xz")]))NIXE@/nix/store/yl784ij7vi17zhygv5rh9q1ihbqvcr6s-gcc-9.3.0.tar.xz.drv nix-archive-1(typeregularcontents$Derive([("info","/nix/store/cl2kay78g14lvxhmqazfnczgpdfz0518-gcc-9.3.0-info","",""),("lib","/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib","",""),("man","/nix/store/4lzqa89xy0vgnf8a07ry51ql2ihb3iim-gcc-9.3.0-man","",""),("out","/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0","","")],[("/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drv",["out"]),("/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv",["dev","out"]),("/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drv",["out"]),("/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/bgkd8xs4zhi5vxdwrq61xih0r5ylr5w5-libelf-0.8.13.drv",["out"]),("/nix/store/chrxdqzyqxsz6v5pv1z5iqbvj1qjdjf5-zlib-1.2.11.drv",["dev","out"]),("/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv",["dev","out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/m2fi5ddvxkg1c9jncva4kslimnsn7ymg-mpfr-4.1.0.drv",["dev","out"]),("/nix/store/mf5bh6gxfjpkplrgqbw118yhgl47yplf-libmpc-1.2.0.drv",["out"]),("/nix/store/vf2144qgqdiik6vcr4r303qp6x5hgndg-binutils-wrapper-2.31.1.drv",["out"]),("/nix/store/vg1imdynd20mprl1w6mwp903rjm920zq-texinfo-6.7.drv",["out"]),("/nix/store/w0y2vg4hgs0bii44yppx3529m1ad4q63-which-2.21.drv",["out"]),("/nix/store/x9p871l3j31c42jp7y6rncfqzcp1mnxq-isl-0.20.drv",["out"]),("/nix/store/yl784ij7vi17zhygv5rh9q1ihbqvcr6s-gcc-9.3.0.tar.xz.drv",["out"])],["/nix/store/5rmzq5ldn60cw87f30hjn6y9syf5crfd-builder.sh","/nix/store/pz03lhak99nzyyni72m14zsjzfjvqvr8-no-sys-dirs.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/5rmzq5ldn60cw87f30hjn6y9syf5crfd-builder.sh"],[("CPATH","/nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev/include"),("EXTRA_FLAGS_FOR_TARGET",""),("EXTRA_LDFLAGS_FOR_TARGET",""),("LIBRARY_PATH","/nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11/lib"),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("NIX_LDFLAGS",""),("NIX_NO_SELF_RPATH","1"),("buildFlags","profiledbootstrap"),("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev /nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev /nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0 /nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13 /nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1 /nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20 /nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-gmp-include=/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev/include --with-gmp-lib=/nix/store/45w7v0ahs6p0sswwpmaaflh8izxbzh73-gmp-6.2.0/lib --with-mpfr-include=/nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev/include --with-mpfr-lib=/nix/store/ldxj13laaggdhn345rvgxcyyk335xn2c-mpfr-4.1.0/lib --with-mpc=/nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0 --with-libelf=/nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13 --with-native-system-header-dir=/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include --enable-lto --disable-libstdcxx-pch --without-included-gettext --with-system-zlib --enable-static --enable-languages=c,c++ --disable-multilib --enable-plugin --with-isl=/nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20 --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu"),("configurePlatforms","build host"),("crossMingw",""),("crossStageStatic",""),("depsBuildBuild","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1 /nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12"),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontDisableStatic","1"),("dontStrip",""),("enableMultilib",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("hardeningDisable","format pie"),("info","/nix/store/cl2kay78g14lvxhmqazfnczgpdfz0518-gcc-9.3.0-info"),("installTargets","install-strip"),("is64bit","1"),("lib","/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("man","/nix/store/4lzqa89xy0vgnf8a07ry51ql2ihb3iim-gcc-9.3.0-man"),("name","gcc-9.3.0"),("nativeBuildInputs","/nix/store/4gpi8j0b4lnl4kc9awrawv6q5a0shfhl-texinfo-6.7 /nix/store/wjl5j99r9rq8kwsr9wihdqxmlkdk0gg0-which-2.21 /nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21 /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("noSysDirs","1"),("out","/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0"),("outputs","out man info lib"),("patches","/nix/store/pz03lhak99nzyyni72m14zsjzfjvqvr8-no-sys-dirs.patch"),("pname","gcc"),("postPatch","configureScripts=$(find . -name configure)\nfor configureScript in $configureScripts; do\n patchShebangs $configureScript\ndone\necho \"fixing the \\`GLIBC_DYNAMIC_LINKER', \\`UCLIBC_DYNAMIC_LINKER', and \\`MUSL_DYNAMIC_LINKER' macros...\"\n for header in \"gcc/config/\"*-gnu.h \"gcc/config/\"*\"/\"*.h\n do\n grep -q _DYNAMIC_LINKER \"$header\" || continue\n echo \" fixing \\`$header'...\"\n sed -i \"$header\" \\\n -e 's|define[[:blank:]]*\\([UCG]\\+\\)LIBC_DYNAMIC_LINKER\\([0-9]*\\)[[:blank:]]\"\\([^\\\"]\\+\\)\"$|define \\1LIBC_DYNAMIC_LINKER\\2 \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\\3\"|g' \\\n -e 's|define[[:blank:]]*MUSL_DYNAMIC_LINKER\\([0-9]*\\)[[:blank:]]\"\\([^\\\"]\\+\\)\"$|define MUSL_DYNAMIC_LINKER\\1 \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\\2\"|g'\n done\n"),("preConfigure",""),("prePatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("src","/nix/store/2d3h5cp4fq2rpn7vmjchw3fnlnp703mb-gcc-9.3.0.tar.xz"),("staticCompiler",""),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","9.3.0")]))NIXE9/nix/store/5yxpygn1flzg1c194gailfgfd4ffs5v5-gcc-9.3.0.drv=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv</nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drv6/nix/store/5rmzq5ldn60cw87f30hjn6y9syf5crfd-builder.sh:/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drvM/nix/store/8swlmp5yrzjk3qq8wy5v0lafrkazgrym-bootstrap-stage3-gcc-wrapper-.drvM/nix/store/9wrxbsxyv3v92hn9h52q825x0b4mj30f-bootstrap-stage3-stdenv-linux.drv=/nix/store/bgkd8xs4zhi5vxdwrq61xih0r5ylr5w5-libelf-0.8.13.drv;/nix/store/chrxdqzyqxsz6v5pv1z5iqbvj1qjdjf5-zlib-1.2.11.drv9/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv:/nix/store/m2fi5ddvxkg1c9jncva4kslimnsn7ymg-mpfr-4.1.0.drv</nix/store/mf5bh6gxfjpkplrgqbw118yhgl47yplf-libmpc-1.2.0.drv=/nix/store/pz03lhak99nzyyni72m14zsjzfjvqvr8-no-sys-dirs.patchG/nix/store/vf2144qgqdiik6vcr4r303qp6x5hgndg-binutils-wrapper-2.31.1.drv;/nix/store/vg1imdynd20mprl1w6mwp903rjm920zq-texinfo-6.7.drv:/nix/store/w0y2vg4hgs0bii44yppx3529m1ad4q63-which-2.21.drv8/nix/store/x9p871l3j31c42jp7y6rncfqzcp1mnxq-isl-0.20.drv@/nix/store/yl784ij7vi17zhygv5rh9q1ihbqvcr6s-gcc-9.3.0.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/pk83gh467gnck2ryvhfxai4gbzzxjy6s-bootstrap-stage4-gcc-wrapper-9.3.0-info","",""),("man","/nix/store/qdmch8l2z24kb1pmx4hibnfj4lyaay8g-bootstrap-stage4-gcc-wrapper-9.3.0-man","",""),("out","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0","","")],[("/nix/store/0d9243zx1sxs07sf25dr09c2q7h3d5k0-expand-response-params.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5yxpygn1flzg1c194gailfgfd4ffs5v5-gcc-9.3.0.drv",["info","lib","man","out"]),("/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"]),("/nix/store/vf2144qgqdiik6vcr4r303qp6x5hgndg-binutils-wrapper-2.31.1.drv",["out"])],["/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh","/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cc","/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("expand-response-params","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params"),("expandResponseParams","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("info","/nix/store/pk83gh467gnck2ryvhfxai4gbzzxjy6s-bootstrap-stage4-gcc-wrapper-9.3.0-info"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $cc > $out/nix-support/orig-cc\n\nccPath=\"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0/bin\"\nfor bbin in $bintools/bin/*; do\n mkdir -p \"$out/bin\"\n ln -s \"$bbin\" \"$out/bin/$(basename $bbin)\"\ndone\nexport named_cc=cc\nexport named_cxx=c++\n\nif [ -e $ccPath/gcc ]; then\n wrap gcc $wrapper $ccPath/gcc\n ln -s gcc $out/bin/cc\n export named_cc=gcc\n export named_cxx=g++\nelif [ -e $ccPath/clang ]; then\n wrap clang $wrapper $ccPath/clang\n ln -s clang $out/bin/cc\n export named_cc=clang\n export named_cxx=clang++\nfi\n\nif [ -e $ccPath/g++ ]; then\n wrap g++ $wrapper $ccPath/g++\n ln -s g++ $out/bin/c++\nelif [ -e $ccPath/clang++ ]; then\n wrap clang++ $wrapper $ccPath/clang++\n ln -s clang++ $out/bin/c++\nfi\n\nif [ -e $ccPath/cpp ]; then\n wrap cpp $wrapper $ccPath/cpp\nfi\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("man","/nix/store/qdmch8l2z24kb1pmx4hibnfj4lyaay8g-bootstrap-stage4-gcc-wrapper-9.3.0-man"),("name","bootstrap-stage4-gcc-wrapper-9.3.0"),("nativeBuildInputs",""),("out","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("outputs","out man info"),("patches",""),("pname","bootstrap-stage4-gcc-wrapper"),("postFixup","touch \"$out/nix-support/cc-cflags\"\ntouch \"$out/nix-support/cc-ldflags\"\nif [[ -f \"$bintools/nix-support/dynamic-linker\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker\" \"$out/nix-support\"\nfi\nif [[ -f \"$bintools/nix-support/dynamic-linker-m32\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker-m32\" \"$out/nix-support\"\nfi\ntouch \"$out/nix-support/libc-cflags\"\ntouch \"$out/nix-support/libc-ldflags\"\necho \"-B/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/\" >> $out/nix-support/libc-crt1-cflags\necho \"-idirafter /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include\" >> $out/nix-support/libc-cflags\nfor dir in \"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0\"/lib/gcc/*/*/include-fixed; do\n echo '-idirafter' ${dir} >> $out/nix-support/libc-cflags\ndone\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\ntouch \"$out/nix-support/libcxx-cxxflags\"\ntouch \"$out/nix-support/libcxx-ldflags\"\nif [ -e \"/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\" -a ! -L \"/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\" ]; then\n ccLDFlags+=\" -L/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\"\n ccCFlags+=\" -B/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\"\nfi\nccLDFlags+=\" -L/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib\"\nccCFlags+=\" -B/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib\"\n\necho \"$ccLDFlags\" >> $out/nix-support/cc-ldflags\necho \"$ccCFlags\" >> $out/nix-support/cc-cflags\nln -s /nix/store/4lzqa89xy0vgnf8a07ry51ql2ihb3iim-gcc-9.3.0-man $man\nln -s /nix/store/cl2kay78g14lvxhmqazfnczgpdfz0518-gcc-9.3.0-info $info\nexport hardening_unsupported_flags=\"\"\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","9.3.0"),("wrapper","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh"),("wrapperName","CC_WRAPPER")]))NIXER/nix/store/v3cml51dcs43i1psd7s76z6bi35p3j9n-bootstrap-stage4-gcc-wrapper-9.3.0.drv F/nix/store/0d9243zx1sxs07sf25dr09c2q7h3d5k0-expand-response-params.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh9/nix/store/5yxpygn1flzg1c194gailfgfd4ffs5v5-gcc-9.3.0.drv:/nix/store/87qkjx3vgl7pi6s15ix1s6bm0yp2myil-glibc-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bashG/nix/store/vf2144qgqdiik6vcr4r303qp6x5hgndg-binutils-wrapper-2.31.1.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents� Derive([("out","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux","","")],[("/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/pm7j1xsa1vmycd9208vql2cn6nz4zj5l-xz-5.2.5.drv",["bin"]),("/nix/store/v3cml51dcs43i1psd7s76z6bi35p3j9n-bootstrap-stage4-gcc-wrapper-9.3.0.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12 /nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage4-stdenv-linux"),("out","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh8/nix/store/pm7j1xsa1vmycd9208vql2cn6nz4zj5l-xz-5.2.5.drvA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.shR/nix/store/v3cml51dcs43i1psd7s76z6bi35p3j9n-bootstrap-stage4-gcc-wrapper-9.3.0.drv nix-archive-1(typeregularcontentsDerive([("bin","/nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin","",""),("dev","/nix/store/hghrrj3fnxa1iqknkm5lahs2zlmasfpg-xz-5.2.5-dev","",""),("doc","/nix/store/7rs01lxz3c1la9h0k69sw1vcacp2ks8b-xz-5.2.5-doc","",""),("man","/nix/store/z8bv1ahfa7ndizkpfj35p9xf4b2gh8va-xz-5.2.5-man","",""),("out","/nix/store/y41vgrya42wlzq8zpywkccaiknzpcraz-xz-5.2.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv",["out"]),("/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/hghrrj3fnxa1iqknkm5lahs2zlmasfpg-xz-5.2.5-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/7rs01lxz3c1la9h0k69sw1vcacp2ks8b-xz-5.2.5-doc"),("man","/nix/store/z8bv1ahfa7ndizkpfj35p9xf4b2gh8va-xz-5.2.5-man"),("name","xz-5.2.5"),("nativeBuildInputs",""),("out","/nix/store/y41vgrya42wlzq8zpywkccaiknzpcraz-xz-5.2.5"),("outputs","bin dev out man doc"),("patches",""),("postInstall","rm -rf $out/share/doc"),("preCheck","# Tests have a /bin/sh dependency...\npatchShebangs tests\n"),("preConfigure","CONFIG_SHELL=/bin/sh"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/00jaqd9g73bwzb53dfv9qvfy3yz3hjaj-xz-5.2.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/rp872px5z7n5kvb7lq6w6f669pbzls8b-linux-5.5.tar.xz","sha256","a6fbd4ee903c128367892c2393ee0d9657b6ed3ea90016d4dc6f1f6da20b2330")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","linux-5.5.tar.xz"),("out","/nix/store/rp872px5z7n5kvb7lq6w6f669pbzls8b-linux-5.5.tar.xz"),("outputHash","0c131fi6s7vgvka1c0597vnvcmwn1pp968rci5kq64iwj3pd9yx6"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.tar.xz"),("urls","https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.tar.xz")]))NIXE@/nix/store/lkkwk7nhx4n5iih7b8w2j22isi3fn6zs-linux-5.5.tar.xz.drv nix-archive-1(typeregularcontents Derive([("out","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/lkkwk7nhx4n5iih7b8w2j22isi3fn6zs-linux-5.5.tar.xz.drv",["out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"])],["/nix/store/69lyjyca86317hdsc1rwf3ahn7s5kiyn-no-relocs.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("ARCH","x86_64"),("buildInputs",""),("buildPhase","make mrproper $makeFlags\nmake headers $makeFlags\n"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("checkPhase","make headers_check $makeFlags\n"),("configureFlags",""),("depsBuildBuild","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("extraIncludeDirs",""),("hardeningDisable",""),("installPhase","mkdir -p $out\ncp -r usr/include $out\nfind $out -type f ! -name '*.h' -delete\nmkdir -p $out/include/config\necho \"5.5-default\" > $out/include/config/kernel.release\n"),("makeFlags","SHELL=bash cc-version:=9999 cc-fullversion:=999999 HOSTCC:=$(CC_FOR_BUILD) HOSTCXX:=$(CXX_FOR_BUILD)"),("name","linux-headers-5.5"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0 "),("out","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5"),("outputs","out"),("patches","/nix/store/69lyjyca86317hdsc1rwf3ahn7s5kiyn-no-relocs.patch"),("pname","linux-headers"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/rp872px5z7n5kvb7lq6w6f669pbzls8b-linux-5.5.tar.xz"),("stdenv","/nix/store/b8k5rpy35v78qqh33dbl7hw061d8539v-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","5.5")]))NIXEA/nix/store/r3yhr5kjkzsi7b1428bdpwfabx2san7n-linux-headers-5.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv;/nix/store/69lyjyca86317hdsc1rwf3ahn7s5kiyn-no-relocs.patch>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/dzqbhgjn4mjjcmg5g1ab11fs9j646nlv-bootstrap-stage2-stdenv-linux.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv@/nix/store/lkkwk7nhx4n5iih7b8w2j22isi3fn6zs-linux-5.5.tar.xz.drvM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv nix-archive-1(typeregularcontents�Derive([("bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin","",""),("debug","/nix/store/87bv5i7g3amybckdwby4c6pz49nw0mib-glibc-2.32-debug","",""),("dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev","",""),("out","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32","",""),("static","/nix/store/xlyj2087fragaqjww9gz6jfpj4fkfc7j-glibc-2.32-static","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/1zi0k7y01rhqr2gfqb42if0icswg65sj-locale-C.diff.drv",["out"]),("/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drv",["out"]),("/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drv",["out"]),("/nix/store/kxx3xjyjbfkvppjx0dss9g2kqp0cha55-python3-minimal-3.8.6.drv",["out"]),("/nix/store/l5zr5m1agvvnic49fg6qc44g5fgj3la1-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb.drv",["out"]),("/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv",["out"]),("/nix/store/r3yhr5kjkzsi7b1428bdpwfabx2san7n-linux-headers-5.5.drv",["out"]),("/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drv",["out"]),("/nix/store/vpz8r54w9rh6cr7c840yczh1bp7m9rij-glibc-2.32.tar.xz.drv",["out"]),("/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drv",["out"])],["/nix/store/5212825a2npxaf7qd81sxfrqq6219rlx-dont-use-system-ld-so-cache.patch","/nix/store/7kw224hdyxd7115lrqh9a4dv2x8msq2s-fix-x64-abi.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh","/nix/store/mnglr8rr7nl444h7p50ysyq8qd0fm1lm-dont-use-system-ld-so-preload.patch","/nix/store/pp29isd0nvy4jrm9q2f92pjlc83xwa0i-nix-locale-archive.patch","/nix/store/xkd50xxii6k7l1kmw4l5x6xzbhamcs87-allow-kernel-2.6.32.patch","/nix/store/za0pg7fmysrcwrqcal26fnmzw6vycgdn-fix_path_attribute_in_getconf.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("BASH_SHELL","/bin/sh"),("NIX_CFLAGS_COMPILE",""),("NIX_HARDENING_ENABLE","pic strictoverflow format relro bindnow"),("NIX_NO_SELF_RPATH","1"),("bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("buildInputs","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","-C --enable-add-ons --sysconfdir=/etc --enable-stackguard-randomization --with-headers=/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5/include --disable-profile --enable-kernel=3.2.0"),("debug","/nix/store/87bv5i7g3amybckdwby4c6pz49nw0mib-glibc-2.32-debug"),("depsBuildBuild","/nix/store/59xx2f25i35rp3ga6fz4nsw8fp362q9p-bootstrap-stage2-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("hardeningDisable","stackprotector fortify"),("installFlags","sysconfdir=$(out)/etc"),("is64bit","1"),("linuxHeaders","/nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5"),("name","glibc-2.32"),("nativeBuildInputs","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3 /nix/store/vpm5nzr3aqqgxxs1v5ck4ji89f970yv3-python3-minimal-3.8.6 /nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh"),("out","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("outputs","out bin dev static debug"),("patches","/nix/store/pp29isd0nvy4jrm9q2f92pjlc83xwa0i-nix-locale-archive.patch /nix/store/5212825a2npxaf7qd81sxfrqq6219rlx-dont-use-system-ld-so-cache.patch /nix/store/mnglr8rr7nl444h7p50ysyq8qd0fm1lm-dont-use-system-ld-so-preload.patch /nix/store/za0pg7fmysrcwrqcal26fnmzw6vycgdn-fix_path_attribute_in_getconf.patch /nix/store/xkd50xxii6k7l1kmw4l5x6xzbhamcs87-allow-kernel-2.6.32.patch /nix/store/3l70d7kcfsh91w6792h4fqs4kjbq17py-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb /nix/store/nqa9d4yxz1l2cgswzqr1pkm4jfrksm0q-locale-C.diff /nix/store/7kw224hdyxd7115lrqh9a4dv2x8msq2s-fix-x64-abi.patch"),("postConfigure","# Hack: get rid of the `-static' flag set by the bootstrap stdenv.\n# This has to be done *after* `configure' because it builds some\n# test binaries.\nexport NIX_CFLAGS_LINK=\nexport NIX_LDFLAGS_BEFORE=\n\nexport NIX_DONT_SET_RPATH=1\nunset CFLAGS\n\n# Apparently --bindir is not respected.\nmakeFlagsArray+=(\"bindir=$bin/bin\" \"sbindir=$bin/sbin\" \"rootsbindir=$bin/sbin\")\n"),("postInstall","echo SUPPORTED-LOCALES=C.UTF-8/UTF-8 > ../glibc-2*/localedata/SUPPORTED\nmake -j${NIX_BUILD_CORES:-1} -l${NIX_BUILD_CORES:-1} localedata/install-locales\n\ntest -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache\n\nif test -n \"$linuxHeaders\"; then\n # Include the Linux kernel headers in Glibc, except the `scsi'\n # subdirectory, which Glibc provides itself.\n (cd $dev/include && \\\n ln -sv $(ls -d $linuxHeaders/include/* | grep -v scsi\\$) .)\nfi\n\n# Fix for NIXOS-54 (ldd not working on x86_64). Make a symlink\n# \"lib64\" to \"lib\".\nif test -n \"$is64bit\"; then\n ln -s lib $out/lib64\nfi\n\n# Get rid of more unnecessary stuff.\nrm -rf $out/var $bin/bin/sln\n\nfor i in \"$out\"/lib/*.a; do\n [ \"$i\" = \"$out/lib/libm.a\" ] || $STRIP -S \"$i\"\ndone\n\n# Put libraries for static linking in a separate output. Note\n# that libc_nonshared.a and libpthread_nonshared.a are required\n# for dynamically-linked applications.\nmkdir -p $static/lib\nmv $out/lib/*.a $static/lib\nmv $static/lib/lib*_nonshared.a $out/lib\n# Some of *.a files are linker scripts where moving broke the paths.\nsed \"/^GROUP/s|$out/lib/lib|$static/lib/lib|g\" \\\n -i \"$static\"/lib/*.a\n\n# Work around a Nix bug: hard links across outputs cause a build failure.\ncp $bin/bin/getconf $bin/bin/getconf_\nmv $bin/bin/getconf_ $bin/bin/getconf\n"),("postPatch","# Needed for glibc to build with the gnumake 3.82\n# http://comments.gmane.org/gmane.linux.lfs.support/31227\nsed -i 's/ot \\$/ot:\\n\\ttouch $@\\n$/' manual/Makefile\n\n# nscd needs libgcc, and we don't want it dynamically linked\n# because we don't want it to depend on bootstrap-tools libs.\necho \"LDFLAGS-nscd += -static-libgcc\" >> nscd/Makefile\n\n# Ensure that libidn2 is found.\npatch -p 1 <<EOF\n--- a/inet/idna.c\n+++ b/inet/idna.c\n@@ -25,1 +25,1 @@\n-#define LIBIDN2_SONAME \"libidn2.so.0\"\n+#define LIBIDN2_SONAME \"/nix/store/g4gk96z9i98hyyf2j4mzn8vvws6gb7i3-libidn2-2.3.0/lib/libidn2.so.0\"\nEOF\n"),("preBuild",""),("preConfigure","export PWD_P=$(type -tP pwd)\nfor i in configure io/ftwtest-sh; do\n # Can't use substituteInPlace here because replace hasn't been\n # built yet in the bootstrap.\n sed -i \"$i\" -e \"s^/bin/pwd^$PWD_P^g\"\ndone\n\nmkdir ../build\ncd ../build\n\nconfigureScript=\"`pwd`/../$sourceRoot/configure\"\n\nmakeFlags=\"$makeFlags BUILD_LDFLAGS=-Wl,-rpath,/nix/store/k9c0l20ap83dk3fknkmipzi0gb7mnzd5-bootstrap-stage0-glibc/lib\"\n\n\n"),("preInstall","if [ -f /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib/libgcc_s.so.1 ]; then\n mkdir -p $out/lib\n cp /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib/libgcc_s.so.1 $out/lib/libgcc_s.so.1\n # the .so It used to be a symlink, but now it is a script\n cp -a /nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib/libgcc_s.so $out/lib/libgcc_s.so\nfi\n"),("profilingLibraries",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("separateDebugInfo","1"),("src","/nix/store/yl0acs9vzng0cd4qfdcgb3zpwjm034nw-glibc-2.32.tar.xz"),("static","/nix/store/xlyj2087fragaqjww9gz6jfpj4fkfc7j-glibc-2.32-static"),("stdenv","/nix/store/nzrc4rb7ggzrzmyk56dfy5hdgrabgpqm-bootstrap-stage2-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","2.32")]))NIXE:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv=/nix/store/1zi0k7y01rhqr2gfqb42if0icswg65sj-locale-C.diff.drv=/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drvM/nix/store/5212825a2npxaf7qd81sxfrqq6219rlx-dont-use-system-ld-so-cache.patch=/nix/store/7kw224hdyxd7115lrqh9a4dv2x8msq2s-fix-x64-abi.patch>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shB/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.shM/nix/store/jlsbqm2rdfkgw7gwgzswvm12ic46k515-bootstrap-stage2-stdenv-linux.drvE/nix/store/kxx3xjyjbfkvppjx0dss9g2kqp0cha55-python3-minimal-3.8.6.drv�/nix/store/l5zr5m1agvvnic49fg6qc44g5fgj3la1-glibc-reinstate-prlimit64-fallback.patch?id=eab07e78b691ae7866267fc04d31c7c3ad6b0eeb.drvO/nix/store/mnglr8rr7nl444h7p50ysyq8qd0fm1lm-dont-use-system-ld-so-preload.patch;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drvD/nix/store/pp29isd0nvy4jrm9q2f92pjlc83xwa0i-nix-locale-archive.patchA/nix/store/r3yhr5kjkzsi7b1428bdpwfabx2san7n-linux-headers-5.5.drvM/nix/store/sh8y6ybg0la31hang3ssz4ik17g040gb-bootstrap-stage2-gcc-wrapper-.drvA/nix/store/vpz8r54w9rh6cr7c840yczh1bp7m9rij-glibc-2.32.tar.xz.drvF/nix/store/x8acjiqqrzvvb3j4lich93yn5792a2ss-bootstrap-stage0-glibc.drvE/nix/store/xkd50xxii6k7l1kmw4l5x6xzbhamcs87-allow-kernel-2.6.32.patchO/nix/store/za0pg7fmysrcwrqcal26fnmzw6vycgdn-fix_path_attribute_in_getconf.patch nix-archive-1(typeregularcontents�Derive([("info","/nix/store/04fnvpbrs1w614syy05ygc13509pq8x7-binutils-wrapper-2.31.1-info","",""),("man","/nix/store/9cp8g92qw7kwqr9088wqqfqps4kynh91-binutils-wrapper-2.31.1-man","",""),("out","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drv",["out"]),("/nix/store/j609knn4ghacd4dj6ij0kbmax842jp40-bootstrap-stage1-stdenv-linux.drv",["out"]),("/nix/store/rgdrg9vvx9idxnjmxjhczaq0xin6pkqq-binutils-2.31.1.drv",["info","man","out"])],["/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh","/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools_bin","/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("dynamicLinker","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/ld-linux-x86-64.so.2"),("emulation","elf64-x86-64"),("expand-response-params","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params"),("expandResponseParams","/nix/store/bcqzbb8k1pam2x0rzjicxwx8gr4ln1x0-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("info","/nix/store/04fnvpbrs1w614syy05ygc13509pq8x7-binutils-wrapper-2.31.1-info"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $bintools_bin > $out/nix-support/orig-bintools\n\nldPath=\"/nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1/bin\"\nif [ -e $ldPath/as ]; then\n ln -s $ldPath/as $out/bin/as\nfi\n\nwrap ld /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh ${ld:-$ldPath/ld}\n\nfor variant in ld.gold ld.bfd ld.lld; do\n local underlying=$ldPath/$variant\n [[ -e \"$underlying\" ]] || continue\n wrap $variant /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh $underlying\ndone\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("man","/nix/store/9cp8g92qw7kwqr9088wqqfqps4kynh91-binutils-wrapper-2.31.1-man"),("name","binutils-wrapper-2.31.1"),("nativeBuildInputs",""),("out","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("outputs","out man info"),("patches",""),("pname","binutils-wrapper"),("postFixup","touch \"$out/nix-support/libc-ldflags\"\necho \"-L/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib\" >> $out/nix-support/libc-ldflags\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\nif [[ -z ${dynamicLinker+x} ]]; then\n echo \"Don't know the name of the dynamic linker for platform 'x86_64-unknown-linux-gnu', so guessing instead.\" >&2\n local dynamicLinker=\"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/ld*.so.?\"\nfi\ndynamicLinker=($dynamicLinker)\n\ncase ${#dynamicLinker[@]} in\n 0) echo \"No dynamic linker found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\n 1) echo \"Using dynamic linker: '$dynamicLinker'\" >&2;;\n *) echo \"Multiple dynamic linkers found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\nesac\n\nif [ -n \"${dynamicLinker-}\" ]; then\n echo $dynamicLinker > $out/nix-support/dynamic-linker\n\nif [ -e /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/32/ld-linux.so.2 ]; then\n echo /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/32/ld-linux.so.2 > $out/nix-support/dynamic-linker-m32\nfi\necho -dynamic-linker \"$dynamicLinker\" >> $out/nix-support/libc-ldflags-before\nfi\nprintWords /nix/store/sxp0zbc9s0gmxy63z9ibdxcl153zblb2-binutils-2.31.1 /nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin > $out/nix-support/propagated-user-env-packages\nln -s /nix/store/231mn1zs79vmyhj571a964pszikibw99-binutils-2.31.1-man $man\nln -s /nix/store/yc16qgl8gq429wf0gh0lk940w16kg3d4-binutils-2.31.1-info $info\nexport hardening_unsupported_flags=\"\"\nif [[ \"$($ldPath/ld -z now 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" bindnow\"\nfi\nif [[ \"$($ldPath/ld -z relro 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" relro\"\nfi\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/d1ww955lsl8ipb7iabylyij2wwjq1bqc-bootstrap-stage1-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","2.31.1"),("wrapperName","BINTOOLS_WRAPPER")]))NIXEG/nix/store/zwbcm8cyz49d9bimz66y77b9ncm2cr49-binutils-wrapper-2.31.1.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv8/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh9/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.shF/nix/store/gfvxfqlcfpv02xsdwsaj5ynjzbvmvsa3-expand-response-params.drvM/nix/store/j609knn4ghacd4dj6ij0kbmax842jp40-bootstrap-stage1-stdenv-linux.drv5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash</nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh?/nix/store/rgdrg9vvx9idxnjmxjhczaq0xin6pkqq-binutils-2.31.1.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents-Derive([("out","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"]),("/nix/store/sm2b9m5kha0b5sm80sq15iwdmbqicjgi-expand-response-params.drv",["out"]),("/nix/store/zwbcm8cyz49d9bimz66y77b9ncm2cr49-binutils-wrapper-2.31.1.drv",["out"])],["/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh","/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cc","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("expand-response-params","/nix/store/n1zg4dzpfkq1hnfixg7wasg2jfq74pqy-expand-response-params"),("expandResponseParams","/nix/store/n1zg4dzpfkq1hnfixg7wasg2jfq74pqy-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $cc > $out/nix-support/orig-cc\n\nccPath=\"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin\"\nfor bbin in $bintools/bin/*; do\n mkdir -p \"$out/bin\"\n ln -s \"$bbin\" \"$out/bin/$(basename $bbin)\"\ndone\nexport named_cc=cc\nexport named_cxx=c++\n\nif [ -e $ccPath/gcc ]; then\n wrap gcc $wrapper $ccPath/gcc\n ln -s gcc $out/bin/cc\n export named_cc=gcc\n export named_cxx=g++\nelif [ -e $ccPath/clang ]; then\n wrap clang $wrapper $ccPath/clang\n ln -s clang $out/bin/cc\n export named_cc=clang\n export named_cxx=clang++\nfi\n\nif [ -e $ccPath/g++ ]; then\n wrap g++ $wrapper $ccPath/g++\n ln -s g++ $out/bin/c++\nelif [ -e $ccPath/clang++ ]; then\n wrap clang++ $wrapper $ccPath/clang++\n ln -s clang++ $out/bin/c++\nfi\n\nif [ -e $ccPath/cpp ]; then\n wrap cpp $wrapper $ccPath/cpp\nfi\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("name","bootstrap-stage3-gcc-wrapper-"),("nativeBuildInputs",""),("out","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("outputs","out"),("patches",""),("pname","bootstrap-stage3-gcc-wrapper"),("postFixup","touch \"$out/nix-support/cc-cflags\"\ntouch \"$out/nix-support/cc-ldflags\"\nif [[ -f \"$bintools/nix-support/dynamic-linker\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker\" \"$out/nix-support\"\nfi\nif [[ -f \"$bintools/nix-support/dynamic-linker-m32\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker-m32\" \"$out/nix-support\"\nfi\ntouch \"$out/nix-support/libc-cflags\"\ntouch \"$out/nix-support/libc-ldflags\"\necho \"-B/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/\" >> $out/nix-support/libc-crt1-cflags\necho \"-idirafter /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include\" >> $out/nix-support/libc-cflags\nfor dir in \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools\"/lib/gcc/*/*/include-fixed; do\n echo '-idirafter' ${dir} >> $out/nix-support/libc-cflags\ndone\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\ntouch \"$out/nix-support/libcxx-cxxflags\"\ntouch \"$out/nix-support/libcxx-ldflags\"\nif [ -e \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" -a ! -L \"/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\" ]; then\n ccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\n ccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib64\"\nfi\nccLDFlags+=\" -L/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\nccCFlags+=\" -B/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/lib\"\n\necho \"$ccLDFlags\" >> $out/nix-support/cc-ldflags\necho \"$ccCFlags\" >> $out/nix-support/cc-cflags\nexport hardening_unsupported_flags=\"\"\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version",""),("wrapper","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh"),("wrapperName","CC_WRAPPER")]))NIXEM/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bashF/nix/store/sm2b9m5kha0b5sm80sq15iwdmbqicjgi-expand-response-params.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bashG/nix/store/zwbcm8cyz49d9bimz66y77b9ncm2cr49-binutils-wrapper-2.31.1.drv nix-archive-1(typeregularcontents# Derive([("out","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux","","")],[("/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12 /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage3-stdenv-linux"),("out","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shM/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drvF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev","",""),("info","/nix/store/jrmh8079c47pi090ycb00vf9l4zwn9hb-gmp-6.2.0-info","",""),("out","/nix/store/45w7v0ahs6p0sswwpmaaflh8izxbzh73-gmp-6.2.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/pg06sapvblkmmff11jw7wydgc9szc641-gmp-6.2.0.tar.bz2.drv",["out"]),("/nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--with-pic --enable-cxx --enable-fat --build=x86_64-unknown-linux-gnu --enable-static --disable-shared"),("depsBuildBuild","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev"),("doCheck","1"),("doInstallCheck",""),("dontDisableStatic","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("info","/nix/store/jrmh8079c47pi090ycb00vf9l4zwn9hb-gmp-6.2.0-info"),("mesonFlags","-Ddefault_library=static"),("name","gmp-6.2.0"),("nativeBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("out","/nix/store/45w7v0ahs6p0sswwpmaaflh8izxbzh73-gmp-6.2.0"),("outputs","out dev info"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/37kc4p9d6fgfxyvc6r1zjb3sjfbgbi02-gmp-6.2.0.tar.bz2"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE9/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drvM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drvA/nix/store/pg06sapvblkmmff11jw7wydgc9szc641-gmp-6.2.0.tar.bz2.drv</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev","",""),("doc","/nix/store/gnghdh3x39dwbgxhzizsr4d7kqgwpid5-mpfr-4.1.0-doc","",""),("info","/nix/store/k45sxg0cvpw1adns69v8jwa062xs84jg-mpfr-4.1.0-info","",""),("out","/nix/store/ldxj13laaggdhn345rvgxcyyk335xn2c-mpfr-4.1.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv",["dev"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/lv1hwcmry75256awiysfa7mb93a0c49c-mpfr-4.1.0.tar.xz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--with-pic --enable-static --disable-shared"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/gnghdh3x39dwbgxhzizsr4d7kqgwpid5-mpfr-4.1.0-doc"),("dontDisableStatic","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("info","/nix/store/k45sxg0cvpw1adns69v8jwa062xs84jg-mpfr-4.1.0-info"),("mesonFlags","-Ddefault_library=static"),("name","mpfr-4.1.0"),("nativeBuildInputs",""),("out","/nix/store/ldxj13laaggdhn345rvgxcyyk335xn2c-mpfr-4.1.0"),("outputs","out dev doc info"),("patches",""),("pname","mpfr"),("propagatedBuildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev"),("propagatedNativeBuildInputs",""),("src","/nix/store/nl9ycnfgc3j36kv95ljhvrgj6m8nblw9-mpfr-4.1.0.tar.xz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.1.0")]))NIXE:/nix/store/cx3g28g8g72lz6ssjssbq2cpcllgqlwf-mpfr-4.1.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv9/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drvA/nix/store/lv1hwcmry75256awiysfa7mb93a0c49c-mpfr-4.1.0.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv",["dev"]),("/nix/store/cx3g28g8g72lz6ssjssbq2cpcllgqlwf-mpfr-4.1.0.drv",["dev"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/l9b8lmsw6h22ccrk819wz08a31r83mpa-mpc-1.2.0.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev /nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--enable-static --disable-shared"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("dontDisableStatic","1"),("mesonFlags","-Ddefault_library=static"),("name","libmpc-1.2.0"),("nativeBuildInputs",""),("out","/nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0"),("outputs","out"),("patches",""),("pname","libmpc"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/zqlka7nngksil7r0p0z8xd8x91d7rnm5-mpc-1.2.0.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.2.0")]))NIXE</nix/store/01kg491ilpq5dkqilkmwc1d55djnwwnd-libmpc-1.2.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv9/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh:/nix/store/cx3g28g8g72lz6ssjssbq2cpcllgqlwf-mpfr-4.1.0.drvM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv@/nix/store/l9b8lmsw6h22ccrk819wz08a31r83mpa-mpc-1.2.0.tar.gz.drv nix-archive-1(typeregularcontents�source $stdenv/setup
source $mirrorsFile
curlVersion=$(curl -V | head -1 | cut -d' ' -f2)
# Curl flags to handle redirects, not use EPSV, handle cookies for
# servers to need them during redirects, and work on SSL without a
# certificate (this isn't a security problem because we check the
# cryptographic hash of the output anyway).
curl=(
curl
--location
--max-redirs 20
--retry 3
--disable-epsv
--cookie-jar cookies
--user-agent "curl/$curlVersion Nixpkgs/$nixpkgsVersion"
)
if ! [ -f "$SSL_CERT_FILE" ]; then
curl+=(--insecure)
fi
curl+=(
$curlOpts
$NIX_CURL_FLAGS
)
downloadedFile="$out"
if [ -n "$downloadToTemp" ]; then downloadedFile="$TMPDIR/file"; fi
tryDownload() {
local url="$1"
echo
header "trying $url"
local curlexit=18;
success=
# if we get error code 18, resume partial download
while [ $curlexit -eq 18 ]; do
# keep this inside an if statement, since on failure it doesn't abort the script
if "${curl[@]}" -C - --fail "$url" --output "$downloadedFile"; then
success=1
break
else
curlexit=$?;
fi
done
}
finish() {
local skipPostFetch="$1"
set +o noglob
if [[ $executable == "1" ]]; then
chmod +x $downloadedFile
fi
if [ -z "$skipPostFetch" ]; then
runHook postFetch
fi
exit 0
}
tryHashedMirrors() {
if test -n "$NIX_HASHED_MIRRORS"; then
hashedMirrors="$NIX_HASHED_MIRRORS"
fi
for mirror in $hashedMirrors; do
url="$mirror/$outputHashAlgo/$outputHash"
if "${curl[@]}" --retry 0 --connect-timeout "${NIX_CONNECT_TIMEOUT:-15}" \
--fail --silent --show-error --head "$url" \
--write-out "%{http_code}" --output /dev/null > code 2> log; then
tryDownload "$url"
# We skip postFetch here, because hashed-mirrors are
# already content addressed. So if $outputHash is in the
# hashed-mirror, changes from ‘postFetch’ would already be
# made. So, running postFetch will end up applying the
# change /again/, which we don’t want.
if test -n "$success"; then finish skipPostFetch; fi
else
# Be quiet about 404 errors, which we interpret as the file
# not being present on this particular mirror.
if test "$(cat code)" != 404; then
echo "error checking the existence of $url:"
cat log
fi
fi
done
}
# URL list may contain ?. No glob expansion for that, please
set -o noglob
urls2=
for url in $urls; do
if test "${url:0:9}" != "mirror://"; then
urls2="$urls2 $url"
else
url2="${url:9}"; echo "${url2/\// }" > split; read site fileName < split
#varName="mirror_$site"
varName="$site" # !!! danger of name clash, fix this
if test -z "${!varName}"; then
echo "warning: unknown mirror:// site \`$site'"
else
mirrors=${!varName}
# Allow command-line override by setting NIX_MIRRORS_$site.
varName="NIX_MIRRORS_$site"
if test -n "${!varName}"; then mirrors="${!varName}"; fi
for url3 in $mirrors; do
urls2="$urls2 $url3$fileName";
done
fi
fi
done
urls="$urls2"
# Restore globbing settings
set +o noglob
if test -n "$showURLs"; then
echo "$urls" > $out
exit 0
fi
if test -n "$preferHashedMirrors"; then
tryHashedMirrors
fi
# URL list may contain ?. No glob expansion for that, please
set -o noglob
success=
for url in $urls; do
if [ -z "$postFetch" ]; then
case "$url" in
https://github.com/*/archive/*)
echo "warning: archives from GitHub revisions should use fetchFromGitHub"
;;
https://gitlab.com/*/-/archive/*)
echo "warning: archives from GitLab revisions should use fetchFromGitLab"
;;
esac
fi
tryDownload "$url"
if test -n "$success"; then finish; fi
done
# Restore globbing settings
set +o noglob
if test -z "$preferHashedMirrors"; then
tryHashedMirrors
fi
echo "error: cannot download $name from any mirror"
exit 1
)NIXE6/nix/store/720ikgx7yaapyb8hvi8lkicjqwzcx3xr-builder.sh nix-archive-1(typeregularcontents�diff --git a/crypto/x509/by_file.c b/crypto/x509/by_file.c
index 244512c935..f0b70d7ea1 100644
--- a/crypto/x509/by_file.c
+++ b/crypto/x509/by_file.c
@@ -46,7 +46,9 @@ static int by_file_ctrl(X509_LOOKUP *ctx, int cmd, const char *argp,
switch (cmd) {
case X509_L_FILE_LOAD:
if (argl == X509_FILETYPE_DEFAULT) {
- file = ossl_safe_getenv(X509_get_default_cert_file_env());
+ file = ossl_safe_getenv("NIX_SSL_CERT_FILE");
+ if (!file)
+ file = ossl_safe_getenv(X509_get_default_cert_file_env());
if (file)
ok = (X509_load_cert_crl_file(ctx, file,
X509_FILETYPE_PEM) != 0);
)NIXEC/nix/store/3xk9ps0qz073k641b88swpa4fgx3hzwg-nix-ssl-cert-file.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/0fpf4zfxzkz5yxcdp4wbyy1z52yzj1kw-acl-2.2.53.tar.gz","sha256","06be9865c6f418d851ff4494e12406568353b891ffe1f596b34693c387af26c7")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","acl-2.2.53.tar.gz"),("out","/nix/store/0fpf4zfxzkz5yxcdp4wbyy1z52yzj1kw-acl-2.2.53.tar.gz"),("outputHash","1ir6my3w74s6nfbgbqgzj6w570sn0qjf3524zx8xh67lqrjrigh6"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://mirror.easyname.at/nongnu/acl/acl-2.2.53.tar.gz"),("urls","https://mirror.easyname.at/nongnu/acl/acl-2.2.53.tar.gz")]))NIXEA/nix/store/lpijddgf3ih6gvrgkvwny0ivq2a7znfg-acl-2.2.53.tar.gz.drv nix-archive-1(typeregularcontentsDerive([("bin","/nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin","",""),("dev","/nix/store/85l759krwxjn851xgg5d9hvwmkiwv3pb-xz-5.2.5-dev","",""),("doc","/nix/store/8dyq09v61xsvfz7lgqljsy05sclv2782-xz-5.2.5-doc","",""),("man","/nix/store/88i7r45iz86xnr6msqv6b3in77zkzg9x-xz-5.2.5-man","",""),("out","/nix/store/3jjqa00hg3prkbkdgnj3nh4h58gr11nn-xz-5.2.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/85l759krwxjn851xgg5d9hvwmkiwv3pb-xz-5.2.5-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/8dyq09v61xsvfz7lgqljsy05sclv2782-xz-5.2.5-doc"),("man","/nix/store/88i7r45iz86xnr6msqv6b3in77zkzg9x-xz-5.2.5-man"),("name","xz-5.2.5"),("nativeBuildInputs",""),("out","/nix/store/3jjqa00hg3prkbkdgnj3nh4h58gr11nn-xz-5.2.5"),("outputs","bin dev out man doc"),("patches",""),("postInstall","rm -rf $out/share/doc"),("preCheck","# Tests have a /bin/sh dependency...\npatchShebangs tests\n"),("preConfigure","CONFIG_SHELL=/bin/sh"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv nix-archive-1(typeregularcontents� Derive([("doc","/nix/store/b6mgshcxh6z6h42qqnp987ipmqykavsc-gettext-0.21-doc","",""),("info","/nix/store/7cqvxikq1pdph69hldhzh06xwhgb83k5-gettext-0.21-info","",""),("man","/nix/store/ak2xv8wias41xi6pp922dkdy5na3rgv2-gettext-0.21-man","",""),("out","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv",["out"]),("/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv",["bin","dev"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("LDFLAGS",""),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--disable-csharp --with-xz"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/b6mgshcxh6z6h42qqnp987ipmqykavsc-gettext-0.21-doc"),("enableParallelBuilding","1"),("enableParallelChecking",""),("gettextNeedsLdflags",""),("hardeningDisable","format"),("info","/nix/store/7cqvxikq1pdph69hldhzh06xwhgb83k5-gettext-0.21-info"),("man","/nix/store/ak2xv8wias41xi6pp922dkdy5na3rgv2-gettext-0.21-man"),("name","gettext-0.21"),("nativeBuildInputs","/nix/store/85l759krwxjn851xgg5d9hvwmkiwv3pb-xz-5.2.5-dev /nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin"),("out","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("outputs","out man doc info"),("patches","/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff"),("pname","gettext"),("postPatch","substituteAllInPlace gettext-runtime/src/gettext.sh.in\nsubstituteInPlace gettext-tools/projects/KDE/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/projects/GNOME/trigger --replace \"/bin/pwd\" pwd\nsubstituteInPlace gettext-tools/src/project-id --replace \"/bin/pwd\" pwd\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh"),("src","/nix/store/s1bb06rzbxlvq08sg0ymwdgcgd1a7xh3-gettext-0.21.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.21")]))NIXE</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvC/nix/store/34vpnpik7b1fb91gwv8pfw7s7v8yir01-gettext-0.21.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh8/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drvM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drvA/nix/store/ny42y6hs4p294rvnrwbmrpwzqghw2816-gettext-setup-hook.sh?/nix/store/p2fp6i7hjx9af1wbwr32k217wp2dxmiw-absolute-paths.diff5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash nix-archive-1(typeregularcontents@Derive([("out","/nix/store/wjl5j99r9rq8kwsr9wihdqxmlkdk0gg0-which-2.21","","")],[("/nix/store/01n3wxxw29wj2pkjqimmmjzv7pihzmd7-which-2.21.tar.gz.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","which-2.21"),("nativeBuildInputs",""),("out","/nix/store/wjl5j99r9rq8kwsr9wihdqxmlkdk0gg0-which-2.21"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/349f140sh7m12vy9mp1wkp58axyp06c9-which-2.21.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE:/nix/store/fqjpchwjr7jz2vylvml43djp2qbc5a38-which-2.21.drvA/nix/store/01n3wxxw29wj2pkjqimmmjzv7pihzmd7-which-2.21.tar.gz.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev","",""),("out","/nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11","",""),("static","/nix/store/a1jplb7bywvd9x00mpxihihb40k428v7-zlib-1.2.11-static","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-static-libgcc"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--shared"),("configurePlatforms",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev"),("doCheck","1"),("doInstallCheck",""),("dontStrip",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("installFlags",""),("makeFlags","PREFIX= SHARED_MODE=1"),("name","zlib-1.2.11"),("nativeBuildInputs",""),("out","/nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11"),("outputDoc","dev"),("outputs","out dev static"),("patches",""),("postInstall","moveToOutput lib/libz.a \"$static\"\n"),("postPatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("src","/nix/store/rrzja19jbqxbfryp2zchb2ma5h041rxh-zlib-1.2.11.tar.gz"),("static","/nix/store/a1jplb7bywvd9x00mpxihihb40k428v7-zlib-1.2.11-static"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.2.11")]))NIXE;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drvB/nix/store/y87babk8jipsdynhb9sd9jbqlkyp670g-zlib-1.2.11.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/4gpi8j0b4lnl4kc9awrawv6q5a0shfhl-texinfo-6.7","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5bz70pp9hwhmlmiya3r49fgzmnrs4xqj-texinfo-6.7.tar.xz.drv",["out"]),("/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drv",["out"]),("/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv",["bin"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","PERL=/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0/bin/perl"),("depsBuildBuild","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper- /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("installFlags","TEXMF=$(out)/texmf-dist"),("installTargets","install install-tex"),("name","texinfo-6.7"),("nativeBuildInputs",""),("out","/nix/store/4gpi8j0b4lnl4kc9awrawv6q5a0shfhl-texinfo-6.7"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/qz3xm3v88flpwpsa06czmj3jzn01z9bx-texinfo-6.7.tar.xz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","6.7")]))NIXE;/nix/store/lv9k22g29i7dh7hj6shqcgdm6jfqwls9-texinfo-6.7.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvB/nix/store/5bz70pp9hwhmlmiya3r49fgzmnrs4xqj-texinfo-6.7.tar.xz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drv8/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5s87b3i5xfdd1mrl2haavfjrzfp4w4zf-libelf-0.8.13.tar.gz.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"])],["/nix/store/21qssx8jl5688qmn5qnyrihfw9fibqv5-preprocessor-warnings.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/lzmxj8jf7dsy73injx2q3x6j329fjlk2-dont-hardcode-ar.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("name","libelf-0.8.13"),("nativeBuildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("out","/nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13"),("outputs","out"),("patches","/nix/store/lzmxj8jf7dsy73injx2q3x6j329fjlk2-dont-hardcode-ar.patch /nix/store/21qssx8jl5688qmn5qnyrihfw9fibqv5-preprocessor-warnings.patch"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/ggpgsklddx6h8dk0wkmlnk4brcxdb0jh-libelf-0.8.13.tar.gz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE=/nix/store/vbl8prnqqs9q7585r6jqg1k03sl42d1d-libelf-0.8.13.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvG/nix/store/21qssx8jl5688qmn5qnyrihfw9fibqv5-preprocessor-warnings.patchD/nix/store/5s87b3i5xfdd1mrl2haavfjrzfp4w4zf-libelf-0.8.13.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drvB/nix/store/lzmxj8jf7dsy73injx2q3x6j329fjlk2-dont-hardcode-ar.patch</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv",["dev"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/mksyw0bf46w7q8rb9202n0g7fpkhxfcf-isl-0.20.tar.xz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cmakeFlags","-DBUILD_SHARED_LIBS:BOOL=OFF"),("configureFlags","--enable-static --disable-shared"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontDisableStatic","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("mesonFlags","-Ddefault_library=static"),("name","isl-0.20"),("nativeBuildInputs",""),("out","/nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/x9v0hmr76dm68pijzldzxks01iqzag1z-isl-0.20.tar.xz"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/x8d7csnsgigms2wk41kk5adyhc5bfvm0-isl-0.20.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv9/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv?/nix/store/mksyw0bf46w7q8rb9202n0g7fpkhxfcf-isl-0.20.tar.xz.drv nix-archive-1(typeregularcontents$Derive([("info","/nix/store/cl2kay78g14lvxhmqazfnczgpdfz0518-gcc-9.3.0-info","",""),("lib","/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib","",""),("man","/nix/store/4lzqa89xy0vgnf8a07ry51ql2ihb3iim-gcc-9.3.0-man","",""),("out","/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0","","")],[("/nix/store/01kg491ilpq5dkqilkmwc1d55djnwwnd-libmpc-1.2.0.drv",["out"]),("/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv",["dev","out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["dev","out"]),("/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drv",["out"]),("/nix/store/cx3g28g8g72lz6ssjssbq2cpcllgqlwf-mpfr-4.1.0.drv",["dev","out"]),("/nix/store/fqjpchwjr7jz2vylvml43djp2qbc5a38-which-2.21.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"]),("/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv",["dev","out"]),("/nix/store/lv9k22g29i7dh7hj6shqcgdm6jfqwls9-texinfo-6.7.drv",["out"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"]),("/nix/store/vbl8prnqqs9q7585r6jqg1k03sl42d1d-libelf-0.8.13.drv",["out"]),("/nix/store/x8d7csnsgigms2wk41kk5adyhc5bfvm0-isl-0.20.drv",["out"]),("/nix/store/yl784ij7vi17zhygv5rh9q1ihbqvcr6s-gcc-9.3.0.tar.xz.drv",["out"]),("/nix/store/zwbcm8cyz49d9bimz66y77b9ncm2cr49-binutils-wrapper-2.31.1.drv",["out"])],["/nix/store/5rmzq5ldn60cw87f30hjn6y9syf5crfd-builder.sh","/nix/store/pz03lhak99nzyyni72m14zsjzfjvqvr8-no-sys-dirs.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/5rmzq5ldn60cw87f30hjn6y9syf5crfd-builder.sh"],[("CPATH","/nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev/include"),("EXTRA_FLAGS_FOR_TARGET",""),("EXTRA_LDFLAGS_FOR_TARGET",""),("LIBRARY_PATH","/nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11/lib"),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("NIX_LDFLAGS",""),("NIX_NO_SELF_RPATH","1"),("buildFlags","profiledbootstrap"),("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev /nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev /nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0 /nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13 /nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1 /nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20 /nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-gmp-include=/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev/include --with-gmp-lib=/nix/store/45w7v0ahs6p0sswwpmaaflh8izxbzh73-gmp-6.2.0/lib --with-mpfr-include=/nix/store/jal0pbid8vmcdqh6kjnwf4dyizhcr8p2-mpfr-4.1.0-dev/include --with-mpfr-lib=/nix/store/ldxj13laaggdhn345rvgxcyyk335xn2c-mpfr-4.1.0/lib --with-mpc=/nix/store/ap6qnjnns8qqdj85cvvijz21npbrxiyi-libmpc-1.2.0 --with-libelf=/nix/store/7f0ish8s01q46ddwnc8nx4ijvkg2rjxv-libelf-0.8.13 --with-native-system-header-dir=/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include --enable-lto --disable-libstdcxx-pch --without-included-gettext --with-system-zlib --enable-static --enable-languages=c,c++ --disable-multilib --enable-plugin --with-isl=/nix/store/fxsq43x12qjyijs5dv6w6az1vmjsakw1-isl-0.20 --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu"),("configurePlatforms","build host"),("crossMingw",""),("crossStageStatic",""),("depsBuildBuild","/nix/store/f9l02cz89plcxw83s54ykl96r0cbkqjh-bootstrap-stage3-gcc-wrapper-"),("depsBuildBuildPropagated",""),("depsBuildTarget","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1 /nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12"),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontDisableStatic","1"),("dontStrip",""),("enableMultilib",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("hardeningDisable","format pie"),("info","/nix/store/cl2kay78g14lvxhmqazfnczgpdfz0518-gcc-9.3.0-info"),("installTargets","install-strip"),("is64bit","1"),("lib","/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("man","/nix/store/4lzqa89xy0vgnf8a07ry51ql2ihb3iim-gcc-9.3.0-man"),("name","gcc-9.3.0"),("nativeBuildInputs","/nix/store/4gpi8j0b4lnl4kc9awrawv6q5a0shfhl-texinfo-6.7 /nix/store/wjl5j99r9rq8kwsr9wihdqxmlkdk0gg0-which-2.21 /nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21 /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("noSysDirs","1"),("out","/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0"),("outputs","out man info lib"),("patches","/nix/store/pz03lhak99nzyyni72m14zsjzfjvqvr8-no-sys-dirs.patch"),("pname","gcc"),("postPatch","configureScripts=$(find . -name configure)\nfor configureScript in $configureScripts; do\n patchShebangs $configureScript\ndone\necho \"fixing the \\`GLIBC_DYNAMIC_LINKER', \\`UCLIBC_DYNAMIC_LINKER', and \\`MUSL_DYNAMIC_LINKER' macros...\"\n for header in \"gcc/config/\"*-gnu.h \"gcc/config/\"*\"/\"*.h\n do\n grep -q _DYNAMIC_LINKER \"$header\" || continue\n echo \" fixing \\`$header'...\"\n sed -i \"$header\" \\\n -e 's|define[[:blank:]]*\\([UCG]\\+\\)LIBC_DYNAMIC_LINKER\\([0-9]*\\)[[:blank:]]\"\\([^\\\"]\\+\\)\"$|define \\1LIBC_DYNAMIC_LINKER\\2 \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\\3\"|g' \\\n -e 's|define[[:blank:]]*MUSL_DYNAMIC_LINKER\\([0-9]*\\)[[:blank:]]\"\\([^\\\"]\\+\\)\"$|define MUSL_DYNAMIC_LINKER\\1 \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\\2\"|g'\n done\n"),("preConfigure",""),("prePatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("src","/nix/store/2d3h5cp4fq2rpn7vmjchw3fnlnp703mb-gcc-9.3.0.tar.xz"),("staticCompiler",""),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","9.3.0")]))NIXE9/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv</nix/store/01kg491ilpq5dkqilkmwc1d55djnwwnd-libmpc-1.2.0.drv=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv9/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv6/nix/store/5rmzq5ldn60cw87f30hjn6y9syf5crfd-builder.sh:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drvM/nix/store/a1x9lsfpssa9d0y4hlqbxz2pxgw4rvr3-bootstrap-stage3-gcc-wrapper-.drv:/nix/store/cx3g28g8g72lz6ssjssbq2cpcllgqlwf-mpfr-4.1.0.drv:/nix/store/fqjpchwjr7jz2vylvml43djp2qbc5a38-which-2.21.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv;/nix/store/lv9k22g29i7dh7hj6shqcgdm6jfqwls9-texinfo-6.7.drv</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv=/nix/store/pz03lhak99nzyyni72m14zsjzfjvqvr8-no-sys-dirs.patch=/nix/store/vbl8prnqqs9q7585r6jqg1k03sl42d1d-libelf-0.8.13.drv8/nix/store/x8d7csnsgigms2wk41kk5adyhc5bfvm0-isl-0.20.drv@/nix/store/yl784ij7vi17zhygv5rh9q1ihbqvcr6s-gcc-9.3.0.tar.xz.drvG/nix/store/zwbcm8cyz49d9bimz66y77b9ncm2cr49-binutils-wrapper-2.31.1.drv nix-archive-1(typeregularcontentsXDerive([("out","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("buildPhase","\"$CC\" -std=c99 -O3 -o \"expand-response-params\" expand-response-params.c\n"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("installPhase","mkdir -p $prefix/bin\nmv expand-response-params $prefix/bin/\n"),("name","expand-response-params"),("nativeBuildInputs",""),("out","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.c"),("stdenv","/nix/store/l69iy7yfrdv0zv29r76zdynfvdj6qqyg-bootstrap-stage3-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("unpackPhase","cp \"$src\" expand-response-params.c\nsrc=$PWD\n")]))NIXEF/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shD/nix/store/jik02mkz72r2f6hhxnlhp6h5f0fi89gw-expand-response-params.cM/nix/store/kpj2dzrhx0xi7x1xdxqm54g9fd93qrmk-bootstrap-stage3-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/pk83gh467gnck2ryvhfxai4gbzzxjy6s-bootstrap-stage4-gcc-wrapper-9.3.0-info","",""),("man","/nix/store/qdmch8l2z24kb1pmx4hibnfj4lyaay8g-bootstrap-stage4-gcc-wrapper-9.3.0-man","",""),("out","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv",["out"]),("/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv",["info","lib","man","out"]),("/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv",["out"]),("/nix/store/zwbcm8cyz49d9bimz66y77b9ncm2cr49-binutils-wrapper-2.31.1.drv",["out"])],["/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh","/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cc","/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0"),("configureFlags",""),("coreutils_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("expand-response-params","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params"),("expandResponseParams","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("info","/nix/store/pk83gh467gnck2ryvhfxai4gbzzxjy6s-bootstrap-stage4-gcc-wrapper-9.3.0-info"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $cc > $out/nix-support/orig-cc\n\nccPath=\"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0/bin\"\nfor bbin in $bintools/bin/*; do\n mkdir -p \"$out/bin\"\n ln -s \"$bbin\" \"$out/bin/$(basename $bbin)\"\ndone\nexport named_cc=cc\nexport named_cxx=c++\n\nif [ -e $ccPath/gcc ]; then\n wrap gcc $wrapper $ccPath/gcc\n ln -s gcc $out/bin/cc\n export named_cc=gcc\n export named_cxx=g++\nelif [ -e $ccPath/clang ]; then\n wrap clang $wrapper $ccPath/clang\n ln -s clang $out/bin/cc\n export named_cc=clang\n export named_cxx=clang++\nfi\n\nif [ -e $ccPath/g++ ]; then\n wrap g++ $wrapper $ccPath/g++\n ln -s g++ $out/bin/c++\nelif [ -e $ccPath/clang++ ]; then\n wrap clang++ $wrapper $ccPath/clang++\n ln -s clang++ $out/bin/c++\nfi\n\nif [ -e $ccPath/cpp ]; then\n wrap cpp $wrapper $ccPath/cpp\nfi\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("man","/nix/store/qdmch8l2z24kb1pmx4hibnfj4lyaay8g-bootstrap-stage4-gcc-wrapper-9.3.0-man"),("name","bootstrap-stage4-gcc-wrapper-9.3.0"),("nativeBuildInputs",""),("out","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("outputs","out man info"),("patches",""),("pname","bootstrap-stage4-gcc-wrapper"),("postFixup","touch \"$out/nix-support/cc-cflags\"\ntouch \"$out/nix-support/cc-ldflags\"\nif [[ -f \"$bintools/nix-support/dynamic-linker\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker\" \"$out/nix-support\"\nfi\nif [[ -f \"$bintools/nix-support/dynamic-linker-m32\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker-m32\" \"$out/nix-support\"\nfi\ntouch \"$out/nix-support/libc-cflags\"\ntouch \"$out/nix-support/libc-ldflags\"\necho \"-B/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/\" >> $out/nix-support/libc-crt1-cflags\necho \"-idirafter /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include\" >> $out/nix-support/libc-cflags\nfor dir in \"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0\"/lib/gcc/*/*/include-fixed; do\n echo '-idirafter' ${dir} >> $out/nix-support/libc-cflags\ndone\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\ntouch \"$out/nix-support/libcxx-cxxflags\"\ntouch \"$out/nix-support/libcxx-ldflags\"\nif [ -e \"/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\" -a ! -L \"/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\" ]; then\n ccLDFlags+=\" -L/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\"\n ccCFlags+=\" -B/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\"\nfi\nccLDFlags+=\" -L/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib\"\nccCFlags+=\" -B/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib\"\n\necho \"$ccLDFlags\" >> $out/nix-support/cc-ldflags\necho \"$ccCFlags\" >> $out/nix-support/cc-cflags\nln -s /nix/store/4lzqa89xy0vgnf8a07ry51ql2ihb3iim-gcc-9.3.0-man $man\nln -s /nix/store/cl2kay78g14lvxhmqazfnczgpdfz0518-gcc-9.3.0-info $info\nexport hardening_unsupported_flags=\"\"\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs","/nix/store/dw9awhwzypl8p06cjkr0h67mpkny54rg-binutils-wrapper-2.31.1"),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("stdenv","/nix/store/6lpkwrmm1hn1nhl005zxxf16v5x4n72q-bootstrap-stage0-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","9.3.0"),("wrapper","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh"),("wrapperName","CC_WRAPPER")]))NIXER/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/agc9rj42s5aw9wjm3lg80vns0g49gx3a-bootstrap-stage0-stdenv-linux.drv9/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.shF/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bashG/nix/store/zwbcm8cyz49d9bimz66y77b9ncm2cr49-binutils-wrapper-2.31.1.drv nix-archive-1(typeregularcontents� Derive([("out","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux","","")],[("/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv",["bin"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12 /nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage4-stdenv-linux"),("out","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.shR/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drv8/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/y6w1k6z7nzxhddj5dwj20clfd2q3pxb7-attr-2.4.48.tar.gz","sha256","5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","attr-2.4.48.tar.gz"),("out","/nix/store/y6w1k6z7nzxhddj5dwj20clfd2q3pxb7-attr-2.4.48.tar.gz"),("outputHash","1rr4adzwax4bzr2c00f06zcsljv5y6p9wymz1g89ww7cb2rp5bay"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://mirror.easyname.at/nongnu/attr/attr-2.4.48.tar.gz"),("urls","https://mirror.easyname.at/nongnu/attr/attr-2.4.48.tar.gz")]))NIXEB/nix/store/cnsdihx3s9l2ncyl9gvw7263hg1lvk1d-attr-2.4.48.tar.gz.drv nix-archive-1(typeregularcontentsFrom 14adc898a36948267bfe5c63b399996879e94c98 Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruenba@redhat.com>
Date: Fri, 17 Aug 2018 14:07:31 +0200
Subject: Switch back to syscall()
Switch back to syscall() for the *xattr system calls. The current
mechanism of forwarding those calls to glibc breaks libraries like
libfakeroot (fakeroot) and libasan (the gcc address sanitizer; gcc
-fsanitize=address).
Those libraries provide wrappers for functions defined in other shared
libraries, usually glibc, do their own processing, and forward calls to
the original symbols looke dup via dlsym(RTLD_NEXT, "symbol_name"). In
our case, dlsym returns the libattr_*xattr wrappers. However, when our
wrappers try calling glibc, they end up calling the libfakeroot /
libasan wrappers instead because those override the original symbols =>
recursion.
The libattr_*xattr wrappers will only be used when symbols are looked up
at runtime (dlopen / dlsym). Programs linking against libattr will
directly use the glibc provided symbols. Therefore, the slightly worse
performance of syscall() won't affect any of the "normal" users of
libattr.
---
libattr/syscalls.c | 26 ++++++++++++++------------
1 file changed, 14 insertions(+), 12 deletions(-)
diff --git a/libattr/syscalls.c b/libattr/syscalls.c
index 3013aa0..721ad7f 100644
--- a/libattr/syscalls.c
+++ b/libattr/syscalls.c
@@ -22,6 +22,8 @@
#include "config.h"
+#include <unistd.h>
+#include <sys/syscall.h>
#include <sys/xattr.h>
#ifdef HAVE_VISIBILITY_ATTRIBUTE
@@ -31,67 +33,67 @@
int libattr_setxattr(const char *path, const char *name,
void *value, size_t size, int flags)
{
- return setxattr(path, name, value, size, flags);
+ return syscall(__NR_setxattr, path, name, value, size, flags);
}
int libattr_lsetxattr(const char *path, const char *name,
void *value, size_t size, int flags)
{
- return lsetxattr(path, name, value, size, flags);
+ return syscall(__NR_lsetxattr, path, name, value, size, flags);
}
int libattr_fsetxattr(int filedes, const char *name,
void *value, size_t size, int flags)
{
- return fsetxattr(filedes, name, value, size, flags);
+ return syscall(__NR_fsetxattr, filedes, name, value, size, flags);
}
ssize_t libattr_getxattr(const char *path, const char *name,
void *value, size_t size)
{
- return getxattr(path, name, value, size);
+ return syscall(__NR_getxattr, path, name, value, size);
}
ssize_t libattr_lgetxattr(const char *path, const char *name,
void *value, size_t size)
{
- return lgetxattr(path, name, value, size);
+ return syscall(__NR_lgetxattr, path, name, value, size);
}
ssize_t libattr_fgetxattr(int filedes, const char *name,
void *value, size_t size)
{
- return fgetxattr(filedes, name, value, size);
+ return syscall(__NR_fgetxattr, filedes, name, value, size);
}
ssize_t libattr_listxattr(const char *path, char *list, size_t size)
{
- return listxattr(path, list, size);
+ return syscall(__NR_listxattr, path, list, size);
}
ssize_t libattr_llistxattr(const char *path, char *list, size_t size)
{
- return llistxattr(path, list, size);
+ return syscall(__NR_llistxattr, path, list, size);
}
ssize_t libattr_flistxattr(int filedes, char *list, size_t size)
{
- return flistxattr(filedes, list, size);
+ return syscall(__NR_flistxattr, filedes, list, size);
}
int libattr_removexattr(const char *path, const char *name)
{
- return removexattr(path, name);
+ return syscall(__NR_removexattr, path, name);
}
int libattr_lremovexattr(const char *path, const char *name)
{
- return lremovexattr(path, name);
+ return syscall(__NR_lremovexattr, path, name);
}
int libattr_fremovexattr(int filedes, const char *name)
{
- return fremovexattr(filedes, name);
+ return syscall(__NR_fremovexattr, filedes, name);
}
#ifdef HAVE_VISIBILITY_ATTRIBUTE
)NIXE9/nix/store/yh2f3paxrqhd9bf0d1yzajrwa74c3pjc-syscall.patch nix-archive-1(typeregularcontents�Derive([("bin","/nix/store/il06kwl8mhcym1603gzp6jmz0afkrhc7-attr-2.4.48-bin","",""),("dev","/nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev","",""),("doc","/nix/store/ifi92z2blbqfl02mxzbp6j088a79ppgv-attr-2.4.48-doc","",""),("man","/nix/store/bk5xdwx1r2i0my9srq6gyv5w329ardlb-attr-2.4.48-man","",""),("out","/nix/store/0ylsw32rdkc60kq7sv6gmq98wsd6p09y-attr-2.4.48","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/cnsdihx3s9l2ncyl9gvw7263hg1lvk1d-attr-2.4.48.tar.gz.drv",["out"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/yh2f3paxrqhd9bf0d1yzajrwa74c3pjc-syscall.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/il06kwl8mhcym1603gzp6jmz0afkrhc7-attr-2.4.48-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/ifi92z2blbqfl02mxzbp6j088a79ppgv-attr-2.4.48-doc"),("man","/nix/store/bk5xdwx1r2i0my9srq6gyv5w329ardlb-attr-2.4.48-man"),("name","attr-2.4.48"),("nativeBuildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("out","/nix/store/0ylsw32rdkc60kq7sv6gmq98wsd6p09y-attr-2.4.48"),("outputs","bin dev out man doc"),("patches","/nix/store/yh2f3paxrqhd9bf0d1yzajrwa74c3pjc-syscall.patch"),("postPatch","for script in install-sh include/install-sh; do\n patchShebangs $script\ndone\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/y6w1k6z7nzxhddj5dwj20clfd2q3pxb7-attr-2.4.48.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE;/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shB/nix/store/cnsdihx3s9l2ncyl9gvw7263hg1lvk1d-attr-2.4.48.tar.gz.drv</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv9/nix/store/yh2f3paxrqhd9bf0d1yzajrwa74c3pjc-syscall.patch nix-archive-1(typeregularcontents Derive([("bin","/nix/store/rrykv607yp2avqpgbnbr60n9ppf1x0sq-acl-2.2.53-bin","",""),("dev","/nix/store/2lmnh90w747bnmwznbna8n6krggv5nlm-acl-2.2.53-dev","",""),("doc","/nix/store/c8cwgs2fg8lzdx6njwxydv0vjiqscx14-acl-2.2.53-doc","",""),("man","/nix/store/9h319d368lysvgbj1vfyapp99izb0496-acl-2.2.53-man","",""),("out","/nix/store/3kn4grkcb6xp2l0l1y4y7xhks8m7p0g3-acl-2.2.53","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/lpijddgf3ih6gvrgkvwny0ivq2a7znfg-acl-2.2.53.tar.gz.drv",["out"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv",["dev"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/rrykv607yp2avqpgbnbr60n9ppf1x0sq-acl-2.2.53-bin"),("buildInputs","/nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/2lmnh90w747bnmwznbna8n6krggv5nlm-acl-2.2.53-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/c8cwgs2fg8lzdx6njwxydv0vjiqscx14-acl-2.2.53-doc"),("man","/nix/store/9h319d368lysvgbj1vfyapp99izb0496-acl-2.2.53-man"),("name","acl-2.2.53"),("nativeBuildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("out","/nix/store/3kn4grkcb6xp2l0l1y4y7xhks8m7p0g3-acl-2.2.53"),("outputs","bin dev out man doc"),("patchPhase","echo \"Removing C++-style comments from include/acl.h\"\nsed -e '/^\\/\\//d' -i include/acl.h\n\npatchShebangs .\n"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/0fpf4zfxzkz5yxcdp4wbyy1z52yzj1kw-acl-2.2.53.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE:/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shA/nix/store/lpijddgf3ih6gvrgkvwny0ivq2a7znfg-acl-2.2.53.tar.gz.drv</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv;/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/3gyxcm7gqmqk90363iiwi2xwpfvh5x7l-coreutils-8.32.tar.xz","sha256","4458d8de7849df44ccab15e16b1548b285224dbba5f08fac070c1c0e0bcc4cfa")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","coreutils-8.32.tar.xz"),("out","/nix/store/3gyxcm7gqmqk90363iiwi2xwpfvh5x7l-coreutils-8.32.tar.xz"),("outputHash","sha256-RFjY3nhJ30TMqxXhaxVIsoUiTbul8I+sBwwcDgvMTPo="),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/coreutils/coreutils-8.32.tar.xz"),("urls","https://ftpmirror.gnu.org/coreutils/coreutils-8.32.tar.xz")]))NIXEE/nix/store/bvjjdqid3590hkbszlm81ppwrbk9zjaa-coreutils-8.32.tar.xz.drv nix-archive-1(typeregularcontentsDerive([("bin","/nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin","",""),("dev","/nix/store/hghrrj3fnxa1iqknkm5lahs2zlmasfpg-xz-5.2.5-dev","",""),("doc","/nix/store/7rs01lxz3c1la9h0k69sw1vcacp2ks8b-xz-5.2.5-doc","",""),("man","/nix/store/z8bv1ahfa7ndizkpfj35p9xf4b2gh8va-xz-5.2.5-man","",""),("out","/nix/store/y41vgrya42wlzq8zpywkccaiknzpcraz-xz-5.2.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/hghrrj3fnxa1iqknkm5lahs2zlmasfpg-xz-5.2.5-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/7rs01lxz3c1la9h0k69sw1vcacp2ks8b-xz-5.2.5-doc"),("man","/nix/store/z8bv1ahfa7ndizkpfj35p9xf4b2gh8va-xz-5.2.5-man"),("name","xz-5.2.5"),("nativeBuildInputs",""),("out","/nix/store/y41vgrya42wlzq8zpywkccaiknzpcraz-xz-5.2.5"),("outputs","bin dev out man doc"),("patches",""),("postInstall","rm -rf $out/share/doc"),("preCheck","# Tests have a /bin/sh dependency...\npatchShebangs tests\n"),("preConfigure","CONFIG_SHELL=/bin/sh"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/540m10fmc7qss0kgm9xszs6na2piw3pr-xz-5.2.5.tar.bz2"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE8/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/8mg6zjhc5fbms6nm3snd41galx63ijhw-xz-5.2.5.tar.bz2.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/rzpgad7sp02106isz1f1digm2alcv52p-coreutils-8.32-info","",""),("out","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv",["dev"]),("/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv",["dev"]),("/nix/store/bvjjdqid3590hkbszlm81ppwrbk9zjaa-coreutils-8.32.tar.xz.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv",["bin"]),("/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv",["dev"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("FORCE_UNSAFE_CONFIGURE",""),("NIX_LDFLAGS",""),("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev /nix/store/2lmnh90w747bnmwznbna8n6krggv5nlm-acl-2.2.53-dev /nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-packager=https://NixOS.org --enable-single-binary=symlinks"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("enableParallelBuilding",""),("info","/nix/store/rzpgad7sp02106isz1f1digm2alcv52p-coreutils-8.32-info"),("name","coreutils-8.32"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0 /nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("out","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32"),("outputs","out info"),("patches",""),("pname","coreutils"),("postInstall","rm -r \"$out/share\"\n"),("postPatch","# The test tends to fail on btrfs,f2fs and maybe other unusual filesystems.\nsed '2i echo Skipping dd sparse test && exit 77' -i ./tests/dd/sparse.sh\nsed '2i echo Skipping du threshold test && exit 77' -i ./tests/du/threshold.sh\nsed '2i echo Skipping cp sparse test && exit 77' -i ./tests/cp/sparse.sh\nsed '2i echo Skipping rm deep-2 test && exit 77' -i ./tests/rm/deep-2.sh\nsed '2i echo Skipping du long-from-unreadable test && exit 77' -i ./tests/du/long-from-unreadable.sh\n\n# Some target platforms, especially when building inside a container have\n# issues with the inotify test.\nsed '2i echo Skipping tail inotify dir recreate test && exit 77' -i ./tests/tail-2/inotify-dir-recreate.sh\n\n# sandbox does not allow setgid\nsed '2i echo Skipping chmod setgid test && exit 77' -i ./tests/chmod/setgid.sh\nsubstituteInPlace ./tests/install/install-C.sh \\\n --replace 'mode3=2755' 'mode3=1755'\n\nsed '2i print \"Skipping env -S test\"; exit 77;' -i ./tests/misc/env-S.pl\n\n# Fails on systems with a rootfs. Looks like a bug in the test, see\n# https://lists.gnu.org/archive/html/bug-coreutils/2019-12/msg00000.html\nsed '2i print \"Skipping df skip-rootfs test\"; exit 77' -i ./tests/df/skip-rootfs.sh\n\n# these tests fail in the unprivileged nix sandbox (without nix-daemon) as we break posix assumptions\nfor f in ./tests/chgrp/{basic.sh,recurse.sh,default-no-deref.sh,no-x.sh,posix-H.sh}; do\n sed '2i echo Skipping chgrp && exit 77' -i \"$f\"\ndone\nfor f in gnulib-tests/{test-chown.c,test-fchownat.c,test-lchown.c}; do\n echo \"int main() { return 77; }\" > \"$f\"\ndone\n"),("preInstall",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/3gyxcm7gqmqk90363iiwi2xwpfvh5x7l-coreutils-8.32.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","8.32")]))NIXE>/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv9/nix/store/3p91d4ld2q6ncrmmhl6q8g510i9sr91b-gmp-6.2.0.drv:/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shE/nix/store/bvjjdqid3590hkbszlm81ppwrbk9zjaa-coreutils-8.32.tar.xz.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv8/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv;/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/yyzj9y73jgq84aazryxnkhncwj4aww45-bash-4.4-p23-dev","",""),("doc","/nix/store/pb9h411di027iakjzq83ycwy33raipa0-bash-4.4-p23-doc","",""),("info","/nix/store/c9mwdhmyqrjqn383p0kk8x9qv40clblx-bash-4.4-p23-info","",""),("man","/nix/store/wlrglq8bcgs47nfrh33si2d00nflxxc4-bash-4.4-p23-man","",""),("out","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/58y89v7rl254dc2cygcfd5wzhv0kjm4m-bash44-013.drv",["out"]),("/nix/store/bkhp2l6yxbziq265a77v60v0s68494ba-bash44-018.drv",["out"]),("/nix/store/bwpr6g17bq0j17r5d4isxahhxn52cnnr-bash44-019.drv",["out"]),("/nix/store/c8svmxmwjkzvwszy8ga7x2fwx0qbmm10-bash44-001.drv",["out"]),("/nix/store/djmmx28jvbngp9wa15z4xasllaaqd1z0-bash44-004.drv",["out"]),("/nix/store/f30binazxhx8g0xkiav6lglp29h4a164-bash44-002.drv",["out"]),("/nix/store/fgg03wqpa11paihmbxc3dfqxhqgf10bi-bash44-007.drv",["out"]),("/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/ghyy9947nssi1vn8m6h0giik5sxgbvww-bash44-006.drv",["out"]),("/nix/store/gk0dvdga6634xw6sy9ajyb381qaczdrd-bash44-017.drv",["out"]),("/nix/store/ip70l59j1w6lfmi0fx02lmzjr2rahlgv-bash44-009.drv",["out"]),("/nix/store/kpr5qx791p55y7kgbypw230nqp673fya-bash44-005.drv",["out"]),("/nix/store/l42vs1awqpx8pf681fql357s3pa8qqk3-bash44-011.drv",["out"]),("/nix/store/lx3frlxywbvvr9823sxqp07jlfniib9p-bash44-008.drv",["out"]),("/nix/store/m5j1yp47lw1psd9n6bzina1167abbprr-bash44-023.drv",["out"]),("/nix/store/myfzvw3m2fzg7r3xkzr15c0flbc9mxiq-bash-4.4.tar.gz.drv",["out"]),("/nix/store/n1qz6fhb4fkz0i5f9sl6f1vqyrlnaiqv-bash44-016.drv",["out"]),("/nix/store/n3g29b5ha33ssq0v79gsf4vd198vj5r3-bash44-015.drv",["out"]),("/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv",["out"]),("/nix/store/pxjkwfqmn0hmzjqgbsh5j31wrqflhxbf-bash44-012.drv",["out"]),("/nix/store/q8hxz4f402ps0vwhj3sgfyp6x0ss35sv-bash44-003.drv",["out"]),("/nix/store/r4lwjq1nvwpaqabaaj5bv001xxfj4ziq-bash44-010.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/xadh3b1m14451ky8c8a297063nzrf1zn-bash44-020.drv",["out"]),("/nix/store/xs5c12bzf9vrrniscd53p2j9vkmvww2p-bash44-014.drv",["out"]),("/nix/store/z4ym1w4ssi236w2i6nsf7ba0s5ji9hd9-bash44-022.drv",["out"]),("/nix/store/zr7jikfinzgh6k2b10zp9jmfg4gv7za0-bash44-021.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-DSYS_BASHRC=\"/etc/bashrc\"\n-DSYS_BASH_LOGOUT=\"/etc/bash_logout\"\n-DDEFAULT_PATH_VALUE=\"/no-such-path\"\n-DSTANDARD_UTILS_PATH=\"/no-such-path\"\n-DNON_INTERACTIVE_LOGIN_SHELLS\n-DSSH_SOURCE_BASHRC\n"),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--disable-readline"),("depsBuildBuild","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/yyzj9y73jgq84aazryxnkhncwj4aww45-bash-4.4-p23-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/pb9h411di027iakjzq83ycwy33raipa0-bash-4.4-p23-doc"),("enableParallelBuilding",""),("hardeningDisable","format"),("info","/nix/store/c9mwdhmyqrjqn383p0kk8x9qv40clblx-bash-4.4-p23-info"),("makeFlags",""),("man","/nix/store/wlrglq8bcgs47nfrh33si2d00nflxxc4-bash-4.4-p23-man"),("name","bash-4.4-p23"),("nativeBuildInputs","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3"),("out","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23"),("outputs","out dev man doc info"),("patchFlags","-p0 -T"),("patches","/nix/store/v4zzrwb6m2wl3lpy8ycf82i49dgm947l-bash44-001 /nix/store/7danzrkb22gignb90jhhl508k0x74fid-bash44-002 /nix/store/hhxq0jb8dbkw68z5dvarwgdrliamr76c-bash44-003 /nix/store/n781p1a8193xl6vf7y8z6s0rgi8gmg9h-bash44-004 /nix/store/r08yflna5b3x8f0fa8n2nkpw51slm411-bash44-005 /nix/store/zskj1jz5s2iix97iz5kxjyh3kqd8v28m-bash44-006 /nix/store/kqykzisj9ll5dva7lr6hhjf0v1l5svar-bash44-007 /nix/store/ih1alzqkqpinbw745lrm48f7jfk5ab3b-bash44-008 /nix/store/5086pd6ljw546sahagxzjg53d5hdrq09-bash44-009 /nix/store/9x7zwqc14g6knm77r6s23z2jk0plwp4c-bash44-010 /nix/store/202rpp7v7f21bx2kq06dpc6gaic2gvjh-bash44-011 /nix/store/li9vlg439jbbfz3anb7nx0a8dp2adsgc-bash44-012 /nix/store/gffadngj1b38vrs3cw1davbndlfccj8r-bash44-013 /nix/store/nca55pyd81bylc46s0h5mjvb6dk8azwa-bash44-014 /nix/store/nqvgwsxabymj6k9cap1n4lnsbnpz9dx9-bash44-015 /nix/store/lsxbyvlsqk38fka1p2f9vlfnmxvhs8vi-bash44-016 /nix/store/lr5586viy3k10cphp6ka39r7qr8cirgg-bash44-017 /nix/store/h2lap34xv5znjb5wcgqcj813939gwd2h-bash44-018 /nix/store/9mhyazyw3rv5lmibkyb1x61lsw29fqch-bash44-019 /nix/store/wmq4fmib2r79gxmhis01cghcd7phrcgw-bash44-020 /nix/store/2fr3wiy7q2i4gan2f8w27c9hrsr9x13c-bash44-021 /nix/store/d5iz3skv66k7vx15pnbjq8xgyfk7hy6w-bash44-022 /nix/store/x9cyj78gzd1wjf0xsiad1pa3ricbj566-bash44-023 /nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch"),("postFixup","rm -rf \"$out/share\" \"$out/bin/bashbug\"\n"),("postInstall","ln -s bash \"$out/bin/sh\"\nrm -f $out/lib/bash/Makefile.inc\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/rv68r40mwx7xa7vrlmanczkkjcnkc452-bash-4.4.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.4")]))NIXE</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/58y89v7rl254dc2cygcfd5wzhv0kjm4m-bash44-013.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh:/nix/store/bkhp2l6yxbziq265a77v60v0s68494ba-bash44-018.drv:/nix/store/bwpr6g17bq0j17r5d4isxahhxn52cnnr-bash44-019.drv:/nix/store/c8svmxmwjkzvwszy8ga7x2fwx0qbmm10-bash44-001.drv?/nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch:/nix/store/djmmx28jvbngp9wa15z4xasllaaqd1z0-bash44-004.drv:/nix/store/f30binazxhx8g0xkiav6lglp29h4a164-bash44-002.drv:/nix/store/fgg03wqpa11paihmbxc3dfqxhqgf10bi-bash44-007.drvR/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drv:/nix/store/ghyy9947nssi1vn8m6h0giik5sxgbvww-bash44-006.drv:/nix/store/gk0dvdga6634xw6sy9ajyb381qaczdrd-bash44-017.drv:/nix/store/ip70l59j1w6lfmi0fx02lmzjr2rahlgv-bash44-009.drv:/nix/store/kpr5qx791p55y7kgbypw230nqp673fya-bash44-005.drv:/nix/store/l42vs1awqpx8pf681fql357s3pa8qqk3-bash44-011.drv:/nix/store/lx3frlxywbvvr9823sxqp07jlfniib9p-bash44-008.drv:/nix/store/m5j1yp47lw1psd9n6bzina1167abbprr-bash44-023.drv?/nix/store/myfzvw3m2fzg7r3xkzr15c0flbc9mxiq-bash-4.4.tar.gz.drv:/nix/store/n1qz6fhb4fkz0i5f9sl6f1vqyrlnaiqv-bash44-016.drv:/nix/store/n3g29b5ha33ssq0v79gsf4vd198vj5r3-bash44-015.drv;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv:/nix/store/pxjkwfqmn0hmzjqgbsh5j31wrqflhxbf-bash44-012.drv:/nix/store/q8hxz4f402ps0vwhj3sgfyp6x0ss35sv-bash44-003.drv:/nix/store/r4lwjq1nvwpaqabaaj5bv001xxfj4ziq-bash44-010.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv:/nix/store/xadh3b1m14451ky8c8a297063nzrf1zn-bash44-020.drv:/nix/store/xs5c12bzf9vrrniscd53p2j9vkmvww2p-bash44-014.drv:/nix/store/z4ym1w4ssi236w2i6nsf7ba0s5ji9hd9-bash44-022.drv:/nix/store/zr7jikfinzgh6k2b10zp9jmfg4gv7za0-bash44-021.drv nix-archive-1(typeregularcontents� Derive([("out","/nix/store/lwg9f6v4flzgzvh9ac0lznqbrvy21g9i-bootstrap-stage4-stdenv-linux","","")],[("/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv",["bin"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/pzn001v3y4m8jx8nxpbwxhvfwbvw5slj-patchelf-0.12 /nix/store/3ffns5cpdv82m7m0nkklr01nsjxq1qc7-xz-5.2.5-bin /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh "),("initialPath","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools"),("name","bootstrap-stage4-stdenv-linux"),("out","/nix/store/lwg9f6v4flzgzvh9ac0lznqbrvy21g9i-bootstrap-stage4-stdenv-linux"),("preHook","# Don't patch #!/interpreter because it leads to retained\n# dependencies on the bootstrapTools in the final stdenv.\ndontPatchShebangs=1\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("system","x86_64-linux")]))NIXEM/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv=/nix/store/0xwbby6rwabx152vqai4508kyvka4xpf-patchelf-0.12.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.shF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh8/nix/store/jdzfma9vh35c0q6lbpgzklnn2nkgwym3-xz-5.2.5.drv8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.shA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh nix-archive-1(typeregularcontents Derive([("info","/nix/store/r9q3f6na68h9lm38vv4vyb6am86hylh8-binutils-2.31.1-info","",""),("man","/nix/store/cy6vdzlmsnhkz9n6swyf35lh06nw4hv7-binutils-2.31.1-man","",""),("out","/nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv",["dev"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"]),("/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/z5x1p3p59d5v0xsx5plpp2f28sl47gbd-binutils-2.31.1.tar.bz2.drv",["out"])],["/nix/store/064jmylcq7h6fa5asg0rna9awcqz3765-0001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31","/nix/store/fbqjjd9g3csmpj6dnxw0s06y9zl3ryxv-gold-symbol-visibility.patch","/nix/store/h0if43b7mx5vp92c7pkyzj9lh4ifpiwp-0001-x86-Properly-add-X86_ISA_1_NEEDED-property.patch","/nix/store/zn2h0kln2b02x4x6jqxymd4sg9cwvdsx-0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-static-libgcc"),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs","/nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev /nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--enable-shared --disable-static --enable-64-bit-bfd --with-system-zlib --enable-deterministic-archives --disable-werror --enable-fix-loongson2f-nop --enable-new-dtags --enable-gold --enable-plugins --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu"),("configurePlatforms","build host"),("depsBuildBuild","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("hardeningDisable","format pie"),("info","/nix/store/r9q3f6na68h9lm38vv4vyb6am86hylh8-binutils-2.31.1-info"),("man","/nix/store/cy6vdzlmsnhkz9n6swyf35lh06nw4hv7-binutils-2.31.1-man"),("name","binutils-2.31.1"),("nativeBuildInputs","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3"),("noSysDirs","1"),("out","/nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1"),("outputs","out info man"),("patches","/nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/deterministic.patch /nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/no-plugins.patch /nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/disambiguate-arm-targets.patch /nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31/always-search-rpath.patch /nix/store/fbqjjd9g3csmpj6dnxw0s06y9zl3ryxv-gold-symbol-visibility.patch /nix/store/zn2h0kln2b02x4x6jqxymd4sg9cwvdsx-0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch /nix/store/064jmylcq7h6fa5asg0rna9awcqz3765-0001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch /nix/store/h0if43b7mx5vp92c7pkyzj9lh4ifpiwp-0001-x86-Properly-add-X86_ISA_1_NEEDED-property.patch"),("pname","binutils"),("postFixup",""),("preConfigure","# Clear the default library search path.\nif test \"$noSysDirs\" = \"1\"; then\n echo 'NATIVE_LIB_DIRS=' >> ld/configure.tgt\nfi\n\n# Use symlinks instead of hard links to save space (\"strip\" in the\n# fixup phase strips each hard link separately).\nfor i in binutils/Makefile.in gas/Makefile.in ld/Makefile.in gold/Makefile.in; do\n sed -i \"$i\" -e 's|ln |ln -s |'\ndone\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/n1pp66v5mya20j0rq5mbzkak0pf6sal0-binutils-2.31.1.tar.bz2"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","2.31.1")]))NIXE?/nix/store/9ssv4a0ldfawsj2fzk47kszn78qxwz77-binutils-2.31.1.drv e/nix/store/064jmylcq7h6fa5asg0rna9awcqz3765-0001-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh0/nix/store/ap3bqpcxfbxn41ifj713w2fixkds1rai-2.31H/nix/store/fbqjjd9g3csmpj6dnxw0s06y9zl3ryxv-gold-symbol-visibility.patchR/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drva/nix/store/h0if43b7mx5vp92c7pkyzj9lh4ifpiwp-0001-x86-Properly-add-X86_ISA_1_NEEDED-property.patch;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drvG/nix/store/z5x1p3p59d5v0xsx5plpp2f28sl47gbd-binutils-2.31.1.tar.bz2.drvk/nix/store/zn2h0kln2b02x4x6jqxymd4sg9cwvdsx-0001-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/98xvaqm7hysf1b5jm9fwl57iw6s7jsf8-glibc-iconv-2.32","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["dev"]),("/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildCommand","mkdir -p $out/include\nln -sv /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include/iconv.h $out/include\n"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","glibc-iconv-2.32"),("nativeBuildInputs",""),("out","/nix/store/98xvaqm7hysf1b5jm9fwl57iw6s7jsf8-glibc-iconv-2.32"),("outputs","out"),("passAsFile","buildCommand"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("stdenv","/nix/store/lwg9f6v4flzgzvh9ac0lznqbrvy21g9i-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE@/nix/store/45s4mv25gn5kyvnl2qgwc0cccabap06h-glibc-iconv-2.32.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/pc37zlipj2ap1h5c092rsh1d7mpha0pc-grep-3.5.tar.xz","sha256","b82ac77707c2ab945520c8404c9fa9f890f7791a62cf2103cf6238acad87a44a")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","grep-3.5.tar.xz"),("out","/nix/store/pc37zlipj2ap1h5c092rsh1d7mpha0pc-grep-3.5.tar.xz"),("outputHash","0jm4hynsqf32rw1j3kv239wzg47qm6glqh6841ar9ay20xvwfamq"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/grep/grep-3.5.tar.xz"),("urls","https://ftpmirror.gnu.org/grep/grep-3.5.tar.xz")]))NIXE?/nix/store/i2r8bhxxncck242gy8mvm6232i5hxjsj-grep-3.5.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/zpf0j0qqw8bhm1knfr1x29zzq8pc85wj-pcre-8.44.tar.bz2","sha256","19108658b23b3ec5058edc9f66ac545ea19f9537234be1ec62b714c84399366d")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","pcre-8.44.tar.bz2"),("out","/nix/store/zpf0j0qqw8bhm1knfr1x29zzq8pc85wj-pcre-8.44.tar.bz2"),("outputHash","0v9nk51wh55pcbnf2jr36yarz8ayajn6d7ywiq2wagivn9c8c40r"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.bz2"),("urls","https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.bz2")]))NIXEA/nix/store/9r1fr9jyn27yay12gmrck93wk33qw30l-pcre-8.44.tar.bz2.drv nix-archive-1(typeregularcontents1diff --git a/pcre_exec.c b/pcre_exec.c
--- a/pcre_exec.c
+++ b/pcre_exec.c
@@ -509,6 +509,12 @@
(e.g. stopped by repeated call or recursion limit)
*/
+#ifdef __GNUC__
+static int
+match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
+ PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,
+ unsigned int rdepth) __attribute__((noinline,noclone));
+#endif
static int
match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,
)NIXEE/nix/store/m2qc8a9c4yr5xmqck50fpzzwzpqggbbw-stacksize-detection.patch nix-archive-1(typeregularcontents�Derive([("bin","/nix/store/dnynm2ljid0iidr5ph68z6z4jhsrxqi4-pcre-8.44-bin","",""),("dev","/nix/store/4ygxzr6pnvd9cchnznq9h70s9dns7lic-pcre-8.44-dev","",""),("doc","/nix/store/i6jj4k755a9azgxpwij36ibb3sarsnxb-pcre-8.44-doc","",""),("man","/nix/store/hbhm7m94ff551zxfjjqq9l2yrkyc29qi-pcre-8.44-man","",""),("out","/nix/store/qb4rmys9h9abdh104jjflfj8hscm9n9d-pcre-8.44","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/9r1fr9jyn27yay12gmrck93wk33qw30l-pcre-8.44.tar.bz2.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/m2qc8a9c4yr5xmqck50fpzzwzpqggbbw-stacksize-detection.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/dnynm2ljid0iidr5ph68z6z4jhsrxqi4-pcre-8.44-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--enable-jit --enable-unicode-properties --disable-cpp"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/4ygxzr6pnvd9cchnznq9h70s9dns7lic-pcre-8.44-dev"),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/i6jj4k755a9azgxpwij36ibb3sarsnxb-pcre-8.44-doc"),("man","/nix/store/hbhm7m94ff551zxfjjqq9l2yrkyc29qi-pcre-8.44-man"),("name","pcre-8.44"),("nativeBuildInputs",""),("out","/nix/store/qb4rmys9h9abdh104jjflfj8hscm9n9d-pcre-8.44"),("outputs","bin dev out doc man"),("patches","/nix/store/m2qc8a9c4yr5xmqck50fpzzwzpqggbbw-stacksize-detection.patch"),("postFixup","moveToOutput bin/pcre-config \"$dev\"\n"),("preCheck","patchShebangs RunGrepTest\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/zpf0j0qqw8bhm1knfr1x29zzq8pc85wj-pcre-8.44.tar.bz2"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE9/nix/store/s1sjb0fzyrjaz760z3725nj8sx9fs145-pcre-8.44.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shA/nix/store/9r1fr9jyn27yay12gmrck93wk33qw30l-pcre-8.44.tar.bz2.drvE/nix/store/m2qc8a9c4yr5xmqck50fpzzwzpqggbbw-stacksize-detection.patchM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/vpk8i3a16mv7qhg60irq0j9a5irw8di7-gnugrep-3.5-info","",""),("out","/nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/45s4mv25gn5kyvnl2qgwc0cccabap06h-glibc-iconv-2.32.drv",["out"]),("/nix/store/i2r8bhxxncck242gy8mvm6232i5hxjsj-grep-3.5.tar.xz.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/s1sjb0fzyrjaz760z3725nj8sx9fs145-pcre-8.44.drv",["dev"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/4ygxzr6pnvd9cchnznq9h70s9dns7lic-pcre-8.44-dev /nix/store/98xvaqm7hysf1b5jm9fwl57iw6s7jsf8-glibc-iconv-2.32"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("info","/nix/store/vpk8i3a16mv7qhg60irq0j9a5irw8di7-gnugrep-3.5-info"),("name","gnugrep-3.5"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("out","/nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5"),("outputs","out info"),("patches",""),("pname","gnugrep"),("postInstall","rm $out/bin/egrep $out/bin/fgrep\necho \"#! /bin/sh\" > $out/bin/egrep\necho \"exec $out/bin/grep -E \\\"\\$@\\\"\" >> $out/bin/egrep\necho \"#! /bin/sh\" > $out/bin/fgrep\necho \"exec $out/bin/grep -F \\\"\\$@\\\"\" >> $out/bin/fgrep\nchmod +x $out/bin/egrep $out/bin/fgrep\n"),("preConfigure","export MKDIR_P=\"mkdir -p\"\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/pc37zlipj2ap1h5c092rsh1d7mpha0pc-grep-3.5.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","3.5")]))NIXE;/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/45s4mv25gn5kyvnl2qgwc0cccabap06h-glibc-iconv-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh?/nix/store/i2r8bhxxncck242gy8mvm6232i5hxjsj-grep-3.5.tar.xz.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv9/nix/store/s1sjb0fzyrjaz760z3725nj8sx9fs145-pcre-8.44.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontentsnDerive([("info","/nix/store/9xjcy44l6m1bqgy5d969zf40ya5jkm6j-binutils-wrapper-2.31.1-info","",""),("man","/nix/store/m5kcalw5ga6f3sr303pjv2ssfcjgxrgm-binutils-wrapper-2.31.1-man","",""),("out","/nix/store/yxb05gy6knsij4mjkm69ckghdy3kj4l6-binutils-wrapper-2.31.1","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv",["out"]),("/nix/store/9ssv4a0ldfawsj2fzk47kszn78qxwz77-binutils-2.31.1.drv",["info","man","out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv",["out"]),("/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv",["out"])],["/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh","/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools_bin","/nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("coreutils_bin","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("dynamicLinker","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/ld-linux-x86-64.so.2"),("emulation","elf64-x86-64"),("expand-response-params","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params"),("expandResponseParams","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5"),("info","/nix/store/9xjcy44l6m1bqgy5d969zf40ya5jkm6j-binutils-wrapper-2.31.1-info"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $bintools_bin > $out/nix-support/orig-bintools\n\nldPath=\"/nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1/bin\"\nif [ -e $ldPath/as ]; then\n ln -s $ldPath/as $out/bin/as\nfi\n\nwrap ld /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh ${ld:-$ldPath/ld}\n\nfor variant in ld.gold ld.bfd ld.lld; do\n local underlying=$ldPath/$variant\n [[ -e \"$underlying\" ]] || continue\n wrap $variant /nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.sh $underlying\ndone\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("man","/nix/store/m5kcalw5ga6f3sr303pjv2ssfcjgxrgm-binutils-wrapper-2.31.1-man"),("name","binutils-wrapper-2.31.1"),("nativeBuildInputs",""),("out","/nix/store/yxb05gy6knsij4mjkm69ckghdy3kj4l6-binutils-wrapper-2.31.1"),("outputs","out man info"),("patches",""),("pname","binutils-wrapper"),("postFixup","touch \"$out/nix-support/libc-ldflags\"\necho \"-L/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib\" >> $out/nix-support/libc-ldflags\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\nif [[ -z ${dynamicLinker+x} ]]; then\n echo \"Don't know the name of the dynamic linker for platform 'x86_64-unknown-linux-gnu', so guessing instead.\" >&2\n local dynamicLinker=\"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/ld*.so.?\"\nfi\ndynamicLinker=($dynamicLinker)\n\ncase ${#dynamicLinker[@]} in\n 0) echo \"No dynamic linker found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\n 1) echo \"Using dynamic linker: '$dynamicLinker'\" >&2;;\n *) echo \"Multiple dynamic linkers found for platform 'x86_64-unknown-linux-gnu'.\" >&2;;\nesac\n\nif [ -n \"${dynamicLinker-}\" ]; then\n echo $dynamicLinker > $out/nix-support/dynamic-linker\n\nif [ -e /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/32/ld-linux.so.2 ]; then\n echo /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/32/ld-linux.so.2 > $out/nix-support/dynamic-linker-m32\nfi\necho -dynamic-linker \"$dynamicLinker\" >> $out/nix-support/libc-ldflags-before\nfi\nprintWords /nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1 /nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin > $out/nix-support/propagated-user-env-packages\nln -s /nix/store/cy6vdzlmsnhkz9n6swyf35lh06nw4hv7-binutils-2.31.1-man $man\nln -s /nix/store/r9q3f6na68h9lm38vv4vyb6am86hylh8-binutils-2.31.1-info $info\nexport hardening_unsupported_flags=\"\"\nif [[ \"$($ldPath/ld -z now 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" bindnow\"\nfi\nif [[ \"$($ldPath/ld -z relro 2>&1 || true)\" =~ un(recognized|known)\\ option ]]; then\n hardening_unsupported_flags+=\" relro\"\nfi\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh"),("shell","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("stdenv","/nix/store/lwg9f6v4flzgzvh9ac0lznqbrvy21g9i-bootstrap-stage4-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","2.31.1"),("wrapperName","BINTOOLS_WRAPPER")]))NIXEG/nix/store/w24z9jb462cl93ln2qmw7nyh16flph7z-binutils-wrapper-2.31.1.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv8/nix/store/91kbvgwal52x34cgcbv4msrfclhx1ivx-add-flags.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh?/nix/store/9ssv4a0ldfawsj2fzk47kszn78qxwz77-binutils-2.31.1.drv</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv9/nix/store/dk3ly72kiv27srcj1mjr5n4112vx2hfk-setup-hook.sh9/nix/store/fdx9vrf5fnk8326jf5619q8v09ah1lqj-ld-wrapper.shF/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drvM/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash</nix/store/qzsa3s8dzhyq54jagim4daz1ic2mshfz-add-hardening.sh;/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents�Derive([("info","/nix/store/z4lbg4cw2rxw2zmk1pq2a3cb84ij944k-gcc-wrapper-9.3.0-info","",""),("man","/nix/store/kjlp8z20whyjmkr9khjasgf6r49dq74a-gcc-wrapper-9.3.0-man","",""),("out","/nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv",["out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv",["info","lib","man","out"]),("/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv",["out"]),("/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/w24z9jb462cl93ln2qmw7nyh16flph7z-binutils-wrapper-2.31.1.drv",["out"]),("/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv",["out"])],["/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh","/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bintools","/nix/store/yxb05gy6knsij4mjkm69ckghdy3kj4l6-binutils-wrapper-2.31.1"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("cc","/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0"),("configureFlags",""),("coreutils_bin","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontBuild","1"),("dontConfigure","1"),("expand-response-params","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params"),("expandResponseParams","/nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params/bin/expand-response-params"),("gnugrep_bin","/nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5"),("info","/nix/store/z4lbg4cw2rxw2zmk1pq2a3cb84ij944k-gcc-wrapper-9.3.0-info"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\necho $cc > $out/nix-support/orig-cc\n\nccPath=\"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0/bin\"\nfor bbin in $bintools/bin/*; do\n mkdir -p \"$out/bin\"\n ln -s \"$bbin\" \"$out/bin/$(basename $bbin)\"\ndone\nexport named_cc=cc\nexport named_cxx=c++\n\nif [ -e $ccPath/gcc ]; then\n wrap gcc $wrapper $ccPath/gcc\n ln -s gcc $out/bin/cc\n export named_cc=gcc\n export named_cxx=g++\nelif [ -e $ccPath/clang ]; then\n wrap clang $wrapper $ccPath/clang\n ln -s clang $out/bin/cc\n export named_cc=clang\n export named_cxx=clang++\nfi\n\nif [ -e $ccPath/g++ ]; then\n wrap g++ $wrapper $ccPath/g++\n ln -s g++ $out/bin/c++\nelif [ -e $ccPath/clang++ ]; then\n wrap clang++ $wrapper $ccPath/clang++\n ln -s clang++ $out/bin/c++\nfi\n\nif [ -e $ccPath/cpp ]; then\n wrap cpp $wrapper $ccPath/cpp\nfi\n"),("libc_bin","/nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin"),("libc_dev","/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev"),("libc_lib","/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32"),("man","/nix/store/kjlp8z20whyjmkr9khjasgf6r49dq74a-gcc-wrapper-9.3.0-man"),("name","gcc-wrapper-9.3.0"),("nativeBuildInputs",""),("out","/nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0"),("outputs","out man info"),("patches",""),("pname","gcc-wrapper"),("postFixup","touch \"$out/nix-support/cc-cflags\"\ntouch \"$out/nix-support/cc-ldflags\"\nif [[ -f \"$bintools/nix-support/dynamic-linker\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker\" \"$out/nix-support\"\nfi\nif [[ -f \"$bintools/nix-support/dynamic-linker-m32\" ]]; then\n ln -s \"$bintools/nix-support/dynamic-linker-m32\" \"$out/nix-support\"\nfi\ntouch \"$out/nix-support/libc-cflags\"\ntouch \"$out/nix-support/libc-ldflags\"\necho \"-B/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib/\" >> $out/nix-support/libc-crt1-cflags\necho \"-idirafter /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include\" >> $out/nix-support/libc-cflags\nfor dir in \"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0\"/lib/gcc/*/*/include-fixed; do\n echo '-idirafter' ${dir} >> $out/nix-support/libc-cflags\ndone\n\necho \"/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32\" > $out/nix-support/orig-libc\necho \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" > $out/nix-support/orig-libc-dev\ntouch \"$out/nix-support/libcxx-cxxflags\"\ntouch \"$out/nix-support/libcxx-ldflags\"\nif [ -e \"/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\" -a ! -L \"/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\" ]; then\n ccLDFlags+=\" -L/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\"\n ccCFlags+=\" -B/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib64\"\nfi\nccLDFlags+=\" -L/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib\"\nccCFlags+=\" -B/nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib/lib\"\n\necho \"$ccLDFlags\" >> $out/nix-support/cc-ldflags\necho \"$ccCFlags\" >> $out/nix-support/cc-cflags\nln -s /nix/store/4lzqa89xy0vgnf8a07ry51ql2ihb3iim-gcc-9.3.0-man $man\nln -s /nix/store/cl2kay78g14lvxhmqazfnczgpdfz0518-gcc-9.3.0-info $info\nexport hardening_unsupported_flags=\"\"\nfor flags in \"$out/nix-support\"/*flags*; do\n substituteInPlace \"$flags\" --replace $'\\n' ' '\ndone\n\nsubstituteAll /nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.sh $out/nix-support/add-hardening.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs","/nix/store/yxb05gy6knsij4mjkm69ckghdy3kj4l6-binutils-wrapper-2.31.1"),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.sh"),("shell","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("stdenv","/nix/store/lwg9f6v4flzgzvh9ac0lznqbrvy21g9i-bootstrap-stage4-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","9.3.0"),("wrapper","/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh"),("wrapperName","CC_WRAPPER")]))NIXEA/nix/store/1awan4fyzhanpbc93d362v96xg3hf64c-gcc-wrapper-9.3.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv8/nix/store/10833nxppwbl1xn3s40jr4i9hrfkgkjk-add-flags.sh9/nix/store/4nh8j2ckvxnqimr4rnxvgzscaiip8q86-cc-wrapper.sh:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv9/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv</nix/store/l1ykn6kd0wgphlz2lz1yrqm002g0g1i2-add-hardening.shF/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv9/nix/store/nc4bvrgb8jxh4k1fq2zgzh4mmxqavp54-setup-hook.shM/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bashG/nix/store/w24z9jb462cl93ln2qmw7nyh16flph7z-binutils-wrapper-2.31.1.drv;/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontentsT--- a/locate/Makefile.in
+++ b/locate/Makefile.in
@@ -2357,7 +2357,7 @@ updatedb: updatedb.sh Makefile
chmod +x $@
install-data-hook:
- $(top_srcdir)/build-aux/mkinstalldirs $(DESTDIR)$(localstatedir)
+ #$(top_srcdir)/build-aux/mkinstalldirs $(DESTDIR)$(localstatedir)
dblocation.texi:
echo '@set LOCATE_DB $(LOCATE_DB)' > $@.tmp
)NIXEE/nix/store/4r8s8hcwyvvvnpcncps09zscqkh5qapx-no-install-statedir.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/yihyyg1w3afvb5l1fgy5jfqj23g5zl4w-findutils-4.7.0.tar.xz","sha256","c5fefbdf9858f7e4feb86f036e1247a54c79fc2d8e4b7064d5aaa1f47dfa789a")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","findutils-4.7.0.tar.xz"),("out","/nix/store/yihyyg1w3afvb5l1fgy5jfqj23g5zl4w-findutils-4.7.0.tar.xz"),("outputHash","16kqz9yz98dasmj70jwf5py7jk558w96w0vgp3zf9xsqk3gzpzn5"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/findutils/findutils-4.7.0.tar.xz"),("urls","https://ftpmirror.gnu.org/findutils/findutils-4.7.0.tar.xz")]))NIXEF/nix/store/q5rskzwkacpbxzzzsz781iam4h5hp4c9-findutils-4.7.0.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/ja132my1cd88svj9gn6dln4mp83y66ny-findutils-4.7.0-info","",""),("out","/nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv",["out"]),("/nix/store/q5rskzwkacpbxzzzsz781iam4h5hp4c9-findutils-4.7.0.tar.xz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/4r8s8hcwyvvvnpcncps09zscqkh5qapx-no-install-statedir.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","SORT=/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32/bin/sort --localstatedir=/var/cache"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("info","/nix/store/ja132my1cd88svj9gn6dln4mp83y66ny-findutils-4.7.0-info"),("name","findutils-4.7.0"),("nativeBuildInputs",""),("out","/nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0"),("outputs","out info"),("patches","/nix/store/4r8s8hcwyvvvnpcncps09zscqkh5qapx-no-install-statedir.patch"),("pname","findutils"),("postPatch","substituteInPlace xargs/xargs.c --replace 'char default_cmd[] = \"echo\";' 'char default_cmd[] = \"/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32/bin/echo\";'\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/yihyyg1w3afvb5l1fgy5jfqj23g5zl4w-findutils-4.7.0.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.7.0")]))NIXE?/nix/store/1b5xg25dp8aqa6i5dnxynbgs86993rsi-findutils-4.7.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvE/nix/store/4r8s8hcwyvvvnpcncps09zscqkh5qapx-no-install-statedir.patch>/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shF/nix/store/q5rskzwkacpbxzzzsz781iam4h5hp4c9-findutils-4.7.0.tar.xz.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/f5gj2g7zdabqc35335ry2whpkl5skd2w-gzip-1.10.tar.xz","sha256","8425ccac99872d544d4310305f915f5ea81e04d0f437ef1a230dc9d1c819d7c0")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","gzip-1.10.tar.xz"),("out","/nix/store/f5gj2g7zdabqc35335ry2whpkl5skd2w-gzip-1.10.tar.xz"),("outputHash","1h6p374d3j8d4cdfydzls021xa2yby8myc0h8d6m8bc7k6ncq9c4"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/gzip/gzip-1.10.tar.xz"),("urls","https://ftpmirror.gnu.org/gzip/gzip-1.10.tar.xz")]))NIXE@/nix/store/310735bj7rnfhy1vyrddalz2cfa9f4kl-gzip-1.10.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/ijvcnxhavnd5fr46m4sdg79anv48k43y-setup-hook","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("allowSubstitutes",""),("buildCommand","n=$out\nmkdir -p \"$(dirname \"$n\")\"\n\nif [ -e \"$textPath\" ]; then\n mv \"$textPath\" \"$n\"\nelse\n echo -n \"$text\" > \"$n\"\nfi\n\n\n\n(test -n \"$executable\" && chmod +x \"$n\") || true\n"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("executable",""),("name","setup-hook"),("nativeBuildInputs",""),("out","/nix/store/ijvcnxhavnd5fr46m4sdg79anv48k43y-setup-hook"),("outputs","out"),("passAsFile","text"),("patches",""),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("stdenv","/nix/store/lwg9f6v4flzgzvh9ac0lznqbrvy21g9i-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("text","export GZIP=\"-n\"\n")]))NIXE:/nix/store/4rb3kybj67jjd9sphj5r9gl9i55k4wx2-setup-hook.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontentsNDerive([("info","/nix/store/bw8xnhi3kvckcnsqdv7hjcbq8rsgjl2l-gzip-1.10-info","",""),("man","/nix/store/2j94g3lq1pq6h71l774cv1n76ipl5phd-gzip-1.10-man","",""),("out","/nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/310735bj7rnfhy1vyrddalz2cfa9f4kl-gzip-1.10.tar.xz.drv",["out"]),("/nix/store/4rb3kybj67jjd9sphj5r9gl9i55k4wx2-setup-hook.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv",["bin"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("info","/nix/store/bw8xnhi3kvckcnsqdv7hjcbq8rsgjl2l-gzip-1.10-info"),("makeFlags","SHELL=/bin/sh GREP=grep"),("man","/nix/store/2j94g3lq1pq6h71l774cv1n76ipl5phd-gzip-1.10-man"),("name","gzip-1.10"),("nativeBuildInputs","/nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("out","/nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10"),("outputs","out man info"),("patches",""),("pname","gzip"),("preFixup","sed -i '1{;/#!\\/bin\\/sh/aPATH=\"'$out'/bin:$PATH\"\n}' $out/bin/*\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHook","/nix/store/ijvcnxhavnd5fr46m4sdg79anv48k43y-setup-hook"),("src","/nix/store/f5gj2g7zdabqc35335ry2whpkl5skd2w-gzip-1.10.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.10")]))NIXE9/nix/store/6vp6a7pr3jzw11jw7f5kgn00c2af7jd4-gzip-1.10.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/310735bj7rnfhy1vyrddalz2cfa9f4kl-gzip-1.10.tar.xz.drv:/nix/store/4rb3kybj67jjd9sphj5r9gl9i55k4wx2-setup-hook.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv8/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/8lim9yzfpmxf0h62l2wylmgrwg7vx0x3-diffutils-3.7.tar.xz","sha256","b3a7a6221c3dc916085f0d205abf6b8e1ba443d4dd965118da364a1dc1cb3a26")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","diffutils-3.7.tar.xz"),("out","/nix/store/8lim9yzfpmxf0h62l2wylmgrwg7vx0x3-diffutils-3.7.tar.xz"),("outputHash","09isrg0isjinv8c535nxsi1s86wfdfzml80dbw41dj9x3hiad9xk"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/diffutils/diffutils-3.7.tar.xz"),("urls","https://ftpmirror.gnu.org/diffutils/diffutils-3.7.tar.xz")]))NIXED/nix/store/ns2lgxa4f77pzylam18b31p5pk8qp8r2-diffutils-3.7.tar.xz.drv nix-archive-1(typeregularcontents<Derive([("info","/nix/store/nxrpj6r2va3ylx14d67lzqjqwpp0z6dp-diffutils-3.7-info","",""),("out","/nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv",["out"]),("/nix/store/ns2lgxa4f77pzylam18b31p5pk8qp8r2-diffutils-3.7.tar.xz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv",["bin"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","PR_PROGRAM=/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32/bin/pr"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("info","/nix/store/nxrpj6r2va3ylx14d67lzqjqwpp0z6dp-diffutils-3.7-info"),("name","diffutils-3.7"),("nativeBuildInputs","/nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("out","/nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7"),("outputs","out info"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/8lim9yzfpmxf0h62l2wylmgrwg7vx0x3-diffutils-3.7.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE=/nix/store/7hmz09qanmrb052555vqjl9s67is5mxx-diffutils-3.7.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shD/nix/store/ns2lgxa4f77pzylam18b31p5pk8qp8r2-diffutils-3.7.tar.xz.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv8/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/yvmxwjqla2q9xrk3m9fhx7xfbci44cfz-sed-4.8.tar.xz","sha256","f79b0cfea71b37a8eeec8490db6c5f7ae7719c35587f21edb0617f370eeff633")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","sed-4.8.tar.xz"),("out","/nix/store/yvmxwjqla2q9xrk3m9fhx7xfbci44cfz-sed-4.8.tar.xz"),("outputHash","0cznxw73fzv1n3nj2zsq6nf73rvsbxndp444xkpahdqvlzz0r6zp"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/sed/sed-4.8.tar.xz"),("urls","https://ftpmirror.gnu.org/sed/sed-4.8.tar.xz")]))NIXE>/nix/store/cnh3rigjsk9vfismiz6cjx3qf6g0pipz-sed-4.8.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/s9cbz47psv947n3p977zn81szjcd6vrv-gnused-4.8-info","",""),("out","/nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/cnh3rigjsk9vfismiz6cjx3qf6g0pipz-sed-4.8.tar.xz.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("info","/nix/store/s9cbz47psv947n3p977zn81szjcd6vrv-gnused-4.8-info"),("name","gnused-4.8"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("out","/nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8"),("outputs","out info"),("patches",""),("pname","gnused"),("preConfigure","patchShebangs ./build-aux/help2man"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/yvmxwjqla2q9xrk3m9fhx7xfbci44cfz-sed-4.8.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.8")]))NIXE:/nix/store/g3n9568r6gm2kzg7rswzznvfin2z33v9-gnused-4.8.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh>/nix/store/cnh3rigjsk9vfismiz6cjx3qf6g0pipz-sed-4.8.tar.xz.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/c4cxk8zh8vqrj4f0hxq9i1diqw4nd93b-gawk-5.1.0.tar.xz","sha256","cf5fea4ac5665fd5171af4716baab2effc76306a9572988d5ba1078f196382bd")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","gawk-5.1.0.tar.xz"),("out","/nix/store/c4cxk8zh8vqrj4f0hxq9i1diqw4nd93b-gawk-5.1.0.tar.xz"),("outputHash","1gc2cccqy1x1bf6rhwlmd8q7dz7gnam6nwgl38bxapv6qm5flpyg"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/gawk/gawk-5.1.0.tar.xz"),("urls","https://ftpmirror.gnu.org/gawk/gawk-5.1.0.tar.xz")]))NIXEA/nix/store/ar36yc5fjkw282biprp46xizbpg102dy-gawk-5.1.0.tar.xz.drv nix-archive-1(typeregularcontents
Derive([("info","/nix/store/s341m9v3wc60n7r8gq4i57sf16yiwhsc-gawk-5.1.0-info","",""),("man","/nix/store/rvlq8bx5jkq6nqrzdsl0gsinzzyg65w7-gawk-5.1.0-man","",""),("out","/nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/ar36yc5fjkw282biprp46xizbpg102dy-gawk-5.1.0.tar.xz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--without-libsigsegv --without-readline"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("info","/nix/store/s341m9v3wc60n7r8gq4i57sf16yiwhsc-gawk-5.1.0-info"),("makeFlags","AR=ar"),("man","/nix/store/rvlq8bx5jkq6nqrzdsl0gsinzzyg65w7-gawk-5.1.0-man"),("name","gawk-5.1.0"),("nativeBuildInputs",""),("out","/nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0"),("outputs","out info man"),("patches",""),("postInstall","rm \"$out\"/bin/gawk-*\nln -s gawk.1 \"${!outputMan}\"/share/man/man1/awk.1\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/c4cxk8zh8vqrj4f0hxq9i1diqw4nd93b-gawk-5.1.0.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE:/nix/store/hdngb074saxk5sbq1hd9ph2pqij74khd-gawk-5.1.0.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shA/nix/store/ar36yc5fjkw282biprp46xizbpg102dy-gawk-5.1.0.tar.xz.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontentsnlzipUnpackCmdHook() {
[[ "$1" = *.tar.lz ]] && tar --lzip -xf "$1"
}
unpackCmdHooks+=(lzipUnpackCmdHook)
)NIXE>/nix/store/h2fcbw7ghgn3i4qadszdp272w4dab7ln-lzip-setup-hook.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/i95jrwl41kb92jai94vagzfgrg2vpww3-lzip-1.21.tar.gz","sha256","e48b5039d3164d670791f9c5dbaa832bf2df080cb1fbb4f33aa7b3300b670d8b")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","lzip-1.21.tar.gz"),("out","/nix/store/i95jrwl41kb92jai94vagzfgrg2vpww3-lzip-1.21.tar.gz"),("outputHash","12qdcw5k1cx77brv9yxi1h4dzwibhfmdpigrj43nfk8nscwm12z4"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://mirror.easyname.at/nongnu/lzip/lzip-1.21.tar.gz"),("urls","https://mirror.easyname.at/nongnu/lzip/lzip-1.21.tar.gz")]))NIXE@/nix/store/knmdk8h4cwirbirpqd1anyf5764abs0i-lzip-1.21.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/55y8m3b2xrxmh2kqfxi6xkd1gkvbblh8-lzip-1.21","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/knmdk8h4cwirbirpqd1anyf5764abs0i-lzip-1.21.tar.gz.drv",["out"]),("/nix/store/lv9k22g29i7dh7hj6shqcgdm6jfqwls9-texinfo-6.7.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/h2fcbw7ghgn3i4qadszdp272w4dab7ln-lzip-setup-hook.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","CPPFLAGS=-DNDEBUG CFLAGS=-O3 CXXFLAGS=-O3"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("name","lzip-1.21"),("nativeBuildInputs","/nix/store/4gpi8j0b4lnl4kc9awrawv6q5a0shfhl-texinfo-6.7"),("out","/nix/store/55y8m3b2xrxmh2kqfxi6xkd1gkvbblh8-lzip-1.21"),("outputs","out"),("patches",""),("pname","lzip"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHook","/nix/store/h2fcbw7ghgn3i4qadszdp272w4dab7ln-lzip-setup-hook.sh"),("src","/nix/store/i95jrwl41kb92jai94vagzfgrg2vpww3-lzip-1.21.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.21")]))NIXE9/nix/store/ng96fxyjfkr15xmh9rw13pys7gz386xs-lzip-1.21.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh>/nix/store/h2fcbw7ghgn3i4qadszdp272w4dab7ln-lzip-setup-hook.sh@/nix/store/knmdk8h4cwirbirpqd1anyf5764abs0i-lzip-1.21.tar.gz.drv;/nix/store/lv9k22g29i7dh7hj6shqcgdm6jfqwls9-texinfo-6.7.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/x7ri29hd4ifi4jdsrdqh9k0npi0rjhbl-ed-1.16.tar.lz","sha256","cfc07a14ab048a758473ce222e784fbf031485bcd54a76f74acfee1f390d8b2c")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","ed-1.16.tar.lz"),("out","/nix/store/x7ri29hd4ifi4jdsrdqh9k0npi0rjhbl-ed-1.16.tar.lz"),("outputHash","0b4b1lwizvng9bvpcjnmpj2i80xz9xw2w8nfff27b2h4mca7mh6g"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/ed/ed-1.16.tar.lz"),("urls","https://ftpmirror.gnu.org/ed/ed-1.16.tar.lz")]))NIXE>/nix/store/vph3qn0hb95d8x03ghvpva1wjyjp94m6-ed-1.16.tar.lz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/fcbw5ca51r2cqf4c8955m8blk2d0r4bn-ed-1.16","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/ng96fxyjfkr15xmh9rw13pys7gz386xs-lzip-1.21.drv",["out"]),("/nix/store/vph3qn0hb95d8x03ghvpva1wjyjp94m6-ed-1.16.tar.lz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("name","ed-1.16"),("nativeBuildInputs","/nix/store/55y8m3b2xrxmh2kqfxi6xkd1gkvbblh8-lzip-1.21"),("out","/nix/store/fcbw5ca51r2cqf4c8955m8blk2d0r4bn-ed-1.16"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/x7ri29hd4ifi4jdsrdqh9k0npi0rjhbl-ed-1.16.tar.lz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.16")]))NIXE7/nix/store/jzapakqw0mqxajcifdrzplk91zw5sakg-ed-1.16.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/ng96fxyjfkr15xmh9rw13pys7gz386xs-lzip-1.21.drv>/nix/store/vph3qn0hb95d8x03ghvpva1wjyjp94m6-ed-1.16.tar.lz.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/6l56r8b1clanydvpd5p1yc9p13viaw4q-tar-1.32.tar.xz","sha256","d0d3ae07f103323be809bc3eac0dcc386d52c5262499fe05511ac4788af1fdd8")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","tar-1.32.tar.xz"),("out","/nix/store/6l56r8b1clanydvpd5p1yc9p13viaw4q-tar-1.32.tar.xz"),("outputHash","1n7xy657ii0sa42zx6944v2m4v9qrh6sqgmw17l3nch3y43sxlyh"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/tar/tar-1.32.tar.xz"),("urls","https://ftpmirror.gnu.org/tar/tar-1.32.tar.xz")]))NIXE?/nix/store/zv80wp4gr71apm0vxyy7r7r6hq9xq8d1-tar-1.32.tar.xz.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/2bbkmsdgb4529y784bps6289z7fv4d0g-gnutar-1.32-info","",""),("out","/nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv",["dev"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/zv80wp4gr71apm0vxyy7r7r6hq9xq8d1-tar-1.32.tar.xz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("FORCE_UNSAFE_CONFIGURE",""),("buildInputs","/nix/store/2lmnh90w747bnmwznbna8n6krggv5nlm-acl-2.2.53-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("info","/nix/store/2bbkmsdgb4529y784bps6289z7fv4d0g-gnutar-1.32-info"),("name","gnutar-1.32"),("nativeBuildInputs",""),("out","/nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32"),("outputs","out info"),("patches",""),("pname","gnutar"),("postPatch",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/6l56r8b1clanydvpd5p1yc9p13viaw4q-tar-1.32.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.32")]))NIXE;/nix/store/lgy31acnbxbvgd8xh0b3fyfnb7484qhn-gnutar-1.32.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv?/nix/store/zv80wp4gr71apm0vxyy7r7r6hq9xq8d1-tar-1.32.tar.xz.drv nix-archive-1(typeregularcontents�From dce4683cbbe107a95f1f0d45fabc304acfb5d71a Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@gnu.org>
Date: Mon, 15 Jul 2019 16:21:48 +0200
Subject: Don't follow symlinks unless --follow-symlinks is given
* src/inp.c (plan_a, plan_b), src/util.c (copy_to_fd, copy_file,
append_to_file): Unless the --follow-symlinks option is given, open files with
the O_NOFOLLOW flag to avoid following symlinks. So far, we were only doing
that consistently for input files.
* src/util.c (create_backup): When creating empty backup files, (re)create them
with O_CREAT | O_EXCL to avoid following symlinks in that case as well.
---
src/inp.c | 12 ++++++++++--
src/util.c | 14 +++++++++++---
2 files changed, 21 insertions(+), 5 deletions(-)
diff --git a/src/inp.c b/src/inp.c
index 32d0919..22d7473 100644
--- a/src/inp.c
+++ b/src/inp.c
@@ -238,8 +238,13 @@ plan_a (char const *filename)
{
if (S_ISREG (instat.st_mode))
{
- int ifd = safe_open (filename, O_RDONLY|binary_transput, 0);
+ int flags = O_RDONLY | binary_transput;
size_t buffered = 0, n;
+ int ifd;
+
+ if (! follow_symlinks)
+ flags |= O_NOFOLLOW;
+ ifd = safe_open (filename, flags, 0);
if (ifd < 0)
pfatal ("can't open file %s", quotearg (filename));
@@ -340,6 +345,7 @@ plan_a (char const *filename)
static void
plan_b (char const *filename)
{
+ int flags = O_RDONLY | binary_transput;
int ifd;
FILE *ifp;
int c;
@@ -353,7 +359,9 @@ plan_b (char const *filename)
if (instat.st_size == 0)
filename = NULL_DEVICE;
- if ((ifd = safe_open (filename, O_RDONLY | binary_transput, 0)) < 0
+ if (! follow_symlinks)
+ flags |= O_NOFOLLOW;
+ if ((ifd = safe_open (filename, flags, 0)) < 0
|| ! (ifp = fdopen (ifd, binary_transput ? "rb" : "r")))
pfatal ("Can't open file %s", quotearg (filename));
if (TMPINNAME_needs_removal)
diff --git a/src/util.c b/src/util.c
index 1cc08ba..fb38307 100644
--- a/src/util.c
+++ b/src/util.c
@@ -388,7 +388,7 @@ create_backup (char const *to, const struct stat *to_st, bool leave_original)
try_makedirs_errno = ENOENT;
safe_unlink (bakname);
- while ((fd = safe_open (bakname, O_CREAT | O_WRONLY | O_TRUNC, 0666)) < 0)
+ while ((fd = safe_open (bakname, O_CREAT | O_EXCL | O_WRONLY | O_TRUNC, 0666)) < 0)
{
if (errno != try_makedirs_errno)
pfatal ("Can't create file %s", quotearg (bakname));
@@ -579,10 +579,13 @@ create_file (char const *file, int open_flags, mode_t mode,
static void
copy_to_fd (const char *from, int tofd)
{
+ int from_flags = O_RDONLY | O_BINARY;
int fromfd;
ssize_t i;
- if ((fromfd = safe_open (from, O_RDONLY | O_BINARY, 0)) < 0)
+ if (! follow_symlinks)
+ from_flags |= O_NOFOLLOW;
+ if ((fromfd = safe_open (from, from_flags, 0)) < 0)
pfatal ("Can't reopen file %s", quotearg (from));
while ((i = read (fromfd, buf, bufsize)) != 0)
{
@@ -625,6 +628,8 @@ copy_file (char const *from, char const *to, struct stat *tost,
else
{
assert (S_ISREG (mode));
+ if (! follow_symlinks)
+ to_flags |= O_NOFOLLOW;
tofd = create_file (to, O_WRONLY | O_BINARY | to_flags, mode,
to_dir_known_to_exist);
copy_to_fd (from, tofd);
@@ -640,9 +645,12 @@ copy_file (char const *from, char const *to, struct stat *tost,
void
append_to_file (char const *from, char const *to)
{
+ int to_flags = O_WRONLY | O_APPEND | O_BINARY;
int tofd;
- if ((tofd = safe_open (to, O_WRONLY | O_BINARY | O_APPEND, 0)) < 0)
+ if (! follow_symlinks)
+ to_flags |= O_NOFOLLOW;
+ if ((tofd = safe_open (to, to_flags, 0)) < 0)
pfatal ("Can't reopen file %s", quotearg (to));
copy_to_fd (from, tofd);
if (close (tofd) != 0)
--
cgit v1.0-41-gc330
)NIXE@/nix/store/0y5flakfvnf813cwrr8rygf1jnk0gfnc-CVE-2019-13636.patch nix-archive-1(typeregularcontents8From b5a91a01e5d0897facdd0f49d64b76b0f02b43e1 Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@gnu.org>
Date: Fri, 6 Apr 2018 11:34:51 +0200
Subject: Allow input files to be missing for ed-style patches
* src/pch.c (do_ed_script): Allow input files to be missing so that new
files will be created as with non-ed-style patches.
---
src/pch.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/pch.c b/src/pch.c
index bc6278c..0c5cc26 100644
--- a/src/pch.c
+++ b/src/pch.c
@@ -2394,9 +2394,11 @@ do_ed_script (char const *inname, char const *outname,
if (! dry_run && ! skip_rest_of_patch) {
int exclusive = *outname_needs_removal ? 0 : O_EXCL;
- assert (! inerrno);
- *outname_needs_removal = true;
- copy_file (inname, outname, 0, exclusive, instat.st_mode, true);
+ if (inerrno != ENOENT)
+ {
+ *outname_needs_removal = true;
+ copy_file (inname, outname, 0, exclusive, instat.st_mode, true);
+ }
sprintf (buf, "%s %s%s", editor_program,
verbosity == VERBOSE ? "" : "- ",
outname);
--
cgit v1.0-41-gc330
)NIXEf/nix/store/2j0fmwgm5ybgnc8jprc4ypcxw6s4r2nv-Allow_input_files_to_be_missing_for_ed-style_patches.patch nix-archive-1(typeregularcontents�From f290f48a621867084884bfff87f8093c15195e6a Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@gnu.org>
Date: Mon, 12 Feb 2018 16:48:24 +0100
Subject: Fix segfault with mangled rename patch
http://savannah.gnu.org/bugs/?53132
* src/pch.c (intuit_diff_type): Ensure that two filenames are specified
for renames and copies (fix the existing check).
---
src/pch.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/pch.c b/src/pch.c
index ff9ed2c..bc6278c 100644
--- a/src/pch.c
+++ b/src/pch.c
@@ -974,7 +974,8 @@ intuit_diff_type (bool need_header, mode_t *p_file_type)
if ((pch_rename () || pch_copy ())
&& ! inname
&& ! ((i == OLD || i == NEW) &&
- p_name[! reverse] &&
+ p_name[reverse] && p_name[! reverse] &&
+ name_is_valid (p_name[reverse]) &&
name_is_valid (p_name[! reverse])))
{
say ("Cannot %s file without two valid file names\n", pch_rename () ? "rename" : "copy");
--
cgit v1.0-41-gc330
)NIXE?/nix/store/8p3z4jsrxr5ck92iasc9bc7bmapb5mmg-CVE-2018-6951.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/hl7wxzav5znk5wxfqncdrzpcb3hqy0y0-patch-2.7.6.tar.xz","sha256","ac610bda97abe0d9f6b7c963255a11dcb196c25e337c61f94e4778d632f1d8fd")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","patch-2.7.6.tar.xz"),("out","/nix/store/hl7wxzav5znk5wxfqncdrzpcb3hqy0y0-patch-2.7.6.tar.xz"),("outputHash","1zfqy4rdcy279vwn2z1kbv19dcfw25d2aqy9nzvdkq5bjzd0nqdc"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/patch/patch-2.7.6.tar.xz"),("urls","https://ftpmirror.gnu.org/patch/patch-2.7.6.tar.xz")]))NIXEB/nix/store/angvcbhbr5p8viv4zphsxxx5nl4zr1hi-patch-2.7.6.tar.xz.drv nix-archive-1(typeregularcontents?From 9c986353e420ead6e706262bf204d6e03322c300 Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@gnu.org>
Date: Fri, 17 Aug 2018 13:35:40 +0200
Subject: Fix swapping fake lines in pch_swap
* src/pch.c (pch_swap): Fix swapping p_bfake and p_efake when there is a
blank line in the middle of a context-diff hunk: that empty line stays
in the middle of the hunk and isn't swapped.
Fixes: https://savannah.gnu.org/bugs/index.php?53133
---
src/pch.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/pch.c b/src/pch.c
index e92bc64..a500ad9 100644
--- a/src/pch.c
+++ b/src/pch.c
@@ -2122,7 +2122,7 @@ pch_swap (void)
}
if (p_efake >= 0) { /* fix non-freeable ptr range */
if (p_efake <= i)
- n = p_end - i + 1;
+ n = p_end - p_ptrn_lines;
else
n = -i;
p_efake += n;
--
)NIXE?/nix/store/npqvgz8c8w9kpj1gdma5bbn0pdkisyzp-CVE-2018-6952.patch nix-archive-1(typeregularcontentsDerive([("out","/nix/store/x030wj60ys9196vxy092hnz7m6nkavlf-autoconf-2.69","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/6kxn0zj4ipzpg2p4csxzy64njknwydy6-autoconf-2.69.tar.xz.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontPatchShebangs","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("name","autoconf-2.69"),("nativeBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18 /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("out","/nix/store/x030wj60ys9196vxy092hnz7m6nkavlf-autoconf-2.69"),("outputs","out"),("patches",""),("preCheck","export TESTSUITEFLAGS=\"-j$NIX_BUILD_CORES\"\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/sm3m6c71sxa8rwzk85zllm9xjqrdvdb4-autoconf-2.69.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE=/nix/store/3hfnzvwqps1731572cvsaqd4l7dvhaas-autoconf-2.69.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvD/nix/store/6kxn0zj4ipzpg2p4csxzy64njknwydy6-autoconf-2.69.tar.xz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv nix-archive-1(typeregularcontents�Derive([("devdoc","/nix/store/achli8fx577iyrx7l2swa1hm5bgk5s71-perl-5.32.0-devdoc","",""),("man","/nix/store/mq84wddx3s945ssdwgh9ccj0n80ybr4l-perl-5.32.0-man","",""),("out","/nix/store/pacp2sglp68lvf2d7ychc3ws3ncq6yi0-perl-5.32.0","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["dev","out"]),("/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv",["out"]),("/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","-de -Dcc=cc -Uinstallusrbinperl -Dinstallstyle=lib/perl5 -Duseshrplib -Dlocincpth=/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include -Dloclibpth=/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib -Dusethreads -Dprefix=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9 -Dman1dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man1 -Dman3dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man3"),("configureScript","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash ./Configure"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("devdoc","/nix/store/achli8fx577iyrx7l2swa1hm5bgk5s71-perl-5.32.0-devdoc"),("disallowedReferences","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("doCheck",""),("doInstallCheck",""),("dontAddPrefix","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/mq84wddx3s945ssdwgh9ccj0n80ybr4l-perl-5.32.0-man"),("name","perl-5.32.0"),("nativeBuildInputs",""),("out","/nix/store/pacp2sglp68lvf2d7ychc3ws3ncq6yi0-perl-5.32.0"),("outputs","out man devdoc"),("patches","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"),("postInstall","# Remove dependency between \"out\" and \"man\" outputs.\nrm \"$out\"/lib/perl5/*/*/.packlist\n\n# Remove dependencies on glibc and gcc\nsed \"/ *libpth =>/c libpth => ' ',\" \\\n -i \"$out\"/lib/perl5/*/*/Config.pm\n# TODO: removing those paths would be cleaner than overwriting with nonsense.\nsubstituteInPlace \"$out\"/lib/perl5/*/*/Config_heavy.pl \\\n --replace \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" /no-such-path \\\n --replace \"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0\" /no-such-path \\\n --replace \"/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0\" /no-such-path \\\n --replace \"$man\" /no-such-path\n"),("postPatch","substituteInPlace dist/PathTools/Cwd.pm \\\n --replace \"/bin/pwd\" \"$(type -P pwd)\"\nunset src\n"),("preConfigure","substituteInPlace ./Configure --replace '`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`' 'Thu Jan 1 00:00:01 UTC 1970'\nsubstituteInPlace ./Configure --replace '$uname -a' '$uname --kernel-name --machine --operating-system'\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("setupHook","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh"),("src","/nix/store/bl6b2p0aw8phljjn0s3xzyghbbzawl2r-perl-5.32.0.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","5.32.0")]))NIXE;/nix/store/lxvd6n6hr48kpxy7ll3fny373d35hxdz-perl-5.32.0.drv ?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh9/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv9/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.shR/nix/store/g2lpnd20709ag6s244lb5jsc08c5rc3b-bootstrap-stage4-gcc-wrapper-9.3.0.drvB/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patchB/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontentsFDerive([("devdoc","/nix/store/x8h13b4hab6y6z5h9zdq2j2izsi6gb9a-perl5.32.0-gettext-1.07-devdoc","",""),("out","/nix/store/fn57vvkrpy2rnhihasqz020gaq60y9x8-perl5.32.0-gettext-1.07","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/kf2lcp7fx5s8qsk7ls2ci8gp0m1nqnxj-gettext-1.07.tar.gz.drv",["out"]),("/nix/store/lxvd6n6hr48kpxy7ll3fny373d35hxdz-perl-5.32.0.drv",["out"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/qf3mzpvsmkrw963xchbivcci06078n13-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/qf3mzpvsmkrw963xchbivcci06078n13-builder.sh"],[("AUTOMATED_TESTING","1"),("LANG","C"),("PERL_AUTOINSTALL","--skipdeps"),("PERL_USE_UNSAFE_INC","1"),("buildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21 /nix/store/pacp2sglp68lvf2d7ychc3ws3ncq6yi0-perl-5.32.0"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("checkTarget","test"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("devdoc","/nix/store/x8h13b4hab6y6z5h9zdq2j2izsi6gb9a-perl5.32.0-gettext-1.07-devdoc"),("doCheck","1"),("doInstallCheck",""),("fullperl","/nix/store/pacp2sglp68lvf2d7ychc3ws3ncq6yi0-perl-5.32.0"),("name","perl5.32.0-gettext-1.07"),("nativeBuildInputs","/nix/store/pacp2sglp68lvf2d7ychc3ws3ncq6yi0-perl-5.32.0"),("out","/nix/store/fn57vvkrpy2rnhihasqz020gaq60y9x8-perl5.32.0-gettext-1.07"),("outputs","out devdoc"),("patches",""),("pname","perl5.32.0-gettext"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/53ar6y7s69wmgf5bsb2grphlq5hp2zfd-gettext-1.07.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.07")]))NIXEG/nix/store/m136zic4a5wbs2qzabdar1b73sm0pdlp-perl5.32.0-gettext-1.07.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvC/nix/store/kf2lcp7fx5s8qsk7ls2ci8gp0m1nqnxj-gettext-1.07.tar.gz.drv;/nix/store/lxvd6n6hr48kpxy7ll3fny373d35hxdz-perl-5.32.0.drv</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv6/nix/store/qf3mzpvsmkrw963xchbivcci06078n13-builder.shM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontentsjDerive([("out","/nix/store/6471r3q53411nkh4drnq0c4ycgphcwbq-help2man-1.47.16","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/lxvd6n6hr48kpxy7ll3fny373d35hxdz-perl-5.32.0.drv",["out"]),("/nix/store/m136zic4a5wbs2qzabdar1b73sm0pdlp-perl5.32.0-gettext-1.07.drv",["out"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"]),("/nix/store/qf88413j4i0mddpxcjfnvw9y7hxs29wy-help2man-1.47.16.tar.xz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/pacp2sglp68lvf2d7ychc3ws3ncq6yi0-perl-5.32.0 /nix/store/fn57vvkrpy2rnhihasqz020gaq60y9x8-perl5.32.0-gettext-1.07"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","help2man-1.47.16"),("nativeBuildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21 /nix/store/fn57vvkrpy2rnhihasqz020gaq60y9x8-perl5.32.0-gettext-1.07"),("out","/nix/store/6471r3q53411nkh4drnq0c4ycgphcwbq-help2man-1.47.16"),("outputs","out"),("postInstall","mv $out/bin/help2man $out/bin/.help2man-wrapped\ncat > $out/bin/help2man <<EOF\n#! $SHELL -e\nexport PERL5LIB=\\${PERL5LIB:+:}/nix/store/fn57vvkrpy2rnhihasqz020gaq60y9x8-perl5.32.0-gettext-1.07/lib/perl5/site_perl\n\nexec -a \\$0 $out/bin/.help2man-wrapped \"\\$@\"\nEOF\nchmod +x $out/bin/help2man\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/81baqr3pzpab3whkmfpa26n013hdfa3p-help2man-1.47.16.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE@/nix/store/3khai271fphx3ljxrx78vfbzaydqdbyp-help2man-1.47.16.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/lxvd6n6hr48kpxy7ll3fny373d35hxdz-perl-5.32.0.drvG/nix/store/m136zic4a5wbs2qzabdar1b73sm0pdlp-perl5.32.0-gettext-1.07.drv</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drvG/nix/store/qf88413j4i0mddpxcjfnvw9y7hxs29wy-help2man-1.47.16.tar.xz.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents,Derive([("lib","/nix/store/iwgkcjwiiwq53jzgwg90gf8b5a4mr9na-libtool-2.4.6-lib","",""),("out","/nix/store/caknnjvzm36l1dpi7rm7rp0gq7psfmhb-libtool-2.4.6","","")],[("/nix/store/0pc18b91az604bmggly2891hgrjd9qbf-libtool-2.4.6.tar.gz.drv",["out"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/3khai271fphx3ljxrx78vfbzaydqdbyp-help2man-1.47.16.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontPatchShebangs","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("lib","/nix/store/iwgkcjwiiwq53jzgwg90gf8b5a4mr9na-libtool-2.4.6-lib"),("name","libtool-2.4.6"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0 /nix/store/6471r3q53411nkh4drnq0c4ycgphcwbq-help2man-1.47.16 /nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("out","/nix/store/caknnjvzm36l1dpi7rm7rp0gq7psfmhb-libtool-2.4.6"),("outputs","out lib"),("patches",""),("pname","libtool"),("propagatedBuildInputs","/nix/store/h6hs9l2zkn1nzbkns3rbspfshg3xm9iy-gnum4-1.4.18"),("propagatedNativeBuildInputs",""),("src","/nix/store/22w7prrkdk70ll462csh1j02q5ajrr51-libtool-2.4.6.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","2.4.6")]))NIXE=/nix/store/d2ghm9fy6r1dwv9wn1qh9azf7wdhydrv-libtool-2.4.6.drvD/nix/store/0pc18b91az604bmggly2891hgrjd9qbf-libtool-2.4.6.tar.gz.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv@/nix/store/3khai271fphx3ljxrx78vfbzaydqdbyp-help2man-1.47.16.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv</nix/store/yxils5kqqbw403f01lif7d39p64bgxbp-gnum4-1.4.18.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/insdlr902pqp2r2d7xviqp4mvymf0wlp-automake-1.16.2","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/1cfiqf7wlkvfrm9m26hgsrlwqlvnmrw1-automake-1.16.2.tar.xz.drv",["out"]),("/nix/store/3hfnzvwqps1731572cvsaqd4l7dvhaas-autoconf-2.69.drv",["out"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/4cmjzk8yr6i5vls5d2050p653zzdvmvp-setup-hook.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/x030wj60ys9196vxy092hnz7m6nkavlf-autoconf-2.69"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("dontPatchShebangs","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("name","automake-1.16.2"),("nativeBuildInputs","/nix/store/x030wj60ys9196vxy092hnz7m6nkavlf-autoconf-2.69 /nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0"),("out","/nix/store/insdlr902pqp2r2d7xviqp4mvymf0wlp-automake-1.16.2"),("outputs","out"),("patches",""),("preCheck","unset NIX_INDENT_MAKE"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHook","/nix/store/4cmjzk8yr6i5vls5d2050p653zzdvmvp-setup-hook.sh"),("src","/nix/store/fb977wdh1w62mq1qsbzf9bwkcdmxh8yc-automake-1.16.2.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE?/nix/store/v818l27nxnb4bpvx61yw39g2s00fw46s-automake-1.16.2.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvF/nix/store/1cfiqf7wlkvfrm9m26hgsrlwqlvnmrw1-automake-1.16.2.tar.xz.drv=/nix/store/3hfnzvwqps1731572cvsaqd4l7dvhaas-autoconf-2.69.drv9/nix/store/4cmjzk8yr6i5vls5d2050p653zzdvmvp-setup-hook.sh>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/hgqh0xkriqffksgmfv2ynjnr316s8996-hook","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/3hfnzvwqps1731572cvsaqd4l7dvhaas-autoconf-2.69.drv",["out"]),("/nix/store/d2ghm9fy6r1dwv9wn1qh9azf7wdhydrv-libtool-2.4.6.drv",["out"]),("/nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drv",["out"]),("/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/v818l27nxnb4bpvx61yw39g2s00fw46s-automake-1.16.2.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ji24g9ychlik5nj2g8hqrg06cn9sn41j-autoreconf.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildCommand","mkdir -p $out/nix-support\ncp /nix/store/ji24g9ychlik5nj2g8hqrg06cn9sn41j-autoreconf.sh $out/nix-support/setup-hook\nprintWords /nix/store/x030wj60ys9196vxy092hnz7m6nkavlf-autoconf-2.69 /nix/store/insdlr902pqp2r2d7xviqp4mvymf0wlp-automake-1.16.2 /nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21 /nix/store/caknnjvzm36l1dpi7rm7rp0gq7psfmhb-libtool-2.4.6 > $out/nix-support/propagated-build-inputs\n"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","hook"),("nativeBuildInputs",""),("out","/nix/store/hgqh0xkriqffksgmfv2ynjnr316s8996-hook"),("outputs","out"),("passAsFile","buildCommand"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("stdenv","/nix/store/lwg9f6v4flzgzvh9ac0lznqbrvy21g9i-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE4/nix/store/r1iah4y1vxxrhi05vg41gp1qnl8kld89-hook.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv=/nix/store/3hfnzvwqps1731572cvsaqd4l7dvhaas-autoconf-2.69.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh=/nix/store/d2ghm9fy6r1dwv9wn1qh9azf7wdhydrv-libtool-2.4.6.drv9/nix/store/ji24g9ychlik5nj2g8hqrg06cn9sn41j-autoreconf.sh</nix/store/p2afvjhgbwc43ngpawpr8bnlz0nncmn2-gettext-0.21.drvM/nix/store/q57xqkdmn4iq5r2j1dlsfgfvx0w6z9nq-bootstrap-stage4-stdenv-linux.drv?/nix/store/v818l27nxnb4bpvx61yw39g2s00fw46s-automake-1.16.2.drv nix-archive-1(typeregularcontents�From 3fcd042d26d70856e826a42b5f93dc4854d80bf0 Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@gnu.org>
Date: Fri, 6 Apr 2018 19:36:15 +0200
Subject: Invoke ed directly instead of using the shell
* src/pch.c (do_ed_script): Invoke ed directly instead of using a shell
command to avoid quoting vulnerabilities.
---
src/pch.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/src/pch.c b/src/pch.c
index 4fd5a05..16e001a 100644
--- a/src/pch.c
+++ b/src/pch.c
@@ -2459,9 +2459,6 @@ do_ed_script (char const *inname, char const *outname,
*outname_needs_removal = true;
copy_file (inname, outname, 0, exclusive, instat.st_mode, true);
}
- sprintf (buf, "%s %s%s", editor_program,
- verbosity == VERBOSE ? "" : "- ",
- outname);
fflush (stdout);
pid = fork();
@@ -2470,7 +2467,8 @@ do_ed_script (char const *inname, char const *outname,
else if (pid == 0)
{
dup2 (tmpfd, 0);
- execl ("/bin/sh", "sh", "-c", buf, (char *) 0);
+ assert (outname[0] != '!' && outname[0] != '-');
+ execlp (editor_program, editor_program, "-", outname, (char *) NULL);
_exit (2);
}
else
--
cgit v1.0-41-gc330
)NIXES/nix/store/rxgi2l6jrgd5xmrrsbcv5cwi558lb36m-CVE-2019-13638-and-CVE-2018-20969.patch nix-archive-1(typeregularcontents�From 123eaff0d5d1aebe128295959435b9ca5909c26d Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@gnu.org>
Date: Fri, 6 Apr 2018 12:14:49 +0200
Subject: Fix arbitrary command execution in ed-style patches
(CVE-2018-1000156)
* src/pch.c (do_ed_script): Write ed script to a temporary file instead
of piping it to ed: this will cause ed to abort on invalid commands
instead of rejecting them and carrying on.
* tests/ed-style: New test case.
* tests/Makefile.am (TESTS): Add test case.
---
src/pch.c | 91 ++++++++++++++++++++++++++++++++++++++++---------------
tests/Makefile.am | 1 +
tests/ed-style | 41 +++++++++++++++++++++++++
3 files changed, 108 insertions(+), 25 deletions(-)
create mode 100644 tests/ed-style
diff --git a/src/pch.c b/src/pch.c
index 0c5cc26..4fd5a05 100644
--- a/src/pch.c
+++ b/src/pch.c
@@ -33,6 +33,7 @@
# include <io.h>
#endif
#include <safe.h>
+#include <sys/wait.h>
#define INITHUNKMAX 125 /* initial dynamic allocation size */
@@ -2389,24 +2390,28 @@ do_ed_script (char const *inname, char const *outname,
static char const editor_program[] = EDITOR_PROGRAM;
file_offset beginning_of_this_line;
- FILE *pipefp = 0;
size_t chars_read;
+ FILE *tmpfp = 0;
+ char const *tmpname;
+ int tmpfd;
+ pid_t pid;
+
+ if (! dry_run && ! skip_rest_of_patch)
+ {
+ /* Write ed script to a temporary file. This causes ed to abort on
+ invalid commands such as when line numbers or ranges exceed the
+ number of available lines. When ed reads from a pipe, it rejects
+ invalid commands and treats the next line as a new command, which
+ can lead to arbitrary command execution. */
+
+ tmpfd = make_tempfile (&tmpname, 'e', NULL, O_RDWR | O_BINARY, 0);
+ if (tmpfd == -1)
+ pfatal ("Can't create temporary file %s", quotearg (tmpname));
+ tmpfp = fdopen (tmpfd, "w+b");
+ if (! tmpfp)
+ pfatal ("Can't open stream for file %s", quotearg (tmpname));
+ }
- if (! dry_run && ! skip_rest_of_patch) {
- int exclusive = *outname_needs_removal ? 0 : O_EXCL;
- if (inerrno != ENOENT)
- {
- *outname_needs_removal = true;
- copy_file (inname, outname, 0, exclusive, instat.st_mode, true);
- }
- sprintf (buf, "%s %s%s", editor_program,
- verbosity == VERBOSE ? "" : "- ",
- outname);
- fflush (stdout);
- pipefp = popen(buf, binary_transput ? "wb" : "w");
- if (!pipefp)
- pfatal ("Can't open pipe to %s", quotearg (buf));
- }
for (;;) {
char ed_command_letter;
beginning_of_this_line = file_tell (pfp);
@@ -2417,14 +2422,14 @@ do_ed_script (char const *inname, char const *outname,
}
ed_command_letter = get_ed_command_letter (buf);
if (ed_command_letter) {
- if (pipefp)
- if (! fwrite (buf, sizeof *buf, chars_read, pipefp))
+ if (tmpfp)
+ if (! fwrite (buf, sizeof *buf, chars_read, tmpfp))
write_fatal ();
if (ed_command_letter != 'd' && ed_command_letter != 's') {
p_pass_comments_through = true;
while ((chars_read = get_line ()) != 0) {
- if (pipefp)
- if (! fwrite (buf, sizeof *buf, chars_read, pipefp))
+ if (tmpfp)
+ if (! fwrite (buf, sizeof *buf, chars_read, tmpfp))
write_fatal ();
if (chars_read == 2 && strEQ (buf, ".\n"))
break;
@@ -2437,13 +2442,49 @@ do_ed_script (char const *inname, char const *outname,
break;
}
}
- if (!pipefp)
+ if (!tmpfp)
return;
- if (fwrite ("w\nq\n", sizeof (char), (size_t) 4, pipefp) == 0
- || fflush (pipefp) != 0)
+ if (fwrite ("w\nq\n", sizeof (char), (size_t) 4, tmpfp) == 0
+ || fflush (tmpfp) != 0)
write_fatal ();
- if (pclose (pipefp) != 0)
- fatal ("%s FAILED", editor_program);
+
+ if (lseek (tmpfd, 0, SEEK_SET) == -1)
+ pfatal ("Can't rewind to the beginning of file %s", quotearg (tmpname));
+
+ if (! dry_run && ! skip_rest_of_patch) {
+ int exclusive = *outname_needs_removal ? 0 : O_EXCL;
+ *outname_needs_removal = true;
+ if (inerrno != ENOENT)
+ {
+ *outname_needs_removal = true;
+ copy_file (inname, outname, 0, exclusive, instat.st_mode, true);
+ }
+ sprintf (buf, "%s %s%s", editor_program,
+ verbosity == VERBOSE ? "" : "- ",
+ outname);
+ fflush (stdout);
+
+ pid = fork();
+ if (pid == -1)
+ pfatal ("Can't fork");
+ else if (pid == 0)
+ {
+ dup2 (tmpfd, 0);
+ execl ("/bin/sh", "sh", "-c", buf, (char *) 0);
+ _exit (2);
+ }
+ else
+ {
+ int wstatus;
+ if (waitpid (pid, &wstatus, 0) == -1
+ || ! WIFEXITED (wstatus)
+ || WEXITSTATUS (wstatus) != 0)
+ fatal ("%s FAILED", editor_program);
+ }
+ }
+
+ fclose (tmpfp);
+ safe_unlink (tmpname);
if (ofp)
{
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 6b6df63..16f8693 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -32,6 +32,7 @@ TESTS = \
crlf-handling \
dash-o-append \
deep-directories \
+ ed-style \
empty-files \
false-match \
fifo \
diff --git a/tests/ed-style b/tests/ed-style
new file mode 100644
index 0000000..d8c0689
--- /dev/null
+++ b/tests/ed-style
@@ -0,0 +1,41 @@
+# Copyright (C) 2018 Free Software Foundation, Inc.
+#
+# Copying and distribution of this file, with or without modification,
+# in any medium, are permitted without royalty provided the copyright
+# notice and this notice are preserved.
+
+. $srcdir/test-lib.sh
+
+require cat
+use_local_patch
+use_tmpdir
+
+# ==============================================================
+
+cat > ed1.diff <<EOF
+0a
+foo
+.
+EOF
+
+check 'patch -e foo -i ed1.diff' <<EOF
+EOF
+
+check 'cat foo' <<EOF
+foo
+EOF
+
+cat > ed2.diff <<EOF
+1337a
+r !echo bar
+,p
+EOF
+
+check 'patch -e foo -i ed2.diff 2> /dev/null || echo "Status: $?"' <<EOF
+?
+Status: 2
+EOF
+
+check 'cat foo' <<EOF
+foo
+EOF
--
cgit v1.0-41-gc330
)NIXEB/nix/store/sz6rhpf50kqh75fhqwl75q6dm6fr9xyd-CVE-2018-1000156.patch nix-archive-1(typeregularcontents� Derive([("out","/nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/angvcbhbr5p8viv4zphsxxx5nl4zr1hi-patch-2.7.6.tar.xz.drv",["out"]),("/nix/store/jzapakqw0mqxajcifdrzplk91zw5sakg-ed-1.16.drv",["out"]),("/nix/store/r1iah4y1vxxrhi05vg41gp1qnl8kld89-hook.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/0y5flakfvnf813cwrr8rygf1jnk0gfnc-CVE-2019-13636.patch","/nix/store/2j0fmwgm5ybgnc8jprc4ypcxw6s4r2nv-Allow_input_files_to_be_missing_for_ed-style_patches.patch","/nix/store/8p3z4jsrxr5ck92iasc9bc7bmapb5mmg-CVE-2018-6951.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/npqvgz8c8w9kpj1gdma5bbn0pdkisyzp-CVE-2018-6952.patch","/nix/store/rxgi2l6jrgd5xmrrsbcv5cwi558lb36m-CVE-2019-13638-and-CVE-2018-20969.patch","/nix/store/sz6rhpf50kqh75fhqwl75q6dm6fr9xyd-CVE-2018-1000156.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("name","patch-2.7.6"),("nativeBuildInputs","/nix/store/hgqh0xkriqffksgmfv2ynjnr316s8996-hook /nix/store/fcbw5ca51r2cqf4c8955m8blk2d0r4bn-ed-1.16"),("out","/nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6"),("outputs","out"),("patches","/nix/store/8p3z4jsrxr5ck92iasc9bc7bmapb5mmg-CVE-2018-6951.patch /nix/store/2j0fmwgm5ybgnc8jprc4ypcxw6s4r2nv-Allow_input_files_to_be_missing_for_ed-style_patches.patch /nix/store/sz6rhpf50kqh75fhqwl75q6dm6fr9xyd-CVE-2018-1000156.patch /nix/store/npqvgz8c8w9kpj1gdma5bbn0pdkisyzp-CVE-2018-6952.patch /nix/store/0y5flakfvnf813cwrr8rygf1jnk0gfnc-CVE-2019-13636.patch /nix/store/rxgi2l6jrgd5xmrrsbcv5cwi558lb36m-CVE-2019-13638-and-CVE-2018-20969.patch"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/hl7wxzav5znk5wxfqncdrzpcb3hqy0y0-patch-2.7.6.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE;/nix/store/m7mr6b3xk7i7yph04605kis8v904g1vf-patch-2.7.6.drv @/nix/store/0y5flakfvnf813cwrr8rygf1jnk0gfnc-CVE-2019-13636.patch?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvf/nix/store/2j0fmwgm5ybgnc8jprc4ypcxw6s4r2nv-Allow_input_files_to_be_missing_for_ed-style_patches.patch?/nix/store/8p3z4jsrxr5ck92iasc9bc7bmapb5mmg-CVE-2018-6951.patch>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shB/nix/store/angvcbhbr5p8viv4zphsxxx5nl4zr1hi-patch-2.7.6.tar.xz.drv7/nix/store/jzapakqw0mqxajcifdrzplk91zw5sakg-ed-1.16.drv?/nix/store/npqvgz8c8w9kpj1gdma5bbn0pdkisyzp-CVE-2018-6952.patch4/nix/store/r1iah4y1vxxrhi05vg41gp1qnl8kld89-hook.drvS/nix/store/rxgi2l6jrgd5xmrrsbcv5cwi558lb36m-CVE-2019-13638-and-CVE-2018-20969.patchB/nix/store/sz6rhpf50kqh75fhqwl75q6dm6fr9xyd-CVE-2018-1000156.patchM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/rdrb9ygp0naf6zil2lsqmbf1c6n40d8g-make-4.3.tar.gz","sha256","e05fdde47c5f7ca45cb697e973894ff4f5d79e13b750ed57d7b66d8defc78e19")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","make-4.3.tar.gz"),("out","/nix/store/rdrb9ygp0naf6zil2lsqmbf1c6n40d8g-make-4.3.tar.gz"),("outputHash","06cfqzpqsvdnsxbysl5p2fgdgxgl9y4p7scpnrfa8z2zgkjdspz0"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://ftpmirror.gnu.org/make/make-4.3.tar.gz"),("urls","https://ftpmirror.gnu.org/make/make-4.3.tar.gz")]))NIXE?/nix/store/jrxmi74200w7l24h0a6i99h2ck3f4r7m-make-4.3.tar.gz.drv nix-archive-1(typeregularcontents�diff -Naur a/src/read.c b/src/read.c
--- a/src/read.c
+++ b/src/read.c
@@ -109,9 +109,6 @@
#endif
INCLUDEDIR,
#ifndef _AMIGA
- "/usr/gnu/include",
- "/usr/local/include",
- "/usr/include",
#endif
0
};
diff -Naur a/src/remake.c b/src/remake.c
--- a/src/remake.c
+++ b/src/remake.c
@@ -1601,8 +1601,6 @@
static const char *dirs[] =
{
#ifndef _AMIGA
- "/lib",
- "/usr/lib",
#endif
#if defined(WINDOWS32) && !defined(LIBDIR)
/*
)NIXE=/nix/store/vnv8q5wy695x9brdrsg4d7id2c22b8qq-impure-dirs.patch nix-archive-1(typeregularcontentsDerive([("info","/nix/store/03b1ki8yjv8nkwz975imsf0pnw5w63ng-gnumake-4.3-info","",""),("man","/nix/store/rsrd9va9c7w0b8vk6kfrqrplshglzk2f-gnumake-4.3-man","",""),("out","/nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/jrxmi74200w7l24h0a6i99h2ck3f4r7m-make-4.3.tar.gz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/vnv8q5wy695x9brdrsg4d7id2c22b8qq-impure-dirs.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("info","/nix/store/03b1ki8yjv8nkwz975imsf0pnw5w63ng-gnumake-4.3-info"),("man","/nix/store/rsrd9va9c7w0b8vk6kfrqrplshglzk2f-gnumake-4.3-man"),("name","gnumake-4.3"),("nativeBuildInputs",""),("out","/nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3"),("outputs","out man info"),("patches","/nix/store/vnv8q5wy695x9brdrsg4d7id2c22b8qq-impure-dirs.patch"),("pname","gnumake"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/rdrb9ygp0naf6zil2lsqmbf1c6n40d8g-make-4.3.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.3")]))NIXE;/nix/store/pbvvx5564w3yxp07slagqsnwxkvcahcz-gnumake-4.3.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh?/nix/store/jrxmi74200w7l24h0a6i99h2ck3f4r7m-make-4.3.tar.gz.drv=/nix/store/vnv8q5wy695x9brdrsg4d7id2c22b8qq-impure-dirs.patchM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/b550kvx7kg32hkxxf826bsl0nikhxr01-patchelf-0.12.tar.bz2.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/03f77phmfdmsbfpcc6mspjfff3yc9fdj-setup-hook.sh","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","patchelf-0.12"),("nativeBuildInputs",""),("out","/nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12"),("outputs","out"),("patches",""),("pname","patchelf"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHook","/nix/store/03f77phmfdmsbfpcc6mspjfff3yc9fdj-setup-hook.sh"),("src","/nix/store/vfzd71kq2aa2i65wy3lpqc6gv3v6rjj7-patchelf-0.12.tar.bz2"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.12")]))NIXE=/nix/store/wb1nclfrlbxcbn245rd8js0hjbq8x487-patchelf-0.12.drv9/nix/store/03f77phmfdmsbfpcc6mspjfff3yc9fdj-setup-hook.sh?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shE/nix/store/b550kvx7kg32hkxxf826bsl0nikhxr01-patchelf-0.12.tar.bz2.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontentsT Derive([("bin","/nix/store/wzckyqwrhhlg2nc6v7injw4di15n1k2v-bzip2-1.0.6.0.1-bin","",""),("dev","/nix/store/zsqfsnfir6phqhba93fwcfxwn19x6xll-bzip2-1.0.6.0.1-dev","",""),("man","/nix/store/5whdpm3ak9sb5bynrhy6475zsnblhp35-bzip2-1.0.6.0.1-man","",""),("out","/nix/store/a5njryhgjr1nvg621plzccbls2ix4xzl-bzip2-1.0.6.0.1","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/r1iah4y1vxxrhi05vg41gp1qnl8kld89-hook.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/w4lch504bmsyisr3j22s7mj6v66s793z-bzip2-1.0.6.0.1.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/r8acyr4xb2yw1k73qjzm9sxmpws27gjr-CVE-2016-3189.patch","/nix/store/wnf28g32lllbi3i80n97gyzfj2sf9zyx-cve-2019-12900.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/wzckyqwrhhlg2nc6v7injw4di15n1k2v-bzip2-1.0.6.0.1-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/zsqfsnfir6phqhba93fwcfxwn19x6xll-bzip2-1.0.6.0.1-dev"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/5whdpm3ak9sb5bynrhy6475zsnblhp35-bzip2-1.0.6.0.1-man"),("name","bzip2-1.0.6.0.1"),("nativeBuildInputs","/nix/store/hgqh0xkriqffksgmfv2ynjnr316s8996-hook"),("out","/nix/store/a5njryhgjr1nvg621plzccbls2ix4xzl-bzip2-1.0.6.0.1"),("outputs","bin dev out man"),("patches","/nix/store/r8acyr4xb2yw1k73qjzm9sxmpws27gjr-CVE-2016-3189.patch /nix/store/wnf28g32lllbi3i80n97gyzfj2sf9zyx-cve-2019-12900.patch"),("pname","bzip2"),("postPatch","sed -i -e '/<sys\\\\stat\\.h>/s|\\\\|/|' bzip2.c\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/7ir1ygibs1ap5jca2mf403srz9jjqj2g-bzip2-1.0.6.0.1.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.0.6.0.1")]))NIXE?/nix/store/y4fb80b55mffsb3lzrj47kcvmyqf4p3i-bzip2-1.0.6.0.1.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh4/nix/store/r1iah4y1vxxrhi05vg41gp1qnl8kld89-hook.drv?/nix/store/r8acyr4xb2yw1k73qjzm9sxmpws27gjr-CVE-2016-3189.patchM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drvF/nix/store/w4lch504bmsyisr3j22s7mj6v66s793z-bzip2-1.0.6.0.1.tar.gz.drv@/nix/store/wnf28g32lllbi3i80n97gyzfj2sf9zyx-cve-2019-12900.patch nix-archive-1(typeregularcontents�#Derive([("out","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux","","")],[("/nix/store/1awan4fyzhanpbc93d362v96xg3hf64c-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/1b5xg25dp8aqa6i5dnxynbgs86993rsi-findutils-4.7.0.drv",["out"]),("/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drv",["out"]),("/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv",["out"]),("/nix/store/6vp6a7pr3jzw11jw7f5kgn00c2af7jd4-gzip-1.10.drv",["out"]),("/nix/store/7hmz09qanmrb052555vqjl9s67is5mxx-diffutils-3.7.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv",["out"]),("/nix/store/9ssv4a0ldfawsj2fzk47kszn78qxwz77-binutils-2.31.1.drv",["out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv",["lib","out"]),("/nix/store/g3n9568r6gm2kzg7rswzznvfin2z33v9-gnused-4.8.drv",["out"]),("/nix/store/hdngb074saxk5sbq1hd9ph2pqij74khd-gawk-5.1.0.drv",["out"]),("/nix/store/jzapakqw0mqxajcifdrzplk91zw5sakg-ed-1.16.drv",["out"]),("/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv",["out"]),("/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv",["out"]),("/nix/store/lgy31acnbxbvgd8xh0b3fyfnb7484qhn-gnutar-1.32.drv",["out"]),("/nix/store/m7mr6b3xk7i7yph04605kis8v904g1vf-patch-2.7.6.drv",["out"]),("/nix/store/mdakkb8gz46xav44ivjjnv0idf982xm1-libunistring-0.9.10.drv",["out"]),("/nix/store/pbvvx5564w3yxp07slagqsnwxkvcahcz-gnumake-4.3.drv",["out"]),("/nix/store/r3yhr5kjkzsi7b1428bdpwfabx2san7n-linux-headers-5.5.drv",["out"]),("/nix/store/s1sjb0fzyrjaz760z3725nj8sx9fs145-pcre-8.44.drv",["out"]),("/nix/store/w24z9jb462cl93ln2qmw7nyh16flph7z-binutils-wrapper-2.31.1.drv",["out"]),("/nix/store/wb1nclfrlbxcbn245rd8js0hjbq8x487-patchelf-0.12.drv",["out"]),("/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv",["out"]),("/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv",["bin","out"]),("/nix/store/y4fb80b55mffsb3lzrj47kcvmyqf4p3i-bzip2-1.0.6.0.1.drv",["bin","out"]),("/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("allowedRequisites","/nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10 /nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10 /nix/store/wzckyqwrhhlg2nc6v7injw4di15n1k2v-bzip2-1.0.6.0.1-bin /nix/store/a5njryhgjr1nvg621plzccbls2ix4xzl-bzip2-1.0.6.0.1 /nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin /nix/store/y41vgrya42wlzq8zpywkccaiknzpcraz-xz-5.2.5 /nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23 /nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23 /nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1 /nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1 /nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32 /nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32 /nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7 /nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7 /nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0 /nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0 /nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0 /nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0 /nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3 /nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3 /nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8 /nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8 /nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32 /nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32 /nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5 /nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5 /nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6 /nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6 /nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/fcbw5ca51r2cqf4c8955m8blk2d0r4bn-ed-1.16 /nix/store/fcbw5ca51r2cqf4c8955m8blk2d0r4bn-ed-1.16 /nix/store/0ylsw32rdkc60kq7sv6gmq98wsd6p09y-attr-2.4.48 /nix/store/3kn4grkcb6xp2l0l1y4y7xhks8m7p0g3-acl-2.2.53 /nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11 /nix/store/qb4rmys9h9abdh104jjflfj8hscm9n9d-pcre-8.44 /nix/store/g4gk96z9i98hyyf2j4mzn8vvws6gb7i3-libidn2-2.3.0 /nix/store/ma8xwfjik16p74wxdj640d7mk8wj58z9-libunistring-0.9.10 /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32 /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev /nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin /nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5 /nix/store/yxb05gy6knsij4mjkm69ckghdy3kj4l6-binutils-wrapper-2.31.1 /nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0 /nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0 /nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib /nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params /nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0"),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh /nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0"),("initialPath","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32 /nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0 /nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7 /nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8 /nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5 /nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0 /nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32 /nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10 /nix/store/wzckyqwrhhlg2nc6v7injw4di15n1k2v-bzip2-1.0.6.0.1-bin /nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3 /nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23 /nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6 /nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("name","stdenv-linux"),("out","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("preHook","# Make \"strip\" produce deterministic output, by setting\n# timestamps etc. to a fixed value.\ncommonStripFlags=\"--enable-deterministic-archives\"\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("system","x86_64-linux")]))NIXE</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv*A/nix/store/1awan4fyzhanpbc93d362v96xg3hf64c-gcc-wrapper-9.3.0.drv?/nix/store/1b5xg25dp8aqa6i5dnxynbgs86993rsi-findutils-4.7.0.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh=/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drv4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh:/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh9/nix/store/6vp6a7pr3jzw11jw7f5kgn00c2af7jd4-gzip-1.10.drv=/nix/store/7hmz09qanmrb052555vqjl9s67is5mxx-diffutils-3.7.drv:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh?/nix/store/9ssv4a0ldfawsj2fzk47kszn78qxwz77-binutils-2.31.1.drv</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drvF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh9/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh:/nix/store/g3n9568r6gm2kzg7rswzznvfin2z33v9-gnused-4.8.drv:/nix/store/hdngb074saxk5sbq1hd9ph2pqij74khd-gawk-5.1.0.drv7/nix/store/jzapakqw0mqxajcifdrzplk91zw5sakg-ed-1.16.drv8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drvF/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv;/nix/store/lgy31acnbxbvgd8xh0b3fyfnb7484qhn-gnutar-1.32.drv;/nix/store/m7mr6b3xk7i7yph04605kis8v904g1vf-patch-2.7.6.drvC/nix/store/mdakkb8gz46xav44ivjjnv0idf982xm1-libunistring-0.9.10.drv8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh;/nix/store/pbvvx5564w3yxp07slagqsnwxkvcahcz-gnumake-4.3.drvA/nix/store/r3yhr5kjkzsi7b1428bdpwfabx2san7n-linux-headers-5.5.drvA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh9/nix/store/s1sjb0fzyrjaz760z3725nj8sx9fs145-pcre-8.44.drvG/nix/store/w24z9jb462cl93ln2qmw7nyh16flph7z-binutils-wrapper-2.31.1.drv=/nix/store/wb1nclfrlbxcbn245rd8js0hjbq8x487-patchelf-0.12.drv;/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv8/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv?/nix/store/y4fb80b55mffsb3lzrj47kcvmyqf4p3i-bzip2-1.0.6.0.1.drv;/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv nix-archive-1(typeregularcontentsxDerive([("devdoc","/nix/store/9nqldl0qqd2fqz0j1nph5zvchh3aaab3-perl-5.32.0-devdoc","",""),("man","/nix/store/ga2xqxpli7h8g2xgaxahy48affzq8qhx-perl-5.32.0-man","",""),("out","/nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0","","")],[("/nix/store/1awan4fyzhanpbc93d362v96xg3hf64c-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["dev","out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags","-de -Dcc=cc -Uinstallusrbinperl -Dinstallstyle=lib/perl5 -Duseshrplib -Dlocincpth=/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev/include -Dloclibpth=/nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32/lib -Dusethreads -Dprefix=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9 -Dman1dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man1 -Dman3dir=/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9/share/man/man3"),("configureScript","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash ./Configure"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("devdoc","/nix/store/9nqldl0qqd2fqz0j1nph5zvchh3aaab3-perl-5.32.0-devdoc"),("disallowedReferences","/nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0"),("doCheck",""),("doInstallCheck",""),("dontAddPrefix","1"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/ga2xqxpli7h8g2xgaxahy48affzq8qhx-perl-5.32.0-man"),("name","perl-5.32.0"),("nativeBuildInputs",""),("out","/nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0"),("outputs","out man devdoc"),("patches","/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patch"),("postInstall","# Remove dependency between \"out\" and \"man\" outputs.\nrm \"$out\"/lib/perl5/*/*/.packlist\n\n# Remove dependencies on glibc and gcc\nsed \"/ *libpth =>/c libpth => ' ',\" \\\n -i \"$out\"/lib/perl5/*/*/Config.pm\n# TODO: removing those paths would be cleaner than overwriting with nonsense.\nsubstituteInPlace \"$out\"/lib/perl5/*/*/Config_heavy.pl \\\n --replace \"/nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev\" /no-such-path \\\n --replace \"/nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0\" /no-such-path \\\n --replace \"/nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0\" /no-such-path \\\n --replace \"$man\" /no-such-path\n"),("postPatch","substituteInPlace dist/PathTools/Cwd.pm \\\n --replace \"/bin/pwd\" \"$(type -P pwd)\"\nunset src\n"),("preConfigure","substituteInPlace ./Configure --replace '`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`' 'Thu Jan 1 00:00:01 UTC 1970'\nsubstituteInPlace ./Configure --replace '$uname -a' '$uname --kernel-name --machine --operating-system'\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setOutputFlags",""),("setupHook","/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh"),("src","/nix/store/bl6b2p0aw8phljjn0s3xzyghbbzawl2r-perl-5.32.0.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","5.32.0")]))NIXE;/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv A/nix/store/1awan4fyzhanpbc93d362v96xg3hf64c-gcc-wrapper-9.3.0.drv:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv9/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv9/nix/store/dm81j9qdcdr4c458pqbc9wvq9ymgzk4m-setup-hook.sh</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drvB/nix/store/mb381gpm9k5wdl37l5ad5pp8w11qzhjg-no-sys-dirs-5.31.patchB/nix/store/mpfmglm0nfssjdj43bgmfczyzzvd1rd9-perl-5.32.0.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/m25hqmpqpif3ws0nz62x5s34rf8b89mj-openssl-1.1.1h.tar.gz","sha256","5c9ca8774bd7b03e5784f26ae9e9e6d749c9da2438545077e6b3d755a06595d9")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","openssl-1.1.1h.tar.gz"),("out","/nix/store/m25hqmpqpif3ws0nz62x5s34rf8b89mj-openssl-1.1.1h.tar.gz"),("outputHash","1ncmcnh5bmxkwrvm0m1q4kdcjjfpwvlyjspjhibkxc6p9dvsi72w"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://www.openssl.org/source/openssl-1.1.1h.tar.gz"),("urls","https://www.openssl.org/source/openssl-1.1.1h.tar.gz")]))NIXEE/nix/store/d28gmp7150010n543aadbxbn6iy7r0yi-openssl-1.1.1h.tar.gz.drv nix-archive-1(typeregularcontentsTdiff --git a/include/internal/cryptlib.h b/include/internal/cryptlib.h
index 329ef62..9a8df64 100644
--- a/include/internal/cryptlib.h
+++ b/include/internal/cryptlib.h
@@ -56,7 +56,7 @@ DEFINE_LHASH_OF(MEM);
# ifndef OPENSSL_SYS_VMS
# define X509_CERT_AREA OPENSSLDIR
# define X509_CERT_DIR OPENSSLDIR "/certs"
-# define X509_CERT_FILE OPENSSLDIR "/cert.pem"
+# define X509_CERT_FILE "/etc/ssl/certs/ca-certificates.crt"
# define X509_PRIVATE_DIR OPENSSLDIR "/private"
# define CTLOG_FILE OPENSSLDIR "/ct_log_list.cnf"
# else
)NIXEC/nix/store/lzmcfv2m4ripknpvbsv8wcg1ik1kif4h-use-etc-ssl-certs.patch nix-archive-1(typeregularcontents1Derive([("info","/nix/store/ygdcjf382pp0w3i1gcsi3yhy7blyaa2j-coreutils-8.32-info","",""),("out","/nix/store/ps004n42p988qwajl5an1vxiniaj1p2l-coreutils-8.32","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv",["out"]),("/nix/store/bvjjdqid3590hkbszlm81ppwrbk9zjaa-coreutils-8.32.tar.xz.drv",["out"]),("/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv",["bin"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("FORCE_UNSAFE_CONFIGURE",""),("NIX_LDFLAGS",""),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-packager=https://NixOS.org --enable-single-binary=symlinks"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("enableParallelBuilding",""),("info","/nix/store/ygdcjf382pp0w3i1gcsi3yhy7blyaa2j-coreutils-8.32-info"),("name","coreutils-8.32"),("nativeBuildInputs","/nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0 /nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("out","/nix/store/ps004n42p988qwajl5an1vxiniaj1p2l-coreutils-8.32"),("outputs","out info"),("patches",""),("pname","coreutils"),("postInstall","rm -r \"$out/share\"\n"),("postPatch","# The test tends to fail on btrfs,f2fs and maybe other unusual filesystems.\nsed '2i echo Skipping dd sparse test && exit 77' -i ./tests/dd/sparse.sh\nsed '2i echo Skipping du threshold test && exit 77' -i ./tests/du/threshold.sh\nsed '2i echo Skipping cp sparse test && exit 77' -i ./tests/cp/sparse.sh\nsed '2i echo Skipping rm deep-2 test && exit 77' -i ./tests/rm/deep-2.sh\nsed '2i echo Skipping du long-from-unreadable test && exit 77' -i ./tests/du/long-from-unreadable.sh\n\n# Some target platforms, especially when building inside a container have\n# issues with the inotify test.\nsed '2i echo Skipping tail inotify dir recreate test && exit 77' -i ./tests/tail-2/inotify-dir-recreate.sh\n\n# sandbox does not allow setgid\nsed '2i echo Skipping chmod setgid test && exit 77' -i ./tests/chmod/setgid.sh\nsubstituteInPlace ./tests/install/install-C.sh \\\n --replace 'mode3=2755' 'mode3=1755'\n\nsed '2i print \"Skipping env -S test\"; exit 77;' -i ./tests/misc/env-S.pl\n\n# Fails on systems with a rootfs. Looks like a bug in the test, see\n# https://lists.gnu.org/archive/html/bug-coreutils/2019-12/msg00000.html\nsed '2i print \"Skipping df skip-rootfs test\"; exit 77' -i ./tests/df/skip-rootfs.sh\n\n# these tests fail in the unprivileged nix sandbox (without nix-daemon) as we break posix assumptions\nfor f in ./tests/chgrp/{basic.sh,recurse.sh,default-no-deref.sh,no-x.sh,posix-H.sh}; do\n sed '2i echo Skipping chgrp && exit 77' -i \"$f\"\ndone\nfor f in gnulib-tests/{test-chown.c,test-fchownat.c,test-lchown.c}; do\n echo \"int main() { return 77; }\" > \"$f\"\ndone\n"),("preInstall",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/3gyxcm7gqmqk90363iiwi2xwpfvh5x7l-coreutils-8.32.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","8.32")]))NIXE>/nix/store/mqzhbqjgkvcj3r6clyza3cli7a5jjvhc-coreutils-8.32.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drvE/nix/store/bvjjdqid3590hkbszlm81ppwrbk9zjaa-coreutils-8.32.tar.xz.drvM/nix/store/w3zyg1axhvfrakzdxcbfgvpv4y542y2f-bootstrap-stage4-stdenv-linux.drv8/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv nix-archive-1(typeregularcontents�Derive([("bin","/nix/store/09cm6mb5p3zyc5kdiknl21acf2816lwq-openssl-1.1.1h-bin","",""),("debug","/nix/store/ad58dssi6pm99gk638iy87vs8wrm11qz-openssl-1.1.1h-debug","",""),("dev","/nix/store/9h45y5hrkksh6fxi7h44gibmmk5nmjxw-openssl-1.1.1h-dev","",""),("doc","/nix/store/7y0vrf6hd276jn5ivr3zdxnr04n2vmk2-openssl-1.1.1h-doc","",""),("man","/nix/store/9qpjbv130ac6qsqmkdgvfmi32vx5zg57-openssl-1.1.1h-man","",""),("out","/nix/store/siyx8g31cw8fr6d2lgjvizgipxmiymcp-openssl-1.1.1h","","")],[("/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv",["out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/d28gmp7150010n543aadbxbn6iy7r0yi-openssl-1.1.1h.tar.gz.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/mqzhbqjgkvcj3r6clyza3cli7a5jjvhc-coreutils-8.32.drv",["out"])],["/nix/store/3xk9ps0qz073k641b88swpa4fgx3hzwg-nix-ssl-cert-file.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh","/nix/store/lzmcfv2m4ripknpvbsv8wcg1ik1kif4h-use-etc-ssl-certs.patch"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/09cm6mb5p3zyc5kdiknl21acf2816lwq-openssl-1.1.1h-bin"),("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags","shared --libdir=lib --openssldir=etc/ssl"),("configurePlatforms",""),("configureScript","./Configure linux-x86_64"),("debug","/nix/store/ad58dssi6pm99gk638iy87vs8wrm11qz-openssl-1.1.1h-debug"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/9h45y5hrkksh6fxi7h44gibmmk5nmjxw-openssl-1.1.1h-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/7y0vrf6hd276jn5ivr3zdxnr04n2vmk2-openssl-1.1.1h-doc"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("makeFlags","MANDIR=$(man)/share/man MANSUFFIX=ssl"),("man","/nix/store/9qpjbv130ac6qsqmkdgvfmi32vx5zg57-openssl-1.1.1h-man"),("name","openssl-1.1.1h"),("nativeBuildInputs","/nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0 /nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh"),("out","/nix/store/siyx8g31cw8fr6d2lgjvizgipxmiymcp-openssl-1.1.1h"),("outputs","bin dev out man doc debug"),("patches","/nix/store/3xk9ps0qz073k641b88swpa4fgx3hzwg-nix-ssl-cert-file.patch /nix/store/lzmcfv2m4ripknpvbsv8wcg1ik1kif4h-use-etc-ssl-certs.patch"),("pname","openssl"),("postFixup","# Check to make sure the main output doesn't depend on perl\nif grep -r '/nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0' $out; then\n echo \"Found an erroneous dependency on perl ^^^\" >&2\n exit 1\nfi\n"),("postInstall","# If we're building dynamic libraries, then don't install static\n# libraries.\nif [ -n \"$(echo $out/lib/*.so $out/lib/*.dylib $out/lib/*.dll)\" ]; then\n rm \"$out/lib/\"*.a\nfi\n\nmkdir -p $bin\nsubstituteInPlace $out/bin/c_rehash --replace /nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0 /nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0\nmv $out/bin $bin/\n\nmkdir $dev\nmv $out/include $dev/\n\n# remove dependency on Perl at runtime\nrm -r $out/etc/ssl/misc\n\nrmdir $out/etc/ssl/{certs,private}\n"),("postPatch","patchShebangs Configure\nsubstituteInPlace config --replace '/usr/bin/env' '/nix/store/ps004n42p988qwajl5an1vxiniaj1p2l-coreutils-8.32/bin/env'\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("separateDebugInfo","1"),("setOutputFlags",""),("src","/nix/store/m25hqmpqpif3ws0nz62x5s34rf8b89mj-openssl-1.1.1h.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.1.1h")]))NIXE>/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv C/nix/store/3xk9ps0qz073k641b88swpa4fgx3hzwg-nix-ssl-cert-file.patch>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drvB/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.shE/nix/store/d28gmp7150010n543aadbxbn6iy7r0yi-openssl-1.1.1h.tar.gz.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drvC/nix/store/lzmcfv2m4ripknpvbsv8wcg1ik1kif4h-use-etc-ssl-certs.patch>/nix/store/mqzhbqjgkvcj3r6clyza3cli7a5jjvhc-coreutils-8.32.drv nix-archive-1(typeregularcontents!From b9aa7c2495694d0527e4e7fd560a3f0f18556c72 Mon Sep 17 00:00:00 2001
From: Will Cosgrove <will@panic.com>
Date: Thu, 29 Aug 2019 15:14:19 -0700
Subject: [PATCH 1/5] packet.c: improve parsing of packets
file: packet.c
notes:
Use _libssh2_get_string API in SSH_MSG_DEBUG, additional uint32 bounds check in SSH_MSG_GLOBAL_REQUEST
---
src/packet.c | 30 +++++++++++++++---------------
1 file changed, 15 insertions(+), 15 deletions(-)
diff --git a/src/packet.c b/src/packet.c
index 38ab62944..ac69768cd 100644
--- a/src/packet.c
+++ b/src/packet.c
@@ -537,26 +537,26 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
case SSH_MSG_DEBUG:
if(datalen >= 2) {
int always_display = data[1];
-
+
if(datalen >= 6) {
- message_len = _libssh2_ntohu32(data + 2);
-
- if(message_len <= (datalen - 10)) {
- /* 6 = packet_type(1) + display(1) + message_len(4) */
- message = (char *) data + 6;
- language_len = _libssh2_ntohu32(data + 6 +
- message_len);
-
- if(language_len <= (datalen - 10 - message_len))
- language = (char *) data + 10 + message_len;
- }
+ struct string_buf buf;
+ buf.data = (unsigned char *)data;
+ buf.dataptr = buf.data;
+ buf.len = datalen;
+ buf.dataptr += 2; /* advance past type & always display */
+
+ _libssh2_get_string(&buf, &message, &message_len);
+ _libssh2_get_string(&buf, &language, &language_len);
}
if(session->ssh_msg_debug) {
- LIBSSH2_DEBUG(session, always_display, message,
- message_len, language, language_len);
+ LIBSSH2_DEBUG(session, always_display,
+ (const char *)message,
+ message_len, (const char *)language,
+ language_len);
}
}
+
/*
* _libssh2_debug will actually truncate this for us so
* that it's not an inordinate about of data
@@ -579,7 +579,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
uint32_t len = 0;
unsigned char want_reply = 0;
len = _libssh2_ntohu32(data + 1);
- if(datalen >= (6 + len)) {
+ if((len <= (UINT_MAX - 6) && (datalen >= (6 + len))) {
want_reply = data[5 + len];
_libssh2_debug(session,
LIBSSH2_TRACE_CONN,
From 8b3cf0b17c1b84a138bed9423a9e0743452b4de9 Mon Sep 17 00:00:00 2001
From: Will Cosgrove <will@panic.com>
Date: Thu, 29 Aug 2019 15:15:33 -0700
Subject: [PATCH 2/5] stray whitespace
---
src/packet.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/packet.c b/src/packet.c
index ac69768cd..8908b2c5a 100644
--- a/src/packet.c
+++ b/src/packet.c
@@ -537,7 +537,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
case SSH_MSG_DEBUG:
if(datalen >= 2) {
int always_display = data[1];
-
+
if(datalen >= 6) {
struct string_buf buf;
buf.data = (unsigned char *)data;
From 1c6fa92b77e34d089493fe6d3e2c6c8775858b94 Mon Sep 17 00:00:00 2001
From: Will Cosgrove <will@panic.com>
Date: Thu, 29 Aug 2019 15:24:22 -0700
Subject: [PATCH 3/5] fixed type issue, updated SSH_MSG_DISCONNECT
SSH_MSG_DISCONNECT now also uses _libssh2_get API.
---
src/packet.c | 40 +++++++++++++++-------------------------
1 file changed, 15 insertions(+), 25 deletions(-)
diff --git a/src/packet.c b/src/packet.c
index 8908b2c5a..97f0cdd4b 100644
--- a/src/packet.c
+++ b/src/packet.c
@@ -419,8 +419,8 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
size_t datalen, int macstate)
{
int rc = 0;
- char *message = NULL;
- char *language = NULL;
+ unsigned char *message = NULL;
+ unsigned char *language = NULL;
size_t message_len = 0;
size_t language_len = 0;
LIBSSH2_CHANNEL *channelp = NULL;
@@ -472,33 +472,23 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
case SSH_MSG_DISCONNECT:
if(datalen >= 5) {
- size_t reason = _libssh2_ntohu32(data + 1);
+ uint32_t reason = 0;
+ struct string_buf buf;
+ buf.data = (unsigned char *)data;
+ buf.dataptr = buf.data;
+ buf.len = datalen;
+ buf.dataptr++; /* advance past type */
- if(datalen >= 9) {
- message_len = _libssh2_ntohu32(data + 5);
+ _libssh2_get_u32(&buf, &reason);
+ _libssh2_get_string(&buf, &message, &message_len);
+ _libssh2_get_string(&buf, &language, &language_len);
- if(message_len < datalen-13) {
- /* 9 = packet_type(1) + reason(4) + message_len(4) */
- message = (char *) data + 9;
-
- language_len =
- _libssh2_ntohu32(data + 9 + message_len);
- language = (char *) data + 9 + message_len + 4;
-
- if(language_len > (datalen-13-message_len)) {
- /* bad input, clear info */
- language = message = NULL;
- language_len = message_len = 0;
- }
- }
- else
- /* bad size, clear it */
- message_len = 0;
- }
if(session->ssh_msg_disconnect) {
- LIBSSH2_DISCONNECT(session, reason, message,
- message_len, language, language_len);
+ LIBSSH2_DISCONNECT(session, reason, (const char *)message,
+ message_len, (const char *)language,
+ language_len);
}
+
_libssh2_debug(session, LIBSSH2_TRACE_TRANS,
"Disconnect(%d): %s(%s)", reason,
message, language);
From 77616117cc9dbbdd0fe1157098435bff73a83a0f Mon Sep 17 00:00:00 2001
From: Will Cosgrove <will@panic.com>
Date: Thu, 29 Aug 2019 15:26:32 -0700
Subject: [PATCH 4/5] fixed stray (
bad paste
---
src/packet.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/packet.c b/src/packet.c
index 97f0cdd4b..bd4c39e46 100644
--- a/src/packet.c
+++ b/src/packet.c
@@ -569,7 +569,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
uint32_t len = 0;
unsigned char want_reply = 0;
len = _libssh2_ntohu32(data + 1);
- if((len <= (UINT_MAX - 6) && (datalen >= (6 + len))) {
+ if(len <= (UINT_MAX - 6) && datalen >= (6 + len)) {
want_reply = data[5 + len];
_libssh2_debug(session,
LIBSSH2_TRACE_CONN,
From 436c45dc143cadc8c59afac6c4255be332856581 Mon Sep 17 00:00:00 2001
From: Will Cosgrove <will@panic.com>
Date: Thu, 29 Aug 2019 15:29:00 -0700
Subject: [PATCH 5/5] added additional parentheses for clarity
---
src/packet.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/packet.c b/src/packet.c
index bd4c39e46..2e01bfc5d 100644
--- a/src/packet.c
+++ b/src/packet.c
@@ -569,7 +569,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
uint32_t len = 0;
unsigned char want_reply = 0;
len = _libssh2_ntohu32(data + 1);
- if(len <= (UINT_MAX - 6) && datalen >= (6 + len)) {
+ if((len <= (UINT_MAX - 6)) && (datalen >= (6 + len))) {
want_reply = data[5 + len];
_libssh2_debug(session,
LIBSSH2_TRACE_CONN,
)NIXE@/nix/store/1daca2rbzdl68p713h10ak548bbqbnkb-CVE-2019-17498.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/mg8rm13dx2bl00nx9i43xzmfr5n81sf2-libssh2-1.9.0.tar.gz","sha256","d5fb8bd563305fd1074dda90bd053fb2d29fc4bce048d182f96eaa466dfadafd")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","libssh2-1.9.0.tar.gz"),("out","/nix/store/mg8rm13dx2bl00nx9i43xzmfr5n81sf2-libssh2-1.9.0.tar.gz"),("outputHash","1zfsz9nldakfz61d2j70pk29zlmj7w2vv46s9l3x2prhcgaqpyym"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://www.libssh2.org/download/libssh2-1.9.0.tar.gz"),("urls","https://www.libssh2.org/download/libssh2-1.9.0.tar.gz")]))NIXED/nix/store/z8wclr7lf6jxxw9909bmsam5pq0ryqpg-libssh2-1.9.0.tar.gz.drv nix-archive-1(typeregularcontentsDerive([("dev","/nix/store/lwvg6dhd5liyh0cwry50cpa5l6c1f5jw-libssh2-1.9.0-dev","",""),("devdoc","/nix/store/2xsa57rnb70kinnn0m1pfyadwpx45n67-libssh2-1.9.0-devdoc","",""),("out","/nix/store/krxshvbd4nwgfiri4wc8r1z8qdqijfkq-libssh2-1.9.0","","")],[("/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv",["dev"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv",["dev"]),("/nix/store/z8wclr7lf6jxxw9909bmsam5pq0ryqpg-libssh2-1.9.0.tar.gz.drv",["out"])],["/nix/store/1daca2rbzdl68p713h10ak548bbqbnkb-CVE-2019-17498.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/9h45y5hrkksh6fxi7h44gibmmk5nmjxw-openssl-1.1.1h-dev /nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev"),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/lwvg6dhd5liyh0cwry50cpa5l6c1f5jw-libssh2-1.9.0-dev"),("devdoc","/nix/store/2xsa57rnb70kinnn0m1pfyadwpx45n67-libssh2-1.9.0-devdoc"),("doCheck",""),("doInstallCheck",""),("name","libssh2-1.9.0"),("nativeBuildInputs",""),("out","/nix/store/krxshvbd4nwgfiri4wc8r1z8qdqijfkq-libssh2-1.9.0"),("outputs","out dev devdoc"),("patches","/nix/store/1daca2rbzdl68p713h10ak548bbqbnkb-CVE-2019-17498.patch"),("pname","libssh2"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/mg8rm13dx2bl00nx9i43xzmfr5n81sf2-libssh2-1.9.0.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.9.0")]))NIXE=/nix/store/gb5plkgvmw3mln39d6f2yh4cxwwy5z6p-libssh2-1.9.0.drv@/nix/store/1daca2rbzdl68p713h10ak548bbqbnkb-CVE-2019-17498.patch>/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drvD/nix/store/z8wclr7lf6jxxw9909bmsam5pq0ryqpg-libssh2-1.9.0.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/n8j41iyzwmf7sp2ddl5sbi8fp9apq7nh-curl-7.73.0.tar.bz2","sha256","cf34fe0b07b800f1c01a499a6e8b2af548f6d0e044dca4a29d88a4bee146d131")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","curl-7.73.0.tar.bz2"),("out","/nix/store/n8j41iyzwmf7sp2ddl5sbi8fp9apq7nh-curl-7.73.0.tar.bz2"),("outputHash","sha256-zzT+Cwe4APHAGkmabosq9Uj20OBE3KSinYikvuFG0TE="),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://curl.haxx.se/download/curl-7.73.0.tar.bz2"),("urls","https://curl.haxx.se/download/curl-7.73.0.tar.bz2")]))NIXEC/nix/store/igkvkzq3v54cym70i715ni5cjch0q0rc-curl-7.73.0.tar.bz2.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/wnsj3xsm3axpi3n5z13zkp29jrc8vnlz-krb5-1.18.tar.gz","sha256","73913934d711dcf9d5f5605803578edb44b9a11786df3c1b2711f4e1752f2c88")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","krb5-1.18.tar.gz"),("out","/nix/store/wnsj3xsm3axpi3n5z13zkp29jrc8vnlz-krb5-1.18.tar.gz"),("outputHash","121c5xsy3x0i4wdkrpw62yhvji6virbh6n30ypazkp0isws3k4bk"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://kerberos.org/dist/krb5/1.18/krb5-1.18.tar.gz"),("urls","https://kerberos.org/dist/krb5/1.18/krb5-1.18.tar.gz")]))NIXE@/nix/store/sb0c68gmrd26pksk4rz8c81ay27n4q05-krb5-1.18.tar.gz.drv nix-archive-1(typeregularcontents�diff --git a/request-key.c b/request-key.c
index bf47c0a..105fee8 100644
--- a/request-key.c
+++ b/request-key.c
@@ -313,7 +313,7 @@ static void scan_conf_dir(struct parameters *params, const char *confdir)
while ((d = readdir(dir))) {
if (d->d_name[0] == '.')
continue;
- if (d->d_type != DT_UNKNOWN && d->d_type != DT_REG)
+ if (d->d_type != DT_UNKNOWN && d->d_type != DT_REG && d->d_type != DT_LNK)
continue;
l = strlen(d->d_name);
if (l < 5)
)NIXE>/nix/store/88a62ypvi5xpa3m8znhrl6l7jc307i8r-conf-symlink.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/qdx2m79aiw32hi6yfh7jvcyr0g7fk8w1-Make-build-reproducible.patch","sha256","7581164b63e33e9827dc3f90b68687f5cc7d2841e68b011a7cf9cc959d5cdb72")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","Make-build-reproducible.patch"),("out","/nix/store/qdx2m79aiw32hi6yfh7jvcyr0g7fk8w1-Make-build-reproducible.patch"),("outputHash","0wnvbjfrbk7rghd032z684l7vk7mhy3bd41zvhkrhgp3cd5id0bm"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://salsa.debian.org/debian/keyutils/raw/4cecffcb8e2a2aa4ef41777ed40e4e4bcfb2e5bf/debian/patches/Make-build-reproducible.patch"),("urls","https://salsa.debian.org/debian/keyutils/raw/4cecffcb8e2a2aa4ef41777ed40e4e4bcfb2e5bf/debian/patches/Make-build-reproducible.patch")]))NIXEM/nix/store/f450ks5xaq790h43nc5r78x69cr4721q-Make-build-reproducible.patch.drv nix-archive-1(typeregularcontentsEDerive([("out","/nix/store/9n3d2g1pplp7bacghxkqb73z0fipgn2h-keyutils-1.6.3.tar.gz","sha256","a61d5706136ae4c05bd48f86186bcfdbd88dd8bd5107e3e195c924cfc1b39bb4")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","keyutils-1.6.3.tar.gz"),("out","/nix/store/9n3d2g1pplp7bacghxkqb73z0fipgn2h-keyutils-1.6.3.tar.gz"),("outputHash","sha256-ph1XBhNq5MBb1I+GGGvP29iN2L1RB+Phlckkz8Gzm7Q="),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/snapshot/keyutils-1.6.3.tar.gz"),("urls","https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/snapshot/keyutils-1.6.3.tar.gz")]))NIXEE/nix/store/lkkzb8ybhp5jjgvb04b13n68i51lxwd9-keyutils-1.6.3.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/biwzmr2a22bkjy4ccb5wg0y0sgmhw56q-keyutils-1.6.3-dev","",""),("lib","/nix/store/w0fih2ykka2v4hx4msxfjs83q3l2dpz7-keyutils-1.6.3-lib","",""),("out","/nix/store/l967swhx019zjgklczashfvpljn0qp9i-keyutils-1.6.3","","")],[("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/f450ks5xaq790h43nc5r78x69cr4721q-Make-build-reproducible.patch.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/lkkzb8ybhp5jjgvb04b13n68i51lxwd9-keyutils-1.6.3.tar.gz.drv",["out"])],["/nix/store/88a62ypvi5xpa3m8znhrl6l7jc307i8r-conf-symlink.patch","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("BUILDDATE","1970-01-01"),("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/biwzmr2a22bkjy4ccb5wg0y0sgmhw56q-keyutils-1.6.3-dev"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("installFlags","ETCDIR=$(out)/etc BINDIR=$(out)/bin SBINDIR=$(out)/sbin SHAREDIR=$(out)/share/keyutils MANDIR=$(out)/share/man INCLUDEDIR=$(dev)/include LIBDIR=$(lib)/lib USRLIBDIR=$(lib)/lib"),("lib","/nix/store/w0fih2ykka2v4hx4msxfjs83q3l2dpz7-keyutils-1.6.3-lib"),("name","keyutils-1.6.3"),("nativeBuildInputs",""),("out","/nix/store/l967swhx019zjgklczashfvpljn0qp9i-keyutils-1.6.3"),("outputs","out lib dev"),("patches","/nix/store/qdx2m79aiw32hi6yfh7jvcyr0g7fk8w1-Make-build-reproducible.patch /nix/store/88a62ypvi5xpa3m8znhrl6l7jc307i8r-conf-symlink.patch"),("pname","keyutils"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/9n3d2g1pplp7bacghxkqb73z0fipgn2h-keyutils-1.6.3.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.6.3")]))NIXE>/nix/store/sddwl6nwam3d47vn1s6bxj92s5gl0d9f-keyutils-1.6.3.drv>/nix/store/88a62ypvi5xpa3m8znhrl6l7jc307i8r-conf-symlink.patch>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drvM/nix/store/f450ks5xaq790h43nc5r78x69cr4721q-Make-build-reproducible.patch.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drvE/nix/store/lkkzb8ybhp5jjgvb04b13n68i51lxwd9-keyutils-1.6.3.tar.gz.drv nix-archive-1(typeregularcontents/# pkg-config Wrapper hygiene
#
# See comments in cc-wrapper's setup hook. This works exactly the same way.
# Skip setup hook if we're neither a build-time dep, nor, temporarily, doing a
# native compile.
#
# TODO(@Ericson2314): No native exception
[[ -z ${strictDeps-} ]] || (( "$hostOffset" < 0 )) || return 0
pkgConfigWrapper_addPkgConfigPath () {
# See ../setup-hooks/role.bash
local role_post
getHostRoleEnvHook
addToSearchPath "PKG_CONFIG_PATH${role_post}" "$1/lib/pkgconfig"
addToSearchPath "PKG_CONFIG_PATH${role_post}" "$1/share/pkgconfig"
}
# See ../setup-hooks/role.bash
getTargetRole
getTargetRoleWrapper
addEnvHooks "$targetOffset" pkgConfigWrapper_addPkgConfigPath
export PKG_CONFIG${role_post}=@targetPrefix@@baseBinName@
# No local scope in sourced file
unset -v role_post
)NIXE9/nix/store/c4akajrb4jg50k72jw7zfbyv8z139ri0-setup-hook.sh nix-archive-1(typeregularcontentsr#Derive([("out","/nix/store/ib4y54cb74399cs7jfnb1xh3wfnrlcgr-stdenv-linux","","")],[("/nix/store/1awan4fyzhanpbc93d362v96xg3hf64c-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/1b5xg25dp8aqa6i5dnxynbgs86993rsi-findutils-4.7.0.drv",["out"]),("/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drv",["out"]),("/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv",["out"]),("/nix/store/6vp6a7pr3jzw11jw7f5kgn00c2af7jd4-gzip-1.10.drv",["out"]),("/nix/store/7hmz09qanmrb052555vqjl9s67is5mxx-diffutils-3.7.drv",["out"]),("/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv",["bin","dev","out"]),("/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv",["out"]),("/nix/store/9ssv4a0ldfawsj2fzk47kszn78qxwz77-binutils-2.31.1.drv",["out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv",["lib","out"]),("/nix/store/g3n9568r6gm2kzg7rswzznvfin2z33v9-gnused-4.8.drv",["out"]),("/nix/store/hdngb074saxk5sbq1hd9ph2pqij74khd-gawk-5.1.0.drv",["out"]),("/nix/store/jzapakqw0mqxajcifdrzplk91zw5sakg-ed-1.16.drv",["out"]),("/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv",["out"]),("/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv",["out"]),("/nix/store/lgy31acnbxbvgd8xh0b3fyfnb7484qhn-gnutar-1.32.drv",["out"]),("/nix/store/m7mr6b3xk7i7yph04605kis8v904g1vf-patch-2.7.6.drv",["out"]),("/nix/store/mdakkb8gz46xav44ivjjnv0idf982xm1-libunistring-0.9.10.drv",["out"]),("/nix/store/pbvvx5564w3yxp07slagqsnwxkvcahcz-gnumake-4.3.drv",["out"]),("/nix/store/r3yhr5kjkzsi7b1428bdpwfabx2san7n-linux-headers-5.5.drv",["out"]),("/nix/store/s1sjb0fzyrjaz760z3725nj8sx9fs145-pcre-8.44.drv",["out"]),("/nix/store/w24z9jb462cl93ln2qmw7nyh16flph7z-binutils-wrapper-2.31.1.drv",["out"]),("/nix/store/wb1nclfrlbxcbn245rd8js0hjbq8x487-patchelf-0.12.drv",["out"]),("/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv",["out"]),("/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv",["bin","out"]),("/nix/store/y4fb80b55mffsb3lzrj47kcvmyqf4p3i-bzip2-1.0.6.0.1.drv",["bin","out"]),("/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv",["out"])],["/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh","/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh","/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh","/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh","/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh","/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh","/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh","/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh","/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh","/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh","/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh","/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh"],[("allowedRequisites","/nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10 /nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10 /nix/store/wzckyqwrhhlg2nc6v7injw4di15n1k2v-bzip2-1.0.6.0.1-bin /nix/store/a5njryhgjr1nvg621plzccbls2ix4xzl-bzip2-1.0.6.0.1 /nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin /nix/store/y41vgrya42wlzq8zpywkccaiknzpcraz-xz-5.2.5 /nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23 /nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23 /nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1 /nix/store/p3kn26g5nhmx6spn37ar3mn0xjbzks3g-binutils-2.31.1 /nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32 /nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32 /nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7 /nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7 /nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0 /nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0 /nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0 /nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0 /nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3 /nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3 /nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8 /nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8 /nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32 /nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32 /nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5 /nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5 /nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6 /nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6 /nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/fcbw5ca51r2cqf4c8955m8blk2d0r4bn-ed-1.16 /nix/store/fcbw5ca51r2cqf4c8955m8blk2d0r4bn-ed-1.16 /nix/store/0ylsw32rdkc60kq7sv6gmq98wsd6p09y-attr-2.4.48 /nix/store/3kn4grkcb6xp2l0l1y4y7xhks8m7p0g3-acl-2.2.53 /nix/store/7nwhl76vj9r5kfd1af9xa2cqdridblv6-zlib-1.2.11 /nix/store/qb4rmys9h9abdh104jjflfj8hscm9n9d-pcre-8.44 /nix/store/g4gk96z9i98hyyf2j4mzn8vvws6gb7i3-libidn2-2.3.0 /nix/store/ma8xwfjik16p74wxdj640d7mk8wj58z9-libunistring-0.9.10 /nix/store/a6rnjp15qgp8a699dlffqj94hzy1nldg-glibc-2.32 /nix/store/606bq3978rxwad2ab3biqqnndmi1jy24-glibc-2.32-dev /nix/store/1r260nda9hzq8lkqw0niz7lc2f1rmbn6-glibc-2.32-bin /nix/store/6bsgs0zjrdhxqb3k58v98yxqz76qzgki-linux-headers-5.5 /nix/store/yxb05gy6knsij4mjkm69ckghdy3kj4l6-binutils-wrapper-2.31.1 /nix/store/s3j2gpc2s7cdn2wafm192jfp9k8jfvhs-gcc-wrapper-9.3.0 /nix/store/gqm07as49jn3gqmxlxrgpnqhzmm18374-gcc-9.3.0 /nix/store/51hq0xxp9nng3xxfz7dpkhb9lzy7sz84-gcc-9.3.0-lib /nix/store/xzd5j26vbdrh6j4428922s1x5nv440c4-expand-response-params /nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh "),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("defaultBuildInputs",""),("defaultNativeBuildInputs","/nix/store/rlxi4syk88bgv9sn97jfddg9ihl276mb-patchelf-0.12 /nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.sh /nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh /nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh /nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh /nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh /nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh /nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh /nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh /nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh /nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh /nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh /nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh "),("initialPath","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32 /nix/store/glz328g8zg4j9k76720my7pvv1rpkpdg-findutils-4.7.0 /nix/store/lk5r5lawvmjzann8xzrr6xnmbl3jqbca-diffutils-3.7 /nix/store/f93rlws3rb9jp8bgnlrjhw57ahnhii5d-gnused-4.8 /nix/store/0vgfn2q9vd10g43qwmv3ji67g6cnsnra-gnugrep-3.5 /nix/store/32baafg0iik41zgfs6cfm5qn1q5ksbi5-gawk-5.1.0 /nix/store/kvinyiln8yy11grk4vmzq0b4s9mzqnn4-gnutar-1.32 /nix/store/akpkn4xabsh148wkgws8pf90h41ihvnf-gzip-1.10 /nix/store/wzckyqwrhhlg2nc6v7injw4di15n1k2v-bzip2-1.0.6.0.1-bin /nix/store/rw4r13z0asrs2wd1qggzbz48yilz9qyz-gnumake-4.3 /nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23 /nix/store/9bh736naaw3lyh1sala6vjv3rybd1kwq-patch-2.7.6 /nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("name","stdenv-linux"),("out","/nix/store/ib4y54cb74399cs7jfnb1xh3wfnrlcgr-stdenv-linux"),("preHook","# Make \"strip\" produce deterministic output, by setting\n# timestamps etc. to a fixed value.\ncommonStripFlags=\"--enable-deterministic-archives\"\nexport NIX_ENFORCE_PURITY=\"${NIX_ENFORCE_PURITY-1}\"\nexport NIX_ENFORCE_NO_NATIVE=\"${NIX_ENFORCE_NO_NATIVE-1}\"\nNIX_LIB64_IN_SELF_RPATH=1\n\n\n"),("setup","/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.sh"),("shell","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("system","x86_64-linux")]))NIXE</nix/store/imyr84vl26c875jbbck1zfw1idjh77zg-stdenv-linux.drv*A/nix/store/1awan4fyzhanpbc93d362v96xg3hf64c-gcc-wrapper-9.3.0.drv?/nix/store/1b5xg25dp8aqa6i5dnxynbgs86993rsi-findutils-4.7.0.drv?/nix/store/1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh=/nix/store/2w0lbzcwhljq3zgmbvjpjzdmipjfim08-libidn2-2.3.0.drv4/nix/store/4ygqr4w06zwcd2kcxa6w3441jijv0pvx-strip.sh:/nix/store/5q1n0awx0i73qzb4h8d4p3qzjm3x9k40-acl-2.2.53.drv=/nix/store/6k829xz9v508ncxfcf2p1b8g1wq54946-patch-shebangs.sh9/nix/store/6vp6a7pr3jzw11jw7f5kgn00c2af7jd4-gzip-1.10.drv=/nix/store/7hmz09qanmrb052555vqjl9s67is5mxx-diffutils-3.7.drv:/nix/store/7vqq59vh3inzcrcg7pp84824sck09fdw-glibc-2.32.drv>/nix/store/8vmmjb3llqzfwr62d0w3d7h9ndpd7fg4-coreutils-8.32.drv;/nix/store/8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh?/nix/store/9ssv4a0ldfawsj2fzk47kszn78qxwz77-binutils-2.31.1.drv</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drvF/nix/store/c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.shB/nix/store/cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh9/nix/store/cpfss57x6nw12gj6crhh7yh4za1bra5w-gcc-9.3.0.drv6/nix/store/dsyj1sp3h8q2wwi8m6z548rvn3bmm3vc-builder.sh9/nix/store/fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh:/nix/store/g3n9568r6gm2kzg7rswzznvfin2z33v9-gnused-4.8.drv:/nix/store/hdngb074saxk5sbq1hd9ph2pqij74khd-gawk-5.1.0.drv7/nix/store/jzapakqw0mqxajcifdrzplk91zw5sakg-ed-1.16.drv8/nix/store/kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh4/nix/store/kgxr35hxps3v4mzwishrjp43ljlf56w2-setup.shE/nix/store/kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drvF/nix/store/l80a0br4iz6la6yh43cbqf9lyxbldyz5-expand-response-params.drv;/nix/store/lgy31acnbxbvgd8xh0b3fyfnb7484qhn-gnutar-1.32.drv;/nix/store/m7mr6b3xk7i7yph04605kis8v904g1vf-patch-2.7.6.drvC/nix/store/mdakkb8gz46xav44ivjjnv0idf982xm1-libunistring-0.9.10.drv8/nix/store/mjjy30kxz775bhhi6j9phw81qh6dsbrf-move-docs.shN/nix/store/ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh;/nix/store/pbvvx5564w3yxp07slagqsnwxkvcahcz-gnumake-4.3.drvA/nix/store/r3yhr5kjkzsi7b1428bdpwfabx2san7n-linux-headers-5.5.drvA/nix/store/rvg5a5nwa7cihpmbzlwzh931w3g4q108-compress-man-pages.sh9/nix/store/s1sjb0fzyrjaz760z3725nj8sx9fs145-pcre-8.44.drvG/nix/store/w24z9jb462cl93ln2qmw7nyh16flph7z-binutils-wrapper-2.31.1.drv=/nix/store/wb1nclfrlbxcbn245rd8js0hjbq8x487-patchelf-0.12.drv;/nix/store/wkqhskljm3mlkjcfvkdyw2swm9z99bh2-gnugrep-3.5.drv8/nix/store/xr569rwdsldc7la6z6ivr1li76243d85-xz-5.2.5.drv?/nix/store/y4fb80b55mffsb3lzrj47kcvmyqf4p3i-bzip2-1.0.6.0.1.drv;/nix/store/z1zr17nb4f2l7v94f6c892f4i2n167p2-attr-2.4.48.drv nix-archive-1(typeregularcontents# See cc-wrapper for comments.
var_templates_list=(
PKG_CONFIG_PATH
)
accumulateRoles
for var in "${var_templates_list[@]}"; do
mangleVarList "$var" ${role_suffixes[@]+"${role_suffixes[@]}"}
done
export NIX_PKG_CONFIG_WRAPPER_FLAGS_SET_@suffixSalt@=1
)NIXE8/nix/store/q799b7sq11ykvzg20igddk91pqb0h7ck-add-flags.sh nix-archive-1(typeregularcontents�#! @shell@
set -eu -o pipefail +o posix
shopt -s nullglob
if (( "${NIX_DEBUG:-0}" >= 7 )); then
set -x
fi
source @out@/nix-support/utils.bash
if [ -z "${NIX_PKG_CONFIG_WRAPPER_FLAGS_SET_@suffixSalt@:-}" ]; then
source @out@/nix-support/add-flags.sh
fi
if (( ${#role_suffixes[@]} > 0 )); then
# replace env var with nix-modified one
PKG_CONFIG_PATH=$PKG_CONFIG_PATH_@suffixSalt@ exec @prog@ "$@"
else
# pkg-config isn't a bonafied dependency so ignore setup hook entirely
exec @prog@ "$@"
fi
)NIXEA/nix/store/vhw4s3hrc4gpl32ccviwiivgmzyfki5b-pkg-config-wrapper.sh nix-archive-1(typeregularcontentsdiff --git a/main.c b/main.c
index b61ca34..5a420c2 100644
--- a/main.c
+++ b/main.c
@@ -602,10 +602,10 @@ main (int argc, char **argv)
else
disable_private_libs();
- /* honor Requires.private if any Cflags are requested or any static
+ /* honor Requires.private if any any static
* libs are requested */
- if (pkg_flags & CFLAGS_ANY || want_requires_private || want_exists ||
+ if (want_requires_private ||
(want_static_lib_list && (pkg_flags & LIBS_ANY)))
enable_requires_private();
)NIXEB/nix/store/f4bvwqvj0y3z6blvh0knz71a8yq1c45p-requires-private.patch nix-archive-1(typeregularcontents Derive([("out","/nix/store/83haczzqmdmjjaf73y4fnk1zkcfai9zf-pkg-config-0.29.2.tar.gz","sha256","6fc69c01688c9458a57eb9a1664c9aba372ccda420a02bf4429fe610e7e7d591")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","pkg-config-0.29.2.tar.gz"),("out","/nix/store/83haczzqmdmjjaf73y4fnk1zkcfai9zf-pkg-config-0.29.2.tar.gz"),("outputHash","14fmwzki1rlz8bs2p810lk6jqdxsk966d8drgsjmi54cd00rrikg"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz"),("urls","https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz")]))NIXEH/nix/store/fgp9gyvfhilynn2yjwcc6cnp3f2zylpy-pkg-config-0.29.2.tar.gz.drv nix-archive-1(typeregularcontentsDerive([("doc","/nix/store/vj3680qimwpjn26vqyc6dfc7262hxdph-pkg-config-0.29.2-doc","",""),("man","/nix/store/wxpq6clzrgb86cgsmklp4pld0dxshha1-pkg-config-0.29.2-man","",""),("out","/nix/store/rr8fkac9ylgxpk5kwmbknry4lbys6sl6-pkg-config-0.29.2","","")],[("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/fgp9gyvfhilynn2yjwcc6cnp3f2zylpy-pkg-config-0.29.2.tar.gz.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/f4bvwqvj0y3z6blvh0knz71a8yq1c45p-requires-private.patch"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags","--with-internal-glib"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("doc","/nix/store/vj3680qimwpjn26vqyc6dfc7262hxdph-pkg-config-0.29.2-doc"),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/wxpq6clzrgb86cgsmklp4pld0dxshha1-pkg-config-0.29.2-man"),("name","pkg-config-0.29.2"),("nativeBuildInputs",""),("out","/nix/store/rr8fkac9ylgxpk5kwmbknry4lbys6sl6-pkg-config-0.29.2"),("outputs","out man doc"),("patches","/nix/store/f4bvwqvj0y3z6blvh0knz71a8yq1c45p-requires-private.patch"),("pname","pkg-config"),("postInstall","rm -f \"$out\"/bin/*-pkg-config"),("postPatch","rm -f check/check-requires-private check/check-gtk check/missing\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/83haczzqmdmjjaf73y4fnk1zkcfai9zf-pkg-config-0.29.2.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","0.29.2")]))NIXEA/nix/store/x5d7hzp12r6217mfs1mk5642m82g76cr-pkg-config-0.29.2.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drvB/nix/store/f4bvwqvj0y3z6blvh0knz71a8yq1c45p-requires-private.patchH/nix/store/fgp9gyvfhilynn2yjwcc6cnp3f2zylpy-pkg-config-0.29.2.tar.gz.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv nix-archive-1(typeregularcontentsq Derive([("doc","/nix/store/r02fjd5zdm9hpf4pic7gvvkjlsrs0ihp-pkg-config-wrapper-0.29.2-doc","",""),("man","/nix/store/z57fjk9vjcdcdb9bwbbrj2qbcfjkx3gi-pkg-config-wrapper-0.29.2-man","",""),("out","/nix/store/sg6gil2xw166lcp85lsfjpgra0hhi3zl-pkg-config-wrapper-0.29.2","","")],[("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/imyr84vl26c875jbbck1zfw1idjh77zg-stdenv-linux.drv",["out"]),("/nix/store/x5d7hzp12r6217mfs1mk5642m82g76cr-pkg-config-0.29.2.drv",["doc","man","out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/c4akajrb4jg50k72jw7zfbyv8z139ri0-setup-hook.sh","/nix/store/q799b7sq11ykvzg20igddk91pqb0h7ck-add-flags.sh","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash","/nix/store/vhw4s3hrc4gpl32ccviwiivgmzyfki5b-pkg-config-wrapper.sh","/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("baseBinName","pkg-config"),("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/r02fjd5zdm9hpf4pic7gvvkjlsrs0ihp-pkg-config-wrapper-0.29.2-doc"),("dontBuild","1"),("dontConfigure","1"),("installPhase","mkdir -p $out/bin $out/nix-support\n\nwrap() {\n local dst=\"$1\"\n local wrapper=\"$2\"\n export prog=\"$3\"\n substituteAll \"$wrapper\" \"$out/bin/$dst\"\n chmod +x \"$out/bin/$dst\"\n}\n\necho $pkg-config > $out/nix-support/orig-pkg-config\n\nwrap pkg-config /nix/store/vhw4s3hrc4gpl32ccviwiivgmzyfki5b-pkg-config-wrapper.sh \"/nix/store/rr8fkac9ylgxpk5kwmbknry4lbys6sl6-pkg-config-0.29.2/bin/pkg-config\"\nln -s /nix/store/rr8fkac9ylgxpk5kwmbknry4lbys6sl6-pkg-config-0.29.2/share $out/share\n"),("man","/nix/store/z57fjk9vjcdcdb9bwbbrj2qbcfjkx3gi-pkg-config-wrapper-0.29.2-man"),("name","pkg-config-wrapper-0.29.2"),("nativeBuildInputs",""),("out","/nix/store/sg6gil2xw166lcp85lsfjpgra0hhi3zl-pkg-config-wrapper-0.29.2"),("outputs","out man doc"),("patches",""),("pname","pkg-config-wrapper"),("postFixup","printWords /nix/store/rr8fkac9ylgxpk5kwmbknry4lbys6sl6-pkg-config-0.29.2 > $out/nix-support/propagated-user-env-packages\nln -s /nix/store/wxpq6clzrgb86cgsmklp4pld0dxshha1-pkg-config-0.29.2-man $man\nln -s /nix/store/vj3680qimwpjn26vqyc6dfc7262hxdph-pkg-config-0.29.2-doc $doc\nsubstituteAll /nix/store/q799b7sq11ykvzg20igddk91pqb0h7ck-add-flags.sh $out/nix-support/add-flags.sh\nsubstituteAll /nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash $out/nix-support/utils.bash\n"),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("setupHooks","/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bash /nix/store/c4akajrb4jg50k72jw7zfbyv8z139ri0-setup-hook.sh"),("shell","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("stdenv","/nix/store/ib4y54cb74399cs7jfnb1xh3wfnrlcgr-stdenv-linux"),("strictDeps","1"),("suffixSalt","x86_64_unknown_linux_gnu"),("system","x86_64-linux"),("targetPrefix",""),("unpackPhase","src=$PWD\n"),("version","0.29.2"),("wrapperName","PKG_CONFIG_WRAPPER")]))NIXEI/nix/store/sh6bq5xdvqgq515fglqj7kqhjfli5zvv-pkg-config-wrapper-0.29.2.drv >/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv9/nix/store/c4akajrb4jg50k72jw7zfbyv8z139ri0-setup-hook.sh</nix/store/imyr84vl26c875jbbck1zfw1idjh77zg-stdenv-linux.drv8/nix/store/q799b7sq11ykvzg20igddk91pqb0h7ck-add-flags.sh5/nix/store/qy5734q2z2n8q2jdkywc78x37wh3vsis-role.bashA/nix/store/vhw4s3hrc4gpl32ccviwiivgmzyfki5b-pkg-config-wrapper.shA/nix/store/x5d7hzp12r6217mfs1mk5642m82g76cr-pkg-config-0.29.2.drv6/nix/store/zmns7q22jznb9rvhb924bccykd4vsc3p-utils.bash nix-archive-1(typeregularcontents~
Derive([("dev","/nix/store/3z9nnxbmnlk8gyrcajaz2aikyqcah03z-libkrb5-1.18-dev","",""),("out","/nix/store/zcg4v4vp9zv77624bidgkcylibc5wajz-libkrb5-1.18","","")],[("/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv",["dev"]),("/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv",["out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/sb0c68gmrd26pksk4rz8c81ay27n4q05-krb5-1.18.tar.gz.drv",["out"]),("/nix/store/sddwl6nwam3d47vn1s6bxj92s5gl0d9f-keyutils-1.6.3.drv",["dev"]),("/nix/store/sh6bq5xdvqgq515fglqj7kqhjfli5zvv-pkg-config-wrapper-0.29.2.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs","/nix/store/9h45y5hrkksh6fxi7h44gibmmk5nmjxw-openssl-1.1.1h-dev /nix/store/biwzmr2a22bkjy4ccb5wg0y0sgmhw56q-keyutils-1.6.3-dev"),("buildPhase","MAKE=\"make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES\"\n(cd util; $MAKE)\n(cd include; $MAKE)\n(cd lib; $MAKE)\n(cd build-tools; $MAKE)\n"),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags","--with-tcl=no --localstatedir=/var/lib"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/3z9nnxbmnlk8gyrcajaz2aikyqcah03z-libkrb5-1.18-dev"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("installPhase","mkdir -p \"$out\"/{bin,sbin,lib/pkgconfig,share/{et,man/man1}} \\\n \"$dev\"/include/{gssapi,gssrpc,kadm5,krb5}\n(cd util; $MAKE install)\n(cd include; $MAKE install)\n(cd lib; $MAKE install)\n(cd build-tools; $MAKE install)\nmoveToOutput bin/krb5-config \"$dev\"\n\n"),("majorVersion","1.18"),("name","libkrb5-1.18"),("nativeBuildInputs","/nix/store/sg6gil2xw166lcp85lsfjpgra0hhi3zl-pkg-config-wrapper-0.29.2 /nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0"),("out","/nix/store/zcg4v4vp9zv77624bidgkcylibc5wajz-libkrb5-1.18"),("outputs","out dev"),("patches",""),("postInstall","moveToOutput bin/krb5-config \"$dev\"\n"),("preConfigure","cd ./src"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/wnsj3xsm3axpi3n5z13zkp29jrc8vnlz-krb5-1.18.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.18")]))NIXE</nix/store/phzcf8yvlad3pfx46g9qq3ali9vjzc76-libkrb5-1.18.drv>/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv@/nix/store/sb0c68gmrd26pksk4rz8c81ay27n4q05-krb5-1.18.tar.gz.drv>/nix/store/sddwl6nwam3d47vn1s6bxj92s5gl0d9f-keyutils-1.6.3.drvI/nix/store/sh6bq5xdvqgq515fglqj7kqhjfli5zvv-pkg-config-wrapper-0.29.2.drv nix-archive-1(typeregularcontents'Derive([("out","/nix/store/fwq6c962lrnx8al2r9aqdqskprhqqvw5-nghttp2-1.41.0.tar.bz2","sha256","645ca078e7ec276dcfa27175f3af6140c8badc7358ec9d2892b6ab2bcee72240")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","nghttp2-1.41.0.tar.bz2"),("out","/nix/store/fwq6c962lrnx8al2r9aqdqskprhqqvw5-nghttp2-1.41.0.tar.bz2"),("outputHash","0h12wz72paxnj8l9vv2qfgfbmj20c6pz6xbilb7ns9zcwxwa0p34"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://github.com/nghttp2/nghttp2/releases/download/v1.41.0/nghttp2-1.41.0.tar.bz2"),("urls","https://github.com/nghttp2/nghttp2/releases/download/v1.41.0/nghttp2-1.41.0.tar.bz2")]))NIXEF/nix/store/5sl0l883539zbc8wygi20va0lsj5djgf-nghttp2-1.41.0.tar.bz2.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/2mkgvzqxb3bn4g37hr6qiqz81rmf9df2-libev-4.33.tar.gz","sha256","507eb7b8d1015fbec5b935f34ebed15bf346bed04a11ab82b8eee848c4205aea")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","libev-4.33.tar.gz"),("out","/nix/store/2mkgvzqxb3bn4g37hr6qiqz81rmf9df2-libev-4.33.tar.gz"),("outputHash","1sjs4324is7fp21an4aas2z4dwsvs6z4xwrmp72vwpq1s6wbfzjh"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://dist.schmorp.de/libev/Attic/libev-4.33.tar.gz"),("urls","http://dist.schmorp.de/libev/Attic/libev-4.33.tar.gz")]))NIXEA/nix/store/g9m1g9agw4b9minpw647w28xnvnx2n4c-libev-4.33.tar.gz.drv nix-archive-1(typeregularcontents:Derive([("out","/nix/store/sy0dl6nfsb2qg3prxbxarqjy4fbf3irz-libev-4.33","","")],[("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/g9m1g9agw4b9minpw647w28xnvnx2n4c-libev-4.33.tar.gz.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","libev-4.33"),("nativeBuildInputs",""),("out","/nix/store/sy0dl6nfsb2qg3prxbxarqjy4fbf3irz-libev-4.33"),("outputs","out"),("patches",""),("pname","libev"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/2mkgvzqxb3bn4g37hr6qiqz81rmf9df2-libev-4.33.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.33")]))NIXE:/nix/store/nz6czhj8wphx6fs9cfby7hlcj6i82fjd-libev-4.33.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drvA/nix/store/g9m1g9agw4b9minpw647w28xnvnx2n4c-libev-4.33.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("out","/nix/store/nhixnxbylh8nm30k749rm5sxjq3acb74-c-ares-1.15.0.tar.gz","sha256","6cdb97871f2930530c97deb7cf5c8fa4be5a0b02c7cea6e7c7667672a39d6852")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","c-ares-1.15.0.tar.gz"),("out","/nix/store/nhixnxbylh8nm30k749rm5sxjq3acb74-c-ares-1.15.0.tar.gz"),("outputHash","0lk8knip4xk6qzksdkn7085mmgm4ixfczdyyjw656c193y3rgnvc"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","https://c-ares.haxx.se/download/c-ares-1.15.0.tar.gz"),("urls","https://c-ares.haxx.se/download/c-ares-1.15.0.tar.gz")]))NIXED/nix/store/0gzlabxdx5xhf75wrsgcq1awikvcrn6y-c-ares-1.15.0.tar.gz.drv nix-archive-1(typeregularcontents$Derive([("out","/nix/store/d2jj4p6678caqwmz5r2gkkwf13zql6xz-c-ares-1.15.0","","")],[("/nix/store/0gzlabxdx5xhf75wrsgcq1awikvcrn6y-c-ares-1.15.0.tar.gz.drv",["out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("name","c-ares-1.15.0"),("nativeBuildInputs",""),("out","/nix/store/d2jj4p6678caqwmz5r2gkkwf13zql6xz-c-ares-1.15.0"),("outputs","out"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/nhixnxbylh8nm30k749rm5sxjq3acb74-c-ares-1.15.0.tar.gz"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE=/nix/store/rfgcbsz4c92078ydxjwhdli3lq2j6f8i-c-ares-1.15.0.drvD/nix/store/0gzlabxdx5xhf75wrsgcq1awikvcrn6y-c-ares-1.15.0.tar.gz.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv nix-archive-1(typeregularcontents�
Derive([("bin","/nix/store/wv1a0bhsfh7r2g38c1kjldd0n6bjgigy-nghttp2-1.41.0-bin","",""),("dev","/nix/store/kndb904zry8bwrwcvnlb7cqqxiqcv9s9-nghttp2-1.41.0-dev","",""),("lib","/nix/store/lszgz9srs6rdkk8x043qi6mqmlqmp970-nghttp2-1.41.0-lib","",""),("out","/nix/store/fgyyl544qkiyjc89nyqmgaphhsxivlyb-nghttp2-1.41.0","","")],[("/nix/store/5sl0l883539zbc8wygi20va0lsj5djgf-nghttp2-1.41.0.tar.bz2.drv",["out"]),("/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv",["dev"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv",["dev"]),("/nix/store/nz6czhj8wphx6fs9cfby7hlcj6i82fjd-libev-4.33.drv",["out"]),("/nix/store/rfgcbsz4c92078ydxjwhdli3lq2j6f8i-c-ares-1.15.0.drv",["out"]),("/nix/store/sh6bq5xdvqgq515fglqj7kqhjfli5zvv-pkg-config-wrapper-0.29.2.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/wv1a0bhsfh7r2g38c1kjldd0n6bjgigy-nghttp2-1.41.0-bin"),("buildInputs","/nix/store/9h45y5hrkksh6fxi7h44gibmmk5nmjxw-openssl-1.1.1h-dev /nix/store/sy0dl6nfsb2qg3prxbxarqjy4fbf3irz-libev-4.33 /nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev /nix/store/d2jj4p6678caqwmz5r2gkkwf13zql6xz-c-ares-1.15.0"),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags","--with-spdylay=no --disable-examples --enable-app --disable-python-bindings"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/kndb904zry8bwrwcvnlb7cqqxiqcv9s9-nghttp2-1.41.0-dev"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("lib","/nix/store/lszgz9srs6rdkk8x043qi6mqmlqmp970-nghttp2-1.41.0-lib"),("name","nghttp2-1.41.0"),("nativeBuildInputs","/nix/store/sg6gil2xw166lcp85lsfjpgra0hhi3zl-pkg-config-wrapper-0.29.2"),("out","/nix/store/fgyyl544qkiyjc89nyqmgaphhsxivlyb-nghttp2-1.41.0"),("outputs","bin out dev lib"),("patches",""),("pname","nghttp2"),("postInstall",""),("preInstall",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/fwq6c962lrnx8al2r9aqdqskprhqqvw5-nghttp2-1.41.0.tar.bz2"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","1.41.0")]))NIXE>/nix/store/z4jzvk1bq9xm9fbsdz04090vxgp1x5mf-nghttp2-1.41.0.drv F/nix/store/5sl0l883539zbc8wygi20va0lsj5djgf-nghttp2-1.41.0.tar.bz2.drv>/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv:/nix/store/nz6czhj8wphx6fs9cfby7hlcj6i82fjd-libev-4.33.drv=/nix/store/rfgcbsz4c92078ydxjwhdli3lq2j6f8i-c-ares-1.15.0.drvI/nix/store/sh6bq5xdvqgq515fglqj7kqhjfli5zvv-pkg-config-wrapper-0.29.2.drv nix-archive-1(typeregularcontentsDerive([("bin","/nix/store/ps4yparckddzr71vygbrq4pjsf420vks-curl-7.73.0-bin","",""),("debug","/nix/store/lfasj87akqjvzzjhpbbswbprzdzrpr3f-curl-7.73.0-debug","",""),("dev","/nix/store/1j4231hk0x9wkcvai1y06sdi9xcgnxqr-curl-7.73.0-dev","",""),("devdoc","/nix/store/75bq4g1281613r77by1n65vl0xr96h7v-curl-7.73.0-devdoc","",""),("man","/nix/store/kk2ya47jxmdg5v7c37rai3blc1dfl6yn-curl-7.73.0-man","",""),("out","/nix/store/27cy00np9q48wji5qmah7lsfmc8vrsqh-curl-7.73.0","","")],[("/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv",["dev"]),("/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv",["out"]),("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv",["out"]),("/nix/store/gb5plkgvmw3mln39d6f2yh4cxwwy5z6p-libssh2-1.9.0.drv",["dev","out"]),("/nix/store/igkvkzq3v54cym70i715ni5cjch0q0rc-curl-7.73.0.tar.bz2.drv",["out"]),("/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv",["dev"]),("/nix/store/phzcf8yvlad3pfx46g9qq3ali9vjzc76-libkrb5-1.18.drv",["dev"]),("/nix/store/sh6bq5xdvqgq515fglqj7kqhjfli5zvv-pkg-config-wrapper-0.29.2.drv",["out"]),("/nix/store/z4jzvk1bq9xm9fbsdz04090vxgp1x5mf-nghttp2-1.41.0.drv",["dev"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("CXX","c++"),("CXXCPP","c++ -E"),("bin","/nix/store/ps4yparckddzr71vygbrq4pjsf420vks-curl-7.73.0-bin"),("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("configureFlags","--without-ca-bundle --without-ca-path --with-ca-fallback --disable-manual --with-ssl=/nix/store/9h45y5hrkksh6fxi7h44gibmmk5nmjxw-openssl-1.1.1h-dev --without-gnutls --with-libssh2=/nix/store/lwvg6dhd5liyh0cwry50cpa5l6c1f5jw-libssh2-1.9.0-dev --disable-ldap --disable-ldaps --without-libidn --without-brotli --with-gssapi=/nix/store/3z9nnxbmnlk8gyrcajaz2aikyqcah03z-libkrb5-1.18-dev"),("debug","/nix/store/lfasj87akqjvzzjhpbbswbprzdzrpr3f-curl-7.73.0-debug"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/1j4231hk0x9wkcvai1y06sdi9xcgnxqr-curl-7.73.0-dev"),("devdoc","/nix/store/75bq4g1281613r77by1n65vl0xr96h7v-curl-7.73.0-devdoc"),("doCheck",""),("doInstallCheck",""),("enableParallelBuilding","1"),("enableParallelChecking","1"),("man","/nix/store/kk2ya47jxmdg5v7c37rai3blc1dfl6yn-curl-7.73.0-man"),("name","curl-7.73.0"),("nativeBuildInputs","/nix/store/sg6gil2xw166lcp85lsfjpgra0hhi3zl-pkg-config-wrapper-0.29.2 /nix/store/03vh3lc5fymqjyck3v3rckbvs36qa74g-perl-5.32.0 /nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh"),("out","/nix/store/27cy00np9q48wji5qmah7lsfmc8vrsqh-curl-7.73.0"),("outputs","bin dev out man devdoc debug"),("patches",""),("pname","curl"),("postInstall","moveToOutput bin/curl-config \"$dev\"\n\n# Install completions\nmake -C scripts install\nsed '/^dependency_libs/s|/nix/store/lwvg6dhd5liyh0cwry50cpa5l6c1f5jw-libssh2-1.9.0-dev|/nix/store/krxshvbd4nwgfiri4wc8r1z8qdqijfkq-libssh2-1.9.0|' -i \"$out\"/lib/*.la\n"),("preConfigure","sed -e 's|/usr/bin|/no-such-path|g' -i.bak configure\nrm src/tool_hugehelp.c\n"),("propagatedBuildInputs","/nix/store/kndb904zry8bwrwcvnlb7cqqxiqcv9s9-nghttp2-1.41.0-dev /nix/store/m2k45kq2f37j3xgvsc7zxa1sbvf2j5qx-zlib-1.2.11-dev /nix/store/3z9nnxbmnlk8gyrcajaz2aikyqcah03z-libkrb5-1.18-dev /nix/store/9h45y5hrkksh6fxi7h44gibmmk5nmjxw-openssl-1.1.1h-dev /nix/store/lwvg6dhd5liyh0cwry50cpa5l6c1f5jw-libssh2-1.9.0-dev"),("propagatedNativeBuildInputs",""),("separateDebugInfo","1"),("src","/nix/store/n8j41iyzwmf7sp2ddl5sbi8fp9apq7nh-curl-7.73.0.tar.bz2"),("stdenv","/nix/store/rh9q5l9wf68v4vqnaag13a2ijas25g14-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","7.73.0")]))NIXE;/nix/store/b7k911g0f6ndpnsi87qih2s08572pzpz-curl-7.73.0.drv >/nix/store/8lgf1xxhfrpvy4nc3i78knikgn7pl129-openssl-1.1.1h.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh;/nix/store/aasvc8qvh0i6whijjwc5xfm83hjcnv8g-perl-5.32.0.drv</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drvB/nix/store/ciwp1yj92pvlyzx0zygv0nr653658pw6-separate-debug-info.sh</nix/store/fmngsqfa787kqpbhnlsli0rwgy5x4c4r-stdenv-linux.drv=/nix/store/gb5plkgvmw3mln39d6f2yh4cxwwy5z6p-libssh2-1.9.0.drvC/nix/store/igkvkzq3v54cym70i715ni5cjch0q0rc-curl-7.73.0.tar.bz2.drv;/nix/store/l6m9p5rmg0vj4p053knbpb33gb3blj10-zlib-1.2.11.drv</nix/store/phzcf8yvlad3pfx46g9qq3ali9vjzc76-libkrb5-1.18.drvI/nix/store/sh6bq5xdvqgq515fglqj7kqhjfli5zvv-pkg-config-wrapper-0.29.2.drv>/nix/store/z4jzvk1bq9xm9fbsdz04090vxgp1x5mf-nghttp2-1.41.0.drv nix-archive-1(typeregularcontentsYsource $stdenv/setup
# !!! this is kinda hacky.
set | grep -E '^[a-zA-Z]+=.*://' > $out
)NIXE@/nix/store/ycwm35msmsdi2qgjax1slmjffsmwy8am-write-mirror-list.sh nix-archive-1(typeregularcontents�.Derive([("out","/nix/store/gi63q1pb2m6rg32lcjcdvrdkfn885ql4-mirrors-list","","")],[("/nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv",["out"]),("/nix/store/imyr84vl26c875jbbck1zfw1idjh77zg-stdenv-linux.drv",["out"])],["/nix/store/ycwm35msmsdi2qgjax1slmjffsmwy8am-write-mirror-list.sh"],"x86_64-linux","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash",["-e","/nix/store/ycwm35msmsdi2qgjax1slmjffsmwy8am-write-mirror-list.sh"],[("alsa","https://www.alsa-project.org/files/pub/ ftp://ftp.alsa-project.org/pub/ https://alsa.cybermirror.org/ https://www.mirrorservice.org/sites/ftp.alsa-project.org/pub/ https://alsa.mirror.fr/"),("apache","https://www-eu.apache.org/dist/ https://www-us.apache.org/dist/ https://www.eu.apache.org/dist/ ftp://ftp.fu-berlin.de/unix/www/apache/ https://ftp.tudelft.nl/apache/ https://mirror.cc.columbia.edu/pub/software/apache/ https://www.apache.org/dist/ https://archive.apache.org/dist/ ftp://ftp.funet.fi/pub/mirrors/apache.org/ https://apache.cs.uu.nl/ https://apache.cs.utah.edu/"),("bioc","https://bioconductor.jp/packages/ https://bioconductor.statistik.tu-dortmund.de/packages/ https://mirrors.ebi.ac.uk/bioconductor/packages/ https://mirrors.ustc.edu.cn/bioc/"),("bitlbee","https://get.bitlbee.org/ https://get.bitlbee.be/ https://get.us.bitlbee.org/ https://ftp.snt.utwente.nl/pub/software/bitlbee/ https://bitlbee.intergenia.de/"),("buildInputs",""),("builder","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23/bin/bash"),("centos","https://mirror.centos.org/centos/ https://vault.centos.org/ https://archive.kernel.org/centos-vault/ https://ftp.jaist.ac.jp/pub/Linux/CentOS-vault/ https://mirrors.aliyun.com/centos-vault/ https://mirror.chpc.utah.edu/pub/vault.centos.org/ https://mirror.its.sfu.ca/mirror/CentOS-vault/ https://mirror.math.princeton.edu/pub/centos-vault/ https://mirrors.tripadvisor.com/centos-vault/"),("configureFlags",""),("cpan","https://cpan.metacpan.org/ https://cpan.perl.org/ https://backpan.perl.org/"),("debian","https://httpredir.debian.org/debian/ ftp://ftp.au.debian.org/debian/ ftp://ftp.de.debian.org/debian/ ftp://ftp.es.debian.org/debian/ ftp://ftp.fr.debian.org/debian/ ftp://ftp.it.debian.org/debian/ ftp://ftp.nl.debian.org/debian/ ftp://ftp.ru.debian.org/debian/ ftp://ftp.debian.org/debian/ https://ftp.debian.org/debian/ https://archive.debian.org/debian-archive/debian/ ftp://ftp.funet.fi/pub/mirrors/ftp.debian.org/debian/"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck",""),("doInstallCheck",""),("fedora","https://archives.fedoraproject.org/pub/fedora/ https://fedora.osuosl.org/ https://ftp.nluug.nl/pub/os/Linux/distr/fedora/ https://ftp.funet.fi/pub/mirrors/ftp.redhat.com/pub/fedora/ https://fedora.bhs.mirrors.ovh.net/ https://mirror.csclub.uwaterloo.ca/fedora/ https://ftp.linux.cz/pub/linux/fedora/ https://ftp.heanet.ie/pub/fedora/ https://mirror.1000mbps.com/fedora/ https://archives.fedoraproject.org/pub/archive/fedora/"),("gcc","https://bigsearcher.com/mirrors/gcc/ https://mirror.koddos.net/gcc/ ftp://ftp.nluug.nl/mirror/languages/gcc/ ftp://ftp.fu-berlin.de/unix/languages/gcc/ ftp://ftp.irisa.fr/pub/mirrors/gcc.gnu.org/gcc/ ftp://gcc.gnu.org/pub/gcc/"),("gentoo","https://ftp.snt.utwente.nl/pub/os/linux/gentoo/ https://distfiles.gentoo.org/ ftp://mirrors.kernel.org/gentoo/"),("gnome","https://download.gnome.org/ https://ftp.unina.it/pub/linux/GNOME/ https://fr2.rpmfind.net/linux/gnome.org/ ftp://ftp.dit.upm.es/pub/GNOME/ ftp://ftp.no.gnome.org/pub/GNOME/ https://ftp.acc.umu.se/pub/GNOME/ https://ftp.belnet.be/mirror/ftp.gnome.org/ https://ftp.df.lth.se/pub/gnome/ https://linorg.usp.br/gnome/ https://mirror.aarnet.edu.au/pub/GNOME/ ftp://ftp.cse.buffalo.edu/pub/Gnome/ ftp://ftp.nara.wide.ad.jp/pub/X11/GNOME/"),("gnu","https://ftpmirror.gnu.org/ https://ftp.nluug.nl/pub/gnu/ https://mirrors.kernel.org/gnu/ ftp://mirror.cict.fr/gnu/ ftp://ftp.cs.tu-berlin.de/pub/gnu/ ftp://ftp.chg.ru/pub/gnu/ ftp://ftp.funet.fi/pub/mirrors/ftp.gnu.org/gnu/ https://ftp.gnu.org/pub/gnu/"),("gnupg","https://gnupg.org/ftp/gcrypt/ https://www.ring.gr.jp/pub/net/ https://gd.tuwien.ac.at/privacy/ https://mirrors.dotsrc.org/gcrypt/ https://ftp.heanet.ie/mirrors/ftp.gnupg.org/gcrypt/ https://www.mirrorservice.org/sites/ftp.gnupg.org/gcrypt/"),("hackage","https://hackage.haskell.org/package/ https://hdiff.luite.com/packages/archive/package/ https://hackage.fpcomplete.com/package/ https://objects-us-east-1.dream.io/hackage-mirror/package/"),("hashedMirrors","https://tarballs.nixos.org"),("imagemagick","https://www.imagemagick.org/download/ https://mirror.checkdomain.de/imagemagick/ https://ftp.nluug.nl/ImageMagick/ ftp://ftp.sunet.se/pub/multimedia/graphics/ImageMagick/ https://ftp.sunet.se/pub/multimedia/graphics/ImageMagick/ ftp://ftp.imagemagick.org/pub/ImageMagick/ https://ftp.fifi.org/ImageMagick/ ftp://ftp.fifi.org/ImageMagick/ https://imagemagick.mirrorcatalogs.com/ ftp://imagemagick.mirrorcatalogs.com/imagemagick"),("kde","https://download.kde.org/download.php?url= https://ftp.gwdg.de/pub/linux/kde/ https://mirrors.ocf.berkeley.edu/kde/ https://mirrors.mit.edu/kde/ https://mirrors.ustc.edu.cn/kde/ https://ftp.funet.fi/pub/mirrors/ftp.kde.org/pub/kde/ ftp://ftp.kde.org/pub/kde/"),("kernel","https://cdn.kernel.org/pub/ https://www.all.kernel.org/pub/ https://ramses.wh2.tu-dresden.de/pub/mirrors/kernel.org/ https://linux-kernel.uio.no/pub/ https://kernel.osuosl.org/pub/ ftp://ftp.funet.fi/pub/mirrors/ftp.kernel.org/pub/"),("luarocks","https://luarocks.org https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/ https://luafr.org/moonrocks https://luarocks.logiceditor.com/rocks"),("maven","https://repo1.maven.org/maven2/"),("metalab","ftp://mirrors.kernel.org/metalab/ ftp://ftp.gwdg.de/pub/linux/metalab/ ftp://ftp.xemacs.org/sites/metalab.unc.edu/"),("mozilla","https://download.cdn.mozilla.net/pub/mozilla.org/ https://archive.mozilla.org/pub/"),("mysql","https://cdn.mysql.com/Downloads/"),("name","mirrors-list"),("nativeBuildInputs",""),("oldsuse","ftp://ftp.gmd.de/ftp.suse.com-discontinued/"),("openbsd","https://ftp.openbsd.org/pub/OpenBSD/ ftp://ftp.nluug.nl/pub/OpenBSD/ ftp://ftp-stud.fht-esslingen.de/pub/OpenBSD/ ftp://ftp.halifax.rwth-aachen.de/pub/OpenBSD/ ftp://mirror.switch.ch/pub/OpenBSD/"),("opensuse","https://opensuse.hro.nl/opensuse/distribution/ https://ftp.funet.fi/pub/linux/mirrors/opensuse/distribution/ https://ftp.belnet.be/mirror/ftp.opensuse.org/distribution/ https://ftp.uni-kassel.de/opensuse/distribution/ https://ftp.opensuse.org/pub/opensuse/distribution/ https://ftp5.gwdg.de/pub/opensuse/discontinued/distribution/ https://ftp.hosteurope.de/mirror/ftp.opensuse.org/discontinued/ https://opensuse.mirror.server4you.net/distribution/ https://ftp.nsysu.edu.tw/Linux/OpenSuSE/distribution/"),("osdn","https://osdn.dl.osdn.jp/ https://osdn.mirror.constant.com/ https://mirrors.gigenet.com/OSDN/ https://osdn.dl.sourceforge.jp/ https://jaist.dl.sourceforge.jp/"),("out","/nix/store/gi63q1pb2m6rg32lcjcdvrdkfn885ql4-mirrors-list"),("outputs","out"),("patches",""),("postgresql","https://ftp.postgresql.org/pub/ ftp://ftp.postgresql.org/pub/ ftp://ftp-archives.postgresql.org/pub/"),("preferLocalBuild","1"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("pypi","https://files.pythonhosted.org/packages/source/ https://pypi.io/packages/source/"),("roy","https://roy.marples.name/downloads/ https://roy.aydogan.net/ https://cflags.cc/roy/"),("sageupstream","https://sagemath.polytechnic.edu.na/spkg/upstream/ ftp://ftp.sun.ac.za/pub/mirrors/www.sagemath.org/spkg/upstream/ https://sagemath.mirror.ac.za/spkg/upstream/ https://ftp.leg.uct.ac.za/pub/packages/sage/spkg/upstream/ https://mirror.ufs.ac.za/sagemath/spkg/upstream/ https://mirrors-usa.go-parts.com/sage/sagemath/spkg/upstream/ https://mirrors.mit.edu/sage/spkg/upstream/ https://www.cecm.sfu.ca/sage/spkg/upstream/ https://files.sagemath.org/spkg/upstream/ https://mirror.clibre.uqam.ca/sage/spkg/upstream/ https://mirrors.xmission.com/sage/spkg/upstream/ https://sagemath.c3sl.ufpr.br/spkg/upstream/ https://linorg.usp.br/sage/spkg/upstream https://sage.asis.io/spkg/upstream/ https://mirror.hust.edu.cn/sagemath/spkg/upstream/ https://ftp.iitm.ac.in/sage/spkg/upstream/ https://ftp.kaist.ac.kr/sage/spkg/upstream/ https://ftp.riken.jp/sagemath/spkg/upstream/ https://mirrors.tuna.tsinghua.edu.cn/sagemath/spkg/upstream/ https://mirrors.ustc.edu.cn/sagemath/spkg/upstream/ https://ftp.tsukuba.wide.ad.jp/software/sage/spkg/upstream/ https://ftp.yz.yamagata-u.ac.jp/pub/math/sage/spkg/upstream/ https://mirror.yandex.ru/mirrors/sage.math.washington.edu/spkg/upstream/ https://echidna.maths.usyd.edu.au/sage/spkg/upstream/ https://sage.mirror.garr.it/mirrors/sage/spkg/upstream/ https://sunsite.rediris.es/mirror/sagemath/spkg/upstream/ https://mirror.switch.ch/mirror/sagemath/spkg/upstream/ https://mirrors.fe.up.pt/pub/sage/spkg/upstream/ https://www-ftp.lip6.fr/pub/math/sagemath/spkg/upstream/ https://ftp.ntua.gr/pub/sagemath/spkg/upstream/"),("samba","https://www.samba.org/ftp/ https://www.samba.org/ftp/"),("savannah","https://mirror.easyname.at/nongnu/ https://mirror2.klaus-uwe.me/nongnu/ https://savannah.c3sl.ufpr.br/ https://mirror.csclub.uwaterloo.ca/nongnu/ https://mirror.cedia.org.ec/nongnu/ https://ftp.igh.cnrs.fr/pub/nongnu/ https://mirror6.layerjet.com/nongnu https://mirror.netcologne.de/savannah/ https://ftp.cc.uoc.gr/mirrors/nongnu.org/ https://nongnu.uib.no/ https://mirrors.fe.up.pt/pub/nongnu/ https://mirror.lihnidos.org/GNU/savannah/ https://savannah.mirror.si/ https://ftp.acc.umu.se/mirror/gnu.org/savannah/ https://ftp.twaren.net/Unix/NonGNU/ https://ftp.yzu.edu.tw/pub/nongnu/ https://mirror.rackdc.com/savannah/ https://savannah-nongnu-org.ip-connect.vn.ua/ https://www.mirrorservice.org/sites/download.savannah.gnu.org/releases/ https://savannah.spinellicreations.com/ https://gnu.mirrors.pair.com/savannah/savannah/ ftp://mirror.easyname.at/nongnu/ ftp://mirror2.klaus-uwe.me/nongnu/ ftp://savannah.c3sl.ufpr.br/savannah-nongnu/ ftp://mirror.csclub.uwaterloo.ca/nongnu/ ftp://mirror.cedia.org.ec/nongnu ftp://ftp.igh.cnrs.fr/pub/nongnu/ ftp://mirror6.layerjet.com/nongnu/ ftp://mirror.netcologne.de/savannah/ ftp://nongnu.uib.no/pub/nongnu/ ftp://mirrors.fe.up.pt/pub/nongnu/ ftp://savannah.mirror.si/savannah/ ftp://ftp.twaren.net/Unix/NonGNU/ ftp://ftp.yzu.edu.tw/pub/nongnu/ ftp://savannah-nongnu-org.ip-connect.vn.ua/mirror/savannah.nongnu.org/ ftp://ftp.mirrorservice.org/sites/download.savannah.gnu.org/releases/ ftp://spinellicreations.com/gnu_dot_org_savannah_mirror/"),("sourceforge","https://downloads.sourceforge.net/ https://prdownloads.sourceforge.net/ https://heanet.dl.sourceforge.net/sourceforge/ https://surfnet.dl.sourceforge.net/sourceforge/ https://dfn.dl.sourceforge.net/sourceforge/ https://osdn.dl.sourceforge.net/sourceforge/ https://kent.dl.sourceforge.net/sourceforge/"),("stdenv","/nix/store/ib4y54cb74399cs7jfnb1xh3wfnrlcgr-stdenv-linux"),("steamrt","https://repo.steampowered.com/steamrt/ https://public.abbradar.moe/steamrt/"),("strictDeps",""),("system","x86_64-linux"),("ubuntu","https://nl.archive.ubuntu.com/ubuntu/ https://de.archive.ubuntu.com/ubuntu/ https://archive.ubuntu.com/ubuntu/ https://old-releases.ubuntu.com/ubuntu/"),("xfce","https://archive.xfce.org/ https://mirror.netcologne.de/xfce/ https://archive.se.xfce.org/xfce/ https://archive.be.xfce.org/xfce/ https://mirror.perldude.de/archive.xfce.org/ https://archive.be2.xfce.org/ https://ftp.udc.es/xfce/ https://archive.al-us.xfce.org/ https://mirror.yongbok.net/X11/xfce-mirror/ https://mirrors.tummy.com/pub/archive.xfce.org/ https://xfce.mirror.uber.com.au/"),("xorg","https://xorg.freedesktop.org/releases/ https://ftp.x.org/archive/")]))NIXE</nix/store/k8pcm5b1chh1s1i4bwwr7s0vqlas57bw-mirrors-list.drv</nix/store/c0js9mfs8mn5xfz3lzz45a6b5x687cza-bash-4.4-p23.drv</nix/store/imyr84vl26c875jbbck1zfw1idjh77zg-stdenv-linux.drv@/nix/store/ycwm35msmsdi2qgjax1slmjffsmwy8am-write-mirror-list.sh nix-archive-1(typeregularcontents�Derive([("dev","/nix/store/yyzj9y73jgq84aazryxnkhncwj4aww45-bash-4.4-p23-dev","",""),("doc","/nix/store/pb9h411di027iakjzq83ycwy33raipa0-bash-4.4-p23-doc","",""),("info","/nix/store/c9mwdhmyqrjqn383p0kk8x9qv40clblx-bash-4.4-p23-info","",""),("man","/nix/store/wlrglq8bcgs47nfrh33si2d00nflxxc4-bash-4.4-p23-man","",""),("out","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/58y89v7rl254dc2cygcfd5wzhv0kjm4m-bash44-013.drv",["out"]),("/nix/store/bkhp2l6yxbziq265a77v60v0s68494ba-bash44-018.drv",["out"]),("/nix/store/bwpr6g17bq0j17r5d4isxahhxn52cnnr-bash44-019.drv",["out"]),("/nix/store/c8svmxmwjkzvwszy8ga7x2fwx0qbmm10-bash44-001.drv",["out"]),("/nix/store/djmmx28jvbngp9wa15z4xasllaaqd1z0-bash44-004.drv",["out"]),("/nix/store/f30binazxhx8g0xkiav6lglp29h4a164-bash44-002.drv",["out"]),("/nix/store/fgg03wqpa11paihmbxc3dfqxhqgf10bi-bash44-007.drv",["out"]),("/nix/store/ghyy9947nssi1vn8m6h0giik5sxgbvww-bash44-006.drv",["out"]),("/nix/store/gk0dvdga6634xw6sy9ajyb381qaczdrd-bash44-017.drv",["out"]),("/nix/store/ip70l59j1w6lfmi0fx02lmzjr2rahlgv-bash44-009.drv",["out"]),("/nix/store/kpr5qx791p55y7kgbypw230nqp673fya-bash44-005.drv",["out"]),("/nix/store/l42vs1awqpx8pf681fql357s3pa8qqk3-bash44-011.drv",["out"]),("/nix/store/lx3frlxywbvvr9823sxqp07jlfniib9p-bash44-008.drv",["out"]),("/nix/store/m5j1yp47lw1psd9n6bzina1167abbprr-bash44-023.drv",["out"]),("/nix/store/myfzvw3m2fzg7r3xkzr15c0flbc9mxiq-bash-4.4.tar.gz.drv",["out"]),("/nix/store/n1qz6fhb4fkz0i5f9sl6f1vqyrlnaiqv-bash44-016.drv",["out"]),("/nix/store/n3g29b5ha33ssq0v79gsf4vd198vj5r3-bash44-015.drv",["out"]),("/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv",["out"]),("/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv",["out"]),("/nix/store/pxjkwfqmn0hmzjqgbsh5j31wrqflhxbf-bash44-012.drv",["out"]),("/nix/store/q8hxz4f402ps0vwhj3sgfyp6x0ss35sv-bash44-003.drv",["out"]),("/nix/store/r4lwjq1nvwpaqabaaj5bv001xxfj4ziq-bash44-010.drv",["out"]),("/nix/store/v3cml51dcs43i1psd7s76z6bi35p3j9n-bootstrap-stage4-gcc-wrapper-9.3.0.drv",["out"]),("/nix/store/xadh3b1m14451ky8c8a297063nzrf1zn-bash44-020.drv",["out"]),("/nix/store/xs5c12bzf9vrrniscd53p2j9vkmvww2p-bash44-014.drv",["out"]),("/nix/store/z4ym1w4ssi236w2i6nsf7ba0s5ji9hd9-bash44-022.drv",["out"]),("/nix/store/zr7jikfinzgh6k2b10zp9jmfg4gv7za0-bash44-021.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("NIX_CFLAGS_COMPILE","-DSYS_BASHRC=\"/etc/bashrc\"\n-DSYS_BASH_LOGOUT=\"/etc/bash_logout\"\n-DDEFAULT_PATH_VALUE=\"/no-such-path\"\n-DSTANDARD_UTILS_PATH=\"/no-such-path\"\n-DNON_INTERACTIVE_LOGIN_SHELLS\n-DSSH_SOURCE_BASHRC\n"),("NIX_HARDENING_ENABLE","fortify stackprotector pic strictoverflow relro bindnow"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--disable-readline"),("depsBuildBuild","/nix/store/ali802g210gp63a6wbig1lghw0zmdyd6-bootstrap-stage4-gcc-wrapper-9.3.0"),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/yyzj9y73jgq84aazryxnkhncwj4aww45-bash-4.4-p23-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/pb9h411di027iakjzq83ycwy33raipa0-bash-4.4-p23-doc"),("enableParallelBuilding",""),("hardeningDisable","format"),("info","/nix/store/c9mwdhmyqrjqn383p0kk8x9qv40clblx-bash-4.4-p23-info"),("makeFlags",""),("man","/nix/store/wlrglq8bcgs47nfrh33si2d00nflxxc4-bash-4.4-p23-man"),("name","bash-4.4-p23"),("nativeBuildInputs","/nix/store/7ql0lzzwks4bjb78d8a9vrz875wb4bim-bison-3.7.3"),("out","/nix/store/516z50fm1jbpcl32qnzy7kynrh0vl22w-bash-4.4-p23"),("outputs","out dev man doc info"),("patchFlags","-p0 -T"),("patches","/nix/store/v4zzrwb6m2wl3lpy8ycf82i49dgm947l-bash44-001 /nix/store/7danzrkb22gignb90jhhl508k0x74fid-bash44-002 /nix/store/hhxq0jb8dbkw68z5dvarwgdrliamr76c-bash44-003 /nix/store/n781p1a8193xl6vf7y8z6s0rgi8gmg9h-bash44-004 /nix/store/r08yflna5b3x8f0fa8n2nkpw51slm411-bash44-005 /nix/store/zskj1jz5s2iix97iz5kxjyh3kqd8v28m-bash44-006 /nix/store/kqykzisj9ll5dva7lr6hhjf0v1l5svar-bash44-007 /nix/store/ih1alzqkqpinbw745lrm48f7jfk5ab3b-bash44-008 /nix/store/5086pd6ljw546sahagxzjg53d5hdrq09-bash44-009 /nix/store/9x7zwqc14g6knm77r6s23z2jk0plwp4c-bash44-010 /nix/store/202rpp7v7f21bx2kq06dpc6gaic2gvjh-bash44-011 /nix/store/li9vlg439jbbfz3anb7nx0a8dp2adsgc-bash44-012 /nix/store/gffadngj1b38vrs3cw1davbndlfccj8r-bash44-013 /nix/store/nca55pyd81bylc46s0h5mjvb6dk8azwa-bash44-014 /nix/store/nqvgwsxabymj6k9cap1n4lnsbnpz9dx9-bash44-015 /nix/store/lsxbyvlsqk38fka1p2f9vlfnmxvhs8vi-bash44-016 /nix/store/lr5586viy3k10cphp6ka39r7qr8cirgg-bash44-017 /nix/store/h2lap34xv5znjb5wcgqcj813939gwd2h-bash44-018 /nix/store/9mhyazyw3rv5lmibkyb1x61lsw29fqch-bash44-019 /nix/store/wmq4fmib2r79gxmhis01cghcd7phrcgw-bash44-020 /nix/store/2fr3wiy7q2i4gan2f8w27c9hrsr9x13c-bash44-021 /nix/store/d5iz3skv66k7vx15pnbjq8xgyfk7hy6w-bash44-022 /nix/store/x9cyj78gzd1wjf0xsiad1pa3ricbj566-bash44-023 /nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch"),("postFixup","rm -rf \"$out/share\" \"$out/bin/bashbug\"\n"),("postInstall","ln -s bash \"$out/bin/sh\"\nrm -f $out/lib/bash/Makefile.inc\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/rv68r40mwx7xa7vrlmanczkkjcnkc452-bash-4.4.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","4.4")]))NIXE</nix/store/10xi5iv5svzxfdxdjzbq0hyxwkyxg8dr-bash-4.4-p23.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv:/nix/store/58y89v7rl254dc2cygcfd5wzhv0kjm4m-bash44-013.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh:/nix/store/bkhp2l6yxbziq265a77v60v0s68494ba-bash44-018.drv:/nix/store/bwpr6g17bq0j17r5d4isxahhxn52cnnr-bash44-019.drv:/nix/store/c8svmxmwjkzvwszy8ga7x2fwx0qbmm10-bash44-001.drv?/nix/store/d6a4ngpmijv1sk5q7al7ka2lhy8m5ryc-pgrp-pipe-4.4.patch:/nix/store/djmmx28jvbngp9wa15z4xasllaaqd1z0-bash44-004.drv:/nix/store/f30binazxhx8g0xkiav6lglp29h4a164-bash44-002.drv:/nix/store/fgg03wqpa11paihmbxc3dfqxhqgf10bi-bash44-007.drv:/nix/store/ghyy9947nssi1vn8m6h0giik5sxgbvww-bash44-006.drv:/nix/store/gk0dvdga6634xw6sy9ajyb381qaczdrd-bash44-017.drv:/nix/store/ip70l59j1w6lfmi0fx02lmzjr2rahlgv-bash44-009.drv:/nix/store/kpr5qx791p55y7kgbypw230nqp673fya-bash44-005.drv:/nix/store/l42vs1awqpx8pf681fql357s3pa8qqk3-bash44-011.drv:/nix/store/lx3frlxywbvvr9823sxqp07jlfniib9p-bash44-008.drv:/nix/store/m5j1yp47lw1psd9n6bzina1167abbprr-bash44-023.drv?/nix/store/myfzvw3m2fzg7r3xkzr15c0flbc9mxiq-bash-4.4.tar.gz.drv:/nix/store/n1qz6fhb4fkz0i5f9sl6f1vqyrlnaiqv-bash44-016.drv:/nix/store/n3g29b5ha33ssq0v79gsf4vd198vj5r3-bash44-015.drvM/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv;/nix/store/p9nca18d0h5ci9gn856ldr752nmm37rb-bison-3.7.3.drv:/nix/store/pxjkwfqmn0hmzjqgbsh5j31wrqflhxbf-bash44-012.drv:/nix/store/q8hxz4f402ps0vwhj3sgfyp6x0ss35sv-bash44-003.drv:/nix/store/r4lwjq1nvwpaqabaaj5bv001xxfj4ziq-bash44-010.drvR/nix/store/v3cml51dcs43i1psd7s76z6bi35p3j9n-bootstrap-stage4-gcc-wrapper-9.3.0.drv:/nix/store/xadh3b1m14451ky8c8a297063nzrf1zn-bash44-020.drv:/nix/store/xs5c12bzf9vrrniscd53p2j9vkmvww2p-bash44-014.drv:/nix/store/z4ym1w4ssi236w2i6nsf7ba0s5ji9hd9-bash44-022.drv:/nix/store/zr7jikfinzgh6k2b10zp9jmfg4gv7za0-bash44-021.drv nix-archive-1(typeregularcontents�--- a/certdata2pem.py 2017-08-01 23:10:00.000000000 +0300
+++ b/certdata2pem.py 2017-08-01 23:08:21.131297636 +0300
@@ -88,7 +88,7 @@
\# Read blacklist.
blacklist = []
if os.path.exists('blacklist.txt'):
- for line in open('blacklist.txt', 'r'):
+ for line in io.open('blacklist.txt', 'r', encoding='utf-8'):
line = line.strip()
if line.startswith('#') or len(line) == 0:
continue
@@ -101,7 +101,7 @@
if obj['CKA_CLASS'] != 'CKO_NSS_TRUST':
continue
if obj['CKA_LABEL'] in blacklist:
- print("Certificate %s blacklisted, ignoring." % obj['CKA_LABEL'])
+ print("Certificate %s blacklisted, ignoring." % unicode(obj['CKA_LABEL']).encode('utf-8'))
elif obj['CKA_TRUST_SERVER_AUTH'] == 'CKT_NSS_TRUSTED_DELEGATOR':
trust[obj['CKA_LABEL']] = True
elif obj['CKA_TRUST_EMAIL_PROTECTION'] == 'CKT_NSS_TRUSTED_DELEGATOR':
)NIXEF/nix/store/4svq1727xfk148ngpfgyjfqc60pjkwip-fix-unicode-ca-names.patch nix-archive-1(typeregularcontents�export NIX_SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt
# left for compatibility
export SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt
)NIXE9/nix/store/6svjgns358jny59jd3xz3wmr8g8j7wlz-setup-hook.sh nix-archive-1(typeregularcontents�Derive([("out","/nix/store/y6w1k6z7nzxhddj5dwj20clfd2q3pxb7-attr-2.4.48.tar.gz","sha256","5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","attr-2.4.48.tar.gz"),("out","/nix/store/y6w1k6z7nzxhddj5dwj20clfd2q3pxb7-attr-2.4.48.tar.gz"),("outputHash","1rr4adzwax4bzr2c00f06zcsljv5y6p9wymz1g89ww7cb2rp5bay"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://mirror.easyname.at/nongnu/attr/attr-2.4.48.tar.gz"),("urls","http://mirror.easyname.at/nongnu/attr/attr-2.4.48.tar.gz")]))NIXEB/nix/store/2adm9mf4gs34vbn1js65v90yq6v9i12p-attr-2.4.48.tar.gz.drv nix-archive-1(typeregularcontents�Derive([("bin","/nix/store/il06kwl8mhcym1603gzp6jmz0afkrhc7-attr-2.4.48-bin","",""),("dev","/nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev","",""),("doc","/nix/store/ifi92z2blbqfl02mxzbp6j088a79ppgv-attr-2.4.48-doc","",""),("man","/nix/store/bk5xdwx1r2i0my9srq6gyv5w329ardlb-attr-2.4.48-man","",""),("out","/nix/store/0ylsw32rdkc60kq7sv6gmq98wsd6p09y-attr-2.4.48","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/2adm9mf4gs34vbn1js65v90yq6v9i12p-attr-2.4.48.tar.gz.drv",["out"]),("/nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drv",["out"]),("/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh","/nix/store/yh2f3paxrqhd9bf0d1yzajrwa74c3pjc-syscall.patch"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/il06kwl8mhcym1603gzp6jmz0afkrhc7-attr-2.4.48-bin"),("buildInputs",""),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/ifi92z2blbqfl02mxzbp6j088a79ppgv-attr-2.4.48-doc"),("man","/nix/store/bk5xdwx1r2i0my9srq6gyv5w329ardlb-attr-2.4.48-man"),("name","attr-2.4.48"),("nativeBuildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("out","/nix/store/0ylsw32rdkc60kq7sv6gmq98wsd6p09y-attr-2.4.48"),("outputs","bin dev out man doc"),("patches","/nix/store/yh2f3paxrqhd9bf0d1yzajrwa74c3pjc-syscall.patch"),("postPatch","for script in install-sh include/install-sh; do\n patchShebangs $script\ndone\n"),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/y6w1k6z7nzxhddj5dwj20clfd2q3pxb7-attr-2.4.48.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE;/nix/store/7ylqf57bi3l8b2llrqd0nl5255mryglw-attr-2.4.48.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drvB/nix/store/2adm9mf4gs34vbn1js65v90yq6v9i12p-attr-2.4.48.tar.gz.drv</nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv9/nix/store/yh2f3paxrqhd9bf0d1yzajrwa74c3pjc-syscall.patch nix-archive-1(typeregularcontents�Derive([("out","/nix/store/0fpf4zfxzkz5yxcdp4wbyy1z52yzj1kw-acl-2.2.53.tar.gz","sha256","06be9865c6f418d851ff4494e12406568353b891ffe1f596b34693c387af26c7")],[],[],"builtin","builtin:fetchurl",[],[("builder","builtin:fetchurl"),("executable",""),("impureEnvVars","http_proxy https_proxy ftp_proxy all_proxy no_proxy"),("name","acl-2.2.53.tar.gz"),("out","/nix/store/0fpf4zfxzkz5yxcdp4wbyy1z52yzj1kw-acl-2.2.53.tar.gz"),("outputHash","1ir6my3w74s6nfbgbqgzj6w570sn0qjf3524zx8xh67lqrjrigh6"),("outputHashAlgo","sha256"),("outputHashMode","flat"),("preferLocalBuild","1"),("system","builtin"),("unpack",""),("url","http://mirror.easyname.at/nongnu/acl/acl-2.2.53.tar.gz"),("urls","http://mirror.easyname.at/nongnu/acl/acl-2.2.53.tar.gz")]))NIXEA/nix/store/63bc0mn98ckc5wj739zkpb7h3m7hhci6-acl-2.2.53.tar.gz.drv nix-archive-1(typeregularcontents Derive([("bin","/nix/store/rrykv607yp2avqpgbnbr60n9ppf1x0sq-acl-2.2.53-bin","",""),("dev","/nix/store/2lmnh90w747bnmwznbna8n6krggv5nlm-acl-2.2.53-dev","",""),("doc","/nix/store/c8cwgs2fg8lzdx6njwxydv0vjiqscx14-acl-2.2.53-doc","",""),("man","/nix/store/9h319d368lysvgbj1vfyapp99izb0496-acl-2.2.53-man","",""),("out","/nix/store/3kn4grkcb6xp2l0l1y4y7xhks8m7p0g3-acl-2.2.53","","")],[("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drv",["out"]),("/nix/store/63bc0mn98ckc5wj739zkpb7h3m7hhci6-acl-2.2.53.tar.gz.drv",["out"]),("/nix/store/7ylqf57bi3l8b2llrqd0nl5255mryglw-attr-2.4.48.drv",["dev"]),("/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("bin","/nix/store/rrykv607yp2avqpgbnbr60n9ppf1x0sq-acl-2.2.53-bin"),("buildInputs","/nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags",""),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("dev","/nix/store/2lmnh90w747bnmwznbna8n6krggv5nlm-acl-2.2.53-dev"),("doCheck",""),("doInstallCheck",""),("doc","/nix/store/c8cwgs2fg8lzdx6njwxydv0vjiqscx14-acl-2.2.53-doc"),("man","/nix/store/9h319d368lysvgbj1vfyapp99izb0496-acl-2.2.53-man"),("name","acl-2.2.53"),("nativeBuildInputs","/nix/store/87k0svg64s67ga0brvvya0z0hwq2v58g-gettext-0.21"),("out","/nix/store/3kn4grkcb6xp2l0l1y4y7xhks8m7p0g3-acl-2.2.53"),("outputs","bin dev out man doc"),("patchPhase","echo \"Removing C++-style comments from include/acl.h\"\nsed -e '/^\\/\\//d' -i include/acl.h\n\npatchShebangs .\n"),("patches",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/0fpf4zfxzkz5yxcdp4wbyy1z52yzj1kw-acl-2.2.53.tar.gz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux")]))NIXE:/nix/store/nqql3kwwrzghgkkbxivrfbyy2ngiq08y-acl-2.2.53.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv</nix/store/5b3n9m7rk6ipra36akdzyjh4z49wq7yp-gettext-0.21.drvA/nix/store/63bc0mn98ckc5wj739zkpb7h3m7hhci6-acl-2.2.53.tar.gz.drv;/nix/store/7ylqf57bi3l8b2llrqd0nl5255mryglw-attr-2.4.48.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shM/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv nix-archive-1(typeregularcontents�Derive([("info","/nix/store/rzpgad7sp02106isz1f1digm2alcv52p-coreutils-8.32-info","",""),("out","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32","","")],[("/nix/store/00jaqd9g73bwzb53dfv9qvfy3yz3hjaj-xz-5.2.5.drv",["bin"]),("/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv",["out"]),("/nix/store/7ylqf57bi3l8b2llrqd0nl5255mryglw-attr-2.4.48.drv",["dev"]),("/nix/store/bvjjdqid3590hkbszlm81ppwrbk9zjaa-coreutils-8.32.tar.xz.drv",["out"]),("/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv",["dev"]),("/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv",["out"]),("/nix/store/nqql3kwwrzghgkkbxivrfbyy2ngiq08y-acl-2.2.53.drv",["dev"]),("/nix/store/p3s4dnghg37rc3g10ibnlbgvggf1rzc8-bootstrap-stage4-stdenv-linux.drv",["out"])],["/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],"x86_64-linux","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash",["-e","/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"],[("FORCE_UNSAFE_CONFIGURE",""),("NIX_LDFLAGS",""),("buildInputs","/nix/store/rg4i45ipyr302q2xxw69lpxmkwdkkb08-gmp-6.2.0-dev /nix/store/2lmnh90w747bnmwznbna8n6krggv5nlm-acl-2.2.53-dev /nix/store/k9qds942zaspdilq4snzlfnnbyrsyang-attr-2.4.48-dev"),("builder","/nix/store/p4s4jf7aq6v6z9iazll1aiqwb34aqxq9-bootstrap-tools/bin/bash"),("configureFlags","--with-packager=https://NixOS.org --enable-single-binary=symlinks"),("depsBuildBuild",""),("depsBuildBuildPropagated",""),("depsBuildTarget",""),("depsBuildTargetPropagated",""),("depsHostHost",""),("depsHostHostPropagated",""),("depsTargetTarget",""),("depsTargetTargetPropagated",""),("doCheck","1"),("doInstallCheck",""),("enableParallelBuilding",""),("info","/nix/store/rzpgad7sp02106isz1f1digm2alcv52p-coreutils-8.32-info"),("name","coreutils-8.32"),("nativeBuildInputs","/nix/store/vxyyrv32ynbmzj94rmkp6xf4f9pycwqj-perl-5.32.0 /nix/store/y6p12x0f0pai08aab8klv4yzjd6wpkkx-xz-5.2.5-bin"),("out","/nix/store/93mr9awnj0sb0ca48n1z4ixyyqqrfbbb-coreutils-8.32"),("outputs","out info"),("patches",""),("pname","coreutils"),("postInstall","rm -r \"$out/share\"\n"),("postPatch","# The test tends to fail on btrfs,f2fs and maybe other unusual filesystems.\nsed '2i echo Skipping dd sparse test && exit 77' -i ./tests/dd/sparse.sh\nsed '2i echo Skipping du threshold test && exit 77' -i ./tests/du/threshold.sh\nsed '2i echo Skipping cp sparse test && exit 77' -i ./tests/cp/sparse.sh\nsed '2i echo Skipping rm deep-2 test && exit 77' -i ./tests/rm/deep-2.sh\nsed '2i echo Skipping du long-from-unreadable test && exit 77' -i ./tests/du/long-from-unreadable.sh\n\n# Some target platforms, especially when building inside a container have\n# issues with the inotify test.\nsed '2i echo Skipping tail inotify dir recreate test && exit 77' -i ./tests/tail-2/inotify-dir-recreate.sh\n\n# sandbox does not allow setgid\nsed '2i echo Skipping chmod setgid test && exit 77' -i ./tests/chmod/setgid.sh\nsubstituteInPlace ./tests/install/install-C.sh \\\n --replace 'mode3=2755' 'mode3=1755'\n\nsed '2i print \"Skipping env -S test\"; exit 77;' -i ./tests/misc/env-S.pl\n\n# Fails on systems with a rootfs. Looks like a bug in the test, see\n# https://lists.gnu.org/archive/html/bug-coreutils/2019-12/msg00000.html\nsed '2i print \"Skipping df skip-rootfs test\"; exit 77' -i ./tests/df/skip-rootfs.sh\n\n# these tests fail in the unprivileged nix sandbox (without nix-daemon) as we break posix assumptions\nfor f in ./tests/chgrp/{basic.sh,recurse.sh,default-no-deref.sh,no-x.sh,posix-H.sh}; do\n sed '2i echo Skipping chgrp && exit 77' -i \"$f\"\ndone\nfor f in gnulib-tests/{test-chown.c,test-fchownat.c,test-lchown.c}; do\n echo \"int main() { return 77; }\" > \"$f\"\ndone\n"),("preInstall",""),("propagatedBuildInputs",""),("propagatedNativeBuildInputs",""),("src","/nix/store/3gyxcm7gqmqk90363iiwi2xwpfvh5x7l-coreutils-8.32.tar.xz"),("stdenv","/nix/store/nq9cf7k6y6bmsqdzbwmjjhn0ccg1rg6z-bootstrap-stage4-stdenv-linux"),("strictDeps",""),("system","x86_64-linux"),("version","8.32")]))NIXE>/nix/store/an9lqr2fsfp75vnjjzxibbxrbhf8h0fs-coreutils-8.32.drv 8/nix/store/00jaqd9g73bwzb53dfv9qvfy3yz3hjaj-xz-5.2.5.drv?/nix/store/0zhkga32apid60mm7nh92z2970im5837-bootstrap-tools.drv;/nix/store/7ylqf57bi3l8b2llrqd0nl5255mryglw-attr-2.4.48.drv>/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.shE/nix/store/bvjjdqid3590hkbszlm81ppwrbk9zjaa-coreutils-8.32.tar.xz.drv9/nix/store/dvkqd0w6nlclw4z64qxqfxq6zdnpxv85-gmp-6.2.0.drv;/nix/store/k68mas3bbnwg25mzn01v49qcwk3bjr3b-perl-5.32.0.drv:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment