GNU bug report logs - #59099
3-rd party aux files.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: automake; Severity: wishlist; Reported by: Van de Bugger <van.de.bugger@HIDDEN>; dated Mon, 7 Nov 2022 08:26:02 UTC; Maintainer for automake is bug-automake@HIDDEN.
Severity set to 'wishlist' from 'normal' Request was from Mike Frysinger <vapier@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 14 Nov 2022 23:14:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Nov 14 18:14:18 2022
Received: from localhost ([127.0.0.1]:51211 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ouief-0008P3-Im
	for submit <at> debbugs.gnu.org; Mon, 14 Nov 2022 18:14:18 -0500
Received: from lists.gnu.org ([209.51.188.17]:58398)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <van.de.bugger@HIDDEN>) id 1ouieL-0008JF-8F
 for submit <at> debbugs.gnu.org; Mon, 14 Nov 2022 18:13:58 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <van.de.bugger@HIDDEN>)
 id 1ouieK-0002SL-Hw
 for bug-automake@HIDDEN; Mon, 14 Nov 2022 18:13:56 -0500
Received: from forward503o.mail.yandex.net ([2a02:6b8:0:1a2d::613])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <van.de.bugger@HIDDEN>)
 id 1oug3i-0007Ie-Ut
 for bug-automake@HIDDEN; Mon, 14 Nov 2022 15:28:00 -0500
Received: from iva2-0a73a57cc944.qloud-c.yandex.net
 (iva2-0a73a57cc944.qloud-c.yandex.net
 [IPv6:2a02:6b8:c0c:6985:0:640:a73:a57c])
 by forward503o.mail.yandex.net (Yandex) with ESMTP id 38AC25C42AD;
 Mon, 14 Nov 2022 23:27:52 +0300 (MSK)
Received: by iva2-0a73a57cc944.qloud-c.yandex.net (smtp/Yandex) with ESMTPSA
 id cAzW9sVpOm-RpWeMLh3; Mon, 14 Nov 2022 23:27:51 +0300
X-Yandex-Fwd: 1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail;
 t=1668457671; bh=P8kVgZwhcwCKPMugrjqXM+KiGERR2tuv0lK9qQPrQJ4=;
 h=References:Date:In-Reply-To:Cc:To:From:Subject:Message-ID;
 b=MgsedJHNIRU3RCvxWdyaaq1DyqIpezvRICkpLLwcbc4P4erqvgBQay6LP47Ftwlvy
 LOQ7z6qfigEy8mtR6H0aijmrBaM3jKdld0Jm5/IjOoJmcr0LlktUEFfA3ZrgModw4C
 zMNVS1TEMoSyy6QgTWipc/gjqKL6ZTMG1pbQCbho=
Authentication-Results: iva2-0a73a57cc944.qloud-c.yandex.net;
 dkim=pass header.i=@yandex.ru
Message-ID: <dfb44e1811d1cd02ee559ed687b238200744143e.camel@HIDDEN>
Subject: Re: bug#59099: 3-rd party aux files.
From: Van de Bugger <van.de.bugger@HIDDEN>
To: Karl Berry <karl@HIDDEN>
Date: Mon, 14 Nov 2022 23:27:50 +0300
In-Reply-To: <202211122126.2ACLQls5016497@HIDDEN>
References: <202211122126.2ACLQls5016497@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.44.4 (3.44.4-2.fc36) 
MIME-Version: 1.0
Received-SPF: pass client-ip=2a02:6b8:0:1a2d::613;
 envelope-from=van.de.bugger@HIDDEN; helo=forward503o.mail.yandex.net
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
Cc: bug-automake@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

> Interesting and thorough, but I admit aclocal doesn't seem like
> a good model to me.

It could be not the best approach, but definitely good enough, since
(1) it is already exists, and (2) it is already exists in automake
(aclocal is a part of automake).

> aclocal has to do complicated things because it is merging
> individual macros into a single file=E2=80=A6

