Subversion Repositories OpenSees

Rev

Rev 1094 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1094 Rev 1886
1
############################################################################
1
############################################################################
2
#
2
#
3
#  Program:  OpenSees
3
#  Program:  OpenSees
4
#
4
#
5
#  Purpose:  A Top-level Makefile to create the libraries needed
5
#  Purpose:  A Top-level Makefile to create the libraries needed
6
#	     to use the OpenSees framework. Works for MacOSX 10.1.3 and 
6
#	     to use the OpenSees framework. Works for MacOSX 10.1.3 and 
7
#            above, modified to use the OpenGl and X11 libraries.
7
#            above, modified to use the OpenGl and X11 libraries.
8
#
8
#
9
#  Written: mackie
9
#  Written: mackie
10
#  Created: 08/2002
10
#  Created: 08/2002
11
#
11
#
12
#  Send bug reports, comments or suggestions to fmckenna@ce.berkeley.edu
12
#  Send bug reports, comments or suggestions to fmckenna@ce.berkeley.edu
13
#
13
#
14
############################################################################
14
############################################################################
15
15
16
# %---------------------------------%
16
# %---------------------------------%
17
# |  SECTION 1: PROGRAM             |
17
# |  SECTION 1: PROGRAM             |
18
# %---------------------------------%
18
# %---------------------------------%
19
#
19
#
20
# Specify the location and name of the OpenSees interpreter program
20
# Specify the location and name of the OpenSees interpreter program
21
# that will be created (if this all works!)
21
# that will be created (if this all works!)
22
22
23
OpenSees_PROGRAM = $(HOME)/bin/OpenSees
23
OpenSees_PROGRAM = $(HOME)/bin/OpenSees
24
24
25
# %---------------------------------%
25
# %---------------------------------%
26
# |  SECTION 2: MAKEFILE CONSTANTS  |
26
# |  SECTION 2: MAKEFILE CONSTANTS  |
27
# %---------------------------------%
27
# %---------------------------------%
28
#
28
#
29
# Specify the constants the are used as control structure variables in the Makefiles.
29
# Specify the constants the are used as control structure variables in the Makefiles.
30
30
31
#OPERATING_SYSTEM = LINUX,MAC
31
#OPERATING_SYSTEM = LINUX,MAC
32
OPERATING_SYSTEM = -D_MAC
32
OPERATING_SYSTEM = -D_MAC
33
33
34
#GRAPHICS = UsingOpenGL, UsingX11
34
#GRAPHICS = UsingOpenGL, UsingX11
35
GRAPHICS = UsingX11
35
GRAPHICS = UsingX11
36
36
37
#PROGRAMMING_MODE = SEQUENTIAL, THREADS OR DISTRIBUTED_MPI
37
#PROGRAMMING_MODE = SEQUENTIAL, THREADS OR DISTRIBUTED_MPI
38
PROGRAMMING_MODE = SEQUENTIAL
38
PROGRAMMING_MODE = SEQUENTIAL
39
39
40
#COMPILER = GCC, KAI
40
#COMPILER = GCC, KAI
41
COMPILER = GCC
41
COMPILER = GCC
42
42
43
#DEBUG_MODE = DEBUG, NO_DEBUG
43
#DEBUG_MODE = DEBUG, NO_DEBUG
44
DEBUG_MODE = NO_DEBUG
44
DEBUG_MODE = NO_DEBUG
45
45
46
#RELIABILITY = YES_RELIABILITY, NO_RELIABILITY
46
#RELIABILITY = YES_RELIABILITY, NO_RELIABILITY
47
RELIABILITY = YES_RELIABILITY
47
RELIABILITY = YES_RELIABILITY
48
48
49
#COROT = YES_COROT, NO_COROT
49
#COROT = YES_COROT, NO_COROT
50
COROT = NO_COROT
50
COROT = NO_COROT
51
51
52
# %---------------------------------%
52
# %---------------------------------%
53
# |  SECTION 3: PATHS               |
53
# |  SECTION 3: PATHS               |
54
# %---------------------------------%
54
# %---------------------------------%
55
#
55
#
56
# Note: if vendor supplied BLAS and LAPACK libraries or if you have
56
# Note: if vendor supplied BLAS and LAPACK libraries or if you have
57
# any of the libraries already leave the directory location blank AND
57
# any of the libraries already leave the directory location blank AND
58
# remove the directory from DIRS.
58
# remove the directory from DIRS.
59
59
60
BASE		= /usr/local
60
BASE		= /usr/local
61
HOME		= /Users/mackie
61
HOME		= /Users/mackie
62
FE		= $(HOME)/OpenSees/SRC
62
FE		= $(HOME)/OpenSees/SRC
63
63
64
BLASdir      = $(HOME)/OpenSees/OTHER/BLAS
64
BLASdir      = $(HOME)/OpenSees/OTHER/BLAS
65
CBLASdir     = $(HOME)/OpenSees/OTHER/CBLAS
65
CBLASdir     = $(HOME)/OpenSees/OTHER/CBLAS
66
LAPACKdir    = $(HOME)/OpenSees/OTHER/LAPACK
66
LAPACKdir    = $(HOME)/OpenSees/OTHER/LAPACK
67
ARPACKdir    = $(HOME)/OpenSees/OTHER/ARPACK
67
ARPACKdir    = $(HOME)/OpenSees/OTHER/ARPACK
68
UMFPACKdir   = $(HOME)/OpenSees/OTHER/UMFPACK
68
UMFPACKdir   = $(HOME)/OpenSees/OTHER/UMFPACK
69
METISdir     = $(HOME)/OpenSees/OTHER/METIS
69
METISdir     = $(HOME)/OpenSees/OTHER/METIS
70
SRCdir       = $(HOME)/OpenSees/SRC
70
SRCdir       = $(HOME)/OpenSees/SRC
71
71
72
ifeq ($(PROGRAMMING_MODE), THREADS)
72
ifeq ($(PROGRAMMING_MODE), THREADS)
73
SUPERLUdir   = $(HOME)/OpenSees/OTHER/SuperLU_MT
73
SUPERLUdir   = $(HOME)/OpenSees/OTHER/SuperLU_MT
74
else
74
else
75
SUPERLUdir   = $(HOME)/OpenSees/OTHER/SuperLU
75
SUPERLUdir   = $(HOME)/OpenSees/OTHER/SuperLU
76
endif
76
endif
77
77
78
DIRS        = $(BLASdir) $(CBLASdir) $(LAPACKdir) \
78
DIRS        = $(BLASdir) $(CBLASdir) $(LAPACKdir) \
79
	$(SUPERLUdir) $(ARPACKdir) $(UMFPACKdir) $(SRCdir) $(METISdir)
