summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-11-04 18:12:28 +0100
committerLudovic Courtès <ludo@gnu.org>2014-11-04 18:59:25 +0100
commitd611d0833fd36a03c8f69e9893f30a066104bb8f (patch)
tree3653b87a2ecdf9ba188eec103031262f43b9f05f
parentb77b84717dbaf3f1196795904404517a7676ac9e (diff)
downloadguix-d611d0833fd36a03c8f69e9893f30a066104bb8f.tar.gz
gnu: gdb: Do not install libopcodes and libbfd.
* gnu/packages/gdb.scm (gdb)[arguments]: Add 'post-install' phase.
-rw-r--r--gnu/packages/gdb.scm12
1 files changed, 11 insertions, 1 deletions
diff --git a/gnu/packages/gdb.scm b/gnu/packages/gdb.scm
index aea1a9730d..8826eb44ee 100644
--- a/gnu/packages/gdb.scm
+++ b/gnu/packages/gdb.scm
@@ -51,7 +51,17 @@
                  (lambda _
                    (for-each patch-makefile-SHELL
                              (find-files "." "Makefile\\.in")))
-                 %standard-phases)))
+                 (alist-cons-after
+                  'install 'post-install
+                  (lambda* (#:key outputs #:allow-other-keys)
+                    ;; Like Binutils, GDB installs libbfd and libopcodes.
+                    ;; However, this leads to collisions when both are
+                    ;; installed, and really is none of its business,
+                    ;; conceptually.  So remove them.
+                    (for-each delete-file
+                              (find-files (assoc-ref outputs "out")
+                                          "^lib(opcodes|bfd)\\.")))
+                  %standard-phases))))
     (inputs
      `(("expat" ,expat)
        ("mpfr" ,mpfr)