-
-
Notifications
You must be signed in to change notification settings - Fork 147
/
Copy pathbuild.sh
executable file
·46 lines (37 loc) · 979 Bytes
/
build.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/usr/bin/env bash
if [ -d obj ]; then
rm -fR obj/*
else
mkdir obj
fi
cp -fR src/* obj
MANIFEST=(`find obj/ -name *.lua -type f`);
LAST_FAILURE=0
if [ ${#MANIFEST[@]} -eq 0 ]; then
echo -e "\e[1m\e[39m[\e[31mTEST FAILED\e[39m]\e[21m No scripts could be found!."
exit 1
fi
SCRIPTS_LUA=obj/SCRIPTS/BF/COMPILE/scripts.lua
echo 'local scripts = {' >> $SCRIPTS_LUA
for f in ${MANIFEST[@]};
do
echo ' ''"'${f/\obj/}'",' >> $SCRIPTS_LUA
done
echo '}' >> $SCRIPTS_LUA
echo 'return scripts[...]' >> $SCRIPTS_LUA
MANIFEST+=($SCRIPTS_LUA);
for f in ${MANIFEST[@]};
do
SRC_NAME=$f
echo -e "Testing file \e[1m${SRC_NAME}\e[21m..."
luac -p ${SRC_NAME}
_fail=$?
if [[ $_fail -ne 0 ]]; then
LAST_FAILURE=$_fail
echo -e "\e[1m\e[39m[\e[31mBUILD FAILED\e[39m]\e[21m Error in file ${SRC_NAME}\e[1m"
fi
done
if [[ $LAST_FAILURE -eq 0 ]]; then
echo -e "\e[1m\e[39m[\e[32mTEST SUCCESSFUL\e[39m]\e[21m"
fi
exit $LAST_FAILURE