Rev 2 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
############################################################################## Program: OpenSees## Purpose: A Top-level Makefile to create the libraries needed# to use the OpenSees framework.## Written: fmk# Created: 10/99## Send bug reports, comments or suggestions to fmckenna@ce.berkeley.edu############################################################################## %---------------------------------%# | SECTION 1: PROGRAM |# %---------------------------------%## Specify the location and name of the OpenSees interpreter program# that will be created (if this all works!)OpenSees_PROGRAM = $(HOME)/bin/OpenSees# %---------------------------------%# | SECTION 2: PATHS |# %---------------------------------%## Note: if vendor supplied BLAS and LAPACK libraries or if you have# any of the libraries already leave the directory location blank# and remove the directory from DIRS.BASE = /usr/localHOME = /work/g3/fmkFE = $(HOME)/OpenSees/SRCBLASdir =CBLASdir =LAPACKdir =SUPERLUdir = $(HOME)/OpenSees/OTHER/SuperLUARPACKdir = $(HOME)/OpenSees/OTHER/ARPACKUMFPACKdir = $(HOME)/OpenSees/OTHER/UMFPACKMETISdir = $(HOME)/OpenSees/OTHER/METISSRCdir = $(HOME)/OpenSees/SRCDIRS = $(SUPERLUdir) $(ARPACKdir) $(UMFPACKdir) $(METISdir) $(SRCdir)# %-------------------------------------------------------%# | SECTION 3: LIBRARIES |# | |# | The following section defines the libraries that will |# | be created and/or linked with when the libraries are |# | being created or linked with. |# %-------------------------------------------------------%## Note: if vendor supplied BLAS and LAPACK libraries leave the# libraries blank. You have to get your own copy of the tcl/tk# library!!FE_LIBRARY = $(HOME)/lib/libOpenSees.aLAPACK_LIBRARY = -ldxmlBLAS_LIBRARY =SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.aCBLAS_LIBRARY =ARPACK_LIBRARY = $(HOME)/lib/libArpack.aUMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.aMETIS_LIBRARY = $(HOME)/lib/libMetis.aTCL_LIBRARY = /usr/users/fmk/lib/libtk8.2.a -lX11 /usr/users/fmk/lib/libtcl8.2.a# WATCH OUT .. These libraries are removed when 'make wipe' is invoked.WIPE_LIBS = $(FE_LIBRARY) \$(SUPERLU_LIBRARY) \$(ARPACK_LIBRARY) \$(UMFPACK_LIBRARY) \$(METIS_LIBRARY)# %---------------------------------------------------------%# | SECTION 4: COMPILERS |# | |# | The following macros specify compilers, linker/loaders, |# | the archiver, and their options. You need to make sure |# | these are correct for your system. |# %---------------------------------------------------------%# CompilersCC++ = /usr/bin/cxxCC = /usr/bin/cxxFort = f90AR = arARFLAGS = cqlsRANLIB = ranlib# Compiler Flags## NOTES:# C++ FLAGS TAKE need _UNIX or _WIN32 for preprocessor dircetives# - the _WIN32 for the Windows95/98 or NT operating system.# C FLAGS used -DUSE_VENDOR_BLAS (needed in SuperLU) if UNIX in C++ FLAGS#C++FLAGS = -O5 -w0 -DXWINDOWS -D_UNIX -D_ALPHACFLAGS = -O5 -DUSE_VENDOR_BLAS -D_UNIX -D_ALPHAFFLAGS = -O# LinkerLINKER = $(CC)LINKFLAGS = -O5# MiscMAKE = /usr/users/fmk/bin/makeCD = cdECHO = echoRM = rmRMFLAGS = -fSHELL = /bin/sh# %---------------------------------------------------------%# | SECTION 5: COMPILATION |# | |# | The following macros specify the macros used in |# | to compile the source code into object code. |# %---------------------------------------------------------%.SUFFIXES:.SUFFIXES: .C .c .f .f90 .cpp .o .cpp## %------------------%# | Default command. |# %------------------%#.DEFAULT:@$(ECHO) "Unknown target $@, try: make help"## %-------------------------------------------%# | Command to build .o files from .f files. |# %-------------------------------------------%#.cpp.o:@$(ECHO) Making $@ from $<$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@.C.o:@$(ECHO) Making $@ from $<$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@.c.o:@$(ECHO) Making $@ from $<$(CC) $(CFLAGS) -c $< -o $@.f.o:@$(ECHO) Making $@ from $<$(Fort) $(FFLAGS) -c $< -o $@# %---------------------------------------------------------%# | SECTION 6: OTHER LIBRARIES |# | |# | The following macros specify other libraries that must |# | be linked with when creating executables. These are |# | platform specific and typically order does matter!! |# %---------------------------------------------------------%MACHINE_LINKLIBS = -L$(BASE)/lib \-L/usr/users/fmk/lib \-lfor \-lotsMACHINE_NUMERICAL_LIBS = -lm \$(ARPACK_LIBRARY) \$(SUPERLU_LIBRARY) \$(UMFPACK_LIBRARY) \$(LAPACK_LIBRARY) $(BLAS_LIBRARY)MACHINE_SPECIFIC_LIBS = $(FE)/machine/etime.o \$(FE)/tagged/storage/cxx_repository/NIL__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45select1s094srqr.o \$(FE)/tagged/storage/cxx_repository/__distance__3stdXQ27__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rws017dgb8.o \$(FE)/tagged/storage/cxx_repository/__erase__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45sele0r800ad.o \$(FE)/tagged/storage/cxx_repository/__insert__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45sel0jnm3dl.o \$(FE)/tagged/storage/cxx_repository/deallocate_buffers__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__0oju3aj.o \$(FE)/tagged/storage/cxx_repository/equal_range__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd453uhp6ho.o \$(FE)/tagged/storage/cxx_repository/erase__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45select04lsjhu.o \$(FE)/tagged/storage/cxx_repository/erase__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45select1crospf.o \$(FE)/tagged/storage/cxx_repository/erase__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45select3gf6evp.o \$(FE)/tagged/storage/cxx_repository/find__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45select12tfrv4e.o \$(FE)/tagged/storage/cxx_repository/insert__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd45selec34hgppu.o \$(FE)/tagged/storage/cxx_repository/lower_bound__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd453uhp6ho.o \$(FE)/tagged/storage/cxx_repository/number_of_trees__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rws3ir3b3r.o \$(FE)/tagged/storage/cxx_repository/upper_bound__Q17__rwstd150rb_tree__TiQ13std24pair__TCiP12TaggedObjectQ17__rwstd453uhp6ho.o# %---------------------------------------------------------%# | SECTION 7: INCLUDE FILES |# | |# | The following macros specify include files needed for |# | compilation. |# %---------------------------------------------------------%MACHINE_INCLUDES = -I/usr/include \-I$(BASE)/include \-I/usr/include/cxx \-I$(HOME)/include# this file contains all the OpenSees/SRC includesinclude $(FE)/Makefile.inclTCL_INCLUDES = -I/usr/users/fmk/includeINCLUDES = $(TCL_INCLUDES) $(FE_INCLUDES) $(MACHINE_INCLUDES)