OS X Makefiles:
[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, Stefan Gartner
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     export NAN_ITASC ?= $(LCGDIR)/itasc
85
86     export BF_PROFILE ?= false
87     export NAN_USE_BULLET ?= true
88     export NAN_BULLET2 ?= $(LCGDIR)/bullet2
89     export NAN_DECIMATION ?= $(LCGDIR)/decimation
90     export NAN_GUARDEDALLOC ?= $(LCGDIR)/guardedalloc
91     export NAN_IKSOLVER ?= $(LCGDIR)/iksolver
92     export NAN_BSP ?= $(LCGDIR)/bsp
93     export NAN_BOOLOP ?= $(LCGDIR)/boolop
94     export NAN_AUDASPACE ?= $(LCGDIR)/audaspace
95     export NAN_STRING ?= $(LCGDIR)/string
96     export NAN_MEMUTIL ?= $(LCGDIR)/memutil
97     export NAN_CONTAINER ?= $(LCGDIR)/container
98     export NAN_ACTION ?= $(LCGDIR)/action
99     export NAN_GHOST ?= $(LCGDIR)/ghost
100     export NAN_TEST_VERBOSITY ?= 1
101     export NAN_OPENNL ?= $(LCGDIR)/opennl
102     export NAN_ELBEEM ?= $(LCGDIR)/elbeem
103     export NAN_SMOKE ?= $(LCGDIR)/smoke
104     export NAN_SUPERLU ?= $(LCGDIR)/superlu
105     export NAN_GLEW ?= $(LCGDIR)/glew
106     ifeq ($(FREE_WINDOWS), true)
107       export NAN_FFMPEG ?= $(LCGDIR)/gcc/ffmpeg
108       export NAN_FFMPEGLIBS ?= $(NAN_FFMPEG)/lib/libavformat.a $(NAN_FFMPEG)/lib/libavutil.a $(NAN_FFMPEG)/lib/libavcodec.a $(NAN_FFMPEG)/lib/libavdevice.a
109     else
110       export NAN_FFMPEG ?= $(LCGDIR)/ffmpeg
111       ifeq ($(OS), darwin)
112         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/libmp3lame.a $(NAN_FFMPEG)/lib/libx264.a $(NAN_FFMPEG)/lib/libxvidcore.a
113       else
114         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
115       endif
116     endif
117     export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include -I$(NANBLENDERHOME)/extern/ffmpeg
118
119     export WITH_OPENEXR ?= true
120     export WITH_DDS ?= true
121     export WITH_OPENJPEG ?= true
122     export WITH_LZO ?= true
123     export WITH_LZMA ?= true
124     export NAN_LZO ?= $(LCGDIR)/lzo
125     export NAN_LZMA ?= $(LCGDIR)/lzma
126     export WITH_OPENAL ?= false
127     export WITH_JACK ?= false
128     export WITH_SNDFILE ?= false
129     export WITH_FFTW3 ?= false
130
131   ifeq ($(WITH_OPENAL), true)
132     export NAN_OPENAL ?= /usr
133   endif
134
135   ifeq ($(WITH_JACK), true)
136     export NAN_JACK ?= /usr
137     export NAN_JACKCFLAGS ?= -I$(NAN_JACK)/include/jack
138     export NAN_JACKLIBS ?= $(NAN_JACK)/lib/libjack.a
139   endif
140
141   ifeq ($(WITH_SNDFILE),true)
142     export NAN_SNDFILE ?= /usr
143     export NAN_SNDFILECFLAGS ?= -I$(NAN_SNDFILE)/include
144     export NAN_SNDFILELIBS ?= $(NAN_SNDFILE)/lib/libsndfile.a $(NAN_SNDFILE)/lib/libFLAC.a $(NAN_SNDFILE)/lib/libogg.a
145   endif
146
147   ifeq ($(NAN_USE_FFMPEG_CONFIG), true)
148     export NAN_FFMPEG = $(shell pkg-config --variable=prefix libavcodec) # Assume they are all in the same prefix
149     export NAN_FFMPEGLIBS = $(shell pkg-config --libs libavcodec libavdevice libavformat libswscale libavutil)
150     export NAN_FFMPEGCFLAGS = $(shell pkg-config --cflags libavcodec libavdevice libavformat libswscale libavutil)
151   endif
152
153     # Compare recreated .mo files with committed ones
154     export BF_VERIFY_MO_FILES ?= true
155
156   # Platform Dependent settings go below:
157   ifeq ($(OS),darwin)
158
159     export ID = $(shell whoami)
160     export HOST = $(shell hostname -s)
161
162     # set target arch & os version
163     # architecture defaults to host arch, can be ppc, ppc64, i386, x86_64
164     ifeq ($(CPU),powerpc)
165         export MACOSX_ARCHITECTURE ?= ppc
166     else
167         export MACOSX_ARCHITECTURE ?= i386
168     endif
169     # target os version defaults to 10.4 for ppc & i386 (32 bit), 10.5 for ppc64, x86_64
170     ifeq (64,$(findstring 64, $(MACOSX_ARCHITECTURE)))
171         export MACOSX_MIN_VERS ?= 10.5
172         export MACOSX_DEPLOYMENT_TARGET ?= 10.5
173         export MACOSX_SDK ?= /Developer/SDKs/MacOSX10.5.sdk
174     else
175         export MACOSX_MIN_VERS ?= 10.4
176         export MACOSX_DEPLOYMENT_TARGET ?= 10.4
177         export MACOSX_SDK ?= /Developer/SDKs/MacOSX10.4u.sdk
178     endif
179
180     # useful for crosscompiling
181     ifeq ($(MACOSX_ARCHITECTURE),$(findstring $(MACOSX_ARCHITECTURE), "ppc ppc64"))
182         export CPU = powerpc
183         export LCGDIR = $(NAN_LIBDIR)/$(OS)-$(OS_VERSION)-$(CPU)
184         export OCGDIR = $(NAN_OBJDIR)/$(OS)-$(OS_VERSION)-$(CPU)
185     endif
186     ifeq ($(MACOSX_ARCHITECTURE),$(findstring $(MACOSX_ARCHITECTURE),"i386 x86_64"))
187         export CPU = i386
188         export LCGDIR = $(NAN_LIBDIR)/$(OS)-$(OS_VERSION)-$(CPU)
189         export OCGDIR = $(NAN_OBJDIR)/$(OS)-$(OS_VERSION)-$(CPU)
190     endif
191
192     export NAN_PYTHON_VERSION = 3.1
193
194     ifeq ($(NAN_PYTHON_VERSION),3.1)
195       export PY_FRAMEWORK ?= 0
196       export NAN_PYTHON ?= $(LCGDIR)/python
197       export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/libpython$(NAN_PYTHON_VERSION).a
198     else
199       export PY_FRAMEWORK ?= 1
200       ifdef PY_FRAMEWORK
201         export NAN_PYTHON ?= /System/Library/Frameworks/Python.framework/Versions/2.5
202         export NAN_PYTHON_VERSION ?= 2.5
203         export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
204         export NAN_PYTHON_LIB ?= -framework Python
205       else
206         export NAN_PYTHON ?= /sw
207         export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
208         export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
209       endif
210     endif
211
212     export NAN_OPENAL ?= $(LCGDIR)/openal
213     export NAN_JPEG ?= $(LCGDIR)/jpeg
214     export NAN_PNG ?= $(LCGDIR)/png
215     export NAN_TIFF ?= $(LCGDIR)/tiff
216     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
217     export NAN_MESA ?= /usr/src/Mesa-3.1
218     export NAN_ZLIB ?= $(LCGDIR)/zlib
219     export NAN_NSPR ?= $(LCGDIR)/nspr
220     export NAN_FREETYPE ?= $(LCGDIR)/freetype
221     export NAN_GETTEXT ?= $(LCGDIR)/gettext
222     export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/libintl.a
223     ifeq (($CPU), i386)
224         export NAN_GETTEXT_LIB += $(NAN_GETTEXT)/lib/libintl.a
225     endif
226     export NAN_SDL ?= $(LCGDIR)/sdl
227     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
228     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a -framework Cocoa -framework IOKit
229
230     export NAN_OPENEXR ?= $(LCGDIR)/openexr
231     export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
232     export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a
233
234     export NAN_NO_KETSJI=false
235
236     #ifeq ($(CPU), i386)
237     #  export WITH_OPENAL=false
238     #endif
239
240     # Location of MOZILLA/Netscape header files...
241     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
242     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
243     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
244     # if this is not set.
245
246     export NAN_BUILDINFO ?= true
247     # Be paranoid regarding library creation (do not update archives)
248     export NAN_PARANOID ?= true
249
250     # enable quicktime by default on OS X
251     export WITH_QUICKTIME ?= true
252
253     # enable l10n
254     export INTERNATIONAL ?= true
255
256     export NAN_SAMPLERATE ?= $(LCGDIR)/samplerate
257     export NAN_SAMPLERATE_LIBS ?= $(NAN_SAMPLERATE)/lib/libsamplerate.a 
258
259     # enable building with Cocoa
260     export WITH_COCOA ?= true
261     export USE_QTKIT ?= false
262     # use cocoa and qtkit for 64bit builds
263     ifeq (64, $(findstring 64, $(MACOSX_ARCHITECTURE)))
264         export WITH_COCOA = true
265         export USE_QTKIT = true
266     endif
267
268   else
269   ifeq ($(OS),freebsd)
270
271     export ID = $(shell whoami)
272     export HOST = $(shell hostname -s)
273     export FREEDESKTOP ?= true
274
275     export NAN_PYTHON ?= /usr/local
276     export NAN_PYTHON_VERSION ?= 3.1
277     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
278     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
279     export NAN_OPENAL ?= /usr/local
280     export NAN_JPEG ?= /usr/local
281     export NAN_PNG ?= /usr/local
282     export NAN_TIFF ?= /usr/local
283     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
284     export NAN_MESA ?= /usr/src/Mesa-3.1
285     export NAN_ZLIB ?= /usr
286     export NAN_NSPR ?= /usr/local
287     export NAN_FREETYPE ?= $(LCGDIR)/freetype
288     export NAN_GETTEXT ?= $(LCGDIR)/gettext
289     export NAN_SDL ?= $(shell sdl-config --prefix)
290     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
291     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
292
293     # Location of MOZILLA/Netscape header files...
294     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
295     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
296     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
297     # if this is not set.
298
299     export NAN_BUILDINFO ?= true
300     # Be paranoid regarding library creation (do not update archives)
301     export NAN_PARANOID ?= true
302
303     # enable l10n
304     # export INTERNATIONAL ?= true
305
306   else
307   ifeq ($(OS),irix)
308
309     export ID = $(shell whoami)
310     export HOST = $(shell /usr/bsd/hostname -s)
311     #export NAN_NO_KETSJI=true
312     export NAN_JUST_BLENDERDYNAMIC=true
313     export NAN_PYTHON_VERSION ?= 3.1
314     ifeq ($(IRIX_USE_GCC), true)
315         export NAN_PYTHON ?= $(LCGDIR)/python_gcc
316     else
317         export NAN_PYTHON ?= $(LCGDIR)/python
318     endif
319     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
320     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a -lpthread
321     export NAN_OPENAL ?= $(LCGDIR)/openal
322     export NAN_JPEG ?= $(LCGDIR)/jpeg
323     export NAN_PNG ?= $(LCGDIR)/png
324     export NAN_TIFF ?= $(LCGDIR)/tiff
325     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
326     export NAN_MESA ?= /usr/src/Mesa-3.1
327     export NAN_ZLIB ?= $(LCGDIR)/zlib
328     export NAN_NSPR ?= $(LCGDIR)/nspr
329     export NAN_FREETYPE ?= $(LCGDIR)/freetype
330     export NAN_ICONV ?= $(LCGDIR)/iconv
331     export NAN_GETTEXT ?= $(LCGDIR)/gettext
332     export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/libintl.a $(NAN_ICONV)/lib/libiconv.a
333     export NAN_SDL ?= $(LCGDIR)/sdl
334     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a
335     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include/SDL
336     export NAN_FFMPEG ?= $(LCGDIR)/ffmpeg
337     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
338     export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include -I$(NANBLENDERHOME)/extern/ffmpeg
339
340     ifeq ($(IRIX_USE_GCC), true)
341       export NAN_OPENEXR ?= $(LCGDIR)/openexr/gcc
342     else
343       export NAN_OPENEXR ?= $(LCGDIR)/openexr
344     endif
345     export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
346     export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a
347
348     # Location of MOZILLA/Netscape header files...
349     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
350     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
351     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
352     # if this is not set.
353
354     export NAN_BUILDINFO ?= true
355     # Be paranoid regarding library creation (do not update archives)
356     export NAN_PARANOID ?= true
357
358     # enable l10n
359     export INTERNATIONAL ?= true
360
361     # Different endianess will make it fail, rely on other plataforms for checks
362     export BF_VERIFY_MO_FILES = false
363
364   else
365   ifeq ($(OS),linux)
366
367     export ID = $(shell whoami)
368     export HOST = $(shell hostname -s)
369     export FREEDESKTOP ?= true
370
371     export NAN_PYTHON ?= /usr
372     export NAN_PYTHON_VERSION ?= 3.1
373     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
374     # Next line if for static python, nan_link.mk uses -lpython$(NAN_PYTHON_VERSION)
375     #export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
376     export NAN_OPENAL ?= /usr
377     export NAN_JPEG ?= /usr
378     export NAN_PNG ?= /usr
379     export NAN_TIFF ?= /usr
380     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
381     export NAN_MESA ?= /usr
382     export NAN_ZLIB ?= /usr
383     export NAN_NSPR ?= $(LCGDIR)/nspr
384     export NAN_FREETYPE ?= /usr
385     export NAN_GETTEXT ?= /usr
386     export NAN_SDL ?= $(shell sdl-config --prefix)
387     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
388     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
389     export NAN_SAMPLERATE ?= /usr
390
391     ifeq ($(WITH_OPENEXR), true)
392       export NAN_OPENEXR ?= $(shell pkg-config --variable=prefix OpenEXR )
393       export NAN_OPENEXR_INC ?= $(shell pkg-config --cflags OpenEXR )
394       export NAN_OPENEXR_LIBS ?= $(addprefix ${NAN_OPENEXR}/lib/lib,$(addsuffix .a,$(shell pkg-config --libs-only-l OpenEXR | sed -s "s/-l//g" )))
395     endif
396
397     ifeq ($(WITH_FFTW3), true)
398       export BF_FFTW3 ?= $(shell pkg-config --variable=prefix fftw3 )
399       export BF_FFTW3_INC ?= $(shell pkg-config --variable=includedir fftw3 )
400       export BF_FFTW3_LIBS ?= $(shell pkg-config --libs fftw3 )
401     endif
402
403     ifeq ($(WITH_OPENJPEG), true)
404       export BF_OPENJPEG ?= /usr
405       export BF_OPENJPEG_INC ?= /usr/include
406       export BF_OPENJPEG_LIBS ?= -lopenjpeg
407     endif
408
409     # Uncomment the following line to use Mozilla inplace of netscape
410
411     # Location of MOZILLA/Netscape header files...
412     export NAN_MOZILLA_INC ?= /usr/include/mozilla
413     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
414     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
415     # if this is not set.
416
417     export NAN_BUILDINFO ?= true
418     # Be paranoid regarding library creation (do not update archives)
419     export NAN_PARANOID ?= true
420
421     # l10n
422     export INTERNATIONAL ?= true
423
424     export WITH_BINRELOC ?= true
425
426     # enable ffmpeg support
427     ifndef NAN_NO_FFMPEG
428       export WITH_FFMPEG ?= true
429     endif
430
431   else
432   ifeq ($(OS),openbsd)
433
434     export ID = $(shell whoami)
435     export HOST = $(shell hostname -s)
436     export FREEDESKTOP ?= true
437
438     export NAN_PYTHON ?= $(LCGDIR)/python
439     export NAN_PYTHON_VERSION ?= 3.1
440     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
441     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
442     export NAN_OPENAL ?= $(LCGDIR)/openal
443     export NAN_JPEG ?= $(LCGDIR)/jpeg
444     export NAN_PNG ?= $(LCGDIR)/png
445     export NAN_TIFF ?= $(LCGDIR)/tiff
446     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
447     export NAN_MESA ?= /usr/src/Mesa-3.1
448     export NAN_ZLIB ?= $(LCGDIR)/zlib
449     export NAN_NSPR ?= $(LCGDIR)/nspr
450     export NAN_FREETYPE ?= $(LCGDIR)/freetype
451     export NAN_GETTEXT ?= $(LCGDIR)/gettext
452     export NAN_SDL ?= $(shell sdl-config --prefix)
453     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
454     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
455
456     # Location of MOZILLA/Netscape header files...
457     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
458     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
459     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
460     # if this is not set.
461
462     export NAN_BUILDINFO ?= true
463     # Be paranoid regarding library creation (do not update archives)
464     export NAN_PARANOID ?= true
465
466     # l10n
467     #export INTERNATIONAL ?= true
468
469   else
470   ifeq ($(OS),solaris)
471
472     export ID = $(shell /usr/ucb/whoami)
473     export HOST = $(shell hostname)
474     export NAN_PYTHON ?= $(LCGDIR)/python
475     export NAN_PYTHON_VERSION ?= 3.1
476     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
477     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
478     export NAN_OPENAL ?= $(LCGDIR)/openal
479     export NAN_JPEG ?= $(LCGDIR)/jpeg
480     export NAN_PNG ?= $(LCGDIR)/png
481     export NAN_TIFF ?= /usr
482     export NAN_TERRAPLAY ?=
483     export NAN_MESA ?= /usr/X11
484     export NAN_ZLIB ?= $(LCGDIR)/zlib
485     export NAN_NSPR ?= $(LCGDIR)/nspr
486     export NAN_FREETYPE ?= $(LCGDIR)/freetype
487     export NAN_GETTEXT ?= $(LCGDIR)/gettext
488     export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/libintl.a $(NAN_GETTEXT)/lib/libiconv.a
489     export NAN_SDL ?= $(LCGDIR)/sdl
490     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include/SDL
491     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a
492
493     # this only exists at the moment for i386-64 CPU Types at the moment
494     export NAN_OPENEXR ?= $(LCGDIR)/openexr
495     export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
496     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
497
498     # Location of MOZILLA/Netscape header files...
499     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
500     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
501     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
502     # if this is not set.
503
504     export NAN_BUILDINFO ?= true
505     # Be paranoid regarding library creation (do not update archives)
506     export NAN_PARANOID ?= true
507
508     # l10n
509     #export INTERNATIONAL ?= true
510
511   else
512   ifeq ($(OS),windows)
513
514     export ID = $(LOGNAME)
515     export NAN_PYTHON ?= $(LCGDIR)/python
516     export NAN_ICONV ?= $(LCGDIR)/iconv
517     export NAN_PYTHON_VERSION ?= 3.1
518     export NAN_OPENAL ?= $(LCGDIR)/openal
519     export NAN_JPEG ?= $(LCGDIR)/jpeg
520     export NAN_PNG ?= $(LCGDIR)/png
521     export NAN_TIFF ?= $(LCGDIR)/tiff
522     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
523     export NAN_MESA ?= /usr/src/Mesa-3.1
524     export NAN_ZLIB ?= $(LCGDIR)/zlib
525     export NAN_NSPR ?= $(LCGDIR)/nspr
526     export NAN_GETTEXT ?= $(LCGDIR)/gettext
527     ifeq ($(FREE_WINDOWS), true)
528       export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/freegettext.a $(NAN_ICONV)/lib/freeiconv.a
529       export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
530       export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/lib25_vs2005/libpython25.a
531       export NAN_FREETYPE ?= $(LCGDIR)/gcc/freetype
532       export NAN_SDL ?= $(LCGDIR)/gcc/sdl
533       export NAN_OPENEXR ?= $(LCGDIR)/gcc/openexr
534       export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
535       export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a
536       export NAN_PTHREADS ?= $(LCGDIR)/pthreads
537     else
538       export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/gnu_gettext.lib $(NAN_ICONV)/lib/iconv.lib
539       export NAN_PYTHON_BINARY ?= python
540       export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python23.lib
541       export NAN_FREETYPE ?= $(LCGDIR)/freetype
542       export NAN_SDL ?= $(LCGDIR)/sdl
543       export NAN_OPENEXR ?= $(LCGDIR)/openexr
544       export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/IlmImf -I$(NAN_OPENEXR)/include/Imath -I$(NAN_OPENEXR)/include/Iex
545       export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/IlmImf.lib $(NAN_OPENEXR)/lib/Half.lib $(NAN_OPENEXR)/lib/Iex.lib
546     endif
547     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
548
549     export NAN_WINTAB ?= $(LCGDIR)/wintab
550
551     # Location of MOZILLA/Netscape header files...
552     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
553     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
554     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
555     # if this is not set.
556     export NAN_PYTHON_BINARY ?= python
557     export NAN_BUILDINFO ?= true
558     # Be paranoid regarding library creation (do not update archives)
559     export NAN_PARANOID ?= true
560
561     # l10n
562     export INTERNATIONAL ?= true
563
564     # enable quicktime support
565     # export WITH_QUICKTIME ?= true
566
567   else # Platform not listed above
568
569     export NAN_PYTHON ?= $(LCGDIR)/python
570     export NAN_PYTHON_VERSION ?= 3.1
571     export NAN_PYTHON_BINARY ?= python
572     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
573
574     export NAN_OPENAL ?= $(LCGDIR)/openal
575     export NAN_JPEG ?= $(LCGDIR)/jpeg
576     export NAN_PNG ?= $(LCGDIR)/png
577     export NAN_TIFF ?= $(LCGDIR)/tiff
578     export NAN_SDL ?= $(LCGDIR)/sdl
579     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
580     export NAN_MESA ?= /usr/src/Mesa-3.1
581     export NAN_ZLIB ?= $(LCGDIR)/zlib
582     export NAN_NSPR ?= $(LCGDIR)/nspr
583     export NAN_FREETYPE ?= $(LCGDIR)/freetype
584     export NAN_GETTEXT ?= $(LCGDIR)/gettext
585     export NAN_SDL ?= $(shell sdl-config --prefix)
586     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
587     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
588
589     # Location of MOZILLA/Netscape header files...
590     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
591     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
592     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
593     # if this is not set.
594
595     export NAN_BUILDINFO ?= true
596     # Be paranoid regarding library creation (do not update archives)
597     export NAN_PARANOID ?= true
598
599     # l10n
600     #export INTERNATIONAL ?= true
601
602   endif # windows + fallback
603   endif # solaris
604   endif # openbsd
605   endif # linux
606   endif # irix
607   endif # freebsd
608   endif # darwin
609
610 endif # CONFIG_GUESS
611
612 # Don't want to build the gameengine?
613 ifeq ($(NAN_NO_KETSJI), true)
614    export NAN_JUST_BLENDERDYNAMIC=true
615 endif