I think those flags disable only runtime libraries, not the code generation
Le 30 juin 2015 20:29, "Andrei Borzenkov" <arvidj...@gmail.com> a écrit :

> В Tue, 30 Jun 2015 15:05:46 -0300
> Paulo Flabiano Smorigo <pfsmor...@linux.vnet.ibm.com> пишет:
>
> > On 2015-06-30 11:33, Vladimir 'phcoder' Serbinenko wrote:
> > > What about clang?
> >
> > Not good news about clang support. This is what the toolchain team said
> > about it:
> >
> > The -mbig-endian option was added around April 10th, 2014.
> > Unfortunately, those who implemented it only implemented it for ARM and
> > one other architecture.
> >
> > The option is currently accepted on Power systems, but does not have any
> > affect on the code generation for Power.
> >
> >
> > So, what can we do here? Maybe add a constrain in the configure file
> > saying that it's not possible to build GRUB in a LE environment using
> clang.
>
> If I understand it correctly, it is possible to build for big-endian
> PowerPC using
>
> clang -target=powerpc
>
> but then we depend on clang being built with BE target support; and
> e.g. openSUSE builds it with
>
> cmake -G "Ninja" \
>       -DBUILD_SHARED_LIBS=OFF \
>       -DCMAKE_BUILD_TYPE=Release \
>       -DLLVM_ENABLE_ASSERTIONS=OFF \
>       -DLLVM_TARGETS_TO_BUILD=host \
>       -DCMAKE_C_FLAGS="-O0" \
>       -DCMAKE_CXX_FLAGS="-O0" \
>       -DLLVM_HOST_TRIPLE=%{host_triple} \
>
> so as I understand on ppc64le it does not build support for any other
> target. Actually openSUSE does not even build clang on ppc at all.
>
>
>
> > >
> > > Le 30 juin 2015 16:30, "Andrei Borzenkov" <arvidj...@gmail.com
> > > <mailto:arvidj...@gmail.com>> a écrit :
> > >
> > >     On Tue, Jun 30, 2015 at 5:03 PM, Vladimir 'phcoder' Serbinenko
> > >     <phco...@gmail.com <mailto:phco...@gmail.com>> wrote:
> > >      > Which compilers support these flags? I'm concerned of breaking
> > >     old compilers
> > >      >
> > >
> > >     -static and -mbig-endian are listed in gcc 2.95.3 documentation
> for PPC.
> > >
> > >      > Le 30 juin 2015 14:57, "Paulo Flabiano Smorigo"
> > >      > <pfsmor...@linux.vnet.ibm.com
> > >     <mailto:pfsmor...@linux.vnet.ibm.com>> a écrit :
> > >      >>
> > >      >> libgcc dependency was removed *just* for this target because
> > >      >> the distros that use ppc64el doesn't have 32-bit support on it.
> > >      >>
> > >      >> * configure.ac <http://configure.ac>: Add targets for
> > >     powerpc64el and skip libgcc.
> > >      >> * Makefile.am: Likewise.
> > >      >> ---
> > >      >> configure.ac <http://configure.ac> | 8 ++++++++
> > >      >>  1 file changed, 8 insertions(+)
> > >      >>
> > >      >> diff --git a/configure.ac <http://configure.ac> b/configure.ac
> > >     <http://configure.ac>
> > >      >> index fd8a62e..0a79fad 100644
> > >      >> --- a/configure.ac <http://configure.ac>
> > >      >> +++ b/configure.ac <http://configure.ac>
> > >      >> @@ -116,6 +116,7 @@ if test "x$with_platform" = x; then
> > >      >>      x86_64-*) platform=pc ;;
> > >      >>      powerpc-*) platform=ieee1275 ;;
> > >      >>      powerpc64-*) platform=ieee1275 ;;
> > >      >> +    powerpc64le-*) platform=ieee1275 ;;
> > >      >>      sparc64-*) platform=ieee1275 ;;
> > >      >>      mipsel-*) platform=loongson ;;
> > >      >>      mips-*) platform=arc ;;
> > >      >> @@ -138,6 +139,7 @@ case "$target_cpu"-"$platform" in
> > >      >>    x86_64-none) ;;
> > >      >>    x86_64-*) target_cpu=i386 ;;
> > >      >>    powerpc64-ieee1275) target_cpu=powerpc ;;
> > >      >> +  powerpc64le-ieee1275) target_cpu=powerpc ;;
> > >      >>  esac
> > >      >>
> > >      >>  # Check if the platform is supported, make final adjustments.
> > >      >> @@ -601,6 +603,12 @@ if test "x$target_cpu" = xi386 && test
> > >     "x$platform"
> > >      >> != xemu; then
> > >      >>    TARGET_CFLAGS="$TARGET_CFLAGS -march=i386"
> > >      >>  fi
> > >      >>
> > >      >> +if test x$target_cpu = xpowerpc; then
> > >      >> +  TARGET_CFLAGS="$TARGET_CFLAGS -mbig-endian"
> > >      >> +  TARGET_CCASFLAGS="$TARGET_CCASFLAGS -mbig-endian"
> > >      >> +  TARGET_LDFLAGS="$TARGET_LDFLAGS -static -mbig-endian"
> > >      >> +fi
> > >      >> +
> > >      >>  if test "x$target_m32" = x1; then
> > >      >>    # Force 32-bit mode.
> > >      >>    TARGET_CFLAGS="$TARGET_CFLAGS -m32"
> > >      >> --
> > >      >> 2.1.0
> > >      >>
> > >      >>
> > >      >> _______________________________________________
> > >      >> Grub-devel mailing list
> > >      >> Grub-devel@gnu.org <mailto:Grub-devel@gnu.org>
> > >      >> https://lists.gnu.org/mailman/listinfo/grub-devel
> > >      >
> > >      >
> > >      > _______________________________________________
> > >      > Grub-devel mailing list
> > >      > Grub-devel@gnu.org <mailto:Grub-devel@gnu.org>
> > >      > https://lists.gnu.org/mailman/listinfo/grub-devel
> > >      >
> > >
> > >     _______________________________________________
> > >     Grub-devel mailing list
> > >     Grub-devel@gnu.org <mailto:Grub-devel@gnu.org>
> > >     https://lists.gnu.org/mailman/listinfo/grub-devel
> > >
> > >
> > >
> > > _______________________________________________
> > > Grub-devel mailing list
> > > Grub-devel@gnu.org
> > > https://lists.gnu.org/mailman/listinfo/grub-devel
> > >
> >
> >
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to