In my eyes the difference is rather small. Both aclocal and automake
look for components in a number of sources and add them to the
projects. Whether it will be a single file aclocal.m4 or few files in
aux directory is a technical detail and does not really matter.

> Automake already has --libdir/AUTOMAKE_LIBDIR to find library
> files. So inventing a whole parallel mechanism seems like it
> would result in confusion/clashes.

W-w-w-wait a minute. I do **not** invent a new **parallel** mechanism,
a want to **extend** **existing** one by **reusing** **another**
**existing** mechanism.=C2=A0

I did not study aclocal and automake source code, so I do not know how
easy to actually reuse aclocal code in automake; but it seems it is
possible since both tools are written in Perl. In any case, logically I
want reuse aclocal search algorithm in automake, I do not invent
anything new.

> Hence my idea of a new option+envvar --libdirs/AUTOMAKE_LIBDIRS=E2=80=A6

Are --libdirs/AUTOMAKE_LIBDIRS exact names? I do not like them, because
you are going to keep --libdir/AUTOMAKE_LIBDIR for backward
compatibility. --libdir is too similar to --libdirs: one letter
difference in spelling, but the difference in behavior is striking. It
will be too easy to make a mistake.

> /usr/share/automake was used by automake before the invention
> of /usr/share/automake-VERSION. I don't know if anyone is still
> using those (quite) old automake versions, but could be.

Even so, I do not think it is an issue. Up to now, there is no 3-rd
party aux files. Automake documentation can list all existing aux files
(only 14 files) and indicate that these names are reserved. Future
automake aux files can be prefixed with am- or am_ to avoid clashes
with third-party aux files.

> I wouldn't worry about anything like the dirlist file. There
> are enough ways to set the directory.

dirlist file is documented, and documentations provide quite good
reasoning for it. In case of copying aclocal searching algorithm, I see
no reason to exclude dirlist.

> I also don't think there's a need to support a serial
> comment, because automake doesn't do any such checking now for
> files in libdir.

Up to now, all the aux files are coming from the same source =E2=80=94 they=
 are
provided by automake, so there is no need in versioning. But allowing
third-party aux files changes it.

Also, in case of copying aclocal searching algorithm, I see no reason
to exclude file versioning.





Information forwarded to bug-automake@HIDDEN:
bug#59099; Package automake. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 12 Nov 2022 21:26:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Nov 12 16:26:56 2022
Received: from localhost ([127.0.0.1]:49464 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oty1f-0004ek-Mv
	for submit <at> debbugs.gnu.org; Sat, 12 Nov 2022 16:26:55 -0500
Received: from lists.gnu.org ([209.51.188.17]:57220)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <karl@HIDDEN>) id 1oty1d-0004eb-BD
 for submit <at> debbugs.gnu.org; Sat, 12 Nov 2022 16:26:54 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1oty1d-0007YC-5f
 for bug-automake@HIDDEN; Sat, 12 Nov 2022 16:26:53 -0500
Received: from freefriends.org ([96.88.95.60])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1oty1b-000143-6T
 for bug-automake@HIDDEN; Sat, 12 Nov 2022 16:26:52 -0500
X-Envelope-From: karl@HIDDEN
Received: from freefriends.org (freefriends.org [96.88.95.60])
 by freefriends.org (8.14.7/8.14.7) with ESMTP id 2ACLQmKG016506
 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); 
 Sat, 12 Nov 2022 14:26:49 -0700
Received: (from apache@localhost)
 by freefriends.org (8.14.7/8.14.7/Submit) id 2ACLQls5016497;
 Sat, 12 Nov 2022 14:26:47 -0700
