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*/