~ruther/guix-local

c6d7e299ae0acb14c76465c7036fdbddf2ef495e — Ludovic Courtès 13 years ago 4c7cacf
gnu: Add GCC 4.8.0 and Binutils 2.23.2.

* gnu/packages/base.scm (binutils-2.23, ld-wrapper-2.23, gcc-4.8): New
  variables.
2 files changed, 44 insertions(+), 2 deletions(-)

M gnu/packages/base.scm
M gnu/packages/gcc.scm
M gnu/packages/base.scm => gnu/packages/base.scm +42 -1
@@ 18,7 18,8 @@
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages base)
  #:use-module (guix licenses)
  #:use-module ((guix licenses)
                #:select (gpl3+ lgpl2.0+))
  #:use-module (gnu packages)
  #:use-module (gnu packages acl)
  #:use-module (gnu packages bash)


@@ 374,6 375,17 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")
   (license gpl3+)
   (home-page "http://www.gnu.org/software/binutils/")))

(define-public binutils-2.23
  (package (inherit binutils)
    (version "2.23.2")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/binutils/binutils-"
                                 version ".tar.bz2"))
             (sha256
              (base32
               "15qhbkz3r266xaa52slh857qn3abw7rb2x2jnhpfrafpzrb4x4gy"))))))

(define-public glibc
  (package
   (name "glibc")


@@ 928,6 940,35 @@ store.")
              ,@(fold alist-delete (package-inputs ld-wrapper-boot3)
                      '("guile" "bash"))))))

(define-public ld-wrapper-2.23         ; TODO: remove when Binutils is updated
  (package (inherit ld-wrapper)
    (inputs `(("binutils" ,binutils-2.23)
              ,@(alist-delete "binutils" (package-inputs ld-wrapper))))))

(define-public gcc-4.8
  ;; FIXME: Move to gcc.scm when Binutils is updated.
  (package (inherit gcc-4.7)
    (version "4.8.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/gcc/gcc-"
                                 version "/gcc-" version ".tar.bz2"))
             (sha256
              (base32
               "0b6cp9d1sas3vq6dj3zrgd134p9b569fqhbixb9cl7mp698zwdxh"))))
    (inputs `(("gmp" ,gmp)
              ("mpfr" ,mpfr)
              ("mpc" ,mpc)
              ("isl" ,isl)
              ("cloog" ,cloog)
              ("zlib" ,(@ (gnu packages compression) zlib))

              ;; With ld from Binutils 2.22, we get the following error while
              ;; linking gcov:
              ;; ld: gcov: hidden symbol `__deregister_frame_info' in /nix/store/47myfniw4x7kfc601d7q1yvz5mixlr00-gcc-4.7.2/lib/gcc/x86_64-unknown-linux-gnu/4.7.2/libgcc_eh.a(unwind-dw2-fde-dip.o) is referenced by DSO
              ;; See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57015>.
              ("ld-wrapper" ,ld-wrapper-2.23)))))

(define-public %final-inputs
  ;; Final derivations used as implicit inputs by `gnu-build-system'.
  (let ((finalize (cut package-with-explicit-inputs <> %boot4-inputs

M gnu/packages/gcc.scm => gnu/packages/gcc.scm +2 -1
@@ 17,7 17,8 @@
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages gcc)
  #:use-module (guix licenses)
  #:use-module ((guix licenses)
                #:select (gpl3+ gpl2+ lgpl2.1+ lgpl2.0+))
  #:use-module (gnu packages)
  #:use-module (gnu packages bootstrap)
  #:use-module (gnu packages compression)