Building cupcake for dream

29 views
Skip to first unread message

Jean-Baptiste Queru

unread,
Jul 23, 2009, 1:49:40 AM7/23/09
to android-...@googlegroups.com
I've made some progress to build cupcake for dream.

Steps (I hope I have them right):
sync cupcake (with no local_manifest.xml - all the necessary projects
are now included in the default manifest)
in vendor/htc/dream-open, run ./extract-files.sh
. build/envsetup.sh
lunch htc_dream-eng
make

At the moment, this is only valid for cupcake, I'll replicate the
setup across to donut and master and I'll update the instructions on
the web site as soon as I get a chance.

JBQ

--
Jean-Baptiste M. "JBQ" Queru
Software Engineer, Android Open-Source Project, Google.

Questions sent directly to me that have no reason for being private
will likely get ignored or forwarded to a public forum with no further
warning.

Jean-Baptiste Queru

unread,
Jul 23, 2009, 2:25:14 PM7/23/09
to android-...@googlegroups.com
The change has been propagated to donut and master, and the
instructions have been updated. Let me know if something doesn't work
right.

JBQ

Johan de Koning

unread,
Jul 23, 2009, 4:50:42 PM7/23/09
to android-platform
What do you mean with sync cupcake? From this thread
http://groups.google.com/group/android-platform/browse_thread/thread/4853d33c28abb5f5
I though that the cupcake-release is the branch for the devices. So
what I did when initializing the branch is

repo init -u git://android.git.kernel.org/platform/manifest.git - b
cupcake-release

But this release does get the vendor/htc/dream-open project. So which
branch to use? Should I use cupcake instead? When it is cupcake it is
not the same as told in the other discussion. Hope you can clear this
up.

Thanks for all your help

dan raaka

unread,
Jul 23, 2009, 5:02:13 PM7/23/09
to android-...@googlegroups.com
Dont you need to add
 
adb pull /system/lib/libaudio.so proprietary/libaudio.so
adb pull /system/lib/libcamera.so proprietary/libcamera.so
adb pull /system/lib/librpc.so proprietary/librpc.so
 
to extract-files.sh

-Dan


Jean-Baptiste Queru

unread,
Jul 23, 2009, 5:13:21 PM7/23/09
to android-...@googlegroups.com
With the current setup, short of doing some manual setup, you'll need
to use the "true" cupcake. The differences between cupcake and
cupcake-release won't make any significant difference here.