Date: Sat, 12 Nov 2022 14:26:47 -0700
Message-Id: <202211122126.2ACLQls5016497@HIDDEN>
From: Karl Berry <karl@HIDDEN>
To: van.de.bugger@HIDDEN
Subject: Re: bug#59099: 3-rd party aux files.
In-Reply-To: <2be4f6f4fb8b507651ec9c789491c072a86b6c14.camel@HIDDEN>
Received-SPF: pass client-ip=96.88.95.60; envelope-from=karl@HIDDEN;
 helo=freefriends.org
X-Spam_score_int: -41
X-Spam_score: -4.2
X-Spam_bar: ----
X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, PP_MIME_FAKE_ASCII_TEXT=0.001,
 RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
Cc: bug-automake@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

    The problem if the same helper files are shared, i. e. used
    in more than one project.

Ack.

    thinking about copying existing aclocal behavior: 

Interesting and thorough, but I admit aclocal doesn't seem like a good
model to me. aclocal has to do complicated things because it is merging
individual macros into a single file, but what you need is simply a
system-wide directory to store new files, that don't exist
elsewhere. In general, simpler changes are better, for myriad reasons.

Automake already has --libdir/AUTOMAKE_LIBDIR to find library files. So
inventing a whole parallel mechanism seems like it would result in
confusion/clashes. Hence my idea of a new option+envvar
--libdirs/AUTOMAKE_LIBDIRS, essentially extending the automake libdir
into being a path. That still seems like a relatively straightforward
and sufficient solution, as I understand it. Wdyt?

I'm not sure about adding a default directory. /etc/automake comes to
mind, for the reasons you gave about the dirlist file, but I wonder if
distros already use /etc/automake for something or another. I don't know.

    4. A directory for third-party system-wide files — to
    do. Directory will be, obviously, /usr/share/automake (non-versioned).

/usr/share/automake was used by automake before the invention of
/usr/share/automake-VERSION. I don't know if anyone is still using those
(quite) old automake versions, but could be. Seems too confusing to
reuse it, in any case.

    6. Extra directories with "dirlist" — to do.

I wouldn't worry about anything like the dirlist file. There are enough
ways to set the directory.

    9. "#serial" comment — to do.

I also don't think there's a need to support a serial comment, because
automake doesn't do any such checking now for files in libdir. They are
just unconditionally used/copied. As far as I know. --best, karl.




Information forwarded to bug-automake@HIDDEN:
bug#59099; Package automake. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 11 Nov 2022 04:26:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Nov 10 23:26:27 2022
Received: from localhost ([127.0.0.1]:44809 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1otLcX-0008Pq-Il
	for submit <at> debbugs.gnu.org; Thu, 10 Nov 2022 23:26:27 -0500
Received: from lists.gnu.org ([209.51.188.17]:52230)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <van.de.bugger@HIDDEN>) id 1otFOo-0004ny-8w
 for submit <at> debbugs.gnu.org; Thu, 10 Nov 2022 16:47:51 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <van.de.bugger@HIDDEN>)
 id 1otFOo-0000j8-3f
 for bug-automake@HIDDEN; Thu, 10 Nov 2022 16:47:50 -0500
Received: from forward501j.mail.yandex.net ([5.45.198.251])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <van.de.bugger@HIDDEN>)
 id 1otFOl-0004LX-7D
 for bug-automake@HIDDEN; Thu, 10 Nov 2022 16:47:49 -0500
Received: from iva4-143b1447cf50.qloud-c.yandex.net
 (iva4-143b1447cf50.qloud-c.yandex.net
 [IPv6:2a02:6b8:c0c:7511:0:640:143b:1447])
 by forward501j.mail.yandex.net (Yandex) with ESMTP id DA8A962321C;
 Fri, 11 Nov 2022 00:47:41 +0300 (MSK)
Received: by iva4-143b1447cf50.qloud-c.yandex.net (smtp/Yandex) with ESMTPSA
 id IANymEDn9e-lfWSWDcY; Fri, 11 Nov 2022 00:47:41 +0300
