SDK: Generate build-tools package.

Change-Id: I36e9ee9a9486da18704428ce5225934a6a308029
diff --git a/build/sdk-windows-x86.atree b/build/sdk-windows-x86.atree
index 2eee75d..c9ec5f9 100644
--- a/build/sdk-windows-x86.atree
+++ b/build/sdk-windows-x86.atree
@@ -26,6 +26,10 @@
 # are controled by sdk/build/tools.windows.atree.
 #
 
+##############################################################################
+# Platform Tools Component
+##############################################################################
+
 rm platform-tools/adb
 rm platform-tools/fastboot
 bin/adb.exe                             strip platform-tools/adb.exe
@@ -33,20 +37,30 @@
 bin/AdbWinUsbApi.dll                          platform-tools/AdbWinUsbApi.dll
 bin/AdbWinApi.dll                             platform-tools/AdbWinApi.dll
 
-rm platform-tools/aapt
-bin/aapt.exe                            strip platform-tools/aapt.exe
 
-rm platform-tools/aidl
-bin/aidl.exe                            strip platform-tools/aidl.exe
+##############################################################################
+# Build Tools Component
+##############################################################################
 
-rm platform-tools/dx
-dalvik/dx/etc/dx.bat                          platform-tools/dx.bat
+rm build-tools/${PLATFORM_NAME}/aapt
+bin/aapt.exe                            strip build-tools/${PLATFORM_NAME}/aapt.exe
 
-rm platform-tools/dexdump
-bin/dexdump.exe                         strip platform-tools/dexdump.exe
+rm build-tools/${PLATFORM_NAME}/aidl
+bin/aidl.exe                            strip build-tools/${PLATFORM_NAME}/aidl.exe
 
-rm platform-tools/llvm-rs-cc
-bin/llvm-rs-cc.exe                      strip platform-tools/llvm-rs-cc.exe
+rm build-tools/${PLATFORM_NAME}/dx
+dalvik/dx/etc/dx.bat                          build-tools/${PLATFORM_NAME}/dx.bat
+rm build-tools/${PLATFORM_NAME}/dexdump
+bin/dexdump.exe                         strip build-tools/${PLATFORM_NAME}/dexdump.exe
+
+rm build-tools/${PLATFORM_NAME}/llvm-rs-cc
+bin/llvm-rs-cc.exe                      strip build-tools/${PLATFORM_NAME}/llvm-rs-cc.exe
+
+
+
+##############################################################################
+# Docs Component
+##############################################################################
 
 external/sonivox/docs/JET_Authoring_Guidelines.html   docs/JetCreator/JET_Authoring_Guidelines.html
 external/sonivox/docs/JET_Authoring_Guidelines_files  docs/JetCreator/JET_Authoring_Guidelines_files
diff --git a/build/sdk.atree b/build/sdk.atree
index fe9c3cf..f364664 100644
--- a/build/sdk.atree
+++ b/build/sdk.atree
@@ -33,32 +33,46 @@
 # doc redirect
 frameworks/base/docs/docs-redirect.html documentation.html
 
+
 ##############################################################################
 # Platform Tools Component
 ##############################################################################
 
+sdk/files/sdk_files_NOTICE.txt                platform-tools/NOTICE.txt
 development/sdk/plat_tools_source.properties  platform-tools/source.properties
 
 # host tools from out/host/$(HOST_OS)-$(HOST_ARCH)/
 bin/adb                                 strip platform-tools/adb
-bin/aapt                                strip platform-tools/aapt
-bin/aidl                                strip platform-tools/aidl
 bin/fastboot                            strip platform-tools/fastboot
-bin/llvm-rs-cc                          strip platform-tools/llvm-rs-cc
-
-# dx
-bin/dx                                        platform-tools/dx
-bin/dexdump                                   platform-tools/dexdump
-framework/dx.jar                              platform-tools/lib/dx.jar
-
-# Framework include for Renderscript
-frameworks/rs/scriptc                         platform-tools/renderscript/include
-external/clang/lib/Headers                    platform-tools/renderscript/clang-include
-external/clang/LICENSE.TXT                    platform-tools/renderscript/clang-include/LICENSE.TXT
 
 # API database for tools such as lint
 development/sdk/api-versions.xml              platform-tools/api/api-versions.xml
 
