Allow to override fastboot-info.txt for specific board

Introduce TARGET_BOARD_FASTBOOT_INFO_FILE to override
fastboot-info.txt generated by default

Test: locally with CF target on related change
Bug: 315811289
Change-Id: I52208e49ac1dfe8558849be9befa60df805665e3
Signed-off-by: Dmitrii Merkurev <dimorinny@google.com>
diff --git a/core/Makefile b/core/Makefile
index 845f7c8..403c4cf 100644
--- a/core/Makefile
+++ b/core/Makefile
@@ -5616,71 +5616,6 @@
 endif # build_otatools_package
 
 # -----------------------------------------------------------------
-#  fastboot-info.txt
-FASTBOOT_INFO_VERSION = 1
-
-INSTALLED_FASTBOOT_INFO_TARGET := $(PRODUCT_OUT)/fastboot-info.txt
-
-$(INSTALLED_FASTBOOT_INFO_TARGET):
-	rm -f $@
-	$(call pretty,"Target fastboot-info.txt: $@")
-	$(hide) echo "# fastboot-info for $(TARGET_PRODUCT)" >> $@
-	$(hide) echo "version $(FASTBOOT_INFO_VERSION)" >> $@
-ifneq ($(INSTALLED_BOOTIMAGE_TARGET),)
-	$(hide) echo "flash boot" >> $@
-endif
-ifneq ($(INSTALLED_INIT_BOOT_IMAGE_TARGET),)
-	$(hide) echo "flash init_boot" >> $@
-endif
-ifdef BOARD_PREBUILT_DTBOIMAGE
-	$(hide) echo "flash dtbo" >> $@
-endif
-ifneq ($(INSTALLED_DTIMAGE_TARGET),)
-	$(hide) echo "flash dts dt.img" >> $@
-endif
-ifneq ($(INSTALLED_VENDOR_KERNEL_BOOTIMAGE_TARGET),)
-	$(hide) echo "flash vendor_kernel_boot" >> $@
-endif
-ifneq ($(INSTALLED_RECOVERYIMAGE_TARGET),)
-	$(hide) echo "flash recovery" >> $@
-endif
-ifeq ($(BOARD_USES_PVMFWIMAGE),true)
-	$(hide) echo "flash pvmfw" >> $@
-endif
-ifneq ($(INSTALLED_VENDOR_BOOTIMAGE_TARGET),)
-	$(hide) echo "flash vendor_boot" >> $@
-endif
-ifeq ($(BOARD_AVB_ENABLE),true)
-ifeq ($(BUILDING_VBMETA_IMAGE),true)
-	$(hide) echo "flash --apply-vbmeta vbmeta" >> $@
-endif
-ifneq (,$(strip $(BOARD_AVB_VBMETA_SYSTEM)))
-	$(hide) echo "flash vbmeta_system" >> $@
-endif
-ifneq (,$(strip $(BOARD_AVB_VBMETA_VENDOR)))
-	$(hide) echo "flash vbmeta_vendor" >> $@
-endif
-ifneq (,$(strip $(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS)))
-	$(hide) $(foreach partition,$(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS), \
-	  echo "flash vbmeta_$(partition)" >> $@;)
-endif
-endif # BOARD_AVB_ENABLE
-	$(hide) echo "reboot fastboot" >> $@
-	$(hide) echo "update-super" >> $@
-	$(hide) $(foreach partition,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \
-	  echo "flash $(partition)" >> $@;)
-ifdef BUILDING_SYSTEM_OTHER_IMAGE
-	$(hide) echo "flash --slot-other system system_other.img" >> $@
-endif
-ifdef BUILDING_CACHE_IMAGE
-	$(hide) echo "if-wipe erase cache" >> $@
-endif
-	$(hide) echo "if-wipe erase userdata" >> $@
-ifeq ($(BOARD_USES_METADATA_PARTITION),true)
-	$(hide) echo "if-wipe erase metadata" >> $@
-endif
-
-# -----------------------------------------------------------------
 #  misc_info.txt
 
 INSTALLED_MISC_INFO_TARGET := $(PRODUCT_OUT)/misc_info.txt
