diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-04-10 02:11:53 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-04-12 02:38:26 +0300 |
commit | d8f9061adf2d255bbe7b2b27f0fa892ef881c305 (patch) | |
tree | 8b8c5f98cbf629de468f2d994187589a8d59e48f /tools/ci/scripts/init.sh | |
parent | b8d27351265af33d880a18239dd91068b2d2a2bd (diff) | |
download | manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.tar.gz manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.tar.bz2 manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.tar.xz manaplus-d8f9061adf2d255bbe7b2b27f0fa892ef881c305.zip |
add .gitlab-ci.yml and script for it.
Diffstat (limited to 'tools/ci/scripts/init.sh')
-rwxr-xr-x | tools/ci/scripts/init.sh | 146 |
1 files changed, 146 insertions, 0 deletions
diff --git a/tools/ci/scripts/init.sh b/tools/ci/scripts/init.sh new file mode 100755 index 000000000..053f36b64 --- /dev/null +++ b/tools/ci/scripts/init.sh @@ -0,0 +1,146 @@ +#!/bin/bash + +pwd +mkdir logs + +export dir=$(pwd) +export ERRFILE=${dir}/logs/${LOGFILE} + +cat /etc/os-release +$CC --version +$CXX --version + +rm ${ERRFILE} + +function aptget_update { + apt-get update + if [ "$?" != 0 ]; then + sleep 1s + apt-get update + if [ "$?" != 0 ]; then + sleep 1s + apt-get update + fi + fi +} + +function aptget_install { + apt-get -y -qq install $* + if [ "$?" != 0 ]; then + sleep 1s + apt-get -y -qq install $* + if [ "$?" != 0 ]; then + sleep 2s + apt-get -y -qq install $* + fi + fi +} + +function run_configure_simple { + rm $ERRFILE + autoreconf -i 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + + rm $ERRFILE + ./configure $* 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +function run_configure { + run_configure_simple $* + + rm $ERRFILE + cd po + make update-gmo 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + cd .. + + rm $ERRFILE + cd po + make update-po 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + cd .. +} + +function run_cmake { + rm $ERRFILE + cmake . 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +function run_make { + rm $ERRFILE + make -j2 V=0 $* 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +function run_check_warnings { + DATA=$(cat $ERRFILE) + if [ "$DATA" != "" ]; + then + cat $ERRFILE + exit 1 + fi +} + +function run_h { + rm $ERRFILE + $CC -c -x c++ $* $includes */*/*/*.h */*/*.h */*.h *.h 2>$ERRFILE + DATA=$(cat $ERRFILE) + if [ "$DATA" != "" ]; + then + cat $ERRFILE + exit 1 + fi +} + +function run_tarball { + rm $ERRFILE + make dist-xz 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + + mkdir $1 + cd $1 + tar xf ../*.tar.xz + cd manaplus* +} + +function run_mplint { + rm $ERRFILE + mplint/src/mplint $* >$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +aptget_update |