# 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_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,ui_resources_ui_resources_gyp,,,$(GYP_VAR_PREFIX))/ui_resources.stamp \
	$(call intermediates-dir-for,GYP,webkit_webkit_resources_gyp,,,$(GYP_VAR_PREFIX))/webkit_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)/content/content_resources.pak $(gyp_shared_intermediate_dir)/net/net_resources.pak $(gyp_shared_intermediate_dir)/ui/ui_resources/ui_resources_100_percent.pak $(gyp_shared_intermediate_dir)/webkit/blink_resources.pak $(gyp_shared_intermediate_dir)/webkit/webkit_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)/content/content_resources.pak" "$(gyp_shared_intermediate_dir)/net/net_resources.pak" "$(gyp_shared_intermediate_dir)/ui/ui_resources/ui_resources_100_percent.pak" "$(gyp_shared_intermediate_dir)/webkit/blink_resources.pak" "$(gyp_shared_intermediate_dir)/webkit/webkit_resources_100_percent.pak"



GYP_GENERATED_OUTPUTS := \
	$(gyp_shared_intermediate_dir)/android_webview_apk/assets/webviewchromium.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 :=
