mirror of https://github.com/lammps/lammps.git
151 lines
2.9 KiB
Makefile
151 lines
2.9 KiB
Makefile
# library build -*- makefile -*-
|
|
SHELL = /bin/sh
|
|
|
|
# ------ FILES ------
|
|
|
|
SRC = ATC_HardyKernel.cpp \
|
|
ATC_Transfer.cpp \
|
|
ATC_TransferHardy.cpp \
|
|
ATC_TransferThermal.cpp \
|
|
ATC_TransferUtility.cpp \
|
|
AtomicRegulator.cpp \
|
|
ElasticTimeIntegrator.cpp \
|
|
ElectronFlux.cpp \
|
|
ElectronHeatCapacity.cpp \
|
|
ElectronHeatFlux.cpp \
|
|
ElectronPhononExchange.cpp \
|
|
ExtrinsicModel.cpp \
|
|
ExtrinsicModelTwoTemperature.cpp \
|
|
FE_Element.cpp \
|
|
FE_Engine.cpp \
|
|
FE_Mesh.cpp \
|
|
FieldEulerIntegrator.cpp \
|
|
ImplicitSolveOperator.cpp \
|
|
Kinetostat.cpp \
|
|
LammpsInterface.cpp \
|
|
Material.cpp \
|
|
Matrix.cpp \
|
|
OutputManager.cpp \
|
|
PhysicsModelThermal.cpp \
|
|
PhysicsModelTwoTemperature.cpp \
|
|
PrescribedDataManager.cpp \
|
|
Solver.cpp \
|
|
Thermostat.cpp \
|
|
TimeFilter.cpp \
|
|
TimeIntegrator.cpp \
|
|
Vector.cpp \
|
|
XT_Function.cpp
|
|
|
|
INC = Array2D.h \
|
|
Array.h \
|
|
ATC_Error.h \
|
|
ATC_HardyKernel.h \
|
|
ATC_Transfer.h \
|
|
ATC_TransferHardy.h \
|
|
ATC_TransferThermal.h \
|
|
ATC_TypeDefs.h \ \
|
|
AtomicRegulator.h \
|
|
CG.h \
|
|
CloneVector.h \
|
|
DenseMatrix.h \
|
|
DenseVector.h \
|
|
DiagonalMatrix.h \
|
|
ElasticTimeIntegrator.h \
|
|
ElectronFlux.h \
|
|
ElectronHeatCapacity.h \
|
|
ElectronHeatFlux.h \
|
|
ElectronPhononExchange.h \
|
|
ExtrinsicModel.h \
|
|
ExtrinsicModelTwoTemperature.h \
|
|
FE_Element.h \
|
|
FE_Engine.h \
|
|
FE_Mesh.h \
|
|
FieldEulerIntegrator.h \
|
|
GMRES.h \
|
|
ImplicitSolveOperator.h \
|
|
Kinetostat.h \
|
|
LammpsInterface.h \
|
|
Material.h \
|
|
MatrixDef.h \
|
|
Matrix.h \
|
|
MatrixLibrary.h \
|
|
OutputManager.h \
|
|
PhysicsModel.h \
|
|
PhysicsModelThermal.h \
|
|
PhysicsModelTwoTemperature.h \
|
|
PrescribedDataManager.h \
|
|
Quadrature.h \
|
|
Solver.h \
|
|
SparseMatrix.h \
|
|
SparseMatrix-inl.h \
|
|
SparseVector.h \
|
|
SparseVector-inl.h \
|
|
StringManip.h \
|
|
Thermostat.h \
|
|
TimeFilter.h \
|
|
TimeIntegrator.h \
|
|
Utility.h \
|
|
Vector.h \
|
|
XT_Function.h
|
|
|
|
# ------ DEFINITIONS ------
|
|
# which file will be copied to Makefile.lammps
|
|
|
|
EXTRAMAKE = Makefile.lammps.linalg
|
|
|
|
DIR = Obj_mingw32-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 = i686-w64-mingw32-g++
|
|
CCFLAGS = -I../../tools/mingw-cross/mpich2-win32/include/ \
|
|
-I../../src -I../../src/STUBS -DMPICH_IGNORE_CXX_SEEK \
|
|
-O3 -march=i686 -mtune=generic -mfpmath=387 -mpc64 \
|
|
-ffast-math -funroll-loops -fstrict-aliasing \
|
|
-DLAMMPS_SMALLSMALL -Wno-uninitialized
|
|
ARCHIVE = i686-w64-mingw32-ar
|
|
ARCHFLAG = -rcs
|
|
DEPFLAGS = -M
|
|
LINK = i686-w64-mingw32-g++
|
|
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)
|