Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Jun 2024 16:53:51 GMT
From:      Joe Marcus Clarke <marcus@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: a255fc39c641 - main - net/netatalk3: Update to 3.2.0
Message-ID:  <202406171653.45HGrpvp039498@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by marcus:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a255fc39c641695d0e633a8f3b559f378d4ebeda

commit a255fc39c641695d0e633a8f3b559f378d4ebeda
Author:     Joe Marcus Clarke <marcus@FreeBSD.org>
AuthorDate: 2024-06-17 16:48:20 +0000
Commit:     Joe Marcus Clarke <marcus@FreeBSD.org>
CommitDate: 2024-06-17 16:48:20 +0000

    net/netatalk3: Update to 3.2.0
    
    See https://github.com/Netatalk/netatalk/releases/tag/netatalk-3-2-0 for
    the list of changes in this release.
    
    A big change was a move to Meson for build.  This introduced some new
    breakages, but I think I have fixed them.  Runtime tests show
    functionality is on par with 3.1.
---
 net/netatalk3/Makefile                             |  82 ++++----
 net/netatalk3/distinfo                             |   6 +-
 net/netatalk3/files/patch-bin_meson.build          |   9 +
 net/netatalk3/files/patch-config_Makefile.in       |  42 ----
 net/netatalk3/files/patch-config_meson.build       |  29 +++
 net/netatalk3/files/patch-configure                |  11 -
 .../files/patch-contrib_shell__utils_meson.build   |  14 ++
 net/netatalk3/files/patch-etc_afpd_Makefile.in     |  20 --
 .../files/patch-etc_cnid__dbd_cnid__metad.c        |  10 -
 net/netatalk3/files/patch-etc_netatalk_Makefile.in |  11 -
 net/netatalk3/files/patch-etc_uams_meson.build     | 222 +++++++++++++++++++++
 .../files/patch-etc_uams_uams__dhx2__pam.c         |  11 -
 .../files/patch-etc_uams_uams__dhx__pam.c          |  19 --
 net/netatalk3/files/patch-etc_uams_uams__pam.c     |  11 -
 .../files/patch-libatalk_adouble_ad__open.c        |  43 ----
 net/netatalk3/files/patch-meson.build              |  81 ++++++++
 net/netatalk3/pkg-plist                            |   6 +-
 17 files changed, 402 insertions(+), 225 deletions(-)

diff --git a/net/netatalk3/Makefile b/net/netatalk3/Makefile
index 6c8c38771d02..eecc32512471 100644
--- a/net/netatalk3/Makefile
+++ b/net/netatalk3/Makefile
@@ -1,9 +1,8 @@
 PORTNAME=	netatalk
-PORTVERSION=	3.1.18
-PORTREVISION=	3
+PORTVERSION=	3.2.0
 PORTEPOCH=	1
 CATEGORIES=	net
-MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}-${PORTVERSION:S/./-/g}
+MASTER_SITES=	https://github.com/${PORTNAME}/${PORTNAME}/releases/download/netatalk-${PORTVERSION:S/./-/g}/
 PKGNAMESUFFIX=	3
 
 MAINTAINER=	marcus@FreeBSD.org
@@ -15,63 +14,66 @@ LICENSE=	GPLv2
 LIB_DEPENDS=	libgcrypt.so:security/libgcrypt \
 		libevent.so:devel/libevent
 
-USES=		bdb:18 cpe gettext gmake iconv libtool perl5 pkgconfig shebangfix ssl tar:bzip2
-GNU_CONFIGURE=	yes
-GNU_CONFIGURE_MANPREFIX=	${PREFIX}/share
+USES=		bdb:18 cpe gettext iconv meson perl5 pkgconfig shebangfix ssl tar:xz
 USE_LDCONFIG=	yes
 USE_RC_SUBR=	netatalk
-INSTALL_TARGET=install-strip
+#INSTALL_TARGET=install-strip
 CPE_VENDOR=	netatalk_project
 
-CONFIGURE_ARGS+=	--with-pkgconfdir=${PREFIX}/etc \
-			--with-libgcrypt-dir=${LOCALBASE} \
-			--with-uams-path=${PREFIX}/libexec/netatalk-uams \
-			--with-bdb=${LOCALBASE} \
-			${ICONV_CONFIGURE_BASE} \
+MESON_ARGS=		-Dwith-libgcrypt-dir=${LOCALBASE} \
+			-Dwith-bdb=${LOCALBASE} \
+			-Dwith-libiconv=${LOCALBASE} \
+			-Dwith-ssl-dir=${OPENSSLBASE} \
+			-Dwith-dtrace=false \
+			-Ddisable-init-hooks=true \
+			-Dpkg_config_path=${LOCALBASE}/libdata/pkgconfig \
+			-Dwith-shadow=disabled \
+			-Denable-pgp-uam=disabled \
 			--localstatedir=/var \
