If CONFIGURE_OUTSOURCE is defined HAS_CONFIGURE invokes configure script
and builds the port out of source tree, under ${WRKDIR}/.build by default.
The feature is inspired by USES=cmake:outsource and USES=qmake:outsource.
PR: 208294
Exp-run by: antoine
Approved by: portmgr (mat)
Differential Revision: https://reviews.freebsd.org/D4157
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.
PR: 204772
With hat: portmgr
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D4514
To use the GNOME or MATE components activate it by adding gnome
or mate to USES. The usage of USE_GNOME/INSTALL_ICONS and for
example GLIB_SCHEMAS has stayed the same.
Like with USES, the use of USE_GNOME and so after bsd.port.pre.mk
is now forbidden. And adapt ports that where still doing that.
Exp-runs done by: antoine@
PR: 205432
Reviewed by: antoine@, mat@
Approved by: portmgr (antoine@)
Differential Revision: https://reviews.freebsd.org/D3653
sqlite and firebird handling code has been extracted from bsd.databases.mk
add an entry in bsd.sanity.mk to mark USE_SQLITE and USE_FIREBIRD as deprecated
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.
PR: 204056
Submitted by: mat
Reviewed by: bapt
Exp-run: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D2735
Modify make describe to automatically prepend ${PORTSDIR} if the path for the
port is not absolute
Checked with poudriere, portmaster, portupgrade
PR: 203685
Exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D3866
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 already provide default test target on their own.
This commit also converts my ports which have tests to this new framework.
Approved by: portmgr (bapt)
Differential Revision: D3680
Maintainers can now use @sample sample_file target_file for all cases
that does not fall into the usual @sample something.sample
Reviewed by: antoine
Differential Revision: https://reviews.freebsd.org/D3734
- Move Perl's man1 files along with its man3 files.
- Move where Perl installs its modules man1 pages.
- Convert the ports installing man1 pages.
- Make different Perl versions installable at the same time.
Though you should note that only the default version can be used to
install Perl modules, and the non default Perl versions cannot use the
modules installed via ports if they contain .so as they are installed
in a version specific directory.
Reviewed by: bapt (the Mk bits)
Exp-run by: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D3542
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.
Reviewed by: bapt
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D3410
UNIQUENAME was never unique, it was only used by USE_LDCONFIG and now,
we won't have conflicts there.
Use PKGBASE instead of LATEST_LINK in PKGLATESTFILE, the *only* consumer
is pkg-devel, and it works just fine without LATEST_LINK as pkg-devel
has the correct PKGNAME anyway.
Now that UNIQUENAME is gone, OPTIONSFILE is too. (it's been called
OPTIONS_FILE now.)
Reviewed by: antoine, bapt
Exp-run by: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D3336
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.
PR: 200483
Differential Revision: https://reviews.freebsd.org/D2608
Submitted by: mat
With hat: portmgr
Exp run by: antoine
Sponsored by: Absolight
Simplify gnustep ports
Hook into the regular ports framework:
- LIB_DEPENDS for library dependencies
- Use regular USE_LDCONFIG
Reuse USES=objc (automatic)
USE_GNUSTEP is now a macro to set the dependencies and build feature needed.
Accepted arguments: back base build gui
Merge deskutils/preferencepanes into deskutils/systempreferences
The new GITHUB MASTER_SITE from r381618 now supports not setting GH_COMMIT and
only having GH_TAGNAME default to DISTVERSION.
All of these ports as-is.
With hat: portmgr
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.
The following MASTER_SITES are provided to retain the old checksum and
directory structure (that require GH_COMMIT):
GH -> GHL
GITHUB -> GITHUB_LEGACY
Differential Revision: https://reviews.freebsd.org/D748
Submitted by: amdmi3
Reviewed by: mat, swills, antoine, bdrewery
With hat: portmgr
split from from devel/qt4-linguist (similar to Qt 5 ports). These console
tools are often used for localization support in Qt ports, having them
standalone is quite useful. This work is based on Tobias Berner patch [1].
PR: 190929 [1]
Requested by: amdmi3, koobs
It makes upgrading from one Perl major version to another way easier. For
binary package users, it means pkg upgrade will detect the libperl.so.x.yy
change, and reinstall the affected packages. For users using ports, it will
save rebuild time as it's easier to detect what ports really need to be
rebuilt.
PR: 195821
Differential Revision: https://reviews.freebsd.org/D1241
Submitted by: mat
Reviewed by: antoine, bdrewery
Exp-run by: antoine
With hat: perl
Sponsored by: Absolight
first contains runtime libraries such as libintl and the latter contains
developer tools such as msgfmt. Ports that use gettext will usually need
a LIB_DEPENDS on gettext-runtime and a BUILD_DEPENDS on gettext-tools.
USES=gettext-runtime can be used to set a LIB/BUILD/RUN_DEPENDS on
devel/gettext-runtime and USES=gettext-tools can be used 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.
Update gettext to 0.19.3.
Remove :oldver from converters/libiconv and devel/gettext-runtime. Leave
symlinks with the old library versions to avoid the need to bump
PORTREVISION on a large number of dependent ports. When most of the
dependent ports have had normal version updates, PORTREVISION can be
bumped on the remaining ones (low number) and the links can be removed.
Fix some ports that installed files in lib/locale instead of share/locale.
PR: 194038
Reviewed by: bapt
Exp-run: antoine
Approved by: portmgr (antoine)
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.
PR: 194969
Differential Revision: https://reviews.freebsd.org/D1019
Exp-run by: antoine
Reviewed by: perl@
Approved by: portmgr