e2fsprogs: fix build failure with old glibc versions
In old (< 2.17) glibc versions clock_gettime() resides in librt, however there's no check for this, so add a patch to fix it. Fixes: http://autobuild.buildroot.net/results/25c/25c042d2862affebf552ed24bc2a58e0c484226f/ Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
558dad2a75
commit
cd48a7e572
48
package/e2fsprogs/0002-fuse2fs-might-need-librt.patch
Normal file
48
package/e2fsprogs/0002-fuse2fs-might-need-librt.patch
Normal file
@ -0,0 +1,48 @@
|
||||
From 14d9e94315cd8144ac72d368c45e70869a66799c Mon Sep 17 00:00:00 2001
|
||||
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
Date: Thu, 9 Jun 2016 07:47:03 -0300
|
||||
Subject: [PATCH] fuse2fs: might need librt
|
||||
|
||||
It uses clock_gettime() which in older glibc versions is in librt.
|
||||
|
||||
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
---
|
||||
Patch status: sent to linux-ext4 ML
|
||||
|
||||
configure.ac | 5 +++++
|
||||
misc/Makefile.in | 3 ++-
|
||||
2 files changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 67d7231..a387dfd 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1162,6 +1162,11 @@ if test "$ac_cv_func_dlopen" = yes ; then
|
||||
fi
|
||||
AC_SUBST(MAGIC_LIB)
|
||||
dnl
|
||||
+dnl Check to see if librt is required for clock_gettime() (glibc < 2.17)
|
||||
+dnl
|
||||
+AC_CHECK_LIB(rt, clock_gettime, [CLOCK_GETTIME_LIB=-lrt])
|
||||
+AC_SUBST(CLOCK_GETTIME_LIB)
|
||||
+dnl
|
||||
dnl Check to see if the FUSE library is -lfuse or -losxfuse
|
||||
dnl
|
||||
FUSE_CMT=
|
||||
diff --git a/misc/Makefile.in b/misc/Makefile.in
|
||||
index 43e3c7e..070a6e3 100644
|
||||
--- a/misc/Makefile.in
|
||||
+++ b/misc/Makefile.in
|
||||
@@ -387,7 +387,8 @@ fuse2fs: $(FUSE2FS_OBJS) $(DEPLIBS) $(DEPLIBBLKID) $(DEPLIBUUID) \
|
||||
$(LIBEXT2FS)
|
||||
$(E) " LD $@"
|
||||
$(Q) $(CC) $(ALL_LDFLAGS) -o fuse2fs $(FUSE2FS_OBJS) $(LIBS) \
|
||||
- $(LIBFUSE) $(LIBBLKID) $(LIBUUID) $(LIBEXT2FS) $(LIBINTL)
|
||||
+ $(LIBFUSE) $(LIBBLKID) $(LIBUUID) $(LIBEXT2FS) $(LIBINTL) \
|
||||
+ $(CLOCK_GETTIME_LIB)
|
||||
|
||||
journal.o: $(srcdir)/../debugfs/journal.c
|
||||
$(E) " CC $@"
|
||||
--
|
||||
2.7.3
|
||||
|
@ -12,6 +12,14 @@ E2FSPROGS_LICENSE_FILES = NOTICE lib/uuid/COPYING lib/ss/mit-sipb-copyright.h li
|
||||
E2FSPROGS_INSTALL_STAGING = YES
|
||||
E2FSPROGS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-libs
|
||||
E2FSPROGS_DEPENDENCIES = host-pkgconf util-linux
|
||||
# we don't have a host-util-linux
|
||||
HOST_E2FSPROGS_DEPENDENCIES = host-pkgconf
|
||||
|
||||
# For 0002-fuse2fs-might-need-librt.patch
|
||||
# host-gettext for the gettext macro file needed at autoreconf time
|
||||
E2FSPROGS_AUTORECONF = YES
|
||||
E2FSPROGS_DEPENDENCIES += host-gettext
|
||||
HOST_E2FSPROGS_DEPENDENCIES += host-gettext
|
||||
|
||||
# e4defrag doesn't build on older systems like RHEL5.x, and we don't
|
||||
# need it on the host anyway.
|
||||
@ -61,8 +69,6 @@ E2FSPROGS_MAKE_OPTS = \
|
||||
define HOST_E2FSPROGS_INSTALL_CMDS
|
||||
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) install install-libs
|
||||
endef
|
||||
# we don't have a host-util-linux
|
||||
HOST_E2FSPROGS_DEPENDENCIES = host-pkgconf
|
||||
|
||||
# binaries to keep or remove
|
||||
E2FSPROGS_BINTARGETS_$(BR2_PACKAGE_E2FSPROGS_BADBLOCKS) += usr/sbin/badblocks
|
||||
|
Loading…
Reference in New Issue
Block a user