public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Iain Sandoe <idsandoe@googlemail.com>
To: Bruno Haible <bruno@clisp.org>
Cc: GCC Development <gcc@gcc.gnu.org>
Subject: Re: remove intl/ directory?
Date: Sun, 19 Jun 2022 09:40:04 +0100	[thread overview]
Message-ID: <61E1C7F4-3CC0-4346-BEE4-3FAC928C5181@googlemail.com> (raw)
In-Reply-To: <4169891.DDXKiFAisr@omega>

Hi Bruno,

> On 19 Jun 2022, at 01:32, Bruno Haible <bruno@clisp.org> wrote:
> 
> Iain Sandoe wrote:
>> As a maintainer for GCC on a non-glibc system, I would:

>> (b) not want to [force] add a shared lib dependency for my downstream.
> 
> In order to avoid shared libs, the user merely has to pass the option
> '--disable-shared' to GNU gettext's configure.

Well, we try to make things easy for end-users, so actually the objective would
be that (for those who are prepared to download a pre-built binary) that they do
not have to find and build _any_ other libs. 

“Distributions” might choose to go the shared library route - on the basis that
they have already presumably automated the installation of dependencies 
- so it’s just that the user has to wait a little longer for the install...

For people intending to build from source, we can try to automate with scripts
and pre-fetching of prerequisites etc. .. OTOH GCC is complex enough in its
own right, it’s better to keep things as simple as possible.
> 
>> - so, please could we follow the pattern for GMP et. al. where the library
>> can be provided with —with-intl= pointing to an installation
> 
> That convention is already built-in in the gettext.m4 macro; the option is
> called --with-libintl-prefix there.
> 
>> , or be built in-tree by symlinking an approved version into the GCC tree.
> 
> If you are referring to the sentence found in the GCC documentation for
> ISL, MPFR, etc.
>  "If an isl source distribution is found in a subdirectory of your GCC
>   sources named isl, it will be built together with GCC."

yes, exactly - that is usually how I build GCC - in addition to the
simplification of distributing a built compiler, it also has the advantage that
the same deps that one tested with are fixed into the binary.

> I believe that this can be achieved easily by adding a few lines to the
> Makefile.def, such as:
> 
> host_modules= { module= gettext-runtime; no_install=true;
>                extra_configure_flags='--disable-shared';
>                lib_path=intl/.libs; };
> 
> The symlink 'gettext-runtime' will need to point to the 'gettext-runtime'
> *subdirectory* of an unpacked GNU gettext tarball.

Thanks, that’s very helpful information - it could be something to trial relatively
easily.

** NOTE: this is not a GCC-only decision, intl is used by a number of other pieces
(GDB, GDB-server, binutils etc. etc)  These projects share the top-level build
infrastructure —  [see Makefile.def and grep intl].

I suppose one could try s/intl/gettext-runtime/ and then rebuild the top-level
makefiles..

thanks,
Iain


  reply	other threads:[~2022-06-19  8:40 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-18 17:01 Bruno Haible
2022-06-18 17:42 ` Iain Sandoe
2022-06-18 18:14   ` David Edelsohn
2022-06-19  0:53     ` Bruno Haible
2022-06-19  0:32   ` Bruno Haible
2022-06-19  8:40     ` Iain Sandoe [this message]
2022-06-19 20:15       ` Iain Sandoe
2022-06-21  2:05         ` Bruno Haible
2022-06-22 20:21           ` Iain Sandoe
2022-06-23  4:24             ` Bruno Haible
2022-06-23  6:51               ` Iain Sandoe
2022-06-23 15:40                 ` Iain Sandoe
2022-06-23 15:50                   ` Iain Sandoe
2022-06-23 15:13               ` Eric Gallager
2022-06-20 19:45 ` Eric Gallager
2022-06-21  2:09   ` Bruno Haible

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=61E1C7F4-3CC0-4346-BEE4-3FAC928C5181@googlemail.com \
    --to=idsandoe@googlemail.com \
    --cc=bruno@clisp.org \
    --cc=gcc@gcc.gnu.org \
    /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).