janneke pushed a commit to branch wip-bootstrap in repository guix. commit 1ad68c873781964cacc90847006b1c0541e48de2 Author: Jan Nieuwenhuizen <jann...@gnu.org> Date: Wed Jul 11 18:23:58 2018 +0200
gnu: Remove gcc-mesboot-4.1.0. * gnu/packages/mes.scm (gcc-mesboot-4.1.0): Remove. (gcc-mesboot): Inherit from gcc-mesboot0. (binutils-mesboot0, gcc-core-mesboot, glibc-mesboot, gcc-mesboot0, binutils-mesboot, gcc-mesboot): Use --build=i686-unknown-linux-gnu, --host=i686-unknown-linux-gnu. * gnu/packages/patches/gcc-boot-4.7.4.patch: Update. --- gnu/local.mk | 1 - gnu/packages/mes.scm | 177 +++++++++++++----------------- gnu/packages/patches/gcc-boot-4.1.0.patch | 30 ----- gnu/packages/patches/gcc-boot-4.7.4.patch | 13 +++ 4 files changed, 89 insertions(+), 132 deletions(-) diff --git a/gnu/local.mk b/gnu/local.mk index 8dc23fe..76e6bbc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -698,7 +698,6 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-arm-link-spec-fix.patch \ %D%/packages/patches/gcc-asan-missing-include.patch \ %D%/packages/patches/gcc-boot-2.95.3.patch \ - %D%/packages/patches/gcc-boot-4.1.0.patch \ %D%/packages/patches/gcc-cross-environment-variables.patch \ %D%/packages/patches/gcc-fix-texi2pod.patch \ %D%/packages/patches/gcc-4.8-libsanitizer-fix.patch \ diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index eca2098..09579fd 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -709,8 +709,9 @@ standard.") "--disable-nls" "--disable-shared" "--disable-werror" - "--host=i386-unknown-linux" - "--target=i386-unknown-linux" + "--build=i686-unknown-linux-gnu" + "--host=i686-unknown-linux-gnu" + "--with-sysroot=/" (string-append "--prefix=" out))))))))))))) (define-public gcc-core-mesboot @@ -807,8 +808,8 @@ ac_cv_c_float_format='IEEE (little-endian)' (system* "./configure" "--disable-shared" "--enable-static" - "--host=i386-unknown-linux" - "--target=i386-unknown-linux" + "--build=i686-unknown-linux-gnu" + "--host=i686-unknown-linux-gnu" (string-append "--prefix=" out))))))) (add-after 'install 'install2 (lambda* (#:key outputs #:allow-other-keys) @@ -816,7 +817,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (tcc-lib (string-append tcc "/lib/x86-mes-gcc")) (out (assoc-ref outputs "out")) (gcc-dir (string-append - out "/lib/gcc-lib/i386-unknown-linux/2.95.3"))) + out "/lib/gcc-lib/i686-unknown-linux-gnu/2.95.3"))) (and (mkdir-p "tmp") (zero? (system (string-append "set -x; cd tmp && ar x ../gcc/libgcc2.a"))) @@ -866,8 +867,8 @@ ac_cv_c_float_format='IEEE (little-endian)' "--disable-shared" "--enable-static" "--disable-sanity-checks" - "--host=i386-unknown-linux" - "--target=i386-unknown-linux" + "--build=i686-unknown-linux-gnu" + "--host=i686-unknown-linux-gnu" (string-append "--with-headers=" headers "/include") "--enable-static-nss" "--without-__thread" @@ -986,7 +987,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (setenv "C_INCLUDE_PATH" (string-append ;;gcc "/include" this is MES ;;":/" - gcc "/lib/gcc-lib/i386-unknown-linux/2.95.3/include" + gcc "/lib/gcc-lib/i686-unknown-linux-gnu/2.95.3/include" ":" headers "/include" ":" glibc "/include")) (setenv "LIBRARY_PATH" (string-append glibc "/lib" @@ -1008,14 +1009,14 @@ ac_cv_c_float_format='IEEE (little-endian)' (zero? (system* "./configure" "--disable-shared" - "--host=i386-unknown-linux" - "--target=i386-unknown-linux" + "--build=i686-unknown-linux-gnu" + "--host=i686-unknown-linux-gnu" (string-append "--prefix=" out))))))) (add-after 'install 'install2 (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (gcc-dir (string-append - out "/lib/gcc-lib/i386-unknown-linux/2.95.3"))) + out "/lib/gcc-lib/i686-unknown-linux-gnu/2.95.3"))) (and (mkdir-p "tmp") (zero? (system (string-append "set -x; cd tmp && ar x ../gcc/libgcc2.a"))) @@ -1038,14 +1039,16 @@ ac_cv_c_float_format='IEEE (little-endian)' "--disable-nls" "--disable-shared" "--disable-werror" - "--host=i386-unknown-linux" - "--target=i386-unknown-linux" + "--build=i686-unknown-linux-gnu" + "--host=i686-unknown-linux-gnu" "--enable-static" "--enable-compressed-debug-sections=no" "--disable-gold" "--disable-plugins" "--disable-x86-relax-relocations" - "--with-system-libz") + "--with-system-libz" + "--with-sysroot=/" + ) #:phases (modify-phases %standard-phases (add-before 'configure 'setenv @@ -1106,22 +1109,21 @@ ac_cv_c_float_format='IEEE (little-endian)' (sha256 (base32 "0dxn4904dra50xa22hi047lj8kkpr41d6vb9sd4grca880c7wv94")))))) -(define-public gcc-mesboot-4.1.0 +(define-public gcc-mesboot (package-with-bootstrap-guile (package (inherit gcc-mesboot0) (name "gcc-mesboot") - (version "4.1.0") + (version "4.7.4") (source (origin (method url-fetch) - (uri (string-append "mirror://gnu/gcc/gcc-4.1.0/gcc-core-" + (uri (string-append "mirror://gnu/gcc/gcc-4.7.4/gcc-" version - ".tar.bz2")) - (patches (search-patches "gcc-boot-4.1.0.patch")) + ".tar.gz")) + (patches (search-patches "gcc-boot-4.7.4.patch")) (sha256 (base32 - "089zy7akf1xlk87s4jmmfpz3bla1f3ji3fgr4wk7yznc6ih0blql")))) - (supported-systems '("i686-linux")) + "06bqygv17f71f7g7pi7ddvhljcr8dimrypgiif9g1r6lqn1sbfnx")))) (native-inputs `(("binutils-boot" ,binutils-mesboot) ("gcc-boot" ,gcc-mesboot0) ("glibc-boot" ,glibc-mesboot) @@ -1129,42 +1131,53 @@ ac_cv_c_float_format='IEEE (little-endian)' (inputs `(("gmp-source" ,(package-source gmp-boot)) ("mpfr-source" ,(package-source mpfr-boot)) ("mpc-source" ,(package-source mpc)))) - (outputs '("out")) (arguments - `(#:tests? #f ; runtest: command not found + `(#:tests? #f #:parallel-build? #f #:strip-binaries? #f #:configure-flags (let ((out (assoc-ref %outputs "out")) (glibc (assoc-ref %build-inputs "glibc-boot"))) - (list "--disable-shared" - "--enable-static" - "--host=i386-unknown-linux" - "--target=i386-unknown-linux" - (string-append "--with-native-system-header-dir=" glibc "/include") - (string-append "--with-build-sysroot=" glibc "/include") - "--disable-plugin" - "--enable-languages=c" - "--disable-multilib" - - ;; No pre-compiled libstdc++ headers, to save space. - "--disable-libstdcxx-pch" - - "--disable-threads" - "--disable-libmudflap" - "--disable-libatomic" - "--disable-libsanitizer" - "--disable-libitm" - "--disable-libgomp" - "--disable-libcilkrts" - "--disable-libvtv" - "--disable-libssp" - "--disable-libquadmath" - "--disable-decimal-float" - (string-append "--prefix=" out))) - #:modules ((guix build gnu-build-system) - (guix build utils) - (srfi srfi-1)) + (list "--build=i686-unknown-linux-gnu" + "--host=i686-unknown-linux-gnu" + + (string-append "--with-native-system-header-dir=" glibc "/include") + (string-append "--with-build-sysroot=" glibc "/include") + (string-append "--prefix=" out) + + "--disable-bootstrap" + "--disable-decimal-float" + "--disable-libatomic" + "--disable-libcilkrts" + "--disable-libgomp" + "--disable-libitm" + "--disable-libmudflap" + "--disable-libquadmath" + "--disable-libsanitizer" + "--disable-libssp" + "--disable-libvtv" + "--disable-lto" + "--disable-lto-plugin" + "--disable-multilib" + "--disable-plugin" + "--disable-shared" + "--disable-threads" + "--enable-languages=c" + + "--enable-static" + "--enable-threads=single" + + ;; libstdc++ cannot be built at this stage + ;; ("Link tests are not allowed after + ;; GCC_NO_EXECUTABLES."). + '"--disable-libstdc__-v3" + + ;; No pre-compiled libstdc++ headers, to save space. + "--disable-libstdcxx-pch" + + ;; for libcpp ... + "--disable-build-with-cxx")) + #:phases (modify-phases %standard-phases @@ -1213,20 +1226,21 @@ ac_cv_c_float_format='IEEE (little-endian)' ":" (assoc-ref %build-inputs "bash") "/bin" ":" (assoc-ref %build-inputs "coreutils") "/bin" ":" (assoc-ref %build-inputs "diffutils") "/bin" - ;; ":" (assoc-ref %build-inputs "file") "/bin" - ;; ":" (assoc-ref %build-inputs "findutils") "/bin" + ":" (assoc-ref %build-inputs "file") "/bin" + ":" (assoc-ref %build-inputs "findutils") "/bin" ":" (assoc-ref %build-inputs "gawk") "/bin" ":" (assoc-ref %build-inputs "grep") "/bin" ":" (assoc-ref %build-inputs "gzip") "/bin" ":" (assoc-ref %build-inputs "make") "/bin" ":" (assoc-ref %build-inputs "sed") "/bin" ":" (assoc-ref %build-inputs "tar") "/bin")) + (format (current-error-port) "PATH=~a\n" (getenv "PATH")) (setenv "CONFIG_SHELL" (string-append (assoc-ref %build-inputs "bash") "/bin/sh")) (setenv "C_INCLUDE_PATH" (string-append - gcc "/lib/gcc-lib/i386-unknown-linux/2.95.3/include" + gcc "/lib/gcc-lib/i686-unknown-linux-gnu/2.95.3/include" ":" headers "/include" ":" glibc "/include" ":" (getcwd) "/mpfr/src" @@ -1234,56 +1248,17 @@ ac_cv_c_float_format='IEEE (little-endian)' (setenv "LIBRARY_PATH" (string-append glibc "/lib" ":" gcc "/lib")) - (setenv "NATIVE_SYSTEM_HEADER_DIR" (string-append glibc "/include")) - (format (current-error-port) "C_INCLUDE_PATH=~a\n" (getenv "C_INCLUDE_PATH")) (format (current-error-port) "LIBRARY_PATH=~a\n" (getenv "LIBRARY_PATH"))))) - (replace 'configure - (lambda* (#:key configure-flags #:allow-other-keys) - (let ((flags (filter (lambda (flag) - (not (string-prefix? "--build=" flag))) - configure-flags))) - (zero? - (apply system* "./configure" configure-flags))))))))))) -(define-public gcc-mesboot - (package-with-bootstrap-guile - (package - (inherit gcc-mesboot-4.1.0) - (name "gcc-mesboot") - (version "4.7.4") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/gcc/gcc-4.7.4/gcc-" - version - ".tar.gz")) - (patches (search-patches "gcc-boot-4.7.4.patch")) - (sha256 - (base32 - "06bqygv17f71f7g7pi7ddvhljcr8dimrypgiif9g1r6lqn1sbfnx")))) - (native-inputs `(("binutils-boot" ,binutils-mesboot) - ("gcc-boot" ,gcc-mesboot-4.1.0) - ("glibc-boot" ,glibc-mesboot) - ("kernel-headers" ,(linux-libre-headers-boot0)))) - ;; (inputs `(("gmp-source" ,(package-source gmp)) - ;; ("mpfr-source" ,(package-source mpfr-boot)) - ;; ("mpc-source" ,(package-source mpc)))) - (arguments - `( - ;;#:make-flags (list "LIBGCC2_CFLAGS=-D IN_LIBGCC2" ) - ,@(substitute-keyword-arguments (package-arguments gcc-mesboot-4.1.0) - ((#:configure-flags configure-flags) - `(let ((flags (filter (lambda (flag) - (not (string-prefix? "--enable-languages=" flag))) - ,configure-flags))) - (cons* - ; with gmp-2.4.3 Configuring in - ; host-i386-unknown-linux/gmp configure: error: invalid - ; feature name: libstdc++-v3 - ;; "--disable-libstdc++-v3" - ;;"--enable-languages=c,c++" - "--enable-languages=c" - flags))))))))) + (replace 'configure + (lambda* (#:key configure-flags #:allow-other-keys) + (mkdir-p "build") + (chdir "build") + (format (current-error-port) "running: ../build/configure ~a\n" (string-join configure-flags)) + (zero? + (apply system* "../configure" configure-flags)))))))))) + ;;; (define-public nyacc diff --git a/gnu/packages/patches/gcc-boot-4.1.0.patch b/gnu/packages/patches/gcc-boot-4.1.0.patch deleted file mode 100644 index e39586f..0000000 --- a/gnu/packages/patches/gcc-boot-4.1.0.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/gcc/Makefile.in b/gcc/Makefile.in -index 27dd5ab9fe9..4ca7ddb4bb3 100644 ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -383,7 +383,7 @@ PARTITION_H = $(srcdir)/../include/partition.h - MD5_H = $(srcdir)/../include/md5.h - - # Default native SYSTEM_HEADER_DIR, to be overridden by targets. --NATIVE_SYSTEM_HEADER_DIR = /usr/include -+# NATIVE_SYSTEM_HEADER_DIR = /usr/include - # Default cross SYSTEM_HEADER_DIR, to be overridden by targets. - CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ - -diff --git a/gcc/config/host-linux.c b/gcc/config/host-linux.c -index 795bb552234..dced63146ba 100644 ---- a/gcc/config/host-linux.c -+++ b/gcc/config/host-linux.c -@@ -26,6 +26,12 @@ - #include "hosthooks.h" - #include "hosthooks-def.h" - -+// ../.././gcc/config/host-linux.c:213: `SSIZE_MAX' undeclared (first -+// use in this function) -+#include <limits.h> -+#ifndef SSIZE_MAX -+# define SSIZE_MAX LONG_MAX -+#endif - - /* Linux has a feature called exec-shield-randomize that perturbs the - address of non-fixed mapped segments by a (relatively) small amount. diff --git a/gnu/packages/patches/gcc-boot-4.7.4.patch b/gnu/packages/patches/gcc-boot-4.7.4.patch index 76c8c4d..1f376b4 100644 --- a/gnu/packages/patches/gcc-boot-4.7.4.patch +++ b/gnu/packages/patches/gcc-boot-4.7.4.patch @@ -41,3 +41,16 @@ index c301ff03cae..f86318c3bd5 100644 $(INHIBIT_LIBC_CFLAGS) # Additional options to use when compiling libgcc2.a. +diff --git a/libgcc/generic-morestack-thread.c b/libgcc/generic-morestack-thread.c +index bbe6dd12b5a..1d1d48223d7 100644 +--- a/libgcc/generic-morestack-thread.c ++++ b/libgcc/generic-morestack-thread.c +@@ -35,7 +35,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + will want to define inhibit_libc while building a compiler which + can build glibc. */ + +-#ifndef inhibit_libc ++#if 0 // ndef inhibit_libc + + #include <errno.h> + #include <pthread.h>