Index: CHANGES =================================================================== --- CHANGES +++ CHANGES @@ -10,6 +10,61 @@ All ports committers are allowed to commit to this file. +20230728: +AUTHOR: andrew@tao11.riddles.org.uk, fuz@FreeBSD.org + + A new uses 'guile' has been added to transparently depend on the + proper variant of guile depending on the default version set by the + user and the demands of the port. + + See Mk/Uses/guile.mk for in-depth documentation. + +20230722: +AUTHOR: tcberner@FreeBSD.org + + A new uses 'pycryptography' has been added to transparently depend on the + proper variant of 'rust' or 'legacy' depending on the default version set + by the user. + + Supported arguments: ,build,run + Passing no arguments () is equivalent to passing both build and run. + + Usage: + USES=pycryptography:build + -> adds a BUILD_DEPENDS only + USES=pycryptography:run + -> adds a RUN_DEPENDS only + USES=pycryptography:test + -> adds a TEST_DEPENDS only + USES=pycryptography:build,run or USES=pycryptography + -> adds a BUILD_ and RUN_DEPENDS + +20230712: +AUTHOR: zirias@FreeBSD.org + + USE_GITLAB has been changed to allow fetching by tag name. This was done by + removing the GL_COMMIT variable and introducing GL_TAGNAME instead. + + Similar to USE_GITHUB/GH_TAGNAME, you can still use a commit hash with + GL_TAGNAME (the full 40-character hash is required for that). If not + specified, GL_TAGNAME defaults to DISTVERSIONFULL. + + Note fetching by tag name might not work on gitlab installations running + very old versions; in that case, you must still specify a commit hash. + + For now, GL_COMMIT is still recognized but deprecated, using it will issue + a warning in developer mode. + +20230712: +AUTHOR: 0mp@FreeBSD.org + + Two new targets are now available: fetch-url-recursive-list + and fetch-urlall-recursive-list. They are the recursive variants + of the well-established targets fetch-url-list and fetch-urlall-list, + which allow for listing the complete URLs of DISTFILES and PATCHFILES + of a port. The recursive variants add the URLs of the port's dependencies + to the output. + 20230430: AUTHOR: zirias@FreeBSD.org Index: MOVED =================================================================== --- MOVED +++ MOVED @@ -1235,7 +1235,6 @@ deskutils/qrfcview||2019-03-16|Has expired: Qt4 has been EOL since december 2015 deskutils/qtm||2019-03-16|Has expired: Qt4 has been EOL since december 2015 deskutils/tuxcards||2019-03-16|Has expired: Qt4 has been EOL since december 2015 -deskutils/vym||2019-03-16|Has expired: Qt4 has been EOL since december 2015 devel/apiextractor||2019-03-16|Has expired: Qt4 has been EOL since december 2015 devel/automoc4||2019-03-16|Has expired: Qt4 has been EOL since december 2015 devel/edb||2019-03-16|Has expired: Qt4 has been EOL since december 2015 @@ -2334,7 +2333,7 @@ emulators/xen-kernel47|emulators/xen-kernel|2019-07-01|Has expired: This port is about to be removed, please update to a newer Xen version sysutils/xen-tools47|sysutils/xen-tools|2019-07-01|Has expired: This port is about to be removed, please update to a newer Xen version www/seamonkey||2019-07-03|2.49.* is not maintained upstream and full of security holes -www/tomcat8||2019-07-06|Has expired: EoL since 2018-06-30 +www/tomcat8|www/tomcat85|2019-07-06|Has expired: EoL since 2018-06-30 devel/libevent-hiphop||2019-07-10|Has expired: Obsoleted with removal of lang/hiphop-php textproc/apache-solr3|textproc/apache-solr|2019-07-12|Obsolete misc/tcb||2019-07-13|Has expired: Abandonware that uses sys/dir.h @@ -2681,7 +2680,6 @@ games/sdlCC||2019-10-16|Has expired: Unfetchable, unmaintained games/speyes||2019-10-16|Has expired: Unfetchable, unmaintained games/vodovod||2019-10-16|Has expired: Unfetchable, unmaintained -games/wmeyes||2019-10-16|Has expired: Unfetchable, unmaintained games/wmshuffle||2019-10-16|Has expired: Unfetchable, unmaintained games/xabacus||2019-10-16|Has expired: Unfetchable, unmaintained games/xpacman||2019-10-16|Has expired: Unfetchable, unmaintained @@ -3210,7 +3208,6 @@ devel/yosys|cad/yosys|2020-01-04|Move to a proper category cad/ujprog|comms/ujprog|2020-01-05|Move to a proper category net/gnatsd|net/nats-server|2020-01-06|Renamed upstream -astro/viking||2020-01-10|Has expired: Depends on broken and expiring graphics/mapnik audio/slv2||2020-01-10|Has expired: Broken for more than 5 months (last version 0.6.6 released in 2009, replaced by lilv) cad/brickutils||2020-01-10|Has expired: Broken for more than 3 months, unmaintained devel/elixir-gen_state_machine||2020-01-10|Has expired: Broken for more than 6 months @@ -4270,7 +4267,6 @@ net/uplog||2020-05-05|Has expired: Broken for more than 6 months net/vblade||2020-05-05|Has expired: Broken for more than 6 months net/wizd||2020-05-05|Has expired: Broken for more than 6 months -net/wmnetload||2020-05-05|Has expired: Broken for more than 6 months net/wmnetmon||2020-05-05|Has expired: Broken for more than 6 months net/wmpiki||2020-05-05|Has expired: Broken for more than 6 months net/xipmsg||2020-05-05|Has expired: Broken for more than 6 months @@ -6611,7 +6607,7 @@ graphics/deegree-wcs||2022-03-31|Has expired: Depends on expired www/tomcat7 graphics/deegree-csw||2022-03-31|Has expired: Depends on expired www/tomcat7 graphics/deegree-wms||2022-03-31|Has expired: Depends on expired www/tomcat7 -www/tomcat7||2022-03-31|Has expired: Tomcat 7 is EOL on 2021-03-31. Please upgrade to a later version +www/tomcat7|www/tomcat85|2022-03-31|Has expired: Tomcat 7 is EOL on 2021-03-31. Please upgrade to a later version devel/gitblit||2022-03-31|Has expired: Depends on expired www/tomcat7 graphics/barbecue||2022-03-31|Has expired: Depends on expired www/tomcat7 graphics/deegree-wfs||2022-03-31|Has expired: Depends on expired www/tomcat7 @@ -7676,7 +7672,7 @@ audio/glurp||2023-06-30|Has expired: Unmaintained for years and depends on deprecated GTK2 finance/R-cran-ccgarch||2023-06-30|Has expired: Fails to build with R 4.3.0+ and abandoned upstream www/redmine42||2023-06-30|Has expired: Broken with all supported Ruby versions -www/tomcat10||2023-06-30|Has expired: EOLd, potential security issues (https://tomcat.apache.org/tomcat-10.0-eol.html), use www/tomcat101 instead +www/tomcat10|www/tomcat101|2023-06-30|Has expired: EOLd, potential security issues (https://tomcat.apache.org/tomcat-10.0-eol.html), use www/tomcat101 instead databases/mongodb40-tools||2023-06-30|Has expired: Upstream EOL reached on 2022-04-30 databases/mongodb40||2023-06-30|Has expired: Upstream EOL reached on 2022-04-30 dns/djbdns-tools||2023-06-30|Has expired: No longer compliant with current DNS standards and source code hasn't been centrally managed for over 20 years @@ -7763,3 +7759,22 @@ sysutils/cfengine318||2023-07-02|Has expired: Expire one year after cfengine 3.19.0 released devel/linux-c7-dbus-glib||2023-07-02|Merged into devel/linux-c7-dbus-libs devel/ocaml-sexplib|devel/ocaml-sexplib0|2023-07-05|Project renamed +net/nuster||2023-07-08|Has expired: Does not support OpenSSL 3 and upstream last release was in 2020 +devel/godot2-tools|devel/godot-tools|2023-07-08|Has expired: Requires legacy OpenSSL 1.1.1 so use devel/godot +devel/rubygem-aws-sdk-core3172|devel/rubygem-aws-sdk-core|2023-07-09|Remove obsoleted port. Use devel/rubygem-aws-sdk-core instead +devel/rubygem-aws-sdk-s31122|devel/rubygem-aws-sdk-s3|2023-07-09|Remove obsoleted port. Use devel/rubygem-aws-sdk-s3 instead +devel/rubygem-google-protobuf322|devel/rubygem-google-protobuf|2023-07-09|Remove obsoleted port. Use devel/rubygem-google-protobuf instead +devel/rubygem-grape15|devel/rubygem-grape|2023-07-09|Remove obsoleted port. Use devel/rubygem-grape instead +net/rubygem-net-ldap017|net/rubygem-net-ldap|2023-07-09|Remove obsoleted port. Use net/rubygem-net-ldap instead +textproc/rubygem-nokogiri114|textproc/rubygem-nokogiri|2023-07-09|Remove obsoleted port. Use textproc/rubygem-nokogiri instead +japanese/kterm||2023-07-12|Has expired: Last upstream release was in 2011 +graphics/gmic-qt@krita|graphics/krita-gmic-plugin|2023-07-14|Forked to a seperate project +devel/capstone5|devel/capstone|2023-07-15|Keep the latest version without any pkgnamesufix +games/naev-data||2023-07-15|Remove obsoleted port. Now games/naev installs data files +graphics/pecl-imagick-im7|graphics/pecl-imagick|2023-07-19|Merged into master port +x11-toolkits/fox14||2023-07-27|Has expired: Obsolete leaf port, use x11-toolkits/fox(16,17) instead +x11-wm/cage-devel|x11-wm/cage|2023-07-27|Out of date: use x11-wm/cage for now +games/cockatrice||2023-07-31|Has expired: Upstream releases haven't occured for multiple years and will require a new portbuild +graphics/blender-lts29||2023-07-31|Has expired: Deprecated upstream +x11-fm/wcmcommander||2023-07-31|Has expired: Abandoned upstream +x11/cde-24|x11/cde-25|2023-08-01|Has expired: Desupported by upstream Index: Mk/Scripts/do-fetch.sh =================================================================== --- Mk/Scripts/do-fetch.sh +++ Mk/Scripts/do-fetch.sh @@ -123,23 +123,24 @@ for site in ${sites}; do sites_remaining=$((sites_remaining - 1)) CKSIZE=$(distinfo_data SIZE "${full_file}") - # There is a lot of escaping, but the " needs to survive echo/eval. + early_args="" case ${file} in */*) case ${dp_TARGET} in - fetch-list|fetch-url-list-int) - echo "mkdir -p \"${file%/*}\" && " - ;; - *) - mkdir -p "${file%/*}" - ;; + fetch-list) + echo "mkdir -p \"${file%/*}\" && " + early_args="-o ${file}" + ;; + fetch-url-list-int) + ;; + *) + mkdir -p "${file%/*}" + early_args="-o ${file}" + ;; esac - args="-o ${file} ${site}${file}" - ;; - *) - args="${site}${file}" - ;; + ;; esac + args="${early_args:+${early_args} }${site}${file}" _fetch_cmd="${dp_FETCH_CMD} ${dp_FETCH_BEFORE_ARGS}" if [ -z "${dp_DISABLE_SIZE}" -a -n "${CKSIZE}" ]; then _fetch_cmd="${_fetch_cmd} -S ${CKSIZE}" Index: Mk/Uses/cargo.mk =================================================================== --- Mk/Uses/cargo.mk +++ Mk/Uses/cargo.mk @@ -97,7 +97,7 @@ CARGO_BUILDDEP?= yes . if ${CARGO_BUILDDEP:tl} == "yes" -BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.70.0:lang/${RUST_DEFAULT} +BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.71.0:lang/${RUST_DEFAULT} . elif ${CARGO_BUILDDEP:tl} == "any-version" BUILD_DEPENDS+= ${RUST_DEFAULT}>=0:lang/${RUST_DEFAULT} . endif Index: Mk/Uses/gettext-runtime.mk =================================================================== --- Mk/Uses/gettext-runtime.mk +++ Mk/Uses/gettext-runtime.mk @@ -14,13 +14,14 @@ . endif . if ${gettext-runtime_ARGS:Mlib} +BUILD_DEPENDS+= gettext-runtime>=0.22_1:devel/gettext-runtime LIB_DEPENDS+= libintl.so:devel/gettext-runtime . endif . if ${gettext-runtime_ARGS:Mbuild} -BUILD_DEPENDS+= gettext:devel/gettext-runtime +BUILD_DEPENDS+= gettext-runtime>=0.22_1:devel/gettext-runtime . endif . if ${gettext-runtime_ARGS:Mrun} -RUN_DEPENDS+= gettext:devel/gettext-runtime +RUN_DEPENDS+= gettext-runtime>=0.22_1:devel/gettext-runtime . endif .endif Index: Mk/Uses/ghostscript.mk =================================================================== --- Mk/Uses/ghostscript.mk +++ Mk/Uses/ghostscript.mk @@ -2,7 +2,7 @@ # # Feature: ghostscript # Usage: USES=ghostscript or USES=ghostscript:args -# Valid ARGS: , build, run, test, x11, lib +# Valid ARGS: , build, lib, run, test, x11 # # version The chooseable versions are 9, agpl and 10. If no version is # specified version agpl is selected. 9 and agpl are synonymous. @@ -11,15 +11,12 @@ # USES=ghostscript:run # Use the set default Ghostscript as a run dependency # USES=ghostscript:9,build # Use ghostscript 9 as a build dependency. # +# build Ghostscript is used as BUILD_DEPENDS +# lib Ghostscript is used as LIB_DEPENDS +# run Ghostscript is used as RUN_DEPENDS +# test Ghostscript is used as TEST_DEPENDS +# # x11 Indicate that X11 support is required. -# build Indicates that Ghostscript is needed at build time and adds -# it as BUILD_DEPENDS. -# run Indicates that Ghostscript is needed at run time and adds -# it as RUN_DEPENDS. -# test Indicates that Ghostscript is needed at test time and adds -# it as TEST_DEPENDS. -# lib Indicates that Ghostscript is needed at link time and adds -# it as LIB_DEPENDS. # # If build and run are omitted, Ghostscript will be added as BUILD_DEPENDS and # RUN_DEPENDS. @@ -36,7 +33,7 @@ _GS_ARGS= ${ghostscript_ARGS} -. if ${_GS_ARGS:N9:N10:Nagpl:Nx11:Nbuild:Nrun:Ntest:Nlib} +. if ${_GS_ARGS:N9:N10:Nagpl:Nbuild:Nlib:Nrun:Ntest:Nx11} IGNORE?= Unknown ghostscript argument ${_GS_ARGS} . endif @@ -47,25 +44,25 @@ # Make sure that no dependency or some other environment variable # pollutes the build/run dependency detection .undef _GS_BUILD_DEP +.undef _GS_LIB_DEP .undef _GS_RUN_DEP .undef _GS_TEST_DEP -.undef _GS_LIB_DEP . if ${_GS_ARGS:Mbuild} _GS_BUILD_DEP= yes . endif +. if ${_GS_ARGS:Mlib} +_GS_LIB_DEP= yes +. endif . if ${_GS_ARGS:Mrun} _GS_RUN_DEP= yes . endif . if ${_GS_ARGS:Mtest} _GS_TEST_DEP= yes . endif -. if ${_GS_ARGS:Mlib} -_GS_LIB_DEP= yes -. endif -# The port does not specify a build, run, test, or lib dependency, assume that +# The port does not specify a build, lib, run or test dependency, assume that # a build and run dependency is required. -. if !defined(_GS_BUILD_DEP) && !defined(_GS_RUN_DEP) && !defined(_GS_TEST_DEP) && !defined(_GS_LIB_DEP) +. if !defined(_GS_BUILD_DEP) && !defined(_GS_LIB_DEP) && !defined(_GS_RUN_DEP) && !defined(_GS_TEST_DEP) _GS_BUILD_DEP= yes _GS_RUN_DEP= yes . endif @@ -101,7 +98,7 @@ _GS_PORT= print/ghostscript${_GS_SELECTED}${_GS_FLAVORED:?:-base} _GS_X11_PORT= print/ghostscript${_GS_SELECTED}${_GS_FLAVORED:?@:-}x11 -. for type in BUILD RUN TEST LIB +. for type in BUILD LIB RUN TEST . if defined(_GS_${type}_DEP) . if !defined(_GS_FLAVORED) || !${_GS_ARGS:Mx11} . if ${type:MLIB} Index: Mk/Uses/gstreamer.mk =================================================================== --- Mk/Uses/gstreamer.mk +++ Mk/Uses/gstreamer.mk @@ -33,7 +33,7 @@ #== Component setup -_GST1_VERSION= 1.22.4 +_GST1_VERSION= 1.22.5 _GST1_LIB_VER= 1.0 _GST1_CATEGORIES= audio comms devel ftp graphics multimedia net security \ Index: Mk/Uses/guile.mk =================================================================== --- /dev/null +++ Mk/Uses/guile.mk @@ -0,0 +1,263 @@ +# Provide support for guile +# +# MAINTAINER: ports@FreeBSD.org +# Usage: +# +# USES+= guile[:options,...] +# +# Options: +# +# X.Y specify a Guile version, e.g. 2.2 or 3.0 +# +# flavors define FLAVOR / FLAVORS as guileX from the allowed versions +# +# build add dependency to BUILD_DEPENDS instead of LIB_DEPENDS +# run add dependency to RUN_DEPENDS instead of LIB_DEPENDS +# +# env define only the GUIL[DE]_* vars and add them to PLIST_SUB, +# do not add dependencies or other global state +# +# alias add BINARY_ALIAS for guile tools +# +# conflicts add GUILE_NEWER_PKGS to CONFLICTS_BUILD, this tries to +# ensure that non-clean builds of programs that insist on +# using the latest available version (there are a surprising +# number of these) will fail if the selected version is wrong. +# +# noextra don't add _GUILE_EXTRA_LIB_DEPENDS +# +# nopkgconf don't add to PKGCONFIG_PATHS +# +# nocmds don't add GUILE_*CMD* to CONFIGURE_ENV and MAKE_ENV +# (but still define them) +# +# Variables defined for use by the port: +# +# GUILE_VER e.g. 2.2 +# GUILE_SFX e.g. 2 (be careful, consider the possibility of 3.1) +# GUILE_FLAVOR e.g. guile22 +# GUILE_PORT e.g. lang/guile2 +# GUILE_CMD name of guile binary, e.g. guile-2.2 +# GUILE_*_CMD name of guile-* binary (legacy) +# GUILD_CMD name of guild binary, e.g. guild-2.2 +# GUIL*_CMDPATH full paths of commands +# GUILE_PKGCONFIG_DIR directory for version-specific .pc files +# (relative to PREFIX or LOCALBASE) +# GUILE_PREFIX +# GUILE_GLOBAL_SITE_DIR +# GUILE_SITE_DIR +# GUILE_SITE_CCACHE_DIR +# GUILE_DOCS_DIR where to put version-specific docs +# GUILE_EXAMPLES_DIR where to put version-specific examples +# GUILE_INFO_PATH a suitable value for INFO_PATH +# +# (the _DIR vars are relativized and added to PLIST_SUB without the +# _DIR suffix) +# +.if !defined(_INCLUDE_USES_GUILE_MK) +_INCLUDE_USES_GUILE_MK= yes + +# When adding a version, please keep the comment in +# Mk/bsd.default-versions.mk in sync. +_GUILE_VALID_VERSIONS:= 1.8 2.2 3.0 +. if defined(_GUILE_EXTRA_VER) +_GUILE_VALID_VERSIONS+= ${_GUILE_EXTRA_VER} +. endif + +_GUILE_DEFAULT_VERSION:= ${GUILE_DEFAULT} + +. if ! ${_GUILE_VALID_VERSIONS:M${_GUILE_DEFAULT_VERSION}} +IGNORE= Invalid default Guile version ${GUILE_DEFAULT} +. endif + +# args. Allow a list of numeric versions +_GUILE_ARG_VERSIONS:= ${guile_ARGS:M[1-9].[0-9]} + +# We anticipate which args will be almost universally required +# and define them negatively. In practice "alias" is needed a lot +# thanks to makefile assumptions, but it's intrusive enough that +# we require it to be stated explicitly. +_GUILE_ARG_NAMES:= flavors build run env alias conflicts \ + noextra nopkgconf nocmds + +# Define an 0/1 flag for each arg +. for _v in ${_GUILE_ARG_NAMES} +. if ${_v:Mno*} +_GUILE_ARG_${_v:tu:S/^NO//}:=${"${guile_ARGS:M${_v}}":?0:1} +. else +_GUILE_ARG_${_v:tu}:=${"${guile_ARGS:M${_v}}":?1:0} +. endif +. endfor + +# +# Parse ver arguments +# +# If multiple versions are specified, we are either doing flavors (in +# which case we build them all) or we are supposed to pick just one, in +# which case we pick the default version if it was specified, otherwise +# the highest. +# +_GUILE_CHOSEN_VER:= +_GUILE_REQUESTED_VERS:= + +# check args for validity first +. for _v in ${_GUILE_ARG_VERSIONS} +. if ! ${_GUILE_VALID_VERSIONS:M${_v}} +IGNORE= Invalid Guile version ${_v} +. else +_GUILE_REQUESTED_VERS+= ${_v} +. endif +. endfor + +. if ${_GUILE_ARG_FLAVORS} + +# default to all versions (unlikely in practice) +. if empty(_GUILE_REQUESTED_VERS) +_GUILE_REQUESTED_VERS:= ${_GUILE_VALID_VERSIONS} +. endif + +# Note that we organize the FLAVORS list so that the +# first (default) one corresponds to the default version. +. if empty(FLAVORS) +FLAVORS=${_GUILE_DEFAULT_VERSION:S/.//:S/^/guile/} \ + ${_GUILE_REQUESTED_VERS:N${_GUILE_DEFAULT_VERSION}:S/.//:S/^/guile/} +. endif +# User may have specified this; we must respect that. +. if empty(FLAVOR) +FLAVOR= ${FLAVORS:[1]} +. endif +# Translate the selected (possibly by the user) flavor back to the +# corresponding Guile version. +_GUILE_CHOSEN_VER:= ${FLAVOR:S/^guile//:C/./&./} + +. else # !${_GUILE_ARG_FLAVORS} + +# default to default version +. if empty(_GUILE_REQUESTED_VERS) +_GUILE_REQUESTED_VERS:= ${_GUILE_DEFAULT_VERSION} +. endif + +# Find default version, or highest. (We abuse alphabetic sort here.) +_GUILE_CHOSEN_VER:= ${_GUILE_REQUESTED_VERS:M${_GUILE_DEFAULT_VERSION}} +. if empty(_GUILE_CHOSEN_VER) +_GUILE_CHOSEN_VER:= ${_GUILE_REQUESTED_VERS:O:[-1]} +. endif + +. endif # ${_GUILE_ARG_FLAVORS} + +# _GUILE_CHOSEN_VER is now the desired version in all cases. +# +# The GUILE_VER / GUILE_SFX here is the existing usage, but if a +# version 3.1 comes along, that'll all need to be revisited. (So +# we discourage the use of GUILE_SFX for anything important.) +# +# GUILE_VER= 3.0 (for example) +# GUILE_SFX= 3 +# GUILE_FLAVOR= guile30 +# +# GUILE_OTHER/NEWER_PKGS is defined such that it can be placed in +# CONFLICTS_BUILD for ports that use non-overridable version searches. +# This gives a proper diagnostic for non-clean builds. + +GUILE_VER= ${_GUILE_CHOSEN_VER} +GUILE_SFX= ${_GUILE_CHOSEN_VER:R} + +GUILE_OTHER_PKGS:=${_GUILE_VALID_VERSIONS:@_v@${${_v} != ${_GUILE_CHOSEN_VER}:?guile${_v:R}:}@} +GUILE_NEWER_PKGS:=${_GUILE_VALID_VERSIONS:@_v@${${_v} > ${_GUILE_CHOSEN_VER}:?guile${_v:R}:}@} + +. if ${_GUILE_ARG_CONFLICTS} +CONFLICTS_BUILD+=${GUILE_NEWER_PKGS} +. endif + +GUILE_PORT= lang/guile${GUILE_SFX} +GUILE_FLAVOR= guile${GUILE_VER:S/.//} + +GUILE_PREFIX= ${PREFIX} + +GUILE_GLOBAL_SITE_DIR= ${GUILE_PREFIX}/share/guile/site +GUILE_SITE_DIR= ${GUILE_GLOBAL_SITE_DIR}/${GUILE_VER} +GUILE_SITE_CCACHE_DIR= ${GUILE_PREFIX}/lib/guile/${GUILE_VER}/site-ccache +GUILE_DOCS_DIR= ${GUILE_PREFIX}/share/doc/${GUILE_FLAVOR} +GUILE_EXAMPLES_DIR= ${GUILE_PREFIX}/share/examples/${GUILE_FLAVOR} +GUILE_INFO_PATH= share/info/guile${GUILE_SFX} + +_GUILE_CMDNAMES:= guile guile-snarf guile-config guile-tools +. if ${GUILE_SFX} > 1 +_GUILE_CMDNAMES+= guild +. endif + +. for _c in ${_GUILE_CMDNAMES} +${_c:S/-/_/:tu}_CMD:= ${_c}-${GUILE_VER} +${_c:S/-/_/:tu}_CMDPATH:= ${LOCALBASE}/bin/${_c}-${GUILE_VER} +. endfor + +PLIST_SUB+= GUILE_VER=${GUILE_VER} GUILE_SFX=${GUILE_SFX} \ + GUILE_SITE=${GUILE_SITE_DIR:S,^${GUILE_PREFIX}/,,} \ + GUILE_GLOBAL_SITE=${GUILE_GLOBAL_SITE_DIR:S,^${GUILE_PREFIX}/,,} \ + GUILE_SITE_CCACHE=${GUILE_SITE_CCACHE_DIR:S,^${GUILE_PREFIX}/,,} \ + GUILE_DOCS=${GUILE_DOCS_DIR:S,^${GUILE_PREFIX}/,,} \ + GUILE_EXAMPLES=${GUILE_EXAMPLES_DIR:S,^${GUILE_PREFIX}/,,} + +# This may reduce the need for BINARY_ALIAS +GUILE_ENV= ${_GUILE_CMDNAMES:tu:S/-/_/:@t@${t}=${${t}_CMDPATH}@} + +# XXX XXX XXX +# +# This all assumes that the underlying Guile >= 2 is built with the +# threading option, which is on by default. + +_GUILE_1.8_EXTRA_LIB_DEPENDS= \ + libgmp.so:math/gmp \ + libltdl.so:devel/libltdl +_GUILE_2.2_EXTRA_LIB_DEPENDS= \ + libgc-threaded.so:devel/boehm-gc-threaded +_GUILE_3.0_EXTRA_LIB_DEPENDS= \ + libgc-threaded.so:devel/boehm-gc-threaded + +. if ${_GUILE_ARG_EXTRA} +_GUILE_EXTRA_LIB_DEPENDS= ${_GUILE_${GUILE_VER}_EXTRA_LIB_DEPENDS} +. else +_GUILE_EXTRA_LIB_DEPENDS?= +. endif + +. if !${_GUILE_ARG_ENV} +. if ${_GUILE_ARG_BUILD} +BUILD_DEPENDS+= ${GUILE_CMD}:${GUILE_PORT} +. endif +. if ${_GUILE_ARG_RUN} +RUN_DEPENDS+= ${GUILE_CMD}:${GUILE_PORT} +. endif +. if !${_GUILE_ARG_BUILD} && !${_GUILE_ARG_RUN} +. if ${GUILE_SFX} > 1 +LIB_DEPENDS+= libguile-${GUILE_VER}.so:${GUILE_PORT} ${_GUILE_EXTRA_LIB_DEPENDS} +. else +LIB_DEPENDS+= libguile.so:${GUILE_PORT} ${_GUILE_EXTRA_LIB_DEPENDS} +. endif +. endif +. if ${_GUILE_ARG_CMDS} +. if ${_GUILE_ARG_ALIAS} +# If we're doing binary-alias, then only add GUILE itself to the +# environment, not the build-only tools. This helps when dealing with +# broken configure scripts that respect e.g. GUILE_CONFIG but then +# barf on the output if the program name has a suffix. +CONFIGURE_ENV+= GUILE=${GUILE_CMDPATH} +MAKE_ENV+= GUILE=${GUILE_CMDPATH} +. else +CONFIGURE_ENV+= ${GUILE_ENV} +MAKE_ENV+= ${GUILE_ENV} +. endif +. endif # ${_GUILE_ARG_CMDS} +CONFIGURE_ENV+= GUILE_EFFECTIVE_VERSION=${GUILE_VER} +. endif # !${_GUILE_ARG_ENV} + +. if ${_GUILE_ARG_ALIAS} +BINARY_ALIAS+= ${_GUILE_CMDNAMES:@t@${t}=${${t:tu:S/-/_/}_CMD}@} +. endif + +. if ${_GUILE_ARG_PKGCONF} +GUILE_PKGCONFIG_DIR:= libdata/pkgconfig/guile/${GUILE_VER} +PKGCONFIG_PATHS+= ${LOCALBASE}/${GUILE_PKGCONFIG_DIR} +PLIST_SUB+= GUILE_PKGCONFIG_DIR=${GUILE_PKGCONFIG_DIR} +. endif + +.endif Index: Mk/Uses/kde.mk =================================================================== --- Mk/Uses/kde.mk +++ Mk/Uses/kde.mk @@ -79,14 +79,14 @@ KDE_PLASMA_BRANCH?= stable # Current KDE frameworks. -KDE_FRAMEWORKS_VERSION?= 5.107.0 +KDE_FRAMEWORKS_VERSION?= 5.108.0 KDE_FRAMEWORKS_BRANCH?= stable # Current KDE applications. -KDE_APPLICATIONS_VERSION?= 23.04.2 -KDE_APPLICATIONS_SHLIB_VER?= 5.23.2 +KDE_APPLICATIONS_VERSION?= 23.04.3 +KDE_APPLICATIONS_SHLIB_VER?= 5.23.3 # G as in KDE Gear, and as in "don't make the variable name longer than required" -KDE_APPLICATIONS_SHLIB_G_VER?= 23.4.2 +KDE_APPLICATIONS_SHLIB_G_VER?= 23.4.3 KDE_APPLICATIONS_BRANCH?= stable # Extended KDE universe applications. @@ -134,7 +134,7 @@ GL_SITE= https://invent.kde.org GL_ACCOUNT= ${_invent_category} GL_PROJECT= ${_invent_name} -GL_COMMIT= ${_invent_hash} +GL_TAGNAME= ${_invent_hash} . endif . endif Index: Mk/Uses/meson.mk =================================================================== --- Mk/Uses/meson.mk +++ Mk/Uses/meson.mk @@ -40,6 +40,9 @@ # expose those as port OPTIONS_* or explicitly pass -D