Shape Keys
[blender-staging.git] / source / nan_definitions.mk
index 424a7c558d7993bc26a34b2c175e05123c8623fe..1aff7e1dea71fee365327cf1ecbdb4b54c94173e 100644 (file)
@@ -1,3 +1,5 @@
+# -*- mode: gnumakefile; tab-width: 8; indent-tabs-mode: t; -*-
+# vim: tabstop=8
 #
 # $Id$
 #
@@ -22,7 +24,7 @@
 #
 # The Original Code is: all of this file.
 #
-# Contributor(s): none yet.
+# Contributor(s): GSR
 #
 # ***** END GPL LICENSE BLOCK *****
 #
 
 sinclude ../user-def.mk
 
+# This warning only takes place once in source/
+ifeq (debug, $(findstring debug, $(MAKECMDGOALS)))
+  ifeq (all, $(findstring all, $(MAKECMDGOALS)))
+    export ERRTXT = "ERROR: all and debug targets cannot be used together anymore"
+    export ERRTXT += "Use something like ..make all && make debug.. instead"
+  endif
+endif
+
+ifdef ERRTXT
+$(error $(ERRTXT))
+endif
+
 ifndef CONFIG_GUESS
   ifeq (debug, $(findstring debug, $(MAKECMDGOALS)))
-    ifeq (all, $(findstring all, $(MAKECMDGOALS)))
-all debug::
-      ERRTXT = "ERROR: all and debug targets cannot be used together anymore"
-      ERRTXT += "Use something like ..make all && make debug.. instead"
-      $(error $(ERRTXT))
-    endif
+    export DEBUG_DIR = debug/
+    export ALL_OR_DEBUG = debug
+  endif
+  ifeq (all, $(findstring all, $(MAKECMDGOALS)))
+    export ALL_OR_DEBUG ?= all
   endif
 
   # First generic defaults for all platforms which should be constant.
@@ -68,173 +81,103 @@ all debug::
     endif
 
     export NAN_MOTO ?= $(LCGDIR)/moto
-ifeq ($(FREE_WINDOWS), true)
-    export NAN_SOLID ?= $(LCGDIR)/gcc/solid
-    export NAN_QHULL ?= $(LCGDIR)/gcc/qhull
-else
-    export NAN_SOLID ?= $(LCGDIR)/solid
-    export NAN_QHULL ?= $(LCGDIR)/qhull
-endif
+       export NAN_ITASC ?= $(LCGDIR)/itasc
+       
+    export BF_PROFILE ?= false
+    export NAN_USE_BULLET ?= true
     export NAN_BULLET2 ?= $(LCGDIR)/bullet2
-    export NAN_SUMO ?= $(SRCHOME)/gameengine/Physics/Sumo
-    export NAN_FUZZICS ?= $(SRCHOME)/gameengine/Physics/Sumo/Fuzzics
-    export NAN_BLENKEY ?= $(LCGDIR)/blenkey
     export NAN_DECIMATION ?= $(LCGDIR)/decimation
     export NAN_GUARDEDALLOC ?= $(LCGDIR)/guardedalloc
     export NAN_IKSOLVER ?= $(LCGDIR)/iksolver
     export NAN_BSP ?= $(LCGDIR)/bsp
-       export NAN_BOOLOP ?= $(LCGDIR)/boolop
-    export NAN_SOUNDSYSTEM ?= $(LCGDIR)/SoundSystem
+    export NAN_BOOLOP ?= $(LCGDIR)/boolop
+    export NAN_AUDASPACE ?= $(LCGDIR)/audaspace
     export NAN_STRING ?= $(LCGDIR)/string
     export NAN_MEMUTIL ?= $(LCGDIR)/memutil
     export NAN_CONTAINER ?= $(LCGDIR)/container
     export NAN_ACTION ?= $(LCGDIR)/action
     export NAN_GHOST ?= $(LCGDIR)/ghost
     export NAN_TEST_VERBOSITY ?= 1
-    export NAN_BMFONT ?= $(LCGDIR)/bmfont
     export NAN_OPENNL ?= $(LCGDIR)/opennl
     export NAN_ELBEEM ?= $(LCGDIR)/elbeem
