Enhance mbedtls fetch process

Update management of MbedTLS external component to be optimized
for download speed insted of availability.
The updated process is:
  - check if binary is available. If yes configure build to use it
    and stop.
  - if not, check is source is available. If yes, build it and use
    the resulting binary.
  - if not, then download the source using git, compile it and use
    the resulting binary

The following variables can be set on the command line to alter the
behavior of the module:
  - MBEDTLS_URL git repo URL to fetch from.
  - MBEDTLS_REFSPEC revision to fetch
  - MBEDTLS_SOURCE_DIR to specify location of source code in
    local file syetem.
  - MBEDTLS_INSTALL_DIR to specify location of binary.

I.e. cmake -S <...> -B <...> -DMBEDTLS_INSTALL_DIR=~/mbedtls
will make the resulting binary installed to ~/mbedtls. This can be
used later to speed up a clean build an use the prebuilt binary.

Change-Id: I8a9ad8b3303e6dfa0a7c9c3d7e4b4787b94d925a
Signed-off-by: Gyorgy Szing <Gyorgy.Szing@arm.com>
1 file changed