Actual source code: ex56f.F90
1: !
2: ! Tests PetscHasExternalPackage().
3: !
4: #include <petsc/finclude/petscsys.h>
5: program main
6: use petscsys
7: implicit none
9: character(len=256) pkg, outputString
10: PetscBool has, flg
11: PetscErrorCode ierr
13: PetscCallA(PetscInitialize(ierr))
14: pkg = 'hdf5'
15: PetscCallA(PetscOptionsGetString(PETSC_NULL_OPTIONS, PETSC_NULL_CHARACTER, '-pkg', pkg, flg, ierr))
16: PetscCallA(PetscHasExternalPackage(pkg, has, ierr))
17: write (outputString, *) 'PETSc has '//trim(pkg)//'?', has, '\n'
18: PetscCallA(PetscPrintf(PETSC_COMM_WORLD, outputString, ierr))
19: PetscCallA(PetscFinalize(ierr))
20: end program main
22: !/*TEST
23: !
24: ! test:
25: ! suffix: blaslapack
26: ! args: -pkg blaslapack
27: ! test:
28: ! suffix: hdf5
29: ! requires: hdf5
30: ! args: -pkg hdf5
31: ! test:
32: ! suffix: no-hdf5
33: ! requires: !hdf5
34: ! args: -pkg hdf5
35: ! test:
36: ! suffix: parmetis
37: ! requires: parmetis
38: ! args: -pkg parmetis
39: ! test:
40: ! suffix: no-parmetis
41: ! requires: !parmetis
42: ! args: -pkg parmetis
43: ! test:
44: ! suffix: yaml
45: ! requires: yaml
46: ! args: -pkg yaml
47: ! test:
48: ! suffix: no-yaml
49: ! requires: !yaml
50: ! args: -pkg yaml
51: !
52: !TEST*/