File: makefile

package info (click to toggle)
petsc4py 3.23.1-1exp2
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 3,448 kB
  • sloc: python: 12,503; ansic: 1,697; makefile: 343; f90: 313; sh: 14
file content (41 lines) | stat: -rw-r--r-- 801 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# -*- makefile -*-

MPIEXEC=
PYTHON=python

F2PY = f2py
F2PY_FLAGS  = --quiet
F2PY_FLAGS += --noarch --f90flags=''
F2PY_FLAGS += -DF2PY_REPORT_ON_ARRAY_COPY=1

-include ../../../../../petscdir.mk
-include ${PETSC_DIR}/lib/petsc/conf/variables

.PHONY:test
test: run clean

.PHONY:run
run: run_py run_cc

SCRIPT=poisson3d
MODULE=del2lib
.PHONY:run_py
run_py: ${MODULE}.so
	${MPIEXEC} ${MPIEXEC_FLAGS} ${PYTHON} ${SCRIPT}.py

${MODULE}.so: ${MODULE}.f90
	${F2PY} ${F2PY_FLAGS} -c $< -m ${MODULE}

EXECUTABLE=poisson3d
.PHONY:run_cc
run_cc: ${EXECUTABLE}.exe
	${MPIEXEC} ${MPIEXEC_FLAGS} ./${EXECUTABLE}.exe

${EXECUTABLE}.exe:
	${MAKE} -f makefile.petsc \
        PETSC_DIR=${PETSC_DIR} PETSC_ARCH=${PETSC_ARCH}

.PHONY:clean
clean:
	${RM} *.py[co] ${MODULE}*.so ${EXECUTABLE}.exe
	${RM} -r __pycache__