Support pathname to configuration files, support latest libkver and
emit the usual BSD_PKG_MK ifdef protection in the generated /etc/mk.conf.
Approved by jmmv@.
Libkver is now run-time configurable, see installed kver(3), it now
installs in LOCALBASE and uses install/deinstall scripts to replace/restore
/sbin/sysctl if needed.
the font program symlinks at both view-deinstall and normal deinstallation
time since the files aren't listed in the PLIST (the font programs are
handled completely by the INSTALL/DEINSTALL scripts).
normally apply: treat them as if the distinfo file was empty.
This solves the reason why pkgtools/pkg_install/distinfo was resurrected,
and allows us to remove it again, since it had the side effect of
introducing a dependency on digest, which is not acceptable when updating
pkg_install: it made it impossible to use the pkgsrc tree, as reported
by several people.
patches (any more). This prevents SUP users who dont use the "delete" flag
properly to accidentally apply the patches they still have
(which is the reason why we keep patches in the distinfo file at all).
yes, this deliberately does not expand ${X11BASE}, as that would
lead to the same confusion (X11R6 vs. openwin, etc.) when we use
this pkg's COMMENT on the web site/search.
Changes include supporting XFree86-4.3.99.14 aka XFree86-current.
Added some new library versions and some freetype2 include files.
And bump the required version number in the bsd.buildlink mk's.
perl 5.6.1 realpath() cannot handle files, only directories.
Handle this case, with the only downside that if the last component in
an include path is a symlink the 'performance boost' duplicate check
may not work. Reported by Todd Vierling
Update -L:
Do not reset the logfile at the start of each package. Also
try to make the 'tail' of the logfile in the event of an
error more useful.
Implement -l:
List the filename for all binary packages (including the
exact dependencies against which each package was built)
based on pkgchk.conf. Will abort if a binary package is
missing. This can be used (in conjunction with -U and -D)
to determine what packages would need to be copied to a
remote machine to ensure it was completely up to date.
lintpkgsrc - handle the buildlink include fest:
- Using realpath() to fix exclude of duplicate includes speeds
up 'lintpkgsrc -rp' on a PIII-500 from 40 minutes to 3
- Excluding buildlink[^/]*.mk files unless -d is specified further
speeds up to just under 1 minute
pkg_install calls, and pass the full path for each from the pkg Makefile.
fixes issue with pkg_add and pkg_create calling non-existent or
less-than-functional tools since it relied on $PATH.
- Do not include pkgconfig's nor intltool's dependancies in new generated bl2
files. These are *build* dependancies, and the package providing the bl2
should not assume we will be using them.
ensuring that recursive pkg_delete'ing works by using the correct
pkg_dbdir to find packages. This fixes recursive deleting if the
-K flag is passed to pkg_delete(1), and the named dbdir differs from
the default dbdir (/var/db/pkg).
the file removal when deleting linkfarms if the expected file doesn't
exist. Since the symlink isn't there, the mission is already accomplished,
so why bother with the warning?
adding two new options to pkg_admin(1) to simply using this utility to
list the bare package names that match patterns when looking in PKG_DBDIR:
-b Print only the basenames when matching package names for
lsall and lsbest.
-d lsdir
Set lsdir as the path to the directory in which to find
matching package names for lsall and lsbest.
files and building it locally. By removing dependencies from pkg_install,
we avoid the circularity of invoking the dependency targets in bsd.pkg.mk
that may in turn invoke the pkg_* tools.
systems which have both statfs() and statvfs().
while it would be nice to have an OS-independent way of testing
whether to use our statfs() implementation, in reality it is much more
reliable to only use it where required.
sed at install time which override the versions in the /usr/openwin
tree.
PREFIX no longer has a default value, as this relied on nonportable
BSD make syntax. Makefiles generated with pkgxmkmf will now always
need PREFIX set in the environment.
* Teaching pkg_add(1) to be smarter about how to add a depoted packge.
* "pkg_delete foo" only deletes foo if it's a unique package.
* Make "pkg_delete -O foo" for delete file entries for foo from
pkgdb.byfile.db actually work.
* Teach pkg_admin(1) two new commands "add" and "delete" for working
with pkgdb.byfile.db.
* pkg_view(1) uses the new pkg_admin(1) commands to keep the
pkgdb.byfile.db files consistent in each view.
* Man page fixes.
* Sync with audit-packages: use the new pkg-vulnerabilities file.
* Check if the version of pkg_install inside the chroot is up to date before
building anything. If not, force a rebuild automatically.
* Disable all those ugly sync's after fsumount (were added because I had
some strange problems, IIRC). You can reenabled them by setting
SYNC_UMOUNT=yes in the configuration file.
using statvfs() on systems that provide it. I'm assuming that the
SVR4 statvfs() is a standardized call across systems that have it.
This should allow IRIX to build the statfs call into libnbcompat.
getopt.h implies having getopt_long. Also Fix checks for setmode, pwcache,
and vis so that if any of a list of functions is missing, then use the
nbcompat versions.
version are removing sha2* object files from libnbcompat.a. It turns
out that the functions defined there aren't provided by NetBSD, so it
makes no sense for libnbcompat to define them, and none of the
utilities in pkgsrc that link against libnbcompat actually use these
functions anyway.
include:
* Move headers out of the global namespace and into the nbcompat
directory. Since there are no headers other than nbcompat.h in
${PREFIX}/include/libnbcompat, just install it directly in
${PREFIX}/include. Using libnbcompat is now a matter of including
nbcompat.h at the top of *.c files and linking against -lnbcompat.
* Only build functions into libnbcompat.a if they aren't already in
the system libraries.
* Move several *.[ch] files that are pax- or mtree-specific out
of libnbcompat (they should belong with those packages).
On NetBSD 1.6 systems, libnbcompat.a now contains just the bare minimum:
the sha2 routines.
symbol and comment in nbconfig.h.in for us in the correct place. The
previous way of using AH_BOTTOM also worked but separated the symbol
definition from the accompanying C comment text, which was a little harder
to maintain.
* Check for errors in reading from the file descriptor for the ftp
process, and correct the error messages.
* Nuke some code for older NetBSDs that's better handled in
pkgtools/libnbcompat.
* Don't prevent user from using views other than the default view.
* Properly declare statfs() and fstatfs() if we use the libnbcompat
versions.
* Move some headers into a private directory in the installed
location so that they don't override headers of the same name
on the system.
* Define TAILQ_HEAD_INITIALIZER if it doesn't exist.
* Add a poll() implementation using select() for poll()-less systems.
Thanks for Charles Blundell for the implementation!
* Fix the vis.h check for systems whose vis() is not as featureful
as NetBSD's.
are moving the definitions of the TAILQ accessor methods into the top level
of nbcompat.h. This should fix using nbcompat.h to replace sys/queue.h
on Linux systems.
* Don't install namespace.h, extern.h and stat_flags.h, which are
only used internally.
* Clean up util.h by using '#if !HAVE_xxx' instead of
'#ifndef !HAVE_xxx', removing some LIST_* definitions that are
defined by <nbcompat.h>, and removing static declarations.
* If fparseln is in libutil (as it is in NetBSD), then don't build
it into libnbcompat.a.
package views. Pkgsrc changes include:
* Convert to use pkgtools/libnbcompat so that it's easier to keep
this in sync with src/usr.sbin/pkg_install.
* Add a src2nbcompat script that converts src/usr.sbin/pkg_install
into an appropriate start for pkgtools/pkg_install. The script
removes the Makefiles, adds CPP inclusion guards around each
#include <...> line, and includes <nbcompat.h> at the top of each
*.c file. This should make it even easier to keep sources in
sync with the HEAD.
* Add mkdtemp, TAILQ_*, and statfs.
* Install a nbconfig.h file containing the discovered system information
and include it directly in nbcompat.h. Make all files use nbconfig.h
instead of config.h. Ensure that all installed headers don't include
any local header files. This makes libnbcompat more self-contained.
* Consistently use "#if HAVE_HEADER_H" instead of "#ifdef HAVE_HEADER_H"
since sometimes people put -DHAVE_HEADER_H=0 on their command lines.
USE_PKGINSTALL is "YES". bsd.pkg.install.mk will no longer automatically
pick up a INSTALL/DEINSTALL script in the package directory and assume that
you want it for the corresponding *_EXTRA_TMPL variable.
- Introduce two new variables, MOUNT_SCRIPT and UMOUNT_SCRIPT, that let the
user specify a script file run after mounting known filesystems and before
unmounting them, respectively. Patch by seb@, thanks!
* Use bsd.pkg.install.mk instead of supplying custom INSTALL/DEINSTALL
scripts.
* Note that this package doesn't really use buildlink.
* Remove ancient BUILDLINK_DEPENDS= line at the bottom of the file that
we no longer need since the buildlink1 days of yore.
on tech-pkg@ at various times. This means that regardless of what kind of
GL support comes with X11, if a package depends on GL, Mesa 5.0.1 (or higher)
will be installed into ${LOCALBASE}.
Some troubleshooting after the latest patches by Krister Walfridsson.
Pkgvi fix: deal with pathnames like `dir-with.a-dot/file-without-dot'
for which the temporary file pathname hold in $tmp ended up as
`dir-with.a-dot/file-without-dot.$$.a-dot/file-without-dot'.
Teach pkglint about new rules related to info files handling.
- remove old checks of PLIST related to install-info.
- emit a FATAL error for "@exec install-info" and similar in PLIST.
- emit a FATAL error for inclusion of texinfo.mk.
patch to the well-known digest package. The output is the same for
files, but if rdigest is given a directory as an argument, it will
recursively checksum the directory in such a manner as to:
(1) give a repeatable checksum
(2) with no regard for file ownership
(3) or timestamps
(4) or modes
(5) while taking into account empty files and directories
such that the checksum of an extracted tar file will match the
checksum of the same tree as retrieved via cvs, or two allegedly
matching trees from different cvs servers, etc.
- Add the NETBSD_RELEASE variable. This is used to automatically configure
pkgtools/libkver inside the chroot so that packages see the right kernel
version when issuing calls to sysctl(8). Suggested by seb@.
- Turn on emacs editing mode by default in sh/ksh.