diff --git a/net/netatalk3/Makefile b/net/netatalk3/Makefile index 8e551124b8ff..cdb8e6579319 100644 --- a/net/netatalk3/Makefile +++ b/net/netatalk3/Makefile @@ -1,104 +1,106 @@ PORTNAME= netatalk PORTVERSION= 3.2.1 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= net MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/netatalk-${PORTVERSION:S/./-/g}/ PKGNAMESUFFIX= 3 MAINTAINER= marcus@FreeBSD.org COMMENT= File server for Mac OS X WWW= https://netatalk.io/ LICENSE= GPLv2 LIB_DEPENDS= libgcrypt.so:security/libgcrypt \ libevent.so:devel/libevent USES= bdb:18 cpe gettext iconv meson perl5 pkgconfig shebangfix ssl tar:xz 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-shadow=false \ -Dwith-pgp-uam=false \ --localstatedir=/var \ --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-mysql-config=/nonexistent ACL_LIB_DEPENDS= libsunacl.so:sysutils/libsunacl ACL_MESON_OFF=-Dwith-acls=false LIBWRAP_MESON_OFF=-Dwith-tcp-wrappers=false SPOTLIGHT_LIB_DEPENDS= libtracker-sparql-3.0.so:sysutils/tracker3 SPOTLIGHT_MESON_OFF= -Dwith-spotlight=false SHEBANG_GLOB= afpstats CONFLICTS= jday yudit # bin/dbd man/man1/uniconv.1.gz .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/macusers/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/netatalk3/files/patch-meson.build b/net/netatalk3/files/patch-meson.build index b72a231638a8..929085981db4 100644 --- a/net/netatalk3/files/patch-meson.build +++ b/net/netatalk3/files/patch-meson.build @@ -1,104 +1,132 @@ --- meson.build.orig 2024-06-29 05:58:36 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="' + 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 # @@ -385,6 +386,7 @@ bdb_subdirs = [ '/usr', ] bdb_subdirs = [ + 'db18', 'db4.6', 'db4.7', 'db4.8', @@ -504,6 +506,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) -@@ -822,19 +829,7 @@ else +@@ -725,12 +732,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 +@@ -755,6 +762,7 @@ else + cdata.set('HAVE_MDNS', 1) + freebsd_zeroconf_daemon = 'mdnsd' + zeroconf_provider += 'mDNS' ++ dns_sd_libs += threads + else + have_zeroconf = avahi.found() + if avahi.found() +@@ -822,19 +830,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', -@@ -875,7 +870,6 @@ else +@@ -875,7 +871,6 @@ else endif endif endif -endif have_spotlight = ( tracker_sparql.found() -@@ -884,6 +878,8 @@ have_spotlight = ( +@@ -884,6 +879,8 @@ have_spotlight = ( and flex.found() and bison.found() ) +endif + if have_spotlight cdata.set('WITH_SPOTLIGHT', 1) endif -@@ -1370,7 +1366,7 @@ if iconv_path != '' +@@ -1370,7 +1367,7 @@ if iconv_path != '' endif iconv = declare_dependency( link_args: libiconv_link_args, - include_directories: include_directories(with_libiconv / 'include'), + include_directories: include_directories(iconv_path / 'include'), ) endif -@@ -1683,7 +1679,7 @@ else +@@ -1679,11 +1676,11 @@ enable_shadow = get_option('with-shadow') + + enable_shadow = get_option('with-shadow') + +-if enable_shadow ++if not enable_shadow have_shadow = false else have_shadow = (cc.has_header('shadow.h')) - if with_shadow + if enable_shadow cdata.set('SHADOWPW', 1) uams_options += ' SHADOW' else -@@ -1926,6 +1922,8 @@ int deny_severity = 0; +@@ -1926,6 +1923,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 b8df0404b3b7..b60284191e8b 100644 --- a/net/netatalk3/pkg-plist +++ b/net/netatalk3/pkg-plist @@ -1,85 +1,85 @@ bin/ad -bin/afpldaptest +%%LDAP%%bin/afpldaptest bin/afppasswd %%DBUS%%bin/afpstats bin/apple_dump bin/asip-status bin/dbd bin/macusers bin/netatalk-config @sample etc/afp.conf.sample %%DBUS%%etc/dbus-1/system.d/netatalk-dbus.conf %%DBUS%%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/afp.h include/atalk/bstrlib.h include/atalk/cast.h include/atalk/cnid.h include/atalk/dictionary.h include/atalk/ea.h include/atalk/globals.h include/atalk/hash.h include/atalk/iniparser.h include/atalk/list.h include/atalk/logger.h include/atalk/netatalk_conf.h include/atalk/paths.h include/atalk/standards.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 lib/libatalk.a lib/libatalk.so lib/libatalk.so.18 sbin/afpd sbin/cnid_dbd sbin/cnid_metad sbin/netatalk share/man/man1/ad.1.gz share/man/man1/afpldaptest.1.gz share/man/man1/afppasswd.1.gz %%DBUS%%share/man/man1/afpstats.1.gz share/man/man1/apple_dump.1.gz share/man/man1/asip-status.1.gz share/man/man1/dbd.1.gz share/man/man1/macusers.1.gz share/man/man1/netatalk-config.1.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 /var/netatalk/README @dir /var/netatalk/CNID @dir /var/netatalk