1b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# Copyright (C) 2014 The Android Open Source Project
2b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn#
3b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# Licensed under the Apache License, Version 2.0 (the "License");
4b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# you may not use this file except in compliance with the License.
5b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# You may obtain a copy of the License at
6b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn#
7b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn#      http://www.apache.org/licenses/LICENSE-2.0
8b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn#
9b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# Unless required by applicable law or agreed to in writing, software
10b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# distributed under the License is distributed on an "AS IS" BASIS,
11b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# See the License for the specific language governing permissions and
13b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# limitations under the License.
14b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn
15b9537aff4a6ff5231030799cdaf931c27fb9579bTim KilbournLOCAL_PATH:= $(call my-dir)
16b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn
1782b55491586ac50a0f95b60e39a3c18d068941cfChris Banes# Build the resources using the latest applicable SDK version.
1855c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout# We do this here because the final static library must be compiled with an older
1955c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout# SDK version than the resources.  The resources library and the R class that it
2055c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout# contains will not be linked into the final static library.
2155c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stoutinclude $(CLEAR_VARS)
226759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_USE_AAPT2 := true
2355c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig StoutLOCAL_MODULE := android-support-v17-leanback-res
2482b55491586ac50a0f95b60e39a3c18d068941cfChris BanesLOCAL_SDK_VERSION := $(SUPPORT_CURRENT_SDK_VERSION)
2555c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig StoutLOCAL_SRC_FILES := $(call all-java-files-under, dummy)
2655c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig StoutLOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
2755c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig StoutLOCAL_JAR_EXCLUDE_FILES := none
28e1cd5a1f80010eece43cb4608505fd39f4832c00Neil FullerLOCAL_JAVA_LANGUAGE_VERSION := 1.7
2955c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stoutinclude $(BUILD_STATIC_JAVA_LIBRARY)
3055c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout
3195ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banessupport_module_src_files := $(LOCAL_SRC_FILES)
3295ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banes
3355c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout# -----------------------------------------------------------------------
3455c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout
352f97594742886d045ca1ce409ebc6e6e780452f6Dake Gu#  Base sub-library contains classes both needed by api-level specific libraries
362f97594742886d045ca1ce409ebc6e6e780452f6Dake Gu#  (e.g. KitKat) and final static library.
372f97594742886d045ca1ce409ebc6e6e780452f6Dake Guinclude $(CLEAR_VARS)
382f97594742886d045ca1ce409ebc6e6e780452f6Dake GuLOCAL_MODULE := android-support-v17-leanback-common
392f97594742886d045ca1ce409ebc6e6e780452f6Dake GuLOCAL_SDK_VERSION := 17
402f97594742886d045ca1ce409ebc6e6e780452f6Dake GuLOCAL_SRC_FILES := $(call all-java-files-under, common)
41e1cd5a1f80010eece43cb4608505fd39f4832c00Neil FullerLOCAL_JAVA_LANGUAGE_VERSION := 1.7
422f97594742886d045ca1ce409ebc6e6e780452f6Dake Guinclude $(BUILD_STATIC_JAVA_LIBRARY)
432f97594742886d045ca1ce409ebc6e6e780452f6Dake Gu
4495ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banessupport_module_src_files += $(LOCAL_SRC_FILES)
4595ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banes
462f97594742886d045ca1ce409ebc6e6e780452f6Dake Gu# -----------------------------------------------------------------------
472f97594742886d045ca1ce409ebc6e6e780452f6Dake Gu
48254b417129de2a8c5612826a152f8a26c8f1d0e8Dake Gu#  A helper sub-library that makes direct use of API 23.
49254b417129de2a8c5612826a152f8a26c8f1d0e8Dake Guinclude $(CLEAR_VARS)
50254b417129de2a8c5612826a152f8a26c8f1d0e8Dake GuLOCAL_MODULE := android-support-v17-leanback-api23
5182b55491586ac50a0f95b60e39a3c18d068941cfChris BanesLOCAL_SDK_VERSION := 23
52254b417129de2a8c5612826a152f8a26c8f1d0e8Dake GuLOCAL_SRC_FILES := $(call all-java-files-under, api23)
53254b417129de2a8c5612826a152f8a26c8f1d0e8Dake GuLOCAL_JAVA_LIBRARIES := android-support-v17-leanback-res android-support-v17-leanback-common
54e1cd5a1f80010eece43cb4608505fd39f4832c00Neil FullerLOCAL_JAVA_LANGUAGE_VERSION := 1.7
55254b417129de2a8c5612826a152f8a26c8f1d0e8Dake Guinclude $(BUILD_STATIC_JAVA_LIBRARY)
56254b417129de2a8c5612826a152f8a26c8f1d0e8Dake Gu
5795ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banessupport_module_src_files += $(LOCAL_SRC_FILES)
5895ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banes
59254b417129de2a8c5612826a152f8a26c8f1d0e8Dake Gu# -----------------------------------------------------------------------
60254b417129de2a8c5612826a152f8a26c8f1d0e8Dake Gu
6119312c5f247559a9483d874e62150c49d36aa478Dake Gu#  A helper sub-library that makes direct use of API 21.
6219312c5f247559a9483d874e62150c49d36aa478Dake Guinclude $(CLEAR_VARS)
6319312c5f247559a9483d874e62150c49d36aa478Dake GuLOCAL_MODULE := android-support-v17-leanback-api21
64fcec1282de632ec009109ae3f93a25fea97fc170Griff HazenLOCAL_SDK_VERSION := 21
6519312c5f247559a9483d874e62150c49d36aa478Dake GuLOCAL_SRC_FILES := $(call all-java-files-under, api21)
6619312c5f247559a9483d874e62150c49d36aa478Dake GuLOCAL_JAVA_LIBRARIES := android-support-v17-leanback-res android-support-v17-leanback-common
67e1cd5a1f80010eece43cb4608505fd39f4832c00Neil FullerLOCAL_JAVA_LANGUAGE_VERSION := 1.7
6819312c5f247559a9483d874e62150c49d36aa478Dake Guinclude $(BUILD_STATIC_JAVA_LIBRARY)
6919312c5f247559a9483d874e62150c49d36aa478Dake Gu
7095ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banessupport_module_src_files += $(LOCAL_SRC_FILES)
7195ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banes
7219312c5f247559a9483d874e62150c49d36aa478Dake Gu# -----------------------------------------------------------------------
7319312c5f247559a9483d874e62150c49d36aa478Dake Gu
7455c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout#  A helper sub-library that makes direct use of KitKat APIs.
7555c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stoutinclude $(CLEAR_VARS)
7655c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig StoutLOCAL_MODULE := android-support-v17-leanback-kitkat
7755c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig StoutLOCAL_SDK_VERSION := 19
7855c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig StoutLOCAL_SRC_FILES := $(call all-java-files-under, kitkat)
792f97594742886d045ca1ce409ebc6e6e780452f6Dake GuLOCAL_JAVA_LIBRARIES := android-support-v17-leanback-res android-support-v17-leanback-common
80e1cd5a1f80010eece43cb4608505fd39f4832c00Neil FullerLOCAL_JAVA_LANGUAGE_VERSION := 1.7
8155c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stoutinclude $(BUILD_STATIC_JAVA_LIBRARY)
8255c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout
8395ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banessupport_module_src_files += $(LOCAL_SRC_FILES)
8495ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banes
8555c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout# -----------------------------------------------------------------------
86b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn
87892181367d658f347d00ea5e091aa31f086b2a20Dake Gu#  A helper sub-library that makes direct use of JBMR2 APIs.
88892181367d658f347d00ea5e091aa31f086b2a20Dake Guinclude $(CLEAR_VARS)
89892181367d658f347d00ea5e091aa31f086b2a20Dake GuLOCAL_MODULE := android-support-v17-leanback-jbmr2
902f97594742886d045ca1ce409ebc6e6e780452f6Dake GuLOCAL_SDK_VERSION := 18
91892181367d658f347d00ea5e091aa31f086b2a20Dake GuLOCAL_SRC_FILES := $(call all-java-files-under, jbmr2)
922f97594742886d045ca1ce409ebc6e6e780452f6Dake GuLOCAL_JAVA_LIBRARIES := android-support-v17-leanback-res android-support-v17-leanback-common
93e1cd5a1f80010eece43cb4608505fd39f4832c00Neil FullerLOCAL_JAVA_LANGUAGE_VERSION := 1.7
94892181367d658f347d00ea5e091aa31f086b2a20Dake Guinclude $(BUILD_STATIC_JAVA_LIBRARY)
95892181367d658f347d00ea5e091aa31f086b2a20Dake Gu
9695ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banessupport_module_src_files += $(LOCAL_SRC_FILES)
9795ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banes
98892181367d658f347d00ea5e091aa31f086b2a20Dake Gu# -----------------------------------------------------------------------
99892181367d658f347d00ea5e091aa31f086b2a20Dake Gu
100b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# Here is the final static library that apps can link against.
1016759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski# Applications that use this library must specify
1026759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski#
1036759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski#   LOCAL_STATIC_ANDROID_LIBRARIES := \
1046759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski#       android-support-v17-leanback \
1056759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski#       android-support-v7-recyclerview \
1066759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski#       android-support-v4
1076759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski#
1086759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski# in their makefiles to include the resources and their dependencies in their package.
109b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourninclude $(CLEAR_VARS)
1106759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_USE_AAPT2 := true
111b9537aff4a6ff5231030799cdaf931c27fb9579bTim KilbournLOCAL_MODULE := android-support-v17-leanback
112b9537aff4a6ff5231030799cdaf931c27fb9579bTim KilbournLOCAL_SDK_VERSION := 17
1136759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_SDK_RES_VERSION := $(SUPPORT_CURRENT_SDK_VERSION)
1148b068ddbbf22a246eab49ec25a2f7c3abfbdca51Tim KilbournLOCAL_SRC_FILES := $(call all-java-files-under, src)
1156759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_STATIC_JAVA_LIBRARIES := \
1166759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v17-leanback-kitkat \
1176759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v17-leanback-jbmr2 \
1186759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v17-leanback-api23 \
1196759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v17-leanback-api21 \
1206759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v17-leanback-common
1216759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_STATIC_ANDROID_LIBRARIES := \
1226759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v17-leanback-res
1236759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_SHARED_ANDROID_LIBRARIES := \
1246759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v7-recyclerview \
1256759b1021d8198ad1d239bb30e5a102b99624bceAdam Lesinski    android-support-v4
1266759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_JAR_EXCLUDE_FILES := none
127e1cd5a1f80010eece43cb4608505fd39f4832c00Neil FullerLOCAL_JAVA_LANGUAGE_VERSION := 1.7
1286759b1021d8198ad1d239bb30e5a102b99624bceAdam LesinskiLOCAL_AAPT_FLAGS := --add-javadoc-annotation doconly
129b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourninclude $(BUILD_STATIC_JAVA_LIBRARY)
130b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn
13195ad49b720f4990d39d05f7e46a5c7bc83afc9d6Chris Banessupport_module_src_files += $(LOCAL_SRC_FILES)
132b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn
13301b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn# ===========================================================
13401b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn# Common Droiddoc vars
13501b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbournleanback.docs.src_files := \
13601b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    $(call all-java-files-under, src) \
13701b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    $(call all-html-files-under, src)
13801b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbournleanback.docs.java_libraries := \
13901b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    android-support-v4 \
14001b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    android-support-v7-recyclerview \
14101b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    android-support-v17-leanback-res \
14201b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    android-support-v17-leanback
14301b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
14455c9ee4b612ffc7b4632b1e4b7b7ab4900cd47c7Craig Stout# Documentation
145b9537aff4a6ff5231030799cdaf931c27fb9579bTim Kilbourn# ===========================================================
14601b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourninclude $(CLEAR_VARS)
14701b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
14801b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_MODULE := android-support-v17-leanback
14901b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_MODULE_CLASS := JAVA_LIBRARIES
15001b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_MODULE_TAGS := optional
15101b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
1524ae607ee5f59555f39d804df7e84484804c328e4Ying Wanggen_res_src_dirs := $(call intermediates-dir-for,JAVA_LIBRARIES,android-support-v17-leanback-res,,COMMON)/src
15301b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
15401b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_SRC_FILES := $(leanback.docs.src_files)
1554ae607ee5f59555f39d804df7e84484804c328e4Ying WangLOCAL_ADDITIONAL_JAVA_DIR := $(gen_res_src_dirs)
15601b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
1578456ac2964a72c8ae97c81c33fddef5354a54354Alan ViveretteLOCAL_SDK_VERSION := 21
15801b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_IS_HOST_MODULE := false
15901b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR := build/tools/droiddoc/templates-sdk
16001b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
16101b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_JAVA_LIBRARIES := $(leanback.docs.java_libraries)
16201b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
16301b7f19dfa3b2ec113f20defacf32d0a548f5bebTim KilbournLOCAL_DROIDDOC_OPTIONS := \
16401b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    -offlinemode \
16501b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    -hdf android.whichdoc offline \
16601b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    -federate Android http://developer.android.com \
16701b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    -federationapi Android prebuilts/sdk/api/17.txt \
16801b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn    -hide 113
16901b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
17001b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourninclude $(BUILD_DROIDDOC)
17101b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
172cdbb74ce4c74e4a1b35ee0f38a186f365eb3ba8fChris Banes# API Check
173cdbb74ce4c74e4a1b35ee0f38a186f365eb3ba8fChris Banes# ---------------------------------------------
174cdbb74ce4c74e4a1b35ee0f38a186f365eb3ba8fChris Banessupport_module := $(LOCAL_MODULE)
175cdbb74ce4c74e4a1b35ee0f38a186f365eb3ba8fChris Banessupport_module_api_dir := $(LOCAL_PATH)/api
176cdbb74ce4c74e4a1b35ee0f38a186f365eb3ba8fChris Banessupport_module_java_libraries := $(leanback.docs.java_libraries)
177639640523bdb81cc5a2ac2a1ebbe0c4e13a2c82bChris Banessupport_module_java_packages := android.support.v17.leanback*
178cdbb74ce4c74e4a1b35ee0f38a186f365eb3ba8fChris Banesinclude $(SUPPORT_API_CHECK)
17901b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn
18001b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn# Cleanup temp vars
18101b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbourn# ===========================================================
18201b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbournleanback.docs.src_files :=
18301b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbournleanback.docs.java_libraries :=
1844ae607ee5f59555f39d804df7e84484804c328e4Ying Wanggen_res_src_dirs :=
18501b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbournleanback_internal_api_file :=
18601b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbournleanback_stubs_stamp :=
18701b7f19dfa3b2ec113f20defacf32d0a548f5bebTim Kilbournleanback.docs.stubpackages :=
188