[OE-core] [PATCH] u-boot: update to 2013.07

jhuang0 jackie.huang at windriver.com
Thu Aug 29 07:16:03 UTC 2013



On 8/28/2013 11:50 AM, Randy MacLeod wrote:
> On 13-08-27 07:29 PM, Richard Purdie wrote:
>> On Tue, 2013-08-27 at 22:08 +0200, Martin Jansa wrote:
>>> On Tue, Aug 27, 2013 at 03:57:09PM -0400, Randy MacLeod wrote:
>>>> On 13-08-23 05:48 AM, Laszlo Papp wrote:
>>>>> Signed-off-by: Laszlo Papp <lpapp at kde.org>
>>>>> ---
>>>>>    meta/recipes-bsp/u-boot/u-boot-mkimage_2013.07.bb | 27
>>>>> +++++++++++++++++++++++
>>>>>    meta/recipes-bsp/u-boot/u-boot_2013.07.bb         | 23
>>>>> +++++++++++++++++++
>>>>>    2 files changed, 50 insertions(+)
>>>>>    create mode 100644
>>>>> meta/recipes-bsp/u-boot/u-boot-mkimage_2013.07.bb
>>>>>    create mode 100644 meta/recipes-bsp/u-boot/u-boot_2013.07.bb
>>>>>
>>>> ...
>>>>> diff --git a/meta/recipes-bsp/u-boot/u-boot_2013.07.bb
>>>>> b/meta/recipes-bsp/u-boot/u-boot_2013.07.bb
>>>>> new file mode 100644
>>>>> index 0000000..f3f4b62
>>>>> --- /dev/null
>>>>> +++ b/meta/recipes-bsp/u-boot/u-boot_2013.07.bb
>>>>> @@ -0,0 +1,23 @@
>>>>> +require u-boot.inc
>>>>> +
>>>>> +# To build u-boot for your machine, provide the following lines in
>>>>> your machine
>>>>> +# config, replacing the assignments as appropriate for your machine.
>>>>> +# UBOOT_MACHINE = "omap3_beagle_config"
>>>>> +# UBOOT_ENTRYPOINT = "0x80008000"
>>>>> +# UBOOT_LOADADDRESS = "0x80008000"
>>>>> +
>>>>> +LICENSE = "GPLv2+"
>>>>> +LIC_FILES_CHKSUM =
>>>>> "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb \
>>>>> +
>>>>> file://README;beginline=1;endline=22;md5=78b195c11cb6ef63e6985140db7d7bab"
>>>>>
>>>>> +
>>>>> +# This revision corresponds to the tag "v2013.07"
>>>>> +# We use the revision in order to avoid having to fetch it from
>>>>> the repo during parse
>>>>> +SRCREV = "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c"
>>>>> +
>>>>> +PV = "v2013.07+git${SRCPV}"
>>>>> +
>>>>> +SRC_URI = "git://git.denx.de/u-boot.git;branch=master;protocol=git"
>>>>
>>>> Just curious...
>>>> I dont' see a good reason to specify the git protocol twice:
>>>>      git://.... and ; protocol=git
>>>
>>> It's not twice, git:// is to select bitbake fetcher (git.py) and one
>>> fetcher can support multiple protocols (e.g. over git, http or ssh)
>>>
>>> but you're right that in most cases "protocol=git" isn't needed, because
>>> it's default protocol for git fetcher when host is specified in that
>>> SRC_URI.
>>>
>>> bitbake/lib/bb/fetch2/git.py:
>>>          if 'protocol' in ud.parm:
>>>              ud.proto = ud.parm['protocol']
>>>          elif not ud.host:
>>>              ud.proto = 'file'
>>>          else:
>>>              ud.proto = "git"
>>>
>>> And I would support removing it in one go as it clearly confuses people
>>> :).
>>
>> The reason is that the default for the git fetcher was once rsync. Why?
>> The fetcher was written when git was still a new and unexplored
>> landscape. We decided in the end to break that insane default and fix
>> it.
>>
>> We should kill off the now unnecessary parameters though.
>
> Ok. Jackie will have time to make a first pass tomorrow.
> Jackie, please include the replacement script in your email.

I think it should be the for the fetchers of svn, cvs, hg and so on:

$ grep protocol bitbake/lib/bb/fetch2/svn.py
         proto = ud.parm.get('protocol', 'svn')

$ grep protocol bitbake/lib/bb/fetch2/hg.py
         proto = ud.parm.get('protocol', 'http')


I checked that we only use git and svn:
$ find meta \( -name *.bb -o -name *.inc -o -name *.bbclass \) -exec sed 
-n 's/.*"\(\w*:\/\/\).*\(;protocol=\w*\)/\1 \2/p' {} \; | sort | uniq
git:// ;protocol=git \
git:// ;protocol=git"
git:// 
;protocol=git;bareclone=1;branch=${KBRANCH},${KMETA};name=machine,meta"
git:// ;protocol=git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
git:// ;protocol=git" % (gstpkg_basename, branch))
git:// 
;protocol=git;nocheckout=1;branch=${KBRANCH},${KMETA};name=machine,meta"
git:// ;protocol=http \
svn:// ;protocol=http \
svn:// ;protocol=http;module=trunk \
svn:// ;protocol=svn"

So I think it's safe to simply remove ";protocol=git" and ";protocol=svn":

$ find meta \( -name *.bb -o -name *.inc -o -name *.bbclass \) -exec sed 
-i 's/;protocol=git//; s/;protocol=svn//' {} \;


What left with protocol parameter after removal is:
$ find meta \( -name *.bb -o -name *.inc -o -name *.bbclass \) -exec sed 
-n 's/.*"\(\w*:\/\/\).*\(;protocol=\w*\)/\1 \2/p' {} \; | sort | uniq
git:// ;protocol=http \
svn:// ;protocol=http \
svn:// ;protocol=http;module=trunk \

I think it should be what we want, I will send the patch after my 
"bitbake world" complete.

Thanks,
Jackie

>
> // Randy
>
>>
>> Cheers,
>>
>> Richard
>>
>>
>>
>
>

-- 
Jackie Huang
WIND RIVER | China Development Center
MSN:jackielily at hotmail.com
Tel: +86 8477 8594
Mobile: +86 138 1027 4745



More information about the Openembedded-core mailing list