See https://bugs.gentoo.org/show_bug.cgi?id=406303
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/util-linux/files/util-linux-2.21.1-no-printf-alloc.patch?revision=1.2
-ported to util-linux-2.24
---- a/configure.ac 2013-07-30 03:39:26.188738061 -0500
-+++ b/configure.ac 2013-09-05 15:31:11.460864363 -0500
-@@ -769,7 +769,6 @@ AC_ARG_ENABLE([libmount],
+[Gustavo: Ported to util-linux-2.25.1]
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura util-linux-2.25.1.orig/configure.ac util-linux-2.25.1/configure.ac
+--- util-linux-2.25.1.orig/configure.ac 2014-09-05 10:44:45.302080174 -0300
++++ util-linux-2.25.1/configure.ac 2014-09-05 10:45:07.183832640 -0300
+@@ -791,7 +791,6 @@
UL_BUILD_INIT([libmount])
UL_REQUIRES_LINUX([libmount])
UL_REQUIRES_BUILD([libmount], [libblkid])
AM_CONDITIONAL([BUILD_LIBMOUNT], [test "x$build_libmount" = xyes])
AM_CONDITIONAL([BUILD_LIBMOUNT_TESTS], [test "x$build_libmount" = xyes -a "x$enable_static" = xyes])
---- a/libmount/src/tab_parse.c 2013-07-30 03:39:26.218738358 -0500
-+++ b/libmount/src/tab_parse.c 2013-09-05 15:31:11.460864363 -0500
+diff -Nura util-linux-2.25.1.orig/lib/colors.c util-linux-2.25.1/lib/colors.c
+--- util-linux-2.25.1.orig/lib/colors.c 2014-09-05 10:44:45.301080140 -0300
++++ util-linux-2.25.1/lib/colors.c 2014-09-05 13:12:00.175205476 -0300
+@@ -16,6 +16,10 @@
+ #include "pathnames.h"
+ #include "strutils.h"
+
++#ifndef HAVE_SCANF_MS_MODIFIER
++# define UL_SCNsA "%s"
++#endif
++
+ /*
+ * terminal-colors.d file types
+ */
+@@ -577,9 +581,19 @@
+ if (*p == '\0' || *p == '#')
+ continue;
+
++#ifndef HAVE_SCANF_MS_MODIFIER
++ size_t len = strlen(p) + 1;
++ cn = malloc(len);
++ seq = malloc(len);
++#endif
++
+ rc = sscanf(p, UL_SCNsA" " /* name */
+ UL_SCNsA, /* color */
++#ifdef HAVE_SCANF_MS_MODIFIER
+ &cn, &seq);
++#else
++ cn, seq);
++#endif
+ if (rc == 2 && cn && seq)
+ rc = colors_add_scheme(cc, cn, seq); /* set rc=0 on success */
+ if (rc) {
+diff -Nura util-linux-2.25.1.orig/libmount/src/tab_parse.c util-linux-2.25.1/libmount/src/tab_parse.c
+--- util-linux-2.25.1.orig/libmount/src/tab_parse.c 2014-09-05 10:44:45.276079280 -0300
++++ util-linux-2.25.1/libmount/src/tab_parse.c 2014-09-05 10:51:22.500738967 -0300
@@ -22,6 +22,10 @@
#include "pathnames.h"
#include "strutils.h"
+# define UL_SCNsA "%s"
+#endif
+
- static inline char *skip_spaces(char *s)
+ static int next_number(char **s, int *num)
{
- assert(s);
-@@ -61,16 +65,31 @@
+ char *end = NULL;
+@@ -52,16 +56,31 @@
int rc, n = 0, xrc;
char *src = NULL, *fstype = NULL, *optstr = NULL;
&n);
xrc = rc;
-@@ -136,6 +155,16 @@
+@@ -127,6 +146,16 @@
unsigned int maj, min;
char *fstype = NULL, *src = NULL, *p;
+ src = malloc(len);
+#endif
+
- rc = sscanf(s, "%u " /* (1) id */
- "%u " /* (2) parent */
+ rc = sscanf(s, "%d " /* (1) id */
+ "%d " /* (2) parent */
"%u:%u " /* (3) maj:min */
-@@ -147,9 +176,15 @@
+@@ -138,9 +167,15 @@
&fs->id,
&fs->parent,
&maj, &min,
&end);
if (rc >= 7 && end > 0)
-@@ -169,9 +204,15 @@
+@@ -160,9 +195,15 @@
UL_SCNsA" " /* (9) source */
UL_SCNsA, /* (10) fs options (fs specific) */
+#endif
if (rc >= 10) {
- fs->flags |= MNT_FS_KERNEL;
-@@ -279,14 +320,25 @@
+ size_t sz;
+@@ -281,14 +322,25 @@
int rc;
char *src = NULL;
+
rc = sscanf(s, UL_SCNsA" " /* (1) source */
UL_SCNsA" " /* (2) type */
- "%jd" /* (3) size */
- "%jd" /* (4) used */
+ "%ju" /* (3) size */
+ "%ju" /* (4) used */
"%d", /* priority */
+#ifdef HAVE_SCANF_MS_MODIFIER
+++ /dev/null
-Only move shared libraries to /lib if they exists
-
-In several Makemodule.am, there is a install-exec-hook-<library>
-target whose role is to move the shared library from /usr/lib to /lib,
-while keeping a symbolic link /usr/lib/libuuid.so ->
-../../lib/<library>.so.<version>.
-
-However, when util-linux is built with --enable-static
---disable-shared (as is needed on noMMU platforms that don't support
-shared libraries), no <library>.so is built, but the
-install-exec-hook-libuuid creates an invalid /usr/lib/<library>.so
-symbolic link, pointing to ../../lib (yes, the directory). This causes
-troubles later one when other libraries/programs are compiled with
--l<library>, as gcc thinks a shared library is available because
-there's a file named /usr/lib/<library>.so.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/libuuid/src/Makemodule.am
-===================================================================
---- a/libuuid/src/Makemodule.am
-+++ b/libuuid/src/Makemodule.am
-@@ -44,7 +44,7 @@
-
- # move lib from $(usrlib_execdir) to $(libdir) if needed
- install-exec-hook-libuuid:
-- if test "$(usrlib_execdir)" != "$(libdir)"; then \
-+ if test "$(usrlib_execdir)" != "$(libdir)" -a -f "$(DESTDIR)$(usrlib_execdir)/libuuid.so"; then \
- mkdir -p $(DESTDIR)$(libdir); \
- mv $(DESTDIR)$(usrlib_execdir)/libuuid.so.* $(DESTDIR)$(libdir); \
- so_img_name=$$(readlink $(DESTDIR)$(usrlib_execdir)/libuuid.so); \
-Index: b/libmount/src/Makemodule.am
-===================================================================
---- a/libmount/src/Makemodule.am
-+++ b/libmount/src/Makemodule.am
-@@ -123,7 +123,7 @@
-
- # move lib from $(usrlib_execdir) to $(libdir) if needed
- install-exec-hook-libmount:
-- if test "$(usrlib_execdir)" != "$(libdir)"; then \
-+ if test "$(usrlib_execdir)" != "$(libdir)" -a -f "$(DESTDIR)$(usrlib_execdir)/libmount.so"; then \
- mkdir -p $(DESTDIR)$(libdir); \
- mv $(DESTDIR)$(usrlib_execdir)/libmount.so.* $(DESTDIR)$(libdir); \
- so_img_name=$$(readlink $(DESTDIR)$(usrlib_execdir)/libmount.so); \
-Index: b/libblkid/src/Makemodule.am
-===================================================================
---- a/libblkid/src/Makemodule.am
-+++ b/libblkid/src/Makemodule.am
-@@ -220,7 +220,7 @@
-
- # move lib from $(usrlib_execdir) to $(libdir) if needed
- install-exec-hook-libblkid:
-- if test "$(usrlib_execdir)" != "$(libdir)"; then \
-+ if test "$(usrlib_execdir)" != "$(libdir)" -a -f "$(DESTDIR)$(usrlib_execdir)/libblkid.so"; then \
- mkdir -p $(DESTDIR)$(libdir); \
- mv $(DESTDIR)$(usrlib_execdir)/libblkid.so.* $(DESTDIR)$(libdir); \
- so_img_name=$$(readlink $(DESTDIR)$(usrlib_execdir)/libblkid.so); \
#
################################################################################
-UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).2
-UTIL_LINUX_VERSION_MAJOR = 2.24
+UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).1
+UTIL_LINUX_VERSION_MAJOR = 2.25
UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz
UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR)
UTIL_LINUX_CONF_OPT += \
--disable-rpath \
--disable-makeinstall-chown \
- --disable-bash-completion
+ --disable-bash-completion \
+ --without-python
# We don't want the host-busybox dependency to be added automatically
HOST_UTIL_LINUX_DEPENDENCIES = host-pkgconf