mirror of
				https://github.com/openwrt/openwrt.git
				synced 2025-10-30 07:49:23 +08:00 
			
		
		
		
	 8c3a43be27
			
		
	
	8c3a43be27
	
	
	
		
			
			In some cases hostpkg python from packages feed is used (hostpkg has higher priority in PATH) which causes build failure (cryptography module is missing). So override PATH to not use hostpkg python. Signed-off-by: Thomas Richard <thomas.richard@bootlin.com> Link: https://github.com/openwrt/openwrt/pull/18102 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
		
			
				
	
	
		
			114 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| include $(INCLUDE_DIR)/prereq.mk
 | |
| 
 | |
| PKG_NAME ?= optee-os
 | |
| 
 | |
| ifndef PKG_SOURCE_PROTO
 | |
| PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 | |
| PKG_SOURCE_URL_FILE:=$(PKG_VERSION).tar.gz
 | |
| PKG_SOURCE_URL = https://github.com/OP-TEE/optee_os/archive/refs/tags/
 | |
| TAR_OPTIONS+= --transform 's/optee_os/$(PKG_NAME)/'
 | |
| endif
 | |
| 
 | |
| PKG_BUILD_DIR = $(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
 | |
| 
 | |
| PKG_TARGETS := bin
 | |
| PKG_FLAGS:=nonshared
 | |
| 
 | |
| PKG_LICENSE:=BSD 2-Clause
 | |
| PKG_LICENSE_FILES:=LICENSE
 | |
| 
 | |
| PKG_BUILD_PARALLEL ?= 1
 | |
| 
 | |
| $(eval $(call TestHostCommand,python3-cryptography, \
 | |
|   Please install the Python3 cryptography module, \
 | |
|   $(STAGING_DIR_HOST)/bin/python3 -c 'import cryptography'))
 | |
| 
 | |
| $(eval $(call TestHostCommand,python3-pyelftools, \
 | |
|     Please install the Python3 pyelftools module, \
 | |
|     $(STAGING_DIR_HOST)/bin/python3 -c 'import elftools'))
 | |
| 
 | |
| export GCC_HONOUR_COPTS=s
 | |
| 
 | |
| define Package/optee-os/install/default
 | |
| 	$(CP) $(patsubst %,$(PKG_BUILD_DIR)/out/arm-plat-$(PLAT)/core/%,$(OPTEE_IMAGE)) $(1)/
 | |
| endef
 | |
| 
 | |
| Package/optee-os/install = $(Package/optee-os/install/default)
 | |
| 
 | |
| define Optee-os/Init
 | |
|   BUILD_TARGET:=
 | |
|   BUILD_SUBTARGET:=
 | |
|   BUILD_DEVICES:=
 | |
|   NAME:=
 | |
|   DEPENDS:=
 | |
|   HIDDEN:=
 | |
|   DEFAULT:=
 | |
|   VARIANT:=$(1)
 | |
|   PLAT:=$(1)
 | |
|   PLAT_FLAVOR:=
 | |
|   OPTEE_IMAGE:=tee-header_v2.bin tee-pager_v2.bin tee-pageable_v2.bin
 | |
| endef
 | |
| 
 | |
| TARGET_DEP = TARGET_$(BUILD_TARGET)$(if $(BUILD_SUBTARGET),_$(BUILD_SUBTARGET))
 | |
| 
 | |
| define Build/Optee-os/Target
 | |
|   $(eval $(call Optee-os/Init,$(1)))
 | |
|   $(eval $(call Optee-os/Default,$(1)))
 | |
|   $(eval $(call Optee-os/$(1),$(1)))
 | |
| 
 | |
|   define Package/optee-os-$(1)
 | |
|     SECTION:=boot
 | |
|     CATEGORY:=Boot Loaders
 | |
|     TITLE:=OPTEE-OS for $(NAME)
 | |
|     VARIANT:=$(VARIANT)
 | |
|     DEPENDS:=@!IN_SDK $(DEPENDS)
 | |
|     HIDDEN:=$(HIDDEN)
 | |
|     ifneq ($(BUILD_TARGET),)
 | |
|       DEPENDS += @$(TARGET_DEP)
 | |
|       ifneq ($(BUILD_DEVICES),)
 | |
|         DEFAULT := y if ($(TARGET_DEP)_Default \
 | |
| 		$(patsubst %,|| $(TARGET_DEP)_DEVICE_%,$(BUILD_DEVICES)) \
 | |
| 		$(patsubst %,|| $(patsubst TARGET_%,TARGET_DEVICE_%,$(TARGET_DEP))_DEVICE_%,$(BUILD_DEVICES)))
 | |
|       endif
 | |
|     endif
 | |
|     $(if $(DEFAULT),DEFAULT:=$(DEFAULT))
 | |
|     URL:=https://optee.readthedocs.io
 | |
|   endef
 | |
| 
 | |
|   define Package/optee-os-$(1)/install
 | |
| 	$$(Package/optee-os/install)
 | |
|   endef
 | |
| endef
 | |
| 
 | |
| define Build/Configure/Optee-os
 | |
| endef
 | |
| 
 | |
| define Build/Compile/Optee-os
 | |
| 	+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
 | |
| 		PATH=$(LINUX_DIR)/scripts/dtc/:$(STAGING_DIR_HOST)/bin:$(PATH) \
 | |
| 		CROSS_COMPILE=$(TARGET_CROSS) \
 | |
| 		CROSS_COMPILE_core="$(TARGET_CROSS)" \
 | |
| 		CROSS_COMPILE_ta_arm64="$(TARGET_CROSS)" \
 | |
| 		CROSS_COMPILE_ta_arm32="$(TARGET_CROSS)" \
 | |
| 		$(if $(CONFIG_ARCH_64BIT), CFG_ARM64_core=y CFG_USER_TA_TARGETS=ta_arm64, CFG_ARM32_core=y) \
 | |
| 		PLATFORM="$(PLAT)" \
 | |
| 		PLATFORM_FLAVOR="$(call qstrip,$(PLAT_FLAVOR))" \
 | |
| 		$(OPTEE_MAKE_FLAGS)
 | |
| endef
 | |
| 
 | |
| define BuildPackage/Optee-os/Defaults
 | |
|   Build/Configure/Default = $$$$(Build/Configure/Optee-os)
 | |
|   Build/Compile/Default = $$$$(Build/Compile/Optee-os)
 | |
| endef
 | |
| 
 | |
| define BuildPackage/Optee-os
 | |
|   $(eval $(call BuildPackage/Optee-os/Defaults))
 | |
|   $(foreach type,$(if $(DUMP),$(OPTEE_TARGETS),$(BUILD_VARIANT)), \
 | |
|     $(eval $(call Build/Optee-os/Target,$(type)))
 | |
|   )
 | |
|   $(eval $(call Build/DefaultTargets))
 | |
|   $(foreach type,$(if $(DUMP),$(OPTEE_TARGETS),$(BUILD_VARIANT)), \
 | |
|     $(call BuildPackage,optee-os-$(type))
 | |
|   )
 | |
| endef
 |