lp:~appimagelauncher-team/autoconf/+git/savannah

Get this repository:
git clone https://git.launchpad.net/~appimagelauncher-team/autoconf/+git/savannah

Import details

Import Status: Reviewed

This repository is an import of the Git repository at https://git.savannah.gnu.org/git/autoconf.git.

The next import is scheduled to run .

Last successful import was .

Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 30 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 4 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-3 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 30 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 30 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 20 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 4 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 25 seconds — see the log

Branches

Name Last Modified Last Commit
master 2024-02-07 20:43:11 UTC
Remove incorrect check in AC_CHECK_SIZEOF

Author: Paul Eggert
Author Date: 2024-02-07 20:42:04 UTC

Remove incorrect check in AC_CHECK_SIZEOF

* lib/autoconf/types.m4 (AC_CHECK_SIZEOF, AC_CHECK_ALIGNOF):
When the size or alignment cannot be determined, do not fail if
ac_cv_type_$1 is yes, as there’s no guarantee that ac_cv_type_$1
is defined, and failure here would contradict the documentation
that the size or alignment is 0 when sizeof($1)/alignof($1) cannot
be compiled. The test for ac_cv_type_$1 made sense long ago when
it was checked for in these macros, but the test has not made
sense for many years.

zack/perl-interp-overhead 2023-12-07 19:06:26 UTC
Reduce overhead of tests/wrapper.as

Author: Zack Weinberg
Author Date: 2023-12-07 19:06:26 UTC

Reduce overhead of tests/wrapper.as

tests/wrapper.as is a wrapper script that enables the test suite to
run Autoconf’s command line tools (autoconf, autoheader, etc.) without
having installed them first. It’s written in m4sh. All of the
programs it wraps are written in Perl. Therefore, we can make the
wrapper more efficient by rewriting it in Perl and having it invoke
the real program with the ‘do’ builtin. This cuts out the cost of
starting up a shell and crunching through m4sh initialization (order
of 400 lines of code). Using ‘do’ means we only have to start up Perl
once.

‘make check TESTSUITEFLAGS="-j24"’ speeds up a small but consistently
measurable amount on my workstation. The wall-clock time difference
would be bigger at lower levels of parallelism.

before:
wall 1m16.716s
user 16m44.847s
sys 12m6.452s

                 wall user sys user+sys
autom4te 451.16 261.75 35.75 297.5
autoheader 188.9 42.54 6.1 48.64
autoupdate 47.25 5.39 0.73 6.12
autoreconf 35.68 1.66 0.28 1.94
autoscan 0.88 0.31 0.04 0.35
ifnames 0.25 0.2 0.02 0.22
autoconf 0.18 0.13 0.01 0.14

after:
wall 1m14.624s
user 16m21.883s
sys 11m37.521s

                 wall user sys user+sys
autom4te 415.49 256.41 27.83 284.24
autoheader 170.87 40.97 3.94 44.91
autoupdate 44.7 5.26 0.59 5.85
autoreconf 33.42 1.54 0.13 1.67
autoscan 0.76 0.27 0.03 0.3
ifnames 0.21 0.18 0 0.18
autoconf 0.14 0.11 0 0.11

(Total time per program collected using BSD process accounting.)

zack/ac-prog-lex-rewrite 2023-12-03 17:09:37 UTC
Overhaul AC_PROG_LEX for precision and maintainability

Author: Zack Weinberg
Author Date: 2023-12-03 17:09:37 UTC

Overhaul AC_PROG_LEX for precision and maintainability

AC_PROG_LEX has three different operating modes (“yywrap”, “noyywrap”,
and 2.69 compatibility mode) which were all tangled together and hard
to understand. In addition, the way we were handling yywrap, in all
three modes, was imprecise to the point where I am unsure we were
actually testing the property people want to test.

Refactor AC_PROG_LEX into a set of smaller macros:

- AC_PROG_LEX and _AC_PROG_LEX_1 perform argument validation and
  normalization. _AC_PROG_LEX_1 also ensures that repeated invocation
  of AC_PROG_LEX is harmless.

- _AC_PROG_LEX_2 is invoked with exactly one argument which is the
  name of one of the three _AC_PROG_LEX_LIBL_* macros (described below).
  It invokes, in sequence, AC_CHECK_PROGS([LEX]), _AC_PROG_LEX_OUTPUT_ROOT,
  the _AC_PROG_LEX_LIBL_ macro it was given as an argument, and
  finally _AC_PROG_LEX_YYTEXT_DECL. If any of these sets LEX to ‘:’,
  further tests are skipped. _AC_PROG_LEX_2 is also responsible for
  cleaning up conftest.l and lex.yy.c afterward.

- _AC_PROG_LEX_YYTEXT_DECL now *only* tests whether yytext is a
  pointer. It reuses the conftest.l from previous tests.

