"Building For Dream" 1.5

34 views
Skip to first unread message

Sunghwan

unread,
Jun 3, 2009, 3:56:25 PM6/3/09
to android-platform
Hi,

First of all, my goal is to build my own android 1.5 platform with
some modification, and deploy it on HTC Dream phone, as some other
people already did. ( http://jf.andblogs.net/ ) So, I searched this
group (and others), and it seems that there's no easy way to do that.
Is it correct?

Then I just tried with the kernel version of 2.6.27 while untouching
everything else as in the guild line ( http://source.android.com/documentation/building-for-dream
). It compiled well, but when I flashed out this image to the phone,
it's totally unusable. HOME key doesn't work, and WiFi doesn't either.

Does anyone know how to get around this? More specifically, if anybody
knows how to build and deploy custom image from the android source, I
would appreciate it.

Thanks,
Sunghwan

Nathan Holstein

unread,
Jun 4, 2009, 12:01:03 AM6/4/09
to android-...@googlegroups.com
It is possible to do all this.  The Android build scripts actually do a very good job of giving you a fairly complete system, leaving very little major work to do.  I'm running a completely home-brew system image including a modified kernel and sytem libraries.  The only problem I still have is the TI wlan.ko module: I haven't managed to rebuild this yet, though some information I've received implies it should be simple.  (More info is available in the android-kernel archives.)

For documentation, I'd start with the HTC upgrade documentation available from http://www.htc.com/www/support/android/adp.html  I'd recommend using the fastboot method described there to flash their 1.5 images to the phone, for a couple reasons:
  1. You'll learn how to properly flash the device with a known working image first.
  2. Android on the Dream requires some proprietary libraries to run correctly.  These must be downloaded from a phone, and differ between versions 1.0 (which came on my phone) and 1.5
Not knowing for sure, I'd guess that you either have a mismatched radio image or mismatched proprietary libraries.  I made the mistake of flashing a 1.5 build with 1.0 libs, and various hardware features would not work.

To build the kernel, you'll need to work from an android-msm kernel tree.  Currently I'm running a 2.6.29 based kernel.  The kernel build process itself is standard: set ARCH=arm and CROSS_COMPILE=arm-eabi to build for the right architecture.  I copy the arch/arm/confffigs/msm_defconfig to .config and then run a 'make oldconfig && make'.  Once it's built, add the line:
TARGET_PREBUILT_KERNEL:=kernel/arch/arm/boot/zImage
to your toplevel buildspec.mk (assuming the kernel tree is in the standard location).

So I'd upgrade to the 1.5 images linked above, use the 'vendor/htc/dream/extract-files.sh' script to extract the proprietary files, and then proceed to build the system images.  The final step I perform is to manually create a zip file from these images (this make using fastboot easier).  I use the system image zip from HTC as a reference point to determine whiich images should be in the zip.  I use the following script to automate this, followed by fastboot to flash the zip to the phone.
#!/bin/bash

if [ -z $1 ]; then
    echo "You must specify a zipfile name on the command line"
    exit -1
fi

zip $1 android-info.txt boot.img ramdisk.img ramdisk-recovery.img recovery.img system.img

While this is a fairly convoluted process, it's worked for me (with the wlan.ko exception mentioned above).  The good news is that the radio image and proprietary files only need to be flashed/downloaded once.


   --nathan

Jamie

unread,
Jun 4, 2009, 11:05:10 AM6/4/09
to android-platform
I want to do the same as the OP and run my own custom build of 1.5 on
my HTC Dream developer phone and I'm not sure which branch should I be
using?

So far I have tried master and android-1.5r2 and both have similar
issues to the OP such as no home button working, no ability to lock
the phone etc. I'm not interested in tracking the latest developments
at this stage as I just want a stable release to try out a few of my
own things.

Thanks,

Jamie

Sunghwan Ihm

unread,
Jun 4, 2009, 3:19:00 PM6/4/09
to android-...@googlegroups.com
Thank you for the info, Nathan.

I followed your steps, but I still couldn't make it to work.
Here's what I did. If you could point out any mistake, I would appreciate it.
Or could you please post your configuration more in detail?
(your local_manifest.xml, branch name, etc.)

1. flashed the official radio and system image of version 1.5 from HTC site.
also confirmed it worked perfectly on my HTC dev phone.

2. got the android source.

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

and my local_manifest.xml looks like:

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remove-project name="kernel/common"/>
<project path="kernel" name="kernel/msm"
revision="refs/heads/android-msm-2.6.27"/>
<project path="vendor/htc/dream" name="platform/vendor/htc/dream"
revision="refs/heads/master"/>
<project path="hardware/msm7k" name="platform/hardware/msm7k"
revision="refs/heads/master"/>
</manifest>

then, $ repo sync

3. extracted proprietary binary images from the phone with
vendor/htc/dream/extract-files.sh

4. built kernel for ARM as you suggested.
$ cd mydroid/kernel
$ export ARCH=arm
$ export CROSS_COMPILE=arm-eabi
$ cp arch/arm/config/msm_defconfig .config
$ make oldconfig && make

i also added prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin to path
to find arm-eabi-*

5. now my top level buildspec.mk looks like:

TARGET_PRODUCT:=htc_dream
TARGET_PREBUILT_KERNEL:=kernel/arch/arm/boot/zImage

6. from the top level, $make clean; make
(do i have to undefine ARCH or CROSS_COMPILE here?)

7. zip the image files from out/target/product/dream and flash it to the phone

Thanks,
Sunghwan

Nathan Holstein

unread,
Jun 5, 2009, 3:07:36 AM6/5/09
to android-...@googlegroups.com
Sunghwan & Jamie--

I wish I could be of more help, but it looks like you've followed the same steps I've gone through to build my system image.  Again, I'd stress ensuring you're using matching propietary libraries/radio images, but judging by what Sunghwan posted, he has done that.  If you both have similar issues, then it may be issues with the latest source releases.  That said, my last sync was at least ~2-3 weeks ago: I seem to have hit a stable target, and am going to stick with this codebase.  (Thus I've in no way actually verified the prior statement.)

When running repo init, I specified the revision/branch cupcake, I believe with a command similar to:
repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
Like I said, the last time I did an init/sync this was close to one month ago, the details are hazy.  What I do know is that my manifest.xml file has the entries:
  <remote  name="korg" fetch="git://android.git.kernel.org/" review="review.source.android.com" />
  <default revision="cupcake" remote="korg" />
And my local manifest is:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
 <remove-project name="kernel/common"/>
 <project path="kernel" name="kernel/msm" revision="refs/heads/android-msm-htc-2.6.25"/>
 <project path="vendor/htc/dream" name="platform/vendor/htc/dream"/>
 <project path="hardware/msm7k" name="platform/hardware/msm7k"/>
</manifest> 
Of course, looking at that, I realize the kernel version if completely wrong: I'm more comfortable working with git than repo, thus I've since patched a kernel branched off msm/android-msm-2.6.29.

The last resort I can think of is the give you the exact git commit hashes that I've built from.  Using repo, I can generate this very easily using the command:
repo forall -c 'pwd && git log HEAD~1..HEAD && echo'
which should allow you to precisely match the codebase I'm using.  I've attached this output--note that I've manually edited it to remove references to patches I have locally.  This is the best I can do to set you up with an identical codebase (these patches are targeted at the specific C++/Bluetooth support I require, and shouldn't affect the overall build).  Hopefully this helps.



   --nathan
 
git_heads

Jamie

unread,
Jun 5, 2009, 4:22:45 AM6/5/09
to android-platform
Hi,

I've solved the various issues I was facing by downloading this patch
and applying it over my android-1.5r2 build.

https://review.source.android.com/Gerrit#change,9828

This patch adds additional system files to the extract-files.sh script
and adds them to the build process. Before running the script make
sure you have the official HTC 1.5 software on the phone. The home
button and other missing features are now working fine.

Jamie

Sunghwan

unread,
Jun 5, 2009, 2:20:41 PM6/5/09
to android-platform
Could you tell me what your local_manifest.xml looks like?
I'm getting 'android-1.5r2' branch, but I don't know what kernel
version I have to use.

Thanks,
Sunghwan

Sunghwan Ihm

unread,
Jun 5, 2009, 4:04:51 PM6/5/09
to android-platform
It seems it works fine now. Just for the record, what I did is:

- used "android-1.5r2" branch for repo init
- used kernel version of "android-msm-2.6.27" for local_manifest.xml
- applied patch: https://review.source.android.com/Gerrit#change,9828
then extracted 1.5 proprietary binaries
- added the line
LOCAL_MODULE_TAGS := eng development
to development/apps/SdkSetup/Android.mk
(following Cristina's suggestion from:
http://groups.google.com/group/android-platform/browse_thread/thread/6b4f41c70824638c)
- make and flash.

I don't know if some step is mandatory or not, but I just wanted to
make a record.
I really appreciate Nathan and Jamie's help.

Thanks,
Sunghwan

Johan de Koning

unread,
Jun 5, 2009, 6:07:13 PM6/5/09
to android-platform
I followed the steps and get a build which is working on my phone.
Only i can't receive incoming calls. Is there a fix for this issue?

On Jun 5, 10:04 pm, Sunghwan Ihm <sunghwan....@gmail.com> wrote:
> It seems it works fine now. Just for the record, what I did is:
>
> - used "android-1.5r2" branch for repo init
> - used kernel version of "android-msm-2.6.27" for local_manifest.xml
> - applied patch:https://review.source.android.com/Gerrit#change,9828
>   then extracted 1.5 proprietary binaries
> - added the line
>    LOCAL_MODULE_TAGS := eng development
>   to development/apps/SdkSetup/Android.mk
> (following Cristina's suggestion from:http://groups.google.com/group/android-platform/browse_thread/thread/...)

Johan de Koning

unread,
Jun 6, 2009, 3:52:38 AM6/6/09
to android-platform

I forgot to add
LOCAL_MODULE_TAGS := eng development
to development/apps/SdkSetup/Android.mk which is maybe the problem of
not receiving incoming calls. What is the easiest way to rebuild the
source?

Johan de Koning

unread,
Jun 6, 2009, 8:39:09 AM6/6/09
to android-platform
The build is working fine for me now. I also added the Google apps
(GTalk, Gmail, Youtube and Maps). Only problem with Maps is that it
will not show my location based on cell id. Will try to find a
solution for this.

ttrmkr@gmail

unread,
Jun 6, 2009, 9:38:37 AM6/6/09
to android-...@googlegroups.com
I followed the steps, build completed.
But, Wi-Fi is unable to start.

Can you enable Wi-Fi on your buld kernel?

Thanks,
Hamatani, Tokyo, Japan

Johan de Koning

unread,
Jun 6, 2009, 9:52:25 AM6/6/09
to android-platform
No same problems with Wi-Fi here. The wlan.ko driver is different in
size comparing to the HTC version. Maybe i try to do a rebuild with
the wlan.ko driver which is part of the HTC android 1.5 version

Besides wifi and location based on network it looks like everything is
working.

On Jun 6, 3:38 pm, "ttrmkr@gmail" <ttr...@gmail.com> wrote:
> I followed the steps, build completed.
> But, Wi-Fi is unable to start.
>
> Can you enable Wi-Fi on your buld kernel?
>
> Thanks,
>  Hamatani, Tokyo, Japan
>
> ----- Original Message -----
> From: "Sunghwan Ihm" <sunghwan....@gmail.com>
> To: "android-platform" <android-...@googlegroups.com>
> Sent: Saturday, June 06, 2009 5:04 AM
> Subject: Re: "Building For Dream" 1.5
>
> It seems it works fine now. Just for the record, what I did is:
>
> - used "android-1.5r2" branch for repo init
> - used kernel version of "android-msm-2.6.27" for local_manifest.xml
> - applied patch:https://review.source.android.com/Gerrit#change,9828
>   then extracted 1.5 proprietary binaries
> - added the line
>    LOCAL_MODULE_TAGS := eng development
>   to development/apps/SdkSetup/Android.mk
> (following Cristina's suggestion from:http://groups.google.com/group/android-platform/browse_thread/thread/...)
> - make and flash.
>
> I don't know if some step is mandatory or not, but I just wanted to
> make a record.
> I really appreciate Nathan and Jamie's help.
>
> Thanks,
> Sunghwan
>

Chander Pechetty

unread,
Jun 6, 2009, 5:47:18 AM6/6/09
to android-platform
Are ringtones working for you guys? My incoming has a different
ringtone and settings doesn't allow you to choose the ringtones
anymore.
What else is missing?


Thanks,
Chander
Message has been deleted

Mike Lockwood

unread,
Jun 6, 2009, 2:02:14 PM6/6/09
to android-...@googlegroups.com
You might be able to get the cell ID location working if you copy
NetworkLocation.apk from a production cupcake phone and add it to your
build.

Mike
--
Mike Lockwood
Google android team

deg

unread,
Jun 6, 2009, 6:25:13 PM6/6/09
to android-platform
You need to also extract the ringtones from the proprietary image.
They are all in /system/media/audio.

I use these two script to get the ones that were on my phone (YMMV if
you have a different image) and restore them after a build.

Note that after you replace the files, you need to tickle the DB to
notice them. You can write a short program to do this, but the easiest
approach is just to turn the phone off and back on.

Anyway, here are the two scripts:

# extract-media-files.sh
# ================

#!/bin/sh

mkdir -p proprietary/media/audio/notifications
adb pull /system/media/audio/notifications/Beat_Box_Android.ogg
proprietary/media/audio/notifications/Beat_Box_Android.ogg
adb pull /system/media/audio/notifications/CaffeineSnake.ogg
proprietary/media/audio/notifications/CaffeineSnake.ogg
adb pull /system/media/audio/notifications/TaDa.ogg proprietary/media/
audio/notifications/TaDa.ogg
adb pull /system/media/audio/notifications/DontPanic.ogg proprietary/
media/audio/notifications/DontPanic.ogg
adb pull /system/media/audio/notifications/Tinkerbell.ogg proprietary/
media/audio/notifications/Tinkerbell.ogg
adb pull /system/media/audio/notifications/F1_New_SMS.ogg proprietary/
media/audio/notifications/F1_New_SMS.ogg
adb pull /system/media/audio/notifications/DearDeer.ogg proprietary/
media/audio/notifications/DearDeer.ogg
adb pull /system/media/audio/notifications/KzurbSonar.ogg proprietary/
media/audio/notifications/KzurbSonar.ogg
adb pull /system/media/audio/notifications/OnTheHunt.ogg proprietary/
media/audio/notifications/OnTheHunt.ogg
adb pull /system/media/audio/notifications/F1_New_MMS.ogg proprietary/
media/audio/notifications/F1_New_MMS.ogg
adb pull /system/media/audio/notifications/F1_MissedCall.ogg
proprietary/media/audio/notifications/F1_MissedCall.ogg
adb pull /system/media/audio/notifications/Heaven.ogg proprietary/
media/audio/notifications/Heaven.ogg
adb pull /system/media/audio/notifications/Voila.ogg proprietary/media/
audio/notifications/Voila.ogg
adb pull /system/media/audio/notifications/Highwire.ogg proprietary/
media/audio/notifications/Highwire.ogg

mkdir -p proprietary/media/audio/ui
adb pull /system/media/audio/ui/KeypressDelete.ogg proprietary/media/
audio/ui/KeypressDelete.ogg
adb pull /system/media/audio/ui/KeypressReturn.ogg proprietary/media/
audio/ui/KeypressReturn.ogg
adb pull /system/media/audio/ui/KeypressSpacebar.ogg proprietary/media/
audio/ui/KeypressSpacebar.ogg
adb pull /system/media/audio/ui/VideoRecord.ogg proprietary/media/
audio/ui/VideoRecord.ogg
adb pull /system/media/audio/ui/Effect_Tick.ogg proprietary/media/
audio/ui/Effect_Tick.ogg
adb pull /system/media/audio/ui/KeypressStandard.ogg proprietary/media/
audio/ui/KeypressStandard.ogg
adb pull /system/media/audio/ui/camera_click.ogg proprietary/media/
audio/ui/camera_click.ogg

mkdir -p proprietary/media/audio/ringtones
adb pull /system/media/audio/ringtones/Ring_Classic_02.ogg proprietary/
media/audio/ringtones/Ring_Classic_02.ogg
adb pull /system/media/audio/ringtones/GameOverGuitar.ogg proprietary/
media/audio/ringtones/GameOverGuitar.ogg
adb pull /system/media/audio/ringtones/InsertCoin.ogg proprietary/
media/audio/ringtones/InsertCoin.ogg
adb pull /system/media/audio/ringtones/Ring_Digital_02.ogg proprietary/
media/audio/ringtones/Ring_Digital_02.ogg
adb pull /system/media/audio/ringtones/EtherShake.ogg proprietary/
media/audio/ringtones/EtherShake.ogg
adb pull /system/media/audio/ringtones/MildlyAlarming.ogg proprietary/
media/audio/ringtones/MildlyAlarming.ogg
adb pull /system/media/audio/ringtones/VeryAlarmed.ogg proprietary/
media/audio/ringtones/VeryAlarmed.ogg
adb pull /system/media/audio/ringtones/CaribbeanIce.ogg proprietary/
media/audio/ringtones/CaribbeanIce.ogg
adb pull /system/media/audio/ringtones/Terminated.ogg proprietary/
media/audio/ringtones/Terminated.ogg
adb pull /system/media/audio/ringtones/BeatPlucker.ogg proprietary/
media/audio/ringtones/BeatPlucker.ogg
adb pull /system/media/audio/ringtones/World.ogg proprietary/media/
audio/ringtones/World.ogg
adb pull /system/media/audio/ringtones/SpringyJalopy.ogg proprietary/
media/audio/ringtones/SpringyJalopy.ogg
adb pull /system/media/audio/ringtones/LoveFlute.ogg proprietary/media/
audio/ringtones/LoveFlute.ogg
adb pull /system/media/audio/ringtones/BentleyDubs.ogg proprietary/
media/audio/ringtones/BentleyDubs.ogg
adb pull /system/media/audio/ringtones/Growl.ogg proprietary/media/
audio/ringtones/Growl.ogg
adb pull /system/media/audio/ringtones/LoopyLounge.ogg proprietary/
media/audio/ringtones/LoopyLounge.ogg
adb pull /system/media/audio/ringtones/FriendlyGhost.ogg proprietary/
media/audio/ringtones/FriendlyGhost.ogg
adb pull /system/media/audio/ringtones/Ring_Synth_02.ogg proprietary/
media/audio/ringtones/Ring_Synth_02.ogg
adb pull /system/media/audio/ringtones/BirdLoop.ogg proprietary/media/
audio/ringtones/BirdLoop.ogg
adb pull /system/media/audio/ringtones/OrganDub.ogg proprietary/media/
audio/ringtones/OrganDub.ogg
adb pull /system/media/audio/ringtones/Ring_Synth_04.ogg proprietary/
media/audio/ringtones/Ring_Synth_04.ogg
adb pull /system/media/audio/ringtones/Noises3.ogg proprietary/media/
audio/ringtones/Noises3.ogg
adb pull /system/media/audio/ringtones/TwirlAway.ogg proprietary/media/
audio/ringtones/TwirlAway.ogg
adb pull /system/media/audio/ringtones/CrazyDream.ogg proprietary/
media/audio/ringtones/CrazyDream.ogg
adb pull /system/media/audio/ringtones/MidEvilJaunt.ogg proprietary/
media/audio/ringtones/MidEvilJaunt.ogg
adb pull /system/media/audio/ringtones/Noises1.ogg proprietary/media/
audio/ringtones/Noises1.ogg
adb pull /system/media/audio/ringtones/Noises2.ogg proprietary/media/
audio/ringtones/Noises2.ogg
adb pull /system/media/audio/ringtones/RomancingTheTone.ogg
proprietary/media/audio/ringtones/RomancingTheTone.ogg
adb pull /system/media/audio/ringtones/SitarVsSitar.ogg proprietary/
media/audio/ringtones/SitarVsSitar.ogg
adb pull /system/media/audio/ringtones/NewPlayer.ogg proprietary/media/
audio/ringtones/NewPlayer.ogg
adb pull /system/media/audio/ringtones/CurveBall.ogg proprietary/media/
audio/ringtones/CurveBall.ogg
adb pull /system/media/audio/ringtones/DreamTheme.ogg proprietary/
media/audio/ringtones/DreamTheme.ogg

mkdir -p proprietary/media/audio/alarms
adb pull /system/media/audio/alarms/Alarm_Classic.ogg proprietary/
media/audio/alarms/Alarm_Classic.ogg
adb pull /system/media/audio/alarms/Alarm_Buzzer.ogg proprietary/media/
audio/alarms/Alarm_Buzzer.ogg
adb pull /system/media/audio/alarms/Alarm_Beep_03.ogg proprietary/
media/audio/alarms/Alarm_Beep_03.ogg
adb pull /system/media/audio/alarms/Alarm_Rooster_02.ogg proprietary/
media/audio/alarms/Alarm_Rooster_02.ogg
adb pull /system/media/audio/alarms/Alarm_Beep_02.ogg proprietary/
media/audio/alarms/Alarm_Beep_02.ogg
adb pull /system/media/audio/alarms/Alarm_Beep_01.ogg proprietary/
media/audio/alarms/Alarm_Beep_01.ogg




# replace-media-files.sh
# ================

#!/bin/sh

adb remount
adb shell mkdir /system/media
adb shell mkdir /system/media/audio
adb shell mkdir /system/media/audio/notifications
adb push proprietary/media/audio/notifications/Beat_Box_Android.ogg /
system/media/audio/notifications/Beat_Box_Android.ogg
adb push proprietary/media/audio/notifications/CaffeineSnake.ogg /
system/media/audio/notifications/CaffeineSnake.ogg
adb push proprietary/media/audio/notifications/TaDa.ogg /system/media/
audio/notifications/TaDa.ogg
adb push proprietary/media/audio/notifications/DontPanic.ogg /system/
media/audio/notifications/DontPanic.ogg
adb push proprietary/media/audio/notifications/Tinkerbell.ogg /system/
media/audio/notifications/Tinkerbell.ogg
adb push proprietary/media/audio/notifications/F1_New_SMS.ogg /system/
media/audio/notifications/F1_New_SMS.ogg
adb push proprietary/media/audio/notifications/DearDeer.ogg /system/
media/audio/notifications/DearDeer.ogg
adb push proprietary/media/audio/notifications/KzurbSonar.ogg /system/
media/audio/notifications/KzurbSonar.ogg
adb push proprietary/media/audio/notifications/OnTheHunt.ogg /system/
media/audio/notifications/OnTheHunt.ogg
adb push proprietary/media/audio/notifications/F1_New_MMS.ogg /system/
media/audio/notifications/F1_New_MMS.ogg
adb push proprietary/media/audio/notifications/F1_MissedCall.ogg /
system/media/audio/notifications/F1_MissedCall.ogg
adb push proprietary/media/audio/notifications/Heaven.ogg /system/
media/audio/notifications/Heaven.ogg
adb push proprietary/media/audio/notifications/Voila.ogg /system/media/
audio/notifications/Voila.ogg
adb push proprietary/media/audio/notifications/Highwire.ogg /system/
media/audio/notifications/Highwire.ogg

adb shell mkdir /system/media/audio/ui
adb push proprietary/media/audio/ui/KeypressDelete.ogg /system/media/
audio/ui/KeypressDelete.ogg
adb push proprietary/media/audio/ui/KeypressReturn.ogg /system/media/
audio/ui/KeypressReturn.ogg
adb push proprietary/media/audio/ui/KeypressSpacebar.ogg /system/media/
audio/ui/KeypressSpacebar.ogg
adb push proprietary/media/audio/ui/VideoRecord.ogg /system/media/
audio/ui/VideoRecord.ogg
adb push proprietary/media/audio/ui/Effect_Tick.ogg /system/media/
audio/ui/Effect_Tick.ogg
adb push proprietary/media/audio/ui/KeypressStandard.ogg /system/media/
audio/ui/KeypressStandard.ogg
adb push proprietary/media/audio/ui/camera_click.ogg /system/media/
audio/ui/camera_click.ogg

adb shell mkdir /system/media/audio/ringtones
adb push proprietary/media/audio/ringtones/Ring_Classic_02.ogg /system/
media/audio/ringtones/Ring_Classic_02.ogg
adb push proprietary/media/audio/ringtones/GameOverGuitar.ogg /system/
media/audio/ringtones/GameOverGuitar.ogg
adb push proprietary/media/audio/ringtones/InsertCoin.ogg /system/
media/audio/ringtones/InsertCoin.ogg
adb push proprietary/media/audio/ringtones/Ring_Digital_02.ogg /system/
media/audio/ringtones/Ring_Digital_02.ogg
adb push proprietary/media/audio/ringtones/EtherShake.ogg /system/
media/audio/ringtones/EtherShake.ogg
adb push proprietary/media/audio/ringtones/MildlyAlarming.ogg /system/
media/audio/ringtones/MildlyAlarming.ogg
adb push proprietary/media/audio/ringtones/VeryAlarmed.ogg /system/
media/audio/ringtones/VeryAlarmed.ogg
adb push proprietary/media/audio/ringtones/CaribbeanIce.ogg /system/
media/audio/ringtones/CaribbeanIce.ogg
adb push proprietary/media/audio/ringtones/Terminated.ogg /system/
media/audio/ringtones/Terminated.ogg
adb push proprietary/media/audio/ringtones/BeatPlucker.ogg /system/
media/audio/ringtones/BeatPlucker.ogg
adb push proprietary/media/audio/ringtones/World.ogg /system/media/
audio/ringtones/World.ogg
adb push proprietary/media/audio/ringtones/SpringyJalopy.ogg /system/
media/audio/ringtones/SpringyJalopy.ogg
adb push proprietary/media/audio/ringtones/LoveFlute.ogg /system/media/
audio/ringtones/LoveFlute.ogg
adb push proprietary/media/audio/ringtones/BentleyDubs.ogg /system/
media/audio/ringtones/BentleyDubs.ogg
adb push proprietary/media/audio/ringtones/Growl.ogg /system/media/
audio/ringtones/Growl.ogg
adb push proprietary/media/audio/ringtones/LoopyLounge.ogg /system/
media/audio/ringtones/LoopyLounge.ogg
adb push proprietary/media/audio/ringtones/FriendlyGhost.ogg /system/
media/audio/ringtones/FriendlyGhost.ogg
adb push proprietary/media/audio/ringtones/Ring_Synth_02.ogg /system/
media/audio/ringtones/Ring_Synth_02.ogg
adb push proprietary/media/audio/ringtones/BirdLoop.ogg /system/media/
audio/ringtones/BirdLoop.ogg
adb push proprietary/media/audio/ringtones/OrganDub.ogg /system/media/
audio/ringtones/OrganDub.ogg
adb push proprietary/media/audio/ringtones/Ring_Synth_04.ogg /system/
media/audio/ringtones/Ring_Synth_04.ogg
adb push proprietary/media/audio/ringtones/Noises3.ogg /system/media/
audio/ringtones/Noises3.ogg
adb push proprietary/media/audio/ringtones/TwirlAway.ogg /system/media/
audio/ringtones/TwirlAway.ogg
adb push proprietary/media/audio/ringtones/CrazyDream.ogg /system/
media/audio/ringtones/CrazyDream.ogg
adb push proprietary/media/audio/ringtones/MidEvilJaunt.ogg /system/
media/audio/ringtones/MidEvilJaunt.ogg
adb push proprietary/media/audio/ringtones/Noises1.ogg /system/media/
audio/ringtones/Noises1.ogg
adb push proprietary/media/audio/ringtones/Noises2.ogg /system/media/
audio/ringtones/Noises2.ogg
adb push proprietary/media/audio/ringtones/RomancingTheTone.ogg /
system/media/audio/ringtones/RomancingTheTone.ogg
adb push proprietary/media/audio/ringtones/SitarVsSitar.ogg /system/
media/audio/ringtones/SitarVsSitar.ogg
adb push proprietary/media/audio/ringtones/NewPlayer.ogg /system/media/
audio/ringtones/NewPlayer.ogg
adb push proprietary/media/audio/ringtones/CurveBall.ogg /system/media/
audio/ringtones/CurveBall.ogg
adb push proprietary/media/audio/ringtones/DreamTheme.ogg /system/
media/audio/ringtones/DreamTheme.ogg

adb shell mkdir /system/media/audio/alarms
adb push proprietary/media/audio/alarms/Alarm_Classic.ogg /system/
media/audio/alarms/Alarm_Classic.ogg
adb push proprietary/media/audio/alarms/Alarm_Buzzer.ogg /system/media/
audio/alarms/Alarm_Buzzer.ogg
adb push proprietary/media/audio/alarms/Alarm_Beep_03.ogg /system/
media/audio/alarms/Alarm_Beep_03.ogg
adb push proprietary/media/audio/alarms/Alarm_Rooster_02.ogg /system/
media/audio/alarms/Alarm_Rooster_02.ogg
adb push proprietary/media/audio/alarms/Alarm_Beep_02.ogg /system/
media/audio/alarms/Alarm_Beep_02.ogg
adb push proprietary/media/audio/alarms/Alarm_Beep_01.ogg /system/
media/audio/alarms/Alarm_Beep_01.ogg




Good luck,
David

Chander Pechetty

unread,
Jun 6, 2009, 11:18:08 PM6/6/09
to android-platform
Thanks David for posting the script!!!
read somewhere that the same problem is there for the Donut build as
well...sigh

Chander Pechetty

unread,
Jun 7, 2009, 3:23:18 AM6/7/09
to android-platform
Got several errors while running the above script which fixes missing
ringtones issue, though the files seem to have been copied.
So I just did some more digging and just updated core.mk to include a
line at the end.

$(call inherit-product, frameworks/base/data/sounds/OriginalAudio.mk)
and it fixed the ringtone issue for good.

There are several apk's still missing from the build.
-- Replaced the call to generic.mk with generic_with_google.mk in the
file htc_dream.mk under vendor/htc/dream/proprietory
------- $(call inherit-product, build/target/product/
generic_with_google.mk)

This doesn't work as the google files are not under "vendor" for
obvious reasons.




Chander Pechetty

unread,
Jun 7, 2009, 11:32:49 PM6/7/09
to android-platform
Attached are the two scripts if it helps anyone.

#extract-apks.sh - extracts all missing apks
# ================

#!/bin/sh


mkdir -p app
cd app
adb pull /system/app/Calculator.apk ./
adb pull /system/app/checkin.apk ./
adb pull /system/app/DebugTool.apk ./
adb pull /system/app/Email.apk ./
adb pull /system/app/Ftp.apk ./
adb pull /system/app/FieldTest.apk ./
adb pull /system/app/GmailProvider.apk ./
adb pull /system/app/GoogleApps.apk ./
adb pull /system/app/GooglePartnerSetup.apk ./
adb pull /system/app/GoogleSubscribedFeedsProvider.apk ./
adb pull /system/app/GoogleContactsProvider.apk ./
adb pull /system/app/Gmail.apk ./
adb pull /system/app/gtalkservice.apk ./
adb pull /system/app/GoogleSettingsProvider.apk ./
adb pull /system/app/HtcLog.apk ./
adb pull /system/app/ImProvider.apk ./
adb pull /system/app/MediaUploader.apk ./
adb pull /system/app/Maps.apk ./
adb pull /system/app/NetworkLocation.apk ./
adb pull /system/app/QxdmLog.apk ./
adb pull /system/app/SystemUpdater.apk ./
adb pull /system/app/SetupWizard.apk ./
adb pull /system/app/Street.apk ./
adb pull /system/app/Talk.apk ./
adb pull /system/app/Vending.apk ./
adb pull /system/app/VoiceDialer.apk ./
adb pull /system/app/VoiceSearch.apk ./
adb pull /system/app/YouTube.apk ./
cd ../

2. replaces all the missing apks
#replace-apks.sh - replace all missing apks
# ================

#!/bin/sh
adb remount
adb push app /system/app


-Chander

Chander Pechetty

unread,
Jun 7, 2009, 11:32:59 PM6/7/09
to android-platform
Attached are the two scripts if it helps anyone.

#extract-apks.sh - extracts all missing apks
# ================

#!/bin/sh

# ================

#!/bin/sh
adb remount
adb push app /system/app


-Chander

Chander Pechetty

unread,
Jun 7, 2009, 11:44:14 PM6/7/09
to android-platform
Attached are the two scripts if it helps anyone.

#extract-apks.sh - extracts all missing apks
# ================

#!/bin/sh

# ================

#!/bin/sh
adb remount
adb push app /system/app


-Chander

Johan de Koning

unread,
Jun 8, 2009, 12:43:34 AM6/8/09
to android-platform
Found out that the notification light is also not working. When
receiving an email there is no green flashing led.

Comparing to the official htc image, i found a file called
lights.msm7k.so inside /system/lib/hw. So that one should be added to
our own build (but will it also be used?)

Johan de Koning

unread,
Jun 8, 2009, 1:40:31 AM6/8/09
to android-platform
FYI I am writing down the steps which I have taken to perform a (in my
opinion stable) 1.5 build. First two parts can be found at

http://www.johandekoning.nl/index.php/2009/06/07/building-android-15-build-environment/
- This is for setting up Ubuntu 8.04
http://www.johandekoning.nl/index.php/2009/06/07/building-android-15-getting-the-source/
- This is for getting the source from Git and make changes for dream

There will be more post coming: building the source, flashing the
device, adding Google applications (and media files), and an overview
of the issues (wlan, led light) which are stil there

Johan de Koning

unread,
Jun 8, 2009, 2:36:08 PM6/8/09
to android-platform
Third part (building the source):
http://www.johandekoning.nl/index.php/2009/06/08/building-android-15-building-the-source/

On 8 jun, 07:40, Johan de Koning <ikbennu...@gmail.com> wrote:
> FYI I am writing down the steps which I have taken to perform a (in my
> opinion stable) 1.5 build. First two parts can be found at
>
> http://www.johandekoning.nl/index.php/2009/06/07/building-android-15-...
> - This is for setting up Ubuntu 8.04http://www.johandekoning.nl/index.php/2009/06/07/building-android-15-...

Johan de Koning

unread,
Jun 8, 2009, 5:18:33 PM6/8/09
to android-platform
Looks like wifi is working if you use the wlan.ko from the official
htc image and place it in the vendor/htc/dream directory (override the
old one). I will try some tests more

On 8 jun, 20:36, Johan de Koning <ikbennu...@gmail.com> wrote:
> Third part (building the source):http://www.johandekoning.nl/index.php/2009/06/08/building-android-15-...

ttrmkr@gmail

unread,
Jun 9, 2009, 2:48:12 AM6/9/09
to android-...@googlegroups.com
Hello Koning,

Great job!
I did almost same thing and replace wlan.ko, so I can run Android-1.5r2 and
Wi-Fi is working.
But Maps App does not appear.
"adb install Maps.apk" failed with "Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY].

Do you have any idea to accomplish this?

Thanks,
Hamatani, Tokyo, Japan

----- Original Message -----
From: "Johan de Koning" <ikben...@gmail.com>
To: "android-platform" <android-...@googlegroups.com>
Sent: Tuesday, June 09, 2009 3:36 AM
Subject: Re: "Building For Dream" 1.5


>

Johan de Koning

unread,
Jun 9, 2009, 2:43:03 PM6/9/09
to android-platform
To get Maps working you need to install more. Besides the Maps.apk you
should add com.google.android.maps.jar to the framework directory and
com.google.android.maps.xml to the etc\permissions folder.

On 9 jun, 08:48, "ttrmkr@gmail" <ttr...@gmail.com> wrote:
> Hello Koning,
>
> Great job!
> I did almost same thing and replace wlan.ko, so I can run Android-1.5r2 and
> Wi-Fi is working.
> But Maps App does not appear.
> "adb install Maps.apk" failed with "Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY].
>
> Do you have any idea to accomplish this?
>
> Thanks,
>  Hamatani, Tokyo, Japan
>
>
>
> ----- Original Message -----
> From: "Johan de Koning" <ikbennu...@gmail.com>
> To: "android-platform" <android-...@googlegroups.com>
> Sent: Tuesday, June 09, 2009 3:36 AM
> Subject: Re: "Building For Dream" 1.5
>
> > Third part (building the source):
> >http://www.johandekoning.nl/index.php/2009/06/08/building-android-15-...
Message has been deleted

Jamie

unread,
Jun 11, 2009, 5:30:28 AM6/11/09
to android-platform
I've just been playing around with my 1.5 build and all seems to be
going well except that whenever I make an outgoing call the sound
comes out of the speaker and toggling the speaker setting on the
dialer app doesn't make any difference. I have also noticed that the
volume buttons (on the side) do not seem to work. Does anyone else
experience this with their 1.5 builds?

Jamie

unread,
Jun 11, 2009, 10:22:50 AM6/11/09
to android-platform
Oops, Please ignore this. Just found a line of code that I had
commented out a while ago while I was "playing" (and forgot to re-
instate).

Johan de Koning

unread,
Jun 15, 2009, 6:54:26 AM6/15/09
to android-platform
I run my build for a week now and it is working fine. Only determining
the location by the network is not working even after adding the
NetworkLocation.apk package.

The LocationManager gives an exception that the network provider is
not available. Looks like there is a difference between the
locationmanager and the (closed source) NetworkLocation package from
the HTC official image.

Why is there no source available for the NetworkLocation package? And
how to fix this issue (any ideas?)
> > experience this with their 1.5 builds?- Tekst uit oorspronkelijk bericht niet weergeven -
>
> - Tekst uit oorspronkelijk bericht weergeven -

Mike Lockwood

unread,
Jun 15, 2009, 9:22:09 AM6/15/09
to android-...@googlegroups.com
On Mon, Jun 15, 2009 at 6:54 AM, Johan de Koning<ikben...@gmail.com> wrote:
>
> I run my build for a week now and it is working fine. Only determining
> the location by the network is not working even after adding the
> NetworkLocation.apk package.
>
> The LocationManager gives an exception that the network provider is
> not available. Looks like there is a difference between the
> locationmanager and the (closed source) NetworkLocation package from
> the HTC official image.

There are a few reasons this might be happening:

1) You have a version mismatch (for example, trying to use the cupcake
version of NetworkLocation.apk with donut). The location manager
internals have changed a lot between cupcake and donut and the two
versions are not compatible.

2) NetworkLocation.apk needs to be in the system partition

3) There might be a signature mismatch. In cupcake, NetworkLocation
must be signed with the platform certificate, which might be different
from your build and the phone you pulled NetworkLocation.apk.

> Why is there no source available for the NetworkLocation package? And
> how to fix this issue (any ideas?)

Since the network location provider sends your location to our
servers, we (Google) feel it is important to make sure the user is
made aware of this and has a chance to opt out. There was some
concern that someone might inadvertently ship a phone that includes
the network location service without notifying the user, displaying
the appropriate policy privacy, etc. We are still making the network
location provider available to our partners, but it has been removed
from the core android release to avoid these problems.

Mike


>
> On 11 jun, 16:22, Jamie <jamie.higg...@gmail.com> wrote:
>> Oops, Please ignore this. Just found a line of code that I had
>> commented out a while ago while I was "playing" (and forgot to re-
>> instate).
>>
>> On 11 June, 10:30, Jamie <jamie.higg...@gmail.com> wrote:
>>
>>
>>
>> > I've just been playing around with my 1.5 build and all seems to be
>> > going well except that whenever I make an outgoing call the sound
>> > comes out of the speaker and toggling the speaker setting on the
>> > dialer app doesn't make any difference. I have also noticed that the
>> > volume buttons (on the side) do not seem to work. Does anyone else
>> > experience this with their 1.5 builds?- Tekst uit oorspronkelijk bericht niet weergeven -
>>
>> - Tekst uit oorspronkelijk bericht weergeven -
> >
>



Johan de Koning

unread,
Jun 23, 2009, 5:07:30 AM6/23/09
to android-platform
Today I submitted a patch for the extract-files.sh and
AndroidBoard.mk. The 9828 patch does not include all the proprietary
files which should be extracted from a ADP device. More details at

https://review.source.android.com/Gerrit#change,10485

On 15 jun, 15:22, Mike Lockwood <lockw...@android.com> wrote:
> Google android team- Tekst uit oorspronkelijk bericht niet weergeven -

Johan de Koning

unread,
Jul 12, 2009, 3:48:52 AM7/12/09
to android-platform
Today I got the NetworkLocation package working. I found out when
looking at the build.prop file of the HTC system image that there was
an additional build option called

ro.com.google.locationfeatures=1

This option was not in my own build. So I changed the htc_dream.mk
file and add

PRODUCT_PROPERTY_OVERRIDES := \
ro.com.google.locationfeatures=1

to make this setting part of my own build.

So now is everything working.

One question from my side. When I remove for example a package from
the build script and run make again, the package will be still part of
my build. How to solve this? Should i remove the specific package also
from the out directory (because it only happen to packages which are
already compiled in a previous build)?

Johan de Koning

unread,
Jul 12, 2009, 7:50:02 AM7/12/09
to android-platform
Just wanted to let you know that I finished today my last blog about
Building Android 1.5 for the HTC Dream. You can find the different
blogpost at

http://www.johandekoning.nl/index.php/2009/06/07/building-android-15-build-environment/
- Building Android 1.5 - Build environment
http://www.johandekoning.nl/index.php/2009/06/07/building-android-15-getting-the-source/
- Building Android 1.5 - Getting the source
http://www.johandekoning.nl/index.php/2009/06/08/building-android-15-building-the-source/
- Building Android 1.5 - Building the source
http://www.johandekoning.nl/index.php/2009/07/03/building-android-1-5-flashing-the-phone/
- Building Android 1.5 - Flashing the phone
http://www.johandekoning.nl/index.php/2009/07/12/building-android-1-5-google-apps-and-audio-files/
- Building Android 1.5 - Google Apps and audio files
Reply all
Reply to author
Forward
0 new messages