This is sort of a two parter from the mailling list but really its the
[blender.git] / source / nan_definitions.mk
1 #
2 # $Id$
3 #
4 # ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
5 #
6 # This program is free software; you can redistribute it and/or
7 # modify it under the terms of the GNU General Public License
8 # as published by the Free Software Foundation; either version 2
9 # of the License, or (at your option) any later version. The Blender
10 # Foundation also sells licenses for use in proprietary software under
11 # the Blender License.  See http://www.blender.org/BL/ for information
12 # about this.
13 #
14 # This program is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 # GNU General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License
20 # along with this program; if not, write to the Free Software Foundation,
21 # Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22 #
23 # The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
24 # All rights reserved.
25 #
26 # The Original Code is: all of this file.
27 #
28 # Contributor(s): none yet.
29 #
30 # ***** END GPL/BL DUAL LICENSE BLOCK *****
31 #
32 # set some defaults when these are not overruled (?=) by environment variables
33 #
34
35 ifndef CONFIG_GUESS
36   ifeq (debug, $(findstring debug, $(MAKECMDGOALS)))
37     ifeq (all, $(findstring all, $(MAKECMDGOALS)))
38 all debug::
39       ERRTXT = "ERROR: all and debug targets cannot be used together anymore"
40       ERRTXT += "Use something like ..make all && make debug.. instead"
41       $(error $(ERRTXT))
42     endif
43   endif
44     export SRCHOME ?= $(NANBLENDERHOME)/source
45     export NAN_LIBDIR ?= $(NANBLENDERHOME)/lib
46     export NAN_OBJDIR ?= $(NANBLENDERHOME)/obj
47     export NAN_PYTHON ?= $(LCGDIR)/python
48     export NAN_PYTHON_VERSION ?= 2.0
49     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
50     export NAN_MXTEXTTOOLS ?= $(shell $(NAN_PYTHON_BINARY) -c 'import mx; print mx.__path__[0]')/TextTools/mxTextTools/mxTextTools.so 
51     export NAN_OPENAL ?= $(LCGDIR)/openal
52     export NAN_FMOD ?= $(LCGDIR)/fmod
53     export NAN_JPEG ?= $(LCGDIR)/jpeg
54     export NAN_PNG ?= $(LCGDIR)/png
55     export NAN_SDL ?= $(LCGDIR)/sdl
56     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
57     export NAN_MESA ?= /usr/src/Mesa-3.1
58     export NAN_MOTO ?= $(LCGDIR)/moto
59     export NAN_SOLID ?= $(SRCHOME)/sumo/SOLID-3.0
60     export NAN_SUMO ?= $(SRCHOME)/gameengine/Physics/Sumo
61     export NAN_FUZZICS ?= $(SRCHOME)/gameengine/Physics/Sumo/Fuzzics
62     export NAN_ODE ?= $(SRCHOME)/ode
63     export NAN_OPENSSL ?= $(LCGDIR)/openssl
64     export NAN_BLENKEY ?= $(LCGDIR)/blenkey
65     export NAN_DECIMATION ?= $(LCGDIR)/decimation
66     export NAN_GUARDEDALLOC ?= $(LCGDIR)/guardedalloc
67     export NAN_IKSOLVER ?= $(LCGDIR)/iksolver
68     export NAN_BSP ?= $(LCGDIR)/bsp
69     export NAN_STRING ?= $(LCGDIR)/string
70     export NAN_MEMUTIL ?= $(LCGDIR)/memutil
71     export NAN_CONTAINER ?= $(LCGDIR)/container
72     export NAN_ACTION ?= $(LCGDIR)/action
73     export NAN_IMG ?= $(LCGDIR)/img
74     export NAN_GHOST ?= $(LCGDIR)/ghost
75     export NAN_TEST_VERBOSITY ?= 1
76     export NAN_ZLIB ?= $(LCGDIR)/zlib
77     export NAN_BMFONT ?= $(LCGDIR)/bmfont
78     # Uncomment the following line to use Mozilla inplace of netscape
79     # CPPFLAGS +=-DMOZ_NOT_NET
80     # Location of MOZILLA/Netscape header files...
81     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
82     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
83     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
84     # if this is not set.
85     export NAN_NSPR ?= $(LCGDIR)/nspr
86
87     export NAN_BUILDINFO = true
88
89     # Be paranoid regarding library creation (do not update archives)
90     export NAN_PARANOID = true
91
92     # Library Config_Guess DIRectory
93     export LCGDIR = $(NAN_LIBDIR)/$(CONFIG_GUESS)
94
95     # Object Config_Guess DIRectory
96     export OCGDIR = $(NAN_OBJDIR)/$(CONFIG_GUESS)
97
98     export CONFIG_GUESS := $(shell ${SRCHOME}/tools/guess/guessconfig)
99     export OS := $(shell echo ${CONFIG_GUESS} | sed -e 's/-.*//')
100     export OS_VERSION := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-//' -e 's/-[^-]*//')
101     export CPU := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-[^-]*-//')
102     export MAKE_START := $(shell date "+%H:%M:%S %d-%b-%Y")
103
104   ifeq ($(OS),beos)
105     ID = $(USER)
106     HOST = $(HOSTNAME)
107   endif
108   ifeq ($(OS),darwin)
109     ID = $(shell whoami)
110     HOST = $(shell hostname -s)
111     # MAART: override libraries locations to use fink installed libraries
112     export NAN_OPENSSL = /sw
113     export NAN_JPEG = /sw
114     export NAN_PNG = /sw
115     export NAN_PYTHON = $(LCGDIR)/python
116     export NAN_PYTHON_VERSION = 2.2
117     export NAN_ODE = $(LCGDIR)/ode
118  endif
119   ifeq ($(OS),freebsd)
120     ID = $(shell whoami)
121     HOST = $(shell hostname -s)
122   endif
123   ifeq ($(OS),irix)
124     ID = $(shell whoami)
125     HOST = $(shell /usr/bsd/hostname -s)
126   endif
127   ifeq ($(OS),linux)
128     ID = $(shell whoami)
129     HOST = $(shell hostname -s)
130   endif
131   ifeq ($(OS),openbsd)
132     ID = $(shell whoami)
133     HOST = $(shell hostname -s)
134   endif
135   ifeq ($(OS),solaris)
136     ID = $(shell /usr/ucb/whoami)
137     HOST = $(shell hostname)
138   endif
139   ifeq ($(OS),windows)
140     ID = $(LOGNAME)
141   endif
142     export ID HOST
143
144 endif
145
146
147