-			--disable-bundled-libevent \
-			--with-libevent-header=${LOCALBASE}/include \
-			--with-libevent-lib=${LOCALBASE}/lib \
-			--with-ssl-dir=${OPENSSLBASE} \
-			--without-dtrace
+			--infodir=${PREFIX}/share/info
 
-OPTIONS_DEFINE=PAM KERBEROS5 LDAP SENDFILE KERBEROS DBUS MYSQL ACL LIBWRAP
-OPTIONS_DEFAULT=AVAHI DBUS KERBEROS LIBWRAP
+OPTIONS_DEFINE=PAM KERBEROS5 LDAP SENDFILE KERBEROS DBUS MYSQL ACL LIBWRAP SPOTLIGHT
+OPTIONS_DEFAULT=AVAHI DBUS KERBEROS LIBWRAP SENDFILE
 OPTIONS_RADIO=ZEROCONF
 OPTIONS_RADIO_ZEROCONF=AVAHI MDNSRESPONDER
 ZEROCONF_DESC=	Zeroconf(Bonjour) support
 MYSQL_DESC=	Enable MySQL CNID backend support
 SENDFILE_DESC=	Enable Sendfile support
 ACL_DESC=	Enable ACL support
+SPOTLIGHT_DESC=	Enable Spotlight search support
 OPTIONS_SUB=	yes
-KERBEROS5_CONFIGURE_ON=	--enable-krbV-uam
-KERBEROS_CONFIGURE_WITH=kerberos
+KERBEROS5_MESON_ON=	-Denable-krbV-uam=enabled \
+			-Dwith-kerberos=enabled
+KERBEROS5_MESON_OFF=	-Denable-krbV-uam=disabled \
+			-Dwith-kerberos=disabled
 KERBEROS_LIB_DEPENDS=libgpg-error.so:security/libgpg-error
-PAM_CONFIGURE_WITH=pam
-AVAHI_CONFIGURE_ON=	--enable-zeroconf=${LOCALBASE}
+PAM_MESON_ON=		-Dwith-pam=${LOCALBASE}
+PAM_MESON_OFF=		-Dwithout-pam=true
 AVAHI_CFLAGS=		-I${LOCALBASE}/include -L${LOCALBASE}/lib
 AVAHI_LIB_DEPENDS=		libavahi-client.so:net/avahi-app
 AVAHI_SUB_LIST=		ZEROCONF="avahi_daemon"
-MDNSRESPONDER_CONFIGURE_ON=	--enable-zeroconf=${LOCALBASE}
-MDNSRESPONDER_CONFIGURE_ENV=	ac_cv_lib_avahi_client_avahi_client_new=no
 MDNSRESPONDER_CFLAGS=		-I${LOCALBASE}/include -L${LOCALBASE}/lib
 MDNSRESPONDER_LIB_DEPENDS=		libdns_sd.so:net/mDNSResponder
 MDNSRESPONDER_SUB_LIST=	ZEROCONF="mdnsd"
-LDAP_CONFIGURE_ON=	--with-ldap=${LOCALBASE}
+LDAP_MESON_ON=	-Dwith-ldap=${LOCALBASE}
 LDAP_CFLAGS=		-I${LOCALBASE}/include -L${LOCALBASE}/lib
 LDAP_USES=	ldap
-LDAP_CONFIGURE_OFF=	--without-ldap
-SENDFILE_CONFIGURE_ENABLE=sendfile
+SENDFILE_MESON_OFF=-Ddisable-sendfile=true
 DBUS_USES=	gnome python
 DBUS_USE=	GNOME=glib20
 DBUS_LIB_DEPENDS=	libdbus-glib-1.so:devel/dbus-glib \
 			libdbus-1.so:devel/dbus
 DBUS_RUN_DEPENDS=	${PYTHON_SITELIBDIR}/dbus/_dbus.py:devel/py-dbus@${PY_FLAVOR}
+DBUS_MESON_ON=		-Dwith-dbus-daemon=${LOCALBASE}/bin/dbus-daemon \
+			-Dwith-dbus-sysconf-dir=${LOCALBASE}/etc/dbus-1/system.d
+DBUS_MESON_OFF=		-Dwith-afpstats=disabled
 MYSQL_USES=	mysql
-MYSQL_CONFIGURE_OFF=--with-mysql-config=/nonexistent
+MYSQL_MESON_OFF=-Dwith-mysql-config=/nonexistent
 ACL_LIB_DEPENDS=	libsunacl.so:sysutils/libsunacl
-ACL_CONFIGURE_WITH=acls
-LIBWRAP_CONFIGURE_ENABLE=tcp-wrappers
+ACL_MESON_ENABLED=with-acls
+LIBWRAP_MESON_OFF=-Ddisable-tcp-wrappers=true
+SPOTLIGHT_LIB_DEPENDS=	libtracker-sparql-3.0.so:sysutils/tracker3
+SPOTLIGHT_MESON_OFF=	-Dwith-spotlight=disabled
 
 SHEBANG_GLOB=	afpstats
 
