LDFLAGS issue is better addressed with a backport: http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=bc4a5deef9f820c55fdac3c0070364c17cd91cca
Alex On Thu, 20 Jul 2023 at 18:21, Trevor Gamblin <tgamb...@baylibre.com> wrote: > > Changelog: http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=shortlog > > Three patches were removed as they're now upstream: > > 2c0b5249 Replace statfs64 with statfs > 167f2336 Fix function prototypes > 896946e3 mountd: Check for return of stat function > > do_compile still failed after removing these patches, reporting > undefined references to 'event_base_new', 'sqlite3_open_v2', etc. This > is fixed by adding the following line: > > LDFLAGS:append = " -lsqlite3 -levent" > > Signed-off-by: Trevor Gamblin <tgamb...@baylibre.com> > --- > .../0001-Replace-statfs64-with-statfs.patch | 171 ------------------ > ...td-Check-for-return-of-stat-function.patch | 34 ---- > .../0006-Fix-function-prototypes.patch | 93 ---------- > ...{nfs-utils_2.6.2.bb => nfs-utils_2.6.3.bb} | 7 +- > 4 files changed, 3 insertions(+), 302 deletions(-) > delete mode 100644 > meta/recipes-connectivity/nfs-utils/nfs-utils/0001-Replace-statfs64-with-statfs.patch > delete mode 100644 > meta/recipes-connectivity/nfs-utils/nfs-utils/0005-mountd-Check-for-return-of-stat-function.patch > delete mode 100644 > meta/recipes-connectivity/nfs-utils/nfs-utils/0006-Fix-function-prototypes.patch > rename meta/recipes-connectivity/nfs-utils/{nfs-utils_2.6.2.bb => > nfs-utils_2.6.3.bb} (95%) > > diff --git > a/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-Replace-statfs64-with-statfs.patch > > b/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-Replace-statfs64-with-statfs.patch > deleted file mode 100644 > index 40ceff9ae9..0000000000 > --- > a/meta/recipes-connectivity/nfs-utils/nfs-utils/0001-Replace-statfs64-with-statfs.patch > +++ /dev/null > @@ -1,171 +0,0 @@ > -From e89652b853ca7de671093ae44305fa3435e13d3d Mon Sep 17 00:00:00 2001 > -From: Khem Raj <raj.k...@gmail.com> > -Date: Thu, 15 Dec 2022 13:29:43 -0800 > -Subject: [PATCH] Replace statfs64 with statfs > - > -autoconf AC_SYS_LARGEFILE is used by configure to add needed defines > -when needed for enabling 64bit off_t, therefore replacing statfs64 with > -statfs should be functionally same. Additionally this helps compiling > -with latest musl where 64bit LFS functions like statfs64 and friends are > -now moved under _LARGEFILE64_SOURCE feature test macro, this works on > -glibc systems because _GNU_SOURCE macros also enables > -_LARGEFILE64_SOURCE indirectly. This is not case with musl and this > -latest issue is exposed. > - > -Upstream-Status: Submitted > [https://lore.kernel.org/linux-nfs/20221215213605.4061853-1-raj.k...@gmail.com/T/#u] > -Signed-off-by: Khem Raj <raj.k...@gmail.com> > ---- > - support/export/cache.c | 14 +++++++------- > - support/include/nfsd_path.h | 6 +++--- > - support/misc/nfsd_path.c | 24 ++++++++++++------------ > - utils/exportfs/exportfs.c | 4 ++-- > - 4 files changed, 24 insertions(+), 24 deletions(-) > - > -diff --git a/support/export/cache.c b/support/export/cache.c > -index a5823e9..2497d4f 100644 > ---- a/support/export/cache.c > -+++ b/support/export/cache.c > -@@ -346,27 +346,27 @@ static int uuid_by_path(char *path, int type, size_t > uuidlen, char *uuid) > - > - /* Possible sources of uuid are > - * - blkid uuid > -- * - statfs64 uuid > -+ * - statfs uuid > - * > -- * On some filesystems (e.g. vfat) the statfs64 uuid is simply an > -+ * On some filesystems (e.g. vfat) the statfs uuid is simply an > - * encoding of the device that the filesystem is mounted from, so > - * it we be very bad to use that (as device numbers change). blkid > - * must be preferred. > -- * On other filesystems (e.g. btrfs) the statfs64 uuid contains > -+ * On other filesystems (e.g. btrfs) the statfs uuid contains > - * important info that the blkid uuid cannot contain: This happens > - * when multiple subvolumes are exported (they have the same > -- * blkid uuid but different statfs64 uuids). > -+ * blkid uuid but different statfs uuids). > - * We rely on get_uuid_blkdev *knowing* which is which and not > returning > -- * a uuid for filesystems where the statfs64 uuid is better. > -+ * a uuid for filesystems where the statfs uuid is better. > - * > - */ > -- struct statfs64 st; > -+ struct statfs st; > - char fsid_val[17]; > - const char *blkid_val = NULL; > - const char *val; > - int rc; > - > -- rc = nfsd_path_statfs64(path, &st); > -+ rc = nfsd_path_statfs(path, &st); > - > - if (type == 0 && rc == 0) { > - const unsigned long *bad; > -diff --git a/support/include/nfsd_path.h b/support/include/nfsd_path.h > -index 3b73aad..aa1e1dd 100644 > ---- a/support/include/nfsd_path.h > -+++ b/support/include/nfsd_path.h > -@@ -7,7 +7,7 @@ > - #include <sys/stat.h> > - > - struct file_handle; > --struct statfs64; > -+struct statfs; > - > - void nfsd_path_init(void); > - > -@@ -18,8 +18,8 @@ char * nfsd_path_prepend_dir(const char > *dir, const char *pathname); > - int nfsd_path_stat(const char *pathname, struct stat *statbuf); > - int nfsd_path_lstat(const char *pathname, struct stat *statbuf); > - > --int nfsd_path_statfs64(const char *pathname, > -- struct statfs64 *statbuf); > -+int nfsd_path_statfs(const char *pathname, > -+ struct statfs *statbuf); > - > - char * nfsd_realpath(const char *path, char *resolved_path); > - > -diff --git a/support/misc/nfsd_path.c b/support/misc/nfsd_path.c > -index 65e53c1..c3dea4f 100644 > ---- a/support/misc/nfsd_path.c > -+++ b/support/misc/nfsd_path.c > -@@ -184,46 +184,46 @@ nfsd_path_lstat(const char *pathname, struct stat > *statbuf) > - return nfsd_run_stat(nfsd_wq, nfsd_lstatfunc, pathname, statbuf); > - } > - > --struct nfsd_statfs64_data { > -+struct nfsd_statfs_data { > - const char *pathname; > -- struct statfs64 *statbuf; > -+ struct statfs *statbuf; > - int ret; > - int err; > - }; > - > - static void > --nfsd_statfs64func(void *data) > -+nfsd_statfsfunc(void *data) > - { > -- struct nfsd_statfs64_data *d = data; > -+ struct nfsd_statfs_data *d = data; > - > -- d->ret = statfs64(d->pathname, d->statbuf); > -+ d->ret = statfs(d->pathname, d->statbuf); > - if (d->ret < 0) > - d->err = errno; > - } > - > - static int > --nfsd_run_statfs64(struct xthread_workqueue *wq, > -+nfsd_run_statfs(struct xthread_workqueue *wq, > - const char *pathname, > -- struct statfs64 *statbuf) > -+ struct statfs *statbuf) > - { > -- struct nfsd_statfs64_data data = { > -+ struct nfsd_statfs_data data = { > - pathname, > - statbuf, > - 0, > - 0 > - }; > -- xthread_work_run_sync(wq, nfsd_statfs64func, &data); > -+ xthread_work_run_sync(wq, nfsd_statfsfunc, &data); > - if (data.ret < 0) > - errno = data.err; > - return data.ret; > - } > - > - int > --nfsd_path_statfs64(const char *pathname, struct statfs64 *statbuf) > -+nfsd_path_statfs(const char *pathname, struct statfs *statbuf) > - { > - if (!nfsd_wq) > -- return statfs64(pathname, statbuf); > -- return nfsd_run_statfs64(nfsd_wq, pathname, statbuf); > -+ return statfs(pathname, statbuf); > -+ return nfsd_run_statfs(nfsd_wq, pathname, statbuf); > - } > - > - struct nfsd_realpath_data { > -diff --git a/utils/exportfs/exportfs.c b/utils/exportfs/exportfs.c > -index 0897b22..6d79a5b 100644 > ---- a/utils/exportfs/exportfs.c > -+++ b/utils/exportfs/exportfs.c > -@@ -513,7 +513,7 @@ validate_export(nfs_export *exp) > - */ > - struct stat stb; > - char *path = exportent_realpath(&exp->m_export); > -- struct statfs64 stf; > -+ struct statfs stf; > - int fs_has_fsid = 0; > - > - if (stat(path, &stb) < 0) { > -@@ -528,7 +528,7 @@ validate_export(nfs_export *exp) > - if (!can_test()) > - return; > - > -- if (!statfs64(path, &stf) && > -+ if (!statfs(path, &stf) && > - (stf.f_fsid.__val[0] || stf.f_fsid.__val[1])) > - fs_has_fsid = 1; > - > diff --git > a/meta/recipes-connectivity/nfs-utils/nfs-utils/0005-mountd-Check-for-return-of-stat-function.patch > > b/meta/recipes-connectivity/nfs-utils/nfs-utils/0005-mountd-Check-for-return-of-stat-function.patch > deleted file mode 100644 > index 13a21e5307..0000000000 > --- > a/meta/recipes-connectivity/nfs-utils/nfs-utils/0005-mountd-Check-for-return-of-stat-function.patch > +++ /dev/null > @@ -1,34 +0,0 @@ > -From 887ecc7837962e9be77a4fea7d9122648f73a84a Mon Sep 17 00:00:00 2001 > -From: Khem Raj <raj.k...@gmail.com> > -Date: Mon, 15 Aug 2022 14:47:53 -0700 > -Subject: [PATCH] mountd: Check for return of stat function > - > -simplify the check, stat() return 0 on success -1 on failure > - > -Fixes clang reported errors e.g. > - > -| v4clients.c:29:6: error: logical not is only applied to the left hand side > of this comparison [-Werror,-Wlogical-not-parentheses] > -| if (!stat("/proc/fs/nfsd/clients", &sb) == 0 || > -| ^ ~~ > - > -Upstream-Status: Submitted > [https://patchwork.kernel.org/project/linux-nfs/patch/20220816024403.2694169-1-raj.k...@gmail.com/] > -Signed-off-by: Khem Raj <raj.k...@gmail.com> > -Cc: Konstantin Khorenko <khore...@virtuozzo.com> > -Cc: Steve Dickson <ste...@redhat.com> > ---- > - support/export/v4clients.c | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/support/export/v4clients.c b/support/export/v4clients.c > -index 5f15b61..3230251 100644 > ---- a/support/export/v4clients.c > -+++ b/support/export/v4clients.c > -@@ -26,7 +26,7 @@ void v4clients_init(void) > - { > - struct stat sb; > - > -- if (!stat("/proc/fs/nfsd/clients", &sb) == 0 || > -+ if (stat("/proc/fs/nfsd/clients", &sb) != 0 || > - !S_ISDIR(sb.st_mode)) > - return; > - if (clients_fd >= 0) > diff --git > a/meta/recipes-connectivity/nfs-utils/nfs-utils/0006-Fix-function-prototypes.patch > > b/meta/recipes-connectivity/nfs-utils/nfs-utils/0006-Fix-function-prototypes.patch > deleted file mode 100644 > index 793bc4651c..0000000000 > --- > a/meta/recipes-connectivity/nfs-utils/nfs-utils/0006-Fix-function-prototypes.patch > +++ /dev/null > @@ -1,93 +0,0 @@ > -From cf0ffbb5c8fa167376926d12a63613f15aa7602f Mon Sep 17 00:00:00 2001 > -From: Khem Raj <raj.k...@gmail.com> > -Date: Mon, 15 Aug 2022 14:50:15 -0700 > -Subject: [PATCH] Fix function prototypes > - > -Clang is now erroring out on functions with out parameter types > - > -Fixes errors like > -error: a function declaration without a prototype is deprecated in all > versions of C [-Werror,-Wstrict-prototypes] > - > -Upstream-Status: Submitted > [https://patchwork.kernel.org/project/linux-nfs/patch/20220816024403.2694169-2-raj.k...@gmail.com/] > -Signed-off-by: Khem Raj <raj.k...@gmail.com> > ---- > - support/export/auth.c | 2 +- > - support/export/v4root.c | 2 +- > - support/export/xtab.c | 2 +- > - utils/exportfs/exportfs.c | 4 ++-- > - utils/mount/network.c | 2 +- > - 5 files changed, 6 insertions(+), 6 deletions(-) > - > -diff --git a/support/export/auth.c b/support/export/auth.c > -index 03ce4b8..2d7960f 100644 > ---- a/support/export/auth.c > -+++ b/support/export/auth.c > -@@ -82,7 +82,7 @@ check_useipaddr(void) > - } > - > - unsigned int > --auth_reload() > -+auth_reload(void) > - { > - struct stat stb; > - static ino_t last_inode; > -diff --git a/support/export/v4root.c b/support/export/v4root.c > -index c12a7d8..fbb0ad5 100644 > ---- a/support/export/v4root.c > -+++ b/support/export/v4root.c > -@@ -198,7 +198,7 @@ static int v4root_add_parents(nfs_export *exp) > - * looking for components of the v4 mount. > - */ > - void > --v4root_set() > -+v4root_set(void) > - { > - nfs_export *exp; > - int i; > -diff --git a/support/export/xtab.c b/support/export/xtab.c > -index c888a80..e210ca9 100644 > ---- a/support/export/xtab.c > -+++ b/support/export/xtab.c > -@@ -135,7 +135,7 @@ xtab_write(char *xtab, char *xtabtmp, char *lockfn, int > is_export) > - } > - > - int > --xtab_export_write() > -+xtab_export_write(void) > - { > - return xtab_write(etab.statefn, etab.tmpfn, etab.lockfn, 1); > - } > -diff --git a/utils/exportfs/exportfs.c b/utils/exportfs/exportfs.c > -index 6ba615d..0897b22 100644 > ---- a/utils/exportfs/exportfs.c > -+++ b/utils/exportfs/exportfs.c > -@@ -69,14 +69,14 @@ static int _lockfd = -1; > - * need these additional lockfile() routines. > - */ > - static void > --grab_lockfile() > -+grab_lockfile(void) > - { > - _lockfd = open(lockfile, O_CREAT|O_RDWR, 0666); > - if (_lockfd != -1) > - lockf(_lockfd, F_LOCK, 0); > - } > - static void > --release_lockfile() > -+release_lockfile(void) > - { > - if (_lockfd != -1) { > - lockf(_lockfd, F_ULOCK, 0); > -diff --git a/utils/mount/network.c b/utils/mount/network.c > -index ed2f825..01ead49 100644 > ---- a/utils/mount/network.c > -+++ b/utils/mount/network.c > -@@ -179,7 +179,7 @@ static const unsigned long probe_mnt3_only[] = { > - > - static const unsigned int *nfs_default_proto(void); > - #ifdef MOUNT_CONFIG > --static const unsigned int *nfs_default_proto() > -+static const unsigned int *nfs_default_proto(void) > - { > - extern unsigned long config_default_proto; > - /* > diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.2.bb > b/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.3.bb > similarity index 95% > rename from meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.2.bb > rename to meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.3.bb > index 21df1803c5..4992bc89b1 100644 > --- a/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.2.bb > +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.3.bb > @@ -30,11 +30,8 @@ SRC_URI = > "${KERNELORG_MIRROR}/linux/utils/nfs-utils/${PV}/nfs-utils-${PV}.tar.x > file://bugfix-adjust-statd-service-name.patch \ > file://0001-Makefile.am-fix-undefined-function-for-libnsm.a.patch > \ > file://clang-warnings.patch \ > - file://0005-mountd-Check-for-return-of-stat-function.patch \ > - file://0006-Fix-function-prototypes.patch \ > - file://0001-Replace-statfs64-with-statfs.patch \ > " > -SRC_URI[sha256sum] = > "5200873e81c4d610e2462fc262fe18135f2dbe78b7979f95accd159ae64d5011" > +SRC_URI[sha256sum] = > "38d89e853a71d3c560ff026af3d969d75e24f782ff68324e76261fe0344459e1" > > # Only kernel-module-nfsd is required here (but can be built-in) - the nfsd > module will > # pull in the remainder of the dependencies. > @@ -62,6 +59,8 @@ EXTRA_OECONF = "--with-statduser=rpcuser \ > --with-rpcgen=${HOSTTOOLS_DIR}/rpcgen \ > " > > +LDFLAGS:append = " -lsqlite3 -levent" > + > PACKAGECONFIG ??= "tcp-wrappers \ > ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \ > " > -- > 2.41.0 > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#184655): https://lists.openembedded.org/g/openembedded-core/message/184655 Mute This Topic: https://lists.openembedded.org/mt/100259265/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-