Merge "Clean up sdk building, use built xmllint"
This commit is contained in:
@@ -40,6 +40,10 @@ if [[ ! -x $(which sha1sum) ]]; then
|
||||
error "Missing tool: sha1sum (Linux: apt-get install coreutils; Mac: port install md5sha1sum)"
|
||||
fi
|
||||
|
||||
if [[ -z "$XMLLINT" ]]; then
|
||||
XMLLINT=xmllint
|
||||
fi
|
||||
|
||||
# Parse input params
|
||||
OUT="$1"
|
||||
[[ -z "$OUT" ]] && error "Missing output.xml name."
|
||||
@@ -54,7 +58,7 @@ shift
|
||||
# This will be something like "http://schemas.android.com/sdk/android/addon/3"
|
||||
XMLNS=$(sed -n '/xmlns:sdk="/s/.*"\(.*\)".*/\1/p' "$SCHEMA")
|
||||
[[ -z "$XMLNS" ]] && error "Failed to find xmlns:sdk in $SCHEMA."
|
||||
echo "## Using xmlns:sdk=$XMLNS"
|
||||
#echo "## Using xmlns:sdk=$XMLNS"
|
||||
|
||||
# Extract the schema version number from the XMLNS, e.g. it would extract "3"
|
||||
XSD_VERSION="${XMLNS##*/}"
|
||||
@@ -63,7 +67,7 @@ XSD_VERSION="${XMLNS##*/}"
|
||||
# which name starts with "sdk-" (e.g. sdk-repository, sdk-addon)
|
||||
ROOT=$(sed -n -e '/xsd:element.*name="sdk-/s/.*name="\(sdk-[^"]*\)".*/\1/p' "$SCHEMA")
|
||||
[[ -z "$ROOT" ]] && error "Failed to find root element in $SCHEMA."
|
||||
echo "## Using root element $ROOT"
|
||||
#echo "## Using root element $ROOT"
|
||||
|
||||
# Generate XML header
|
||||
cat > "$OUT" <<EOFH
|
||||
@@ -415,7 +419,7 @@ while [[ -n "$1" ]]; do
|
||||
fi
|
||||
|
||||
# Generate archive info
|
||||
echo "## Add $TYPE/$OS archive $SRC"
|
||||
#echo "## Add $TYPE/$OS archive $SRC"
|
||||
if [[ $( uname ) == "Darwin" ]]; then
|
||||
SIZE=$( stat -f %z "$SRC" )
|
||||
else
|
||||
@@ -461,6 +465,5 @@ done
|
||||
# Generate XML footer
|
||||
echo "</sdk:$ROOT>" >> "$OUT"
|
||||
|
||||
echo "## Validate XML against schema"
|
||||
xmllint --schema $SCHEMA "$OUT"
|
||||
|
||||
#echo "## Validate XML against schema"
|
||||
$XMLLINT --noout --schema $SCHEMA "$OUT"
|
||||
|
||||
@@ -6,6 +6,8 @@ SDK_REPO_DEPS :=
|
||||
SDK_REPO_XML_ARGS :=
|
||||
SDK_EXTRAS_DEPS :=
|
||||
SDK_EXTRAS_XML_ARGS :=
|
||||
SDK_SYSIMG_DEPS :=
|
||||
SDK_SYSIMG_XML_ARGS :=
|
||||
|
||||
# Define the name of a package zip file to generate
|
||||
# $1=OS (e.g. linux-x86, windows, etc)
|
||||
@@ -97,17 +99,29 @@ endef
|
||||
# $4=package to create, must be "sources"
|
||||
#
|
||||
define mk-sdk-repo-sources
|
||||
$(call sdk-repo-pkg-zip,$(2),$(3),$(4)): $(3) $(HOST_OUT)/development/sdk/source_source.properties
|
||||
$(call sdk-repo-pkg-zip,$(2),$(3),$(4)): $(3) development/build/tools/mk_sources_zip.py $(HOST_OUT)/development/sdk/source_source.properties
|
||||
@echo "Building SDK sources package"
|
||||
$(hide) $(TOPDIR)development/build/tools/mk_sources_zip.py --exec-zip \
|
||||
development/build/tools/mk_sources_zip.py --exec-zip \
|
||||
$(HOST_OUT)/development/sdk/source_source.properties \
|
||||
$(call sdk-repo-pkg-zip,$(2),$(3),$(4)) \
|
||||
$(TOPDIR).
|
||||
$$@ .
|
||||
$(call dist-for-goals, sdk_repo, $(call sdk-repo-pkg-zip,$(2),$(3),$(4)))
|
||||
$(1) += $(4) $(2) \
|
||||
$(call sdk-repo-pkg-zip,$(2),$(3),$(4)):$(notdir $(call sdk-repo-pkg-zip,$(2),$(3),$(4)))
|
||||
endef
|
||||
|
||||
# Defines the rule to build an XML file for a package.
|
||||
#
|
||||
# $1=output file
|
||||
# $2=schema file
|
||||
# $3=deps
|
||||
# $4=args
|
||||
define mk-sdk-repo-xml
|
||||
$(1): $$(XMLLINT) development/build/tools/mk_sdk_repo_xml.sh $(2) $(3)
|
||||
XMLLINT=$$(XMLLINT) development/build/tools/mk_sdk_repo_xml.sh $$@ $(2) $(4)
|
||||
|
||||
$$(call dist-for-goals,sdk_repo,$(1))
|
||||
endef
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
# Rules for main host sdk
|
||||
|
||||
@@ -158,19 +172,19 @@ endif
|
||||
SDK_REPO_XSD := \
|
||||
$(lastword \
|
||||
$(wildcard \
|
||||
$(TOPDIR)prebuilts/devtools/repository/sdk-repository-*.xsd \
|
||||
prebuilts/devtools/repository/sdk-repository-*.xsd \
|
||||
))
|
||||
|
||||
SDK_ADDON_XSD := \
|
||||
$(lastword \
|
||||
$(wildcard \
|
||||
$(TOPDIR)prebuilts/devtools/repository/sdk-addon-*.xsd \
|
||||
prebuilts/devtools/repository/sdk-addon-*.xsd \
|
||||
))
|
||||
|
||||
SDK_SYSIMG_XSD := \
|
||||
$(lastword \
|
||||
$(wildcard \
|
||||
$(TOPDIR)prebuilts/devtools/repository/sdk-sys-img-*.xsd \
|
||||
prebuilts/devtools/repository/sdk-sys-img-*.xsd \
|
||||
))
|
||||
|
||||
|
||||
@@ -192,11 +206,10 @@ $(call dist-for-goals, sdk_repo, $(RENAMED_ADDON_ZIP))
|
||||
|
||||
SDK_ADDON_XML := $(dir $(ADDON_SDK_ZIP))/addon.xml
|
||||
|
||||
$(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)
|
||||
$(eval $(call mk-sdk-repo-xml,$(SDK_ADDON_XML),$(SDK_ADDON_XSD),$(ADDON_SDK_ZIP),add-on $(HOST_OS) $(RENAMED_ADDON_ZIP)))
|
||||
|
||||
$(call dist-for-goals, sdk_repo, $(SDK_ADDON_XML))
|
||||
SDK_ADDON_XML :=
|
||||
RENAMED_ADDON_ZIP :=
|
||||
|
||||
endif
|
||||
|
||||
@@ -212,11 +225,10 @@ $(call dist-for-goals, sdk_repo, $(RENAMED_ADDON_IMG_ZIP))
|
||||
|
||||
SDK_ADDON_IMG_XML := $(dir $(ADDON_SDK_ZIP))/addon-sys-img.xml
|
||||
|
||||
$(SDK_ADDON_IMG_XML): $(ADDON_SDK_IMG_ZIP)
|
||||
$(hide) $(TOPDIR)development/build/tools/mk_sdk_repo_xml.sh \
|
||||
$(SDK_ADDON_IMG_XML) $(SDK_SYSIMG_XSD) system-image $(HOST_OS) $(RENAMED_ADDON_IMG_ZIP)
|
||||
$(eval $(call mk-sdk-repo-xml,$(SDK_ADDON_IMG_XML),$(SDK_SYSIMG_XSD),$(ADDON_SDK_IMG_ZIP),system-image $(HOST_OS) $(RENAMED_ADDON_IMG_ZIP)))
|
||||
|
||||
$(call dist-for-goals, sdk_repo, $(SDK_ADDON_IMG_XML))
|
||||
SDK_ADDON_IMG_XML :=
|
||||
RENAMED_ADDON_IMG_ZIP :=
|
||||
|
||||
endif
|
||||
endif
|
||||
@@ -229,51 +241,42 @@ SDK_EXTRAS_XML := $(MAIN_SDK_DIR)/repo-extras.xml
|
||||
SDK_SYSIMG_XML := $(MAIN_SDK_DIR)/repo-sys-img.xml
|
||||
|
||||
ifneq ($(SDK_REPO_XML_ARGS),)
|
||||
|
||||
$(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)
|
||||
|
||||
$(call dist-for-goals, sdk_repo, $(SDK_REPO_XML))
|
||||
|
||||
$(eval $(call mk-sdk-repo-xml,$(SDK_REPO_XML),$(SDK_REPO_XSD),$(SDK_REPO_DEPS),$(SDK_REPO_XML_ARGS)))
|
||||
else
|
||||
|
||||
$(SDK_REPO_XML): ;
|
||||
|
||||
SDK_REPO_XML :=
|
||||
endif
|
||||
|
||||
|
||||
ifneq ($(SDK_EXTRAS_XML_ARGS),)
|
||||
|
||||
$(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)
|
||||
|
||||
$(call dist-for-goals, sdk_repo, $(SDK_EXTRAS_XML))
|
||||
|
||||
$(eval $(call mk-sdk-repo-xml,$(SDK_EXTRAS_XML),$(SDK_ADDON_XSD),$(SDK_EXTRAS_DEPS),$(SDK_EXTRAS_XML_ARGS)))
|
||||
else
|
||||
|
||||
$(SDK_EXTRAS_XML): ;
|
||||
|
||||
SDK_EXTRAS_XML :=
|
||||
endif
|
||||
|
||||
|
||||
ifneq ($(SDK_SYSIMG_XML_ARGS),)
|
||||
|
||||
$(SDK_SYSIMG_XML): $(SDK_SYSIMG_DEPS)
|
||||
$(hide) $(TOPDIR)development/build/tools/mk_sdk_repo_xml.sh \
|
||||
$(SDK_SYSIMG_XML) $(SDK_SYSIMG_XSD) $(SDK_SYSIMG_XML_ARGS)
|
||||
|
||||
$(call dist-for-goals, sdk_repo, $(SDK_SYSIMG_XML))
|
||||
|
||||
$(eval $(call mk-sdk-repo-xml,$(SDK_SYSIMG_XML),$(SDK_SYSIMG_XSD),$(SDK_SYSIMG_DEPS),$(SDK_SYSIMG_XML_ARGS)))
|
||||
else
|
||||
|
||||
$(SDK_SYSIMG_XML): ;
|
||||
|
||||
SDK_SYSIMG_XML :=
|
||||
endif
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
|
||||
sdk_repo: $(SDK_REPO_DEPS) $(SDK_REPO_XML) $(SDK_EXTRAS_XML) $(SDK_SYSIMG_XML)
|
||||
@echo "Packing of SDK repository done"
|
||||
|
||||
SDK_REPO_DEPS :=
|
||||
SDK_REPO_XML :=
|
||||
SDK_REPO_XML_ARGS :=
|
||||
SDK_EXTRAS_DEPS :=
|
||||
SDK_EXTRAS_XML :=
|
||||
SDK_EXTRAS_XML_ARGS :=
|
||||
SDK_SYSIMG_DEPS :=
|
||||
SDK_SYSIMG_XML :=
|
||||
SDK_SYSIMG_XML_ARGS :=
|
||||
|
||||
mk-sdk-repo-pkg-1 :=
|
||||
mk-sdk-repo-pkg-2 :=
|
||||
mk-sdk-repo-pkg-3 :=
|
||||
mk-sdk-repo-sources :=
|
||||
mk-sdk-repo-xml :=
|
||||
sdk-repo-pkg-zip :=
|
||||
|
||||
Reference in New Issue
Block a user