If defined, for each flavors it will create for the non active one:
PLIST_SUB= FLAVORNAME="@comment " NO_FLAVOUNAME=""
and for the active one:
PLIST_SUB= FLAVORNAME="" NO_FLAVOUNAME="@comment "
Same for SUB_LIST
Reviewed by: manu, bdrewery, mat
Differential Revision: https://reviews.freebsd.org/D32495
This adds XDG_CACHE_HOME to the set of XDG_* variables exported in
CONFIGURE_ENV and MAKE_ENV.
Without XDG_CACHE_HOME in the environment some software (for ex.
https://github.com/coursier/coursier) falls back to using
/home/{user}/.cache during the build and writes outside the working
directory.
XDG_CACHE_HOME is described in the XDG Base Directory Specification:
https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
PR: 255600
Exp-run by: antoine
It's well known that LTO provides both performance and size benefits for
binaries.
Add preliminary, opt-in support for global LTO enforcement to ports. Ports that
provide LTO option on their own and the ones that don't work with LTO will need
to set LTO_UNSAFE in the future.
PR: 258536
Since we switched to pkg, NO_PKG_REGISTER was not working anymore.
Since pkg 1.17.2 the pkg register command do support -N option which
allows to bring back NO_PKG_REGISTER.
PR: 191461
it allows users to set their desired compression level when packaging
in make.conf
PR: 257427
Suggested by: Trond Endrestol <Trond.Endrestol@ximalas.info>
Binutils is not present anymore on elfv2 systems.
Fixes build of audio/invada-studio-plugins-lv2:
/usr/local/bin/ld: unrecognized option '-B/usr/local/bin'
/usr/local/bin/ld: use the --help option for usage information
Keep the new flag though.
This error can occur in some other cases such as building on a
mismatched host kernel+userland. Some further study is needed
and it may be possible to automatically set UNAME_r.
An example of this happening is with recent Poudriere changes:
- Poudriere <= 3.3 used to set UNAME_r in /etc/login.conf's environment
during *jail creation*.
- Poudriere >= 3.4 only sets it in the environment during *jail
runtime*.
Creating a jail with Poudriere 3.4 and then using Poudriere 3.3 on it
would fail to have UNAME_r properly set. It would read OSVERSION from
/usr/include/sys/param.h to find the installed files release. The ports
framework, and builds, need `uname` to be correct for the *jail/chroot*
and not be of the running kernel.
Add a footshoot enabler while here which should not be used for any
reason as it can create packages targetting the release of the running
kernel rather than the chroot/jail's expected version.
- Improve the text (fix typos) in another .warning message
- And an extra newline after "backward compatibility for users"
.if/.endif block for better readability, kill EOL whitespace
- Replace UTF-8 non-breaking space (C2 A0) with normal ASCII one
TL;DR: new uniq package file extension: '.pkg'
Full changelog for pkg:
- add a new "snap" prefix, to deal with pkg base snapshots
- pkg repo now accepts packages with different compression formats
- pkg now have a single extension: ".pkg" and a backward compatible
symlink is created when the package is created to help transitioning
- Default compression level for zstd is now set to 19
- the default compression level is now a configuration option
- plenty of portability fixes
- fix plenty of typos
- expose the name of the package to lua and shell scripts
- plist:
remove internal support for @*exec (this is now in the ports tree)
remove support for @ignore
remove support for @dirrm/@dirrmtry
remove support for @pkgdep
remove stub support for @stopdaemon
remove stub support for @display
remove stub support for @mtree
remove stub support for @conflict
- VUXML: fetch .xz compressed version of the file by default
- triggers are deferred to later command (firstboot is planned) if run
with pkg -r
- pkg triggers commands has been added and can execute the deferred
triggers for example at firstboot
Changes in the framework:
- Add a backward compatibility layer, so people are not forced to move
to pkg 1.17 yet (new quarter we will enforce the switch for triggers
anyway, but it gives time to people to switch)
- Introduce a new PKG_COMPRESSION_FORMAT for users to specify the
compression format they are willing to use when creating packages:
txz, tar, tgz, tbz, tzst are the valid ones (note that tzst is only
usable on FreeBSD 13 and 14)
- Add a backward compatibility for people who specified the compression
format already via PKG_SUFX and issue a warning to tell them about the
deprecation of PKG_SUFX
in next version of pkg, we now use a uniq extension: '.pkg' whatever the
compression is, the problem is some bootstrap pkg(7) does not handle
that yet, notably on freebsd 11.4 and 12.2.
We already have a compatibility layer by creating a symlink on the old
extension, which works but the signature itself will not exist with the
old extension. Add a workaround in the ports tree to symlink the new
signature to the old expected signature.
Given at the moment we are doing that things are not yet signed by
default we do create a dead symlink, but at the moment the repo are
published the right signature will be there.
The classic way to handle flavors is to set:
FLAVORS= foo bar
FLAVOR?= ${FLAVORS:[0]}
And in that case, FLAVOR is only set if the variable is not defined. If
you pass an empty flavor using `FLAVOR=` then it remains empty after
that line. It can leads to some ports with complicated logic to assume
the wrong flavor is set.
PR: 256301
Reported by: avg
Differential Revision: https://reviews.freebsd.org/D30579
While no port will ever have an @ in their path name, it might be
possible that PORTSDIR has an @ somewhere in its path.
PR: 256301
Differential Revision: https://reviews.freebsd.org/D30579
This will be done before the loading of the actual USES, it allows one
to keep using the USES from the ports tree, and still provide additional
features in the overlay
While it is planned to switch the compression format to zstandard in a
near futur it requires first pkg 1.17 to settle, don't change yet head
compression format.
Gitlab changed the address beginning of April you can download packages
from:
curl 7efd19e371/archive.tar.gz/gitlab-org-gitlab-foss-7efd19e3716ab6f9146052da76d1bd59ec815f2d_GL0.tar.gz
to:
curl 7efd19e371.tar.gz?dummy=/gitlab-org-gitlab-foss-7efd19e3716ab6f9146052da76d1bd59ec815f2d_GL0.tar.gz
The new extracted archive will have a different folder name.
Before it was:
gitlab-foss-7efd19e3716ab6f9146052da76d1bd59ec815f2d-7efd19e3716ab6f9146052da76d1bd59ec815f2d
now it is:
gitlab-foss-7efd19e3716ab6f9146052da76d1bd59ec815f2d
So all ports using gitlab must regen their distinfo.
PR: 254866
MFH: 2021Q2
Differential Revision: https://reviews.freebsd.org/D29628
It never actually really have been a thing, and can be done
directly in install/deinstall scripts
Reviewed by: mat (portmgr)
Differential Revision: https://reviews.freebsd.org/D29427
The main big change is the switch of the package extension to .pkg
This is done so we can change compression format without having to
modify the tools each time to adapt to the new extension
While here adapt the ports tree to the new .pkg extension and prepare
the pkg-devel ports to swicth the package compression format to zstd
in FreeBSD 14 in a month to give time to upgrade to a version which
have the bootstrap knowing about .pkg.
Changes from 1.16.99.2 to 1.16.99.3
- lua update to 5.4.2
- pkg repo accept now all supported formats mixed without config
- pkg now default on creating .pkg files with backward compatible symlinks
- backward compatible symlinks are now an option
- make the default comprpession format a config option
- set the default compression level for zstd to 19
- make the default compression level a config option
- Update libucl to latest version
It should not be used to make targets do nothing. In such cases,
it's most likely the ports infrastructure which requires fixing.
Suggested by: bapt
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D27072
1.15 introduced more lua scripts and keywords handling and we want
to push that, so bump the minimal pkg version needed to 1.15.6 which
is the latest release available.
Approved by: portmgr (bapt@)