Actual source code: zstartf.c
1: #include <petsc/private/fortranimpl.h>
3: #if defined(PETSC_HAVE_FORTRAN_CAPS)
4: #define petscinitializefortran_ PETSCINITIALIZEFORTRAN
5: #define petscsetfortranbasepointers_ PETSCSETFORTRANBASEPOINTERS
6: #define petsc_null_function_ PETSC_NULL_FUNCTION
7: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
8: #define petscinitializefortran_ petscinitializefortran
9: #define petscsetfortranbasepointers_ petscsetfortranbasepointers
10: #define petsc_null_function_ petsc_null_function
11: #endif
13: #if defined(PETSC_HAVE_FORTRAN_UNDERSCORE_UNDERSCORE)
14: #define petsc_null_function_ petsc_null_function__
15: #endif
17: PETSC_EXTERN void petscinitializefortran_(int *ierr)
18: {
19: *ierr = PetscInitializeFortran();
20: }
22: PETSC_EXTERN void petscsetfortranbasepointers_(char *fnull_character, void *fnull_integer, void *fnull_scalar, void *fnull_double, void *fnull_real, void *fnull_truth, void (*fnull_function)(void), void *fnull_mpi_comm, PETSC_FORTRAN_CHARLEN_T len)
23: {
24: PETSC_NULL_CHARACTER_Fortran = fnull_character;
25: PETSC_NULL_INTEGER_Fortran = fnull_integer;
26: PETSC_NULL_SCALAR_Fortran = fnull_scalar;
27: PETSC_NULL_DOUBLE_Fortran = fnull_double;
28: PETSC_NULL_REAL_Fortran = fnull_real;
29: PETSC_NULL_BOOL_Fortran = fnull_truth;
30: PETSC_NULL_FUNCTION_Fortran = fnull_function;
31: PETSC_NULL_MPI_COMM_Fortran = fnull_mpi_comm;
32: }
34: /*
35: A valid address for the fortran variable PETSC_NULL_FUNCTION
36: */
37: PETSC_EXTERN void petsc_null_function_(void)
38: {
39: return;
40: }