79
	$(SUPERLUdir) $(ARPACKdir) $(UMFPACKdir) $(SRCdir) $(METISdir)
80
80
81
# %-------------------------------------------------------%
81
# %-------------------------------------------------------%
82
# | SECTION 4: LIBRARIES                                  |
82
# | SECTION 4: LIBRARIES                                  |
83
# |                                                       |
83
# |                                                       |
84
# | The following section defines the libraries that will |
84
# | The following section defines the libraries that will |
85
# | be created and/or linked with when the libraries are  | 
85
# | be created and/or linked with when the libraries are  | 
86
# | being created or linked with.                         |
86
# | being created or linked with.                         |
87
# %-------------------------------------------------------%
87
# %-------------------------------------------------------%
88
#
88
#
89
# Note: if vendor supplied BLAS and LAPACK libraries leave the
89
# Note: if vendor supplied BLAS and LAPACK libraries leave the
90
# libraries blank. You have to get your own copy of the tcl/tk 
90
# libraries blank. You have to get your own copy of the tcl/tk 
91
# library!! 
91
# library!! 
92
#
92
#
93
# Note: For libraries that will be created (any in DIRS above)
93
# Note: For libraries that will be created (any in DIRS above)
94
# make sure the directory exsists where you want the library to go!
94
# make sure the directory exsists where you want the library to go!
95
95
96
FE_LIBRARY      = $(HOME)/lib/libOpenSees.a
96
FE_LIBRARY      = $(HOME)/lib/libOpenSees.a
97
NDARRAY_LIBRARY = $(HOME)/lib/libndarray.a # BJ_UCD jeremic@ucdavis.edu
97
NDARRAY_LIBRARY = $(HOME)/lib/libndarray.a # BJ_UCD jeremic@ucdavis.edu
98
MATMOD_LIBRARY  = $(HOME)/lib/libmatmod.a  # BJ_UCD jeremic@ucdavis.edu
98
MATMOD_LIBRARY  = $(HOME)/lib/libmatmod.a  # BJ_UCD jeremic@ucdavis.edu
99
BJMISC_LIBRARY  = $(HOME)/lib/libBJmisc.a  # BJ_UCD jeremic@ucdavis.edu
99
BJMISC_LIBRARY  = $(HOME)/lib/libBJmisc.a  # BJ_UCD jeremic@ucdavis.edu
100
LAPACK_LIBRARY  = $(HOME)/lib/libLapack.a
100
LAPACK_LIBRARY  = $(HOME)/lib/libLapack.a
101
BLAS_LIBRARY    = $(HOME)/lib/libBlas.a
101
BLAS_LIBRARY    = $(HOME)/lib/libBlas.a
102
SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.a
102
SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.a
103
CBLAS_LIBRARY   = $(HOME)/lib/libCBlas.a
103
CBLAS_LIBRARY   = $(HOME)/lib/libCBlas.a
104
ARPACK_LIBRARY  = $(HOME)/lib/libArpack.a
104
ARPACK_LIBRARY  = $(HOME)/lib/libArpack.a
105
UMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.a
105
UMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.a
106
METIS_LIBRARY   = $(HOME)/lib/libMetis.a
106
METIS_LIBRARY   = $(HOME)/lib/libMetis.a
107
TCL_LIBRARY     = /usr/local/lib/libtk83.a /usr/local/lib/libtcl83.a
107
TCL_LIBRARY     = /usr/local/lib/libtk83.a /usr/local/lib/libtcl83.a
108
BLITZ_LIBRARY   = 
108
BLITZ_LIBRARY   = 
109
109
110
ifeq ($(COROT), YES_COROT)
110
ifeq ($(COROT), YES_COROT)
111
COROT_LIBRARY	= $(HOME)/lib/libCorot.a
111
COROT_LIBRARY	= $(HOME)/lib/libCorot.a
112
else
112
else
113
COROT_LIBRARY	= 
113
COROT_LIBRARY	= 
114
endif
114
endif
115
115
116
ifeq ($(GRAPHICS), UsingX11)
116
ifeq ($(GRAPHICS), UsingX11)
117
GRAPHIC_LIBRARY = /usr/X11R6/lib/libX11.a
117
GRAPHIC_LIBRARY = /usr/X11R6/lib/libX11.a
118
else
118
else
119
GRAPHIC_LIBRARY = /usr/X11R6/lib/libGL.a /usr/X11R6/lib/libX11.a /usr/X11R6/lib/libXext.a \
119
GRAPHIC_LIBRARY = /usr/X11R6/lib/libGL.a /usr/X11R6/lib/libX11.a /usr/X11R6/lib/libXext.a \
120
		/usr/X11R6/lib/libGLU.a
