summaryrefslogtreecommitdiff
path: root/net-fs/netatalk
diff options
context:
space:
mode:
Diffstat (limited to 'net-fs/netatalk')
-rw-r--r--net-fs/netatalk/Manifest4
-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, 322 insertions, 0 deletions
diff --git a/net-fs/netatalk/Manifest b/net-fs/netatalk/Manifest
index c30427c654dd..b89b9561edbc 100644
--- a/net-fs/netatalk/Manifest
+++ b/net-fs/netatalk/Manifest
@@ -1,8 +1,12 @@
AUX netatalk-3.1.12-fno-common.patch 259 BLAKE2B f7ab7ea73d027784a3b22d7587d9b7d2319a06c65a381e4e3a87f7b1d1f81c5f339f6d0f06e1cfde35946b6dc4cb6d8829dbc9d511bbed2a5ff30f24f6ab9fae SHA512 1a5875c1db68d7eba026471fa6d2f021d60e43c819ad420104f3b4b5843ca5bca1a83536262f7a97f0d2a2e8a875c2303e2d4c5750490320442af118b2498a01
AUX netatalk-3.1.12-my_bool.patch 664 BLAKE2B f3eb18c0f73eea3b2caba305e052ce1705f40c1542ae14f0e3160e353b1da6b7c94be03285277b58888f01ed309ef62e7ee9736b5d7bd717d33123feb0aee107 SHA512 c09298f83b6e9d650c08dac410478122f203c38d7e10918b52456da828c34643ba0e2dba359d872d76d167217ce9dcf5a697761743452e482b87da5c7b3b1c0b
AUX netatalk-3.1.12-tracker3.patch 5775 BLAKE2B 41ec400343a3b23472925d78858d857334aea963c47a441b778760b054d59975cbcc018be88ef141326dcadc7efa1af7109227fc1afc1c2a2894550a6212a648 SHA512 1598afa96e92dd912fd8e8d9ff246bb6a6dc6f99e85b20d6393cefe7487498693b78c5d90f1b0fb0fd21fbcb65983db2b0fbb313ded712df2cdbf37ccfa377f7
+AUX netatalk-3.1.17-disable-ld-library-path.patch 1926 BLAKE2B a127b8a5e2b3586b4f1511bbba4613965c0d448b9c5fe8b58e8cea0b37c0644625d8de79861d5100c18a93a2285c9dd3bfd2b9a48662b45a80a820eda4a86327 SHA512 fa9b0c247b4379d6a53a80c8cfdb25e5dbef589e0ad964dfa21c40b39fdbadde738d9a8dc474e7db5281772e02e58c17b04a4806024549913962a9a5644fd6e5
+AUX netatalk-3.1.17-gentoo.patch 4472 BLAKE2B 841edfbd1fd844bd5d77b5b79d30622878d5409be55eca5f077a269bd99bf7b746073020b3a3291f69abb15eb63e0b4ae151db5d396d76746449cba8ba51e3fc SHA512 e039072e5d416d6839bb54f1b2c29beb6d373386e80ab478198c72750522426dc36852423df4b517305b0ba2ecdc157b7677ee96f6f93253d4e75537e514725d
AUX netatalk-3.1.7-gentoo.patch 4910 BLAKE2B cfff6844b53dfbae3336739df3e89baede2c9ed88566f0c3831d0a1e25e1c0aff8bbb5e09a36fd2b59b2ed7dc3fd0c9a3a68f80d65717f59538071cf1395c98e SHA512 5b8ff4ba306e1467d089df9c3f9dcfb22c4c21cce2c6b53e29dc84006efda0b88609cd00a01a2eec8f153d85d3c7283a1b5123219ecce1fe120a143290f3958f
AUX netatalk-3.1.8-disable-ld-library-path.patch 1860 BLAKE2B 0c5c8671754c2868236c7b0603ad738b4ba5443f7fa61b9f32052103de33a611bdc628210785b9aee5feaaeea4fee969bc77ac90e494a7cfc72c10f567ee3f22 SHA512 971e1d4787f94e3f608dd7de4ea8721d3027aacc5b6461fbee0332d7434704336a35c2962d54c4b380bb3cf76c56d9cd6e8bf094f9bd9a0958054bf83e25299b
DIST netatalk-3.1.12.tar.bz2 1918312 BLAKE2B a0672ad769530d96b13a4bf74a1f17d86aa924f05e8185cf6b1bdbfe97fbcf23d36e2f3e5e32a32194a9d3020864e5afa2812f8fb947c68629b15c259a745bf3 SHA512 0b22abaf0084d5684ccc049225abb34caa32893ea8fe7eb67901fde94726f054149ce78d2da49cf06fe30360eb18b2edccff20f9ac69d5ab5105f6d2f4178759
+DIST netatalk-3.1.17.tar.xz 975108 BLAKE2B e4bc8bead03f2afbbb2964b1220c029adb10a5d987089aa9f39834c52d90ca72c9894e039a2fecde2b042400aa03f86cfe27589572e834337cbe0877fc21c8a4 SHA512 d63b9b07c1ce316b20980d531240e8e4c71ad164983b2c3127a50d5d1a0e3783acf41120ebf1c9a9da39f5347bd8aa261986dc91bd879979e9defe7c092e8522
EBUILD netatalk-3.1.12-r7.ebuild 4827 BLAKE2B 361b63d02b37a6afecd38fd18425a16e1a0765e306aebbae95cb82eecf39a2bde98353be2266475ad39ead9017f9380320f2fc8800427cc69c37295b104a9a2c SHA512 b073635fa8041ee652b5a70e8a867896a35efccb2cdfb94d3627425f5d11c6e6e297a1c3292b437df7260ae2b9daec63788931f80f0d71aeec774c3dd0ed82fc
+EBUILD netatalk-3.1.17.ebuild 4499 BLAKE2B 4e18600eb4629459809db222018cb0ba99206bbddbd5519cd75b401afb79f8c94f845df078cca22b47b97515aa76307f568fbd11e89945eea95dbd85a52071c2 SHA512 8f19d5706209a6ddacd276728eb12651a8e2caf5ce61124042e2c20211364895fcef8a632d5806ecddf93282efd7d288d0413f9a5e11d08dcc3aa173f823c5cf
MISC metadata.xml 720 BLAKE2B fa966860b8fe4f5d18748b8f6a4e4fa78b8b98a6dc12d73d6f7a5b15804c24a4559d9b0be1e73ee294ae5a8ca6521281e6ae948c5f433a22c338760781ef5793 SHA512 77a1fe546ffcaa1e4c9afc2f22d1a27c883ed743dc68c5b259d5a3a59d5ed941e24e7826b35c383d43039c11d92b1fecb3a6f96fd6029252923f1ecfef9efa93
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
+}