104 lines
3.6 KiB
Plaintext
104 lines
3.6 KiB
Plaintext
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.
|
|
|
|
|