120
		/usr/X11R6/lib/libGLU.a
121
endif
121
endif
122
122
123
ifeq ($(RELIABILITY), YES_RELIABILITY)
123
ifeq ($(RELIABILITY), YES_RELIABILITY)
124
RELIABILITY_LIBRARY = $(HOME)/lib/libReliability.a
124
RELIABILITY_LIBRARY = $(HOME)/lib/libReliability.a
125
else
125
else
126
RELIABILITY_LIBRARY = 
126
RELIABILITY_LIBRARY = 
127
endif
127
endif
128
128
129
129
130
# WATCH OUT .. These libraries are removed when 'make wipe' is invoked.
130
# WATCH OUT .. These libraries are removed when 'make wipe' is invoked.
131
WIPE_LIBS	= $(FE_LIBRARY) \
131
WIPE_LIBS	= $(FE_LIBRARY) \
132
		$(LAPACK_LIBRARY) \
132
		$(LAPACK_LIBRARY) \
133
		$(BLAS_LIBRARY) \
133
		$(BLAS_LIBRARY) \
134
		$(CBLAS_LIBRARY) \
134
		$(CBLAS_LIBRARY) \
135
		$(SUPERLU_LIBRARY) \
135
		$(SUPERLU_LIBRARY) \
136
		$(ARPACK_LIBRARY) \
