summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2021-09-19 20:11:31 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2021-09-19 20:11:31 +0200
commitd644ecdcec86b6898ef6d9d8805652f204c63df1 (patch)
treef0ff36c5c4a89960afcaa08c008418afa966e124 /examples
parentfc4b06f1eac4c5e8ba1b7ebddc02a2c49e5220fb (diff)
downloadrebel-d644ecdcec86b6898ef6d9d8805652f204c63df1.tar
rebel-d644ecdcec86b6898ef6d9d8805652f204c63df1.zip
Use template variables instead of environment, parametrize all examples
This implements passing of various pieces of information through task arguments, as well as argument inheritance through different kinds of dependencies.
Diffstat (limited to 'examples')
-rw-r--r--examples/bar.yml4
-rw-r--r--examples/binutils.yml17
-rw-r--r--examples/foo.yml4
-rw-r--r--examples/gcc-libs.yml10
-rw-r--r--examples/gcc.yml30
-rw-r--r--examples/glibc.yml27
-rw-r--r--examples/libgcc-initial.yml8
-rw-r--r--examples/linux-uapi-headers.yml6
-rw-r--r--examples/ls.yml2
9 files changed, 46 insertions, 62 deletions
diff --git a/examples/bar.yml b/examples/bar.yml
index ece6fd1..f25322e 100644
--- a/examples/bar.yml
+++ b/examples/bar.yml
@@ -4,6 +4,6 @@ tasks:
default: {}
run: |
findmnt -o +PROPAGATION
- mkdir -p "${DESTDIR}"
- echo bar > "${DESTDIR}/bar"
+ mkdir -p {{destdir}}
+ echo bar > {{destdir}}/bar
diff --git a/examples/binutils.yml b/examples/binutils.yml
index c05d965..422a108 100644
--- a/examples/binutils.yml
+++ b/examples/binutils.yml
@@ -4,23 +4,20 @@ tasks:
- name: 'binutils-2.37.tar.xz'
sha256: '820d9724f020a3e69cb337893a0b63c2db161dadcb0e06fc11dc29eb1e84a32c'
run: |
- tar xf "${DLDIR}/binutils-2.37.tar.xz"
+ tar xf {{dldir}}/binutils-2.37.tar.xz
configure:
inherit:
task: 'binutils:unpack'
run: |
- BUILD=x86_64-linux-gnu
- HOST=x86_64-linux-gnu
- TARGET=aarch64-linux-gnu
mkdir binutils-build
cd binutils-build
../binutils-2.37/configure \
- --build="${BUILD}" \
- --host="${HOST}" \
- --target="${TARGET}" \
- --prefix="${BUILD_PREFIX}" \
- --with-sysroot="${SYSROOT}" \
+ --build={{build.target_triple}} \
+ --host={{host.target_triple}} \
+ --target={{target.target_triple}} \
+ --prefix={{host.prefix}} \
+ --with-sysroot={{sysroot}} \
--enable-libssp \
--enable-deterministic-archives \
--enable-plugins \
@@ -45,4 +42,4 @@ tasks:
default: {}
run: |
cd binutils-build
- make DESTDIR="$DESTDIR" install
+ make DESTDIR={{destdir}} install
diff --git a/examples/foo.yml b/examples/foo.yml
index 6b82812..2982795 100644
--- a/examples/foo.yml
+++ b/examples/foo.yml
@@ -5,8 +5,8 @@ tasks:
run: |
ls -lha
ls -lha /proc/self/fd
- mkdir -p "${DESTDIR}/foo"
- cd "${DESTDIR}"
+ mkdir -p {{destdir}}/foo
+ cd {{destdir}}
echo foobar > foo/bar
touch foo/bla
touch foo/x
diff --git a/examples/gcc-libs.yml b/examples/gcc-libs.yml
index 14969db..b9e9e52 100644
--- a/examples/gcc-libs.yml
+++ b/examples/gcc-libs.yml
@@ -23,11 +23,9 @@ tasks:
target:
path: 'target'
run: |
- TARGET=aarch64-linux-gnu
-
cd gcc-build
- make DESTDIR="${DESTDIR}/host" install-target-libgcc install-target-libstdc++-v3 install-target-libgomp install-target-libquadmath install-target-libatomic
+ make DESTDIR={{destdir}}/host install-target-libgcc install-target-libstdc++-v3 install-target-libgomp install-target-libquadmath install-target-libatomic
- mkdir -p "${DESTDIR}/target/${PREFIX}"
- mv "${DESTDIR}/host${BUILD_PREFIX}/${TARGET}"/* "${DESTDIR}/target/${PREFIX}"
- rmdir "${DESTDIR}/host${BUILD_PREFIX}/${TARGET}"
+ mkdir -p {{destdir}}/target/{{target.prefix}}
+ mv {{destdir}}/host{{host.prefix}}/{{target.target_triple}}/* {{destdir}}/target/{{target.prefix}}
+ rmdir {{destdir}}/host{{host.prefix}}/{{target.target_triple}}
diff --git a/examples/gcc.yml b/examples/gcc.yml
index fd62466..8dac894 100644
--- a/examples/gcc.yml
+++ b/examples/gcc.yml
@@ -4,7 +4,7 @@ tasks:
- name: 'gcc-11.2.0.tar.xz'
sha256: 'd08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b'
run: |
- tar xf "${DLDIR}/gcc-11.2.0.tar.xz"
+ tar xf {{dldir}}/gcc-11.2.0.tar.xz
sed -i -e 's@^MULTILIB_OSDIRNAMES@# &@' gcc-11.2.0/gcc/config/*/t-*
@@ -12,8 +12,8 @@ tasks:
output:
default: {}
run: |
- mkdir -p "${DESTDIR}${PREFIX}/include"
- touch "${DESTDIR}${PREFIX}/include/limits.h"
+ mkdir -p {{destdir}}{{target.prefix}}/include
+ touch {{destdir}}{{target.prefix}}/include/limits.h
configure:
inherit:
@@ -23,22 +23,18 @@ tasks:
depends:
- task: 'gcc:header-stubs'
run: |
- BUILD=x86_64-linux-gnu
- HOST=x86_64-linux-gnu
- TARGET=aarch64-linux-gnu
-
mkdir gcc-build
cd gcc-build
../gcc-11.2.0/configure \
- --build="${BUILD}" \
- --host="${HOST}" \
- --target=${TARGET} \
- --prefix="${BUILD_PREFIX}" \
- --libdir=${BUILD_PREFIX}/lib \
- --libexecdir=${BUILD_PREFIX}/lib \
- --with-sysroot="${SYSROOT}" \
- --with-native-system-header-dir=${PREFIX}/include \
- --with-build-time-tools="${BUILD_PREFIX}/${TARGET}/bin" \
+ --build={{build.target_triple}} \
+ --host={{host.target_triple}} \
+ --target={{target.target_triple}} \
+ --prefix={{host.prefix}} \
+ --libdir={{host.prefix}}/lib \
+ --libexecdir={{host.prefix}}/lib \
+ --with-sysroot={{sysroot}} \
+ --with-native-system-header-dir={{target.prefix}}/include \
+ --with-build-time-tools={{host.prefix}}/{{target.target_triple}}/bin \
--with-gnu-ld \
--enable-shared \
--enable-languages=c,c++ \
@@ -88,5 +84,5 @@ tasks:
- task: 'binutils:install'
run: |
cd gcc-build
- make DESTDIR="$DESTDIR" install-host
+ make DESTDIR={{destdir}} install-host
diff --git a/examples/glibc.yml b/examples/glibc.yml
index 8e1cf5a..6c2ca8d 100644
--- a/examples/glibc.yml
+++ b/examples/glibc.yml
@@ -4,7 +4,7 @@ tasks:
- name: 'glibc-2.34.tar.xz'
sha256: '44d26a1fe20b8853a48f470ead01e4279e869ac149b195dda4e44a195d981ab2'
run: |
- tar xf "${DLDIR}/glibc-2.34.tar.xz"
+ tar xf {{dldir}}/glibc-2.34.tar.xz
configure:
inherit:
@@ -15,10 +15,7 @@ tasks:
depends:
- task: 'linux-uapi-headers:install'
run: |
- BUILD=x86_64-linux-gnu
- HOST=aarch64-linux-gnu
-
- CROSS_COMPILE=${BUILD_PREFIX}/bin/${HOST}-
+ CROSS_COMPILE={{build.prefix}}/bin/{{host.target_triple}}-
export BUILD_CC=gcc
export CC=${CROSS_COMPILE}gcc
@@ -31,12 +28,12 @@ tasks:
mkdir glibc-build
cd glibc-build
../glibc-2.34/configure \
- --build="${BUILD}" \
- --host=${HOST} \
- --prefix="${PREFIX}" \
- --includedir="${PREFIX}/include" \
- --libdir="${PREFIX}/lib" \
- --libexecdir="${PREFIX}/lib" \
+ --build={{build.target_triple}} \
+ --host={{host.target_triple}} \
+ --prefix={{host.prefix}} \
+ --includedir={{host.prefix}}/include \
+ --libdir={{host.prefix}}/lib \
+ --libexecdir={{host.prefix}}/lib \
--enable-add-ons \
--enable-obsolete-rpc \
--enable-kernel=2.6.32 \
@@ -46,9 +43,9 @@ tasks:
--enable-lock-elision \
--disable-werror
- echo 'slibdir=/usr/lib' >> configparms
- echo 'sbindir=/usr/bin' >> configparms
- echo 'rootsbindir=/usr/bin' >> configparms
+ echo slibdir={{host.prefix}}/lib >> configparms
+ echo sbindir={{host.prefix}}/bin >> configparms
+ echo rootsbindir={{host.prefix}}/bin >> configparms
compile:
inherit:
@@ -76,4 +73,4 @@ tasks:
- task: 'linux-uapi-headers:install'
run: |
cd glibc-build
- make install_root="${DESTDIR}" install
+ make install_root={{destdir}} install
diff --git a/examples/libgcc-initial.yml b/examples/libgcc-initial.yml
index f34ea34..cf26211 100644
--- a/examples/libgcc-initial.yml
+++ b/examples/libgcc-initial.yml
@@ -7,8 +7,6 @@ tasks:
depends:
- task: 'gcc:header-stubs'
run: |
- TARGET=aarch64-linux-gnu
-
cd gcc-build
make configure-target-libgcc
@@ -21,7 +19,7 @@ tasks:
sed -i -r \
-e 's@^(thread_header =).*@\1 gthr-single.h@' \
-e 's@^(enable_shared =).*@\1 no@' \
- "${TARGET}/libgcc/Makefile"
+ {{target.target_triple}}/libgcc/Makefile
compile:
inherit:
@@ -43,5 +41,5 @@ tasks:
default: {}
run: |
cd gcc-build
- make DESTDIR="$DESTDIR" install-target-libgcc
- ln -s libgcc.a "${DESTDIR}${BUILD_PREFIX}/lib/gcc/aarch64-linux-gnu/11.2.0/libgcc_eh.a"
+ make DESTDIR={{destdir}} install-target-libgcc
+ ln -s libgcc.a {{destdir}}{{host.prefix}}/lib/gcc/{{target.target_triple}}/11.2.0/libgcc_eh.a
diff --git a/examples/linux-uapi-headers.yml b/examples/linux-uapi-headers.yml
index 95f6d11..9c6f284 100644
--- a/examples/linux-uapi-headers.yml
+++ b/examples/linux-uapi-headers.yml
@@ -4,7 +4,7 @@ tasks:
- name: 'linux-5.10.66.tar.xz'
sha256: '5dfa06bbbbd164b9ea669ec637b1e6d05fb5fea8ef3aeb6729f2cbcd0dfcc8a7'
run: |
- tar xf "${DLDIR}/linux-5.10.66.tar.xz"
+ tar xf {{dldir}}/linux-5.10.66.tar.xz
install:
inherit:
@@ -12,8 +12,6 @@ tasks:
output:
default: {}
run: |
- TARGET_ARCH=arm64
-
cd linux-5.10.66
- make INSTALL_HDR_PATH="${DESTDIR}${PREFIX}" ARCH="${TARGET_ARCH}" headers_install
+ make INSTALL_HDR_PATH={{destdir}}{{host.prefix}} ARCH={{host.karch}} headers_install
diff --git a/examples/ls.yml b/examples/ls.yml
index b576266..b9cdb28 100644
--- a/examples/ls.yml
+++ b/examples/ls.yml
@@ -7,4 +7,4 @@ tasks:
default: {}
run: |
ls -lh /
- ls -lhR "${SYSROOT}"
+ ls -lhR {{sysroot}}