Use saner defaults on Linux
[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
45   # First generic defaults for all platforms which should be constant.
46   # Note: ?= lets these defaults be overruled by environment variables,
47
48     export SRCHOME ?= $(NANBLENDERHOME)/source
49     export CONFIG_GUESS := $(shell ${SRCHOME}/tools/guess/guessconfig)
50     export OS := $(shell echo ${CONFIG_GUESS} | sed -e 's/-.*//')
51     export OS_VERSION := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-//' -e 's/-[^-]*//')
52     export CPU := $(shell echo ${CONFIG_GUESS} | sed -e 's/^[^-]*-[^-]*-//')
53     export MAKE_START := $(shell date "+%H:%M:%S %d-%b-%Y")
54     export NAN_LIBDIR ?= $(NANBLENDERHOME)/lib
55     export NAN_OBJDIR ?= $(NANBLENDERHOME)/obj
56     # Library Config_Guess DIRectory
57     export LCGDIR = $(NAN_LIBDIR)/$(CONFIG_GUESS)
58     # Object Config_Guess DIRectory
59     export OCGDIR = $(NAN_OBJDIR)/$(CONFIG_GUESS)
60     export NAN_MOTO ?= $(LCGDIR)/moto
61     export NAN_SOLID ?= $(SRCHOME)/sumo/SOLID-3.0
62     export NAN_SUMO ?= $(SRCHOME)/gameengine/Physics/Sumo
63     export NAN_FUZZICS ?= $(SRCHOME)/gameengine/Physics/Sumo/Fuzzics
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_BMFONT ?= $(LCGDIR)/bmfont
77
78
79   # Platform Dependent settings go below:
80
81   ifeq ($(OS),beos)
82
83     export ID = $(USER)
84     export HOST = $(HOSTNAME)
85     export NAN_PYTHON ?= $(LCGDIR)/python
86     export NAN_PYTHON_VERSION ?= 2.0
87     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
88     export NAN_MXTEXTTOOLS ?= $(shell $(NAN_PYTHON_BINARY) -c \
89         'import mx; print mx.__path__[0]')/TextTools/mxTextTools/mxTextTools.so
90     export NAN_OPENAL ?= $(LCGDIR)/openal
91     export NAN_FMOD ?= $(LCGDIR)/fmod
92     export NAN_JPEG ?= $(LCGDIR)/jpeg
93     export NAN_PNG ?= $(LCGDIR)/png
94     export NAN_SDL ?= $(LCGDIR)/sdl
95     export NAN_ODE ?= $(LCGDIR)/ode
96     export NAN_OPENSSL ?= $(LCGDIR)/openssl
97     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
98     export NAN_MESA ?= /usr/src/Mesa-3.1
99     export NAN_ZLIB ?= $(LCGDIR)/zlib
100     export NAN_NSPR ?= $(LCGDIR)/nspr
101
102     # Uncomment the following line to use Mozilla inplace of netscape
103     # CPPFLAGS +=-DMOZ_NOT_NET
104     # Location of MOZILLA/Netscape header files...
105     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
106     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
107     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
108     # if this is not set.
109
110     export NAN_BUILDINFO ?= true
111     # Be paranoid regarding library creation (do not update archives)
112     export NAN_PARANOID ?= true
113
114   else
115   ifeq ($(OS),darwin)
116
117     export ID = $(shell whoami)
118     export HOST = $(shell hostname -s)
119     export NAN_PYTHON ?= /sw
120     export NAN_PYTHON_VERSION ?= 2.2
121     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
122     export NAN_MXTEXTTOOLS ?= $(shell $(NAN_PYTHON_BINARY) -c \
123         'import mx; print mx.__path__[0]')/TextTools/mxTextTools/mxTextTools.so
124     export NAN_OPENAL ?= $(LCGDIR)/openal
125     export NAN_FMOD ?= $(LCGDIR)/fmod
126     export NAN_JPEG ?= /sw
127     export NAN_PNG ?= /sw
128     export NAN_SDL ?= $(LCGDIR)/sdl
129     export NAN_ODE ?= $(LCGDIR)/ode
130     export NAN_OPENSSL ?= /sw
131     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
132     export NAN_MESA ?= /usr/src/Mesa-3.1
133     export NAN_ZLIB ?= $(LCGDIR)/zlib
134     export NAN_NSPR ?= $(LCGDIR)/nspr
135
136     # Uncomment the following line to use Mozilla inplace of netscape
137     # CPPFLAGS +=-DMOZ_NOT_NET
138     # Location of MOZILLA/Netscape header files...
139     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
140     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
141     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
142     # if this is not set.
143
144     export NAN_BUILDINFO ?= true
145     # Be paranoid regarding library creation (do not update archives)
146     export NAN_PARANOID ?= true
147
148   else
149   ifeq ($(OS),freebsd)
150
151     export ID = $(shell whoami)
152     export HOST = $(shell hostname -s)
153     export NAN_PYTHON ?= /usr/local/include/python
154     export NAN_PYTHON_VERSION ?= 2.2
155     export NAN_PYTHON_BINARY ?= 
156     export NAN_MXTEXTTOOLS ?= 
157     export NAN_OPENAL ?= /usr/local
158     export NAN_FMOD ?= $(LCGDIR)/fmod
159     export NAN_JPEG ?= /usr/local
160     export NAN_PNG ?= /usr/local
161     export NAN_SDL ?= /usr/local
162     export NAN_ODE ?= $(LCGDIR)/ode
163     export NAN_OPENSSL ?= /usr
164     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
165     export NAN_MESA ?= /usr/src/Mesa-3.1
166     export NAN_ZLIB ?= /usr
167     export NAN_NSPR ?= /usr/local
168
169     # Uncomment the following line to use Mozilla inplace of netscape
170     # CPPFLAGS +=-DMOZ_NOT_NET
171     # Location of MOZILLA/Netscape header files...
172     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
173     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
174     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
175     # if this is not set.
176
177     export NAN_BUILDINFO ?= true
178     # Be paranoid regarding library creation (do not update archives)
179     export NAN_PARANOID ?= true
180
181   else
182   ifeq ($(OS),irix)
183
184     export ID = $(shell whoami)
185     export HOST = $(shell /usr/bsd/hostname -s)
186     export NAN_PYTHON ?= $(LCGDIR)/python
187     export NAN_PYTHON_VERSION ?= 2.1
188     export NAN_PYTHON_BINARY ?= 
189     export NAN_MXTEXTTOOLS ?= 
190     export NAN_OPENAL ?= $(LCGDIR)/openal
191     export NAN_FMOD ?= $(LCGDIR)/fmod
192     export NAN_JPEG ?= $(LCGDIR)/jpeg
193     export NAN_PNG ?= $(LCGDIR)/png
194     export NAN_SDL ?= $(LCGDIR)/sdl
195     export NAN_ODE ?= $(LCGDIR)/ode
196     export NAN_OPENSSL ?= $(LCGDIR)/openssl
197     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
198     export NAN_MESA ?= /usr/src/Mesa-3.1
199     export NAN_ZLIB ?= /usr/freeware
200     export NAN_NSPR ?= /usr/local/apps/openblender/nspr/target/dist
201
202     # Uncomment the following line to use Mozilla inplace of netscape
203     # CPPFLAGS +=-DMOZ_NOT_NET
204     # Location of MOZILLA/Netscape header files...
205     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
206     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
207     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
208     # if this is not set.
209
210     export NAN_BUILDINFO ?= true
211     # Be paranoid regarding library creation (do not update archives)
212     export NAN_PARANOID ?= true
213
214   else
215   ifeq ($(OS),linux)
216
217     export ID = $(shell whoami)
218     export HOST = $(shell hostname -s)
219     export NAN_PYTHON ?= /usr
220     export NAN_PYTHON_VERSION ?= 2.2
221     export NAN_PYTHON_BINARY ?=
222     export NAN_MXTEXTTOOLS ?=
223     export NAN_OPENAL ?= /usr
224     export NAN_FMOD ?= $(LCGDIR)/fmod
225     export NAN_JPEG ?= /usr
226     export NAN_PNG ?= /usr
227     export NAN_SDL ?= /usr
228     export NAN_ODE ?= $(LCGDIR)/ode
229     export NAN_OPENSSL ?= /usr
230     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
231     export NAN_MESA ?= /usr
232     export NAN_ZLIB ?= /usr
233     export NAN_NSPR ?= $(LCGDIR)/nspr
234
235     # Uncomment the following line to use Mozilla inplace of netscape
236     export CPPFLAGS += -DMOZ_NOT_NET
237     # Location of MOZILLA/Netscape header files...
238     export NAN_MOZILLA_INC ?= /usr/include/mozilla
239     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
240     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
241     # if this is not set.
242
243     export NAN_BUILDINFO ?= true
244     # Be paranoid regarding library creation (do not update archives)
245     export NAN_PARANOID ?= true
246
247   else
248   ifeq ($(OS),openbsd)
249
250     export ID = $(shell whoami)
251     export HOST = $(shell hostname -s)
252     export NAN_PYTHON ?= $(LCGDIR)/python
253     export NAN_PYTHON_VERSION ?= 2.0
254     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
255     export NAN_MXTEXTTOOLS ?= $(shell $(NAN_PYTHON_BINARY) -c \
256         'import mx; print mx.__path__[0]')/TextTools/mxTextTools/mxTextTools.so
257     export NAN_OPENAL ?= $(LCGDIR)/openal
258     export NAN_FMOD ?= $(LCGDIR)/fmod
259     export NAN_JPEG ?= $(LCGDIR)/jpeg
260     export NAN_PNG ?= $(LCGDIR)/png
261     export NAN_SDL ?= $(LCGDIR)/sdl
262     export NAN_ODE ?= $(LCGDIR)/ode
263     export NAN_OPENSSL ?= $(LCGDIR)/openssl
264     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
265     export NAN_MESA ?= /usr/src/Mesa-3.1
266     export NAN_ZLIB ?= $(LCGDIR)/zlib
267     export NAN_NSPR ?= $(LCGDIR)/nspr
268
269     # Uncomment the following line to use Mozilla inplace of netscape
270     # CPPFLAGS +=-DMOZ_NOT_NET
271     # Location of MOZILLA/Netscape header files...
272     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
273     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
274     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
275     # if this is not set.
276
277     export NAN_BUILDINFO ?= true
278     # Be paranoid regarding library creation (do not update archives)
279     export NAN_PARANOID ?= true
280
281   else
282   ifeq ($(OS),solaris)
283
284     export ID = $(shell /usr/ucb/whoami)
285     export HOST = $(shell hostname)
286     export NAN_PYTHON ?= /usr/local
287     export NAN_PYTHON_VERSION ?= 2.2
288     export NAN_PYTHON_BINARY ?=
289     export NAN_MXTEXTTOOLS ?=
290     export NAN_OPENAL ?= /usr/local
291     export NAN_FMOD ?= $(LCGDIR)/fmod
292     export NAN_JPEG ?= /usr/local
293     export NAN_PNG ?= /usr/local
294     export NAN_SDL ?= /usr/local
295     export NAN_ODE ?= $(LCGDIR)/ode
296     export NAN_OPENSSL ?= /usr/local/ssl
297     export NAN_TERRAPLAY ?=
298     export NAN_MESA ?= /usr/src/Mesa-3.1
299     export NAN_ZLIB ?= /usr
300     export NAN_NSPR ?= $(LCGDIR)/nspr
301
302     # Uncomment the following line to use Mozilla inplace of netscape
303     # CPPFLAGS +=-DMOZ_NOT_NET
304     # Location of MOZILLA/Netscape header files...
305     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
306     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
307     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
308     # if this is not set.
309
310     export NAN_BUILDINFO ?= true
311     # Be paranoid regarding library creation (do not update archives)
312     export NAN_PARANOID ?= true
313
314   else
315   ifeq ($(OS),windows)
316
317     export ID = $(LOGNAME)
318     export NAN_PYTHON ?= $(LCGDIR)/python
319     export NAN_PYTHON_VERSION ?= 2.2
320     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
321     export NAN_MXTEXTTOOLS ?= $(shell $(NAN_PYTHON_BINARY) -c \
322         'import mx; print mx.__path__[0]')/TextTools/mxTextTools/mxTextTools.so
323     export NAN_OPENAL ?= $(LCGDIR)/openal
324     export NAN_FMOD ?= $(LCGDIR)/fmod
325     export NAN_JPEG ?= $(LCGDIR)/jpeg
326     export NAN_PNG ?= $(LCGDIR)/png
327     export NAN_SDL ?= $(LCGDIR)/sdl
328     export NAN_ODE ?= $(LCGDIR)/ode
329     export NAN_OPENSSL ?= $(LCGDIR)/openssl
330     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
331     export NAN_MESA ?= /usr/src/Mesa-3.1
332     export NAN_ZLIB ?= $(LCGDIR)/zlib
333     export NAN_NSPR ?= $(LCGDIR)/nspr
334
335     # Uncomment the following line to use Mozilla inplace of netscape
336     # CPPFLAGS +=-DMOZ_NOT_NET
337     # Location of MOZILLA/Netscape header files...
338     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
339     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
340     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
341     # if this is not set.
342
343     export NAN_BUILDINFO ?= true
344     # Be paranoid regarding library creation (do not update archives)
345     export NAN_PARANOID ?= true
346
347   else # Platform not listed above
348
349     export NAN_PYTHON ?= $(LCGDIR)/python
350     export NAN_PYTHON_VERSION ?= 2.0
351     export NAN_PYTHON_BINARY ?= $(NAN_PYTHON)/bin/python$(NAN_PYTHON_VERSION)
352     export NAN_MXTEXTTOOLS ?= $(shell $(NAN_PYTHON_BINARY) -c \
353         'import mx; print mx.__path__[0]')/TextTools/mxTextTools/mxTextTools.so
354     export NAN_OPENAL ?= $(LCGDIR)/openal
355     export NAN_FMOD ?= $(LCGDIR)/fmod
356     export NAN_JPEG ?= $(LCGDIR)/jpeg
357     export NAN_PNG ?= $(LCGDIR)/png
358     export NAN_SDL ?= $(LCGDIR)/sdl
359     export NAN_ODE ?= $(LCGDIR)/ode
360     export NAN_OPENSSL ?= $(LCGDIR)/openssl
361     export NAN_TERRAPLAY ?= $(LCGDIR)/terraplay
362     export NAN_MESA ?= /usr/src/Mesa-3.1
363     export NAN_ZLIB ?= $(LCGDIR)/zlib
364     export NAN_NSPR ?= $(LCGDIR)/nspr
365
366     # Uncomment the following line to use Mozilla inplace of netscape
367     # CPPFLAGS +=-DMOZ_NOT_NET
368     # Location of MOZILLA/Netscape header files...
369     export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
370     export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
371     # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
372     # if this is not set.
373
374     export NAN_BUILDINFO ?= true
375     # Be paranoid regarding library creation (do not update archives)
376     export NAN_PARANOID ?= true
377   endif
378 endif
379 endif
380 endif
381 endif
382 endif
383 endif
384 endif
385 endif