1*55a74a43SLisandro Dalcin# -*- makefile -*- 2*55a74a43SLisandro Dalcin 3*55a74a43SLisandro DalcinMPIEXEC= 4*55a74a43SLisandro DalcinPYTHON=python 5*55a74a43SLisandro Dalcin 6*55a74a43SLisandro Dalcin-include ../../../../../petscdir.mk 7*55a74a43SLisandro Dalcin-include ${PETSC_DIR}/lib/petsc/conf/variables 8*55a74a43SLisandro Dalcin 9*55a74a43SLisandro Dalcin.PHONY:test 10*55a74a43SLisandro Dalcintest: run clean 11*55a74a43SLisandro Dalcin 12*55a74a43SLisandro DalcinSCRIPT=run_demo 13*55a74a43SLisandro DalcinMODULE=Bratu3D 14*55a74a43SLisandro Dalcin 15*55a74a43SLisandro Dalcin.PHONY:build 16*55a74a43SLisandro Dalcinbuild: ${MODULE}.py _${MODULE}.so 17*55a74a43SLisandro Dalcin 18*55a74a43SLisandro Dalcin.PHONY:run 19*55a74a43SLisandro Dalcinrun: build 20*55a74a43SLisandro Dalcin ${MPIEXEC} ${PYTHON} ${SCRIPT}.py 21*55a74a43SLisandro Dalcin 22*55a74a43SLisandro Dalcin${MODULE}.py _${MODULE}.so: ${MODULE}.i ${MODULE}.c ${MODULE}.h 23*55a74a43SLisandro Dalcin CC=${CC} F90=${FC} LDSHARED='${CLINKER} -shared' \ 24*55a74a43SLisandro Dalcin ${PYTHON} setup.py -q build_ext --inplace 25*55a74a43SLisandro Dalcin ${RM} -r build ${MODULE}_wrap.c 26*55a74a43SLisandro Dalcin 27*55a74a43SLisandro Dalcin.PHONY:clean 28*55a74a43SLisandro Dalcinclean:: 29*55a74a43SLisandro Dalcin ${RM} ${MODULE}.py _${MODULE}*.so 30*55a74a43SLisandro Dalcin ${RM} *.py[co] 31*55a74a43SLisandro Dalcin ${RM} -r __pycache__ 32*55a74a43SLisandro Dalcin 33*55a74a43SLisandro Dalcininclude ${PETSC_DIR}/lib/petsc/conf/variables 34*55a74a43SLisandro Dalcininclude ${PETSC_DIR}/lib/petsc/conf/rules 35*55a74a43SLisandro DalcinMPIEXEC= 36