X-Yandex-Fwd: 1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail;
 t=1668116861; bh=xd6S3PbfsoWAT7Iff/UbhpcpDBxjy84VjtUR8JWqHe0=;
 h=References:Date:In-Reply-To:Cc:To:From:Subject:Message-ID;
 b=QvC6fNW/eQ/sShNe+s8yBhaIa8tYD0GKUSMnUpBmmQwTDXe2bx9ufPyqOyYK7oPLC
 k7oXpqeoqgf1acK5U2PJOZdRRDxALqlJseO3Je9EnTnCOwnYHXicHEETt5urxsAntU
 SSzVaoHwyAUYsvQMpB+5keN7qrviy5xfv2X9Y8Sk=
Authentication-Results: iva4-143b1447cf50.qloud-c.yandex.net;
 dkim=pass header.i=@yandex.ru
Message-ID: <2be4f6f4fb8b507651ec9c789491c072a86b6c14.camel@HIDDEN>
Subject: Re: bug#59099: 3-rd party aux files.
From: Van de Bugger <van.de.bugger@HIDDEN>
To: Karl Berry <karl@HIDDEN>
Date: Fri, 11 Nov 2022 00:47:40 +0300
In-Reply-To: <202211072337.2A7NbgaM013192@HIDDEN>
References: <202211072337.2A7NbgaM013192@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.44.4 (3.44.4-2.fc36) 
MIME-Version: 1.0
Received-SPF: pass client-ip=5.45.198.251;
 envelope-from=van.de.bugger@HIDDEN; helo=forward501j.mail.yandex.net
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Thu, 10 Nov 2022 23:26:25 -0500
Cc: bug-automake@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

> Since the purpose of the new feature is to support per-project helper
> files (right?), a single system directory doesn't seem right. Let's
> not mess around with system directories if we can help it.

Not exactly. Truly per-project helper files is *not* a problem =E2=80=94 th=
ey
can  be stored in the project, and so, do not require any support from
autotools. The problem if the same helper files are shared, i. e. used
in more than one project.

Also, I often pack my own scripts/programs/whatever-else (which can be
used, at least potentially, by others) to RPM packages, so I would like
to have system directory for them.

At the same time, user-writable directory is also wanted, if helper
files are not yet packed, or for test/debug purposes.

> In general, the closer the new behavior is to the existing, the=C2=A0
> easier I think it will be to understand (and implement and document).

That's right. So I am not going to invent something new. Instead, I am
thinking about copying existing aclocal behavior: it already have all
the required pieces, documented, and in use for a long time:

1. Default directory for automake-provided files: /usr/share/aclocal-
VERSION.
2. It can be overridden by the ACLOCAL_AUTOMAKE_DIR env var.
3. It can be overridden by the --automake-acdir command line option.
4. Default directory for third-party system-wide files:
/usr/share/aclocal.
5. It can be overridden by the --system-acdir command line option.
6. Extra directories can be specified with "dirlist" file in the
directory for third-party system-wide files.
7. Extra directories can be specified by the -I command line option.
8. Extra directories can be specified by the ACLOCAL_PATH env var.
9. There is a mechanism to version aclocal files by using "#serial"
comment.

(The only thing I do not like is "dirlist" file. As described in the
Automake manual, this file is intended to be edited by system
administrator. In such a case, the proper location for the file would
be /etc directory, not /usr/share/aclocal.)

So, my draft proposal looks like:

1. A directory for automake-provided files: /usr/share/automake-VERSION
=E2=80=94 already in place.
2. It can be overridden by the AUTOMAKE_LIBDIR env var =E2=80=94 already in
place.
3. It can be overridden by the --libdir option =E2=80=94 already in place.
4. A directory for third-party system-wide files =E2=80=94 to do. Directory
will be, obviously, /usr/share/automake (non-versioned).
5. An option to override it =E2=80=94 to do. --system-libdir?
6. Extra directories with "dirlist" =E2=80=94 to do.
7. An option for extra directories -- to do. -I?
8. An env var for extra directories -- to to. AUTOMAKE_PATH?
9. "#serial" comment =E2=80=94 to do.

