40 lines
860 B
Bash
Executable File
40 lines
860 B
Bash
Executable File
#!/bin/bash
|
|
|
|
cflags+="-Wall -O3 -g -std=gnu11 -fno-strict-aliasing -Isrc -Ilib/font_renderer"
|
|
cflags+=" $(pkg-config --cflags lua5.2) $(sdl2-config --cflags)"
|
|
lflags="-static-libgcc -static-libstdc++"
|
|
for package in libagg freetype2 lua5.2 x11; do
|
|
lflags+=" $(pkg-config --libs $package)"
|
|
done
|
|
lflags+=" $(sdl2-config --libs) -lm"
|
|
|
|
if [[ $* == *windows* ]]; then
|
|
echo "cross compiling for windows is not yet supported"
|
|
exit 1
|
|
else
|
|
outfile="lite"
|
|
compiler="gcc"
|
|
cxxcompiler="g++"
|
|
fi
|
|
|
|
lib/font_renderer/build.sh || exit 1
|
|
libs=libfontrenderer.a
|
|
|
|
echo "compiling lite..."
|
|
for f in `find src -name "*.c"`; do
|
|
$compiler -c $cflags $f -o "${f//\//_}.o"
|
|
if [[ $? -ne 0 ]]; then
|
|
got_error=true
|
|
fi
|
|
done
|
|
|
|
if [[ ! $got_error ]]; then
|
|
echo "linking..."
|
|
$cxxcompiler -o $outfile *.o $libs $lflags
|
|
fi
|
|
|
|
echo "cleaning up..."
|
|
rm *.o *.a
|
|
echo "done"
|
|
|