Re: exclude17.at and exclude18.at tests are missing in the tar-1.35 tarball

2023-07-24 Thread Lukas Javorsky
Yes, that's exactly what I've done, thanks, Paul.

On Fri, Jul 21, 2023 at 9:43 PM Paul Eggert  wrote:

> On 2023-07-21 01:54, Pavel Raiskup wrote:
> > I think the problems happen because we do do `autoreconf -v` for the
> > GNU tar package in Fedora (we have several patches applied on top of the
> > upstream tarball).  Some distributions (not Fedora) do this by default
> > per their policies, so I would eventually view this as a (low-priority?)
> > tarball issue.
>
> If you patch the tarball's files, then it's your responsibility to make
> sure the resulting files work. To do that, I suggest adding to your
> patchlist a patch that adds the missing files. This should work around
> the problem. You can omit this patch once tar 1.36 comes out.
>
>

-- 
S pozdravom/ Best regards

Lukáš Javorský

Software Engineer, Core service - Databases

Red Hat 

Purkyňova 115 (TPB-C)

612 00 Brno - Královo Pole

[email protected]



Re: exclude17.at and exclude18.at tests are missing in the tar-1.35 tarball

2023-07-21 Thread Paul Eggert

On 2023-07-21 01:54, Pavel Raiskup wrote:

I think the problems happen because we do do `autoreconf -v` for the
GNU tar package in Fedora (we have several patches applied on top of the
upstream tarball).  Some distributions (not Fedora) do this by default
per their policies, so I would eventually view this as a (low-priority?)
tarball issue.


If you patch the tarball's files, then it's your responsibility to make 
sure the resulting files work. To do that, I suggest adding to your 
patchlist a patch that adds the missing files. This should work around 
the problem. You can omit this patch once tar 1.36 comes out.




Re: exclude17.at and exclude18.at tests are missing in the tar-1.35 tarball

2023-07-21 Thread Pavel Raiskup
On čtvrtek 20. července 2023 22:26:31 CEST Paul Eggert wrote:
> On 2023-07-20 12:28, Lukas Javorsky wrote:
> > It does fail as the testsuite doesn't find those two tests.
> 
> Odd, as it works for me from a fresh tarball straight from gnu.org. See 
> attached transcript, which I ran on Ubuntu 23.04 x86-64. Perhaps the 
> timestamps are messed up on your copy?

I think the problems happen because we do do `autoreconf -v` for the
GNU tar package in Fedora (we have several patches applied on top of the
upstream tarball).  Some distributions (not Fedora) do this by default
per their policies, so I would eventually view this as a (low-priority?)
tarball issue.

Pavel






Re: exclude17.at and exclude18.at tests are missing in the tar-1.35 tarball

2023-07-20 Thread Paul Eggert

On 2023-07-20 12:28, Lukas Javorsky wrote:

It does fail as the testsuite doesn't find those two tests.


Odd, as it works for me from a fresh tarball straight from gnu.org. See 
attached transcript, which I ran on Ubuntu 23.04 x86-64. Perhaps the 
timestamps are messed up on your copy?



What I've done is that I've copied both of the files and added them to the
package and it works just fine.
Do you think that there is any issue with that approach?


That should work if you have the timestamps right. But if you have the 
timestamps right the tarball should work as-is.$ wget https://ftp.gnu.org/gnu/tar/tar-1.35.tar.gz
--2023-07-20 13:17:57--  https://ftp.gnu.org/gnu/tar/tar-1.35.tar.gz
Resolving ftp.gnu.org (ftp.gnu.org)... 209.51.188.20, 2001:470:142:3::b
Connecting to ftp.gnu.org (ftp.gnu.org)|209.51.188.20|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4646366 (4.4M) [application/x-gzip]
Saving to: ‘tar-1.35.tar.gz’

tar-1.35.tar.gz 100%[===>]   4.43M  6.12MB/sin 0.7s

2023-07-20 13:17:59 (6.12 MB/s) - ‘tar-1.35.tar.gz’ saved [4646366/4646366]

