# library build -*- makefile -*- SHELL = /bin/sh # which file will be copied to Makefile.lammps EXTRAMAKE = Makefile.lammps.linalg # ------ FILES ------ SRC = $(wildcard *.cpp) INC = $(wildcard *.h) # ------ DEFINITIONS ------ DIR = Obj_mingw64-mpi/ LIB = $(DIR)libatc.a OBJ = $(SRC:%.cpp=$(DIR)%.o) # ------ SETTINGS ------ # include any MPI settings needed for the ATC library to build with # the same MPI library that LAMMPS is built with CC = x86_64-w64-mingw32-g++ CCFLAGS = -I../../tools/mingw-cross/mpich2-win64/include/ \ -I../../src -DMPICH_IGNORE_CXX_SEEK \ -O3 -march=core2 -mtune=core2 -mpc64 -msse2 \ -ffast-math -funroll-loops -fstrict-aliasing \ -DLAMMPS_SMALLBIG -Wno-uninitialized ARCHIVE = x86_64-w64-mingw32-ar ARCHFLAG = -rcs DEPFLAGS = -M LINK = $(CC) LINKFLAGS = -O USRLIB = SYSLIB = # ------ MAKE PROCEDURE ------ default: $(DIR) $(LIB) Makefile.lammps $(DIR): mkdir $(DIR) Makefile.lammps: @cp $(EXTRAMAKE) Makefile.lammps $(LIB): $(OBJ) $(ARCHIVE) $(ARFLAGS) $(LIB) $(OBJ) @cp $(EXTRAMAKE) Makefile.lammps # ------ COMPILE RULES ------ $(DIR)%.o:%.cpp $(CC) $(CCFLAGS) -c $< -o $@ $(DIR)%.d:%.cpp $(CC) $(CCFLAGS) $(DEPFLAGS) $< > $@ # ------ DEPENDENCIES ------ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: rm $(DIR)*.o $(DIR)*.d *~ $(LIB) $(DEPENDS) : $(DIR) sinclude $(DEPENDS)