Browse Source

fix issue with LDSO_GNU_HASH_SUPPORT

Under Fedora 27 there is a problem with the existing ld check.
Binutils ld segfaults. Add a glibc compat macro to complete
the build on Fedora.

Signed-off-by: Sven Anders <anders@anduras.de>
Waldemar Brodkorb 6 years ago
parent
commit
cef9840613
2 changed files with 6 additions and 2 deletions
  1. 3 2
      Rules.mak
  2. 3 0
      include/features.h

+ 3 - 2
Rules.mak

@@ -195,8 +195,9 @@ check_as=$(shell \
 	if $(CC) -Wa,$(1) -Wa,-Z -c -o /dev/null -xassembler /dev/null > /dev/null 2>&1; \
 	then echo "-Wa,$(1)"; fi)
 check_ld=$(shell \
-	if $(CC) $(LDFLAG-fuse-ld) $(CFLAG_-Wl--no-warn-mismatch) -Wl,$(1) $(CFLAG_-nostdlib) -o /dev/null -Wl,-b,binary /dev/null > /dev/null 2>&1; \
-	then echo "$(1)"; fi)
+	tf="/tmp/clducl$$$$.c"; echo "int _start(){return 0;}int main(){return 0;}" >$$tf; \
+	if $(CC) $(LDFLAG-fuse-ld) $(CFLAG_-Wl--no-warn-mismatch) -Wl,$(1) $(CFLAG_-nostdlib) -o /dev/null $$tf > /dev/null 2>&1; \
+	then echo "$(1)"; fi; rm -f $$tf )
 
 # Use variable indirection here so that we can have variable
 # names with fun chars in them like equal signs

+ 3 - 0
include/features.h

@@ -139,6 +139,9 @@
 # define __GNUC_PREREQ(maj, min) 0
 #endif
 
+/* Whether to use feature set F.  */
+#define __GLIBC_USE(F)  __GLIBC_USE_ ## F
+
 /* _DEFAULT_SOURCE is equivalent to defining _BSD_SOURCE and _SVID_SOURCE
  * and vice versa. */
 #ifdef _DEFAULT_SOURCE