Building the HTC Dream Platform

From Android Wiki

(Difference between revisions)
Jump to: navigation, searcha
(New page: To build your own version of the Open Source HTC Dream platform to run in an emulator, or to do other things with, you must first get the source. [http://...)
(the msm7k is updated now so it will build without changes when you add it to your manifests)
Line 9: Line 9:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <manifest>
  <manifest>
-
  <!-- this is commented out because it's breaking
+
  <!-- this is needed to build libaudio and librpc - as google adds more open
-
      the build for now. In the future, it will build
+
source pieces, this may also replace other things that are currently
-
      various open-source pieces needed for the HTC dream
+
copied out of the prorprietary files on the G1
  -->
  -->
-
  <!-- <project path="hardware/msm7k"
+
  <project path="hardware/msm7k"
   name="platform/hardware/msm7k"
   name="platform/hardware/msm7k"
-
  /> -->
+
  />
  <project path="vendor/htc/dream"
  <project path="vendor/htc/dream"
   name="platform/vendor/htc/dream"
   name="platform/vendor/htc/dream"
Line 27: Line 27:
Once you have synced your repo, you should see a directory structure called 'vendor/htc/dream'
Once you have synced your repo, you should see a directory structure called 'vendor/htc/dream'
-
 
-
You will have to go into the dream directory, and run the "extract files" shell script once you add these two lines to it to get stuff that is not present in the dream, and the msm7k doesn't build properly yet.
 
-
<pre>
 
-
adb pull /system/lib/libaudio.so proprietary/libaudio.so
 
-
adb pull /system/lib/librpc.so proprietary/librpc.so
 
-
</pre>
 
-
 
-
cd vendor/htc/dream/
 
-
./extract_files.sh
 
-
 
-
You will also want to edit the Android.mk file to contain references to copy those two files over:
 
-
<pre>
 
-
PRODUCT_COPY_FILES += \
 
-
$(proprietary)/libhtc_ril.so:system/lib/libhtc_ril.so \
 
-
$(proprietary)/libaudioeq.so:system/lib/libaudioeq.so \
 
-
        $(proprietary)/libaudio.so:system/lib/libaudio.so \
 
-
        $(proprietary)/librpc.so:system/lib/librpc.so \
 
-
$(proprietary)/akmd:system/bin/akmd \
 
-
$(proprietary)/AudioFilter.csv:system/etc/AudioFilter.csv
 
-
</pre>
 
Once this is done, you can edit the file in the mydroid/buildspec.mk to tell it to have TARGET_PRODUCT=htc_dream  - or you can run make in this way:
Once this is done, you can edit the file in the mydroid/buildspec.mk to tell it to have TARGET_PRODUCT=htc_dream  - or you can run make in this way:

Revision as of 20:55, 10 November 2008

To build your own version of the Open Source HTC Dream platform to run in an emulator, or to do other things with, you must first get the source.

Download the Android Source and follow Google's instructions for your platform, with a few additional notes:

  • If you are on a Mac, you can use a case-sensitive disk image instead of reformatting a partition.

Once you have downloaded the entire git tree (it's huge. Go make Mario noises on your phone or something while you wait) - you will need to add the following to a local_manifests.xml file inside the 'mydroid/.repo/' directory:

 <?xml version="1.0" encoding="UTF-8"?>
 <manifest>
 <!-- this is needed to build libaudio and librpc - as google adds more open 
source pieces, this may also replace other things that are currently
copied out of the prorprietary files on the G1
 -->
 <project path="hardware/msm7k"
   name="platform/hardware/msm7k"
 />
 <project path="vendor/htc/dream"
   name="platform/vendor/htc/dream"
 /> 
 </manifest>

Once you have put that file in place, you need to update your repo again:

repo sync

Once you have synced your repo, you should see a directory structure called 'vendor/htc/dream'

Once this is done, you can edit the file in the mydroid/buildspec.mk to tell it to have TARGET_PRODUCT=htc_dream - or you can run make in this way:

make TARGET_PRODUCT=htc_dream 

Once the build is complete, you will have an open-source build.

Please update this page to include any additional information you need to build on your system

Personal tools