- _AC_PROG_LEX_OUTPUT_ROOT just does the test for the name of the
  file produced by running ‘lex conftest.l’ with no further arguments.

- _AC_PROG_LEX_LIBL_YYWRAP, _AC_PROG_LEX_LIBL_NOYYWRAP, and
  _AC_PROG_LEX_LIBL_COMPAT determine whether a generated lexer needs
  to be linked with -ll or -lfl. Each is dedicated to one of the
  three operating modes, and uses a conftest.l specialized for that mode.
  In compat mode we do *not* look for ‘yywrap’ using AC_SEARCH_LIBS;
  instead we actually try to link a generated lexer that uses yywrap.

- _AC_PROG_LEX_SEARCH_LIBL, _AC_PROG_LEX_TEST_COMMON,
  _AC_PROG_LEX_TEST_YYWRAP, and _AC_PROG_LEX_TEST_NOYYWRAP are
  subroutines of the _AC_PROG_LEX_LIBL_* macros.

TODO:

- Shrink and sharpen the test program used by _AC_PROG_LEX_YYTEXT_DECL and
  make it independent of previous operations. Possibly smush it
  back together with _AC_PROG_LEX_OUTPUT_ROOT.
- Re-audit the “noyywrap” program, it might be better to declare
  “_static_ int yywrap(void)” in the %{ %} block instead of not
  declaring it at all.
- Re-audit the “yywrap” program, it might be better to rely on the
  skeleton to declare yywrap.

* lib/autoconf/programs.m4 (AC_PROG_LEX): Extensive refactor.
  Test for yywrap is now done by linking a generated lexer, not with
  AC_SEARCH_LIBS.
  (_AC_PROG_LEX_YYTEXT_DECL): Just test whether yytext is a pointer.
  (_AC_PROG_LEX): Removed.
  (_AC_PROG_LEX_1, _AC_PROG_LEX_2): New macros dividing up the labor
  formerly performed by _AC_PROG_LEX and the order of operations in
  the old _AC_PROG_LEX_YYTEXT_DECL.
  (_AC_PROG_LEX_OUTPUT_ROOT, _AC_PROG_LEX_SEARCH_LIBL)
  (_AC_PROG_LEX_LIBL_YYWRAP, _AC_PROG_LEX_LIBL_NOYYWRAP)
  (_AC_PROG_LEX_LIBL_COMPAT, _AC_PROG_LEX_TEST_COMMON)
  (_AC_PROG_LEX_TEST_YYWRAP, _AC_PROG_LEX_TEST_NOYYWRAP):
  New macros dividing up the rest of the labor formerly performed by
  _AC_PROG_LEX_YYTEXT_DECL.

* tests/semantics.at
  (AC_PROG_LEX with noyywrap): Rename “AC_PROG_LEX: noyywrap”.
  (AC_PROG_LEX with yywrap): Rename “AC_PROG_LEX: yywrap”. No longer
  necessary to skip this test on OSes where there is no -ll nor -lfl.
  (AC_PROG_LEX in legacy mode): Rename “AC_PROG_LEX: compat mode.”
  Convert to AT_CHECK_MACRO test using -Wno-obsolete.
  (Invalid arguments to AC_PROG_LEX): Rename “AC_PROG_LEX: invalid
  arguments and warnings.” Move the test for the warning
  “AC_PROG_LEX without either yywrap or noyywrap is obsolete” here.
  Adjust expected stack traces.

continuous-integration 2021-10-03 23:33:54 UTC
initial script for building autoconf from git

Author: Zack Weinberg
Author Date: 2021-10-03 23:33:54 UTC

initial script for building autoconf from git

branch-2.70 2021-01-28 21:29:02 UTC
maint: post-release administrivia

Author: Zack Weinberg
Author Date: 2021-01-28 21:29:02 UTC

maint: post-release administrivia

* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.