If you want to do a manual setup, look at the history in
platform/manifest, grab the change I did recently in cupcake, apply it
manually locally on your cupcake-release manifest (and add
revision="cupcake" to both lines that you're adding).

JBQ

On Thu, Jul 23, 2009 at 1:50 PM, Johan de Koning<ikben...@gmail.com> wrote:
>

Johan de Koning

unread,
Jul 23, 2009, 5:13:35 PM7/23/09
to android-platform
I did the repo init and sync again this time with the cupcake branch

repo init -u git://android.git.kernel.org/platform/manifest.git - b
cupcake

This version also contains the vendor/htc/dream-open.

So does this mean that cupcake is for the device? And cupcake-release
for....?

On 23 jul, 22:50, Johan de Koning <ikbennu...@gmail.com> wrote:
> What do you mean with sync cupcake? From this threadhttp://groups.google.com/group/android-platform/browse_thread/thread/...

Johan de Koning

unread,
Jul 23, 2009, 5:17:33 PM7/23/09
to android-platform
BTW kernel.version contains outdated information inside the dream-open
project.

Johan de Koning

unread,
Jul 23, 2009, 5:20:50 PM7/23/09
to android-platform
You are right. Not all the proprietary files are inside the extract-
files.sh script. That means that the AndroidBoard.mk is also not
complete.

I submitted a patch for this some time ago: https://review.source.android.com/Gerrit#change,10501
But this patch also downloads the wlan.ko from the device which is not
needed because it is already part of the dream-open project and can
also be compiled from source.

On 23 jul, 23:02, dan raaka <danra...@gmail.com> wrote:
> Dont you need to add
>
> adb pull /system/lib/libaudio.so proprietary/libaudio.so
> adb pull /system/lib/libcamera.so proprietary/libcamera.so
> adb pull /system/lib/librpc.so proprietary/librpc.so
>
> to extract-files.sh
>
> -Dan
>
> On Thu, Jul 23, 2009 at 1:50 PM, Johan de Koning <ikbennu...@gmail.com>wrote:
>
>
>
>
>
> > What do you mean with sync cupcake? From this thread
>
> >http://groups.google.com/group/android-platform/browse_thread/thread/...

Jean-Baptiste Queru

unread,
Jul 23, 2009, 5:23:47 PM7/23/09
to android-...@googlegroups.com
Cupcake is the "mainline" cupcake codeline, cupcake-release is closer
to what shipped on consumer devices (their current states are close to
SDK-1.5r3 and CRC01, respectively). The difference between them isn't
large.

We recommend that OEMs shipping consumer devices do so from the
cupcake-release branch, but for development purposes you can use
either, and if you want to play with the code on dream right now the
only codelines that are configured out of the box to do so are
cupcake, donut and master. Most probably, future ancillary codelines
will also have that, but for now that's the current setup.

JBQ

Jean-Baptiste Queru

unread,
Jul 23, 2009, 5:28:47 PM7/23/09
to android-...@googlegroups.com
The current setup is hard to maintain, because it doesn't match at all
the tree structure that we use inside Google to build for those
devices.

Bringing those in better sync is on my todo list, but that was not the
point of my manifest shuffling, and it's not going to happen right
away.

JBQ

Johan de Koning

unread,
Jul 23, 2009, 5:29:31 PM7/23/09
to android-platform
Is the SdkSetup package not needed anymore (and is it still inside the
git source tree)?

dan raaka

unread,
Jul 23, 2009, 5:31:32 PM7/23/09
to android-...@googlegroups.com
SdkSetup in the first boot set things up like .. home key confugurations .. which allowed long homekey press .. not sure if it is still needed

-Dan


Johan de Koning

unread,
Jul 23, 2009, 5:35:05 PM7/23/09
to android-platform
The SdkSetup also makes it possible to accept/make calls (don't know
exactly if it was making calls or receiving calls). Some provisioning
flash will be set.

There is new OTAProvisioningClient project which could do probally the
same (looking at the description) but there are no commits inside this
project

On 23 jul, 23:31, dan raaka <danra...@gmail.com> wrote:
> SdkSetup in the first boot set things up like .. home key confugurations ..
> which allowed long homekey press .. not sure if it is still needed
>
> -Dan
>
> On Thu, Jul 23, 2009 at 2:29 PM, Johan de Koning <ikbennu...@gmail.com>wrote:
>
>
>
>
>
> > Is the SdkSetup package not needed anymore (and is it still inside the
> > git source tree)?
>
> > On 23 jul, 23:20, Johan de Koning <ikbennu...@gmail.com> wrote:
> > > You are right. Not all the proprietary files are inside the extract-
> > > files.sh script. That means that the AndroidBoard.mk is also not
> > > complete.
>
> > > I submitted a patch for this some time ago:
> >https://review.source.android.com/Gerrit#change,10501
> > > But this patch also downloads the wlan.ko from the device which is not
> > > needed because it is already part of the dream-open project and can
> > > also be compiled from source.
>
> > > On 23 jul, 23:02, dan raaka <danra...@gmail.com> wrote:
>
> > > > Dont you need to add
>
> > > > adb pull /system/lib/libaudio.so proprietary/libaudio.so
> > > > adb pull /system/lib/libcamera.so proprietary/libcamera.so
> > > > adb pull /system/lib/librpc.so proprietary/librpc.so
>
> > > > to extract-files.sh
>
> > > > -Dan
>
> > > > On Thu, Jul 23, 2009 at 1:50 PM, Johan de Koning <ikbennu...@gmail.com
> > >wrote:
>
> > > > > What do you mean with sync cupcake? From this thread
>
> >http://groups.google.com/group/android-platform/browse_thread/thread/.<http://groups.google.com/group/android-platform/browse_thread/thread/>
> > ..

Jean-Baptiste Queru

unread,
Jul 23, 2009, 5:39:05 PM7/23/09
to android-...@googlegroups.com
That's yet another orthogonal issue. Yeah, that kind of hack is still
needed. I've been wishing to get this fixed just about forever, just
never found time to come up with an acceptable solution.

JBQ

Johan de Koning

unread,
Jul 23, 2009, 5:47:14 PM7/23/09
to android-platform
BTW about the SdkSetup. I was mistaken. It is still part of the
source. Under developmen/apps

Jean-Baptiste Queru

unread,
Jul 23, 2009, 6:33:44 PM7/23/09
to android-...@googlegroups.com
BTW, thanks for all the interest in getting the Android Open-Source
Project to run on Dream. I'm planning to improve the support as time
goes, and the recent manifest change is just a beginning. I'm going to
plug process holes as time goes, and my end goal is get to a state
where it's possible to build an actually usable and fully functional
system image from the open-source tree.

JBQ

dan raaka

unread,
Jul 23, 2009, 6:52:05 PM7/23/09
to android-...@googlegroups.com
hmm .. isn't all public commits to be made against master only ??

-Dan


dan raaka

unread,
Jul 23, 2009, 6:52:52 PM7/23/09
to android-...@googlegroups.com
without any changes ..
 
 
the following build error on cupcake ..
 
 
make: *** No rule to make target `vendor/htc/dream-open/proprietary/libOmxCore.so', needed by `out/target/product/dream-open/obj/lib/libOmxCore.so'.  Stop.
make: *** Waiting for unfinished jobs....
external/neven/FaceRecEm/common/src/b_FDSDK/DCR.c: In function 'btk_DCR_assignImageROI':
external/neven/FaceRecEm/common/src/b_FDSDK/DCR.c:238: warning: signed and unsigned type in conditional expression
external/neven/FaceRecEm/common/src/b_FDSDK/DCR.c:239: warning: signed and unsigned type in conditional expression

-Dan


Jean-Baptiste Queru

unread,
Jul 23, 2009, 7:31:00 PM7/23/09
to android-...@googlegroups.com
In general, given the current process, yes, we (Google) are only
equipped to accept contributions done against master.

vendor/htc/dream-open (formerly known as vendor/htc/dream) was
special, in that it didn't actually exist on Google's internal
servers. That meant that work on it had to happen directly in the
open, so that contributing against any of its branches wasn't
necessarily unreasonable (but it wasn't ideal). It also meant that it
was grossly unmaintained and entirely untested.

I want to get out of that mode and turn Dream into a reliable device
for framework development in the android open-source project.

JBQ

On Thu, Jul 23, 2009 at 3:52 PM, dan raaka<danr...@gmail.com> wrote:

Jean-Baptiste Queru

unread,
Jul 23, 2009, 7:31:13 PM7/23/09
to android-...@googlegroups.com
Did you run extract-files.sh ?

JBQ

dan raaka

unread,
Jul 23, 2009, 7:57:33 PM7/23/09
to android-...@googlegroups.com
well not quite, but I just copied over the files that I had extracted a while ago.
 
my@user-desktop:~/AndroidSources/cupcake$ ls vendor/htc/dream-open/proprietary/
akmd  AudioFilter.csv  AudioPara4.csv  brf6300.bin  Fw1251r1c.bin  gps.conf  libaudioeq.so  libgps.so  libhgl.so  libhtc_ril.so  libqcamera.so  tiwlan.ini
 

-Dan


Jean-Baptiste Queru

unread,
Jul 23, 2009, 8:04:01 PM7/23/09
to android-...@googlegroups.com
Yeah, looks like those were extracted with an older version of the
script (more than 3 months old), going back to the time when
libOmxCore.so wasn't being extracted.

JBQ

dan raaka

unread,
Jul 23, 2009, 8:18:09 PM7/23/09
to android-...@googlegroups.com
I hoping someone will post those missing file for me to download ..!!

-Dan


Jean-Baptiste Queru

unread,
Jul 23, 2009, 8:30:24 PM7/23/09
to android-...@googlegroups.com
Download the latest image from
http://www.htc.com/www/support/android/adp.html (that's 150275), flash
it on your device, and extract the file from there.

JBQ

dan raaka

unread,
Jul 23, 2009, 8:44:18 PM7/23/09
to android-...@googlegroups.com
why flash when there is unyaffs :) ..running build now ..

-Dan


dan raaka

unread,
Jul 24, 2009, 1:27:06 PM7/24/09
to android-...@googlegroups.com
cupcake builds now .. with no errors ..
 
Finding NOTICE files: out/target/product/dream-open/obj/NOTICE_FILES/hash-timestamp
Combining NOTICE files: out/target/product/dream-open/obj/NOTICE.html
gzip -c out/target/product/dream-open/obj/NOTICE.html > out/target/product/dream-open/obj/NOTICE.html.gz
Target system fs image: out/target/product/dream-open/obj/PACKAGING/systemimage_unopt_intermediates/system.img
Install system fs image: out/target/product/dream-open/system.img
Installed file list: out/target/product/dream-open/installed-files.txt
:)

