# This file is generated by gyp; do not edit.

include $(CLEAR_VARS)

LOCAL_MODULE_CLASS := GYP
LOCAL_MODULE := android_webview_android_webview_pak_gyp
LOCAL_MODULE_STEM := android_webview_pak
LOCAL_MODULE_SUFFIX := .stamp
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TARGET_ARCH := $(TARGET_$(GYP_VAR_PREFIX)ARCH)
gyp_intermediate_dir := $(call local-intermediates-dir,,$(GYP_VAR_PREFIX))
gyp_shared_intermediate_dir := $(call intermediates-dir-for,GYP,shared,,,$(GYP_VAR_PREFIX))

# Make sure our deps are built first.
GYP_TARGET_DEPENDENCIES := \
	$(call intermediates-dir-for,GYP,content_app_resources_content_resources_gyp,,,$(GYP_VAR_PREFIX))/content_resources.stamp \
	$(call intermediates-dir-for,GYP,content_content_resources_gyp,,,$(GYP_VAR_PREFIX))/content_resources.stamp \
	$(call intermediates-dir-for,GYP,net_net_resources_gyp,,,$(GYP_VAR_PREFIX))/net_resources.stamp \
	$(call intermediates-dir-for,GYP,third_party_WebKit_public_blink_resources_gyp,,,$(GYP_VAR_PREFIX))/blink_resources.stamp \
	$(call intermediates-dir-for,GYP,ui_resources_ui_resources_gyp,,,$(GYP_VAR_PREFIX))/ui_resources.stamp

### Rules for action "repack_android_webview_pack":
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak: gyp_local_path := $(LOCAL_PATH)
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak: gyp_var_prefix := $(GYP_VAR_PREFIX)
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak: $(LOCAL_PATH)/tools/grit/grit/format/repack.py $(gyp_shared_intermediate_dir)/blink/public/resources/blink_resources.pak $(gyp_shared_intermediate_dir)/content/app/resources/content_resources_100_percent.pak $(gyp_shared_intermediate_dir)/content/content_resources.pak $(gyp_shared_intermediate_dir)/net/net_resources.pak $(gyp_shared_intermediate_dir)/ui/resources/ui_resources_100_percent.pak $(GYP_TARGET_DEPENDENCIES)
	@echo "Gyp action: android_webview_android_webview_gyp_android_webview_pak_target_repack_android_webview_pack ($@)"
	$(hide)cd $(gyp_local_path)/android_webview; mkdir -p $(gyp_shared_intermediate_dir)/android_webview_apk/assets; python ../tools/grit/grit/format/repack.py "$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak" "$(gyp_shared_intermediate_dir)/blink/public/resources/blink_resources.pak" "$(gyp_shared_intermediate_dir)/content/app/resources/content_resources_100_percent.pak" "$(gyp_shared_intermediate_dir)/content/content_resources.pak" "$(gyp_shared_intermediate_dir)/net/net_resources.pak" "$(gyp_shared_intermediate_dir)/ui/resources/ui_resources_100_percent.pak"


### Rules for action "add_en_US_pak_locale":
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak: gyp_local_path := $(LOCAL_PATH)
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak: gyp_var_prefix := $(GYP_VAR_PREFIX)
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak: $(LOCAL_PATH)/tools/grit/grit/format/repack.py $(gyp_shared_intermediate_dir)/content/app/strings/content_strings_en-US.pak $(GYP_TARGET_DEPENDENCIES)
	@echo "Gyp action: android_webview_android_webview_gyp_android_webview_pak_target_add_en_US_pak_locale ($@)"
	$(hide)cd $(gyp_local_path)/android_webview; mkdir -p $(gyp_shared_intermediate_dir)/android_webview_apk/assets; python ../tools/grit/grit/format/repack.py "$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak" "$(gyp_shared_intermediate_dir)/content/app/strings/content_strings_en-US.pak"



GYP_GENERATED_OUTPUTS := \
	$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.pak \
	$(gyp_shared_intermediate_dir)/android_webview_apk/assets/en-US.pak

# Make sure our deps and generated files are built first.
LOCAL_ADDITIONAL_DEPENDENCIES := $(GYP_TARGET_DEPENDENCIES) $(GYP_GENERATED_OUTPUTS)

### Rules for final target.
# Add target alias to "gyp_all_modules" target.
.PHONY: gyp_all_modules
gyp_all_modules: android_webview_android_webview_pak_gyp

# Alias gyp target name.
.PHONY: android_webview_pak
android_webview_pak: android_webview_android_webview_pak_gyp

LOCAL_MODULE_PATH := $(PRODUCT_OUT)/gyp_stamp
LOCAL_UNINSTALLABLE_MODULE := true
LOCAL_2ND_ARCH_VAR_PREFIX := $(GYP_VAR_PREFIX)

include $(BUILD_SYSTEM)/base_rules.mk

$(LOCAL_BUILT_MODULE): $(LOCAL_ADDITIONAL_DEPENDENCIES)
	$(hide) echo "Gyp timestamp: $@"
	$(hide) mkdir -p $(dir $@)
	$(hide) touch $@

LOCAL_2ND_ARCH_VAR_PREFIX :=
