[OE-core] [PATCH 2/2] quilt: fix test for target build

Saul Wold sgw at linux.intel.com
Wed Apr 13 16:48:17 UTC 2011


On 04/13/2011 08:36 AM, Khem Raj wrote:
> On Wed, Apr 13, 2011 at 2:26 AM, Qing He<qing.he at intel.com>  wrote:
>> From: Qing He<qing.he at intel.com>
>>
>> fixes [YOCTO #969]
>>
>> Signed-off-by: Qing He<qing.he at intel.com>
>> ---
>>   .../quilt/quilt/gnu_patch_test_fix_target.patch    |   66 ++++++++++++++++++++
>>   meta/recipes-devtools/quilt/quilt_0.48.bb          |    6 +-
>>   2 files changed, 70 insertions(+), 2 deletions(-)
>>   create mode 100644 meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch
>>
>> diff --git a/meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch b/meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch
>> new file mode 100644
>> index 0000000..784fe76
>> --- /dev/null
>> +++ b/meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch
>> @@ -0,0 +1,66 @@
>> +The test of patch and diff should not be run for cross build,
>> +rather, assume them as gnu version is rather safe. This is a
>> +workaround to remove it altogether.
>> +
>
> why is this patch needed. I assume all linux distributions use GNU
> diff and patch
> and that what is being checked so why remove the checks ? these messages
> are atleast useful for folks who are trying other build hosts e.g. darwin
>
I understand the host vs target issue, but I think a safer way would  be 
to add a check for the version of the target patch (via a variable), 
this may be more upstreamable.

Also, why did you know do a recipe update which would bring in some of 
the upstream fixes also?

Sau!

>> +Signed-off-by: Qing He<qing.he at intel.com>
>> +
>> +diff --git a/configure.ac b/configure.ac
>> +index 026a36c..7b45ca4 100644
>> +--- a/configure.ac
>> ++++ b/configure.ac
>> +@@ -245,55 +245,6 @@ fi
>> + QUILT_COMPAT_PROG_PATH(DIFF, diff)
>> + QUILT_COMPAT_PROG_PATH(PATCH, patch)
>> +
>> +-# Sun diff and others will not work because GNU patch options are used.
>> +-AC_MSG_CHECKING([the version of $DIFF])
>> +-if $DIFF --version 2>/dev/null | grep GNU>/dev/null; then
>> +-  set -- `$DIFF --version 2>/dev/null | $AWK '{ print $NF; exit }'`
>> +-  diff_version=$1
>> +-  AC_MSG_RESULT($diff_version)
>> +-  saved_IFS=$IFS; IFS='.'
>> +-  set -- $diff_version
>> +-  IFS=$saved_IFS
>> +-  set -- `echo $1 | $TR -cd 0-9` `echo $2 | $TR -cd 0-9`
>> +-  if test 0$1 -lt 2 || test 0$1 -eq 2 -a 0$2 -lt 7 ; then
>> +-    diff_version=
>> +-  fi
>> +-else
>> +-  AC_MSG_RESULT(no GNU diff)
>> +-fi
>> +-if test -z "$diff_version" ; then
>> +-  AC_MSG_ERROR([
>> +-$PACKAGE_NAME requires at least version 2.7 of GNU diffutils. You can
>> +-download a current version of patch from ftp.gnu.org, or if you already
>> +-have GNU diff then you can supply its path with the '--with-diff=' option.
>> +-])
>> +-fi
>> +-
>> +-
>> +-# Sun's patch, and others, do not work because GNU patch options are used.
>> +-AC_MSG_CHECKING([the version of $PATCH])
>> +-if $PATCH --version 2>  /dev/null | grep GNU>/dev/null; then
>> +-  set -- `$PATCH --version 2>  /dev/null`
>> +-  patch_version=$2
>> +-  AC_MSG_RESULT($patch_version)
>> +-  saved_IFS=$IFS; IFS='.'
>> +-  set -- $patch_version
>> +-  IFS=$saved_IFS
>> +-  set -- `echo $1 | $TR -cd 0-9` `echo $2 | $TR -cd 0-9`
>> +-  if test 0$1 -lt 2 || test 0$1 -eq 2 -a 0$2 -lt 4 ; then
>> +-    patch_version=
>> +-  fi
>> +-else
>> +-  AC_MSG_RESULT(no GNU patch)
>> +-fi
>> +-if test -z "$patch_version" ; then
>> +-  AC_MSG_ERROR([
>> +-$PACKAGE_NAME requires at least version 2.4 of GNU patch. You can download a
>> +-current version of patch from ftp.gnu.org, or if you already have GNU patch
>> +-then you can supply its path with the '--with-patch=' option.
>> +-])
>> +-fi
>> +-
>> + QUILT_COMPAT_PROG_PATH(FIND, find)
>> +
>> + AC_MSG_CHECKING([whether $FIND -path works])
>> diff --git a/meta/recipes-devtools/quilt/quilt_0.48.bb b/meta/recipes-devtools/quilt/quilt_0.48.bb
>> index 20a708d..124e2cd 100644
>> --- a/meta/recipes-devtools/quilt/quilt_0.48.bb
>> +++ b/meta/recipes-devtools/quilt/quilt_0.48.bb
>> @@ -2,8 +2,10 @@ require quilt.inc
>>   LICENSE="GPLv2"
>>   LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
>>   RDEPENDS_${PN} += "patch diffstat bzip2 util-linux"
>> -PR = "r0"
>> -SRC_URI += "file://aclocal.patch"
>> +PR = "r1"
>> +SRC_URI += "file://aclocal.patch \
>> +            file://gnu_patch_test_fix_target.patch \
>> +           "
>>
>>   SRC_URI[md5sum] = "f77adda60039ffa753f3c584a286f12b"
>>   SRC_URI[sha256sum] = "73fd760d3b5cbf06417576591dc37d67380d189392db9000c21b7cbebee49ffc"
>> --
>> 1.7.0
>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core




More information about the Openembedded-core mailing list