1
1

This patch try to solve a issue on Leopard. The supposedly global

variables that are not initialized and are declared in a file that
doesn't export any globally visible function are marked as
non-initialized constants, i.e. uninitialized common symbols. For some
obscure reasons, they get removed from the object files on Mac OS X.

So far I found two solution to this problem. One require the addition
of "-c" to the linker command, the second one (corresponding to this
patch) force them to became a common initialized symbol.

This commit was SVN r21739.
Этот коммит содержится в:
George Bosilca 2009-07-28 17:06:16 +00:00
родитель 38e48d4e2f
Коммит 0bf381e931
6 изменённых файлов: 7 добавлений и 7 удалений

Просмотреть файл

@ -29,7 +29,7 @@
#include "opal/mca/base/base.h"
int mca_bml_base_already_opened = 0;
opal_list_t mca_bml_base_components_available;
opal_list_t mca_bml_base_components_available = {0};
#if OPAL_ENABLE_DEBUG_RELIABILITY
double mca_bml_base_error_rate_floor;

Просмотреть файл

@ -31,7 +31,7 @@
#include "orte/util/name_fns.h"
#include "orte/runtime/orte_globals.h"
int mca_btl_base_verbose;
int mca_btl_base_verbose = -1;
int mca_btl_base_err(const char* fmt, ...)
{

Просмотреть файл

@ -24,8 +24,8 @@
* If you wonder why these 2 freelists are declared here read the comment
* in the pml_base_request.h file.
*/
ompi_free_list_t mca_pml_base_send_requests;
ompi_free_list_t mca_pml_base_recv_requests;
ompi_free_list_t mca_pml_base_send_requests = {0};
ompi_free_list_t mca_pml_base_recv_requests = {0};
static void mca_pml_base_request_construct(mca_pml_base_request_t* req)
{

Просмотреть файл

@ -42,7 +42,7 @@
*/
int orte_grpcomm_base_output = -1;
bool mca_grpcomm_base_selected;
orte_grpcomm_base_module_t orte_grpcomm;
orte_grpcomm_base_module_t orte_grpcomm = {0};
opal_list_t mca_grpcomm_base_components_available;
orte_grpcomm_base_component_t mca_grpcomm_base_selected_component;
int orte_grpcomm_profile_fd = -1;

Просмотреть файл

@ -47,7 +47,7 @@
#include "orte/mca/iof/base/static-components.h"
orte_iof_base_module_t orte_iof;
orte_iof_base_module_t orte_iof = {0};
#if ORTE_DISABLE_FULL_SUPPORT

Просмотреть файл

@ -53,7 +53,7 @@ OBJ_CLASS_INSTANCE(orte_routed_tree_t, opal_list_item_t,
construct, destruct);
int orte_routed_base_output = -1;
orte_routed_module_t orte_routed;
orte_routed_module_t orte_routed = {0};
opal_list_t orte_routed_base_components;
static orte_routed_component_t *active_component = NULL;