Env var/option names could be more uniform, but backward compatibility
limits it.

> I think we should have Jim and/or other more experienced Automakers
> weigh in before you start coding. But here are my comments.

How to get it?





Information forwarded to bug-automake@HIDDEN:
bug#59099; Package automake. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 8 Nov 2022 08:21:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Nov 08 03:21:58 2022
Received: from localhost ([127.0.0.1]:36201 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1osJro-0000Uc-GY
	for submit <at> debbugs.gnu.org; Tue, 08 Nov 2022 03:21:57 -0500
Received: from lists.gnu.org ([209.51.188.17]:55078)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <karl@HIDDEN>) id 1osAR9-0005u5-Mf
 for submit <at> debbugs.gnu.org; Mon, 07 Nov 2022 17:17:48 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1osAR2-00080z-9m
 for bug-automake@HIDDEN; Mon, 07 Nov 2022 17:17:47 -0500
Received: from freefriends.org ([96.88.95.60])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1osAQz-00059N-JQ
 for bug-automake@HIDDEN; Mon, 07 Nov 2022 17:17:39 -0500
Received: from freefriends.org (freefriends.org [96.88.95.60])
 by freefriends.org (8.14.7/8.14.7) with ESMTP id 2A7MHXX3003089
 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); 
 Mon, 7 Nov 2022 15:17:34 -0700
Received: (from apache@localhost)
 by freefriends.org (8.14.7/8.14.7/Submit) id 2A7MHXHT003087;
 Mon, 7 Nov 2022 15:17:33 -0700
X-Envelope-From: van.de.bugger@HIDDEN
X-Envelope-To: <karl@HIDDEN>
X-Yandex-Fwd: 1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail;
 t=1667796432; bh=A1hvEG+ZnqkQiYY9UtQJT9yBdcPy1TwQwb3aIq87Eiw=;
 h=References:Date:In-Reply-To:Cc:To:From:Subject:Message-ID;
 b=FmkPoy+s9bUEELO5Y/ZioTsajUACtLmtzfgJlSg6xvT1GzXUfACH3S1t7jYdsa3Df
 3d8/sDSHil2pifXRdi48Bkfk92HK2eiSoOU3QOqCrGFca0MlSQ9ueX/xL+1MACmakM
 s2N+nqZPoHtxtJTiVa2W+G3e2ThlvsSm1sP3FwFc=
Authentication-Results: vla5-1ef2161cc1d7.qloud-c.yandex.net;
 dkim=pass header.i=@yandex.ru
Message-ID: <c4733827eec9489ae5321bf77877f554c8606be0.camel@HIDDEN>
In-Reply-To: <202211062116.2A6LGiN7003663@HIDDEN>
References: <202211062116.2A6LGiN7003663@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
User-Agent: Evolution 3.44.4 (3.44.4-2.fc36) 
MIME-Version: 1.0
X-MIME-Autoconverted: from quoted-printable to 8bit by freefriends.org id
 2A74lEnl025806
Content-Transfer-Encoding: 7bit
Date: Mon, 07 Nov 2022 07:47:11 +0300
From: Van de Bugger <van.de.bugger@HIDDEN>
To: Karl Berry <karl@HIDDEN>
Subject: Re: bug#59099: 3-rd party aux files.
Received-SPF: pass client-ip=96.88.95.60; envelope-from=karl@HIDDEN;
 helo=freefriends.org
X-Spam_score_int: -24
X-Spam_score: -2.5
X-Spam_bar: --
X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, CTE_8BIT_MISMATCH=0.001,
 DATE_IN_PAST_12_24=1.049, DKIM_INVALID=0.1, DKIM_SIGNED=0.1,
 FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001,
 HEADER_FROM_DIFFERENT_DOMAINS=0.25, RCVD_IN_DNSWL_MED=-2.3,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Tue, 08 Nov 2022 03:21:55 -0500