diff --git a/target/board/Android.mk b/target/board/Android.mk
index decc345..c2ddb54 100644
--- a/target/board/Android.mk
+++ b/target/board/Android.mk
@@ -49,6 +49,77 @@
 
 $(call declare-0p-target,$(INSTALLED_ANDROID_INFO_TXT_TARGET))
 
+#  fastboot-info.txt
+FASTBOOT_INFO_VERSION = 1
+INSTALLED_FASTBOOT_INFO_TARGET := $(PRODUCT_OUT)/fastboot-info.txt
+
+ifdef TARGET_BOARD_FASTBOOT_INFO_FILE
+$(INSTALLED_FASTBOOT_INFO_TARGET): $(TARGET_BOARD_FASTBOOT_INFO_FILE)
+	rm -f $@
+	$(call pretty,"Target fastboot-info.txt: $@")
+	$(hide) cp $< $@
+else
+$(INSTALLED_FASTBOOT_INFO_TARGET):
+	rm -f $@
+	$(call pretty,"Target fastboot-info.txt: $@")
+
+	$(hide) echo "# fastboot-info for $(TARGET_PRODUCT)" >> $@
+	$(hide) echo "version $(FASTBOOT_INFO_VERSION)" >> $@
+ifneq ($(INSTALLED_BOOTIMAGE_TARGET),)
+	$(hide) echo "flash boot" >> $@
+endif
+ifneq ($(INSTALLED_INIT_BOOT_IMAGE_TARGET),)
+	$(hide) echo "flash init_boot" >> $@
+endif
+ifdef BOARD_PREBUILT_DTBOIMAGE
+	$(hide) echo "flash dtbo" >> $@
+endif
+ifneq ($(INSTALLED_DTIMAGE_TARGET),)
+	$(hide) echo "flash dts dt.img" >> $@
+endif
+ifneq ($(INSTALLED_VENDOR_KERNEL_BOOTIMAGE_TARGET),)
+	$(hide) echo "flash vendor_kernel_boot" >> $@
+endif
+ifneq ($(INSTALLED_RECOVERYIMAGE_TARGET),)
+	$(hide) echo "flash recovery" >> $@
+endif
+ifeq ($(BOARD_USES_PVMFWIMAGE),true)
+	$(hide) echo "flash pvmfw" >> $@
+endif
+ifneq ($(INSTALLED_VENDOR_BOOTIMAGE_TARGET),)
+	$(hide) echo "flash vendor_boot" >> $@
+endif
+ifeq ($(BOARD_AVB_ENABLE),true)
+ifeq ($(BUILDING_VBMETA_IMAGE),true)
+	$(hide) echo "flash --apply-vbmeta vbmeta" >> $@
+endif
+ifneq (,$(strip $(BOARD_AVB_VBMETA_SYSTEM)))
+	$(hide) echo "flash vbmeta_system" >> $@
+endif
+ifneq (,$(strip $(BOARD_AVB_VBMETA_VENDOR)))
+	$(hide) echo "flash vbmeta_vendor" >> $@
+endif
+ifneq (,$(strip $(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS)))
+	$(hide) $(foreach partition,$(BOARD_AVB_VBMETA_CUSTOM_PARTITIONS), \
+	  echo "flash vbmeta_$(partition)" >> $@;)
+endif
+endif # BOARD_AVB_ENABLE
+	$(hide) echo "reboot fastboot" >> $@
+	$(hide) echo "update-super" >> $@
+	$(hide) $(foreach partition,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \
+	  echo "flash $(partition)" >> $@;)
+ifdef BUILDING_SYSTEM_OTHER_IMAGE
+	$(hide) echo "flash --slot-other system system_other.img" >> $@
+endif
+ifdef BUILDING_CACHE_IMAGE
+	$(hide) echo "if-wipe erase cache" >> $@
+endif
+	$(hide) echo "if-wipe erase userdata" >> $@
+ifeq ($(BOARD_USES_METADATA_PARTITION),true)
+	$(hide) echo "if-wipe erase metadata" >> $@
+endif
+endif
+
 # Copy compatibility metadata to the device.
 
 # Device Manifest