+    export NAN_SMOKE ?= $(LCGDIR)/smoke
     export NAN_SUPERLU ?= $(LCGDIR)/superlu
     export NAN_GLEW ?= $(LCGDIR)/glew
     ifeq ($(FREE_WINDOWS), true)
-      export NAN_FTGL ?= $(LCGDIR)/gcc/ftgl
       export NAN_FFMPEG ?= $(LCGDIR)/gcc/ffmpeg
-      export NAN_FFMPEGLIBS ?= $(NAN_FFMPEG)/lib/libavformat.a $(NAN_FFMPEG)/lib/libavutil.a $(NAN_FFMPEG)/lib/libavcodec.a
-      export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include
+      export NAN_FFMPEGLIBS ?= $(NAN_FFMPEG)/lib/libavformat.a $(NAN_FFMPEG)/lib/libavutil.a $(NAN_FFMPEG)/lib/libavcodec.a $(NAN_FFMPEG)/lib/libavdevice.a
     else
-      export NAN_FTGL ?= $(LCGDIR)/ftgl
       export NAN_FFMPEG ?= $(LCGDIR)/ffmpeg
-      export NAN_FFMPEGLIBS ?= $(NAN_FFMPEG)/lib/libavformat.a $(NAN_FFMPEG)/lib/libavcodec.a $(NAN_FFMPEG)/lib/libswscale.a $(NAN_FFMPEG)/lib/libavutil.a
-      export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include
-    endif
-
-    ifeq ($(WITH_VERSE), true)
-      export NAN_VERSE ?= $(LCGDIR)/verse
+      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
     endif
+    export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include -I$(NANBLENDERHOME)/extern/ffmpeg
 
     export WITH_OPENEXR ?= true
     export WITH_DDS ?= true
+    export WITH_OPENJPEG ?= true
+    export WITH_LZO ?= true
+    export WITH_LZMA ?= true
+    export NAN_LZO ?= $(LCGDIR)/lzo
+    export NAN_LZMA ?= $(LCGDIR)/lzma
+    export WITH_OPENAL ?= false
+    export WITH_JACK ?= false
+    export WITH_SNDFILE ?= false
+
+  ifeq ($(WITH_OPENAL), true)
+    export NAN_OPENAL ?= /usr
+  endif
 
-    ifeq ($(OS),windows)
-       export NAN_WINTAB ?= $(LCGDIR)/wintab
-      ifeq ($(FREE_WINDOWS), true)
-        export NAN_PTHREADS ?= $(LCGDIR)/pthreads
-        export NAN_OPENEXR ?= $(LCGDIR)/gcc/openexr
-        export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a
-        export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
-      else
-        export NAN_OPENEXR ?= $(LCGDIR)/openexr
-        export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/IlmImf.lib $(NAN_OPENEXR)/lib/Half.lib $(NAN_OPENEXR)/lib/Iex.lib
-        export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/IlmImf -I$(NAN_OPENEXR)/include/Imath -I$(NAN_OPENEXR)/include/Iex
-      endif
-    else
-      ifeq ($(OS),darwin)
-          export NAN_OPENEXR ?= $(LCGDIR)/openexr
-         ifeq ($(CPU),powerpc)
-             export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a
-         else
-             export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a
-         endif
-      else
-        ifeq ($(OS),linux)
-                       ifeq ($(WITH_OPENEXR), true)
-                       NAN_OPENEXR?=$(shell pkg-config --variable=prefix OpenEXR )
-                       NAN_OPENEXR_INC?=$(shell pkg-config --cflags OpenEXR )
-                       NAN_OPENEXR_LIBS?=$(addprefix ${NAN_OPENEXR}/lib/lib,$(addsuffix .a,$(shell pkg-config --libs-only-l OpenEXR | sed -s "s/-l//g" )))
-                       endif
-        else
-          ifeq ($(OS), solaris)
-              # this only exists at the moment for i386-64 CPU Types at the moment
-              export NAN_OPENEXR ?= $(LCGDIR)/openexr
-
-              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
-          else
-            export NAN_OPENEXR ?= /usr/local
-           export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a
-          endif
-        endif
-      endif
-                       ifeq ($(WITH_OPENEXR), true)
-                               export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
-                       endif
+  ifeq ($(WITH_JACK), true)
+    export NAN_JACK ?= /usr
+    export NAN_JACKCFLAGS ?= -I$(NAN_JACK)/include/jack
+    export NAN_JACKLIBS ?= $(NAN_JACK)/lib/libjack.a
+  endif
 
