diff options
| author | Robert Ly <robertly@google.com> | 2013-06-13 15:43:53 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2013-06-13 15:43:53 -0700 |
| commit | 72a09286dfdf83fe1559410c1a5e5be502e283a6 (patch) | |
| tree | a8fa61b7466fdc6b6f51db45e04d3695772713d3 /docs | |
| parent | 532fc97091883b5f04fd746f5bfbb8f9ad12fa15 (diff) | |
| parent | c3034939315336e91d295cc2dc02e669fef45296 (diff) | |
| download | android_development-72a09286dfdf83fe1559410c1a5e5be502e283a6.tar.gz android_development-72a09286dfdf83fe1559410c1a5e5be502e283a6.tar.bz2 android_development-72a09286dfdf83fe1559410c1a5e5be502e283a6.zip | |
am c3034939: am ecd39491: am c3e7bbaf: am 128c2f02: am 2deefec4: make target for gms and gcm javadocs and to automate entire docs build
* commit 'c3034939315336e91d295cc2dc02e669fef45296':
make target for gms and gcm javadocs and to automate entire docs build
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/Android.mk | 141 |
1 files changed, 141 insertions, 0 deletions
diff --git a/docs/Android.mk b/docs/Android.mk new file mode 100644 index 000000000..586b97083 --- /dev/null +++ b/docs/Android.mk @@ -0,0 +1,141 @@ +# This makefile builds the online developer site, gms javadocs, and gcm javadocs. +# It does the following things, which should be ran in order: +# +# 1. Builds the GMS Javadocs from the directory specified by GMS_CORE_PATH. (online-gms-ref-docs) +# 2. Renames, deletes and modifies files to clean the GMS Core build up (setup-gms-ref) +# 3. Builds the GCM Javadocs from vendor/unbundled_google/libs/gcm (online-gcm-ref-docs) +# 4. Renames, deletes, and modifies files to clean the GCM build up (setup-gcm-ref) +# 5. Builds the developer site with 'make online-sdk-docs' (online-sdk-docs) +# 6. Merges the GMS, GCM, and developer site together in out/target/common/docs/online-sdk +# for staging (stage-gms-ref, stage-gcm-ref) +# +# Note: You can run all the targets individually or call 'make all-docs' + +# If the staging server looks good: +# 1. Run 'make add-gms-ref add-gcm-ref' to copy the appropriate files to the right locations. +# This copies the GCM and GMS output from their respective out/target/common/docs dirs +# to frameworks/base/docs/html/reference of the branch you ran this in. +# 2. Run 'repo status' in frameworks/base to see all the modified files +# 3. Run 'git add' and 'git commit' as normal. + +####################### GCM Javadocs ######################## + +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) +GMS_CORE_PATH:=../froyo-ub-gcore-cheddar-release +GMS_LOCAL_MODULE:=google-play-services-dac +GCM_LOCAL_MODULE:=online-gcm-ref +GCM_PATH=../../vendor/unbundled_google/libs/gcm + +LOCAL_MODULE_CLASS=DOCS +gcm_docs_src_files += \ + $(call all-java-files-under, $(GCM_PATH)/gcm-client/src) \ + $(call all-java-files-under, $(GCM_PATH)/gcm-server/src) +LOCAL_SRC_FILES := $(gcm_docs_src_files) +LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk +LOCAL_MODULE := online-gcm-ref +LOCAL_DROIDDOC_OPTIONS:= \ + -toroot / \ + -gcmref \ + -hdf android.whichdoc online \ + +include $(BUILD_DROIDDOC) + +.PHONY: build-stage-docs online-gms-ref-docs setup-gms-ref online-gcm-ref-docs setup-gcm-ref online-sdk-docs stage-gms-ref stage-gcm-ref + +clean-all: +# Deletes the previous GCM Javadoc build + $(hide) rm -rf $(GCM_PATH)/$(OUT_DOCS)/$(GCM_LOCAL_MODULE) + $(hide) rm -f $(GCM_PATH)/$(OUT_DOCS)/$(GCM_LOCAL_MODULE)-timestamp +# Deletes the previous GMS Core Javadoc build + $(hide) rm -rf $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE) + $(hide) rm -f $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)-timestamp +# Deletes the previous online-sdk build + $(hide) rm -rf $(OUT_DOCS)/online-sdk + $(hide) rm -f $(OUT_DOCS)/online-sdk-timestamp + + +# Cleanup the GCM build output +setup-gcm-ref: + $(hide) rm -f $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/timestamp.js \ + $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference/hierarchy.html \ + $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference/classes.html \ + $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference/package-list \ + $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference/index.html + + $(hide) sed 's/DATA/GCM_DATA/' $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference/lists.js > \ + $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference/gcm_lists.js + $(hide) rm -f $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference/lists.js + +# Copies the output of the GCM build to the online-sdk out directory to view +# in staging +stage-gcm-ref: + $(hide) cp -R $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference \ + $(OUT_DOCS)/online-sdk + + $(hide) cp $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/gcm_navtree_data.js \ + $(OUT_DOCS)/online-sdk/gcm_navtree_data.js + +# Copies the output of the GCM build to the appropriate location in the repo +# for checking into Git +add-gcm-ref: + $(hide) cp -R $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/reference \ + frameworks/base/docs/html + + $(hide) cp $(OUT_DOCS)/$(GCM_LOCAL_MODULE)/gcm_navtree_data.js \ + frameworks/base/docs/html/gcm_navtree_data.js + +####################### GMS Javadocs ######################## + +# Build the GMS Core Javadocs +online-gms-ref-docs: +# Copies the google_toc.cs to the GMS core branch so the javadocs build +# with the left navigation. + $(hide) mkdir -p $(GMS_CORE_PATH)/frameworks/base/docs/html/google + $(hide) cp frameworks/base/docs/html/google/google_toc.cs \ + $(GMS_CORE_PATH)/frameworks/base/docs/html/google + +# Change to GMS core directory to run the build properly +# The ; and \ allow the commands to be run from GMS_CORE_PATH by chaining them +# If not, they will be run from wherever make was ran + $(hide) cd $(GMS_CORE_PATH); \ + source build/envsetup.sh; \ + tapas GmsCore; \ + make google-play-services-dac-docs + +# Cleanup the GMS Core build output +setup-gms-ref: +# Remove unneeded files + $(hide) rm -f $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/timestamp.js \ + $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference/hierarchy.html \ + $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference/classes.html \ + $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference/package-list \ + $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference/index.html +# Rename files + $(hide) sed 's/DATA/GMS_DATA/' $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference/lists.js > \ + $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference/gms_lists.js + $(hide) rm -f $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference/lists.js + +# Copies the output of the GMS Core build to the online-sdk out directory to view +# in staging +stage-gms-ref: + $(hide) cp -R $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference \ + $(OUT_DOCS)/online-sdk + + $(hide) cp $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/gms_navtree_data.js \ + $(OUT_DOCS)/online-sdk/gms_navtree_data.js + +# Copies the output of the GMS Core build to the appropriate location in the repo +# for checking into Git +add-gms-ref: + $(hide) cp -R $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/reference \ + frameworks/base/docs/html + + $(hide) cp $(GMS_CORE_PATH)/$(OUT_DOCS)/$(GMS_LOCAL_MODULE)/gms_navtree_data.js \ + frameworks/base/docs/html/gms_navtree_data.js + +# Builds the gms and gcm javadocs, then online-sdk docs, then copies the gms and gcm +# Javadocs over to the online-sdk out directory so you can stage the results. +# If all is good, just run "make add-gcm-ref add-gms-ref" to move the required +# files over to frameworks/base to do a git add/commit. +all-docs: clean-all online-gms-ref-docs setup-gms-ref online-gcm-ref-docs setup-gcm-ref online-sdk-docs stage-gms-ref stage-gcm-ref
\ No newline at end of file |
