Commits

Anonymous committed 3493cd8

workaround for old binutils on SLC4/lxplus

Comments (0)

Files changed (3)

+2008-10-29  Wim Lavrijsen <WLavrijsen@lbl.gov>
+        * binutils on SLC4 appears not to consider /lib/ld-linux.so for symbols -> worked around
+        * tagging CxxUtils-00-00-06
+
 2008-10-28  Wim Lavrijsen <WLavrijsen@lbl.gov>
         * added a stripped-down version of the seal signal handler
         * tagging CxxUtils-00-00-05

CxxUtils/SealCommon.h

 #define HAVE_DLADDR_DECL 1
 
 /* Define if `_r_debug' exists. */
-#define HAVE_R_DEBUG 1
+// note: leave undefined on SLC4 b/c of binutils problems
+// #define HAVE_R_DEBUG 1
 
 /* Define if you have the <elf.h> header file.  */
 #define HAVE_ELF_H 1

src/SealSharedLib.cxx

 
 #include <assert.h>                            // wlav
 
+#ifndef HAVE_R_DEBUG
+   extern ElfW(Dyn) _DYNAMIC []; // #pragma weak?   // wlav
+#endif
+
 //namespace seal {                                wlav
 namespace Athena {                             // wlav
 //<<<<<< PRIVATE DEFINES                                                >>>>>>
     //   Solaris:
     //     dlinfo (self, RTLD_DI_LINKMAP, &p);
 
-    extern ElfW(Dyn) _DYNAMIC []; // #pragma weak?
+ //    extern ElfW(Dyn) _DYNAMIC []; // #pragma weak?  // wlav
     link_map *p = 0;
     for (ElfW(Dyn) *dyn = _DYNAMIC; dyn->d_tag != DT_NULL; ++dyn)
 	if (dyn->d_tag == DT_DEBUG && dyn->d_un.d_ptr)