* moved zeroradiant (1.6) into trunk
[xonotic/netradiant.git] / radiant / Makefile.mac
1 ## Makefile for GtkRadiant\r
2 \r
3 ifeq ($(DEBUG),1) \r
4 DEBUG=true\r
5 else\r
6 DEBUG=false\r
7 endif\r
8 \r
9 CC=gcc\r
10 CPPFLAGS=-I../libs -I../include `gtk-config --cflags` `xml-config --cflags` -I/usr/X11R6/include -Wall -DQUAKE3\r
11 LDFLAGS=`xml-config --libs` \r
12 DATE=`date +%m%d`\r
13 ZIP=radiant-src.$(DATE).tgz\r
14 LIBS=../libs/cmdlib.a ../libs/pak.a ../libs/jpeg6.a ../libs/l_net.a\r
15 OUTDIR=$(RADIANT_DATA)\r
16 \r
17 LDFLAGS += $(subst -rdynamic,,$(shell gtk-config --libs))  -lGL /usr/local/lib/libdl.a\r
18 \r
19 ifeq ($(DEBUG), false)\r
20 CPPFLAGS += -O3 -DNDEBUG\r
21 else\r
22 CPPFLAGS += -g -D_DEBUG\r
23 endif\r
24 \r
25 CFLAGS=$(CPPFLAGS)\r
26 \r
27 SRC= glwidget.cpp qgl.c bmp.cpp brush.cpp brush_primit.cpp brushscript.cpp camwindow.cpp \\r
28      csg.cpp dialog.cpp dialoginfo.cpp drag.cpp eclass.cpp entity.cpp file.cpp \\r
29      findtexturedialog.cpp glinterface.cpp glwindow.cpp groupdialog.cpp gtkdlgs.cpp \\r
30      gtkmisc.cpp iepairs.cpp ishaders.cpp lbmlib.cpp \\r
31      main.cpp mainframe.cpp map.cpp mathlib.cpp messaging.cpp missing.cpp parse.cpp \\r
32      patchdialog.cpp plugin.cpp pluginentities.cpp pluginmanager.cpp pmesh.cpp \\r
33      points.cpp preferences.cpp profile.cpp qe3.cpp select.cpp \\r
34      selectedface.cpp shaderinfo.cpp surfacedialog.cpp surfaceplugin.cpp \\r
35      texwindow.cpp undo.cpp vertsel.cpp watchbsp.cpp winding.cpp xywindow.cpp \\r
36      z.cpp zwindow.cpp feedback.cpp gtkfilesel-darwin.c\r
37 \r
38 # TA_HACK\r
39 SRC += vfs.cpp\r
40 \r
41 OBJS := \\r
42   $(patsubst %.c,%.o,$(filter %.c,$(SRC))) \\r
43   $(patsubst %.cpp,%.o,$(filter %.cpp,$(SRC)))\r
44 \r
45 all: radiant\r
46 \r
47 help:\r
48         @echo 'Use "make DEBUG=0" or "export DEBUG=1; make" for release builds'\r
49 \r
50 radiant: $(OBJS) $(LIBS)\r
51         $(CC) -o radiant $(OBJS) $(LDFLAGS) $(LIBS)\r
52         @if [ -d $(OUTDIR) ]; then cp radiant $(OUTDIR); fi\r
53 \r
54 # Other targets\r
55 .PHONY: clean veryclean\r
56 \r
57 clean:\r
58         rm -f *.o *.d radiant core\r
59 \r
60 veryclean: clean\r
61         find libs -name \*.o | xargs rm -f\r
62         rm -f libs/*.a \r
63 \r
64 zip: veryclean\r
65         cd .. && tar -zcf $(ZIP) radiant\r
66 \r
67 ## Dependencies\r
68 \r
69 -include $(OBJS:.o=.d)\r
70 \r
71 ## Libraries\r
72 \r
73 ../libs/cmdlib.a:\r
74         cd ../libs/cmdlib && make\r
75 \r
76 ../libs/pak.a:\r
77         cd ../libs/pak && make\r
78 \r
79 ../libs/jpeg6.a:\r
80         cd ../libs/jpeg6 && make\r
81 \r
82 ../libs/l_net.a:\r
83         cd ../libs/l_net && make\r
84 \r
85 libs:\r
86         cd ../libs/cmdlib && $(MAKE) clean && $(MAKE) DEBUG=$(DEBUG)\r
87         cd ../libs/pak && $(MAKE) clean && $(MAKE) DEBUG=$(DEBUG)\r
88         cd ../libs/l_net && $(MAKE) clean && $(MAKE) DEBUG=$(DEBUG)\r
89 \r
90 tools:\r
91         cd ../q3tools/q3map && $(MAKE) clean && $(MAKE) DEBUG=$(DEBUG)\r