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