From 6ea139d3259d0495d30a6a558876a431c77d3d30 Mon Sep 17 00:00:00 2001 From: pixel Date: Sun, 18 Jul 2004 15:22:43 +0000 Subject: Adding compilation facilities --- compile/Makefile | 10 ++++ compile/linux/Makefile | 139 +++++++++++++++++++++++++++++++++++++++++++++++++ compile/win32/Makefile | 133 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 282 insertions(+) create mode 100644 compile/Makefile create mode 100644 compile/linux/Makefile create mode 100644 compile/win32/Makefile diff --git a/compile/Makefile b/compile/Makefile new file mode 100644 index 0000000..0b4f2b3 --- /dev/null +++ b/compile/Makefile @@ -0,0 +1,10 @@ +all: + make -C win32 dist + make -C linux dist + +clean: + rm -f *.zip + make -C win32 clean + make -C linux clean + +rebuild: clean all diff --git a/compile/linux/Makefile b/compile/linux/Makefile new file mode 100644 index 0000000..03956b0 --- /dev/null +++ b/compile/linux/Makefile @@ -0,0 +1,139 @@ +CC = gcc +CXX = g++ +LD = g++ +STRIP = strip --strip-all + +INCLUDES = -I../../includes -I../../psxdev -I../../generic/include \ +-I../../generic/lib/zlib/include \ +-I../../generic/lib/lua/include -I../../generic/lib/lua/includes \ +-I../../mogltk/include \ +`sdl-config --cflags` + +CPPFLAGS = $(INCLUDES) -O4 -march=i686 -DSTDC_HEADERS -DREADLINE_STATIC -DHAVE_UNISTD_H + +LDFLAGS = -march=i586 -O4 `sdl-config --libs` + +SOURCES = \ +../../Dalos/Dalos.cc ../../cd-tool.cpp + +MOGLTK_SOURCES = \ +../../mogltk/lib/base.cc ../../mogltk/lib/glwidgets.cc \ +../../mogltk/lib/engine.cc ../../mogltk/lib/mcolor.cc \ +../../mogltk/lib/font.cc ../../mogltk/lib/shape.cc \ +../../mogltk/lib/glbase.cc ../../mogltk/lib/sprite.cc \ +../../mogltk/lib/glfont.cc ../../mogltk/lib/texture.cc \ +../../mogltk/lib/glshape.cc ../../mogltk/lib/widgets.cc \ +../../mogltk/lib/glsprite.cc + +BALTISOT_SOURCES = \ +../../generic/lib/Image.cc ../../generic/lib/Main.cc \ +../../generic/lib/BLua.cc ../../generic/lib/Buffer.cc \ +../../generic/lib/ConfigFile.cc ../../generic/lib/Output.cc \ +../../generic/lib/Exceptions.cc ../../generic/lib/Regex.cc \ +../../generic/lib/Handle.cc ../../generic/lib/String.cc \ +../../generic/lib/Input.cc ../../generic/lib/fileutils.cc \ +../../generic/lib/LuaHandle.cc ../../generic/lib/generic.cc \ +../../generic/lib/checkargs.c ../../generic/lib/datecalc.c + +ZLIB_SOURCES = \ +../../generic/lib/zlib/src/adler32.c ../../generic/lib/zlib/src/inffast.c \ +../../generic/lib/zlib/src/compress.c ../../generic/lib/zlib/src/inflate.c \ +../../generic/lib/zlib/src/crc32.c ../../generic/lib/zlib/src/inftrees.c \ +../../generic/lib/zlib/src/deflate.c ../../generic/lib/zlib/src/infutil.c \ +../../generic/lib/zlib/src/gzio.c ../../generic/lib/zlib/src/trees.c \ +../../generic/lib/zlib/src/infblock.c ../../generic/lib/zlib/src/uncompr.c \ +../../generic/lib/zlib/src/infcodes.c ../../generic/lib/zlib/src/zutil.c + +LUA_SOURCES = \ +../../generic/lib/lua/src/lapi.c ../../generic/lib/lua/src/lparser.c \ +../../generic/lib/lua/src/lcode.c ../../generic/lib/lua/src/lstate.c \ +../../generic/lib/lua/src/ldebug.c ../../generic/lib/lua/src/lstring.c \ +../../generic/lib/lua/src/ldo.c ../../generic/lib/lua/src/ltable.c \ +../../generic/lib/lua/src/ldump.c ../../generic/lib/lua/src/ltests.c \ +../../generic/lib/lua/src/lfunc.c ../../generic/lib/lua/src/ltm.c \ +../../generic/lib/lua/src/lgc.c ../../generic/lib/lua/src/luacomp.c \ +../../generic/lib/lua/src/llex.c ../../generic/lib/lua/src/lundump.c \ +../../generic/lib/lua/src/lmem.c ../../generic/lib/lua/src/lvm.c \ +../../generic/lib/lua/src/lobject.c ../../generic/lib/lua/src/lzio.c \ +../../generic/lib/lua/src/lopcodes.c \ +../../generic/lib/lua/src/LuaLib/lauxlib.c \ +../../generic/lib/lua/src/LuaLib/lbaselib.c \ +../../generic/lib/lua/src/LuaLib/ldblib.c \ +../../generic/lib/lua/src/LuaLib/liolib.c \ +../../generic/lib/lua/src/LuaLib/lmathlib.c \ +../../generic/lib/lua/src/LuaLib/loadlib.c \ +../../generic/lib/lua/src/LuaLib/lstrlib.c \ +../../generic/lib/lua/src/LuaLib/ltablib.c + +PSX_SOURCES = \ +../../lib/cdabstract.cpp ../../lib/luacd.cpp \ +../../lib/cdreader.cpp ../../lib/luapsx.cpp \ +../../lib/cdutils.cpp ../../lib/lzss.cpp \ + ../../lib/yazedc.cpp ../../lib/isobuilder.cpp + +PSXDEV_SOURCES = \ +../../psxdev/bs.c ../../psxdev/jfdctint.c ../../psxdev/xadecode.c \ +../../psxdev/idctfst.c ../../psxdev/vlc.c + +COMMON_SOURCES = \ +$(BALTISOT_SOURCES) $(ZLIB_SOURCES) $(REGEX_SOURCES) $(GETOPT_SOURCES)\ +$(LUA_SOURCES) $(PSX_SOURCES) $(PSXDEV_SOURCES) $(READLINE_SOURCES) + +WHOLE_SOURCES = $(SOURCES) $(COMMON_SOURCES) $(MOGLTK_SOURCES) + +ALL_OBJECTS = $(addsuffix .o, $(notdir $(basename $(WHOLE_SOURCES)))) + +DALOS_OBJECTS = $(addsuffix .o, $(notdir $(basename $(COMMON_SOURCES) $(MOGLTK_SOURCES)))) Dalos.o + +CD_TOOL_OBJECTS = $(addsuffix .o, $(notdir $(basename $(COMMON_SOURCES)))) cd-tool.o + +all: cd-tool cd-tool-static + +stats: + @wc $(WHOLE_SOURCES) + +dist: all ../../cd-tool.lua ../../FAQ-cd.txt ../../COPYING + zip -j9 ../cd-tool-`date +%Y%m%d`-linux-dynamic.zip cd-tool ../../cd-tool.lua ../../FAQ-cd.txt ../../COPYING + zip -j9 ../cd-tool-`date +%Y%m%d`-linux-static.zip cd-tool-static ../../cd-tool.lua ../../FAQ-cd.txt ../../COPYING + #zip -j9 ../Dalos-`date +%Y%m%d`-linux-dynamic.zip Dalos ../../COPYING + #zip -j9 ../Dalos-`date +%Y%m%d`-linux-static.zip Dalos-static ../../COPYING + +Dalos: $(DALOS_OBJECTS) + $(LD) $(LDFLAGS) -o Dalos $(DALOS_OBJECTS) -lGL -lGLU + $(STRIP) Dalos + upx-nrv Dalos + cat ../../Dalos/Dalos.paq >> Dalos + +Dalos-static: $(DALOS_OBJECTS) + $(LD) $(LDFLAGS) -o Dalos-static $(DALOS_OBJECTS) -lGL -lGLU -static + $(STRIP) Dalos-static + #upx-nrv Dalos-static + cat ../../Dalos/Dalos.paq >> Dalos-static + +cd-tool: $(CD_TOOL_OBJECTS) + $(LD) $(LDFLAGS) -o cd-tool $(CD_TOOL_OBJECTS) -lreadline -lncurses + $(STRIP) cd-tool + upx-nrv cd-tool + +cd-tool-static: $(CD_TOOL_OBJECTS) + $(LD) $(LDFLAGS) -o cd-tool-static $(CD_TOOL_OBJECTS) -lreadline -lncurses -static + $(STRIP) cd-tool-static + upx-nrv cd-tool-static + +clean: + rm -f *.exe *.o + + + + +define OBJECT_C_template + $(addsuffix .o, $(notdir $(basename $(1)))): $(src) + $$(CC) $$(CPPFLAGS) $$(CFLAGS) -c $(src) +endef + +define OBJECT_CXX_template + $(addsuffix .o, $(notdir $(basename $(1)))): $(src) + $$(CXX) $$(CPPFLAGS) $$(CXXFLAGS) -c $(src) +endef + +$(foreach src, $(WHOLE_SOURCES), $(if $(filter %.c, $(src)), $(eval $(call OBJECT_C_template, $(src))), $(eval $(call OBJECT_CXX_template, $(src))))) diff --git a/compile/win32/Makefile b/compile/win32/Makefile new file mode 100644 index 0000000..d1e19d7 --- /dev/null +++ b/compile/win32/Makefile @@ -0,0 +1,133 @@ +CC = i586-mingw32msvc-gcc +CXX = i586-mingw32msvc-g++ +LD = i586-mingw32msvc-g++ +STRIP = i586-mingw32msvc-strip + +INCLUDES = -I../../includes -I../../psxdev -I../../generic/include \ +-I../../MSVC/regex -I../../MSVC/readline -I../../MSVC/getopt -I../../MSVC \ +-I../../generic/lib/zlib/include \ +-I../../generic/lib/lua/include -I../../generic/lib/lua/includes \ +-I../../mogltk/include \ +-I/usr/local/cross-tools/i386-mingw32msvc/include/SDL + +CPPFLAGS = $(INCLUDES) -O4 -march=i686 -DSTDC_HEADERS -DREADLINE_STATIC + +LDFLAGS = -march=i586 -O4 + +SOURCES = \ +../../Dalos/Dalos.cc ../../cd-tool.cpp + +MOGLTK_SOURCES = \ +../../mogltk/lib/base.cc ../../mogltk/lib/glwidgets.cc \ +../../mogltk/lib/engine.cc ../../mogltk/lib/mcolor.cc \ +../../mogltk/lib/font.cc ../../mogltk/lib/shape.cc \ +../../mogltk/lib/glbase.cc ../../mogltk/lib/sprite.cc \ +../../mogltk/lib/glfont.cc ../../mogltk/lib/texture.cc \ +../../mogltk/lib/glshape.cc ../../mogltk/lib/widgets.cc \ +../../mogltk/lib/glsprite.cc + +BALTISOT_SOURCES = \ +../../generic/lib/Image.cc ../../generic/lib/Main.cc \ +../../generic/lib/BLua.cc ../../generic/lib/Buffer.cc \ +../../generic/lib/ConfigFile.cc ../../generic/lib/Output.cc \ +../../generic/lib/Exceptions.cc ../../generic/lib/Regex.cc \ +../../generic/lib/Handle.cc ../../generic/lib/String.cc \ +../../generic/lib/Input.cc ../../generic/lib/fileutils.cc \ +../../generic/lib/LuaHandle.cc ../../generic/lib/generic.cc \ +../../generic/lib/checkargs.c ../../generic/lib/datecalc.c + +ZLIB_SOURCES = \ +../../generic/lib/zlib/src/adler32.c ../../generic/lib/zlib/src/inffast.c \ +../../generic/lib/zlib/src/compress.c ../../generic/lib/zlib/src/inflate.c \ +../../generic/lib/zlib/src/crc32.c ../../generic/lib/zlib/src/inftrees.c \ +../../generic/lib/zlib/src/deflate.c ../../generic/lib/zlib/src/infutil.c \ +../../generic/lib/zlib/src/gzio.c ../../generic/lib/zlib/src/trees.c \ +../../generic/lib/zlib/src/infblock.c ../../generic/lib/zlib/src/uncompr.c \ +../../generic/lib/zlib/src/infcodes.c ../../generic/lib/zlib/src/zutil.c + +LUA_SOURCES = \ +../../generic/lib/lua/src/lapi.c ../../generic/lib/lua/src/lparser.c \ +../../generic/lib/lua/src/lcode.c ../../generic/lib/lua/src/lstate.c \ +../../generic/lib/lua/src/ldebug.c ../../generic/lib/lua/src/lstring.c \ +../../generic/lib/lua/src/ldo.c ../../generic/lib/lua/src/ltable.c \ +../../generic/lib/lua/src/ldump.c ../../generic/lib/lua/src/ltests.c \ +../../generic/lib/lua/src/lfunc.c ../../generic/lib/lua/src/ltm.c \ +../../generic/lib/lua/src/lgc.c ../../generic/lib/lua/src/luacomp.c \ +../../generic/lib/lua/src/llex.c ../../generic/lib/lua/src/lundump.c \ +../../generic/lib/lua/src/lmem.c ../../generic/lib/lua/src/lvm.c \ +../../generic/lib/lua/src/lobject.c ../../generic/lib/lua/src/lzio.c \ +../../generic/lib/lua/src/lopcodes.c \ +../../generic/lib/lua/src/LuaLib/lauxlib.c \ +../../generic/lib/lua/src/LuaLib/lbaselib.c \ +../../generic/lib/lua/src/LuaLib/ldblib.c \ +../../generic/lib/lua/src/LuaLib/liolib.c \ +../../generic/lib/lua/src/LuaLib/lmathlib.c \ +../../generic/lib/lua/src/LuaLib/loadlib.c \ +../../generic/lib/lua/src/LuaLib/lstrlib.c \ +../../generic/lib/lua/src/LuaLib/ltablib.c + +PSX_SOURCES = \ +../../lib/cdabstract.cpp ../../lib/luacd.cpp \ +../../lib/cdreader.cpp ../../lib/luapsx.cpp \ +../../lib/cdutils.cpp ../../lib/lzss.cpp \ + ../../lib/yazedc.cpp ../../lib/isobuilder.cpp + +PSXDEV_SOURCES = \ +../../psxdev/bs.c ../../psxdev/jfdctint.c ../../psxdev/xadecode.c \ +../../psxdev/idctfst.c ../../psxdev/vlc.c + +REGEX_SOURCES = \ +../../MSVC/regex/regex.c + +GETOPT_SOURCES = \ +../../MSVC/getopt/getopt.c ../../MSVC/getopt/getopt1.c + +COMMON_SOURCES = \ +$(BALTISOT_SOURCES) $(ZLIB_SOURCES) $(REGEX_SOURCES) $(GETOPT_SOURCES)\ +$(LUA_SOURCES) $(PSX_SOURCES) $(PSXDEV_SOURCES) $(READLINE_SOURCES) + +WHOLE_SOURCES = $(SOURCES) $(COMMON_SOURCES) $(MOGLTK_SOURCES) + +ALL_OBJECTS = $(addsuffix .o, $(notdir $(basename $(WHOLE_SOURCES)))) + +DALOS_OBJECTS = $(addsuffix .o, $(notdir $(basename $(COMMON_SOURCES) $(MOGLTK_SOURCES)))) Dalos.o + +CD_TOOL_OBJECTS = $(addsuffix .o, $(notdir $(basename $(COMMON_SOURCES)))) cd-tool.o + +all: cd-tool.exe Dalos.exe + +stats: + @wc $(WHOLE_SOURCES) + +dist: all SDL.dll ../../cd-tool.lua ../../COPYING ../../FAQ-cd.txt + zip -j9 ../cd-tool-`date +%Y%m%d`-win32.zip cd-tool.exe ../../cd-tool.lua ../../FAQ-cd.txt ../../COPYING + zip -j9 ../Dalos-`date +%Y%m%d`-win32.zip Dalos.exe ../../COPYING + +Dalos.exe: $(DALOS_OBJECTS) + $(LD) $(LDFLAGS) -o Dalos.exe $(DALOS_OBJECTS) -lmingw32 -L/usr/local/cross-tools/i386-mingw32msvc/lib -lmingw32 -lSDLmain -lSDL -mwindows -lopengl32 -lglu32 + $(STRIP) Dalos.exe + upx-nrv Dalos.exe + cat ../../Dalos/Dalos.paq >> Dalos.exe + +cd-tool.exe: $(CD_TOOL_OBJECTS) + $(LD) $(LDFLAGS) -o cd-tool.exe $(CD_TOOL_OBJECTS) ../../libreadline-static.a -mconsole + $(STRIP) cd-tool.exe + upx-nrv cd-tool.exe + +clean: + rm -f *.exe *.o + + + + +define OBJECT_C_template + $(addsuffix .o, $(notdir $(basename $(1)))): $(src) + $$(CC) $$(CPPFLAGS) $$(CFLAGS) -c $(src) +endef + +define OBJECT_CXX_template + $(addsuffix .o, $(notdir $(basename $(1)))): $(src) + $$(CXX) $$(CPPFLAGS) $$(CXXFLAGS) -c $(src) +endef + +$(foreach src, $(WHOLE_SOURCES), $(if $(filter %.c, $(src)), $(eval $(call OBJECT_C_template, $(src))), $(eval $(call OBJECT_CXX_template, $(src))))) -- cgit v1.2.3