optee_rust_examples_ext: Migrate to standard environment vars

Allow OP-TEE rust examples to be compiled using standard OP-TEE
environment variables:
- CROSS_COMPILE
- TA_DEV_KIT_DIR
- OPTEE_CLIENT_EXPORT

Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Yuan Zhuang <yuanz@apache.org>
Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
diff --git a/br-ext/package/optee_rust_examples_ext/Config.in b/br-ext/package/optee_rust_examples_ext/Config.in
index 8162a33..b2913fa 100644
--- a/br-ext/package/optee_rust_examples_ext/Config.in
+++ b/br-ext/package/optee_rust_examples_ext/Config.in
@@ -11,6 +11,12 @@
 
 if BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT
 
+config BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_SDK
+	string "OPTEE SDK path"
+	default ""
+	help
+	  The path to OP-TEE TA development SDK
+
 config BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_CROSS_COMPILE
 	string "OP-TEE Rust examples cross compiler"
 	default ""
diff --git a/br-ext/package/optee_rust_examples_ext/optee_rust_examples_ext.mk b/br-ext/package/optee_rust_examples_ext/optee_rust_examples_ext.mk
index 5b75658..a44d3e6 100644
--- a/br-ext/package/optee_rust_examples_ext/optee_rust_examples_ext.mk
+++ b/br-ext/package/optee_rust_examples_ext/optee_rust_examples_ext.mk
@@ -4,6 +4,7 @@
 OPTEE_RUST_EXAMPLES_EXT_SITE_METHOD = local
 OPTEE_RUST_EXAMPLES_EXT_INSTALL_STAGING = YES
 OPTEE_RUST_EXAMPLES_EXT_DEPENDENCIES = optee_client_ext
+OPTEE_RUST_EXAMPLES_EXT_SDK = $(BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_SDK)
 
 ifneq (,$(BR2_PACKAGE_OPTEE_RUST_EXAMPLES_TC_PATH_ENV))
 OPTEE_RUST_EXAMPLES_TC_PATH_ENV = PATH=$(BR2_PACKAGE_OPTEE_RUST_EXAMPLES_TC_PATH_ENV)
@@ -28,7 +29,11 @@
 define OPTEE_RUST_EXAMPLES_EXT_BUILD_CMDS
 	@$(foreach f,$(wildcard $(@D)/examples/*/Makefile), \
 		echo Building $f && \
-		$(OPTEE_RUST_EXAMPLES_TC_PATH_ENV) $(MAKE) -C $(dir $f) &&) true
+		$(OPTEE_RUST_EXAMPLES_TC_PATH_ENV) \
+		CROSS_COMPILE=$(BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_CROSS_COMPILE) \
+		TA_DEV_KIT_DIR=$(OPTEE_RUST_EXAMPLES_EXT_SDK) \
+		OPTEE_CLIENT_EXPORT=$(TARGET_DIR) \
+		$(MAKE) -C $(dir $f) &&) true
 endef
 
 define OPTEE_RUST_EXAMPLES_EXT_INSTALL_TARGET_CMDS
diff --git a/common.mk b/common.mk
index 0152912..f174b4c 100644
--- a/common.mk
+++ b/common.mk
@@ -196,11 +196,13 @@
 CROSS_COMPILE_NS_KERNEL ?= "$(CCACHE)$(AARCH$(COMPILE_NS_KERNEL)_CROSS_COMPILE)"
 CROSS_COMPILE_S_USER    ?= "$(CCACHE)$(AARCH$(COMPILE_S_USER)_CROSS_COMPILE)"
 CROSS_COMPILE_S_KERNEL  ?= "$(CCACHE)$(AARCH$(COMPILE_S_KERNEL)_CROSS_COMPILE)"
+CROSS_COMPILE_RUST	?= "$(AARCH$(COMPILE_S_USER)_CROSS_COMPILE)"
 else ifeq ($(ARCH),riscv)
 CROSS_COMPILE_NS_USER   ?= "$(CCACHE)$(RISCV$(COMPILE_NS_USER)_CROSS_COMPILE)"
 CROSS_COMPILE_NS_KERNEL ?= "$(CCACHE)$(RISCV$(COMPILE_NS_KERNEL)_CROSS_COMPILE)"
 CROSS_COMPILE_S_USER    ?= "$(CCACHE)$(RISCV$(COMPILE_S_USER)_CROSS_COMPILE)"
 CROSS_COMPILE_S_KERNEL  ?= "$(CCACHE)$(RISCV$(COMPILE_S_KERNEL)_CROSS_COMPILE)"
+CROSS_COMPILE_RUST	?= "$(RISCV$(COMPILE_S_USER)_CROSS_COMPILE)"
 endif
 
 ################################################################################
@@ -285,7 +287,8 @@
 OPTEE_RUST_ENABLE ?= n
 ifeq ($(OPTEE_RUST_ENABLE),y)
 BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT ?= y
-BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_CROSS_COMPILE ?= $(CROSS_COMPILE_S_USER)
+BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_CROSS_COMPILE ?= $(CROSS_COMPILE_RUST)
+BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_SDK ?= $(OPTEE_OS_TA_DEV_KIT_DIR)
 BR2_PACKAGE_OPTEE_RUST_EXAMPLES_EXT_SITE ?= $(OPTEE_RUST_PATH)
 BR2_PACKAGE_OPTEE_RUST_EXAMPLES_TC_PATH_ENV = $(ROOT)/toolchains/aarch64/bin:$(HOME)/.cargo/bin:$(PATH)
 endif