| # Uses the following variables: |
| # |
| # LOCAL_INSTRUMENTATION_FOR - specifies the name of the module that produces the APK under test |
| # |
| |
| # Define a variable storing the location of the generated test_config.properties file. |
| test_config_dir := $(call local-intermediates-dir)/test_config |
| test_config_file := $(test_config_dir)/com/android/tools/test_config.properties |
| |
| # Indicate that the generated file should be included in the output jar as a java resource. |
| LOCAL_JAVA_RESOURCE_FILES += $(test_config_dir):com/android/tools/test_config.properties |
| |
| # Define variables to be written into the generated test_config.properties file. |
| android_merged_manifest := $(strip $(call intermediates-dir-for,APPS,$(LOCAL_INSTRUMENTATION_FOR),,COMMON)/manifest/AndroidManifest.xml) |
| android_resource_apk := $(strip $(call intermediates-dir-for,APPS,$(LOCAL_INSTRUMENTATION_FOR))/package.apk) |
| |
| # Snapshot the written variables so they cannot be polluted before the module is built. |
| $(test_config_file): private_android_merged_manifest := $(android_merged_manifest) |
| $(test_config_file): private_android_resource_apk := $(android_resource_apk) |
| |
| # Generate the test_config.properties file. Make it depend on the files to which it points. |
| $(test_config_file):$(android_merged_manifest) $(android_resource_apk) |
| $(hide) rm -f $@ |
| $(hide) echo "android_merged_manifest=$(private_android_merged_manifest)" >>$@ |
| $(hide) echo "android_resource_apk=$(private_android_resource_apk)" >>$@ |