136
		$(ARPACK_LIBRARY) \
137
		$(UMFPACK_LIBRARY) \
137
		$(UMFPACK_LIBRARY) \
138
	        $(METIS_LIBRARY) \
138
	        $(METIS_LIBRARY) \
139
		$(RELIABILITY_LIBRARY)
139
		$(RELIABILITY_LIBRARY)
140
140
141
# %---------------------------------------------------------%
141
# %---------------------------------------------------------%
142
# | SECTION 5: COMPILERS                                    |
142
# | SECTION 5: COMPILERS                                    |
143
# |                                                         |
143
# |                                                         |
144
# | The following macros specify compilers, linker/loaders, |
144
# | The following macros specify compilers, linker/loaders, |
145
# | the archiver, and their options.  You need to make sure |
145
# | the archiver, and their options.  You need to make sure |
146
# | these are correct for your system.                      |
146
# | these are correct for your system.                      |
147
# %---------------------------------------------------------%
147
# %---------------------------------------------------------%
148
148
149
# Compilers
149
# Compilers
150
CC++	= g++
150
CC++	= g++
151
CC      = gcc
151
CC      = gcc
152
FC	= fort77
152
FC	= fort77
153
153
154
AR		= ar 
154
AR		= ar 
155
ARFLAGS		= -cr
155
ARFLAGS		= -cr
156
RANLIB		= ranlib
156
RANLIB		= ranlib
157
RANLIBFLAGS	= -s
157
RANLIBFLAGS	= -s
158
158
159
#GRAPHICS = UsingOpenGL, UsingX11
159
#GRAPHICS = UsingOpenGL, UsingX11
160
ifeq ($(GRAPHICS), UsingOpenGL)
160
ifeq ($(GRAPHICS), UsingOpenGL)
161
GRAPHIC_FLAG = -D_GLX
161
GRAPHIC_FLAG = -D_GLX
162
else
162
else
163
GRAPHIC_FLAG = -D_X11
163
GRAPHIC_FLAG = -D_X11
164
endif
164
endif
165
165
166
ifeq ($(PROGRAMMING_MODE), THREADS)
166
ifeq ($(PROGRAMMING_MODE), THREADS)
167
PROGRAMMING_FLAG = -D_THREADS -D_PTHREAD
167
PROGRAMMING_FLAG = -D_THREADS -D_PTHREAD
168
else
168
else
169
PROGRAMMING_FLAG = 
169
PROGRAMMING_FLAG = 
170
endif
170
endif
171
171
172
ifeq ($(DEBUG_MODE), DEBUG)
172
ifeq ($(DEBUG_MODE), DEBUG)
173
DEBUG_FLAG = -D_G3DEBUG
173
DEBUG_FLAG = -D_G3DEBUG
174
else
174
else
175
DEBUG_FLAG =
175
DEBUG_FLAG =
176
endif
176
endif
177
177
178
ifeq ($(RELIABILITY), YES_RELIABILITY)
178
ifeq ($(RELIABILITY), YES_RELIABILITY)
179
RELIABILITY_FLAG = -D_RELIABILITY
179
RELIABILITY_FLAG = -D_RELIABILITY
180
# add -D_MATLAB if you are going to use the Matlab gFunEvaluator in reliability
180
# add -D_MATLAB if you are going to use the Matlab gFunEvaluator in reliability
181
MATLAB_FLAG =
181
MATLAB_FLAG =
182
else
182
else
183
RELIABILITY_FLAG =
183
RELIABILITY_FLAG =
184
endif
184
endif
185
185
186
ifeq ($(COROT), YES_COROT)
186
ifeq ($(COROT), YES_COROT)
187
COROT_FLAG = -D_COROTATIONAL
187
COROT_FLAG = -D_COROTATIONAL
188
else
188
else
189
COROT_FLAG =
189
COROT_FLAG =
190
endif
190
endif
191
191
192
192
193
# Compiler Flags
193
# Compiler Flags
194
#
194
#
195
# NOTES:
195
# NOTES:
196
#    C++ FLAGS TAKE need _UNIX or _WIN32 for preprocessor dircetives
196
#    C++ FLAGS TAKE need _UNIX or _WIN32 for preprocessor dircetives
197
#         - the _WIN32 for the Windows95/98 or NT operating system.
197
#         - the _WIN32 for the Windows95/98 or NT operating system.
198
#    C FLAGS used -DUSE_VENDOR_BLAS (needed in SuperLU) if UNIX in C++ FLAGS
198
#    C FLAGS used -DUSE_VENDOR_BLAS (needed in SuperLU) if UNIX in C++ FLAGS
199
#
199
#
200
200
201
ifeq ($(DEBUG_MODE), DEBUG)
201
ifeq ($(DEBUG_MODE), DEBUG)
202
202
203
C++FLAGS         = -Wall  -funroll-loops -fcse-follow-jumps \
203
C++FLAGS         = -Wall  -funroll-loops -fcse-follow-jumps \
204
		 -fthread-jumps -fcse-skip-blocks -frerun-cse-after-loop \
