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.
This version adds some enhancements to aupanel, and reworks signal
handling in the voxware server to avoid races, hangs and other issues
seen with linux 2.6.21+ kernels. Other changes relating to the default
value of the 'MixerInit' option and the new location of the local unix
socket on Linux systems were also made.
Also include a patch from Aleksey Cheusov for a
"libpthread: Unlocking unlocked mutex" bug.
Fixes to several DOS attacks that could be carried out
aginst a nasd server, ANSI'fication of most of the server and
client code, and significant rework of input and output mixer
handling in the voxware (OSS) server.
the tree resulting in some manual pages being installed into different
path than the others. I see rillig has reverted his equivalent patch
in mk/bsd.pkg.use.mk
or USE_X11BASE set, but don't include mk/x11.buildlink3.mk directly or
via buildlink3.mks
- introduce BUILDLINK_PREFIX.libXpm as alias for BUILDLINK_PREFIX.xpm
in the !modular case
- fix some cases where the check for libX11 couldn't work at all by using
C++ for compilation without including the proper headers
Verified using a full X11_TYPE=xorg bulk build without additional
breakage. Discussed with salo@, wiz@ and send to packages@ for feedback.
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
that ran configure, which failed on Darwin because imake didn't pass all
variables in CONFIGURE_ENV.
This fixes PR 33812. The package still does not build on Darwin due to
link errors.
- Correct problem in auvoxware, where if MixerInit is set to
false, remote volume (mixer) requests are ignored.
Reported by Paul Fox, with a fix determined by Steve
McIntyre and Erik Auerswald.
- Applied patch from Nicolas Escuder correcting a Cygwin
issue in auvoxware.c
- applied patch from Erik Auerswald adding a Mute button and
functionality to aupanel.
- applied patch from Nicolas Franois (via Steve McIntyre)
correcting some typos in the AuSetBucketAttributes and
AuSoundCreateFileFromBucket man pages.
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).
symlink, so create the actual release.h file at the includes stage as
the depends stage is too late (server/os is before lib/audio).
Fixes PR pkg/32098 from Gilles Dauphin.
Also fix installation of nasd.conf manual page on systems where imake
doesn't have an InstallGenManPage rule (ie. solaris with openwin)
6/3/2005 1.7b (devel)
- applied patch from 'Inma', correcting a connection hang in
Solaris 9. This reworks some of the very old and primitive
fd_set stuff in Aulibint.c .
- updated config/config.sub and config.guess to properly
detect DragonFly systems.
- Applied patch from Mark Davies and Joerg Sonnenberger
correcting some BSD issues and adding DragonFly support.
Then nasd.conf man page is always installed in
$FILEMANDIR for all systems.
4/10/2005 1.7a (devel)
- applied patch from Mark Davies correcting audio/Imakefile
to properly define BSD44SOCKETS on NetBSD systems.
- Applied patch from Steve McIntyre correcting CYWIN -> CYGWIN
typo in server/dda/voxware/auvoxware.c
- applied patch from Steve McIntyre Correcting some Gcc 4.0
and AMD64 issues.