@@ -81,21 +83,21 @@ CONFLICTS=	jday yudit # bin/dbd man/man1/uniconv.1.gz
 
 .if ${PORT_OPTIONS:MAVAHI}=="" && ${PORT_OPTIONS:MMDNSRESPONDER}==""
 SUB_LIST+=	ZEROCONF=""
-CONFIGURE_ARGS+=--disable-zeroconf
+MESON_ARGS+=-Denable-zeroconf=false
 .endif
 
-post-patch:
-	@${REINPLACE_CMD} -e 's|%%DB_NAME%%|${BDB_INCLUDE_DIR:T}| ; \
-		s|%%DB_LIB%%|-l${BDB_LIB_NAME}|g ; \
-		s|%%LOCALBASE%%|${LOCALBASE}|g' \
-		${WRKSRC}/configure
-	@${REINPLACE_CMD} -e 's|\.dist|\.sample|g' \
-		${WRKSRC}/config/Makefile.in
+#post-patch:
+#	@${REINPLACE_CMD} -e 's|%%DB_NAME%%|${BDB_INCLUDE_DIR:T}| ; \
+#		s|%%DB_LIB%%|-l${BDB_LIB_NAME}|g ; \
+#		s|%%LOCALBASE%%|${LOCALBASE}|g' \
+#		${WRKSRC}/configure
+#	@${REINPLACE_CMD} -e 's|\.dist|\.sample|g' \
+#		${WRKSRC}/config/Makefile.in
 #	@${REINPLACE_CMD} -e 's|%%PYTHONCMD%%|${PYTHONCMD}|' \
 #		${WRKSRC}/contrib/shell_utils/afpstats
 
 post-install:
-	${INSTALL_SCRIPT} ${WRKSRC}/contrib/macusers/macusers \
+	${INSTALL_SCRIPT} ${BUILD_WRKSRC}/contrib/macusers/macusers \
 		${STAGEDIR}${PREFIX}/bin/macusers
 
 .if ${PORT_OPTIONS:MPAM}
