xref: /petsc/src/binding/petsc4py/demo/legacy/bratu2d/makefile (revision 5a48edb989d3ea10d6aff6c0e26d581c18691deb)
1# -*- makefile -*-
2
3MPIEXEC=
4PYTHON=python
5
6F2PY = f2py --quiet
7F2PY_FLAGS =
8F2PY_FLAGS = -DF2PY_REPORT_ATEXIT -DF2PY_REPORT_ON_ARRAY_COPY=0
9F2PY_FLAGS =--noarch --f90flags=''
10F2PY_FLAGS +=-DF2PY_REPORT_ON_ARRAY_COPY=1
11
12-include ../../../../../petscdir.mk
13-include ${PETSC_DIR}/lib/petsc/conf/variables
14
15.PHONY:test
16test: run clean
17
18.PHONY:run
19run: run_py run_f90
20
21.PHONY:run_py
22run_py:
23	${MPIEXEC} ${PYTHON} bratu2d.py -impl python
24
25MODULE=bratu2df90
26.PHONY:${MODULE}
27${MODULE}: ${MODULE}.so
28${MODULE}.so: ${MODULE}.f90
29	${F2PY} ${F2PY_FLAGS} -c $< -m ${MODULE}
30
31.PHONY:run_f90
32run_f90: ${MODULE}
33	${MPIEXEC} ${PYTHON} bratu2d.py -impl fortran
34
35.PHONY:clean
36clean:
37	${RM} *.py[co] ${MODULE}*.so
38	${RM} -r __pycache__
39