+
+##############################################################################
+# Build Tools Component
+##############################################################################
+# Note that the build-tools sub-folder uses the platform-name as a placeholder
+# at build-time. Packaging will later change that to the actual build-tools
+# revision as specified in the source.properties.
+
+sdk/files/sdk_files_NOTICE.txt                 build-tools/${PLATFORM_NAME}/NOTICE.txt
+development/sdk/build_tools_source.properties  build-tools/${PLATFORM_NAME}/source.properties
+
+# build tools from out/host/$(HOST_OS)-$(HOST_ARCH)/
+bin/aapt                                strip build-tools/${PLATFORM_NAME}/aapt
+bin/aidl                                strip build-tools/${PLATFORM_NAME}/aidl
+# renderscript (cc + headers)
+bin/llvm-rs-cc                          strip build-tools/${PLATFORM_NAME}/llvm-rs-cc
+frameworks/rs/scriptc                         build-tools/${PLATFORM_NAME}/renderscript/include
+external/clang/lib/Headers                    build-tools/${PLATFORM_NAME}/renderscript/clang-include
+external/clang/LICENSE.TXT                    build-tools/${PLATFORM_NAME}/renderscript/clang-include/LICENSE.TXT
+# dx
+bin/dx                                        build-tools/${PLATFORM_NAME}/dx
+framework/dx.jar                              build-tools/${PLATFORM_NAME}/lib/dx.jar
+bin/dexdump                                   build-tools/${PLATFORM_NAME}/dexdump
+
+
 ##############################################################################
 # Platform Component
 ##############################################################################
@@ -70,8 +84,8 @@
 sdk/sdk-build.prop                            platforms/${PLATFORM_NAME}/build.prop
 
 # the uper-jar file that apps link against. This is the public API