diff --git a/net/netatalk3/distinfo b/net/netatalk3/distinfo
index efbf316af387..93e2d66a8051 100644
--- a/net/netatalk3/distinfo
+++ b/net/netatalk3/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1696633959
-SHA256 (netatalk-3.1.18.tar.bz2) = 86d209dc7776a4ba17845164d2e376a469cee376a27b18ae31898e3f4ba41655
-SIZE (netatalk-3.1.18.tar.bz2) = 1249785
+TIMESTAMP = 1718627379
+SHA256 (netatalk-3.2.0.tar.xz) = 0c2b4b47450bc7ac95a268d1033471f572a3e06b64131fcef9b66e73663b6d08
+SIZE (netatalk-3.2.0.tar.xz) = 1927124
diff --git a/net/netatalk3/files/patch-bin_meson.build b/net/netatalk3/files/patch-bin_meson.build
new file mode 100644
index 000000000000..30e56c12f969
--- /dev/null
+++ b/net/netatalk3/files/patch-bin_meson.build
@@ -0,0 +1,9 @@
+--- bin/meson.build.orig	2024-06-17 15:51:32 UTC
++++ bin/meson.build
+@@ -2,5 +2,5 @@ endif
+ if have_ssl
+     subdir('afppasswd')
+ endif
+-subdir('cnid')
++#subdir('cnid')
+ subdir('misc')
diff --git a/net/netatalk3/files/patch-config_Makefile.in b/net/netatalk3/files/patch-config_Makefile.in
deleted file mode 100644
index da20e2b6b179..000000000000
--- a/net/netatalk3/files/patch-config_Makefile.in
+++ /dev/null
@@ -1,42 +0,0 @@
---- config/Makefile.in.orig	2022-03-22 04:51:08 UTC
-+++ config/Makefile.in
-@@ -824,8 +824,8 @@ install-data-local: install-config-files
- 
- uninstall-local:
- 	@for f in $(CONFFILES) $(GENFILES); do \
--		echo rm -f $(DESTDIR)$(pkgconfdir)/$$f; \
--		rm -f $(DESTDIR)$(pkgconfdir)/$$f; \
-+	    echo rm -f $(DESTDIR)$(pkgconfdir)/$$f.sample; \
-+	    rm -f $(DESTDIR)$(pkgconfdir)/$$f.sample; \
- 	done
- 	rm -f $(DESTDIR)$(pkgconfdir)/dbus-session.conf
- 	rm -f $(DESTDIR)$(localstatedir)/netatalk/README
-@@ -835,21 +835,16 @@ uninstall-local:
- install-config-files: $(CONFFILES) $(GENFILES)
- 	$(mkinstalldirs) $(DESTDIR)$(pkgconfdir)
- 	@for f in $(CONFFILES) ; do \
--		if test "x$(OVERWRITE_CONFIG)" = "xyes" -o ! -f $(DESTDIR)$(pkgconfdir)/$$f; then \
--			echo "$(INSTALL_DATA) $$f $(DESTDIR)$(pkgconfdir)"; \
--			$(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(pkgconfdir); \
--		else \
--			echo "not overwriting $$f"; \
--		fi; \
-+	    echo "$(INSTALL_DATA) $$f $(DESTDIR)$(pkgconfdir)/$$f.sample"; \
-+	    $(INSTALL_DATA) $$f $(DESTDIR)$(pkgconfdir)/$$f.sample; \
- 	done
- 	@for f in $(GENFILES); do \
--		if test "x$(OVERWRITE_CONFIG)" = "xyes" -o ! -f $(DESTDIR)$(pkgconfdir)/$$f; then \
--			echo "$(INSTALL_DATA) $$f $(DESTDIR)$(pkgconfdir)"; \
--			$(INSTALL_DATA) $$f $(DESTDIR)$(pkgconfdir); \
--		else \
--			echo "not overwriting $$f"; \
--		fi; \
-+	    if [ $$f != "dbus-session.conf" ]; then \
-+	    	echo "$(INSTALL_DATA) $$f $(DESTDIR)$(pkgconfdir)/$$f.sample"; \
-+	    	$(INSTALL_DATA) $$f $(DESTDIR)$(pkgconfdir)/$$f.sample; \
-+	    fi; \
- 	done
-+	$(INSTALL_DATA) dbus-session.conf $(DESTDIR)$(pkgconfdir)/dbus-session.conf.netatalk
- 
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/net/netatalk3/files/patch-config_meson.build b/net/netatalk3/files/patch-config_meson.build
new file mode 100644
index 000000000000..fa35b01c47cf
--- /dev/null
+++ b/net/netatalk3/files/patch-config_meson.build
@@ -0,0 +1,29 @@
+--- config/meson.build.orig	2024-06-01 04:56:52 UTC
++++ config/meson.build
+@@ -7,23 +7,16 @@ custom_target(
+ custom_target(
+     'dbus_session',
+     input: 'dbus-session.conf.tmpl',
+-    output: 'dbus-session.conf',
++    output: 'dbus-session.conf.netatalk',
+     command: sed_command,
+     capture: true,
+     install: true,
+     install_dir: pkgconfdir,
+ )
+ 
+-if (
+-    not fs.exists(pkgconfdir / 'afp.conf')
+-    or (get_option('enable-overwrite') and fs.exists(pkgconfdir / 'afp.conf'))
+-)
+-    install_data(afp_conf, install_dir: pkgconfdir)
+-else
+-    message('not overwriting', 'afp.conf')
+-endif
++install_data(afp_conf, rename: 'afp.conf.sample', install_dir: pkgconfdir)
+ 
+-install_data('extmap.conf', install_dir: pkgconfdir)
++install_data('extmap.conf', rename: 'extmap.conf.sample', install_dir: pkgconfdir)
+ 
+ install_data('netatalk-dbus.conf', install_dir: dbus_sysconf_dir)
+ 
diff --git a/net/netatalk3/files/patch-configure b/net/netatalk3/files/patch-configure
deleted file mode 100644
index 65d60417021b..000000000000
--- a/net/netatalk3/files/patch-configure
+++ /dev/null
@@ -1,11 +0,0 @@
---- configure.orig	2023-09-11 13:10:58.000000000 -0400
-+++ configure	2023-09-13 15:28:59.173250000 -0400
-@@ -19064,7 +19078,7 @@ if test "x$bdb_required" = "xyes"; then
-     trybdbdir=""
-     dobdbsearch=yes
-     bdb_search_dirs="/usr/local /usr"
--    search_subdirs="/ /db6.1 /db6 /db5 /db5.3 /db5.2 /db5.1 /db51 /db5.0 /db50 /db4.8 /db48 /db4.7 /db47 /db4.6 /db46 /db4"
-+    search_subdirs="/%%DB_NAME%% / /db6.1 /db6 /db5 /db5.3 /db5.2 /db5.1 /db51 /db5.0 /db50 /db4.8 /db48 /db4.7 /db47 /db4.6 /db46 /db4"
- 
-     bdbfound=no
-     savedcflags="$CFLAGS"
diff --git a/net/netatalk3/files/patch-contrib_shell__utils_meson.build b/net/netatalk3/files/patch-contrib_shell__utils_meson.build
new file mode 100644
index 000000000000..966e3b61a6cc
--- /dev/null
+++ b/net/netatalk3/files/patch-contrib_shell__utils_meson.build
@@ -0,0 +1,14 @@
+--- contrib/shell_utils/meson.build.orig	2024-06-17 15:52:57 UTC
++++ contrib/shell_utils/meson.build
+@@ -24,8 +24,8 @@ endif
+     install_data(asipstatus_script, install_dir: bindir)
+ endif
+ 
+-install_data('fce_ev_script.sh', install_dir: bindir)
++#install_data('fce_ev_script.sh', install_dir: bindir)
+ 
+-install_data('make-casetable.pl', install_dir: bindir)
++#install_data('make-casetable.pl', install_dir: bindir)
+ 
+-install_data('make-precompose.h.pl', install_dir: bindir)
++#install_data('make-precompose.h.pl', install_dir: bindir)
diff --git a/net/netatalk3/files/patch-etc_afpd_Makefile.in b/net/netatalk3/files/patch-etc_afpd_Makefile.in
deleted file mode 100644
index 8272f7c82518..000000000000
--- a/net/netatalk3/files/patch-etc_afpd_Makefile.in
+++ /dev/null
@@ -1,20 +0,0 @@
---- etc/afpd/Makefile.in.orig	2023-02-26 19:09:30.000000000 -0500
-+++ etc/afpd/Makefile.in	2023-02-27 11:43:02.278126000 -0500
-@@ -185,7 +185,7 @@ AM_V_at = $(am__v_at_@AM_V@)
- am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
- am__v_at_0 = @
- am__v_at_1 = 
--DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
-+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -I$(top_builddir)/include
- depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
- am__maybe_remake_depfiles = depfiles
- am__depfiles_remade = ./$(DEPDIR)/afpd-acls.Po \
-@@ -485,7 +485,7 @@ afpd_SOURCES = afp_config.c afp_dsi.c afp_options.c af
- 	$(am__append_7)
- afpd_LDADD = $(top_builddir)/libatalk/libatalk.la @LIBGCRYPT_LIBS@ \
- 	@QUOTA_LIBS@ @WRAP_LIBS@ @LIBADD_DL@ @ACL_LIBS@ @PTHREAD_LIBS@ \
--	@GSSAPI_LIBS@ @KRB5_LIBS@ @MYSQL_LIBS@ $(am__append_2) \
-+	@GSSAPI_LIBS@ @KRB5_LIBS@ @MYSQL_LIBS@ @PAM_LIBS@ $(am__append_2) \
- 	$(am__append_10)
- afpd_LDFLAGS = -export-dynamic $(am__append_9)
- afpd_CFLAGS = @GSSAPI_CFLAGS@ @KRB5_CFLAGS@ @PTHREAD_CFLAGS@ \
diff --git a/net/netatalk3/files/patch-etc_cnid__dbd_cnid__metad.c b/net/netatalk3/files/patch-etc_cnid__dbd_cnid__metad.c
deleted file mode 100644
index e5788547b681..000000000000
--- a/net/netatalk3/files/patch-etc_cnid__dbd_cnid__metad.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- etc/cnid_dbd/cnid_metad.c.orig	2016-06-06 11:21:51 UTC
-+++ etc/cnid_dbd/cnid_metad.c
-@@ -39,6 +39,7 @@
- #include <string.h>
- #include <signal.h>
- #include <sys/types.h>
-+#include <sys/resource.h>
- #include <sys/time.h>
- #include <sys/resource.h>
- #include <sys/wait.h>
diff --git a/net/netatalk3/files/patch-etc_netatalk_Makefile.in b/net/netatalk3/files/patch-etc_netatalk_Makefile.in
deleted file mode 100644
index 653d80151e46..000000000000
--- a/net/netatalk3/files/patch-etc_netatalk_Makefile.in
+++ /dev/null
@@ -1,11 +0,0 @@
---- etc/netatalk/Makefile.in.orig	2022-05-01 17:38:31 UTC
-+++ etc/netatalk/Makefile.in
-@@ -433,7 +433,7 @@ netatalk_LDADD = \
- 	@ZEROCONF_LIBS@ \
- 	$(top_builddir)/libatalk/libatalk.la
- 
--netatalk_LDFLAGS = @LIBEVENT_LDFLAGS@ -levent
-+netatalk_LDFLAGS = @LIBEVENT_LIBS@
- noinst_HEADERS = afp_zeroconf.h afp_avahi.h afp_mdns.h
- all: all-am
- 
diff --git a/net/netatalk3/files/patch-etc_uams_meson.build b/net/netatalk3/files/patch-etc_uams_meson.build
new file mode 100644
index 000000000000..1dbf90df9078
--- /dev/null
+++ b/net/netatalk3/files/patch-etc_uams_meson.build
@@ -0,0 +1,222 @@
+--- etc/uams/meson.build.orig	2024-06-17 15:24:00 UTC
++++ etc/uams/meson.build
+@@ -7,7 +7,7 @@ uams_guest = shared_module(
+     name_prefix: '',
+     name_suffix: 'so',
+     install: true,
+-    install_dir: libdir / 'netatalk',
++    install_dir: libexecdir / 'netatalk-uams',
+ )
+ 
+ uams_guest = static_library(
+@@ -16,7 +16,7 @@ uams_guest = static_library(
+     include_directories: root_includes,
+     name_prefix: '',
+     install: true,
+-    install_dir: libdir / 'netatalk',
++    install_dir: libexecdir / 'netatalk-uams',
+ )
+ 
+ uams_passwd_sources = ['uams_passwd.c']
+@@ -29,7 +29,7 @@ uams_passwd = shared_module(
+     name_prefix: '',
+     name_suffix: 'so',
+     install: true,
+-    install_dir: libdir / 'netatalk',
++    install_dir: libexecdir / 'netatalk-uams',
+ )
+ 
+ uams_passwd = static_library(
+@@ -39,7 +39,7 @@ uams_passwd = static_library(
+     dependencies: [crypt],
+     name_prefix: '',
+     install: true,
+-    install_dir: libdir / 'netatalk',
++    install_dir: libexecdir / 'netatalk-uams',
+ )
+ 
+ ssl_links = []
+@@ -60,7 +60,7 @@ if have_ssl
+         name_prefix: '',
+         name_suffix: 'so',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+         build_rpath: libdir,
+         install_rpath: libdir,
+     )
+@@ -73,7 +73,7 @@ if have_ssl
+         link_with: ssl_links,
+         name_prefix: '',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+         build_rpath: libdir,
+         install_rpath: libdir,
+     )
+@@ -89,7 +89,7 @@ if have_ssl
+             name_prefix: '',
+             name_suffix: 'so',
+             install: true,
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+             build_rpath: libdir,
+             install_rpath: libdir,
+         )
+@@ -102,20 +102,20 @@ if have_ssl
+             link_with: ssl_links,
+             name_prefix: '',
+             install: true,
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+             build_rpath: libdir,
+             install_rpath: libdir,
+         )
+ 
+         install_symlink(
+             'uams_dhx.so',
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+             pointing_to: 'uams_dhx_pam.so',
+         )
+     else
+         install_symlink(
+             'uams_dhx.so',
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+             pointing_to: 'uams_dhx_passwd.so',
+         )
+     endif
+@@ -132,7 +132,7 @@ if have_libgcrypt
+         name_prefix: '',
+         name_suffix: 'so',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+ 
+     uams_dhx2_passwd = static_library(
+@@ -142,7 +142,7 @@ if have_libgcrypt
+         dependencies: [crypt, libgcrypt],
+         name_prefix: '',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+     if have_pam
+         uams_dhx2_pam_sources = ['uams_dhx2_pam.c']
+@@ -155,7 +155,7 @@ if have_libgcrypt
+             name_prefix: '',
+             name_suffix: 'so',
+             install: true,
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+         )
+ 
+         uams_dhx2_pam = static_library(
+@@ -165,18 +165,18 @@ if have_libgcrypt
+             dependencies: [pam, libgcrypt],
+             name_prefix: '',
+             install: true,
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+         )
+ 
+         install_symlink(
+             'uams_dhx2.so',
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+             pointing_to: 'uams_dhx2_pam.so',
+         )
+     else
+         install_symlink(
+             'uams_dhx2.so',
+-            install_dir: libdir / 'netatalk',
++            install_dir: libexecdir / 'netatalk-uams',
+             pointing_to: 'uams_dhx2_passwd.so',
+         )
+     endif
+@@ -193,7 +193,7 @@ if have_pam
+         name_prefix: '',
+         name_suffix: 'so',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+ 
+     uams_pam = static_library(
+@@ -203,18 +203,18 @@ if have_pam
+         dependencies: pam,
+         name_prefix: '',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+ 
+     install_symlink(
+         'uams_clrtxt.so',
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+         pointing_to: 'uams_pam.so',
+     )
+ else
+     install_symlink(
+         'uams_clrtxt.so',
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+         pointing_to: 'uams_passwd.so',
+     )
+ endif
+@@ -231,7 +231,7 @@ if have_ssl
+         name_prefix: '',
+         name_suffix: 'so',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+         build_rpath: libdir,
+         install_rpath: libdir,
+     )
+@@ -244,7 +244,7 @@ if have_ssl
+         link_with: ssl_links,
+         name_prefix: '',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+         build_rpath: libdir,
+         install_rpath: libdir,
+     )
+@@ -261,7 +261,7 @@ if enable_pgp_uam
+         name_prefix: '',
+         name_suffix: 'so',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+ 
+     uams_pgp = static_library(
+@@ -271,7 +271,7 @@ if enable_pgp_uam
+         dependencies: [crypt, ssl_deps],
+         name_prefix: '',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+ endif
+ 
+@@ -287,7 +287,7 @@ if have_gssapi
+         name_prefix: '',
+         name_suffix: 'so',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+ 
+     uams_gss = static_library(
+@@ -298,6 +298,6 @@ if have_gssapi
+         c_args: kerberos_c_args,
+         name_prefix: '',
+         install: true,
+-        install_dir: libdir / 'netatalk',
++        install_dir: libexecdir / 'netatalk-uams',
+     )
+ endif
diff --git a/net/netatalk3/files/patch-etc_uams_uams__dhx2__pam.c b/net/netatalk3/files/patch-etc_uams_uams__dhx2__pam.c
deleted file mode 100644
index 51c31679b6c8..000000000000
--- a/net/netatalk3/files/patch-etc_uams_uams__dhx2__pam.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- etc/uams/uams_dhx2_pam.c.orig	2023-11-22 15:19:12 UTC
-+++ etc/uams/uams_dhx2_pam.c
-@@ -136,7 +136,7 @@ error:
-  * echo off means password.
-  */
- static int PAM_conv (int num_msg,
--#ifdef LINUX
-+#if defined(LINUX) || (defined(FREEBSD) && __FreeBSD_version >= 1400000)
-                      const struct pam_message **msg,
- #else
-                      struct pam_message **msg,
diff --git a/net/netatalk3/files/patch-etc_uams_uams__dhx__pam.c b/net/netatalk3/files/patch-etc_uams_uams__dhx__pam.c
deleted file mode 100644
index ec176f5a80d0..000000000000
--- a/net/netatalk3/files/patch-etc_uams_uams__dhx__pam.c
+++ /dev/null
@@ -1,19 +0,0 @@
---- etc/uams/uams_dhx_pam.c.orig	2023-11-22 15:18:15 UTC
-+++ etc/uams/uams_dhx_pam.c
-@@ -8,6 +8,7 @@
- #ifdef HAVE_CONFIG_H
- #include "config.h"
- #endif /* HAVE_CONFIG_H */
-+#include <sys/param.h>
- 
- #if defined(USE_PAM) && defined(UAM_DHX)
- #include <stdio.h>
-@@ -80,7 +80,7 @@ static char *PAM_password;
-  * echo off means password.
-  */
- static int PAM_conv (int num_msg,
--#ifdef LINUX
-+#if defined(LINUX) || (defined(__FreeBSD_version) && __FreeBSD_version >= 1400000)
-                      const struct pam_message **msg,
- #else
-                      struct pam_message **msg,
diff --git a/net/netatalk3/files/patch-etc_uams_uams__pam.c b/net/netatalk3/files/patch-etc_uams_uams__pam.c
deleted file mode 100644
index 8bec8c72a221..000000000000
--- a/net/netatalk3/files/patch-etc_uams_uams__pam.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- etc/uams/uams_pam.c.orig	2023-11-22 15:00:28 UTC
-+++ etc/uams/uams_pam.c
-@@ -53,7 +53,7 @@ extern UAM_MODULE_EXPORT void append(struct papfile *,
-  * echo off means password.
-  */
- static int PAM_conv (int num_msg,
--#ifdef LINUX
-+#if defined(LINUX) || (defined(FREEBSD) && __FreeBSD_version >= 1400000)
-                      const struct pam_message **msg,
- #else
-                      struct pam_message **msg,
diff --git a/net/netatalk3/files/patch-libatalk_adouble_ad__open.c b/net/netatalk3/files/patch-libatalk_adouble_ad__open.c
deleted file mode 100644
index 05102b8d34df..000000000000
--- a/net/netatalk3/files/patch-libatalk_adouble_ad__open.c
+++ /dev/null
@@ -1,43 +0,0 @@
---- libatalk/adouble/ad_open.c.orig	2024-01-02 07:44:09 UTC
-+++ libatalk/adouble/ad_open.c
-@@ -668,6 +668,11 @@ reread:
-     int                 retry_read = 0;
- 
- reread:
-+    if (hst == NULL) {
-+        hst = &st;
-+        EC_NEG1( fstat(ad_reso_fileno(ad), hst) );
-+    }
-+
-     LOG(log_debug, logtype_ad, "ad_header_read_osx: %s", path ? fullpathname(path) : "");
-     ad_init_old(&adosx, AD_VERSION_EA, ad->ad_options);
-     buf = &adosx.ad_data[0];
-@@ -707,7 +712,7 @@ reread:
-         return -1;
-     }
- 
--    if (parse_entries(&adosx, nentries, header_len) != 0) {
-+    if (parse_entries(&adosx, nentries, hst->st_size) != 0) {
-         LOG(log_warning, logtype_ad, "ad_header_read(%s): malformed AppleDouble",
-             path ? fullpathname(path) : "");
-             errno = EIO;
-@@ -725,6 +730,7 @@ reread:
-         }
-         retry_read++;
-         if (ad_convert_osx(path, &adosx) == 1) {
-+	    hst = NULL;
-             goto reread;
-         }
-         errno = EIO;
-@@ -738,11 +744,6 @@ reread:
-         LOG(log_error, logtype_ad, "ad_header_read_osx: problem with rfork entry offset.");
-         errno = EIO;
-         return -1;
--    }
--
--    if (hst == NULL) {
--        hst = &st;
--        EC_NEG1( fstat(ad_reso_fileno(ad), &st) );
-     }
- 
-     ad_setentryoff(ad, ADEID_RFORK, ad_getentryoff(&adosx, ADEID_RFORK));
diff --git a/net/netatalk3/files/patch-meson.build b/net/netatalk3/files/patch-meson.build
new file mode 100644
index 000000000000..da457a0f49d6
--- /dev/null
+++ b/net/netatalk3/files/patch-meson.build
@@ -0,0 +1,81 @@
+--- meson.build.orig	2024-06-01 04:56:52 UTC
++++ meson.build
+@@ -40,6 +40,7 @@ sbindir = prefix / get_option('sbindir')
+ mandir = prefix / get_option('mandir')
+ pkgconfdir = prefix / get_option('sysconfdir')
+ sbindir = prefix / get_option('sbindir')
++libexecdir = prefix / get_option('libexecdir')
+ 
+ ##################
+ # Compiler flags #
+@@ -70,7 +71,7 @@ statedir = '-D_PATH_STATEDIR="' + localstatedir + '/ne
+ dversion = '-DVERSION="' + version + '"'
+ messagedir = '-DSERVERTEXT="' + localstatedir + '/netatalk/msg/"'
+ statedir = '-D_PATH_STATEDIR="' + localstatedir + '/netatalk/"'
+-uamdir = '-D_PATH_AFPDUAMPATH="' + libdir + '/netatalk/"'
++uamdir = '-D_PATH_AFPDUAMPATH="' + libexecdir + '/netatalk-uams/"'
+ 
+ ############
+ # Includes #
+@@ -487,6 +488,11 @@ if crypt.found()
+ if crypt.found()
+     cdata.set('HAVE_CRYPT_H', 1)
+     cdata.set('HAVE_LIBCRYPT', 1)
++else
++    crypt = cc.find_library('crypt', has_headers: 'unistd.h', required: false)
++    if crypt.found()
++        cdata.set('HAVE_LIBCRYPT', 1)
++    endif
+ endif
+ 
+ des = cc.find_library('des', required: false)
+@@ -763,19 +769,7 @@ else
+             required: false,
+         )
+ 
+-        if tracker.found()
+-            cdata.set(
+-                'TRACKER_MANAGING_COMMAND',
+-                '"tracker daemon"',
+-            )
+-            cdata.set(
+-                'TRACKER_PREFIX',
+-                '"'
+-                + tracker_sparql.get_variable(pkgconfig: 'prefix')
+-                + '"',
+-            )
+-            tracker_manager += 'tracker'
+-        elif tracker3.found()
++        if tracker3.found()
+             cdata.set('HAVE_TRACKER3', 1)
+             cdata.set(
+                 'TRACKER_MANAGING_COMMAND',
+@@ -816,15 +810,16 @@ else
+             endif
+         endif
+     endif
+-endif
+-
+-have_spotlight = (
++    have_spotlight = (
+     tracker_sparql.found()
+     and tracker_ok
+     and talloc.found()
+     and flex.found()
+     and bison.found()
+ )
++endif
++
++
+ if have_spotlight
+     cdata.set('WITH_SPOTLIGHT', 1)
+ endif
+@@ -1833,6 +1828,8 @@ int deny_severity = 0;
+     tcpwrap_code = '''
+ int allow_severity = 0;
+ int deny_severity = 0;
++
++int hosts_access();
+ 
+ int main(void) {
+ 
diff --git a/net/netatalk3/pkg-plist b/net/netatalk3/pkg-plist
index e32c966ab941..b8df0404b3b7 100644
--- a/net/netatalk3/pkg-plist
+++ b/net/netatalk3/pkg-plist
@@ -37,8 +37,8 @@ include/atalk/acl.h
 include/atalk/adouble.h
 include/atalk/afp.h
 include/atalk/bstrlib.h
+include/atalk/cast.h
 include/atalk/cnid.h
-include/atalk/compat.h
 include/atalk/dictionary.h
 include/atalk/ea.h
 include/atalk/globals.h
@@ -57,13 +57,11 @@ include/atalk/vfs.h
 include/atalk/volume.h
 lib/libatalk.a
 lib/libatalk.so
-lib/libatalk.so.0
-lib/libatalk.so.0.0.0
+lib/libatalk.so.18
 sbin/afpd
 sbin/cnid_dbd
 sbin/cnid_metad
 sbin/netatalk
-share/aclocal/netatalk.m4
 share/man/man1/ad.1.gz
 share/man/man1/afpldaptest.1.gz
 share/man/man1/afppasswd.1.gz



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202406171653.45HGrpvp039498>