-Dan


The One

unread,
Jul 25, 2009, 7:48:27 AM7/25/09
to android-platform
Is there also a way to build the newest source with kernel 2.6.29 for
dream? The problem is everytime I do this the camera isn't working. I
only see a black screen.

Jean-Baptiste Queru

unread,
Jul 25, 2009, 8:16:16 AM7/25/09
to android-...@googlegroups.com
I don't think that cupcake works with kernel 2.6.29.

Camera issues are most likely to be related to missing proprietary
files - the current dream-open repository is very far from being
complete. That's on my todo list.

JBQ

The One

unread,
Jul 25, 2009, 9:24:46 AM7/25/09
to android-platform
And would it be possible with the current Android 1.5r2 source.
Because there are already some Images with this source and the new
kernel available on internet.

Jean-Baptiste Queru

unread,
Jul 25, 2009, 10:51:51 AM7/25/09
to android-...@googlegroups.com
The different variants of cupcake/1.5 are very close to one another,
too close to make a difference in that area as far as I can tell. I'm
not a kernel guy, though, and you might get some better answers in
that area by reading the archives of the android-kernel group, but I
strongly guess that the conclusion will be "use 2.6.27" when it comes
to contributing to the Android Open-Source Project (note also that
cupcake is closed to external submissions). If you'd like to discuss
and get support for your own experiments, you'll find that the
android-porting group is far more appropriate.

