diff --git a/net/netatalk4/Makefile b/net/netatalk4/Makefile index c1a4e53a2acf..b58b54e23d23 100644 --- a/net/netatalk4/Makefile +++ b/net/netatalk4/Makefile @@ -1,109 +1,111 @@ PORTNAME= netatalk -PORTVERSION= 4.2.4 +PORTVERSION= 4.3.0 CATEGORIES= net MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/netatalk-${PORTVERSION:S/./-/g}/ PKGNAMESUFFIX= 4 MAINTAINER= marcus@FreeBSD.org COMMENT= File server for Mac OS X WWW= https://netatalk.io/ LICENSE= GPLv2 BUILD_DEPENDS= cmark:textproc/cmark LIB_DEPENDS= libgcrypt.so:security/libgcrypt \ libevent.so:devel/libevent \ - libiniparser.so:devel/iniparser + libiniparser.so:devel/iniparser \ + libbstring.so:devel/bstring USES= bdb:18 cpe gettext iconv:wchar_t meson perl5 pkgconfig shebangfix ssl tar:xz USE_GNOME= libxslt:build USE_LDCONFIG= yes USE_RC_SUBR= netatalk #INSTALL_TARGET=install-strip CPE_VENDOR= netatalk_project MESON_ARGS= -Dwith-libgcrypt-path=${LOCALBASE} \ -Dwith-bdb-path=${LOCALBASE} \ -Dwith-libiconv-path=${LOCALBASE} \ -Dwith-dtrace=false \ -Dwith-init-hooks=false \ -Dpkg_config_path=${LOCALBASE}/libdata/pkgconfig \ -Dwith-webmin=false \ -Dwith-cups=false \ -Dwith-testsuite=false \ -Dwith-appletalk=false \ -Ddefault_library=both \ --infodir=${PREFIX}/share/info 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_MESON_ON= -Dwith-krbV-uam=true \ -Dwith-kerberos=true KERBEROS5_MESON_OFF= -Dwith-krbV-uam=false \ -Dwith-kerberos=false KERBEROS_LIB_DEPENDS=libgpg-error.so:security/libgpg-error PAM_MESON_ON= -Dwith-pam-path=${LOCALBASE} PAM_MESON_OFF= -Dwith-pam=false AVAHI_CFLAGS= -I${LOCALBASE}/include -L${LOCALBASE}/lib AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app AVAHI_SUB_LIST= ZEROCONF="avahi_daemon" MDNSRESPONDER_CFLAGS= -I${LOCALBASE}/include -L${LOCALBASE}/lib MDNSRESPONDER_LIB_DEPENDS= libdns_sd.so:net/mDNSResponder MDNSRESPONDER_SUB_LIST= ZEROCONF="mdnsd" LDAP_MESON_ON= -Dwith-ldap-path=${LOCALBASE} LDAP_MESON_OFF= -Dwith-ldap=false LDAP_CFLAGS= -I${LOCALBASE}/include -L${LOCALBASE}/lib LDAP_USES= ldap SENDFILE_MESON_OFF=-Dwith-sendfile=false 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-path=${LOCALBASE}/bin/dbus-daemon \ -Dwith-dbus-sysconf-path=${LOCALBASE}/etc/dbus-1/system.d DBUS_MESON_OFF= -Dwith-afpstats=false MYSQL_USES= mysql -MYSQL_MESON_OFF=-Dwith-cnid-mysql-backend=false +MYSQL_MESON_ON=-Dwith-cnid-default-backend=mysql +MYSQL_MESON_OFF=-Dwith-cnid-default-backend=dbd ACL_LIB_DEPENDS= libsunacl.so:sysutils/libsunacl ACL_MESON_OFF=-Dwith-acls=false LIBWRAP_MESON_OFF=-Dwith-tcp-wrappers=false SPOTLIGHT_LIB_DEPENDS= libtinysparql-3.0.so:devel/tinysparql SPOTLIGHT_MESON_OFF= -Dwith-spotlight=false SHEBANG_GLOB= afpstats CONFLICTS= netatalk3 .include .if ${PORT_OPTIONS:MAVAHI}=="" && ${PORT_OPTIONS:MMDNSRESPONDER}=="" SUB_LIST+= ZEROCONF="" MESON_ARGS+=-Dwith-zeroconf=false .endif post-patch: @${REINPLACE_CMD} -e 's|%%DB_NAME%%|${BDB_INCLUDE_DIR:T}|' \ ${WRKSRC}/meson.build # @${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} ${BUILD_WRKSRC}/contrib/shell_utils/macusers \ + ${INSTALL_SCRIPT} ${BUILD_WRKSRC}/contrib/bin_utils/macusers \ ${STAGEDIR}${PREFIX}/bin/macusers .if ${PORT_OPTIONS:MPAM} ${INSTALL_DATA} ${FILESDIR}/pam.conf ${STAGEDIR}${PREFIX}/etc/pam.d/netatalk.sample .endif .include diff --git a/net/netatalk4/distinfo b/net/netatalk4/distinfo index 5b6b8e802354..d23ce5d6bfc5 100644 --- a/net/netatalk4/distinfo +++ b/net/netatalk4/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1748700219 -SHA256 (netatalk-4.2.4.tar.xz) = 4f07bbe118a951dd740d3f51a87b5cafba2496bd0b22e704438f421aa6670f99 -SIZE (netatalk-4.2.4.tar.xz) = 935184 +TIMESTAMP = 1754580713 +SHA256 (netatalk-4.3.0.tar.xz) = bc71a6a2f11cf00cb69ef13e8487ab78d1241ae535feb010220c74c89dc890fb +SIZE (netatalk-4.3.0.tar.xz) = 945292 diff --git a/net/netatalk4/files/patch-config_meson.build b/net/netatalk4/files/patch-config_meson.build index 63840c721ac7..9c7edeb21c48 100644 --- a/net/netatalk4/files/patch-config_meson.build +++ b/net/netatalk4/files/patch-config_meson.build @@ -1,87 +1,84 @@ ---- config/meson.build.orig 2025-04-13 22:12:29 UTC +--- config/meson.build.orig 2025-08-05 13:56:32 UTC +++ config/meson.build -@@ -4,79 +4,23 @@ afp_conf = configure_file( +@@ -4,76 +4,23 @@ afp_conf = configure_file( configuration: cdata, ) --if ( -- fs.exists(pkgconfdir / 'afp.conf') -- and not get_option('with-overwrite') --) +-if (fs.exists(pkgconfdir / 'afp.conf') and not get_option('with-overwrite')) - message('will not replace existing', pkgconfdir / 'afp.conf') -else - install_data(afp_conf, install_dir: pkgconfdir) -endif +install_data(afp_conf, rename: 'afp.conf.sample', install_dir: pkgconfdir) if have_spotlight dbus_session_conf = configure_file( input: 'dbus-session.conf.in', - output: 'dbus-session.conf', + output: 'dbus-session.conf.netatalk', configuration: cdata, ) - if ( - fs.exists(pkgconfdir / 'dbus-session.conf') - and not get_option('with-overwrite') - ) - message('will not replace existing', pkgconfdir / 'dbus-session.conf') - else - install_data(dbus_session_conf, install_dir: pkgconfdir) - endif + install_data(dbus_session_conf, install_dir: pkgconfdir) endif if have_afpstats - if ( - fs.exists(dbus_sysconfpath / 'netatalk-dbus.conf') - and not get_option('with-overwrite') - ) -- message('will not replace existing', dbus_sysconfpath / 'netatalk-dbus.conf') +- message( +- 'will not replace existing', +- dbus_sysconfpath / 'netatalk-dbus.conf', +- ) - else - install_data('netatalk-dbus.conf', install_dir: dbus_sysconfpath) - endif + install_data('netatalk-dbus.conf', install_dir: dbus_sysconfpath) endif -static_conf_files = ['extmap.conf'] - -if have_appletalk - static_conf_files += ['atalkd.conf', 'macipgw.conf', 'papd.conf'] -endif - -cups_libdir = '' - -if get_option('with-cups-libdir-path') != '' - cups_libdir = get_option('with-cups-libdir-path') --elif host_os in ['netbsd'] +-elif host_os == 'netbsd' - cups_libdir = '/usr/pkg/libexec' -else - cups_libdir = '/usr/lib' -endif - -if have_appletalk and have_cups and get_option('with-cups-pap-backend') - configure_file( - input: 'pap.in', - output: 'pap', - configuration: cdata, - install: true, - install_dir: cups_libdir / 'cups/backend', - ) -endif - -foreach file : static_conf_files -- if ( -- fs.exists(pkgconfdir / file) -- and not get_option('with-overwrite') -- ) +- if (fs.exists(pkgconfdir / file) and not get_option('with-overwrite')) - message('will not replace existing', pkgconfdir / file) - else - install_data(file, install_dir: pkgconfdir) - endif -endforeach +install_data('extmap.conf', rename: 'extmap.conf.sample', install_dir: pkgconfdir) - if ( - fs.exists('/etc/ld.so.conf.d') + if (fs.exists('/etc/ld.so.conf.d') and get_option('with-ldsoconf')) + configure_file( diff --git a/net/netatalk4/files/patch-etc_uams_meson.build b/net/netatalk4/files/patch-etc_uams_meson.build index 59fee181fb51..888f935b966b 100644 --- a/net/netatalk4/files/patch-etc_uams_meson.build +++ b/net/netatalk4/files/patch-etc_uams_meson.build @@ -1,127 +1,121 @@ ---- etc/uams/meson.build.orig 2025-03-31 05:27:01 UTC +--- etc/uams/meson.build.orig 2025-08-07 15:36:39 UTC +++ etc/uams/meson.build -@@ -25,7 +25,7 @@ library( +@@ -24,7 +24,7 @@ library( name_suffix: lib_suffix, override_options: 'b_lundef=false', install: true, - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', ) - uams_passwd_sources = ['uams_passwd.c'] -@@ -39,7 +39,7 @@ library( + library( +@@ -36,7 +36,7 @@ library( name_suffix: lib_suffix, override_options: 'b_lundef=false', install: true, - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', ) - if have_libgcrypt -@@ -56,7 +56,7 @@ if have_libgcrypt + library( +@@ -48,7 +48,7 @@ library( + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + library( +@@ -60,7 +60,7 @@ library( + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + library( +@@ -72,7 +72,7 @@ library( + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + if have_pam +@@ -85,7 +85,7 @@ if have_pam name_suffix: lib_suffix, override_options: 'b_lundef=false', install: true, - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', ) library( -@@ -68,7 +68,7 @@ if have_libgcrypt +@@ -97,7 +97,7 @@ if have_pam name_suffix: lib_suffix, override_options: 'b_lundef=false', install: true, - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', ) library( -@@ -80,7 +80,7 @@ if have_libgcrypt +@@ -109,40 +109,40 @@ if have_pam name_suffix: lib_suffix, override_options: 'b_lundef=false', install: true, - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', ) - if have_pam - uams_dhx2_pam_sources = ['uams_dhx2_pam.c'] -@@ -94,20 +94,20 @@ if have_libgcrypt - name_suffix: lib_suffix, - override_options: 'b_lundef=false', - install: true, -- install_dir: libdir / 'netatalk', -+ install_dir: libexecdir / 'netatalk-uams', - ) - if build_shared_lib - install_symlink( - 'uams_dhx2.so', -- install_dir: libdir / 'netatalk', -+ install_dir: libexecdir / 'netatalk-uams', - pointing_to: 'uams_dhx2_pam.so', - ) - endif - elif build_shared_lib + if build_shared_lib install_symlink( - 'uams_dhx2.so', -- install_dir: libdir / 'netatalk', -+ install_dir: libexecdir / 'netatalk-uams', - pointing_to: 'uams_dhx2_passwd.so', - ) - endif -@@ -123,20 +123,20 @@ if have_libgcrypt - name_suffix: lib_suffix, - override_options: 'b_lundef=false', - install: true, + 'uams_clrtxt.so', - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_pam.so', ) - - if build_shared_lib - install_symlink( - 'uams_dhx.so', -- install_dir: libdir / 'netatalk', -+ install_dir: libexecdir / 'netatalk-uams', - pointing_to: 'uams_dhx_pam.so', - ) - endif - elif build_shared_lib install_symlink( 'uams_dhx.so', - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', - pointing_to: 'uams_dhx_passwd.so', + pointing_to: 'uams_dhx_pam.so', ) - endif -@@ -155,20 +155,20 @@ if have_pam - name_suffix: lib_suffix, - override_options: 'b_lundef=false', - install: true, -- install_dir: libdir / 'netatalk', -+ install_dir: libexecdir / 'netatalk-uams', - ) - - if build_shared_lib install_symlink( - 'uams_clrtxt.so', + 'uams_dhx2.so', - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', - pointing_to: 'uams_pam.so', + pointing_to: 'uams_dhx2_pam.so', ) endif elif build_shared_lib install_symlink( 'uams_clrtxt.so', - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', pointing_to: 'uams_passwd.so', ) + install_symlink( + 'uams_dhx.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_dhx_passwd.so', + ) + install_symlink( + 'uams_dhx2.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_dhx2_passwd.so', + ) endif -@@ -186,6 +186,6 @@ if have_krb5_uam +@@ -158,6 +158,6 @@ if have_krb5_uam name_suffix: lib_suffix, override_options: 'b_lundef=false', install: true, - install_dir: libdir / 'netatalk', + install_dir: libexecdir / 'netatalk-uams', ) endif diff --git a/net/netatalk4/files/patch-meson.build b/net/netatalk4/files/patch-meson.build index da36be7b9a98..971d3a2eecf1 100644 --- a/net/netatalk4/files/patch-meson.build +++ b/net/netatalk4/files/patch-meson.build @@ -1,67 +1,67 @@ ---- meson.build.orig 2025-03-31 05:27:01 UTC +--- meson.build.orig 2025-08-05 13:56:32 UTC +++ meson.build @@ -69,6 +69,7 @@ libdir = prefix / get_option('libdir') datadir = prefix / get_option('datadir') includedir = prefix / get_option('includedir') libdir = prefix / get_option('libdir') +libexecdir = prefix / get_option('libexecdir') mandir = prefix / get_option('mandir') sbindir = prefix / get_option('sbindir') sysconfdir = prefix / get_option('sysconfdir') @@ -141,7 +142,7 @@ statedir = '-D_PATH_STATEDIR="' + localstatedir + '/ne dversion = '-DVERSION="' + netatalk_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 # -@@ -394,6 +395,7 @@ bdb_subdirs = [ - endif +@@ -408,6 +409,7 @@ if 'dbd' in get_option('with-cnid-backends') + endif - bdb_subdirs = [ -+ '%%DB_NAME%%', - 'db62', - 'db6.2', - 'db61', -@@ -775,12 +777,12 @@ dns_sd_libs = [] + bdb_subdirs = [ ++ '%%DB_NAME%%', + 'db62', + 'db6.2', + 'db61', +@@ -924,12 +926,12 @@ dns_sd_libs = [] dns_sd_libs = [] -dns_sd = cc.find_library('dns_sd', required: false) +dns_sd = cc.find_library('dns_sd', dirs: libsearch_dirs, required: false) if dns_sd.found() dns_sd_libs += dns_sd endif -system = cc.find_library('system', required: false) +system = cc.find_library('system', dirs: libsearch_dirs, required: false) if dns_sd.found() dns_sd_libs += system endif -@@ -794,6 +796,8 @@ have_dns = ( +@@ -943,6 +945,8 @@ have_dns = ( ) ) +threads = dependency('threads', required: true) + if enable_zeroconf if avahi.found() have_zeroconf = true -@@ -807,6 +811,7 @@ if enable_zeroconf +@@ -956,6 +960,7 @@ if enable_zeroconf cdata.set('HAVE_MDNS', 1) cdata.set('freebsd_zeroconf', 'mdnsd') zeroconf_provider += 'mDNS' + dns_sd_libs += threads endif endif -@@ -1535,6 +1540,7 @@ if not enable_pam +@@ -1562,6 +1567,7 @@ if not enable_pam if not enable_pam have_pam = false + pam = dependency('', required: false) else if host_os != 'sunos' pam_paths = [ diff --git a/net/netatalk4/pkg-plist b/net/netatalk4/pkg-plist index cb431efc3325..dfced504a0b1 100644 --- a/net/netatalk4/pkg-plist +++ b/net/netatalk4/pkg-plist @@ -1,99 +1,93 @@ bin/ad bin/addump %%LDAP%%bin/afpldaptest bin/afppasswd %%DBUS%%bin/afpstats bin/asip-status bin/dbd bin/fce_listen bin/macusers @sample etc/afp.conf.sample %%DBUS%%etc/dbus-1/system.d/netatalk-dbus.conf %%SPOTLIGHT%%etc/dbus-session.conf.netatalk @sample etc/extmap.conf.sample %%PAM%%@sample etc/pam.d/netatalk.sample libexec/netatalk-uams/uams_clrtxt.so libexec/netatalk-uams/uams_dhx.so libexec/netatalk-uams/uams_dhx2.so %%PAM%%libexec/netatalk-uams/uams_dhx2_pam.a %%PAM%%libexec/netatalk-uams/uams_dhx2_pam.so libexec/netatalk-uams/uams_dhx2_passwd.a libexec/netatalk-uams/uams_dhx2_passwd.so %%PAM%%libexec/netatalk-uams/uams_dhx_pam.a %%PAM%%libexec/netatalk-uams/uams_dhx_pam.so libexec/netatalk-uams/uams_dhx_passwd.a libexec/netatalk-uams/uams_dhx_passwd.so %%KERBEROS5%%libexec/netatalk-uams/uams_gss.a %%KERBEROS5%%libexec/netatalk-uams/uams_gss.so libexec/netatalk-uams/uams_guest.a libexec/netatalk-uams/uams_guest.so %%PAM%%libexec/netatalk-uams/uams_pam.a %%PAM%%libexec/netatalk-uams/uams_pam.so libexec/netatalk-uams/uams_passwd.a libexec/netatalk-uams/uams_passwd.so libexec/netatalk-uams/uams_randnum.a libexec/netatalk-uams/uams_randnum.so include/atalk/acl.h include/atalk/adouble.h include/atalk/aep.h include/atalk/afp.h include/atalk/asp.h include/atalk/atp.h -include/atalk/bstrlib.h include/atalk/cnid.h include/atalk/ddp.h include/atalk/ea.h include/atalk/globals.h include/atalk/hash.h include/atalk/list.h include/atalk/logger.h include/atalk/nbp.h include/atalk/netatalk_conf.h include/atalk/netddp.h include/atalk/pap.h include/atalk/queue.h include/atalk/rtmp.h include/atalk/uam.h include/atalk/unicode.h include/atalk/unix.h include/atalk/util.h include/atalk/vfs.h include/atalk/volume.h include/atalk/zip.h lib/libatalk.a lib/libatalk.so lib/libatalk.so.19 lib/libatalk.so.19.0.0 sbin/afpd sbin/cnid_dbd sbin/cnid_metad sbin/netatalk share/man/man1/ad.1.gz share/man/man1/addump.1.gz -share/man/man1/afp_lantest.1.gz -share/man/man1/afp_logintest.1.gz -share/man/man1/afp_spectest.1.gz -share/man/man1/afp_speedtest.1.gz -share/man/man1/afparg.1.gz share/man/man1/afpldaptest.1.gz share/man/man1/afppasswd.1.gz %%DBUS%%share/man/man1/afpstats.1.gz share/man/man1/afptest.1.gz share/man/man1/asip-status.1.gz share/man/man1/dbd.1.gz share/man/man1/fce_listen.1.gz share/man/man1/macusers.1.gz share/man/man3/atalk_aton.3.gz share/man/man3/nbp_name.3.gz share/man/man4/atalk.4.gz share/man/man5/afp.conf.5.gz share/man/man5/afp_signature.conf.5.gz share/man/man5/afp_voluuid.conf.5.gz share/man/man5/extmap.conf.5.gz share/man/man8/afpd.8.gz share/man/man8/cnid_dbd.8.gz share/man/man8/cnid_metad.8.gz share/man/man8/netatalk.8.gz /var/netatalk/CNID/README @dir /var/netatalk/CNID @dir /var/netatalk