]> code.ossystems Code Review - openembedded-core.git/commitdiff
util-linux_2.19.1.bb: Fix compliation on uclibc
authorKhem Raj <raj.khem@gmail.com>
Thu, 2 Jun 2011 19:45:26 +0000 (12:45 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 6 Jun 2011 14:52:16 +0000 (15:52 +0100)
util-linux 2.19 needs this patch to successfully
compile on uclibc systems. This is a bug in util-linux
that goes unnoticed on eglibc builds.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
meta/recipes-core/util-linux/util-linux-2.19.1/uclibc-__progname-conflict.patch [new file with mode: 0644]
meta/recipes-core/util-linux/util-linux_2.19.1.bb

diff --git a/meta/recipes-core/util-linux/util-linux-2.19.1/uclibc-__progname-conflict.patch b/meta/recipes-core/util-linux/util-linux-2.19.1/uclibc-__progname-conflict.patch
new file mode 100644 (file)
index 0000000..45826b1
--- /dev/null
@@ -0,0 +1,31 @@
+configure should include errno.h instead of argp.h when
+checking for presence of program_invocation_short_name
+uclibc defines this to be const char* unlike util-linux-ng
+which defines this to be char* so this error goes unnoticed
+on glibc/eglibc systems.
+
+here is the error it fixes
+
+in file included from mountP.h:14:0,                                                                               
+                 from cache.c:29:                                                                                  
+/home/kraj/work/slugos/build/tmp-slugos-uclibc/sysroots/nslu2le/usr/include/errno.h:55:46: error: conflicting types for '__progname'                                                                                                  
+../../../include/c.h:118:14: note: previous declaration of '__progname' was here                                   
+make[3]: *** [cache.lo] Error 1          
+
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+Index: util-linux-2.19.1/configure.ac
+===================================================================
+--- util-linux-2.19.1.orig/configure.ac
++++ util-linux-2.19.1/configure.ac
+@@ -250,7 +250,7 @@ esac
+ AC_MSG_CHECKING(whether program_invocation_short_name is defined)
+-AC_TRY_COMPILE([#include <argp.h>],
++AC_TRY_COMPILE([#include <errno.h>],
+                [program_invocation_short_name = "test";],
+                AC_DEFINE(HAVE_PROGRAM_INVOCATION_SHORT_NAME, 1,
+                          [Define if program_invocation_short_name is defined])
index 7fe7497eb8f59ebca09134d7c3aa5c8a582f03a6..8067ab5ac512f191a3892858ec4c830d85937706 100644 (file)
@@ -6,7 +6,9 @@ require util-linux.inc
 LICENSE_util-linux-lscpu = "GPLv3+"
 
 SRC_URI += "file://util-linux-ng-replace-siginterrupt.patch \
-                  file://util-linux-ng-2.16-mount_lock_path.patch"
+            file://util-linux-ng-2.16-mount_lock_path.patch \
+            file://uclibc-__progname-conflict.patch \      
+"
 
 SRC_URI[md5sum] = "3eab06f05163dfa65479c44e5231932c"
 SRC_URI[sha256sum] = "d3eac4afcc687b3ae1ffedcab2dc12df84c7ba7045cce31386d2b7040a011c7d"