public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: "H.J. Lu" <hjl.tools@gmail.com>
To: Sandra Loosemore <sandra@codesourcery.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>
Subject: Re: [PATCH 1/2] Sync with binutils: GCC: Pass --plugin to AR and RANLIB
Date: Wed, 15 Dec 2021 20:28:15 -0800	[thread overview]
Message-ID: <CAMe9rOqain43u1+mvRsTR18_D8FTufZk9+6zT0coAhrv9dbOhg@mail.gmail.com> (raw)
In-Reply-To: <d88a1d07-555f-6df3-e171-ef08fc1bebdf@codesourcery.com>

On Wed, Dec 15, 2021 at 7:38 PM Sandra Loosemore
<sandra@codesourcery.com> wrote:
>
> On 11/13/21 9:33 AM, H.J. Lu via Gcc-patches wrote:
> > Sync with binutils for building binutils with LTO:
> >
> >  From 50ad1254d5030d0804cbf89c758359ae202e8d55 Mon Sep 17 00:00:00 2001
> > From: "H.J. Lu" <hjl.tools@gmail.com>
> > Date: Sat, 9 Jan 2021 06:43:11 -0800
> > Subject: [PATCH] GCC: Pass --plugin to AR and RANLIB
> >
> > Detect GCC LTO plugin.  Pass --plugin to AR and RANLIB to support LTO
> > build.
> >
> >       * Makefile.tpl (AR): Add @AR_PLUGIN_OPTION@
> >       (RANLIB): Add @RANLIB_PLUGIN_OPTION@.
> >       * configure.ac: Include config/gcc-plugin.m4.
> >       AC_SUBST AR_PLUGIN_OPTION and RANLIB_PLUGIN_OPTION.
> >       * libtool.m4 (_LT_CMD_OLD_ARCHIVE): Pass --plugin to AR and
> >       RANLIB if possible.
> >       * Makefile.in: Regenerated.
> >       * configure: Likewise.
> >
> > config/
> >
> >       * gcc-plugin.m4 (GCC_PLUGIN_OPTION): New.
> >
> > libiberty/
> >
> >       * Makefile.in (AR): Add @AR_PLUGIN_OPTION@
> >       (RANLIB): Add @RANLIB_PLUGIN_OPTION@.
> >       (configure_deps): Depend on ../config/gcc-plugin.m4.
> >       * configure.ac: AC_SUBST AR_PLUGIN_OPTION and
> >       RANLIB_PLUGIN_OPTION.
> >       * aclocal.m4: Regenerated.
> >       * configure: Likewise.
> >
> > zlib/
> >
> >       * configure: Regenerated.
>
> This patch appears to have broken my nios2-linux-gnu target,
> x86_64-linux-gnu host cross build:
>
> x86_64-linux-gnu-ar  --plugin
> /usr/local/tools/gcc-2021/bin/../libexec/gcc/x86_64-linux-gnu/9.3.1/liblto_plugin.so
> --plugin
> /usr/local/tools/gcc-2021/bin/../libexec/gcc/x86_64-linux-gnu/9.3.1/liblto_plugin.so
> rc ./libiberty.a \
>    ./regex.o ./cplus-dem.o ./cp-demangle.o ./md5.o ./sha1.o ./alloca.o
> ./argv.o ./bsearch_r.o ./choose-temp.o ./concat.o ./cp-demint.o
> ./crc32.o ./d-demangle.o ./dwarfnames.o ./dyn-string.o ./fdmatch.o
> ./fibheap.o ./filedescriptor.o ./filename_cmp.o ./floatformat.o
> ./fnmatch.o ./fopen_unlocked.o ./getopt.o ./getopt1.o ./getpwd.o
> ./getruntime.o ./hashtab.o ./hex.o ./lbasename.o ./lrealpath.o
> ./make-relative-prefix.o ./make-temp-file.o ./objalloc.o ./obstack.o
> ./partition.o ./pexecute.o ./physmem.o ./pex-common.o ./pex-one.o
> ./pex-unix.o ./vprintf-support.o ./rust-demangle.o ./safe-ctype.o
> ./simple-object.o ./simple-object-coff.o ./simple-object-elf.o
> ./simple-object-mach-o.o ./simple-object-xcoff.o ./sort.o ./spaces.o
> ./splay-tree.o ./stack-limit.o ./strerror.o ./strsignal.o
> ./timeval-utils.o ./unlink-if-ordinary.o ./xasprintf.o ./xatexit.o
> ./xexit.o ./xmalloc.o ./xmemdup.o ./xstrdup.o ./xstrerror.o ./xstrndup.o
> ./xvasprintf.o  ./setproctitle.o
> x86_64-linux-gnu-ar: no operation specified
>
> This is ar version 2.32.51.  I also tried with an older set of host
> tools using ar 2.25.51 and saw the same failure.
>
> -Sandra

