The Android Open Source Project | 52d4c30 | 2009-03-03 19:29:09 -0800 | [diff] [blame] | 1 | Building the pdk (platform development kit) |
| 2 | |
The Android Open Source Project | 6ffae01 | 2009-03-18 17:39:43 -0700 | [diff] [blame] | 3 | 1) get a cupcake source tree with all the normal tools... and add doxygen |
| 4 | (We currently support version 1.4.6) |
| 5 | |
| 6 | sudo apt-get install doxygen |
The Android Open Source Project | 52d4c30 | 2009-03-03 19:29:09 -0800 | [diff] [blame] | 7 | |
| 8 | 2) from the root |
| 9 | . build/envsetup.sh |
| 10 | |
| 11 | 3) run choosecombo |
| 12 | Build for the simulator or the device? |
| 13 | 1. Device |
| 14 | 2. Simulator |
| 15 | |
| 16 | Which would you like? [1] 1 |
| 17 | |
| 18 | |
| 19 | Build type choices are: |
| 20 | 1. release |
| 21 | 2. debug |
| 22 | |
| 23 | Which would you like? [1] 1 |
| 24 | |
| 25 | |
| 26 | Product choices are: |
| 27 | 0. emulator |
| 28 | 1. generic |
| 29 | 2. sim |
| 30 | 3. surf |
| 31 | You can also type the name of a product if you know it. |
| 32 | Which would you like? [generic] 1 |
| 33 | |
| 34 | |
| 35 | Variant choices are: |
| 36 | 1. user |
| 37 | 2. userdebug |
| 38 | 3. eng |
| 39 | Which would you like? [eng] 3 |
| 40 | |
| 41 | ============================================ |
| 42 | TARGET_PRODUCT=generic |
| 43 | TARGET_BUILD_VARIANT=eng |
| 44 | TARGET_SIMULATOR=false |
| 45 | TARGET_BUILD_TYPE=release |
| 46 | TARGET_ARCH=arm |
| 47 | HOST_ARCH=x86 |
| 48 | HOST_OS=linux |
| 49 | HOST_BUILD_TYPE=release |
| 50 | BUILD_ID= |
| 51 | ============================================ |
| 52 | |
| 53 | 4) mkdir dist |
| 54 | mkdir logs |
| 55 | mkpdkcupcake.sh |
| 56 | |
| 57 | (which contains: |
| 58 | |
| 59 | DT=`date +%y%m%d-%H%M%S` |
| 60 | time make -j4 pdk pdk_all dist DIST_DIR=dist 2>&1 | tee logs/$DT |
| 61 | |
| 62 | so you can see the results of the build in the logs directory.) |
| 63 | |
| 64 | 5) the pdk tar file is put in the dist directory. |
| 65 | |
| 66 | |
| 67 | The build target 'pdk' brings in the pdk/ndk make files into the build system. |
| 68 | Then there are three targets: |
| 69 | pdk_docs - which builds the pdk documentation |
| 70 | ndk - which builds the native development kit (native compiler, linker, etc.) |
| 71 | pdk_all - which builds the above two targets |
| 72 | |
| 73 | for doxygen version changing you can pass in the variable: |
| 74 | doxygen_version='<path/name_of_doxygen_executable>' |
| 75 | on the make line. |
| 76 | |
| 77 | -------------------------------------------------------------------------------- |
| 78 | To host the pdk docs on appengine run: |
| 79 | /home/build/static/projects/apphosting/devtools/appcfg.py update pdk/ |
| 80 | where the pdk directory contains: pdk.py, app.yaml, and the docs directory, |
| 81 | all of which are tarred up by the Pdk.mk file when using the targer pdk_docs. |