204
		 -fthread-jumps -fcse-skip-blocks -frerun-cse-after-loop \
205
		 -felide-constructors \
205
		 -felide-constructors \
206
		 -fcaller-saves  -ffloat-store -fforce-addr \
206
		 -fcaller-saves  -ffloat-store -fforce-addr \
207
		 -fschedule-insns -fschedule-insns2 -D_UNIX \
207
		 -fschedule-insns -fschedule-insns2 -D_UNIX \
208
		$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) \
208
		$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) \
209
                $(OPERATING_SYSTEM) $(MATLAB_FLAG) $(COROT_FLAG) \
209
                $(OPERATING_SYSTEM) $(MATLAB_FLAG) $(COROT_FLAG) \
210
		 -fexpensive-optimizations \
210
		 -fexpensive-optimizations \
211
		 -fforce-addr -fforce-mem -finline-functions \
211
		 -fforce-addr -fforce-mem -finline-functions \
212
		 -fkeep-inline-functions \
212
		 -fkeep-inline-functions \
213
              -fno-function-cse -fno-inline -fno-peephole \
213
              -fno-function-cse -fno-inline -fno-peephole \
214
              -fschedule-insns -fschedule-insns2 \
214
              -fschedule-insns -fschedule-insns2 \
215
              -fstrength-reduce -fthread-jumps -g -pg \
215
              -fstrength-reduce -fthread-jumps -g -pg \
216
	      -ffloat-store
216
	      -ffloat-store
217
217
218
CFLAGS          = -Wall -pg $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
218
CFLAGS          = -Wall -pg $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
219
FFLAGS          = -Wall 
219
FFLAGS          = -Wall 
220
220
221
# Linker
221
# Linker
222
LINKER          = $(CC++)
222
LINKER          = $(CC++)
223
LINKFLAGS       = -g -pg
223
LINKFLAGS       = -g -pg
224
224
225
else
225
else
226
226
227
# modified as optimizaton currently causing problems with Steel01 code
227
# modified as optimizaton currently causing problems with Steel01 code
228
C++FLAGS        =  -Wall -O3 -D_UNIX -ftemplate-depth-30 $(OPERATING_SYSTEM) \
228
C++FLAGS        =  -Wall -O3 -D_UNIX -ftemplate-depth-30 $(OPERATING_SYSTEM) \
229
		$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) \
