Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
158 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
# serial = GNU g++ compiler, no MPI | ||
|
||
SHELL = /bin/sh | ||
|
||
# --------------------------------------------------------------------- | ||
# compiler/linker settings | ||
# specify flags and libraries needed for your compiler | ||
|
||
CC = g++ | ||
CCFLAGS = -g -O3 -mmacosx-version-min=10.9 | ||
SHFLAGS = -fPIC | ||
DEPFLAGS = -M | ||
|
||
LINK = g++ | ||
LINKFLAGS = -g -O -mmacosx-version-min=10.9 | ||
LIB = | ||
SIZE = size | ||
|
||
ARCHIVE = ar | ||
ARFLAGS = -rc | ||
SHLIBFLAGS = -shared | ||
|
||
# --------------------------------------------------------------------- | ||
# LAMMPS-specific settings, all OPTIONAL | ||
# specify settings for LAMMPS features you will use | ||
# if you change any -D setting, do full re-compile after "make clean" | ||
|
||
# LAMMPS ifdef settings | ||
# see possible settings in Section 2.2 (step 4) of manual | ||
|
||
LMP_INC = -DLAMMPS_GZIP -DLAMMPS_MEMALIGN=64 -DLAMMPS_EXCEPTIONS | ||
|
||
# MPI library | ||
# see discussion in Section 2.2 (step 5) of manual | ||
# MPI wrapper compiler/linker can provide this info | ||
# can point to dummy MPI library in src/STUBS as in Makefile.serial | ||
# use -D MPICH and OMPI settings in INC to avoid C++ lib conflicts | ||
# INC = path for mpi.h, MPI compiler settings | ||
# PATH = path for MPI library | ||
# LIB = name of MPI library | ||
|
||
MPI_INC = -I../STUBS | ||
MPI_PATH = -L../STUBS | ||
MPI_LIB = -lmpi_stubs | ||
|
||
# FFT library | ||
# see discussion in Section 2.2 (step 6) of manual | ||
# 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 = | ||
FFT_PATH = | ||
FFT_LIB = | ||
|
||
# JPEG and/or PNG library | ||
# see discussion in Section 2.2 (step 7) of manual | ||
# only needed if -DLAMMPS_JPEG or -DLAMMPS_PNG listed with LMP_INC | ||
# INC = path(s) for jpeglib.h and/or png.h | ||
# PATH = path(s) for JPEG library and/or PNG library | ||
# LIB = name(s) of JPEG library and/or PNG library | ||
|
||
JPG_INC = | ||
JPG_PATH = | ||
JPG_LIB = | ||
|
||
# --------------------------------------------------------------------- | ||
# build rules and dependencies | ||
# do not 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) | ||
EXTRA_CPP_DEPENDS = $(PKG_CPP_DEPENDS) | ||
EXTRA_LINK_DEPENDS = $(PKG_LINK_DEPENDS) | ||
|
||
# Path to src files | ||
|
||
vpath %.cpp .. | ||
vpath %.h .. | ||
|
||
# Link target | ||
|
||
$(EXE): $(OBJ) $(EXTRA_LINK_DEPENDS) | ||
$(LINK) $(LINKFLAGS) $(EXTRA_PATH) $(OBJ) $(EXTRA_LIB) $(LIB) -o $(EXE) | ||
$(SIZE) $(EXE) | ||
|
||
# Library targets | ||
|
||
lib: $(OBJ) $(EXTRA_LINK_DEPENDS) | ||
$(ARCHIVE) $(ARFLAGS) $(EXE) $(OBJ) | ||
|
||
shlib: $(OBJ) $(EXTRA_LINK_DEPENDS) | ||
$(CC) $(CCFLAGS) $(SHFLAGS) $(SHLIBFLAGS) $(EXTRA_PATH) -o $(EXE) \ | ||
$(OBJ) $(EXTRA_LIB) $(LIB) | ||
|
||
# Compilation rules | ||
|
||
%.o:%.cpp | ||
$(CC) $(CCFLAGS) $(SHFLAGS) $(EXTRA_INC) -c $< | ||
|
||
# Individual dependencies | ||
|
||
depend : fastdep.exe $(SRC) | ||
@./fastdep.exe $(EXTRA_INC) -- $^ > .depend || exit 1 | ||
|
||
fastdep.exe: ../DEPEND/fastdep.c | ||
cc -O -o $@ $< | ||
|
||
sinclude .depend |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
# Makefile for MPI stubs library | ||
|
||
# Syntax: | ||
# make # build lib as libmpi_stubs.a | ||
# make clean # remove *.o and lib files | ||
|
||
# edit System-specific settings as needed for your platform | ||
|
||
SHELL = /bin/sh | ||
.IGNORE: | ||
|
||
# Files | ||
|
||
SRC = mpi.c | ||
INC = mpi.h | ||
|
||
# Definitions | ||
|
||
EXE = libmpi_stubs.a | ||
OBJ = $(SRC:.c=.o) | ||
|
||
# System-specific settings | ||
|
||
CC = g++ | ||
CCFLAGS = -O -mmacosx-version-min=10.9 -fPIC -I. # add -I to insure mpi.h from this dir is included | ||
ARCHIVE = ar | ||
ARCHFLAG = rs | ||
|
||
# Targets | ||
|
||
lib: $(OBJ) | ||
$(ARCHIVE) $(ARCHFLAG) $(EXE) $(OBJ) | ||
|
||
clean: | ||
rm -f *.o libmpi_stubs.a | ||
|
||
# Compilation rules | ||
|
||
.c.o: | ||
$(CC) $(CCFLAGS) -c $< | ||
|
||
# Individual dependencies | ||
|
||
$(OBJ): $(INC) |