-    endif
-  # Platform Dependent settings go below:
+  ifeq ($(WITH_SNDFILE),true)
+    export NAN_SNDFILE ?= /usr
+    export NAN_SNDFILECFLAGS ?= -I$(NAN_SNDFILE)/include
+    export NAN_SNDFILELIBS ?= $(NAN_SNDFILE)/lib/libsndfile.a $(NAN_SNDFILE)/lib/libFLAC.a $(NAN_SNDFILE)/lib/libogg.a
+  endif
 
   ifeq ($(NAN_USE_FFMPEG_CONFIG), true)
-    export NAN_FFMPEG ?= $(shell ffmpeg-config --prefix)
-    export NAN_FFMPEGLIBS ?= $(shell ffmpeg-config --libs avformat avcodec)
-    export NAN_FFMPEGCFLAGS ?= $(shell ffmpeg-config --cflags)
+    export NAN_FFMPEG = $(shell pkg-config --variable=prefix libavcodec) # Assume they are all in the same prefix
+    export NAN_FFMPEGLIBS = $(shell pkg-config --libs libavcodec libavdevice libavformat libswscale libavutil)
+    export NAN_FFMPEGCFLAGS = $(shell pkg-config --cflags libavcodec libavdevice libavformat libswscale libavutil)
   endif
 
-  ifeq ($(OS),beos)
+    # Compare recreated .mo files with committed ones
+    export BF_VERIFY_MO_FILES ?= true
 
-    export ID = $(USER)
-    export HOST = $(HOSTNAME)
-    export NAN_PYTHON ?= $(LCGDIR)/python
-    export NAN_PYTHON_VERSION ?= 2.3
-    export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
-    export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
-    export NAN_OPENAL ?= $(LCGDIR)/openal
-    export NAN_FMOD ?= $(LCGDIR)/fmod
-    export NAN_JPEG ?= $(LCGDIR)/jpeg
-    export NAN_PNG ?= $(LCGDIR)/png
-    export NAN_TIFF ?= $(LCGDIR)/tiff
-    export NAN_ODE ?= $(LCGDIR)/ode
-    export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
-    export NAN_MESA ?= /usr/src/Mesa-3.1
-    export NAN_ZLIB ?= $(LCGDIR)/zlib
-    export NAN_NSPR ?= $(LCGDIR)/nspr
-    export NAN_FREETYPE ?= $(LCGDIR)/freetype
-    export NAN_GETTEXT ?= $(LCGDIR)/gettext
-    export NAN_SDL ?= $(shell sdl-config --prefix)
-    export NAN_SDLLIBS ?= $(shell sdl-config --libs) 
-    export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
-
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
-    # Location of MOZILLA/Netscape header files...
-    export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
-    export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
-    # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
-    # if this is not set.
-
-    export NAN_BUILDINFO ?= true
-    # Be paranoid regarding library creation (do not update archives)
-    export NAN_PARANOID ?= true
-
-    # l10n
-    #export INTERNATIONAL ?= true
-
-    # enable freetype2 support for text objects
-    #export WITH_FREETYPE2 ?= true
-
-  else
+  # Platform Dependent settings go below:
   ifeq ($(OS),darwin)
 
     export ID = $(shell whoami)
     export HOST = $(shell hostname -s)
 
-    export PY_FRAMEWORK        = 1    
-
-    ifdef PY_FRAMEWORK
-       export NAN_PYTHON ?= /System/Library/Frameworks/Python.framework/Versions/2.3
-       export NAN_PYTHON_VERSION ?= 2.3
-       export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
-       export NAN_PYTHON_LIB ?= -framework Python 
-    else 
-       export NAN_PYTHON ?= /sw
-       export NAN_PYTHON_VERSION ?= 2.3
-       export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
-       export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
+    export NAN_PYTHON_VERSION = 3.1
+
+    ifeq ($(NAN_PYTHON_VERSION),3.1)
+      export PY_FRAMEWORK ?= 0
+      export NAN_PYTHON ?= $(LCGDIR)/python
+      export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/libpython$(NAN_PYTHON_VERSION).a
+    else
+      export PY_FRAMEWORK ?= 1
+      ifdef PY_FRAMEWORK
+        export NAN_PYTHON ?= /System/Library/Frameworks/Python.framework/Versions/2.5
+        export NAN_PYTHON_VERSION ?= 2.5
+        export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
+        export NAN_PYTHON_LIB ?= -framework Python
+      else
+        export NAN_PYTHON ?= /sw
+        export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
+        export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
+      endif
     endif
 
     export NAN_OPENAL ?= $(LCGDIR)/openal
