#!/bin/sh # # This script is meant to be run under debian unstable, with the mingw # package installed, as well as a bunch of other packages, including but # not limited to, mysql-client-dev, imagemagick-dev, and oracle-occi # githostname="git.grumpycoder.net" localhostname=`hostname` if [ "x$USER" = "xpixel" ] || [ "x$USER" = "xnnoble" ] ; then if [ "x$localhostname" = "xgrumpy" ] ; then githostname="" else prefix="ssh+git://pixel@" fi path="/pub/repo.git" else prefix="http://" path="" fi tar xvfz Mesa-7.4.4-osmesa-linux-precomp.tar.gz tar xvfz tinyxml-src.tar.gz git clone ${prefix}${githostname}${path}/Baltisot git clone ${prefix}${githostname}${path}/mogltk git clone ${prefix}${githostname}${path}/lua-interface git clone ${prefix}${githostname}${path}/lua-modules git clone ${prefix}${githostname}${path}/lua-modules-cd-tool git clone ${prefix}${githostname}${path}/PSX-Bundle git clone ${prefix}${githostname}${path}/lua-modules-iup git clone ${prefix}${githostname}${path}/LuaJIT cd Baltisot/lib/ ./genloadlib.sh > loadlualibs.ii cd ../.. mkdir -p lua-interface-distrib/linux ############################### ## prepare win32 compilation ## ## skip if you don't want it ## ############################### git clone lua-interface lua-interface-win32 git clone lua-interface lua-interface-win32-light ln -s ../lua-interface-win32/lua-interface.a lua-interface git clone lua-modules lua-modules-win32 git clone lua-modules-cd-tool lua-modules-cd-tool-win32 git clone lua-modules-iup lua-modules-iup-win32 git clone LuaJIT LuaJIT-win32 ############################### ################################# ## prepare darwin9 compilation ## ## skip if you don't want it ## ################################# git clone lua-interface lua-interface-darwin9 git clone lua-modules lua-modules-darwin9 git clone lua-modules-cd-tool lua-modules-cd-tool-darwin9 git clone lua-modules-iup lua-modules-iup-darwin9 ln -s ../lua-interface-darwin9/lua-interface.dylib lua-modules-darwin9 ln -s ../lua-interface-darwin9/lua-interface.dylib lua-modules-cd-tool-darwin9 ln -s ../lua-interface-darwin9/lua-interface.dylib lua-modules-iup-darwin9 git clone LuaJIT LuaJIT-darwin9 ############################### cd LuaJIT make BUILDMODE=static || exit -1 cd .. cd lua-interface colormake || exit -1 ./lua-interface -e 'print "Hello, world!"' cp lua-interface luac ../lua-interface-distrib/linux cd .. cd lua-modules cp ../lua-interface/lua-interface.so . colormake || exit -1 cp *.so ../lua-interface-distrib/linux cd .. cd lua-modules-cd-tool cp ../lua-interface/lua-interface.so . colormake || exit -1 cp *.so ../lua-interface-distrib/linux cd .. cd lua-modules-iup cp ../lua-interface/lua-interface.so . colormake || exit -1 cp *.so ../lua-interface-distrib/linux cd .. ######################################## ## linux version done - next is win32 ## ######################################## tar xvfz Mesa-7.0.3-osmesa-win32-precomp.tar.gz tar xvfz ftgl-win32-precomp.tar.gz tar xvfz freetype-win32-precomp.tar.gz tar xvfz mysql-5.0.51b-win32-precomp.tar.gz tar xvfz pthreads-w32-2-8-0-release-win32-precomp.tar.gz tar xvfz gnuwin32-digested-tar.gz gunzip libreadline-static.a.gz mkdir -p lua-interface-distrib/win32 mkdir -p lua-interface-distrib/win32-light cd LuaJIT-win32 make CROSS=i586-mingw32msvc- TARGET_SYS=Windows BUILDMODE=static || exit -1 cd .. cd lua-interface-win32 make -f Makefile.mingw32 || exit -1 cp *.exe *.dll ../lua-interface-distrib/win32 cd .. cd lua-modules-win32 make -f Makefile.mingw32 || exit -1 cp *.dll ../lua-interface-distrib/win32 cd .. cd lua-modules-cd-tool-win32 make -f Makefile.mingw32 || exit -1 cp *.dll ../lua-interface-distrib/win32 cd .. cd lua-modules-iup-win32 make -f Makefile.mingw32 || exit -1 cp *.dll ../lua-interface-distrib/win32 cd .. cd lua-interface-win32-light make -f Makefile.mingw32 lua-interface-light.exe || exit -1 cp *.exe *.dll ../lua-interface-distrib/win32-light cd .. cp win32-dlls/* lua-interface-distrib/win32 ########################################## ## win32 version done - next is darwin9 ## ########################################## tar xvfz Mesa-7.4.4-osmesa-darwin9-precomp.tar.gz mkdir -p lua-interface-distrib/darwin9 cd LuaJIT-darwin9 make CROSS=i686-apple-darwin9- TARGET_SYS=Darwin BUILDMODE=static TARGET_XLDOPTS=-mmacosx-version-min=10.5 || exit -1 cd .. cd lua-interface-darwin9 SYSTEM=Darwin make || exit -1 cp lua-interface *.dylib ../lua-interface-distrib/darwin9 cd .. cd lua-modules-darwin9 SYSTEM=Darwin make || exit -1 cp *.dylib ../lua-interface-distrib/darwin9 cd .. cd lua-modules-cd-tool-darwin9 SYSTEM=Darwin make || exit -1 cp *.dylib ../lua-interface-distrib/darwin9 cd .. cd lua-modules-iup-darwin9 SYSTEM=Darwin make || exit -1 cp *.dylib ../lua-interface-distrib/darwin9 cd .. ########################## ## All done, packing up ## ########################## cp lua-interface/lua-interface.lua lua-interface-distrib/linux cp lua-interface/lua-interface.lua lua-interface-distrib/win32 cp lua-interface/lua-interface.lua lua-interface-distrib/win32-light cp lua-interface/lua-interface.lua lua-interface-distrib/darwin9 cp PSX-Bundle/COPYING Baltisot/AUTHORS lua-interface-distrib/linux cp PSX-Bundle/COPYING Baltisot/AUTHORS lua-interface-distrib/win32 cp PSX-Bundle/COPYING Baltisot/AUTHORS lua-interface-distrib/win32-light cp PSX-Bundle/COPYING Baltisot/AUTHORS lua-interface-distrib/darwin9 cp lua-interface-distrib/win32/luacd.dll lua-interface-distrib/win32-light cp lua-interface-distrib/win32/luapsx.dll lua-interface-distrib/win32-light cp lua-interface-distrib/win32/pthreadGC2.dll lua-interface-distrib/win32-light cp lua-interface-distrib/win32/ucl1.dll lua-interface-distrib/win32-light cp lua-interface-distrib/win32/zlib1.dll lua-interface-distrib/win32-light cd lua-interface-distrib mv linux lua-interface strip --strip-unneeded lua-interface/* zip -r lua-interface-linux.zip lua-interface mv lua-interface linux mv win32 lua-interface i586-mingw32msvc-strip --strip-unneeded lua-interface/* zip -r lua-interface-win32.zip lua-interface mv lua-interface win32 mv win32-light lua-interface-light i586-mingw32msvc-strip --strip-unneeded lua-interface-light/* zip -r lua-interface-win32-light.zip lua-interface-light mv lua-interface-light win32-light mv darwin9 lua-interface i686-apple-darwin9-strip -x lua-interface/* rm lua-interface/lua-interface-mesa.dylib zip -r lua-interface-darwin9.zip lua-interface mv lua-interface darwin9