Cc: bug-automake@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

> If you, or anyone, can draft a patch, that would be great.

I think I could draft a patch, but I am not sure which interface to
choose for the new feature. I see few possible approaches:


1. Let automake look for aux files in *two* directories:
/usr/share/automake-1.16 and /usr/share/automake. In such case, the --
libdir option (and/or the AUTOMAKE_LIBDIR environment variable) will
replace the first dir (versioned one), the second dir (unversioned one)
is always searched for aux files.

This option looks good because automake uses similar approach when
searching for *.m4 files: it searches in /usr/share/aclocal-1.16 first,
then in /usr/share/aclocal. Disadvantage is that both directories are
not writable by non-privileged user.


2. Let automake maintain the *list* of directories to be searched for
aux files. In such case, the --libdir  option (and the AUTOMAKE_LIBDIRS
environment variable) will insert the given directory to the beginning
(or to the end?) of the list. Multiple --libdir options are allowed.

Such approach looks good because non-privileged user can specify his
own aux directory. However, I worry about backward compatibility. Is
there any existing code relying on the fact that automake ignores
standard directory if the --libdir option is specified? It seems the --
libdir option is rarely used (manual states it is used primarily for
debugging), but I am not sure.


3. A combination of 1 and 2 is also possible. automake can maintain the
list of directories to be searched, which is initialized to
(/usr/share/automake-1.16, /usr/share/automake). The first directory
contains files provided by automake, the second — system-wide third-
party files, while non-privileged user is able to specify personal
directory in addition to system-wide directories either by the --libdir
option or by the AUTOMAKE_LIBDIRS environment variable.


Also, it is not clear to me, should it affect searching for *.am files
or not.

Any comments?


> ...my automake time is woefully scarce at the moment :(.

Not a problem, there is no hurry.

Thanks.





Information forwarded to bug-automake@HIDDEN:
bug#59099; Package automake. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 7 Nov 2022 23:37:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Nov 07 18:37:52 2022
Received: from localhost ([127.0.0.1]:35739 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1osBge-00080V-3L
	for submit <at> debbugs.gnu.org; Mon, 07 Nov 2022 18:37:52 -0500
Received: from lists.gnu.org ([209.51.188.17]:56178)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <karl@HIDDEN>) id 1osBgb-00080N-FW
 for submit <at> debbugs.gnu.org; Mon, 07 Nov 2022 18:37:50 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1osBgb-00031m-9I
 for bug-automake@HIDDEN; Mon, 07 Nov 2022 18:37:49 -0500
Received: from freefriends.org ([96.88.95.60])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1osBgY-0005dH-8t
 for bug-automake@HIDDEN; Mon, 07 Nov 2022 18:37:49 -0500
X-Envelope-From: karl@HIDDEN
Received: from freefriends.org (freefriends.org [96.88.95.60])
 by freefriends.org (8.14.7/8.14.7) with ESMTP id 2A7NbhNX013193
 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); 
 Mon, 7 Nov 2022 16:37:44 -0700
Received: (from apache@localhost)
 by freefriends.org (8.14.7/8.14.7/Submit) id 2A7NbgaM013192;
 Mon, 7 Nov 2022 16:37:42 -0700
Date: Mon, 7 Nov 2022 16:37:42 -0700
Message-Id: <202211072337.2A7NbgaM013192@HIDDEN>
From: Karl Berry <karl@HIDDEN>
To: van.de.bugger@HIDDEN
Subject: Re: bug#59099: 3-rd party aux files.
In-Reply-To: <9ec7c3e2dd374b115685fbd88107b16d98afc039.camel@HIDDEN>
Received-SPF: pass client-ip=96.88.95.60; envelope-from=karl@HIDDEN;
 helo=freefriends.org
X-Spam_score_int: -41
X-Spam_score: -4.2
X-Spam_bar: ----
X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
Cc: bug-automake@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

