Page MenuHomec4science

Makefile_serial
No OneTemporary

File Metadata

Created
Fri, May 10, 06:33

Makefile_serial

#
# @file Makefile_serial
#
# @brief Makefile for serial version of futils
#
# @copyright
# Copyright (©) 2021 EPFL (Ecole Polytechnique Fédérale de Lausanne)
# SPC (Swiss Plasma Center)
#
# futils is free software: you can redistribute it and/or modify it under
# the terms of the GNU Lesser General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option)
# any later version.
#
# futils is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
# @authors
# (in alphabetical order)
# @author Emmanuel Lanti <emmanuel.lanti@epfl.ch>
# @author Trach-Minh Tran <trach-minh.tran@epfl.ch>
#
PREFIX=$(HOME)
FC = ifort
ifeq ($(FC), ifort)
FFLAGS = -g -check bounds -traceback
else ifeq ($(FC), gfortran)
FFLAGS = -g -fcheck=bounds -fbacktrace
endif
HDF5_serial = $(HDF5_ROOT)
F90 = $(FC)
F90FLAGS = $(FFLAGS) -I${HDF5_serial}/include
CC = cc
CFLAGS = -O2 -Impiuni
LDFLAGS = -L. -L${HDF5_serial}/lib
LIBS = -lfutils -lhdf5_fortran -lhdf5 -lz -lgcc_s -lcrypt -lssl
LIBS = -lfutils -lhdf5_fortran -lhdf5 -lz -lmpiuni
.SUFFIXES:
.SUFFIXES: .o .c .f90
.f90.o:
$(F90) $(F90FLAGS) -c $<
lib: libfutils.a getfile
getfile: getfile.o
$(F90) $(LDFLAGS) -o $@ $< $(LIBS)
libfutils.a: futils.o cutils.o buffer.o uniproc.o
ar r $@ $?
ranlib $@
make -C mpiuni lib
futils.o: append.tpl zappend.tpl \
putarr.tpl cputarr.tpl \
getarr.tpl cgetarr.tpl
$(F90) $(F90FLAGS) -Impiuni -c futils.f90
buffer.o: futils.o
$(F90) $(F90FLAGS) -Impiuni -c buffer.f90
getfile.o: libfutils.a
clean:
rm -f *.o *~ a.out
make -C mpiuni clean
distclean: clean
rm -f getfile *.a *.mod
make -C mpiuni distclean

Event Timeline