I built nios2-linux-gnu cross compiler using glibc build-many-glibcs.py
script:

/usr/bin/time /export/project/tools-build/glibc-many/src/glibc/scripts/build-man
y-glibcs.py  -j 96 /export/project/tools-build/glibc-many \
  compilers nios2-linux-gnu
make[1]: Entering directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu check-host-libraries
PASS: compilers-nios2-linux-gnu binutils rm
PASS: compilers-nios2-linux-gnu binutils mkdir
PASS: compilers-nios2-linux-gnu binutils configure
make[1]: Leaving directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu binutils build
PASS: compilers-nios2-linux-gnu binutils install
make[1]: Entering directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu binutils cleanup
PASS: compilers-nios2-linux-gnu linux rm
PASS: compilers-nios2-linux-gnu linux mkdir
make[1]: Leaving directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu linux install-headers
make[1]: Entering directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu linux cleanup
PASS: compilers-nios2-linux-gnu gcc-first rm
PASS: compilers-nios2-linux-gnu gcc-first mkdir
PASS: compilers-nios2-linux-gnu gcc-first configure
make[1]: Leaving directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu gcc-first build
PASS: compilers-nios2-linux-gnu gcc-first install
make[1]: Entering directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu gcc-first cleanup
PASS: compilers-nios2-linux-gnu glibc nios2-linux-gnu rm
PASS: compilers-nios2-linux-gnu glibc nios2-linux-gnu mkdir
PASS: compilers-nios2-linux-gnu glibc nios2-linux-gnu configure
make[1]: Leaving directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu glibc nios2-linux-gnu build
PASS: compilers-nios2-linux-gnu glibc nios2-linux-gnu install
make[1]: Entering directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu glibc nios2-linux-gnu mkdir-lib
PASS: compilers-nios2-linux-gnu glibc nios2-linux-gnu cleanup
PASS: compilers-nios2-linux-gnu gcc rm
PASS: compilers-nios2-linux-gnu gcc mkdir
PASS: compilers-nios2-linux-gnu gcc configure
make[1]: Leaving directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu gcc build
PASS: compilers-nios2-linux-gnu gcc install
make[1]: Entering directory '/export/project/tools-build/glibc-many/build'
PASS: compilers-nios2-linux-gnu gcc cleanup
PASS: compilers-nios2-linux-gnu done
make[1]: Leaving directory '/export/project/tools-build/glibc-many/build'

using glibc master, binutils master and gcc master.   Is there a way
to reproduce it with build-many-glibcs.py?

-- 
H.J.

  reply	other threads:[~2021-12-16  4:28 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-13 16:33 [PATCH 0/2] Sync with binutils for building binutils with LTO: H.J. Lu
2021-11-13 16:33 ` [PATCH 1/2] Sync with binutils: GCC: Pass --plugin to AR and RANLIB H.J. Lu
2021-11-23  0:29   ` Jeff Law
2021-11-23  2:29     ` H.J. Lu
2021-12-14 23:30       ` Jeff Law
2021-12-15  0:29         ` H.J. Lu
2021-12-15 17:33   ` Jeff Law
2021-12-16  3:37   ` Sandra Loosemore
2021-12-16  4:28     ` H.J. Lu [this message]
2021-12-16  4:38       ` H.J. Lu
2021-12-16  5:34       ` Sandra Loosemore
2021-11-13 16:33 ` [PATCH 2/2] Sync with binutils: Support the PGO build for binutils+gdb H.J. Lu
2021-12-15 20:25   ` Jeff Law

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAMe9rOqain43u1+mvRsTR18_D8FTufZk9+6zT0coAhrv9dbOhg@mail.gmail.com \
    --to=hjl.tools@gmail.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=sandra@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).