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