Hi Van - first, I've copied your messages to the bug tracker, so please
use bug-automake@HIDDEN and the given subject line so things stay in
the bug going forward.
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=59099
(Except my resend of your reply didn't get attached. I don't know why
not. Will try to figure that out. For the record, your msg is here:
https://lists.gnu.org/archive/html/automake/2022-11/msg00001.html
)

    I am not sure which interface to choose for the new feature. I see
    few possible approaches:

Your summary is admirable :).  I think we should have Jim and/or other
more experienced Automakers weigh in before you start coding. But here
are my comments.

    Disadvantage is that both directories are
    not writable by non-privileged user.

Since the purpose of the new feature is to support per-project helper
files (right?), a single system directory doesn't seem right. Let's not
mess around with system directories if we can help it.

    2. Let automake maintain the *list* of directories to be searched for
    aux files. 

Sounds right.

    In such case, the --libdir  option (and the AUTOMAKE_LIBDIRS
    environment variable) will insert the given directory to the beginning
    (or to the end?) of the list. Multiple --libdir options are allowed.

I like the idea in general.

    Is there any existing code relying on the fact that automake ignores
    standard directory if the --libdir option is specified? 

The answer to the question "does anything depend on X", for any Automake
(or Autoconf) behavior X, is yes.  So I think we must not change
existing behavior of --libdir or AUTOMAKE_LIBDIR. Instead, we can add to it.

What comes to mind follows your typo above :) ... have a new
option/envvar --libdirs/AUTOMAKE_LIBDIRS which maintains an independent
list of directories to search. I think the new dirs should be searched
after the libdir/AUTOMAKE_LIBDIR directory.

I think the list of dirs should be searched in the order specified:
--libdirs foo --libdirs bar would search foo then bar.

As with --libdir/AUTOMAKE_LIBDIR, if --libdirs is specified, it would
override (completely) AUTOMAKE_LIBDIRS. No such "extra" directories
would be searched by default.

Does that reasonably solve your original request?

    Also, it is not clear to me, should it affect searching for *.am
    files or not.

For consistency, I think the new searching should look for the same
files as the existing searching. Presumably that will be
easiest/cleanest to implement, too.

In general, the closer the new behavior is to the existing, the easier I
think it will be to understand (and implement and document).

Wdyt? --thanks, karl.




Information forwarded to bug-automake@HIDDEN:
bug#59099; Package automake. Full text available.
bug reassigned from package 'debbugs.gnu.org' to 'automake'. Request was from Karl Berry <karl@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 7 Nov 2022 08:25:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Nov 07 03:25:54 2022
Received: from localhost ([127.0.0.1]:33181 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1orxS4-0006dr-TX
	for submit <at> debbugs.gnu.org; Mon, 07 Nov 2022 03:25:54 -0500
Received: from lists.gnu.org ([209.51.188.17]:40596)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <karl@HIDDEN>) id 1orn0U-0001zN-Cw
 for submit <at> debbugs.gnu.org; Sun, 06 Nov 2022 16:16:43 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1orn0U-00034m-82
 for bug-automake@HIDDEN; Sun, 06 Nov 2022 16:16:42 -0500
Received: from freefriends.org ([96.88.95.60])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <karl@HIDDEN>)
 id 1orn0R-0002jA-An
 for bug-automake@HIDDEN; Sun, 06 Nov 2022 16:16:41 -0500
Received: from freefriends.org (freefriends.org [96.88.95.60])
 by freefriends.org (8.14.7/8.14.7) with ESMTP id 2A6LGYXw003579
 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); 
 Sun, 6 Nov 2022 14:16:35 -0700
Received: (from apache@localhost)
 by freefriends.org (8.14.7/8.14.7/Submit) id 2A6LGYNP003578;
 Sun, 6 Nov 2022 14:16:34 -0700
