From 4cdcf4fcf5e2f9dcb215e4616ddcd4226cb5fdbc Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 7 Aug 2014 16:31:41 +0200 Subject: fix testsuite build of uClibc, one patch from buildroot --- target/config/Config.in.toolchain | 4 +-- toolchain/uclibc/patches/0.9.33.2/test-math.patch | 41 ++++++++++++++++++++++ ...58-test-tls-fix-build-with-newer-binutils.patch | 37 +++++++++++++++++++ 3 files changed, 80 insertions(+), 2 deletions(-) create mode 100644 toolchain/uclibc/patches/0.9.33.2/test-math.patch create mode 100644 toolchain/uclibc/patches/0.9.33.2/uclibc-0058-test-tls-fix-build-with-newer-binutils.patch diff --git a/target/config/Config.in.toolchain b/target/config/Config.in.toolchain index 6335344ce..53462ad47 100644 --- a/target/config/Config.in.toolchain +++ b/target/config/Config.in.toolchain @@ -140,9 +140,9 @@ config ADK_STATIC_TOOLCHAIN If you want to create more portable toolchains, build them static. config ADK_UCLIBC_TEST - prompt "Build uClibc testsuite" + prompt "Build testsuite for C library" boolean - depends on ADK_TARGET_LIB_UCLIBC_NG + depends on ADK_TARGET_LIB_UCLIBC_NG || ADK_TARGET_LIB_UCLIBC default y endmenu diff --git a/toolchain/uclibc/patches/0.9.33.2/test-math.patch b/toolchain/uclibc/patches/0.9.33.2/test-math.patch new file mode 100644 index 000000000..374cc765c --- /dev/null +++ b/toolchain/uclibc/patches/0.9.33.2/test-math.patch @@ -0,0 +1,41 @@ +diff -Nur uClibc-0.9.33.2.orig/test/math/Makefile.in uClibc-0.9.33.2/test/math/Makefile.in +--- uClibc-0.9.33.2.orig/test/math/Makefile.in 2012-05-15 09:20:09.000000000 +0200 ++++ uClibc-0.9.33.2/test/math/Makefile.in 2014-08-07 16:12:20.137047118 +0200 +@@ -1,11 +1,13 @@ + # uClibc math tests + # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. + +-TESTS := basic-test tst-definitions test-fpucw test-float test-ifloat test-double test-idouble \ ++TESTS_DISABLED := libm-test ++ ++TESTS := basic-test tst-definitions test-fpucw \ + rint signgam ilogb + # gamma (removed from TESTS, need to add "small errors are ok" machinery there) + ifeq ($(UCLIBC_HAS_LONG_DOUBLE_MATH),y) +-TESTS += test-ldouble test-ildoubl compile_test c99_test ++TESTS += compile_test c99_test + else + CFLAGS_basic-test := -DNO_LONG_DOUBLE + endif +@@ -23,9 +25,19 @@ + + PERL := /usr/bin/perl + ++MDEPS := $(wildcard test-*.c) ++$(MDEPS): libm-test.c ++ ++ifeq ($(TARGET_ARCH),mips) ++ULP_SUFFIX:=$(if $(CONFIG_MIPS_ISA_MIPS64R1)$(CONFIG_MIPS_ISA_MIPS64R2),64,32) ++TARGET_ULP:=$(TARGET_ARCH)$(ULP_SUFFIX) ++else ++TARGET_ULP := $(if $(wildcard libm-test-ulps-$(TARGET_ARCH)),$(TARGET_ARCH),generic) ++endif ++ + $(TESTS): libm-test.c + +-libm-test.c: libm-test-ulps-$(TARGET_ARCH) libm-test.inc gen-libm-test.pl +- $(Q)$(PERL) ./gen-libm-test.pl -u libm-test-ulps-$(TARGET_ARCH) ./libm-test.inc -o "." 2>&1 > /dev/null ++libm-test.c: libm-test-ulps-$(TARGET_ULP) libm-test.inc gen-libm-test.pl ++ $(Q)$(PERL) ./gen-libm-test.pl -u libm-test-ulps-$(TARGET_ULP) ./libm-test.inc -o "." 2>&1 > /dev/null + + EXTRA_CLEAN := libm-test.c libm-test-ulps.h diff --git a/toolchain/uclibc/patches/0.9.33.2/uclibc-0058-test-tls-fix-build-with-newer-binutils.patch b/toolchain/uclibc/patches/0.9.33.2/uclibc-0058-test-tls-fix-build-with-newer-binutils.patch new file mode 100644 index 000000000..04dfb1ef7 --- /dev/null +++ b/toolchain/uclibc/patches/0.9.33.2/uclibc-0058-test-tls-fix-build-with-newer-binutils.patch @@ -0,0 +1,37 @@ +From 931e8391565323ed2e589c83b83a7345813a5514 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Wed, 02 Oct 2013 07:08:29 +0000 +Subject: test: tls: fix build with newer binutils + +Fix the following build failures: + +ld: tst-tls10.o: undefined reference to symbol 'f2a' +ld: tst-tls12.o: undefined reference to symbol 'a1' + +binutils ld defaults to --no-copy-dt-needed-entries since version 2.22. Add +library dependencies explicitly. + +Signed-off-by: Baruch Siach +Signed-off-by: Bernhard Reutner-Fischer +--- +(limited to 'test') + +diff --git a/test/tls/Makefile.in b/test/tls/Makefile.in +index 875c607..7ab4e2a 100644 +--- a/test/tls/Makefile.in ++++ b/test/tls/Makefile.in +@@ -102,9 +102,9 @@ LDFLAGS_tst-tls6 := -ldl + LDFLAGS_tst-tls7 := -ldl + LDFLAGS_tst-tls8 := -ldl + LDFLAGS_tst-tls9 := -ldl +-LDFLAGS_tst-tls10 := -Wl,-rpath-link=. tst-tlsmod8.so +-LDFLAGS_tst-tls11 := -Wl,-rpath-link=. tst-tlsmod10.so +-LDFLAGS_tst-tls12 := -Wl,-rpath-link=. tst-tlsmod12.so ++LDFLAGS_tst-tls10 := -Wl,-rpath-link=. tst-tlsmod8.so tst-tlsmod7.so ++LDFLAGS_tst-tls11 := -Wl,-rpath-link=. tst-tlsmod9.so tst-tlsmod10.so ++LDFLAGS_tst-tls12 := -Wl,-rpath-link=. tst-tlsmod11.so tst-tlsmod12.so + LDFLAGS_tst-tls13 := -ldl -Wl,-rpath-link=. + LDFLAGS_tst-tls14 := -ldl -Wl,-rpath-link=. tst-tlsmod14a.so + LDFLAGS_tst-tls15 := -ldl -Wl,-rpath-link=. +-- +cgit v0.9.1 -- cgit v1.2.3