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