diff options
Diffstat (limited to 'gnu/packages/base.scm')
-rw-r--r-- | gnu/packages/base.scm | 135 |
1 files changed, 14 insertions, 121 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 537bd5af6d..606e59b851 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -24,6 +24,7 @@ #:use-module (gnu packages bash) #:use-module (gnu packages bootstrap) #:use-module (gnu packages compression) + #:use-module (gnu packages gcc) #:use-module (gnu packages gawk) #:use-module (gnu packages guile) #:use-module (gnu packages multiprecision) @@ -88,14 +89,14 @@ lines.") (define-public sed (package (name "sed") - (version "4.2.1") + (version "4.2.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/sed/sed-" version ".tar.bz2")) (sha256 (base32 - "13wlsb4sf5d5a82xjhxqmdvrrn36rmw5f0pl9qyb9zkvldnb7hra")))) + "1myvrmh99jsvk7v3d7crm0gcrq51hmmm1r2kjyyci152in1x2j7h")))) (build-system gnu-build-system) (synopsis "GNU sed, a batch stream editor") (arguments @@ -263,14 +264,14 @@ The tools supplied with this package are: (define-public coreutils (package (name "coreutils") - (version "8.20") + (version "8.21") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/coreutils/coreutils-" version ".tar.xz")) (sha256 (base32 - "1cly97xdy3v4nbbx631k43smqw0nnpn651kkprs0yyl2cj3pkjyv")))) + "064f512185iysqqcvhnhaf3bfmzrvcgs7n405qsyp99zmfyl9amd")))) (build-system gnu-build-system) (inputs `(("acl" ,acl) ("gmp" ,gmp) @@ -342,14 +343,14 @@ that it is possible to use Make to build and install the program.") (define-public binutils (package (name "binutils") - (version "2.22") + (version "2.23.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/binutils/binutils-" version ".tar.bz2")) (sha256 (base32 - "1a9w66v5dwvbnawshjwqcgz7km6kw6ihkzp6sswv9ycc3knzhykc")))) + "06bs5v5ndb4g5qx96d52lc818gkbskd1m0sz57314v887sqfbcia")))) (build-system gnu-build-system) ;; Split Binutils in several outputs, mostly to avoid collisions in @@ -367,7 +368,11 @@ that it is possible to use Make to build and install the program.") "LDFLAGS=-static-libgcc" ;; Don't search under /usr/lib & co. - "--with-lib-path=/no-ld-lib-path"))) + "--with-lib-path=/no-ld-lib-path" + + ;; Glibc 2.17 has a "comparison of unsigned + ;; expression >= 0 is always true" in wchar.h. + "--disable-werror"))) (synopsis "GNU Binutils, tools for manipulating binaries (linker, assembler, etc.)") @@ -378,119 +383,6 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.") (license gpl3+) (home-page "http://www.gnu.org/software/binutils/"))) -(define-public gcc-4.7 - (let ((stripped? #t)) ; TODO: make this a parameter - (package - (name "gcc") - (version "4.7.2") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/gcc/gcc-" - version "/gcc-" version ".tar.bz2")) - (sha256 - (base32 - "115h03hil99ljig8lkrq4qk426awmzh0g99wrrggxf8g07bq74la")))) - (build-system gnu-build-system) - (inputs `(("gmp" ,gmp) - ("mpfr" ,mpfr) - ("mpc" ,mpc))) ; TODO: libelf, ppl, cloog, zlib, etc. - (arguments - `(#:out-of-source? #t - #:strip-binaries? ,stripped? - #:configure-flags - `("--enable-plugin" - "--enable-languages=c,c++" - "--disable-multilib" - - "--with-local-prefix=/no-gcc-local-prefix" - - ,(let ((libc (assoc-ref %build-inputs "libc"))) - (if libc - (string-append "--with-native-system-header-dir=" libc - "/include") - "--without-headers"))) - #:make-flags - (let ((libc (assoc-ref %build-inputs "libc"))) - `(,@(if libc - (list (string-append "LDFLAGS_FOR_TARGET=" - "-B" libc "/lib " - "-Wl,-dynamic-linker " - "-Wl," libc - ,(glibc-dynamic-linker))) - '()) - ,(string-append "BOOT_CFLAGS=-O2 " - ,(if stripped? "-g0" "-g")))) - - #:tests? #f - #:phases - (alist-cons-before - 'configure 'pre-configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (libc (assoc-ref inputs "libc"))) - (when libc - ;; The following is not performed for `--without-headers' - ;; cross-compiler builds. - - ;; Fix the dynamic linker's file name. - (substitute* (find-files "gcc/config" - "^linux(64|-elf)?\\.h$") - (("#define GLIBC_DYNAMIC_LINKER([^ ]*).*$" _ suffix) - (format #f "#define GLIBC_DYNAMIC_LINKER~a \"~a\"~%" - suffix - (string-append libc ,(glibc-dynamic-linker))))) - - ;; Tell where to find libstdc++, libc, and `?crt*.o', except - ;; `crt{begin,end}.o', which come with GCC. - (substitute* (find-files "gcc/config" - "^(gnu-user(64)?|linux-elf)\\.h$") - (("#define LIB_SPEC (.*)$" _ suffix) - ;; Note that with this "lib" spec, we may still add a - ;; RUNPATH to GCC even when `libgcc_s' is not NEEDED. - ;; There's not much that can be done to avoid it, though. - (format #f "#define LIB_SPEC \"-L~a/lib %{!static:-rpath=~a/lib \ -%{!static-libgcc:-rpath=~a/lib64 -rpath=~a/lib}} \" ~a" - libc libc out out suffix)) - (("#define STARTFILE_SPEC.*$" line) - (format #f "#define STANDARD_STARTFILE_PREFIX_1 \"~a/lib\" -#define STANDARD_STARTFILE_PREFIX_2 \"\" -~a~%" - libc line)))) - - ;; Don't retain a dependency on the build-time sed. - (substitute* "fixincludes/fixincl.x" - (("static char const sed_cmd_z\\[\\] =.*;") - "static char const sed_cmd_z[] = \"sed\";")))) - - (alist-cons-after - 'configure 'post-configure - (lambda _ - ;; Don't store configure flags, to avoid retaining references to - ;; build-time dependencies---e.g., `--with-ppl=/nix/store/xxx'. - (substitute* "Makefile" - (("^TOPLEVEL_CONFIGURE_ARGUMENTS=(.*)$" _ rest) - "TOPLEVEL_CONFIGURE_ARGUMENTS=\n"))) - (alist-replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (zero? - (system* "make" - ,(if stripped? - "install-strip" - "install")))) - %standard-phases))))) - - (properties `((gcc-libc . ,(assoc-ref inputs "libc")))) - (synopsis "The GNU Compiler Collection") - (description - "The GNU Compiler Collection includes compiler front ends for C, C++, -Objective-C, Fortran, OpenMP for C/C++/Fortran, Java, and Ada, as well as -libraries for these languages (libstdc++, libgcj, libgomp,...). - -GCC development is a part of the GNU Project, aiming to improve the compiler -used in the GNU system including the GNU/Linux variant.") - (license gpl3+) - (home-page "http://gcc.gnu.org/")))) - (define-public glibc (package (name "glibc") @@ -703,7 +595,8 @@ identifier SYSTEM." #:implicit-inputs? #f ,@(substitute-keyword-arguments (package-arguments binutils) ((#:configure-flags cf) - `(list ,(string-append "--target=" (boot-triplet))))))) + `(cons ,(string-append "--target=" (boot-triplet)) + ,cf))))) (inputs %boot0-inputs)))) (define gcc-boot0 |