e2fsprogs_1.42.bb: Fix build fallout for uclibc

Submitted by Khem Raj on Jan. 18, 2012, 3:01 a.m.

Details

Message ID 1326855665-11617-1-git-send-email-raj.khem@gmail.com
State Accepted
Commit 1625faad281eeef3931573908c557362236dcd47
Headers show

Commit Message

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

Patch hide | download patch | download mbox

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"

Comments

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!