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.
[bugfixes and minor improvements omitted; see NEWS]
Changes in release 2.5.2
* krb5 auth is working
* Works with IPv6 address
* Amanda configuration file changes
o amanda.conf changes
+ debugging is enabled in the config file
see all debug_* config option
+ tapetype 'readblocksize', if maxtapeblocksize is set too
larger for your hardware
* Amanda command changes
o amadmin: new 'holding list' and 'holding delete' subcommand.
Changes in release 2.5.1p3
* Works with tar-1.16 and exit status of 1.
Changes in release 2.5.1p2
* amoverview is working
* dumptype starttime is working
* Amanda command changes
o amtape accept the -o arguments
o amgetconf --list to list all tapetype, dumptype, holdingdisk
or interface
o amgetconf can return a value of a specific tapetype, dumptype,
holdingdisk or interface
Changes in release 2.5.1p1
* Remove contrib/sst.
Changes in release 2.5.1
* Defects found by Coverity scan and Klocwork K7 analysis tools fixed.
* Works with GNU tar 1.15.91 - work with new gtar state file format.
* Open SSL encryption support
* Two new authentication methods: bsdtcp, bsdudp.
* Unlimited number of DLEs on a client with bsdtcp, rsh and ssh
authentication methods.
* Recovery process amrecover uses Secure API. amoldrecover command
(same syntax and functionality as amrecover command) is provided for
compatibility with old Amanda releases. amoldrecover command uses old
amidxtaped/amindexd protocol.
* Amanda debug files are separated into client/server/amandad and
are also classified based on Amanda configuration name.
* Amanda command changes
o amfetchdump -o is replaced by -O.
o amcheck -w option does all tests including the tape writable test.
Use amcheck -t -w to do only the tape writable test.
o -o command option to override Amanda configuration. See amanda man
page for details.
o amgetconf command doesn't write the BUGGY message when a entry
is not found in the configuration file.
* Amanda configuration file changes
o amanda.conf changes
+ amrecover_do_fsf in amanda.conf defaults to yes
+ amrecover_check_label in amanda.conf defaults to yes
+ usetimestamps in amanda.conf to support multiple
backup runs in a calendar day.
+ holdingdisk in amanda.conf supports new values:
NEVER, AUTO, REQUIRED.
+ amandad_path, client_username and ssh_keys in
amanda.conf for ssh/rsh authentication.
o New amanda client configuration file - amanda-client.conf.
Different client configuration file can be used for each Amanda
configuration.
+ gnutar_list-dir and amandates can be specified in
Amanda client configuration file - amanda-client.conf
o .amandahosts format changes to allow use of secure API for recovery.
o Amanda service entries in xinetd configuration has changed.
Changes in release 2.5.0p1
* Add the 'amtape update' command.
Changes in release 2.5.0
* Communication security/authentication: Kerberos 4/5, OpenSSH
* Data security: Symmetric/Assymetric encrytion algorithms (aesutil
and gpg encryption), Encryption can be done on server or client,
Custom encryption utilities can be used.
* Compression: Ability to add custom compression tools. This is a
really useful feature especially since it can specified for a DLE. You
can use different compression algorithm for images, binaries, ascii files
and so on.
* Dump images spanning multiple media volumes - Dump images are no
longer restricted to a single media volume (tape or vtape). Data restoration
can be done using amrecover and amfetchdump commands.
* Auto tape labelling - This optional feature is good for disk backups.
Change in release 2.4.5
* new displayunit global option to select the unit use to display number
k=kilo, m=mega, g=giga, t=tera.
* new amoverview -skipmissed option.
Change in release 2.4.5b1
* holding disk disk use timestamped directory.
* autoflush flush today's dump.
* new bumppercent global option, this should improve bumping criteria,
the bumpsize is set to a fixed value which can be adequate for small
and large disk.
* bumpsize, bumppercent, bumpdays and bumpmult can be in a dumptype.
* calcsize support include and exclude like gnutar.
* new 'estimate' dumptype option to select estimate type:
CLIENT: estimate by the dumping program.
CALCSIZE: estimate by the calcsize program, a lot faster but less acurate.
SERVER: estimate based on statistic from previous run, take second but
can be wrong on the estimate size.
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.
had actually been ignoring LTCONFIG_OVERRIDE anyway and just using
the default LIBTOOL_OVERRIDE to replace libtool scripts in packages.
This just formalizes the fact that LTCONFIG_OVERRIDE is not used
meaningfully by pkgsrc.
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
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).
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
backslashes anymore. A single backslash is enough. Changed the
definition in all affected packages. For those that are not caught, an
additional check is placed into bsd.pkginstall.mk.
packages. Set runtime dependencies on GNU tar and gzip for all amanda
packages.
Bump PKGREVISIONs to 1 for amanda-client and amanda-plot, to 2 for
amanda-common and amanda-server.
Bug fix release and minor improvements:
new chg-iomega changer script.
amanda will not use a tape if it's label is not in the tapelist file.
amflush.c: Don't start a driver if nothing to flush.
amadmin.c: Call check_dumpuser() as soon as posible.
amadmin.c: Don't core dump if DUMPCYLE is too big.
dumper.c: Parse warning message.
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.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".