$ tar xf tar-1.35.tar.gz
$ cd tar-1.35
$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1000' is supported by ustar format... yes
checking whether GID '1000' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether make supports nested variables... (cached) yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether the compiler is clang... no
checking for compiler option needed when checking for declarations... none
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... gcc3
checking for ranlib... ranlib
checking for bison... bison -y
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
checking for minix/config.h... no
checking for fcntl.h... yes
checking for linux/fd.h... yes
checking for memory.h... yes
checking for net/errno.h... no
checking for sgtty.h... yes
checking for sys/param.h... yes
checking for sys/device.h... no
checking for sys/gentape.h... no
checking for sys/inet.h... no
checking for sys/io/trioctl.h... no
checking for sys/mtio.h... yes
checking for sys/time.h... yes
checking for sys/tprintf.h... no
checking for sys/tape.h... no
checking for locale.h... yes
checking for features.h... yes
checking for linewrap.h... no
checking for uchar.h... yes
checking for sys/socket.h... yes
checking for dirent.h... yes
checking for error.h... yes
checking for linux/xattr.h... yes
checking for fnmatch.h... yes
checking for stdio_ext.h... yes
checking for getopt.h... yes
checking for sys/cdefs.h... yes
checking for threads.h... yes
checking for limits.h... yes
checking for crtdefs.h... no
checking for wctype.h... yes
checking for langinfo.h... yes
checking for xlocale.h... no
checking for sys/mman.h... yes
checking for priv.h... no
checking for malloc.h... yes
checking for selinux/selinux.h... yes
checking for stdbool.h... yes
checking for stdckdint.h... no
checking for sys/random.h... yes
checking for sysexits.h... yes
checking for utime.h... yes
checking for netdb.h... yes
checking for sys/wait.h... yes
checking for pwd.h... yes
checking for grp.h... yes
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for Minix Amsterdam compiler... no
checking for ar... ar
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for gcc option to enable large file support... none needed
checking for gcc option for timestamps after 2038... none needed
checking for gcc option to enable large file support... (cached) none needed
checking for gcc option for timestamps after 2038... (cached) none needed
checking for sys/buf.h... no
checking for sys/mkdev.h... 

Re: exclude17.at and exclude18.at tests are missing in the tar-1.35 tarball

2023-07-20 Thread Lukas Javorsky
Hi Paul,

I'm not sure why it shouldn't be a problem when we run "./configure; make
check"
It does fail as the testsuite doesn't find those two tests.

What I've done is that I've copied both of the files and added them to the
package and it works just fine.
Do you think that there is any issue with that approach?

On Tue, Jul 18, 2023 at 6:39 PM Paul Eggert  wrote:

> On 2023-07-18 07:03, Lukas Javorsky wrote:
> > Tests `exclude17.at` and `exclude18.at` are missing in the tar-1.35
> tarball
> > [1] which causes the check phase to fail as it tries to execute missing
> > tests.
>
> This should not be a problem with the tar 1.35 tarball, as the files
> should not be needed if you run "./configure; make check". However, it
> can indeed be a problem if you modify source files before building. I
> installed the attached patch to fix this.
>
>
> On 2023-07-18 07:08, Adam Sampson wrote:
> > (It would be a good idea to require "make distcheck" as part of the
> > release process, which should catch this kind of problem.)
>
> Yes it would, thanks.



-- 
S pozdravom/ Best regards

Lukáš Javorský

Software Engineer, Core service - Databases

Red Hat 

Purkyňova 115 (TPB-C)

612 00 Brno - Královo Pole

[email protected]



Re: exclude17.at and exclude18.at tests are missing in the tar-1.35 tarball

2023-07-18 Thread Paul Eggert

On 2023-07-18 07:03, Lukas Javorsky wrote:

Tests `exclude17.at` and `exclude18.at` are missing in the tar-1.35 tarball
[1] which causes the check phase to fail as it tries to execute missing
tests.


This should not be a problem with the tar 1.35 tarball, as the files 
should not be needed if you run "./configure; make check". However, it 
can indeed be a problem if you modify source files before building. I 
installed the attached patch to fix this.



On 2023-07-18 07:08, Adam Sampson wrote:

(It would be a good idea to require "make distcheck" as part of the
release process, which should catch this kind of problem.)


Yes it would, thanks.From 39849e9d91f477d3fb839f93cd0815d0cb3273e9 Mon Sep 17 00:00:00 2001
From: Paul Eggert 
Date: Tue, 18 Jul 2023 09:15:03 -0700
Subject: [PATCH] tests: fix TESTSUITE_AT

Problem reported by Lukas Javorsky  in:
https://lists.gnu.org/r/bug-tar/2023-07/msg2.html
* tests/Makefile.am (TESTSUITE_AT): Add exclude17.at, exclude18.at.
Remove compress.m4; all uses changed.  Add a comment saying how
to rederive this.  Sort.
---
 tests/Makefile.am | 93 ---
 1 file changed, 48 insertions(+), 45 deletions(-)

diff --git a/tests/Makefile.am b/tests/Makefile.am
index 4a8f501f..1884b722 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -45,21 +45,24 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac
 ## Test suite.  ##
 ##  ##
 
+# You can generate the body of this macro with the following shell command:
+# LC_ALL=C ls *.at */*.at | sed -e 's/^/ /' -e '$!s/$/\\/'
 TESTSUITE_AT = \
- testsuite.at\
- compress.m4\
  T-cd.at\
  T-dir00.at\
  T-dir01.at\
  T-empty.at\
+ T-mult.at\
+ T-nest.at\
+ T-nonl.at\
  T-null.at\
  T-null2.at\
  T-rec.at\
  T-recurse.at\
  T-zfile.at\