229
		$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) \
230
		$(MATLAB_FLAG) $(COROT_FLAG) -ffloat-store -Wno-long-double
230
		$(MATLAB_FLAG) $(COROT_FLAG) -ffloat-store -Wno-long-double
231
231
232
CFLAGS          = -Wall -O3 $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
232
CFLAGS          = -Wall -O3 $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
233
FFLAGS          = -Wall -O
233
FFLAGS          = -Wall -O
234
234
235
# Linker
235
# Linker
236
LINKER          = $(CC++)
236
LINKER          = $(CC++)
237
LINKFLAGS       = 
237
LINKFLAGS       = 
238
238
239
endif
239
endif
240
240
241
241
242
# Misc
242
# Misc
243
MAKE		= gnumake
243
MAKE		= gnumake
244
CD              = cd
244
CD              = cd
245
ECHO            = echo
245
ECHO            = echo
246
RM              = rm
246
RM              = rm
247
RMFLAGS         = -f
247
RMFLAGS         = -f
248
SHELL           = /bin/sh
248
SHELL           = /bin/sh
249
249
250
# %---------------------------------------------------------%
250
# %---------------------------------------------------------%
251
# | SECTION 6: COMPILATION                                  |
251
# | SECTION 6: COMPILATION                                  |
252
# |                                                         |
252
# |                                                         |
253
# | The following macros specify the macros used in         |
253
# | The following macros specify the macros used in         |
254
# | to compile the source code into object code.            |
254
# | to compile the source code into object code.            |
255
# %---------------------------------------------------------%
255
# %---------------------------------------------------------%
256
256
257
.SUFFIXES:
257
.SUFFIXES:
258
.SUFFIXES:	.C .c .f .f90 .cpp .o .cpp
258
.SUFFIXES:	.C .c .f .f90 .cpp .o .cpp
259
259
260
#
260
#
261
# %------------------%
261
# %------------------%
262
# | Default command. |
262
# | Default command. |
263
# %------------------%
263
# %------------------%
264
#
264
#
265
.DEFAULT:
265
.DEFAULT:
266
	@$(ECHO) "Unknown target $@, try:  make help"
266
	@$(ECHO) "Unknown target $@, try:  make help"
267
#
267
#
268
# %-------------------------------------------%
268
# %-------------------------------------------%
269
# |  Command to build .o files from .f files. |
269
# |  Command to build .o files from .f files. |
270
# %-------------------------------------------%
270
# %-------------------------------------------%
271
#
271
#
272
272
273
.cpp.o:
273
.cpp.o:
274
	@$(ECHO) Making $@ from $<
274
	@$(ECHO) Making $@ from $<
275
	$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@
275
	$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@
276
276
277
.C.o:
277
.C.o:
278
	@$(ECHO) Making $@ from $<
278
	@$(ECHO) Making $@ from $<
279
	$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@
279
	$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@
280
.c.o:
280
.c.o:
281
	@$(ECHO) Making $@ from $<
281
	@$(ECHO) Making $@ from $<
282
	$(CC) $(CFLAGS) -c $< -o $@
282
	$(CC) $(CFLAGS) -c $< -o $@
283
.f.o:      
283
.f.o:      
284
	@$(ECHO) Making $@ from $<
284
	@$(ECHO) Making $@ from $<
285
	$(FC) $(FFLAGS) -c $< -o $@
285
	$(FC) $(FFLAGS) -c $< -o $@
286
286
287
# %---------------------------------------------------------%
287
# %---------------------------------------------------------%
288
# | SECTION 7: OTHER LIBRARIES                              |
288
# | SECTION 7: OTHER LIBRARIES                              |
289
# |                                                         |
289
# |                                                         |
290
# | The following macros specify other libraries that must  |
290
# | The following macros specify other libraries that must  |
291
# | be linked with when creating executables. These are     |
291
# | be linked with when creating executables. These are     |
292
# | platform specific and typically order does matter!!     |
292
# | platform specific and typically order does matter!!     |
293
# %---------------------------------------------------------%
293
# %---------------------------------------------------------%
294
MACHINE_LINKLIBS  = -L$(BASE)/lib \
294
MACHINE_LINKLIBS  = -L$(BASE)/lib \
295
		-L$(HOME)/lib \
