FreeBSD Monitor
Ports Changes
2014-09-01
AUTHOR: [email protected]

Support for pkg_install has been removed
Note that WITH_PKGNG is now WITH_PKG (still used to define 'devel')
WITH_PKGNG remains for compatibility
@stopdaemon support has gone, pkg(8) has a generic mechanism to
provide the same functionnality
Ports Changes
2014-09-01
AUTHOR: [email protected]

Support for NO_STAGE has been removed
Ports Changes
2014-08-25
AUTHOR: [email protected]

Support for NOPORTDATA has been removed.
Ports Changes
2014-08-09
AUTHOR: [email protected]

The Python language bits of the ports framework have been converted
to USES. Instead of USE_PYTHON, please use USES=python instead.

USE_PYTHON=yes becomes USES=python
USE_PYTHON=2.7+ becomes USES=python:2.7+
USE_PYTHON_BUILD=3.3 becomes USES=python:3.3,build
...

Additionally, several Python specific features have been converted
to USES-inspired USE_PYTHON=<featureA>,<featureB>.

USE_PYDISTUTILS becomes USE_PYTHON=distutils
PYDISTUTILS_AUTOPLIST becomes USE_PYTHON=autoplist
...

Please read the header comments of Uses/python.mk for more details
about the new and changed bits and pieces. You will find a list of
deprecated variables and how to replace them in your own ports at
the end of the header comment.
Ports Changes
2014-08-09
AUTHOR: [email protected]

The Python language bits of the ports framework have been converted
to USES. Instead of USE_PYTHON, please use USES=python instead.

USE_PYTHON=yes becomes USES=python
USE_PYTHON=2.7+ becomes USES=python:2.7+
USE_PYTHON_BUILD=3.3 becomes USES=python:3.3,build
...

Additionally, several Python specific features have been converted
to USES-inspired PYTHON_FEATURES=<featureA>,<featureB>.

USE_PYDISTUTILS becomes PYTHON_FEATURES=distutils
PYDISTUTILS_AUTOPLIST becomes PYTHON_FEATURES=autoplist
...

Please read the header comments of Uses/python.mk for more details
about the new and changed bits and pieces. You will find a list of
deprecated variables and how to replace them in your own ports at
the end of the header comment.
Ports Changes
2014-08-09
AUTHOR: [email protected]

The Python language bits of the poorts framework have been converted
to USES. Instead of USE_PYTHON, please use USES=python instead.

USE_PYTHON=yes becomes USES=python
USE_PYTHON=2.7+ becomes USES=python:2.7+
USE_PYTHON_BUILD=3.3 becomes USES=python:3.3,build
...

Additionally, several Python specific feeatures have been converted
to USES-inspired PYTHON_FEATURES=<featureA>,<featureB>.

USE_PYDISTUTILS becomes PYTHON_FEATURES=distutils
PYDISTUTILS_AUTOPLIST becomes PYTHON_FEATURES=autoplist
...

Please read the header comments of Uses/python.mk for more details
about the new and changed bits and pieces. You will find a list of
deprecated variables and how to replace them in your own ports at
the end of the header comment.
Ports Changes
2014-07-15
AUTHOR: [email protected]

Only one format is now support in LIB_DEPENDS: lib*.so
Ports Changes
2014-07-08
AUTHOR: [email protected]

Support for installations based on the easy_install setup.py target has
been removed from the Ports framework for Python software. The
PYEASYINSTALL_* knobs and support for USE_PYDISTUTILS=easy_install have
been removed.
Ports Changes
2014-06-23
AUTHOR: [email protected]

IGNOREFILES is not supported anymore, it was an unsafe feature allowing to
use unchecked files downloaded from untrusted places to be used in the ports
tree.
Ports Changes
2014-06-07
AUTHOR: [email protected]

New PYTHON_CONCURRENT_INSTALL knob to support the parallel installation
of ports for different python versions.

If set to yes, the knob indicates that the port can be installed for
different python versions at the same time. The port will use a unique
prefix for certain directories using USES=uniquefiles:dirs (see the
uniquefiles.mk Uses for details about the directories). Binaries
receive an additional suffix, based on ${PYTHON_VER}.

The values for the uniquefiles USES are set as follows:

UNIQUE_PREFIX= ${PYTHON_PKGNAMEPREFIX}
UNIQUE_SUFFIX= -${PYTHON_VER}

If the port is installed for the current default python version, scripts and
binaries in

${PREFIX}/bin
${PREFIX}/sbin
${PREFIX}/libexec

are linked from the prefixed version to the prefix-less original name,
e.g. bin/foo-2.7 --> bin/foo.
Ports Changes
2014-05-29
AUTHOR: [email protected]

USE_GMAKE is no longer supported, please use USES=gmake instead
Ports Changes
2014-05-26
AUTHOR: [email protected]

USE_DOS2UNIX is no longer supported, USES=dos2unix should be used instead
Ports Changes
2014-05-25
AUTHOR: [email protected]

Add a USE_PERL5=fixpacklist to account for ports creating a .packlist file
referencing ${STAGEDIR} when not using USE_PERL5=configure or
USE_PERL5=modbuildtiny.
Ports Changes
2014-05-05
AUTHOR: [email protected]

:U and :L syntax is not supported anymore in the ports tree, :tu and :tl
should be used instead

This makes the ports tree incompatible with make(1) version that does not
support :tu and :tl (aka FreeBSD 8.3 and earlier)
Ports Changes
2014-04-28
AUTHOR: [email protected]

