merging trunk 17520:19093
[blender.git] / source / nan_link.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 # linking only
30
31 include nan_definitions.mk
32
33 ifdef NAN_DEBUG
34     LDFLAGS += $(NAN_DEBUG)
35 endif
36
37 DBG_LDFLAGS     += -g
38
39 ifneq (x$(DEBUG_DIR), x)
40     LDFLAGS+=$(DBG_LDFLAGS)
41 else
42     LDFLAGS+=$(REL_LDFLAGS)
43 endif
44
45 ######################## OS dependencies (alphabetic!) ################
46
47 # default (overriden by windows)
48 SOEXT = .so
49
50 ifeq ($(OS),beos)
51     LLIBS = -L/boot/develop/lib/x86/ -lGL -lbe -L/boot/home/config/lib/
52 endif
53
54 ifeq ($(OS),darwin)
55     LLIBS    += -lGLU -lGL
56     LLIBS    += -lz -lstdc++
57     ifdef USE_OSX10.4STUBS
58        LLIBS    +=-lSystemStubs
59     endif 
60     LLIBS    += -framework Carbon -framework AGL -framework OpenGL
61     LLIBS    += -framework QuickTime -framework CoreAudio
62     LLIBS    += -framework AudioUnit -framework AudioToolbox
63     LDFLAGS += -L/System/Library/Frameworks/OpenGL.framework/Libraries
64     DBG_LDFLAGS += -L/System/Library/Frameworks/OpenGL.framework/Libraries
65 endif
66
67 ifeq ($(OS),freebsd)
68     LLIBS = -L/usr/X11R6/lib -lX11 -lXmu -lXi -lm -lutil -lz -pthread -lc_r
69     DADD = -lGL -lGLU
70     DYNLDFLAGS = -shared $(LDFLAGS)
71     LOPTS = -Wl,--export-dynamic
72 endif
73
74 ifeq ($(OS),irix)
75     ifeq ($(IRIX_USE_GCC), true)
76         LDFLAGS += -mabi=n32 -mips4 
77         DBG_LDFLAGS += -LD_LAYOUT:lgot_buffer=40
78     else
79         LDFLAGS += -n32 -mips3
80         LDFLAGS += -woff 84,171
81     endif
82     LLIBS = -lmovieGL -lGLU -lGL -lXmu -lXext -lXi -lX11 -lc -lm -ldmedia
83     LLIBS += -lcl -laudio
84     ifneq ($(IRIX_USE_GCC), true)
85         LLIBS += -lCio -ldb
86     endif
87     LLIBS += -lz -lpthread
88     DYNLDFLAGS = -shared $(LDFLAGS)
89 endif
90
91 ifeq ($(OS),linux)
92   ifeq ($(CPU),alpha)
93     COMMENT = "MESA 3.1"
94     LLIBS = -lGL -lGLU -L/usr/X11R6/lib/ -lXmu -lXext -lX11
95     LLIBS += -lc -lm -ldl -lutil
96     LOPTS = -export-dynamic
97   endif
98   ifeq ($(CPU),$(findstring $(CPU), "i386 x86_64 ia64 parisc64 powerpc sparc64"))
99     COMMENT = "MESA 3.1"
100     LLIBS = -L$(NAN_MESA)/lib -L/usr/X11R6/lib -lXmu -lXext -lX11 -lXi
101     LLIBS += -lutil -lc -lm -ldl -lpthread
102 #    LLIBS += -L$(NAN_ODE)/lib -lode
103     LOPTS = -export-dynamic
104     DADD = -lGL -lGLU
105     SADD = $(NAN_MESA)/lib/libGL.a $(NAN_MESA)/lib/libGLU.a
106     DYNLDFLAGS = -shared $(LDFLAGS)
107   endif
108     LLIBS += -lz
109 endif
110
111 ifeq ($(OS),openbsd)
112     SADD = /usr/local/lib/libGL.a /usr/local/lib/libGLU.a
113     SADD += /usr/X11R6/lib/libXmu.a /usr/X11R6/lib/libXext.a
114     SADD += /usr/X11R6/lib/libX11.a /usr/lib/libm.a -pthread
115 endif
116
117 ifeq ($(OS),solaris)
118     ifeq (x86_64, $(findstring x86_64, $(CPU)))
119         LLIBS = -lrt
120         LLIBS += -L$(NAN_MESA)/lib/amd64
121     else
122         LLIBS += -L$(NAN_MESA)/lib
123     endif
124     
125     LLIBS += -lGLU -lGL -lXmu -lXext -lXi -lX11 -lc -lm -ldl -lsocket -lnsl 
126     DYNLDFLAGS = -shared $(LDFLAGS)
127 endif
128
129 ifeq ($(OS),windows)
130     EXT = .exe
131         SOEXT = .dll
132         ifeq ($(FREE_WINDOWS),true)
133                 MINGWLIB = /usr/lib/w32api
134                 LDFLAGS += -mwindows -mno-cygwin -mconsole
135                 DADD += -L/usr/lib/w32api -lnetapi32 -lopengl32 -lglu32 -lshfolder
136                 DADD += -L/usr/lib/w32api -lwinmm -lwsock32
137                 ifeq ($(WITH_VERSE),true)
138                         DADD += -lws2_32
139                 endif
140     else
141             DADD = kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib
142                 DADD += advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib
143             DADD += vfw32.lib winmm.lib opengl32.lib glu32.lib largeint.lib dxguid.lib
144                 DADD += libcmt.lib
145                 LOPTS = /link
146                 LOPTS += /NODEFAULTLIB:"libc" 
147                 LOPTS += /NODEFAULTLIB:"libcd" 
148                 LOPTS += /NODEFAULTLIB:"libcp" 
149                 LOPTS += /NODEFAULTLIB:"libcpd" 
150                 LOPTS += /NODEFAULTLIB:"python20" 
151                 LOPTS += /NODEFAULTLIB:"msvcrt" 
152                 LOPTS += /SUBSYSTEM:CONSOLE
153                 LDFLAGS += /MT
154                 DYNLDFLAGS = /LD
155         endif
156 endif
157
158 ifneq ($(OS), irix)
159    LLIBS += $(NAN_SDLLIBS)
160 endif
161
162 ifeq ($(WITH_ICONV),true)
163    LLIBS += $(NAN_ICONV_LIBS)
164 endif
165
166 ifeq ($(WITH_FFMPEG),true)
167    LLIBS += $(NAN_FFMPEGLIBS)
168 endif
169
170 ifeq ($(INTERNATIONAL),true)
171    LLIBS += $(NAN_GETTEXT_LIB)
172 endif
173
174 ifeq ($(WITH_BF_OPENMP),true)
175    LLIBS += -lgomp
176 endif
177
178 LLIBS += $(NAN_PYTHON_LIB)