aboutsummaryrefslogtreecommitdiff
path: root/Mk
diff options
context:
space:
mode:
Diffstat (limited to 'Mk')
-rw-r--r--Mk/Uses/azurepy.mk2
-rw-r--r--Mk/Uses/cargo.mk48
-rw-r--r--Mk/Uses/cmake.mk10
-rw-r--r--Mk/Uses/display.mk29
-rw-r--r--Mk/Uses/gstreamer.mk9
-rw-r--r--Mk/Uses/java.mk7
-rw-r--r--Mk/Uses/kde.mk14
-rw-r--r--Mk/Uses/luajit.mk2
-rw-r--r--Mk/Uses/meson.mk38
-rw-r--r--Mk/Uses/mlt.mk2
-rw-r--r--Mk/Uses/mysql.mk1
-rw-r--r--Mk/Uses/nodejs.mk12
-rw-r--r--Mk/Uses/octave.mk2
-rw-r--r--Mk/Uses/php.mk2
-rw-r--r--Mk/Uses/pyqt.mk4
-rw-r--r--Mk/Uses/python.mk38
-rw-r--r--Mk/Uses/qt-dist.mk8
-rw-r--r--Mk/Uses/qt.mk6
-rw-r--r--Mk/Uses/ruby.mk4
-rw-r--r--Mk/Uses/samba.mk12
-rw-r--r--Mk/Uses/ssl.mk4
-rw-r--r--Mk/Uses/sudo.mk16
-rw-r--r--Mk/Uses/vala.mk12
-rw-r--r--Mk/bsd.ccache.mk11
-rw-r--r--Mk/bsd.default-versions.mk21
-rw-r--r--Mk/bsd.gcc.mk2
-rw-r--r--Mk/bsd.gecko.mk2
-rw-r--r--Mk/bsd.options.desc.mk2
-rw-r--r--Mk/bsd.port.mk19
29 files changed, 224 insertions, 115 deletions
diff --git a/Mk/Uses/azurepy.mk b/Mk/Uses/azurepy.mk
index bb3955549e9d..1434bfb84160 100644
--- a/Mk/Uses/azurepy.mk
+++ b/Mk/Uses/azurepy.mk
@@ -1,7 +1,7 @@
# Shared namespace for py-azure-* ports
# Feature: azurepy
# Usage: USES= azurepy
-# MAINTAINER: dbaio@FreeBSD.org
+# MAINTAINER: ports@FreeBSD.org
.if !defined(_INCLUDE_USES_AZUREPY_MK)
_INCLUDE_USES_AZUREPY_MK= yes
diff --git a/Mk/Uses/cargo.mk b/Mk/Uses/cargo.mk
index 92a0f4b45c88..a92ba1e13c3b 100644
--- a/Mk/Uses/cargo.mk
+++ b/Mk/Uses/cargo.mk
@@ -25,12 +25,24 @@ CARGO_CRATES?=
# features by passing it to cargo build/install/test.
CARGO_FEATURES?=
+# The subdirectory in the source tree where the cargo project
+# is located. By default the whole project is in Rust, but
+# the Rust part can be at any location.
+# Multiple Rust subprojects are not yet supported.
+CARGO_SRC_SUBDIR?=
+
+# Is the Rust project top-level?
+CARGO_RUST_TOPLEVEL= ${CARGO_SRC_SUBDIR:C/^.+$/no/:C/^$/yes/}
+
+# WRKSRC of the Rust project.
+CARGO_WRKSRC= ${WRKSRC}/${CARGO_SRC_SUBDIR}
+
# Name of the local directory for vendoring crates.
-CARGO_VENDOR_DIR?= ${WRKSRC}/cargo-crates
+CARGO_VENDOR_DIR?= ${CARGO_WRKSRC}/cargo-crates
# Default path for cargo manifest.
-CARGO_CARGOTOML?= ${WRKSRC}/Cargo.toml
-CARGO_CARGOLOCK?= ${WRKSRC}/Cargo.lock
+CARGO_CARGOTOML?= ${CARGO_WRKSRC}/Cargo.toml
+CARGO_CARGOLOCK?= ${CARGO_WRKSRC}/Cargo.lock
# Save crates inside ${DISTDIR}/rust/crates by default.
CARGO_DIST_SUBDIR?= rust/crates
@@ -69,7 +81,7 @@ WRKSRC_crate_${_crate}= ${CARGO_VENDOR_DIR}/${_crate}
_CARGO_AWK= ${AWK} -vCP="${CP}" -vFIND="${FIND}" -vGREP="${GREP}" \
-vCARGO_VENDOR_DIR="${CARGO_VENDOR_DIR}" \
-vGIT_SOURCES="${_CARGO_GIT_SOURCES}" \
- -vWRKDIR="${WRKDIR}" -vWRKSRC="${WRKSRC}" \
+ -vWRKDIR="${WRKDIR}" -vWRKSRC="${CARGO_WRKSRC}" \
-f${SCRIPTSDIR}/split-url.awk \
-f${SCRIPTSDIR}/cargo-crates-git-common.awk -f
@@ -97,7 +109,7 @@ WRKSRC_crate_${_crate}= ${WRKDIR}/${_wrksrc}
CARGO_BUILDDEP?= yes
. if ${CARGO_BUILDDEP:tl} == "yes"
-BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.89.0:lang/${RUST_DEFAULT}
+BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.91.0:lang/${RUST_DEFAULT}
. elif ${CARGO_BUILDDEP:tl} == "any-version"
BUILD_DEPENDS+= ${RUST_DEFAULT}>=0:lang/${RUST_DEFAULT}
. endif
@@ -152,7 +164,7 @@ RUSTFLAGS+= ${CFLAGS:M-mcpu=*:S/-mcpu=/-C target-cpu=/}
# Helper to shorten cargo calls.
_CARGO_RUN= ${SETENVI} ${WRK_ENV} ${MAKE_ENV} ${CARGO_ENV} ${CARGO}
-CARGO_CARGO_RUN= cd ${WRKSRC}; ${SETENVI} ${WRK_ENV} ${MAKE_ENV} ${CARGO_ENV} \
+CARGO_CARGO_RUN= cd ${CARGO_WRKSRC} && ${SETENVI} ${WRK_ENV} ${MAKE_ENV} ${CARGO_ENV} \
CARGO_FREEBSD_PORTS_SKIP_GIT_UPDATE=1 ${CARGO}
# User arguments for cargo targets.
@@ -163,10 +175,10 @@ CARGO_TEST_ARGS?=
CARGO_UPDATE_ARGS?=
# Use module targets ?
-CARGO_BUILD?= yes
+CARGO_BUILD?= ${CARGO_RUST_TOPLEVEL}
CARGO_CONFIGURE?= yes
-CARGO_INSTALL?= yes
-CARGO_TEST?= yes
+CARGO_INSTALL?= ${CARGO_RUST_TOPLEVEL}
+CARGO_TEST?= ${CARGO_RUST_TOPLEVEL}
# rustc stashes intermediary files in TMPDIR (default /tmp) which
# might cause issues for users that for some reason space limit
@@ -292,6 +304,8 @@ cargo-extract:
. if ${CARGO_CONFIGURE:tl} == "yes"
_USES_configure+= 250:cargo-configure
+CARGO_DOT_DIR= ${WRKSRC}/${CARGO_SRC_SUBDIR}/../.cargo
+
# configure hook. Place a config file for overriding crates-io index
# by local source directory.
cargo-configure:
@@ -302,17 +316,17 @@ cargo-configure:
@${ECHO_MSG} ${_CARGO_MSG}
. endif
@${ECHO_MSG} "===> Cargo config:"
- @${MKDIR} ${WRKDIR}/.cargo
- @: > ${WRKDIR}/.cargo/config.toml
- @${ECHO_CMD} "[source.cargo]" >> ${WRKDIR}/.cargo/config.toml
- @${ECHO_CMD} "directory = '${CARGO_VENDOR_DIR}'" >> ${WRKDIR}/.cargo/config.toml
- @${ECHO_CMD} "[source.crates-io]" >> ${WRKDIR}/.cargo/config.toml
- @${ECHO_CMD} "replace-with = 'cargo'" >> ${WRKDIR}/.cargo/config.toml
+ @${MKDIR} ${CARGO_DOT_DIR}
+ @: > ${CARGO_DOT_DIR}/config.toml
+ @${ECHO_CMD} "[source.cargo]" >> ${CARGO_DOT_DIR}/config.toml
+ @${ECHO_CMD} "directory = '${CARGO_VENDOR_DIR}'" >> ${CARGO_DOT_DIR}/config.toml
+ @${ECHO_CMD} "[source.crates-io]" >> ${CARGO_DOT_DIR}/config.toml
+ @${ECHO_CMD} "replace-with = 'cargo'" >> ${CARGO_DOT_DIR}/config.toml
. if !empty(_CARGO_GIT_SOURCES)
@${_CARGO_AWK} ${SCRIPTSDIR}/cargo-crates-git-configure.awk \
- /dev/null >> ${WRKDIR}/.cargo/config.toml
+ /dev/null >> ${CARGO_DOT_DIR}/config.toml
. endif
- @${CAT} ${WRKDIR}/.cargo/config.toml
+ @${CAT} ${CARGO_DOT_DIR}/config.toml
@if ! ${GREP} -qF '[profile.release]' ${CARGO_CARGOTOML}; then \
${ECHO_CMD} "" >> ${CARGO_CARGOTOML}; \
${ECHO_CMD} "[profile.release]" >> ${CARGO_CARGOTOML}; \
diff --git a/Mk/Uses/cmake.mk b/Mk/Uses/cmake.mk
index 6d8978c49672..8ad9460963db 100644
--- a/Mk/Uses/cmake.mk
+++ b/Mk/Uses/cmake.mk
@@ -68,7 +68,7 @@ _valid_ARGS= indirect insource noninja run testing _internal
# Reminder: devel/cmake-core, devel/cmake-doc, devel/cmake-gui, and devel/cmake-man
# are all affected by changing _CMAKE_VERSION. Please check each of these ports.
-_CMAKE_VERSION= 3.31.7
+_CMAKE_VERSION= 3.31.9
CMAKE_BIN= ${LOCALBASE}/bin/cmake
# Sanity check
@@ -185,9 +185,9 @@ do-configure:
. endif
. if !target(do-test) && ${cmake_ARGS:Mtesting}
-CMAKE_TESTING_ON?= BUILD_TESTING
-CMAKE_TESTING_PARALLEL_LEVEL?= ${MAKE_JOBS_NUMBER}
-CMAKE_TESTING_TARGET?= test
+CMAKE_TESTING_ON?= BUILD_TESTING
+CMAKE_TESTING_JOBS?= ${MAKE_JOBS_NUMBER}
+CMAKE_TESTING_TARGET?= test
# Use SETENV instead of SETENVI if CMAKE_TESTING_SETENV is defined
. if defined(CMAKE_TESTING_SETENV)
@@ -207,7 +207,7 @@ do-test:
@cd ${BUILD_WRKSRC} && \
${SETENVI} ${WRK_ENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} ${CMAKE_TESTING_ARGS} ${CMAKE_SOURCE_PATH} && \
${SETENVI} ${WRK_ENV} ${MAKE_ENV} ${MAKE_CMD} ${_MAKE_JOBS} ${MAKE_ARGS} ${ALL_TARGET} && \
- ${_CMAKE_TESTING_SETENV} ${WRK_ENV} ${TEST_ENV} CTEST_PARALLEL_LEVEL=${CMAKE_TESTING_PARALLEL_LEVEL} ${MAKE_CMD} ${MAKE_ARGS} ${CMAKE_TESTING_TARGET}
+ ${_CMAKE_TESTING_SETENV} ${WRK_ENV} ${TEST_ENV} CTEST_PARALLEL_LEVEL=${CMAKE_TESTING_JOBS} ${MAKE_CMD} ${MAKE_ARGS} ${CMAKE_TESTING_TARGET}
. endif
. endif
diff --git a/Mk/Uses/display.mk b/Mk/Uses/display.mk
index 886d65b01ad7..b5471b95a8ce 100644
--- a/Mk/Uses/display.mk
+++ b/Mk/Uses/display.mk
@@ -1,6 +1,6 @@
# Feature: display
# Usage: USES=display or USES=display:ARGS
-# Valid ARGS: install (default, implicit), any target
+# Valid ARGS: install (default, implicit), configure, build
#
# Except the target where the DISPLAY is needed
#
@@ -14,18 +14,35 @@ display_ARGS= install
. endif
. if !defined(DISPLAY)
-BUILD_DEPENDS+= Xvfb:x11-servers/xorg-server@xvfb \
+
+. if ${display_ARGS:Mconfigure}
+DISPLAY_DEPENDS= BUILD_DEPENDS
+CONFIGURE_ENV+= DISPLAY=":${XVFBPORT}"
+. elif ${display_ARGS:Mbuild}
+DISPLAY_DEPENDS= BUILD_DEPENDS
+MAKE_ENV+= DISPLAY=":${XVFBPORT}"
+. elif ${display_ARGS:Mtest}
+DISPLAY_DEPENDS= TEST_DEPENDS
+TEST_ENV+= DISPLAY=":${XVFBPORT}"
+.else
+IGNORE= USES=display: invalid arguments: ${display_ARGS}
+.endif
+
+${DISPLAY_DEPENDS}+= \
+ Xvfb:x11-servers/xorg-server@xvfb \
${LOCALBASE}/share/fonts/misc/8x13O.pcf.gz:x11-fonts/xorg-fonts-miscbitmaps \
${LOCALBASE}/share/fonts/misc/fonts.alias:x11-fonts/font-alias \
${LOCALBASE}/share/X11/xkb/rules/base:x11/xkeyboard-config \
xkbcomp:x11/xkbcomp
-XVFBPORT!= port=0; while test -S /tmp/.X11-unix/X$${port} ; do port=$$(( port + 1 )) ; done ; ${ECHO_CMD} $$port
-XVFBPIDFILE= /tmp/.xvfb-${XVFBPORT}.pid
-MAKE_ENV+= DISPLAY=":${XVFBPORT}"
+XVFBPORT?= 0
+XVFBPIDFILE= /tmp/.xvfb-${XVFBPORT}-display-mk.pid
-_USES_${display_ARGS}+= 290:start-display 860:stop-display
+. for t in ${display_ARGS}
+_USES_${t}+= 290:start-display 860:stop-display
+. endfor
start-display:
+ pkill -15 -F ${XVFBPIDFILE} || ${TRUE}
daemon -p ${XVFBPIDFILE} Xvfb :${XVFBPORT}
stop-display:
diff --git a/Mk/Uses/gstreamer.mk b/Mk/Uses/gstreamer.mk
index edc677b9f663..961ed62e0d21 100644
--- a/Mk/Uses/gstreamer.mk
+++ b/Mk/Uses/gstreamer.mk
@@ -10,7 +10,8 @@
# version: 1 -- default (this may be omitted since there is
# currently only one supported version)
# _internal: Only intended for use by multimedia/gstreamer1 to
-# define specific variables so as not depend on itself
+# define specific variables like _GST1_VERSION so that
+# it does not depend on itself
#
# MAINTAINER: multimedia@FreeBSD.org
@@ -41,7 +42,7 @@ _GST_VER= ${_GST_VER_DEFAULT}
# When modifying _GST1_VERSION, run `make -C ${PORTSDIR}/multimedia/gstreamer1 makesum-all`
# to update the distinfo files for the entire suite.
-_GST1_VERSION= 1.26.5
+_GST1_VERSION= 1.26.8
_GST1_LIB_VER= 1.0
_GST1_SOVERSION= 0.${_GST1_VERSION:R:E}${${_GST1_VERSION:E} > 9:?:0}${_GST1_VERSION:E}.0
@@ -70,7 +71,7 @@ _GST1_PLUGINS_www= neon srt
_GST1_PLUGINS_x11= x ximagesrc
_GST1_PLUGINS_x11-toolkits= gtk pango qt5 qt6
-# == Unversioned information
+#== Unversioned information
# Gather all available plugins for the chosen version
_GST_PLUGINS_BASE= bad core good ugly libgstreamer plugins
@@ -348,7 +349,7 @@ gst-rtsp-server_IMPL= #
gst-rust_PORT= multimedia/gstreamer${_GST_VER}-plugins-rust
gst-rust_IMPL= #
-gst-rust_GST1_VERSION= 0.14.0
+gst-rust_GST1_VERSION= 0.14.3
gst-rust_VERSION= ${gst-rust_GST${_GST_VER}_VERSION}
gst-smoothstreaming_PORT= multimedia/gstreamer${_GST_VER}-plugins-smoothstreaming
diff --git a/Mk/Uses/java.mk b/Mk/Uses/java.mk
index 8588884e51c5..ff5d35556f0c 100644
--- a/Mk/Uses/java.mk
+++ b/Mk/Uses/java.mk
@@ -30,7 +30,7 @@
# JAVA_VERSION List of space-separated suitable java versions for the
# port. An optional "+" allows you to specify a range of
# versions. (allowed values: 8[+] 11[+] 17[+] 18[+] 19[+]
-# 20[+] 21[+] 22[+] 23[+] 24[+])
+# 20[+] 21[+] 22[+] 23[+] 24[+] 25[+])
#
# JAVA_OS List of space-separated suitable JDK port operating systems
# for the port. (allowed values: native linux)
@@ -228,6 +228,8 @@ _JAVA_PORT_NATIVE_OPENJDK_JDK_23_INFO= PORT=java/openjdk23 HOME=${LOCALBASE}/
VERSION=23 OS=native VENDOR=openjdk
_JAVA_PORT_NATIVE_OPENJDK_JDK_24_INFO= PORT=java/openjdk24 HOME=${LOCALBASE}/openjdk24 \
VERSION=24 OS=native VENDOR=openjdk
+_JAVA_PORT_NATIVE_OPENJDK_JDK_25_INFO= PORT=java/openjdk25 HOME=${LOCALBASE}/openjdk25 \
+ VERSION=25 OS=native VENDOR=openjdk
_JAVA_PORT_LINUX_ORACLE_JDK_8_INFO= PORT=java/linux-oracle-jdk18 HOME=${LOCALBASE}/linux-oracle-jdk1.8.0 \
VERSION=8 OS=linux VENDOR=oracle
@@ -251,6 +253,7 @@ __JAVA_PORTS_ALL= \
JAVA_PORT_NATIVE_OPENJDK_JDK_22 \
JAVA_PORT_NATIVE_OPENJDK_JDK_23 \
JAVA_PORT_NATIVE_OPENJDK_JDK_24 \
+ JAVA_PORT_NATIVE_OPENJDK_JDK_25 \
JAVA_PORT_LINUX_ORACLE_JDK_8
_JAVA_PORTS_ALL= ${JAVA_PREFERRED_PORTS} \
JAVA_PORT_NATIVE_OPENJDK_JDK_${JAVA_DEFAULT} \
@@ -314,7 +317,7 @@ check-makevars::
. undef _JAVA_PORTS_INSTALLED
. undef _JAVA_PORTS_POSSIBLE
. if defined(JAVA_VERSION)
-_JAVA_VERSION= ${JAVA_VERSION:S/^8+/8 11+/:S/^11+/11 17+/:S/^17+/17 18+/:S/^18+/18 19+/:S/^19+/19 20+/:S/^20+/20 21+/:S/^21+/21 22+/:S/^22+/22 23+/:S/^23+/23 24+/:S/^24+/24/}
+_JAVA_VERSION= ${JAVA_VERSION:S/^8+/8 11+/:S/^11+/11 17+/:S/^17+/17 18+/:S/^18+/18 19+/:S/^19+/19 20+/:S/^20+/20 21+/:S/^21+/21 22+/:S/^22+/22 23+/:S/^23+/23 24+/:S/^24+/24 25+/:S/^25+/25/}
. else
_JAVA_VERSION= ${__JAVA_VERSION_LIST}
. endif
diff --git a/Mk/Uses/kde.mk b/Mk/Uses/kde.mk
index f178591a11d1..b50c2a9afa70 100644
--- a/Mk/Uses/kde.mk
+++ b/Mk/Uses/kde.mk
@@ -91,7 +91,7 @@ KDE_PLASMA5_VERSION?= 5.27.12
KDE_PLASMA5_BRANCH?= stable
# Current KDE Plasma desktop.
-KDE_PLASMA6_VERSION?= 6.4.4
+KDE_PLASMA6_VERSION?= 6.5.2
KDE_PLASMA6_BRANCH?= stable
# Legacy KDE frameworks (Qt5 based).
@@ -99,13 +99,13 @@ KDE_FRAMEWORKS5_VERSION?= 5.116.0
KDE_FRAMEWORKS5_BRANCH?= stable
# Current KDE Frameworks (Qt6 based).
-KDE_FRAMEWORKS6_VERSION?= 6.17.0
+KDE_FRAMEWORKS6_VERSION?= 6.19.0
KDE_FRAMEWORKS6_BRANCH?= stable
# Current KDE applications. Update _${PORTNAME}_PROJECT_VERSION for the following ports:
# devel/kdevelop, games/libkdegames, games/libkmahjongg, graphics/kgraphviewer
-KDE_APPLICATIONS6_VERSION?= 25.08.0
-KDE_APPLICATIONS6_SHLIB_VER?= 6.5.0
+KDE_APPLICATIONS6_VERSION?= 25.08.3
+KDE_APPLICATIONS6_SHLIB_VER?= 6.5.3
# G as in KDE Gear, and as in "don't make the variable name longer than required".
KDE_APPLICATIONS6_SHLIB_G_VER?= ${KDE_APPLICATIONS6_VERSION}
KDE_APPLICATIONS6_BRANCH?= stable
@@ -317,6 +317,7 @@ _USE_PLASMA6_ALL= activities activities-stats activitymanagerd \
aurorae breeze breeze-gtk decoration discover \
globalacceld infocenter kde-cli-tools \
kde-gtk-config kdeplasma-addons kgamma kmenuedit \
+ knighttime \
kpipewire kscreen kscreenlocker ksshaskpass \
ksystemstats kwallet-pam kwin kwin-x11 kwrited \
layer-shell-qt libkscreen libksysguard libplasma \
@@ -704,6 +705,9 @@ kde-kgamma_PATH= ${QT_PLUGINDIR}/plasma/kcms/systemsettings_qwidgets/kcm_kgamma
kde-kmenuedit_PORT= sysutils/plasma${_KDE_VERSION}-kmenuedit
kde-kmenuedit_PATH= ${KDE_PREFIX}/bin/kmenuedit
+kde-knighttime_PORT= sysutils/plasma${_KDE_VERSION}-knighttime
+kde-knighttime_LIB= libKNightTime.so
+
kde-kscreen_PORT= x11/plasma${_KDE_VERSION}-kscreen
kde-kscreen_PATH= ${KDE_PREFIX}/bin/kscreen-console
@@ -737,7 +741,7 @@ kde-libksysguard_LIB6= libKSysGuardSystemStats.so
kde-libksysguard_LIB= ${kde-libksysguard_LIB${_KDE_VERSION}}
kde-milou_PORT= deskutils/plasma${_KDE_VERSION}-milou
-kde-milou_PATH= ${QT_QMLDIR}/org/kde/milou/libmilouqmlplugin.so
+kde-milou_PATH= ${QT_QMLDIR}/org/kde/milou/libmilou.so
kde-ocean-sound-theme_PORT= audio/plasma${_KDE_VERSION}-ocean-sound-theme
kde-ocean-sound-theme_PATH= ${KDE_PREFIX}/share/sounds/ocean/index.theme
diff --git a/Mk/Uses/luajit.mk b/Mk/Uses/luajit.mk
index 7e62c192fd77..4f53fd7dc87b 100644
--- a/Mk/Uses/luajit.mk
+++ b/Mk/Uses/luajit.mk
@@ -20,7 +20,7 @@ LUAJIT_VER= ${LUAJIT_DEFAULT}
# When adding a version, please keep the comment in
# Mk/bsd.default-versions.mk in sync
-VALID_LUAJIT_VER= luajit luajit-devel luajit-openresty
+VALID_LUAJIT_VER= luajit luajit-openresty
.if empty(VALID_LUAJIT_VER:M${LUAJIT_DEFAULT})
IGNORE= Invalid luajit default version ${LUAJIT_DEFAULT}: valid versions are ${VALID_LUAJIT_VER}
diff --git a/Mk/Uses/meson.mk b/Mk/Uses/meson.mk
index ed09a9cee806..f1b41cbdbceb 100644
--- a/Mk/Uses/meson.mk
+++ b/Mk/Uses/meson.mk
@@ -2,6 +2,10 @@
#
# Feature: meson
# Usage: USES=meson
+# Valid ARGS: muon
+#
+# muon use muon instead of meson, intended for bootstrapping
+# dependencies that python uses
#
# The following files are bundled in source tar files.
# meson.build - Instructions for meson like autoconf configure,
@@ -19,19 +23,32 @@
.if !defined(_INCLUDE_USES_MESON_MK)
_INCLUDE_USES_MESON_MK= yes
+_valid_ARGS= muon
+
# Sanity check
-. if !empty(meson_ARGS)
-IGNORE= Incorrect 'USES+= meson:${meson_ARGS}'. meson takes no arguments
+. for _arg in ${meson_ARGS}
+. if empty(_valid_ARGS:M${_arg})
+IGNORE= 'USES+= meson:${meson_ARGS}' usage: argument [${_arg}] is not recognized
+. endif
+. endfor
+
+. if !empty(meson_ARGS:Mmuon)
+BUILD_DEPENDS+= muon:devel/muon
+. else
+BUILD_DEPENDS+= meson:devel/meson
. endif
-BUILD_DEPENDS+= meson:devel/meson
-
# meson uses ninja
.include "${USESDIR}/ninja.mk"
# meson might have issues with non-unicode locales
USE_LOCALE?= en_US.UTF-8
+# Enable muon's meson compatibility mode
+. if !empty(meson_ARGS:Mmuon)
+CONFIGURE_ARGS+= meson
+. endif
+
CONFIGURE_ARGS+= --prefix ${PREFIX} \
--localstatedir /var \
--infodir ${INFO_PATH}
@@ -62,8 +79,21 @@ CONFIGURE_ARGS+= --buildtype release \
--strip
. endif
+. for _bool in true false enabled disabled
+. if defined(MESON_${_bool:tu})
+. for _meson_arg in ${MESON_${_bool:tu}}
+MESON_ARGS+= -D${_meson_arg}=${_bool}
+. endfor
+. endif
+. endfor
+
HAS_CONFIGURE= yes
+. if !empty(meson_ARGS:Mmuon)
+CONFIGURE_CMD= muon
+. else
CONFIGURE_CMD= meson
+. endif
+
# Pull in manual set settings and from options
CONFIGURE_ARGS+= ${MESON_ARGS}
diff --git a/Mk/Uses/mlt.mk b/Mk/Uses/mlt.mk
index 2cf044dcad0a..4647b9f91a6e 100644
--- a/Mk/Uses/mlt.mk
+++ b/Mk/Uses/mlt.mk
@@ -37,7 +37,7 @@ _MLT_NODEPEND= yes
. endif
# Library dependencies
-_MLT7_VERSION= 7.32.0
+_MLT7_VERSION= 7.34.1
_MLT7_PORTNAME= mlt7
_MLT7_LIB= libmlt-7.so
_MLT7_MELT= ${LOCALBASE}/bin/melt-7
diff --git a/Mk/Uses/mysql.mk b/Mk/Uses/mysql.mk
index 8062734165a7..1931a0635e16 100644
--- a/Mk/Uses/mysql.mk
+++ b/Mk/Uses/mysql.mk
@@ -62,6 +62,7 @@ DEFAULT_MYSQL_VER?= ${MYSQL_DEFAULT:S/.//}
MYSQL80_LIBVER= 21
MYSQL84_LIBVER= 24
MYSQL91_LIBVER= 24
+MYSQL94_LIBVER= 24
. for v in 106 1011 114 118
MYSQL${v}m_LIBVER= 3
diff --git a/Mk/Uses/nodejs.mk b/Mk/Uses/nodejs.mk
index e8987827fe2e..4f0d904ab722 100644
--- a/Mk/Uses/nodejs.mk
+++ b/Mk/Uses/nodejs.mk
@@ -7,13 +7,13 @@
# - build use node as build-time dependency
# - run use node as runtime dependency
# - env set the environment (NODEJS_VERSION and NODEJS_SUFFIX)
-# - version available version: lts, current, 18, 20, 22, 24
+# - version available version: lts, current, 20, 22, 24, 25
#
# Note:
# - The supported versions follow upstream release schedule
# https://github.com/nodejs/Release/blob/main/README.md#release-schedule
-# - lts is 22 now
-# - current is 24 now
+# - lts is 24 now
+# - current is 25 now
# - USES=nodejs means USES=nodejs:build,run
# - If you define a version, you must provide run and/or build
#
@@ -22,13 +22,13 @@
.if !defined(_INCLUDE_USES_NODEJS_MK)
_INCLUDE_USES_NODEJS_MK= yes
-_VALID_NODEJS_VERSIONS= 18 20 22 24 current lts
+_VALID_NODEJS_VERSIONS= 20 22 24 25 current lts
. if ! ${_VALID_NODEJS_VERSIONS:M${NODEJS_DEFAULT}}
IGNORE= Invalid default nodejs version ${NODEJS_DEFAULT}; valid versions are ${_VALID_NODEJS_VERSIONS}
. endif
-. if !empty(nodejs_ARGS:Nbuild:Nenv:Nrun:Nlts:Ncurrent:N18:N20:N22:N24)
+. if !empty(nodejs_ARGS:Nbuild:Nenv:Nrun:Nlts:Ncurrent:N20:N22:N24:N25)
IGNORE= USES=nodejs has invalid arguments ${nodejs_ARGS}
. endif
@@ -47,7 +47,7 @@ _NODEJS_VER= ${version}
_NODEJS_VER= ${NODEJS_DEFAULT}
. endif
-NODEJS_VERSION= ${_NODEJS_VER:S|current|24|:S|lts|22|}
+NODEJS_VERSION= ${_NODEJS_VER:S|current|25|:S|lts|24|}
NODEJS_SUFFIX= -node${NODEJS_VERSION}
. if ${nodejs_ARGS:M*build*}
diff --git a/Mk/Uses/octave.mk b/Mk/Uses/octave.mk
index 8aca21d0a789..663ef7b87317 100644
--- a/Mk/Uses/octave.mk
+++ b/Mk/Uses/octave.mk
@@ -22,7 +22,7 @@ IGNORE= Incorrect 'USES+= octave:${octave_ARGS}' usage: argument [${arg}] is not
. endif
. endfor
-OCTAVE_VERSION= 10.2.0
+OCTAVE_VERSION= 10.3.0
. if empty(octave_ARGS:Menv)
BUILD_DEPENDS+= octave:math/octave
diff --git a/Mk/Uses/php.mk b/Mk/Uses/php.mk
index c1f8a0061abd..3f2c1f3da1f2 100644
--- a/Mk/Uses/php.mk
+++ b/Mk/Uses/php.mk
@@ -180,7 +180,7 @@ PHP_VER= ${FLAVOR:S/^php//}
# When adding a version, please keep the comment in
# Mk/bsd.default-versions.mk in sync.
. if ${PHP_VER} == 85
-PHP_EXT_DIR= 20240925
+PHP_EXT_DIR= 20250925
PHP_EXT_INC= hash json opcache openssl pcre random spl
. elif ${PHP_VER} == 84
PHP_EXT_DIR= 20240924
diff --git a/Mk/Uses/pyqt.mk b/Mk/Uses/pyqt.mk
index af659b76d8cc..54fff0299196 100644
--- a/Mk/Uses/pyqt.mk
+++ b/Mk/Uses/pyqt.mk
@@ -108,9 +108,9 @@ MASTER_SITES_PYQTWEBENGINE= ${MASTER_SITES_PYQT${_PYQT_VERSION}WEBENGINE}
# below, should have a suitable epoch appended to the version.
# Qt version-agnostic components
-PYQTBUILDER_VERSION= 1.18.2
+PYQTBUILDER_VERSION= 1.19.0
QSCI2_VERSION= 2.14.1
-SIP_VERSION= 6.12.0 # ,1
+SIP_VERSION= 6.13.1 # ,1
# Qt 5 components
PYQT5SIP_VERSION= 12.17.0
diff --git a/Mk/Uses/python.mk b/Mk/Uses/python.mk
index c96b633f1254..60ef0cd5b13a 100644
--- a/Mk/Uses/python.mk
+++ b/Mk/Uses/python.mk
@@ -17,19 +17,19 @@
# Examples:
#
# USES=python:2.7 # Supports Python 2.7 Only
-# USES=python:3.9+ # Supports Python 3.9 or later
-# USES=python:3.9-3.10 # Supports Python 3.9 to 3.10
-# USES=python:-3.9 # Supports Python up to 3.9
-# USES=python # Supports 3.9+
+# USES=python:3.11+ # Supports Python 3.11 or later
+# USES=python:3.11-3.12 # Supports Python 3.11 to 3.12
+# USES=python:-3.11 # Supports Python up to 3.11
+# USES=python # Supports 3.10+
#
# NOTE: <version-spec> should be as specific as possible, matching the versions
# upstream declares support for, without being incorrect. In particular,
-# USES=python *without* a <version-spec> means 3.9+,
+# USES=python *without* a <version-spec> means 3.11+,
# including unreleased versions, which is probably incorrect.
#
# Not specifying a <version-spec> should only be used when a more specific
# <version-spec> cannot be specified due to syntax limitations, for
-# example: 2.7,3.9-3.10, but even in this case, X.Y+ (2.7+), or -X.Y (-3.9)
+# example: 2.7,3.11-3.12, but even in this case, X.Y+ (2.7+), or -X.Y (-3.11)
# is preferred and likely more correct.
#
# patch Python is needed at patch time. Adds dependency to PATCH_DEPENDS.
@@ -50,7 +50,7 @@
# Exported variables:
#
# PYTHON_VERSION - The chosen Python interpreter including the version,
-# e.g. python2.7, python3.9, etc.
+# e.g. python2.7, python3.11, etc.
#
# Variables, which can be set by the port:
#
@@ -227,10 +227,10 @@
# PYTHON_PORTSDIR - The port directory of the chosen Python interpreter
#
# PYTHON_REL - The release number of the chosen Python interpreter
-# without dots, e.g. 20706, 30901, ...
+# without dots, e.g. 20706, 31114, ...
#
# PYTHON_SUFFIX - The major-minor release number of the chosen Python
-# interpreter without dots, e.g. 27, 38, ...
+# interpreter without dots, e.g. 27, 310, ...
# Used for prefixes and suffixes.
#
# PYTHON_BASESUFFIX - PYTHON_SUFFIX without the threaded ABI flag.
@@ -252,7 +252,7 @@
# interpreter, e.g. 2, 3, ...
#
# PYTHON_VER - The major-minor release version of the chosen Python
-# interpreter, e.g. 2.7, 3.9, ...
+# interpreter, e.g. 2.7, 3.12, ...
#
# PYTHON_BASEVER - PYTHON_VER without the threaded ABI flag.
#
@@ -341,7 +341,7 @@ ZEROREGS_UNSAFE= yes
# What Python version and what Python interpreters are currently supported?
# When adding a version, please keep the comment in
# Mk/bsd.default-versions.mk in sync.
-_PYTHON_VERSIONS= 3.11 3.12 3.10 3.9 2.7 # preferred first
+_PYTHON_VERSIONS= 3.11 3.12 3.13 3.13t 3.14 3.10 2.7 # preferred first
_PYTHON_PORTBRANCH= 3.11 # ${_PYTHON_VERSIONS:[1]}
_PYTHON_BASECMD= ${LOCALBASE}/bin/python
_PYTHON_RELPORTDIR= lang/python
@@ -444,13 +444,13 @@ DEV_WARNING+= "lang/python27 reached End of Life and will be removed somewhere
. elif ${_PYTHON_ARGS} == 2
DEV_ERROR+= "USES=python:2 is no longer supported, use USES=python:2.7"
. elif ${_PYTHON_ARGS} == 3
-DEV_ERROR+= "USES=python:3 is no longer supported, use USES=python:3.9+ or an appropriate version range"
+DEV_ERROR+= "USES=python:3 is no longer supported, use USES=python:3.11+ or an appropriate version range"
. endif # ${_PYTHON_ARGS} == 2.7
_PYTHON_VERSION:= ${PYTHON_DEFAULT}
. if empty(_PYTHON_ARGS)
-_PYTHON_ARGS= 3.9+
+_PYTHON_ARGS= 3.10+
. endif
# Validate Python version whether it meets the version restriction.
@@ -552,7 +552,7 @@ PKGNAMESUFFIX= ${PYTHON_PKGNAMESUFFIX}
# To avoid having dependencies with @ and empty flavor:
# _PYTHON_VERSION is either set by (first that matches):
# - If using Python flavors, from the current Python flavor
-# - If using a version restriction (USES=python:3.9+), from the first
+# - If using a version restriction (USES=python:3.11+), from the first
# acceptable default Python version.
# - From PYTHON_DEFAULT
PY_FLAVOR= py${_PYTHON_VERSION:S/.//}
@@ -633,7 +633,7 @@ _PYTHONPKGLIST= ${WRKDIR}/.PLIST.pymodtmp
# cryptography* support
. if ${PYCRYPTOGRAPHY_DEFAULT} == rust
-CRYPTOGRAPHY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cryptography>=44.0.3,1:security/py-cryptography@${PY_FLAVOR}
+CRYPTOGRAPHY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cryptography>=45.0.7,1<47,1:security/py-cryptography@${PY_FLAVOR}
. else
CRYPTOGRAPHY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cryptography-legacy>=3.4.8_3,1:security/py-cryptography-legacy@${PY_FLAVOR}
. endif
@@ -665,15 +665,15 @@ TEST_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cython>=0.29.37<3:lang/cython@${PY_FLAVOR}
. endif
. if defined(_PYTHON_FEATURE_CYTHON3)
-BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cython3>=3.1.2:lang/cython3@${PY_FLAVOR}
+BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cython3>=3.1.6:lang/cython3@${PY_FLAVOR}
. endif
. if defined(_PYTHON_FEATURE_CYTHON3_RUN)
-RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cython3>=3.1.2:lang/cython3@${PY_FLAVOR}
+RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cython3>=3.1.6:lang/cython3@${PY_FLAVOR}
. endif
. if defined(_PYTHON_FEATURE_CYTHON3_TEST)
-TEST_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cython3>=3.1.2:lang/cython3@${PY_FLAVOR}
+TEST_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cython3>=3.1.6:lang/cython3@${PY_FLAVOR}
. endif
. if defined(_PYTHON_FEATURE_CONCURRENT)
@@ -870,7 +870,7 @@ PY_SETUPTOOLS= ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAV
# Common Python modules that can be needed but only for some versions of Python.
. if ${PYTHON_REL} < 31100
PY_EXCEPTIONGROUP= ${PYTHON_PKGNAMEPREFIX}exceptiongroup>=1.1.1:devel/py-exceptiongroup@${PY_FLAVOR}
-PY_TOMLI= ${PYTHON_PKGNAMEPREFIX}tomli>=2.2.1<3:textproc/py-tomli@${PY_FLAVOR}
+PY_TOMLI= ${PYTHON_PKGNAMEPREFIX}tomli>=2.3<3:textproc/py-tomli@${PY_FLAVOR}
PY_TYPING_EXTENSIONS= ${PYTHON_PKGNAMEPREFIX}typing-extensions>0:devel/py-typing-extensions@${PY_FLAVOR}
. endif
diff --git a/Mk/Uses/qt-dist.mk b/Mk/Uses/qt-dist.mk
index f863d0454dc9..309513fdda63 100644
--- a/Mk/Uses/qt-dist.mk
+++ b/Mk/Uses/qt-dist.mk
@@ -108,11 +108,11 @@ DIST_SUBDIR= KDE/Qt/${_QT_VERSION}
. if ${_QT_VER:M5}
# KDE maintains a repository with a patched Qt5 distribution.
_KDE_3d= 0
-_KDE_base= 123
+_KDE_base= 109
_KDE_charts= 0
-_KDE_connectivity= 2
+_KDE_connectivity= 1
_KDE_datavis3d= 0
-_KDE_declarative= 21
+_KDE_declarative= 22
_KDE_gamepad= 0
_KDE_graphicaleffects= 0
_KDE_imageformats= 2
@@ -136,7 +136,7 @@ _KDE_svg= 5
_KDE_tools= 3
_KDE_translations= 0
_KDE_virtualkeyboard= 0
-_KDE_wayland= 57
+_KDE_wayland= 55
_KDE_webchannel= 3
# We track the 5.15 branch for www/qt5-webengine to make it easier to
# stay on top of Chromium security patches.
diff --git a/Mk/Uses/qt.mk b/Mk/Uses/qt.mk
index 88984a936848..db50d8de38ac 100644
--- a/Mk/Uses/qt.mk
+++ b/Mk/Uses/qt.mk
@@ -22,9 +22,9 @@ _QT_MK_INCLUDED= qt.mk
# Qt versions currently supported by the framework.
_QT_SUPPORTED?= 5 6
-QT5_VERSION?= 5.15.17
-QT6_VERSION?= 6.9.2
-PYSIDE6_VERSION?= 6.9.2
+QT5_VERSION?= 5.15.18
+QT6_VERSION?= 6.9.3
+PYSIDE6_VERSION?= 6.9.3
# Support for intermediate Qt6 releases. This partially defines
# _QT6_MASTER_SITE_SUBDIR and would probably be better in qt-dist.mk,
diff --git a/Mk/Uses/ruby.mk b/Mk/Uses/ruby.mk
index 55bb74a50fd7..7e3253818cb2 100644
--- a/Mk/Uses/ruby.mk
+++ b/Mk/Uses/ruby.mk
@@ -154,7 +154,7 @@ RUBY_PORTREVISION= 0
#
# Ruby 3.3
#
-RUBY_DISTVERSION= 3.3.9
+RUBY_DISTVERSION= 3.3.10
RUBY_PORTREVISION= 0
@@ -162,7 +162,7 @@ RUBY_PORTREVISION= 0
#
# Ruby 3.4
#
-RUBY_DISTVERSION= 3.4.5
+RUBY_DISTVERSION= 3.4.7
RUBY_PORTREVISION= 0
diff --git a/Mk/Uses/samba.mk b/Mk/Uses/samba.mk
index fb949887c604..e40db0b0e5bd 100644
--- a/Mk/Uses/samba.mk
+++ b/Mk/Uses/samba.mk
@@ -18,7 +18,7 @@ samba_ARGS= build run
IGNORE= USES=samba has invalid arguments: ${samba_ARGS:Nbuild:Nenv:Nlib:Nrun}
. endif
-. if ${SAMBA_DEFAULT} != 4.16 && ${SAMBA_DEFAULT} != 4.19 && ${SAMBA_DEFAULT} != 4.20
+. if ${SAMBA_DEFAULT} != 4.16 && ${SAMBA_DEFAULT} != 4.19 && ${SAMBA_DEFAULT} != 4.20 && ${SAMBA_DEFAULT} != 4.22
IGNORE= Invalid version of samba: ${SAMBA_DEFAULT}
. endif
@@ -39,11 +39,21 @@ SAMBA_LDB_PORT_420= databases/ldb29
SAMBA_TALLOC_PORT_420= devel/talloc242
SAMBA_TDB_PORT_420= databases/tdb1410
SAMBA_TEVENT_PORT_420= devel/tevent016
+SAMBA_PORT_422= net/samba422
+SAMBA_TALLOC_PORT_422= devel/talloc243
+SAMBA_TDB_PORT_422= databases/tdb1413
+SAMBA_TEVENT_PORT_422= devel/tevent017
SAMBA_PORT= ${SAMBA_PORT_${SAMBA_SUFFIX}}
SAMBA_INCLUDEDIR= ${LOCALBASE}/include/samba4
SAMBA_LIBDIR= ${LOCALBASE}/lib/samba4
+# Only define SAMBA_LDB_PORT if SAMBA_LDB_PORT_${SAMBA_SUFFIX} is set. Samba
+# requires ldb to be bundled since version 4.22, so it makes no sense to set
+# SAMBA_LDB_PORT in that case. By not setting SAMBA_LDB_PORT, we allow ports to
+# detect the lack of a separate ldb port more easily.
+. if !empty(SAMBA_LDB_PORT_${SAMBA_SUFFIX})
SAMBA_LDB_PORT= ${SAMBA_LDB_PORT_${SAMBA_SUFFIX}}
+. endif
SAMBA_TALLOC_PORT= ${SAMBA_TALLOC_PORT_${SAMBA_SUFFIX}}
SAMBA_TDB_PORT= ${SAMBA_TDB_PORT_${SAMBA_SUFFIX}}
SAMBA_TEVENT_PORT= ${SAMBA_TEVENT_PORT_${SAMBA_SUFFIX}}
diff --git a/Mk/Uses/ssl.mk b/Mk/Uses/ssl.mk
index f8a459eb87e7..cdc434e2aa61 100644
--- a/Mk/Uses/ssl.mk
+++ b/Mk/Uses/ssl.mk
@@ -10,8 +10,8 @@
#
# When updating this, please also update the same list in bsd.default-versions.mk
# and the checks for USES=ssl in qa.sh!
-# Variants being base, openssl, openssl111, openssl31, openssl32,
-# openssl33, libressl, and libressl-devel.
+# Variants being base, openssl, openssl111, openssl33, openssl34, openssl35,
+# openssl36, libressl, and libressl-devel.
#
# The Makefile sets these variables:
# OPENSSLBASE - "/usr" or ${LOCALBASE}
diff --git a/Mk/Uses/sudo.mk b/Mk/Uses/sudo.mk
new file mode 100644
index 000000000000..0ef480cabd81
--- /dev/null
+++ b/Mk/Uses/sudo.mk
@@ -0,0 +1,16 @@
+# Handle dependency on sudo
+#
+# Feature: sudo
+# Usage: USES=sudo
+#
+# MAINTAINER: kiwi@FreeBSD.org
+
+.if !defined(_INCLUDE_USES_SUDO_MK)
+_INCLUDE_USES_SUDO_MK= yes
+
+SUDO_FLAVOR?= ${SUDO_DEFAULT}
+SUDO_PORT?= security/sudo
+SUDO_DEPENDS= ${LOCALBASE}/bin/sudo:${SUDO_PORT}@${SUDO_FLAVOR}
+
+RUN_DEPENDS+= ${SUDO_DEPENDS}
+.endif
diff --git a/Mk/Uses/vala.mk b/Mk/Uses/vala.mk
index a12834d81fb7..53aef616e9cb 100644
--- a/Mk/Uses/vala.mk
+++ b/Mk/Uses/vala.mk
@@ -1,9 +1,12 @@
# Handle dependency on lang/vala
#
# Valid args:
-# - lib: add a lib depends
-# - build: add a build depends
-# - no_depend: only used for lang/vala itself
+# - lib: add a lib depends
+# - build: add a build depends
+# - test: add a test depends
+# - no_depend: only used for lang/vala itself
+#
+# MAINTAINER: desktop@FreeBSD.org
.if ! defined(_INCLUDE_USES_VALA_MK)
_INCLUDE_USES_VALA_MK= yes
@@ -21,6 +24,9 @@ LIB_DEPENDS+= ${_VALA_LIBRARY}:${_VALA_PORT}
. if ! empty(vala_ARGS:Mbuild)
BUILD_DEPENDS+= ${_VALA_BINARY}:${_VALA_PORT}
. endif
+. if ! empty(vala_ARGS:Mtest)
+TEST_DEPENDS+= ${_VALA_BINARY}:${_VALA_PORT}
+. endif
. endif
.endif
diff --git a/Mk/bsd.ccache.mk b/Mk/bsd.ccache.mk
index bf8900430238..ce9b2c7913b6 100644
--- a/Mk/bsd.ccache.mk
+++ b/Mk/bsd.ccache.mk
@@ -103,14 +103,13 @@ ${WRKDIR}/.ccache: ${WRKDIR}
@${LN} -sf ${CCACHE_DIR} ${WRKDIR}/.ccache
ccache-wrkdir-link: ${WRKDIR}/.ccache .PHONY
post-extract: ccache-wrkdir-link
-. endif
# enable ccache in case of USES=llvm and cmake
-. if ${CCACHE_ENABLED} == yes && \
- defined(_INCLUDE_USES_LLVM_MK) && \
- defined(_INCLUDE_USES_CMAKE_MK)
-CMAKE_ARGS+= -DCMAKE_C_COMPILER_LAUNCHER=ccache \
- -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
+. if defined(_INCLUDE_USES_LLVM_MK) && \
+ defined(_INCLUDE_USES_CMAKE_MK)
+CMAKE_ARGS+= -DCMAKE_C_COMPILER_LAUNCHER=${CCACHE_BIN} \
+ -DCMAKE_CXX_COMPILER_LAUNCHER=${CCACHE_BIN}
+. endif
. endif
.endif
diff --git a/Mk/bsd.default-versions.mk b/Mk/bsd.default-versions.mk
index d5abf9e90706..b91aa67be413 100644
--- a/Mk/bsd.default-versions.mk
+++ b/Mk/bsd.default-versions.mk
@@ -56,7 +56,7 @@ FPC_DEFAULT?= 3.3.1
. else
FPC_DEFAULT?= 3.2.3
. endif
-# Possible values: 11, 12, 13, 14, 15, 16
+# Possible values: 12, 13, 14, 15, 16
# (Any other version is completely unsupported and not meant for general use.)
GCC_DEFAULT?= 13
# Possible values: 10
@@ -73,7 +73,7 @@ GUILE_DEFAULT?= 2.2
# Format: version[-flavor]
# Examples: 6-nox11, 7
IMAGEMAGICK_DEFAULT?= 7
-# Possible values: 8, 11, 17, 18, 19, 20, 21, 22, 23, 24
+# Possible values: 8, 11, 17, 18, 19, 20, 21, 22, 23, 24, 25
JAVA_DEFAULT?= 8
# Possible values: 4.2, 4.99
. if (defined(WANT_LAZARUS_DEVEL) && !empty(WANT_LAZARUS_DEVEL)) || ${ARCH:Maarch64}
@@ -97,7 +97,7 @@ LINUX_DEFAULT?= rl9
LLVM_DEFAULT?= 19
# Possible values: 5.1, 5.2, 5.3, 5.4
LUA_DEFAULT?= 5.4
-# Possible values: luajit, luajit-devel, luajit-openresty
+# Possible values: luajit, luajit-openresty
. if ${ARCH:Mpowerpc64*}
LUAJIT_DEFAULT?= luajit-openresty
. else
@@ -105,11 +105,11 @@ LUAJIT_DEFAULT?= luajit
. endif
# Possible values: 5.10, 5.20, 6.8
MONO_DEFAULT?= 5.20
-# Possible values: 8.0, 8.4, 9.1, 10.6m, 10.11m, 11.4m, 11.8m
+# Possible values: 8.0, 8.4, 9.1, 9.4, 10.6m, 10.11m, 11.4m, 11.8m
MYSQL_DEFAULT?= 8.0
# Possible values: ninja, samurai
NINJA_DEFAULT?= ninja
-# Possible value: 18, 20, 22, 24, current, lts (Note: current = 24 and lts = 22)
+# Possible value: 20, 22, 24, 25, current, lts (Note: current = 25 and lts = 24)
NODEJS_DEFAULT?= lts
# Possible value: 25, 26
OPENLDAP_DEFAULT?= 26
@@ -130,7 +130,7 @@ _PERL5_FROM_BIN!= ${LOCALBASE}/bin/perl -e 'printf "%vd\n", $$^V;'
_EXPORTED_VARS+= _PERL5_FROM_BIN
PERL5_DEFAULT:= ${_PERL5_FROM_BIN:R}
. endif
-# Possible values: 13, 14, 15, 16, 17
+# Possible values: 13, 14, 15, 16, 17, 18
PGSQL_DEFAULT?= 17
# Possible values: 8.1, 8.2, 8.3, 8.4, 8.5
PHP_DEFAULT?= 8.3
@@ -140,7 +140,7 @@ PYCRYPTOGRAPHY_DEFAULT?= rust
. else
PYCRYPTOGRAPHY_DEFAULT?= legacy
. endif
-# Possible values: 3.9, 3.10, 3.11, 3.12
+# Possible values: 3.10, 3.11, 3.12, 3.13, 3.13t, 3.14
PYTHON_DEFAULT?= 3.11
# Possible values: 2.7
PYTHON2_DEFAULT?= 2.7
@@ -148,11 +148,12 @@ PYTHON2_DEFAULT?= 2.7
RUBY_DEFAULT?= 3.3
# Possible values: rust, rust-nightly
RUST_DEFAULT?= rust
-# Possible values: 4.16, 4.19, 4.20
+# Possible values: 4.16, 4.19, 4.20, 4.22
SAMBA_DEFAULT?= 4.16
# When updating this, please also update the same list in ssl.mk and the checks
# for USES=ssl in qa.sh!
-# Possible values: base, openssl, openssl111, openssl31, openssl32, openssl33, libressl, libressl-devel
+# Possible values: base, openssl, openssl111, openssl33, openssl34, openssl35,
+# openssl36, libressl, libressl-devel
. if !defined(SSL_DEFAULT)
# If no preference was set, check for an installed base version
# but give an installed port preference over it.
@@ -188,6 +189,8 @@ check-makevars::
# Make sure we have a default in the end
SSL_DEFAULT?= base
. endif
+# Possible values: default, sssd
+SUDO_DEFAULT?= default
# Possible values: 8.6, 9.0
TCLTK_DEFAULT?= 8.6
# Possible values: 6, 7
diff --git a/Mk/bsd.gcc.mk b/Mk/bsd.gcc.mk
index 6a40b0d7bfa5..d9abf9074757 100644
--- a/Mk/bsd.gcc.mk
+++ b/Mk/bsd.gcc.mk
@@ -35,7 +35,7 @@ GCC_Include_MAINTAINER= gerald@FreeBSD.org
# All GCC versions supported by this framework.
#
# When updating this, keep Mk/bsd.default-versions.mk in sync.
-GCCVERSIONS= 11 12 13 14 15 16
+GCCVERSIONS= 12 13 14 15 16
# No configurable parts below this. ####################################
#
diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk
index 5f8bffc8e3d1..fbe4182122ea 100644
--- a/Mk/bsd.gecko.mk
+++ b/Mk/bsd.gecko.mk
@@ -77,7 +77,7 @@ ELF_FEATURES+= +wxneeded:dist/bin/${MOZILLA} +wxneeded:dist/bin/${MOZILLA}-bin
BUNDLE_LIBS= yes
BUILD_DEPENDS+= rust-cbindgen>=0.28.0:devel/rust-cbindgen \
- ${RUST_DEFAULT}>=1.89.0:lang/${RUST_DEFAULT}
+ ${RUST_DEFAULT}>=1.91.0:lang/${RUST_DEFAULT}
LIB_DEPENDS+= libdrm.so:graphics/libdrm
RUN_DEPENDS+= ${LOCALBASE}/lib/libpci.so:devel/libpci
LIB_DEPENDS+= libepoll-shim.so:devel/libepoll-shim
diff --git a/Mk/bsd.options.desc.mk b/Mk/bsd.options.desc.mk
index 0460f2782076..0149d1ea141a 100644
--- a/Mk/bsd.options.desc.mk
+++ b/Mk/bsd.options.desc.mk
@@ -433,6 +433,7 @@ PYMALLOC_DESC?= Use Python's internal malloc()
PYTHON_DESC?= Python bindings or support
PYTHON2_DESC?= Python 2.x bindings or support
PYTHON3_DESC?= Python 3.x bindings or support
+QT_DESC?= Qt toolkit support
QT5_DESC?= Qt 5 toolkit support
QT6_DESC?= Qt 6 toolkit support
QUICKTIME_DESC?= QuickTime media support
@@ -522,6 +523,7 @@ VAAPI_DESC?= VAAPI (GPU video acceleration) support
VAPI_DESC?= Build VALA API files
VDPAU_DESC?= VDPAU (GPU video acceleration) support
VIDEO_DESC?= Video support
+VULKAN_DESC?= Vulkan GPU support
VO_AACENC_DESC?= AAC audio encoding via vo-aacenc
VO_AMRWBENC_DESC?= AMR Wide Band encoding via vo-amrwbenc
VORBIS_DESC?= Ogg Vorbis audio codec support
diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index b3726c98b067..ad654761fcfb 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -113,7 +113,7 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# Default: not set.
# PATCH_SITES - Primary location(s) for distribution patch files
# if not found locally.
-# DIST_SUBDIR - Suffix to ${DISTDIR}. If set, all ${DISTFILES} and
+# DIST_SUBDIR - Suffix to ${DISTDIR}. If set to non-empty value, all ${DISTFILES} and
# ${PATCHFILES} will be put in this subdirectory of
# ${DISTDIR} (see below). Also they will be fetched in this
# subdirectory from FreeBSD mirror sites.
@@ -1007,7 +1007,7 @@ PORTSDIR?= /usr/ports
LOCALBASE?= /usr/local
LINUXBASE?= /compat/linux
DISTDIR?= ${PORTSDIR}/distfiles
-_DISTDIR?= ${DISTDIR}${DIST_SUBDIR:D/${DIST_SUBDIR}}
+_DISTDIR?= ${DISTDIR}${empty(DIST_SUBDIR):?:${DIST_SUBDIR:D/${DIST_SUBDIR}}}
INDEXDIR?= ${PORTSDIR}
SRC_BASE?= /usr/src
USESDIR?= ${PORTSDIR}/Mk/Uses
@@ -1081,7 +1081,7 @@ LD+= --sysroot=${CROSS_SYSROOT}
STRIP_CMD= ${CROSS_BINUTILS_PREFIX}strip
# only bmake support the below
STRIPBIN= ${STRIP_CMD}
-.export.env STRIPBIN
+.export-env STRIPBIN
.endif
#
@@ -1165,7 +1165,7 @@ OSVERSION!= ${AWK} '/^\#define[[:blank:]]__FreeBSD_version/ {print $$3}' < ${SRC
. endif
_EXPORTED_VARS+= OSVERSION
-. if ${OPSYS} == FreeBSD && (${OSVERSION} < 1305000 || (${OSVERSION} >= 1400000 && ${OSVERSION} < 1402000))
+. if ${OPSYS} == FreeBSD && (${OSVERSION} < 1305000 || (${OSVERSION} >= 1400000 && ${OSVERSION} < 1403000))
_UNSUPPORTED_SYSTEM_MESSAGE= Ports Collection support for your ${OPSYS} version has ended, and no ports\
are guaranteed to build on this system. Please upgrade to a supported release.
. if defined(ALLOW_UNSUPPORTED_SYSTEM)
@@ -1773,6 +1773,7 @@ CFLAGS:= ${CFLAGS:C/ $//}
. if defined(_CPUCFLAGS)
. if !empty(_CPUCFLAGS)
CFLAGS:= ${CFLAGS:C/${_CPUCFLAGS}//}
+CXXFLAGS:= ${CXXFLAGS:C/${_CPUCFLAGS}//}
. endif
. endif
. endif
@@ -2543,7 +2544,7 @@ _PATCH_SITES_ENV+= _PATCH_SITES_${_group}=${_PATCH_SITES_${_group}:Q}
CKSUMFILES= ${ALLFILES}
# List of all files, with ${DIST_SUBDIR} in front. Used for checksum.
-. if defined(DIST_SUBDIR)
+. if defined(DIST_SUBDIR) && !empty(DIST_SUBDIR)
. if defined(CKSUMFILES) && ${CKSUMFILES}!=""
_CKSUMFILES?= ${CKSUMFILES:S/^/${DIST_SUBDIR}\//}
. endif
@@ -3909,7 +3910,7 @@ delete-distfiles:
fi; \
done; \
fi)
-. if defined(DIST_SUBDIR)
+. if defined(DIST_SUBDIR) && !empty(DIST_SUBDIR)
-@${RMDIR} ${_DISTDIR} >/dev/null 2>&1 || ${TRUE}
. endif
. endif
@@ -3926,7 +3927,7 @@ delete-distfiles-list:
fi; \
done; \
fi
-. if defined(DIST_SUBDIR)
+. if defined(DIST_SUBDIR) && !empty(DIST_SUBDIR)
@${ECHO_CMD} "${RMDIR} ${_DISTDIR} 2>/dev/null || ${TRUE}"
. endif
. endif
@@ -5330,7 +5331,9 @@ show-warnings:
@${ECHO_MSG} "${m}" | ${FMT_80}
@${ECHO_MSG}
. endfor
+. if ${WARNING_WAIT} != 0
@sleep ${WARNING_WAIT}
+. endif
. endif
. if defined(ERROR)
@@ -5356,7 +5359,7 @@ show-dev-warnings:
. endfor
. if defined(DEV_WARNING_FATAL)
@${FALSE}
-. else
+. elif ${DEV_WARNING_WAIT} != 0
@sleep ${DEV_WARNING_WAIT}
. endif
. endif