This is a fun one ;)
[blender.git] / source / blender / src / Makefile
1 #
2 # $Id$
3 #
4 # ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
5 #
6 # This program is free software; you can redistribute it and/or
7 # modify it under the terms of the GNU General Public License
8 # as published by the Free Software Foundation; either version 2
9 # of the License, or (at your option) any later version. The Blender
10 # Foundation also sells licenses for use in proprietary software under
11 # the Blender License.  See http://www.blender.org/BL/ for information
12 # about this.
13 #
14 # This program is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 # GNU General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License
20 # along with this program; if not, write to the Free Software Foundation,
21 # Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22 #
23 # The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
24 # All rights reserved.
25 #
26 # The Original Code is: all of this file.
27 #
28 # Contributor(s): none yet.
29 #
30 # ***** END GPL/BL DUAL LICENSE BLOCK *****
31 #
32 #
33
34 ORGLIBNAME = src
35 LIBNAME ?= $(ORGLIBNAME)
36 DIR ?= $(OCGDIR)/blender/$(ORGLIBNAME)
37
38 CSRCS ?= $(wildcard *.c)
39 PUB_CSRCS ?= $(CSRCS)
40 CRE_CSRCS ?= $(CSRCS) $(wildcard cre/*.c)
41
42 OBJS = $(OCGDIR)/blender/makesdna/$(DEBUG_DIR)DNA.o
43
44 ALLTARGETS = creator publisher
45
46 include nan_compile.mk
47
48 # Cflags stuff ------------------------------------------
49
50 CFLAGS += $(LEVEL_1_C_WARNINGS) 
51 #CFLAGS += $(LEVEL_1_C_WARNINGS) -diag_error 1196
52
53 ifeq ($(OS),$(findstring $(OS), "beos darwin freebsd linux openbsd solaris windows"))
54     CFLAGS += -funsigned-char
55 endif
56
57 # PreProcessor stuff ------------------------------------------
58
59 CPPFLAGS += -I$(OPENGL_HEADERS)
60 CPPFLAGS += -I$(NAN_PYTHON)/include/python$(NAN_PYTHON_VERSION)
61 CPPFLAGS += -I$(NAN_GHOST)/include
62 CPPFLAGS += -I$(NAN_BMFONT)/include
63
64 # External interfaces of modules:
65 CPPFLAGS += -I../render/extern/include
66 CPPFLAGS += -I../renderconverter
67 CPPFLAGS += -I../blenkernel
68 CPPFLAGS += -I../blenlib
69 CPPFLAGS += -I../bpython/include
70 CPPFLAGS += -I../makesdna
71 CPPFLAGS += -I../imbuf
72 CPPFLAGS += -I../img
73 CPPFLAGS += -I../blenloader
74 CPPFLAGS += -I..
75 CPPFLAGS += -I../../kernel/gen_system
76 CPPFLAGS += -I../../gameengine/SoundSystem
77 CPPFLAGS += -I../ftfont
78
79 # Only used by py_demo.c !!!
80 CPPFLAGS += -I../radiosity/extern/include
81
82 CPPFLAGS += -I$(SRCHOME)/gameengine/Physics/Sumo/include
83 CPPFLAGS += -I$(NAN_GUARDEDALLOC)/include
84
85 CPPFLAGS += -I$(NAN_DECIMATION)/include
86 CPPFLAGS += -I$(NAN_BSP)/include
87
88 CPPFLAGS += -I../readstreamglue
89 CPPFLAGS += -I../include
90
91 ifdef NAN_BUILDINFO
92     CPPFLAGS += -DNAN_BUILDINFO
93 endif
94
95 ifeq ($(OS),linux)
96     ifeq ($(CPU),alpha)
97         CPPFLAGS += -I$(NAN_MESA)/include
98     endif
99     ifeq ($(CPU),i386)
100         CPPFLAGS += -I$(NAN_MESA)/include
101     endif
102     ifeq ($(CPU),powerpc)
103         CPPFLAGS += -I/usr/src/MesaCVS/include
104     endif
105 endif
106
107 ifeq ($(WITH_QUICKTIME),true)
108         CPPFLAGS += -I../quicktime
109         CPPFLAGS += -DWITH_QUICKTIME
110 endif
111
112 ifeq ($(INTERNATIONAL), true)
113     CPPFLAGS += -DINTERNATIONAL
114 endif