lintpkgsrc -o|-r and works much faster.
pkg_cleanup_distdir - analyses ALLSRCFILES field of src_summary
given on input and optionally removes files and directories in DISTDIR
not referenced by any package.
Major changes:
pkg_src_summary analyses DEPENDS and BUILD_DEPENDS for correctness.
That is if appropriate directories don't exist, building summary
fails with stderr messages.
'pkg_micro_src_summary -f' supports comma separated fields
pkg_cmp_summary: new option -P for comparison PKGPATH without PKGNAME
tools based on runawk uses alt_getopt.awk module
for handling options, regression tests
pkg_src_fetch_var doesn't accept -f=<value>
minor clean-ups in pkg_update_src_summary
new executable pkg_uniq_summary for filtering out repeated summaries
Man pages are rewritten in 'man' macroses. Now they may be seen
under Solaris too.
Homemade macro VB and VE are used to implement EXAMPLES section,
these macro implements "verbatim" output.
pkg_src_summary fix: when reading DESCR files failed a bad error
message was output (`` was output instead of real filename).
regression tests (test.sh)
all scripts are preprocessed before installation
(sed 's,@@bindir@@,${BINDIR},g' etc.)
pkg_src_summary: fix for packages having more than one file listed
in DESCR_SRC
FIX for pkg_src_summary -p: For a huge number of packages 'make
plist' fails because this stage requires package's sources
extracted. Now 'make plist' failures are not critical,
i.e. summary for such package is generated in any case.
fix in pkg_src_fetch_var.in: comments are removed
PKGNAME=pkgname-ver ### trtrtr -> PKGNAME=pkgname-ver
fix in pkg_micro_src_summary: If PKGREVISION is set to 0 (or empty)
in Makefile (bug?), then nb0 is *not* added to PKGNAME
failes because this stage requires package's sources extracted.
I made failure of 'make plist' not critical, i.e. summary for given
package is generated in any case.
FIX for -A option: strip ending / symbol from dependencies
(DEPENDS and BUILD_DEPENDS)
www/typo3/Makefile revision 1.5
DEPENDS+= ... ../../archivers/php-zlib/
^^^
/
extra slash character here --------/
pkg_src_summary:
Fields with empty values (like NOT_FOR=) are not printed.
The following fields are added to the default list of fields
generated by pkg_src_summary: NO_BIN_ON_FTP, NO_SRC_ON_FTP,
NO_BIN_ON_CDROM, NO_SRC_ON_CDROM.
New field ALLSRCFILES (also generated by default) - sum of
DISTFILES and PATCHFILES prepanded with DIST_SUBDIR.
pkg_grep_summary:
pkg_grep_summary FIELD 'fvalue == ""' also matches packages
with no FIELD at all. That is no field becomes synonym to
FIELD=
new option -e
pkg_grep_summary -e FIELD is shorter equivalent for
pkg_grep_summary FIELD 'fvalue == ""'
pkg_grep_summary -e NO_BIN_ON_FTP <equivalent_to>
pkg_grep_summary NO_BIN_ON_FTP 'fvalue == ""'
empty field ( e.g. NO_BIN_ON_FTP= ) is equivalent to absent field.
For example 'pkg_grep_summary -e NO_BIN_ON_FTP' now matches
the following package summaries
PKGNAME=dictem-0.82
PKGPATH=textproc/dictem
PKGNAME=distbb-0.19.1
PKGPATH=wip/distbb
script "pkg_assignments2pkgpath". One application for it is distbb.
pkg_src_summary: PKGPATH enriched with variable assignments and passed
to pkg_src_summary may contain spaces. They should be represented
as ~.
Example: pkg_src_summary \
sysutils/mc:PKG_OPTIONS.mc=-x11~-subshell~-slang~-samba~ncurses~-edit
Major changes
pkg_grep_summary: in order to support summaries for multi-variant
packages it is strongly recommented to use 'fvalue' variable in
condition, not $2. Man page and README update accordingly.
pkg_cmp_summary: -m option added for comparing summaries for
multi-variant packages
(PKGPATH=category/name:variable_assignments format).
pkg_cmp_summary -m implies -p
FIX in pkg_src_summary: I forgot that grep's exit status may be 1 which is
fatal if 'set -e'
pkg_cmp_summary:
support for multi-variant package summaries.
Option -m added for this.
pkg_grep_summary: in order to support summaries for multi-variant packages
it is strongly recommented to use 'fvalue' variable in condition
instead of '$2'. Man page and README update accordingly.
The following format of input PKGPATH is supported:
real_pkgpath[:var1=value1[,var2=value2[...]]]
Example:
0 ~>pkg_src_summary textproc/dictem:EMACS_TYPE=xemacs
PKGPATH=textproc/dictem
=> PKGNAME=xemacs-dictem-0.82
=> ASSIGNMENTS=EMACS_TYPE=xemacs
0 ~>pkg_src_summary www/ap2-wsgi:PYTHON_VERSION_DEFAULT=23,PKG_APACHE_DEFAULT=apache2
PKGPATH=www/ap2-wsgi
=> PKGNAME=ap2-py23-wsgi-1.3
=> ASSIGNMENTS=PYTHON_VERSION_DEFAULT=23 PKG_APACHE_DEFAULT=apache2
0 ~>
Initial support for building src_summary for multi-variant packages (-m),
new special artificial output field VARIANTS7 is supported.
Unfortunately pkgsrc developers declined this idea
http://mail-index.netbsd.org/tech-pkg/2008/07/20/msg001320.html
VARIANTS7 because I hope they will change their mind.
Example:
0 ~>./pkg_src_summary -a 'VARIANTS7' www/ap2-wsgi
PKGPATH=www/ap2-wsgi
PKGNAME=ap22-py24-wsgi-1.3
=> VARIANTS7=PYTHON_VERSION_DEFAULT=25,24,23 PKG_APACHE_DEFAULT=apache2,apache22
0 ~>./pkg_src_summary -a 'VARIANTS7' lang/lua
PKGPATH=lang/lua
PKGNAME=lua-5.1.3nb1
=> VARIANTS7=
0 ~>./pkg_src_summary -a 'VARIANTS7' www/php-apc
PKGPATH=www/php-apc
PKGNAME=php5-apc-5.2.6.3.0.16
=> VARIANTS7=PHP_VERSION_DEFAULT=4,5
0 ~>