mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-29 18:33:00 +00:00
libtool: drop unused auto* dependencies
Autoreconf was initially added in e44dd84664
("libtool2: macOS 11
support") for configure patches. The patches were removed since 2.4.7
release. Let's drop these dependencies to make boostrap tree leaner.
The diff of bootstrap tree before and after the change:
$ nix-store --query --graph $(nix-instantiate -A stdenv) |
fgrep ' -> ' | awk '{print $3}' | sort -u |
sed 's/"[0-9a-z]\{32\}-/"/g' | sort > before
$ nix-store --query --graph $(nix-instantiate -A stdenv) |
fgrep ' -> ' | awk '{print $3}' | sort -u |
sed 's/"[0-9a-z]\{32\}-/"/g' | sort > after
$ diff -U0 before after
--- before
+++ after
@@ -64,2 +63,0 @@
-"help2man-1.49.2.drv"
-"help2man-1.49.2.drv"
@@ -77 +74,0 @@
-"libxcrypt-4.4.33.drv"
@@ -88,4 +84,0 @@
-"perl-5.36.0.drv"
-"perl-5.36.0.drv"
-"perl5.36.0-gettext-1.07.drv"
-"perl5.36.0-gettext-1.07.drv"
This removes 2 of 3 builds of `perl` and `help2man` dependencies.
Co-authored-by: Adam Joseph <54836058+amjoseph-nixpkgs@users.noreply.github.com>
This commit is contained in:
parent
2add5f003a
commit
6becbd3970
@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchurl, fetchpatch, autoconf, automake, m4, perl, help2man
|
||||
{ lib, stdenv, fetchurl, fetchpatch, m4
|
||||
, runtimeShell
|
||||
, file
|
||||
}:
|
||||
@ -23,28 +23,22 @@ stdenv.mkDerivation rec {
|
||||
# https://lists.gnu.org/archive/html/autotools-announce/2022-03/msg00000.html
|
||||
FILECMD = "${file}/bin/file";
|
||||
|
||||
# Normally we'd use autoreconfHook, but that includes libtoolize.
|
||||
postPatch = ''
|
||||
aclocal -I m4
|
||||
automake
|
||||
autoconf
|
||||
|
||||
pushd libltdl
|
||||
aclocal -I ../m4
|
||||
automake
|
||||
autoconf
|
||||
popd
|
||||
'' +
|
||||
postPatch =
|
||||
# libtool commit da2e352735722917bf0786284411262195a6a3f6 changed
|
||||
# the shebang from `/bin/sh` (which is a special sandbox exception)
|
||||
# to `/usr/bin/env sh`, meaning that we now need to patch shebangs
|
||||
# in libtoolize.in:
|
||||
''
|
||||
substituteInPlace libtoolize.in --replace '#! /usr/bin/env sh' '#!${runtimeShell}'
|
||||
# avoid help2man run after 'libtoolize.in' update
|
||||
touch doc/libtoolize.1
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [ autoconf automake help2man m4 perl ];
|
||||
# As libtool is an early bootstrap dependency try hard not to
|
||||
# add autoconf and automake or help2man dependencies here. That way we can
|
||||
# avoid pulling in perl and get away with just an `m4` depend.
|
||||
nativeBuildInputs = [ m4 file ];
|
||||
propagatedBuildInputs = [ m4 file ];
|
||||
|
||||
# Don't fixup "#! /bin/sh" in Libtool, otherwise it will use the
|
||||
|
Loading…
Reference in New Issue
Block a user