Patchwork [3/3] apr: fix cross compiling failed

login
register
mail settings
Submitter Hongxu Jia
Date June 4, 2014, 3:27 a.m.
Message ID <4eddf85a278e98ef2752445a9f4ce961b69a416d.1401852113.git.hongxu.jia@windriver.com>
Download mbox | patch
Permalink /patch/73187/
State New
Headers show

Comments

Hongxu Jia - June 4, 2014, 3:27 a.m.
The do_compile failed:
| tools/gen_test_char > include/private/apr_escape_test_char.h
| /bin/sh: tools/gen_test_char: No such file or directory
| make[1]: *** [include/private/apr_escape_test_char.h] Error 127

The tools/gen_test_char was invoked at build time, and it didn't
work for the cross compiling, so we built it with $BUILD_CC.

To make sure there was no side effect on the change, not adding this
patch, I did the test:

1. Built the native tools/gen_test_char on x86-64 host, and invoke
   it on that host;

2. Built the target tools/gen_test_char which arch was arm, and invoke
   it on the qemuarm;

3. Comparing the results, they were total the same;
...
/* this file is automatically generated by gen_test_char, do not edit. "make include/private/apr_escape_test_char.h" to regenerate. */

static const unsigned char test_char_table[256] = {
    32,30,30,30,30,30,30,30,30,30,31,30,30,30,30,30,30,30,30,30,
    30,30,30,30,30,30,30,30,30,30,30,30,6,16,63,22,17,22,49,17,
    17,17,1,16,16,0,0,18,0,0,0,0,0,0,0,0,0,0,16,23,
    55,16,55,23,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
    0,0,0,0,0,0,0,0,0,0,0,23,31,23,23,0,23,0,0,0,
    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
    0,0,0,23,23,23,17,30,30,30,30,30,30,30,30,30,30,30,30,30,
    30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
    30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
    30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
    30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
    30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
    30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
};
...

The do_install failed:
| DEBUG: Executing shell function do_install
| NOTE: make -j 16 DESTDIR=tmp/work/x86_64-linux/apr-native/1.5.1-r0/image
 install
| tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh tools
| gcc  -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
tools/gen_test_char.c -o tools/gen_test_char
| make[1]: Entering directory `tmp/work/x86_64-linux/apr-native/1.5.1-r0/
apr-1.5.1'
| tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh tools
| gcc  -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
tools/gen_test_char.c -o tools/gen_test_char
| tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh
include/private
| tools/gen_test_char > include/private/apr_escape_test_char.h
| /bin/sh: tools/gen_test_char: Permission denied

Remove the 'tools' dir creation, it always existed. And it caused
gen_test_char unexpected rebuilt at do_install time.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 meta/recipes-support/apr/apr/upgrade-and-fix.patch | 48 ++++++++++++++++++++++
 meta/recipes-support/apr/apr_1.5.1.bb              |  1 +
 2 files changed, 49 insertions(+)
 create mode 100644 meta/recipes-support/apr/apr/upgrade-and-fix.patch
Saul Wold - June 4, 2014, 5:49 a.m.
On 06/03/2014 08:27 PM, Hongxu Jia wrote:
> The do_compile failed:
> | tools/gen_test_char > include/private/apr_escape_test_char.h
> | /bin/sh: tools/gen_test_char: No such file or directory
> | make[1]: *** [include/private/apr_escape_test_char.h] Error 127
>
> The tools/gen_test_char was invoked at build time, and it didn't
> work for the cross compiling, so we built it with $BUILD_CC.
>
> To make sure there was no side effect on the change, not adding this
> patch, I did the test:
>
> 1. Built the native tools/gen_test_char on x86-64 host, and invoke
>     it on that host;
>
> 2. Built the target tools/gen_test_char which arch was arm, and invoke
>     it on the qemuarm;
>
> 3. Comparing the results, they were total the same;
> ...
> /* this file is automatically generated by gen_test_char, do not edit. "make include/private/apr_escape_test_char.h" to regenerate. */
>
> static const unsigned char test_char_table[256] = {
>      32,30,30,30,30,30,30,30,30,30,31,30,30,30,30,30,30,30,30,30,
>      30,30,30,30,30,30,30,30,30,30,30,30,6,16,63,22,17,22,49,17,
>      17,17,1,16,16,0,0,18,0,0,0,0,0,0,0,0,0,0,16,23,
>      55,16,55,23,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>      0,0,0,0,0,0,0,0,0,0,0,23,31,23,23,0,23,0,0,0,
>      0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>      0,0,0,23,23,23,17,30,30,30,30,30,30,30,30,30,30,30,30,30,
>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
> };
> ...
>
> The do_install failed:
> | DEBUG: Executing shell function do_install
> | NOTE: make -j 16 DESTDIR=tmp/work/x86_64-linux/apr-native/1.5.1-r0/image
>   install
> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh tools
> | gcc  -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
> tools/gen_test_char.c -o tools/gen_test_char
> | make[1]: Entering directory `tmp/work/x86_64-linux/apr-native/1.5.1-r0/
> apr-1.5.1'
> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh tools
> | gcc  -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
> tools/gen_test_char.c -o tools/gen_test_char
> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh
> include/private
> | tools/gen_test_char > include/private/apr_escape_test_char.h
> | /bin/sh: tools/gen_test_char: Permission denied
>
> Remove the 'tools' dir creation, it always existed. And it caused
> gen_test_char unexpected rebuilt at do_install time.
>
> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> ---
>   meta/recipes-support/apr/apr/upgrade-and-fix.patch | 48 ++++++++++++++++++++++
>   meta/recipes-support/apr/apr_1.5.1.bb              |  1 +
>   2 files changed, 49 insertions(+)
>   create mode 100644 meta/recipes-support/apr/apr/upgrade-and-fix.patch
>

