Makefile updates for Blender 2.5 (from GSR)
[blender-staging.git] / source / nan_definitions.mk
1 # -*- mode: gnumakefile; tab-width: 8; indent-tabs-mode: t; -*-
2 # vim: tabstop=8
3 #
4 # $Id$
5 #
6 # ***** BEGIN GPL LICENSE BLOCK *****
7 #
8 # This program is free software; you can redistribute it and/or
9 # modify it under the terms of the GNU General Public License
10 # as published by the Free Software Foundation; either version 2
11 # of the License, or (at your option) any later version.
12 #
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 # GNU General Public License for more details.
17 #
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software Foundation,
20 # Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
21 #
22 # The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
23 # All rights reserved.
24 #
25 # The Original Code is: all of this file.
26 #
27 # Contributor(s): GSR
28 #
29 # ***** END GPL LICENSE BLOCK *****
30 #
31 # set some defaults when these are not overruled (?=) by environment variables
32 #
33
34 sinclude ../user-def.mk
35
36 # This warning only takes place once in source/
37 ifeq (debug, $(findstring debug, $(MAKECMDGOALS)))
38   ifeq (all, $(findstring all, $(MAKECMDGOALS)))
39     export ERRTXT = "ERROR: all and debug targets cannot be used together anymore"
40     export ERRTXT += "Use something like ..make all && make debug.. instead"
41   endif
42 endif
43
44 ifdef ERRTXT
45 $(error $(ERRTXT))
46 endif
47
48 ifndef CONFIG_GUESS
49   ifeq (debug, $(findstring debug, $(MAKECMDGOALS)))
50     export DEBUG_DIR = debug/
51     export ALL_OR_DEBUG = debug
52   endif
53   ifeq (all, $(findstring all, $(MAKECMDGOALS)))
54     export ALL_OR_DEBUG ?= all
55   endif
56
57   # First generic defaults for all platforms which should be constant.
58   # Note: ?= lets these defaults be overruled by environment variables,
59     export SRCHOME ?= $(NANBLENDERHOME)/source
60     export CONFIG_GUESS := $(shell ${SRCHOME}/tools/guess/guessconfig)
61     export OS := $(shell echo ${CONFIG_GUESS} | sed -e 's/-.*//')
62     export OS_VERSION := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-//' -e 's/-[^-]*//')
63     export CPU := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-[^-]*-//')
64     export MAKE_START := $(shell date "+%H:%M:%S %d-%b-%Y")
65     export NAN_LIBDIR ?= $(NANBLENDERHOME)/../lib
66     export NAN_OBJDIR ?= $(NANBLENDERHOME)/obj
67     # Library Config_Guess DIRectory
68     export LCGDIR = $(NAN_LIBDIR)/$(CONFIG_GUESS)
69     # Object Config_Guess DIRectory
70     export OCGDIR = $(NAN_OBJDIR)/$(CONFIG_GUESS)
71
72     # Determines what targets are built
73     export WITH_BF_DYNAMICOPENGL ?= true
74     export WITH_BF_STATICOPENGL ?= false
75     export WITH_BF_BLENDERGAMEENGINE ?= true
76     export WITH_BF_BLENDERPLAYER ?= true
77     ifeq ($(NAN_NO_PLUGIN), true)
78         export WITH_BF_WEBPLUGIN = false
79     else
80         export WITH_BF_WEBPLUGIN ?= false
81     endif
82
83     export NAN_MOTO ?= $(LCGDIR)/moto
84 ifeq ($(FREE_WINDOWS), true)
85     export NAN_SOLID ?= $(LCGDIR)/gcc/solid
86     export NAN_QHULL ?= $(LCGDIR)/gcc/qhull
87 else
88     export NAN_SOLID ?= $(LCGDIR)/solid
89     export NAN_QHULL ?= $(LCGDIR)/qhull
90 endif
91     export NAN_USE_BULLET ?= true
92     export NAN_BULLET2 ?= $(LCGDIR)/bullet2
93     export NAN_SUMO ?= $(SRCHOME)/gameengine/Physics/Sumo
94     export NAN_FUZZICS ?= $(SRCHOME)/gameengine/Physics/Sumo/Fuzzics
95     export NAN_BLENKEY ?= $(LCGDIR)/blenkey
96     export NAN_DECIMATION ?= $(LCGDIR)/decimation
97     export NAN_GUARDEDALLOC ?= $(LCGDIR)/guardedalloc
98     export NAN_IKSOLVER ?= $(LCGDIR)/iksolver
99     export NAN_BSP ?= $(LCGDIR)/bsp
100     export NAN_BOOLOP ?= $(LCGDIR)/boolop
101     export NAN_SOUNDSYSTEM ?= $(LCGDIR)/SoundSystem
102     export NAN_STRING ?= $(LCGDIR)/string
103     export NAN_MEMUTIL ?= $(LCGDIR)/memutil
104     export NAN_CONTAINER ?= $(LCGDIR)/container
105     export NAN_ACTION ?= $(LCGDIR)/action
106     export NAN_GHOST ?= $(LCGDIR)/ghost
107     export NAN_TEST_VERBOSITY ?= 1
108     export NAN_BMFONT ?= $(LCGDIR)/bmfont
109     export NAN_OPENNL ?= $(LCGDIR)/opennl
110     export NAN_ELBEEM ?= $(LCGDIR)/elbeem
111     export NAN_SUPERLU ?= $(LCGDIR)/superlu
112     export NAN_GLEW ?= $(LCGDIR)/glew
113     ifeq ($(FREE_WINDOWS), true)
114       export NAN_FTGL ?= $(LCGDIR)/gcc/ftgl
115       export NAN_FFMPEG ?= $(LCGDIR)/gcc/ffmpeg
116       export NAN_FFMPEGLIBS ?= $(NAN_FFMPEG)/lib/libavformat.a $(NAN_FFMPEG)/lib/libavutil.a $(NAN_FFMPEG)/lib/libavcodec.a $(NAN_FFMPEG)/lib/libavdevice.a
117       export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include -I$(NANBLENDERHOME)/extern/ffmpeg
118     else
119       export NAN_FTGL ?= $(LCGDIR)/ftgl
120       export NAN_FFMPEG ?= $(LCGDIR)/ffmpeg
121       export NAN_FFMPEGLIBS ?= $(NAN_FFMPEG)/lib/libavformat.a $(NAN_FFMPEG)/lib/libavcodec.a $(NAN_FFMPEG)/lib/libswscale.a $(NAN_FFMPEG)/lib/libavutil.a $(NAN_FFMPEG)/lib/libavdevice.a
122       export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include -I$(NANBLENDERHOME)/extern/ffmpeg
123     endif
124
125     export WITH_OPENEXR ?= true
126     export WITH_DDS ?= true
127     export WITH_OPENJPEG ?= true
128
129     ifeq ($(OS),windows)
130       export NAN_WINTAB ?= $(LCGDIR)/wintab
131       ifeq ($(FREE_WINDOWS), true)
132         export NAN_PTHREADS ?= $(LCGDIR)/pthreads
133         export NAN_OPENEXR ?= $(LCGDIR)/gcc/openexr
134         export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a
135         export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
136       else
137         export NAN_OPENEXR ?= $(LCGDIR)/openexr
138         export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/IlmImf.lib $(NAN_OPENEXR)/lib/Half.lib $(NAN_OPENEXR)/lib/Iex.lib
139         export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/IlmImf -I$(NAN_OPENEXR)/include/Imath -I$(NAN_OPENEXR)/include/Iex
140       endif
141     else
142       ifeq ($(OS),darwin)
143         export NAN_OPENEXR ?= $(LCGDIR)/openexr
144         ifeq ($(CPU),powerpc)
145           export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a
146         else
147           export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a
148         endif
149       else
150         ifeq ($(OS),linux)
151           ifeq ($(WITH_OPENEXR), true)
152             export NAN_OPENEXR?=$(shell pkg-config --variable=prefix OpenEXR )
153             export NAN_OPENEXR_INC?=$(shell pkg-config --cflags OpenEXR )
154             export NAN_OPENEXR_LIBS?=$(addprefix ${NAN_OPENEXR}/lib/lib,$(addsuffix .a,$(shell pkg-config --libs-only-l OpenEXR | sed -s "s/-l//g" )))
155           endif
156         else
157           ifeq ($(OS), solaris)
158               # this only exists at the moment for i386-64 CPU Types at the moment
159               export NAN_OPENEXR ?= $(LCGDIR)/openexr
160               export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a -lrt
161           else
162             ifeq ($(OS), irix)
163               ifeq ($(IRIX_USE_GCC), true)
164                   export NAN_OPENEXR ?= $(LCGDIR)/openexr/gcc
165              else
166                   export NAN_OPENEXR ?= $(LCGDIR)/openexr
167              endif
168             endif
169             export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
170             export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a
171           endif
172         endif
173       endif
174       ifeq ($(WITH_OPENEXR), true)
175         export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
176       endif
177
178     endif
179   # Platform Dependent settings go below:
180
181   ifeq ($(NAN_USE_FFMPEG_CONFIG), true)
182     export NAN_FFMPEG ?= $(shell ffmpeg-config --prefix)
183     export NAN_FFMPEGLIBS ?= $(shell ffmpeg-config --libs avformat avcodec)
184     export NAN_FFMPEGCFLAGS ?= $(shell ffmpeg-config --cflags)
185   endif
186
187   ifeq ($(OS),beos)
188
189     export ID = $(USER)
190     export HOST = $(HOSTNAME)
191     export NAN_PYTHON ?= $(LCGDIR)/python
192     export NAN_PYTHON_VERSION ?= 2.3
193     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
194     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
195     export NAN_OPENAL ?= $(LCGDIR)/openal
196     export NAN_FMOD ?= $(LCGDIR)/fmod
197     export NAN_JPEG ?= $(LCGDIR)/jpeg
198     export NAN_PNG ?= $(LCGDIR)/png
199     export NAN_TIFF ?= $(LCGDIR)/tiff
200     export NAN_ODE ?= $(LCGDIR)/ode
201     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
202     export NAN_MESA ?= /usr/src/Mesa-3.1
203     export NAN_ZLIB ?= $(LCGDIR)/zlib
204     export NAN_NSPR ?= $(LCGDIR)/nspr
205     export NAN_FREETYPE ?= $(LCGDIR)/freetype
206     export NAN_GETTEXT ?= $(LCGDIR)/gettext
207     export NAN_SDL ?= $(shell sdl-config --prefix)
208     export NAN_SDLLIBS ?= $(shell sdl-config --libs) 
209     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
210
211     # Uncomment the following line to use Mozilla inplace of netscape
212     # CPPFLAGS +=-DMOZ_NOT_NET
213     # Location of MOZILLA/Netscape header files...
214     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
215     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
216     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
217     # if this is not set.
218
219     export NAN_BUILDINFO ?= true
220     # Be paranoid regarding library creation (do not update archives)
221     export NAN_PARANOID ?= true
222
223     # l10n
224     #export INTERNATIONAL ?= true
225
226     # enable freetype2 support for text objects
227     #export WITH_FREETYPE2 ?= true
228
229   else
230   ifeq ($(OS),darwin)
231
232     export ID = $(shell whoami)
233     export HOST = $(shell hostname -s)
234
235     export PY_FRAMEWORK = 1    
236
237     ifdef PY_FRAMEWORK
238        export NAN_PYTHON ?= /System/Library/Frameworks/Python.framework/Versions/2.3
239        export NAN_PYTHON_VERSION ?= 2.3
240        export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
241        export NAN_PYTHON_LIB ?= -framework Python 
242     else 
243        export NAN_PYTHON ?= /sw
244        export NAN_PYTHON_VERSION ?= 2.3
245        export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
246        export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
247     endif
248
249     export NAN_OPENAL ?= $(LCGDIR)/openal
250     export NAN_FMOD ?= $(LCGDIR)/fmod
251     export NAN_JPEG ?= $(LCGDIR)/jpeg
252     export NAN_PNG ?= $(LCGDIR)/png
253     export NAN_TIFF ?= $(LCGDIR)/tiff
254     export NAN_ODE ?= $(LCGDIR)/ode
255     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
256     export NAN_MESA ?= /usr/src/Mesa-3.1
257     export NAN_ZLIB ?= $(LCGDIR)/zlib
258     export NAN_NSPR ?= $(LCGDIR)/nspr
259     export NAN_FREETYPE ?= $(LCGDIR)/freetype
260     export NAN_GETTEXT ?= $(LCGDIR)/gettext
261     export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/libintl.a
262     ifeq (($CPU), i386)
263         export NAN_GETTEXT_LIB += $(NAN_GETTEXT)/lib/libintl.a
264     endif
265     export NAN_SDL ?= $(LCGDIR)/sdl
266     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
267     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a -framework Cocoa -framework IOKit
268
269     # export NAN_NO_KETSJI=true
270
271     ifeq ($(CPU), i386)
272             export NAN_NO_OPENAL=true
273     endif
274
275     # Uncomment the following line to use Mozilla inplace of netscape
276     # CPPFLAGS +=-DMOZ_NOT_NET
277     # Location of MOZILLA/Netscape header files...
278     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
279     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
280     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
281     # if this is not set.
282
283     export NAN_BUILDINFO ?= true
284     # Be paranoid regarding library creation (do not update archives)
285     export NAN_PARANOID ?= true
286
287     # enable quicktime by default on OS X
288     export WITH_QUICKTIME ?= true
289
290     # enable l10n
291     export INTERNATIONAL ?= true
292
293     # enable freetype2 support for text objects
294     export WITH_FREETYPE2 ?= true
295
296   else
297   ifeq ($(OS),freebsd)
298
299     export ID = $(shell whoami)
300     export HOST = $(shell hostname -s)
301     export FREEDESKTOP ?= true
302
303     export NAN_PYTHON ?= /usr/local
304     export NAN_PYTHON_VERSION ?= 2.5
305     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
306     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
307     export NAN_OPENAL ?= /usr/local
308     export NAN_FMOD ?= $(LCGDIR)/fmod
309     export NAN_JPEG ?= /usr/local
310     export NAN_PNG ?= /usr/local
311     export NAN_TIFF ?= /usr/local
312     export NAN_ODE ?= $(LCGDIR)/ode
313     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
314     export NAN_MESA ?= /usr/src/Mesa-3.1
315     export NAN_ZLIB ?= /usr
316     export NAN_NSPR ?= /usr/local
317     export NAN_FREETYPE ?= $(LCGDIR)/freetype
318     export NAN_GETTEXT ?= $(LCGDIR)/gettext
319     export NAN_SDL ?= $(shell sdl-config --prefix)
320     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
321     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
322
323     # Uncomment the following line to use Mozilla inplace of netscape
324     # CPPFLAGS +=-DMOZ_NOT_NET
325     # Location of MOZILLA/Netscape header files...
326     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
327     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
328     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
329     # if this is not set.
330
331     export NAN_BUILDINFO ?= true
332     # Be paranoid regarding library creation (do not update archives)
333     export NAN_PARANOID ?= true
334
335     # enable l10n
336     # export INTERNATIONAL ?= true
337
338     # enable freetype2 support for text objects
339     # export WITH_FREETYPE2 ?= true
340
341   else
342   ifeq ($(OS),irix)
343
344     export ID = $(shell whoami)
345     export HOST = $(shell /usr/bsd/hostname -s)
346     #export NAN_NO_KETSJI=true
347     export NAN_JUST_BLENDERDYNAMIC=true
348     export NAN_PYTHON ?= $(LCGDIR)/python
349     export NAN_PYTHON_VERSION ?= 2.3
350     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
351     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a -lpthread
352     export NAN_OPENAL ?= $(LCGDIR)/openal
353     export NAN_FMOD ?= $(LCGDIR)/fmod
354     export NAN_JPEG ?= $(LCGDIR)/jpeg
355     export NAN_PNG ?= $(LCGDIR)/png
356     export NAN_TIFF ?= $(LCGDIR)/tiff
357     export NAN_ODE ?= $(LCGDIR)/ode
358     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
359     export NAN_MESA ?= /usr/src/Mesa-3.1
360     export NAN_ZLIB ?= $(LCGDIR)/zlib
361     export NAN_NSPR ?= $(LCGDIR)/nspr
362     export NAN_FREETYPE ?= $(LCGDIR)/freetype
363     export NAN_ICONV ?= $(LCGDIR)/iconv
364     export NAN_GETTEXT ?= $(LCGDIR)/gettext
365     export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/libintl.a $(NAN_ICONV)/lib/libiconv.a
366     export NAN_SDL ?= $(LCGDIR)/sdl
367     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a
368     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include/SDL
369     export NAN_FFMPEG ?= $(LCGDIR)/ffmpeg
370     export NAN_FFMPEGLIBS = $(NAN_FFMPEG)/lib/libavformat.a $(NAN_FFMPEG)/lib/libavcodec.a $(NAN_FFMPEG)/lib/libswscale.a $(NAN_FFMPEG)/lib/libavutil.a $(NAN_FFMPEG)/lib/libavdevice.a $(NAN_FFMPEG)/lib/libogg.a $(NAN_FFMPEG)/lib/libfaad.a $(NAN_FFMPEG)/lib/libmp3lame.a $(NAN_FFMPEG)/lib/libvorbis.a $(NAN_FFMPEG)/lib/libx264.a $(NAN_FFMPEG)/lib/libfaac.a $(NAN_ZLIB)/lib/libz.a
371     export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include -I$(NANBLENDERHOME)/extern/ffmpeg
372  
373     # Uncomment the following line to use Mozilla inplace of netscape
374     # CPPFLAGS +=-DMOZ_NOT_NET
375     # Location of MOZILLA/Netscape header files...
376     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
377     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
378     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
379     # if this is not set.
380
381     export NAN_BUILDINFO ?= true
382     # Be paranoid regarding library creation (do not update archives)
383     export NAN_PARANOID ?= true
384
385     # enable l10n
386     export INTERNATIONAL ?= true
387
388     # enable freetype2 support for text objects
389     export WITH_FREETYPE2 ?= true
390
391   else
392   ifeq ($(OS),linux)
393
394     export ID = $(shell whoami)
395     export HOST = $(shell hostname -s)
396     export FREEDESKTOP ?= true
397
398     export NAN_PYTHON ?= /usr
399     export NAN_PYTHON_VERSION ?= 2.5
400     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
401     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
402     export NAN_OPENAL ?= /usr
403     export NAN_FMOD ?= $(LCGDIR)/fmod
404     export NAN_JPEG ?= /usr
405     export NAN_PNG ?= /usr
406     export NAN_TIFF ?= /usr
407     export NAN_ODE ?= $(LCGDIR)/ode
408     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
409     export NAN_MESA ?= /usr
410     export NAN_ZLIB ?= /usr
411     export NAN_NSPR ?= $(LCGDIR)/nspr
412     export NAN_FREETYPE ?= /usr
413     export NAN_GETTEXT ?= /usr
414     export NAN_SDL ?= $(shell sdl-config --prefix)
415     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
416     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
417
418 ifneq ($(NAN_USE_FFMPEG_CONFIG), true)
419     export NAN_FFMPEG ?= /usr
420     export NAN_FFMPEGLIBS ?= -L$(NAN_FFMPEG)/lib -lavformat -lavcodec -lavutil -lswscale -lavdevice -ldts -lz
421     export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include
422 endif
423
424     # Uncomment the following line to use Mozilla inplace of netscape
425     export CPPFLAGS += -DMOZ_NOT_NET
426     # Location of MOZILLA/Netscape header files...
427     export NAN_MOZILLA_INC ?= /usr/include/mozilla
428     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
429     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
430     # if this is not set.
431
432     export NAN_BUILDINFO ?= true
433     # Be paranoid regarding library creation (do not update archives)
434     export NAN_PARANOID ?= true
435
436     # l10n
437     export INTERNATIONAL ?= true
438
439     # enable freetype2 support for text objects
440     export WITH_FREETYPE2 ?= true
441
442     export WITH_BINRELOC ?= true
443
444     # enable ffmpeg support
445     ifndef NAN_NO_FFMPEG
446           export WITH_FFMPEG ?= true
447     endif
448
449   else
450   ifeq ($(OS),openbsd)
451
452     export ID = $(shell whoami)
453     export HOST = $(shell hostname -s)
454     export FREEDESKTOP ?= true
455
456     export NAN_PYTHON ?= $(LCGDIR)/python
457     export NAN_PYTHON_VERSION ?= 2.3
458     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
459     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
460     export NAN_OPENAL ?= $(LCGDIR)/openal
461     export NAN_FMOD ?= $(LCGDIR)/fmod
462     export NAN_JPEG ?= $(LCGDIR)/jpeg
463     export NAN_PNG ?= $(LCGDIR)/png
464     export NAN_TIFF ?= $(LCGDIR)/tiff
465     export NAN_ODE ?= $(LCGDIR)/ode
466     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
467     export NAN_MESA ?= /usr/src/Mesa-3.1
468     export NAN_ZLIB ?= $(LCGDIR)/zlib
469     export NAN_NSPR ?= $(LCGDIR)/nspr
470     export NAN_FREETYPE ?= $(LCGDIR)/freetype
471     export NAN_GETTEXT ?= $(LCGDIR)/gettext
472     export NAN_SDL ?= $(shell sdl-config --prefix)
473     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
474     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
475
476     # Uncomment the following line to use Mozilla inplace of netscape
477     # CPPFLAGS +=-DMOZ_NOT_NET
478     # Location of MOZILLA/Netscape header files...
479     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
480     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
481     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
482     # if this is not set.
483
484     export NAN_BUILDINFO ?= true
485     # Be paranoid regarding library creation (do not update archives)
486     export NAN_PARANOID ?= true
487
488     # l10n
489     #export INTERNATIONAL ?= true
490
491     # enable freetype2 support for text objects
492     #export WITH_FREETYPE2 ?= true
493
494   else
495   ifeq ($(OS),solaris)
496
497     export ID = $(shell /usr/ucb/whoami)
498     export HOST = $(shell hostname)
499     export NAN_PYTHON ?= $(LCGDIR)/python
500     export NAN_PYTHON_VERSION ?= 2.5
501     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
502     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
503     export NAN_OPENAL ?= $(LCGDIR)/openal 
504     export NAN_FMOD ?= $(LCGDIR)/fmod
505     export NAN_JPEG ?= $(LCGDIR)/jpeg
506     export NAN_PNG ?= $(LCGDIR)/png
507     export NAN_TIFF ?= /usr
508     export NAN_ODE ?= $(LCGDIR)/ode
509     export NAN_TERRAPLAY ?=
510     export NAN_MESA ?= /usr/X11
511     export NAN_ZLIB ?= $(LCGDIR)/zlib
512     export NAN_NSPR ?= $(LCGDIR)/nspr
513     export NAN_FREETYPE ?= $(LCGDIR)/freetype
514     export NAN_GETTEXT ?= $(LCGDIR)/gettext
515     export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/libintl.a $(NAN_GETTEXT)/lib/libiconv.a
516     export NAN_SDL ?= $(LCGDIR)/sdl
517     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include/SDL
518     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a
519
520     # Uncomment the following line to use Mozilla inplace of netscape
521     # CPPFLAGS +=-DMOZ_NOT_NET
522     # Location of MOZILLA/Netscape header files...
523     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
524     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
525     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
526     # if this is not set.
527
528     export NAN_BUILDINFO ?= true
529     # Be paranoid regarding library creation (do not update archives)
530     export NAN_PARANOID ?= true
531
532     # l10n
533     #export INTERNATIONAL ?= true
534
535     # enable freetype2 support for text objects
536     #export WITH_FREETYPE2 ?= true
537
538   else
539   ifeq ($(OS),windows)
540
541     export ID = $(LOGNAME)
542     export NAN_PYTHON ?= $(LCGDIR)/python
543     export NAN_ICONV ?= $(LCGDIR)/iconv
544     export NAN_PYTHON_VERSION ?= 2.5
545     ifeq ($(FREE_WINDOWS), true)
546       export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
547       export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/freepy.a
548       export NAN_FREETYPE ?= $(LCGDIR)/gcc/freetype
549       export NAN_ODE ?= $(LCGDIR)/gcc/ode
550       export NAN_SDL ?= $(LCGDIR)/gcc/sdl
551       export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
552     else
553       export NAN_PYTHON_BINARY ?= python
554       export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python23.lib
555       export NAN_FREETYPE ?= $(LCGDIR)/freetype
556       export NAN_ODE ?= $(LCGDIR)/ode
557       export NAN_SDL ?= $(LCGDIR)/sdl
558       export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
559     endif
560     export NAN_OPENAL ?= $(LCGDIR)/openal
561     export NAN_FMOD ?= $(LCGDIR)/fmod
562     export NAN_JPEG ?= $(LCGDIR)/jpeg
563     export NAN_PNG ?= $(LCGDIR)/png
564     export NAN_TIFF ?= $(LCGDIR)/tiff
565     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
566     export NAN_MESA ?= /usr/src/Mesa-3.1
567     export NAN_ZLIB ?= $(LCGDIR)/zlib
568     export NAN_NSPR ?= $(LCGDIR)/nspr
569     export NAN_GETTEXT ?= $(LCGDIR)/gettext
570     ifeq ($(FREE_WINDOWS), true)
571        export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/freegettext.a $(NAN_ICONV)/lib/freeiconv.a
572     else
573        export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/gnu_gettext.lib $(NAN_ICONV)/lib/iconv.lib
574     endif
575
576     # Uncomment the following line to use Mozilla inplace of netscape
577     # CPPFLAGS +=-DMOZ_NOT_NET
578     # Location of MOZILLA/Netscape header files...
579     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
580     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
581     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
582     # if this is not set.
583         export NAN_PYTHON_BINARY ?= python
584     export NAN_BUILDINFO ?= true
585     # Be paranoid regarding library creation (do not update archives)
586     export NAN_PARANOID ?= true
587
588     # l10n
589     export INTERNATIONAL ?= true
590
591     # enable freetype2 support for text objects
592     export WITH_FREETYPE2 ?= true
593
594     # enable quicktime support
595     # export WITH_QUICKTIME ?= true
596
597   else # Platform not listed above
598
599     export NAN_PYTHON ?= $(LCGDIR)/python
600     export NAN_PYTHON_VERSION ?= 2.3
601     export NAN_PYTHON_BINARY ?= python
602     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
603
604     export NAN_OPENAL ?= $(LCGDIR)/openal
605     export NAN_FMOD ?= $(LCGDIR)/fmod
606     export NAN_JPEG ?= $(LCGDIR)/jpeg
607     export NAN_PNG ?= $(LCGDIR)/png
608     export NAN_TIFF ?= $(LCGDIR)/tiff
609     export NAN_SDL ?= $(LCGDIR)/sdl
610     export NAN_ODE ?= $(LCGDIR)/ode
611     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
612     export NAN_MESA ?= /usr/src/Mesa-3.1
613     export NAN_ZLIB ?= $(LCGDIR)/zlib
614     export NAN_NSPR ?= $(LCGDIR)/nspr
615     export NAN_FREETYPE ?= $(LCGDIR)/freetype
616     export NAN_GETTEXT ?= $(LCGDIR)/gettext
617     export NAN_SDL ?= $(shell sdl-config --prefix)
618     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
619     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
620
621     # Uncomment the following line to use Mozilla inplace of netscape
622     # CPPFLAGS +=-DMOZ_NOT_NET
623     # Location of MOZILLA/Netscape header files...
624     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
625     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
626     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
627     # if this is not set.
628
629     export NAN_BUILDINFO ?= true
630     # Be paranoid regarding library creation (do not update archives)
631     export NAN_PARANOID ?= true
632
633     # l10n
634     #export INTERNATIONAL ?= true
635
636     # enable freetype2 support for text objects
637     #export WITH_FREETYPE2 ?= true
638
639   endif
640
641 endif
642 endif
643 endif
644 endif
645 endif
646 endif
647 endif
648 endif
649
650 # Don't want to build the gameengine?
651 ifeq ($(NAN_NO_KETSJI), true)
652    export NAN_JUST_BLENDERDYNAMIC=true
653    export NAN_NO_OPENAL=true
654 endif
655
656 # INTERNATIONAL implies WITH_FREETYPE2
657 ifeq ($(INTERNATIONAL), true)
658    export WITH_FREETYPE2=true
659 endif