summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alvarez <pedro.alvarez@codethink.co.uk>2014-11-10 09:28:53 +0000
committerPedro Alvarez <pedro.alvarez@codethink.co.uk>2014-11-10 09:28:53 +0000
commit999c918a7ad32ad436395666def22ab90b3447fe (patch)
tree3164b4263a98f88f0564fe24b2dea7462bc4b1bb
parent4f3c6de9af116556bcb1893f77bc5cd779a38e04 (diff)
downloadgcc-tarball-baserock/pedroalvarez/build-essential.tar.gz
Remove all the morphology filesbaserock/pedroalvarez/build-essential
-rw-r--r--armv7lhf-cross-gcc-nolibc.morph54
-rw-r--r--armv7lhf-cross-gcc.morph45
-rw-r--r--gcc.morph42
-rw-r--r--stage1-gcc.morph48
-rw-r--r--stage2-gcc-fixed-headers.morph19
-rw-r--r--stage2-gcc.morph68
6 files changed, 0 insertions, 276 deletions
diff --git a/armv7lhf-cross-gcc-nolibc.morph b/armv7lhf-cross-gcc-nolibc.morph
deleted file mode 100644
index 9ff6321ac7..0000000000
--- a/armv7lhf-cross-gcc-nolibc.morph
+++ /dev/null
@@ -1,54 +0,0 @@
-name: armv7lhf-cross-gcc-nolibc
-kind: chunk
-
-configure-commands:
- - mkdir o
-
- # Configure flag notes:
- # 1. Standard flags. See gcc.morph.
- # 2. Our binutils is for the final $TARGET, rather than the intermediate
- # target our GCC is being built for, so we need to set
- # with-build-time-tools to get it to find our binutils at
- # build-time and with-as and with-ld so our temporary GCC uses
- # the appropriate tools when it compiles our libc, rather than
- # trying to use $TARGET_STAGE1-as when producing binaries.
- # 3. Disable stuff that doesn't work when building a cross compiler
- # without an existing libc, and generally try to keep this build as
- # simple as possible.
- - |
- export MORPH_ARCH=armv7lhf
- export TARGET=armv7lhf-baserock-linux-gnueabi
- export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
- cd o &&
- ../configure \
- $(../morph-arch-config) \
- --build=$(sh ../config.guess) --host=$(sh ../config.guess) \
- --target="$TARGET_STAGE1" \
- --prefix="$PREFIX" \
- --disable-bootstrap --disable-nls \
- `# [1]` --libdir="$PREFIX/lib" --disable-multilib --disable-libgomp \
- --without-cloog --without-ppl \
- --with-mpfr-include="$(pwd)/../mpfr/src" \
- --with-mpfr-lib="$(pwd)/mpfr/src/.libs" \
- `# [2]` --with-build-time-tools="$PREFIX/$TARGET/bin" \
- --with-as="$PREFIX/$TARGET/bin/as" \
- --with-ld="$PREFIX/$TARGET/bin/ld" \
- `# [3]` --enable-languages=c --disable-decimal-float \
- --disable-libmudflap --disable-libquadmath --disable-libssp \
- --disable-shared --disable-threads --disable-target-libiberty \
- --disable-target-zlib --without-headers --with-newlib \
- --with-system-zlib
-
-build-commands:
- - cd o && make
-
-install-commands:
- - cd o && make DESTDIR="$DESTDIR" install
-
- # The file libgcc_eh is required during eglibc's build, but is not created
- # because we built GCC with --disable-shared. This is a workaround for
- # eglibc's build system being slightly broken.
- - |
- export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
- libgcc_filename="$("$DESTDIR$PREFIX/bin/$TARGET_STAGE1-gcc" -print-libgcc-file-name)"
- ln -sv libgcc.a "$(echo "$libgcc_filename" | sed 's/libgcc/&_eh/')"
diff --git a/armv7lhf-cross-gcc.morph b/armv7lhf-cross-gcc.morph
deleted file mode 100644
index c5600dfc4e..0000000000
--- a/armv7lhf-cross-gcc.morph
+++ /dev/null
@@ -1,45 +0,0 @@
-name: armv7lhf-cross-gcc
-kind: chunk
-
-configure-commands:
- - mkdir o
-
- # Configure flag notes:
- # 1. Use the default sysroot path to install to and locate headers
- # 2. Recommended by Linux From Scratch; required for C++ ABI
- # compatibility with other Linux distributions.
- # 3. Standard flags. See gcc.morph.
- # 4. Avoid having more than one copy of ZLib in use on the system
- - |
- export MORPH_ARCH=armv7lhf
- export TARGET=armv7lhf-baserock-linux-gnueabi
- export TARGET_STAGE1=armv7lhf-none-linux-gnueabi
- cd o && ../configure \
- $(../morph-arch-config) \
- --build=$(sh ../config.guess) \
- --host=$(sh ../config.guess) \
- --target="$TARGET" \
- `# [1]` --with-sysroot \
- --prefix="$PREFIX" \
- --disable-bootstrap \
- --enable-shared --enable-threads=posix \
- `# [2]` --enable-__cxa_atexit \
- --enable-languages=c,c++,fortran \
- `# [3]` --libdir="$PREFIX/lib" \
- --disable-libgomp --disable-multilib \
- --without-cloog --without-ppl \
- --with-mpfr-include="$(pwd)/../mpfr/src" \
- --with-mpfr-lib="$(pwd)/mpfr/src/.libs" \
- `# [4]` --with-system-zlib
-
-build-commands:
- - cd o && make
-
-install-commands:
- - cd o && make DESTDIR="$DESTDIR" install
- - |
- export TARGET=armv7lhf-baserock-linux-gnueabi
- for fortran_alias in f77 f90 f95; do
- ln -s "$TARGET-gfortran" \
- "$DESTDIR/$PREFIX/bin/$TARGET-$fortran_alias"
- done
diff --git a/gcc.morph b/gcc.morph
deleted file mode 100644
index 498a60bb55..0000000000
--- a/gcc.morph
+++ /dev/null
@@ -1,42 +0,0 @@
-name: gcc
-kind: chunk
-
-configure-commands:
- - mkdir o
-
- # Configure flag notes:
- # 1. An attempt to stop anything going in $PREFIX/lib64 (which doesn't
- # fully work; we will need to hobble the multilib configuration in
- # config/i386/t-linux64 if we really want to kill /lib64).
- # 2. Multilib does not make sense in Baserock.
- # 3. Optimisation libraries which for now we do without.
- # 4. Recommended by Linux From Scratch; required for C++ ABI
- # compatibility with other Linux distributions.
- # 5. MPFR is built in the GCC tree, we need to locate it.
- # 6. Avoid having more than one copy of ZLib in use on the system
- - |
- cd o && \
- ../configure \
- $(../morph-arch-config) \
- --prefix="$PREFIX" \
- `# [1]` --libdir=$PREFIX/lib \
- --disable-nls \
- --enable-languages=c,c++,fortran \
- --enable-shared --enable-threads=posix \
- `# [2]` --disable-multilib \
- `# [3]` --disable-libgomp --without-cloog --without-ppl \
- `# [4]` --enable-__cxa_atexit \
- `# [5]` --with-mpfr-include="$(pwd)/../mpfr/src" \
- --with-mpfr-lib="$(pwd)/mpfr/src/.libs" \
- `# [6]` --with-system-zlib
-
-build-commands:
- - cd o && make
-
-install-commands:
- - cd o && make DESTDIR="$DESTDIR" install
- - ln -s gcc "$DESTDIR/$PREFIX/bin/cc"
- - >
- for fortran_alias in f77 f90 f95; do
- ln -s gfortran "$DESTDIR/$PREFIX/bin/$fortran_alias"
- done
diff --git a/stage1-gcc.morph b/stage1-gcc.morph
deleted file mode 100644
index ed2d54f264..0000000000
--- a/stage1-gcc.morph
+++ /dev/null
@@ -1,48 +0,0 @@
-name: stage1-gcc
-kind: chunk
-
-configure-commands:
- - mkdir o
-
- # Configure flag notes:
- # 1. Standard flags. See gcc.morph.
- # 2. Disable searching /usr/local/include for headers
- # 3. The pass 1 compiler needs to find the libraries we build in pass 2.
- # Include path must be set explicility, because it defaults to
- # $SYSROOT/usr/include rather than $SYSROOT/include.
- # FIXME: this flag is not present until GCC 4.6.3!
- # 4. Disable stuff that doesn't work when building a cross compiler
- # without an existing libc, and generally try to keep this build as
- # simple as possible.
- - |
- cd o &&
- ../configure \
- $(../morph-arch-config) \
- --build=$(sh ../config.guess) --host=$(sh ../config.guess) \
- --target=$TARGET_STAGE1 \
- --prefix="$PREFIX" \
- --disable-bootstrap --disable-nls \
- `# [1]` --libdir="$PREFIX/lib" --disable-multilib --disable-libgomp \
- --without-cloog --without-ppl \
- --with-mpfr-include="$(pwd)/../mpfr/src" \
- --with-mpfr-lib="$(pwd)/mpfr/src/.libs" \
- `# [2]` --with-local-prefix="$PREFIX" \
- `# [3]` --with-native-system-header-dir="$PREFIX/include" \
- `# [4]` --enable-languages=c --disable-decimal-float \
- --disable-libmudflap --disable-libquadmath --disable-libssp \
- --disable-shared --disable-threads --disable-target-libiberty \
- --disable-target-zlib --without-headers --with-newlib \
- --with-system-zlib
-
-build-commands:
- - cd o && make
-
-install-commands:
- - cd o && make DESTDIR="$DESTDIR" install
-
- # The file libgcc_eh is required during eglibc's build, but is not created
- # because we built GCC with --disable-shared. This is a workaround for
- # eglibc's build system being slightly broken.
- - |
- libgcc_filename=$($DESTDIR$PREFIX/bin/$TARGET_STAGE1-gcc -print-libgcc-file-name)
- ln -sv libgcc.a $(echo $libgcc_filename | sed 's/libgcc/&_eh/')
diff --git a/stage2-gcc-fixed-headers.morph b/stage2-gcc-fixed-headers.morph
deleted file mode 100644
index 034a6b79e9..0000000000
--- a/stage2-gcc-fixed-headers.morph
+++ /dev/null
@@ -1,19 +0,0 @@
-name: stage2-gcc-fixed-headers
-kind: chunk
-install-commands:
- # Stage 1 GCC's fixincludes process created a limits.h before there was
- # a real limits.h available for the target. This step (taken from Linux
- # Linux From Scratch) creates a better one so that stage 2 GCC can compile.
- #
- # THIS IS A FRAGILE HACK! We need to replace the headers. The only way to
- # overwrite files in a staging area is to install a new chunk.
- # This is undesired behaviour in the long term, as we want to never
- # have overlaps, so this functionality may go away.
- - |
- libgcc_dir=$(dirname $($TARGET_STAGE1-gcc -print-libgcc-file-name))
- sysroot="$(dirname "$(pwd)")"
- target_libgcc_dir="${libgcc_dir#$sysroot}"
- mkdir -p "$DESTDIR/$target_libgcc_dir/include-fixed"
- cat "gcc/limitx.h" "gcc/glimits.h" "gcc/limity.h" \
- >"$DESTDIR/$target_libgcc_dir/include-fixed/limits.h"
-
diff --git a/stage2-gcc.morph b/stage2-gcc.morph
deleted file mode 100644
index 691911a434..0000000000
--- a/stage2-gcc.morph
+++ /dev/null
@@ -1,68 +0,0 @@
-name: stage2-gcc
-kind: chunk
-
-configure-commands:
- - mkdir o
-
- # In other projects we specify the sysroot location using CPPFLAGS. Here,
- # that breaks because GCC compiles stuff for the *build* machine, too ...
- # and this requires using the host's compiler, which cannot use the same
- # set of CPPFLAGS as the target. If we specify the sysroot using CC instead
- # then we don't interfere, because we are only specifying the *host* C
- # compiler.
- #
- # Configure flag notes:
- # 1. It's vital that this compiler targets the bootstrap machine
- # (TARGET_STAGE1) so that the stage 1 GCC is used instead of the
- # compiler of the build machine.
- # 2. Disable searching /usr/local/include for headers
- # 3. This flag causes the correct --sysroot flag to be passed when calling
- # stage 1 GCC.
- # 4. C++ is built in stage 3.
- # 5. Standard flags. See gcc.morph.
- - |
- export STAGE2_SYSROOT="$(dirname $(pwd))"
- export CC="$TARGET_STAGE1-gcc --sysroot=$STAGE2_SYSROOT"
- export LDFLAGS="-Wl,--sysroot=$STAGE2_SYSROOT"
- cd o && ../configure \
- $(../morph-arch-config) \
- `# [1]` --build=$(sh ../config.guess) \
- --host=$TARGET_STAGE1 \
- --target=$TARGET_STAGE1 \
- --prefix="$PREFIX" \
- `# [2]` --with-local-prefix=$PREFIX \
- `# [3]` --with-build-sysroot="$STAGE2_SYSROOT" \
- --disable-bootstrap \
- --enable-clocale=gnu --enable-shared --enable-threads=posix \
- `# [4]` --enable-languages=c \
- `# [5]` --libdir=$PREFIX/lib \
- --disable-libgomp --disable-multilib --disable-nls \
- --without-cloog --without-ppl \
- --with-mpfr-include="$(pwd)/../mpfr/src" \
- --with-mpfr-lib="$(pwd)/mpfr/src/.libs"
-
-build-commands:
- - |
- export STAGE2_SYSROOT="$(dirname $(pwd))"
- cd o && make
-
-install-commands:
- - cd o && make DESTDIR="$DESTDIR" install
-
- # Stage 3 builds need to link against this file in the location that
- # it will be in the final system, so we make a temporary link now.
- #
- # On x86_64 GCC resolutely installs its libraries into lib64. To fix this
- # would require hobbling the MULTILIB_OSDIRNAMES field in
- # gcc/config/i386/t-linux64 and this might break things, so for now we
- # tolerate the inconsistency.
- - |
- if [ "$(echo $TARGET | cut -c -6)" = "x86_64" ]; then
- libdir=lib64
- else
- libdir=lib
- fi
-
- install -d "$DESTDIR/lib"
- ln -s "$PREFIX/$libdir/libgcc_s.so" "$DESTDIR/lib/"
- ln -s "$PREFIX/$libdir/libgcc_s.so.1" "$DESTDIR/lib/"