Shared directories can now be created independently by the pacakges
needing them and will be removed automatically by pkg_delete when empty.
Packages needing empty directories can use the @pkgdir command in PLIST.
Discussed and ok'd in thread starting at
http://mail-index.netbsd.org/tech-pkg/2009/06/30/msg003546.html
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
Stop lying and drop maintainership of these packages. I have not
maintained them for a very long time already, so leave room for
fresh blood to take over them.
============
Version 0.15
============
o make the extension check for Icon key a warning instead of an error for now
(Ray Strode)
o Fix a crash in update-desktop-database when there's no group (Vincent)
o Fix a crash in the validator happening for very small lines (Vincent)
============
Version 0.14
============
o update of the Emacs editing mode for .desktop files (Ville Skyttä)
o make desktop-file-install print an error when trying to install a
non-existing desktop file, or a desktop file that can't be read (Vincent)
o make the validator check the content of the Icon key (Vincent)
o make the validator accept X-Foo as a valid environment (this was added to
the spec) (Stanislav Brabec, Vincent)
o really handle the -m command line argument for desktop-file-install
(Matthias Clasen)
o make desktop-file-install accept as one valid argument multiple
categories/only-show-in/mime-types values. Now --add-category="GNOME;GTK"
works as expected. (Vincent)
o make desktop-file-install validate the created desktop file before removing
the original file, and unlink it if it's not valid (Vincent)
o code cleanups for desktop-file-install (Vincent)
============
Version 0.13
============
o rewrite validator, and update it for desktop entry specification 1.0.
The validator should be stricter and report more useful messages.
(Vincent)
o add --warn-kde and --no-warn-deprecated command line options to
desktop-file-validate (Vincent)
o port desktop-file-install to GKeyFile (Vincent)
o don't require --vendor for desktop-file-install (Vincent)
o some general module cleanup (Vincent)
============
Version 0.12
============
o improves category validation code to not catch false positives (Vincent Fretin, Ville Skyttä, Ray Strode, Vincent Untz)
o make category validation code non-fatal (Ray)
o fix mem leaks and double frees (Pascal Terjan)
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
the pkglint warning:
As {INSTALL,DEINSTALL}_TEMPLATE is modified using "+=", its name
should indicate plural.
This does make the variables a bit more suggestive of the fact that they
hold lists of values.
This avoids the need for a confusing line of the form:
DEINSTALL_TEMPLATE+= path/to/INSTALL
in the package Makefile, and actually removes the need to specify it
altogether since by convention, the existence of the DEINSTALL script
is enough to add it to DEINSTALL_TEMPLATE.
============
Version 0.11
============
o Validate desktop file categories (Emmet Hikory, Vincent Untz)
o Use GKeyFile instead of the old egg code in update-desktop-database (Vincent)
o Use GOption instead of popt (Vincent)
o Fix grammar problem in one of the strings (Moritz Barsnick)
o NULL terminate search patch in update-desktop-database (Mike Hearn)
o Fix language to encoding mapping to match spec (Ville Skyttä)
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
INSTALL/DEINSTALL script creation within pkgsrc.
If an INSTALL or DEINSTALL script is found in the package directory,
it is automatically used as a template for the pkginstall-generated
scripts. If instead, they should be used simply as the full scripts,
then the package Makefile should set INSTALL_SRC or DEINSTALL_SRC
explicitly, e.g.:
INSTALL_SRC= ${PKGDIR}/INSTALL
DEINSTALL_SRC= # emtpy
As part of the restructuring of the pkginstall framework internals,
we now *always* generate temporary INSTALL or DEINSTALL scripts. By
comparing these temporary scripts with minimal INSTALL/DEINSTALL
scripts formed from only the base templates, we determine whether or
not the INSTALL/DEINSTALL scripts are actually needed by the package
(see the generate-install-scripts target in bsd.pkginstall.mk).
In addition, more variables in the framework have been made private.
The *_EXTRA_TMPL variables have been renamed to *_TEMPLATE, which are
more sensible names given the very few exported variables in this
framework. The only public variables relating to the templates are:
INSTALL_SRC INSTALL_TEMPLATE
DEINSTALL_SRC DEINSTALL_TEMPLATE
HEADER_TEMPLATE
The packages in pkgsrc have been modified to reflect the changes in
the pkginstall framework.
file's sole purpose was to provide a dependency on pkg-config and set
some environment variables. Instead, turn pkg-config into a "tool"
in the tools framework, where the pkg-config wrapper automatically
adds PKG_CONFIG_LIBDIR to the environment before invoking the real
pkg-config.
For all package Makefiles that included pkg-config/buildlink3.mk, remove
that inclusion and replace it with USE_TOOLS+=pkg-config.
by other package Makefiles, and with the deprecation of USE_BUILDLINK3
support in the infrastructure files, these had the potential to break
existing packages.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
desktop-file-utils contains a couple of command line utilities for working
with desktop entries and the applications database. More specifically,
it contains the update-desktop-database utility, used to rebuild the database
that connects MIME types to applications.