Hopefully update for NaN Makefiles for the moving of SoundSystem.
[blender.git] / source / nan_definitions.mk
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 # set some defaults when these are not overruled (?=) by environment variables
33 #
34
35 ifndef CONFIG_GUESS
36   ifeq (debug, $(findstring debug, $(MAKECMDGOALS)))
37     ifeq (all, $(findstring all, $(MAKECMDGOALS)))
38 all debug::
39       ERRTXT = "ERROR: all and debug targets cannot be used together anymore"
40       ERRTXT += "Use something like ..make all && make debug.. instead"
41       $(error $(ERRTXT))
42     endif
43   endif
44
45   # First generic defaults for all platforms which should be constant.
46   # Note: ?= lets these defaults be overruled by environment variables,
47
48     export SRCHOME ?= $(NANBLENDERHOME)/source
49     export CONFIG_GUESS := $(shell ${SRCHOME}/tools/guess/guessconfig)
50     export OS := $(shell echo ${CONFIG_GUESS} | sed -e 's/-.*//')
51     export OS_VERSION := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-//' -e 's/-[^-]*//')
52     export CPU := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-[^-]*-//')
53     export MAKE_START := $(shell date "+%H:%M:%S %d-%b-%Y")
54     export NAN_LIBDIR ?= $(NANBLENDERHOME)/../lib
55     export NAN_OBJDIR ?= $(NANBLENDERHOME)/obj
56     # Library Config_Guess DIRectory
57     export LCGDIR = $(NAN_LIBDIR)/$(CONFIG_GUESS)
58     # Object Config_Guess DIRectory
59     export OCGDIR = $(NAN_OBJDIR)/$(CONFIG_GUESS)
60     export NAN_MOTO ?= $(LCGDIR)/moto
61     export NAN_SOLID ?= $(SRCHOME)/sumo/SOLID-3.0
62     export NAN_SUMO ?= $(SRCHOME)/gameengine/Physics/Sumo
63     export NAN_FUZZICS ?= $(SRCHOME)/gameengine/Physics/Sumo/Fuzzics
64     export NAN_BLENKEY ?= $(LCGDIR)/blenkey
65     export NAN_DECIMATION ?= $(LCGDIR)/decimation
66     export NAN_GUARDEDALLOC ?= $(LCGDIR)/guardedalloc
67     export NAN_IKSOLVER ?= $(LCGDIR)/iksolver
68     export NAN_BSP ?= $(LCGDIR)/bsp
69     export NAN_SOUNDSYSTEM ?= $(LCGDIR)/SoundSystem
70     export NAN_STRING ?= $(LCGDIR)/string
71     export NAN_MEMUTIL ?= $(LCGDIR)/memutil
72     export NAN_CONTAINER ?= $(LCGDIR)/container
73     export NAN_ACTION ?= $(LCGDIR)/action
74     export NAN_IMG ?= $(LCGDIR)/img
75     export NAN_GHOST ?= $(LCGDIR)/ghost
76     export NAN_TEST_VERBOSITY ?= 1
77     export NAN_BMFONT ?= $(LCGDIR)/bmfont
78     ifeq ($(FREE_WINDOWS), true)
79       export NAN_FTGL ?= $(LCGDIR)/gcc/ftgl
80     else
81       export NAN_FTGL ?= $(LCGDIR)/ftgl
82     endif
83         export NAN_SDLLIBS ?= $(shell sdl-config --libs)
84         export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
85
86
87   # Platform Dependent settings go below:
88
89   ifeq ($(OS),beos)
90
91     export ID = $(USER)
92     export HOST = $(HOSTNAME)
93     export NAN_PYTHON ?= $(LCGDIR)/python
94     export NAN_PYTHON_VERSION ?= 2.0
95     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
96     export NAN_OPENAL ?= $(LCGDIR)/openal
97     export NAN_FMOD ?= $(LCGDIR)/fmod
98     export NAN_JPEG ?= $(LCGDIR)/jpeg
99     export NAN_PNG ?= $(LCGDIR)/png
100     export NAN_SDL ?= $(LCGDIR)/sdl
101     export NAN_ODE ?= $(LCGDIR)/ode
102     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
103     export NAN_MESA ?= /usr/src/Mesa-3.1
104     export NAN_ZLIB ?= $(LCGDIR)/zlib
105     export NAN_NSPR ?= $(LCGDIR)/nspr
106     export NAN_FREETYPE ?= $(LCGDIR)/freetype
107     export NAN_GETTEXT ?= $(LCGDIR)/gettext     
108
109     # Uncomment the following line to use Mozilla inplace of netscape
110     # CPPFLAGS +=-DMOZ_NOT_NET
111     # Location of MOZILLA/Netscape header files...
112     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
113     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
114     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
115     # if this is not set.
116
117     export NAN_BUILDINFO ?= true
118     # Be paranoid regarding library creation (do not update archives)
119     export NAN_PARANOID ?= true
120
121     # l10n
122     #export INTERNATIONAL ?= true
123
124     # enable freetype2 support for text objects
125     #export WITH_FREETYPE2 ?= true
126
127   else
128   ifeq ($(OS),darwin)
129
130     export ID = $(shell whoami)
131     export HOST = $(shell hostname -s)
132     export NAN_PYTHON ?= /sw
133     export NAN_PYTHON_VERSION ?= 2.2
134     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
135     export NAN_OPENAL ?= $(LCGDIR)/openal
136     export NAN_FMOD ?= $(LCGDIR)/fmod
137     export NAN_JPEG ?= /sw
138     export NAN_PNG ?= /sw
139     export NAN_SDL ?= $(LCGDIR)/sdl
140     export NAN_ODE ?= $(LCGDIR)/ode
141     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
142     export NAN_MESA ?= /usr/src/Mesa-3.1
143     export NAN_ZLIB ?= $(LCGDIR)/zlib
144     export NAN_NSPR ?= $(LCGDIR)/nspr
145     export NAN_FREETYPE ?= /sw
146     export NAN_GETTEXT ?= $(LCGDIR)/gettext
147
148     # Uncomment the following line to use Mozilla inplace of netscape
149     # CPPFLAGS +=-DMOZ_NOT_NET
150     # Location of MOZILLA/Netscape header files...
151     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
152     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
153     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
154     # if this is not set.
155
156     export NAN_BUILDINFO ?= true
157     # Be paranoid regarding library creation (do not update archives)
158     export NAN_PARANOID ?= true
159
160     # enable quicktime by default on OS X
161     export WITH_QUICKTIME ?= true
162
163     # enable l10n
164     export INTERNATIONAL ?= true
165
166     # enable freetype2 support for text objects
167     export WITH_FREETYPE2 ?= true
168
169   else
170   ifeq ($(OS),freebsd)
171
172     export ID = $(shell whoami)
173     export HOST = $(shell hostname -s)
174     export NAN_PYTHON ?= /usr/local
175     export NAN_PYTHON_VERSION ?= 2.2
176     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
177     export NAN_OPENAL ?= /usr/local
178     export NAN_FMOD ?= $(LCGDIR)/fmod
179     export NAN_JPEG ?= /usr/local
180     export NAN_PNG ?= /usr/local
181     export NAN_SDL ?= /usr/local
182     export NAN_ODE ?= $(LCGDIR)/ode
183     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
184     export NAN_MESA ?= /usr/src/Mesa-3.1
185     export NAN_ZLIB ?= /usr
186     export NAN_NSPR ?= /usr/local
187     export NAN_FREETYPE ?= $(LCGDIR)/freetype
188     export NAN_GETTEXT ?= $(LCGDIR)/gettext
189
190     # Uncomment the following line to use Mozilla inplace of netscape
191     # CPPFLAGS +=-DMOZ_NOT_NET
192     # Location of MOZILLA/Netscape header files...
193     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
194     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
195     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
196     # if this is not set.
197
198     export NAN_BUILDINFO ?= true
199     # Be paranoid regarding library creation (do not update archives)
200     export NAN_PARANOID ?= true
201
202     # enable l10n
203     # export INTERNATIONAL ?= true
204
205     # enable freetype2 support for text objects
206     # export WITH_FREETYPE2 ?= true
207
208   else
209   ifeq ($(OS),irix)
210
211     export ID = $(shell whoami)
212     export HOST = $(shell /usr/bsd/hostname -s)
213     export NAN_PYTHON ?= $(LCGDIR)/python
214     export NAN_PYTHON_VERSION ?= 2.1
215     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
216     export NAN_OPENAL ?= $(LCGDIR)/openal
217     export NAN_FMOD ?= $(LCGDIR)/fmod
218     export NAN_JPEG ?= $(LCGDIR)/jpeg
219     export NAN_PNG ?= $(LCGDIR)/png
220     export NAN_SDL ?= $(LCGDIR)/sdl
221     export NAN_ODE ?= $(LCGDIR)/ode
222     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
223     export NAN_MESA ?= /usr/src/Mesa-3.1
224     export NAN_ZLIB ?= /usr/freeware
225     export NAN_NSPR ?= /usr/local/apps/openblender/nspr/target/dist
226     export NAN_FREETYPE ?= /usr/freeware
227     export NAN_GETTEXT ?= /usr/freeware
228
229     # Uncomment the following line to use Mozilla inplace of netscape
230     # CPPFLAGS +=-DMOZ_NOT_NET
231     # Location of MOZILLA/Netscape header files...
232     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
233     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
234     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
235     # if this is not set.
236
237     export NAN_BUILDINFO ?= true
238     # Be paranoid regarding library creation (do not update archives)
239     export NAN_PARANOID ?= true
240
241     # enable l10n
242     export INTERNATIONAL ?= true
243
244     # enable freetype2 support for text objects
245     export WITH_FREETYPE2 ?= true
246
247   else
248   ifeq ($(OS),linux)
249
250     export ID = $(shell whoami)
251     export HOST = $(shell hostname -s)
252     export NAN_PYTHON ?= /usr
253     export NAN_PYTHON_VERSION ?= 2.2
254     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
255     export NAN_OPENAL ?= /usr
256     export NAN_FMOD ?= $(LCGDIR)/fmod
257     export NAN_JPEG ?= /usr
258     export NAN_PNG ?= /usr
259     export NAN_SDL ?= /usr
260     export NAN_ODE ?= $(LCGDIR)/ode
261     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
262     export NAN_MESA ?= /usr
263     export NAN_ZLIB ?= /usr
264     export NAN_NSPR ?= $(LCGDIR)/nspr
265     export NAN_FREETYPE ?= /usr
266     export NAN_GETTEXT ?= /usr
267
268     # Uncomment the following line to use Mozilla inplace of netscape
269     export CPPFLAGS += -DMOZ_NOT_NET
270     # Location of MOZILLA/Netscape header files...
271     export NAN_MOZILLA_INC ?= /usr/include/mozilla
272     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
273     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
274     # if this is not set.
275
276     export NAN_BUILDINFO ?= true
277     # Be paranoid regarding library creation (do not update archives)
278     export NAN_PARANOID ?= true
279
280     # l10n
281     #export INTERNATIONAL ?= true
282
283     # enable freetype2 support for text objects
284     #export WITH_FREETYPE2 ?= true
285
286
287   else
288   ifeq ($(OS),openbsd)
289
290     export ID = $(shell whoami)
291     export HOST = $(shell hostname -s)
292     export NAN_PYTHON ?= $(LCGDIR)/python
293     export NAN_PYTHON_VERSION ?= 2.0
294     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
295     export NAN_OPENAL ?= $(LCGDIR)/openal
296     export NAN_FMOD ?= $(LCGDIR)/fmod
297     export NAN_JPEG ?= $(LCGDIR)/jpeg
298     export NAN_PNG ?= $(LCGDIR)/png
299     export NAN_SDL ?= $(LCGDIR)/sdl
300     export NAN_ODE ?= $(LCGDIR)/ode
301     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
302     export NAN_MESA ?= /usr/src/Mesa-3.1
303     export NAN_ZLIB ?= $(LCGDIR)/zlib
304     export NAN_NSPR ?= $(LCGDIR)/nspr
305     export NAN_FREETYPE ?= $(LCGDIR)/freetype
306     export NAN_GETTEXT ?= $(LCGDIR)/gettext
307
308     # Uncomment the following line to use Mozilla inplace of netscape
309     # CPPFLAGS +=-DMOZ_NOT_NET
310     # Location of MOZILLA/Netscape header files...
311     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
312     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
313     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
314     # if this is not set.
315
316     export NAN_BUILDINFO ?= true
317     # Be paranoid regarding library creation (do not update archives)
318     export NAN_PARANOID ?= true
319
320     # l10n
321     #export INTERNATIONAL ?= true
322
323     # enable freetype2 support for text objects
324     #export WITH_FREETYPE2 ?= true
325
326   else
327   ifeq ($(OS),solaris)
328
329     export ID = $(shell /usr/ucb/whoami)
330     export HOST = $(shell hostname)
331     export NAN_PYTHON ?= /usr/local
332     export NAN_PYTHON_VERSION ?= 2.2
333     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
334     export NAN_OPENAL ?= /usr/local
335     export NAN_FMOD ?= $(LCGDIR)/fmod
336     export NAN_JPEG ?= /usr/local
337     export NAN_PNG ?= /usr/local
338     export NAN_SDL ?= /usr/local
339     export NAN_ODE ?= $(LCGDIR)/ode
340     export NAN_TERRAPLAY ?=
341     export NAN_MESA ?= /usr/src/Mesa-3.1
342     export NAN_ZLIB ?= /usr
343     export NAN_NSPR ?= $(LCGDIR)/nspr
344     export NAN_FREETYPE ?= $(LCGDIR)/freetype
345     export NAN_GETTEXT ?= $(LCGDIR)/gettext
346
347     # Uncomment the following line to use Mozilla inplace of netscape
348     # CPPFLAGS +=-DMOZ_NOT_NET
349     # Location of MOZILLA/Netscape header files...
350     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
351     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
352     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
353     # if this is not set.
354
355     export NAN_BUILDINFO ?= true
356     # Be paranoid regarding library creation (do not update archives)
357     export NAN_PARANOID ?= true
358
359     # l10n
360     #export INTERNATIONAL ?= true
361
362     # enable freetype2 support for text objects
363     #export WITH_FREETYPE2 ?= true
364
365   else
366   ifeq ($(OS),windows)
367
368     export ID = $(LOGNAME)
369     export NAN_PYTHON ?= $(LCGDIR)/python
370     export NAN_ICONV ?= $(LCGDIR)/iconv
371     export NAN_PYTHON_VERSION ?= 2.2
372     ifeq ($(FREE_WINDOWS), true)
373       export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
374       export NAN_FREETYPE ?= $(LCGDIR)/gcc/freetype
375       export NAN_ODE ?= $(LCGDIR)/gcc/ode
376     else
377       export NAN_PYTHON_BINARY ?= python
378       export NAN_FREETYPE ?= $(LCGDIR)/freetype
379       export NAN_ODE ?= $(LCGDIR)/ode
380     endif
381     export NAN_OPENAL ?= $(LCGDIR)/openal
382     export NAN_FMOD ?= $(LCGDIR)/fmod
383     export NAN_JPEG ?= $(LCGDIR)/jpeg
384     export NAN_PNG ?= $(LCGDIR)/png
385     export NAN_SDL ?= $(LCGDIR)/sdl
386     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
387     export NAN_MESA ?= /usr/src/Mesa-3.1
388     export NAN_ZLIB ?= $(LCGDIR)/zlib
389     export NAN_NSPR ?= $(LCGDIR)/nspr
390     export NAN_GETTEXT ?= $(LCGDIR)/gettext
391
392     # Uncomment the following line to use Mozilla inplace of netscape
393     # CPPFLAGS +=-DMOZ_NOT_NET
394     # Location of MOZILLA/Netscape header files...
395     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
396     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
397     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
398     # if this is not set.
399 export NAN_PYTHON_BINARY ?= python
400     export NAN_BUILDINFO ?= true
401     # Be paranoid regarding library creation (do not update archives)
402     export NAN_PARANOID ?= true
403
404     # l10n
405     export INTERNATIONAL ?= true
406
407     # enable freetype2 support for text objects
408     export WITH_FREETYPE2 ?= true
409     
410     # enable quicktime support
411     # export WITH_QUICKTIME ?= true
412
413   else # Platform not listed above
414
415     export NAN_PYTHON ?= $(LCGDIR)/python
416     export NAN_PYTHON_VERSION ?= 2.0
417         export NAN_PYTHON_BINARY ?= python
418     export NAN_OPENAL ?= $(LCGDIR)/openal
419     export NAN_FMOD ?= $(LCGDIR)/fmod
420     export NAN_JPEG ?= $(LCGDIR)/jpeg
421     export NAN_PNG ?= $(LCGDIR)/png
422     export NAN_SDL ?= $(LCGDIR)/sdl
423     export NAN_ODE ?= $(LCGDIR)/ode
424     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
425     export NAN_MESA ?= /usr/src/Mesa-3.1
426     export NAN_ZLIB ?= $(LCGDIR)/zlib
427     export NAN_NSPR ?= $(LCGDIR)/nspr
428     export NAN_FREETYPE ?= $(LCGDIR)/freetype
429     export NAN_GETTEXT ?= $(LCGDIR)/gettext
430
431     # Uncomment the following line to use Mozilla inplace of netscape
432     # CPPFLAGS +=-DMOZ_NOT_NET
433     # Location of MOZILLA/Netscape header files...
434     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
435     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
436     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
437     # if this is not set.
438
439     export NAN_BUILDINFO ?= true
440     # Be paranoid regarding library creation (do not update archives)
441     export NAN_PARANOID ?= true
442
443     # l10n
444     #export INTERNATIONAL ?= true
445
446     # enable freetype2 support for text objects
447     #export WITH_FREETYPE2 ?= true
448   endif
449 endif
450 endif
451 endif
452 endif
453 endif
454 endif
455 endif
456 endif