mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-01-01 13:58:06 +00:00
xfsprogs: Upgrade to 4.12.0
Fix cross builds with hardening flags Fix build with gold Specify libtool tag Add DISABLE_STATIC = "" Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
parent
e890ecb1d2
commit
ba478fc6b2
|
|
@ -1,58 +0,0 @@
|
|||
From 2b4714123cdecb558babb76074d0ab945bf5b177 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 16 Jun 2017 18:59:10 -0700
|
||||
Subject: [PATCH] define __ prefixed version of intXY_t types
|
||||
|
||||
This is required since musl does not define them
|
||||
unlike glibc
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
include/linux.h | 29 +++++++++++++++++++++++++++++
|
||||
1 file changed, 29 insertions(+)
|
||||
|
||||
diff --git a/include/linux.h b/include/linux.h
|
||||
index 6a676ca..6976d83 100644
|
||||
--- a/include/linux.h
|
||||
+++ b/include/linux.h
|
||||
@@ -40,6 +40,35 @@
|
||||
# undef fsxattr
|
||||
#endif
|
||||
|
||||
+#ifndef loff_t
|
||||
+#define loff_t off_t
|
||||
+#endif
|
||||
+#ifndef __uint8_t
|
||||
+#define __uint8_t uint8_t
|
||||
+#endif
|
||||
+#ifndef __uint16_t
|
||||
+#define __uint16_t uint16_t
|
||||
+#endif
|
||||
+#ifndef __uint32_t
|
||||
+#define __uint32_t uint32_t
|
||||
+#endif
|
||||
+#ifndef __uint64_t
|
||||
+#define __uint64_t uint64_t
|
||||
+#endif
|
||||
+
|
||||
+#ifndef __int8_t
|
||||
+#define __int8_t int8_t
|
||||
+#endif
|
||||
+#ifndef __int16_t
|
||||
+#define __int16_t int16_t
|
||||
+#endif
|
||||
+#ifndef __int32_t
|
||||
+#define __int32_t int32_t
|
||||
+#endif
|
||||
+#ifndef __int64_t
|
||||
+#define __int64_t int64_t
|
||||
+#endif
|
||||
+
|
||||
static __inline__ int xfsctl(const char *path, int fd, int cmd, void *p)
|
||||
{
|
||||
return ioctl(fd, cmd, p);
|
||||
--
|
||||
2.13.1
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,82 +0,0 @@
|
|||
Index: xfsprogs-4.10.0/libxcmd/Makefile
|
||||
===================================================================
|
||||
--- xfsprogs-4.10.0.orig/libxcmd/Makefile
|
||||
+++ xfsprogs-4.10.0/libxcmd/Makefile
|
||||
@@ -30,10 +30,21 @@ LCFLAGS += -DENABLE_EDITLINE
|
||||
LTLIBS += $(LIBEDITLINE) $(LIBTERMCAP)
|
||||
endif
|
||||
|
||||
+ifeq ($(ENABLE_BLKID),yes)
|
||||
+LCFLAGS += -DENABLE_BLKID
|
||||
+LTLIBS += $(LIBBLKID)
|
||||
+endif
|
||||
+
|
||||
+LTLIBS += $(LIBXFS)
|
||||
+
|
||||
default: ltdepend $(LTLIBRARY)
|
||||
|
||||
include $(BUILDRULES)
|
||||
|
||||
-install install-dev: default
|
||||
+install: default
|
||||
+ $(INSTALL_LTLIB)
|
||||
+
|
||||
+install-dev: default
|
||||
+ $(INSTALL_LTLIB_DEV)
|
||||
|
||||
-include .ltdep
|
||||
Index: xfsprogs-4.10.0/libxfs/Makefile
|
||||
===================================================================
|
||||
--- xfsprogs-4.10.0.orig/libxfs/Makefile
|
||||
+++ xfsprogs-4.10.0/libxfs/Makefile
|
||||
@@ -137,6 +137,7 @@ include $(BUILDRULES)
|
||||
|
||||
install: default
|
||||
$(INSTALL) -m 755 -d $(PKG_INC_DIR)
|
||||
+ $(INSTALL_LTLIB)
|
||||
|
||||
install-headers: $(addsuffix -hdrs, $(PKGHFILES))
|
||||
|
||||
Index: xfsprogs-4.10.0/libxlog/Makefile
|
||||
===================================================================
|
||||
--- xfsprogs-4.10.0.orig/libxlog/Makefile
|
||||
+++ xfsprogs-4.10.0/libxlog/Makefile
|
||||
@@ -19,6 +19,10 @@ default: ltdepend $(LTLIBRARY)
|
||||
|
||||
include $(BUILDRULES)
|
||||
|
||||
-install install-dev: default
|
||||
+install: default
|
||||
+ $(INSTALL_LTLIB)
|
||||
+
|
||||
+install-dev: default
|
||||
+ $(INSTALL_LTLIB_DEV)
|
||||
|
||||
-include .ltdep
|
||||
Index: xfsprogs-4.10.0/io/Makefile
|
||||
===================================================================
|
||||
--- xfsprogs-4.10.0.orig/io/Makefile
|
||||
+++ xfsprogs-4.10.0/io/Makefile
|
||||
@@ -13,7 +13,7 @@
|
||||
getrusage.c imap.c link.c mmap.c open.c parent.c pread.c prealloc.c \
|
||||
pwrite.c reflink.c seek.c shutdown.c sync.c truncate.c utimes.c
|
||||
|
||||
-LLDLIBS = $(LIBXCMD) $(LIBHANDLE) $(LIBPTHREAD)
|
||||
+LLDLIBS = $(LIBXCMD) $(LIBHANDLE) $(LIBUUID) $(LIBPTHREAD)
|
||||
LTDEPENDENCIES = $(LIBXCMD) $(LIBHANDLE)
|
||||
LLDFLAGS = -static-libtool-libs
|
||||
|
||||
Index: xfsprogs-4.10.0/quota/Makefile
|
||||
===================================================================
|
||||
--- xfsprogs-4.10.0.orig/quota/Makefile
|
||||
+++ xfsprogs-4.10.0/quotq/Makefile
|
||||
@@ -14,7 +14,7 @@
|
||||
PCFILES = darwin.c freebsd.c irix.c linux.c
|
||||
LSRCFILES = $(shell echo $(PCFILES) | sed -e "s/$(PKG_PLATFORM).c//g")
|
||||
|
||||
-LLDLIBS = $(LIBXCMD)
|
||||
+LLDLIBS = $(LIBXCMD) $(LIBUUID)
|
||||
LTDEPENDENCIES = $(LIBXCMD)
|
||||
LLDFLAGS = -static
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
Index: xfsprogs-4.12.0/include/builddefs.in
|
||||
===================================================================
|
||||
--- xfsprogs-4.12.0.orig/include/builddefs.in
|
||||
+++ xfsprogs-4.12.0/include/builddefs.in
|
||||
@@ -164,7 +164,7 @@ ifeq ($(ENABLE_GETTEXT),yes)
|
||||
GCFLAGS += -DENABLE_GETTEXT
|
||||
endif
|
||||
|
||||
-BUILD_CFLAGS += $(GCFLAGS) $(PCFLAGS)
|
||||
+BUILD_CFLAGS += $(GCFLAGS)
|
||||
# First, Global, Platform, Local CFLAGS
|
||||
CFLAGS += $(FCFLAGS) $(OPTIMIZER) $(GCFLAGS) $(PCFLAGS) $(LCFLAGS)
|
||||
|
||||
|
|
@ -0,0 +1,117 @@
|
|||
From 21253610f9ef87db8e2a75b863b7fcfbd0cdb421 Mon Sep 17 00:00:00 2001
|
||||
From: "Darrick J. Wong" <darrick.wong@oracle.com>
|
||||
Date: Tue, 25 Jul 2017 13:45:01 -0500
|
||||
Subject: [PATCH] In patch 4944defad4 ("xfs_db: redirect printfs when
|
||||
metadumping to stdout"), we solved the problem of xfs_db printfs ending up in
|
||||
the metadump stream by reassigning stdout for the duration of a stdout
|
||||
metadump. Unfortunately, musl doesn't allow stdout to be reassigned (in
|
||||
their view "extern FILE *stdout" means "extern FILE * const stdout"), so we
|
||||
abandon the old approach in favor of playing games with dup() to switch the
|
||||
raw file descriptors.
|
||||
|
||||
While we're at it, fix a regression where an unconverted outf test
|
||||
allows progress info to end up in the metadump stream.
|
||||
|
||||
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
|
||||
---
|
||||
db/metadump.c | 47 ++++++++++++++++++++++++++++++++++++-----------
|
||||
1 file changed, 36 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/db/metadump.c b/db/metadump.c
|
||||
index 96641e0..4e2f648 100644
|
||||
--- a/db/metadump.c
|
||||
+++ b/db/metadump.c
|
||||
@@ -78,6 +78,7 @@ static int obfuscate = 1;
|
||||
static int zero_stale_data = 1;
|
||||
static int show_warnings = 0;
|
||||
static int progress_since_warning = 0;
|
||||
+static bool stdout_metadump;
|
||||
|
||||
void
|
||||
metadump_init(void)
|
||||
@@ -137,7 +138,7 @@ print_progress(const char *fmt, ...)
|
||||
va_end(ap);
|
||||
buf[sizeof(buf)-1] = '\0';
|
||||
|
||||
- f = (outf == stdout) ? stderr : stdout;
|
||||
+ f = stdout_metadump ? stderr : stdout;
|
||||
fprintf(f, "\r%-59s", buf);
|
||||
fflush(f);
|
||||
progress_since_warning = 1;
|
||||
@@ -2750,7 +2751,8 @@ metadump_f(
|
||||
xfs_agnumber_t agno;
|
||||
int c;
|
||||
int start_iocur_sp;
|
||||
- bool stdout_metadump = false;
|
||||
+ int outfd = -1;
|
||||
+ int ret;
|
||||
char *p;
|
||||
|
||||
exitcode = 1;
|
||||
@@ -2870,16 +2872,35 @@ metadump_f(
|
||||
* metadump operation so that dbprintf and other messages
|
||||
* are sent to the console instead of polluting the
|
||||
* metadump stream.
|
||||
+ *
|
||||
+ * We get to do this the hard way because musl doesn't
|
||||
+ * allow reassignment of stdout.
|
||||
*/
|
||||
- outf = stdout;
|
||||
- stdout = stderr;
|
||||
+ fflush(stdout);
|
||||
+ outfd = dup(STDOUT_FILENO);
|
||||
+ if (outfd < 0) {
|
||||
+ perror("opening dump stream");
|
||||
+ goto out;
|
||||
+ }
|
||||
+ ret = dup2(STDERR_FILENO, STDOUT_FILENO);
|
||||
+ if (ret < 0) {
|
||||
+ perror("redirecting stdout");
|
||||
+ close(outfd);
|
||||
+ goto out;
|
||||
+ }
|
||||
+ outf = fdopen(outfd, "a");
|
||||
+ if (outf == NULL) {
|
||||
+ fprintf(stderr, "cannot create dump stream\n");
|
||||
+ dup2(outfd, 1);
|
||||
+ close(outfd);
|
||||
+ goto out;
|
||||
+ }
|
||||
stdout_metadump = true;
|
||||
} else {
|
||||
outf = fopen(argv[optind], "wb");
|
||||
if (outf == NULL) {
|
||||
print_warning("cannot create dump file");
|
||||
- free(metablock);
|
||||
- return 0;
|
||||
+ goto out;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2907,15 +2928,19 @@ metadump_f(
|
||||
if (progress_since_warning)
|
||||
fputc('\n', stdout_metadump ? stderr : stdout);
|
||||
|
||||
- if (stdout_metadump)
|
||||
- stdout = outf;
|
||||
- else
|
||||
- fclose(outf);
|
||||
+ if (stdout_metadump) {
|
||||
+ fflush(outf);
|
||||
+ fflush(stdout);
|
||||
+ ret = dup2(outfd, STDOUT_FILENO);
|
||||
+ if (ret < 0)
|
||||
+ perror("un-redirecting stdout");
|
||||
+ }
|
||||
+ fclose(outf);
|
||||
|
||||
/* cleanup iocur stack */
|
||||
while (iocur_sp > start_iocur_sp)
|
||||
pop_cur();
|
||||
-
|
||||
+out:
|
||||
free(metablock);
|
||||
|
||||
return 0;
|
||||
--
|
||||
2.13.3
|
||||
|
|
@ -6,11 +6,13 @@ LICENSE_libhandle = "LGPLv2.1"
|
|||
LIC_FILES_CHKSUM = "file://doc/COPYING;md5=102f7fec3d53c7c8f0b7baf9bf9d76a8"
|
||||
DEPENDS = "util-linux util-linux-native"
|
||||
SRC_URI = "https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/${BP}.tar.xz \
|
||||
file://link_needed_libs.patch \
|
||||
file://0001-define-__-prefixed-version-of-intXY_t-types.patch \
|
||||
file://0001-xfsprogs-remove-double-underscore-integer-types.patch \
|
||||
file://0001-xfs-remove-double-underscore-integer-types.patch \
|
||||
file://remove_flags_from_build_flags.patch \
|
||||
file://xfsprogs-4.12.0-fix_musl.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "f1f9b8c752347eefdb56483dafa0cefb"
|
||||
SRC_URI[sha256sum] = "c3a6d87b564d7738243c507df82276bed982265e345363a95f2c764e8a5f5bb2"
|
||||
SRC_URI[md5sum] = "e348b0e1d7bd1cd82d64b91ff37e727e"
|
||||
SRC_URI[sha256sum] = "b330ad8d737f4152ae511580102e2fc49212bb51dfb4b614084344abae46d0df"
|
||||
|
||||
inherit autotools-brokensep
|
||||
|
||||
|
|
@ -33,6 +35,7 @@ EXTRA_OECONF = "--enable-gettext=no \
|
|||
ac_cv_lib_rt_lio_listio=yes \
|
||||
"
|
||||
|
||||
DISABLE_STATIC = ""
|
||||
EXTRA_AUTORECONF += "-I ${S}/m4 --exclude=autoheader"
|
||||
|
||||
PACKAGECONFIG ??= "readline blkid"
|
||||
|
|
@ -42,6 +45,7 @@ PACKAGECONFIG[blkid] = "--enable-blkid=yes,--enable-blkid=no,util-linux"
|
|||
|
||||
export DEBUG="-DNDEBUG"
|
||||
export BUILD_VERBOSE="1"
|
||||
export tagname="CC"
|
||||
|
||||
EXTRA_OEMAKE = "DIST_ROOT='${D}'"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user