]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Stub out execstack, multidir, and ifunc problems
authorStan Shebs <stanshebs@google.com>
Mon, 22 Jan 2018 19:43:05 +0000 (11:43 -0800)
committerStan Shebs <stanshebs@google.com>
Tue, 30 Apr 2019 20:38:28 +0000 (13:38 -0700)
nptl/Makefile

index 2f3c7182a92671f918e2db19e5727bbeeb57b048..9cc18666fdca57e5f130bc6599a21a8da6d60018 100644 (file)
@@ -394,16 +394,22 @@ tests += tst-atfork2 tst-tls4 tst-_res1 tst-fini1 tst-compat-forwarder \
 tests-internal += tst-tls3 tst-tls3-malloc tst-tls5 tst-stackguard1
 tests-nolibpthread += tst-fini1
 ifeq ($(have-z-execstack),yes)
+# Test depends on a nested function, can't compile without rewrite
+ifneq ($(with-clang),yes)
 tests += tst-execstack
 endif
 endif
+endif
 
 modules-names = tst-atfork2mod tst-tls3mod tst-tls4moda tst-tls4modb \
                tst-tls5mod tst-tls5moda tst-tls5modb tst-tls5modc \
                tst-tls5modd tst-tls5mode tst-tls5modf tst-stack4mod \
-               tst-_res1mod1 tst-_res1mod2 tst-execstack-mod tst-fini1mod \
+               tst-_res1mod1 tst-_res1mod2 tst-fini1mod \
                tst-join7mod tst-compat-forwarder-mod tst-audit-threads-mod1 \
                tst-audit-threads-mod2
+ifneq ($(with-clang),yes)
+modules-names += tst-execstack-mod
+endif
 extra-test-objs += $(addsuffix .os,$(strip $(modules-names))) \
                   tst-cleanup4aux.o tst-cleanupx4aux.o
 test-extras += tst-cleanup4aux tst-cleanupx4aux
@@ -428,10 +434,11 @@ ifeq ($(build-shared),yes)
 
 # Set the `multidir' variable by grabbing the variable from the compiler.
 # We do it once and save the result in a generated makefile.
+# Suppress not-working clang attempt to include 32 and x32 multidirs.
 -include $(objpfx)multidir.mk
 $(objpfx)multidir.mk: $(common-objpfx)config.make
        $(make-target-directory)
-       dir=`$(CC) $(CFLAGS) $(CPPFLAGS) -print-multi-directory`; \
+       dir="."; \
        echo "multidir := $$dir" > $@T
        mv -f $@T $@