summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorJoJoBond <jojobond@hotmail.com>2010-11-05 21:28:04 (GMT)
committer JoJoBond <jojobond@hotmail.com>2010-11-05 21:28:04 (GMT)
commit891774a7e2935a2e82eba8dd51a8f9782b407149 (patch)
tree75399c741be7486e42e88d4d5c88089a4ceb9c2d /Makefile
parent9b8acd9259f67c9efa8125538c91b6108e4155d3 (diff)
parent6124922b9f47003e4935580d792b7ba3b8ba1ede (diff)
downloadpowder-891774a7e2935a2e82eba8dd51a8f9782b407149.zip
powder-891774a7e2935a2e82eba8dd51a8f9782b407149.tar.gz
Merge branch 'master' of github.com:JoJoBond/The-Powder-Toy
Diffstat (limited to 'Makefile')
-rwxr-xr-xMakefile62
1 files changed, 62 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100755
index 0000000..eca90db
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,62 @@
+SOURCES := src/*.c
+
+CFLAGS := -Wall -std=c99 -D_POSIX_C_SOURCE=200112L -Iincludes/
+OFLAGS := -O3 -ffast-math -ftree-vectorize -funsafe-math-optimizations
+LFLAGS := -lSDL -lm -lbz2
+MFLAGS_SSE3 := -march=native -DX86 -DX86_SSE3 -msse3
+MFLAGS_SSE2 := -march=native-DX86 -DX86_SSE2 -msse2
+MFLAGS_SSE := -march=native -DX86 -DX86_SSE
+FLAGS_DBUG := -Wall -std=c99 -D_POSIX_C_SOURCE=200112L -pg -DX86 -DX86_SSE3 -msse3 -lSDL -lm -lbz2 -g
+COMPILER := gcc
+LINUX_TARG := powder-64-sse2 powder-sse powder-sse2
+WIN32_TARG := powder-sse.exe powder-sse2.exe
+
+powder: $(SOURCES)
+ $(COMPILER) -DINTERNAL -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64
+powder-debug-64: $(SOURCES)
+ $(COMPILER) -m64 -o$@ $(FLAGS_DBUG) -DLIN64 $(SOURCES) -Iincludes/
+powder-debug: $(SOURCES)
+ $(COMPILER) -m32 -o$@ $(FLAGS_DBUG) -DLIN32 $(SOURCES) -Iincludes/
+powder-sse3: $(SOURCES)
+ $(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN32
+ strip $@
+ mv $@ build
+powder-sse2: $(SOURCES)
+ $(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE2) $(SOURCES) -DLIN32
+ strip $@
+powder-sse: $(SOURCES)
+ $(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE) $(SOURCES) -DLIN32
+ strip $@
+powder-64-sse3-opengl: $(SOURCES)
+ $(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64 -lGL -lGLU -DOpenGL
+ strip $@
+powder-64-sse3: $(SOURCES)
+ $(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64
+ strip $@
+ mv $@ build
+powder-64-sse2: $(SOURCES)
+ $(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE2) $(SOURCES) -DLIN64
+ strip $@
+
+powder-res.o: powder-res.rc powder.ico
+ i586-mingw32msvc-windres powder-res.rc powder-res.o
+
+powder-sse3.exe: $(SOURCES) powder-res.o
+ i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE3) $(SOURCES) powder-res.o -lmingw32 -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
+ strip $@
+ chmod 0644 $@
+powder-sse2.exe: $(SOURCES) powder-res.o
+ i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE2) $(SOURCES) powder-res.o -lmingw32 -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
+ strip $@
+ chmod 0644 $@
+powder-sse.exe: $(SOURCES) powder-res.o
+ i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE) $(SOURCES) powder-res.o -lmingw32 -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
+ strip $@
+ chmod 0644 $@
+
+powder-x: $(SOURCES)
+ gcc -o $@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS) $(SOURCES) -lSDLmain -DMACOSX -DPIX32BGRA -arch x86_64 -framework Cocoa -ggdb
+ strip $@
+powder-x-ogl: $(SOURCES)
+ gcc -o $@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS) $(SOURCES) -lSDLmain -DOpenGL -DMACOSX -DPIX32BGRA -arch x86_64 -framework Cocoa -framework OpenGL -ggdb
+ strip $@