summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Graaff <graaff@gentoo.org>2023-10-04 19:02:00 +0200
committerHans de Graaff <graaff@gentoo.org>2023-10-04 19:03:05 +0200
commit53b4d537e4b7ebb3ea8a61abfff6fe52d4eadc99 (patch)
tree0f5674b59a630f622a02bcca98a979d12b3ce658 /net-fs/netatalk
parentnet-fs/cifs-utils: don't redefine _FORTIFY_SOURCE (diff)
downloadgentoo-53b4d537e4b7ebb3ea8a61abfff6fe52d4eadc99.tar.gz
gentoo-53b4d537e4b7ebb3ea8a61abfff6fe52d4eadc99.tar.bz2
gentoo-53b4d537e4b7ebb3ea8a61abfff6fe52d4eadc99.zip
net-fs/netatalk: add 3.1.17
Bug: https://bugs.gentoo.org/837623 Bug: https://bugs.gentoo.org/881259 Closes: https://bugs.gentoo.org/829098 Signed-off-by: Hans de Graaff <graaff@gentoo.org>
Diffstat (limited to 'net-fs/netatalk')
-rw-r--r--net-fs/netatalk/Manifest1
-rw-r--r--net-fs/netatalk/files/netatalk-3.1.17-disable-ld-library-path.patch34
-rw-r--r--net-fs/netatalk/files/netatalk-3.1.17-gentoo.patch112
-rw-r--r--net-fs/netatalk/netatalk-3.1.17.ebuild172
4 files changed, 319 insertions, 0 deletions
diff --git a/net-fs/netatalk/Manifest b/net-fs/netatalk/Manifest
index 0bf4ddfe0aa6..d7bcf3b126cc 100644
--- a/net-fs/netatalk/Manifest
+++ b/net-fs/netatalk/Manifest
@@ -1 +1,2 @@
DIST netatalk-3.1.12.tar.bz2 1918312 BLAKE2B a0672ad769530d96b13a4bf74a1f17d86aa924f05e8185cf6b1bdbfe97fbcf23d36e2f3e5e32a32194a9d3020864e5afa2812f8fb947c68629b15c259a745bf3 SHA512 0b22abaf0084d5684ccc049225abb34caa32893ea8fe7eb67901fde94726f054149ce78d2da49cf06fe30360eb18b2edccff20f9ac69d5ab5105f6d2f4178759
+DIST netatalk-3.1.17.tar.xz 975108 BLAKE2B e4bc8bead03f2afbbb2964b1220c029adb10a5d987089aa9f39834c52d90ca72c9894e039a2fecde2b042400aa03f86cfe27589572e834337cbe0877fc21c8a4 SHA512 d63b9b07c1ce316b20980d531240e8e4c71ad164983b2c3127a50d5d1a0e3783acf41120ebf1c9a9da39f5347bd8aa261986dc91bd879979e9defe7c092e8522
diff --git a/net-fs/netatalk/files/netatalk-3.1.17-disable-ld-library-path.patch b/net-fs/netatalk/files/netatalk-3.1.17-disable-ld-library-path.patch
new file mode 100644
index 000000000000..21cb119994fc
--- /dev/null
+++ b/net-fs/netatalk/files/netatalk-3.1.17-disable-ld-library-path.patch
@@ -0,0 +1,34 @@
+there's no need to set LD_LIBRARY_PATH in order to perform link tests, and
+it's actually undesirable as it'll cause the toolchain to search a different
+path than the ones it's configured to (host lib wise).
+
+https://bugs.gentoo.org/564350
+
+--- a/macros/db3-check.m4
++++ b/macros/db3-check.m4
+@@ -142,15 +142,7 @@ if test "x$bdb_required" = "xyes"; then
+ CPPFLAGS="-I${bdbdir}/include${subdir} $CPPFLAGS"
+ LDFLAGS="-L$bdblibdir $LDFLAGS"
+
+- dnl -- Uses version set by NETATALK_BDB_HEADER to try to run
+- dnl -- a conftest that checks that header/lib version match
+- dnl -- $shlibpath_var is set by LIBTOOL, its value is
+- dnl -- LD_LIBRARY_PATH on many platforms. This will be fairly
+- dnl -- portable hopefully. Reference:
+- dnl -- http://lists.gnu.org/archive/html/autoconf/2009-03/msg00040.html
+- test "$cross_compiling" = yes || eval export $shlibpath_var=$bdblibdir
+ NETATALK_BDB_TRY_LINK
+- eval export $shlibpath_var=$saved_shlibpath_var
+
+ if test x"${atalk_cv_bdb_version}" = x"yes"; then
+ BDB_CFLAGS="-I${bdbdir}/include${subdir}"
+@@ -174,9 +166,7 @@ if test "x$bdb_required" = "xyes"; then
+ CPPFLAGS="-I${bdbdir}/include${subdir} $CPPFLAGS"
+ LDFLAGS="-L$bdblibdir $LDFLAGS"
+
+- test "$cross_compiling" = yes || eval export $shlibpath_var=$bdblibdir
+ NETATALK_BDB_TRY_LINK
+- eval export $shlibpath_var=$saved_shlibpath_var
+
+ if test x"${atalk_cv_bdb_version}" = x"yes"; then
+ BDB_CFLAGS="-I${bdbdir}/include${subdir}"
diff --git a/net-fs/netatalk/files/netatalk-3.1.17-gentoo.patch b/net-fs/netatalk/files/netatalk-3.1.17-gentoo.patch
new file mode 100644
index 000000000000..eada14a0d28e
--- /dev/null
+++ b/net-fs/netatalk/files/netatalk-3.1.17-gentoo.patch
@@ -0,0 +1,112 @@
+ Makefile.am | 6 ------
+ etc/netatalk/Makefile.am | 5 +++--
+ etc/netatalk/afp_avahi.c | 2 +-
+ etc/uams/Makefile.am | 20 ++++++++++----------
+ libatalk/dsi/Makefile.am | 3 ++-
+ libatalk/vfs/Makefile.am | 1 +
+ macros/netatalk.m4 | 1 -
+ 7 files changed, 17 insertions(+), 21 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index ec7f14d..b87fd8a 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -11,9 +11,3 @@ EXTRA_DIST = CONTRIBUTORS COPYRIGHT COPYING NEWS VERSION abigen.sh
+ ACLOCAL_AMFLAGS = -I macros
+ AUTOMAKE_OPTIONS = foreign
+
+-if RUN_LDCONFIG
+-install-exec-hook:
+- @printf "Running ldconfig to ensure libraries installed in system library directories are added to the dynamic linker cache ... "
+- @-@NETA_LDCONFIG@
+- @printf "done\n"
+-endif
+diff --git a/etc/netatalk/Makefile.am b/etc/netatalk/Makefile.am
+index 5392b9d..3e62e2d 100644
+--- a/etc/netatalk/Makefile.am
++++ b/etc/netatalk/Makefile.am
+@@ -27,6 +28,5 @@ netatalk_CFLAGS += \
+
+-netatalk_LDFLAGS = @LIBEVENT_LDFLAGS@ -levent
+-
+-netatalk_CFLAGS += @LIBEVENT_CFLAGS@
++netatalk_CPPFLAGS = @LIBEVENT_CFLAGS@
++netatalk_LDADD += @LIBEVENT_LDFLAGS@ -levent
+
+ noinst_HEADERS = afp_zeroconf.h afp_avahi.h afp_mdns.h
+diff --git a/etc/netatalk/afp_avahi.c b/etc/netatalk/afp_avahi.c
+index d6b55dc..dade1e0 100644
+--- a/etc/netatalk/afp_avahi.c
++++ b/etc/netatalk/afp_avahi.c
+@@ -164,8 +164,8 @@ static void register_stuff(void) {
+ return;
+
+ fail:
+- time(NULL);
+ // avahi_threaded_poll_quit(ctx->threaded_poll);
++ return;
+ }
+
+ /* Called when publishing of service data completes */
+diff --git a/etc/uams/Makefile.am b/etc/uams/Makefile.am
+index 23fd3d1..0e882ea 100644
+--- a/etc/uams/Makefile.am
++++ b/etc/uams/Makefile.am
+@@ -95,16 +95,16 @@ uams_dhx_pam_la_CFLAGS = @SSL_CFLAGS@ @PAM_CFLAGS@
+ uams_dhx2_pam_la_CFLAGS = @LIBGCRYPT_CFLAGS@ @PAM_CFLAGS@
+ uams_gss_la_CFLAGS = @GSSAPI_CFLAGS@ @KRB5_CFLAGS@
+
+-uams_guest_la_LDFLAGS = -module -avoid-version
+-uams_randnum_la_LDFLAGS = -module -avoid-version @SSL_LIBS@
+-uams_passwd_la_LDFLAGS = -module -avoid-version @CRYPT_LIBS@
+-uams_pam_la_LDFLAGS = -module -avoid-version @PAM_LIBS@
+-uams_pgp_la_LDFLAGS = -module -avoid-version @SSL_LIBS@
+-uams_dhx_passwd_la_LDFLAGS = -module -avoid-version @CRYPT_LIBS@ @SSL_LIBS@
+-uams_dhx_pam_la_LDFLAGS = -module -avoid-version @CRYPT_LIBS@ @SSL_LIBS@ @PAM_LIBS@
+-uams_dhx2_passwd_la_LDFLAGS = -module -avoid-version @CRYPT_LIBS@ @LIBGCRYPT_LIBS@
+-uams_dhx2_pam_la_LDFLAGS = -module -avoid-version @LIBGCRYPT_LIBS@ @PAM_LIBS@
+-uams_gss_la_LDFLAGS = -module -avoid-version @GSSAPI_LIBS@ @KRB5_LIBS@
++uams_guest_la_LDFLAGS = -shared -module -avoid-version
++uams_randnum_la_LDFLAGS = -shared -module -avoid-version @SSL_LIBS@
++uams_passwd_la_LDFLAGS = -shared -module -avoid-version @CRYPT_LIBS@
++uams_pam_la_LDFLAGS = -shared -module -avoid-version @PAM_LIBS@
++uams_pgp_la_LDFLAGS = -shared -module -avoid-version @SSL_LIBS@
++uams_dhx_passwd_la_LDFLAGS = -shared -module -avoid-version @CRYPT_LIBS@ @SSL_LIBS@
++uams_dhx_pam_la_LDFLAGS = -shared -module -avoid-version @CRYPT_LIBS@ @SSL_LIBS@ @PAM_LIBS@
++uams_dhx2_passwd_la_LDFLAGS = -shared -module -avoid-version @CRYPT_LIBS@ @LIBGCRYPT_LIBS@
++uams_dhx2_pam_la_LDFLAGS = -shared -module -avoid-version @LIBGCRYPT_LIBS@ @PAM_LIBS@
++uams_gss_la_LDFLAGS = -shared -module -avoid-version @GSSAPI_LIBS@ @KRB5_LIBS@
+
+ #
+ # module compilation
+diff --git a/libatalk/dsi/Makefile.am b/libatalk/dsi/Makefile.am
+index 34fa76e..dbde336 100644
+--- a/libatalk/dsi/Makefile.am
++++ b/libatalk/dsi/Makefile.am
+@@ -1,3 +1,4 @@
+ noinst_LTLIBRARIES = libdsi.la
+
+ libdsi_la_SOURCES = dsi_attn.c dsi_close.c dsi_cmdreply.c dsi_getsess.c dsi_getstat.c dsi_init.c dsi_opensess.c dsi_read.c dsi_tcp.c dsi_tickle.c dsi_write.c dsi_stream.c
++libdsi_la_LIBADD = $(WRAP_LIBS)
+diff --git a/libatalk/vfs/Makefile.am b/libatalk/vfs/Makefile.am
+index aa62aeb..8ac2045 100644
+--- a/libatalk/vfs/Makefile.am
++++ b/libatalk/vfs/Makefile.am
+@@ -6,4 +6,5 @@ libvfs_la_SOURCES = vfs.c unix.c ea_ad.c ea_sys.c extattr.c
+
+ if HAVE_ACLS
+ libvfs_la_SOURCES += acl.c
++libvfs_la_LIBADD = $(ACL_LIBS)
+ endif
+diff --git a/macros/netatalk.m4 b/macros/netatalk.m4
+index ea2bbff..40ab817 100644
+--- a/macros/netatalk.m4
++++ b/macros/netatalk.m4
+@@ -790,7 +790,6 @@ save_CFLAGS="$CFLAGS"
+ save_LDFLAGS="$LDFLAGS"
+ save_LIBS="$LIBS"
+ CFLAGS=""
+-LDFLAGS=""
+ LIBS=""
+ LDAP_CFLAGS=""
+ LDAP_LDFLAGS=""
diff --git a/net-fs/netatalk/netatalk-3.1.17.ebuild b/net-fs/netatalk/netatalk-3.1.17.ebuild
new file mode 100644
index 000000000000..3d7abfd17eb3
--- /dev/null
+++ b/net-fs/netatalk/netatalk-3.1.17.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic pam systemd
+
+DESCRIPTION="Open Source AFP server"
+HOMEPAGE="https://netatalk.sourceforge.net/"
+SRC_URI="https://github.com/Netatalk/netatalk/releases/download/netatalk-${PV//./-}/netatalk-${PV}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0/18.0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="acl cracklib dbus debug kerberos ldap pam pgp quota +shadow ssl tracker tcpd zeroconf"
+
+CDEPEND="
+ !app-editors/yudit
+ dev-libs/libevent:0=
+ >=dev-libs/libgcrypt-1.2.3:0=
+ sys-apps/coreutils
+ >=sys-libs/db-4.2.52:=
+ sys-libs/tdb
+ virtual/libcrypt:=
+ acl? (
+ sys-apps/attr
+ sys-apps/acl
+ )
+ cracklib? ( sys-libs/cracklib )
+ dbus? ( sys-apps/dbus dev-libs/dbus-glib )
+ kerberos? ( virtual/krb5 )
+ ldap? ( net-nds/openldap:= )
+ pam? ( sys-libs/pam )
+ ssl? ( dev-libs/openssl:0= )
+ tcpd? ( sys-apps/tcp-wrappers )
+ tracker? ( app-misc/tracker:3= )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+RDEPEND="${CDEPEND}"
+DEPEND="${CDEPEND}
+ app-alternatives/yacc
+ sys-devel/flex
+"
+
+RESTRICT="test"
+
+REQUIRED_USE="
+ ldap? ( acl )
+ tracker? ( dbus )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.1.17-gentoo.patch
+ "${FILESDIR}"/${PN}-3.1.17-disable-ld-library-path.patch #564350
+)
+
+src_prepare() {
+ default
+ append-flags -fno-strict-aliasing
+
+ sed \
+ -e "s:shell_utils::g" \
+ -i contrib/Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=()
+
+ # Ignore --with-init-style=gentoo, we install the init.d by hand and we avoid having
+ # to sed the Makefiles to not do rc-update.
+ # TODO:
+ # systemd : --with-init-style=systemd
+ myeconfargs+=(
+ $(use_enable debug)
+ $(use_enable debug debugging)
+ $(use_enable pgp pgp-uam)
+ $(use_enable kerberos krbV-uam)
+ $(use_enable quota)
+ $(use_enable tcpd tcp-wrappers)
+ $(use_enable zeroconf)
+ $(use_with acl acls)
+ $(use_with cracklib)
+ $(use_with dbus afpstats)
+ $(use_with kerberos)
+ $(use_with ldap)
+ $(use_with pam)
+ $(use_with shadow)
+ $(use_with ssl ssl-dir)
+ $(use_with tracker dbus-daemon "${EPREFIX}/usr/bin/dbus-daemon")
+ $(use_with tracker tracker-pkgconfig-version $(ver_cut 1 $(best_version app-misc/tracker | sed 's:app-misc/tracker-::g')).0)
+ --disable-static
+ --enable-overwrite
+ --disable-afs
+ --with-bdb=/usr
+ --with-uams-path=/usr/$(get_libdir)/${PN}
+ --with-init-style=gentoo-openrc
+ --without-libevent
+ --without-tdb
+ --with-lockfile=/run/lock/${PN}
+ )
+ econf ${myeconfargs[@]}
+}
+
+src_install() {
+ default
+
+ if use zeroconf; then
+ sed -i -e '/avahi-daemon/s:use:need:g' "${ED}"/etc/init.d/${PN} || die
+ else
+ sed -i -e '/avahi-daemon/d' "${ED}"/etc/init.d/${PN} || die
+ fi
+
+ # The pamd file isn't what we need, use pamd_mimic_system
+ rm -rf "${ED}/etc/pam.d" || die
+
+ if use pam; then
+ pamd_mimic_system netatalk auth account password session
+ fi
+
+ sed \
+ -e "s|:SBINDIR:|${EPREFIX}/usr/sbin|g" \
+ -e "s|:PATH_NETATALK_LOCK:|/run/lock/netatalk|g" \
+ distrib/initscripts/service.systemd.tmpl \
+ > "${T}"/service.systemd || die
+ systemd_newunit "${T}"/service.systemd ${PN}.service
+
+ # no static archives
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ local fle v
+ for v in ${REPLACING_VERSIONS}; do
+ if [[ $(ver_test ${v} -lt 3) ]]; then
+ for fle in afp_signature.conf afp_voluuid.conf; do
+ if [[ -f "${ROOT}"/etc/netatalk/${fle} ]]; then
+ if [[ ! -f "${ROOT}"/var/lib/netatalk/${fle} ]]; then
+ mv \
+ "${ROOT}"/etc/netatalk/${fle} \
+ "${ROOT}"/var/lib/netatalk/
+ fi
+ fi
+ done
+
+ elog
+ elog "Starting from version 3.0 only uses a single init script again"
+ elog "Please update your runlevels accordingly"
+ elog
+ elog "Dependencies should be resolved automatically depending on settings"
+ elog "but please report issues with this on https://bugs.gentoo.org/ if"
+ elog "you find any."
+ elog
+ elog "Following config files are obsolete now:"
+ elog "afpd.conf, netatalk.conf, AppleVolumes.default and afp_ldap.conf"
+ elog "in favour of"
+ elog "/etc/afp.conf"
+ elog
+ elog "Please convert your existing configs before you restart your daemon"
+ elog
+ elog "The new AppleDouble default backend is appledouble = ea"
+ elog "Existing entries will be updated on access, but can do an offline"
+ elog "conversion with"
+ elog "dbd -ruve /path/to/Volume"
+ elog
+ elog "For general notes on the upgrade, please visit"
+ elog "http://netatalk.sourceforge.net/3.0/htmldocs/upgrade.html"
+ elog
+ break
+ fi
+ done
+}