diff --git a/extract_utils.sh b/extract_utils.sh index c26751c..9d58ede 100644 --- a/extract_utils.sh +++ b/extract_utils.sh @@ -14,6 +14,7 @@ PRODUCT_PACKAGES_HASHES=() PRODUCT_PACKAGES_FIXUP_HASHES=() PRODUCT_SYMLINKS_LIST=() PACKAGE_LIST=() +REQUIRED_PACKAGES_LIST= EXTRACT_SRC= EXTRACT_STATE=-1 VENDOR_STATE=-1 @@ -406,6 +407,7 @@ function write_blueprint_packages() { local SRC= local STEM= local OVERRIDEPKG= + local REQUIREDPKG= local DISABLE_CHECKELF= [ "$COMMON" -eq 1 ] && local VENDOR="${VENDOR_COMMON:-$VENDOR}" @@ -536,6 +538,10 @@ function write_blueprint_packages() { OVERRIDEPKG=${ARG#*=} OVERRIDEPKG=${OVERRIDEPKG//,/\", \"} printf '\toverrides: ["%s"],\n' "$OVERRIDEPKG" + elif [[ "$ARG" =~ "REQUIRED" ]]; then + REQUIREDPKG=${ARG#*=} + REQUIRED_PACKAGES_LIST+="$REQUIREDPKG," + printf '\trequired: ["%s"],\n' "${REQUIREDPKG//,/\", \"}" elif [[ "$ARG" =~ "SYMLINK" ]]; then continue elif [ ! -z "$ARG" ]; then @@ -1216,11 +1222,21 @@ function write_package_definition() { printf '\n%s\n' "PRODUCT_PACKAGES += \\" for (( i=1; i> "$PRODUCTMK" + fi done }