m5: Create aml_install phony target
[GitHub/LineageOS/G12/android_device_bananapi_m5.git] / factory.mk
CommitLineData
53954460 1#
eebe6e26 2# Copyright (C) 2021-2023 The LineageOS Project
53954460
JA
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17FACTORY_PATH := device/bananapi/m5/factory
18
d6736832
NJ
19PRODUCT_INSTALL_OUT := $(PRODUCT_OUT)/aml_install
20PRODUCT_UPGRADE_OUT := $(PRODUCT_OUT)/aml_upgrade
21INSTALL_PACKAGE_CONFIG_FILE := $(PRODUCT_INSTALL_OUT)/image.cfg
22UPGRADE_PACKAGE_CONFIG_FILE := $(PRODUCT_UPGRADE_OUT)/image.cfg
53954460
JA
23AML_IMAGE_TOOL := $(HOST_OUT_EXECUTABLES)/aml_image_packer$(HOST_EXECUTABLE_SUFFIX)
24
d6736832 25INSTALLED_AML_INSTALL_PACKAGE_TARGET := $(PRODUCT_OUT)/aml_install_package.img
53954460
JA
26INSTALLED_AML_UPGRADE_PACKAGE_TARGET := $(PRODUCT_OUT)/aml_upgrade_package.img
27
d6736832
NJ
28define aml-copy-install-file
29 $(hide) $(ACP) $(1) $(PRODUCT_INSTALL_OUT)/$(strip $(if $(2), $(2), $(notdir $(1))))
30endef
31
32define aml-copy-upgrade-file
aebd6d75 33 $(hide) $(ACP) $(1) $(PRODUCT_UPGRADE_OUT)/$(strip $(if $(2), $(2), $(notdir $(1))))
53954460
JA
34endef
35
36NEEDED_IMAGES := \
37 boot.img \
38 recovery.img \
39 dtbo.img \
40 vbmeta.img \
eebe6e26 41 super.img \
d6736832 42 super_empty.img \
eebe6e26 43 logo.img
53954460 44
d6736832
NJ
45$(INSTALLED_AML_INSTALL_PACKAGE_TARGET): $(addprefix $(PRODUCT_OUT)/,$(NEEDED_IMAGES)) $(ACP) $(AML_IMAGE_TOOL)
46 $(hide) mkdir -p $(PRODUCT_INSTALL_OUT)
47ifneq ("$(wildcard $(FACTORY_PATH)/u-boot.bin)","")
48 $(hide) $(call aml-copy-install-file, $(FACTORY_PATH)/u-boot.bin)
49else ifneq ("$(wildcard vendor/amlogic/m5/radio/bootloader-recovery.img)","")
50 $(hide) $(call aml-copy-install-file, vendor/amlogic/m5/radio/bootloader-recovery.img, u-boot.bin)
51else
52 $(error "no u-boot.bin found in $(FACTORY_PATH)")
53endif
54 $(hide) $(call aml-copy-install-file, $(PRODUCT_OUT)/logo.img)
55 $(hide) $(call aml-copy-install-file, $(FACTORY_PATH)/aml_sdc_burn.ini)
56 $(hide) $(call aml-copy-install-file, $(FACTORY_PATH)/image.cfg)
57 $(hide) $(call aml-copy-install-file, $(FACTORY_PATH)/platform.conf)
58 $(hide) $(call aml-copy-install-file, $(PRODUCT_OUT)/boot.img)
59 $(hide) $(call aml-copy-install-file, $(PRODUCT_OUT)/recovery.img)
60 $(hide) $(call aml-copy-install-file, $(INSTALLED_2NDBOOTLOADER_TARGET), dtb.img)
61 $(hide) $(call aml-copy-install-file, $(PRODUCT_OUT)/dtbo.img)
62 $(hide) $(call aml-copy-install-file, $(PRODUCT_OUT)/super_empty.img, super.img)
63 $(hide) $(call aml-copy-install-file, $(PRODUCT_OUT)/vbmeta.img)
64 $(hide) $(AML_IMAGE_TOOL) -r $(INSTALL_PACKAGE_CONFIG_FILE) $(PRODUCT_INSTALL_OUT)/ $@
65 $(hide) rm -rf $(PRODUCT_INSTALL_OUT)
66 $(hide) echo " $@ created"
67
68.PHONY: aml_install
69aml_install: $(INSTALLED_AML_INSTALL_PACKAGE_TARGET)
70
aebd6d75 71$(INSTALLED_AML_UPGRADE_PACKAGE_TARGET): $(addprefix $(PRODUCT_OUT)/,$(NEEDED_IMAGES)) $(ACP) $(AML_IMAGE_TOOL)
53954460 72 $(hide) mkdir -p $(PRODUCT_UPGRADE_OUT)
d1568092 73ifneq ("$(wildcard $(FACTORY_PATH)/u-boot.bin)","")
d6736832 74 $(hide) $(call aml-copy-upgrade-file, $(FACTORY_PATH)/u-boot.bin)
349b60b0 75else ifneq ("$(wildcard vendor/amlogic/m5/radio/bootloader.img)","")
d6736832 76 $(hide) $(call aml-copy-upgrade-file, vendor/amlogic/m5/radio/bootloader.img, u-boot.bin)
d1568092
JA
77else
78 $(error "no u-boot.bin found in $(FACTORY_PATH)")
53954460 79endif
d6736832
NJ
80 $(hide) $(call aml-copy-upgrade-file, $(PRODUCT_OUT)/logo.img)
81 $(hide) $(call aml-copy-upgrade-file, $(FACTORY_PATH)/aml_sdc_burn.ini)
82 $(hide) $(call aml-copy-upgrade-file, $(FACTORY_PATH)/image.cfg)
83 $(hide) $(call aml-copy-upgrade-file, $(FACTORY_PATH)/platform.conf)
84 $(hide) $(call aml-copy-upgrade-file, $(PRODUCT_OUT)/boot.img)
85 $(hide) $(call aml-copy-upgrade-file, $(PRODUCT_OUT)/recovery.img)
86 $(hide) $(call aml-copy-upgrade-file, $(INSTALLED_2NDBOOTLOADER_TARGET), dtb.img)
87 $(hide) $(call aml-copy-upgrade-file, $(PRODUCT_OUT)/dtbo.img)
88 $(hide) $(call aml-copy-upgrade-file, $(PRODUCT_OUT)/super.img)
89 $(hide) $(call aml-copy-upgrade-file, $(PRODUCT_OUT)/vbmeta.img)
90 $(hide) $(AML_IMAGE_TOOL) -r $(UPGRADE_PACKAGE_CONFIG_FILE) $(PRODUCT_UPGRADE_OUT)/ $@
53954460
JA
91 $(hide) rm -rf $(PRODUCT_UPGRADE_OUT)
92 $(hide) echo " $@ created"
93
94.PHONY: aml_upgrade
95aml_upgrade: $(INSTALLED_AML_UPGRADE_PACKAGE_TARGET)