mpc85xx: fix address config for ws-ap3825i
[openwrt/openwrt.git] / include / trusted-firmware-a.mk
1 PKG_NAME ?= trusted-firmware-a
2 PKG_CPE_ID ?= cpe:/a:arm:trusted_firmware-a
3
4 ifndef PKG_SOURCE_PROTO
5 PKG_SOURCE = trusted-firmware-a-$(PKG_VERSION).tar.gz
6 PKG_SOURCE_URL:=https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/snapshot
7 endif
8
9 PKG_BUILD_DIR = $(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
10
11 PKG_TARGETS := bin
12 PKG_FLAGS:=nonshared
13
14 PKG_LICENSE:=BSD-3-Clause
15 PKG_LICENSE_FILES:=docs/license.rst
16
17 PKG_BUILD_PARALLEL:=1
18
19 export GCC_HONOUR_COPTS=s
20
21 define Package/trusted-firmware-a/install/default
22 $(CP) $(patsubst %,$(PKG_BUILD_DIR)/build/$(PLAT)/release/%,$(TFA_IMAGE)) $(1)/
23 endef
24
25 Package/trusted-firmware-a/install = $(Package/trusted-firmware-a/install/default)
26
27 define Trusted-Firmware-A/Init
28 BUILD_TARGET:=
29 BUILD_SUBTARGET:=
30 BUILD_DEVICES:=
31 NAME:=
32 DEPENDS:=
33 HIDDEN:=
34 DEFAULT:=
35 PLAT:=
36 VARIANT:=$(1)
37 TFA_IMAGE:=
38 endef
39
40 TARGET_DEP = TARGET_$(BUILD_TARGET)$(if $(BUILD_SUBTARGET),_$(BUILD_SUBTARGET))
41
42 define Build/Trusted-Firmware-A/Target
43 $(eval $(call Trusted-Firmware-A/Init,$(1)))
44 $(eval $(call Trusted-Firmware-A/Default,$(1)))
45 $(eval $(call Trusted-Firmware-A/$(1),$(1)))
46
47 define Package/trusted-firmware-a-$(1)
48 SECTION:=boot
49 CATEGORY:=Boot Loaders
50 TITLE:=Trusted-Firmware-A for $(NAME)
51 VARIANT:=$(VARIANT)
52 DEPENDS:=@!IN_SDK $(DEPENDS)
53 HIDDEN:=$(HIDDEN)
54 ifneq ($(BUILD_TARGET),)
55 DEPENDS += @$(TARGET_DEP)
56 ifneq ($(BUILD_DEVICES),)
57 DEFAULT := y if ($(TARGET_DEP)_Default \
58 $(patsubst %,|| $(TARGET_DEP)_DEVICE_%,$(BUILD_DEVICES)) \
59 $(patsubst %,|| $(patsubst TARGET_%,TARGET_DEVICE_%,$(TARGET_DEP))_DEVICE_%,$(BUILD_DEVICES)))
60 endif
61 endif
62 $(if $(DEFAULT),DEFAULT:=$(DEFAULT))
63 URL:=https://www.trustedfirmware.org/projects/tf-a/
64 endef
65
66 define Package/trusted-firmware-a-$(1)/install
67 $$(Package/trusted-firmware-a/install)
68 endef
69 endef
70
71 define Build/Configure/Trusted-Firmware-A
72 $(INSTALL_DIR) $(STAGING_DIR)/usr/include
73 endef
74
75 DTC=$(wildcard $(LINUX_DIR)/scripts/dtc/dtc)
76
77 define Build/Compile/Trusted-Firmware-A
78 +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
79 CROSS_COMPILE=$(TARGET_CROSS) \
80 OPENSSL_DIR=$(STAGING_DIR_HOST) \
81 $(if $(DTC),DTC="$(DTC)") \
82 PLAT=$(PLAT) \
83 BUILD_STRING="OpenWrt v$(PKG_VERSION)-$(PKG_RELEASE) ($(VARIANT))" \
84 $(if $(CONFIG_BINUTILS_VERSION_2_37)$(CONFIG_BINUTILS_VERSION_2_38),,LDFLAGS="-no-warn-rwx-segments") \
85 $(TFA_MAKE_FLAGS)
86 endef
87
88 define BuildPackage/Trusted-Firmware-A/Defaults
89 Build/Configure/Default = $$$$(Build/Configure/Trusted-Firmware-A)
90 Build/Compile/Default = $$$$(Build/Compile/Trusted-Firmware-A)
91 endef
92
93 define BuildPackage/Trusted-Firmware-A
94 $(eval $(call BuildPackage/Trusted-Firmware-A/Defaults))
95 $(foreach type,$(if $(DUMP),$(TFA_TARGETS),$(BUILD_VARIANT)), \
96 $(eval $(call Build/Trusted-Firmware-A/Target,$(type)))
97 )
98 $(eval $(call Build/DefaultTargets))
99 $(foreach type,$(if $(DUMP),$(TFA_TARGETS),$(BUILD_VARIANT)), \
100 $(call BuildPackage,trusted-firmware-a-$(type))
101 )
102 endef