feat(rme) : introduce new build flag for RME stack

* Introduce new build flag ENABLE_REALM_PAYLOAD_TESTS to build
  Realm Payload Tests and pack realm image to tftf.bin.
* Also enable PAuth for TFTF and Realm Payload by default
  for RME stack.
* This commit deprecates the use of `pack_realm` build target.
* The patch also modifies the user guide instructions to build
  and pack realm payload tests.

NOTE: The `pack_realm` build target, even though deprecated,
is still available for compatibility reasons. It will be
removed in a future commit.

Signed-off-by: Shruti Gupta <shruti.gupta@arm.com>
Change-Id: Iaa83651c2f41152a5a2bf4d0b9caa550f302da6b
diff --git a/make_helpers/build_macros.mk b/make_helpers/build_macros.mk
index 5cd8bc6..e12f8e2 100644
--- a/make_helpers/build_macros.mk
+++ b/make_helpers/build_macros.mk
@@ -18,6 +18,22 @@
 $(and $(patsubst 0,,$(value $(1))),$(patsubst 1,,$(value $(1))),$(error $(1) must be boolean))
 endef
 
+0-9 := 0 1 2 3 4 5 6 7 8 9
+
+# Function to verify that a given option $(1) contains a numeric value
+define assert_numeric
+$(if $($(1)),,$(error $(1) must not be empty))
+$(eval __numeric := $($(1)))
+$(foreach d,$(0-9),$(eval __numeric := $(subst $(d),,$(__numeric))))
+$(if $(__numeric),$(error $(1) must be numeric))
+endef
+
+# Convenience function for verifying options have numeric values
+# $(eval $(call assert_numerics,FOO BOO)) will assert FOO and BOO contain numeric values
+define assert_numerics
+    $(foreach num,$1,$(eval $(call assert_numeric,$(num))))
+endef
+
 # CREATE_SEQ is a recursive function to create sequence of numbers from 1 to
 # $(2) and assign the sequence to $(1)
 define CREATE_SEQ