Resent-Date: Sun, 6 Nov 2022 14:16:34 -0700
Resent-From: Karl Berry <karl@HIDDEN>
Resent-Message-Id: <202211062116.2A6LGYNP003578@HIDDEN>
Resent-To: bug-automake@HIDDEN
X-Envelope-From: automake-bounces+karl=freefriends.org@HIDDEN
X-Yandex-Fwd: 1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail;
 t=1667002054; bh=bhphdbqPOrYVwQ3vxR0yHiyFGoJ+KH6/dgAVrkghmFs=;
 h=Date:To:From:Subject:Message-ID;
 b=d9f/iwtpQGfyH1Jc1jpORSfnGOLHp9EWyt7xQBucam/YSFmMnFTFFa2HAtpBtdRUj
 kjhk6Pqg98hU0Au2Zo72OaMQ175xjt1M5MynLVjWnZlSU8o8In8225GVVfP7Lb0i59
 iCbyAb1/EHwd8HCemWsm1QRyIcx9+yrAflEXM8lg=
Authentication-Results: myt5-2f5ba0466eb8.qloud-c.yandex.net;
 dkim=pass header.i=@yandex.ru
Message-ID: <9ec7c3e2dd374b115685fbd88107b16d98afc039.camel@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
User-Agent: Evolution 3.44.4 (3.44.4-2.fc36) 
MIME-Version: 1.0
Received-SPF: pass client-ip=77.88.28.109;
 envelope-from=van.de.bugger@HIDDEN; helo=forward106p.mail.yandex.net
X-Spam_action: no action
X-Mailman-Approved-At: Sat, 29 Oct 2022 00:27:08 -0400
X-BeenThere: automake@HIDDEN
X-Mailman-Version: 2.1.29
Precedence: list
X-MIME-Autoconverted: from quoted-printable to 8bit by freefriends.org id
 29T5Yb1d018171
Content-Transfer-Encoding: 7bit
Date: Sat, 29 Oct 2022 03:07:34 +0300
From: Van de Bugger <van.de.bugger@HIDDEN>
To: <automake@HIDDEN>
Subject: 3-rd party aux files.
Received-SPF: pass client-ip=96.88.95.60; envelope-from=karl@HIDDEN;
 helo=freefriends.org
X-Spam_score_int: -28
X-Spam_score: -2.9
X-Spam_bar: --
X-Spam_report: (-2.9 / 5.0 requ) BAYES_40=-0.001, CTE_8BIT_MISMATCH=0.001,
 DKIM_INVALID=0.1, DKIM_SIGNED=0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249,
 MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -2.1 (--)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Mon, 07 Nov 2022 03:25:51 -0500
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.1 (--)

Hi,

I have several project using autoconf/automake. I also have several
helper scripts I use in all my makefiles. If I made any improvement in
one of these scripts, I have to copy that script to all my projects. It
is quite inconvenient and error-prone.

I think it would be nice if automake handles my helper scripts like
install-sh, missing, test-driver and other automake aux files. In such
a case all I need is just run

automake -af

to get helper scripts updated.

The only problem is that automake searches for missed aux files in the
*single* directory, /usr/share/automake-1.16 (*). If I use 

automake -af --libdir=$HOME/aux

it breaks automake (it can't find other files, e.g. am/header-vars.am).

So, my question: Is there any way to provide 3-rd party aux files?

---
(*) Putting my aux files to /usr/share/automake-1.16 is obviously a bad
idea. Even if I create package (rpm/deb/whatever else), it will depend
on automake version, so I will have to create almost identical packages
for automake 1.16, 1.15, ...





Acknowledgement sent to Van de Bugger <van.de.bugger@HIDDEN>:
New bug report received and forwarded. Copy sent to help-debbugs@HIDDEN. Full text available.
Report forwarded to help-debbugs@HIDDEN:
bug#59099; Package debbugs.gnu.org. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Fri, 13 Jan 2023 05:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.