This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts
- From: Christophe Lyon <christophe dot lyon at linaro dot org>
- To: Christophe Lyon <christophe dot lyon at st dot com>, gcc Patches <gcc-patches at gcc dot gnu dot org>, "libstdc++" <libstdc++ at gcc dot gnu dot org>, Richard Sandiford <richard dot sandiford at arm dot com>
- Date: Fri, 30 Aug 2019 16:35:05 +0200
- Subject: Re: [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts
- References: <20190515124006.25840-1-christophe.lyon@st.com> <20190515124006.25840-3-christophe.lyon@st.com> <mptims7iw7t.fsf@arm.com> <a96efb1c-6383-7fb8-ca7c-50c2b7b01474@st.com> <mptv9ufkoxt.fsf@arm.com>
On Fri, 30 Aug 2019 at 11:00, Richard Sandiford
<richard.sandiford@arm.com> wrote:
>
> Christophe Lyon <christophe.lyon@st.com> writes:
> > @@ -785,7 +785,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
>
> I don't think this is necessary, since this target will never match the
> following *-*-gnu*) stanza anyway.
OK (I thought it was clearer to add the fdpic config where we already
have linux that would not match)
>
> > diff --git a/libtool.m4 b/libtool.m4
> > index 8966762..64e507a 100644
> > --- a/libtool.m4
> > +++ b/libtool.m4
> > @@ -3734,7 +3739,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
>
> Is this needed? It seems to be in the !GCC branch of an if/else.
I must admit I didn't test this case. I thought it was needed because
this target does not match "linux*", in case someone tries to compile
with another compiler...
>
> If it is needed, the default:
>
> _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
>
> seems correct for non-FDPIC uclinux.
>
So, either use uclinuxfdpiceabi above, or do nothing and do not try to
support other compilers?
> > @@ -4032,7 +4037,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*)
>
> Same here.
>
> > @@ -5946,7 +5951,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
>
> Here too the code seems to be dealing specifically with non-GCC compilers.
>
> > @@ -6598,7 +6603,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
>
> Here too. (It only seems to do anything for Sun's C compiler.)
>
> The fewer hunks we have to maintain downstream the better :-)
>
Sure.
I thought safer/cleaner to prepare the cases for non-GCC compilers, I
guess it's better not to add that until proven useful?
Thanks,
Christophe
> Richard