blob: 18ff5d120313e1b56400d58430c7ed596c30964e [file] [log] [blame]
The Android Open Source Project52d4c302009-03-03 19:29:09 -08001Building the pdk (platform development kit)
2
The Android Open Source Project6ffae012009-03-18 17:39:43 -070031) 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
Mike Ritterdfa54942009-04-01 17:30:12 -07007
8Make sure that you are using the right version of java
9
10 sudo update-java-alternatives -s java-1.5.0-sun
11
12If that doesn't work, go through the instructions on
13
14 http://source.android.com/download again.
15
The Android Open Source Project52d4c302009-03-03 19:29:09 -080016
172) from the root
18 . build/envsetup.sh
19
The Android Open Source Project52d4c302009-03-03 19:29:09 -080020
214) mkdir dist
22 mkdir logs
Mike Ritterdfa54942009-04-01 17:30:12 -070023
24then build everything:
The Android Open Source Project52d4c302009-03-03 19:29:09 -080025
Mike Ritterdfa54942009-04-01 17:30:12 -070026 time make -j4 pdk pdk_all dist DIST_DIR=dist 2>&1 | tee logs/`date +%y%m%d-%H%M%S`
The Android Open Source Project52d4c302009-03-03 19:29:09 -080027
Mike Ritterdfa54942009-04-01 17:30:12 -070028so you can have a record of the build commands in the logs directory.
The Android Open Source Project52d4c302009-03-03 19:29:09 -080029
The Android Open Source Project52d4c302009-03-03 19:29:09 -080030
315) the pdk tar file is put in the dist directory.
32
Mike Ritterdfa54942009-04-01 17:30:12 -0700336) the pdk-docs are in
34
35 out/target
36
The Android Open Source Project52d4c302009-03-03 19:29:09 -080037
38The build target 'pdk' brings in the pdk/ndk make files into the build system.
Mike Ritterdfa54942009-04-01 17:30:12 -070039 Then there are three targets:
40 pdk_docs - which builds just the pdk documentation
41 ndk - which builds the native development kit (native compiler, linker, etc.)
42 pdk_all - which builds the above two targets
The Android Open Source Project52d4c302009-03-03 19:29:09 -080043
Mike Ritterdfa54942009-04-01 17:30:12 -070044To chnage which version of doxygen runs you can pass in the variable:
45 doxygen_version='<path/name_of_doxygen_executable>'
The Android Open Source Project52d4c302009-03-03 19:29:09 -080046on the make line.
47
48--------------------------------------------------------------------------------
Mike Ritterdfa54942009-04-01 17:30:12 -070049# Testing
50You must install google appengine. See: http://code.google.com/appengine/downloads.html
51
52Here's the command to run the pdk-docs server locally:
53 python <path_to_appengine_installation>/dev_appserver.py --address 0.0.0.0 \
54 <path_to_cupcake_code>/android/out/target/common/docs/online-pdk
55
56To verify it is working you can access it with a browser loacally on port 8080:
57
58http://localhost:8080/index.html
59TODO: index.html needs correct links.
60TODO: app.yaml not working for redirecting, getting extra '.' in html names...
61
62 --------------------------------------------------------------------------------
63# Deployment
64To host the pdk docs on the interanl appengine run:
65/home/build/static/projects/apphosting/devtools/appcfg.py update <path_to_cupcake_src>/out/common/docs
66where the docs directory contains: pdk.py, app.yaml, and the online-pdk directory,
67all of which are tarred up by the Pdk.mk file when using the target pdk_docs.
68
69# Deployment
70To host the pdk docs on the external appengine run:
71/home/build/static/projects/apphosting/devtools/appcfg.py -s pdk-docs.appspot.com update <path_to_cupcake_src>/out/common/docs
72where the docs directory contains: pdk.py, app.yaml, and the online-pdk directory,
73all of which are tarred up by the Pdk.mk file when using the target pdk_docs.
74
75