IVGCVSW-4487 Remove boot/dll.hpp from dynamic backends test.

* Replace the call to boost::dll::program_location() with a cmake
  variable set at runtime. PROJECT_BINARY_DIR appears to fit the bill.
* Fall back to a boost custom CLI to allow it to be user specified.
* Add a FAQ entry describing potential problems.
* Adding flexibility to GetSharedObjectsTestImpl to cope with
  sym links in file systems.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Iccf3f1b0f2911101e1f61bffd73cefba271bbfe2
diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake
index 2bfca58..60b6a3d 100644
--- a/cmake/GlobalConfig.cmake
+++ b/cmake/GlobalConfig.cmake
@@ -334,6 +334,10 @@
     add_definitions(-DARMNNREF_ENABLED)
 endif()
 
+# This is the root for the dynamic backend tests to search for dynamic
+# backends. By default it will be the project build directory.
+add_definitions('-DDYNAMIC_BACKEND_BUILD_DIR="${PROJECT_BINARY_DIR}"')
+
 # ArmNN dynamic backend
 if(DYNAMIC_BACKEND_PATHS)
     add_definitions(-DARMNN_DYNAMIC_BACKEND_ENABLED)