From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vk1-xa2f.google.com (mail-vk1-xa2f.google.com [IPv6:2607:f8b0:4864:20::a2f]) by sourceware.org (Postfix) with ESMTPS id 6CED93858287 for ; Mon, 20 Jun 2022 19:46:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6CED93858287 Received: by mail-vk1-xa2f.google.com with SMTP id j26so620901vki.12 for ; Mon, 20 Jun 2022 12:46:08 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YJUaTziMkTTlxCJvJ2JeicPjYYsb4ApcyDR3gIYZnII=; b=1XhjWiuBjUrZzRe3XaOJuCx+Bv1ktQlr4E7BDFtZs6SIDBojzmaHc9/3/+rbHBjih8 QuKzFzOmHLt20ivXrKFbKMBqGUdd56+/oAf+KiVmjNuiyowrzeiwCMYdtkIYajak1ZVy 09bgn0aTCXOV3rUOiWEosSb68Io/IP7p1AnPic7KvmG4gpFykg1Vr5ecEj5awps7JCVm SXKsREAX/CGAhJDZJAJt6TPOA4qGB3DBehlDC3HmvPWYjnBclVS+RsU+X+Y2wx3lcgeT fZid5CArs824wpej0FkMRi7Z5L4pxfSVRH4cfppGCjDZGGfRePO8glCJXKElSyhCBTnl IxPA== X-Gm-Message-State: AJIora9YbmD7hZbY0B77C+WMve1seKq2rXkZBQXzLUV9ofYLTEfw1mmk BYOan7aIArWeOS6rzBYystFOyOaf+7TXEISvLLHDxAqY/2MdzA== X-Google-Smtp-Source: AGRyM1sGICUqeqRt92ye57IHpErAXBIswHiDyRH/mrw+5taov43DtmQTtHPjlXqJ8E+o7tJPjkPY57KaDEFVJidpFA0= X-Received: by 2002:ac5:ce19:0:b0:35d:c4b1:3132 with SMTP id j25-20020ac5ce19000000b0035dc4b13132mr9919498vki.31.1655754367700; Mon, 20 Jun 2022 12:46:07 -0700 (PDT) MIME-Version: 1.0 References: <32334822.2dzg3u6YtW@omega> In-Reply-To: <32334822.2dzg3u6YtW@omega> From: Eric Gallager Date: Mon, 20 Jun 2022 15:45:56 -0400 Message-ID: Subject: Re: remove intl/ directory? To: Bruno Haible Cc: GCC Development Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, JMQ_SPF_NEUTRAL, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jun 2022 19:46:10 -0000 On Sat, Jun 18, 2022 at 1:01 PM Bruno Haible wrote: > > Hi, > > As the long-term GNU gettext maintainer, I would suggest to remove the intl/ > directory from the GCC distribution. > > The effect for the users would be: > * On systems without glibc, users who want an internationalized GCC > installation would have to install GNU gettext first. Then the GCC > binaries would be linked with the shared library libintl.so > (unless gettext was built with --disable-shared); they would no longer > contain the libintl code in 'cc1', 'cc1plus', etc. > * On systems with glibc, no change. > > The effect for the GCC maintainers would be: > * Easier to stay up-to-date with upstream libintl. > * Less maintenance work with *.m4 files such as > codeset.m4 > glibc21.m4 > intdiv0.m4 > inttypes_h.m4 > inttypes.m4 > inttypes-pri.m4 > lcmessage.m4 > stdint_h.m4 > uintmax_t.m4 > ulonglong.m4 > * Reduced risk of a CVE that would impact GCC binaries. > > Rationale: > * This intl/ code is from 2003; of course several bugs have been > fixed in it over the last 19 years. > * At that time GNU packages were still favouring static libraries. > GNU libtool became widely reliable only about in 2005. > * Since then, distros have been favouring shared libraries over > static libraries, in order to be able to fix CVEs without > rebuilding many dependent binaries. > * For this reason, GNU gettext removed the support for this way > of packaging libintl in version 0.20 (May 2019). The NEWS entry > said: > - The --intl option of the gettextize program (deprecated since 2010) is > no longer available. Instead of including the intl sources in your > package, we suggest making the libintl library an optional prerequisite > of your package. This will simplify the build system of your package. > - Accordingly, the Autoconf macro AM_GNU_GETTEXT_INTL_SUBDIR is gone > as well. > > This point came up while discussing with Eric Gallager, who is working on > the GCC configury. > Hi, just for some additional context for anyone reading from the archives, but this conversation came out of autoconf sr #110324: https://savannah.gnu.org/support/?110324 My work can be seen in the refs/users/egallager/heads/autotools-tinkering branch, which I'm also mirroring on GitHub here: https://github.com/cooljeanius/gcc/tree/me/autotools-tinkering The latest pending patch I've submitted from this branch is here: https://gcc.gnu.org/pipermail/gcc-patches/2022-June/596654.html As for the underlying topic of this thread, personally I see removing the intl/ subdirectory as just one possible solution to the issue of its autoconf macros being outdated, the other would be to fix autoupdate so that it can handle things properly, but I can see how that would be harder. Whichever solution turns out to be the simplest for everyone involved will be the one I'll support. Thanks, Eric > I don't volunteer to implement this suggestion, but I can give advice where > needed. > > Bruno >