Patchwork e2fsprogs_1.42.bb: Fix build fallout for uclibc

login
register
mail settings
Submitter Khem Raj
Date Jan. 18, 2012, 3:01 a.m.
Message ID <1326855665-11617-1-git-send-email-raj.khem@gmail.com>
Download mbox | patch
Permalink /patch/19635/
State Accepted
Commit 1625faad281eeef3931573908c557362236dcd47
Headers show

Comments

Khem Raj - Jan. 18, 2012, 3:01 a.m.
e2fsprogs 1.42 onwards uses fallocate() which uclibc
does not implement(yet). In most of places its use
is controlled and it only used when configure detects
fallocate being present but in this one case it missed
to check for fallocate being available so here we
add the check

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../e2fsprogs/e2fsprogs-1.42/fallocate.patch       |   22 ++++++++++++++++++++
 meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb  |    3 +-
 2 files changed, 24 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
Koen Kooi - Jan. 18, 2012, 9:51 a.m.
Op 18 jan. 2012, om 04:01 heeft Khem Raj het volgende geschreven:

> e2fsprogs 1.42 onwards uses fallocate() which uclibc
> does not implement(yet). In most of places its use
> is controlled and it only used when configure detects
> fallocate being present but in this one case it missed
> to check for fallocate being available so here we
> add the check

FWIW, e2fsprogs(-native) also has problems with ASNEEDED:

| tune2fs: symbol lookup error: tune2fs: undefined symbol: ext2fs_group_desc

regards,

Koen

> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
> .../e2fsprogs/e2fsprogs-1.42/fallocate.patch       |   22 ++++++++++++++++++++
> meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb  |    3 +-
> 2 files changed, 24 insertions(+), 1 deletions(-)
> create mode 100644 meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
> 
> diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
> new file mode 100644
> index 0000000..4d952a5
> --- /dev/null
> +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
> @@ -0,0 +1,22 @@
> +We assume that fallocate is supported somehow
> +but we need to check if we have fallocate()
> +this problem shows up on uclibc systems since
> +uclibc does not have fallocate() implemented
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +
> +Upstream-Status: Pending
> +
> +Index: e2fsprogs-1.42/lib/ext2fs/unix_io.c
> +===================================================================
> +--- e2fsprogs-1.42.orig/lib/ext2fs/unix_io.c	2012-01-17 17:24:34.290780625 -0800
> ++++ e2fsprogs-1.42/lib/ext2fs/unix_io.c	2012-01-17 17:25:37.338783680 -0800
> +@@ -895,7 +895,7 @@
> + 		goto unimplemented;
> + #endif
> + 	} else {
> +-#ifdef FALLOC_FL_PUNCH_HOLE
> ++#if defined FALLOC_FL_PUNCH_HOLE && defined HAVE_FALLOCATE
> + 		/*
> + 		 * If we are not on block device, try to use punch hole
> + 		 * to reclaim free space.
> diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
> index 9ff85a2..f6759aa7 100644
> --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
> +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
> @@ -1,8 +1,9 @@
> require e2fsprogs.inc
> 
> -PR = "r0"
> +PR = "r1"
> 
> SRC_URI += "file://quotefix.patch \
> +            file://fallocate.patch \
>             file://acinclude.m4"
> 
> SRC_URI[md5sum] = "a3c4ffd7352310ab5e9412965d575610"
> -- 
> 1.7.5.4
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Koen Kooi - Jan. 18, 2012, 1:34 p.m.
Op 18 jan. 2012, om 10:51 heeft Koen Kooi het volgende geschreven:

> 
> Op 18 jan. 2012, om 04:01 heeft Khem Raj het volgende geschreven:
> 
>> e2fsprogs 1.42 onwards uses fallocate() which uclibc
>> does not implement(yet). In most of places its use
>> is controlled and it only used when configure detects
>> fallocate being present but in this one case it missed
>> to check for fallocate being available so here we
>> add the check
> 
> FWIW, e2fsprogs(-native) also has problems with ASNEEDED:
> 
> | tune2fs: symbol lookup error: tune2fs: undefined symbol: ext2fs_group_desc

And that one suddenly went away!
Scott Garman - Jan. 19, 2012, 4:42 p.m.
On 01/18/2012 05:34 AM, Koen Kooi wrote:
>
> Op 18 jan. 2012, om 10:51 heeft Koen Kooi het volgende geschreven:
>
>>
>> Op 18 jan. 2012, om 04:01 heeft Khem Raj het volgende geschreven:
>>
>>> e2fsprogs 1.42 onwards uses fallocate() which uclibc
>>> does not implement(yet). In most of places its use
>>> is controlled and it only used when configure detects
>>> fallocate being present but in this one case it missed
>>> to check for fallocate being available so here we
>>> add the check
>>
>> FWIW, e2fsprogs(-native) also has problems with ASNEEDED:
>>
>> | tune2fs: symbol lookup error: tune2fs: undefined symbol: ext2fs_group_desc
>
> And that one suddenly went away!

That was fixed when the bitbake.conf change made it into master which 
now adds base_libdir_native to the RPATH for native compiled binaries.

http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=35759f977eec6ef81e125a509a7148d7e53a6515

Scott
Saul Wold - Jan. 19, 2012, 7:56 p.m.
On 01/17/2012 07:01 PM, Khem Raj wrote:
> e2fsprogs 1.42 onwards uses fallocate() which uclibc
> does not implement(yet). In most of places its use
> is controlled and it only used when configure detects
> fallocate being present but in this one case it missed
> to check for fallocate being available so here we
> add the check
>
> Signed-off-by: Khem Raj<raj.khem@gmail.com>
> ---
>   .../e2fsprogs/e2fsprogs-1.42/fallocate.patch       |   22 ++++++++++++++++++++
>   meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb  |    3 +-
>   2 files changed, 24 insertions(+), 1 deletions(-)
>   create mode 100644 meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
>
> diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
> new file mode 100644
> index 0000000..4d952a5
> --- /dev/null
> +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
> @@ -0,0 +1,22 @@
> +We assume that fallocate is supported somehow
> +but we need to check if we have fallocate()
> +this problem shows up on uclibc systems since
> +uclibc does not have fallocate() implemented
> +
> +Signed-off-by: Khem Raj<raj.khem@gmail.com>
> +
> +Upstream-Status: Pending
> +
> +Index: e2fsprogs-1.42/lib/ext2fs/unix_io.c
> +===================================================================
> +--- e2fsprogs-1.42.orig/lib/ext2fs/unix_io.c	2012-01-17 17:24:34.290780625 -0800
> ++++ e2fsprogs-1.42/lib/ext2fs/unix_io.c	2012-01-17 17:25:37.338783680 -0800
> +@@ -895,7 +895,7 @@
> + 		goto unimplemented;
> + #endif
> + 	} else {
> +-#ifdef FALLOC_FL_PUNCH_HOLE
> ++#if defined FALLOC_FL_PUNCH_HOLE&&  defined HAVE_FALLOCATE
> + 		/*
> + 		 * If we are not on block device, try to use punch hole
> + 		 * to reclaim free space.
> diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
> index 9ff85a2..f6759aa7 100644
> --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
> +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
> @@ -1,8 +1,9 @@
>   require e2fsprogs.inc
>
> -PR = "r0"
> +PR = "r1"
>
>   SRC_URI += "file://quotefix.patch \
> +            file://fallocate.patch \
>               file://acinclude.m4"
>
>   SRC_URI[md5sum] = "a3c4ffd7352310ab5e9412965d575610"

Merged into OE-Core

Thanks
	Sau!

Patch

diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
new file mode 100644
index 0000000..4d952a5
--- /dev/null
+++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs-1.42/fallocate.patch
@@ -0,0 +1,22 @@ 
+We assume that fallocate is supported somehow
+but we need to check if we have fallocate()
+this problem shows up on uclibc systems since
+uclibc does not have fallocate() implemented
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+
+Index: e2fsprogs-1.42/lib/ext2fs/unix_io.c
+===================================================================
+--- e2fsprogs-1.42.orig/lib/ext2fs/unix_io.c	2012-01-17 17:24:34.290780625 -0800
++++ e2fsprogs-1.42/lib/ext2fs/unix_io.c	2012-01-17 17:25:37.338783680 -0800
+@@ -895,7 +895,7 @@
+ 		goto unimplemented;
+ #endif
+ 	} else {
+-#ifdef FALLOC_FL_PUNCH_HOLE
++#if defined FALLOC_FL_PUNCH_HOLE && defined HAVE_FALLOCATE
+ 		/*
+ 		 * If we are not on block device, try to use punch hole
+ 		 * to reclaim free space.
diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
index 9ff85a2..f6759aa7 100644
--- a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
+++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.42.bb
@@ -1,8 +1,9 @@ 
 require e2fsprogs.inc
 
-PR = "r0"
+PR = "r1"
 
 SRC_URI += "file://quotefix.patch \
+            file://fallocate.patch \
             file://acinclude.m4"
 
 SRC_URI[md5sum] = "a3c4ffd7352310ab5e9412965d575610"