This source file includes following definitions.
- mpi_file_delete_
- mpi_file_delete_
1
2
3
4
5
6
7
8 #ifdef _UNICOS
9 #include <fortran.h>
10 #endif
11 #include "adio.h"
12 #include "mpio.h"
13
14
15 #if defined(MPIO_BUILD_PROFILING) || defined(HAVE_WEAK_SYMBOLS)
16
17 #if defined(HAVE_WEAK_SYMBOLS)
18 #if defined(HAVE_PRAGMA_WEAK)
19 #if defined(FORTRANCAPS)
20 extern FORTRAN_API void FORT_CALL MPI_FILE_DELETE( char * FORT_MIXED_LEN_DECL, MPI_Fint *, MPI_Fint * FORT_END_LEN_DECL );
21 #pragma weak MPI_FILE_DELETE = PMPI_FILE_DELETE
22 #elif defined(FORTRANDOUBLEUNDERSCORE)
23 extern FORTRAN_API void FORT_CALL mpi_file_delete__( char * FORT_MIXED_LEN_DECL, MPI_Fint *, MPI_Fint * FORT_END_LEN_DECL );
24 #pragma weak mpi_file_delete__ = pmpi_file_delete__
25 #elif !defined(FORTRANUNDERSCORE)
26 extern FORTRAN_API void FORT_CALL mpi_file_delete( char * FORT_MIXED_LEN_DECL, MPI_Fint *, MPI_Fint * FORT_END_LEN_DECL );
27 #pragma weak mpi_file_delete = pmpi_file_delete
28 #else
29 extern FORTRAN_API void FORT_CALL mpi_file_delete_( char * FORT_MIXED_LEN_DECL, MPI_Fint *, MPI_Fint * FORT_END_LEN_DECL );
30 #pragma weak mpi_file_delete_ = pmpi_file_delete_
31 #endif
32
33 #elif defined(HAVE_PRAGMA_HP_SEC_DEF)
34 #if defined(FORTRANCAPS)
35 #pragma _HP_SECONDARY_DEF PMPI_FILE_DELETE MPI_FILE_DELETE
36 #elif defined(FORTRANDOUBLEUNDERSCORE)
37 #pragma _HP_SECONDARY_DEF pmpi_file_delete__ mpi_file_delete__
38 #elif !defined(FORTRANUNDERSCORE)
39 #pragma _HP_SECONDARY_DEF pmpi_file_delete mpi_file_delete
40 #else
41 #pragma _HP_SECONDARY_DEF pmpi_file_delete_ mpi_file_delete_
42 #endif
43
44 #elif defined(HAVE_PRAGMA_CRI_DUP)
45 #if defined(FORTRANCAPS)
46 #pragma _CRI duplicate MPI_FILE_DELETE as PMPI_FILE_DELETE
47 #elif defined(FORTRANDOUBLEUNDERSCORE)
48 #pragma _CRI duplicate mpi_file_delete__ as pmpi_file_delete__
49 #elif !defined(FORTRANUNDERSCORE)
50 #pragma _CRI duplicate mpi_file_delete as pmpi_file_delete
51 #else
52 #pragma _CRI duplicate mpi_file_delete_ as pmpi_file_delete_
53 #endif
54
55
56 #endif
57
58 #include "mpioprof.h"
59 #endif
60
61 #ifdef FORTRANCAPS
62 #define mpi_file_delete_ PMPI_FILE_DELETE
63 #elif defined(FORTRANDOUBLEUNDERSCORE)
64 #define mpi_file_delete_ pmpi_file_delete__
65 #elif !defined(FORTRANUNDERSCORE)
66 #if defined(HPUX) || defined(SPPUX)
67 #pragma _HP_SECONDARY_DEF pmpi_file_delete pmpi_file_delete_
68 #endif
69 #define mpi_file_delete_ pmpi_file_delete
70 #else
71 #if defined(HPUX) || defined(SPPUX)
72 #pragma _HP_SECONDARY_DEF pmpi_file_delete_ pmpi_file_delete
73 #endif
74 #define mpi_file_delete_ pmpi_file_delete_
75 #endif
76
77 #else
78
79 #ifdef FORTRANCAPS
80 #define mpi_file_delete_ MPI_FILE_DELETE
81 #elif defined(FORTRANDOUBLEUNDERSCORE)
82 #define mpi_file_delete_ mpi_file_delete__
83 #elif !defined(FORTRANUNDERSCORE)
84 #if defined(HPUX) || defined(SPPUX)
85 #pragma _HP_SECONDARY_DEF mpi_file_delete mpi_file_delete_
86 #endif
87 #define mpi_file_delete_ mpi_file_delete
88 #else
89 #if defined(HPUX) || defined(SPPUX)
90 #pragma _HP_SECONDARY_DEF mpi_file_delete_ mpi_file_delete
91 #endif
92 #endif
93 #endif
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108 FORTRAN_API void FORT_CALL mpi_file_delete_(char *filename FORT_MIXED_LEN_DECL, MPI_Fint *info, MPI_Fint *ierr FORT_END_LEN_DECL);
109
110 #ifdef _UNICOS
111 void mpi_file_delete_(_fcd filename_fcd, MPI_Fint *info, MPI_Fint *ierr)
112 {
113 char *filename = _fcdtocp(filename_fcd);
114 int str_len = _fcdlen(filename_fcd);
115 #else
116 FORTRAN_API void FORT_CALL mpi_file_delete_(char *filename FORT_MIXED_LEN(str_len), MPI_Fint *info, MPI_Fint *ierr FORT_END_LEN(str_len))
117 {
118 #endif
119 char *newfname;
120 int real_len, i;
121 MPI_Info info_c;
122
123 info_c = MPI_Info_f2c(*info);
124
125
126 if (filename <= (char *) 0) {
127 FPRINTF(stderr, "MPI_File_delete: filename is an invalid address\n");
128 MPI_Abort(MPI_COMM_WORLD, 1);
129 }
130 for (i=str_len-1; i>=0; i--) if (filename[i] != ' ') break;
131 if (i < 0) {
132 FPRINTF(stderr, "MPI_File_delete: filename is a blank string\n");
133 MPI_Abort(MPI_COMM_WORLD, 1);
134 }
135 real_len = i + 1;
136
137 newfname = (char *) ADIOI_Malloc((real_len+1)*sizeof(char));
138 ADIOI_Strncpy(newfname, filename, real_len);
139 newfname[real_len] = '\0';
140
141 *ierr = MPI_File_delete(newfname, info_c);
142
143 ADIOI_Free(newfname);
144 }