OBJECT=mx/args.cpp mx/mxclamp.cpp mx/mxinterface.cpp mx/mxsurface.cpp mx/colorVector.cpp mx/mxwnd.cpp mx/mx_types.cpp mx/mxpng.cpp SYSTEM=system/system.cpp main.cpp MASCFILES=masc/masc++.cpp masc/masclist.cpp masc/mascparse.cpp masc/mascsym.cpp masc/maschash.cpp SDLPATH= EXENAME=freeES CFLAGS= -Wall -I./mxf -I./masc -I/usr/local/include `$(SDLPATH)sdl-config --cflags` LDFLAGS= /usr/local/lib/libmxl.a -lpng ./libmxf.so ./masc.so `$(SDLPATH)sdl-config --libs` -lz CC=g++ : binary: masc.so libmxf.so @echo "NOTE you must compile and install the libmxl shared module, before you can compile this" @echo "it can be found @ http://lostsidedead.com/svn or simply check out with subversion" @echo "svn co svn://lostsidedead.com/mxl" @echo "follow the instructions in the apps readme" @echo "Now back to compilation:" for i in $(OBJECT); do tempstr=` echo $$i | sed -e 's/.cpp/.o/g'`; if $(CC) $(CFLAGS) $$i -c -o $$tempstr; then echo "successfully compiled: $$i"; else exit 1; fi done objstr=` echo $(OBJECT) | sed -e "s/.cpp/.o/g"`; echo "Linking mx shared object ( " $$objstr " )"; if $(CC) -shared -o libmx.so $$objstr $(LDFLAGS); then echo " linking libmx.so successfull "; else exit 1; fi $(CC) $(SYSTEM) $(CFLAGS) -o $(EXENAME) $(LDFLAGS) ./libmx.so # strip --strip-unneeded $(EXENAME) all: binary dash tac updater settings mxpi clean: objstr=` echo $(OBJECT) | sed -e "s/.cpp/.o/g"`; rm -rf *.o $$objstr $(EXENAME) libmxf.so masc.so mxp-i *~; echo "removed: " $$objstr ", " $(EXENAME) libmxf.so masc.so mxp-i masc.so: $(CC) -shared -o masc.so $(MASCFILES) libmxf.so: $(CC) -shared -o libmxf.so `$(SDLPATH)sdl-config --cflags` mxf/pixelbuffer.cpp mxf/mxfont.cpp dash: $(CC) -shared -o plugins/dash/dash.lsd -I./masc -I./mxf `$(SDLPATH)sdl-config --cflags` plugins/dash/dash.cpp plugins/dash/dashmenu.cpp tac: $(CC) -shared -o plugins/tictactoe/tac.lsd -I./mxf `$(SDLPATH)sdl-config --cflags` plugins/tictactoe/tac.cpp updater: $(CC) -shared -o plugins/updater/updater.lsd -DPLINUX -I./mxf `$(SDLPATH)sdl-config --cflags` plugins/updater/update.cpp settings: $(CC) -shared -o plugins/settings/settings.lsd -I./mxf -I./masc `$(SDLPATH)sdl-config --cflags` plugins/settings/settings.cpp mxpi: $(CC) -DLINUX mxp/mxp.cpp -c -o mxp/mxp.o -I./mx -I./masc $(CC) -DLINUX $(MASCFILES) -c $(CC) -static -DLINUX mxp/mxp.o mx/mxclamp.o mx/args.o mx/mx_types.o masc++.o -o mxp-i -lz demos: make --directory=devkit/alpha make --directory=devkit/acid make --directory=devkit/console make --directory=devkit/installer make --directory=devkit/mxlview make --directory=devkit/roadkill make --directory=devkit/thoughtmatrix make --directory=devkit/mxplugin make --directory=devkit/mp complete: all demos package: all mxpi demos rm -rf ./es mkdir -p ./es mkdir -p ./es/packages mkdir -p ./es/data mkdir -p ./es/plugins mkdir -p ./es/plugins/dash mkdir -p ./es/plugins/tictactoe mkdir -p ./es/plugins/updater mkdir -p ./es/plugins/settings mkdir -p ./es/plugins/alpha mkdir -p ./es/plugins/acid mkdir -p ./es/plugins/console mkdir -p ./es/plugins/mxlview mkdir -p ./es/plugins/roadkill mkdir -p ./es/plugins/installer mkdir -p ./es/plugins/thoughtmatrix mkdir -p ./es/plugins/mxplugin mkdir -p ./es/plugins/mp # required cp -rfv libmxf.so ./es cp -rfv ./mxp-i ./es cp -rfv masc.so ./es cp -rfv libmx.so ./es cp -rfv $(EXENAME) ./es # cp -rfv /usr/local/lib/libmxl*.so ./es cp -rfv data/* ./es/data #default plugin cp -rfv plugins/dash/dash.lsd ./es/plugins/dash/dash.lsd # other plugins cp -rfv plugins/tictactoe/tac.lsd ./es/plugins/tictactoe/tac.lsd cp -rfv plugins/updater/updater.lsd ./es/plugins/updater/updater.lsd cp -rfv plugins/settings/settings.lsd ./es/plugins/settings/settings.lsd cp -rfv devkit/alpha/alpha.lsd ./es/plugins/alpha/alpha.lsd cp -rfv devkit/acid/acid.lsd ./es/plugins/acid/acid.lsd cp -rfv devkit/console/Console.lsd ./es/plugins/console/Console.lsd cp -rfv devkit/mxlview/mxlview.lsd ./es/plugins/mxlview/mxlview.lsd cp -rfv devkit/roadkill/road.lsd ./es/plugins/roadkill/road.lsd cp -rfv devkit/installer/installer.lsd ./es/plugins/installer/installer.lsd cp -rfv devkit/thoughtmatrix/thoughtmatrix.lsd ./es/plugins/thoughtmatrix/thoughtmatrix.lsd cp -rfv devkit/mxplugin/mxplugin.lsd ./es/plugins/mxplugin/mxplugin.lsd cp -rfv devkit/mp/mp.lsd ./es/plugins/mp/mp.lsd find ./es/data -name .svn -print0 | xargs -0 rm -rf tar -czvf lES.tar.gz ./es @echo "package: lES.tar.gz created"