From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1438 invoked by alias); 15 Oct 2018 08:13:25 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 79750 invoked by uid 89); 15 Oct 2018 08:12:32 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-25.2 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=59, kai, config.host, arm-linux-gnueabi* X-HELO: mail-vs1-f67.google.com Received: from mail-vs1-f67.google.com (HELO mail-vs1-f67.google.com) (209.85.217.67) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 15 Oct 2018 08:12:24 +0000 Received: by mail-vs1-f67.google.com with SMTP id w85so15732262vsa.10 for ; Mon, 15 Oct 2018 01:12:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=XpKJMPtt2+aZ0Tn4Yhika3guEbu9Mw7hVMCosGxX32A=; b=YPWGFEjjEAczDPN8ZeikO37xFCksGeAIdDUDHWaKFHxQXh897iFSYRoPPad1g+gJHQ 6ugJEJjNfnOzXFjIJRR5/K0JfzI4rCNm6bopbY6ey32tFnDtKWYdT50AJ43Tpp6HFz9A tWoNlrW2qsjzwA9EAtnaw52b309xAkMHdZkQQ= MIME-Version: 1.0 References: <20181011133518.17258-1-christophe.lyon@st.com> <20181011133518.17258-3-christophe.lyon@st.com> In-Reply-To: From: Christophe Lyon Date: Mon, 15 Oct 2018 08:46:00 -0000 Message-ID: Subject: Re: [ARM/FDPIC v3 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts To: Richard Earnshaw Cc: christophe lyon St , gcc Patches Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2018-10/txt/msg00833.txt.bz2 On Fri, 12 Oct 2018 at 11:54, Richard Earnshaw (lists) < Richard.Earnshaw@arm.com> wrote: > On 11/10/18 14:34, Christophe Lyon wrote: > > The new arm-uclinuxfdpiceabi target behaves pretty much like > > arm-linux-gnueabi. In order the enable the same set of features, we > > have to update several configure scripts that generally match targets > > like *-*-linux*: in most places, we add *-uclinux* where there is > > already *-linux*, or uclinux* when there is already linux*. > > > > In gcc/config.gcc and libgcc/config.host we use *-*-uclinuxfdpiceabi > > because there is already a different behaviour for *-*uclinux* target. > > > > In libtool.m4, we use uclinuxfdpiceabi in cases where ELF shared > > libraries support is required, as uclinux does not guarantee that. > > > > 2018-XX-XX Christophe Lyon > > > > config/ > > * futex.m4: Handle *-uclinux*. > > * tls.m4 (GCC_CHECK_TLS): Likewise. > > > > gcc/ > > * config.gcc: Handle *-*-uclinuxfdpiceabi. > > > > libatomic/ > > * configure.tgt: Handle arm*-*-uclinux*. > > * configure: Regenerate. > > > > libgcc/ > > * config.host: Handle *-*-uclinuxfdpiceabi. > > > > libitm/ > > * configure.tgt: Handle *-*-uclinux*. > > * configure: Regenerate. > > > > libstdc++-v3/ > > * acinclude.m4: Handle uclinux*. > > * configure: Regenerate. > > * configure.host: Handle uclinux* > > > > * libtool.m4: Handle uclinux*. > > What testing have you done to ensure that these new uclinux* changes > have not affected existing uclinux configurations? > > Also, do you really need to use uclinuxfdpiceabi (which is quite > Arm-specific) everywhere, or would uclinuxfdpic* be better and ease work > for other fdpic targets? > > This patch became necessary when I was asked to change the target name from arm-linux-uclibceabi to arm-uclinuxfdpiceabi. Changing it implied that many features were disabled and tests regressed because the new target name didn't match the regexps in configure scripts. I iterated over the regressions to see which features were now missing, and I updated the configure scripts accordingly. When the feature being tested was generic, I used the general *-*-uclinux* form, because it seemed reasonable that it was OK for other targets. When the test was arm-related, I used the stricter uclinuxfdpiceabi form, and specifically not uclinuxfdpic* to avoid breaking other fdpic targets. When in doubt, I preferred to stay on the safe side. To answer you first question, I do not have the setup to test other uclinux configs, I'm not even sure of the list. So I tested arm-uclinuxfdpiceabi, made sure I got the same results as with our previous target name, and that the whole series didn't regress on arm-linux-gnueabi*. I hope other uclinux/fdpic target maintainers comment on this patch if something looks wrong to them. Christophe R. > > > > Change-Id: I6a1fdcd9847d8a82179a214612a3474c1f492916 > > > > diff --git a/config/futex.m4 b/config/futex.m4 > > index e95144d..4dffe15 100644 > > --- a/config/futex.m4 > > +++ b/config/futex.m4 > > @@ -9,7 +9,7 @@ AC_DEFUN([GCC_LINUX_FUTEX],[dnl > > GCC_ENABLE(linux-futex,default, ,[use the Linux futex system call], > > permit yes|no|default) > > case "$target" in > > - *-linux*) > > + *-linux* | *-uclinux*) > > case "$enable_linux_futex" in > > default) > > # If headers don't have gettid/futex syscalls definition, then > > diff --git a/config/tls.m4 b/config/tls.m4 > > index 4e170c8..5a8676e 100644 > > --- a/config/tls.m4 > > +++ b/config/tls.m4 > > @@ -76,7 +76,7 @@ AC_DEFUN([GCC_CHECK_TLS], [ > > dnl Shared library options may depend on the host; this check > > dnl is only known to be needed for GNU/Linux. > > case $host in > > - *-*-linux*) > > + *-*-linux* | -*-uclinux*) > > LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS" > > ;; > > esac > > diff --git a/gcc/config.gcc b/gcc/config.gcc > > index 0c579d1..793fc69 100644 > > --- a/gcc/config.gcc > > +++ b/gcc/config.gcc > > @@ -753,7 +753,7 @@ case ${target} in > > *-*-fuchsia*) > > native_system_header_dir=/include > > ;; > > -*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-gnu* | > *-*-kopensolaris*-gnu) > > +*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-gnu* | > *-*-kopensolaris*-gnu | *-*-uclinuxfdpiceabi) > > extra_options="$extra_options gnu-user.opt" > > gas=yes > > gnu_ld=yes > > @@ -762,7 +762,7 @@ case ${target} in > > esac > > tmake_file="t-slibgcc" > > case $target in > > - *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | > *-*-kopensolaris*-gnu) > > + *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | > *-*-kopensolaris*-gnu | *-*-uclinuxfdpiceabi) > > :;; > > *-*-gnu*) > > native_system_header_dir=/include > > @@ -782,7 +782,7 @@ case ${target} in > > *-*-*android*) > > tm_defines="$tm_defines DEFAULT_LIBC=LIBC_BIONIC" > > ;; > > - *-*-*uclibc*) > > + *-*-*uclibc* | *-*-uclinuxfdpiceabi) > > tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC" > > ;; > > *-*-*musl*) > > @@ -1134,7 +1134,7 @@ arm*-*-netbsdelf*) > > tmake_file="${tmake_file} arm/t-arm" > > target_cpu_cname="arm6" > > ;; > > -arm*-*-linux-*) # ARM GNU/Linux with ELF > > +arm*-*-linux-* | arm*-*-uclinuxfdpiceabi) # ARM > GNU/Linux with ELF > > tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h > glibc-stdint.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" > > extra_options="${extra_options} linux-android.opt" > > case $target in > > diff --git a/libatomic/configure b/libatomic/configure > > index b902e2c..5b3ef8e 100755 > > --- a/libatomic/configure > > +++ b/libatomic/configure > > @@ -5819,7 +5819,7 @@ irix5* | irix6* | nonstopux*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > lt_cv_deplibs_check_method=pass_all > > ;; > > > > @@ -8305,7 +8305,7 @@ $as_echo_n "checking for $compiler option to > produce PIC... " >&6; } > > lt_prog_compiler_static='-non_shared' > > ;; > > > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*) > > case $cc_basename in > > # old Intel for x86_64 which still supported -KPIC. > > ecc*) > > @@ -8900,7 +8900,7 @@ _LT_EOF > > archive_expsym_cmds='sed "s,^,_," $export_symbols > >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs > $compiler_flags ${wl}-h,$soname > ${wl}--retain-symbols-file,$output_objdir/$soname.expsym > ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o > $lib' > > ;; > > > > - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) > > + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu | > uclinuxfdpiceabi) > > tmp_diet=no > > if test "$host_os" = linux-dietlibc; then > > case $cc_basename in > > @@ -10431,7 +10431,7 @@ linux*oldld* | linux*aout* | linux*coff*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > version_type=linux > > need_lib_prefix=no > > need_version=no > > diff --git a/libatomic/configure.tgt b/libatomic/configure.tgt > > index ea8c34f..c1a608f 100644 > > --- a/libatomic/configure.tgt > > +++ b/libatomic/configure.tgt > > @@ -124,7 +124,7 @@ case "${target}" in > > config_path="${config_path} linux/aarch64 posix" > > ;; > > > > - arm*-*-linux*) > > + arm*-*-linux* | arm*-*-uclinux*) > > # OS support for atomic primitives. > > config_path="${config_path} linux/arm posix" > > ;; > > diff --git a/libgcc/config.host b/libgcc/config.host > > index 029f656..28f3c14 100644 > > --- a/libgcc/config.host > > +++ b/libgcc/config.host > > @@ -238,7 +238,7 @@ case ${host} in > > tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip > t-slibgcc t-slibgcc-fuchsia" > > extra_parts="crtbegin.o crtend.o" > > ;; > > -*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-gnu* | > *-*-kopensolaris*-gnu) > > +*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-gnu* | > *-*-kopensolaris*-gnu | *-*-uclinuxfdpiceabi) > > tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip > t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver t-linux" > > extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o" > > if test x$enable_vtable_verify = xyes; then > > @@ -424,7 +424,7 @@ arm*-*-fuchsia*) > > arm*-*-netbsdelf*) > > tmake_file="$tmake_file arm/t-arm arm/t-netbsd t-slibgcc-gld-nover" > > ;; > > -arm*-*-linux*) # ARM GNU/Linux with ELF > > +arm*-*-linux* | arm*-*-uclinuxfdpiceabi) # ARM > GNU/Linux with ELF > > tmake_file="${tmake_file} arm/t-arm t-fixedpoint-gnu-prefix > t-crtfm" > > tmake_file="${tmake_file} arm/t-elf arm/t-bpabi arm/t-linux-eabi > t-slibgcc-libgcc" > > tm_file="$tm_file arm/bpabi-lib.h" > > diff --git a/libitm/configure b/libitm/configure > > index dbf386d..fd82500 100644 > > --- a/libitm/configure > > +++ b/libitm/configure > > @@ -6494,7 +6494,7 @@ irix5* | irix6* | nonstopux*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > lt_cv_deplibs_check_method=pass_all > > ;; > > > > @@ -8981,7 +8981,7 @@ $as_echo_n "checking for $compiler option to > produce PIC... " >&6; } > > lt_prog_compiler_static='-non_shared' > > ;; > > > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*) > > case $cc_basename in > > # old Intel for x86_64 which still supported -KPIC. > > ecc*) > > @@ -9576,7 +9576,7 @@ _LT_EOF > > archive_expsym_cmds='sed "s,^,_," $export_symbols > >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs > $compiler_flags ${wl}-h,$soname > ${wl}--retain-symbols-file,$output_objdir/$soname.expsym > ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o > $lib' > > ;; > > > > - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) > > + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu | > uclinuxfdpiceabi) > > tmp_diet=no > > if test "$host_os" = linux-dietlibc; then > > case $cc_basename in > > @@ -11107,7 +11107,7 @@ linux*oldld* | linux*aout* | linux*coff*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > version_type=linux > > need_lib_prefix=no > > need_version=no > > @@ -13008,7 +13008,7 @@ if test -z "$aix_libpath"; then > aix_libpath="/usr/lib:/lib"; fi > > inherit_rpath_CXX=yes > > ;; > > > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > case $cc_basename in > > KCC*) > > # Kuck and Associates, Inc. (KAI) C++ Compiler > > @@ -13595,7 +13595,7 @@ interix[3-9]*) > > postdeps_CXX= > > ;; > > > > -linux*) > > +linux* | uclinux*) > > case `$CC -V 2>&1 | sed 5q` in > > *Sun\ C*) > > # Sun C++ 5.9 > > @@ -13846,7 +13846,7 @@ $as_echo_n "checking for $compiler option to > produce PIC... " >&6; } > > ;; > > esac > > ;; > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*) > > case $cc_basename in > > KCC*) > > # KAI C++ Compiler > > @@ -14767,7 +14767,7 @@ linux*oldld* | linux*aout* | linux*coff*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > version_type=linux > > need_lib_prefix=no > > need_version=no > > @@ -16239,7 +16239,7 @@ fi > > > > > > case "$target" in > > - *-linux*) > > + *-linux* | *-uclinux*) > > case "$enable_linux_futex" in > > default) > > # If headers don't have gettid/futex syscalls definition, then > > @@ -16362,7 +16362,7 @@ _ACEOF > > if ac_fn_c_try_link "$LINENO"; then : > > chktls_save_LDFLAGS="$LDFLAGS" > > case $host in > > - *-*-linux*) > > + *-*-linux* | -*-uclinux*) > > LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS" > > ;; > > esac > > diff --git a/libitm/configure.tgt b/libitm/configure.tgt > > index 0cbb097..bc6c3ca 100644 > > --- a/libitm/configure.tgt > > +++ b/libitm/configure.tgt > > @@ -127,7 +127,7 @@ config_path="$ARCH posix generic" > > > > # Other system configury > > case "${target}" in > > - *-*-linux*) > > + *-*-linux* | *-*-uclinux*) > > if test "$enable_linux_futex" = yes; then > > config_path="linux/$ARCH linux $config_path" > > fi > > diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 > > index 6d68e90..2e18049 100644 > > --- a/libstdc++-v3/acinclude.m4 > > +++ b/libstdc++-v3/acinclude.m4 > > @@ -1395,7 +1395,7 @@ AC_DEFUN([GLIBCXX_ENABLE_LIBSTDCXX_TIME], [ > > ac_has_nanosleep=yes > > ac_has_sched_yield=yes > > ;; > > - gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu) > > + gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > AC_MSG_CHECKING([for at least GNU libc 2.17]) > > AC_TRY_COMPILE( > > [#include ], > > @@ -1517,7 +1517,7 @@ AC_DEFUN([GLIBCXX_ENABLE_LIBSTDCXX_TIME], [ > > > > if test x"$ac_has_clock_monotonic" != x"yes"; then > > case ${target_os} in > > - linux*) > > + linux* | uclinux*) > > AC_MSG_CHECKING([for clock_gettime syscall]) > > AC_TRY_COMPILE( > > [#include > > @@ -2402,7 +2402,7 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [ > > # Default to "generic". > > if test $enable_clocale_flag = auto; then > > case ${target_os} in > > - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) > > + linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > enable_clocale_flag=gnu > > ;; > > darwin*) > > @@ -2648,7 +2648,7 @@ AC_DEFUN([GLIBCXX_ENABLE_ALLOCATOR], [ > > # Default to "new". > > if test $enable_libstdcxx_allocator_flag = auto; then > > case ${target_os} in > > - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) > > + linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > enable_libstdcxx_allocator_flag=new > > ;; > > *) > > @@ -4282,7 +4282,7 @@ AC_DEFUN([GLIBCXX_ENABLE_FILESYSTEM_TS], [ > > freebsd*|netbsd*|openbsd*|dragonfly*|darwin*) > > enable_libstdcxx_filesystem_ts=yes > > ;; > > - gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu) > > + gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > enable_libstdcxx_filesystem_ts=yes > > ;; > > rtems*) > > @@ -4430,7 +4430,7 @@ dnl > > AC_MSG_CHECKING([for sendfile that can copy files]) > > AC_CACHE_VAL(glibcxx_cv_sendfile, [dnl > > case "${target_os}" in > > - gnu* | linux* | solaris*) > > + gnu* | linux* | solaris* | uclinux*) > > GCC_TRY_COMPILE_OR_LINK( > > [#include ], > > [sendfile(1, 2, (off_t*)0, sizeof 1);], > > diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure > > index d33081d..7780679 100755 > > --- a/libstdc++-v3/configure > > +++ b/libstdc++-v3/configure > > @@ -6413,7 +6413,7 @@ irix5* | irix6* | nonstopux*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > lt_cv_deplibs_check_method=pass_all > > ;; > > > > @@ -8765,7 +8765,7 @@ $as_echo_n "checking for $compiler option to > produce PIC... " >&6; } > > lt_prog_compiler_static='-non_shared' > > ;; > > > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*) > > case $cc_basename in > > # old Intel for x86_64 which still supported -KPIC. > > ecc*) > > @@ -9360,7 +9360,7 @@ _LT_EOF > > archive_expsym_cmds='sed "s,^,_," $export_symbols > >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs > $compiler_flags ${wl}-h,$soname > ${wl}--retain-symbols-file,$output_objdir/$soname.expsym > ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o > $lib' > > ;; > > > > - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) > > + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu | > uclinuxfdpiceabi) > > tmp_diet=no > > if test "$host_os" = linux-dietlibc; then > > case $cc_basename in > > @@ -10900,7 +10900,7 @@ linux*oldld* | linux*aout* | linux*coff*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > version_type=linux > > need_lib_prefix=no > > need_version=no > > @@ -12825,7 +12825,7 @@ if test -z "$aix_libpath"; then > aix_libpath="/usr/lib:/lib"; fi > > inherit_rpath_CXX=yes > > ;; > > > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > case $cc_basename in > > KCC*) > > # Kuck and Associates, Inc. (KAI) C++ Compiler > > @@ -13412,7 +13412,7 @@ interix[3-9]*) > > postdeps_CXX= > > ;; > > > > -linux*) > > +linux* | uclinux*) > > case `$CC -V 2>&1 | sed 5q` in > > *Sun\ C*) > > # Sun C++ 5.9 > > @@ -13663,7 +13663,7 @@ $as_echo_n "checking for $compiler option to > produce PIC... " >&6; } > > ;; > > esac > > ;; > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*) > > case $cc_basename in > > KCC*) > > # KAI C++ Compiler > > @@ -14584,7 +14584,7 @@ linux*oldld* | linux*aout* | linux*coff*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > version_type=linux > > need_lib_prefix=no > > need_version=no > > @@ -15833,7 +15833,7 @@ fi > > # Default to "generic". > > if test $enable_clocale_flag = auto; then > > case ${target_os} in > > - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) > > + linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > enable_clocale_flag=gnu > > ;; > > darwin*) > > @@ -16250,7 +16250,7 @@ fi > > # Default to "new". > > if test $enable_libstdcxx_allocator_flag = auto; then > > case ${target_os} in > > - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) > > + linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > enable_libstdcxx_allocator_flag=new > > ;; > > *) > > @@ -20526,7 +20526,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu > > ac_has_nanosleep=yes > > ac_has_sched_yield=yes > > ;; > > - gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu) > > + gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > { $as_echo "$as_me:${as_lineno-$LINENO}: checking for at least > GNU libc 2.17" >&5 > > $as_echo_n "checking for at least GNU libc 2.17... " >&6; } > > cat confdefs.h - <<_ACEOF >conftest.$ac_ext > > @@ -21026,7 +21026,7 @@ $as_echo "$ac_has_nanosleep" >&6; } > > > > if test x"$ac_has_clock_monotonic" != x"yes"; then > > case ${target_os} in > > - linux*) > > + linux* | uclinux*) > > { $as_echo "$as_me:${as_lineno-$LINENO}: checking for > clock_gettime syscall" >&5 > > $as_echo_n "checking for clock_gettime syscall... " >&6; } > > cat confdefs.h - <<_ACEOF >conftest.$ac_ext > > @@ -27918,7 +27918,7 @@ _ACEOF > > if ac_fn_c_try_link "$LINENO"; then : > > chktls_save_LDFLAGS="$LDFLAGS" > > case $host in > > - *-*-linux*) > > + *-*-linux* | -*-uclinux*) > > LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS" > > ;; > > esac > > @@ -53578,7 +53578,7 @@ _ACEOF > > if ac_fn_c_try_link "$LINENO"; then : > > chktls_save_LDFLAGS="$LDFLAGS" > > case $host in > > - *-*-linux*) > > + *-*-linux* | -*-uclinux*) > > LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS" > > ;; > > esac > > @@ -59771,7 +59771,7 @@ _ACEOF > > if ac_fn_c_try_link "$LINENO"; then : > > chktls_save_LDFLAGS="$LDFLAGS" > > case $host in > > - *-*-linux*) > > + *-*-linux* | -*-uclinux*) > > LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS" > > ;; > > esac > > @@ -78397,7 +78397,7 @@ fi > > > > > > case "$target" in > > - *-linux*) > > + *-linux* | *-uclinux*) > > case "$enable_linux_futex" in > > default) > > # If headers don't have gettid/futex syscalls definition, then > > @@ -80033,7 +80033,7 @@ $as_echo_n "checking whether to build Filesystem > TS support... " >&6; } > > freebsd*|netbsd*|openbsd*|dragonfly*|darwin*) > > enable_libstdcxx_filesystem_ts=yes > > ;; > > - gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu) > > + gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu | uclinux*) > > enable_libstdcxx_filesystem_ts=yes > > ;; > > rtems*) > > @@ -80457,7 +80457,7 @@ $as_echo_n "checking for sendfile that can copy > files... " >&6; } > > $as_echo_n "(cached) " >&6 > > else > > case "${target_os}" in > > - gnu* | linux* | solaris*) > > + gnu* | linux* | solaris* | uclinux*) > > if test x$gcc_no_link = xyes; then > > cat confdefs.h - <<_ACEOF >conftest.$ac_ext > > /* end confdefs.h. */ > > diff --git a/libstdc++-v3/configure.host b/libstdc++-v3/configure.host > > index 155a3cd..1c298ab 100644 > > --- a/libstdc++-v3/configure.host > > +++ b/libstdc++-v3/configure.host > > @@ -264,7 +264,7 @@ case "${host_os}" in > > linux-musl*) > > os_include_dir="os/generic" > > ;; > > - gnu* | linux* | kfreebsd*-gnu) > > + gnu* | linux* | kfreebsd*-gnu | uclinux*) > > if [ "$uclibc" = "yes" ]; then > > os_include_dir="os/uclibc" > > elif [ "$bionic" = "yes" ]; then > > @@ -327,7 +327,7 @@ esac > > # Set any OS-dependent and CPU-dependent bits. > > # THIS TABLE IS SORTED. KEEP IT THAT WAY. > > case "${host}" in > > - *-*-linux*) > > + *-*-linux* | *-*-uclinux*) > > case "${host_cpu}" in > > i[567]86) > > abi_baseline_pair=i486-linux-gnu > > @@ -358,7 +358,7 @@ case "${host}" in > > fi > > esac > > case "${host}" in > > - arm*-*-linux-*) > > + arm*-*-linux-* | arm*-*-uclinuxfdpiceabi) > > > port_specific_symbol_files="\$(srcdir)/../config/os/gnu-linux/arm-eabi-extra.ver" > > ;; > > esac > > diff --git a/libtool.m4 b/libtool.m4 > > index 940faaa..49ab293 100644 > > --- a/libtool.m4 > > +++ b/libtool.m4 > > @@ -2449,7 +2449,7 @@ linux*oldld* | linux*aout* | linux*coff*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > version_type=linux > > need_lib_prefix=no > > need_version=no > > @@ -3089,7 +3089,7 @@ irix5* | irix6* | nonstopux*) > > ;; > > > > # This must be Linux ELF. > > -linux* | k*bsd*-gnu | kopensolaris*-gnu) > > +linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > lt_cv_deplibs_check_method=pass_all > > ;; > > > > @@ -3734,7 +3734,7 @@ m4_if([$1], [CXX], [ > > ;; > > esac > > ;; > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*) > > case $cc_basename in > > KCC*) > > # KAI C++ Compiler > > @@ -4032,7 +4032,7 @@ m4_if([$1], [CXX], [ > > _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' > > ;; > > > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*) > > case $cc_basename in > > # old Intel for x86_64 which still supported -KPIC. > > ecc*) > > @@ -4449,7 +4449,7 @@ _LT_EOF > > _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols > >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs > $compiler_flags ${wl}-h,$soname > ${wl}--retain-symbols-file,$output_objdir/$soname.expsym > ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o > $lib' > > ;; > > > > - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) > > + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu | > uclinuxfdpiceabi) > > tmp_diet=no > > if test "$host_os" = linux-dietlibc; then > > case $cc_basename in > > @@ -5946,7 +5946,7 @@ if test "$_lt_caught_CXX_error" != yes; then > > _LT_TAGVAR(inherit_rpath, $1)=yes > > ;; > > > > - linux* | k*bsd*-gnu | kopensolaris*-gnu) > > + linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi) > > case $cc_basename in > > KCC*) > > # Kuck and Associates, Inc. (KAI) C++ Compiler > > @@ -6598,7 +6598,7 @@ interix[[3-9]]*) > > _LT_TAGVAR(postdeps,$1)= > > ;; > > > > -linux*) > > +linux* | uclinux*) > > case `$CC -V 2>&1 | sed 5q` in > > *Sun\ C*) > > # Sun C++ 5.9 > > > >