-    export NAN_FMOD ?= $(LCGDIR)/fmod
     export NAN_JPEG ?= $(LCGDIR)/jpeg
     export NAN_PNG ?= $(LCGDIR)/png
     export NAN_TIFF ?= $(LCGDIR)/tiff
-    export NAN_ODE ?= $(LCGDIR)/ode
     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
     export NAN_MESA ?= /usr/src/Mesa-3.1
     export NAN_ZLIB ?= $(LCGDIR)/zlib
@@ -249,14 +192,16 @@ endif
     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a -framework Cocoa -framework IOKit
 
-    # export NAN_NO_KETSJI=true
+    export NAN_OPENEXR ?= $(LCGDIR)/openexr
+    export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
+    export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a
+    
+    export NAN_NO_KETSJI=false
 
     ifeq ($(CPU), i386)
-           export NAN_NO_OPENAL=true
+      export WITH_OPENAL=false
     endif
 
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
@@ -273,8 +218,8 @@ endif
     # enable l10n
     export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    export WITH_FREETYPE2 ?= true
+    export NAN_SAMPLERATE ?= $(LCGDIR)/samplerate
+    export NAN_SAMPLERATE_LIBS ?= $(NAN_SAMPLERATE)/lib/libsamplerate.a 
 
   else
   ifeq ($(OS),freebsd)
@@ -284,15 +229,13 @@ endif
     export FREEDESKTOP ?= true
 
     export NAN_PYTHON ?= /usr/local
-    export NAN_PYTHON_VERSION ?= 2.5
+    export NAN_PYTHON_VERSION ?= 3.1
     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
     export NAN_OPENAL ?= /usr/local
-    export NAN_FMOD ?= $(LCGDIR)/fmod
     export NAN_JPEG ?= /usr/local
     export NAN_PNG ?= /usr/local
     export NAN_TIFF ?= /usr/local
-    export NAN_ODE ?= $(LCGDIR)/ode
     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
     export NAN_MESA ?= /usr/src/Mesa-3.1
     export NAN_ZLIB ?= /usr
@@ -303,8 +246,6 @@ endif
     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
 
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
@@ -318,9 +259,6 @@ endif
     # enable l10n
     # export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    # export WITH_FREETYPE2 ?= true
-
   else
   ifeq ($(OS),irix)
 
@@ -328,29 +266,41 @@ endif
     export HOST = $(shell /usr/bsd/hostname -s)
     #export NAN_NO_KETSJI=true
     export NAN_JUST_BLENDERDYNAMIC=true
-    export NAN_PYTHON ?= $(LCGDIR)/python
-    export NAN_PYTHON_VERSION ?= 2.3
+    export NAN_PYTHON_VERSION ?= 3.1
+    ifeq ($(IRIX_USE_GCC), true)
+        export NAN_PYTHON ?= $(LCGDIR)/python_gcc
+    else
+        export NAN_PYTHON ?= $(LCGDIR)/python
+    endif
     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
-    export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
+    export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a -lpthread
     export NAN_OPENAL ?= $(LCGDIR)/openal
-    export NAN_FMOD ?= $(LCGDIR)/fmod
     export NAN_JPEG ?= $(LCGDIR)/jpeg
     export NAN_PNG ?= $(LCGDIR)/png
-    export NAN_TIFF ?= /usr/freeware
-    export NAN_ODE ?= $(LCGDIR)/ode
+    export NAN_TIFF ?= $(LCGDIR)/tiff
     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
     export NAN_MESA ?= /usr/src/Mesa-3.1
-    export NAN_ZLIB ?= /usr/freeware
+    export NAN_ZLIB ?= $(LCGDIR)/zlib
     export NAN_NSPR ?= $(LCGDIR)/nspr
