|
6d3ffeb9
|
2013-04-30T23:00:53
|
|
cosmetics: remove few trailing whitespace occurrences
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
edfd3bc4
|
2013-02-17T16:42:46
|
|
tar: format 'ustar' cannot support UID/GID longer than 21 bits
See automake bug#8343 and bug#13588.
POSIX 1988 'ustar' format is defined with *fixed-size* fields. There
is notably a 21 bits limit (2097151) for the UID and the GID.
Tom Rini tom_rini@mentor.com says (in bug#8343):
When the user has a UID or GID that is larger than the ustar format
supports, pax does not error out gracefully in some cases (FC13).
Marc Herbert <marc.herbert@intel.com> adds (in bug#8343):
When "configure" is run by a user with an UID bigger than 21 bits,
BSD pax 3.4 aborts when trying to create the 'conftest.tar' test
archive and leaves an empty or corrupted conftest.tar file behind.
In the next step, pax tries to extract this incomplete or corrupted
archive and this *** hangs the whole ./configure script ***.
Note: GNU cpio 2.9 pretends to pass the test but it is a LIE: it
silently truncates any big UID to its lower 21 bits. I don't know
what can be the consequences of this lie.
I think there is currently a design issue in automake/m4/tar.m4
considering that a ustar archive should should *never* succeed when
./configure is run from a big user ID.
Months later, Petr Hracek <phracek@redhat.com> reports a similar issue
(in bug#13588) for Fedora 17:
I am trying to solve problem in case a user is created with big
UID and during configuration pax hangs with message
ATTENTION! pax archive volume change required.
Ready for archive volume: 1
Input archive name or "." to quit pax.
Archive name >
and needs user interaction.
Reference: <https://bugzilla.redhat.com/show_bug.cgi?id=843376>
Time to fix this issue, on the line of a preliminary patch provided by
Petr Hracek in bug#13588. The final patch ended up being remarkably
different from that original proposition, though.
* m4/tar.m4 (_AM_PROG_TAR): If the UID or GID of the current user is
too high (> 2097151), the 'ustar' format cannot work. Adjust checks
accordingly. Some related code reordering and clean-up.
* t/tar-ustar-id-too-high.sh: New test.
* t/list-of-tests.mk: Add it.
* t/tar.sh: While at it, tweak and enhance a little.
* t/tar2.sh: Likewise.
* t/tar3.sh: Likewise.
* t/tar-override.sh: Likewise.
* NEWS: Update.
* THANKS: Likewise.
Helped-by: Pavel Raiskup <praiskup@redhat.com>
Helped-by: Petr Hracek <phracek@redhat.com>
Helped-by: Marc Herbert <marc.herbert@intel.com>
Helped-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
7df8b28c
|
2012-12-31T18:18:37
|
|
maint: update copyright year for 2013 (in branch maint)
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
6e3c0b92
|
2012-07-14T18:49:25
|
|
m4: get rid of "# serial" lines
The "#serial" lines are only considered by aclocal for the system-wide
third-party '.m4' files, not for the Automake-provided ones. So they
serve no real purpose in the Automake '.m4' files.
In addition, now that we use git and topic branches, and that we are also
writing the Automake-NG fork, the "#serial" lines are becoming more and
more unreliable (e.g., different version of the same file in different
branches can easily end up having the same serial numbers).
So let's just nuke all the "#serial" lines. See also automake bug#11932.
* m4/*.m4: All "# serial" lines removed.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
f8f22fea
|
2012-02-23T19:36:20
|
|
m4: do not quote `like this', as per GCS recommendation
This patch converts the files comprising the automake's own build
system to the use of new quoting format 'like this' or "like this"
rather than `like this'.
* m4/auxdir.m4, m4/ccstdc.m4, m4/depend.m4, m4/depout.m4, m4/tar.m4,
m4/init.m4, m4/maintainer.m4, m4/make.m4, m4/missing.m4, m4/vala.m4,
m4/mkdirp.m4, m4/sanity.m4, m4/silent.m4, m4/strip.m4: Update and
adjust quoting format throughout, in comments and diagnostic. Some
minor related rewordings and reformatting since we are at it. Bump
serial numbers.
|
|
641a5a4b
|
2012-02-16T10:46:23
|
|
maint: run "make update-copyright"
|
|
01c3294b
|
2012-01-03T16:12:46
|
|
dist: do not wrap calls to 'tar' with the 'missing' script
The `missing' script is meant to allow non-developers to build a
package in the face of slightly-skewed timestamps (as might happen
e.g. when the package is obtained from a VCS checkout rather than
from a distribution tarball). It is *not* the business of the
`missing' script to try to provide wrappers for all the maintainer
tools (in this case, to tool being a decent tar program). Such
wrapping of `tar' was not only inappropriate, but it was also
preventing the legitimate overriding (at make runtime) of the
`tar' program used in the creation of the distribution tarballs.
See also automake bug#9822.
* lib/missing: Don't try to specially wrap `tar' invocations
anymore.
* m4/tar.m4 (_AM_PROG_TAR): In the definitions of the `AMTAR'
variable, do not wrap the `tar' invocation with the `missing'
script anymore. Instead, allow the user to override the intended
tar program at make runtime, by defining the `TAR' environment
variable.
[$1 == v7]: Similarly for the definitions of the `am__tar' and
`am__untar' variables. Since we are at it, don't make them depend
anymore on the definition of the obsolescent `AMTAR' variable.
* NEWS: Update.
* tests/missing-tar.test: Remove, it's obsolete.
* tests/tar-override.test: New test.
* tests/Makefile.am (TESTS): Update.
Reported by Akim Demaille.
|
|
391df12b
|
2005-01-09T14:46:22
|
|
* m4/amversion.in, m4/as.m4, m4/auxdir.m4, m4/ccstdc.m4,
m4/cond.m4, m4/depend.m4, m4/depout.m4, m4/dmalloc.m4, m4/gcj.m4,
m4/header.m4, m4/init.m4, m4/install-sh.m4, m4/lead-dot.m4,
m4/lex.m4, m4/lispdir.m4, m4/maintainer.m4, m4/make.m4,
m4/minuso.m4, m4/missing.m4, m4/mkdirp.m4, m4/multi.m4,
m4/obsol-gt.m4, m4/obsol-lt.m4, m4/obsolete.m4, m4/options.m4,
m4/protos.m4, m4/python.m4, m4/regex.m4, m4/runlog.m4,
m4/sanity.m4, m4/strip.m4, m4/tar.m4: Use the same all-permissive
license that is used in aclocal.m4. Relicensing backed by RMS.
|
|
18ff1652
|
2004-06-07T06:04:40
|
|
* m4/tar.m4 (_AM_PROG_TAR): Split the definition of $_am_tools
so it works with Solaris and Tru64 /bin/sh.
Report from Nicolas Joly.
|
|
8b9ac42a
|
2004-06-06T20:42:14
|
|
* m4/tar.m4 (_AM_PROG_TAR): Introduce $_am_tools to work around a
bug in NetBSD /bin/sh.
Report from Nicolas Joly.
|
|
fbeb424c
|
2004-05-23T16:19:43
|
|
* m4/tar.m4 (_AM_PROG_TAR) <cpio>: Specify -o and -i option first,
by POSIX; and use option -d in am_untar.
|
|
ae040111
|
2004-04-19T23:20:08
|
|
For PR automake/414:
Introduce options tar-v7, tar-ustar, and tar-pax to select
tar format.
* doc/automake.texi (Options): Document them.
* lib/Automake/Options.pm (_process_option_list): Process
these new options.
* lib/am/distdir.am (dist-gzip, dist-bzip2, dist-tarZ, dist,
distcheck): Adjust to use am__tar and am__untar.
* m4/tar.m4: New file.
* m4/Makefile.am (dist_m4data_DATA): Add tar.m4.
* m4/init.m4 (AM_INIT_AUTOMAKE): Support the new options
and call _AM_PROG_TAR.
* tests/tar.test, tests/tar2.test, tests/tar3.test: New files.
* tests/Makefile.am (TESTS): Add them.
|