-${OUT_DIR}/target/common/obj/PACKAGING/android_jar_intermediates/android.jar platforms/${PLATFORM_NAME}/android.jar
-${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android_uiautomator_intermediates/javalib.jar           platforms/${PLATFORM_NAME}/uiautomator.jar
+${OUT_DIR}/target/common/obj/PACKAGING/android_jar_intermediates/android.jar              platforms/${PLATFORM_NAME}/android.jar
+${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android_uiautomator_intermediates/javalib.jar platforms/${PLATFORM_NAME}/uiautomator.jar
 
 # the aidl precompiled include
 obj/framework.aidl platforms/${PLATFORM_NAME}/framework.aidl
@@ -89,7 +103,7 @@
 development/tools/emulator/skins/WXGA800-7in   platforms/${PLATFORM_NAME}/skins/WXGA800-7in
 
 # Platform SDK properties
-development/sdk/sdk.properties               platforms/${PLATFORM_NAME}/sdk.properties
+development/sdk/sdk.properties                 platforms/${PLATFORM_NAME}/sdk.properties
 
 # sdk.git Ant templates for project files
 development/tools/templates/AndroidManifest.template        platforms/${PLATFORM_NAME}/templates/AndroidManifest.template
@@ -121,6 +135,7 @@
 sdk/files/sdk_files_NOTICE.txt platforms/${PLATFORM_NAME}/data/NOTICE.txt
 sdk/files/sdk_files_NOTICE.txt platforms/${PLATFORM_NAME}/skins/NOTICE.txt
 
+
 ##############################################################################
 # System image Component
 ##############################################################################
@@ -133,6 +148,7 @@
 
 # Note: the kernel image is handled by sdk-android-<abi>.atree now.
 
+
 ##############################################################################
 # Docs Component
 ##############################################################################
@@ -180,7 +196,7 @@
 development/samples/NotePad                    samples/${PLATFORM_NAME}/NotePad
 development/samples/RandomMusicPlayer          samples/${PLATFORM_NAME}/RandomMusicPlayer
 development/samples/SpellChecker/SampleSpellCheckerService samples/${PLATFORM_NAME}/SpellChecker/SampleSpellCheckerService
-development/samples/SpellChecker/HelloSpellChecker samples/${PLATFORM_NAME}/SpellChecker/HelloSpellChecker
+development/samples/SpellChecker/HelloSpellChecker         samples/${PLATFORM_NAME}/SpellChecker/HelloSpellChecker
 development/samples/SampleSyncAdapter          samples/${PLATFORM_NAME}/SampleSyncAdapter
 development/samples/SearchableDictionary       samples/${PLATFORM_NAME}/SearchableDictionary
 development/samples/SipDemo                    samples/${PLATFORM_NAME}/SipDemo
@@ -208,7 +224,7 @@
 development/samples/RenderScript/HelloCompute  samples/${PLATFORM_NAME}/RenderScript/HelloCompute
 
 # NOTICE files are copied by build/core/Makefile from sdk.git
-sdk/files/sdk_files_NOTICE.txt samples/${PLATFORM_NAME}/NOTICE.txt
+sdk/files/sdk_files_NOTICE.txt                 samples/${PLATFORM_NAME}/NOTICE.txt
 
 ##############################################################################
 # Add-on Folder
@@ -217,6 +233,7 @@
 # empty add-on folder with just a readme copied from sdk.git
 sdk/files/README_add-ons.txt add-ons/README.txt
 
+
 ##############################################################################
 # Extra Component: Support
 ##############################################################################
@@ -243,9 +260,11 @@
 frameworks/support/v7/gridlayout/readme                                                           extras/android/support/v7/gridlayout/src/.readme
 ${OUT_DIR}/target/common/obj/PACKAGING/android-support-v7-gridlayout_intermediates/android-support-v7-gridlayout.jar    extras/android/support/v7/gridlayout/libs/android-support-v7-gridlayout.jar
 
+
 ##############################################################################
 # Tests Component
 ##############################################################################
 framework/layoutlib-tests.jar tests/libtests/layoutlib-tests.jar
 system/app/ConnectivityTest.apk tests/emulator-test-apps/ConnectivityTest.apk
 system/app/GpsLocationTest.apk tests/emulator-test-apps/GpsLocationTest.apk
+
diff --git a/build/tools/mk_sdk_repo_xml.sh b/build/tools/mk_sdk_repo_xml.sh
index 298671d..c807a56 100755
--- a/build/tools/mk_sdk_repo_xml.sh
+++ b/build/tools/mk_sdk_repo_xml.sh
@@ -6,7 +6,7 @@
 
 PROG_DIR=$(dirname $0)
 
-TYPES="tool platform-tool platform sample doc add-on system-image source support"
+TYPES="tool platform-tool build-tool platform sample doc add-on system-image source support"
 OSES="linux macosx windows any linux-x86 darwin"
 
 TMP_DIR=$(mktemp -d -t sdkrepo.tmp.XXXXXXXX)
@@ -144,6 +144,7 @@
    [[ "$ROOT" == "sdk-addon"      && "$XSD_VERSION" -ge 5 ]]; then
 FULL_REVISIONS=(
   tool          revision
+  build-tool    revision
   platform-tool revision
   @             min-tools-rev
   @             min-platform-tools-rev
@@ -409,3 +410,4 @@
 
 echo "## Validate XML against schema"
 xmllint --schema $SCHEMA "$OUT"
+
diff --git a/build/tools/patch_windows_sdk.sh b/build/tools/patch_windows_sdk.sh
index 6d30577..7a930b0 100755
--- a/build/tools/patch_windows_sdk.sh
+++ b/build/tools/patch_windows_sdk.sh
@@ -74,6 +74,7 @@
 ${TOPDIR}out/host/linux-x86/bin/atree -f ${TOPDIR}development/build/sdk-windows-x86.atree \
       -I $WIN_OUT_DIR/host/windows-x86 \
       -I ${TOPDIR:-.} \
+      -v "PLATFORM_NAME=android-$PLATFORM_VERSION" \
       -o $TEMP_SDK_DIR
 
 # Fix EOL chars to make window users happy - fix all files at the top level
diff --git a/build/tools/sdk_repo.mk b/build/tools/sdk_repo.mk
index 2d034be..24e380f 100644
--- a/build/tools/sdk_repo.mk
+++ b/build/tools/sdk_repo.mk
@@ -31,10 +31,10 @@
 $(call sdk-repo-pkg-zip,$(1),$(2),$(3)): $(2)
 	@echo "Building SDK repository package $(3) from $(notdir $(2))"
 	$(hide) cd $(basename $(2)) && \
-			zip -9rq ../$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3))) $(3)/*
+	        zip -9rq ../$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3))) $(3)/*
 $(call dist-for-goals, sdk_repo, $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 SDK_REPO_XML_ARGS += $(3) $(1) \
-	$(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
+    $(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 endef
 
 # Defines the rule to build an SDK repository package when the
@@ -52,10 +52,10 @@
 $(call sdk-repo-pkg-zip,$(1),$(2),$(3)): $(2)
 	@echo "Building SDK repository package $(3) from $(notdir $(2))"
 	$(hide) cd $(basename $(2))/$(3) && \
-			zip -9rq ../../$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3))) *
+	        zip -9rq ../../$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3))) *
 $(call dist-for-goals, sdk_repo, $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 SDK_REPO_XML_ARGS += $(3) $(1) \
-	$(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
+    $(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 endef
 
 # Defines the rule to build an SDK repository package when the
@@ -77,10 +77,10 @@
 $(call sdk-repo-pkg-zip,$(1),$(2),$(3)): $(2)
 	@echo "Building SDK repository package $(3) from $(notdir $(2))"
 	$(hide) cd $(basename $(2))/$(4) && \
-			zip -9rq ../../../$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3))) *
+	        zip -9rq ../../../$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3))) *
 $(call dist-for-goals, sdk_repo, $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 SDK_REPO_XML_ARGS += $(3) $(1) \
-	$(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
+    $(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 endef
 
 # Defines the rule to build an SDK sources package.
@@ -93,12 +93,12 @@
 $(call sdk-repo-pkg-zip,$(1),$(2),$(3)): $(2) $(HOST_OUT)/development/sdk/source_source.properties
 	@echo "Building SDK sources package"
 	$(hide) $(TOPDIR)development/build/tools/mk_sources_zip.py --exec-zip \
-			$(HOST_OUT)/development/sdk/source_source.properties \
-			$(call sdk-repo-pkg-zip,$(1),$(2),$(3)) \
-			$(TOPDIR).
+	            $(HOST_OUT)/development/sdk/source_source.properties \
+	            $(call sdk-repo-pkg-zip,$(1),$(2),$(3)) \
+	            $(TOPDIR).
 $(call dist-for-goals, sdk_repo, $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 SDK_REPO_XML_ARGS += $(3) $(1) \
-	$(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
+    $(call sdk-repo-pkg-zip,$(1),$(2),$(3)):$(notdir $(call sdk-repo-pkg-zip,$(1),$(2),$(3)))
 endef
 
 # -----------------------------------------------------------------
@@ -113,10 +113,11 @@
 SDK_REPO_XML_ARGS   :=
 
 SDK_EXTRAS_DEPS += \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),support)
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),support)
 
 
 $(eval $(call mk-sdk-repo-pkg-1,$(HOST_OS),$(MAIN_SDK_ZIP),tools))
+$(eval $(call mk-sdk-repo-pkg-2,$(HOST_OS),$(MAIN_SDK_ZIP),build-tools))
 $(eval $(call mk-sdk-repo-pkg-1,$(HOST_OS),$(MAIN_SDK_ZIP),platform-tools))
 $(eval $(call mk-sdk-repo-pkg-1,$(HOST_OS),$(MAIN_SDK_ZIP),docs))
 $(eval $(call mk-sdk-repo-pkg-2,$(HOST_OS),$(MAIN_SDK_ZIP),platforms))
@@ -125,13 +126,14 @@
 $(eval $(call mk-sdk-repo-sources,$(HOST_OS),$(MAIN_SDK_ZIP),sources))
 
 SDK_REPO_DEPS += \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),tools) \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),platform-tools) \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),docs) \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),platforms) \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),samples) \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),system-images) \
-		$(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),sources)
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),tools) \
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),build-tools) \
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),platform-tools) \
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),docs) \
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),platforms) \
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),samples) \
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),system-images) \
+    $(call sdk-repo-pkg-zip,$(HOST_OS),$(MAIN_SDK_ZIP),sources)
 
 endif
 
@@ -142,11 +144,13 @@
 
 # docs, platforms and samples have nothing OS-dependent right now.
 $(eval $(call mk-sdk-repo-pkg-1,windows,$(WIN_SDK_ZIP),tools))
+$(eval $(call mk-sdk-repo-pkg-2,windows,$(WIN_SDK_ZIP),build-tools))
 $(eval $(call mk-sdk-repo-pkg-1,windows,$(WIN_SDK_ZIP),platform-tools))
 
 SDK_REPO_DEPS += \
-	$(call sdk-repo-pkg-zip,windows,$(WIN_SDK_ZIP),tools) \
-        $(call sdk-repo-pkg-zip,windows,$(WIN_SDK_ZIP),platform-tools)
+    $(call sdk-repo-pkg-zip,windows,$(WIN_SDK_ZIP),tools) \
+    $(call sdk-repo-pkg-zip,windows,$(WIN_SDK_ZIP),build-tools) \
+    $(call sdk-repo-pkg-zip,windows,$(WIN_SDK_ZIP),platform-tools)
 
 endif
 
@@ -154,16 +158,17 @@
 # Pickup the most recent xml schema for repository and add-on
 
 SDK_REPO_XSD := \
-	$(lastword \
-	  $(wildcard \
-	    $(TOPDIR)prebuilts/devtools/repository/sdk-repository-*.xsd \
-	))
+    $(lastword \
+      $(wildcard \
+        $(TOPDIR)prebuilts/devtools/repository/sdk-repository-*.xsd \
+    ))
 
 SDK_ADDON_XSD := \
-	$(lastword \
-	  $(wildcard \
-	    $(TOPDIR)prebuilts/devtools/repository/sdk-addon-*.xsd \
-	))
+    $(lastword \
+      $(wildcard \
+        $(TOPDIR)prebuilts/devtools/repository/sdk-addon-*.xsd \
+    ))
+
 
 # -----------------------------------------------------------------
 # Rules for sdk addon
@@ -184,7 +189,7 @@
 
 $(SDK_ADDON_XML): $(ADDON_SDK_ZIP)
 	$(hide) $(TOPDIR)development/build/tools/mk_sdk_repo_xml.sh \
-		$(SDK_ADDON_XML) $(SDK_ADDON_XSD) add-on $(HOST_OS) $(RENAMED_ADDON_ZIP)
+	            $(SDK_ADDON_XML) $(SDK_ADDON_XSD) add-on $(HOST_OS) $(RENAMED_ADDON_ZIP)
 
 $(call dist-for-goals, sdk_repo, $(SDK_ADDON_XML))
 
@@ -200,7 +205,7 @@
 
 $(SDK_REPO_XML): $(SDK_REPO_DEPS)
 	$(hide) $(TOPDIR)development/build/tools/mk_sdk_repo_xml.sh \
-		$(SDK_REPO_XML) $(SDK_REPO_XSD) $(SDK_REPO_XML_ARGS)
+	            $(SDK_REPO_XML) $(SDK_REPO_XSD) $(SDK_REPO_XML_ARGS)
 
 $(call dist-for-goals, sdk_repo, $(SDK_REPO_XML))
 
@@ -215,7 +220,7 @@
 
 $(SDK_EXTRAS_XML): $(SDK_EXTRAS_DEPS)
 	$(hide) $(TOPDIR)development/build/tools/mk_sdk_repo_xml.sh \
-		$(SDK_EXTRAS_XML) $(SDK_ADDON_XSD) $(SDK_EXTRAS_XML_ARGS)
+	            $(SDK_EXTRAS_XML) $(SDK_ADDON_XSD) $(SDK_EXTRAS_XML_ARGS)
 
 $(call dist-for-goals, sdk_repo, $(SDK_EXTRAS_XML))
 
diff --git a/build/tools/windows_sdk.mk b/build/tools/windows_sdk.mk
index f57ff5d..aa5641b 100644
--- a/build/tools/windows_sdk.mk
+++ b/build/tools/windows_sdk.mk
@@ -87,9 +87,11 @@
 	$(hide) mkdir -p $(WIN_SDK_DIR)
 	$(hide) cp -rf $(MAIN_SDK_DIR)/$(MAIN_SDK_NAME) $(WIN_SDK_DIR)/$(WIN_SDK_NAME)
 	$(hide) USB_DRIVER_HOOK=$(USB_DRIVER_HOOK) \
+		PLATFORM_VERSION=$(PLATFORM_VERSION) \
 		$(TOPDIR)development/build/tools/patch_windows_sdk.sh $(subst @,-q,$(hide)) \
 		$(WIN_SDK_DIR)/$(WIN_SDK_NAME) $(OUT_DIR) $(TOPDIR)
-	$(hide) $(TOPDIR)sdk/build/patch_windows_sdk.sh $(subst @,-q,$(hide)) \
+	$(hide) PLATFORM_VERSION=$(PLATFORM_VERSION) \
+		$(TOPDIR)sdk/build/patch_windows_sdk.sh $(subst @,-q,$(hide)) \
 		$(WIN_SDK_DIR)/$(WIN_SDK_NAME) $(OUT_DIR) $(TOPDIR)
 	$(hide) ( \
 		cd $(WIN_SDK_DIR) && \
diff --git a/sdk/build_tools_source.properties b/sdk/build_tools_source.properties
new file mode 100644
index 0000000..fc2e175
--- /dev/null
+++ b/sdk/build_tools_source.properties
@@ -0,0 +1,3 @@
+Pkg.UserSrc=false
+Pkg.Revision=16.0.3
+
diff --git a/sdk/plat_tools_source.properties b/sdk/plat_tools_source.properties
index 37153b5..4cdcea0 100644
--- a/sdk/plat_tools_source.properties
+++ b/sdk/plat_tools_source.properties
@@ -1,2 +1,2 @@
 Pkg.UserSrc=false
-Pkg.Revision=16.0.2
\ No newline at end of file
+Pkg.Revision=16.0.3