diff options
author | Maciej W. Rozycki <macro@wdc.com> | 2020-04-06 23:32:44 +0100 |
---|---|---|
committer | Maciej W. Rozycki <macro@wdc.com> | 2020-04-06 23:32:44 +0100 |
commit | 5ff06d762a88077aff0fb637c931c64e6f47f93d (patch) | |
tree | e357c5bda0b384bab0928f9dd89d62bfb917f49e /libatomic | |
parent | 8662d0593438ecd498ab7591ad0d2810886eb6da (diff) | |
download | gcc-5ff06d762a88077aff0fb637c931c64e6f47f93d.zip gcc-5ff06d762a88077aff0fb637c931c64e6f47f93d.tar.gz gcc-5ff06d762a88077aff0fb637c931c64e6f47f93d.tar.bz2 |
libatomic/test: Fix compilation for build sysroot
Fix a problem with the libatomic testsuite using a method to determine
the compiler to use resulting in the tool being different from one the
library has been built with, and causing a catastrophic failure from the
lack of a suitable `--sysroot=' option where the `--with-build-sysroot='
configuration option has been used to build the compiler resulting in
the inability to link executables.
Address this problem by providing a DejaGNU configuration file defining
the compiler to use, via the GCC_UNDER_TEST TCL variable, set from $CC
by autoconf, which will have all the required options set for the target
compiler to build executables in the environment configured, removing
failures like:
.../bin/riscv64-linux-gnu-ld: cannot find crt1.o: No such file or directory
.../bin/riscv64-linux-gnu-ld: cannot find -lm
collect2: error: ld returned 1 exit status
compiler exited with status 1
FAIL: libatomic.c/atomic-compare-exchange-1.c (test for excess errors)
Excess errors:
.../bin/riscv64-linux-gnu-ld: cannot find crt1.o: No such file or directory
.../bin/riscv64-linux-gnu-ld: cannot find -lm
UNRESOLVED: libatomic.c/atomic-compare-exchange-1.c compilation failed to produce executable
and bringing overall test results for the `riscv64-linux-gnu' target
(here with the `x86_64-linux-gnu' host and RISC-V QEMU in the Linux user
emulation mode as the target board) from:
=== libatomic Summary ===
# of unexpected failures 27
# of unresolved testcases 27
to:
=== libatomic Summary ===
# of expected passes 54
libatomic/
* configure.ac: Add testsuite/libatomic-site-extra.exp to output
files.
* configure: Regenerate.
* libatomic/testsuite/libatomic-site-extra.exp.in: New file.
* testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New
variable.
* testsuite/Makefile.in: Regenerate.
Diffstat (limited to 'libatomic')
-rw-r--r-- | libatomic/ChangeLog | 10 | ||||
-rwxr-xr-x | libatomic/configure | 3 | ||||
-rw-r--r-- | libatomic/configure.ac | 1 | ||||
-rw-r--r-- | libatomic/testsuite/Makefile.am | 2 | ||||
-rw-r--r-- | libatomic/testsuite/Makefile.in | 5 | ||||
-rw-r--r-- | libatomic/testsuite/libatomic-site-extra.exp.in | 1 |
6 files changed, 21 insertions, 1 deletions
diff --git a/libatomic/ChangeLog b/libatomic/ChangeLog index 9303122..624162d 100644 --- a/libatomic/ChangeLog +++ b/libatomic/ChangeLog @@ -1,3 +1,13 @@ +2020-04-06 Maciej W. Rozycki <macro@wdc.com> + + * configure.ac: Add testsuite/libatomic-site-extra.exp to output + files. + * configure: Regenerate. + * libatomic/testsuite/libatomic-site-extra.exp.in: New file. + * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New + variable. + * testsuite/Makefile.in: Regenerate. + 2020-02-22 Jakub Jelinek <jakub@redhat.com> PR other/55930 diff --git a/libatomic/configure b/libatomic/configure index 8cad97e..3e2f2ff4 100755 --- a/libatomic/configure +++ b/libatomic/configure @@ -15728,6 +15728,8 @@ fi ac_config_files="$ac_config_files Makefile testsuite/Makefile" +ac_config_files="$ac_config_files testsuite/libatomic-site-extra.exp" + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -16799,6 +16801,7 @@ do "gstdint.h") CONFIG_COMMANDS="$CONFIG_COMMANDS gstdint.h" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "testsuite/Makefile") CONFIG_FILES="$CONFIG_FILES testsuite/Makefile" ;; + "testsuite/libatomic-site-extra.exp") CONFIG_FILES="$CONFIG_FILES testsuite/libatomic-site-extra.exp" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac diff --git a/libatomic/configure.ac b/libatomic/configure.ac index b8df11b..7ac8911 100644 --- a/libatomic/configure.ac +++ b/libatomic/configure.ac @@ -288,4 +288,5 @@ else fi AC_CONFIG_FILES(Makefile testsuite/Makefile) +AC_CONFIG_FILES(testsuite/libatomic-site-extra.exp) AC_OUTPUT diff --git a/libatomic/testsuite/Makefile.am b/libatomic/testsuite/Makefile.am index 41cfbc4..ce0bda4 100644 --- a/libatomic/testsuite/Makefile.am +++ b/libatomic/testsuite/Makefile.am @@ -11,3 +11,5 @@ EXPECT = $(shell if test -f $(top_builddir)/../expect/expect; then \ _RUNTEST = $(shell if test -f $(top_srcdir)/../dejagnu/runtest; then \ echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) + +EXTRA_DEJAGNU_SITE_CONFIG = libatomic-site-extra.exp diff --git a/libatomic/testsuite/Makefile.in b/libatomic/testsuite/Makefile.in index 15bb3a4..333980ec 100644 --- a/libatomic/testsuite/Makefile.in +++ b/libatomic/testsuite/Makefile.in @@ -109,7 +109,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ DIST_COMMON = $(srcdir)/Makefile.am mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs CONFIG_HEADER = $(top_builddir)/auto-config.h -CONFIG_CLEAN_FILES = +CONFIG_CLEAN_FILES = libatomic-site-extra.exp CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) @@ -278,6 +278,7 @@ _RUNTEST = $(shell if test -f $(top_srcdir)/../dejagnu/runtest; then \ echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) +EXTRA_DEJAGNU_SITE_CONFIG = libatomic-site-extra.exp all: all-am .SUFFIXES: @@ -310,6 +311,8 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): +libatomic-site-extra.exp: $(top_builddir)/config.status $(srcdir)/libatomic-site-extra.exp.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ mostlyclean-libtool: -rm -f *.lo diff --git a/libatomic/testsuite/libatomic-site-extra.exp.in b/libatomic/testsuite/libatomic-site-extra.exp.in new file mode 100644 index 0000000..c0d2666 --- /dev/null +++ b/libatomic/testsuite/libatomic-site-extra.exp.in @@ -0,0 +1 @@ +set GCC_UNDER_TEST {@CC@} |