Skip to contentSkip to conversation

package/util-linux: disable libsmartcols in no-MMU platforms

PATCH New Romain Naour 2 participants 4 messages Feb 21, 2016 – Feb 25, 2016

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/2 package/util-linux: disable libsmartcols in no-MMU platforms

As reported by Thomas Petazzoni [1], the libsmartcols library can't be used on no-MMU platform since fork() is used.

[1] http://lists.busybox.net/pipermail/buildroot/2016-February/153414.html

Cc Thomas Petazzoni <[email protected]>
---
 package/util-linux/Config.in | 1 +
 1 file changed, 1 insertion(+)
package/util-linux/Config.in +1 -0
index 3f9a7db..60abd67 100644
@@ -27,6 +27,7 @@ config BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
 
 config BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
 	bool "libsmartcols"
+	depends on BR2_USE_MMU # fork
 	help
 	  Install libsmartcols.
 
Signature · 1 line
2.5.0
#1 lore raw

PATCH v2 2/2 package/util-linux: remove patch for uClibc support

This patch is not needed anymore since the uClibc support has been removed from Buildroot. This patch was needed for uClibc <= 0.9.33 support.

The only remaining supported external toolchain using uClibc 0.9.33 is the 2014R1 bfin toolchain. But all features that needs mkostemp() require fork() [1]. So, we can safely remove the patch.

[1] http://lists.busybox.net/pipermail/buildroot/2016-February/153414.html

Cc Thomas Petazzoni <[email protected]>

---
v2: Improve the commit log
Build tested with 2014R1 bfin toolchain (FLAT mode). The arc-1015.12 toolchain shouldn't trigger the build issue since it's based on uClibc-snapshot (upstream HEAD)

---
 ...fine-mkostemp-for-older-version-of-uClibc.patch | 50 ----------------------
 1 file changed, 50 deletions(-)
 delete mode 100644 package/util-linux/0003-c.h-define-mkostemp-for-older-version-of-uClibc.patch
package/util-linux/0003-c.h-define-mkostemp-for-older-version-of-uClibc.patch deleted +0 -50
deleted file mode 100644
index 0dfe7be..0000000
@@ -1,50 +0,0 @@
-From 42a84250fc78bae3e885ecd1379e713663fe6487 Mon Sep 17 00:00:00 2001
-From: Romain Naour <[email protected]>
-Date: Sun, 6 Apr 2014 12:12:41 +0200
-Subject: [PATCH 1/1] c.h: define mkostemp for older version of uClibc
-
-Signed-off-by: Romain Naour <[email protected]>
----
- configure.ac |  2 ++
- include/c.h  | 14 ++++++++++++++
- 2 files changed, 16 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index 35a1f26..a9b8d34 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -321,6 +321,8 @@ AC_CHECK_FUNCS([ \
- ])
- AC_FUNC_FSEEKO
- 
-+AC_CHECK_FUNCS([mkostemp])
-+
- AC_CHECK_FUNCS([openat fstatat unlinkat], [have_openat=yes], [have_openat=no])
- AC_CHECK_FUNCS([ioperm iopl], [have_io=yes])
- 
-diff --git a/include/c.h b/include/c.h
-index 4a9bf3d..1b880ed 100644
---- a/include/c.h
-+++ b/include/c.h
-@@ -300,4 +300,18 @@ static inline int usleep(useconds_t usec)
- # define SEEK_HOLE	4
- #endif
- 
-+/*
-+ * mkostemp() may be missing with older version of uClibc
-+ */
-+#ifndef HAVE_MKOSTEMP
-+static inline int mkostemp(char *template, int flags)
-+{
-+	int fd;
-+	fd = mkstemp(template);
-+	if (flags & O_CLOEXEC && fd >= 0)
-+		fcntl(fd, F_SETFD, FD_CLOEXEC);
-+	return fd;
-+}
-+#endif
-+
- #endif /* UTIL_LINUX_C_H */
--- 
-1.9.0
-
Signature · 1 line
2.5.0
#2 lore raw

PATCH v2 2/2 package/util-linux: remove patch for uClibc support

Dear Romain Naour,

Quoted 16 lines · Romain Naour

This patch is not needed anymore since the uClibc support has been removed from Buildroot. This patch was needed for uClibc <= 0.9.33 support.

The only remaining supported external toolchain using uClibc 0.9.33 is the 2014R1 bfin toolchain. But all features that needs mkostemp() require fork() [1]. So, we can safely remove the patch.

[1] http://lists.busybox.net/pipermail/buildroot/2016-February/153414.html

Cc Thomas Petazzoni <[email protected]>

---
v2: Improve the commit log
Build tested with 2014R1 bfin toolchain (FLAT mode). The arc-1015.12 toolchain shouldn't trigger the build issue since it's based on uClibc-snapshot (upstream HEAD)

Quoted 4 lines
---
 ...fine-mkostemp-for-older-version-of-uClibc.patch | 50 ----------------------
 1 file changed, 50 deletions(-)
 delete mode 100644 package/util-linux/0003-c.h-define-mkostemp-for-older-version-of-uClibc.patch

Applied to next, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#3 lore raw

PATCH v2 1/2 package/util-linux: disable libsmartcols in no-MMU platforms

In reply to Romain Naour

Dear Romain Naour,

Quoted 10 lines · Romain Naour

As reported by Thomas Petazzoni [1], the libsmartcols library can't be used on no-MMU platform since fork() is used.

[1] http://lists.busybox.net/pipermail/buildroot/2016-February/153414.html

Cc Thomas Petazzoni <[email protected]>
---
 package/util-linux/Config.in | 1 +
 1 file changed, 1 insertion(+)

Applied to master, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com