beb1c1fe19
Ports using USES=lua:module or lua:flavors will be flavored. A range of supported lua versions can be set using XX-YY (or XX-, or -YY, or simply ZZ) for ports not supporting all lua versions. USES=lua sets LUA_FLAVOR that needs to be used on all dependencies of flavored lua ports, in a similar way as PHP or Python flavors. PR: 245038 Submitted by: andrew tao11 riddles org uk Reviewed by: mat, kevans, russ haley gmail com Approved by: mat (portmgr) Differential Revision: https://reviews.freebsd.org/D16494
3666 lines
124 KiB
Text
3666 lines
124 KiB
Text
Updating Information for FreeBSD ports developers
|
|
|
|
This file is maintained by portmgr@FreeBSD.org and copyrighted by the
|
|
FreeBSD Foundation.
|
|
|
|
This file contains major changes to ports and the ports infrastructure.
|
|
Intended audience are ports committers, maintainers and other
|
|
developers. User oriented changes should be submitted for inclusion
|
|
in the release notes and/or placed into UPDATING.
|
|
|
|
All ports committers are allowed to commit to this file.
|
|
|
|
20200414:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
USES=lua gained flavors.
|
|
|
|
Ports using USES=lua:module or lua:flavors will be flavored. A range of
|
|
supported lua versions can be set using XX-YY (or XX-, or -YY, or simply ZZ)
|
|
for ports not supporting all lua versions.
|
|
|
|
USES=lua sets LUA_FLAVOR that needs to be used on all dependencies of
|
|
flavored lua ports, in a similar way as PHP or Python flavors.
|
|
|
|
20200115:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
${PREFIX}/share/man is now a valid location for manpages ${PREFIX}/man being
|
|
considered as deprecated.
|
|
|
|
20191009:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
The ipv6 virtual category is gone, it does not make sense anymore in 2019
|
|
where the norm in applications is to have support both ipv4 and ipv6.
|
|
|
|
20191001:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
BINARY_WRAPPERS allow to push in front of the PATH wrappers for binaries.
|
|
This is useful when 2 tools do provide the same feature, but the configure
|
|
scripts do test for some variables which are not in one of the tool.
|
|
|
|
20190919:
|
|
AUTHOR: madpilot@FreeBSD.org
|
|
|
|
USES=xfce now defaults to gtk3, so for ported applications requiring
|
|
GTK2 XFCE support USES=xfce:gtk2 should be used.
|
|
|
|
20190903:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
The ports tree now supports overlays
|
|
|
|
overlays are a way to help users to integrate their own ports tree
|
|
with the official ports tree without having to maintain clone of the
|
|
official tree and remerge on regular basis.
|
|
|
|
The ports tree will lookup in the overlays (in the order the are listed in
|
|
OVERLAY variable) for the dependencies and the USES. It will use the first
|
|
found.
|
|
|
|
in order to use it the user have to declare his overlays that way in their
|
|
make.conf:
|
|
OVERLAYS= overlay1 overlay2 overlay3
|
|
|
|
20181225:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
cmake.mk now defaults to out-of-sourcetree builds. The option 'outsource'
|
|
has been removed. Ports that need an intree build now can pass 'insource'.
|
|
|
|
20181110:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
texinfo files are now installed in ${PREFIX}/share/info
|
|
|
|
20180630:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
bsd.qt.mk has been replaced by qt.mk. This changes the way ports have to
|
|
depend on Qt slightly.
|
|
|
|
Previously one would have written
|
|
USE_QT4=foo bar
|
|
or
|
|
USE_QT5=foo bar
|
|
while now one has to write
|
|
USES=qt:4
|
|
USE_QT=foo bar
|
|
respectively
|
|
USES=qt:5
|
|
USE_QT=foo bar
|
|
|
|
Further qmake.mk no longer respects QT_NONSTANDARD. Ports that don't want to
|
|
get the configure environment provided by qmake.mk should add the argument
|
|
no_env, ports that don't want the configure target should specify no_configure.
|
|
|
|
20180506:
|
|
AUTHOR: brnrd@FreeBSD.org
|
|
|
|
All USE_ and WANT_ variables for PHP have been removed and marked
|
|
UNSUPPORTED. Use USES= php:<feature> as a replacement.
|
|
|
|
USE_PHPIZE, USE_PHPEXT, USE_ZENDEXT, USE_PHP_BUILD,
|
|
WANT_PHP_CLI, WANT_PHP_CGI, WANT_PHP_MOD, WANT_PHP_WEB, WANT_PHP_EMB
|
|
|
|
20180311:
|
|
AUTHOR: brnrd@FreeBSD.org
|
|
|
|
USE_APACHE has been replaced by USES=apache.
|
|
|
|
20180308:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Ports using USES=php:phpize, php:ext, php:zend, and php:pecl are now
|
|
flavored. They will automatically get flavors (php56, php70, php71, php72)
|
|
depending of the versions they support (set with IGNORE_WITH_PHP). As a
|
|
consequence, ports using USES=pear and USES=horde are also flavored.
|
|
|
|
As all packages must have different package names, the following variables
|
|
must be used in PKGNAMEPREFIX/SUFFIX:
|
|
|
|
Variable + Values +
|
|
--------------------------------------------------------------------------------------
|
|
PHP_PKGNAMEPREFIX | php56- php72- | PHP Extensions
|
|
| | and modules
|
|
--------------------------------------------------------------------------------------
|
|
PHP_PKGNAMESUFFIX | -php56 -php72 | PHP Applications
|
|
--------------------------------------------------------------------------------------
|
|
PECL_PKGNAMEPREFIX | php56-pecl- | PECL extensions
|
|
| | automatic
|
|
--------------------------------------------------------------------------------------
|
|
PEAR_PKGNAMEPREFIX | php56-pear- | PEAR modules
|
|
| | without PEAR_CHANNEL
|
|
PEAR_<channel>_PKGNAMEPREFIX | php56-pear-channel- | with PEAR_CHANNEL
|
|
| | automatic
|
|
|
|
In all the ports with PHP dependencies, the *_DEPENDS entries MUST end with
|
|
the flavor so that the framework knows which to build/use. This is done by
|
|
appending '@${PHP_FLAVOR}' after the origin. For example:
|
|
|
|
RUN_DEPENDS= ${PEAR_PKGNAMEPREFIX}Validate>=0.5.0:devel/pear-Validate@${PHP_FLAVOR} \
|
|
${PECL_PKGNAMEPREFIX}smbclient>=0.8.0:net/pecl-smbclient@${PHP_FLAVOR} \
|
|
|
|
PHP applications (for example, www/wordpress) can also get flavors, add the
|
|
flavors keyword to USES=php, for example: USES=php:flavors, and add
|
|
${PHP_PKGNAMESUFFIX} to its PKGNAMESUFFIX.
|
|
|
|
20180125:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Add support to passing directories to EXTRA_PATCHES.
|
|
|
|
Instead of:
|
|
|
|
EXTRA_PATCHES= ${PATCHDIR}/feat-foo-patch-file.c \
|
|
${PATCHDIR}/feat-foo-patch-file.h \
|
|
${PATCHDIR}/feat-foo-patch-file2.c
|
|
|
|
Move those files to ${PATCHDIR}/feat-foo/, name them patch-*, and set:
|
|
|
|
EXTRA_PATCHES= ${PATCHDIR}/feat-foo
|
|
|
|
20180116:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
The deprecated PYTHON_DEFAULT_VERSION, PYTHON2_DEFAULT_VERSION, and
|
|
PYTHON3_DEFAULT_VERSION have been removed.
|
|
|
|
20180106:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
USES=qmake now accepts a new variable, QMAKE_CONFIGURE_ARGS.
|
|
|
|
Starting with Qt 5.8.0, qmake can use configure.json files to help define
|
|
configuration options and configuration time checks. These options are
|
|
generally in the form '-foo -no-bar', and must be passed after "--" at the
|
|
end of qmake's command line.
|
|
|
|
The QMAKE_CONFIGURE_ARGS variable allows one to set those options, and
|
|
USES=qmake takes care of passing them at the right position when invoking
|
|
qmake.
|
|
|
|
20180102:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
There is a new USES=eigen to depend on math/eigen[23].
|
|
|
|
Usage:
|
|
USES=eigen:<version>[,<type>]
|
|
|
|
version: 2 or 3 (required)
|
|
type: build (default), run
|
|
|
|
For example:
|
|
USES=eigen:2,build,run
|
|
will add a BUILD- and RUN_DEPENDS on math/eigen2, and
|
|
USES=eigen:3
|
|
will add a BUILD_DEPENDS on math/eigen3.
|
|
|
|
20171231:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
USES=cmake now supports two additional list variables:
|
|
* CMAKE_ON : List of variables to turn on
|
|
* CMAKE_OFF : List of variables to turn off
|
|
This can be used as a shortcut to append these to CMAKE_ARGS.
|
|
|
|
For example ports that previously set
|
|
CMAKE_ARGS= -DVAR1:BOOL=TRUE -DVAR2:BOOL=TRUE -DVAR3:BOOL=FALSE
|
|
can now set this as
|
|
CMAKE_ON= VAR1 VAR2
|
|
CMAKE_OFF= VAR3
|
|
|
|
20171130:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Ports using USE_PYTHON=distutils are now flavored. They will automatically
|
|
get flavors (py27, py34, py35, py36) depending on what versions they support.
|
|
|
|
There is also a USE_PYTHON=flavors for ports that do not use distutils but
|
|
need FLAVORS to be set. A USE_PYTHON=noflavors can be set if the port is
|
|
using distutils but flavors are not wanted.
|
|
|
|
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been added
|
|
to cope with Python ports that did not have the Python PKGNAMEPREFIX but are
|
|
flavored.
|
|
|
|
USES=python now also exports a PY_FLAVOR variable that contains the current
|
|
python flavor. It can be used in dependency lines when the port itself is
|
|
not python flavored, for example, deskutils/calibre.
|
|
|
|
By default it will only generate flavors for the versions in PYTHON2_DEFAULT
|
|
and PYTHON3_DEFAULT. Define BUILD_ALL_PYTHON_FLAVORS in your make.conf to
|
|
generate all possible flavors. A port can set USE_PYTHON=allflavors to have
|
|
all the flavors and not simply the default ones.
|
|
|
|
In all the ports with Python dependencies, the *_DEPENDS entries MUST end
|
|
with the flavor so that the framework knows which to build/use. This is done
|
|
by appending '@${PY_FLAVOR}' after the origin. For example:
|
|
|
|
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
|
|
|
|
20171130:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
To help with flavored ports, helpers are available. In these, replace <*>
|
|
with the flavor name.
|
|
|
|
*_PKGNAMEPREFIX *_PKGNAMESUFFIX *_PLIST *_DESCR will overwrite the variable.
|
|
|
|
*_CONFLICTS *_CONFLICTS_BUILD *_CONFLICTS_INSTALL *_PKG_DEPENDS
|
|
*_EXTRACT_DEPENDS *_PATCH_DEPENDS *_FETCH_DEPENDS *_BUILD_DEPENDS
|
|
*_LIB_DEPENDS *_RUN_DEPENDS *_TEST_DEPENDS will append to the variable.
|
|
|
|
For example:
|
|
|
|
flavor2_PKGNAMESUFFIX= -foo
|
|
|
|
can replace:
|
|
|
|
.if ${FLAVOR:U} == flavor2
|
|
PKGNAMESUFFIX= -foo
|
|
.endif
|
|
|
|
20171130:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Flavors are a way to have multiple variations of a port. The port is built
|
|
multiple times, with the variations. To declare flavors, set the FLAVORS
|
|
variable to the flavors you want defined. The first flavor will be the
|
|
default:
|
|
|
|
FLAVORS= flavor1 flavor2
|
|
|
|
The flavors MUST be lowercase, and can contain [[:lower:][:digit:]_].
|
|
|
|
Then, when building the port, pass the FLAVOR as an argument after make to
|
|
select the flavor.
|
|
|
|
$ make install FLAVOR=flavor2
|
|
|
|
In the port, you can then change the behavior depending on the value of the
|
|
FLAVOR variable. Note that the different flavors MUST have different
|
|
PKGNAMEs. Be sure to guard against an empty FLAVOR variable by using
|
|
${FLAVOR:U}:
|
|
|
|
.if ${FLAVOR:U} == flavor2
|
|
PKGNAMESUFFIX= -foo
|
|
OPTIONS_DEFAULT+= FOO
|
|
.endif
|
|
|
|
A tools guide is available at:
|
|
https://wiki.freebsd.org/Ports/FlavorsTools
|
|
A port migration guide is available at:
|
|
https://wiki.freebsd.org/Ports/FlavorsMigration
|
|
|
|
20171020:
|
|
AUTHOR: ak@FreeBSD.org
|
|
|
|
The USES=fmake has been removed. It was created to help migration from
|
|
old FreeBSD make (pmake) and there are no more users of it left in
|
|
the ports tree.
|
|
|
|
20171012:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Remove WANT_GNOME and HAVE_GNOME, they were in disuse, and made useless by
|
|
options.
|
|
|
|
20171011:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
New BINARY_ALIAS variable has been added, when defined it will create symlinks
|
|
of some given binaries in a directory which will be prepended to the PATH.
|
|
|
|
The syntax is the following:
|
|
BINARY_ALIAS= target1=source1 target2=source2
|
|
|
|
For example to have a "swig" binary in the path which will be pointing at
|
|
swig3.0 and a "sed" pointing at GNU sed: gsed
|
|
|
|
BINARY_ALIAS= swig=swig3.0 sed=gsed
|
|
|
|
20170625:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
The default generator for USES=cmake ports has been switched to ninja.
|
|
|
|
Previously it was possible to opt-in to using ninja instead of make(1)
|
|
by setting CMAKE_NINJA, now ports need to opt-out.
|
|
|
|
Ports that do not build with ninja must switch from
|
|
USES=cmake:<args>
|
|
to
|
|
USES=cmake:<args>,noninja
|
|
|
|
20170417:
|
|
AUTHOR: kwm@FreeBSD.org
|
|
|
|
New USES: meson, to handle properly the meson building system.
|
|
|
|
20170313:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
HTTPS certificates are now verified when "make makesum" fetches distfiles.
|
|
If this fails make sure you have a CA certificate bundle installed such as
|
|
security/ca_root_nss. If it still fails and there are other HTTPS sites
|
|
with a valid certificate consider removing the site from MASTER_SITES.
|
|
If the site cannot be removed you can disable certificate verification by
|
|
adding the following line to the port Makefile:
|
|
|
|
FETCH_ENV= SSL_NO_VERIFY_PEER=1 SSL_NO_VERIFY_HOSTNAME=1
|
|
|
|
20170218:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
* Qt 4's binaries have been moved to lib/qt4/bin to match what is already done
|
|
to Qt 5's binaries. Since these binaries are no longer in ${LOCALBASE}/bin,
|
|
they also do not have the -qt4 suffix in their names any more.
|
|
|
|
* Consequently, there are no Qt 4 or Qt 5 binaries in the default $PATH, and
|
|
misc/qtchooser is now used to select the actual Qt binaries. In other
|
|
words, calling "qmake" or "moc" now goes through qtchooser, which prefers
|
|
Qt 5 binaries by default.
|
|
|
|
The ports framework handles this automatically. The UPDATING entry covers
|
|
this in more detail.
|
|
|
|
* Qt 5.7.1 requires a C++11-capable compiler to be used. qmake and CMake pass
|
|
the appropriate flags to the compiler (such as -std=c++11) automatically,
|
|
but if your port fetches Qt's build flags via pkg-config (which can be the
|
|
case for autotools-based ports), you might need to take care of this
|
|
manually by setting USE_CXXSTD in your Makefile:
|
|
|
|
USE_CXXSTD= c++11
|
|
|
|
20160116:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
A new EXTRA_PATCH_TREE has been added. Points to a directory hierarchy with
|
|
the same layout as the ports tree, where local patches can be found. This
|
|
allows a third party to keep their patches in some other source control
|
|
system if needed.
|
|
|
|
For example, if you have EXTRA_PATCH_TREE=/patches, when building
|
|
lang/perl5.24, any file named patch-* in /patches/lang/perl5.24/ will be used
|
|
to patch the Perl distribution.
|
|
|
|
20160116:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
During extraction of the do-patch target into a separate script, the "-d
|
|
PATCH_WRKSRC" had to be removed from the PATCH_ARGS and PATCH_DIST_ARGS
|
|
variables. If using these variables directly, you will need to adapt the
|
|
Makefile. For example:
|
|
|
|
${PATCH} ${PATCH_ARGS} < ${FILESDIR}/extra-patch
|
|
|
|
needs to be changed to:
|
|
|
|
${PATCH} -d ${PATCH_WRKSRC} ${PATCH_ARGS} < ${FILESDIR}/extra-patch
|
|
|
|
20161218:
|
|
AUTHOR: tcberner@FreeBSD.org
|
|
|
|
QT_PREFIX has been dropped, in favour of using PREFIX directly.
|
|
|
|
20160911:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
Support has been added for complete set of Creative Commons licenses
|
|
|
|
CC-(BY|BY-ND|BY-NC|BY-NC-ND|BY-NC-SA|BY-SA)-(1.0|2.0|2.5|3.0|4.0)
|
|
|
|
20160909:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
Verbose build logs are now preferred and enabled by default for cmake,
|
|
ninja and GNU configure. Ports which still produce quiet build logs
|
|
(hiding actual commands) are strongly advised to switch to verbose logs.
|
|
|
|
20160908:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
Support has been added for NONE license, use it when the port doesn't
|
|
have cleanly defined licensing terms. Note that without clean license
|
|
allowing you to use and distribute the code it would be be illegal to do
|
|
so in many jurisdictions, so for ports with NONE license no distfiles or
|
|
packages are distributed.
|
|
|
|
20160824:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
To complete the USE_GITHUB framework, a GH_SUBDIR variable has been added.
|
|
It automatically moves a secondary distfile to the right place inside WRKSRC.
|
|
It also extends the GH_TUPLE variable to make it as easy to use as possible.
|
|
|
|
Before:
|
|
|
|
GH_TUPLE= Regaddi:Chart.js:f13f99b:chart_js \
|
|
FVANCOP:ChartNew.js:77e7f87:chartnew_js
|
|
post-extract:
|
|
@${RMDIR} ${WRKSRC}/database ${WRKSRC}/3rd/Chart.js
|
|
@${MV} ${WRKSRC_database} ${WRKSRC}/database
|
|
@${MV} ${WRKSRC_chart_js} ${WRKSRC}/3rd/Chart.js
|
|
|
|
After:
|
|
|
|
GH_TUPLE= Regaddi:Chart.js:f13f99b:chart_js/3rd/Chart.js \
|
|
FVANCOP:ChartNew.js:77e7f87:chartnew_js/3rd/ChartNew.js
|
|
|
|
It also works if not using GH_TUPLE but the regular
|
|
GH_ACCOUNT/PROJECT/TAGNAME variables:
|
|
|
|
GH_SUBDIR= 3rd/Chart.js:chart_js 3rd/ChartNew.js:chartnew_js
|
|
|
|
20160824:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
A new USES file has been introduced: USES=kde:4, which replaces the old
|
|
bsd.kde4.mk file in preparation for upcoming KDE Frameworks and Plasma5
|
|
ports.
|
|
|
|
Ports depending on KDE4 have to switch from
|
|
USE_KDE4=foo bar
|
|
to
|
|
USES=kde:4
|
|
USE_KDE=foo bar
|
|
and make sure to switch from using KDE4_PREFIX to the new name KDE_PREFIX
|
|
in the Makefiles as well as plists.
|
|
|
|
20160821:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
A new USES file has been introduced: USES=grantlee:[4,5], which introduces a
|
|
LIB_DEPENDS on either devel/grantlee (Qt4) or devel/grantlee5 (Qt5).
|
|
|
|
Uses/grantlee.mk also exports the GRANTLEE_VERSION variable to users, and the
|
|
GRANTLEE_VERSION_FULL and GRANTLEE_VERSION_SHORT pkg-plist substitutions.
|
|
|
|
20160817:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
This adds the possibility to use regular expressions for the makeplist stage
|
|
of the PLIST_SUB life.
|
|
|
|
From time to time, the values are too generic, and they get in the way of
|
|
other stuff.
|
|
|
|
This adds the possibility to have a VAR_regex=regex that will be used
|
|
instead of the VAR=string to search for possible replacements.
|
|
|
|
For example, in lang/perl5*, there is PERL_ARCH=mach, which will get replaced
|
|
in paths if a file is called, say "machine", will end up being
|
|
"%%PERL_ARCH%%ine". Adding PERL_ARCH_regex="\bmach\b" will ensure only full
|
|
words are replaced, so machine will stay machine, but "lib/mach/foo "will
|
|
still be replaced by "lib/%%PERL_ARCH%%/foo".
|
|
|
|
20160803:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Every PHP (or Zend) extension now installs its own .ini file in
|
|
/usr/local/etc/php. A PHP extension will be automatically activated when
|
|
installed. The order into which extensions are loaded is automatically
|
|
guessed. In some very rare cases, the guess will be wrong, and PHP_MOD_PRIO
|
|
will need to be set. Refer to the USES=php section of the Porter's Handbook
|
|
for more information.
|
|
|
|
20160628:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
USEify USES=php.
|
|
|
|
The following variables have been folded into arguments:
|
|
|
|
- USE_PHPIZE -> USES=php:phpize
|
|
- USE_PHPEXT -> USES=php:ext
|
|
- USE_ZENDEXT -> USES=php:zend
|
|
- USE_PHP_BUILD -> USES=php:build
|
|
- WANT_PHP_CLI -> USES=php:cli
|
|
- WANT_PHP_CGI -> USES=php:cgi
|
|
- WANT_PHP_MOD -> USES=php:mod
|
|
- WANT_PHP_WEB -> USES=php:web
|
|
- WANT_PHP_EMB -> USES=php:embed
|
|
|
|
20160627:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
USE_OPENSSL has been replaced by USES=ssl.
|
|
|
|
20160625:
|
|
AUTHOR: adamw@FreeBSD.org
|
|
|
|
A new ${opt}_CMAKE_BOOL OPTIONS helper has been added. Instead of:
|
|
|
|
FOO_CMAKE_ON= -DWITH_FOO:BOOL=YES -DWITH_BAR:BOOL=YES
|
|
FOO_CMAKE_OFF= -DWITH_FOO:BOOL=NO -DWITH_BAR:BOOL=NO
|
|
|
|
you can use this shortcut:
|
|
|
|
SOMEOPT_CMAKE_BOOL= WITH_FOO WITH_BAR
|
|
|
|
20160525:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
A new stage-qa test has been added, it reports all shared libraries
|
|
dependencies that are not part of the port list of dependencies. It help
|
|
finds what is called proxy dependencies.
|
|
|
|
A is needed by B, and B is needed by C. If C also needs A, then it needs to
|
|
be registered, and this check will tell you to do so.
|
|
|
|
Right now, it is only reporting the problems, but if you add
|
|
PROXYDEPS_FATAL=yes to your environment, it will give an error and will force
|
|
you to fix the dependencies.
|
|
|
|
20160525:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
New keyword @xmlcatmgr has been added, to handle the XML and SGML catalog
|
|
maintainance, in order to improve consistency and correctness of the
|
|
generation of the catalog.
|
|
If the catalog file has an extension being '.xml' it will be automatically
|
|
added to the XML catalog, otherwise it will be added to the SGML catalog
|
|
|
|
20160512:
|
|
AUTHOR: emaste@FreeBSD.org
|
|
|
|
"make makesum" now writes the current timestamp to distinfo when it is run.
|
|
This is done to support development and prototyping efforts for reproducible
|
|
package builds, which require some concept of a "last updated" time.
|
|
|
|
The TIMESTAMP can currently be ignored for ports that have no distinfo, and
|
|
for updates done without using "make makesum."
|
|
|
|
20160428
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
USE_RUBYGEMS has been replaced by USES=gem.
|
|
|
|
20160426:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
USE_MYSQL and USE_BDB have been replaced by USES=mysql and USES=bdb.
|
|
|
|
WANT_BDB_VER=XX should be replaced by USES=bdb:XX.
|
|
|
|
20160414:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
USE_RC_SUBR=yes has not done anything for a long time, it will now give an error.
|
|
|
|
20160413:
|
|
AUTHOR: jbeich@FreeBSD.org
|
|
|
|
Introducing CONFIGURE_OUTSOURCE. It changes HAS_CONFIGURE and GNU_CONFIGURE
|
|
by invoking configure, build and install stage outside of source tree e.g.,
|
|
|
|
$ mkdir ../.build
|
|
$ cd ../.build
|
|
$ ${OLDPWD}/configure
|
|
$ gmake
|
|
$ gmake install
|
|
|
|
20160402:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Adding ${PORTSDIR} in dependency lines is no longer necessary meaning
|
|
|
|
RUN_DEPENDS= foo:${PORTSDIR}/bar/foo
|
|
|
|
can now be written
|
|
|
|
RUN_DEPENDS= foo:bar/foo
|
|
|
|
if the path after ':' is not absolute the framework will automatically
|
|
prepend ${PORTSDIR}/
|
|
|
|
20160301:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Introduce GH_TUPLE.
|
|
|
|
GH_TUPLE allows one to put all the GH_{ACCOUNT,PROJECT,TAGNAME} into one
|
|
variable, in the form of account:project:tagname[:group]. It is helpful when
|
|
there are many submodules.
|
|
|
|
20160207:
|
|
AUTHOR: kwm@FreeBSD.org
|
|
|
|
The GNOME and MATE framework activation changed. To use the frameworks
|
|
now either gnome or mate needs to be added USES.
|
|
|
|
The usage of USE_GNOME, USE_MATE, INSTALLS_ICONS and for example
|
|
GLIB_SCHEMAS stays the same.
|
|
|
|
Like with USES, the use of USE_GNOME and so after bsd.port.pre.mk
|
|
is now forbidden.
|
|
|
|
20160112:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
Support has been added for "or later" variants of GNU licenses
|
|
(e.g. LICENSE=GPLv2+) and for Public Domain (LICENSE=PD).
|
|
|
|
Complete list of new LICENSE values:
|
|
|
|
AGPLv3+ GPLv1+ GPLv2+ GPLv3+ GPLv3RLE+ LGPL20+ LGPL21+ LGPL3+ PD
|
|
|
|
20160110:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
USE_FIREBIRD and USE_SQLITE has been replaced by USES=firebird and
|
|
USES=sqlite
|
|
|
|
20151105:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Change the meaning of NO_WRKSUBDIR to force a WRKDIR != WRKSRC.
|
|
|
|
Right now, NO_WRKSUBDIR means that the extraction does not produce a
|
|
subdirectory, and that everything goes straight into WRKDIR. It is
|
|
problematic, because during the build of a port, quite a few files
|
|
are created in there, and then, a stage directory, where everything
|
|
is installed, and then a pkg directory where the package is created,
|
|
and those often conflict, or get in the way, of the building
|
|
process.
|
|
|
|
With this, NO_WRKSUBDIR will extract the distfiles directly into
|
|
WRKSRC instead of WRKDIR. In this case, WRKSRC is artificial and is
|
|
based on PKGNAME and not DISTNAME, mitigate conflicts with rc files.
|
|
|
|
20151022:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
Improved support for USES=shebangfix
|
|
|
|
- We now support multiple values for *_OLD_CMD
|
|
- We replace more variants by default (/bin/${lang}, /usr/bin/${lang},
|
|
/usr/bin/env ${lang}).
|
|
- shebangfix now also supports lua if USES=lua is specified
|
|
- Pattern matching has been improved: we now only match whole worlds,
|
|
e.g. "/usr/bin/perl5.005" is no longer erroneously replaced with
|
|
"${perl_CMD}5.005".
|
|
|
|
Note that *_OLD_CMD entries which contain spaces must now be quoted.
|
|
|
|
20150928:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
Implemented complete support for test target.
|
|
|
|
You can now `make test' on any port to run test sequence, no-op by default.
|
|
If a port defines TEST_TARGET, it'll run sub-make with specified target,
|
|
usually `check' or `test', useful if upstream supports that. The port may
|
|
instead define custom do-test target, as well as usual satellite targets:
|
|
|
|
{pre,do,post}-test, {pre,do,post}-test-OPT, {pre,do,post}-test-OPT-off
|
|
|
|
`make test' builds and stages port first, so test may use both WRKDIR and
|
|
STAGEDIR, and both BUILD and RUN depends are available for test target.
|
|
Additionally, TEST_DEPENDS is now properly supported and may be used to
|
|
define additional depends specifically for testing.
|
|
|
|
Framework may define default tests for specific cases. For instance,
|
|
perl5.mk and cran.mk provide default test target on their own.
|
|
|
|
20150926:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
@sample now accept arguments, so it can now be used the following way:
|
|
|
|
@sample afile.sample
|
|
or
|
|
@sample path/to/example etc/target
|
|
|
|
20150926:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
New keywords are supported in pkg since 1.5.x:
|
|
@preexec <command>: execute the <command> during pre-install scripts
|
|
@postexec <command>: execute the <command> during post-install scripts
|
|
@preunexec <command>: execute the <command> during pre-deinstall scripts
|
|
@postunexec <command>: execute the <command> during post-deinstall scripts
|
|
|
|
@exec does not specify when if should be executed and is now considered as
|
|
deprecated.
|
|
|
|
20150914:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Introducing the %%PERL5_MAN1%% PLIST_SUB entry, as Perl now installs man1
|
|
pages in the same prefix as man3 pages.
|
|
|
|
20150828:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
<opt>_VARS and <opt>_VARS_OFF have been introduced to allow for a generic way
|
|
to set/append to variables.
|
|
|
|
OPT1_VARS= foo=bar baz+=bam
|
|
|
|
will set FOO to bar and append bam to BAZ if OPT1 is enabled. <opt>_VARS_OFF
|
|
works the same way, if the option is disabled.
|
|
|
|
20150818:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
The CMAKE_ENV option has been deprecated. It no longer has any effect, and
|
|
the CONFIGURE_ENV variable should be used instead.
|
|
|
|
20150818:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
<opt>_IMPLIES and <opt>_PREVENTS have been introduced to register dependency,
|
|
or conflicts between options.
|
|
|
|
OPTIONS_DEFINE= FOO BAR BAZ
|
|
|
|
FOO_IMPLIES= BAR
|
|
BAZ_PREVENTS= BAR
|
|
|
|
If the FOO option is selected, the BAR option will be enabled as well. If
|
|
the BAZ and BAR options are both enabled, an error will be given.
|
|
|
|
20150817:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
UNIQUENAME and LATEST_LINK have been removed. LATEST_LINK was only used by
|
|
ports-mgmt/pkg{,-devel} and PKGBASE can be used in its stead. UNIQUENAME was
|
|
used by USE_LDCONFIG where it was not unique enough, and as old compat shims
|
|
with options.
|
|
|
|
20150716:
|
|
AUTHOR: kwm@FreeBSD.org
|
|
|
|
USE_GHOSTSCRIPT was replaced by USES=ghostscript. The ghostscript USES
|
|
accepts version, build, run, nox11 and for version 9 the agpl argument.
|
|
If no version is specified, the default 9 for GHOSTSCRIPT_DEFAULT is honored.
|
|
|
|
20150701:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Make option target helpers have been added, it allows replacing:
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
post-patch:
|
|
${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \
|
|
${WRKSRC}/Configure ${WRKSRC}/hints/freebsd.sh
|
|
.if ${PORT_OPTIONS:MPTHREAD}
|
|
${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%|-lpthread|g;' \
|
|
${WRKSRC}/hints/freebsd.sh
|
|
.else
|
|
${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%||g;' \
|
|
${WRKSRC}/hints/freebsd.sh
|
|
.endif
|
|
|
|
with:
|
|
|
|
post-patch:
|
|
${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \
|
|
${WRKSRC}/Configure ${WRKSRC}/hints/freebsd.sh
|
|
|
|
post-patch-PTHREAD-on:
|
|
${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%|-lpthread|g;' \
|
|
${WRKSRC}/hints/freebsd.sh
|
|
|
|
post-patch-PTHREAD-off:
|
|
${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%||g;' \
|
|
${WRKSRC}/hints/freebsd.sh
|
|
|
|
20150622:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Remove USE_RCORDER, USE_RC_SUBR has been modified to support PREFIX=/usr
|
|
automatically
|
|
|
|
20150529:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Extend the multiple distfiles USE_GITHUB framework by allowing it to fetch
|
|
only additional distfiles, but not the main one. Set USE_GITHUB=nodefault
|
|
and use the GH_* variables with groups as usual.
|
|
|
|
20150528:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
USE_GITHUB can now fetch multiple distfiles. It uses a grouping feature
|
|
similar to MASTER_SITES/PATCH_SITES.
|
|
|
|
Some helpful variables are provided: WRKSRC_<group> for putting things in the
|
|
right place in post-extract, and DISTNAME_<group>/DISTFILE_<group> for use
|
|
with EXTRACT_ONLY.
|
|
|
|
A simple example:
|
|
|
|
PORTNAME= bar
|
|
PORTVERSION= 1.0
|
|
USE_GITHUB= yes
|
|
GH_ACCOUNT= foo
|
|
GH_PROJECT= ${PORTNAME}-images:images
|
|
|
|
post-extract:
|
|
@${MV} ${WRKSRC_images} ${WRKSRC}/images
|
|
|
|
It will fetch those two distfiles:
|
|
|
|
$ make fetch-urlall-list
|
|
https://codeload.github.com/foo/bar/tar.gz/1.0?dummy=/foo-bar-1.0_GH0.tar.gz
|
|
https://codeload.github.com/foo/bar-images/tar.gz/1.0?dummy=/foo-bar-images-1.0-1.0.tar.gz
|
|
|
|
It will then extract them to ${WRKDIR} in their respectives directories.
|
|
|
|
20150526:
|
|
AUTHOR: antoine@FreeBSD.org
|
|
|
|
PYTHON_REL has been switched from a 3 digits number to a 4 digits number to
|
|
handle python 2.7.10. Ports checking for python 2.7.9 should compare
|
|
PYTHON_REL against 2709 and ports checking for python 2.7.10 should compare
|
|
PYTHON_REL against 2710.
|
|
|
|
20150521:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
GH_COMMIT support has been removed, see the 20150319 for more informations.
|
|
|
|
20150419:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
USE_AUTOTOOLS has been deprecated. It can be replaced with USES=autoreconf
|
|
and GNU_CONFIGURE=yes.
|
|
|
|
Support for USE_AUTOTOOLS=libtoolize has been removed. It can be replaced
|
|
with "USES=autoreconf libtool".
|
|
|
|
20150409:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Add a new USES=gnustep to handle the GNUstep ports. Now the dependencies on
|
|
GNUstep libraries is done via the regular LIB_DEPENDS
|
|
|
|
USE_GNUSTEP is now a macro that accept many arguments: back, build, gui, back
|
|
Depending on the feature needed for a given port
|
|
|
|
Reuse USES=objc to avoid duplicating code
|
|
|
|
20150408:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Add a new USES=waf to handle the waf building system, allowing to factorise
|
|
code. Plug waf into MAKE_CMD and CONFIGURE_CMD so the regular defined targets
|
|
can be reused.
|
|
|
|
Always define _MAKE_JOBS so that when bsd.port.mk will stop overwritting
|
|
_MAKE_JOBS when parallel jobs are disabled we can enforce -j1 (which is needed
|
|
to really disable parallelisation with waf
|
|
|
|
WAF_CMD has been created to allow one to override the location of the waf
|
|
script relatively to WRKSRC
|
|
|
|
CONFIGURE_TARGET is by default defined to "configure"
|
|
ALL_TARGET is by default defined to "build"
|
|
INSTALL_TARGET is by default defined to "install"
|
|
|
|
USES=waf is by default stagedir safe
|
|
|
|
20150407:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
USE_XZ and USE_BZIP2 are not supported anymore, they have been replaced by
|
|
USES=tar:bzip2 and tar:xz
|
|
|
|
20150328:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
New "metaport" USES to take care of predefining correctly the needed
|
|
macros as expected by meta ports.
|
|
|
|
20150323:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Remove "@fc" and "@fontsdir". All fonts should always use @fcfontsdir which
|
|
Properly takes care of the fonts.dir and fonts.scale cache files as well
|
|
as ensure to properly update the fontconfig cache
|
|
|
|
New "fonts" USES. It defines the default variables needed for fonts and also
|
|
takes care of the run time dependencies
|
|
|
|
20150326:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
PTHREAD_CFLAGS and PTHREAD_LIBS have been removed. Please see entry
|
|
20130207 for more information.
|
|
|
|
20150319:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
MASTER_SITE GHR (GITHUB_RELEASE) has been removed. The same functionality
|
|
can be achieved with just USE_GITHUB/GH_ACCOUNT/GH_PROJECT. GH_TAGNAME
|
|
defaults to DISTVERSION. If the tag needs to be adjusted then change
|
|
GH_TAGNAME. No GH_COMMIT is needed.
|
|
|
|
20150319:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
USE_GITHUB has been updated to make GH_COMMIT optional. Using this new
|
|
scheme allows only setting the _tag_ or _commit hash_ in GH_TAGNAME and
|
|
not having to know the hash for a tag. This scheme will download a tarball
|
|
that has a different checksum than before due to a changed directory name
|
|
for extraction.
|
|
|
|
GH_TAGNAME can now be any length of the hash as long as it is unique. There
|
|
is no longer a 7-character requirement.
|
|
|
|
The following MASTER_SITES are provided to retain the old checksum and
|
|
directory structure (that require GH_COMMIT):
|
|
GH -> GHL
|
|
GITHUB -> GITHUB_LEGACY
|
|
|
|
20150305:
|
|
AUTHOR: olivierd@FreeBSD.org
|
|
|
|
Dependencies on the Xfce ports have been migrated to USES. Instead
|
|
of USE_XFCE= configenv, you should use USES= xfce.
|
|
|
|
20150224:
|
|
AUTHOR: makc@FreeBSD.org
|
|
|
|
New USE_QT4 component has been introduced to reduce buildtime
|
|
dependencies for Qt 4 ports that use localization support. Instead
|
|
of USE_QT4=linguist you should now use USE_QT4=linguisttools_build.
|
|
Conversion of existing ports may require USE_QT4 adjustment for
|
|
missing components.
|
|
|
|
20141217:
|
|
AFFECTS: users of lang/perl5.*
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
Perl now links libperl.so with all .so it builds. The stage-qa checks have
|
|
been extended to check that libperl.so is in fact linked with .so in
|
|
SITE_ARCH and errors out if none of the .so build by a port are linked with
|
|
it. It also checks that the rpath and runpath elf attributes are present.
|
|
|
|
20141130:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
The devel/gettext port has been split up in devel/gettext-runtime which
|
|
contains runtime libraries such as libintl, and devel/gettext-tools which
|
|
contains build tools such as msgfmt. You can use USES=gettext-runtime to
|
|
set a LIB/BUILD/RUN_DEPENDS on devel/gettext-runtime and USES=gettext-tools
|
|
to set a BUILD/RUN_DEPENDS on devel/gettext-tools.
|
|
|
|
USES=gettext is now the same as "USES=gettext-runtime gettext-tools",
|
|
meaning a LIB_DEPENDS on devel/gettext-runtime and a BUILD_DEPENDS on
|
|
devel/gettext-tools.
|
|
|
|
20141126:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
The way Perl modules are installed has changed. Before, we had
|
|
|
|
site_perl : lib/perl5/site_perl/5.18
|
|
site_perl/perl_arch : lib/perl5/site_perl/5.18/mach
|
|
perl_man3 : lib/perl5/5.18/man/man3
|
|
|
|
Now we have :
|
|
|
|
site_perl : lib/perl5/site_perl
|
|
site_arch : lib/perl5/site_perl/mach/5.18
|
|
perl_man3 : lib/perl5/site_perl/man/man3
|
|
|
|
Modules without any .so will be installed at the same place regardless of the
|
|
Perl version, minimizing the upgrade when the major Perl version is changed.
|
|
It uses a version dependent directory for modules with compiled bits.
|
|
|
|
As PERL_ARCH is no longer needed in plists, it has been removed from
|
|
PLIST_SUB.
|
|
|
|
The USE_PERL5=fixpacklist keyword is removed, the .packlist file is now
|
|
always removed, as is perllocal.pod.
|
|
|
|
The old site_perl and site_perl/arch directories have been kept in the
|
|
default Perl @INC for all Perl ports, and will be phased out as these old
|
|
Perl versions expire.
|
|
|
|
20141122:
|
|
AUTHOR: crees@FreeBSD.org
|
|
|
|
Dependencies on the PostgreSQL ports have been migrated
|
|
to USES. Instead of USE_PGSQL, please use USES=pgsql instead.
|
|
|
|
USE_PGSQL=yes becomes USES=pgsql
|
|
WANT_PGSQL_VER=91+ becomes USES=pgsql:9.1+
|
|
USE_PGSQL=server becomes USES=pgsql and WANT_PGSQL=server
|
|
|
|
20141118:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
To ease future work, a new SITE_ARCH variable and PLIST_SUB replacement
|
|
containing SITE_PERL/PERL_ARCH has been added.
|
|
|
|
20141102:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
SSP is now default. This can be disabled with WITHOUT_SSP.
|
|
SSP_CFLAGS defaults to -fstack-protector.
|
|
SSP will be used on all amd64 releases. It will only be used on i386
|
|
releases over 10.0.
|
|
|
|
20141007:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
The @cwd [path] construct in plist files is deprecated. Instead of adding
|
|
those lines to the plist:
|
|
|
|
@cwd /
|
|
etc/rc.d/foo
|
|
var/db/bar
|
|
@cwd /some
|
|
@exec mkdir -p %D/nested/dir
|
|
|
|
add this:
|
|
|
|
/etc/rc.d/foo
|
|
/var/db/bar
|
|
@exec mkdir -p /some/nested/dir
|
|
|
|
20141002:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
New BUNDLE_LIBS knobs to allow a port to tell pkg(8) not to compute provided
|
|
libraries, this is to be used when a port bundles libraries it doesn't want
|
|
to expose to other ports.
|
|
|
|
20141001:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
Support for autoconf213, autoheader213, aclocal14 and automake14 has been
|
|
removed from USE_AUTOTOOLS.
|
|
|
|
20140930:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
Building ports in a chroot or jail have always required a particular
|
|
environment be setup. This was not clear though and the ports framework
|
|
did not enforce it. These requirements are:
|
|
1. Either a SRC_BASE/sys/sys/param.h, or /usr/include/sys/param.h be
|
|
present with the __FreeBSD_version_ number of the target system,
|
|
or OSVERSION be set in the environment. Lack of these would fallback
|
|
on kern.osreldate before, which is no longer the case.
|
|
2. UNAME_r,UNAME_v,UNAME_s all must be set for the target system.
|
|
|
|
Not having these values in sync will now cause the build to error until it is
|
|
resolved.
|
|
|
|
Setting these in the environment can be done via your own wrapper scripts,
|
|
or /etc/login.conf (along with cap_mkdb /etc/login.conf) or
|
|
via /etc/make.conf using appropriate values. Note that OSVERSION is redundant
|
|
if a proper param.h is in the environment:
|
|
|
|
OSVERSION+= 1100036
|
|
UNAME_ENV+= OSVERSION=${OSVERSION}
|
|
UNAME_ENV+= UNAME_s=FreeBSD
|
|
UNAME_ENV+= UNAME_r=11.0-CURRENT
|
|
UNAME_ENV+= UNAME_v="${UNAME_s} ${UNAME_r}"
|
|
.MAKEFLAGS: ${UNAME_ENV}
|
|
MAKE_ENV+= ${UNAME_ENV}
|
|
CONFIGURE_ENV+= ${UNAME_ENV}
|
|
SCRIPTS_ENV+= ${UNAME_ENV}
|
|
|
|
20140922:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
pkg(8) now handles the directories under PREFIX automatically,
|
|
and will automatically remove them as needed.
|
|
A new @dir keyword has been introduced to handle directories specially:
|
|
- directories with special owner, group, or permissions (access mode)
|
|
- empty directories
|
|
- directories out of PREFIX
|
|
As a consequence @dirrm and @dirrmtry are now considered deprecated.
|
|
|
|
Credentials can now be passed in arguments to keywords
|
|
(the empty keyword means "regular file"):
|
|
@(user,group,mode) file1
|
|
@dir(user,group,mode) directory_with_special_owner_or_mode
|
|
|
|
PLIST_DIRSTRY is now considered deprecated, use PLIST_DIRS instead.
|
|
|
|
20140917:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
Support for USE_AUTOTOOLS=libtool, USE_GNOME=ltasneededhack,
|
|
USE_GNOME=lthack and USE_GNOME=ltverhack has been removed.
|
|
Ports should use USES=libtool instead.
|
|
|
|
Support for USE_AUTOTOOLS=libltdl has been removed.
|
|
Ports should use LIB_DEPENDS=libltdl.so:${PORTSDIR}/devel/libltdl
|
|
|
|
20140916:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
The installation of *.la files without some form of USES=libtool in the
|
|
port Makefile will now result in a stage-qa error.
|
|
Previously this would only cause a warning.
|
|
|
|
The :keepla argument to USES=libtool is no longer special. It is now
|
|
only needed if a port uses *.la files at run time and no longer to fix
|
|
link problems in other ports.
|
|
|
|
20140901:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Support for pkg_install has been removed.
|
|
Note that WITH_PKGNG is now called 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 function, see HANDLE_RC_SCRIPTS in pkg.conf(5).
|
|
|
|
20140901:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Support for NO_STAGE has been removed.
|
|
|
|
20140825:
|
|
AUTHOR: antoine@FreeBSD.org
|
|
|
|
Support for NOPORTDATA has been removed.
|
|
|
|
20140809:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20140715:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
LIB_DEPENDS only supports one form: lib*.so
|
|
|
|
20140708:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20140623:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20140607:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20140529:
|
|
AUTHOR: miwi@FreeBSD.org
|
|
|
|
USE_GMAKE is no longer supported, please use USES=gmake instead
|
|
|
|
20140526:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
USE_DOS2UNIX is no longer supported, USES=dos2unix should be used instead
|
|
|
|
20140525:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20140505:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
: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)
|
|
|
|
20140428:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
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)
|
|
|
|
20140423:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20140419:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
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
|
|
|
|
20140416:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
The default target for 'make' now runs 'make stage' if the port supports
|
|
it, otherwise 'make build' as before.
|
|
|
|
20140411:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
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
|
|
|
|
20140312:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
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
|
|
|
|
20140307:
|
|
AUTHOR: rene@FreeBSD.org
|
|
|
|
Two new USES were added by bapt@FreeBSD.org :
|
|
|
|
USES=zip handles distribution files in Zip format. InfoZip files
|
|
need USES=zip:infozip
|
|
|
|
USES=makeself handles distribution files in makeself format.
|
|
|
|
20140303:
|
|
AUTHOR: kde@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20140224:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Deprecate support for KNOBS, the new option framework allows to express a
|
|
more consistent, user friendly and visible way the same feature.
|
|
|
|
20140127:
|
|
AUTHOR: mat@FreeBSD.org
|
|
|
|
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'
|
|
|
|
20140111:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20131218:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
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.
|
|
|
|
20131213:
|
|
AUTHOR: tijl@FreeBSD.org
|
|
|
|
New USES=fortran to replace USE_FORTRAN.
|
|
|
|
USE_FORTRAN=yes can be replaced with USES=fortran or USES=fortran:gcc.
|
|
USE_FORTRAN=ifort can be replaced with USES=fortran:ifort.
|
|
USE_FORTRAN=f77 is deprecated and the version of gcc it depends
|
|
on (lang/gcc34) is scheduled to be removed.
|
|
|
|
Note that USE_FORTRAN=yes also makes GCC the C/C++ compiler while
|
|
USES=fortran only sets the Fortran compiler and can be used together
|
|
with Clang as C/C++ compiler.
|
|
|
|
20131208:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
New USES=twisted, to replace the old USE_TWISTED knob.
|
|
|
|
twisted can be configured with the arguments run or build to replace
|
|
the previous USE_TWISTED_RUN and USE_TWISTED_BUILD knobs. The twisted
|
|
components can be added as comma-separated arguments. If you previously
|
|
wrote
|
|
USE_TWISTED= yes
|
|
USE_TWISTED= conch names
|
|
USE_TWISTED_RUN= yes
|
|
you now would write
|
|
USES= twisted
|
|
USES= twisted:conch,names
|
|
USES= twisted:run
|
|
|
|
20131119:
|
|
AUTHOR: kwm@FreeBSD.org
|
|
|
|
The USE_GNOME component ltverhack no longer has a hard dependancy on
|
|
libtool.
|
|
|
|
If USE_AUTOTOOLS=libtool isn't defined it will try to patch ltmain.sh
|
|
and or libtool in ${WRKSRC}. If those files are located somewhere else
|
|
in ${WRKSRC} then it is possible to overwrite ltverhack_PATCH_FILES
|
|
with there new locations. configure script --distable-static will work also
|
|
after using the "new" ltverhack.
|
|
|
|
Please keep in mind that USE_AUTOTOOLS implies GNU_CONFIGURE so you might
|
|
need to add that back for the port to work.
|
|
|
|
20131031:
|
|
AUTHOR: rene@FreeBSD.org
|
|
|
|
Add a new USES for kernel module ports.
|
|
|
|
USES=kmod takes no arguments and:
|
|
- adds kld to CATEGORIES
|
|
- sets SSP_UNSAFE
|
|
- sets IGNORE if the kernel sources are not found
|
|
- defines KMODDIR to /boot/modules by default, add it to
|
|
PLIST_SUB and MAKE_ENV, and create it upon installation
|
|
- handles cross-referencing kernel modules upon installation and
|
|
deinstallation
|
|
|
|
20131021:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
share/applications directory was added to the mtree, meaning that
|
|
you no longer need to create or remove it in your ports.
|
|
|
|
20131008:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
New "compiler" USES to be able to select the compiler based on the
|
|
features it provides.
|
|
Supported arguments are:
|
|
- c++11-lang: the port needs a c++11 aware compiler what ever standard
|
|
library it uses, implies features
|
|
- c++11-lib: the port needs a c++11 standard library, implies features
|
|
- c11: the ports needs a c11 aware compiler implies features
|
|
- features: this will create a COMPILER_FEATURES variable which contains
|
|
the list of features ${CC} do support, implies env.
|
|
- env: the COMPILER_TYPE will be set to either gcc or clang.
|
|
|
|
By default the uses will try to use clang33 from ports when nothing in
|
|
base is relevant except if the user explicitly defines
|
|
FAVORITE_COMPILER=gcc in his make.conf
|
|
|
|
20131008:
|
|
AUTHOR: makc@FreeBSD.org
|
|
|
|
New USES: qmake, configure tool widely used among Qt based projects.
|
|
New framework is stage-friendly. To convert existing ports remove
|
|
custom configure target, adjust QMAKE_ENV, QMAKE_ARGS, QMAKE_PRO if
|
|
required (see Mk/Uses/qmake.mk for details).
|
|
|
|
20131005:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
PATCHFILES now support an optional :-pX flag that notes which patch strip
|
|
level to use. This allows multiple patches in 1 port to use different
|
|
PATCH_DIST_STRIP values without changing PATCH_DIST_STRIP.
|
|
|
|
Syntax: PATCHFILES= patch[:-pX][:distgroup]
|
|
|
|
20131003:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
New USES: scons, to handle properly the scons building system, this
|
|
this also gives the scons packages user the ability to respect MAKE_JOBS.
|
|
|
|
20130924:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
Stage aware ports can now create package without the requirement from
|
|
being root.
|
|
If a port really needs root anyway it should add NEED_ROOT in its
|
|
Makefile.
|
|
|
|
For a port that needs special credential on files DO NOT RELY on
|
|
chown in post-install section but rely on @own, @group in pkg-plist
|
|
Be careful about rights on directories as pkg_install cannot store them
|
|
they needs to be done via @exec chown.
|
|
|
|
20130923:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
The ports tree is now staged by default. With pkgng the sequence hasn't
|
|
changed, the main difference is that creating package is now independent
|
|
from installing it. With pkg_install, the package is now created first
|
|
and make install, do install the package.
|
|
|
|
New macros:
|
|
- STAGEDIR: PATH to the directory where the port will be staged.
|
|
- NO_STAGE: Keep the old behaviour of the ports tree (aka no staging area)
|
|
|
|
Unsupported macro if NO_STAGE is not set:
|
|
- MAN* with staging man page compression and handling of hardlinks and
|
|
symlinks is automatically done in the stage. the manpages becomes then a
|
|
"normal" plist files and should be tracked in pkg-plist.
|
|
- MANCOMPRESSED the compress-man target is able to only compress when it
|
|
needed.
|
|
|
|
New target:
|
|
- stage: this installs everything into the stage directory
|
|
- makeplist: this will create a pkg-plist and print it to stdout. This is
|
|
a sample plist and it should always be _reviewed_ not directly used.
|
|
|
|
NOTE: with staging only what is in the plist will be installed, nothing more,
|
|
meaning a port staged cannot have leftovers except directories left. It is
|
|
really important to double check the pkg-plist to make sure all the files
|
|
the maintainer wants to package are in! make makeplist can help in that area.
|
|
|
|
20130923:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
* New USES: zope
|
|
|
|
This replaces the previous USE_ZOPE knob. All other zope related knobs
|
|
for port Makefiles still exist. See Mk/Uses/zope.mk for details.
|
|
|
|
20130920:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
SSP support has been added to ports with WITH_SSP_PORTS for i386 and amd64
|
|
on FreeBSD 10, and amd64 on earlier versions.
|
|
|
|
SSP_UNSAFE is added to disable in a port if it fails to build, but
|
|
this should only be used in rare circumstances such as kernel modules.
|
|
Otherwise, the port may just be failing due to lack of respecting
|
|
LDFLAGS.
|
|
|
|
On FreeBSD 10, this uses an ldscript in /usr/lib/libc.so to pull in
|
|
libssp_nonshared.a to address issues linking on i386 [1].
|
|
|
|
On earlier FreeBSD versions the WITH_SSP_PORTS knob will add -lssp_nonshared
|
|
to LDFLAGS on i386. This is not needed on amd64. However, several hundred
|
|
ports do not currently respect LDFLAGS, so this support is disabled currently
|
|
as it causes build failures if a dependency is looking for the stack_chk
|
|
symbols.
|
|
|
|
[1] http://svnweb.freebsd.org/base/head/lib/libc/libc.ldscript?revision=251668&view=markup
|
|
|
|
20130919:
|
|
AUTHOR: gahr@FreeBSD.org
|
|
|
|
* New USES: tcl, tk
|
|
|
|
This uses replaces all the previous USE_TCL, USE_TCL_BUILD, USE_TCL_RUN,
|
|
USE_TCL_WRAPPER, USE_TK, USE_TK_BUILD, USE_TK_RUN and USE_TK_WRAPPER macros.
|
|
|
|
See the Mk/Uses/tcl.mk and the commit message of r327607 for details.
|
|
|
|
Moreover, the default Tcl/Tk version is now specified in terms of
|
|
bsd.default-versions.mk. It is now possible to specify one's preferred Tcl/Tk
|
|
version using DEFAULT_VERSIONS+= tcltk=x.y in make.conf.
|
|
|
|
20130918:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
The perl framework is not included unconditionally and the old framework
|
|
is not recognized anymore, the following MACROS has been removed:
|
|
|
|
* PERL_CONFIGURE
|
|
* USE_PERL5_RUN
|
|
* USE_PERL5_BUILD
|
|
* PERL_MODBUILD
|
|
|
|
20130904:
|
|
AUTHOR: madpilot@FreeBSD.org
|
|
|
|
To allow ports to work with the iconv implementation in 10-CURRENT after
|
|
commit r254273 the USES=iconv options now conditionally adds a dependency
|
|
depending on the FreeBSD version. It also defines a few utility variables
|
|
which can be used in the ports:
|
|
|
|
ICONV_CMD: location of the iconv binary.
|
|
after r254273: /usr/bin/iconv
|
|
before: ${LOCALBASE}/bin/iconv
|
|
|
|
ICONV_LIB: ld(1) flags to get the iconv DSO.
|
|
after r254273: empty
|
|
before: -liconv
|
|
|
|
ICONV_CONFIGURE_ARG: String that can be passed to configure
|
|
scripts to hint the location of the libiconv library.
|
|
after r254273: empty
|
|
before: --with-libiconv-prefix=${LOCALBASE}
|
|
|
|
20130902:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
USE_GNOME=pkgconfig is not supported anymore by the ports tree, please
|
|
uses: USES=pkgconfig
|
|
|
|
20130831:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
crees has added USE_PACKAGE_DEPENDS_ONLY which works like
|
|
USE_PACKAGE_DEPENDS but will not fallback on source if a
|
|
package is missing.
|
|
|
|
20130731:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New USES: perl5
|
|
|
|
This uses replaces all the previous perl macros. Here is how to migrate:
|
|
|
|
Always include perl5:
|
|
USES= perl5
|
|
|
|
If USE_PERL5 is undefined then perl5 will be a build and run dependency
|
|
Migrating to new USE_PERL5:
|
|
|
|
=======================================================
|
|
| BEFORE | AFTER |
|
|
=======================================================
|
|
| PERL_CONFIGURE=yes | USE_PERL5= configure |
|
|
-------------------------------------------------------
|
|
| USE_PERL5_RUN=yes | USE_PERL5=run |
|
|
-------------------------------------------------------
|
|
| USE_PERL5_BUILD=yes | USE_PERL5=build |
|
|
-------------------------------------------------------
|
|
| PERL_MODBUILD=yes | USE_PERL5=modbuild |
|
|
-------------------------------------------------------
|
|
| USE_PERL5=yes | |
|
|
-------------------------------------------------------
|
|
| USE_PERL5=5.14+ | USE_PERL5= 5.14+ |
|
|
-------------------------------------------------------
|
|
| PERL_CONFIGURE= 5.14+ | USE_PERL5=5.14+ configure |
|
|
-------------------------------------------------------
|
|
| PERL_MODBUILD= 5.14+ | USE_PERL5=5.14+ modbuild |
|
|
-------------------------------------------------------
|
|
|
|
20130726:
|
|
AUTHOR: rene@FreeBSD.org
|
|
|
|
* With the removal of QT 3/KDE 3, the following are no longer recognized:
|
|
- USE_KDEBASE_VER
|
|
- USE_KDELIBS_VER
|
|
- USE_QT_VER
|
|
|
|
Mk/bsd.kde.mk has been removed, it was only used for QT 3/KDE 3.
|
|
|
|
20130628:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New USES: imake
|
|
|
|
This uses replaces USE_IMAKE, it handles dependency on imake. Its only argument
|
|
is 'env', which prevent from defining the do-configure target.
|
|
|
|
* New LATE_INSTALL_TARGET
|
|
|
|
This content of this new macro is appended to INSTALL_TARGET
|
|
|
|
20130620:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New USES: fmake
|
|
|
|
This uses will allow to build ports using the legacy FreeBSD make, for ports
|
|
not compatible with bmake
|
|
|
|
20130614:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New macros to help dealing with ports that have options:
|
|
|
|
OPTIONS_SUB=yes when set in a port, all the option names are automatically
|
|
added to the PLIST_SUB with "@comment " value in case the option is off and
|
|
empty value in case the options is on.
|
|
|
|
${OPT}_CONFIGURE_ENABLE=<aname> will automatically add:
|
|
CONFIGURE_ARGS+=--enable-<aname> in case OPT is activated
|
|
CONFIGURE_ARGS+=--disable-<aname> in case OPT is deactivated
|
|
|
|
${OPT}_CONFIGURE_ON=<something> will automatically add:
|
|
CONFIGURE_ARGS+=<something> in case OPT is activated
|
|
|
|
${OPT}_CONFIGURE_OFF=<something> will automatically add:
|
|
CONFIGURE_ARGS+=<something> in case OPT is deactivated
|
|
|
|
${OPT}_CFLAGS will append the specified new flags to CFLAGS if OPT is 'on'
|
|
${OPT}_CXXFLAGS will append the specified new flags to CXXFLAGS if OPT is 'on'
|
|
${OPT}_LDFLAGS will append the specified new flags to LDFLAGS if OPT is 'on'
|
|
|
|
${OPT}_CONFIGURE_ENV will append the specified variables to CONFIGURE_ENV if
|
|
OPT is 'on'
|
|
${OPT}_MAKE_ENV will append the specified variables to MAKE_ENV if OPT is 'on'
|
|
|
|
${OPT}_USES will append the speficied uses to USES if OPT is 'on'
|
|
|
|
${OPT}_DISTFILES will append the specified distiles to DISTFILES if OPT in 'on'
|
|
|
|
${OPT}_CMAKE_ON=<something> will automatically add:
|
|
CMAKE_ARGS+=<something> in case OPT is activated
|
|
|
|
${OPT}_CMAKE_OFF=<something> will automatically add:
|
|
CMAKE_ARGS+=<something> in case OPT is deactivated
|
|
|
|
${OPT}_${TYPE}_DEPENDS=<something> will automatically add:
|
|
${TYPE_DEPENDS}+=<something> in case OPT is 'on'
|
|
|
|
20130614:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New 'display' USES macro to handle building ports that may require a
|
|
a display to build.
|
|
|
|
USES= display[:install] will start Xvfb and set the DISPLAY environment
|
|
variable before the installation phase and stop it at the end. (install is
|
|
the implicit value)
|
|
|
|
USES= display:build will start Xvfb and set the DISPLAY environment variable
|
|
before the build phase and stop it at the end.
|
|
|
|
20130607:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
* Checks were added to block GH_TAGNAME=master as this is not a valid
|
|
setup. A known hash or tag should be used for GH_TAGNAME instead of
|
|
a branch name. As soon as a branch is updated, the known checksum
|
|
in the distinfo would then be invalid.
|
|
|
|
20130606:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
* WRKSRC_SUBDIR has been added to simplify overriding WRKSRC
|
|
to use a subdirectory:
|
|
|
|
WRKSRC= ${WRKDIR}/${DISTNAME}/src
|
|
|
|
Becomes:
|
|
|
|
WRKSRC_SUBDIR= src
|
|
|
|
20130606:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
The OPTIONS macro is no longer recognized, please use the new options
|
|
framework.
|
|
|
|
20130509:
|
|
AUTHOR: kwm@FreeBSD.org
|
|
|
|
* Two new USES macros to handle mime data of ports.
|
|
|
|
USES= desktop-file-utils
|
|
Handles MimeType in .desktop files that are installed in
|
|
share/applications.
|
|
USES= shared-mime-info
|
|
For supporting mime xml files installed in
|
|
share/mime/packages.
|
|
|
|
The desktop-file-utils USES is only needed if the .desktop files
|
|
installed by the port has a MimeType field.
|
|
USE_GNOME=desktopfileutils is deprecated.
|
|
|
|
The shared-mime-info USES handles mime types xml files.
|
|
Please note that only the packages/${NAME}.xml file should be listed in
|
|
the plist. The shared-mime-info port will clean up the share/mime/*
|
|
directories and generated files.
|
|
|
|
Both USES have there own post-install and code that adds @exec/@unexec
|
|
lines to the pkg-plist. This means that when a port switches to the
|
|
USES macro, the related post-install command and @exec/@unexec
|
|
lines can be removed from the prot.
|
|
|
|
20130507:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New USES macro to handle setting correct shebang to scripts
|
|
|
|
By default it will fix bash, perl, php, ruby and python on all files specified
|
|
in the SHEBANG_FILES macro (glob pattern relative to ${WRKSRC})
|
|
|
|
Paths can be customized, and number of languages supported can be extended.
|
|
|
|
* USE_GETTEXT, USE_NCURSES, USE_READLINE are no longer recognized
|
|
|
|
20130506:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New USES macro to handle linking on ncurses and on readline
|
|
|
|
USES= ncurses will set env and make the port link to base version of ncurses
|
|
if no port version is installed otherwise it will link against port version
|
|
USES= ncurses:port will for the port to link against the ports version of
|
|
ncurses
|
|
USES= ncurses:base will force to link against base version of ncurses.
|
|
|
|
USES= readline will make the port link against base version of readline except
|
|
on 10+ where it will force dependency on the port version of readline
|
|
USES= readline:port will anyway force dependency on the port version of
|
|
readline.
|
|
|
|
20130426:
|
|
AUTHOR: mva@FreeBSD.org
|
|
|
|
* USE_ICONV has been deprecated and converted into the iconv USE
|
|
feature
|
|
|
|
USES= iconv
|
|
|
|
20130425:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* USE_CDRTOOLS is no longer recognized
|
|
* USE_FREETYPE is no longer recognized
|
|
|
|
20130423:
|
|
AUTHOR: jgh@FreeBSD.org
|
|
|
|
* New USES macro to handle support for gettext dependency:
|
|
|
|
USES= gettext:build will add gettext into BUILD_DEPENDS
|
|
USES= gettext:run will add gettext into RUN_DEPENDS
|
|
USES= gettext:lib will add gettext into LIB_DEPENDS
|
|
|
|
It deprecates USE_GETTEXT which will be removed as soon as it is not
|
|
used anymore
|
|
|
|
20130422:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
* The entry for 20120830 to change CCACHE_DIR was not fully supported
|
|
by all ports. There is now a CCACHE_DIR variable that can be used
|
|
in /etc/make.conf for more complete coverage:
|
|
|
|
CCACHE_DIR=/var/cache/ccache
|
|
|
|
20130422:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New USES macro to handle support for pkgconf (pkg-config) dependency:
|
|
|
|
USES= pkgconfig[:build] will add pkgconf into BUILD_DEPENDS
|
|
USES= pkgconfig:run will add pkgconf into RUN_DEPENDS
|
|
USES= pkgconfig:both will add pkgconf into both RUN and BUILD DEPENDS
|
|
|
|
It deprecates USE_PKGCONFIG which will be removed as soon as it is not
|
|
used anymore
|
|
|
|
20130320:
|
|
AUTHOR: jgh@FreeBSD.org
|
|
|
|
* New USES macro to handle support for Zenoss ports and Zenpacks:
|
|
|
|
USES= zenoss
|
|
|
|
20130319:
|
|
AUTHOR: makc@FreeBSD.org
|
|
|
|
* New USES macro should be used instead of deprecated USE_CMAKE and
|
|
CMAKE_OUTSOURCE:
|
|
|
|
USES= cmake:outsource
|
|
to perform out-of-source build (equivalent to former pair usage of
|
|
USE_CMAKE/CMAKE_OUTSOURCE)
|
|
|
|
USES= cmake
|
|
In-source build (equivalent to plain USE_CMAKE=yes) can be used if
|
|
project doesn't support out-of-source build.
|
|
|
|
20130319:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* The options framework now uses ports-mgmt/dialog4ports contributed by
|
|
Ilya A. Arkhipov. It boostraps it if not present when one calls
|
|
make config.
|
|
|
|
dialog4ports provides a new UI able to represent all the features
|
|
provided by the new options framework.
|
|
|
|
20130315:
|
|
AUTHOR: bdrewery@FreeBSD.org
|
|
|
|
* USE_QMAIL_RUN, USE_QMAIL_BUILD and WANT_QMAIL have been removed
|
|
and converted into the qmail USE feature
|
|
|
|
USES= qmail:run will add qmail into RUN_DEPENDS
|
|
USES= qmail:build will add qmail into BUILD_DEPENDS
|
|
USES= qmail[:both] will add qmail into both RUN and BUILD DEPENDS
|
|
USES= qmail:vars will set QMAIL_PREFIX
|
|
|
|
20130315:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* Add new Keywords directory and first info.yaml keyword (@info).
|
|
Keywords directory will contain all the custom plist keywords allowing to
|
|
extend pkg-plist with new keywords. Only works with pkgng.
|
|
|
|
20130307:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* New USES macro to handle on demand features, 2 examples has been added to
|
|
the ports tree:
|
|
|
|
pathfix: to replace USE_GNOME= gnomehack
|
|
fuse: to replace USE_FUSE= yes
|
|
|
|
20130207:
|
|
AUTHOR: gahr@FreeBSD.org
|
|
|
|
* Use of PTHREAD_CFLAGS and PTHREAD_LIBS is unsupported. The former
|
|
expands to the empty string, while the second is simply -pthread.
|
|
Please use -pthread directly in your LDFLAGS, if needed.
|
|
|
|
20121214:
|
|
AUTHOR: flo@FreeBSD.org
|
|
|
|
* Add a USE_FUSE macro to handle fuse dependencies. It makes
|
|
sure sysutils/fusefs-libs gets installed and depending on
|
|
fuse being in base or not it installs sysutils/fusefs-kmod.
|
|
|
|
20121210:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
* OPTIONS has been extended 2 new macros are available:
|
|
|
|
OPTIONS_RADIO - allows only 0 or 1 options to be selected
|
|
OPTIONS_GROUP - allows 0 or N options among to be selected
|
|
|
|
20121010:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* IPV6 option is now activated by default for the whole ports tree
|
|
|
|
20121010:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* The ports tree is now using pkgng as the default package manager
|
|
for HEAD. This only affects users of CURRENT -- users of other
|
|
branches need not take any action.
|
|
|
|
To keep pkg_install as the default package manager, use the new
|
|
WITHOUT_PKGNG knob in make.conf
|
|
|
|
20120830:
|
|
AUTHOR: beat@FreeBSD.org
|
|
|
|
* CCACHE support for building ports has been added (depends on
|
|
devel/ccache). Therefore new user settable variables are available:
|
|
|
|
WITH_CCACHE_BUILD - Enable CCACHE support (Default off)
|
|
|
|
NO_CCACHE - Disable CCACHE support for example for certain
|
|
ports if CCACHE is enabled.
|
|
|
|
By default CCACHE uses $HOME/.ccache as cache directory. To use
|
|
a non-default cache directory this could be overwritten like:
|
|
|
|
MAKE_ENV+= CCACHE_DIR=/var/cache/ccache
|
|
|
|
20120820:
|
|
AUTHOR: gahr@FreeBSD.org
|
|
|
|
* GitHub support has been integrated into bsd.sites.mk. In order to
|
|
fetch distfiles from GitHub, a port must define USE_GITHUB along
|
|
with the following variables:
|
|
|
|
GH_ACCOUNT - account name of the GitHub user hosting the project
|
|
default: not set, mandatory
|
|
|
|
GH_PROJECT - name of the project on GitHub
|
|
default: ${PORTNAME}
|
|
|
|
GH_TAGNAME - name of the tag to download (master, 2.0.1, ...)
|
|
default: ${DISTVERSION}
|
|
|
|
GH_COMMIT - first 7 digits of the commit that generated GH_TAGNAME
|
|
(man git-describe(1))
|
|
default: not set, mandatory
|
|
|
|
The port www/tivoka is an example how to use this mechanism.
|
|
|
|
20120726:
|
|
AUTHOR: bapt@FreeBSD.org
|
|
|
|
* new macro USE_PKGCONFIG has been introduce in place of
|
|
USE_GNOME= pkgconfig
|
|
|
|
USE_PKGCONFIG= yes and USE_PKGCONFIG= build
|
|
for build only dependency
|
|
|
|
USE_PKGCONFIG= run
|
|
for run only dependency
|
|
|
|
USE_PKGCONFIG= both
|
|
for both build and run dependency
|
|
|
|
20120715:
|
|
AUTHOR: beat@FreeBSD.org
|
|
|
|
* The ports tree moved from CVS to Subversion. A Subversion to
|
|
CVS exporter is in place to continue the support of CVSup but
|
|
do not commit to pcvs directly.
|
|
|
|
All commits have to be done in the new port Subversion repository
|
|
on svn.FreeBSD.org. You will find more information about
|
|
Subversion in the Ports Subversion Primer in the FreeBSD wiki,
|
|
in the "Committer's Guide" and the "Porter's Handbook".
|
|
|
|
If you are in doubt or unsure about a Subversion operation
|
|
please contact ports@FreeBSD.org.
|
|
|
|
20120529:
|
|
AUTHOR: crees@FreeBSD.org
|
|
|
|
* OPTIONS has been updated with many changes and improvements.
|
|
|
|
Old-style OPTIONS declarations will continue to work for a while,
|
|
but do not introduce any into existing or new ports.
|
|
|
|
For further information, see the Porter's Handbook section on
|
|
Makefile Options.
|
|
|
|
20110923:
|
|
AUTHOR: amdmi3@FreeBSD.org
|
|
|
|
* LDFLAGS is now passed to both the configure and make environments,
|
|
and should be handled just like CPPFLAGS (see previous entry).
|
|
|
|
Summarizing both LDFLAGS and CPPFLAGS changes, where you would
|
|
have used
|
|
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
|
|
LDFLAGS="-L${LOCALBASE}/lib"
|
|
MAKE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
|
|
LDFLAGS="-L${LOCALBASE}/lib"
|
|
now just use
|
|
CPPFLAGS+= "-I${LOCALBASE}/include"
|
|
LDFLAGS+= "-L${LOCALBASE}/lib"
|
|
|
|
Note that it's advised to append these variables (+=) instead
|
|
of overriding (=) to allow customization by user.
|
|
|
|
20110320:
|
|
AUTHOR: gerald@FreeBSD.org
|
|
|
|
* CPPFLAGS is now passed to both the configure and make environments,
|
|
so this no longer needs to happen in individual ports by adding this
|
|
to CONFIGURE_ENV or MAKE_ENV. Rather, just set CPPFLAGS in the port
|
|
Makefile (if necessary).
|
|
|
|
For example, where you would have used
|
|
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include"
|
|
MAKE_ENV= SOMETHING=foo CPPFLAGS="-I${LOCALBASE}/include"
|
|
now just use
|
|
CPPFLAGS= "-I${LOCALBASE}/include"
|
|
MAKE_ENV SOMETHING=foo
|
|
|
|
20100831:
|
|
AUTHOR: autotools@FreeBSD.org
|
|
|
|
* USE_GETTEXT has been cleaned up.
|
|
'build' BUILD time dependency only
|
|
'run' RUN time dependency only
|
|
'yes' LIBRARY dependency
|
|
|
|
20100606:
|
|
AUTHOR: gerald@FreeBSD.org
|
|
|
|
* USE_GCC=4.3 is deprecated (and no port uses it anymore). USE_GCC=4.3+
|
|
is transparently rewritten to USE_GCC=4.4+ and lang/gcc43 will be
|
|
disconnected from the USE_GCC infrastructure soon.
|
|
|
|
20100524:
|
|
AUTHOR: alepulver@FreeBSD.org
|
|
|
|
* The license support files (bsd.licenses.mk and bsd.licenses.db.mk) from
|
|
GSoc 2008/2009 have been committed. A new PH entry will be available
|
|
soon, but for the moment look at:
|
|
http://wiki.freebsd.org/PortsLicenseInfrastructure
|
|
Or, alternatively, the comments at the beginning of the mentioned files.
|
|
|
|
20090906:
|
|
AUTHOR: flz@FreeBSD.org
|
|
|
|
* There is now a unified way to create users and groups
|
|
in your ports. First, make sure they are added to both
|
|
ports/GIDs and ports/UIDs, then add the following in
|
|
your port:
|
|
|
|
USERS= foo
|
|
GROUPS= foo
|
|
|
|
... if you want your port to create the foo user and
|
|
group.
|
|
|
|
20090812:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
|
|
* sourceforge.net has changed their URL layout to be more
|
|
flexible for their users. A new bsd.sites.mk macro SFP
|
|
has been added for projects that moved from
|
|
http://${mirror}/sourceforge/%SUBDIR%/
|
|
to
|
|
http://${mirror}/project/%SUBDIR%/
|
|
Note that %SUBDIR% is now highly individual for each
|
|
project and might need changing as well.
|
|
|
|
20090521:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
|
|
* bsd.port.options.mk is now clear to be widely used.
|
|
|
|
20090516:
|
|
AUTHOR: pgollucci@FreeBSD.org
|
|
|
|
* APACHE_COMPAT is dead!
|
|
|
|
* USE_APACHE=yes is dead!
|
|
|
|
* WITH_APACHE13, WITH_APACHE2, WITH_APACHE20, and WITH_APACHE22 are dead
|
|
|
|
You should set USE_APACHE=13|20|22+. WITH_APACHE option can
|
|
be used to conditional include support for ANY version of
|
|
Apache based on APACHE_PORT. Currently www/apache13
|
|
|
|
20090207:
|
|
AUTHOR: pgollucci@FreeBSD.org
|
|
|
|
* devel/libslang dropped in favor of devel/libslang2
|
|
|
|
* WITH_SLANG2 has been removed. WITH_SLANG now implies
|
|
devel/libslang2.
|
|
|
|
20080905:
|
|
AUTHOR: hrs@FreeBSD.org
|
|
|
|
* print/ghostscript-* and related ports have been renamed in the
|
|
following way:
|
|
|
|
print/ghostscript-gnu -> print/ghostscript7
|
|
print/ghostscript-gnu-nox11 -> print/ghostscript7-nox11
|
|
print/ghostscript-gnu-commfont -> print/ghostscript7-commfont
|
|
print/ghostscript-gpl -> print/ghostscript8
|
|
print/ghostscript-gpl-nox11 -> print/ghostscript8-nox11
|
|
japanese/ghostscript-gnu-jpnfont -> print/ghostscript7-jpnfont
|
|
korean/ghostscript-gnu-korfont -> print/ghostscript7-korfont
|
|
|
|
* USE_GHOSTSCRIPT now supports a version number which the port
|
|
requires. The valid value is "7" or "8". If other value is
|
|
specified, value of WITH_GHOSTSCRIPT_VER is used.
|
|
|
|
* WITH_GHOSTSCRIPT_GNU has been removed in favor of
|
|
WITH_GHOSTSCRIPT_VER. The valid value of WITH_GHOSTSCRIPT_VER is
|
|
"7" or "8", and the default value is "8".
|
|
|
|
20080821:
|
|
AUTHOR: rafan@FreeBSD.org
|
|
|
|
* CONFIGURE_ARGS is updated to use correct syntax for newer autoconf
|
|
on the configure target. Individual ports no longer need to change
|
|
CONFIGURE_TARGET to have the '--build=' prefix.
|
|
|
|
20080721:
|
|
AUTHOR: pav@FreeBSD.org
|
|
|
|
* Default OpenLDAP version was changed from 2.3 to 2.4.
|
|
|
|
* USE_GTK and USE_XPM variables are no longer recognized.
|
|
|
|
20080523:
|
|
AUTHOR: flz@FreeBSD.org
|
|
|
|
* By default, ports-mgmt/pkg_install now sets up a wrapper to use ports
|
|
pkg_install (when installed) instead of base when the former is more
|
|
recent. This can be disabled in the options menu, or with the
|
|
WITHOUT_WRAPPER knob.
|
|
|
|
20080414:
|
|
AUTHOR: pav@FreeBSD.org
|
|
|
|
* @rmtry is now supported in pkg-plist.
|
|
|
|
* USE_DISPLAY made more powerful, see comments in bsd.port.mk for details.
|
|
|
|
* ${PW} is now defined.
|
|
|
|
* LIB_DEPENDS can now be used with libraries with + sign in their name
|
|
without the need for escaping.
|
|
|
|
20080312:
|
|
AUTHOR: pav@FreeBSD.org
|
|
|
|
* USE_XPM no longer implies USE_XLIB.
|
|
|
|
* USE_LDCONFIG can now be used to Linux binary ports that install shared
|
|
libraries instead of INSTALLS_SHLIB.
|
|
|
|
20070908:
|
|
AUTHOR: gabor@FreeBSD.org, linimon@FreeBSD.org
|
|
|
|
* The Perl-related code parts have been extracted from bsd.port.mk to
|
|
bsd.perl.mk. This includes the user-settable knobs (e.g. USE_PERL5)
|
|
and infrastructure parts of the code, like default targets. The new
|
|
code is designed to be conditionally included based on either
|
|
USE_PERL5_*, PERL_CONFIGURE, or PERL_MODBUILD being set. However,
|
|
some of the default settings remain in bsd.port.mk while we make
|
|
sure that all ports comply with this.
|
|
|
|
* A convenient version handling has been implemented for Perl-related
|
|
knobs. With this new feature one can require a minimal, a maximal or an
|
|
exact version, that the given port needs. For the full description and
|
|
some examples, please see the documentation in bsd.perl.mk.
|
|
|
|
20070804:
|
|
AUTHOR: gabor@FreeBSD.org
|
|
The following functional changes were made to bsd.*.mk and to
|
|
Tools/scripts/security-check.awk:
|
|
|
|
* The variable definitions that cover command line tools, e.g. MKDIR, were
|
|
extracted from bsd.port.mk into bsd.commands.mk, so that we can
|
|
reuse them within the infrastructure later.
|
|
|
|
* The old DESTDIR implementation was removed both from the infrastructure,
|
|
and from the individual ports. Variables like TARGETDIR should not longer
|
|
be used.
|
|
|
|
* A new DESTDIR implementation has been added, implemented in bsd.destdir.mk.
|
|
The new implementation puts no requirements on the individual ports.
|
|
|
|
20070730:
|
|
AUTHOR: python@FreeBSD.org
|
|
|
|
* The default Python version has been changed from 2.4.x to 2.5.x.
|
|
|
|
* A number of variables have been added to bsd.python.mk to support
|
|
the more integrated support for Python eggs, including:
|
|
PYDISTUTILS_PKGNAME, PYDISTUTILS_PKGVERSION, PYEASYINSTALL_EGG,
|
|
PYDISTUTILS_NOEGGINFO, PYDISTUTILS_EGGINFO, PYEASYINSTALL_ARCHDEP
|
|
|
|
* More detailed descriptions of the variables can be found in the comments
|
|
in bsd.python.mk.
|
|
|
|
20070723:
|
|
AUTHOR: rafan@FreeBSD.org
|
|
|
|
* The default CONFIGURE_ARGS when GNU_CONFIGURE is set now contains
|
|
--mandir and --infodir if configure script supports them.
|
|
|
|
20070712:
|
|
AUTHOR: maho@FreeBSD.org
|
|
|
|
* Add knob USE_FORTRAN for ports which uses FORTRAN. All ports uses
|
|
FORTRAN compiler should use this knob. Usages are: USE_FORTRAN=yes
|
|
(default;gfortran42), USE_FORTRAN=ifc (Intel FORTRAN compiler)
|
|
and USE_FORTRAN=g77 (/usr/bin/f77 or g77-34).
|
|
|
|
20070701:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following change was made to the ports infrastructure:
|
|
|
|
* Virtual category 'kld' was added. If the port installs kernel loadable
|
|
modules, it should be included in this category.
|
|
|
|
20070524:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were made to the ports infrastructure:
|
|
|
|
* The 'make-deinstall-all' target now checks for moved ports.
|
|
|
|
* The installation directories PORTEXAMPLES and PORTDATA are now defined.
|
|
|
|
* The USE_MAKESELF knob is added for ports that use the makeself archiver.
|
|
|
|
* The description of fetch-list was updated. The targets fetch-required-list,
|
|
fetch-url-list, and fetch-urlall-list were added.
|
|
|
|
* 'make search' will also now search in ports/MOVED.
|
|
|
|
* The default method for 'make update' is now portsnap. Previously,
|
|
you had to manually select one of 3 methods: SUP_UPDATE, CVS_UPDATE,
|
|
or PORTSNAP_UPDATE. The latter is now obsolete.
|
|
|
|
* Several Makevar definitions have been moved to the pre-makefile section:
|
|
DATADIR, DOCSDIR, ETCDIR, EXAMPLESDIR, WWWDIR.
|
|
|
|
20070403:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were made to the ports infrastructure:
|
|
|
|
* The default dependency of USE_GHOSTSCRIPT has been changed from
|
|
ghostscript-gnu to ghostscript-gpl. The WITH_GHOSTSCRIPT_GPL variable is
|
|
now no-op. New WITH_GHOSTSCRIPT_GNU variable was added.
|
|
|
|
* bsd.tcl.mk was overhauled. Most importantly, the semantics of USE_TCL* and
|
|
USE_TK* variables was changed. USE_TCL and USE_TK now implies both build
|
|
and run dependencies, USE_TCL_RUN and USE_TK_BUILD variables were
|
|
introduced. Existing ports in the tree were modified.
|
|
|
|
* Unused category 'tcl81' was removed, and new categories 'tcl' and 'tk'
|
|
were added.
|
|
|
|
20070324:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were made to the ports infrastructure:
|
|
|
|
* Default LIBTOOLFILES value was changed from literal `configure'
|
|
to ${CONFIGURE_SCRIPT}.
|
|
|
|
* bsd.efl.mk was moved to ports/Mk. USE_EFL family of macros is now
|
|
generally available to all ports.
|
|
|
|
* New macros COPYTREE_BIN and COPYTREE_SHARE were added, to allow
|
|
for easy installation of a tree hierarchy, either with executable (bin)
|
|
or read-only (share) permissions on files.
|
|
|
|
* A new variable WWWDIR was added, with default value of
|
|
${PREFIX}/www/${PORTNAME}.
|
|
|
|
* Variables DOCSDIR_REL, DATADIR_REL, EXAMPLESDIR_REL and WWWDIR_REL were
|
|
added for porter's convenience. They contain the values of their
|
|
respective non-REL variables, except relative to installation PREFIX.
|
|
|
|
20070313:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were made to the ports infrastructure:
|
|
|
|
* bsd.ocaml.mk and bsd.xfce.mk were added.
|
|
|
|
* The FETCH_CMD was refactored so that ports can override the command,
|
|
the arguments, or both.
|
|
|
|
20070306:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were made to the ports infrastructure:
|
|
|
|
* The remaining vestiges of FreeBSD 4.X support were removed. Any
|
|
remaining users of 4.X should have stayed with the RELEASE_4_EOL tag.
|
|
|
|
* It is now possible to include USE_PHP after bsd.port.pre.mk.
|
|
|
|
* 'make search' should now work with non-default ${PORTSDIR}.
|
|
|
|
20070130:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were made to the ports infrastructure:
|
|
|
|
* DEPENDS variable was removed, please use other *_DEPENDS variables instead.
|
|
|
|
* A new pkg-plist keyword is available, @stopdaemon. It will call forcestop
|
|
on all rc.subr scripts installed by the port on deinstall, effectively
|
|
stopping services on deinstall/upgrade.
|
|
|
|
* rc.subr script suffix is now available in Makefile as RC_SUBR_SUFFIX.
|
|
|
|
* New variable USE_CDRTOOLS was introduced. It replaced direct dependencies
|
|
on sysutils/cdrtools port. It now automatically support switching to
|
|
cdrtools-cjk port when user specified WITH_CJK. All ports were converted.
|
|
|
|
* USE_DOS2UNIX, infrastructure for converting DOS to UNIX line feeds, was
|
|
enhanced by a new variable DOS2UNIX_REGEX. It allows to specify a find
|
|
-iregex parameter to limit touched files by file extensions.
|
|
|
|
* Support for partially translated manpages was added. For examples of
|
|
usage, please refer to Porter's Handbook.
|
|
|
|
* USE_TCL/USE_TK variables were changed to provide runtime dependency. New
|
|
variables USE_TCL_BUILD and USE_TK_BUILD were added. All unintuitive
|
|
quirks of these variables were fixed.
|
|
|
|
* USE_LDCONFIG was fixed to work properly for ports, that specify @cwd in the
|
|
pkg-plists.
|
|
|
|
* Old bsd.java.mk version 1.0 macros were removed.
|
|
|
|
* New category: ports-mgmt
|
|
|
|
* New virtual category: gnustep
|
|
|
|
* Unused 'picobsd' category was removed.
|
|
|
|
20070118:
|
|
AUTHOR: maho@FreeBSD.org
|
|
We'd like to ask all ports maintainers, who are using Fortran77 (f77 in base),
|
|
to switch to Fortran90/95 (gfortran42, lang/gcc42). Please refer to
|
|
http://people.freebsd.org/~maho/gfortran/gfortran.html
|
|
for details.
|
|
|
|
20061014:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
The following changes have been introduced to the GNOME porting process
|
|
during the GNOME 2.16 update:
|
|
|
|
* GNOME is now installed into LOCALBASE. Any port which makes use of the
|
|
gnomeprefix component will have its PREFIX forced to LOCALBASE
|
|
|
|
20060930:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following functional changes were made to bsd.port.mk:
|
|
|
|
* The bsd.port.mk pre and post includes have been split into 3 pieces
|
|
instead of 2, to allow OPTIONS to be able to influence dependencies.
|
|
This is still experimental and not yet enabled by any port. This adds
|
|
the file 'bsd.port.options.mk'.
|
|
|
|
* bsd.gcc.mk has been updated to understand gfortran.
|
|
|
|
* emulators/linux_base is now removed. linux_base-fc4 has been the default
|
|
for some time.
|
|
|
|
* The USE_FIREBIRD macro was added to bsd.database.mk.
|
|
|
|
20060914:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following functional changes were made to bsd.port.mk:
|
|
|
|
* PKGVERSION was introduced as an intermediate variable refactored out of
|
|
PKGNAME.
|
|
|
|
* bsd.lua.mk was added to support lua-related ports.
|
|
|
|
* DESTDIR was removed from bsd.scons.mk because it was problematic.
|
|
|
|
* Some quotes were added to the 'missing' target to improve handling of
|
|
duplicate origins.
|
|
|
|
20060903:
|
|
AUTHOR: sat@FreeBSD.org
|
|
The following functional changes were made to bsd.sites.mk:
|
|
|
|
* MASTER_SITES variable can now look like MACRO1/subdir1 MACRO2/subdir2, and
|
|
be expanded in a way that you expect it to, that is apply different subdirs
|
|
to different sites. You can safely replace ${M_S_FOO:S/%SUBDIR%/bar/} with
|
|
FOO/bar.
|
|
|
|
* If M_S_SUBDIR is unset, a macro in M_S won't set it anymore, but rather
|
|
substitute %SUBDIR% all by itself. Now it's possible to use macros with
|
|
different default subdirs and they will expand in a proper way.
|
|
|
|
20060805:
|
|
AUTHOR: sat@FreeBSD.org
|
|
The following functional changes were made to bsd.sites.mk:
|
|
|
|
* MASTER_SITES variable can now contain special macros which are expanded into
|
|
traditional URL[:group] syntax and cause some convenient effects, e.g. set a
|
|
default M_S_SUBDIR.
|
|
|
|
* A macro is any space-delimited word in MASTER_SITES without a forward slash.
|
|
|
|
* If MASTER_SITE_<macro> is defined, then the macro is expanded to its value.
|
|
|
|
* Abbreviated macros are provided for extremely popular locations, e.g. CPAN
|
|
and SF. To avoid further obfuscation their unabbreviated equivalents should
|
|
be avoided.
|
|
|
|
* Popular macros can trigger M_S_SUBDIR to default to a predefined value, e.g.
|
|
${PORTNAME:L} for SF and ${PORTNAME:C/-.*//} for CPAN.
|
|
|
|
* Abbreviations and M_S_SUBDIR defaults are defined by MASTER_SITES_ABBREVS
|
|
and MASTER_SITES_SUBDIRS, both set in bsd.sites.mk.
|
|
|
|
* If a macro belongs to a group (e.g. SF:source1), all the sites it expands
|
|
into also belong to the same group.
|
|
|
|
* Macros and traditional URL's can be mixed safely, their order stays intact.
|
|
|
|
20060804:
|
|
AUTHOR: gabor@FreeBSD.org
|
|
The following functional changes were made to bsd.*.mk and to
|
|
Tools/scripts/security-check.awk:
|
|
|
|
* Add DESTDIR support to let one install ports into a jail from outside.
|
|
A package is installed under ${DESTDIR}${PREFIX} now and registered under
|
|
${DESTDIR}/var/db/pkg.
|
|
|
|
* TARGETDIR variable has been added for referencing ${DESTDIR}${PREFIX}.
|
|
|
|
* LOCALBASE, LINUXBASE and X11BASE variables point to the final destination
|
|
now, LOCALBASE_REL, LINUXBASE_REL and X11BASE_REL can be used for the
|
|
old behavior. The behavior has not been changed in PLIST_SUB.
|
|
Note, that the three variables are still overridable with a hack, so this
|
|
change doesn't affect POLA, but necessary for DESTDIR support.
|
|
|
|
* OSVERSION is now determined from the userland, not from the kernel.
|
|
Cross-compiling between releases is still not supported, but this
|
|
behavior is more correct for jails with differing userland from
|
|
the kernel version.
|
|
|
|
* Add some sanity check for PREFIX and DESTDIR. This can be skipped by
|
|
defining IGNORE_PATH_CHECKS, but very discouraged.
|
|
|
|
* Deinstalling from DESTDIR, determining if a port is already installed in
|
|
DESTDIR, etc. are implemented by chrooting those specific commands.
|
|
|
|
* Text changes to reflect that we are installing to DESTDIR, removing from
|
|
DESTDIR, etc.
|
|
|
|
Note, that this change implements only the infrastructure support. Ports should
|
|
also be implemented to respect DESTDIR.
|
|
|
|
20060717:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following functional changes were made to bsd.port.mk:
|
|
|
|
* Introduces IA32_BINARY_PORT for certain cases where a given port fetches
|
|
and installs compiled i386 binaries.
|
|
|
|
* Adds some infrastructure for support of 32-bit i386 apps on amd64.
|
|
|
|
* Again fix USE_LDCONFIG logic to make it work with non-default PREFIX to
|
|
fix bug introduced in previous revision.
|
|
|
|
20060705:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following functional changes were made to bsd.port.mk:
|
|
|
|
* Change all bogus uses of BROKEN to IGNORE. (Note: the BROKEN_WITH_*
|
|
forms are retained for compatibility but deprecated.) Internally,
|
|
these variables all had already set IGNORE, not BROKEN, so they
|
|
were really misnomers.
|
|
|
|
* Fix USE_LDCONFIG with non-default PREFIX.
|
|
|
|
* Fix DESKTOP_ENTRIES processing on 4.x.
|
|
|
|
* Add 'make missing' to show missing dependencies.
|
|
|
|
* Add bsd.scons.mk and bsd.wx.mk.
|
|
|
|
20060616:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The patch in ports/95841 to get rid of remnants of FORCE_PKG_REGISTER
|
|
was backed out because it broke kdelibs3*.
|
|
|
|
20060616:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following functional changes were made to bsd.port.mk:
|
|
|
|
* Update default MySQL version from 4.1 to 5.0 [1]
|
|
|
|
* Update default PHP version from 4 to 5 [2]
|
|
|
|
* Update default LDAP version from 2.2 to 2.3 [3]
|
|
|
|
* Add support for LDAP version 2.4 [4]
|
|
|
|
* Update default linux_base from '8' (Redhat 8) to 'fc4' (Fedora Core 4) [5]
|
|
|
|
* Switch default Linux X implementation from XFree86 to X.org to track the
|
|
above [5]
|
|
|
|
* Deprecate INSTALLS_SHLIB and replace it by USE_LDCONFIG. If set to "yes",
|
|
the old behavior is preserved. Otherwise, it can be set to a list of
|
|
directories to be added to ${PREFIX}/libdata/ldconfig/${UNIQUENAME}.
|
|
Note that this directory is used by ldconfig startup script, it is meant
|
|
to replace ldconfig scripts installed by some ports as (sometimes
|
|
000.${UNQUENAME}.sh) [6]
|
|
|
|
* Adds USE_LDCONFIG32 which is like USE_LDCONFIG but the target file is
|
|
${PREFIX}/libdata/ldconfig32/${UNIQUENAME} instead. (Note: this should
|
|
only be used on 64-bit architectures) [6]
|
|
|
|
* Set the default LANG for tr to be C to avoid some build problems [7]
|
|
|
|
* Include bsd.java.mk in both pre and post sections [8]
|
|
|
|
* Get rid of remnants of FORCE_PKG_REGISTER [9]
|
|
|
|
* Always print options with make showconfig [10]
|
|
|
|
PR: 92805 [1], 92806 [2], 96793 [3], 97515 [4], 96849 [5],
|
|
91933 [6], 91381 [7], 97020 [8], 95841 [9], 97133 [10]
|
|
|
|
20060523:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following functional changes were made to bsd.port.mk:
|
|
|
|
* include bsd.emacs.mk only when USE_EMACS is set [5]
|
|
|
|
* Correct the implementation of pretty-print-run-depends-list [8]
|
|
|
|
* Use a consistent name for the cookies file when PKGNAMEPREFIX/SUFFIX
|
|
are set after bsd.port.pre.mk. [9]
|
|
|
|
* Include bsd.tcl.mk if USE_TCL_BUILD is defined [10]
|
|
|
|
* Set PERL_MM_USE_DEFAULT in BATCH mode [11]
|
|
|
|
* Add the {ONLY,NOT}_FOR_ARCH_REASON and
|
|
{ONLY,NOT}_FOR_ARCH_REASON_${ARCH} variables to allow better
|
|
customization of the error string reported to users when they
|
|
attempt a build on an unsupported architecture. [12]
|
|
|
|
* Avoid errors from duplicated targets when parsing MLINKS on ports
|
|
without a default value set. [13]
|
|
|
|
* Fix handling of MLINKS when invalid entries are listed [14]
|
|
|
|
* Enforce sanity of DESKTOP_ENTRIES. If the Categories field is
|
|
omitted, try to map ports categories to their freedesktop.org
|
|
counterpart [15]
|
|
|
|
PR: 95238 [5], 94164 [8], 94219 [9], 92355 [10],
|
|
95579 [11], 94675 [12], 66109 [13], 66110 [14], 95603 [15]
|
|
|
|
20060121:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes affecting ports developers were introduced:
|
|
|
|
* Gamin is a default FAM system
|
|
|
|
* New virtual categories: hamradio and rubygems
|
|
|
|
* Virtual category 'offix' was removed
|
|
|
|
* New USE_DOS2UNIX variable for converting DOS linefeeds to UNIX
|
|
|
|
* Variables like BROKEN and FORBIDDEN should no longer be quoted
|
|
|
|
* New NOFETCHFILES variable to prevent downloading from MASTER_SITES
|
|
while still allowing MASTER_SITE_OVERRIDE
|
|
|
|
* New plist macro @dirrmtry with functionality of @unexec rmdir || true
|
|
|
|
* USE_REINPLACE no longer needs to be defined, REINPLACE_CMD is always
|
|
available
|
|
|
|
Detailed documentation of new features is available in Porter's Handbook.
|
|
|
|
20051108:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were introduced:
|
|
* Add bsd.database.mk
|
|
- move out from bsd.port.mk USE_MYSQL and USE_PGSQL.
|
|
- add support for Berkeley DB and SQLite (via USE_BDB and USE_SQLITE
|
|
knobs).
|
|
|
|
* Escape '+' in make search
|
|
|
|
* Add "makepatch" target to simplify creation of patches during porting
|
|
|
|
* Replace deprecated MACHINE_ARCH with ARCH
|
|
|
|
* Remove support of OpenLDAP 2.1
|
|
|
|
* Add bsd.tcl.mk
|
|
It introduces USE_TCL/USE_TCL_BUILD knobs to support various
|
|
version of tcl (8.0 -> 8.4)
|
|
|
|
* Fix cosmetic bugs in security-check target
|
|
|
|
* Add support for INDEX-7 and above (up to INDEX-9 actually)
|
|
|
|
* Add "package-recursive" to bsd.port.subdir.mk
|
|
|
|
* Remove check for FreeBSD version < 460101
|
|
|
|
* New category: net-im
|
|
|
|
* Add .desktop file facilities
|
|
It introduces DESKTOPDIR and DESKTOP_ENTRIES knobs
|
|
|
|
* Add SHA256 support to "*checksum" targets
|
|
|
|
* Fix USE_PYTHON with OPTIONS
|
|
|
|
* Force NO_LINT to MAKE_ENV to avoid library breaks
|
|
|
|
* Fix typo: s/RC_ORDER/USE_RCORDER/g
|
|
|
|
* Add support for PostgreSQL 8.1
|
|
|
|
* Add bsd.apache.mk
|
|
USE_APACHE knob enhancements
|
|
|
|
20051105:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
GNOME has been upgraded from 2.10.2 to 2.12.1. This update brings with
|
|
it many important porting changes:
|
|
|
|
- gtk20's pkg-config file no longer contains the X11 pango modules.
|
|
Therefore, if your port requires these modules, you may have to
|
|
manually patch them in to your port's Makefiles. Contact
|
|
gnome@FreeBSD.org if you have questions on this.
|
|
|
|
- A new USE_GNOME component, ltverhack, has been added. This
|
|
pseudo-component hacks libtool so that shared library versions are
|
|
more consistent with other operating systems. Using this component
|
|
can prevent unnecessary shared library version changes.
|
|
|
|
- A new macro, INSTALLS_ICONS, has been added. If your port installs
|
|
Freedesktop-style icons to ${LOCALBASE}/share/icons or
|
|
${X11BASE}/share/icons, then you should use this macro. NOTE:
|
|
use of this macro requires your port to set either USE_GNOME or
|
|
WANT_GNOME.
|
|
|
|
20050618:
|
|
AUTHOR: netchild@FreeBSD.org
|
|
- USE_LINUX now implies NO_FILTER_SHLIBS=yes. It also doesn't use FreeBSD
|
|
tools to strip binaries anymore, so it's not necessary anymore to override
|
|
STRIP and STRIP_CMD.
|
|
- USE_LINUX_PREFIX implies NO_MTREE now.
|
|
- In the USE_LINUX case, USE_XLIB now depends upon the Linux X11 libraries
|
|
instead upon the native FreeBSD libraries.
|
|
- The variable LINUX_BASE_PORT contains a string which is suitable as an
|
|
item in *_DEPENDS, so if a port BATCH_DEPENDS or FETCH_DEPENDS upon the
|
|
default (or overridden) Linux base, ${LINUX_BASE_PORT} should be used
|
|
instead of a hardcoded reference.
|
|
- If USE_LINUX or OVERRIDE_LINUX_BASE doesn't point to an existing linux_base
|
|
port and if USE_LINUX isn't set to "yes" (case insensitive), the port will
|
|
be marked as IGNORE.
|
|
|
|
20050609:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were introduced:
|
|
|
|
* Improve documentation of CONFLICTS.
|
|
|
|
* Fix add-plist-docs target to work correctly with wildcards.
|
|
|
|
* Fix USE_MYSQL and USE_PGSQL knobs to work in partial ports
|
|
tree.
|
|
|
|
* Introduce 2 new variables: USE_FAM and WANT_FAM_SYSTEM.
|
|
|
|
* Suppress "Vulnerability check disabled" message if
|
|
DISABLE_VULNERABILITIES is defined.
|
|
|
|
* Switch default MySQL version to 4.1
|
|
|
|
* Add support for OpenLDAP v.23
|
|
|
|
* Fix add-plist-info and add-plist-post targets to avoid warnings
|
|
from ports which redefine them.
|
|
|
|
* Fix add-plist-docs target to handle NOPORTDOCS knob properly.
|
|
|
|
* Use INSTALLDIRS="site" in configure for perl ports.
|
|
|
|
* Fix NO_(CHECKSUM|BUILD|INSTALL|PACKAGE) knobs if OPTIONS are
|
|
defined.
|
|
|
|
* Add an ability to depend on versioned installed package.
|
|
Example:
|
|
|
|
BUILD_DEPENDS=p5-Tree-Simple>=1.12:${PORTSDIR}/devel/p5-Tree-Simple
|
|
|
|
Please note, it's experimental feature, work is currently in
|
|
progress.
|
|
|
|
20050325:
|
|
AUTHOR: jdp@FreeBSD.org
|
|
The CVSup port has been upgraded with a patch to correct the
|
|
handling of the "refuse" file for files that are in the CVS Attic.
|
|
This solves a problem some people were having, where CVSup would
|
|
delete their ports/INDEX* files even though the files were listed
|
|
in the "refuse" file. The bug fix is in the cvsupd server, so
|
|
mirror sites must upgrade their servers in order for this fix to
|
|
help. Meanwhile, adding "ports/Attic/INDEX*" to the refuse file
|
|
serves as a work-around.
|
|
|
|
20050321:
|
|
AUTHOR: kwm@FreeBSD.org
|
|
The gstreamer-plugins gconf dependency moved to its own port in devel.
|
|
When your application needs gstreamer-plug-gconf, just add
|
|
USE_GSTREAMER=gconf to you Makefile
|
|
|
|
20050319:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
New GNOME components have been added to bsd.gnome.mk. See
|
|
http://www.FreeBSD.org/gnome/docs/gnome2_porting.html for the complete
|
|
list of available GNOME 2 components.
|
|
|
|
Py-gnome2 lost many of its GNOME dependencies to a new port,
|
|
py-gnome-extras. Therefore, ports that used to depend on
|
|
the pygnome2 component for modules such as gtkhtml2, gnomepanel, etc.
|
|
should replace the pygnome2 dependency with pygnomeextras.
|
|
|
|
20050314:
|
|
AUTHOR: edwin@FreeBSD.org
|
|
New variable for in /etc/make.conf: IGNORE_MASTER_SITE_xxx
|
|
|
|
If you prefer a certain mastersite for a collection of master-sites,
|
|
set this in your /etc/make.conf:
|
|
|
|
MASTER_SITE_xxx=http://z.x.y/%SUBDIR%/
|
|
|
|
If you insist on only using the ones you specify, set this in
|
|
your /etc/make.conf:
|
|
|
|
IGNORE_MASTER_SITE_xxx=yes
|
|
MASTER_SITE_xxx=http://z.x.y/%SUBDIR%/
|
|
|
|
Use "make -V MASTER_SITES" to see the differences.
|
|
|
|
20050313:
|
|
AUTHOR: ahze@FreeBSD.org, kwm@FreeBSD.org
|
|
The following changes were committed:
|
|
|
|
* USE_GNOME=gstreamerplugins has been deprecated.
|
|
The new method which uses bsd.gstreamer.mk is:
|
|
USE_GSTREAMER=plugin-name
|
|
|
|
Example:
|
|
USE_GSTREAMER= dvd
|
|
|
|
or
|
|
|
|
WANT_GSTREAMER= yes
|
|
.include <bsd.port.pre.mk>
|
|
.if defined(WITH_DVD)
|
|
USE_GSTREAMER= dvd
|
|
.endif
|
|
|
|
* misc/gnomehier now creates a mtree file and each port
|
|
using USE_GNOME=gnomehier or gnomeprefix now use the
|
|
BSD.gnome-x11.dist mtree file to help "keep" directories
|
|
and not accidentally add gnome directories to a port.
|
|
|
|
20050207:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were committed:
|
|
|
|
* Change bento to pointyhat names in comments.
|
|
|
|
* Document DISABLE_VULNERABILITIES variable.
|
|
|
|
* Add WWW: line for 'search' target.
|
|
|
|
* Speedup check-vulnerable invocation, if portaudit is installed.
|
|
|
|
* Run install-info for all .info files.
|
|
|
|
* Run add-plist-docs more strictly and prevent some situations
|
|
with leftover files in the future.
|
|
|
|
* Introduce two new variables: MASTER_PORT and SLAVE_PORT.
|
|
The results from these variables is only used as information for
|
|
users.
|
|
|
|
* Honor OPTIONS if PACKAGE_BUILDING or BATCH are defined.
|
|
|
|
* Move all USE_GCC entries to new file - bsd.gcc.mk. 'test-gcc'
|
|
target allows users to check gcc version if USE_GCC is used.
|
|
Give maintainers opportunity to add '+' character to USE_GCC version
|
|
for using specified and higher versions.
|
|
|
|
Example:
|
|
|
|
USE_GCC=3.3+
|
|
|
|
builds ports with gcc version 3.3 and higher (3.4, 4.0).
|
|
|
|
* Install startup scripts with the help of USE_RC_SUBR variable.
|
|
|
|
* Add three new targets: config-recursive, rmconfig-recursive and
|
|
config-conditional. You can set or delete OPTIONS for all
|
|
dependencies before every build. config-conditional target is
|
|
used to skip configuring ports which have already been
|
|
configured.
|
|
|
|
* Fix using of WANT_PGSQL_VER variable if PostgreSQL is already
|
|
installed.
|
|
|
|
20041231:
|
|
AUTHOR: netchild@FreeBSD.org
|
|
USE_LINUX_PREFIX doesn't implies USE_LINUX anymore.
|
|
|
|
20041209:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were committed:
|
|
|
|
* Define new macros: DATE, FMT, MKTEMP, OBJDUMP, and use
|
|
command macro SORT.
|
|
|
|
* Change layout of comments to 4 column tabs, remove lots
|
|
of spaces and eight-column-tabs.
|
|
|
|
* Introduce 2 new variables: SUB_FILES and SUB_LIST:
|
|
|
|
Example:
|
|
|
|
SUB_FILES= pkg-message pkg-install
|
|
SUB_LIST+= "VERSION=${VERSION}"
|
|
|
|
This looks for ${FILESDIR}/pkg-message.in and ${FILESDIR}/pkg-install.in
|
|
Substitutions in SUB_LIST are applied to these files and the
|
|
output is redirected to ${WRKDIR}.
|
|
|
|
PKGMESSAGE will be set to ${WRKDIR}/pkg-message.
|
|
PKGINSTALL will be set to ${WRKDIR}/pkg-install.
|
|
|
|
* Document DEPRECATED and EXPIRATION_DATE variables.
|
|
|
|
* Sanitize the intermittent output by the build infrastructure
|
|
so that cutting and pasting from it no longer interferes
|
|
with GNATS-tags.
|
|
|
|
* Honor configure arguments for USE_XLIB if USE/WITH_LIBTOOL_ is
|
|
used.
|
|
|
|
* Properly document 'describe' target.
|
|
|
|
* Properly remove directories at deinstallation time if ports sets
|
|
a non-standard PREFIX.
|
|
|
|
* Defaults INDEXFILE to INDEX-6 on 6-CURRENT.
|
|
|
|
20041119:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following changes were committed:
|
|
|
|
* Fix INDEX build if MAINTAINER is not defined.
|
|
|
|
* Remove USE_QT2 option, since qt2 is obsolete.
|
|
|
|
* Better define and explain ARCH option.
|
|
|
|
* Add new script Tools/make_readmes, to speedup 'readmes'
|
|
target. Avoid recursing into individual port directories and run
|
|
it at top level, after the category README.html files have been
|
|
created.
|
|
|
|
* Fix 'search' target and enable a case-insensitive search on 5-x.
|
|
|
|
* Extend 'search' target and enable search by categories.
|
|
|
|
* Remove 'tk42' and 'tcl76' categories since they're obsolete.
|
|
|
|
* Introduce DISTVERSION variable, that can be set instead of
|
|
PORTVERSION and is automatically converted in a conforming PORTVERSION.
|
|
|
|
Example:
|
|
|
|
DISTVERSION= 10Alpha3
|
|
|
|
extends 10Alpha3 to 10.a3
|
|
|
|
DISTVERSION= 3Beta7-pre2
|
|
|
|
extends 3Beta7-pre2 to 3.b7.p2
|
|
|
|
* Use --suffix option instead of -b for patch(1), to make it
|
|
compatible with BSD patch(1).
|
|
|
|
* Fix {WANT,WITH}_MYSQL_VER behavior, to deal with conflicting
|
|
versions.
|
|
|
|
20041116:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
The way OMF files are handled has been changed to use the new INSTALLS_OMF
|
|
macro (similar to INSTALLS_SHLIB). Details about the new macro can be found
|
|
at http://www.FreeBSD.org/gnome/docs/porting.html and bsd.gnome.mk.
|
|
|
|
20041113:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
Since INDEX version in CVS is always too old, portmgr decided to
|
|
remove it. You will still be able to build your own INDEX or use
|
|
'fetchindex' target in /usr/ports/.
|
|
|
|
20041109:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
The way GConf schema files are handled has been changed to use the new
|
|
GCONF_SCHEMAS macro (similar to MAN). Details about the new macro can be
|
|
found at http://www.FreeBSD.org/gnome/docs/porting.html and bsd.gnome.mk.
|
|
|
|
20040803:
|
|
AUTHOR: ade@FreeBSD.org
|
|
As part of the ongoing autotools cleanup, devel/autoconf has been
|
|
replaced with devel/autoconf253, and devel/automake with devel/automake15.
|
|
Consumers of the various autotools knobs from bsd.autotools.mk should not
|
|
notice any differences. This update completes the transition of autotools
|
|
to true versioned packages (cf: tcl/tk)
|
|
|
|
20040723:
|
|
AUTHOR: anholt@FreeBSD.org
|
|
The XFREE86_VERSION variable is replaced by the X_WINDOW_SYSTEM variable.
|
|
XFREE86_VERSION may no longer be used by ports Makefiles. X_WINDOW_SYSTEM may
|
|
currently be set to xorg, xfree86-4, and xfree86-3 (please use :L in checking
|
|
it). Several X_*_PORT variables are provided by bsd.port.mk which map to the
|
|
appropriate port for the X_WINDOW_SYSTEM chosen.
|
|
|
|
20040719:
|
|
AUTHOR: ale@FreeBSD.org
|
|
There has been a big update to PHP ports and bsd.php.mk to add more
|
|
flexibility and new features.
|
|
Now a port may depend on a specific set of PHP extensions. To do so,
|
|
simply replace:
|
|
|
|
USE_PHP= yes
|
|
|
|
with:
|
|
|
|
USE_PHP= ext1 ext2 ext3 ...
|
|
|
|
in the port Makefile. A list of all PHP extensions is included in bsd.php.mk.
|
|
If the requirement is a build dependency too, the port should also define:
|
|
|
|
USE_PHP_BUILD=yes
|
|
|
|
Moreover, the new knob WANT_PHP_SCR has been added to indicate that the port
|
|
requires the 'php' binary to run.
|
|
Last but not least, many common operations to build/install/register a
|
|
PHP extension can now be omitted from the port Makefile if it defines:
|
|
|
|
USE_PHPEXT= yes
|
|
|
|
For more information on this point and on additional variables, see
|
|
bsd.php.mk.
|
|
|
|
20040717:
|
|
AUTHOR: eik@FreeBSD.org
|
|
OpenLDAP version 2.2 is now the default.
|
|
When your port links against the openldap client libraries use
|
|
USE_OPENLDAP= yes
|
|
and do not depend on a particular version. A user (or package
|
|
building cluster) can select the desired flavor with
|
|
WANT_OPENLDAP_VER and WANT_OPENLDAP_SASL, but these must not
|
|
be used in ports Makefiles.
|
|
|
|
20040709:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
USE_LIBTOOL_VER now configures a port to use the ports version of libtool
|
|
instead of its included version. This was put in place to reduce the
|
|
number of ad hoc patches to individual ports' libtools to prevent .la
|
|
file installation as well as fix various threading problems.
|
|
|
|
To restore the previous libtool behavior, use the new macro,
|
|
USE_INC_LIBTOOL_VER. It works the exact same way as USE_LIBTOOL_VER
|
|
in that it takes a libtool version as its argument.
|
|
|
|
For example, to use the included version of libtool with extra hacks
|
|
provided by libtool-1.5, add the following to your Makefile:
|
|
|
|
USE_INC_LIBTOOL_VER= 15
|
|
|
|
To use the ports version of libtool-1.5, add the following to
|
|
your Makefile:
|
|
|
|
USE_LIBTOOL_VER= 15
|
|
|
|
Note: these macros are mutually exclusive. Your port should only include
|
|
one or the other if it needs to make use of libtool.
|
|
|
|
20040707:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
The way GConf schema files are installed has changed to support the upcoming
|
|
GNOME 2.8 GConf. Details about the change can be found at
|
|
http://www.FreeBSD.org/gnome/docs/porting.html. All existing ports have
|
|
been converted to the new style, and portlint has been updated to flag
|
|
old-style GConf schema installation.
|
|
|
|
20040610:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The following behavioral or feature changes were committed:
|
|
|
|
* Support verbose index builds with INDEX_VERBOSE
|
|
|
|
* Support glob expressions in USE_GETTEXT to allow more flexibility
|
|
in the face of future gratuitous library version bumps by the gettext
|
|
developers:
|
|
|
|
USE_GETTEXT=yEs # Works as before (case-insensitive)
|
|
USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions
|
|
# in the LIB_DEPENDS
|
|
|
|
* Extend 'make search' support to allow much more flexible searching
|
|
From the PR:
|
|
|
|
Besides the good old key and name variables, this patch adds
|
|
support for path, info, maint, cat, bdeps, and rdeps, which match
|
|
on the appropriate fields, plus their exclusion counterparts: xkey,
|
|
xname, etc.
|
|
|
|
Examples:
|
|
|
|
Find all ports whose names contain "pear-" but not "html" or "http":
|
|
|
|
make search name=pear- xname='ht(tp|ml)'
|
|
|
|
Find ports whose names contain "pear-" and which don't have apache
|
|
listed in build-time dependencies:
|
|
|
|
make search name=pear- xbdeps=apache
|
|
|
|
The positive variables (name, key, maint, etc) are AND-ed, their
|
|
negative versions are OR-ed; in other words, matching any x-
|
|
variable will cause the port to be skipped, mismatch on any non-x-
|
|
variable will cause it to be skipped.
|
|
|
|
Examples:
|
|
|
|
Find ports that are both in the 'www' category and maintained by
|
|
Thierry Thomas:
|
|
|
|
make search maint=thierry@ path=/www/
|
|
|
|
Find ports in the 'archivers' category that are either not orphaned
|
|
or don't have "zip" in their names (contrived):
|
|
|
|
make search cat=archivers xmaint=ports@freebsd xname=zip
|
|
|
|
It is possible to select fields to display.
|
|
|
|
Example:
|
|
|
|
Find PEAR ports that don't build-depend on apache, displaying only
|
|
Port:, Path:, and Info: lines:
|
|
|
|
make search name=pear- xbdeps=apache display=name,path,info
|
|
|
|
Case-sensitivity can now be turned of with icase=1.
|
|
|
|
Example:
|
|
|
|
Find ports with @freebsd.org maintainer addresses without the
|
|
"proper" capitalization (@FreeBSD.org), display their paths and
|
|
maintainer addresses:
|
|
|
|
make search maint=@freebsd\\.org icase=0 display=maint,path
|
|
|
|
The key and xkey variables can be limited in scope to displayed fields
|
|
by setting keylim to 1.
|
|
|
|
Example:
|
|
|
|
Find ports that contain "apache" in either of the name, path, info
|
|
fields, ignore the rest of the record (dependencies, maintainer
|
|
address, etc):
|
|
|
|
make search key=apache display=name,path,info keylim=1
|
|
|
|
The following variables can be set e.g. in /etc/make.conf to
|
|
control default search behavior:
|
|
|
|
PORTSEARCH_DISPLAY_FIELDS?=name,path,info,maint,index,bdeps,rdeps
|
|
PORTSEARCH_KEYLIM?=0
|
|
PORTSEARCH_XKEYLIM?=0
|
|
PORTSEARCH_IGNORECASE?=1
|
|
|
|
* Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH
|
|
dependencies
|
|
|
|
* While building index, treat non-existent dependencies as fatal.
|
|
Previously the error was being hidden by the stderr
|
|
redirection.
|
|
|
|
* Don't always retry BROKEN ports when package building (it is taking
|
|
too much time to continually rebuild ports that are usually going
|
|
to really be broken). Set TRYBROKEN if you want to attempt a
|
|
build of a BROKEN port.
|
|
|
|
20040604:
|
|
AUTHOR: ade@FreeBSD.org
|
|
Over the past few weeks, we have been testing the next
|
|
incarnation of ports/Mk/bsd.autotools.mk on the road to bringing
|
|
at least some semblance of sanity back to this corner of the
|
|
ports collection.
|
|
|
|
By far and away the easiest way to see the changes will be to
|
|
view the new file once committed, but here is a summary of the
|
|
changes:
|
|
|
|
1. USE_LIBTOOL, USE_AUTOCONF, USE_AUTOHEADER, USE_AUTOMAKE have
|
|
been fully deprecated. Ports attempting to use these variables
|
|
after the commit will error out, and most obviously break INDEX
|
|
generation, with a helpful error message. Instead, ports must
|
|
now specifically choose the version of any of these tools that
|
|
they need with the corresponding USE_*_VER variables. Note that
|
|
these variables understand any and all versions of autotools ports
|
|
in the tree, there is no longer a need to have specific version
|
|
numbers hardcoded in the infrastructure of bsd.autotools.mk
|
|
(as there is now). In particular, this will immediately open up
|
|
automake18 and autoconf259 for general use and beating.
|
|
|
|
2. Similarly for WANT_LIBTOOL, WANT_AUTOCONF, and WANT_AUTOMAKE.
|
|
Again, these have been fully deprecated, and the equivalent
|
|
WANT_*_VER versions should be used.
|
|
|
|
In order to preserve existing behavior for these variables, please
|
|
note the 20040314 entry in ports/CHANGES for the appropriate
|
|
version numbers to use for any ports in the GNATS queue.
|
|
|
|
Both WANT_* and USE_* bring in the relevant tool as a build
|
|
dependency, and set up a reasonably large number of variables
|
|
pointing to the right programs to be using in the port. The
|
|
only difference at the moment, is that USE_* will run an extra
|
|
autotools-related configuration step, whereas WANT_* merely
|
|
requests the environment.
|
|
|
|
3. The helper knob USE_LIBLTDL has been added which currently
|
|
simply adds a LIB dependency on the libltdl port.
|
|
|
|
4. Three new variables have been introduced,
|
|
WANT_{LIBTOOL,AUTOCONF,AUTOMAKE}_RUN=yes. These variables will
|
|
do nothing by themselves (a Work-In-Progress), but if the
|
|
appropriate autotool version is defined (either through
|
|
WANT_*_VER or USE_*_VER), this will add the relevant dependency
|
|
to RUN_DEPENDS.
|
|
|
|
Steps 3 and 4 now essentially negate the need for any kind of
|
|
direct dependency within a non-autotools port Makefile on
|
|
devel/autoconf*, devel/automake*, devel/libtool*, and devel/libltdl.
|
|
|
|
20040416:
|
|
AUTHOR: java@FreeBSD.org
|
|
There has been a couple of bsd.java.mk tweaks and fixes.
|
|
|
|
. Features from Stage 2 has been removed. A port can no
|
|
longer use the JDK dependency features by setting JAVA_HOME.
|
|
Use JAVA_PREFERRED_PORT instead (see below).
|
|
|
|
. The default JDK port now depends on OS version:
|
|
java/diablo-jdk13 for 4.x, and java/jdk14 for 5.x
|
|
|
|
. It is now possible for the user (and the porters) to
|
|
define a list of preferred JDK ports to build and run ports.
|
|
The port will use the first JDK port from the list that
|
|
matches the requirements specified in the Makefile.
|
|
JAVA_PREFERRED_PORT contains a list of suitable JDK ports
|
|
(sorted by preference). Names for JDKs may be found in
|
|
bsd.java.mk, listed in ${_JAVA_PORTS_ALL} (e.g.
|
|
"JAVA_PORT_NATIVE_BSDJAVA_1_4").
|
|
|
|
. JAVA_PORT_VERSION is now set to the full version number
|
|
of the chosen JDK (e.g. "1.4.2"). Porters will find hints
|
|
regarding how to obtain the same behavior as before in the
|
|
header of bsd.java.mk.
|
|
|
|
20040414:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
When writing a port that uses GTK+ 2.X, you can now list the dependency
|
|
with "USE_GNOME=gtk20" which is preferable to LIB_DEPENDS because the
|
|
GTK+ library version only needs to be changed in bsd.gnome.mk.
|
|
|
|
Please see http://www.FreeBSD.org/gnome/docs/porting.html for all
|
|
the available GNOME components as well as detailed instructions on
|
|
creating ports that use the GNOME infrastructure.
|
|
|
|
20040404:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
The glib20 and gtk20 ports were updated to 2.4.0. This new version
|
|
is completely source and binary compatible with the previous 2.2.x
|
|
series. However, certain API calls have been deprecated. If your
|
|
port defines the following macros, they may refuse to build with
|
|
the new versions of glib20 and gtk20:
|
|
|
|
GTK_DISABLE_DEPRECATED
|
|
GDK_DISABLE_DEPRECATED
|
|
G_DISABLE_DEPRECATED
|
|
|
|
The temporary solution is to either patch your port's Makefiles to,
|
|
or use an in-place regular expression to remove these macros. The
|
|
more permanent solution is to wait until the port's authors update
|
|
their code to use current API calls.
|
|
|
|
20040402:
|
|
AUTHOR: java@FreeBSD.org
|
|
There has been a big update to bsd.java.mk. However, this update
|
|
is mostly backwards compatible, so it shouldn't affect most java
|
|
port maintainers. There is some new functionality and minor
|
|
changes worth documenting here though.
|
|
|
|
bsd.java.mk now provides a new set of macros to be used by ports that
|
|
require a JDK. When USE_JAVA is set, the following variables may be set
|
|
in order to give to precision regarding the requirements of the port:
|
|
|
|
. JAVA_VERSION
|
|
A list of space-separated suitable java versions for the
|
|
port. An optional "+" allows you to specify a range of versions.
|
|
(allowed values: 1.1[+] 1.2[+] 1.3[+] 1.4[+])
|
|
(NOTE: Used to be set by bsd.java.mk)
|
|
. JAVA_OS
|
|
A list of space-separated suitable JDK port operating systems
|
|
for the port. (allowed values: native linux)
|
|
(NOTE: Used to be set by bsd.java.mk)
|
|
. JAVA_VENDOR
|
|
A list of space-separated suitable JDK port vendors for
|
|
the port. (allowed values: freebsd bsdjava sun ibm blackdown)
|
|
(NOTE: Used to be set by bsd.java.mk)
|
|
. JAVA_BUILD
|
|
When set, it means that the selected JDK port should be
|
|
added to build dependencies for the port.
|
|
. JAVA_RUN
|
|
This variable works exactly the same as JAVA_BUILD but
|
|
regarding run dependencies.
|
|
|
|
Here are some of the macros defined after setting USE_JAVA:
|
|
|
|
. JAVA_PORT
|
|
The name of the JDK port (e.g. java/jdk14)
|
|
. JAVA_HOME
|
|
The home of the JDK port in the local base
|
|
. JAVA_PORT_VERSION
|
|
The version of the JDK port.
|
|
(NOTE: Used to be JAVA_VERSION, see above)
|
|
. JAVA_PORT_OS
|
|
The operating system used by the JDK port.
|
|
(NOTE: Used to be JAVA_OS, see above)
|
|
. JAVA_PORT_VENDOR
|
|
The vendor of the JDK port.
|
|
(NOTE: Used to be JAVA_VENDOR, see above)
|
|
|
|
Plus many macros for the commonly used java executables:
|
|
|
|
APPLETVIEWER, JAR, JAVA, JAVAC, JAVADOC, JAVAH,
|
|
JAVAP, JAVA_KEYTOOL, JAVA_N2A, JAVA_POLICYTOOL,
|
|
JAVA_SERIALVER, RMIC, RMID and RMIREGISTRY.
|
|
|
|
bsd.java.mk 2.0 is mostly backward compatible with the previous
|
|
version, save for the notes above and changed internal variables.
|
|
Using the new features is strongly encouraged, since the old
|
|
bsd.java.mk 1.0 features will be deprecated and may be removed in
|
|
the future.
|
|
|
|
You will find more detailed info (as well as a quick tutorial) at:
|
|
http://www.esil.univ-mrs.fr/~hquiroz/freebsd/bsd.java.mk-2.0.html
|
|
|
|
20040316:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
The print/freetype2 port has been updated to 2.1.7. This update
|
|
changes some of the internal FreeType API. Applications may need
|
|
to be patched to support this new API. If a source files includes
|
|
freetype/freetype.h, make sure ft2build.h is included before
|
|
freetype/freetype.h. The proper way to do this is:
|
|
|
|
#include <ft2build.h>
|
|
#include FT_FREETYPE_H
|
|
|
|
However, the following will work as well, but is deprecated:
|
|
|
|
#include <ft2build.h>
|
|
#include <freetype/freetype.h>
|
|
|
|
20040314:
|
|
AUTHOR: ade@FreeBSD.org
|
|
USE_LIBTOOL, USE_AUTOCONF, and USE_AUTOMAKE are now considered
|
|
deprecated, and will be removed on or around June 1st 2004.
|
|
All ports should now choose the specific version of the tool,
|
|
using USE_LIBTOOL_VER, USE_AUTOCONF_VER, and USE_AUTOMAKE_VER.
|
|
The old "system default" behavior can be written as follows:
|
|
|
|
Old New
|
|
USE_LIBTOOL=yes USE_LIBTOOL_VER=13
|
|
USE_AUTOCONF=yes USE_AUTOCONF_VER=213
|
|
USE_AUTOMAKE=yes USE_AUTOMAKE_VER=14
|
|
|
|
20040304:
|
|
AUTHOR: eik@FreeBSD.org
|
|
New variable MASTER_SITE_SOURCEFORGE_EXTENDED. It has the
|
|
ten official sourceforge.net download mirrors, whereas
|
|
MASTER_SITE_SOURCEFORGE only has five. To check if your
|
|
port is mirrored there, go to
|
|
<http://prdownloads.sourceforge.net/${MASTER_SITE_SUBDIR}/>
|
|
click on ${DISTFILES} and you'll see five or ten mirrors,
|
|
corresponding to the variables above.
|
|
|
|
20040226:
|
|
AUTHOR: knu@FreeBSD.org
|
|
The default version of Ruby is now 1.8 on all platforms
|
|
including the i386.
|
|
|
|
Users on the i386 platform need to follow the instructions
|
|
described in the UPDATING file to cope with this upgrade.
|
|
|
|
Next time ruby is major upgraded, you won't need to do this
|
|
kind of messy work because some subtle changes have been made
|
|
to the ruby port infrastructure to make it easier to handle
|
|
multiple versions of ruby.
|
|
|
|
20040217:
|
|
AUTHOR: gnome@FreeBSD.org
|
|
Mozilla will now default to using GTK2, and will only compile
|
|
against Gtk+-1.2 if explicitly requested. This is in exact
|
|
opposite to the old behavior.
|
|
|
|
The valid values of WITH_MOZILLA are now:
|
|
mozilla (www/mozilla, GTK2)
|
|
mozilla-devel (www/mozilla-devel, GTK2)
|
|
mozilla-gtk1 (www/mozilla-gtk1, GTK1)
|
|
mozilla-devel-gtk1 (www/mozilla-devel-gtk1, GTK1)
|
|
|
|
As before, WITH_MOZILLA can be set in /etc/make.conf, but doing
|
|
so is not advised unless you desire the development versions.
|
|
GTK2 browsers will automatically compile against GTK2 mozilla,
|
|
and GTK1 browsers (galeon1, galeon1, and galeon1) will
|
|
automatically compile against GTK1.
|
|
|
|
Again, the only people who will need to take action are those
|
|
who desire development versions (which are inactive at this time
|
|
anyway). Those who want GTK1 mozilla-devel must set
|
|
WITH_MOZILLA=mozilla-devel-gtk1 or they will be pleasantly
|
|
surprised with their very own GTK2 installation on the next
|
|
update.
|
|
|
|
WITH_MOZILLA=mozilla-gtk2 and WITH_MOZILLA=mozilla-devel-gtk2
|
|
are still honored for the time being, but their use is
|
|
now deprecated. Any new ports are not required to consider
|
|
their values, and so eventually WITH_MOZILLA _will_ have to
|
|
be changed.
|
|
|
|
Hopefully galeon2 can catch up to peoples' expectations from
|
|
galeon1 soon, and we can remove the GTK1 ports altogether.
|
|
|
|
20040204:
|
|
AUTHOR: portmgr@FreeBSD.org
|
|
The bsd.php.mk file has been moved out of the lang/php4 port
|
|
into the Mk directory. This will make it much easier to include
|
|
PHP support in PHP-dependent ports. Instead of including
|
|
bsd.php.mk directly, a port can simply set USE_PHP=yes, and the
|
|
ports system with Do the Right Thing.
|
|
|
|
All trailing whitespace has been removed from bsd.port.mk.
|
|
|
|
Enhance the new OPTIONS code by only including saved options if
|
|
the port defines OPTIONS, attempt to use LATEST_LINK as the
|
|
unique name for a port (fall back to ${PKGNAMEPREFIX}${PORTNAME}
|
|
otherwise), bring the ===> messages in line with the existing
|
|
ones by using PKGNAME instead of PORTNAME, use PKGNAME in the
|
|
dialog, use ECHO_CMD instead of ECHO_MSG to write the
|
|
OPTIONSFILE, display a message during compilation indicating
|
|
that user-specified options have been found, and make the output
|
|
of the showconfig target a little more user-friendly.
|
|
|
|
A new USE_ICONV macro has been added that takes the place of an
|
|
explicit LIB_DEPENDS on converters/libiconv. This will help
|
|
with future shared lib version bumps.
|
|
|
|
A new USE_GETTEXT macro has been added that takes the place of
|
|
an explicit LIB_DEPENDS on devel/gettext. This will help with
|
|
future shared lib version bumps.
|
|
|
|
Module::Build is a system for building, testing, and installing
|
|
Perl modules. It will eventually replace the obsoleted
|
|
ExtUtils::MakeMaker. Many new Perl modules have already
|
|
switched to using Build.PL instead of Makefile.PL. To
|
|
facilitate building those modules, a new PERL_MODBUILD macro has
|
|
been added. Use that in place of PERL_CONFIGURE when porting
|
|
Perl modules that make use of the Module::Build framework.
|
|
|
|
Certain ports want to check for the availability of SDL
|
|
libraries before including them. This change adds a new
|
|
WANT_SDL macro similar to WANT_GNOME. By setting this, the
|
|
porter indicates that her port can optional use SDL if present
|
|
on the system. WANT_SDL should be defined _before_
|
|
bsd.port.pre.mk is included. After including bsd.port.pre.mk,
|
|
the list of available SDL components will be returned in the
|
|
HAVE_SDL macro. For details on how to process this component
|
|
list, refer to bsd.sdl.mk.
|
|
|
|
The OpenBSD and NetBSD projects diverged from the FreeBSD ports
|
|
tree years ago, and it no longer make sense to include obsolete
|
|
references to incorrect paths in the FreeBSD ports system. This
|
|
change removes the NetBSD and OpenBSD PORTSDIR compatibility
|
|
bits from bsd.port.mk.
|
|
|
|
The comment for PKGDIR read, ``A direction containing any
|
|
package creating file.'' The word ``direction'' should be
|
|
``directory.'' This has been fixed.
|
|
|
|
A new DIRNAME macro has been added that points to
|
|
/usr/bin/dirname. All direct use of dirname in ports can be
|
|
switched to this macro.
|
|
|
|
Direct use of commands dirname, id, and rm have been corrected
|
|
to use their macro equivalents instead. Some useless ${HEAD}
|
|
-n 1 statements have been removed. A strange comment in the
|
|
do-install target and an out of place ``fi'' have been fixed as
|
|
well.
|
|
|
|
On 5-CURRENT after the 5.2-RELEASE split, the default Perl
|
|
version has been updated from 5.6.1 to 5.8.2. As well, some
|
|
Perl definitions in bsd.port.mk have been moved to their correct
|
|
locations which corrects the PERL_LEVEL definition.
|
|
|
|
The following optimizations have been added to the ports system
|
|
to speed up recursive operations such as make describe, make
|
|
index, make ignorelist, etc. bsd.gnome.mk is now only included
|
|
if a port defines USE_GNOME, WANT_GNOME, and/or USE_GTK. More
|
|
variables are cached and passed down through bsd.port.subdir.mk.
|
|
Perl is no longer invoked when a simple ``echo'' will do. More
|
|
subshell variable assignments have been hidden behind
|
|
conditionals so that the commands are not spawned every time.
|
|
Finally, dependency lists are only constructed if ports actually
|
|
declare dependencies. These optimizations give make index
|
|
approximately a 43% speedup.
|
|
|
|
If CPUFLAGS is not defined (this _CPUCFLAGS is empty), trying
|
|
to remove _CPUCFLAGS from CFLAGS will result in an error. This
|
|
change fixes that.
|
|
|
|
On recent versions of 5.X, /etc/rc.subr exists, and there is no
|
|
reason to install another copy in ${LOCALBASE}/etc. The reason
|
|
this was ever done was to workaround some build issues on bento.
|
|
However, testing OSVERSION seems to work in spite of those build
|
|
issues.
|
|
|
|
The ports system now supports MySQL 3.23, 4.0, 4.1, and 5.0.
|
|
Also, the ability to scale to newer versions was also but in
|
|
place.
|
|
|
|
An .endif comment indicated that the .if block checked
|
|
WANT_MYSQL when, in fact, it was checking WANT_MYSQL_VER. This
|
|
has been corrected.
|
|
|
|
The PTHREAD{CFLAGS,LIBS} macros have been made overridable on
|
|
all versions of FreeBSD to allow for alternate threading
|
|
implementations (e.g. -lc_r, -lthr, -mt, etc.). The default
|
|
threading library has been changed to -lpthread from -lc_r on
|
|
-CURRENT.
|
|
|
|
The new SIZE support broke distfiles fetching on FreeBSD < 4.8.
|
|
On those versions of FreeBSD, the SIZE distfile attribute is now
|
|
ignored. Also, defining DISABLE_SIZE in, for example,
|
|
/etc/make.conf, will ignore the SIZE attribute on all versions
|
|
of FreeBSD. This is useful with alternate values for FETCH_CMD.
|
|
|
|
A new vulnerabilities database has been added to the ports
|
|
system in order to keep more accurate, up-to-date, track of
|
|
security vulnerabilities. The ports system now knows how to
|
|
query that database and dynamically prevents the installation
|
|
of vulnerable ports.
|
|
|
|
In order to allow for more rapid development of the package
|
|
tools, the ports system will prefer to use pkg_* tools found in
|
|
${LOCALBASE} over those in the base system. However, all PKG_*
|
|
macros are still overridable.
|
|
|
|
A new physical category, net-mgmt, has been created to house
|
|
network management ports.
|
|
|
|
The /var/db/port.mkversion file never really took off, and is
|
|
now very obsolete. Replace the code used to generate and check
|
|
this file with a simple OSVERSION check. The ports system now
|
|
requires FreeBSD 4.3 or higher.
|
|
|
|
The last round of bsd.*.mk changes broke ports that had
|
|
duplicate distinfo entries (e.g. linux_base). This is now
|
|
fixed. Along with this fix, only distfiles with a bad checksum
|
|
will be refetched, where as distfiles missing from distinfo will
|
|
not be refetched.
|
|
|
|
The PLIST_{DIRS,FILES} macros were passed to the final package
|
|
list unchanged by PLIST_SUB. This is not always desirable.
|
|
Now, those macros are passed through PLIST_SUB.
|
|
|
|
The previous OPTIONS code assumed users would be running port
|
|
build as root. If this was not the case, OPTIONS configuration
|
|
would fail. Now, the bits of the config and rmconfig targets
|
|
that require write access to system directories are run under
|
|
SU_CMD.
|
|
|
|
The makesum target will now add a SIZE attribute for each
|
|
distfile by default. This can be overridden by defining NO_SIZE
|
|
in a port's Makefile. Note: this could probably be expanded to
|
|
omit SIZE attributes for specific distfiles in the future.
|
|
|
|
20040129:
|
|
AUTHOR: trevor@FreeBSD.org
|
|
SIZE lines in distinfo files: if you set USE_SIZE when you do "make
|
|
makesum", the byte sizes of the distfiles will be listed in the
|
|
distinfo file. Then, if a distfile is replaced on its master site with
|
|
one of a different size than that listed, "make fetch" will fail with a
|
|
"size mismatch" error before downloading the file and the user will be
|
|
asked to fetch the file by hand. Also, a user will know the size of
|
|
the distfiles before fetching and decide to fetch later.
|
|
|
|
20040129:
|
|
AUTHOR: erwin@FreeBSD.org
|
|
Start of CHANGES file.
|
|
|
|
FORMAT:
|
|
|
|
This file contains a list, in reverse chronological order, of major
|
|
breakages or added features in tracking ports. Not all things will be
|
|
listed here, and it only starts on January 29, 2004.
|
|
|
|
Copyright information:
|
|
|
|
Copyright 2004-2019 FreeBSD Foundation All Rights Reserved.
|
|
|
|
Redistribution, publication, translation and use, with or without
|
|
modification, in full or in part, in any form or format of this
|
|
document are permitted without further permission from the author.
|
|
|
|
THIS DOCUMENT IS PROVIDED BY FREEBSD FOUNDATION ``AS IS'' AND ANY EXPRESS OR
|
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
DISCLAIMED. IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
|
|
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
|
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
Contact portmgr@FreeBSD.org if you have any questions about your use of
|
|
this document.
|
|
|
|
$FreeBSD$
|