aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew "RhodiumToad" Gierth <andrew@tao11.riddles.org.uk>2023-07-28 13:23:52 +0000
committerRobert Clausecker <fuz@FreeBSD.org>2023-07-30 22:59:04 +0000
commit7edcfaeb079e3285b299ef619ab9d09d46c447a2 (patch)
tree3aa03f1a42143eedfb04a096e0f11544e99d5b51
parent94218d3a91189c7afea956e8905d5e5ecf879a2c (diff)
downloadports-7edcfaeb079e3285b299ef619ab9d09d46c447a2.tar.gz
ports-7edcfaeb079e3285b299ef619ab9d09d46c447a2.zip
*/*: adapt to new guile framework
- change all ports using guile to USES=guile - flavorize guile-lib, guile-cairo, slib-guile PR: 260960 Reported by: Martin Neubauer <m.ne@gmx.net> Approved by: bofh Differential Revision: https://reviews.freebsd.org/D40194
-rw-r--r--audio/denemo/Makefile11
-rw-r--r--audio/zplugins-lv2/Makefile3
-rw-r--r--audio/zrythm/Makefile6
-rw-r--r--cad/geda/Makefile12
-rw-r--r--cad/lepton-eda/Makefile9
-rw-r--r--devel/autogen/Makefile6
-rw-r--r--devel/g-wrap/Makefile19
-rw-r--r--devel/g-wrap/pkg-plist38
-rw-r--r--devel/gdb/Makefile11
-rw-r--r--devel/guile-lib/Makefile22
-rw-r--r--devel/guile-lib/files/patch-configure11
-rw-r--r--devel/guile-lib/pkg-plist122
-rw-r--r--devel/libmatheval/Makefile9
-rw-r--r--devel/libruin/Makefile10
-rw-r--r--editors/texmacs/Makefile10
-rw-r--r--finance/gnucash/Makefile7
-rw-r--r--games/aisleriot/Makefile14
-rw-r--r--games/fmars/Makefile6
-rw-r--r--games/gnubik/Makefile8
-rw-r--r--games/gnurobots/Makefile6
-rw-r--r--games/gnurobots/files/patch-configure11
-rw-r--r--games/gnurobots/files/patch-configure.ac11
-rw-r--r--games/trackballs/Makefile6
-rw-r--r--graphics/graphviz/Makefile3
-rw-r--r--graphics/guile-cairo/Makefile45
-rw-r--r--graphics/guile-cairo/distinfo6
-rw-r--r--graphics/guile-cairo/files/extra-patch-upstream-fixes.patch439
-rw-r--r--graphics/guile-cairo/files/patch-guile-cairo.pc.in9
-rw-r--r--graphics/guile-cairo/pkg-plist27
-rw-r--r--irc/weechat/Makefile3
-rw-r--r--irc/weechat/pkg-plist1
-rw-r--r--lang/Makefile2
-rw-r--r--lang/mdk/Makefile5
-rw-r--r--lang/slib-guile/Makefile17
-rw-r--r--lang/slib-guile/files/pkg-deinstall.in4
-rw-r--r--lang/slib-guile/files/pkg-install.in4
-rw-r--r--lang/slib-guile1/Makefile20
-rw-r--r--lang/slib-guile1/files/pkg-deinstall.in8
-rw-r--r--lang/slib-guile1/files/pkg-install.in8
-rw-r--r--lang/slib-guile1/pkg-descr4
-rw-r--r--lang/slib-guile2/Makefile20
-rw-r--r--lang/slib-guile2/files/pkg-deinstall.in8
-rw-r--r--lang/slib-guile2/files/pkg-install.in8
-rw-r--r--lang/slib-guile2/pkg-descr4
-rw-r--r--mail/anubis/Makefile6
-rw-r--r--mail/anubis/files/patch-src_Makefile.am9
-rw-r--r--mail/mailutils/Makefile4
-rw-r--r--mail/mu/Makefile4
-rw-r--r--math/drgeo/Makefile8
-rw-r--r--math/drgeo/files/patch-geo_Makefile.in12
-rw-r--r--math/nlopt/Makefile7
-rw-r--r--net-im/freetalk/Makefile9
-rw-r--r--net/dico/Makefile6
-rw-r--r--net/gnu-radius/Makefile4
-rw-r--r--net/serveez/Makefile6
-rw-r--r--print/lilypond-devel/Makefile6
-rw-r--r--print/lilypond/Makefile13
-rw-r--r--science/harminv/Makefile4
-rw-r--r--science/libctl/Makefile7
-rw-r--r--science/mpb/Makefile6
-rw-r--r--sysutils/mcron/Makefile9
-rw-r--r--textproc/scss/Makefile2
-rw-r--r--textproc/sdom/Makefile7
-rw-r--r--www/elinks/Makefile3
-rw-r--r--www/guile-www/Makefile4
-rw-r--r--x11-toolkits/guile-gnome-platform/Makefile22
-rw-r--r--x11-toolkits/guile-gnome-platform/pkg-plist2
-rw-r--r--x11/xbindkeys/Makefile7
-rw-r--r--x11/xbindkeys/distinfo5
69 files changed, 804 insertions, 381 deletions
diff --git a/audio/denemo/Makefile b/audio/denemo/Makefile
index 4ff869e9e2a0..845053932cef 100644
--- a/audio/denemo/Makefile
+++ b/audio/denemo/Makefile
@@ -1,6 +1,6 @@
PORTNAME= denemo
PORTVERSION= 2.0.6
-PORTREVISION= 17
+PORTREVISION= 18
CATEGORIES= audio
MASTER_SITES= GNU
@@ -19,7 +19,10 @@ LIB_DEPENDS= libaubio.so:audio/aubio \
libsndfile.so:audio/libsndfile \
libportaudio.so:audio/portaudio \
librubberband.so:audio/rubberband \
- libguile.so:lang/guile1 \
+ libharfbuzz.so:print/harfbuzz \
+ libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2 \
+ libsamplerate.so:audio/libsamplerate \
libfftw3.so:math/fftw3
RUN_DEPENDS= xdg-open:devel/xdg-utils
@@ -27,8 +30,8 @@ EXTRACT_BEFORE_ARGS=\
-s '!\(/Clarinet in B\).*\(\.denemo\)$$!\1b\2!p' -xf
USES= bison:alias compiler:c++11-lang desktop-file-utils gettext gmake \
- gnome localbase:ldflags pkgconfig
-USE_GNOME= intltool librsvg2 libxml2
+ gnome guile:1.8 localbase:ldflags pkgconfig
+USE_GNOME= cairo intltool librsvg2 libxml2
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-jack \
--disable-alsa \
diff --git a/audio/zplugins-lv2/Makefile b/audio/zplugins-lv2/Makefile
index 4713f5319402..1cc593f19424 100644
--- a/audio/zplugins-lv2/Makefile
+++ b/audio/zplugins-lv2/Makefile
@@ -15,12 +15,11 @@ LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= lv2>0:audio/lv2 \
bash:shells/bash \
gmake:devel/gmake \
- guile2>0:lang/guile2 \
${LOCALBASE}/lib/libztoolkit.a:x11-toolkits/ztoolkit
LIB_DEPENDS= liblo.so:audio/liblo \
libsndfile.so:audio/libsndfile
-USES= gnome meson pkgconfig xorg
+USES= gnome guile:2.2,3.0,build,alias meson pkgconfig xorg
USE_GNOME= cairo glib20 librsvg2
USE_XORG= x11
diff --git a/audio/zrythm/Makefile b/audio/zrythm/Makefile
index d056edc0b2cd..e591b392969a 100644
--- a/audio/zrythm/Makefile
+++ b/audio/zrythm/Makefile
@@ -1,7 +1,7 @@
PORTNAME= zrythm
DISTVERSIONPREFIX= v
DISTVERSION= 1.0.0-alpha.26.0.13
-PORTREVISION= 7
+PORTREVISION= 8
CATEGORIES= audio
MAINTAINER= yuri@FreeBSD.org
@@ -23,7 +23,6 @@ LIB_DEPENDS= libaudec.so:audio/libaudec \
libcurl.so:ftp/curl \
libfftw3_threads.so:math/fftw3 \
libfftw3f_threads.so:math/fftw3-float \
- libguile-2.2.so:lang/guile2 \
libjack.so:audio/jack \
libjson-glib-1.0.so:devel/json-glib \
liblilv-0.so:audio/lilv \
@@ -48,7 +47,8 @@ LIB_DEPENDS= libaudec.so:audio/libaudec \
RUN_DEPENDS= gsettings-desktop-schemas>=0:devel/gsettings-desktop-schemas \
kf5-breeze-icons>0:x11-themes/kf5-breeze-icons
-USES= compiler:c11 desktop-file-utils gettext-tools gettext-runtime gnome libtool localbase:ldflags \
+USES= compiler:c11 desktop-file-utils gettext-tools gettext-runtime \
+ guile:2.2,3.0,alias,conflicts gnome libtool localbase:ldflags \
meson pkgconfig python:build shared-mime-info shebangfix xorg
USE_GITHUB= yes
USE_GNOME= atk cairo gdkpixbuf2 glib20 gtk30 gtksourceview3 libxml2 pango
diff --git a/cad/geda/Makefile b/cad/geda/Makefile
index 654882bf539b..2f140bc1afd6 100644
--- a/cad/geda/Makefile
+++ b/cad/geda/Makefile
@@ -1,7 +1,7 @@
PORTNAME= geda
PORTVERSION= 1.8.2
DISTVERSIONPREFIX=gaf-
-PORTREVISION= 7
+PORTREVISION= 8
PORTEPOCH= 1
CATEGORIES= cad
MASTER_SITES= http://ftp.geda-project.org/${PORTNAME}-gaf/stable/v${PORTVERSION:R}/${PORTVERSION}/
@@ -12,12 +12,12 @@ WWW= http://www.gpleda.org/
LICENSE= GPLv2+
-LIB_DEPENDS= libstroke.so:devel/libstroke \
- libguile.so:lang/guile1
-RUN_DEPENDS= gawk:lang/gawk\
+LIB_DEPENDS= libstroke.so:devel/libstroke
+RUN_DEPENDS= gawk:lang/gawk
-USES= desktop-file-utils gettext gmake gnome libtool pathfix perl5 \
- pkgconfig python:run shared-mime-info shebangfix
+USES= desktop-file-utils gettext gmake gnome guile:1.8 libtool \
+ pathfix perl5 pkgconfig python:run shared-mime-info \
+ shebangfix
SHEBANG_FILES= examples/lightning_detector/bom libgeda/docs/*.dox \
utils/gxyrs/*.pl utils/scripts/* \
utils/docs/*.dox gattrib/docs/*.dox \
diff --git a/cad/lepton-eda/Makefile b/cad/lepton-eda/Makefile
index 578832b9799e..520f2dd386aa 100644
--- a/cad/lepton-eda/Makefile
+++ b/cad/lepton-eda/Makefile
@@ -1,6 +1,6 @@
PORTNAME= lepton-eda
PORTVERSION= 1.9.18
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= cad
MASTER_SITES= https://github.com/lepton-eda/lepton-eda/releases/download/${PORTVERSION}-20220529/
@@ -15,12 +15,10 @@ LIB_DEPENDS= libexpat.so:textproc/expat2 \
libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2 \
libfribidi.so:converters/fribidi \
- libgc-threaded.so:devel/boehm-gc-threaded \
libGLdispatch.so:graphics/libglvnd \
libgmp.so:math/gmp \
libgraphite2.so:graphics/graphite2 \
libgtkextra-x11-3.0.so:x11-toolkits/gtkextra \
- libguile-2.2.so:lang/guile2 \
libharfbuzz.so:print/harfbuzz \
libltdl.so:devel/libltdl \
libpcre.so:devel/pcre \
@@ -29,8 +27,9 @@ LIB_DEPENDS= libexpat.so:textproc/expat2 \
libunistring.so:devel/libunistring
USES= desktop-file-utils gettext-tools gnome groff:build \
- iconv:wchar_t libtool localbase makeinfo pathfix perl5 \
- pkgconfig shared-mime-info shebangfix xorg
+ guile:2.2,3.0,conflicts iconv:wchar_t libtool localbase \
+ makeinfo pathfix perl5 pkgconfig shared-mime-info shebangfix \
+ xorg
USE_XORG= pixman x11 xau xcb xcomposite xcursor xdamage xdmcp xext xfixes \
xi xinerama xrandr xrender
USE_GNOME= cairo gdkpixbuf2 gtk20
diff --git a/devel/autogen/Makefile b/devel/autogen/Makefile
index c78dbb524ee4..f280310e28d7 100644
--- a/devel/autogen/Makefile
+++ b/devel/autogen/Makefile
@@ -1,6 +1,6 @@
PORTNAME= autogen
PORTVERSION= 5.18.16
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= devel
MASTER_SITES= GNU/autogen/rel${PORTVERSION}
@@ -13,10 +13,10 @@ LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= ${RUN_DEPENDS} \
gmktemp:sysutils/coreutils
-LIB_DEPENDS= libguile-2.2.so:lang/guile2
RUN_DEPENDS= bash:shells/bash
-USES= gmake gnome libtool pathfix perl5 pkgconfig shebangfix tar:xz
+USES= gmake gnome guile:2.2 libtool pathfix perl5 pkgconfig \
+ shebangfix tar:xz
USE_GNOME= libxml2
USE_PERL5= build
diff --git a/devel/g-wrap/Makefile b/devel/g-wrap/Makefile
index abf5e8fc46f8..5052aa79e9ff 100644
--- a/devel/g-wrap/Makefile
+++ b/devel/g-wrap/Makefile
@@ -1,6 +1,6 @@
PORTNAME= g-wrap
DISTVERSION= 1.9.15
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel
MASTER_SITES= SAVANNAH
@@ -10,22 +10,23 @@ WWW= https://www.nongnu.org/g-wrap/
LICENSE= LGPL21+
-LIB_DEPENDS= libffi.so:devel/libffi \
- libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded
-BUILD_DEPENDS= guile2>=2.2:lang/guile2
+LIB_DEPENDS+= libffi.so:devel/libffi
-USES= gmake gnome libtool pkgconfig
+USES= gmake gnome guile:2.2 libtool pkgconfig
USE_GNOME= glib20
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS+=--disable-Werror
-INFO= g-wrap
-
+MAKE_JOBS_UNSAFE=yes
INSTALL_TARGET= install-strip
-MAKE_JOBS_UNSAFE=yes
+INFO= g-wrap
+
+# DO NOT try and add rules here to strip .go files, no matter how loudly
+# testport / stage-qa shouts at you about it, because .go files (which are
+# compiled bytecode) are not intended to be stripped and doing so causes
+# breakage at run time.
.include <bsd.port.mk>
diff --git a/devel/g-wrap/pkg-plist b/devel/g-wrap/pkg-plist
index 49c82e32d9e3..3de50a57a934 100644
--- a/devel/g-wrap/pkg-plist
+++ b/devel/g-wrap/pkg-plist
@@ -24,22 +24,22 @@ lib/libgwrap-guile-runtime.so.2.0.0
libdata/pkgconfig/g-wrap-2.0-guile.pc
man/man1/g-wrap-config.1.gz
share/aclocal/g-wrap.m4
-share/guile/site/g-wrap.scm
-share/guile/site/g-wrap/c-codegen.scm
-share/guile/site/g-wrap/c-types.scm
-share/guile/site/g-wrap/compat.scm
-share/guile/site/g-wrap/config.scm
-share/guile/site/g-wrap/enumeration.scm
-share/guile/site/g-wrap/guile.scm
-share/guile/site/g-wrap/guile/ws/standard.scm
-share/guile/site/g-wrap/gw-glib-spec.scm
-share/guile/site/g-wrap/gw-glib.scm
-share/guile/site/g-wrap/gw-standard-spec.scm
-share/guile/site/g-wrap/gw-wct-spec.scm
-share/guile/site/g-wrap/gw-wct.scm
-share/guile/site/g-wrap/gw/standard.scm
-share/guile/site/g-wrap/rti.scm
-share/guile/site/g-wrap/scm-codegen.scm
-share/guile/site/g-wrap/simple-type.scm
-share/guile/site/g-wrap/util.scm
-share/guile/site/g-wrap/ws/standard.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/c-codegen.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/c-types.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/compat.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/config.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/enumeration.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/guile.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/guile/ws/standard.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/gw-glib-spec.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/gw-glib.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/gw-standard-spec.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/gw-wct-spec.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/gw-wct.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/gw/standard.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/rti.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/scm-codegen.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/simple-type.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/util.scm
+%%GUILE_GLOBAL_SITE%%/g-wrap/ws/standard.scm
diff --git a/devel/gdb/Makefile b/devel/gdb/Makefile
index af9ffb8a9eb3..378ed1e197ca 100644
--- a/devel/gdb/Makefile
+++ b/devel/gdb/Makefile
@@ -1,6 +1,6 @@
PORTNAME= gdb
DISTVERSION= 13.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel
MASTER_SITES= GNU
@@ -67,8 +67,8 @@ XXHASH_DESC= Use xxHash for hashing (faster)
OPTIONS_SUB= yes
BUNDLED_READLINE_CONFIGURE_OFF= --with-system-readline
-GUILE_CONFIGURE_WITH= guile
-GUILE_LIB_DEPENDS= libguile-2.2.so:lang/guile2
+GUILE_CONFIGURE_WITH= guile=guile-${GUILE_VER}
+GUILE_USES= guile:2.2,3.0
NLS_USES= gettext-runtime
PORT_READLINE_USES= readline
PORT_ICONV_USES= iconv:wchar_t
@@ -176,6 +176,11 @@ do-install-PYTHON-on:
${PYTHON_CMD} -m compileall .)
.endif
+# DO NOT try and add rules here to strip .go files, no matter how loudly
+# testport / stage-qa shouts at you about it, because .go files (which are
+# compiled bytecode) are not intended to be stripped and doing so causes
+# breakage at run time.
+
do-install-GUILE-on:
(cd ${INSTALL_WRKSRC}/gdb ; \
${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile )
diff --git a/devel/guile-lib/Makefile b/devel/guile-lib/Makefile
index 8f89bea2a8ee..3172205d09e6 100644
--- a/devel/guile-lib/Makefile
+++ b/devel/guile-lib/Makefile
@@ -1,7 +1,9 @@
PORTNAME= guile-lib
PORTVERSION= 0.2.7
+PORTREVISION= 1
CATEGORIES= devel scheme
MASTER_SITES= SAVANNAH
+PKGNAMESUFFIX= -${FLAVOR}
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= Repository of useful code written in Guile Scheme
@@ -10,14 +12,24 @@ WWW= https://www.nongnu.org/guile-lib/
LICENSE= LGPL3 GPLv3
LICENSE_COMB= multi
-BUILD_DEPENDS= guile2>=2.0.12:lang/guile2
-LIB_DEPENDS= libguile-2.2.so:lang/guile2
-
-USES= gmake pkgconfig
-
+USES= guile:2.2,3.0,flavors,build,run \
+ gmake pkgconfig
GNU_CONFIGURE= yes
+CONFIGURE_ARGS+=--with-guile-site
+
TEST_TARGET= check
INFO= guile-library
+INFO_PATH= ${GUILE_INFO_PATH}
+
+# DO NOT try and add rules here to strip .go files, no matter how loudly
+# testport / stage-qa shouts at you about it, because .go files (which are
+# compiled bytecode) are not intended to be stripped and doing so causes
+# breakage at run time.
+
+post-install:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/${GUILE_PKGCONFIG_DIR}
+ ${MV} ${STAGEDIR}${PREFIX}/libdata/pkgconfig/*.pc \
+ ${STAGEDIR}${PREFIX}/${GUILE_PKGCONFIG_DIR}/
.include <bsd.port.mk>
diff --git a/devel/guile-lib/files/patch-configure b/devel/guile-lib/files/patch-configure
new file mode 100644
index 000000000000..b7be6449e266
--- /dev/null
+++ b/devel/guile-lib/files/patch-configure
@@ -0,0 +1,11 @@
+--- configure.orig 2023-05-20 13:27:01 UTC
++++ configure
+@@ -4950,7 +4950,7 @@ fi
+
+
+ if test "x$guile_site" = "xyes"; then
+- SITEDIR="$GUILE_GLOBAL_SITE";
++ SITEDIR="$GUILE_SITE";
+ SITECCACHEDIR="$GUILE_SITE_CCACHE";
+ else
+ SITEDIR="$datadir/guile-lib";
diff --git a/devel/guile-lib/pkg-plist b/devel/guile-lib/pkg-plist
index 17e390e3b663..dd9216a5782b 100644
--- a/devel/guile-lib/pkg-plist
+++ b/devel/guile-lib/pkg-plist
@@ -1,61 +1,61 @@
-lib/guile-lib/guile/2.2/site-ccache/apicheck.go
-lib/guile-lib/guile/2.2/site-ccache/compat/guile-2.go
-lib/guile-lib/guile/2.2/site-ccache/config/load.go
-lib/guile-lib/guile/2.2/site-ccache/container/async-queue.go
-lib/guile-lib/guile/2.2/site-ccache/container/delay-tree.go
-lib/guile-lib/guile/2.2/site-ccache/container/nodal-tree.go
-lib/guile-lib/guile/2.2/site-ccache/debugging/assert.go
-lib/guile-lib/guile/2.2/site-ccache/debugging/time.go
-lib/guile-lib/guile/2.2/site-ccache/graph/topological-sort.go
-lib/guile-lib/guile/2.2/site-ccache/htmlprag.go
-lib/guile-lib/guile/2.2/site-ccache/io/string.go
-lib/guile-lib/guile/2.2/site-ccache/logging/logger.go
-lib/guile-lib/guile/2.2/site-ccache/logging/port-log.go
-lib/guile-lib/guile/2.2/site-ccache/logging/rotating-log.go
-lib/guile-lib/guile/2.2/site-ccache/match-bind.go
-lib/guile-lib/guile/2.2/site-ccache/math/minima.go
-lib/guile-lib/guile/2.2/site-ccache/math/primes.go
-lib/guile-lib/guile/2.2/site-ccache/md5.go
-lib/guile-lib/guile/2.2/site-ccache/os/process.go
-lib/guile-lib/guile/2.2/site-ccache/scheme/documentation.go
-lib/guile-lib/guile/2.2/site-ccache/scheme/kwargs.go
-lib/guile-lib/guile/2.2/site-ccache/search/basic.go
-lib/guile-lib/guile/2.2/site-ccache/string/completion.go
-lib/guile-lib/guile/2.2/site-ccache/string/soundex.go
-lib/guile-lib/guile/2.2/site-ccache/string/transform.go
-lib/guile-lib/guile/2.2/site-ccache/string/wrap.go
-lib/guile-lib/guile/2.2/site-ccache/term/ansi-color.go
-lib/guile-lib/guile/2.2/site-ccache/texinfo/nodal-tree.go
-lib/guile-lib/guile/2.2/site-ccache/text/parse-lalr.go
-lib/guile-lib/guile/2.2/site-ccache/unit-test.go
-libdata/pkgconfig/guile-lib-1.0.pc
-%%DATADIR%%/apicheck.scm
-%%DATADIR%%/compat/guile-2.scm
-%%DATADIR%%/config/load.scm
-%%DATADIR%%/container/async-queue.scm
-%%DATADIR%%/container/delay-tree.scm
-%%DATADIR%%/container/nodal-tree.scm
-%%DATADIR%%/debugging/assert.scm
-%%DATADIR%%/debugging/time.scm
-%%DATADIR%%/graph/topological-sort.scm
-%%DATADIR%%/htmlprag.scm
-%%DATADIR%%/io/string.scm
-%%DATADIR%%/logging/logger.scm
-%%DATADIR%%/logging/port-log.scm
-%%DATADIR%%/logging/rotating-log.scm
-%%DATADIR%%/match-bind.scm
-%%DATADIR%%/math/minima.scm
-%%DATADIR%%/math/primes.scm
-%%DATADIR%%/md5.scm
-%%DATADIR%%/os/process.scm
-%%DATADIR%%/scheme/documentation.scm
-%%DATADIR%%/scheme/kwargs.scm
-%%DATADIR%%/search/basic.scm
-%%DATADIR%%/string/completion.scm
-%%DATADIR%%/string/soundex.scm
-%%DATADIR%%/string/transform.scm
-%%DATADIR%%/string/wrap.scm
-%%DATADIR%%/term/ansi-color.scm
-%%DATADIR%%/texinfo/nodal-tree.scm
-%%DATADIR%%/text/parse-lalr.scm
-%%DATADIR%%/unit-test.scm
+%%GUILE_SITE_CCACHE%%/apicheck.go
+%%GUILE_SITE_CCACHE%%/compat/guile-2.go
+%%GUILE_SITE_CCACHE%%/config/load.go
+%%GUILE_SITE_CCACHE%%/container/async-queue.go
+%%GUILE_SITE_CCACHE%%/container/delay-tree.go
+%%GUILE_SITE_CCACHE%%/container/nodal-tree.go
+%%GUILE_SITE_CCACHE%%/debugging/assert.go
+%%GUILE_SITE_CCACHE%%/debugging/time.go
+%%GUILE_SITE_CCACHE%%/graph/topological-sort.go
+%%GUILE_SITE_CCACHE%%/htmlprag.go
+%%GUILE_SITE_CCACHE%%/io/string.go
+%%GUILE_SITE_CCACHE%%/logging/logger.go
+%%GUILE_SITE_CCACHE%%/logging/port-log.go
+%%GUILE_SITE_CCACHE%%/logging/rotating-log.go
+%%GUILE_SITE_CCACHE%%/match-bind.go
+%%GUILE_SITE_CCACHE%%/math/minima.go
+%%GUILE_SITE_CCACHE%%/math/primes.go
+%%GUILE_SITE_CCACHE%%/md5.go
+%%GUILE_SITE_CCACHE%%/os/process.go
+%%GUILE_SITE_CCACHE%%/scheme/documentation.go
+%%GUILE_SITE_CCACHE%%/scheme/kwargs.go
+%%GUILE_SITE_CCACHE%%/search/basic.go
+%%GUILE_SITE_CCACHE%%/string/completion.go
+%%GUILE_SITE_CCACHE%%/string/soundex.go
+%%GUILE_SITE_CCACHE%%/string/transform.go
+%%GUILE_SITE_CCACHE%%/string/wrap.go
+%%GUILE_SITE_CCACHE%%/term/ansi-color.go
+%%GUILE_SITE_CCACHE%%/texinfo/nodal-tree.go
+%%GUILE_SITE_CCACHE%%/text/parse-lalr.go
+%%GUILE_SITE_CCACHE%%/unit-test.go
+%%GUILE_PKGCONFIG_DIR%%/guile-lib-1.0.pc
+%%GUILE_SITE%%/apicheck.scm
+%%GUILE_SITE%%/compat/guile-2.scm
+%%GUILE_SITE%%/config/load.scm
+%%GUILE_SITE%%/container/async-queue.scm
+%%GUILE_SITE%%/container/delay-tree.scm
+%%GUILE_SITE%%/container/nodal-tree.scm
+%%GUILE_SITE%%/debugging/assert.scm
+%%GUILE_SITE%%/debugging/time.scm
+%%GUILE_SITE%%/graph/topological-sort.scm
+%%GUILE_SITE%%/htmlprag.scm
+%%GUILE_SITE%%/io/string.scm
+%%GUILE_SITE%%/logging/logger.scm
+%%GUILE_SITE%%/logging/port-log.scm
+%%GUILE_SITE%%/logging/rotating-log.scm
+%%GUILE_SITE%%/match-bind.scm
+%%GUILE_SITE%%/math/minima.scm
+%%GUILE_SITE%%/math/primes.scm
+%%GUILE_SITE%%/md5.scm
+%%GUILE_SITE%%/os/process.scm
+%%GUILE_SITE%%/scheme/documentation.scm
+%%GUILE_SITE%%/scheme/kwargs.scm
+%%GUILE_SITE%%/search/basic.scm
+%%GUILE_SITE%%/string/completion.scm
+%%GUILE_SITE%%/string/soundex.scm
+%%GUILE_SITE%%/string/transform.scm
+%%GUILE_SITE%%/string/wrap.scm
+%%GUILE_SITE%%/term/ansi-color.scm
+%%GUILE_SITE%%/texinfo/nodal-tree.scm
+%%GUILE_SITE%%/text/parse-lalr.scm
+%%GUILE_SITE%%/unit-test.scm
diff --git a/devel/libmatheval/Makefile b/devel/libmatheval/Makefile
index 910612e39771..f318e7a14058 100644
--- a/devel/libmatheval/Makefile
+++ b/devel/libmatheval/Makefile
@@ -1,6 +1,6 @@
PORTNAME= libmatheval
PORTVERSION= 1.1.11
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= devel math
MASTER_SITES= GNU
@@ -12,11 +12,12 @@ LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= flex>=2.5.39_1:textproc/flex
-LIB_DEPENDS= libguile.so:lang/guile1
-USES= libtool localbase makeinfo pathfix
+USES= guile:1.8 libtool localbase makeinfo \
+ pathfix
GNU_CONFIGURE= yes
-CONFIGURE_ENV= LEXLIB=-lfl MAKEINFO="${MAKEINFO} --no-split"
+CONFIGURE_ENV= LEXLIB=-lfl MAKEINFO="${MAKEINFO} --no-split" \
+ ac_cv_type_scm_t_bits=yes
USE_LDCONFIG= yes
INSTALL_TARGET= install-strip
diff --git a/devel/libruin/Makefile b/devel/libruin/Makefile
index 6f005cda8b20..4e3a47d818b7 100644
--- a/devel/libruin/Makefile
+++ b/devel/libruin/Makefile
@@ -1,6 +1,6 @@
PORTNAME= libruin
PORTVERSION= 0.2.0
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= devel scheme
MASTER_SITES= SAVANNAH
@@ -14,14 +14,12 @@ LICENSE_FILE= ${WRKSRC}/COPYING
NOT_FOR_ARCHS= mips
NOT_FOR_ARCHS_REASON= glib needs GCC (not available for mips)
-BUILD_DEPENDS= guile-lib>0:devel/guile-lib
-LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded
-RUN_DEPENDS= guile-lib>0:devel/guile-lib
+BUILD_DEPENDS= guile-lib-${GUILE_FLAVOR}>0:devel/guile-lib@${GUILE_FLAVOR}
+RUN_DEPENDS= guile-lib-${GUILE_FLAVOR}>0:devel/guile-lib@${GUILE_FLAVOR}
GNU_CONFIGURE= yes
INSTALL_TARGET= install-strip
-USES= gnome libtool ncurses pkgconfig
+USES= gnome guile:2.2,alias libtool ncurses pkgconfig
USE_GNOME= glib20
USE_LDCONFIG= yes
diff --git a/editors/texmacs/Makefile b/editors/texmacs/Makefile
index 7e276b3463c4..ee08c42cdfda 100644
--- a/editors/texmacs/Makefile
+++ b/editors/texmacs/Makefile
@@ -1,6 +1,6 @@
PORTNAME= texmacs
PORTVERSION= 1.99.4
-PORTREVISION= 5
+PORTREVISION= 6
CATEGORIES= editors print
MASTER_SITES= http://www.texmacs.org/Download/ftp/tmftp/source/
DISTNAME= TeXmacs-${PORTVERSION}-src
@@ -15,16 +15,14 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN_FreeBSD_13= assigning to 'bool' from incompatible type 'nullptr_t'
BROKEN_FreeBSD_14= assigning to 'bool' from incompatible type 'nullptr_t'
-LIB_DEPENDS= libltdl.so:devel/libltdl \
- libguile.so:lang/guile1 \
- libgmp.so:math/gmp
RUN_DEPENDS= fig2dev:print/transfig
BROKEN_armv6= fails to compile: call to min is ambiguous
BROKEN_armv7= fails to compile: call to min is ambiguous
-USES= cpe desktop-file-utils gmake iconv localbase pkgconfig python \
- shared-mime-info shebangfix tex xorg
+USES= cpe desktop-file-utils gmake guile:1.8,alias iconv \
+ localbase pkgconfig python shared-mime-info shebangfix \
+ tex xorg
USE_TEX= tex:run dvipsk:run
USE_XORG= xext
GNU_CONFIGURE= yes
diff --git a/finance/gnucash/Makefile b/finance/gnucash/Makefile
index 2bb396adcf90..fc0008d16227 100644
--- a/finance/gnucash/Makefile
+++ b/finance/gnucash/Makefile
@@ -1,5 +1,6 @@
PORTNAME= gnucash
PORTVERSION= 5.3
+PORTREVISION= 1
CATEGORIES= finance gnome
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}%20%28stable%29/${PORTVERSION}
@@ -18,8 +19,6 @@ LIB_DEPENDS= libgnome-keyring.so:security/libgnome-keyring \
libfreetype.so:print/freetype2 \
libsecret-1.so:security/libsecret \
libsoup-2.4.so:devel/libsoup \
- libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded \
libboost_date_time.so:devel/boost-libs \
libicudata.so:devel/icu\
libharfbuzz.so:print/harfbuzz
@@ -29,8 +28,8 @@ RUN_DEPENDS= p5-libwww>=0:www/p5-libwww \
p5-LWP-Protocol-https>=0:www/p5-LWP-Protocol-https
USES= cmake:insource compiler:c++11-lib cpe desktop-file-utils \
- gettext-tools gnome libtool localbase perl5 pkgconfig \
- shebangfix tar:bzip2 xorg
+ gettext-tools gnome guile:2.2,3.0,conflicts libtool localbase \
+ perl5 pkgconfig shebangfix tar:bzip2 xorg
USE_XORG= x11
USE_CXXSTD= c++11
USE_GNOME= cairo gdkpixbuf2 gtk30 intltool libxml2 libxslt
diff --git a/games/aisleriot/Makefile b/games/aisleriot/Makefile
index 4d9d6eca68d6..18ef19bd325a 100644
--- a/games/aisleriot/Makefile
+++ b/games/aisleriot/Makefile
@@ -1,6 +1,6 @@
PORTNAME= aisleriot
DISTVERSION= 3.22.25
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= games gnome
DIST_SUBDIR= gnome
@@ -12,16 +12,14 @@ LICENSE= GPLv3
BUILD_DEPENDS= itstool:textproc/itstool \
bash:shells/bash
-LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libcanberra.so:audio/libcanberra \
- libcanberra-gtk3.so:audio/libcanberra-gtk3 \
- libgc-threaded.so:devel/boehm-gc-threaded
+LIB_DEPENDS= libcanberra.so:audio/libcanberra \
+ libcanberra-gtk3.so:audio/libcanberra-gtk3
CONFLICTS_INSTALL= sol
PORTSCOUT= limitw:1,even
-USES= desktop-file-utils gettext meson gnome pkgconfig \
- python:build shebangfix xorg
+USES= desktop-file-utils gettext meson gnome guile:2.2,3.0 \
+ pkgconfig python:build shebangfix xorg
USE_GITLAB= yes
USE_GNOME= cairo gtk30 intlhack librsvg2 libxml2:build
USE_XORG= x11
@@ -30,7 +28,7 @@ GL_SITE= https://gitlab.gnome.org/
GL_ACCOUNT= GNOME
GL_TAGNAME= 8a4542d2f44ee1425a56ac7595ed51449ae0290e
-MESON_ARGS= -Dtheme_kde=false
+MESON_ARGS= -Dtheme_kde=false -Dguile=${GUILE_VER}
SHEBANG_FILES= data/icons/meson_updateiconcache.py \
data/meson_desktopfile.py \
src/lib/meson_compileschemas.py \
diff --git a/games/fmars/Makefile b/games/fmars/Makefile
index 29713f90abb2..a016c4fbcb92 100644
--- a/games/fmars/Makefile
+++ b/games/fmars/Makefile
@@ -1,6 +1,6 @@
PORTNAME= fmars
PORTVERSION= 0.0.207
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= games
MASTER_SITES= http://corewar.co.uk/janeczek/
@@ -10,9 +10,7 @@ WWW= https://corewar.co.uk/janeczek/
LICENSE= GPLv2
-BUILD_DEPENDS= guile:lang/guile1
-
-USES= gmake tar:bzip2
+USES= gmake guile:1.8,build,alias tar:bzip2
ALL_TARGET= x${PORTNAME}
OPTIONS_DEFINE= DOCS OPTIMIZED_CFLAGS
diff --git a/games/gnubik/Makefile b/games/gnubik/Makefile
index b66d7e7bea1e..899d0010318a 100644
--- a/games/gnubik/Makefile
+++ b/games/gnubik/Makefile
@@ -1,6 +1,6 @@
PORTNAME= gnubik
PORTVERSION= 2.4.3
-PORTREVISION= 6
+PORTREVISION= 7
CATEGORIES= games
MASTER_SITES= GNU
@@ -11,11 +11,11 @@ WWW= https://www.gnu.org/software/gnubik/
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgtkglext-x11-1.0.so:x11-toolkits/gtkglext
+LIB_DEPENDS= libgtkglext-x11-1.0.so:x11-toolkits/gtkglext
GNU_CONFIGURE= yes
-USES= compiler:c++11-lang gettext gl gmake gnome localbase pkgconfig
+USES= compiler:c++11-lang gettext gl gmake gnome guile:2.2 \
+ localbase pkgconfig
USE_GNOME= gtk20
USE_GL= gl glu
diff --git a/games/gnurobots/Makefile b/games/gnurobots/Makefile
index adcb3bfaaaf8..6c5f953506a7 100644
--- a/games/gnurobots/Makefile
+++ b/games/gnurobots/Makefile
@@ -1,6 +1,6 @@
PORTNAME= gnurobots
PORTVERSION= 1.2.0
-PORTREVISION= 16
+PORTREVISION= 17
CATEGORIES= games
MASTER_SITES= GNU
@@ -11,9 +11,7 @@ WWW= https://www.gnu.org/software/gnurobots/
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= libguile.so:lang/guile1
-
-USES= autoreconf gnome localbase:ldflags pkgconfig readline
+USES= gnome guile:1.8 localbase:ldflags pkgconfig readline
USE_GNOME= vte
GNU_CONFIGURE= yes
diff --git a/games/gnurobots/files/patch-configure b/games/gnurobots/files/patch-configure
new file mode 100644
index 000000000000..d7e302ce51a8
--- /dev/null
+++ b/games/gnurobots/files/patch-configure
@@ -0,0 +1,11 @@
+--- configure.orig 2023-05-25 19:00:18 UTC
++++ configure
+@@ -5773,7 +5773,7 @@ _ACEOF
+ fi
+
+
+-CFLAGS="-pedantic-errors -Werror -Wall -g"
++
+
+ ac_config_files="$ac_config_files Makefile contrib/Makefile doc/Makefile include/Makefile xpm/Makefile maps/Makefile scheme/Makefile src/Makefile"
+
diff --git a/games/gnurobots/files/patch-configure.ac b/games/gnurobots/files/patch-configure.ac
deleted file mode 100644
index 4461820cfa5b..000000000000
--- a/games/gnurobots/files/patch-configure.ac
+++ /dev/null
@@ -1,11 +0,0 @@
---- configure.ac.orig 2008-08-03 19:48:45 UTC
-+++ configure.ac
-@@ -91,8 +91,6 @@ You need guile 1.8 to build this program.
- dnl Checks for typedefs, structures, and compiler characteristics.
- AC_C_CONST
-
--CFLAGS="-pedantic-errors -Werror -Wall -g"
--
- dnl Done.
- AC_CONFIG_FILES([Makefile
- contrib/Makefile
diff --git a/games/trackballs/Makefile b/games/trackballs/Makefile
index 5a5768146fee..020dbbb5ec6a 100644
--- a/games/trackballs/Makefile
+++ b/games/trackballs/Makefile
@@ -11,10 +11,8 @@ WWW= https://trackballs.github.io/
LICENSE= GPLv2+ ETHYMONICS
LICENSE_COMB= multi
-LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgc.so:devel/boehm-gc
-
-USES= cmake desktop-file-utils gettext-runtime gl gnome pkgconfig sdl
+USES= cmake desktop-file-utils gettext-runtime gl gnome \
+ guile:2.2,conflicts pkgconfig sdl
USE_GL= gl
USE_SDL= image2 mixer2 sdl2 ttf2
diff --git a/graphics/graphviz/Makefile b/graphics/graphviz/Makefile
index b6590dc9d106..dd7d1e81eb40 100644
--- a/graphics/graphviz/Makefile
+++ b/graphics/graphviz/Makefile
@@ -107,8 +107,7 @@ GTS_LIB_DEPENDS= libgts.so:graphics/gts
SMYRNA_LIB_DEPENDS= libgtkgl-2.0.so:x11-toolkits/gtkglarea2 \
libgtkglext-x11-1.0.so:x11-toolkits/gtkglext
DEVIL_LIB_DEPENDS= libIL.so:graphics/devil
-GUILE_LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded
+GUILE_USES= guile:2.2
PHP_LIB_DEPENDS= libpcre.so:devel/pcre \
libargon2.so:security/libargon2
diff --git a/graphics/guile-cairo/Makefile b/graphics/guile-cairo/Makefile
index 953e9e185243..cf0b20ab484c 100644
--- a/graphics/guile-cairo/Makefile
+++ b/graphics/guile-cairo/Makefile
@@ -1,7 +1,9 @@
PORTNAME= guile-cairo
-DISTVERSION= 1.11.1
+DISTVERSION= 1.11.2
+PORTREVISION= 2
CATEGORIES= graphics
MASTER_SITES= SAVANNAH
+PKGNAMESUFFIX= -${FLAVOR}
MAINTAINER= andrew@tao11.riddles.org.uk
COMMENT= Wrapper for using the Cairo graphics library from Guile
@@ -9,21 +11,44 @@ WWW= https://www.nongnu.org/guile-cairo/
LICENSE= LGPL3+
-LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded
-BUILD_DEPENDS= guile2>=2.2:lang/guile2
-
-USES= gmake gnome libtool pkgconfig
-USE_CSTD= c99
+USES= guile:2.2,3.0,flavors,alias \
+ autoreconf gettext-tools gmake gnome libtool pkgconfig
+guile30_CSTD= c11
+guile22_CSTD= c99
+USE_CSTD= ${${FLAVOR}_CSTD}
USE_GNOME= cairo
-USE_LDCONFIG= yes
GNU_CONFIGURE= yes
+CONFIGURE_ARGS+=--includedir='$${prefix}/include/guile/${GUILE_VER}' \
+ --libdir='$${prefix}/lib/guile/${GUILE_VER}/extensions'
-INFO= guile-cairo
+MAKE_JOBS_UNSAFE=yes
INSTALL_TARGET= install-strip
-MAKE_JOBS_UNSAFE=yes
+# Upstream has done almost all of the de-conflicting work, but there is
+# no release at this time. Include their work as a patch, which also
+# covers the code needed by g-golf.
+
+EXTRA_PATCHES= ${PATCHDIR}/extra-patch-upstream-fixes.patch
+
+INFO= guile-cairo
+INFO_PATH= ${GUILE_INFO_PATH}
+
+post-patch:
+ ${REINPLACE_CMD} \
+ -e '/^objdir=/s:$$(libdir)/:$$(exec_prefix)/lib/:' \
+ ${WRKSRC}/Makefile.am ${WRKSRC}/cairo/Makefile.am
+
+# DO NOT try and add rules here to strip .go files, no matter how loudly
+# testport / stage-qa shouts at you about it, because .go files (which are
+# compiled bytecode) are not intended to be stripped and doing so causes
+# breakage at run time.
+
+post-install:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/${GUILE_PKGCONFIG_DIR}
+ ${MV} ${STAGEDIR}${PREFIX}/lib/guile/${GUILE_VER}/extensions/pkgconfig/*.pc \
+ ${STAGEDIR}${PREFIX}/${GUILE_PKGCONFIG_DIR}/
+ ${RMDIR} ${STAGEDIR}${PREFIX}/lib/guile/${GUILE_VER}/extensions/pkgconfig
.include <bsd.port.mk>
diff --git a/graphics/guile-cairo/distinfo b/graphics/guile-cairo/distinfo
index 7779144835da..66a1d97a7880 100644
--- a/graphics/guile-cairo/distinfo
+++ b/graphics/guile-cairo/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1590012837
-SHA256 (guile-cairo-1.11.1.tar.gz) = f4f6337eb5c90fc2f5fd2043de6f237ef336da6285ae042b8452379bb22086bd
-SIZE (guile-cairo-1.11.1.tar.gz) = 672079
+TIMESTAMP = 1605967018
+SHA256 (guile-cairo-1.11.2.tar.gz) = 6232d4dc2c5bd9d331139b3b01f4343c3e1fb9ca7898361a699206730941a07b
+SIZE (guile-cairo-1.11.2.tar.gz) = 674992
diff --git a/graphics/guile-cairo/files/extra-patch-upstream-fixes.patch b/graphics/guile-cairo/files/extra-patch-upstream-fixes.patch
new file mode 100644
index 000000000000..94ab3fe7525c
--- /dev/null
+++ b/graphics/guile-cairo/files/extra-patch-upstream-fixes.patch
@@ -0,0 +1,439 @@
+--- Makefile.am
++++ Makefile.am
+@@ -28,9 +28,20 @@ ACLOCAL_AMFLAGS = -I m4
+
+ CLEANFILES = env
+
+-scmdir=$(prefix)/share/guile/site
++GOBJECTS = $(SOURCES:%.scm=%.go)
+
+-scm_DATA = cairo.scm
++moddir=$(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)
++objdir=$(libdir)/guile/$(GUILE_EFFECTIVE_VERSION)/site-ccache
++
++nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES)
++nobase_nodist_obj_DATA = $(GOBJECTS)
++
++GUILE_WARNINGS = -Wunbound-variable -Warity-mismatch -Wformat
++SUFFIXES = .scm .go
++.scm.go:
++ $(top_builddir)/env $(GUILD) compile $(GUILE_TARGET) $(GUILE_WARNINGS) -o "$@" "$<"
++
++SOURCES = cairo.scm
+
+ pkgconfigdir = $(libdir)/pkgconfig
+ pkgconfig_DATA = guile-cairo.pc
+--- README
++++ README
+@@ -111,20 +111,7 @@ objects like cairo_font_options_t.
+ Known bugs
+ ==================
+
+-[https://bugs.freedesktop.org/show_bug.cgi?id=30510] Reported by CK Jester-Young
+-
+-The documentation for cairo-pdf-surface-create specifies the arguments as
+-(filename width-in-points height-in-points). In actuality, it's (sx sy
+-[filename]), where an unspecified filename means the output is sent to the
+-current output port.
+-
+-This bug hasn't been fixed because of inability to regenerate the
+-documentation. Any help in this sense is appreciated. Please have a look at
+-
+-- doc/README
+-- commit 8e73e952f8797159719b770fafecbdcb6f87152c
+-- https://lists.gnu.org/archive/html/guile-user/2018-08/msg00117.html
+-
++(Yay?!)
+
+ Copying Guile-Cairo
+ ===================
+--- cairo/Makefile.am
++++ cairo/Makefile.am
+@@ -15,29 +15,26 @@
+ # License along with this program. If not, see
+ # <http://www.gnu.org/licenses/>.
+
+-all-local: config.scm
++moddir=$(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)/cairo
++objdir=$(libdir)/guile/$(GUILE_EFFECTIVE_VERSION)/site-ccache/cairo
+
+-lib_builddir = $(shell cd $(top_builddir)/guile-cairo && pwd)
+-docs_builddir = $(shell cd $(top_builddir)/doc && pwd)
++SOURCES = config.scm vector-types.scm
++NOCOMP_SOURCES = cairo-procedures.txt
+
+-moduledir=$(prefix)/share/guile/site/cairo
++GOBJECTS = $(SOURCES:%.scm=%.go)
+
+-module_DATA = vector-types.scm cairo-procedures.txt
++nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES)
++nobase_nodist_obj_DATA = $(GOBJECTS)
+
+-config.scm: Makefile config.scm.in
+- sed -e "s|@cairolibpath\@|$(lib_builddir)/libguile-cairo|" \
+- -e "s|@cairodocumentationpath\@|$(docs_builddir)/cairo-procedures.txt|" \
+- $(srcdir)/config.scm.in > config.scm
++GUILE_WARNINGS = -Wunbound-variable -Warity-mismatch -Wformat
++SUFFIXES = .scm .go
++.scm.go:
++ $(top_builddir)/env $(GUILD) compile $(GUILE_TARGET) $(GUILE_WARNINGS) -o "$@" "$<"
+
+-install-data-local: Makefile config.scm.in
+- $(mkinstalldirs) $(DESTDIR)$(moduledir)
++config.scm: Makefile config.scm.in
+ sed -e "s|@cairolibpath\@|$(libdir)/libguile-cairo|" \
+- -e "s|@cairodocumentationpath\@|$(moduledir)/cairo-procedures.txt|" \
+- $(srcdir)/config.scm.in > $(DESTDIR)$(moduledir)/config.scm
+- chmod 644 $(DESTDIR)$(moduledir)/config.scm
+-
+-uninstall-local:
+- rm -f $(DESTDIR)$(moduledir)/config.scm
++ -e "s|@cairodocumentationpath\@|$(moddir)/cairo-procedures.txt|" \
++ $(srcdir)/config.scm.in > config.scm
+
+ cairo-procedures.txt.update:
+ echo "Generated from upstream documentation; see COPYING.docs for info." \
+@@ -45,6 +42,6 @@ cairo-procedures.txt.update:
+ $(top_srcdir)/doc/docbook-to-guile-doc $(CAIRO_XML_DIR)/*.xml \
+ >> $(srcdir)/cairo-procedures.txt
+
+-CLEANFILES = config.scm
++CLEANFILES = config.scm $(GOBJECTS)
+
+-EXTRA_DIST = config.scm.in $(module_DATA)
++EXTRA_DIST = config.scm.in
+--- configure.ac
++++ configure.ac
+@@ -37,7 +37,7 @@ AM_INIT_AUTOMAKE([1.14 gnu -Wno-portability -Wno-syntax \
+ AM_MAINTAINER_MODE([enable])
+ AM_SILENT_RULES([yes])
+
+-AC_SUBST(VERSION, 1.11.2)
++AC_SUBST(VERSION, 1.12.0)
+
+ AC_ISC_POSIX
+ AC_PROG_CC
+@@ -77,9 +77,15 @@ AC_SUBST(AM_LDFLAGS)
+ # Check for Guile
+ #
+ GUILE_PKG
++GUILE_PROGS
+ GUILE_FLAGS
+ AC_SUBST(GUILE_EFFECTIVE_VERSION)
+
++if test "$cross_compiling" != no; then
++ GUILE_TARGET="--target=$host_alias"
++ AC_SUBST([GUILE_TARGET])
++fi
++
+ PKG_CHECK_MODULES(CAIRO, cairo >= 1.10.0)
+ AC_SUBST(CAIRO_LIBS)
+ AC_SUBST(CAIRO_CFLAGS)
+--- guile-cairo/guile-cairo.c
++++ guile-cairo/guile-cairo.c
+@@ -1,6 +1,9 @@
+ /* guile-cairo
+ * Copyright (C) 2007, 2011, 2012, 2014, 2018, 2020 Andy Wingo <wingo at pobox dot com>
+- *
++ * Copyright (C) 2023 Daniel Llorens <lloda at sarc dot name>
++ * Copyright (C) 2023 Dale Smith <dalepsmith at gmail dot com>
++ * Copyright (C) 2023 David Pirotte <david at altosw dot be>
++
+ * guile-cairo.c: Cairo for Guile
+ *
+ * This library is free software; you can redistribute it and/or modify
+@@ -3523,6 +3526,19 @@ cairo_svg_version_to_string (cairo_svg_version_t version);
+ #endif /* CAIRO_HAS_SVG_SURFACE */
+
+
++SCM_DEFINE_PUBLIC (scm_cairo_context2pointer, "cairo-context->pointer", 1, 0, 0,
++ (SCM scr),
++ "")
++{
++ return scm_from_pointer (scm_to_cairo (scr), NULL);
++}
++
++SCM_DEFINE_PUBLIC (scm_cairo_pointer2context, "cairo-pointer->context", 1, 0, 0,
++ (SCM scr),
++ "")
++{
++ return scm_from_cairo ((cairo_t *) scm_to_pointer (scr));
++}
+
+ void
+ scm_init_cairo (void)
+diff --git m4/guile.m4 m4/guile.m4
+index 57a0868..48642f0 100644
+--- m4/guile.m4
++++ m4/guile.m4
+@@ -17,7 +17,7 @@
+ ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ ## 02110-1301 USA
+
+-# serial 10
++# serial 11
+
+ ## Index
+ ## -----
+@@ -60,7 +60,10 @@
+ # @code{AC_SUBST}.
+ #
+ AC_DEFUN([GUILE_PKG],
+- [PKG_PROG_PKG_CONFIG
++ [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
++ if test "x$PKG_CONFIG" = x; then
++ AC_MSG_ERROR([pkg-config is missing, please install it])
++ fi
+ _guile_versions_to_search="m4_default([$1], [3.0 2.2 2.0])"
+ if test -n "$GUILE_EFFECTIVE_VERSION"; then
+ _guile_tmp=""
+--- tests/unit-tests/Makefile.am
++++ tests/unit-tests/Makefile.am
+@@ -1,5 +1,6 @@
+ # guile-cairo
+ # Copyright (C) 2007,2011 Andy Wingo <wingo@pobox.com>
++# Copyright (C) 2023 David Pirotte <david@altosw.be>
+ #
+ # This program is free software: you can redistribute it and/or modify
+ # it under the terms of the GNU Lesser General Public License as
+@@ -16,7 +17,8 @@
+ # <http://www.gnu.org/licenses/>.
+
+ TESTS= \
+- api-stability.scm \
++ context-pointer.scm \
++ api-stability.scm \
+ version.scm
+
+ TESTS_ENVIRONMENT=\
+--- tests/unit-tests/cairo.api
++++ tests/unit-tests/cairo.api
+@@ -7,14 +7,22 @@
+ cairo-clip-preserve
+ cairo-close-path
+ cairo-content-get-values
++ cairo-context->pointer
+ cairo-copy-clip-rectangle-list
+ cairo-copy-page
+ cairo-copy-path
+ cairo-copy-path-flat
+ cairo-create
+ cairo-curve-to
++ cairo-destroy
++ cairo-device-acquire
++ cairo-device-finish
++ cairo-device-flush
++ cairo-device-get-type
++ cairo-device-release
+ cairo-device-to-user
+ cairo-device-to-user-distance
++ cairo-device-type-get-values
+ cairo-extend-get-values
+ cairo-fill
+ cairo-fill-extents
+@@ -44,6 +52,7 @@
+ cairo-font-type-get-values
+ cairo-font-weight-get-values
+ cairo-format-get-values
++ cairo-format-stride-for-width
+ cairo-get-antialias
+ cairo-get-current-point
+ cairo-get-dash-count
+@@ -67,15 +76,20 @@
+ cairo-glyph:index
+ cairo-glyph:x
+ cairo-glyph:y
++ cairo-has-current-point
+ cairo-hint-metrics-get-values
+ cairo-hint-style-get-values
+ cairo-identity-matrix
+ cairo-image-surface-create
++ cairo-image-surface-create-for-data
+ cairo-image-surface-create-from-png
++ cairo-image-surface-get-data
+ cairo-image-surface-get-format
+ cairo-image-surface-get-height
+ cairo-image-surface-get-stride
+ cairo-image-surface-get-width
++ cairo-image-surface-set-data
++ cairo-in-clip
+ cairo-in-fill
+ cairo-in-stroke
+ cairo-line-cap-get-values
+@@ -86,6 +100,7 @@
+ cairo-make-identity-matrix
+ cairo-make-matrix
+ cairo-make-rectangle
++ cairo-make-rectangle-int
+ cairo-make-rotate-matrix
+ cairo-make-scale-matrix
+ cairo-make-text-extents
+@@ -94,6 +109,8 @@
+ cairo-mask-surface
+ cairo-matrix-invert
+ cairo-matrix-multiply
++ cairo-matrix-rotate
++ cairo-matrix-scale
+ cairo-matrix-transform-distance
+ cairo-matrix-transform-point
+ cairo-matrix-translate
+@@ -104,6 +121,7 @@
+ cairo-paint
+ cairo-paint-with-alpha
+ cairo-path-data-type-get-values
++ cairo-path-extents
+ cairo-path-fold
+ cairo-pattern-add-color-stop-rgb
+ cairo-pattern-add-color-stop-rgba
+@@ -126,22 +144,50 @@
+ cairo-pattern-set-filter
+ cairo-pattern-set-matrix
+ cairo-pattern-type-get-values
++ cairo-pdf-get-versions
++ cairo-pdf-level-get-values
+ cairo-pdf-surface-create
++ cairo-pdf-surface-restrict-to-version
+ cairo-pdf-surface-set-size
++ cairo-pointer->context
+ cairo-pop-group
+ cairo-pop-group-to-source
++ cairo-ps-get-levels
++ cairo-ps-level-get-values
+ cairo-ps-surface-begin-page-setup
+ cairo-ps-surface-begin-setup
+ cairo-ps-surface-create
+ cairo-ps-surface-dsc-comment
++ cairo-ps-surface-get-eps
++ cairo-ps-surface-restrict-to-level
++ cairo-ps-surface-set-eps
+ cairo-ps-surface-set-size
+ cairo-push-group
+ cairo-push-group-with-context
++ cairo-recording-surface-create
++ cairo-recording-surface-ink-extents
+ cairo-rectangle
++ cairo-rectangle-int:height
++ cairo-rectangle-int:width
++ cairo-rectangle-int:x
++ cairo-rectangle-int:y
+ cairo-rectangle:height
+ cairo-rectangle:width
+ cairo-rectangle:x
+ cairo-rectangle:y
++ cairo-region-contains-point
++ cairo-region-contains-rectangle
++ cairo-region-copy
++ cairo-region-create
++ cairo-region-get-extents
++ cairo-region-get-rectangles
++ cairo-region-intersect
++ cairo-region-is-empty
++ cairo-region-overlap-get-values
++ cairo-region-subtract
++ cairo-region-translate
++ cairo-region-union
++ cairo-region-xor
+ cairo-rel-curve-to
+ cairo-rel-line-to
+ cairo-rel-move-to
+@@ -156,9 +202,11 @@
+ cairo-scaled-font-get-font-face
+ cairo-scaled-font-get-font-matrix
+ cairo-scaled-font-get-font-options
++ cairo-scaled-font-get-scale_matrix
+ cairo-scaled-font-get-type
+ cairo-scaled-font-glyph-extents
+ cairo-scaled-font-text-extents
++ cairo-scaled-font-text-to-glyphs
+ cairo-select-font-face
+ cairo-set-antialias
+ cairo-set-dash
+@@ -182,26 +230,38 @@
+ cairo-show-glyphs
+ cairo-show-page
+ cairo-show-text
++ cairo-show-text-glyphs
++ cairo-status-get-values
+ cairo-stroke
+ cairo-stroke-extents
+ cairo-stroke-preserve
+ cairo-subpixel-order-get-values
++ cairo-surface-copy-page
++ cairo-surface-create-for-rectangle
+ cairo-surface-create-similar
++ cairo-surface-destroy
+ cairo-surface-finish
+ cairo-surface-flush
+ cairo-surface-get-content
++ cairo-surface-get-device
+ cairo-surface-get-device-offset
++ cairo-surface-get-fallback-resolution
+ cairo-surface-get-font-options
++ cairo-surface-get-mime-data
+ cairo-surface-get-type
++ cairo-surface-has-show-text-glyphs
+ cairo-surface-mark-dirty
+ cairo-surface-mark-dirty-rectangle
+ cairo-surface-set-device-offset
+ cairo-surface-set-fallback-resolution
++ cairo-surface-set-mime-data
++ cairo-surface-show-page
+ cairo-surface-type-get-values
+ cairo-surface-write-to-png
+ cairo-svg-surface-create
+ cairo-svg-surface-restrict-to-version
+ cairo-svg-version-get-values
++ cairo-text-cluster-flags-get-values
+ cairo-text-extents
+ cairo-text-extents:height
+ cairo-text-extents:width
+@@ -210,8 +270,17 @@
+ cairo-text-extents:y-advance
+ cairo-text-extents:y-bearing
+ cairo-text-path
++ cairo-toy-font-face-create
++ cairo-toy-font-face-get-family
++ cairo-toy-font-face-get-slant
++ cairo-toy-font-face-get-weight
+ cairo-transform
+ cairo-translate
++ cairo-user-font-face-create
++ cairo-user-font-face-set-init-func
++ cairo-user-font-face-set-render-glyph-func
++ cairo-user-font-face-set-text-to-glyphs-func
++ cairo-user-font-face-set-unicode-to-glyph-func
+ cairo-user-to-device
+ cairo-user-to-device-distance
+ cairo-version
+--- /dev/null
++++ tests/unit-tests/context-pointer.scm
+@@ -0,0 +1,29 @@
++;; guile-cairo unit test
++;; Copyright (C) 2023 David Pirotte <david@altosw.be>
++
++;; This program is free software; you can redistribute it and/or modify
++;; it under the terms of the GNU General Public License as published by
++;; the Free Software Foundation; either version 3 of the License, or (at
++;; your option) any later version.
++;;
++;; This program is distributed in the hope that it will be useful, but
++;; WITHOUT ANY WARRANTY; without even the implied warranty of
++;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++;; General Public License for more details.
++;;
++;; You should have received a copy of the GNU General Public License
++;; along with this program; if not, see <http://www.gnu.org/licenses/>.
++
++(use-modules (unit-test)
++ (oop goops)
++ (cairo))
++
++(define-class <test-context-pointer> (<test-case>))
++
++(define-method (test-context-pointer (self <test-context-pointer>))
++ (let* ((cs (cairo-image-surface-create 'argb32 140 100))
++ (cr (cairo-create cs)))
++ (assert (cairo-context->pointer cr))
++ (assert (cairo-pointer->context (cairo-context->pointer cr)))))
++
++(exit-with-summary (run-all-defined-test-cases))
diff --git a/graphics/guile-cairo/files/patch-guile-cairo.pc.in b/graphics/guile-cairo/files/patch-guile-cairo.pc.in
new file mode 100644
index 000000000000..966ab4302a52
--- /dev/null
+++ b/graphics/guile-cairo/files/patch-guile-cairo.pc.in
@@ -0,0 +1,9 @@
+--- guile-cairo.pc.in.orig 2023-05-21 10:31:12 UTC
++++ guile-cairo.pc.in
+@@ -7,5 +7,5 @@ Name: guile-cairo
+ Description: Cairo binding for Guile Scheme
+ Version: @VERSION@
+ Requires: cairo guile-@GUILE_EFFECTIVE_VERSION@
+-Libs: -L${libdir} -lguile-cairo
++Libs: -L${libdir} -Wl,-rpath=${libdir} -lguile-cairo
+ Cflags: -I${includedir}
diff --git a/graphics/guile-cairo/pkg-plist b/graphics/guile-cairo/pkg-plist
index 5f6e6ccb44cb..27087d2ce404 100644
--- a/graphics/guile-cairo/pkg-plist
+++ b/graphics/guile-cairo/pkg-plist
@@ -1,12 +1,15 @@
-include/guile-cairo/guile-cairo-enum-types.h
-include/guile-cairo/guile-cairo-smob-types.h
-include/guile-cairo/guile-cairo-vector-types.h
-include/guile-cairo/guile-cairo.h
-lib/libguile-cairo.so
-lib/libguile-cairo.so.0
-lib/libguile-cairo.so.0.0.0
-libdata/pkgconfig/guile-cairo.pc
-share/guile/site/cairo.scm
-share/guile/site/cairo/cairo-procedures.txt
-share/guile/site/cairo/config.scm
-share/guile/site/cairo/vector-types.scm
+include/guile/%%GUILE_VER%%/guile-cairo/guile-cairo-enum-types.h
+include/guile/%%GUILE_VER%%/guile-cairo/guile-cairo-smob-types.h
+include/guile/%%GUILE_VER%%/guile-cairo/guile-cairo-vector-types.h
+include/guile/%%GUILE_VER%%/guile-cairo/guile-cairo.h
+lib/guile/%%GUILE_VER%%/extensions/libguile-cairo.so
+lib/guile/%%GUILE_VER%%/extensions/libguile-cairo.so.0
+lib/guile/%%GUILE_VER%%/extensions/libguile-cairo.so.0.0.0
+%%GUILE_SITE_CCACHE%%/cairo/config.go
+%%GUILE_SITE_CCACHE%%/cairo/vector-types.go
+%%GUILE_SITE_CCACHE%%/cairo.go
+%%GUILE_PKGCONFIG_DIR%%/guile-cairo.pc
+%%GUILE_SITE%%/cairo.scm
+%%GUILE_SITE%%/cairo/cairo-procedures.txt
+%%GUILE_SITE%%/cairo/config.scm
+%%GUILE_SITE%%/cairo/vector-types.scm
diff --git a/irc/weechat/Makefile b/irc/weechat/Makefile
index f603949e4254..9e9cca3644cb 100644
--- a/irc/weechat/Makefile
+++ b/irc/weechat/Makefile
@@ -1,5 +1,6 @@
PORTNAME= weechat
DISTVERSION= 4.0.1
+PORTREVISION= 1
CATEGORIES= irc
MASTER_SITES= https://weechat.org/files/src/
@@ -53,7 +54,7 @@ CA_BUNDLE_RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root
CHARSET_IMPLIES= ICONV
DOCS_CMAKE_BOOL= ENABLE_DOC ENABLE_DOC_INCOMPLETE
DOCS_BUILD_DEPENDS= ${LOCALBASE}/bin/asciidoctor:textproc/rubygem-asciidoctor
-GUILE_LIB_DEPENDS= libguile-2.2.so:lang/guile2
+GUILE_USES= guile:2.2,conflicts
ICONV_USES= iconv
JAVASCRIPT_LIB_DEPENDS= libv8.so:lang/v8
LUA_USES= lua pkgconfig
diff --git a/irc/weechat/pkg-plist b/irc/weechat/pkg-plist
index 448c972332aa..c3a0de443b88 100644
--- a/irc/weechat/pkg-plist
+++ b/irc/weechat/pkg-plist
@@ -35,6 +35,7 @@ libdata/pkgconfig/weechat.pc
%%HEADLESS%%%%MANPAGES%%man/sr/man1/weechat-headless.1.gz
%%ASPELL%%lib/weechat/plugins/spell.so
%%CHARSET%%lib/weechat/plugins/charset.so
+%%GUILE%%lib/weechat/plugins/guile.so
%%JAVASCRIPT%%lib/weechat/plugins/javascript.so
%%LUA%%lib/weechat/plugins/lua.so
%%PERL%%lib/weechat/plugins/perl.so
diff --git a/lang/Makefile b/lang/Makefile
index 441660670e75..3a9144e73bf8 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -345,8 +345,6 @@
SUBDIR += sketchy
SUBDIR += slib
SUBDIR += slib-guile
- SUBDIR += slib-guile1
- SUBDIR += slib-guile2
SUBDIR += slisp
SUBDIR += smalltalk
SUBDIR += smlnj
diff --git a/lang/mdk/Makefile b/lang/mdk/Makefile
index f8a581ff71a0..2b2cf753de5a 100644
--- a/lang/mdk/Makefile
+++ b/lang/mdk/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mdk
PORTVERSION= 1.3.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= lang gnome
MASTER_SITES= GNU/${PORTNAME}/v${PORTVERSION}
@@ -22,8 +22,7 @@ OPTIONS_DEFAULT=GUILE
OPTIONS_SUB= yes
GUILE_CONFIGURE_WITH= guile
-GUILE_LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded
+GUILE_USES= guile:2.2,conflicts
NLS_CONFIGURE_ENABLE= nls
diff --git a/lang/slib-guile/Makefile b/lang/slib-guile/Makefile
index d431e661ac96..added7ef8a03 100644
--- a/lang/slib-guile/Makefile
+++ b/lang/slib-guile/Makefile
@@ -1,21 +1,26 @@
PORTNAME= slib
PORTVERSION= 3b6 # Keep this in sync with lang/slib
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= lang scheme
MASTER_SITES= # empty
-PKGNAMESUFFIX= -guile
+PKGNAMESUFFIX= -${FLAVOR}
DISTFILES= # empty
MAINTAINER= bofh@FreeBSD.org
COMMENT= SLIB installation for Guile
+WWW= https://people.csail.mit.edu/jaffer/SLIB.html
-BUILD_DEPENDS= ${LOCALBASE}/share/slib/require.scm:lang/slib \
- guile:lang/guile
-RUN_DEPENDS:= ${BUILD_DEPENDS}
+BUILD_DEPENDS= ${LOCALBASE}/share/slib/require.scm:lang/slib
+RUN_DEPENDS= ${LOCALBASE}/share/slib/require.scm:lang/slib
+
+USES= guile:1.8,2.2,3.0,flavors,build,run
-SUB_FILES+= pkg-install pkg-deinstall
NO_ARCH= yes
NO_BUILD= yes
NO_INSTALL= yes
+SUB_FILES+= pkg-install pkg-deinstall
+SUB_LIST+= GUILE_VER=${GUILE_VER} \
+ SLIB_INIT=${${GUILE_SFX} >= 2:?guile-2.init:guile.init}
+
.include <bsd.port.mk>
diff --git a/lang/slib-guile/files/pkg-deinstall.in b/lang/slib-guile/files/pkg-deinstall.in
index 13eedbc85fba..7fb1a88fdee0 100644
--- a/lang/slib-guile/files/pkg-deinstall.in
+++ b/lang/slib-guile/files/pkg-deinstall.in
@@ -2,7 +2,7 @@
case "$2" in
"POST-DEINSTALL")
- rm -f %%LOCALBASE%%/share/guile/3.0/slib
- rm -f %%LOCALBASE%%/share/guile/3.0/slibcat
+ rm -f %%LOCALBASE%%/share/guile/%%GUILE_VER%%/slib
+ rm -f %%LOCALBASE%%/share/guile/%%GUILE_VER%%/slibcat
;;
esac
diff --git a/lang/slib-guile/files/pkg-install.in b/lang/slib-guile/files/pkg-install.in
index f21a3953f793..54f8624f4430 100644
--- a/lang/slib-guile/files/pkg-install.in
+++ b/lang/slib-guile/files/pkg-install.in
@@ -2,7 +2,7 @@
case "$2" in
"POST-INSTALL")
- ln -shf %%LOCALBASE%%/share/slib %%LOCALBASE%%/share/guile/3.0/slib
- env GUILE_IMPLEMENTATION_PATH=%%LOCALBASE%%/share/guile/3.0 %%LOCALBASE%%/bin/guile -q --no-auto-compile -l %%LOCALBASE%%/share/slib/guile.init -c "(use-modules (ice-9 slib))(require 'new-catalog)"
+ ln -shf %%LOCALBASE%%/share/slib %%LOCALBASE%%/share/guile/%%GUILE_VER%%/slib
+ env GUILE_IMPLEMENTATION_PATH=%%LOCALBASE%%/share/guile/%%GUILE_VER%% GUILE_AUTO_COMPILE=0 %%LOCALBASE%%/bin/guile-%%GUILE_VER%% -q -l %%LOCALBASE%%/share/slib/%%SLIB_INIT%% -c "(use-modules (ice-9 slib))(require 'new-catalog)"
;;
esac
diff --git a/lang/slib-guile1/Makefile b/lang/slib-guile1/Makefile
deleted file mode 100644
index a376a05b3df5..000000000000
--- a/lang/slib-guile1/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-PORTNAME= slib
-PORTVERSION= 3b6 # Keep this in sync with lang/slib
-CATEGORIES= lang scheme
-MASTER_SITES= # empty
-PKGNAMESUFFIX= -guile1
-DISTFILES= # empty
-
-MAINTAINER= bofh@FreeBSD.org
-COMMENT= SLIB installation for Guile1
-
-BUILD_DEPENDS= ${LOCALBASE}/share/slib/require.scm:lang/slib \
- guile:lang/guile1
-RUN_DEPENDS:= ${BUILD_DEPENDS}
-
-SUB_FILES+= pkg-install pkg-deinstall
-NO_ARCH= yes
-NO_BUILD= yes
-NO_INSTALL= yes
-
-.include <bsd.port.mk>
diff --git a/lang/slib-guile1/files/pkg-deinstall.in b/lang/slib-guile1/files/pkg-deinstall.in
deleted file mode 100644
index 19ec50f662c7..000000000000
--- a/lang/slib-guile1/files/pkg-deinstall.in
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-case "$2" in
-"POST-DEINSTALL")
- rm -f %%LOCALBASE%%/share/guile/1.8/slib
- rm -f %%LOCALBASE%%/share/guile/1.8/slibcat
- ;;
-esac
diff --git a/lang/slib-guile1/files/pkg-install.in b/lang/slib-guile1/files/pkg-install.in
deleted file mode 100644
index d7ee7ff69d60..000000000000
--- a/lang/slib-guile1/files/pkg-install.in
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-case "$2" in
-"POST-INSTALL")
- ln -shf %%LOCALBASE%%/share/slib %%LOCALBASE%%/share/guile/1.8/slib
- env GUILE_IMPLEMENTATION_PATH=%%LOCALBASE%%/share/guile/1.8 %%LOCALBASE%%/bin/guile -q -l %%LOCALBASE%%/share/slib/guile.init -c "(use-modules (ice-9 slib))(require 'new-catalog)"
- ;;
-esac
diff --git a/lang/slib-guile1/pkg-descr b/lang/slib-guile1/pkg-descr
deleted file mode 100644
index 38f64caad716..000000000000
--- a/lang/slib-guile1/pkg-descr
+++ /dev/null
@@ -1,4 +0,0 @@
-To use the features offered by the SLIB library, add the following
-construct to your programs:
-
- (use-modules (ice-9 slib))
diff --git a/lang/slib-guile2/Makefile b/lang/slib-guile2/Makefile
deleted file mode 100644
index 3d7f8ce951cd..000000000000
--- a/lang/slib-guile2/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-PORTNAME= slib
-PORTVERSION= 3b6 # Keep this in sync with lang/slib
-CATEGORIES= lang scheme
-MASTER_SITES= # empty
-PKGNAMESUFFIX= -guile2
-DISTFILES= # empty
-
-MAINTAINER= bofh@FreeBSD.org
-COMMENT= SLIB installation for Guile
-
-BUILD_DEPENDS= ${LOCALBASE}/share/slib/require.scm:lang/slib \
- guile:lang/guile2
-RUN_DEPENDS:= ${BUILD_DEPENDS}
-
-SUB_FILES+= pkg-install pkg-deinstall
-NO_ARCH= yes
-NO_BUILD= yes
-NO_INSTALL= yes
-
-.include <bsd.port.mk>
diff --git a/lang/slib-guile2/files/pkg-deinstall.in b/lang/slib-guile2/files/pkg-deinstall.in
deleted file mode 100644
index 2527070f6668..000000000000
--- a/lang/slib-guile2/files/pkg-deinstall.in
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-case "$2" in
-"POST-DEINSTALL")
- rm -f %%LOCALBASE%%/share/guile/2.2/slib
- rm -f %%LOCALBASE%%/share/guile/2.2/slibcat
- ;;
-esac
diff --git a/lang/slib-guile2/files/pkg-install.in b/lang/slib-guile2/files/pkg-install.in
deleted file mode 100644
index 15e7e303aa61..000000000000
--- a/lang/slib-guile2/files/pkg-install.in
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-case "$2" in
-"POST-INSTALL")
- ln -shf %%LOCALBASE%%/share/slib %%LOCALBASE%%/share/guile/2.2/slib
- env GUILE_IMPLEMENTATION_PATH=%%LOCALBASE%%/share/guile/2.2 GUILE_AUTO_COMPILE=0 %%LOCALBASE%%/bin/guile -q -l %%LOCALBASE%%/share/slib/guile-2.init -c "(use-modules (ice-9 slib))(require 'new-catalog)"
- ;;
-esac
diff --git a/lang/slib-guile2/pkg-descr b/lang/slib-guile2/pkg-descr
deleted file mode 100644
index 38f64caad716..000000000000
--- a/lang/slib-guile2/pkg-descr
+++ /dev/null
@@ -1,4 +0,0 @@
-To use the features offered by the SLIB library, add the following
-construct to your programs:
-
- (use-modules (ice-9 slib))
diff --git a/mail/anubis/Makefile b/mail/anubis/Makefile
index 71f1b8a33b29..05a181702f9d 100644
--- a/mail/anubis/Makefile
+++ b/mail/anubis/Makefile
@@ -1,6 +1,6 @@
PORTNAME= anubis
PORTVERSION= 4.2
-PORTREVISION= 16
+PORTREVISION= 17
CATEGORIES= mail
MASTER_SITES= GNU
@@ -60,9 +60,7 @@ GSASL_DESC= GSASL support (required for databases)
GSASL_LIB_DEPENDS= libgsasl.so:security/libgsasl
GSASL_CONFIGURE_WITH= gsasl
-GUILE_LIB_DEPENDS= libltdl.so:devel/libltdl \
- libguile.so:lang/guile1 \
- libgmp.so:math/gmp
+GUILE_USES= guile:1.8,alias
GUILE_CONFIGURE_WITH= guile
GUILE_PORTEXAMPLES= anubis.scm anubisrc.guile
diff --git a/mail/anubis/files/patch-src_Makefile.am b/mail/anubis/files/patch-src_Makefile.am
index e516ed9efeb7..21afe4b9beb6 100644
--- a/mail/anubis/files/patch-src_Makefile.am
+++ b/mail/anubis/files/patch-src_Makefile.am
@@ -21,3 +21,12 @@
if TLS_COND
TLS_C=tls.c
+@@ -99,7 +99,7 @@ BUILT_SOURCES = env.c
+
+ localedir = $(datadir)/locale
+ DEFS = @DEFS@ -DLOCALEDIR=\"$(localedir)\"
+-AM_CPPFLAGS = @ADD_INCLUDES@ @LIBGNUTLS_INCLUDES@ -I$(top_srcdir)/lib
++AM_CPPFLAGS = @ADD_INCLUDES@ @LIBGNUTLS_INCLUDES@ @GUILE_INCLUDES@ -I$(top_srcdir)/lib
+ SUFFIXES=.opt .c
+
+ .opt.c:
diff --git a/mail/mailutils/Makefile b/mail/mailutils/Makefile
index b71b43171824..69328baee787 100644
--- a/mail/mailutils/Makefile
+++ b/mail/mailutils/Makefile
@@ -1,5 +1,6 @@
PORTNAME= mailutils
PORTVERSION= 3.16
+PORTREVISION= 1
CATEGORIES= mail
MASTER_SITES= GNU GNU_ALPHA
@@ -50,8 +51,7 @@ GSSAPI_RUN_DEPENDS= cyrus-sasl-gssapi>0:security/cyrus-sasl2-gssapi
GSSAPI_USES= ssl
GSSAPI_CONFIGURE_WITH= gssapi
-GUILE_LIB_DEPENDS= libguile-2.2.so:lang/guile2 libgmp.so:math/gmp
-GUILE_USES= makeinfo pkgconfig
+GUILE_USES= guile:2.2,alias makeinfo pkgconfig
GUILE_CONFIGURE_WITH= guile
MH_CONFIGURE_ENV= ac_cv_prog_EMACS=no
diff --git a/mail/mu/Makefile b/mail/mu/Makefile
index 16384d31ae82..961cda4e297c 100644
--- a/mail/mu/Makefile
+++ b/mail/mu/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mu
PORTVERSION= 1.8.13
-PORTREVISION= 1
+PORTREVISION= 2
DISTVERSIONPREFIX= v
CATEGORIES= mail
@@ -30,7 +30,7 @@ OPTIONS_DEFINE= DOCS GUILE
OPTIONS_DEFAULT= DOCS GUILE
OPTIONS_SUB= yes
-GUILE_LIB_DEPENDS= libguile-3.0.so:lang/guile
+GUILE_USES= guile:3.0
GUILE_USE= ldconfig=yes
GUILE_CONFIGURE_ENABLE= guile
GUILE_INFO= mu-guile
diff --git a/math/drgeo/Makefile b/math/drgeo/Makefile
index acb316e5abc3..6cf3a5517bde 100644
--- a/math/drgeo/Makefile
+++ b/math/drgeo/Makefile
@@ -1,6 +1,6 @@
PORTNAME= drgeo
PORTVERSION= 1.1.0
-PORTREVISION= 25
+PORTREVISION= 26
CATEGORIES= math
MASTER_SITES= SF/ofset/${PORTNAME}/${PORTVERSION}
@@ -11,10 +11,8 @@ WWW= http://www.ofset.org/drgeo/
LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= libguile.so:lang/guile1
-
-USES= compiler:c++11-lang gettext gmake gnome localbase:ldflags \
- pathfix pkgconfig
+USES= compiler:c++11-lang gettext gmake gnome guile:1.8 \
+ localbase:ldflags pathfix pkgconfig
GNU_CONFIGURE= yes
USE_GNOME= gnomeprefix intlhack libglade2
diff --git a/math/drgeo/files/patch-geo_Makefile.in b/math/drgeo/files/patch-geo_Makefile.in
new file mode 100644
index 000000000000..31923040b6a9
--- /dev/null
+++ b/math/drgeo/files/patch-geo_Makefile.in
@@ -0,0 +1,12 @@
+--- geo/Makefile.in.orig 2023-05-25 10:21:18 UTC
++++ geo/Makefile.in
+@@ -192,7 +192,8 @@ INCLUDES = \
+ -DDRGEO_GLADEDIR=\""$(gladedir)"\" \
+ -DDRGEO_ENCODEDIR=\""$(encodedir)"\" \
+ -I$(includedir) \
+- $(DRGEO_CFLAGS)
++ $(DRGEO_CFLAGS) \
++ $(GUILE_CFLAGS)
+
+
+ noinst_LIBRARIES = libgeo.a
diff --git a/math/nlopt/Makefile b/math/nlopt/Makefile
index f9146ece8291..7f2b6edbb997 100644
--- a/math/nlopt/Makefile
+++ b/math/nlopt/Makefile
@@ -1,7 +1,7 @@
PORTNAME= nlopt
DISTVERSIONPREFIX= v
DISTVERSION= 2.7.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= math
MAINTAINER= rhurlin@FreeBSD.org
@@ -17,11 +17,10 @@ BROKEN_armv7= fails to package: Unable to access file site-packages/_nlopt.a:No
BUILD_DEPENDS= swig:devel/swig \
${PYNUMPY}
-LIB_DEPENDS= libgmp.so:math/gmp \
- libguile-2.2.so:lang/guile2
RUN_DEPENDS= ${PYNUMPY}
-USES= cmake:testing compiler:features localbase pathfix pkgconfig python
+USES= cmake:testing compiler:features guile:2.2,alias,conflicts \
+ localbase pathfix pkgconfig python
USE_GITHUB= yes
GH_ACCOUNT= stevengj
diff --git a/net-im/freetalk/Makefile b/net-im/freetalk/Makefile
index a4563a391d57..d47241932352 100644
--- a/net-im/freetalk/Makefile
+++ b/net-im/freetalk/Makefile
@@ -1,5 +1,6 @@
PORTNAME= freetalk
PORTVERSION= 4.2
+PORTREVISION= 1
CATEGORIES= net-im
MASTER_SITES= GNU/freetalk
@@ -13,12 +14,10 @@ LICENSE_FILE_GPLv3= ${WRKSRC}/COPYING
LICENSE_FILE_GFDL= ${WRKSRC}/doc/fdl-1.3.texi
LIB_DEPENDS= libargp.so:devel/argp-standalone \
- libloudmouth-1.so:net-im/loudmouth \
- libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded
+ libloudmouth-1.so:net-im/loudmouth
-USES= autoreconf gettext-runtime gnome localbase makeinfo \
- ncurses pkgconfig readline
+USES= autoreconf gettext-runtime gnome guile:2.2 localbase \
+ makeinfo ncurses pkgconfig readline
USE_GNOME= glib20
GNU_CONFIGURE= yes
diff --git a/net/dico/Makefile b/net/dico/Makefile
index 13e36c355d22..c83744eb2baf 100644
--- a/net/dico/Makefile
+++ b/net/dico/Makefile
@@ -1,5 +1,6 @@
PORTNAME= dico
DISTVERSION= 2.11
+PORTREVISION= 1
CATEGORIES= net textproc
MASTER_SITES= GNU
@@ -34,9 +35,8 @@ GSASL_USES= iconv
GSASL_LIB_DEPENDS= libgsasl.so:security/libgsasl
GSASL_CONFIGURE_WITH= gsasl
-GUILE_LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded
-GUILE_CONFIGURE_OFF= --without-guile
+GUILE_USES= guile:2.2,alias
+GUILE_CONFIGURE_WITH= guile
LDAP_USES= ldap
LDAP_CONFIGURE_OFF= --without-ldap
diff --git a/net/gnu-radius/Makefile b/net/gnu-radius/Makefile
index 059a5fbb4cbf..8e4bce663f6c 100644
--- a/net/gnu-radius/Makefile
+++ b/net/gnu-radius/Makefile
@@ -1,6 +1,6 @@
PORTNAME= gnu-radius
PORTVERSION= 1.6.1
-PORTREVISION= 15
+PORTREVISION= 16
CATEGORIES= net
MASTER_SITES= GNU/radius
DISTNAME= radius-${PORTVERSION}
@@ -44,7 +44,7 @@ EMACS_DESC= Install Emacs dotfiles
SNMP_CONFIGURE_ENABLE= snmp
CLIENT_CONFIGURE_ENABLE= client
-CLIENT_LIB_DEPENDS= libguile.so:lang/guile1
+CLIENT_USES= guile:1.8,alias
CLIENT_CONFIGURE_OFF= --without-guile
MYSQL_USES= mysql
MYSQL_CONFIGURE_WITH= mysql
diff --git a/net/serveez/Makefile b/net/serveez/Makefile
index bd350d07681c..4754be8c03f4 100644
--- a/net/serveez/Makefile
+++ b/net/serveez/Makefile
@@ -1,6 +1,6 @@
PORTNAME= serveez
PORTVERSION= 0.2.2
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= net devel
MASTER_SITES= GNU
@@ -14,9 +14,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING
BROKEN_FreeBSD_13= ld: error: duplicate symbol: guile_global_error
BROKEN_FreeBSD_14= ld: error: duplicate symbol: guile_global_error
-LIB_DEPENDS= libguile.so:lang/guile1
-
-USES= cpe tar:xz libtool
+USES= cpe guile:1.8 tar:xz libtool
CPE_VENDOR= gnu
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-libserveez-install
diff --git a/print/lilypond-devel/Makefile b/print/lilypond-devel/Makefile
index bf90d1abfac9..ae927c005595 100644
--- a/print/lilypond-devel/Makefile
+++ b/print/lilypond-devel/Makefile
@@ -1,5 +1,6 @@
PORTNAME= lilypond
DISTVERSION= 2.25.6
+PORTREVISION= 1
CATEGORIES= print audio
MASTER_SITES= http://lilypond.org/download/source/v${DISTVERSION:R}/
PKGNAMESUFFIX= -devel
@@ -22,9 +23,6 @@ BUILD_DEPENDS= bash:shells/bash \
zip:archivers/zip
LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2 \
- libgc-threaded.so:devel/boehm-gc-threaded \
- libgmp.so:math/gmp \
- libguile-2.2.so:lang/guile2 \
libharfbuzz.so:print/harfbuzz \
libltdl.so:devel/libltdl \
libpng16.so:graphics/png
@@ -32,7 +30,7 @@ RUN_DEPENDS= ${LOCALBASE}/share/fonts/dejavu/DejaVuSans-Bold.ttf:x11-fonts/dejav
mftrace:print/mftrace
USES= bison:build compiler:c++11-lib cpe ghostscript gmake gnome \
- magick:7,build perl5 pkgconfig python
+ guile:2.2 magick:7,build perl5 pkgconfig python
USE_CXXSTD= c++14
USE_GNOME= cairo pango
USE_PERL5= build
diff --git a/print/lilypond/Makefile b/print/lilypond/Makefile
index 04bbd6a0b062..5f868cea6a93 100644
--- a/print/lilypond/Makefile
+++ b/print/lilypond/Makefile
@@ -1,5 +1,6 @@
PORTNAME= lilypond
DISTVERSION= 2.24.1
+PORTREVISION= 1
CATEGORIES= print audio
MASTER_SITES= http://lilypond.org/download/source/v${DISTVERSION:R}/
@@ -21,16 +22,12 @@ BUILD_DEPENDS= bash:shells/bash \
zip:archivers/zip
LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2 \
- libgc-threaded.so:devel/boehm-gc-threaded \
- libgmp.so:math/gmp \
- libguile-2.2.so:lang/guile2 \
- libharfbuzz.so:print/harfbuzz \
- libltdl.so:devel/libltdl
+ libharfbuzz.so:print/harfbuzz
RUN_DEPENDS= ${LOCALBASE}/share/fonts/dejavu/DejaVuSans-Bold.ttf:x11-fonts/dejavu \
mftrace:print/mftrace
USES= bison:build compiler:c++11-lib cpe ghostscript gmake gnome \
- magick:7,build perl5 pkgconfig python
+ guile:2.2 magick:7,build perl5 pkgconfig python
USE_CXXSTD= c++14
USE_GNOME= pango
USE_PERL5= build
@@ -38,9 +35,9 @@ USE_PERL5= build
GNU_CONFIGURE= yes
CONFIGURE_ENV+= ac_cv_prog_MAKEINFO="${LOCALBASE}/bin/makeinfo" \
FLEX=${FLEX} \
- GUILE_FLAVOR=guile-2.2 \
HOME=${WRKDIR} \
- YACC=${YACC}
+ YACC=${YACC} \
+ GUILE_FLAVOR=guile-${GUILE_VER}
MAKEFILE= GNUmakefile
ALL_TARGET= all
diff --git a/science/harminv/Makefile b/science/harminv/Makefile
index 96e4d1247352..5c0483d3e885 100644
--- a/science/harminv/Makefile
+++ b/science/harminv/Makefile
@@ -1,6 +1,6 @@
PORTNAME= harminv
PORTVERSION= 1.3.1
-PORTREVISION= 20
+PORTREVISION= 21
CATEGORIES= science
MASTER_SITES= http://ab-initio.mit.edu/harminv/
@@ -8,8 +8,6 @@ MAINTAINER= devel@stasyan.com
COMMENT= Solver of harmonic inversion
WWW= http://ab-initio.mit.edu/wiki/index.php/Harminv
-LIB_DEPENDS= libguile-2.2.so:lang/guile2
-
USES= blaslapack fortran gmake libtool pathfix
GNU_CONFIGURE= yes
USE_GCC= yes
diff --git a/science/libctl/Makefile b/science/libctl/Makefile
index cd8a7d386d2c..2b76d8cb2ee5 100644
--- a/science/libctl/Makefile
+++ b/science/libctl/Makefile
@@ -1,6 +1,6 @@
PORTNAME= libctl
DISTVERSION= 4.5.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= science math
MASTER_SITES= https://github.com/NanoComp/libctl/releases/download/v${DISTVERSION}/
@@ -12,10 +12,7 @@ LICENSE= GPLv2
BROKEN_sparc64= does not build
-LIB_DEPENDS= libgc-threaded.so:devel/boehm-gc-threaded \
- libguile-2.2.so:lang/guile2
-
-USES= fortran libtool pkgconfig
+USES= fortran guile:2.2 libtool pkgconfig
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-shared
USE_LDCONFIG= yes
diff --git a/science/mpb/Makefile b/science/mpb/Makefile
index d60348746508..06e456abe78b 100644
--- a/science/mpb/Makefile
+++ b/science/mpb/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mpb
DISTVERSION= 1.11.1
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= science
MASTER_SITES= https://github.com/NanoComp/mpb/releases/download/v${DISTVERSION}/
@@ -14,12 +14,10 @@ BUILD_DEPENDS= bash:shells/bash
# NLOPT should be enabled in science/libctl
LIB_DEPENDS= libctl.so:science/libctl \
libfftw3.so:math/fftw3 \
- libgc-threaded.so:devel/boehm-gc-threaded \
- libguile-2.2.so:lang/guile2 \
libhdf5.so:science/hdf5 \
libnlopt.so:math/nlopt
-USES= fortran libtool pkgconfig readline
+USES= fortran guile:2.2,alias libtool pkgconfig readline
USE_GCC= yes
USE_LDCONFIG= yes
# Do not use --with-mpi, because it is not guaranted
diff --git a/sysutils/mcron/Makefile b/sysutils/mcron/Makefile
index 74ae25bbbb4a..c98be6ca7d8c 100644
--- a/sysutils/mcron/Makefile
+++ b/sysutils/mcron/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mcron
PORTVERSION= 1.2.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= sysutils
MASTER_SITES= GNU
@@ -11,9 +11,7 @@ WWW= https://www.gnu.org/software/mcron/
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= libguile-2.2.so:lang/guile2
-
-USES= gmake pkgconfig
+USES= guile:2.2,3.0 gmake pkgconfig
GNU_CONFIGURE= yes
CONFLICTS_INSTALL= interchange isc-cron # bin/crontab
@@ -22,7 +20,4 @@ TEST_TARGET= check
INFO= mcron
-PLIST_SUB= GUILE_SITE=share/guile/site/2.2 \
- GUILE_SITE_CCACHE=lib/guile/2.2/site-ccache
-
.include <bsd.port.mk>
diff --git a/textproc/scss/Makefile b/textproc/scss/Makefile
index 210a62a56564..3aa3717de7dd 100644
--- a/textproc/scss/Makefile
+++ b/textproc/scss/Makefile
@@ -12,7 +12,7 @@ WWW= https://www.nongnu.org/scss/
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/COPYING
-RUN_DEPENDS= guile:lang/guile
+USES= guile:run
NO_BUILD= yes
NO_ARCH= yes
diff --git a/textproc/sdom/Makefile b/textproc/sdom/Makefile
index 74c86a0ade61..d225d9280f30 100644
--- a/textproc/sdom/Makefile
+++ b/textproc/sdom/Makefile
@@ -1,6 +1,6 @@
PORTNAME= sdom
PORTVERSION= 0.5.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc scheme
MASTER_SITES= SAVANNAH
@@ -11,10 +11,13 @@ WWW= https://www.nongnu.org/sdom/
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-RUN_DEPENDS= guile-lib>=0:devel/guile-lib
+RUN_DEPENDS= guile-lib-${GUILE_FLAVOR}>=0:devel/guile-lib@${GUILE_FLAVOR}
+
+USES= guile:env
NO_ARCH= yes
NO_BUILD= yes
+NO_ARCH= yes
INFO= sdom
PLIST_FILES= share/guile/sdom/common.scm \
diff --git a/www/elinks/Makefile b/www/elinks/Makefile
index 3ad131e8a572..89663e541e0a 100644
--- a/www/elinks/Makefile
+++ b/www/elinks/Makefile
@@ -1,6 +1,7 @@
PORTNAME= elinks
DISTVERSIONPREFIX= v
DISTVERSION= 0.16.1.1
+PORTREVISION= 1
CATEGORIES= www
MAINTAINER= jailbird@fdf.net
@@ -46,7 +47,7 @@ BROTLI_MESON_TRUE= brotli
NLS_USES= gettext
NLS_MESON_TRUE= nls
-GUILE_LIB_DEPENDS= libguile-3.0.so:lang/guile
+GUILE_USES= guile:3.0
GUILE_MESON_TRUE= guile
LUA_USES= lua:52-53
diff --git a/www/guile-www/Makefile b/www/guile-www/Makefile
index 37f544be069c..9cf14dc9c309 100644
--- a/www/guile-www/Makefile
+++ b/www/guile-www/Makefile
@@ -1,6 +1,6 @@
PORTNAME= guile-www
PORTVERSION= 1.1.1
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= www devel scheme
MASTER_SITES= GNU/guile
@@ -11,7 +11,7 @@ WWW= https://www.gnu.org/software/guile/
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
-RUN_DEPENDS= guile:lang/guile1
+USES= guile:1.8,build,run
GNU_CONFIGURE= yes
INFO= guile-www
diff --git a/x11-toolkits/guile-gnome-platform/Makefile b/x11-toolkits/guile-gnome-platform/Makefile
index dc8469a81ad3..a199d807a516 100644
--- a/x11-toolkits/guile-gnome-platform/Makefile
+++ b/x11-toolkits/guile-gnome-platform/Makefile
@@ -1,6 +1,6 @@
PORTNAME= guile-gnome-platform
DISTVERSION= 2.16.5
-PORTREVISION= 8
+PORTREVISION= 9
CATEGORIES= x11-toolkits
MASTER_SITES= GNU/guile-gnome/${PORTNAME}
@@ -10,10 +10,7 @@ WWW= https://www.gnu.org/software/guile-gnome/
LICENSE= GPLv2+
-BUILD_DEPENDS= guile2>=2.2:lang/guile2
-LIB_DEPENDS= libguile-2.2.so:lang/guile2 \
- libgc-threaded.so:devel/boehm-gc-threaded \
- libgwrap-guile-runtime.so:devel/g-wrap \
+LIB_DEPENDS= libgwrap-guile-runtime.so:devel/g-wrap \
libffi.so:devel/libffi
FLAVORS= lite full
@@ -25,7 +22,8 @@ lite_CONFLICTS_INSTALL=${PORTNAME}-full
# We don't actually need gettext, but for some incomprehensible reason it
# is the package that installs some basic gnulib autoconf functionality.
-USES= autoreconf gettext-tools gmake gnome libtool pkgconfig
+USES= autoreconf gettext-tools gmake gnome guile:2.2,alias \
+ libtool pkgconfig
USE_GNOME= glib20
USE_LDCONFIG= yes
@@ -58,7 +56,8 @@ ATK_CONFIGURE_WITH= atk
ATK_INFO= guile-gnome-atk
# Cairo support depends on a separate module.
-CAIRO_LIB_DEPENDS= libguile-cairo.so:graphics/guile-cairo
+CAIRO_BUILD_DEPENDS= ${LOCALBASE}/lib/guile/${GUILE_VER}/extensions/libguile-cairo.so:graphics/guile-cairo@${GUILE_FLAVOR}
+CAIRO_RUN_DEPENDS= ${LOCALBASE}/lib/guile/${GUILE_VER}/extensions/libguile-cairo.so:graphics/guile-cairo@${GUILE_FLAVOR}
CAIRO_USE= gnome=cairo
CAIRO_CONFIGURE_WITH= cairo
@@ -76,11 +75,13 @@ GTK2_IMPLIES= CAIRO
# These dependencies are brought in from gtk2's pkgconf, but
# not accounted for by Uses/gnome
GTK2_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
- libfreetype.so:print/freetype2
+ libfreetype.so:print/freetype2 \
+ libharfbuzz.so:print/harfbuzz
GTK2_USE= gnome=gtk20,gdkpixbuf2
GTK2_CONFIGURE_WITH= gtk pixbuf
GTK2_INFO= guile-gnome-gtk guile-gnome-gdk
+PANGO_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz
PANGO_USE= gnome=pango
PANGO_CONFIGURE_WITH= pango
PANGO_INFO= guile-gnome-pango
@@ -145,6 +146,11 @@ post-patch:
# components. This doesn't affect the packaging but makes QA testing
# of the options much easier.
+# DO NOT try and add rules here to strip .go files, no matter how loudly
+# testport / stage-qa shouts at you about it, because .go files (which are
+# compiled bytecode) are not intended to be stripped and doing so causes
+# breakage at run time.
+
post-install:
for f in ${INFO_UNUSED}; do \
${RM} ${STAGEDIR}${PREFIX}/${INFO_PATH}/$${f}.info*; \
diff --git a/x11-toolkits/guile-gnome-platform/pkg-plist b/x11-toolkits/guile-gnome-platform/pkg-plist
index 0ac8a3c753eb..7c2ac5ca1453 100644
--- a/x11-toolkits/guile-gnome-platform/pkg-plist
+++ b/x11-toolkits/guile-gnome-platform/pkg-plist
@@ -164,4 +164,4 @@ libdata/pkgconfig/guile-gnome-glib-2.pc
%%PANGO%%%%DATADIR%%/gnome/overrides/pangocairo.defs
%%PANGO%%%%DATADIR%%/gnome/pango.scm
%%PANGO%%%%DATADIR%%/gnome/pangocairo.scm
-share/guile/site/gnome-2.scm
+%%GUILE_GLOBAL_SITE%%/gnome-2.scm
diff --git a/x11/xbindkeys/Makefile b/x11/xbindkeys/Makefile
index ee1ee133e6fd..d40b2bc526e0 100644
--- a/x11/xbindkeys/Makefile
+++ b/x11/xbindkeys/Makefile
@@ -1,6 +1,5 @@
PORTNAME= xbindkeys
-PORTVERSION= 1.8.6
-PORTREVISION= 2
+PORTVERSION= 1.8.7
CATEGORIES= x11
MASTER_SITES= http://www.nongnu.org/xbindkeys/
@@ -22,8 +21,8 @@ OPTIONS_DEFINE= GUILE TCL
TCL_USES= tk
TCL_CONFIGURE_OFF= --disable-tk
TCL_PLIST_FILES= bin/xbindkeys_show man/man1/xbindkeys_show.1.gz
-GUILE_LIB_DEPENDS= libguile.so:lang/guile
-GUILE_CONFIGURE_OFF= --disable-guile
+GUILE_USES= guile:1.8,2.2,3.0 autoreconf gettext-tools pkgconfig
+GUILE_CONFIGURE_ENABLE= guile
post-patch-TCL-on:
@${REINPLACE_CMD} -e 's| wish | ${WISH} |g' ${WRKSRC}/xbindkeys_show
diff --git a/x11/xbindkeys/distinfo b/x11/xbindkeys/distinfo
index 068ac00341ec..39e80a87f2a4 100644
--- a/x11/xbindkeys/distinfo
+++ b/x11/xbindkeys/distinfo
@@ -1,2 +1,3 @@
-SHA256 (xbindkeys-1.8.6.tar.gz) = 6c0d18be19fc19ab9b4595edf3a23c0a6946c8a5eb5c1bc395471c8f9a710d18
-SIZE (xbindkeys-1.8.6.tar.gz) = 151941
+TIMESTAMP = 1684687370
+SHA256 (xbindkeys-1.8.7.tar.gz) = a29b86a8ec91d4abc83b420e547da27470847d0efe808aa6e75147aa0adb82f2
+SIZE (xbindkeys-1.8.7.tar.gz) = 177532