Last active
August 29, 2015 14:17
-
-
Save congqiao/805f98ed28de0639029f to your computer and use it in GitHub Desktop.
LAMMPS MAKE
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# intel = Intel | |
SHELL = /bin/sh | |
# --------------------------------------------------------------------- | |
# compiler/linker settings | |
# specify flags and libraries needed for your compiler | |
CC = mpic++ | |
CCFLAGS = -O3 | |
SHFLAGS = -fPIC | |
DEPFLAGS = -M | |
LINK = mpic++ | |
LINKFLAGS = -O3 | |
LIB = | |
SIZE = size | |
ARCHIVE = ar | |
ARFLAGS = -rc | |
SHLIBFLAGS = -shared | |
# --------------------------------------------------------------------- | |
# LAMMPS-specific settings | |
# specify settings for LAMMPS features you will use | |
# if you change any -D setting, do full re-compile after "make clean" | |
# LAMMPS ifdef settings, OPTIONAL | |
# see possible settings in doc/Section_start.html#2_2 (step 4) | |
LMP_INC = -DLAMMPS_GZIP | |
# MPI library, REQUIRED | |
# see discussion in doc/Section_start.html#2_2 (step 5) | |
# can point to dummy MPI library in src/STUBS as in Makefile.serial | |
# INC = path for mpi.h, MPI compiler settings | |
# PATH = path for MPI library | |
# LIB = name of MPI library | |
MPI_INC = -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 | |
MPI_PATH = | |
MPI_LIB = | |
# FFT library, OPTIONAL | |
# see discussion in doc/Section_start.html#2_2 (step 6) | |
# can be left blank to use provided KISS FFT library | |
# INC = -DFFT setting, e.g. -DFFT_FFTW, FFT compiler settings | |
# PATH = path for FFT library | |
# LIB = name of FFT library | |
FFT_INC = -DFFT_MKL | |
FFT_PATH = | |
FFT_LIB = | |
# JPEG library, OPTIONAL | |
# see discussion in doc/Section_start.html#2_2 (step 7) | |
# only needed if -DLAMMPS_JPEG listed with LMP_INC | |
# INC = path for jpeglib.h | |
# PATH = path for JPEG library | |
# LIB = name of JPEG library | |
JPG_INC = | |
JPG_PATH = | |
JPG_LIB = | |
# --------------------------------------------------------------------- | |
# build rules and dependencies | |
# no need to edit this section | |
include Makefile.package.settings | |
include Makefile.package | |
EXTRA_INC = $(LMP_INC) $(PKG_INC) $(MPI_INC) $(FFT_INC) $(JPG_INC) $(PKG_SYSINC) | |
EXTRA_PATH = $(PKG_PATH) $(MPI_PATH) $(FFT_PATH) $(JPG_PATH) $(PKG_SYSPATH) | |
EXTRA_LIB = $(PKG_LIB) $(MPI_LIB) $(FFT_LIB) $(JPG_LIB) $(PKG_SYSLIB) | |
# Path to src files | |
vpath %.cpp .. | |
vpath %.h .. | |
# Link target | |
$(EXE): $(OBJ) | |
$(LINK) $(LINKFLAGS) $(EXTRA_PATH) $(OBJ) $(EXTRA_LIB) $(LIB) -o $(EXE) | |
$(SIZE) $(EXE) | |
# Library targets | |
lib: $(OBJ) | |
$(ARCHIVE) $(ARFLAGS) $(EXE) $(OBJ) | |
shlib: $(OBJ) | |
$(CC) $(CCFLAGS) $(SHFLAGS) $(SHLIBFLAGS) $(EXTRA_PATH) -o $(EXE) \ | |
$(OBJ) $(EXTRA_LIB) $(LIB) | |
# Compilation rules | |
%.o:%.cpp | |
$(CC) $(CCFLAGS) $(SHFLAGS) $(EXTRA_INC) -c $< | |
%.d:%.cpp | |
$(CC) $(CCFLAGS) $(EXTRA_INC) $(DEPFLAGS) $< > $@ | |
# Individual dependencies | |
DEPENDS = $(OBJ:.o=.d) | |
sinclude $(DEPENDS) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment