@@ -102,6 +102,71 @@ jobs:
102102 source bashrc.eus
103103 export EXIT_STATUS=0; for test_l in irteus/test/*.l; do irteusg $test_l; export TMP_EXIT_STATUS=$?; export EXIT_STATUS=`expr $TMP_EXIT_STATUS + $EXIT_STATUS`; done; [ $EXIT_STATUS == 0 ] || exit 1
104104
105+ # test for cross sompile
106+ linux-nox-crosscompile :
107+ runs-on : ubuntu-latest
108+ timeout-minutes : 60
109+ steps :
110+ - name : Checkout
111+ uses : actions/checkout@v2
112+ - name : Clone Euslisp and Setup environmnet
113+ shell : bash
114+ run : |
115+ set -xe
116+ git clone --branch support_nonx https://github.com/euslisp/EusLisp eus
117+ sudo apt update -y -qq
118+ # remove unused packages
119+ sudo dpkg -r --force-depends nginx || echo "OK"
120+ sudo apt purge -y -qq build-essential gcc-9 gcc-10 || echo "OK"
121+ sudo apt purge -y -qq libldap-* || echo "OK"
122+ sudo apt purge -y -qq libx11* x11* libgl1* libglx* || echo "OK"
123+ sudo apt autoremove -y -qq || echo "OK"
124+ # install deb environment
125+ sudo apt install -y -qq make binutils-aarch64-linux-gnu gcc-aarch64-linux-gnu g++-aarch64-linux-gnu qemu-user-static
126+ exit 0
127+ - name : Check environmnet
128+ shell : bash
129+ run : |
130+ set -xe
131+ dpkg --get-selections | egrep -e '(cc|ld)' || echo "OK" ## show selected X/GL
132+ dpkg --get-selections | egrep -e '(libpq|jpeg|png)' || echo "OK" ## show selected X/GL
133+ dpkg --get-selections | egrep -e '(x11|gl)' || echo "OK" ## show selected X/GL
134+ #dpkg --get-selections | egrep -q -e '(x11|gl)' && exit 1 ## exit 1, when X/GL found
135+ exit 0
136+ - name : Compile irteusg
137+ shell : bash
138+ run : |
139+ set -xe
140+ export TOPDIR=$(pwd)
141+ export EUSDIR=$(pwd)/eus
142+ export ARCHDIR=LinuxARM
143+ export PATH=$EUSDIR/$ARCHDIR/bin:$EUSDIR/$ARCHDIR/lib:$PATH
144+ export LD_LIBRARY_PATH=$EUSDIR/$ARCHDIR/lib:$EUSDIR/$ARCHDIR/bin:$LD_LIBRARY_PATH
145+ export CC=aarch64-linux-gnu-gcc
146+ export LD=aarch64-linux-gnu-ld
147+ export AR=aarch64-linux-gnu-ar
148+ export CXX=aarch64-linux-gnu-g++
149+ export QEMU_LD_PREFIX=/usr/aarch64-linux-gnu/
150+ cd $EUSDIR/lisp
151+ ln -sf Makefile.Linux Makefile
152+ CC=$CC LD=$LD make eus0 eus1 eus2 eusg
153+ (cd $EUSDIR//test; CXX=$CXX make)
154+ cd $TOPDIR/irteus
155+ ARCHDIR=$ARCHDIR CC=$CC LD=$LD AR=$AR CXX=$CXX make irteusg
156+ - name : Run test
157+ shell : bash
158+ run : |
159+ sed -i 's/(send x:\*root\* :size)/#f\(1000\)/' eus/models/irt-all-*.l
160+ sed -i '/\(send self :def-gl-vertices\)/ s/^/;/' eus/models/*.l
161+ sed -i '/\(send self :make-collision-model-for-links\)/ s/^/;/' eus/models/*.l
162+ export EUSDIR=$(pwd)/eus
163+ export ARCHDIR=LinuxARM
164+ export PATH=$EUSDIR/$ARCHDIR/bin:$EUSDIR/$ARCHDIR/lib:$PATH
165+ export LD_LIBRARY_PATH=$EUSDIR/$ARCHDIR/lib:$EUSDIR/$ARCHDIR/bin:$LD_LIBRARY_PATH
166+ export QEMU_LD_PREFIX=/usr/aarch64-linux-gnu/
167+ set -xe
168+ export EXIT_STATUS=0; for test_l in irteus/test/*.l; do irteusg $test_l; export TMP_EXIT_STATUS=$?; export EXIT_STATUS=`expr $TMP_EXIT_STATUS + $EXIT_STATUS`; done; [ $EXIT_STATUS == 0 ] || exit 1
169+
105170 # doc:
106171 # runs-on: ubuntu-latest
107172 # timeout-minutes: 60
0 commit comments