[Android-tools-devel] Updating SDK tools

Hans-Christoph Steiner hans at at.or.at
Fri Jul 10 07:01:41 UTC 2015


It sounds like mksdcard, emulator and emma do not belong in androidsdk-tools
source package.  But really, we should follow what Google is doing there.  So
the androidsdk-tools source package should include all projects built by

tools/buildSrc/servers/build_tools.sh

I think that EMMA and mksdcard are low priority and the emulator is probably
going to be a large project, so we should skip all three for now.

.hc

Komal Sukhani:
> Hello,
> 
> All the SDK tools are not present in platform/tools.git. Tools that are
> outside
> platform/tools.git are
> 
> 1. mksdcard (platform/sdk/emulator/mksdcard)
> 2. emulator (platform/external/qemu)
> 3. EMMA (platform/external/emma)
> 
> There is no repo for platform/sdk/emulator/mksdcard.git but a single repo
> platform/sdk.git for all sdk sources. Other thing is following lines are
> quoted
> in build.gradle of EMMA
> 
> "This build.gradle file is to be used with the AOSP tools gradle-based
> build.
>  * It is not meant as a standalone build setup."
> 
> Regarding tag, I was thinking of using gradle_1.2.0, as it is latest
> version of
> gradle plugin, that would build SDK tools v24.2.0.
> 
> Komal Sukhani
> 
> 
> On Thu, Jul 9, 2015 at 3:29 PM, 殷啟聰 <seamlikok at gmail.com> wrote:
> 
>> Hi all,
>>
>> I am thinking that, so far SDK Tools (and its version number) seems to be
>> independent from other tools in SDK Build-tools and SDK Platform-tools, and
>> from <http://developer.android.com/tools/sdk/tools-notes.html> we can see
>> the version of other tools they require, maybe androidsdk-tools can fetch
>> the gradle-* tags while other android-platform-* repos can fetch android-*
>> tags. This makes all tools up-to-date.
>>
>> Cheers,
>> Kai-Chung Yan
>>
>> 殷啟聰 <seamlikok at gmail.com> 於 2015年7月9日週四 下午5:21寫道:
>>
>>> Hi all,
>>>
>>> However things in SDK Build-tools and SDK Platform-tools are a little bit
>>> worse. Their tools come from various repo, and one single repo contains
>>> tools belonging to various SDK *-tools. Also note that the mksdcard in SDK
>>> Tools is from platform/sdk instead of platform/tool/* .
>>>
>>> By the way, I bought a VPN just now and I can reach you guys finally :)
>>>
>>> Cheers,
>>> Kai-Chung Yan
>>>
>>> Hans-Christoph Steiner <hans at at.or.at> 於 2015年7月9日週四 上午2:21寫道:
>>>
>>>>
>>>> Yeah, platform/tools is the root dir of all this, but there is not
>>>> platform/tools git repo, only git repos under that, e.g.:
>>>>
>>>> https://android.googlesource.com/platform/tools/base.git
>>>> https://android.googlesource.com/platform/tools/buildSrc.git
>>>> https://android.googlesource.com/platform/tools/swt.git
>>>>
>>>> That's how the `repo` tool sets things up.  Its a bit bizarre, but
>>>> `repo` is
>>>> used to build all Android ROMs as well as a lot of the SDK.  The
>>>> androidsdk-tools source package should be set up to mirror that setup. It
>>>> looks like it already is, but it needs some improvements.
>>>>
>>>> About those build instructions, we'll have to change all `./gradlew`
>>>> calls to
>>>> be just `gradle`, and then find all jar dependencies in Debian.  One
>>>> idea is
>>>> to make a patch that removes `mavenCentral()` and `jcenter()` from all
>>>> build.gradle files, then add static paths to find the jars using
>>>> /usr/share/java
>>>>
>>>> .hc
>>>>
>>>> Komal Sukhani:
>>>>> Hello Hans,
>>>>>
>>>>> From Android Tools Site[1], I have found that platform/tools.git is
>>>> root
>>>>> project and all SDK tools are built under it.
>>>>>
>>>>> [1] http://tools.android.com/build/gradleplugin
>>>>>
>>>>> Komal Sukhani
>>>>>
>>>>> On Tue, Jul 7, 2015 at 12:31 AM, Hans-Christoph Steiner <hans at at.or.at
>>>>>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>> I checked out the git repos, since these all seem to be built using
>>>>>> gradle, we
>>>>>> should try to mimic the official Google setup as much as possible.
>>>> For a
>>>>>> repo
>>>>>> like platform/tools/buildSrc.git I think having that as a standalone
>>>> source
>>>>>> package will just create work, since lots of things depend on it, but
>>>> it
>>>>>> doesn't create anything.
>>>>>>
>>>>>> Has anyone found any documentation of how Google builds all this?  I
>>>>>> imagine
>>>>>> it is similar to how Android ROMs are built, using multiple git repos
>>>>>> managed
>>>>>> using `repo`, and built all together at once.
>>>>>>
>>>>>> .hc
>>>>>>
>>>>>> Hans-Christoph Steiner:
>>>>>>>
>>>>>>> I'm CCing the android-tools list.
>>>>>>>
>>>>>>> I think it makes sense to make a source package per git repo, unless
>>>>>> Google is moving around important files between them a lot, like we
>>>> saw
>>>>>> with AndroidConfig.h.  All of the android-platform-* source packages
>>>> are
>>>>>> already organized like that. My main concern with this approach is
>>>> that it
>>>>>> might mean a lot of work in the short term.
>>>>>>>
>>>>>>> Yeah, the git release tags are a nightmare, they are not consistent
>>>> nor
>>>>>> documented much.  I think for now, we should just go with our best
>>>> guess as
>>>>>> to what is the right tag, then we can adjust in the future.
>>>>>>>
>>>>>>> .hc
>>>>>>>
>>>>>>> On Jul 5, 2015, at 8:39 AM, Komal Sukhani wrote:
>>>>>>>
>>>>>>>> Hello Kai-Chung,
>>>>>>>>
>>>>>>>> Those methods are introduced in higher version of libraries. For
>>>>>> example, methods like getAbis(), getDensity() of ddmlib v23.1.0 are
>>>> used.
>>>>>>>>
>>>>>>>> Komal Sukhani
>>>>>>>>
>>>>>>>> On Sat, Jul 4, 2015 at 2:45 AM, 殷啟聰 <seamlikok at gmail.com> wrote:
>>>>>>>> Hi Komal,
>>>>>>>>
>>>>>>>> Perhaps those APIs that reported missing are actually in buildSrc?
>>>>>>>>
>>>>>>>> Hi Hans,
>>>>>>>>
>>>>>>>> We found that the android-xxx tags does not exist in all repos, for
>>>>>> example platform/tools/buildSrc.
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>> Kai-Chung Yan
>>>>>>>>
>>>>>>>>
>>>>>>>> 2015 年 7 月 4 日 (週六)04:51 <Komal Sukhani> 於 komaldsukhani at gmail.com
>>>> 寫道:
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I hope you are enjoying in California.
>>>>>>>>
>>>>>>>> This week I have been working on Android plugin for Gradle. The
>>>> plugin
>>>>>> has dependency over some
>>>>>>>> of Java libraries like sdklib, ddmlib etc. These libraries are
>>>> provided
>>>>>> by source package androidsdk-tools
>>>>>>>> but their current version is 22.2 and one used by plugin is 24.2.0.
>>>> I
>>>>>> have tried using existing libraries but
>>>>>>>> Gradle plugin refers to some of methods that were introduced in
>>>> higher
>>>>>> version. So update is must.
>>>>>>>>
>>>>>>>> androidsdk-tools package is fetching code from two different repo,
>>>>>>>>                              - tools/base
>>>>>>>>                              - tools/swt
>>>>>>>>
>>>>>>>> Kai-Chung and I were thinking instead of updating the package, it
>>>> would
>>>>>> be easier to maintain the package
>>>>>>>> if we create two separate packages for repos tools/base and
>>>> tools/swt
>>>>>> namely android-platform-tools-base
>>>>>>>> and android-platform-tools-build. This will cover all  SDK tools and
>>>>>> Android-Gradle-Plugin, but there will
>>>>>>>> be two source packages for SDK tools.
>>>>>>>>
>>>>>>>> What do you suggest?
>>>>>>>>
>>>>>>>> Komal Sukhani
>>>>>>>> --
>>>>>>>> 殷啟聰 | Kai-Chung Yan
>>>>>>>> 一生只向真理與妻子低頭
>>>>>>>> Full-time student of Providence University of Taiwan
>>>>>>>> LinkedIn: <https://linkedin.com/in/seamlik>
>>>>>>>> Blog: <seamlik.logdown.com>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Android-tools-devel mailing list
>>>>>> Android-tools-devel at lists.alioth.debian.org
>>>>>>
>>>> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/android-tools-devel
>>>>>
>>>>
>>> --
>>>
>>> 殷啟聰 | Kai-Chung Yan
>>> 一生只向真理與妻子低頭
>>> Full-time student of Providence University of Taiwan
>>> LinkedIn: <https://linkedin.com/in/seamlik>
>>> Blog: <seamlik.logdown.com>
>>>
>> --
>>
>> 殷啟聰 | Kai-Chung Yan
>> 一生只向真理與妻子低頭
>> Full-time student of Providence University of Taiwan
>> LinkedIn: <https://linkedin.com/in/seamlik>
>> Blog: <seamlik.logdown.com>
>>
> 



More information about the Android-tools-devel mailing list