public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [ada, patch] fix libgnat build on x86_64-linux-gnux32 with glibc <= 2.31
@ 2022-10-31 15:33 Matthias Klose
  2022-11-07 13:50 ` Arnaud Charlet
  0 siblings, 1 reply; 2+ messages in thread
From: Matthias Klose @ 2022-10-31 15:33 UTC (permalink / raw)
  To: GCC Patches

This was introduced with the fix and backports of PR103530 on 
x86_64-linux-gnux32 with older glibc versions (checked with 2.31), where dladdr 
is still in the libdl.so library, and not included in libc.so as in newer glibc 
versions.
Linking of libgnat.so fails with

[...]
/usr/x86_64-linux-gnux32/bin/ld: s-trasym.o: in function 
`system__traceback__symbolic__module_na
me__getXnn':
collect2: error: ld returned 1 exit status
make[8]: *** [gcc-interface/Makefile:677: gnatlib-shared-default] Error 1

https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=9d6c63ba490ec92245f04b5cbafc56abd28e8d22

-- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -2650,13 +2650,18 @@ ifeq ($(strip $(filter-out %x32 linux%,$(target_cpu) 
$(target_os))),)
    s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
    s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
    s-taspri.ads<libgnarl/s-taspri__posix.ads \
+  $(TRASYM_DWARF_UNIX_PAIRS) \
+  s-tsmona.adb<libgnat/s-tsmona__linux.adb \
    $(ATOMICS_TARGET_PAIRS) \
    $(X86_64_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
    system.ads<libgnat/system-linux-x86.ads

The addition of s-tsmona.adb<libgnat/s-tsmona__linux.adb pulls in the reference 
to dladdr, however not setting MISCLIB to -ldl as on other architectures

Proposed patch:


  PR ada/107475
  * Makefile.rtl: Set MISCLIB for x86_64-linux-gnux32.


--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -2584,6 +2584,7 @@ ifeq ($(strip $(filter-out %x32 linux%,$(target_cpu) 
$(target_os))),)
    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
    EH_MECHANISM=-gcc
    THREADSLIB=-lpthread -lrt
+  MISCLIB = -ldl
    GNATLIB_SHARED=gnatlib-shared-dual
    GMEM_LIB = gmemlib
    LIBRARY_VERSION := $(LIB_VERSION)

Ok for the trunk and the branches?

Matthias

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-11-07 13:50 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-31 15:33 [ada, patch] fix libgnat build on x86_64-linux-gnux32 with glibc <= 2.31 Matthias Klose
2022-11-07 13:50 ` Arnaud Charlet

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).