(Someone hinted that the kernel currently in dream-open isn't the
latest and greatest, I'll be looking into that when I get a chance -
it was suggested as well that the kernel should be extracted from the
official ADP1 images).

JBQ

bmfc187

unread,
Jul 26, 2009, 12:05:07 AM7/26/09
to android-platform
Im failing at the "lunch htc_dream-eng" part. Tells me, "bash:
lunch: command not found." i tried to apt-get install lunch, not
found. Any help?

-BMFC

On Jul 23, 12:49 am, Jean-Baptiste Queru <j...@android.com> wrote:
> I've made some progress to build cupcake for dream.
>
> Steps (I hope I have them right):
> sync cupcake (with no local_manifest.xml - all the necessary projects
> are now included in the default manifest)
> in vendor/htc/dream-open, run ./extract-files.sh
> . build/envsetup.sh
> lunch htc_dream-eng
> make
>
> At the moment, this is only valid for cupcake, I'll replicate the
> setup across to donut and master and I'll update the instructions on
> the web site as soon as I get a chance.
>
> JBQ
>

Jean-Baptiste Queru

unread,
Jul 26, 2009, 11:32:01 AM7/26/09
to android-...@googlegroups.com
Did you run ". build/envsetup.sh" ? (notice the leading dot)

JBQ

Chrigi

unread,
Jul 28, 2009, 12:54:31 PM7/28/09
to android-platform
The change, that no local_manifest is needed anymore is great. Thank
you.
But it does not check out any kernel. So you're stuck with the
prebuilt one. Which is, as you mentioned, not as up to date as one
would like when you check out the sources...
If everything Dream (ADP) related is checked out anyway, why no kernel
sources?
Oh and btw. Please make a note on the wiki page "Building for Dream"
that the attached local_manifest is not needed anymore (or delete it)
to keep it as straight forward as possible.

And while I'm already at this point: There are two things which would
be very, very nice if they'd get added to the aforementioned wiki
page:
How to check out the kernel sources and how to build it and the needed
modules.
Some Optimization Options. Source or build time. (As long as there
isn't anything in the documentation - I didn't find anything)

Jean-Baptiste Queru

unread,
Jul 28, 2009, 12:59:49 PM7/28/09
to android-...@googlegroups.com
The kernel is always built independently anyway, so with the android
build system you're using the prebuilt one anyway regardless of
whether you have the kernel sources. With a keen eye you might even
notice that the one that was mentioned in the local manifest was the
wrong version for cupcake (!)

Further questions about the kernel should be asked on the android-kernel list.

Thanks,
JBQ

The One

unread,
Aug 8, 2009, 10:53:59 AM8/8/09
to android-platform
What do I have to do to build the Android 1.5r3 Release for dream,
because the /htc/dream-open/ direcotry isn't added and maybe also
another directories are missing.

Jean-Baptiste Queru

unread,
Aug 8, 2009, 12:03:22 PM8/8/09
to android-...@googlegroups.com
You can probably get away with adding the latest versions of
dream-open and msm7k to your manifest.

JBQ

The One

unread,
Aug 9, 2009, 5:46:21 AM8/9/09
to android-platform
And if I want to recompile the kernel on my own? Do I have to use the
local manifest again?

Jean-Baptiste Queru

unread,
Aug 9, 2009, 8:26:19 AM8/9/09
to android-...@googlegroups.com
The kernel source code lives in its own world and isn't integrated
with the rest of the Android build system. The best way to get to it
is to git clone the kernel repository directly, though it you want to
use a local manifest for it that's gonna work too.

JBQ

On Sun, Aug 9, 2009 at 2:46 AM, The One<m.su...@gmail.com> wrote:
>
> And if I want to recompile the kernel on my own? Do I have to use the
> local manifest again?
> >
>



The One

unread,
Aug 9, 2009, 9:17:26 AM8/9/09
to android-platform
If i run the extract-files script it copies everything right except
AudioPara4.csv.

failed to copy '/system/etc/AudioPara4.csv' to 'proprietary/
AudioPara4.csv': Permission denied

Jean-Baptiste Queru

unread,
Aug 9, 2009, 7:36:20 PM8/9/09