zack/bug-107986 2020-08-14 18:04:46 UTC
Warn if AC_INIT or AC_OUTPUT are missing from configure.ac (#107986)

Author: Zack Weinberg
Author Date: 2020-08-14 17:16:58 UTC

Warn if AC_INIT or AC_OUTPUT are missing from configure.ac (#107986)

It is almost always incorrect for a configure script to omit either
AC_INIT or AC_OUTPUT. Issue warnings in the ‘syntax’ category for
this.

The implementation is, unfortunately, a bit of a kludge. To check for
the _absence_ of a macro invocation, we can use m4_provide_if inside a
m4_wrap hook. However, if we activate the m4_wrap hook directly from
general.m4, we get spurious warnings at freeze time. We also get
warnings whenever a script that’s missing AC_INIT and/or AC_OUTPUT
is *traced*, which means we get double warnings from autoconf, and
autoheader and aclocal complain about it too, which seems unnecessary.

A clean way to deal with this would be to make the hook look for a
special macro that’s defined only when autoconf (the program) is
invoked without any --trace arguments. Unfortunately, autom4te
doesn’t pass --define down to M4, and changing that would involve
coordinating with Automake (the project), so instead I’ve gone for the
kludge: a new file lib/autoconf/trailer.m4 that calls m4_wrap. This
file is *not* included in autoconf.m4f, but it’s installed, and it’s
added to the m4 invocation by autoconf (the program) only when not
tracing. (It still uses m4_wrap, because we pass it to m4 *before*
configure.ac, because otherwise we get nonsense locations for any
*other* diagnostics coming out of this autoconf invocation. I don’t
know why.)

The additional checks in autoreconf are intended to make sure that if
autoreconf skips a directory entirely, you get told why.

Lots of tests in the testsuite didn’t bother with AC_OUTPUT, and
somewhat fewer didn’t bother with AC_INIT; where possible I just added
them.

Suggested by David A. Wheeler, who submitted a patch, but I didn’t
wind up using any of his code. (His implementation used an extra
tracing pass, only checked for a missing AC_INIT, and invented a new
command-line option to turn off this specific warning. I thought this
was tidier overall, despite the kludge.)

* lib/autoconf/general.m4 (_AC_FINALIZE): New macro: code to be run
  when generating configure, after the entire configure.ac is
  processed. Currently only checks that AC_INIT and AC_OUTPUT were
  called at some point, issuing syntax-category warnings if not.
  (AC_INIT, AC_OUTPUT): m4_provide self.
* lib/autoconf/trailer.m4: New file that just calls m4_wrap([_AC_FINALIZE]).
* lib/local.mk: Install new file.

* bin/autoconf.as: Add trailer.m4 to the final invocation of autom4te,
  but only when not tracing.
* bin/autoreconf.in (autoreconf_current_directory): Distinguish in
  diagnostics between “directory skipped because it doesn’t have a
  configure.ac or configure.in” (e.g. Cygnus configure) and “directory
  has a configure.ac but it doesn’t appear to be autoconf input.”

* tests/*.at: Fix all tests affected by the new warnings.

branch-2.59 2008-12-24 18:46:00 UTC
Regenerate files.

Author: Eric Blake
Author Date: 2008-12-24 18:46:00 UTC

Regenerate files.

* Makefile.in: Regenerate with previous patch.
* bin/Makefile.in: Likewise.
* config/Makefile.in: Likewise.
* configure: Likewise.
* doc/Makefile.in: Likewise.
* lib/Autom4te/Makefile.in: Likewise.
* lib/Makefile.in: Likewise.
* lib/autoconf/Makefile.in: Likewise.
* lib/autoscan/Makefile.in: Likewise.
* lib/autotest/Makefile.in: Likewise.
* lib/emacs/Makefile.in: Likewise.
* lib/m4sugar/Makefile.in: Likewise.
* man/Makefile.in: Likewise.
* man/autom4te.1: Likewise.
* tests/Makefile.in: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>

branch-2.62 2008-07-21 22:55:45 UTC
Work around M4 1.6 warning on undefined macros.

Author: Eric Blake
Author Date: 2008-07-11 14:55:15 UTC

Work around M4 1.6 warning on undefined macros.

* lib/m4sugar/m4sugar.m4 (changeword, symbols): Don't rename if
not already available as builtins.
* bin/autoupdate.in (_au___undefine): New macro,...
(_au__undefine): ...wrapped by ifdef to silence m4 warnings.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
(cherry picked from commit 5fb9f9c1a2a310caf37d45d2bc7640723e40c311)
(cherry picked from commit 4b8a55e1e015fc5ba0ceee63ce3739ea1e41b686)

autoconf-2-15-branch 1999-11-09 13:17:28 UTC
1999-11-10 Ben Elliston <bje@cygnus.com>

Author: Ben Elliston
Author Date: 1999-11-09 13:17:28 UTC

1999-11-10 Ben Elliston <bje@cygnus.com>

 * testsuite/autoconf.s/defines.exp: Remove test case.

experimental 1999-10-16 08:39:48 UTC
1999-10-06 Akim Demaille <akim@epita.fr>

Author: Ben Elliston
Author Date: 1999-10-16 08:39:48 UTC

1999-10-06 Akim Demaille <akim@epita.fr>

 * acspecific.m4: Various formatting changes.
 * acspecific.m4 (AC_PROG_CC_WORKS): Declare main returns an int.

autoconf-2-13-branch 1999-01-04 23:57:28 UTC
1999-01-05 Ben Elliston <bje@cygnus.com>

Author: Ben Elliston
Author Date: 1999-01-04 23:57:28 UTC

1999-01-05 Ben Elliston <bje@cygnus.com>
 * Version 2.13.

111 of 11 results
This repository contains Public information 
Everyone can see this information.