xfsprogs: import from base
Does not seem to be appropriate there. Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
parent
2f8c24dfd1
commit
c9e678374a
6 changed files with 210 additions and 0 deletions
98
utils/xfsprogs/Makefile
Normal file
98
utils/xfsprogs/Makefile
Normal file
|
@ -0,0 +1,98 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2006-2012 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=xfsprogs
|
||||||
|
PKG_CPE_ID:=cpe:/a:sgi:xfsprogs
|
||||||
|
PKG_RELEASE:=4
|
||||||
|
PKG_VERSION:=4.11.0
|
||||||
|
PKG_SOURCE_URL:=@KERNEL/linux/utils/fs/xfs/xfsprogs
|
||||||
|
PKG_HASH:=c3a6d87b564d7738243c507df82276bed982265e345363a95f2c764e8a5f5bb2
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||||
|
PKG_INSTALL:=1
|
||||||
|
PKG_BUILD_PARALLEL:=1
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
define Package/xfsprogs/default
|
||||||
|
SECTION:=utils
|
||||||
|
CATEGORY:=Utilities
|
||||||
|
SUBMENU:=Filesystem
|
||||||
|
DEPENDS:=+libuuid +libpthread +librt
|
||||||
|
URL:=http://oss.sgi.com/projects/xfs
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-admin
|
||||||
|
$(call Package/xfsprogs/default)
|
||||||
|
TITLE:=Utilities for changing parameters of an XFS filesystems
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-mkfs
|
||||||
|
$(call Package/xfsprogs/default)
|
||||||
|
TITLE:=Utility for creating XFS filesystems
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-fsck
|
||||||
|
$(call Package/xfsprogs/default)
|
||||||
|
TITLE:=Utilities for checking and repairing XFS filesystems
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-growfs
|
||||||
|
$(call Package/xfsprogs/default)
|
||||||
|
TITLE:=Utility for increasing the size of XFS filesystems
|
||||||
|
endef
|
||||||
|
|
||||||
|
CONFIGURE_ARGS += \
|
||||||
|
--enable-gettext=no \
|
||||||
|
--enable-lib64=no \
|
||||||
|
--enable-blkid=no
|
||||||
|
|
||||||
|
TARGET_CFLAGS += \
|
||||||
|
-I$(STAGING_DIR)/usr/include \
|
||||||
|
-D_LARGEFILE64_SOURCE \
|
||||||
|
-D_FILE_OFFSET_BITS=64 \
|
||||||
|
-D_GNU_SOURCE
|
||||||
|
|
||||||
|
MAKE_FLAGS += \
|
||||||
|
DEBUG= Q= \
|
||||||
|
PCFLAGS="-Wall" \
|
||||||
|
PKG_PLATFORM=linux \
|
||||||
|
ENABLE_GETTEXT=no
|
||||||
|
|
||||||
|
define Build/Compile
|
||||||
|
$(MAKE) -C $(PKG_BUILD_DIR)/libxfs crc32table.h CFLAGS="$(HOST_CFLAGS) -I$(PKG_BUILD_DIR)/include"
|
||||||
|
$(call Build/Compile/Default)
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-admin/install
|
||||||
|
mkdir -p $(1)/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/xfs_db $(1)/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/xfs_admin $(1)/sbin
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-mkfs/install
|
||||||
|
mkdir -p $(1)/usr/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/mkfs.xfs $(1)/usr/sbin
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-fsck/install
|
||||||
|
mkdir -p $(1)/usr/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/xfs_repair $(1)/usr/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/xfs_db $(1)/usr/sbin
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/xfs-growfs/install
|
||||||
|
mkdir -p $(1)/usr/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/xfs_growfs $(1)/usr/sbin
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,xfs-admin))
|
||||||
|
$(eval $(call BuildPackage,xfs-mkfs))
|
||||||
|
$(eval $(call BuildPackage,xfs-fsck))
|
||||||
|
$(eval $(call BuildPackage,xfs-growfs))
|
14
utils/xfsprogs/patches/100-no-selftest.patch
Normal file
14
utils/xfsprogs/patches/100-no-selftest.patch
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
--- a/libxfs/Makefile
|
||||||
|
+++ b/libxfs/Makefile
|
||||||
|
@@ -118,9 +118,9 @@ LTLIBS = $(LIBPTHREAD) $(LIBRT)
|
||||||
|
# don't try linking xfs_repair with a debug libxfs.
|
||||||
|
DEBUG = -DNDEBUG
|
||||||
|
|
||||||
|
-LDIRT = gen_crc32table crc32table.h crc32selftest
|
||||||
|
+LDIRT = gen_crc32table crc32table.h
|
||||||
|
|
||||||
|
-default: crc32selftest ltdepend $(LTLIBRARY)
|
||||||
|
+default: ltdepend $(LTLIBRARY)
|
||||||
|
|
||||||
|
crc32table.h: gen_crc32table.c
|
||||||
|
@echo " [CC] gen_crc32table"
|
12
utils/xfsprogs/patches/110-subdirs.patch
Normal file
12
utils/xfsprogs/patches/110-subdirs.patch
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -46,8 +46,7 @@ HDR_SUBDIRS = include libxfs
|
||||||
|
|
||||||
|
DLIB_SUBDIRS = libxlog libxcmd libhandle
|
||||||
|
LIB_SUBDIRS = libxfs $(DLIB_SUBDIRS)
|
||||||
|
-TOOL_SUBDIRS = copy db estimate fsck growfs io logprint mkfs quota \
|
||||||
|
- mdrestore repair rtcp m4 man doc debian
|
||||||
|
+TOOL_SUBDIRS = db fsck growfs io mkfs repair
|
||||||
|
|
||||||
|
ifneq ("$(PKG_PLATFORM)","darwin")
|
||||||
|
TOOL_SUBDIRS += fsr
|
12
utils/xfsprogs/patches/120-disable_assert.patch
Normal file
12
utils/xfsprogs/patches/120-disable_assert.patch
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
--- a/libxfs/libxfs_priv.h
|
||||||
|
+++ b/libxfs/libxfs_priv.h
|
||||||
|
@@ -84,9 +84,6 @@ extern uint32_t crc32c_le(uint32_t crc,
|
||||||
|
/* for all the support code that uses progname in error messages */
|
||||||
|
extern char *progname;
|
||||||
|
|
||||||
|
-#undef ASSERT
|
||||||
|
-#define ASSERT(ex) assert(ex)
|
||||||
|
-
|
||||||
|
#ifndef EWRONGFS
|
||||||
|
#define EWRONGFS EINVAL
|
||||||
|
#endif
|
|
@ -0,0 +1,26 @@
|
||||||
|
From 930f9aa8f08759fa739dd6e615ba8b3a1890008d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rosen Penev <rosenp@gmail.com>
|
||||||
|
Date: Mon, 6 May 2019 13:56:13 -0700
|
||||||
|
Subject: [PATCH] db/malloc: Use posix_memalign instead of deprecated valloc
|
||||||
|
|
||||||
|
valloc is not available with uClibc-ng as well as being deprecated, which
|
||||||
|
causes compilation errors. aligned_alloc is not available before C11 so
|
||||||
|
used posix_memalign.'
|
||||||
|
|
||||||
|
Signed-off-by: Rosen Penev <rosenp@gmail.com>
|
||||||
|
---
|
||||||
|
db/malloc.c | 3 +--
|
||||||
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||||
|
|
||||||
|
--- a/db/malloc.c
|
||||||
|
+++ b/db/malloc.c
|
||||||
|
@@ -56,8 +56,7 @@ xmalloc(
|
||||||
|
{
|
||||||
|
void *ptr;
|
||||||
|
|
||||||
|
- ptr = valloc(size);
|
||||||
|
- if (ptr)
|
||||||
|
+ if(!posix_memalign(&ptr, sysconf(_SC_PAGESIZE), size))
|
||||||
|
return ptr;
|
||||||
|
badmalloc();
|
||||||
|
/* NOTREACHED */
|
48
utils/xfsprogs/patches/140-copy-file-range.patch
Normal file
48
utils/xfsprogs/patches/140-copy-file-range.patch
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
From 8041435de7ed028a27ecca64302945ad455c69a6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Darrick J. Wong" <darrick.wong@oracle.com>
|
||||||
|
Date: Mon, 5 Feb 2018 14:38:02 -0600
|
||||||
|
Subject: [PATCH] xfs_io: fix copy_file_range symbol name collision
|
||||||
|
|
||||||
|
glibc 2.27 has a copy_file_range wrapper, so we need to change our
|
||||||
|
internal function out of the way to avoid compiler warnings.
|
||||||
|
|
||||||
|
Reported-by: fredrik@crux.nu
|
||||||
|
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
|
||||||
|
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
|
||||||
|
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
|
||||||
|
---
|
||||||
|
io/copy_file_range.c | 11 ++++++++---
|
||||||
|
1 file changed, 8 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
--- a/io/copy_file_range.c
|
||||||
|
+++ b/io/copy_file_range.c
|
||||||
|
@@ -42,13 +42,18 @@ copy_range_help(void)
|
||||||
|
"));
|
||||||
|
}
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * Issue a raw copy_file_range syscall; for our test program we don't want the
|
||||||
|
+ * glibc buffered copy fallback.
|
||||||
|
+ */
|
||||||
|
static loff_t
|
||||||
|
-copy_file_range(int fd, loff_t *src, loff_t *dst, size_t len)
|
||||||
|
+copy_file_range_cmd(int fd, loff_t *src, loff_t *dst, size_t len)
|
||||||
|
{
|
||||||
|
loff_t ret;
|
||||||
|
|
||||||
|
do {
|
||||||
|
- ret = syscall(__NR_copy_file_range, fd, src, file->fd, dst, len, 0);
|
||||||
|
+ ret = syscall(__NR_copy_file_range, fd, src, file->fd, dst,
|
||||||
|
+ len, 0);
|
||||||
|
if (ret == -1) {
|
||||||
|
perror("copy_range");
|
||||||
|
return errno;
|
||||||
|
@@ -130,7 +135,7 @@ copy_range_f(int argc, char **argv)
|
||||||
|
copy_dst_truncate();
|
||||||
|
}
|
||||||
|
|
||||||
|
- ret = copy_file_range(fd, &src, &dst, len);
|
||||||
|
+ ret = copy_file_range_cmd(fd, &src, &dst, len);
|
||||||
|
close(fd);
|
||||||
|
return ret;
|
||||||
|
}
|
Loading…
Reference in a new issue