[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Android build-tools / prebuild / soong
From: |
Maxim Cournoyer |
Subject: |
Re: Android build-tools / prebuild / soong |
Date: |
Tue, 17 Oct 2017 22:36:03 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
Hello Hartmut!
Hartmut Goebel <address@hidden> writes:
> Hi,
>
> maybe somebody want to work in this puzzle :-)
>
> Last week I played around upgrading the android libs and tools to the
> current release 8.0.0_r17, when I realized that the build-system has
> switched from a Makefile-base to one based on "Android.mk" files. These
> are meant to be processed by a tool called "soong" (with two `o`).
>
> soong is based on "ninja" an "Blueprint". There are no
> build-instructions and no usage examples. So I asked on the
> android-building mailinglist how to build and use soong stand-alone. I
> got the answer that this is not indented but to be build like this
> (fixed by my):
>
> guix environment --ad-hoc repo
> repo init -u https://android.googlesource.com/platform/manifest -b
> build-tools
> repo sync -j32
> mkdir OUT
> OUT_DIR=OUT prebuilts/build-tools/build-prebuilts.sh
>
> So the script in the last line is the key. It looks acceptable, but I
> have no clue about how go programs are build normally. So for me solving
> this puzzle is quite time-consuming and I may not be able to work on it
> for quite some time. Anybody to take over?
Interesting findings! I took a look at those Android.mk files when I
studied our package of adb (in which we are currently using our own
independent makefile instead of the Android.mk), but couldn't make sense
of them.
It seems that Soong is not meant to work with those .mk files though;
its page talks about newer JSON-like "Android.bp" files that supersede
the older make-based Android.mk files[1].
It would be nice to have an Android build system which could take those
already made makefiles and build the packages with them; it would remove
the burden of maintaining our own set and enable packaging more Android
stuff (I have fastboot on my todo).
[1] https://android.googlesource.com/platform/build/soong/