all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCH] Add libiberty.
@ 2015-06-27  9:49 Ricardo Wurmus
  2015-06-28  9:06 ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Ricardo Wurmus @ 2015-06-27  9:49 UTC (permalink / raw)
  To: Guix-devel

[-- Attachment #1: Type: text/plain, Size: 215 bytes --]

GCC 4.8.4 is the last GCC containing libiberty.a.  The attached patch
adds a package generator that creates a libiberty package for a given
GCC package.  It also adds a libiberty package for the default “gcc”.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-libiberty.patch --]
[-- Type: text/x-patch, Size: 1963 bytes --]

From 848a6b91a48abcfdc2eb0d9bbde6a0f22b019090 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <rekado@elephly.net>
Date: Sat, 27 Jun 2015 11:47:04 +0200
Subject: [PATCH] gnu: Add libiberty.

* gnu/packages/gcc.scm (make-libiberty, libiberty): New variables.
---
 gnu/packages/gcc.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index 4fc2e63..aba8565 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -373,6 +373,41 @@ using compilers other than GCC."
 (define-public libstdc++-4.9
   (make-libstdc++ gcc-4.9))
 
+(define (make-libiberty gcc)
+  "Return a libiberty package based on GCC."
+  (package
+    (inherit gcc)
+    (name "libiberty")
+    (arguments
+     `(#:out-of-source? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+                     (lambda _
+                       (chdir "libiberty")
+                       #t))
+         (replace
+          'install
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let* ((out     (assoc-ref outputs "out"))
+                   (lib     (string-append out "/lib/"))
+                   (include (string-append out "/include/")))
+              (mkdir-p lib)
+              (mkdir-p include)
+              (copy-file "libiberty.a"
+                         (string-append lib "libiberty.a"))
+              (copy-file "../include/libiberty.h"
+                         (string-append include "libiberty.h"))
+              #t))))))
+    (inputs '())
+    (outputs '("out"))
+    (native-inputs '())
+    (propagated-inputs '())
+    (synopsis "Collection of subroutines used by various GNU programs")))
+
+(define-public libiberty
+  (make-libiberty gcc))
+
 (define* (custom-gcc gcc name languages #:key (separate-lib-output? #t))
   "Return a custom version of GCC that supports LANGUAGES."
   (package (inherit gcc)
-- 
2.4.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-06-29 12:00 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-27  9:49 [PATCH] Add libiberty Ricardo Wurmus
2015-06-28  9:06 ` Ludovic Courtès
2015-06-28 10:31   ` Ricardo Wurmus
2015-06-28 20:24     ` Ludovic Courtès
2015-06-29  6:27       ` Ricardo Wurmus
2015-06-29  8:33         ` Ludovic Courtès
2015-06-29  8:47           ` Ricardo Wurmus
2015-06-29 12:00             ` Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.