|
| 1 | +# serial = MPI with its default compiler |
| 2 | + |
| 3 | +SHELL = /bin/sh |
| 4 | + |
| 5 | +# --------------------------------------------------------------------- |
| 6 | +# compiler/linker settings |
| 7 | +# specify flags and libraries needed for your compiler |
| 8 | + |
| 9 | +CC = mpicxx |
| 10 | +CCFLAGS = -O -std=c++11 |
| 11 | +SHFLAGS = -fPIC |
| 12 | +DEPFLAGS = -M |
| 13 | + |
| 14 | +LINK = mpicxx |
| 15 | +LINKFLAGS = -O |
| 16 | +LIB = |
| 17 | +SIZE = size |
| 18 | + |
| 19 | +ARCHIVE = ar |
| 20 | +ARFLAGS = -rc |
| 21 | +SHLIBFLAGS = -shared |
| 22 | + |
| 23 | +# --------------------------------------------------------------------- |
| 24 | + |
| 25 | +MUI_INC = -DMUI -DSLURM -I../../../../src_mui |
| 26 | + |
| 27 | +# --------------------------------------------------------------------- |
| 28 | +# SPPARKS-specific settings |
| 29 | +# specify settings for SPPARKS features you will use |
| 30 | + |
| 31 | +# SPPARKS ifdef options, see doc/Section_start.html |
| 32 | + |
| 33 | +SPK_INC = -DSPPARKS_GZIP -DSPPARKS_PNG -DSPPARKS_JPEG |
| 34 | + |
| 35 | +# MPI library, can be src/STUBS dummy lib |
| 36 | +# INC = path for mpi.h, MPI compiler settings |
| 37 | +# PATH = path for MPI library |
| 38 | +# LIB = name of MPI library |
| 39 | + |
| 40 | +MPI_INC = |
| 41 | +MPI_PATH = |
| 42 | +MPI_LIB = |
| 43 | + |
| 44 | +# JPEG library, only needed if -DLAMMPS_JPEG listed with LMP_INC |
| 45 | +# INC = path for jpeglib.h |
| 46 | +# PATH = path for JPEG library |
| 47 | +# LIB = name of JPEG library |
| 48 | + |
| 49 | +JPG_INC = |
| 50 | +JPG_PATH = |
| 51 | +JPG_LIB = -lpng -ljpeg |
| 52 | + |
| 53 | +# --------------------------------------------------------------------- |
| 54 | +# build rules and dependencies |
| 55 | +# no need to edit this section |
| 56 | + |
| 57 | +EXTRA_INC = $(MUI_INC) $(SPK_INC) $(MPI_INC) $(JPG_INC) |
| 58 | +EXTRA_PATH = $(MPI_PATH) $(JPG_PATH) |
| 59 | +EXTRA_LIB = $(MPI_LIB) $(JPG_LIB) |
| 60 | + |
| 61 | +# Link target |
| 62 | + |
| 63 | +$(EXE): $(OBJ) |
| 64 | + $(LINK) $(LINKFLAGS) $(EXTRA_PATH) $(OBJ) $(EXTRA_LIB) $(LIB) -o $(EXE) |
| 65 | + $(SIZE) $(EXE) |
| 66 | + |
| 67 | +# Library targets |
| 68 | + |
| 69 | +lib: $(OBJ) |
| 70 | + $(ARCHIVE) $(ARFLAGS) $(EXE) $(OBJ) |
| 71 | + |
| 72 | +shlib: $(OBJ) |
| 73 | + $(CC) $(CCFLAGS) $(SHFLAGS) $(SHLIBFLAGS) $(EXTRA_PATH) -o $(EXE) \ |
| 74 | + $(OBJ) $(EXTRA_LIB) $(LIB) |
| 75 | + |
| 76 | +# Compilation rules |
| 77 | + |
| 78 | +%.o:%.cpp |
| 79 | + $(CC) $(CCFLAGS) $(SHFLAGS) $(EXTRA_INC) -c $< |
| 80 | + |
| 81 | +%.d:%.cpp |
| 82 | + $(CC) $(CCFLAGS) $(EXTRA_INC) $(DEPFLAGS) $< > $@ |
| 83 | + |
| 84 | +# Individual dependencies |
| 85 | + |
| 86 | +DEPENDS = $(OBJ:.o=.d) |
| 87 | +include $(DEPENDS) |
0 commit comments