Why not combine this with the 1.5.1 update so they are together?

Sau!

> diff --git a/meta/recipes-support/apr/apr/upgrade-and-fix.patch b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
> new file mode 100644
> index 0000000..4bca384
> --- /dev/null
> +++ b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
> @@ -0,0 +1,48 @@
> +Makefile.in: fix cross compiling failed
> +
> +The tools/gen_test_char was invoked at build time,
> +and it didn't work for the cross compiling, so we
> +compile it with $BUILD_CC.
> +
> +Remove the 'tools' dir creation, it always existed.
> +And it caused gen_test_char unexpected rebuilt at
> +do_install time.
> +
> +Upstream-Status: inappropriate [oe specific]
> +
> +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +---
> + Makefile.in | 10 ++--------
> + 1 file changed, 2 insertions(+), 8 deletions(-)
> +
> +diff --git a/Makefile.in b/Makefile.in
> +index 6f99733..5fe028f 100644
> +--- a/Makefile.in
> ++++ b/Makefile.in
> +@@ -46,7 +46,6 @@ LT_VERSION = @LT_VERSION@
> +
> + CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c .make.dirs \
> + 	build/apr_rules.out tools/gen_test_char@EXEEXT@ \
> +-	tools/gen_test_char.o tools/gen_test_char.lo \
> + 	include/private/apr_escape_test_char.h
> + DISTCLEAN_TARGETS = config.cache config.log config.status \
> + 	include/apr.h include/arch/unix/apr_private.h \
> +@@ -129,13 +128,8 @@ check: $(TARGET_LIB)
> + etags:
> + 	etags `find . -name '*.[ch]'`
> +
> +-make_tools_dir:
> +-	$(APR_MKDIR) tools
> +-
> +-OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS)
> +-tools/gen_test_char.lo: make_tools_dir
> +-tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
> +-	$(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
> ++tools/gen_test_char@EXEEXT@: tools/gen_test_char.c
> ++	$(BUILD_CC) $(CFLAGS_FOR_BUILD) $< -o $@
> +
> + include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
> + 	$(APR_MKDIR) include/private
> +--
> +1.8.1.2
> +
> diff --git a/meta/recipes-support/apr/apr_1.5.1.bb b/meta/recipes-support/apr/apr_1.5.1.bb
> index 7f2d2ca..8c77af2 100644
> --- a/meta/recipes-support/apr/apr_1.5.1.bb
> +++ b/meta/recipes-support/apr/apr_1.5.1.bb
> @@ -14,6 +14,7 @@ SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \
>              file://cleanup.patch \
>              file://configfix.patch \
>              file://run-ptest \
> +           file://upgrade-and-fix.patch \
>   "
>
>   SRC_URI[md5sum] = "5486180ec5a23efb5cae6d4292b300ab"
>
Hongxu Jia - June 4, 2014, 5:52 a.m.
On 06/04/2014 01:49 PM, Saul Wold wrote:
> On 06/03/2014 08:27 PM, Hongxu Jia wrote:
>> The do_compile failed:
>> | tools/gen_test_char > include/private/apr_escape_test_char.h
>> | /bin/sh: tools/gen_test_char: No such file or directory
>> | make[1]: *** [include/private/apr_escape_test_char.h] Error 127
>>
>> The tools/gen_test_char was invoked at build time, and it didn't
>> work for the cross compiling, so we built it with $BUILD_CC.
>>
>> To make sure there was no side effect on the change, not adding this
>> patch, I did the test:
>>
>> 1. Built the native tools/gen_test_char on x86-64 host, and invoke
>>     it on that host;
>>
>> 2. Built the target tools/gen_test_char which arch was arm, and invoke
>>     it on the qemuarm;
>>
>> 3. Comparing the results, they were total the same;
>> ...
>> /* this file is automatically generated by gen_test_char, do not 
>> edit. "make include/private/apr_escape_test_char.h" to regenerate. */
>>
>> static const unsigned char test_char_table[256] = {
>> 32,30,30,30,30,30,30,30,30,30,31,30,30,30,30,30,30,30,30,30,
>>      30,30,30,30,30,30,30,30,30,30,30,30,6,16,63,22,17,22,49,17,
>>      17,17,1,16,16,0,0,18,0,0,0,0,0,0,0,0,0,0,16,23,
>>      55,16,55,23,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>>      0,0,0,0,0,0,0,0,0,0,0,23,31,23,23,0,23,0,0,0,
>>      0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>>      0,0,0,23,23,23,17,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
>> };
>> ...
>>
>> The do_install failed:
>> | DEBUG: Executing shell function do_install
>> | NOTE: make -j 16 
>> DESTDIR=tmp/work/x86_64-linux/apr-native/1.5.1-r0/image
>>   install
>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh 
>> tools
>> | gcc 
>> -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
>> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
>> tools/gen_test_char.c -o tools/gen_test_char
>> | make[1]: Entering directory 
>> `tmp/work/x86_64-linux/apr-native/1.5.1-r0/
>> apr-1.5.1'
>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh 
>> tools
>> | gcc 
>> -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
>> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
>> tools/gen_test_char.c -o tools/gen_test_char
>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh
>> include/private
>> | tools/gen_test_char > include/private/apr_escape_test_char.h
>> | /bin/sh: tools/gen_test_char: Permission denied
>>
>> Remove the 'tools' dir creation, it always existed. And it caused
>> gen_test_char unexpected rebuilt at do_install time.
>>
>> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>> ---
>>   meta/recipes-support/apr/apr/upgrade-and-fix.patch | 48 
>> ++++++++++++++++++++++
>>   meta/recipes-support/apr/apr_1.5.1.bb              |  1 +
>>   2 files changed, 49 insertions(+)
>>   create mode 100644 meta/recipes-support/apr/apr/upgrade-and-fix.patch
>>
>
> Why not combine this with the 1.5.1 update so they are together?
>

Got it, I will rename it.

//Hongxu


> Sau!
>
>> diff --git a/meta/recipes-support/apr/apr/upgrade-and-fix.patch 
>> b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
>> new file mode 100644
>> index 0000000..4bca384
>> --- /dev/null
>> +++ b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
>> @@ -0,0 +1,48 @@
>> +Makefile.in: fix cross compiling failed
>> +
>> +The tools/gen_test_char was invoked at build time,
>> +and it didn't work for the cross compiling, so we
>> +compile it with $BUILD_CC.
>> +
>> +Remove the 'tools' dir creation, it always existed.
>> +And it caused gen_test_char unexpected rebuilt at
>> +do_install time.
>> +
>> +Upstream-Status: inappropriate [oe specific]
>> +
>> +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>> +---
>> + Makefile.in | 10 ++--------
>> + 1 file changed, 2 insertions(+), 8 deletions(-)
>> +
>> +diff --git a/Makefile.in b/Makefile.in
>> +index 6f99733..5fe028f 100644
>> +--- a/Makefile.in
>> ++++ b/Makefile.in
>> +@@ -46,7 +46,6 @@ LT_VERSION = @LT_VERSION@
>> +
>> + CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c 
>> .make.dirs \
>> +     build/apr_rules.out tools/gen_test_char@EXEEXT@ \
>> +-    tools/gen_test_char.o tools/gen_test_char.lo \
>> +     include/private/apr_escape_test_char.h
>> + DISTCLEAN_TARGETS = config.cache config.log config.status \
>> +     include/apr.h include/arch/unix/apr_private.h \
>> +@@ -129,13 +128,8 @@ check: $(TARGET_LIB)
>> + etags:
>> +     etags `find . -name '*.[ch]'`
>> +
>> +-make_tools_dir:
>> +-    $(APR_MKDIR) tools
>> +-
>> +-OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS)
>> +-tools/gen_test_char.lo: make_tools_dir
>> +-tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
>> +-    $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
>> ++tools/gen_test_char@EXEEXT@: tools/gen_test_char.c
>> ++    $(BUILD_CC) $(CFLAGS_FOR_BUILD) $< -o $@
>> +
>> + include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
>> +     $(APR_MKDIR) include/private
>> +--
>> +1.8.1.2
>> +
>> diff --git a/meta/recipes-support/apr/apr_1.5.1.bb 
>> b/meta/recipes-support/apr/apr_1.5.1.bb
>> index 7f2d2ca..8c77af2 100644
>> --- a/meta/recipes-support/apr/apr_1.5.1.bb
>> +++ b/meta/recipes-support/apr/apr_1.5.1.bb
>> @@ -14,6 +14,7 @@ SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \
>>              file://cleanup.patch \
>>              file://configfix.patch \
>>              file://run-ptest \
>> +           file://upgrade-and-fix.patch \
>>   "
>>
>>   SRC_URI[md5sum] = "5486180ec5a23efb5cae6d4292b300ab"
>>
>
Hongxu Jia - June 4, 2014, 5:59 a.m.
On 06/04/2014 01:49 PM, Saul Wold wrote:
> On 06/03/2014 08:27 PM, Hongxu Jia wrote:
>> The do_compile failed:
>> | tools/gen_test_char > include/private/apr_escape_test_char.h
>> | /bin/sh: tools/gen_test_char: No such file or directory
>> | make[1]: *** [include/private/apr_escape_test_char.h] Error 127
>>
>> The tools/gen_test_char was invoked at build time, and it didn't
>> work for the cross compiling, so we built it with $BUILD_CC.
>>
>> To make sure there was no side effect on the change, not adding this
>> patch, I did the test:
>>
>> 1. Built the native tools/gen_test_char on x86-64 host, and invoke
>>     it on that host;
>>
>> 2. Built the target tools/gen_test_char which arch was arm, and invoke
>>     it on the qemuarm;
>>
>> 3. Comparing the results, they were total the same;
>> ...
>> /* this file is automatically generated by gen_test_char, do not 
>> edit. "make include/private/apr_escape_test_char.h" to regenerate. */
>>
>> static const unsigned char test_char_table[256] = {
>> 32,30,30,30,30,30,30,30,30,30,31,30,30,30,30,30,30,30,30,30,
>>      30,30,30,30,30,30,30,30,30,30,30,30,6,16,63,22,17,22,49,17,
>>      17,17,1,16,16,0,0,18,0,0,0,0,0,0,0,0,0,0,16,23,
>>      55,16,55,23,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>>      0,0,0,0,0,0,0,0,0,0,0,23,31,23,23,0,23,0,0,0,
>>      0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>>      0,0,0,23,23,23,17,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
>> };
>> ...
>>
>> The do_install failed:
>> | DEBUG: Executing shell function do_install
>> | NOTE: make -j 16 
>> DESTDIR=tmp/work/x86_64-linux/apr-native/1.5.1-r0/image
>>   install
>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh 
>> tools
>> | gcc 
>> -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
>> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
>> tools/gen_test_char.c -o tools/gen_test_char
>> | make[1]: Entering directory 
>> `tmp/work/x86_64-linux/apr-native/1.5.1-r0/
>> apr-1.5.1'
>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh 
>> tools
>> | gcc 
>> -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
>> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
>> tools/gen_test_char.c -o tools/gen_test_char
>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh
>> include/private
>> | tools/gen_test_char > include/private/apr_escape_test_char.h
>> | /bin/sh: tools/gen_test_char: Permission denied
>>
>> Remove the 'tools' dir creation, it always existed. And it caused
>> gen_test_char unexpected rebuilt at do_install time.
>>
>> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>> ---
>>   meta/recipes-support/apr/apr/upgrade-and-fix.patch | 48 
>> ++++++++++++++++++++++
>>   meta/recipes-support/apr/apr_1.5.1.bb              |  1 +
>>   2 files changed, 49 insertions(+)
>>   create mode 100644 meta/recipes-support/apr/apr/upgrade-and-fix.patch
>>
>
> Why not combine this with the 1.5.1 update so they are together?
>
> Sau!
>

Update:

   git://git.pokylinux.org/poky-contrib hongxu/upgrade-apr
   http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=hongxu/upgrade-apr

-rw-r--r-- meta/recipes-support/apr/apr/upgrade-and-fix-1.5.1.patch    48
-rw-r--r--    meta/recipes-support/apr/apr_1.5.1.bb    1

//Hongxu


>> diff --git a/meta/recipes-support/apr/apr/upgrade-and-fix.patch 
>> b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
>> new file mode 100644
>> index 0000000..4bca384
>> --- /dev/null
>> +++ b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
>> @@ -0,0 +1,48 @@
>> +Makefile.in: fix cross compiling failed
>> +
>> +The tools/gen_test_char was invoked at build time,
>> +and it didn't work for the cross compiling, so we
>> +compile it with $BUILD_CC.
>> +
>> +Remove the 'tools' dir creation, it always existed.
>> +And it caused gen_test_char unexpected rebuilt at
>> +do_install time.
>> +
>> +Upstream-Status: inappropriate [oe specific]
>> +
>> +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>> +---
>> + Makefile.in | 10 ++--------
>> + 1 file changed, 2 insertions(+), 8 deletions(-)
>> +
>> +diff --git a/Makefile.in b/Makefile.in
>> +index 6f99733..5fe028f 100644
>> +--- a/Makefile.in
>> ++++ b/Makefile.in
>> +@@ -46,7 +46,6 @@ LT_VERSION = @LT_VERSION@
>> +
>> + CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c 
>> .make.dirs \
>> +     build/apr_rules.out tools/gen_test_char@EXEEXT@ \
>> +-    tools/gen_test_char.o tools/gen_test_char.lo \
>> +     include/private/apr_escape_test_char.h
>> + DISTCLEAN_TARGETS = config.cache config.log config.status \
>> +     include/apr.h include/arch/unix/apr_private.h \
>> +@@ -129,13 +128,8 @@ check: $(TARGET_LIB)
>> + etags:
>> +     etags `find . -name '*.[ch]'`
>> +
>> +-make_tools_dir:
>> +-    $(APR_MKDIR) tools
>> +-
>> +-OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS)
>> +-tools/gen_test_char.lo: make_tools_dir
>> +-tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
>> +-    $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
>> ++tools/gen_test_char@EXEEXT@: tools/gen_test_char.c
>> ++    $(BUILD_CC) $(CFLAGS_FOR_BUILD) $< -o $@
>> +
>> + include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
>> +     $(APR_MKDIR) include/private
>> +--
>> +1.8.1.2
>> +
>> diff --git a/meta/recipes-support/apr/apr_1.5.1.bb 
>> b/meta/recipes-support/apr/apr_1.5.1.bb
>> index 7f2d2ca..8c77af2 100644
>> --- a/meta/recipes-support/apr/apr_1.5.1.bb
>> +++ b/meta/recipes-support/apr/apr_1.5.1.bb
>> @@ -14,6 +14,7 @@ SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \
>>              file://cleanup.patch \
>>              file://configfix.patch \
>>              file://run-ptest \
>> +           file://upgrade-and-fix.patch \
>>   "
>>
>>   SRC_URI[md5sum] = "5486180ec5a23efb5cae6d4292b300ab"
>>
>
Hongxu Jia - June 4, 2014, 8:13 a.m.
On 06/04/2014 01:59 PM, Hongxu Jia wrote:
> On 06/04/2014 01:49 PM, Saul Wold wrote:
>> On 06/03/2014 08:27 PM, Hongxu Jia wrote:
>>> The do_compile failed:
>>> | tools/gen_test_char > include/private/apr_escape_test_char.h
>>> | /bin/sh: tools/gen_test_char: No such file or directory
>>> | make[1]: *** [include/private/apr_escape_test_char.h] Error 127
>>>
>>> The tools/gen_test_char was invoked at build time, and it didn't
>>> work for the cross compiling, so we built it with $BUILD_CC.
>>>
>>> To make sure there was no side effect on the change, not adding this
>>> patch, I did the test:
>>>
>>> 1. Built the native tools/gen_test_char on x86-64 host, and invoke
>>>     it on that host;
>>>
>>> 2. Built the target tools/gen_test_char which arch was arm, and invoke
>>>     it on the qemuarm;
>>>
>>> 3. Comparing the results, they were total the same;
>>> ...
>>> /* this file is automatically generated by gen_test_char, do not 
>>> edit. "make include/private/apr_escape_test_char.h" to regenerate. */
>>>
>>> static const unsigned char test_char_table[256] = {
>>> 32,30,30,30,30,30,30,30,30,30,31,30,30,30,30,30,30,30,30,30,
>>> 30,30,30,30,30,30,30,30,30,30,30,30,6,16,63,22,17,22,49,17,
>>>      17,17,1,16,16,0,0,18,0,0,0,0,0,0,0,0,0,0,16,23,
>>>      55,16,55,23,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>>>      0,0,0,0,0,0,0,0,0,0,0,23,31,23,23,0,23,0,0,0,
>>>      0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
>>>      0,0,0,23,23,23,17,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>> 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
>>>      30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
>>> };
>>> ...
>>>
>>> The do_install failed:
>>> | DEBUG: Executing shell function do_install
>>> | NOTE: make -j 16 
>>> DESTDIR=tmp/work/x86_64-linux/apr-native/1.5.1-r0/image
>>>   install
>>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh 
>>> tools
>>> | gcc 
>>> -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
>>> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
>>> tools/gen_test_char.c -o tools/gen_test_char
>>> | make[1]: Entering directory 
>>> `tmp/work/x86_64-linux/apr-native/1.5.1-r0/
>>> apr-1.5.1'
>>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh 
>>> tools
>>> | gcc 
>>> -isystem/home/pokybuild/yocto-autobuilder/yocto-slave/build-appliance/
>>> build/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe
>>> tools/gen_test_char.c -o tools/gen_test_char
>>> | tmp/work/x86_64-linux/apr-native/1.5.1-r0/apr-1.5.1/build/mkdir.sh
>>> include/private
>>> | tools/gen_test_char > include/private/apr_escape_test_char.h
>>> | /bin/sh: tools/gen_test_char: Permission denied
>>>
>>> Remove the 'tools' dir creation, it always existed. And it caused
>>> gen_test_char unexpected rebuilt at do_install time.
>>>
>>> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>>> ---
>>>   meta/recipes-support/apr/apr/upgrade-and-fix.patch | 48 
>>> ++++++++++++++++++++++
>>>   meta/recipes-support/apr/apr_1.5.1.bb              |  1 +
>>>   2 files changed, 49 insertions(+)
>>>   create mode 100644 meta/recipes-support/apr/apr/upgrade-and-fix.patch
>>>
>>
>> Why not combine this with the 1.5.1 update so they are together?
>>
>> Sau!
>>
>
> Update:
>    git://git.pokylinux.org/poky-contrib hongxu/upgrade-apr
>    http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=hongxu/upgrade-apr

Combine with the 1.5.1 update

http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=hongxu/upgrade-apr&id=4e2741183ccf72be080ab009a3488f08561a77e2

//Hongxu

> -rw-r--r-- meta/recipes-support/apr/apr/upgrade-and-fix-1.5.1.patch    48
> -rw-r--r--    meta/recipes-support/apr/apr_1.5.1.bb    1
>
> //Hongxu
>
>
>>> diff --git a/meta/recipes-support/apr/apr/upgrade-and-fix.patch 
>>> b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
>>> new file mode 100644
>>> index 0000000..4bca384
>>> --- /dev/null
>>> +++ b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
>>> @@ -0,0 +1,48 @@
>>> +Makefile.in: fix cross compiling failed
>>> +
>>> +The tools/gen_test_char was invoked at build time,
>>> +and it didn't work for the cross compiling, so we
>>> +compile it with $BUILD_CC.
>>> +
>>> +Remove the 'tools' dir creation, it always existed.
>>> +And it caused gen_test_char unexpected rebuilt at
>>> +do_install time.
>>> +
>>> +Upstream-Status: inappropriate [oe specific]
>>> +
>>> +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>>> +---
>>> + Makefile.in | 10 ++--------
>>> + 1 file changed, 2 insertions(+), 8 deletions(-)
>>> +
>>> +diff --git a/Makefile.in b/Makefile.in
>>> +index 6f99733..5fe028f 100644
>>> +--- a/Makefile.in
>>> ++++ b/Makefile.in
>>> +@@ -46,7 +46,6 @@ LT_VERSION = @LT_VERSION@
>>> +
>>> + CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c 
>>> .make.dirs \
>>> +     build/apr_rules.out tools/gen_test_char@EXEEXT@ \
>>> +-    tools/gen_test_char.o tools/gen_test_char.lo \
>>> +     include/private/apr_escape_test_char.h
>>> + DISTCLEAN_TARGETS = config.cache config.log config.status \
>>> +     include/apr.h include/arch/unix/apr_private.h \
>>> +@@ -129,13 +128,8 @@ check: $(TARGET_LIB)
>>> + etags:
>>> +     etags `find . -name '*.[ch]'`
>>> +
>>> +-make_tools_dir:
>>> +-    $(APR_MKDIR) tools
>>> +-
>>> +-OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS)
>>> +-tools/gen_test_char.lo: make_tools_dir
>>> +-tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
>>> +-    $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
>>> ++tools/gen_test_char@EXEEXT@: tools/gen_test_char.c
>>> ++    $(BUILD_CC) $(CFLAGS_FOR_BUILD) $< -o $@
>>> +
>>> + include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
>>> +     $(APR_MKDIR) include/private
>>> +--
>>> +1.8.1.2
>>> +
>>> diff --git a/meta/recipes-support/apr/apr_1.5.1.bb 
>>> b/meta/recipes-support/apr/apr_1.5.1.bb
>>> index 7f2d2ca..8c77af2 100644
>>> --- a/meta/recipes-support/apr/apr_1.5.1.bb
>>> +++ b/meta/recipes-support/apr/apr_1.5.1.bb
>>> @@ -14,6 +14,7 @@ SRC_URI = 
>>> "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \
>>> file://cleanup.patch \
>>> file://configfix.patch \
>>> file://run-ptest \
>>> + file://upgrade-and-fix.patch \
>>>   "
>>>
>>>   SRC_URI[md5sum] = "5486180ec5a23efb5cae6d4292b300ab"
>>>
>>
>
>
>

Patch

diff --git a/meta/recipes-support/apr/apr/upgrade-and-fix.patch b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
new file mode 100644
index 0000000..4bca384
--- /dev/null
+++ b/meta/recipes-support/apr/apr/upgrade-and-fix.patch
@@ -0,0 +1,48 @@ 
+Makefile.in: fix cross compiling failed
+
+The tools/gen_test_char was invoked at build time,
+and it didn't work for the cross compiling, so we
+compile it with $BUILD_CC.
+
+Remove the 'tools' dir creation, it always existed.
+And it caused gen_test_char unexpected rebuilt at
+do_install time.
+
+Upstream-Status: inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ Makefile.in | 10 ++--------
+ 1 file changed, 2 insertions(+), 8 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 6f99733..5fe028f 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -46,7 +46,6 @@ LT_VERSION = @LT_VERSION@
+ 
+ CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c .make.dirs \
+ 	build/apr_rules.out tools/gen_test_char@EXEEXT@ \
+-	tools/gen_test_char.o tools/gen_test_char.lo \
+ 	include/private/apr_escape_test_char.h
+ DISTCLEAN_TARGETS = config.cache config.log config.status \
+ 	include/apr.h include/arch/unix/apr_private.h \
+@@ -129,13 +128,8 @@ check: $(TARGET_LIB)
+ etags:
+ 	etags `find . -name '*.[ch]'`
+ 
+-make_tools_dir:
+-	$(APR_MKDIR) tools
+-
+-OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS)
+-tools/gen_test_char.lo: make_tools_dir
+-tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
+-	$(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
++tools/gen_test_char@EXEEXT@: tools/gen_test_char.c
++	$(BUILD_CC) $(CFLAGS_FOR_BUILD) $< -o $@
+ 
+ include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
+ 	$(APR_MKDIR) include/private
+-- 
+1.8.1.2
+
diff --git a/meta/recipes-support/apr/apr_1.5.1.bb b/meta/recipes-support/apr/apr_1.5.1.bb
index 7f2d2ca..8c77af2 100644
--- a/meta/recipes-support/apr/apr_1.5.1.bb
+++ b/meta/recipes-support/apr/apr_1.5.1.bb
@@ -14,6 +14,7 @@  SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \
            file://cleanup.patch \
            file://configfix.patch \
            file://run-ptest \
+           file://upgrade-and-fix.patch \
 "
 
 SRC_URI[md5sum] = "5486180ec5a23efb5cae6d4292b300ab"