#24227 closed defect (fixed)
libzzip destroot fails on Leopard: no files matched glob pattern "*.3"
Reported by: | anddam (Andrea D'Amore) | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.8.2 |
Keywords: | leopard | Cc: | mf2k (Frank Schima), brian@…, cooljeanius (Eric Gallager) |
Port: | libzzip |
Attachments (1)
Change History (15)
Changed 15 years ago by anddam (Andrea D'Amore)
Attachment: | libzzip-mp-error.txt added |
---|
comment:1 Changed 15 years ago by anddam (Andrea D'Amore)
Cc: | macsforever2000@… added |
---|
comment:2 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Summary: | libzzip broken destroot → libzzip destroot: no files matched glob pattern "*.3" |
comment:3 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
The relevant part of the log seems to be:
/bin/sh ../../uses/mkinstalldirs /opt/local/var/macports/build/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_archivers_libzzip/work/destroot/opt/local/share/man/man3 P=`pwd` ; test -s manpages.tar || exit 1 \ ; cd /opt/local/var/macports/build/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_archivers_libzzip/work/destroot/opt/local/share/man && '/bin/pax' -r -O -f $P/manpages.tar \ ; true /bin/pax: illegal option -- O usage: pax [-cdnvzO] [-E limit] [-f archive] [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date]] ... [pattern ...] pax -r [-cdiknuvzDOYZ] [-E limit] [-f archive] [-o options] ... [-p string] ... [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date]] ... [pattern ...] pax -w [-dituvzHLOPX] [-b blocksize] [ [-a] [-f archive] ] [-x format] [-B bytes] [-s replstr] ... [-o options] ... [-U user] ... [-G group] ... [-T [from_date][,to_date][/[c][m]]] ... [file ...] pax -r -w [-diklntuvDHLOPXYZ] [-p string] ... [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date][/[c][m]]] ... [file ...] directory
I'm unclear why pax claims O is an illegal option; the usage message printed right below it clearly shows it to be a valid option, as does its manpage.
comment:4 Changed 15 years ago by anddam (Andrea D'Amore)
My man page doesn't mention -O as a valid option for -r mode, actually -O doesn't exist at all in man page, but the program output is the very same that you pasted.
The reference for Leopard's paxis here, package file_cmds and you can browse its source tree too.
I will check SnowLeopard's man page to check what -O is supposed to do, I wasn't able to find it in FreeBSD's either.
comment:5 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… removed |
---|---|
Keywords: | leopard added; libzzip ppc removed |
Owner: | changed from macports-tickets@… to ryandesign@… |
Status: | new → assigned |
Summary: | libzzip destroot: no files matched glob pattern "*.3" → libzzip destroot fails on Leopard: no files matched glob pattern "*.3" |
After some more testing, I see that this fails only on Leopard; it works fine on Tiger and Snow Leopard.
libzzip determines whether or not to use the "-O
" flag to "pax
" by grepping the output of "pax --help
" for the regexp "pax.*-[[a-zA-Z]]*O
".
On Tiger the output is as follows:
$ pax --help pax: illegal option -- - usage: pax [-cdnv] [-E limit] [-f archive] [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date]] ... [pattern ...] pax -r [-cdiknuvDYZ] [-E limit] [-f archive] [-o options] ... [-p string] ... [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date]] ... [pattern ...] pax -w [-dituvHLPX] [-b blocksize] [ [-a] [-f archive] ] [-x format] [-B bytes] [-s replstr] ... [-o options] ... [-U user] ... [-G group] ... [-T [from_date][,to_date][/[c][m]]] ... [file ...] pax -r -w [-diklntuvDHLPXYZ] [-p string] ... [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date][/[c][m]]] ... [file ...] directory
libzzip correctly sees that the "-O
" option is not listed and does not try to use it. This works fine.
On Leopard the output is as follows:
$ pax --help pax: illegal option -- - usage: pax [-cdnvzO] [-E limit] [-f archive] [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date]] ... [pattern ...] pax -r [-cdiknuvzDOYZ] [-E limit] [-f archive] [-o options] ... [-p string] ... [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date]] ... [pattern ...] pax -w [-dituvzHLOPX] [-b blocksize] [ [-a] [-f archive] ] [-x format] [-B bytes] [-s replstr] ... [-o options] ... [-U user] ... [-G group] ... [-T [from_date][,to_date][/[c][m]]] ... [file ...] pax -r -w [-diklntuvDHLOPXYZ] [-p string] ... [-s replstr] ... [-U user] ... [-G group] ... [-T [from_date][,to_date][/[c][m]]] ... [file ...] directory
libzzip correctly sees that the "-O
" option is listed and tries to use it, but although it has advertised that it supports the "-O
" option, "pax
" on Leopard evidently does not actually support it. Therefore this fails. There is some confusion here, in that the usage message printed by "pax --help
" differs from the usage message shown in "man pax
" -- the latter does not show the "-O
" option, but then again the manpage does describe the "-O
" option in detail:
-O Force the archive to be one volume. If a volume ends prematurely, pax will not prompt for a new volume. This option can be useful for automated tasks where error recovery cannot be performed by a human.
On Snow Leopard the output is as follows:
$ pax --help pax: unrecognized option `--help' usage: pax [-0cdjnOvz] [-E limit] [-f archive] [-G group] [-s replstr] [-T range] [-U user] [--insecure] [pattern ...] pax -r [-0cDdijknOuvYZz] [-E limit] [-f archive] [-G group] [-o options] [-p string] [-s replstr] [-T range] [-U user] [--insecure] [pattern ...] pax -w [-0adHijLOPtuvXz] [-B bytes] [-b blocksize] [-f archive] [-G group] [-o options] [-s replstr] [-T range] [-U user] [-x format] [--insecure] [file ...] pax -rw [-0DdHikLlnOPtuvXYZ] [-G group] [-p string] [-s replstr] [-T range] [-U user] [--insecure] [file ...] directory
libzzip incorrectly decides that the "-O
" option is not listed (because the list of flags begins with a number, zero) and therefore does not try to use it. This works fine. (It would also work fine if libzzip would use the "-O
" option because the "-O
" option does work with Snow Leopard's "pax
".)
I believe the strategy should be to introduce a patch which removes the checks for the "-O
" flag from the libzzip configure script, on Leopard only.
comment:6 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Committed in r65627. We still need to inform the developer about these problems.
comment:8 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
The developer responded by releasing zziplib 0.13.59 which fixes the problem by testing whether "pax -O
" actually works, rather than inferring this from "pax --help
". I updated the port to this version in r65648.
comment:9 Changed 14 years ago by brian@…
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Hi, I'm seeing this same error again trying to install libzzip 0.13.60 on Leopard. I'm not sure if it's the same root cause, though. Im hoping someone can take a look. Thanks!
comment:10 Changed 14 years ago by jmroot (Joshua Root)
The current version built OK for me, FWIW:
% port -v installed libzzip The following ports are currently installed: libzzip @0.13.60_0 (active) platform='darwin 9' archs='ppc'
comment:11 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | brian@… added |
---|
This ticket was resolved a year ago... it really would have been better to file a new ticket at this point. If you want help with this, you should provide the main.log so we can see what's going wrong.
comment:13 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
It works fine for me on Snow Leopard, but I see the same failure on a PowerPC machine with Leopard, like yours. I'll see if I can find out what's wrong.