EXTRA_PATCHES has been extended to support a new syntax:

EXTRA_PATCHES= file:-pX

Where X is the pathname strip count passed to patch(1)
Ports Changes
2014-04-23
AUTHOR: [email protected]

The semantics of USES=libtool have changed. It now deletes .la libraries
from the staging area to reduce overlinking. USES=libtool:keepla can be
used in case they need to be kept. This form still modifies .la libraries
to remove references to other libraries to reduce overlinking.

Note that .la libraries have to kept around as long as there are .la
libraries from other ports that refer to them. Those ports need to use
some form of USES=libtool first such that those references are removed.
Ports Changes
2014-04-19
AUTHOR: [email protected]

check-orphans has been renamed to check-plist. It now checks:
A. Files in STAGEDIR that are missing from plist.
To make check-plist ignore a file *as an orphan* do one of the
following:
1. Install it
2. post-install: ${RM} ${STAGEDIR}file
3. Put the file behind an OPTION with a PLIST_SUB: %%OPTION%%file
4. Add to plist as a @comment
@comment file
@comment @dirrmtry dir
B. Files in plist missing from STAGEDIR
C. Files in plist which are owned by dependencies/MTREEs
Ports Changes
2014-04-16
AUTHOR: [email protected]

The default target for 'make' now runs 'make stage' if the port supports
it, otherwise 'make build' as before.
Ports Changes
2014-04-11
AUTHOR: [email protected]

A new plist keyword has been added, @sample. It accepts a file (must end in
.sample):

@sample file.conf.sample

This will install file.conf.sample and copy it to file.conf. The file.conf
will be removed if it matches file.conf.sample on deinstall.

This replaces older patterns of:

@unexec if cmp -s %D/etc/pkgtools.conf %D/etc/pkgtools.conf.sample; then rm -f %D/etc/pkgtools.conf; fi
etc/pkgtools.conf.sample
@exec [ -f %B/pkgtools.conf ] || cp %B/%f %B/pkgtools.conf
Ports Changes
2014-03-12
AUTHOR: [email protected]

Two new USES were added to finish handling distfiles formats a consistent way:

USES=tar[:[xz|bzip2|Z|tgz]] handles distributions files in format:
- plain tar
- tar.xz
- tar.bz2
- tar.Z
- tgz

USES=lha handles distributions files info LHA format
Ports Changes
2014-03-07
AUTHOR: [email protected]

Two new USES were added by [email protected] :

USES=zip handles distribution files in Zip format. InfoZip files
need USES=zip:infozip

USES=makeself handles distribution files in makeself format.
Ports Changes
2014-03-03
AUTHOR: [email protected]

Add support for Qt 5 via USE_QT5. USE_QT5 is analogous to USE_QT4,
the only difference is the list of available components
(see Mk/bsd.qt.mk for details). USES=qmake supports Qt 5 as well.
Ports Changes
2014-01-27
AUTHOR: [email protected]

Add two new options helpers:

${OPT}_${TYPE}_DEPENDS_OFF=<something> will automatically add:
${TYPE_DEPENDS}+=<something> in case OPT is 'off'

${OPT}_${FLAG}_OFF=<something> will automatically add:
${FLAG}+=<something> in case OPT is 'off'
Ports Changes
2014-01-11
AUTHOR: [email protected]

New USES=uniquefiles to make files or directories unique
by adding a prefix or suffix to them.

Files listed in UNIQUE_PREFIX_FILES will receive the prefix
set via UNIQUE_PREFIX. The same applies to UNIQUE_SUFFIX_FILES,
but with the chosen UNIQUE_SUFFIX. UNIQUE_PREFIX and
UNIQUE_SUFFIX are set to PKGNAMEPREFIX and PKGNAMESUFFIX by
default.
The uniquefiles USES enables ports to name files in special
ways, e.g. by outlining that the port does not support X11
(-nox11). A binary named bin/foo thus can be easily renamed
to bin/foo-featureA via

USES= uniquefiles
UNIQUE_SUFFIX= -featureA
UNIQUE_SUFFIX_FILES= bin/foo

The uniquefiles USES automatically adjusts the plist at
installation time. There is no need to consider the prefix
or suffix in the pkg-plist file itself. If the original name
of the renamed file is bin/foo, this exact name should be put
into pkg-plist.

The dirs argument to USES=uniquefiles will cause certain
standard directories, such as DOCSDIR or EXAMPLESDIR to be
prepended with the UNIQUE_PREFIX. The change to the directories
will hapen prior to configuring or building the port, so that
the port Makefile as well as the port's build logic are aware
of the changed name.

Since the uniquefiles USES effectively manipulates the port's
installation and file layout, it will only be available for
stagedir-aware ports. Ports with NO_STAGE=yes will be unable
to use the uniquefiles USES.
Ports Changes
2013-12-18
AUTHOR: [email protected]

lang/python (and as such the 'python' binary and accomplices)
has been removed as default dependency for the USE_PYTHON,
USE_PYTHON_BUILD and USE_PYTHON_RUN knobs.

Ports need to use a designated (default) python interpreter
to build and install and in most cases for execution in the user
environment. Ports that install python scripts, which are not
limited to a certain python version (or version range), can
include lang/python as build and/or run dependency.

USE_PYTHON=yes and similar knobs will only pull in the
default python version (e.g. lang/python27), but none
of the meta ports or lang/python itself.

Please use lang/python as build or run-time dependency only,
if there is no other way to get a port working properly, since
the usage of lang/python complicates package builds for different
python versions.