forked from lijiext/lammps
70 lines
1.8 KiB
Makefile
70 lines
1.8 KiB
Makefile
# spirit = HP cluster with dual 3.4 GHz EM64T (64 bit), mpiCC, native MPI, FFTW
|
|
|
|
# users may wish to add the following (uncommented) to their .bashrc or equivalent:
|
|
# if [ "$SNLCLUSTER" = "spirit" ]; then
|
|
# source /opt/modules/default/init/bash
|
|
# module load libraries/fftw-2.1.5_openmpi-1.2.2_mx_intel-9.1-f040-c045
|
|
# fi;
|
|
|
|
SHELL = /bin/sh
|
|
.IGNORE:
|
|
|
|
# ---------------------------------------------------------------------
|
|
# System-specific settings
|
|
# edit as needed for your machine
|
|
|
|
# additional system libs needed by LAMMPS libs
|
|
# NOTE: these settings are ignored if the LAMMPS package (e.g. gpu, meam)
|
|
# which needs these libs is not included in the LAMMPS build
|
|
|
|
gpu_SYSLIB = -lcudart
|
|
meam_SYSLIB = -lifcore -lsvml -lompstub -limf
|
|
reax_SYSLIB = -lifcore -lsvml -lompstub -limf
|
|
user-atc_SYSLIB = -lblas -llapack
|
|
|
|
gpu_SYSLIBPATH = -L/usr/local/cuda/lib64
|
|
meam_SYSLIBPATH = -L/opt/intel/fce/10.0.023/lib
|
|
reax_SYSLIBPATH = -L/opt/intel/fce/10.0.023/lib
|
|
user-atc_SYSLIBPATH =
|
|
|
|
include Makefile.package
|
|
|
|
# compiler/linker settings
|
|
# NOTE: specify how to compile/link with MPI
|
|
# either an MPI installed on your machine, or the src/STUBS dummy lib
|
|
# NOTE: specify an FFT option, e.g. -DFFT_NONE, -DFFT_FFTW, etc
|
|
|
|
|
|
|
|
FFTW = /apps/x86_64/libraries/fftw/openmpi-1.2.2_mx_intel-9.1-f040-c045/fftw-2.1.5
|
|
|
|
CC = mpicxx
|
|
OPTIMIZE = -O
|
|
CCFLAGS = $(PKGINC) $(OPTIMIZE) -DFFT_FFTW -I$(FFTW)/include
|
|
DEPFLAGS = -M
|
|
LINK = mpicxx
|
|
LINKFLAGS = $(PKGPATH) $(PKGPATHSYS)
|
|
USRLIB = $(PKGLIB) -lfftw -lstdc++
|
|
SYSLIB = $(PKGLIBSYS)
|
|
SIZE = size
|
|
|
|
# Link rule
|
|
|
|
$(EXE): $(OBJ)
|
|
$(LINK) $(LINKFLAGS) $(OBJ) $(USRLIB) $(SYSLIB) -o $(EXE)
|
|
$(SIZE) $(EXE)
|
|
|
|
# Compilation rules
|
|
|
|
%.o:%.cpp
|
|
$(CC) $(CCFLAGS) -c $<
|
|
|
|
%.d:%.cpp
|
|
$(CC) $(CCFLAGS) $(DEPFLAGS) $< > $@
|
|
|
|
# Individual dependencies
|
|
|
|
DEPENDS = $(OBJ:.o=.d)
|
|
include $(DEPENDS)
|
|
|