aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2014-08-12 11:06:35 -0400
committerAnthony G. Basile <blueness@gentoo.org>2014-08-12 11:06:35 -0400
commit0ed14e747f220c560f1ac5a0b90f88a23366cb69 (patch)
tree8bf0facdeb1f0e235a7577ff486902b216d52869 /tools-uclibc
parenttools-musl/run.sh: parallelize musl run (diff)
downloadreleng-0ed14e747f220c560f1ac5a0b90f88a23366cb69.tar.gz
releng-0ed14e747f220c560f1ac5a0b90f88a23366cb69.tar.bz2
releng-0ed14e747f220c560f1ac5a0b90f88a23366cb69.zip
tools-uclibc: pull out common code in run scripts and add parallel builds
Diffstat (limited to 'tools-uclibc')
-rw-r--r--tools-uclibc/common.sh62
-rwxr-xr-xtools-uclibc/run-armv7a.sh61
-rwxr-xr-xtools-uclibc/run-mips32r2.sh61
-rwxr-xr-xtools-uclibc/run-mipsel3.sh61
-rwxr-xr-xtools-uclibc/run.sh73
5 files changed, 82 insertions, 236 deletions
diff --git a/tools-uclibc/common.sh b/tools-uclibc/common.sh
new file mode 100644
index 00000000..d1350d25
--- /dev/null
+++ b/tools-uclibc/common.sh
@@ -0,0 +1,62 @@
+#!/bin/bash
+
+source /etc/catalyst/catalyst.conf
+
+mydate=`date +%Y%m%d`
+
+
+undo_grsec() {
+ [[ -d /proc/sys/kernel/grsecurity ]] || return
+ for i in /proc/sys/kernel/grsecurity/chroot_* ; do
+ echo 0 > $i
+ done
+}
+
+
+banner() {
+cat << EOF | tee -a zzz.log > stage$1-$2-uclibc-$3.log
+
+************************************************************************
+* stage$1-$2-uclibc-$3
+************************************************************************"
+
+EOF
+}
+
+
+do_stages() {
+ local arch=$1
+ local flavor=$2
+
+ for s in 1 2 3; do
+ local tgpath="${storedir}/builds/uclibc/${flavor}/${arch}"
+ local target="stage${s}-${arch}-uclibc-${flavor}-${mydate}.tar.bz2"
+ local tglink="stage${s}-${arch}-uclibc-${flavor}.tar.bz2"
+
+ if [[ ! -f "${tgpath}/${tglink}" ]]; then
+ touch stage${s}-${arch}-uclibc-${flavor}.log
+ echo "!!! ${tglink} at ${tgpath} doesn't exist" \
+ | tee -a zzz.log \
+ > stage${s}-${arch}-uclibc-${flavor}.err
+ return 1
+ fi
+
+ banner ${s} ${arch} ${flavor}
+ catalyst -f stage${s}-${arch}-uclibc-${flavor}.conf \
+ | tee -a zzz.log \
+ > stage${s}-${arch}-uclibc-${flavor}.log \
+ 2> stage${s}-${arch}-uclibc-${flavor}.err
+
+ if [[ -f "${tgpath}/${target}" ]]; then
+ rm -f "${tgpath}/${tglink}"
+ ln -s ${target} "${tgpath}/${tglink}"
+ else
+ echo "!!! ${target} was not generated" \
+ | tee -a zzz.log \
+ >stage${s}-${arch}-uclibc-${flavor}.err
+ return 1
+ fi
+ done
+
+ return 0
+}
diff --git a/tools-uclibc/run-armv7a.sh b/tools-uclibc/run-armv7a.sh
index 7a248f5b..13b684f4 100755
--- a/tools-uclibc/run-armv7a.sh
+++ b/tools-uclibc/run-armv7a.sh
@@ -1,8 +1,6 @@
#!/bin/bash
-source /etc/catalyst/catalyst.conf
-
-mydate=`date +%Y%m%d`
+source common.sh
prepare_confs() {
local arch=$1
@@ -42,54 +40,6 @@ prepare_confs() {
sed -i "/^chost/d" stage3-${arch}-uclibc-${flavor}.conf
}
-banner() {
-cat << EOF | tee -a zzz.log > stage$1-$2-uclibc-$3.log
-
-************************************************************************
-* stage$1-$2-uclibc-$3
-************************************************************************"
-
-EOF
-}
-
-
-do_stages() {
- local arch=$1
- local flavor=$2
-
- for s in 1 2 3; do
- local tgpath="${storedir}/builds/uclibc/${flavor}/${arch}"
- local target="stage${s}-${arch}-uclibc-${flavor}-${mydate}.tar.bz2"
- local tglink="stage${s}-${arch}-uclibc-${flavor}.tar.bz2"
-
- if [[ ! -f "${tgpath}/${tglink}" ]]; then
- touch stage${s}-${arch}-uclibc-${flavor}.log
- echo "!!! ${target} at ${tgpath} doesn't exit" \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
-
- banner ${s} ${arch} ${flavor}
- catalyst -f stage${s}-${arch}-uclibc-${flavor}.conf \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.log \
- 2> stage${s}-${arch}-uclibc-${flavor}.err
-
- if [[ -f "${tgpath}/${target}" ]]; then
- rm -f "${tgpath}/${tglink}"
- ln -s ${target} "${tgpath}/${tglink}"
- else
- echo "!!! ${target} was not generated" \
- | tee -a zzz.log \
- >stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
- done
-
- return 0
-}
-
main() {
>zzz.log
@@ -101,15 +51,12 @@ main() {
prepare_confs ${arch} ${flavor}
done
done
-
+
+ # No parallelization for arm. Its too hard on the cpu!
for arch in armv7a_hardfp armv7a; do
for flavor in hardened vanilla; do
do_stages ${arch} ${flavor}
- ret=$?
- if [[ $? == 1 ]]; then
- echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
- return 1
- fi
+ [[ $? == 1 ]] && echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
done
done
}
diff --git a/tools-uclibc/run-mips32r2.sh b/tools-uclibc/run-mips32r2.sh
index 8829b3dd..3655549e 100755
--- a/tools-uclibc/run-mips32r2.sh
+++ b/tools-uclibc/run-mips32r2.sh
@@ -1,8 +1,6 @@
#!/bin/bash
-source /etc/catalyst/catalyst.conf
-
-mydate=`date +%Y%m%d`
+source common.sh
prepare_confs() {
local arch=$1
@@ -32,54 +30,6 @@ prepare_confs() {
sed -i "/^chost/d" stage3-${arch}-uclibc-${flavor}.conf
}
-banner() {
-cat << EOF | tee -a zzz.log > stage$1-$2-uclibc-$3.log
-
-************************************************************************
-* stage$1-$2-uclibc-$3
-************************************************************************"
-
-EOF
-}
-
-
-do_stages() {
- local arch=$1
- local flavor=$2
-
- for s in 1 2 3; do
- local tgpath="${storedir}/builds/uclibc/${flavor}/${arch}"
- local target="stage${s}-${arch}-uclibc-${flavor}-${mydate}.tar.bz2"
- local tglink="stage${s}-${arch}-uclibc-${flavor}.tar.bz2"
-
- if [[ ! -f "${tgpath}/${tglink}" ]]; then
- touch stage${s}-${arch}-uclibc-${flavor}.log
- echo "!!! ${target} at ${tgpath} doesn't exit" \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
-
- banner ${s} ${arch} ${flavor}
- catalyst -f stage${s}-${arch}-uclibc-${flavor}.conf \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.log \
- 2> stage${s}-${arch}-uclibc-${flavor}.err
-
- if [[ -f "${tgpath}/${target}" ]]; then
- rm -f "${tgpath}/${tglink}"
- ln -s ${target} "${tgpath}/${tglink}"
- else
- echo "!!! ${target} was not generated" \
- | tee -a zzz.log \
- >stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
- done
-
- return 0
-}
-
main() {
>zzz.log
@@ -91,15 +41,12 @@ main() {
prepare_confs ${arch} ${flavor}
done
done
-
+
+ # No parallelization for mips. Its too hard on the cpu!
for arch in mips32r2; do
for flavor in hardened vanilla; do
do_stages ${arch} ${flavor}
- ret=$?
- if [[ $? == 1 ]]; then
- echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
- return 1
- fi
+ [[ $? == 1 ]] && echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
done
done
}
diff --git a/tools-uclibc/run-mipsel3.sh b/tools-uclibc/run-mipsel3.sh
index 510639ca..4b70bed2 100755
--- a/tools-uclibc/run-mipsel3.sh
+++ b/tools-uclibc/run-mipsel3.sh
@@ -1,8 +1,6 @@
#!/bin/bash
-source /etc/catalyst/catalyst.conf
-
-mydate=`date +%Y%m%d`
+source common.sh
prepare_confs() {
local arch=$1
@@ -32,54 +30,6 @@ prepare_confs() {
sed -i "/^chost/d" stage3-${arch}-uclibc-${flavor}.conf
}
-banner() {
-cat << EOF | tee -a zzz.log > stage$1-$2-uclibc-$3.log
-
-************************************************************************
-* stage$1-$2-uclibc-$3
-************************************************************************"
-
-EOF
-}
-
-
-do_stages() {
- local arch=$1
- local flavor=$2
-
- for s in 1 2 3; do
- local tgpath="${storedir}/builds/uclibc/${flavor}/${arch}"
- local target="stage${s}-${arch}-uclibc-${flavor}-${mydate}.tar.bz2"
- local tglink="stage${s}-${arch}-uclibc-${flavor}.tar.bz2"
-
- if [[ ! -f "${tgpath}/${tglink}" ]]; then
- touch stage${s}-${arch}-uclibc-${flavor}.log
- echo "!!! ${target} at ${tgpath} doesn't exit" \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
-
- banner ${s} ${arch} ${flavor}
- catalyst -f stage${s}-${arch}-uclibc-${flavor}.conf \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.log \
- 2> stage${s}-${arch}-uclibc-${flavor}.err
-
- if [[ -f "${tgpath}/${target}" ]]; then
- rm -f "${tgpath}/${tglink}"
- ln -s ${target} "${tgpath}/${tglink}"
- else
- echo "!!! ${target} was not generated" \
- | tee -a zzz.log \
- >stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
- done
-
- return 0
-}
-
main() {
>zzz.log
@@ -91,15 +41,12 @@ main() {
prepare_confs ${arch} ${flavor}
done
done
-
+
+ # No parallelization for mips. Its too hard on the cpu!
for arch in mipsel3; do
for flavor in hardened vanilla; do
do_stages ${arch} ${flavor}
- ret=$?
- if [[ $? == 1 ]]; then
- echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
- return 1
- fi
+ [[ $? == 1 ]] && echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
done
done
}
diff --git a/tools-uclibc/run.sh b/tools-uclibc/run.sh
index b1b8211c..ed0a14fc 100755
--- a/tools-uclibc/run.sh
+++ b/tools-uclibc/run.sh
@@ -1,15 +1,6 @@
#!/bin/bash
-source /etc/catalyst/catalyst.conf
-
-mydate=`date +%Y%m%d`
-
-undo_grsec() {
- [[ -d /proc/sys/kernel/grsecurity ]] || return
- for i in /proc/sys/kernel/grsecurity/chroot_* ; do
- echo 0 > $i
- done
-}
+source common.sh
prepare_confs() {
local arch=$1
@@ -43,54 +34,6 @@ prepare_confs() {
sed -i "/^chost/d" stage3-${arch}-uclibc-${flavor}.conf
}
-banner() {
-cat << EOF | tee -a zzz.log > stage$1-$2-uclibc-$3.log
-
-************************************************************************
-* stage$1-$2-uclibc-$3
-************************************************************************"
-
-EOF
-}
-
-
-do_stages() {
- local arch=$1
- local flavor=$2
-
- for s in 1 2 3; do
- local tgpath="${storedir}/builds/uclibc/${flavor}/${arch}"
- local target="stage${s}-${arch}-uclibc-${flavor}-${mydate}.tar.bz2"
- local tglink="stage${s}-${arch}-uclibc-${flavor}.tar.bz2"
-
- if [[ ! -f "${tgpath}/${tglink}" ]]; then
- touch stage${s}-${arch}-uclibc-${flavor}.log
- echo "!!! ${target} at ${tgpath} doesn't exit" \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
-
- banner ${s} ${arch} ${flavor}
- catalyst -f stage${s}-${arch}-uclibc-${flavor}.conf \
- | tee -a zzz.log \
- > stage${s}-${arch}-uclibc-${flavor}.log \
- 2> stage${s}-${arch}-uclibc-${flavor}.err
-
- if [[ -f "${tgpath}/${target}" ]]; then
- rm -f "${tgpath}/${tglink}"
- ln -s ${target} "${tgpath}/${tglink}"
- else
- echo "!!! ${target} was not generated" \
- | tee -a zzz.log \
- >stage${s}-${arch}-uclibc-${flavor}.err
- return 1
- fi
- done
-
- return 0
-}
-
main() {
>zzz.log
@@ -104,15 +47,15 @@ main() {
prepare_confs ${arch} ${flavor}
done
done
-
+
+ # The parallelization `( do_stages ... ) &` doesn't work here
+ # if catalyst is using snapcache, bug #519656
for arch in amd64 i686; do
for flavor in hardened vanilla; do
- do_stages ${arch} ${flavor}
- ret=$?
- if [[ $? == 1 ]]; then
- echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
- return 1
- fi
+ (
+ do_stages ${arch} ${flavor}
+ [[ $? == 1 ]] && echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
+ ) &
done
done
}