diff options
author | Francisco Redondo Marchena <francisco.marchena@codethink.co.uk> | 2014-08-13 21:45:15 +0000 |
---|---|---|
committer | Francisco Redondo Marchena <francisco.marchena@codethink.co.uk> | 2014-08-13 21:52:41 +0000 |
commit | 5c261eee00014199eb3d942758598041473f1ddd (patch) | |
tree | 4be8f6fa931142aad3383d53186fb9e84ca218eb /strata/armv7lhf-cross-toolchain | |
parent | 045e89c396aa14218422cef507c2afedcae3dc6b (diff) | |
download | definitions-baserock/franred/organize-morphologies-script.tar.gz |
Organize definitions directory by morphologiesbaserock/franred/organize-morphologies-script
This is the result to run organize-morphologies.py .
The morphologies are clasified in clusters, systems, strata and chunks.
- "clusters" contains all the cluster morphologies.
- "systems" contains all the systems morphologies.
- "strata" contains all the stratum morphologies and the chunks
morphologies which are inside of their stratum morphology folder,
if this chunks will not be autodetected on build time.
Diffstat (limited to 'strata/armv7lhf-cross-toolchain')
5 files changed, 215 insertions, 0 deletions
diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-binutils.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-binutils.morph new file mode 100644 index 00000000..fa876c98 --- /dev/null +++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-binutils.morph @@ -0,0 +1,39 @@ +name: armv7lhf-cross-binutils +kind: chunk +description: '' +max-jobs: null +products: [] +build-system: autotools +pre-configure-commands: [] +configure-commands: +- | + # The TARGET used is the final triplet we expect, rather than that + # of the libc-less GCC we build, since the binutils only needs to + # be built once. + # This requires extra effort to get the stage 1 GCC to use these + # tools, but saves having an extra binutils build. + export TARGET=armv7lhf-baserock-linux-gnueabi + + # 1. Binutils gets installed in the default sysroot path of + # $PREFIX/$TARGET/{bin,lib}, with the actual sysroot at + # $PREFIX/$TARGET/sys-root and its tools also available as + # $PREFIX/bin/$TARGET-$tool + # 2. The '=' makes the path we give relative to the sysroot. + ./configure --prefix="$PREFIX" --disable-nls --disable-werror \ + --build=$(sh config.guess) \ + --host=$(sh config.guess) \ + --target="$TARGET" \ + `# [1]` --with-sysroot \ + `# [2]` --with-lib-path="=$PREFIX/lib" +post-configure-commands: [] +pre-build-commands: [] +build-commands: [] +post-build-commands: [] +pre-install-commands: [] +install-commands: [] +post-install-commands: [] +devices: [] +post-test-commands: [] +pre-test-commands: [] +system-integration: [] +test-commands: [] diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-eglibc.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-eglibc.morph new file mode 100644 index 00000000..5885b4c3 --- /dev/null +++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-eglibc.morph @@ -0,0 +1,48 @@ +name: armv7lhf-cross-eglibc +kind: chunk +description: '' +max-jobs: null +products: [] +build-system: manual +pre-configure-commands: [] +configure-commands: +- mkdir o +- cd libc && ln -s ../ports ports +- | + export MORPH_ARCH=armv7lhf + export TARGET=armv7lhf-baserock-linux-gnueabi + export TARGET_STAGE1=armv7lhf-none-linux-gnueabi + export CFLAGS="-O2 $CFLAGS" + # eglibc looks for $TARGET-gcc, but not $TARGET_STAGE1-gcc even + # though --build is specified, so we have to override what gcc to + # use here. + export CC="$TARGET_STAGE1-gcc" + cd o && ../libc/configure \ + $(../morph-arch-config) \ + --build=$TARGET_STAGE1 --host=$TARGET \ + --prefix="$PREFIX" \ + `# [1]` --with-headers="$PREFIX/$TARGET/sys-root/$PREFIX/include" \ + `# [2]` --with-binutils="$PREFIX/$TARGET/bin" \ + `# [3]` --disable-profile --enable-kernel=2.6.25 \ + --enable-add-ons=nptl,ports --without-cvs --without-selinux \ + `# [4]` libc_cv_c_cleanup=yes libc_cv_ctors_header=yes \ + libc_cv_forced_unwind=yes libc_cv_ssp=no +post-configure-commands: [] +pre-build-commands: [] +build-commands: +- cd o && make localtime=UTC +post-build-commands: [] +pre-install-commands: [] +install-commands: +- | + # eglibc doesn't help with sysroots, so we need to spell out the + # full path ourselves. + export TARGET=armv7lhf-baserock-linux-gnueabi + cd o && make install_root="$DESTDIR/$PREFIX/$TARGET/sys-root/" \ + localtime=UTC install +post-install-commands: [] +devices: [] +post-test-commands: [] +pre-test-commands: [] +system-integration: [] +test-commands: [] diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph new file mode 100644 index 00000000..6fa4e528 --- /dev/null +++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc-nolibc.morph @@ -0,0 +1,50 @@ +name: armv7lhf-cross-gcc-nolibc +kind: chunk +description: '' +max-jobs: null +products: [] +build-system: manual +pre-configure-commands: [] +configure-commands: +- mkdir o +- | + 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 +post-configure-commands: [] +pre-build-commands: [] +build-commands: +- cd o && make +post-build-commands: [] +pre-install-commands: [] +install-commands: +- cd o && make DESTDIR="$DESTDIR" install +- | + 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/')" +post-install-commands: [] +devices: [] +post-test-commands: [] +pre-test-commands: [] +system-integration: [] +test-commands: [] diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph new file mode 100644 index 00000000..29f0bd33 --- /dev/null +++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-gcc.morph @@ -0,0 +1,50 @@ +name: armv7lhf-cross-gcc +kind: chunk +description: '' +max-jobs: null +products: [] +build-system: manual +pre-configure-commands: [] +configure-commands: +- mkdir o +- | + 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 +post-configure-commands: [] +pre-build-commands: [] +build-commands: +- cd o && make +post-build-commands: [] +pre-install-commands: [] +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 +post-install-commands: [] +devices: [] +post-test-commands: [] +pre-test-commands: [] +system-integration: [] +test-commands: [] diff --git a/strata/armv7lhf-cross-toolchain/armv7lhf-cross-linux-api-headers.morph b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-linux-api-headers.morph new file mode 100644 index 00000000..1311c453 --- /dev/null +++ b/strata/armv7lhf-cross-toolchain/armv7lhf-cross-linux-api-headers.morph @@ -0,0 +1,28 @@ +name: armv7lhf-cross-linux-api-headers +kind: chunk +description: '' +max-jobs: null +products: [] +build-system: manual +pre-configure-commands: [] +configure-commands: [] +post-configure-commands: [] +pre-build-commands: [] +build-commands: [] +post-build-commands: [] +pre-install-commands: [] +install-commands: +- make mrproper +- ARCH=arm make INSTALL_HDR_PATH=dest headers_install +- | + # Copy headers to the sysroot where the eglibc build will find them, + # and install its own headers and libraries. + export TARGET=armv7lhf-baserock-linux-gnueabi + install -d "$DESTDIR$PREFIX/$TARGET/sys-root/$PREFIX/include" + cp -r dest/include/* "$DESTDIR/$PREFIX/$TARGET/sys-root/$PREFIX/include" +post-install-commands: [] +devices: [] +post-test-commands: [] +pre-test-commands: [] +system-integration: [] +test-commands: [] |