295
		-L$(HOME)/lib \
296
		-L/usr/lib
296
		-L/usr/lib
297
297
298
MACHINE_NUMERICAL_LIBS  = -lm \
298
MACHINE_NUMERICAL_LIBS  = -lm \
299
		$(ARPACK_LIBRARY) \
299
		$(ARPACK_LIBRARY) \
300
		$(SUPERLU_LIBRARY) \
300
		$(SUPERLU_LIBRARY) \
301
		$(UMFPACK_LIBRARY) $(METIS_LIBRARY) \
301
		$(UMFPACK_LIBRARY) $(METIS_LIBRARY) \
302
	        $(LAPACK_LIBRARY) $(BLAS_LIBRARY) $(CBLAS_LIBRARY) \
302
	        $(LAPACK_LIBRARY) $(BLAS_LIBRARY) $(CBLAS_LIBRARY) \
303
		$(GRAPHIC_LIBRARY) $(RELIABILITY_LIBRARY) \
303
		$(GRAPHIC_LIBRARY) $(RELIABILITY_LIBRARY) \
304
                $(COROT_LIBRARY) -lf2c -ldl
304
                $(COROT_LIBRARY) -lf2c -ldl
305
305
306
306
307
ifeq ($(PROGRAMMING_MODE), THREADS)
307
ifeq ($(PROGRAMMING_MODE), THREADS)
308
MACHINE_SPECIFIC_LIBS = -lpthread
308
MACHINE_SPECIFIC_LIBS = -lpthread
309
else
309
else
310
MACHINE_SPECIFIC_LIBS = 
310
MACHINE_SPECIFIC_LIBS = 
311
endif
311
endif
312
312
313
# %---------------------------------------------------------%
313
# %---------------------------------------------------------%
314
# | SECTION 8: INCLUDE FILES                                |
314
# | SECTION 8: INCLUDE FILES                                |
315
# |                                                         |
315
# |                                                         |
316
# | The following macros specify include files needed for   |
316
# | The following macros specify include files needed for   |
317
# | compilation.                                            |
317
# | compilation.                                            |
318
# %---------------------------------------------------------%
318
# %---------------------------------------------------------%
319
MACHINE_INCLUDES        = -I/usr/include \
319
MACHINE_INCLUDES        = -I/usr/include \
320
			  -I$(BASE)/include \
320
			  -I$(BASE)/include \
321
			  -I/usr/include/cxx \
321
			  -I/usr/include/cxx \
322
			  -I$(HOME)/include -I$(HOME)/blitz \
322
			  -I$(HOME)/include -I$(HOME)/blitz \
323
			  -I$(UMFPACKdir) -I$(SUPERLUdir) \
323
			  -I$(UMFPACKdir) -I$(SUPERLUdir) \
324
			  -I/usr/X11R6/include
324
			  -I/usr/X11R6/include
325
325
326
326
327
# this file contains all the OpenSees/SRC includes
327
# this file contains all the OpenSees/SRC includes
328
include $(FE)/Makefile.incl
328
include $(FE)/Makefile.incl
329
329
330
TCL_INCLUDES = 	-I/usr/local/include/tcl8.3/generic \
330
TCL_INCLUDES = 	-I/usr/local/include/tcl8.3/generic \
331
		-I/usr/local/include/tk8.3/generic \
331
		-I/usr/local/include/tk8.3/generic \
332
		-I/usr/local/include/db3
332
		-I/usr/local/include/db3
333
333
334
INCLUDES = $(TCL_INCLUDES) $(FE_INCLUDES) $(MACHINE_INCLUDES)
334
INCLUDES = $(TCL_INCLUDES) $(FE_INCLUDES) $(MACHINE_INCLUDES)
335
335
336
336
337
337
338
338
339
339
340
340
341
341