blob: 0acb1eb7475458f0e2f61ed0fb2f1684db120976 [file] [log] [blame]
Building the pdk (platform development kit)
1) get a cupcake source tree with all the normal tools... and add doxygen
(We currently support version 1.4.6)
sudo apt-get install doxygen
Make sure that you are using the right version of java
sudo update-java-alternatives -s java-1.5.0-sun
If that doesn't work, go through the instructions on
http://source.android.com/source/download.html again.
2) from the root
. build/envsetup.sh
4) mkdir dist
mkdir logs
then build everything:
time make -j8 pdk pdk_all dist DIST_DIR=dist 2>&1 | tee logs/`date +%y%m%d-%H%M%S`
so you can have a record of the build commands in the logs directory.
5) the pdk and pndk tar file is put in the dist directory.
6) the pdk-docs are in
out/target/common/docs/online-pdk
--------------------------------------------------------------------------------
# Build Notes
The build target 'pdk' brings in the pdk/pndk make files into the build system.
Then there are three targets:
pdk_docs - which builds just the pdk documentation
pndk - which builds the platform's native development kit (native compiler, linker, etc.)
pdk_all - which builds the above two targets
To change which version of doxygen runs you can pass in the variable:
doxygen_version='<path/name_of_doxygen_executable>'
on the make line.
--------------------------------------------------------------------------------
# Testing
You must install google appengine. See: http://code.google.com/appengine/downloads.html
Here's the command to run the pdk-docs server locally:
python <path_to_appengine_installation>/dev_appserver.py --address 0.0.0.0 \
<path_to_cupcake_code>/android/out/target/common/docs
To verify it is working, you can access it with a browser locally on port 8080:
http://localhost:8080/online-pdk/guide/index.html
NOTE: If you are trying to get to the appengine local testing instance remotely
you will have to ssh tunnel into your linux box as appengine only serves the web
host locally.
On a Windows machine to check your current port forwarding settings:
1. Start putty.
2. Click on your session in the list and hit load (this loads the settings so you can edit them)
3. Go to SSH -> tunnels and look at the Forwarded ports box
L8080 localhost:8080
Means that you can point your webbrowser on your laptop to http://localhost:8080/ and it will show you the same thing as on your workstation for http://localhost:8080/
To add port forwarding
1. Start putty.
2. Click on your session in the list and hit load (this loads the settings so you can edit them)
3. Go to SSH -> tunnels.
4. Pick an unused port on your laptop (8080, 8888, something like that) and put it in the "source port box"
5. In the destination box, put localhost:8888 (replace with the actual port number the service is running on)
6. Hit add.
7. Go back to "Session" and save your new settings so this configuration will happen every time you login.
--------------------------------------------------------------------------------
# Deployment
To host the pdk docs on the internal appengine run:
/home/build/static/projects/apphosting/devtools/appcfg.py update <path_to_cupcake_src>/out/target/common/docs
where the docs directory contains: pdk.py, app.yaml, and the online-pdk directory,
all of which are tarred up by the Pdk.mk file when using the target pdk_docs.
To host the pdk docs on the external appengine run:
/home/build/static/projects/apphosting/devtools/appcfg.py -s pdk-docs.appspot.com update <path_to_cupcake_src>/out/target/common/docs
where the docs directory contains: pdk.py, app.yaml, and the online-pdk directory,
all of which are tarred up by the Pdk.mk file when using the target pdk_docs.