-    export NAN_FREETYPE ?= /usr/freeware
-    export NAN_GETTEXT ?= /usr/freeware
-    export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib32/libintl.a
+    export NAN_FREETYPE ?= $(LCGDIR)/freetype
+    export NAN_ICONV ?= $(LCGDIR)/iconv
+    export NAN_GETTEXT ?= $(LCGDIR)/gettext
+    export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/libintl.a $(NAN_ICONV)/lib/libiconv.a
     export NAN_SDL ?= $(LCGDIR)/sdl
-    export NAN_SDLLIBS ?= -L$(NAN_SDL)/lib -lSDL
+    export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a
     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include/SDL
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
+    export NAN_FFMPEG ?= $(LCGDIR)/ffmpeg
+    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
+    export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include -I$(NANBLENDERHOME)/extern/ffmpeg
+
+    ifeq ($(IRIX_USE_GCC), true)
+      export NAN_OPENEXR ?= $(LCGDIR)/openexr/gcc
+    else
+      export NAN_OPENEXR ?= $(LCGDIR)/openexr
+    endif
+    export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
+    export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a $(NAN_OPENEXR)/lib/libIlmThread.a
+
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
@@ -364,8 +314,8 @@ endif
     # enable l10n
     export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    export WITH_FREETYPE2 ?= true
+    # Different endianess will make it fail, rely on other plataforms for checks
+    export BF_VERIFY_MO_FILES = false
 
   else
   ifeq ($(OS),linux)
@@ -375,15 +325,14 @@ endif
     export FREEDESKTOP ?= true
 
     export NAN_PYTHON ?= /usr
-    export NAN_PYTHON_VERSION ?= 2.5
+    export NAN_PYTHON_VERSION ?= 3.1
     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
-    export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
+    # Next line if for static python, nan_link.mk uses -lpython$(NAN_PYTHON_VERSION)
+    #export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
     export NAN_OPENAL ?= /usr
-    export NAN_FMOD ?= $(LCGDIR)/fmod
     export NAN_JPEG ?= /usr
     export NAN_PNG ?= /usr
     export NAN_TIFF ?= /usr
-    export NAN_ODE ?= $(LCGDIR)/ode
     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
     export NAN_MESA ?= /usr
     export NAN_ZLIB ?= /usr
@@ -393,15 +342,16 @@ endif
     export NAN_SDL ?= $(shell sdl-config --prefix)
     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
+    export NAN_SAMPLERATE ?= /usr
 
-ifneq ($(NAN_USE_FFMPEG_CONFIG), true)
-    export NAN_FFMPEG ?= /usr
-    export NAN_FFMPEGLIBS ?= -L$(NAN_FFMPEG)/lib -lavformat -lavcodec -lavutil -lswscale -ldts -lz
-    export NAN_FFMPEGCFLAGS ?= -I$(NAN_FFMPEG)/include
-endif
+    ifeq ($(WITH_OPENEXR), true)
+      export NAN_OPENEXR ?= $(shell pkg-config --variable=prefix OpenEXR )
+      export NAN_OPENEXR_INC ?= $(shell pkg-config --cflags OpenEXR )
+      export NAN_OPENEXR_LIBS ?= $(addprefix ${NAN_OPENEXR}/lib/lib,$(addsuffix .a,$(shell pkg-config --libs-only-l OpenEXR | sed -s "s/-l//g" )))
+    endif
 
     # Uncomment the following line to use Mozilla inplace of netscape
-    export CPPFLAGS += -DMOZ_NOT_NET
+
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= /usr/include/mozilla
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
@@ -415,14 +365,11 @@ endif
     # l10n
     export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    export WITH_FREETYPE2 ?= true
-
     export WITH_BINRELOC ?= true
 
     # enable ffmpeg support
     ifndef NAN_NO_FFMPEG
-         export WITH_FFMPEG ?= true
+      export WITH_FFMPEG ?= true
     endif
 
   else
@@ -433,15 +380,13 @@ endif
     export FREEDESKTOP ?= true
 
     export NAN_PYTHON ?= $(LCGDIR)/python
-    export NAN_PYTHON_VERSION ?= 2.3
+    export NAN_PYTHON_VERSION ?= 3.1
     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
     export NAN_OPENAL ?= $(LCGDIR)/openal
