TF-RMM Release v0.1.0

This is the first external release of TF-RMM and provides a reference
implementation of Realm Management Monitor (RMM) as specified by the
RMM Beta0 specification[1].

The `docs/readme.rst` has more details about the project and
`docs/getting_started/getting-started.rst` has details on how to get
started with TF-RMM.

[1] https://developer.arm.com/documentation/den0137/1-0bet0/?lang=en

Signed-off-by: Soby Mathew <soby.mathew@arm.com>
Change-Id: I205ef14c015e4a37ae9ae1a64e4cd22eb8da746e
diff --git a/toolchains/common.cmake b/toolchains/common.cmake
new file mode 100644
index 0000000..4d710fb
--- /dev/null
+++ b/toolchains/common.cmake
@@ -0,0 +1,24 @@
+#
+# SPDX-License-Identifier: BSD-3-Clause
+# SPDX-FileCopyrightText: Copyright TF-RMM Contributors.
+#
+
+include_guard()
+
+set(CMAKE_SYSTEM_NAME "Generic")
+set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
+set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
+set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
+set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
+
+foreach(language IN ITEMS ASM C)
+    string(APPEND CMAKE_${language}_FLAGS_INIT "-fno-common ")
+    string(APPEND CMAKE_${language}_FLAGS_INIT "-fomit-frame-pointer ")
+    string(APPEND CMAKE_${language}_FLAGS_INIT "-ffunction-sections ")
+    string(APPEND CMAKE_${language}_FLAGS_INIT "-fdata-sections ")
+    string(APPEND CMAKE_${language}_FLAGS_INIT "-Wall -Werror ")
+    string(APPEND CMAKE_${language}_FLAGS_DEBUG_INIT "-Og ")
+    string(APPEND CMAKE_${language}_FLAGS_RELEASE_INIT "-g ")
+endforeach()
+
+string(APPEND CMAKE_EXE_LINKER_FLAGS_INIT "-Wl,--gc-sections ")