lammps/lib/linalg/Makefile.mingw_cross

64 lines
1.6 KiB
Makefile
Executable File

# *
# *_________________________________________________________________________*
# * Minimal BLAS/LAPACK Library for ATC
# To compile and link LAMMPS to the linalg library generated by this Makefile,
# try appending the following definitions to the standard definitions in
# whatever LAMMPS Makefile your are using, e.g. in lib/atc/Makefile.lammps
# CCFLAGS = -I../../lib/linalg
# LINKFLAGS = -L../../lib/libalg
# USRLIB = -llinalg -lgfortran
SHELL = /bin/sh
# ------ FILES ------
SRC = dasum.f daxpy.f dcopy.f ddot.f dgecon.f dgemm.f dgemv.f dger.f dgetf2.f dgetrf.f dgetri.f dlabad.f dlamch.f dlacn2.f dlange.f dlassq.f dlaswp.f dlatrs.f drscl.f dscal.f dswap.f dtrmm.f dtrmv.f dtrsm.f dtrsv.f dtrti2.f dtrtri.f idamax.f ieeeck.f ilaenv.f iparmq.f lsame.f xerbla.f
FILES = $(SRC) Makefile
# ------ DEFINITIONS ------
LIB = liblinalg.a
OBJ = $(SRC:.f=.o)
# ------ SETTINGS ------
FC = i686-pc-mingw32-gfortran
FFLAGS = -O3 -march=i686 -mtune=generic -mfpmath=387 -mpc64 \
-ffast-math -funroll-loops -fstrict-aliasing -Wall -W -Wno-uninitialized -fno-second-underscore
FFLAGS0 = -O0 -march=i686 -mtune=generic -mfpmath=387 -mpc64 \
-Wall -W -Wno-uninitialized -fno-second-underscore
ARCHIVE = i686-pc-mingw32-ar
AR = i686-pc-mingw32-ar
ARCHFLAG = -rcs
USRLIB =
SYSLIB =
# ------ MAKE PROCEDURE ------
lib: $(OBJ)
$(ARCHIVE) $(ARFLAGS) $(LIB) $(OBJ)
# ------ COMPILE RULES ------
%.o:%.F
$(F90) $(F90FLAGS) -c $<
%.o:%.f
$(FC) $(FFLAGS) -c $<
dlamch.o: dlamch.f
$(FC) $(FFLAGS0) -c $<
# ------ CLEAN ------
clean:
-rm *.o *.mod *~ $(LIB)
tar:
-tar -cvf ../linalg.tar $(FILES)