-    export NAN_FMOD ?= $(LCGDIR)/fmod
     export NAN_JPEG ?= $(LCGDIR)/jpeg
     export NAN_PNG ?= $(LCGDIR)/png
     export NAN_TIFF ?= $(LCGDIR)/tiff
-    export NAN_ODE ?= $(LCGDIR)/ode
     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
     export NAN_MESA ?= /usr/src/Mesa-3.1
     export NAN_ZLIB ?= $(LCGDIR)/zlib
@@ -452,8 +397,6 @@ endif
     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
 
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
@@ -467,24 +410,19 @@ endif
     # l10n
     #export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    #export WITH_FREETYPE2 ?= true
-
   else
   ifeq ($(OS),solaris)
 
     export ID = $(shell /usr/ucb/whoami)
     export HOST = $(shell hostname)
     export NAN_PYTHON ?= $(LCGDIR)/python
-    export NAN_PYTHON_VERSION ?= 2.5
+    export NAN_PYTHON_VERSION ?= 3.1
     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
-    export NAN_OPENAL ?= $(LCGDIR)/openal 
-    export NAN_FMOD ?= $(LCGDIR)/fmod
+    export NAN_OPENAL ?= $(LCGDIR)/openal
     export NAN_JPEG ?= $(LCGDIR)/jpeg
     export NAN_PNG ?= $(LCGDIR)/png
     export NAN_TIFF ?= /usr
-    export NAN_ODE ?= $(LCGDIR)/ode
     export NAN_TERRAPLAY ?=
     export NAN_MESA ?= /usr/X11
     export NAN_ZLIB ?= $(LCGDIR)/zlib
@@ -496,8 +434,11 @@ endif
     export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include/SDL
     export NAN_SDLLIBS ?= $(NAN_SDL)/lib/libSDL.a
 
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
+    # this only exists at the moment for i386-64 CPU Types at the moment
+    export NAN_OPENEXR ?= $(LCGDIR)/openexr
+    export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
+    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
+
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
@@ -511,33 +452,14 @@ endif
     # l10n
     #export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    #export WITH_FREETYPE2 ?= true
-
   else
   ifeq ($(OS),windows)
 
     export ID = $(LOGNAME)
     export NAN_PYTHON ?= $(LCGDIR)/python
     export NAN_ICONV ?= $(LCGDIR)/iconv
-    export NAN_PYTHON_VERSION ?= 2.5
-    ifeq ($(FREE_WINDOWS), true)
-      export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
-      export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/freepy.a
-      export NAN_FREETYPE ?= $(LCGDIR)/gcc/freetype
-      export NAN_ODE ?= $(LCGDIR)/gcc/ode
-      export NAN_SDL ?= $(LCGDIR)/gcc/sdl
-      export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
-    else
-      export NAN_PYTHON_BINARY ?= python
-      export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python23.lib
-      export NAN_FREETYPE ?= $(LCGDIR)/freetype
-      export NAN_ODE ?= $(LCGDIR)/ode
-      export NAN_SDL ?= $(LCGDIR)/sdl
-      export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
-    endif
+    export NAN_PYTHON_VERSION ?= 3.1
     export NAN_OPENAL ?= $(LCGDIR)/openal
-    export NAN_FMOD ?= $(LCGDIR)/fmod
     export NAN_JPEG ?= $(LCGDIR)/jpeg
     export NAN_PNG ?= $(LCGDIR)/png
     export NAN_TIFF ?= $(LCGDIR)/tiff
@@ -547,19 +469,35 @@ endif
     export NAN_NSPR ?= $(LCGDIR)/nspr
     export NAN_GETTEXT ?= $(LCGDIR)/gettext
     ifeq ($(FREE_WINDOWS), true)
-       export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/freegettext.a $(NAN_ICONV)/lib/freeiconv.a
+      export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/freegettext.a $(NAN_ICONV)/lib/freeiconv.a
+      export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
+      export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/lib25_vs2005/libpython25.a
+      export NAN_FREETYPE ?= $(LCGDIR)/gcc/freetype
+      export NAN_SDL ?= $(LCGDIR)/gcc/sdl
+      export NAN_OPENEXR ?= $(LCGDIR)/gcc/openexr
+      export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/OpenEXR
+      export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/libIlmImf.a $(NAN_OPENEXR)/lib/libHalf.a $(NAN_OPENEXR)/lib/libIex.a
+      export NAN_PTHREADS ?= $(LCGDIR)/pthreads
     else