- T-nonl.at\
- T-mult.at\
- T-nest.at\
+ acls01.at\
+ acls02.at\
+ acls03.at\
  add-file.at\
  append.at\
  append01.at\
@@ -68,14 +71,15 @@ TESTSUITE_AT = \
  append04.at\
  append05.at\
  backup01.at\
- chtype.at\
- comprec.at\
- comperr.at\
+ capabs_raw01.at\
  checkpoint/defaults.at\
- checkpoint/interval.at\
- checkpoint/dot.at\
  checkpoint/dot-compat.at\
  checkpoint/dot-int.at\
+ checkpoint/dot.at\
+ checkpoint/interval.at\
+ chtype.at\
+ comperr.at\
+ comprec.at\
  delete01.at\
  delete02.at\
  delete03.at\
@@ -83,6 +87,8 @@ TESTSUITE_AT = \
  delete05.at\
  delete06.at\
  difflink.at\
+ dirrem01.at\
+ dirrem02.at\
  exclude.at\
  exclude01.at\
  exclude02.at\
@@ -100,6 +106,8 @@ TESTSUITE_AT = \
  exclude14.at\
  exclude15.at\
  exclude16.at\
+ exclude17.at\
+ exclude18.at\
  extrac01.at\
  extrac02.at\
  extrac03.at\
@@ -127,11 +135,9 @@ TESTSUITE_AT = \
  extrac25.at\
  filerem01.at\
  filerem02.at\
- dirrem01.at\
- dirrem02.at\
- gzip.at\
  grow.at\
- incremental.at\
+ gzip.at\
+ ignfail.at\
  incr01.at\
  incr02.at\
  incr03.at\
@@ -143,8 +149,8 @@ TESTSUITE_AT = \
  incr09.at\
  incr10.at\
  incr11.at\
+ incremental.at\
  indexfile.at\
- ignfail.at\
  label01.at\
  label02.at\
  label03.at\
@@ -188,22 +194,16 @@ TESTSUITE_AT = \
  opcomp04.at\
  opcomp05.at\
  opcomp06.at\
- positional01.at\
- positional02.at\
- positional03.at\
  options.at\
  options02.at\
  options03.at\
  owner.at\
  pipe.at\
- recurse.at\
+ positional01.at\
+ positional02.at\
+ positional03.at\
  recurs02.at\
- rename01.at\
- rename02.at\
- rename03.at\
- rename04.at\
- rename05.at\
- rename06.at\
+ recurse.at\
  remfiles01.at\
  remfiles02.at\
  remfiles03.at\
@@ -226,11 +226,19 @@ TESTSUITE_AT = \
  remfiles09b.at\
  remfiles09c.at\
  remfiles10.at\
+ rename01.at\
+ rename02.at\
+ rename03.at\
+ rename04.at\
+ rename05.at\
+ rename06.at\
  same-order01.at\
  same-order02.at\
+ selacl01.at\
+ selnx01.at\
  shortfile.at\
- shortupd.at\
  shortrec.at\
+ shortupd.at\
  sigpipe.at\
  sparse01.at\
  sparse02.at\
@@ -247,6 +255,13 @@ TESTSUITE_AT = \
  sptrcreat.at\
  sptrdiff00.at\
  sptrdiff01.at\
+ star/gtarfail.at\
+ star/gtarfail2.at\
+ star/multi-fail.at\
+ star/pax-big-10g.at\
+ star/ustar-big-2g.at\
+ star/ustar-big-8g.at\
+ testsuite.at\
  time01.at\
  time02.at\
  truncate.at\
@@ -255,21 +270,11 @@ TESTSUITE_AT = \
  update02.at\
  update03.at\
  update04.at\
- volsize.at\
- volume.at\
  verbose.at\
  verify.at\
  version.at\
- xform-h.at\
- xform01.at\
- xform02.at\
- xform03.at\
- star/gtarfail.at\
- star/gtarfail2.at\
- star/multi-fail.at\
- star/ustar-big-2g.at\
- star/ustar-big-8g.at\
- star/pax-big-10g.at\
+ volsize.at\
+ volume.at\
  xattr01.at\
  xattr02.at\
  xattr03.at\
@@ -278,12 +283,10 @@ TESTSUITE_AT = \
  xattr06.at\
  xattr07.at\
  xattr08.at\
- acls01.at\
- acls02.at\
- acls03.at\
- selnx01.at\
- selacl01.at\
- capabs_raw01.at
+ xform-h.at\
+ xform01.at\
+ xform02.at\
+ xform03.at
 
 distclean-local:
 	-rm -rf download
@@ -291,7 +294,7 @@ distclean-local:
 TESTSUITE = $(srcdir)/testsuite
 
 AUTOTEST = $(AUTOM4TE) --language=autotest
-$(TESTSUITE): package.m4 $(TESTSUITE_AT)
+$(TESTSUITE): compress.m4 package.m4 $(TESTSUITE_AT)
 	$(AUTOTEST)