public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: David Edelsohn <dje.gcc@gmail.com>
To: "Arsen Arsenović" <arsen@aarsen.me>
Cc: Bruno Haible <bruno@clisp.org>,
	Richard Biener <richard.guenther@gmail.com>,
	gcc-patches@gcc.gnu.org
Subject: Re: [PATCH v3 0/2] Replace intl/ with out-of-tree GNU gettext
Date: Mon, 20 Nov 2023 16:38:04 -0500	[thread overview]
Message-ID: <CAGWvny=FhB7svbUV4Pmtrki7K-YJGiecHPV5nFu6Cj1dbW1kAw@mail.gmail.com> (raw)
In-Reply-To: <86msv8p1aj.fsf@aarsen.me>

[-- Attachment #1: Type: text/plain, Size: 3842 bytes --]

_GLOBAL__F_xxx is the EH frame data.

It's using the filename with full path for the unique name, which is why it
includes .._.._.. .  Apparently it is adding a random number as well for
uniqueness.  I guess that this is the downside of building in tree, and
apparently it is rebuilding gettext itself with the different stages of the
compiler, so the appended random number changes.

Thanks, David


On Mon, Nov 20, 2023 at 4:23 PM Arsen Arsenović <arsen@aarsen.me> wrote:

>
> David Edelsohn <dje.gcc@gmail.com> writes:
>
> > On Sun, Nov 19, 2023 at 5:15 PM Bruno Haible <bruno@clisp.org> wrote:
> >
> >> David Edelsohn wrote:
> >> > --disable-threads currently does not completely disable threads.
> Bruno
> >> is
> >> > suggesting --enable-threads=isoc that relies on mtx mutex functions in
> >> libc.
> >>
> >> Unfortunately, as said in the other mail today, relying only on mtx_*
> >> functions
> >> did not drop the dependency towards libpthreads.
> >>
> >> So, I've made a new release gettext-0.22.4, that includes only these
> >> changes:
> >>
> >>   - AM_GNU_GETTEXT now recognizes a statically built libintl on macOS
> and
> >> AIX.
> >>
> >>   - Passing --disable-threads now builds a libintl that, on AIX, does
> not
> >>     need -lpthread.
> >>
> >>   - Other build fixes on AIX.
> >>
> >> > Yes, GCC should configure the in tree gettext with --disable-threads,
> but
> >> > that configure option is not completely effective and does not
> produce a
> >> > build without threads references.
> >>
> >> Now it is effective. But you (Arsen) should state in the documentation
> >> (gcc/doc/install.texi) that for --disable-threads to have this effect,
> >> one needs gettext version 0.22.4 or newer.
> >>
> >
> > So the question is do we want to change GCC on AIX to always link against
> > pthreads so that GCC can build with default, external builds of gettext
> > libintl.  I don't see a path for i18n support to work for GCC on AIX
> > without that unfortunate change.
>
> Well, if detectable by the build system for, I imagine we could avoid
> pthread if gettext is built without them.  With the 'private' gettext
> build, we should never need threads anyway.
>
> P.S: Building on AIX is nearly successful.  gettext-0.22.4 builds, twice
> or even thrice, but ends up producing a bootstrap comparison fail:
>
>   make[3]: Leaving directory '/home/arsen/build'
>   Comparing stages 2 and 3
>   Bootstrap comparison failure!
>   gettext/libasprintf/autosprintf.o differs
>   make[2]: *** [Makefile:23435: compare] Error 1
>
> Upon inspecting these files, I see the following diff:
>
> ~ 1 $ git diff <(objdump --all-headers autosprintf.o2) <(objdump
> --all-headers autosprintf.o3)
> diff --git a/dev/fd/63 b/dev/fd/62
> --- a/dev/fd/63
> +++ b/dev/fd/62
> ...
> @@ -92,7 +92,7 @@ AUX indx   30 prmhsh 0 snhsh 0 typ 2 algn 0 clss 0 stb 0
> snstb 0
>  AUX val    23 prmhsh 0 snhsh 0 typ 1 algn 4 clss 1 stb 0 snstb 0
>  [ 58](sec  1)(fl 0x00)(ty    0)(scl 107) (nx 1) 0x00000460
> _autosprintf.ro_
>  AUX val   312 prmhsh 0 snhsh 0 typ 1 algn 4 clss 1 stb 0 snstb 0
> -[ 60](sec  1)(fl 0x00)(ty    0)(scl   2) (nx 1) 0x00000460
> _GLOBAL__F_.._.._.._gcc_gettext_gettext_runtime_libasprintf_autosprintf.cc_DFF67DD7_0xa20d51b1d7a1772f
> +[ 60](sec  1)(fl 0x00)(ty    0)(scl   2) (nx 1) 0x00000460
> _GLOBAL__F_.._.._.._gcc_gettext_gettext_runtime_libasprintf_autosprintf.cc_DFF67DD7_0x9c04058e89d7a7a4
>  AUX indx   58 prmhsh 0 snhsh 0 typ 2 algn 0 clss 1 stb 0 snstb 0
>  [ 62](sec  2)(fl 0x00)(ty    0)(scl 107) (nx 1) 0x000005a0
> _autosprintf.rw_
>  AUX val     0 prmhsh 0 snhsh 0 typ 1 algn 4 clss 5 stb 0 snstb 0
>
> I am unsure what this symbol is.  It does not appear in the stripped
> binary.
> --
> Arsen Arsenović
>

  reply	other threads:[~2023-11-20 21:38 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-14 20:37 David Edelsohn
2023-11-14 23:06 ` Arsen Arsenović
2023-11-15  1:49   ` David Edelsohn
2023-11-15 12:29     ` building GNU gettext on AIX Bruno Haible
2023-11-15 19:26       ` David Edelsohn
2023-11-15 21:22         ` Bruno Haible
2023-11-15 21:31           ` David Edelsohn
2023-11-15 22:39             ` Bruno Haible
2023-11-16 16:00               ` David Edelsohn
2023-11-16 16:35                 ` David Edelsohn
2023-11-16 18:01                   ` David Edelsohn
2023-11-16 18:17                     ` David Edelsohn
2023-11-16 18:52                       ` Bruno Haible
2023-11-16 22:18                         ` David Edelsohn
2023-11-16 22:46                           ` Bruno Haible
2023-11-16 23:10                             ` Arsen Arsenović
2023-11-17  8:33                               ` Richard Biener
2023-11-17  8:49                                 ` Arsen Arsenović
2023-11-17 12:24                                 ` Bruno Haible
2023-11-17 13:06                                   ` Arsen Arsenović
2023-11-16 23:38                             ` David Edelsohn
2023-11-17  0:07                               ` Bruno Haible
2023-11-17  0:15                                 ` David Edelsohn
     [not found]                 ` <84B39BF1-33D5-488E-8CF5-D08B09417568@gmail.com>
2023-11-16 17:44                   ` David Edelsohn
2023-11-16 18:47                     ` Bruno Haible
2023-11-16 18:50                       ` Arsen Arsenović
2023-11-16 18:59                         ` Bruno Haible
2023-11-16 19:14                           ` Arsen Arsenović
2023-11-19 19:49                       ` Bruno Haible
2023-11-15 14:14     ` [PATCH v3 0/2] Replace intl/ with out-of-tree GNU gettext Arsen Arsenović
2023-11-15 15:51       ` Xi Ruoyao
2023-11-16 18:48         ` Arsen Arsenović
2023-11-15 17:19       ` David Edelsohn
2023-11-16 18:33         ` Arsen Arsenović
2023-11-16 21:11           ` Arsen Arsenović
2023-11-16 21:40             ` David Edelsohn
2023-11-16 22:19               ` Arsen Arsenović
2023-11-16 22:30                 ` David Edelsohn
2023-11-16 22:32                   ` Arsen Arsenović
2023-11-16 23:59                     ` David Edelsohn
2023-11-17  8:34                       ` Arsen Arsenović
2023-11-17  8:50                         ` Richard Biener
2023-11-17  8:56                           ` Arsen Arsenović
2023-11-17 14:41                         ` David Edelsohn
2023-11-17 15:16                           ` Arsen Arsenović
2023-11-17 16:07                             ` David Edelsohn
2023-11-18 18:10                               ` Arsen Arsenović
2023-11-19 21:55                               ` Bruno Haible
2023-11-19 23:00                                 ` Bruno Haible
2023-11-19 23:06                                   ` Andrew Pinski
2023-11-20  1:17                                 ` David Edelsohn
2023-11-20 21:18                                   ` Arsen Arsenović
2023-11-20 21:38                                     ` David Edelsohn [this message]
2023-11-21  0:44                                       ` Arsen Arsenović
2023-11-20 23:00                                     ` Bruno Haible
2023-11-21  0:45                                       ` Arsen Arsenović
2023-11-21 13:13                                         ` Arsen Arsenović
2023-11-21 16:28                                           ` David Edelsohn
2023-11-21 20:58                                           ` Eric Gallager
2023-11-15 19:58       ` David Edelsohn
  -- strict thread matches above, loose matches on Subject: below --
2023-11-02  8:27 Arsen Arsenović
2023-11-10 10:37 ` Richard Biener

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='CAGWvny=FhB7svbUV4Pmtrki7K-YJGiecHPV5nFu6Cj1dbW1kAw@mail.gmail.com' \
    --to=dje.gcc@gmail.com \
    --cc=arsen@aarsen.me \
    --cc=bruno@clisp.org \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=richard.guenther@gmail.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).