* remove module flag from linking romio - it should be in the romio component
(which it is) and not romio itself * Work around dark, evil linker voodoo that prevented building both shared and static libraries on OS X. The global variables in ad_init.c were not initialized, and so were marked as tentative definitions, which caused much pain for the linker later on. Initializing them makes them actual definitions and the problem goes away. I hate linkers. This commit was SVN r6439.
Этот коммит содержится в:
родитель
032fef3eac
Коммит
29b6112358
@ -29,4 +29,3 @@ libromio_dist_la_LIBADD = \
|
||||
$(MCA_io_romio_STATIC_LTLIBS)
|
||||
libromio_dist_la_DEPENDENCIES = \
|
||||
$(libromio_dist_la_LIBADD)
|
||||
libromio_dist_la_LDFLAGS = -module -avoid-version
|
||||
|
@ -7,32 +7,33 @@
|
||||
*/
|
||||
|
||||
#include "adio.h"
|
||||
#include "adio_extern.h"
|
||||
|
||||
ADIOI_Flatlist_node *ADIOI_Flatlist;
|
||||
ADIOI_Async_node *ADIOI_Async_list_head, *ADIOI_Async_list_tail;
|
||||
ADIOI_Flatlist_node *ADIOI_Flatlist = NULL;
|
||||
ADIOI_Async_node *ADIOI_Async_list_head = NULL, *ADIOI_Async_list_tail = NULL;
|
||||
/* list of outstanding asynchronous requests */
|
||||
ADIOI_Async_node *ADIOI_Async_avail_head, *ADIOI_Async_avail_tail;
|
||||
ADIOI_Async_node *ADIOI_Async_avail_head = NULL, *ADIOI_Async_avail_tail = NULL;
|
||||
/* list of available (already malloced) nodes for above async list */
|
||||
ADIOI_Malloc_async *ADIOI_Malloc_async_head, *ADIOI_Malloc_async_tail;
|
||||
ADIOI_Malloc_async *ADIOI_Malloc_async_head = NULL, *ADIOI_Malloc_async_tail = NULL;
|
||||
/* list of malloced areas for async_list, which must be freed in ADIO_End */
|
||||
|
||||
ADIOI_Req_node *ADIOI_Req_avail_head, *ADIOI_Req_avail_tail;
|
||||
ADIOI_Req_node *ADIOI_Req_avail_head = NULL, *ADIOI_Req_avail_tail = NULL;
|
||||
/* list of available (already malloced) request objects */
|
||||
ADIOI_Malloc_req *ADIOI_Malloc_req_head, *ADIOI_Malloc_req_tail;
|
||||
ADIOI_Malloc_req *ADIOI_Malloc_req_head = NULL, *ADIOI_Malloc_req_tail = NULL;
|
||||
/* list of malloced areas for requests, which must be freed in ADIO_End */
|
||||
|
||||
/* for f2c and c2f conversion */
|
||||
ADIO_File *ADIOI_Ftable;
|
||||
int ADIOI_Ftable_ptr, ADIOI_Ftable_max;
|
||||
ADIO_Request *ADIOI_Reqtable;
|
||||
int ADIOI_Reqtable_ptr, ADIOI_Reqtable_max;
|
||||
ADIO_File *ADIOI_Ftable = NULL;
|
||||
int ADIOI_Ftable_ptr = 0, ADIOI_Ftable_max = 0;
|
||||
ADIO_Request *ADIOI_Reqtable = NULL;
|
||||
int ADIOI_Reqtable_ptr = 0, ADIOI_Reqtable_max = 0;
|
||||
#ifndef HAVE_MPI_INFO
|
||||
MPI_Info *MPIR_Infotable;
|
||||
int MPIR_Infotable_ptr, MPIR_Infotable_max;
|
||||
MPI_Info *MPIR_Infotable = NULL;
|
||||
int MPIR_Infotable_ptr = 0, MPIR_Infotable_max = 0;
|
||||
#endif
|
||||
|
||||
#ifdef XFS
|
||||
int ADIOI_Direct_read, ADIOI_Direct_write;
|
||||
int ADIOI_Direct_read = 0, ADIOI_Direct_write = 0;
|
||||
#endif
|
||||
|
||||
int ADIO_Init_keyval=MPI_KEYVAL_INVALID;
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user