update buildroot to 2017.02.11
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
From 770902a0a29fb4ac62358f7eacb3a83d0d9af1c7 Mon Sep 17 00:00:00 2001
|
||||
From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
|
||||
Date: Wed, 25 Nov 2015 10:50:00 +0000
|
||||
Subject: [PATCH] mdrestore: do not do dynamic linking of libtool libraries
|
||||
|
||||
As explained in commit ece49daeff1a3cad765e106d678c608925c9d768, use
|
||||
-static-libtool-libs instead of -static to allow fallback to the dynamic
|
||||
linking for libuuid only. Otherwise the build will fail like this:
|
||||
|
||||
ld: attempted static link of dynamic object `/usr/lib/libuuid.so'
|
||||
|
||||
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
|
||||
[Sent upstream: http://oss.sgi.com/pipermail/xfs/2015-November/045136.html]
|
||||
---
|
||||
mdrestore/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/mdrestore/Makefile b/mdrestore/Makefile
|
||||
index 5171306..1b34a0e 100644
|
||||
--- a/mdrestore/Makefile
|
||||
+++ b/mdrestore/Makefile
|
||||
@@ -10,7 +10,7 @@ CFILES = xfs_mdrestore.c
|
||||
|
||||
LLDLIBS = $(LIBXFS) $(LIBRT) $(LIBPTHREAD) $(LIBUUID)
|
||||
LTDEPENDENCIES = $(LIBXFS)
|
||||
-LLDFLAGS = -static
|
||||
+LLDFLAGS = -static-libtool-libs
|
||||
|
||||
default: depend $(LTCOMMAND)
|
||||
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
From 3a77dfc54271059dcac305384bf6ace34fe1f3d3 Mon Sep 17 00:00:00 2001
|
||||
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
||||
Date: Sun, 18 Dec 2016 15:37:27 +0100
|
||||
Subject: [PATCH] libxfs: do not try to run the crc32selftest
|
||||
|
||||
Even though the crc32selftest is natively compiled (because it is to be
|
||||
executed), it fails in cross-compilation as the host may lack the
|
||||
required headers, like uuid/uuid.h (e.g. in a minimal environment).
|
||||
|
||||
Moreover, running the crc32selftest natively is completely wrong,
|
||||
because it passing on the host does not mean it would still pass n the
|
||||
target (because endianness or bitness or alignment differences).
|
||||
|
||||
So, just disable running the crc32selftest altogether.
|
||||
|
||||
Note that there's a remaining bug-in-hiding, because the crc32 table
|
||||
generator is natively built, but with the target CFLAGS.
|
||||
|
||||
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
||||
---
|
||||
libxfs/Makefile | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libxfs/Makefile b/libxfs/Makefile
|
||||
index 62608bd..e021625 100644
|
||||
--- a/libxfs/Makefile
|
||||
+++ b/libxfs/Makefile
|
||||
@@ -112,9 +112,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"
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
From b981adb6769f6b7d80f6c98627391398a007a25b Mon Sep 17 00:00:00 2001
|
||||
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
Date: Tue, 15 Dec 2015 20:51:35 -0300
|
||||
Subject: [PATCH] xfsprogs: don't use CFLAGS with BUILD_CC
|
||||
|
||||
When cross-compiling CFLAGS might not be suitable for the host
|
||||
(BUILD_CC) compiler since it might contain arch-specific options.
|
||||
|
||||
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
---
|
||||
libxfs/Makefile | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libxfs/Makefile b/libxfs/Makefile
|
||||
index e021625..ad76a04 100644
|
||||
--- a/libxfs/Makefile
|
||||
+++ b/libxfs/Makefile
|
||||
@@ -118,7 +118,7 @@ default: ltdepend $(LTLIBRARY)
|
||||
|
||||
crc32table.h: gen_crc32table.c
|
||||
@echo " [CC] gen_crc32table"
|
||||
- $(Q) $(BUILD_CC) $(CFLAGS) -o gen_crc32table $<
|
||||
+ $(Q) $(BUILD_CC) -o gen_crc32table $<
|
||||
@echo " [GENERATE] $@"
|
||||
$(Q) ./gen_crc32table > crc32table.h
|
||||
|
||||
@@ -129,7 +129,7 @@ crc32table.h: gen_crc32table.c
|
||||
# disk.
|
||||
crc32selftest: gen_crc32table.c crc32table.h crc32.c
|
||||
@echo " [TEST] CRC32"
|
||||
- $(Q) $(BUILD_CC) $(CFLAGS) -D CRC32_SELFTEST=1 crc32.c -o $@
|
||||
+ $(Q) $(BUILD_CC) -D CRC32_SELFTEST=1 crc32.c -o $@
|
||||
$(Q) ./$@
|
||||
|
||||
# set up include/xfs header directory
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
From 1e9bb2fba94bc508659f1667bf95501324849bb9 Mon Sep 17 00:00:00 2001
|
||||
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
||||
Date: Sun, 26 Feb 2017 12:04:54 +0100
|
||||
Subject: [PATCH] build: add EXTRALIBS to link with
|
||||
|
||||
When doing a uClibc static build, the build fails to link:
|
||||
http://autobuild.buildroot.org/results/503/50314716a9f72e8bb238e52e9dc342c68f7e0b8b/build-end.log
|
||||
|
||||
The cause is due to:
|
||||
- xfsprogs links dome programs with util-linux' libblkid
|
||||
- util-linux' libblkid is linked to util-linux' libuuid
|
||||
- util-linux' libuuid uses i18n functions when locales are enabled
|
||||
- uClibc does not provide i18n functions
|
||||
- i18n functions are provided by libintl from libintl from gettext
|
||||
|
||||
util-linux installs pkg-config files for thos two libs. However,
|
||||
xfsprogs does not use pkg-config to find libblkid or libuuid, thus it
|
||||
misses the Libs.private field from libuid.
|
||||
|
||||
In this case, it is necessary to pass LIBS=-lintl at configure time, so
|
||||
that configure correctly finds libblkid.
|
||||
|
||||
Still, this is not enough, because the build will not use LIBS during
|
||||
the link phase.
|
||||
|
||||
We fix that last bit by adding EXTRALIBS to the libraries to link with,
|
||||
so that it is possible to pass EXTRALIBS=-lintl at build time:
|
||||
|
||||
$ ./configure [...] LIBS=-lintl
|
||||
$ make EXTRALIBS=-lintl
|
||||
|
||||
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
||||
Cc: Waldemar Brodkorb <wbx@openadk.org>
|
||||
---
|
||||
include/buildmacros | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/buildmacros b/include/buildmacros
|
||||
index a7c5d8a..dd62d80 100644
|
||||
--- a/include/buildmacros
|
||||
+++ b/include/buildmacros
|
||||
@@ -11,7 +11,7 @@ BUILDRULES = $(TOPDIR)/include/buildrules
|
||||
|
||||
LDFLAGS += $(LOADERFLAGS) $(LLDFLAGS)
|
||||
LTLDFLAGS += $(LOADERFLAGS)
|
||||
-LDLIBS = $(LLDLIBS) $(PLDLIBS) $(MALLOCLIB)
|
||||
+LDLIBS = $(LLDLIBS) $(PLDLIBS) $(MALLOCLIB) $(EXTRALIBS)
|
||||
|
||||
MAKEOPTS = --no-print-directory Q=$(Q)
|
||||
SRCFILES = Makefile $(HFILES) $(CFILES) $(LSRCFILES) $(LFILES) $(YFILES)
|
||||
--
|
||||
2.7.4
|
||||
|
||||
16
bsp/buildroot-2017.02.11/package/xfsprogs/Config.in
Normal file
16
bsp/buildroot-2017.02.11/package/xfsprogs/Config.in
Normal file
@@ -0,0 +1,16 @@
|
||||
comment "xfsprogs needs a glibc or uClibc toolchain w/ threads"
|
||||
depends on BR2_USE_MMU
|
||||
depends on BR2_TOOLCHAIN_USES_MUSL || !BR2_TOOLCHAIN_HAS_THREADS
|
||||
|
||||
config BR2_PACKAGE_XFSPROGS
|
||||
bool "xfsprogs"
|
||||
depends on BR2_USE_MMU # fork()
|
||||
depends on !BR2_TOOLCHAIN_USES_MUSL
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
select BR2_PACKAGE_UTIL_LINUX
|
||||
select BR2_PACKAGE_UTIL_LINUX_LIBUUID
|
||||
select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
|
||||
help
|
||||
The XFS file system utilities and libraries
|
||||
|
||||
http://xfs.org
|
||||
3
bsp/buildroot-2017.02.11/package/xfsprogs/xfsprogs.hash
Normal file
3
bsp/buildroot-2017.02.11/package/xfsprogs/xfsprogs.hash
Normal file
@@ -0,0 +1,3 @@
|
||||
# Locally calculated after checking pgp signature:
|
||||
# https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-4.8.0.tar.sign
|
||||
sha256 82ce9cb3a55f4e208e8fe3471ff0aff0602b8300f3e50bdf05cc7e11549686f9 xfsprogs-4.8.0.tar.xz
|
||||
40
bsp/buildroot-2017.02.11/package/xfsprogs/xfsprogs.mk
Normal file
40
bsp/buildroot-2017.02.11/package/xfsprogs/xfsprogs.mk
Normal file
@@ -0,0 +1,40 @@
|
||||
################################################################################
|
||||
#
|
||||
# xfsprogs
|
||||
#
|
||||
################################################################################
|
||||
|
||||
XFSPROGS_VERSION = 4.8.0
|
||||
XFSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/fs/xfs/xfsprogs
|
||||
XFSPROGS_SOURCE = xfsprogs-$(XFSPROGS_VERSION).tar.xz
|
||||
|
||||
XFSPROGS_DEPENDENCIES = util-linux
|
||||
|
||||
XFSPROGS_CONF_ENV = ac_cv_header_aio_h=yes ac_cv_lib_rt_lio_listio=yes
|
||||
XFSPROGS_CONF_OPTS = \
|
||||
--enable-lib64=no \
|
||||
--enable-gettext=no \
|
||||
INSTALL_USER=root \
|
||||
INSTALL_GROUP=root \
|
||||
--enable-static
|
||||
|
||||
# xfsprogs links some of its programs to libs from util-linux, which use
|
||||
# i18n functions. For shared-only builds, that's automatically pulled in.
|
||||
# Static builds need some help, though...
|
||||
#
|
||||
# No need to depend on gettext in this case: xfsprogs does not use it for
|
||||
# itself; util-linux does need it and has it in its own dependencies.
|
||||
#
|
||||
# xfsprogs' buildsystem uses hand-made Makefiles, not automake, and they
|
||||
# do not use the LIBS variable set by configure. So we use EXTRALIBS that
|
||||
# is added by our patch.
|
||||
#
|
||||
# It is not needed to propagate the EXTRALIBS to the install step.
|
||||
ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS)$(BR2_NEEDS_GETTEXT_IF_LOCALE),yy)
|
||||
XFSPROGS_CONF_OPTS += LIBS=-lintl
|
||||
XFSPROGS_MAKE_OPTS = EXTRALIBS=-lintl
|
||||
endif
|
||||
|
||||
XFSPROGS_INSTALL_TARGET_OPTS = DIST_ROOT=$(TARGET_DIR) install
|
||||
|
||||
$(eval $(autotools-package))
|
||||
Reference in New Issue
Block a user