Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F90811200
Makefile
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Mon, Nov 4, 23:43
Size
5 KB
Mime Type
text/x-makefile
Expires
Wed, Nov 6, 23:43 (2 d)
Engine
blob
Format
Raw Data
Handle
22136180
Attached To
rLAMMPS lammps
Makefile
View Options
#***************************************************************************
# Makefile
# -------------------
#
# _________________________________________________________________________
# Build for the Graphics Utilities
# _________________________________________________________________________
#
# begin : Thu June 9 2005
# copyright : (C) 2003 by W. Michael Brown
# email : wmbrown@sandia.gov
# ***************************************************************************/
#Compiler type
#COMPILER = intel
COMPILER = gnu
#COMPILER = mpi
#COMPILER = mingw
#Locations of outside objects relative to a source directory
HOBJ_DIR = ../obj
BIN_DIR = ../bin
ALL_DIR = .
ALL_LIB = $(HOBJ_DIR)/liball.a
GRPHICS_DIR = .
GRPHICS_LIB = $(HOBJ_DIR)/libgraphics.a
GRID_DIR = .
GRID_LIB = $(HOBJ_DIR)/libgrid.a
MOL_DIR = .
MOL_LIB = $(HOBJ_DIR)/libmol.a
MATH_DIR = .
MATH_LIB = $(HOBJ_DIR)/libmath.a
EVERY_LIB = $(MOL_LIB) $(GRID_LIB) $(GRPHICS_LIB) $(MATH_LIB) $(ALL_LIB)
MOLSIM_DIR = .
MOLSIM_LIB = $(HOBJ_DIR)/molsim.o $(HOBJ_DIR)/dynmif.o $(HOBJ_DIR)/dynmifq.o
# Include directories
INC = -I$(ALL_DIR) -I$(MOLSIM_DIR) -I$(MOL_DIR) -I$(MATH_DIR) -I$(GRID_DIR) -I$(GRPHICS_DIR)
ifeq ($(COMPILER),intel)
CPP = icpc # C++ Compiler
CC = icc # C compiler
AR = xiar #ar
DBUG = -g -DDEBUG -DNANCHECK #-Wall #-ansi
OPT = -O2 -xP -ipo -no-prec-div -static
endif
ifeq ($(COMPILER),gnu)
CPP = g++ # C++ Compiler
CC = gcc # C compiler
AR = ar
DBUG = -O2 -g -Wall #-DDEBUG -DNANCHECK -Wall -pedantic #-ansi
OPT = #-O3 -g -Wall
endif
ifeq ($(COMPILER),mpi)
CPP = mpic++ -DMUSE_MPI # C++ Compiler
CC = mpicc -DMUSE_MPI # C compiler
AR = ar
DBUG = -g -DDEBUG -DNANCHECK #-Wall #-pedantic #-ansi
OPT = #-xN -O3 #-ipo -no-prec-div -static #-O3
endif
ifeq ($(COMPILER),mingw)
CPP = /cygdrive/c/MINGW/bin/g++ # C++ Compiler
CC = /cygdrive/c/MINGW/bin/gcc # C compiler
AR = /cygdrive/c/MINGW/bin/ar
DBUG = #-g -DDEBUG -DNANCHECK -Wall -pedantic #-ansi
OPT = -O3 -static
endif
# Large file support?
LFSC = #-D_LARGEFILE_SOURCE `getconf LFS_CFLAGS`
LFSL = #`getconf LFS_LDFLAGS` `getconf LFS_LIBS`
# GNU Scientific Library?
GSLC = #-DUSEGSL -I/usr/local/include/
GSLL = #-lgsl -lgslcblas
# GA Library?
LIBGAC = #-DLIBGA -I/usr/local/include/
LIBGAL = #-lga -L/usr/local/lib/ -Wl,--allow-multiple-definition
# Movie frame support?
MOVIE = #-DMOVIE
# VTK ?
VTKH = #-DUSEVTK -I/usr/local/include/vtk-5.0
VTKL = #-lvtkWidgets -lvtkHybrid -lvtkVolumeRendering -lvtkRendering -lvtkIO -lvtkGenericFiltering -lvtkGraphics -lvtkImaging -l vtkFiltering -lvtkCommon -L/usr/X11R6/lib/ -lGL -lXt -lSM -lICE -lX11 -lXext -lpthread -ldl
CFLAGS = $(OPT) $(MOVIE) $(DBUG) $(INC) $(GSLC) $(LIBGAC) $(VTKH) -c
LFLAGS = $(OPT)
LLIBS = $(GSLL) $(LIBGAL) $(LFSL) $(VTKL)
# Distribution Directories
DIST_BIN = /home/wmbrown/distbin/
DIST_MAN = /home/wmbrown/cpp/manpages/man1/
DIST_DOC = /home/wmbrown/cpp/doc/
OBJ_DIR = $(HOBJ_DIR)
# Objects for this project
THIS_OBJ = $(OBJ_DIR)/asphere_vis.o $(GRPHICS_LIB) $(MATH_LIB) $(ALL_LIB)
EXECS = $(BIN_DIR)/asphere_vis
all: paths $(EXECS)
paths: $(HOBJ_DIR) $(BIN_DIR)
$(HOBJ_DIR) $(BIN_DIR):
mkdir $@
libraries:
cd $(ALL_DIR); make; cd $(MATH_DIR); make; cd $(GRID_DIR); make; \
cd $(GRPHICS_DIR); make;
ALL_OBJS = $(OBJ_DIR)/error.o $(OBJ_DIR)/commandline.o \
$(OBJ_DIR)/misc.o
$(OBJ_DIR)/error.o: error.h error.cpp
$(CPP) $(CFLAGS) -o $@ error.cpp
$(OBJ_DIR)/commandline.o: commandline.h commandline.cpp
$(CPP) $(CFLAGS) -o $@ commandline.cpp
$(OBJ_DIR)/misc.o: misc.h misc.cpp
$(CPP) $(CFLAGS) -o $@ misc.cpp
$(ALL_LIB): $(ALL_OBJS)
$(AR) -crusv $(ALL_LIB) $(ALL_OBJS)
GRPHICS_O = $(OBJ_DIR)/colors.o $(OBJ_DIR)/glsurface.o
$(OBJ_DIR)/colors.o: colors.h colors.cpp
$(CPP) $(CFLAGS) -o $@ colors.cpp
$(OBJ_DIR)/glsurface.o: glsurface.h glsurface.cpp
$(CPP) $(CFLAGS) -o $@ glsurface.cpp
$(GRPHICS_LIB): $(GRPHICS_O)
$(AR) -crusv $(GRPHICS_LIB) $(GRPHICS_O)
MATH_OBJS = $(OBJ_DIR)/cartesian.o $(OBJ_DIR)/miscm.o \
$(OBJ_DIR)/spherical.o
$(OBJ_DIR)/miscm.o: miscm.h miscm.cpp
$(CPP) $(CFLAGS) -o $@ miscm.cpp
$(OBJ_DIR)/cartesian.o: cartesian.h cartesian.cpp
$(CPP) $(CFLAGS) -o $@ cartesian.cpp
$(OBJ_DIR)/spherical.o: spherical.h spherical.cpp
$(CPP) $(CFLAGS) -o $@ spherical.cpp
$(MATH_LIB): $(MATH_OBJS)
$(AR) -crusv $(MATH_LIB) $(MATH_OBJS)
$(OBJ_DIR)/asphere_vis.o: asphere_vis.cpp
$(CPP) $(CFLAGS) -o $@ asphere_vis.cpp
$(BIN_DIR)/asphere_vis: $(THIS_OBJ)
$(CPP) $(LFLAGS) -o $@ $(THIS_OBJ) $(LLIBS)
#
# Documentation
#
manpages: all
/bin/tcsh make_manpages.sh
#
# Create a .tar distribution file
#
dist: all manpages
/bin/tcsh makedistribution.sh
#
# INSTALL to Mike's Directories
install: all manpages
/bin/cp $(EXECS) $(DIST_BIN); \
/bin/cp ./manpages/*.1 $(DIST_MAN); \
/bin/cp ./manpages/*.pdf $(DIST_DOC)
#
# Remove objects, cores, etc.
#
clean:
rm -rf $(EXECS) $(THIS_OBJ) $(ALL_OBJ) $(MATH_OBJ) $(GRPHICS_O)
cd $(OBJ_DIR); rm -f *.o
veryclean: clean
rm -rf *~ ./api ./manpages
cleanproject: clean
cd $(ALL_DIR); make clean; cd $(MATH_DIR); make clean; \
cd $(GRPHICS_DIR); make clean;
Event Timeline
Log In to Comment