As part of the improvements of USES infrastructure Mk/bsd.octave.mk has
been converted to Mk/Uses/octave.mk. This also declutters some old
stuffs in the octave-* ports and makes it simpler to add more
octave-forge ports easily.
While I am here make all the ports portclippy/portfmt compliant. And use
USES macros whenever possible.
Reviewed by: portmgr
Approved by: tcberner
Differential Revision: https://reviews.freebsd.org/D37887
Saturday, 10 December 2022
KDE today announces the release of KDE Frameworks 5.101.0.
KDE Frameworks are 83 addon libraries to Qt which provide a wide variety
of commonly needed functionality in mature, peer reviewed and well
tested libraries with friendly licensing terms. For an introduction see
the KDE Frameworks release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
PR: 268291
Exp-run by: antoine
As per upstream php 7.4 has reached it's EOL on 2022-11-22. Remove php74
from the tree. Default version of php has already been switched to 8.1.
Approved by: portmgr (blanket infrastructure)
Sponsored by: Bounce Experts
Version 2.8 was removed without proper testing of the tree. The removal
of 2.8 has created multiple BROKEN ports with BROKEN INDEX. The proper
sequence should be removal of the consumers and then removing the
depricated version.
Approved by: portmgr (just-fix-it)
Fixes: ba3f1e0 remove wxgtk28 in USE_WX
This disables bsd.sanity.mk when PACKAGE_BUILDING is set such that it
only is loaded during 'make [all]' or 'make check-sanity'. It is assumed the
package tool will manually call the target if it wants the check. Otherwise
we get redundant logic and filesystem lookups from this file for every other
build target.
Prodded by: mjg
- Update all the consumers to use USES=tex
- USE_TEX=yes is the old way of writing USES=tex which has been removed
and replaced in all ports
- Almost all of the USE_TEX features remains unchanged
- Some consumers had the same variables defined both in the mk
infrastructure and also in the ports which have been removed from the
ports as those are redundant.
In case any of the consumers are failing to build please make sure that
the nexessary USES=tex is there. Unlike previous USE_TEX=yes will no
longer load the required VARS for tex and related dependencies.
Reviewed by: portmgr
Approved by: portmgr (blanket)
USES=llvm supports two kinds of arguments:
* mode
<none>: defaults to build
build: add a BUILD_DEPENDS on chosen llvm-port
run: add a RUN_DEPENDS on chosen llvm-port
lib: add a LIB_DEPENDS on chosen llvm-port
* version
<none>: defaults to ${LLVM_DEFAULT}
number: use explicitly the specified version
min=number: use specified min if ${LLVM_DEFAULT} is lower
max=number: use specified max if ${LLVM_DEFAULT} is higher
An example usage might be:
USES= llvm
or
USES= llvm:13,build
or
USES= llvm:min=14,lib
The following variables are exposed to be used in the ports tree at the moment:
* LLVM_VERSION version chosen from the arguments to llvm.mk
* LLVM_PORT chosen llvm port
* LLVM_CONFIG llvm-config of the chosen port
* LLVM_LIBLLVM libLLVM.so of the chosen port
* LLVM_PREFIX installation prefix of the chosen port
Reviewed by: manu, bapt
Differential Revision: https://reviews.freebsd.org/D37728
Since GNAT is now installed in a specific prefix, we can simplify by
removing the programs suffix: this will avoid the usage of binary
aliases, only setting the PATH is necessary.
TMPDIR could be noexec or have low quota, use WRKDIR for Go build artefacts.
Reviewed by: dmgk
Differential revision: https://reviews.freebsd.org/D37567
In some builds it could be possible that pkg-descr is not writable.
We could either install -m 0644 the file over or just let sh create
it.
This change also opens the destination file only once now.
Fixes: ddd0e820c
- Remove blanket IGNORE_WITH_PHP and add IGNORE_WITH_PHP to only the web
applications. This will massively reduce the number of ports to be
removed in case there is no timely support for php8.
- Pet portlint/portclippy
- Add missing LICENSE
PR: 266552
Reported by: michael.osipov@siemens.com
Sponsored by: Bounce Experts
KDE Plasma 5.24.7, Bugfix Release for October
Friday, 14 October 2022. Today KDE releases a bugfix update to KDE
Plasma 5, versioned 5.24.7.
Plasma 5.24 was released in February 2022 with many feature refinements
and new modules to complete the desktop experience.
Announcement: https://kde.org/announcements/plasma/5/5.24.7/
KDE Gear 22.12 is Here!
Thursday, 8 December 2022
KDE Gear ⚙️ is back with exciting new features, performance boosts, and
bugfixes for all your favorite KDE apps!
In this release: Kate extends a warm welcome, Dolphin offers you more
choices, and a lot of apps serve up hamburgers galore!
Announcement: https://kde.org/announcements/gear/22.12.0/
Follow the path done for ports depending on doxygen with gtkdoc.
This reduced the number of build dependencies and respects the defaults
of the upstream build system.
Make a GTKDOC option generic so other ports can follow the same path
BUILD_DEPENDS doesn't recognise version response from enc, so it is
not accepted in poudriere, when the test doesn't succeed.
Sponsored by: SkunkWerks, GmbH
rebar2 -> rebar3 removed the very useful helper tools that allow
compiling native code into the BEAM. enc is a small tool already in
ports that provides this functionality.
Sponsored by: SkunkWerks, GmbH
Monday, 14 November 2022
KDE today announces the release of KDE Frameworks 5.100.0.
KDE Frameworks are 83 addon libraries to Qt which provide a wide variety
of commonly needed functionality in mature, peer reviewed and well
tested libraries with friendly licensing terms. For an introduction see
the KDE Frameworks release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
- devel/kf5-kconfig update to 5.100.1 (bug fix release)
- x11/kf5-plasma-framework: update to 5.100.1 (bug fix releas)
- fix fallout
Changelog: https://kde.org/announcements/frameworks/5/5.100.0/
Exp-run by: antoine
PR: 267764
Test resolving and connectivity (proper HTTP response) for every
officially endorsed mirror from three different locations, using
this simple shell script:
set -e
for m in $(grep -v ^# /tmp/sf-mirrors); do
host ${m}.dl.sourceforge.net
curl --connect-timeout 30 -I http://${m}.dl.sourceforge.net/project/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%202.2.4/lazarus-2.2.4-0.tar.gz
done
With the following results over numerous runs:
GOX mirror (Itauna, Brazil) was inaccessible from everywhere;
additionally, AltusHost (Stockholm) and YeR (Azerbaijan) were
inaccessible from China, so do not offer them for the moment.
Please keep in mind that not all mirrors might be enabled at once
(mirrors sometimes are pulled from rotation), and not all mirrors
have all files -- in this case, it will respond with HTTP/1.1 302
Moved Temporarily redirect to another site.
Tested from: Guangzhou (China Mobile), New York City (NYI),
Saint Petersburg (Rostelecom)
Switching php DEFAULT_VERSION from 8.0 to 8.1. php 8.0 Active support
ends on 2022-11-26. This will not be merged in quarterly.
PR: 266854
Tested by: antoine
Approved by: ale
Relnotes: https://www.php.net/supported-versions.php
Sponsored by: Bounce Experts
To build such projects a port must add the repository to MASTER_SITES under
some group and then use this group in USE_CABAL.
Cabal2Tuple (ports-mgmt/hs-cabal2tuple) supports this feature starting with
version 2.0. Running `make make-use-cabal` will automatically pass necessary
flags to it.
This knob allows pulling in a revised .cabal file for a Haskell package
being ported. This allows us to drop local patches that were serving the
same purpose.
This change removes duplicated entries from MASTER_SITES and DISTFILES
variables. Now the MASTER_SITES variable will contain single Hackage URL without
any group for the simplest case and with :_cabal_mk_hackage group in nodefault
case.
This change opens a path to using non-Hackage Cabal repositories
(needed for Cardano) and pulling in .cabal revisions without using patches.
Unfortunately, this change results in a large churn in Haskell ports distinfos.
To make this churn less useless, refresh all Haskell dependencies in all ports.
Instead of moving the original project file into a temporary location,
employ cabal.project.local for Ports-related adjustments.
This implements an idea that upstream cabal.project files shouldn't be touched
by Ports framework. If needed they can be patched by the port maintainer directly.
Adapt existing Haskell ports to this change.
Qt 6.4.1 release is a patch release made on the top of Qt 6.4.0. As a
patch release, Qt 6.4.1 does not add any new functionality but provides
bug fixes and other improvements and maintains both forward and backward
compatibility (source and binary) with Qt 6.4.0.
For detailed information about Qt 6.4, refer to the online documentation
included in this distribution. The documentation is also available
online:
https://doc.qt.io/qt-6/index.html
Changelog: https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/6.4.1/release-note.md
Thursday, 3 November 2022
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
Today they all get new bugfix source releases with updated translations,
including:
* dolphin: Fix opening unnecessary new windows (Commit, fixes bug
#440663)
* konsole: Fix a crash when extending the selection (Commit, fixes
bug #398320 and bug #458822)
Announcement: https://kde.org/announcements/gear/22.08.3/
Changelog: https://kde.org/announcements/changelogs/gear/22.08.3/
For some reason, net/mpich does not accept FC with F90. It should be
possible to fix it, but I’m afraid that other ports could be affected
too, so it seems better to revert for the moment.
PR: 267502
Reported by: jfc (at) mit.edu
CMake defines -DNDEBUG when BUILD_TYPE is set to RELEASE by default
however default flags gets dropped when CMAKE_C_FLAGS_RELEASE and
CMAKE_CXX_FLAGS_RELEASE are (re)defined. This causes some projects
to build with debugging by default which needs to be disabled
by hand if they do not set -DNDEBUG manually either in ports
Makefile and/or in CMake's Makefile. To follow upstream add
-DNDEBUG to our RELEASE flags.
PR: 266721
Reviewed by: arrowd
Approved by: portmgr (tcberner)
Differential Revision: https://reviews.freebsd.org/D36695
Exp-run by: antoine
As usual with features, this can be activated/deactivated via
WITH/WITHOUT_<feature>
Each port can individually mark itself as not supporting the feature
via <feature>_UNSAFE=
3.2 is new stable branch after 3.0, 3.1 was develop/unstable branch,
so in future 3.2 have to replace 3.1 for all consumers in ports.
PR: 265093
Reported by: VVD <vvd@unislabs.com>
Reviewed by: rhurlin
Summary:
This variable makes `FetchContent_*()` CMake functions to disable any network
access, which is exactly what we expect in Ports framework.
Test Plan: `poudriere testport` on a simple CMake port.
Reviewed By: #kde, #portmgr, tcberner
Differential Revision: https://reviews.freebsd.org/D37015
Save an invocation of id(1) by using the built-in .MAKE.UID variable
instead. Check availability of .MAKE.UID first, since older versions
of bmake (12.x) don't have it yet.
PR: 266942
Approved by: bapt
USES=luajit centralizes luajit dependencies via bsd.default-versions.mk
(defaulting to luajit-devel).
Ports currently depend on:
lang/luajit: 42
lang/luajit-devel: 0
lang/luajit-openresty: 51
The difficulty here is that:
- They all conflict with each other
- Upstream is very clear about not intending for users to use the
version in lang/luajit at all, and wants all luajit users to use
lang/luajit-devel
- luajit-openresty is very aggressive about being drop-in compatible
with luajit-devel (though not the other direction)
For the vast majority of situations, USES=luajit will be sufficient.
Ports that use openresty's API additions can specify
USES=luajit:openresty.
I'm adding this into head very early in the 2022Q4 cycle so that there's
ample time to address the default. It's a difficult decision. osa, the
maintainer of luajit and luajit-devel, prefers that the default be
luajit, but I went the other direction because it's in direct conflict
with upstream's clear stated intention. It's not a simple decision; see
the review below for a little discussion on it.
The TL;DR here is that this defaults to the one luajit version that no
port currently depends on. However, this version is what OpenBSD,
Homebrew, Ubuntu, Debian, Fedora, MacPorts, and Arch default to (and
none of them even provide the stale version lang/luajit provides).
This will bring FreeBSD in line with nearly every other OS package
system, and with upstream's intention.
See also PRs 225342, 257051.
Reviewed by: bapt, tcberner
Approved by: portmgr (bapt, tcberner)
Differential Revision: https://reviews.freebsd.org/D36947
KDE Gear 22.08.2
Thursday, 13 October 2022
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
Today they all get new bugfix source releases with updated translations, including:
* ark: Fix incompatibility with original 7-Zip (Commit, fixes bug
#456797)
* kdeconnect: Prevent a crash if there’s no audio devices (Commit,
fixes bug #454917)
* kio-extras: Compatibility with Samba >= 4.16 (Commit, fixes bug
#453090)
Announcement: https://kde.org/announcements/gear/22.08.2/
Sunday, 9 October 2022
KDE today announces the release of KDE Frameworks 5.99.0.
KDE Frameworks are 83 addon libraries to Qt which provide a wide variety
of commonly needed functionality in mature, peer reviewed and well
tested libraries with friendly licensing terms. For an introduction see
the KDE Frameworks release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
PR: 266950
Exp-run by: antoine
When using tags the archive fetched from GitLab has the
corresponding commit hash appended to the directory root too.
snui@git+https://gitlab.com/snakedye/snui.git?tag=v0.1.4\#83873f1e148a9c84471c10f166c9a945a44d3e64
would result in
WRKSRC_crate_snui= ${WRKDIR}/snui-v0.1.4
but it must be
WRKSRC_crate_snui= ${WRKDIR}/snui-v0.1.4-83873f1e148a9c84471c10f166c9a945a44d3e64
PR: 266724
Reported by: jbeich
Avoid being a burden for multimedia@ due to unmerged patch upstream.
If re-added, please, change maintainer and use the same style as gtk3
plugin i.e., x11-toolkits/gstreamer1-plugins-gtk
This reverts commit d88adb1c0a.
Add checks for powerpc64 and riscv64 since they won't work with LTO.
This is a bit crude on powerpc64 but can be improved upon later.
LTO does work on this platform using GCC but will fail using lld.
This commit also introduces LTO_DISABLE_CHECK which can be used to
override.
Reviewed by: pkubaj (private email)
People should use 'make makepatch' instead which creates patches
with the expected filename and header.
Differential Revision: https://reviews.freebsd.org/D36767
Use corresponding toggles for each build framework to enable LTO
Reviewed by: pkubaj (maintainer)
Differential Revision: https://reviews.freebsd.org/D36696
The WWW macro was supposewd to hold only one URL pointing to the most
useful starting point for a user searching for additional information,
configuration examples, etc.
Some port maintainers have set the WWW macro to a list of URLs,
breaking assumptions by scripts and tools in the ports system and of
external users of the ports system.
This change allows WWW to hold a list of URLs by only considering the
first list element in places where only a single URL is supported.
This mirrors the previous behavior of only using the first line tagged
with "WWW: " in the pkg-descr file.
Approved by: portmgr (tcberner)
Differential Revision: https://reviews.freebsd.org/D36558
This change has been accepted as part of review D36558. A follow-up
commit will apply the reminder of the patches in that review.
A separate commit is used since providing default values for certain
ports is logically different than support for multiple URLs in WWW.
This commit adds default WWW values if the following conditions are
met:
1) no value assigned to the WWW macro by the port
2) at least one of USE_GITHUB, USE_GITLAB, or USES=pear is used in
the port
Further defaults for USES cases could be added at a later time.
The following values are used as default URLs:
USES=pear: https://pear.php.net/package/${PORTNAME}/
USE_GITHUB: https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/
USE_GITLAB: https://gitlab.com/${GL_ACCOUNT}/${GL_PROJECT}/
If both a USES case and USE_GITHUB or USE_GITLAB apply, the default
URL of the USES case takes precedence.
Approved by: portmgr (tcberner)
metaports should not have any license, so it was forced LICENSE to NA.
However, some metaports may inherit multi-licensing settings from master
which leads to failed validation check:
===
License not correctly defined: single license in LICENSE,
but LICENSE_COMB is set to dual (requires more than one)
===
Force paired variable LICENSE_COMB to 'single' to keep validation checks in consistent state
Discussed with: bapt
Approved by: portmgr (bapt)
Monday, 12 September 2022
KDE today announces the release of KDE Frameworks 5.98.0.
KDE Frameworks are 83 addon libraries to Qt which provide a wide variety
of commonly needed functionality in mature, peer reviewed and well
tested libraries with friendly licensing terms. For an introduction see
the KDE Frameworks release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Announcement: https://kde.org/announcements/frameworks/5/5.98.0/
PR: 266364
Exp-run by: antoine
- Core:
. Fixed bug GH-9500 (Using dnf type with parentheses after readonly
keyword results in a parse error). (ilutov)
. Fixed bug GH-9516 ((A&B)|D as a param should allow AB or D. Not
just A). (Girgias)
- GMP
. Fixed bug GH-9308 (GMP throws the wrong error when a GMP object is
passed to gmp_init()). (Girgias)
- Intl
. Fixed bug GH-9421 (Incorrect argument number for ValueError in
NumberFormatter). (Girgias)
- Opcache:
. Fixed bug GH-9259 (opcache.interned_strings_buffer setting integer
overflow). (Arnaud)
- OpenSSL:
. Fixed bug GH-9517 (Compilation error openssl extension related to
PR GH-9366). (Jakub Zelenka)
- PDO_PGSQL:
. Fixed bug GH-9411 (PgSQL large object resource is incorrectly
closed). (Yurunsoft)
- Random:
. Fixed bug GH-9464 (build on older macOs releases). (David Bohman)
- Standard:
. Marked crypt()'s $string parameter as #[\SensitiveParameter].
(timwolla)
. Fixed bug GH-9464 (build on older macOs releases). (David Bohman)
. Fixed bug GH-9518 (Disabling IPv6 support disables unrelated
constants). (cmb)
Please DO NOT use this version in production, it is an early test
version.
Relnotes: https://github.com/php/php-src/blob/php-8.2.0RC2/NEWS
Sponsored by: Bounce Experts
- Refresh mirror list with working mirrors and not stale mirrors
- Drop ftp mirrors
- Use main site as fallback
Reviewed by: salvadore
Differential Revision: https://reviews.freebsd.org/D36372
Some projects do some special handling when the ccache program is present.
This causes problems because ports framework has its own ccache settings
and mere presence of ccache program doesn't mean that ccache is enabled.
The new CCACHE_ENABLED variable can be used to tell projects if ccache
is really enabled.
PR: 266310
Approved by: tcberner@ (as portmgr)
This contains the headers to build Linux software using expat.
Also add USE_LINUX=expat-devel.
Approved by: tijl, tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D35904
This contains the headers to build Linux software using OpenSSL.
Also add USE_LINUX=openssl-devel.
Approved by: tijl, tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D35903
This contains the headers to build Linux software using zlib.
Also add USE_LINUX=zlib-devel.
Approved by: tijl, tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D35902
Most USES use a colon for build/run(/test) suffixes. Change kde.mk,
qt.mk and pyqt.mk to do the same, and update all ports using that.
Document in CHANGES.
PR: 266034
Exp-run by: antoine
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D36349
Maintainers should set WWW to a website with useful information for
users of the package.
The first MASTER_SITE of the port had been considered to be a useful
default value for the WWW variable.
It has been found not to be a generally useful URL though, therefore
stop providing a default value for WWW.
Approved by: portmgr (tcberner)
The format of the manifest file does not allow commas in values.
Since URLs may include commas, they need to be protected against
interpretation of these commas as field separators.
This update unbreaks the package generation for ports that have
a comma in the URL.
Approved by: portmgr (implcit)
Create a meta-port for CMake to make it easier for the end user and
better handling of build dependencies.
This pushes devel/cmake into /devel/cmake-core and splits manpages and
its dependencies to /devel/cmake-man
Approved by: kde (tcberner)
Differential Revision: https://reviews.freebsd.org/D34957
The contents of COMMENT will be adequately protected against
interpretation by the shell due to the :Q modifier.
This access to the COMMENT variable should therefore not be enclosed
in double quotes.
Approved by: portmgr (implicit)
Thursday, 8 September 2022
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
Today they all get new bugfix source releases with updated translations,
including:
* kmail: Searching for messages does work again (Commit, fixes bugs
#458202 and #458245).
* kate: Fix a crash when there are no search results (Commit)
* krdc: Access dates are displayed properly now (Commit, fixes bug
#458587)
Announcement: https://kde.org/announcements/gear/22.08.1/
Expect the project website or other relevant URL of a port to be
specified in a WWW macro in its Makefile.
This information used to be available in WWW: lines at the end of
each port's pkg-descr file. By moving it into the Makefile, this
value is easier to access, verify, and maintain.
A WWW: line is added to the "desc" element of package manifests
based on the WWW macro value by the create-manifest.sh script.
This restores the previous contents of this line in the manifest
(as e.g. expected by the Freshports website).
The ports-mgmt/portlint port has been updated in commit 9800743f0
(version 2.19.13) to support the planned introduction of WWW in
port Makefiles.
Approved by: portmgr (tcberner)
Differential Revision: https://reviews.freebsd.org/D36434
Changelog:
* Various improvements and bug fixes:
- vala: Don't unconditionally expect ObjectType of Class [#1341]
- vala: Make try-statement parsing more resilient [#1304]
- vala: Avoid problems with '\' in #line directives on Windows [#1353]
- gidlparser: Set source reference of parameters
* Bindings:
- atspi-2: Fix a few binding errors
- glib-2.0: Use g_abort for GLib.Process.abort() beginning with 2.50 [#1350]
- gtk+-3.0: Correctly unhide BindingSet.by_class to avoid Version attribute
- Mk/bsd.port.mk: mark 13.0 as unsupported
- Tools/scripts/portsearch: Drop support for FreeBSD <= 4
- archivers/zstd: revert "Fix build on FreeBSD 13.0"
- deskutils/xdg-desktop-portal: remove check for 13.0
- devel/libpeas: remove outdated comment
- editors/imhex: remove compatibility for 13.0
- editors/libreoffice: remove compatibility for 13.0
- editors/openoffice-4: remove compatibility for 13.0
- editors/openoffice-devel: remove compatibility for 13.0
- emulators/linux_base-c7: remove compatiblity for 13.0
- graphics/drm-kmod: remove detection for 13.0
- graphics/gpu-firmware-amd-kmod: do not check 13.0 anymore
- graphics/linux-c7-libdrm: remove support for 13.0
- math/igraph: remove support for 13.0
- net/asterisk16: drop support for ancient FreeBSD versions
- net/asterisk18: drop support for ancient FreeBSD versions
- security/openssl*: drop now obsolete patches
- sysutils/bhyve+: drop support for FreeBSD 13.0
- sysutils/ebsnvme-id: drop support for FreeBSD 13.0
- sysutils/openzfs: remove detection of FreeBSD 13.0
- sysutils/openzfs-kmod: drop detection of FreeBSD 13.0
- www/firefox: generalize pkg-message a bit regarding hgame(4)
- x11/xorg-cf-files: remove support for FreeBSD < 6 (yes, pre-2008)
While here, regenerate patches for:
- x11/xorg-cf-files
- net/asterisk16
- net/asterisk18
While here, remove a stale $Id$ from Tools/scripts/portsearch
Differential Revision: https://reviews.freebsd.org/D36233
Reviewed by: office (fluffy), x11 (manu), arrowd, brnrd, cperciva, freqlabs, imp, jbeich, madpilot, nobutaka