Hi,

On 1 April 2015 at 20:01, yfw <fengwei.yin@linaro.org> wrote:
Hi YongQin,

On 2015/4/1 18:46, YongQin Liu wrote:
Hi, Fengwei

On 1 April 2015 at 17:27, yfw <fengwei.yin@linaro.org
<mailto:fengwei.yin@linaro.org>> wrote:

    Hi list,
    I don't know whether this is correct list for my questions. If it's
    not, please let me know and sorry for the noise.

Yes, this is the right place.

    We have a premium member who is trying to create member build based on
    LCR. Here is the first questions they asked:
        What's the difference between AOSP and LCR?

AOSP has many branches, and LCR builds are based on the latest google
released version, like the  android-5.1.0_r3 now, which means
it's more stable than the AOSP master branch.
AOSP master branch has the latest source, but it is updated every day,
and has the case that even can not build successfully.

I mean the difference LCR and the AOSP base tag for LCR (which means the difference between android 5.0.2_r1 and the LCR based on AOSP 5.0.2_r1)

This is how LCR is structured:
  • Android baseline comes from AOSP upstream tags. It is 5.1 for 15.03 release.
  • We add additional projects to build for our targets and additional projects by using local manifest.
  • We have one special repository which brings in all the Linaro goodies and back ports which the members are really interested in. This project is the android-patchset project. It has topic based patchset script which applies patches on AOSP code. The reason we have kept it this way is, members need not use LCR as baseline. They just need to run the script they are interested on top of their tree. More documentation about the patch is available here.
  • We tag the scripts for every LCR. Members can run that script to get the goodies/optimization. These are the patches that were applied in the baseline what we shipped for 15.03: https://android.git.linaro.org/gitweb/android-patchsets.git/blob/refs/heads/LCR-15.03-release:/LOLLIPOP-STABLE-PATCHSET

    I downloaded the android source (I suppose it's LCR) by following
    the link here:
    https://wiki.linaro.org/__Platform/Android/GetSource#__Platform_Code_Get_source_and___Building
    <https://wiki.linaro.org/Platform/Android/GetSource#Platform_Code_Get_source_and_Building>


But normally it's better to download and build the source according to
the instruction in following link:
https://releases.linaro.org/latest/android/lcr/armv8-android-juno-lsk#tabs-3


    and got couple of questions regarding this source:
    1. Is this source code for LCR?

It's source code for LCR, but not the latest version of LCR builds.
The steps there should work as well.


    2. I suppose the source code could be divided to two parts:
        - base android src defined by MANIFEST_BRANCH. Which match the same
          tag on Google AOSP exactly even they are from Linaro android git
          server.
        - Addon projects from Linaro defined by local manifest.
        Let me know if I have wrong assumption.

Yes, you are right.
Thanks for the confirmation.



        This is important because the member is from PRC. It's very easy
        to hit network issue when we download the source from Linaro android
        git server.

hmm, this is different with my experience.
Could they report their error when download source from linaro android
server?
Actually, I met the same issue as them and submitted ticket to ITS for my case. And ITS confirmed that they got 2 cases report.

        If my understanding is correct, we could suggest a temporary
        workaround to member that they download the base android src from
        Google AOSP server. And download addon projects from Linaro server.

Yes, this can work.
changing MANIFEST_REPO in the above link you mentioned to
https://android.googlesource.com/platform/manifest
will make it download source from google AOSP server.

OK. That's good. Actually, member already did this.

    3. I noticed there is a directory named "android-patchset" which
        includeds some additional patches. But it looks like LCR doesn't
        apply them. I checked two place:
        - linaro_android_build_cmds.sh. It exports PATCHSETS. But doesn't
          use it.
        - bionic revision in pinned-manifest.xml and the snapshot of AOSP.
          They are exactly same. So no additional patch applied on bionic
          when android-patchset has bionic patch

        Did I miss something here?

If you check the script here:
https://releases.linaro.org/15.03/android/lcr/armv8-android-juno-lsk/linaro_android_build_cmds.sh

you will see lines like following:

    # download and apply the patches
    git clone git://android.git.linaro.org/android-patchsets.git
    <http://android.git.linaro.org/android-patchsets.git>
    for i in $PATCHSETS; do
    sh ./android-patchsets/$i
    done

This will help to apply the necessary patches.
Thanks for the information. Yes. These cmds are there for 15.03 release but not for 15.02.

So can I communicate with members about the delta between LCD and android drop from Google like following?
1. Some new projects from Linaro are added. Member could check the
   local manifest to know which projects added by Linaro.

These projects may not bring more value add to members but will be useful as reference for them. 

2. Linaro also includes some patches for existing AOSP projects. Member
   could check android-patchsets to know which extra patches added to
   LCR.

This is the most important thing that members are interested in.  All the patches the members are interested can be found from the above link. Members can go to gerrit and look for the change ID to get an understanding on what the change does.

Regards
Yin, Fengwei


--
Best Regards,
Yongqin Liu
---------------------------------------------------------------
#mailing list
linaro-android@lists.linaro.org <mailto:linaro-dev@lists.linaro.org>
http://lists.linaro.org/mailman/listinfo/linaro-android
_______________________________________________
linaro-android mailing list
linaro-android@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/linaro-android