diff --git a/build.sh b/build.sh index 47c642b..cdd73ae 100755 --- a/build.sh +++ b/build.sh @@ -1,20 +1,17 @@ #!/bin/sh -if [ $(id -u) -ne 0 ]; then +if [ $(id -u) -eq 0 ]; then echo "Run script without root" >&2 exit 1 fi -#Add repos in 0-download-src.sh CC=cc RTFS=$(pwd)/rootfs #Tests -for i in tests/*; do - if ! env CC=$CC $i; then - echo "Build failed" >&2 - exit 1 - fi -done +if ! ./test.sh; then + echo "Build failed" >&2 + exit 1; +fi #Clean ./clean.sh diff --git a/stages/2-cross-compiler.sh b/stages/2-cross-compiler.sh index b08e7ba..72cf0f2 100755 --- a/stages/2-cross-compiler.sh +++ b/stages/2-cross-compiler.sh @@ -1,5 +1,5 @@ #!/bin/sh -echo "* Build cross compiler" +echo "* Build cross compiler" >&2 cd tcc diff --git a/stages/3-micro-utils.sh b/stages/3-micro-utils.sh index 0ae41f9..0e7e30a 100755 --- a/stages/3-micro-utils.sh +++ b/stages/3-micro-utils.sh @@ -1,6 +1,6 @@ #!/bin/sh -echo " * Build micro-utils" -echo " * Make rootfs " +echo " * Build micro-utils" >&2 +echo " * Make rootfs " >&2 mkdir $RTFS/bin mkdir $RTFS/etc mkdir $RTFS/mnt diff --git a/test.sh b/test.sh new file mode 100755 index 0000000..1b0a0cb --- /dev/null +++ b/test.sh @@ -0,0 +1,36 @@ +#!/bin/sh + +if ! make -h > /dev/null; then + echo "[FAILED] Make is not installed..." + exit 1 + +fi + +if git > /dev/null; then + echo "[FAILED] Git is not installed..." + exit 1 + +fi + +if ! makeinfo -h > /dev/null; then + echo "[FAILED] Texinfo is not installed..." + exit 1 + +fi + +out_name=$(mktemp XXXXXX) + +echo "#include " >> test.c +echo "int main(void){return 0;}" >> test.c + +$CC test.c -o $out_name +rm test.c + +if ! ./$out_name; then + echo "[FAILED] Fix c compiler or headers..." + rm $out_name + exit 1 + +fi + +exit 0 diff --git a/tests/c.sh b/tests/c.sh deleted file mode 100755 index 4fe4492..0000000 --- a/tests/c.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh -out_name=$(mktemp XXXXXX) - -echo "#include " >> test.c -echo "int main(void){return 0;}" >> test.c - -$CC test.c -o $out_name -rm test.c - -if ./$out_name; then - echo "[OK] C compiler work..." - rm $out_name - exit 0 - -else - echo "[FAILED] Fix c compiler or headers..." - rm $out_name - exit 1 - -fi diff --git a/tests/git.sh b/tests/git.sh deleted file mode 100755 index b6e6d54..0000000 --- a/tests/git.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -if ! git > /dev/null; then - echo "[OK] Git installed..." - exit 0; - -else - echo "[FAILED] Git is not installed..." - exit 1 - -fi - diff --git a/tests/make.sh b/tests/make.sh deleted file mode 100755 index 058ef7b..0000000 --- a/tests/make.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -if make -h > /dev/null; then - echo "[OK] Make installed..." - exit 0; - -else - echo "[FAILED] Make is not installed..." - exit 1 - -fi - diff --git a/tests/texinfo.sh b/tests/texinfo.sh deleted file mode 100755 index 4afdb9e..0000000 --- a/tests/texinfo.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -if makeinfo -h > /dev/null; then - echo "[OK] Texinfo installed..." - exit 0; - -else - echo "[FAILED] Texinfo is not installed..." - exit 1 - -fi -