binary-only packages that require binary "emulation" on the native
operating system. Please see pkgsrc/mk/emulator/README for more
details.
* Teach the plist framework to automatically use any existing
PLIST.${EMUL_PLATFORM} as part of the default PLIST_SRC definition.
* Convert all of the binary-only packages in pkgsrc to use the
emulator framework. Most of them have been tested to install and
deinstall correctly. This involves the following cleanup actions:
* Remove use of custom PLIST code and use PLIST.${EMUL_PLATFORM}
more consistently.
* Simplify packages by using default INSTALL and DEINSTALL scripts
instead of custom INSTALL/DEINSTALL code.
* Remove "SUSE_COMPAT32" and "PKG_OPTIONS.suse" from pkgsrc.
Packages only need to state exactly which emulations they support,
and the framework handles any i386-on-x86_64 or sparc-on-sparc64
uses.
* Remove "USE_NATIVE_LINUX" from pkgsrc. The framework will
automatically detect when the package is installing on Linux.
Specific changes to packages include:
* Bump the PKGREVISIONs for all of the suse100* and suse91* packages
due to changes in the +INSTALL/+DEINSTALL scripts used in all
of the packages.
* Remove pkgsrc/emulators/suse_linux, which is unused by any
packages.
* cad/lc -- remove custom code to create the distinfo file for
all supported platforms; just use "emul-fetch" and "emul-distinfo"
instead.
* lang/Cg-compiler -- install the shared libraries under ${EMULDIR}
instead of ${PREFIX}/lib so that compiled programs will find
the shared libraries.
* mail/thunderbird-bin-nightly -- update to latest binary
distributions for supported platforms.
* multimedia/ns-flash -- update Linux version to 9.0.48 as the
older version is no longer available for interactive fetch.
* security/uvscan -- set LD_LIBRARY_PATH explicitly so that
it's not necessary to install library symlinks into
${EMULDIR}/usr/local/lib.
* www/firefox-bin-flash -- update Linux version to 9.0.48 as the
older version is no longer available for interactive fetch.
changes-entry now does cvs update (and cvs edit if needed), and adds
the line. This target will behave the same way (with extra CVS
traffic) if the file is up to date, and will be omre useful if
CHANGES-YYYY is not up to date.
commit-changes-entry depends on changes-entry and also commits. This
target has no behavior changes.
Rename _CCE_FOO variables to PKGSRC_CHANGES_FOO, and merge with
existing varables.
We may need a changes-entry-no-update, or a new name for what
changes-entry does now. Given how infrequently CHANGES-YYYY is up to
date when I want to add, I believe the new behavior will be welcome to
almost everyone.
plist module, it was being "defined" too late, and the pkginstall module
never created any +SHLIBS scripts. Sidestep the tools problems with
SHLIB_TYPE by pretending they don't exist (for now).
XXX SHLIB_TYPE needs to be re-thought or removed altogether.
We can't use our own imake to check for builtin packages so disable the
check and always report that no builtin implementation exists.
No objections on tech-pkg@
former set several USE_TOOLS lines that were being missed by bsd.tools.mk.
Rearrange the +SHLIBS code so that bsd.tools.mk can now be included
after bsd.pkginstall.mk again. The +SHLIBS code has now been moved
over to the plist module, which is so far the repository for all of
the shlib-type handling.
This should fix the problem with fonts handling being broken.
CVSREAD=t, and should result in unchanged behavior with writable
files. Split _CCE_CHANGES definition into _CCE_CHANGES_{DIR/BASE} to
facilitate above.
Use lower case to be consistent with existing license names.
Declare that free/open licenses do not have -license at the end.
Better articulate rationale for default choice.
Add x11 license (also called mit).
Note 'wait and see' stance towards gnu-gpl-v3.
on platforms that need it.
XXX Right now, if the platform needs it, then it runs for every package.
XXX This needs to be fixed to only run for packages that install shared
XXX libraries.
* Move mk/plist/shlib-type to mk/scripts.
* Move definition of SHLIB_TYPE from mk/plist/plist.mk to bsd.pkg.mk.
* Move inclusion of bsd.pkginstall.mk below bsd.tools.mk so that it
can use SHLIB_TYPE. This is necessary because SHLIB_TYPE's value
is the result of evaluating a command, and the command needs "TOOL"
definitions provided by bsd.tools.mk.
allowing PLIST_SRC to be overridden in a package Makefile.
It's now possible to do:
PLIST_SRC= ${PLIST_SRC_DFLT} ${WRKDIR}/PLIST_DYNAMIC
and still use the default PLIST.* fragment handling.
+INSTALL and +DEINSTALL scripts:
PKGINSTALL_VERBOSE
A list of scriptlets that will be verbose and output a message
noting the actions taken.
* "all" is a special value that implies all of the other items
* "fonts" for +FONTS
* "info-files" for +INFO_FILES
Default value: "all" for PKG_DEVELOPERs, empty otherwise.
* Be "one-liner brief" when doing the default actions. For example,
the info files output now looks like:
gmake-3.81: registering info file /usr/pkg/info/make.info
We retain the current verbosity for the CHECK-* actions.
We fix GNU configure script stupidity by directly replacing the stock
install-sh script provided by the software with the BSD install-compatible
sysutils/install-sh script.
A new package-settable variable comes to life:
INSTALL_SH_OVERRIDE is a list of files relative to WRKSRC which
should be overridden by the install-sh script from
sysutils/install-sh. If not defined or set to "no", then
no files are overridden.
Possible values: no, defined, undefined.
Default value: defined when GNU_CONFIGURE is defined, undefined
otherwise.
Get rid of the install_sh tool, which is no longer needed.
accepting the license"; that sounds too close to a contract issue.
Pkgsrc's license framework is merely about not building a package with
a license not on the ok list by accident, and is not intended to have
any contractual effects.
Split comment about 'package user" into separate concepts of
installing binary packages and running programs in packages.
Add XXX about how DEFAULT_ACCEPTABLE_LICENSES relates to the initial
value of ACCEPTABLE_LICENSES.
the owner of all installed files is a non-root user. This change
affects most packages that require special users or groups by making
them use the specified unprivileged user and group instead.
(1) Add two new variables PKG_GROUPS_VARS and PKG_USERS_VARS to
unprivileged.mk. These two variables are lists of other bmake
variables that define package-specific users and groups. Packages
that have user-settable variables for users and groups, e.g. apache
and APACHE_{USER,GROUP}, courier-mta and COURIER_{USER,GROUP},
etc., should list these variables in PKG_USERS_VARS and PKG_GROUPS_VARS
so that unprivileged.mk can know to set them to ${UNPRIVILEGED_USER}
and ${UNPRIVILEGED_GROUP}.
(2) Modify packages to use PKG_GROUPS_VARS and PKG_USERS_VARS.
For now, DragonFly and FreeBSD use the libc version, it is not reentrant,
but thread-safe. NetBSD 3.0+ and Darwin 8.0+ use libresolv from base
(the BIND9 resolver), all other fall back to net/bind9. Feel free to add
your favorite platform if it has a thread-safe resolver in base.
Modify mail/libspf-alf, mail/milter-greylist, mail/spamdyke and
net/nocol accordingly. Testing on !DragonFly and feedback from tron@