binutils: minimize rebuilds after parent revert

Only revert the addition of the output and only on Darwin.
This commit is contained in:
Vladimír Čunát 2017-01-30 14:08:54 +01:00
parent eaa9e01c1d
commit db896154d1
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
2 changed files with 29 additions and 1 deletions

View file

@ -32,9 +32,18 @@ stdenv.mkDerivation rec {
# This is needed, for instance, so that running "ldd" on a binary that is
# PaX-marked to disable mprotect doesn't fail with permission denied.
./pt-pax-flags.patch
# Bfd looks in BINDIR/../lib for some plugins that don't
# exist. This is pointless (since users can't install plugins
# there) and causes a cycle between the lib and bin outputs, so
# get rid of it.
./no-plugins.patch
];
outputs = [ "out" "info" ] ++ (optional (cross == null) "dev");
outputs = [ "out" ]
++ optional (!stdenv.isDarwin) "lib" # problems in Darwin stdenv
++ [ "info" ]
++ optional (cross == null) "dev";
nativeBuildInputs = [ bison ];
buildInputs = [ zlib ];

View file

@ -0,0 +1,19 @@
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;
}