-       export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/gnu_gettext.lib $(NAN_ICONV)/lib/iconv.lib
+      export NAN_GETTEXT_LIB ?= $(NAN_GETTEXT)/lib/gnu_gettext.lib $(NAN_ICONV)/lib/iconv.lib
+      export NAN_PYTHON_BINARY ?= python
+      export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python23.lib
+      export NAN_FREETYPE ?= $(LCGDIR)/freetype
+      export NAN_SDL ?= $(LCGDIR)/sdl
+      export NAN_OPENEXR ?= $(LCGDIR)/openexr
+      export NAN_OPENEXR_INC ?= -I$(NAN_OPENEXR)/include -I$(NAN_OPENEXR)/include/IlmImf -I$(NAN_OPENEXR)/include/Imath -I$(NAN_OPENEXR)/include/Iex
+      export NAN_OPENEXR_LIBS ?= $(NAN_OPENEXR)/lib/IlmImf.lib $(NAN_OPENEXR)/lib/Half.lib $(NAN_OPENEXR)/lib/Iex.lib
     endif
+    export NAN_SDLCFLAGS ?= -I$(NAN_SDL)/include
+
+    export NAN_WINTAB ?= $(LCGDIR)/wintab
 
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
     # if this is not set.
-       export NAN_PYTHON_BINARY ?= python
+    export NAN_PYTHON_BINARY ?= python
     export NAN_BUILDINFO ?= true
     # Be paranoid regarding library creation (do not update archives)
     export NAN_PARANOID ?= true
@@ -567,26 +505,21 @@ endif
     # l10n
     export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    export WITH_FREETYPE2 ?= true
-
     # enable quicktime support
     # export WITH_QUICKTIME ?= true
 
   else # Platform not listed above
 
     export NAN_PYTHON ?= $(LCGDIR)/python
-    export NAN_PYTHON_VERSION ?= 2.3
+    export NAN_PYTHON_VERSION ?= 3.1
     export NAN_PYTHON_BINARY ?= python
     export NAN_PYTHON_LIB ?= $(NAN_PYTHON)/lib/python$(NAN_PYTHON_VERSION)/config/libpython$(NAN_PYTHON_VERSION).a
 
     export NAN_OPENAL ?= $(LCGDIR)/openal
-    export NAN_FMOD ?= $(LCGDIR)/fmod
     export NAN_JPEG ?= $(LCGDIR)/jpeg
     export NAN_PNG ?= $(LCGDIR)/png
     export NAN_TIFF ?= $(LCGDIR)/tiff
     export NAN_SDL ?= $(LCGDIR)/sdl
-    export NAN_ODE ?= $(LCGDIR)/ode
     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
     export NAN_MESA ?= /usr/src/Mesa-3.1
     export NAN_ZLIB ?= $(LCGDIR)/zlib
@@ -597,8 +530,6 @@ endif
     export NAN_SDLLIBS ?= $(shell sdl-config --libs)
     export NAN_SDLCFLAGS ?= $(shell sdl-config --cflags)
 
-    # Uncomment the following line to use Mozilla inplace of netscape
-    # CPPFLAGS +=-DMOZ_NOT_NET
     # Location of MOZILLA/Netscape header files...
     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
@@ -612,27 +543,17 @@ endif
     # l10n
     #export INTERNATIONAL ?= true
 
-    # enable freetype2 support for text objects
-    #export WITH_FREETYPE2 ?= true
+  endif # windows + fallback
+  endif # solaris
+  endif # openbsd
+  endif # linux
+  endif # irix
+  endif # freebsd
+  endif # darwin
 
-  endif
-
-endif
-endif
-endif
-endif
-endif
-endif
-endif
-endif
+endif # CONFIG_GUESS
 
 # Don't want to build the gameengine?
 ifeq ($(NAN_NO_KETSJI), true)
    export NAN_JUST_BLENDERDYNAMIC=true
-   export NAN_NO_OPENAL=true
 endif
-
-# INTERNATIONAL implies WITH_FREETYPE2
-ifeq ($(INTERNATIONAL), true)
-   export WITH_FREETYPE2=true
-endif