matthias muntwiler acea809e4e update public distribution
based on internal repository c9a2ac8 2019-01-03 16:04:57 +0100
tagged rev-master-2.0.0
2019-01-31 15:45:02 +01:00

51 lines
1.4 KiB
Makefile

SHELL=/bin/sh
# makefile for MSC program and module
#
# the MSC source code is not included in the public distribution.
# please obtain the MSC code from the original author,
# and copy it to this directory before compilation.
#
# see the top-level makefile for additional information.
.SUFFIXES:
.SUFFIXES: .c .cpp .cxx .exe .f .h .i .o .py .pyf .so
.PHONY: all clean edac msc mufpot
FC?=gfortran
FCCOPTS?=
F2PY?=f2py
F2PYOPTS?=
CC?=gcc
CCOPTS?=
SWIG?=swig
SWIGOPTS?=
PYTHON?=python
PYTHONOPTS?=
PYTHONINC?=
all: msc
msc: msc.exe msc.so
msc.exe: msc.f param.f common.f phases.f angles.f revision.f
$(FC) $(FCOPTS) -o msc.exe msc.f phases.f angles.f
#msc.pyf currently needs a manual edit before compiling.
#this target should execute only if it doesn't exist.
msc.pyf: | msc.f phases.f angles.f
$(F2PY) -h msc.pyf -m msc msc.f phases.f angles.f only: mscmain anglesarray anglesfile ps
$(error msc.pyf auto-generated - must be edited manually before build can continue!)
msc.so: msc.f param.f common.f phases.f angles.f revision.f msc.pyf
$(F2PY) -c $(F2PYOPTS) msc.pyf msc.f phases.f angles.f -m msc
revision.f: msc.f
echo " character*50 coderev" > revision.f
echo " parameter(coderev=" >> revision.f
git log --pretty=format:" ='Code revision %h, %ad')" --date=iso -1 $< >> $@ || echo " ='Code revision unknown, "`date +"%F %T %z"`"')" >> $@
clean:
rm -f *.so *.o *.exe
rm -f revision.f