mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-01-01 13:58:06 +00:00
autofs: Upgrade to 5.1.7
License-Update: correct fsf address [1] - Drop upstreamed autofs-5.0.7-include-linux-nfs.h-directly-in-rpc_sub.patch - Forward port remaining patches - Package libautofs.so which is new - Add a patch to fix build on musl systems - Detailed ChangeLog [2] [1] https://git.kernel.org/pub/scm/linux/storage/autofs/autofs.git/commit/COPYING?id=b74dcdd3f6b05522388729141c29286829c302fc [2] https://www.spinics.net/lists/autofs/msg02344.html Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
d774c88023
commit
7d64ce0490
|
|
@ -0,0 +1,124 @@
|
|||
From 9fe90ab1e333b2e2bed370ff13ba552eb54c3aaf Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sat, 17 Jul 2021 09:56:28 -0700
|
||||
Subject: [PATCH] Define __SWORD_TYPE if undefined
|
||||
|
||||
These fixes are inspired when building autofs on musl
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
daemon/automount.c | 20 ++++++++++++++------
|
||||
include/hash.h | 5 +++++
|
||||
lib/log.c | 6 +++++-
|
||||
3 files changed, 24 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/daemon/automount.c b/daemon/automount.c
|
||||
index e476f6b..3a1514b 100644
|
||||
--- a/daemon/automount.c
|
||||
+++ b/daemon/automount.c
|
||||
@@ -1,7 +1,7 @@
|
||||
/* ----------------------------------------------------------------------- *
|
||||
*
|
||||
* automount.c - Linux automounter daemon
|
||||
- *
|
||||
+ *
|
||||
* Copyright 1997 Transmeta Corporation - All Rights Reserved
|
||||
* Copyright 1999-2000 Jeremy Fitzhardinge <jeremy@goop.org>
|
||||
* Copyright 2001-2005 Ian Kent <raven@themaw.net>
|
||||
@@ -11,7 +11,7 @@
|
||||
* the Free Software Foundation, Inc., 675 Mass Ave, Cambridge MA 02139,
|
||||
* USA; either version 2 of the License, or (at your option) any later
|
||||
* version.
|
||||
- *
|
||||
+ *
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
@@ -40,6 +40,14 @@
|
||||
#include <systemd/sd-daemon.h>
|
||||
#endif
|
||||
|
||||
+#ifndef __SWORD_TYPE
|
||||
+# if __WORDSIZE == 32 /* System word size */
|
||||
+# define __SWORD_TYPE int
|
||||
+# else /* __WORDSIZE == 64 */
|
||||
+# define __SWORD_TYPE long int
|
||||
+# endif
|
||||
+#endif
|
||||
+
|
||||
#include "automount.h"
|
||||
#if defined(LIBXML2_WORKAROUND) || defined(TIRPC_WORKAROUND)
|
||||
#include <dlfcn.h>
|
||||
@@ -282,7 +290,7 @@ int rmdir_path(struct autofs_point *ap, const char *path, dev_t dev)
|
||||
dev, buf, st.st_dev);
|
||||
return -1;
|
||||
}
|
||||
-
|
||||
+
|
||||
/*
|
||||
* Last element of path may be a symbolic link; all others
|
||||
* are directories (and the last directory element is
|
||||
@@ -455,7 +463,7 @@ int count_mounts(struct autofs_point *ap, const char *path, dev_t dev)
|
||||
|
||||
counter.count = 0;
|
||||
counter.dev = dev;
|
||||
-
|
||||
+
|
||||
if (walk_tree(path, counter_fn, 1, ap, &counter) == -1)
|
||||
return -1;
|
||||
|
||||
@@ -811,7 +819,7 @@ static char *automount_path_to_fifo(unsigned logopt, const char *path)
|
||||
/*
|
||||
* An automount path can be made up of subdirectories. So, to
|
||||
* create the fifo name, we will just replace instances of '/' with
|
||||
- * '-'.
|
||||
+ * '-'.
|
||||
*/
|
||||
p = fifo_name + strlen(fifodir);
|
||||
while (*p != '\0') {
|
||||
@@ -1640,7 +1648,7 @@ static void return_start_status(void *arg)
|
||||
sc->done = 1;
|
||||
|
||||
/*
|
||||
- * Startup condition mutex must be locked during
|
||||
+ * Startup condition mutex must be locked during
|
||||
* the startup process.
|
||||
*/
|
||||
status = pthread_cond_signal(&sc->cond);
|
||||
diff --git a/include/hash.h b/include/hash.h
|
||||
index 2447f29..6f0dee6 100644
|
||||
--- a/include/hash.h
|
||||
+++ b/include/hash.h
|
||||
@@ -5,6 +5,11 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <stdint.h>
|
||||
+#include <linux/stddef.h>
|
||||
+
|
||||
+#ifndef __GLIBC__
|
||||
+#include <sys/reg.h>
|
||||
+#endif
|
||||
|
||||
/*
|
||||
* The "GOLDEN_RATIO_PRIME" is used in ifs/btrfs/brtfs_inode.h and
|
||||
diff --git a/lib/log.c b/lib/log.c
|
||||
index 0cb47d7..39b1e3b 100644
|
||||
--- a/lib/log.c
|
||||
+++ b/lib/log.c
|
||||
@@ -38,7 +38,11 @@ static char *prepare_attempt_prefix(const char *msg)
|
||||
char buffer[ATTEMPT_ID_SIZE + 1];
|
||||
char *prefixed_msg = NULL;
|
||||
|
||||
- attempt_id = pthread_getspecific(key_thread_attempt_id);
|
||||
+ if (key_thread_attempt_id) {
|
||||
+ attempt_id = pthread_getspecific(key_thread_attempt_id);
|
||||
+ } else {
|
||||
+ attempt_id = 0;
|
||||
+ }
|
||||
if (attempt_id) {
|
||||
int len = sizeof(buffer) + 1 + strlen(msg) + 1;
|
||||
|
||||
--
|
||||
2.32.0
|
||||
|
||||
|
|
@ -15,12 +15,10 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
|||
configure.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.in b/configure.in
|
||||
index 493b9f1..268d06b 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -12,7 +12,7 @@ define([AC_CACHE_SAVE], )dnl
|
||||
AC_INIT(.autofs-5.1.6)
|
||||
AC_INIT(.autofs-5.1.7)
|
||||
|
||||
# for pkg-config macros
|
||||
-m4_include([/usr/share/aclocal/pkg.m4])
|
||||
|
|
@ -28,6 +26,3 @@ index 493b9f1..268d06b 100644
|
|||
|
||||
#
|
||||
# autofs installs by default in /usr
|
||||
--
|
||||
2.7.4
|
||||
|
||||
|
|
|
|||
|
|
@ -16,29 +16,27 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
|||
modules/lookup_multi.c | 2 +-
|
||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/daemon/lookup.c b/daemon/lookup.c
|
||||
index 18df935..d35d484 100644
|
||||
--- a/daemon/lookup.c
|
||||
+++ b/daemon/lookup.c
|
||||
@@ -382,7 +382,7 @@ static int read_file_source_instance(struct autofs_point *ap, struct map_source
|
||||
if (!S_ISREG(st.st_mode))
|
||||
@@ -397,7 +397,7 @@ static int read_file_source_instance(str
|
||||
return NSS_STATUS_NOTFOUND;
|
||||
}
|
||||
|
||||
- if (st.st_mode & __S_IEXEC)
|
||||
+ if (st.st_mode & S_IEXEC)
|
||||
type = src_prog;
|
||||
else
|
||||
type = src_file;
|
||||
@@ -942,7 +942,7 @@ static int lookup_name_file_source_instance(struct autofs_point *ap, struct map_
|
||||
if (!S_ISREG(st.st_mode))
|
||||
@@ -930,7 +930,7 @@ static int lookup_name_file_source_insta
|
||||
return NSS_STATUS_NOTFOUND;
|
||||
}
|
||||
|
||||
- if (st.st_mode & __S_IEXEC)
|
||||
+ if (st.st_mode & S_IEXEC)
|
||||
type = src_prog;
|
||||
else
|
||||
type = src_file;
|
||||
@@ -1118,7 +1118,7 @@ static struct map_source *lookup_get_map_source(struct master_mapent *entry)
|
||||
@@ -1077,7 +1077,7 @@ static struct map_source *lookup_get_map
|
||||
if (!S_ISREG(st.st_mode))
|
||||
return NULL;
|
||||
|
||||
|
|
@ -47,11 +45,9 @@ index 18df935..d35d484 100644
|
|||
type = "program";
|
||||
else
|
||||
type = "file";
|
||||
diff --git a/modules/lookup_multi.c b/modules/lookup_multi.c
|
||||
index bb9f88c..cf109de 100644
|
||||
--- a/modules/lookup_multi.c
|
||||
+++ b/modules/lookup_multi.c
|
||||
@@ -247,7 +247,7 @@ static struct lookup_mod *nss_open_lookup(const char *format, int argc, const ch
|
||||
@@ -247,7 +247,7 @@ static struct lookup_mod *nss_open_looku
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
@ -60,6 +56,3 @@ index bb9f88c..cf109de 100644
|
|||
type = src_prog;
|
||||
else
|
||||
type = src_file;
|
||||
--
|
||||
2.7.4
|
||||
|
||||
|
|
|
|||
|
|
@ -1,30 +0,0 @@
|
|||
From 2256b8aa98cff15ddf2a8d36496e6c9125927901 Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Oberritter <obi@opendreambox.org>
|
||||
Date: Wed, 13 Mar 2013 16:17:08 +0100
|
||||
Subject: [PATCH] autofs-5.0.7: include linux/nfs.h directly in rpc_subs.h
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Fixes compile error with uclibc. Glibc's nfs/nfs.h contains
|
||||
nothing but "#include linux/nfs.h". rpc_subs.h already includes
|
||||
other linux/nfs*.h files directly.
|
||||
|
||||
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
|
||||
|
||||
---
|
||||
include/rpc_subs.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/rpc_subs.h b/include/rpc_subs.h
|
||||
index e744e89..83db47e 100644
|
||||
--- a/include/rpc_subs.h
|
||||
+++ b/include/rpc_subs.h
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
#include <rpc/rpc.h>
|
||||
#include <rpc/pmap_prot.h>
|
||||
-#include <nfs/nfs.h>
|
||||
+#include <linux/nfs.h>
|
||||
#include <linux/nfs2.h>
|
||||
#include <linux/nfs3.h>
|
||||
|
||||
|
|
@ -23,21 +23,9 @@ Signed-off-by: Roy Li <rongqing.li@windriver.com>
|
|||
modules/Makefile | 3 ++-
|
||||
2 files changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/lib/Makefile b/lib/Makefile
|
||||
index 4798a4b..c40cf86 100644
|
||||
--- a/lib/Makefile
|
||||
+++ b/lib/Makefile
|
||||
@@ -57,7 +57,8 @@ mount_xdr.o: mount_xdr.c
|
||||
master_tok.c: master_tok.l
|
||||
$(LEX) -o$@ -Pmaster_ $?
|
||||
|
||||
-master_parse.tab.c master_parse.tab.h: master_parse.y
|
||||
+master_parse.tab.h: master_parse.tab.c
|
||||
+master_parse.tab.c: master_parse.y
|
||||
$(YACC) -v -d -p master_ -b master_parse $?
|
||||
|
||||
master_tok.o: master_tok.c master_parse.tab.h
|
||||
@@ -67,7 +68,8 @@ master_parse.tab.o: master_parse.tab.c master_parse.tab.h
|
||||
@@ -53,7 +53,8 @@ mount_xdr.o: mount_xdr.c
|
||||
nss_tok.c: nss_tok.l
|
||||
$(LEX) -o$@ -Pnss_ $?
|
||||
|
||||
|
|
@ -47,8 +35,6 @@ index 4798a4b..c40cf86 100644
|
|||
$(YACC) -v -d -p nss_ -b nss_parse $?
|
||||
|
||||
nss_tok.o: nss_tok.c nss_parse.tab.h
|
||||
diff --git a/modules/Makefile b/modules/Makefile
|
||||
index d9ab06c..abc7698 100644
|
||||
--- a/modules/Makefile
|
||||
+++ b/modules/Makefile
|
||||
@@ -103,7 +103,8 @@ amd_tok.c: amd_tok.l
|
||||
|
|
@ -61,3 +47,30 @@ index d9ab06c..abc7698 100644
|
|||
$(YACC) -v -d -p amd_ -b amd_parse $?
|
||||
|
||||
amd_parse.tab.o: amd_parse.tab.c amd_parse.tab.h
|
||||
--- a/daemon/Makefile
|
||||
+++ b/daemon/Makefile
|
||||
@@ -16,7 +16,7 @@ YACCSRC = master_tok.c master_parse.tab.
|
||||
version := $(shell cat ../.version)
|
||||
|
||||
CFLAGS += -rdynamic $(DAEMON_CFLAGS) -D_GNU_SOURCE -I../include
|
||||
-CFLAGS += -DAUTOFS_LIB_DIR=\"$(autofslibdir)\"
|
||||
+CFLAGS += -DAUTOFS_LIB_DIR=\"$(autofslibdir)\"
|
||||
CFLAGS += -DAUTOFS_MAP_DIR=\"$(autofsmapdir)\"
|
||||
CFLAGS += -DAUTOFS_CONF_DIR=\"$(autofsconfdir)\"
|
||||
CFLAGS += -DAUTOFS_FIFO_DIR=\"$(autofsfifodir)\"
|
||||
@@ -44,7 +44,8 @@ automount: $(OBJS) $(AUTOFS_LIB)
|
||||
master_tok.c: master_tok.l
|
||||
$(LEX) -o$@ -Pmaster_ $?
|
||||
|
||||
-master_parse.tab.c master_parse.tab.h: master_parse.y
|
||||
+master_parse.tab.h: master_parse.tab.c
|
||||
+master_parse.tab.c: master_parse.y
|
||||
$(YACC) -v -d -p master_ -b master_parse $?
|
||||
|
||||
master_tok.o: master_tok.c master_parse.tab.h
|
||||
@@ -57,5 +58,3 @@ clean:
|
||||
install: all
|
||||
install -d -m 755 $(INSTALLROOT)$(sbindir)
|
||||
install -c automount -m 755 $(INSTALLROOT)$(sbindir)
|
||||
-
|
||||
-
|
||||
|
|
|
|||
|
|
@ -16,33 +16,21 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
|||
configure.in | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/configure.in b/configure.in
|
||||
index f5fbb35..76ecb40 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -211,8 +211,20 @@ fi
|
||||
AC_SUBST(ENABLE_FEDFS)
|
||||
|
||||
# LDAP SASL auth needs libxml and Kerberos
|
||||
-AF_CHECK_LIBXML()
|
||||
@@ -215,7 +215,14 @@ PKG_CHECK_MODULES([XML], [libxml-2.0], [
|
||||
AC_DEFINE(LIBXML2_WORKAROUND, 1, [Use libxml2 tsd usage workaround])
|
||||
], [HAVE_LIBXML=0])
|
||||
|
||||
-AF_CHECK_KRB5()
|
||||
+PKG_CHECK_MODULES(XML, [libxml-2.0],HAVE_LIBXML=1,HAVE_LIBXML=0)
|
||||
+AC_SUBST([HAVE_LIBXML])
|
||||
+XML_FLAGS=$XML_CFLAGS
|
||||
+
|
||||
+PKG_CHECK_MODULES(KRB5, [krb5],HAVE_KRB5=1,HAVE_KRB5=0)
|
||||
+AC_SUBST([HAVE_KRB5])
|
||||
+if test "x$HAVE_KRB5" = "x1"; then
|
||||
+PKG_CHECK_MODULES(KRB5, [krb5], [
|
||||
+ HAVE_KRB5=1
|
||||
+ SAVE_CFLAGS=$CFLAGS
|
||||
+ SAVE_LIBS=$LIBS
|
||||
+ CFLAGS="$CFLAGS $KRB5_FLAGS"
|
||||
+ LIBS="$LIBS $KRB5_LIBS"
|
||||
+
|
||||
+ AC_CHECK_FUNCS([krb5_principal_get_realm])
|
||||
+fi
|
||||
|
||||
+], [HAVE_KRB5=0])
|
||||
|
||||
AC_SEARCH_LIBS([versionsort],[])
|
||||
if test "$ac_cv_search_versionsort" = "no"; then
|
||||
--
|
||||
2.7.4
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
SUMMARY = "Kernel based automounter for linux"
|
||||
SECTION = "utils"
|
||||
LICENSE = "GPL-2.0"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=ee9324a6f564bb2376b63878ac396798"
|
||||
|
||||
DEPENDS += "libtirpc flex-native bison-native e2fsprogs openssl libxml2 util-linux cyrus-sasl libnsl2"
|
||||
|
||||
|
|
@ -10,7 +10,6 @@ CFLAGS += "-I${STAGING_INCDIR}/tirpc"
|
|||
inherit autotools-brokensep systemd update-rc.d pkgconfig
|
||||
|
||||
SRC_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.gz \
|
||||
file://autofs-5.0.7-include-linux-nfs.h-directly-in-rpc_sub.patch \
|
||||
file://no-bash.patch \
|
||||
file://cross.patch \
|
||||
file://fix_disable_ldap.patch \
|
||||
|
|
@ -26,11 +25,9 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.gz \
|
|||
file://0001-modules-lookup_multi.c-Replace-__S_IEXEC-with-S_IEXE.patch \
|
||||
file://0001-Do-not-hardcode-path-for-pkg.m4.patch \
|
||||
file://0001-Bug-fix-for-pid_t-not-found-on-musl.patch \
|
||||
file://0001-Define-__SWORD_TYPE-if-undefined.patch \
|
||||
"
|
||||
|
||||
|
||||
SRC_URI[md5sum] = "e6800e0afd6009ecdff148088c564050"
|
||||
SRC_URI[sha256sum] = "82094cad44f4e5c4f93eff2789cd66b57d7ab3fa646b7722d97608571001e694"
|
||||
SRC_URI[sha256sum] = "a18619e5ad18960fe382354eef33f070e57e4e5711d484b010acde080a003312"
|
||||
|
||||
UPSTREAM_CHECK_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/"
|
||||
|
||||
|
|
@ -87,10 +84,14 @@ do_install_append () {
|
|||
}
|
||||
SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
|
||||
# all the libraries are unversioned, so don't pack it on PN-dev
|
||||
SOLIBS = ".so"
|
||||
FILES_SOLIBSDEV = ""
|
||||
# Some symlinks are created in plugins dir e.g.
|
||||
# mount_nfs4.so -> mount_nfs.so
|
||||
INSANE_SKIP_${PN} = "dev-so"
|
||||
|
||||
RPROVIDES_${PN} += "${PN}-systemd"
|
||||
RREPLACES_${PN} += "${PN}-systemd"
|
||||
RCONFLICTS_${PN} += "${PN}-systemd"
|
||||
SYSTEMD_SERVICE_${PN} = "autofs.service"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user