diff --git a/src/armnnUtils/ParserPrototxtFixture.hpp b/src/armnnUtils/ParserPrototxtFixture.hpp
index 1adada7..2287de5 100644
--- a/src/armnnUtils/ParserPrototxtFixture.hpp
+++ b/src/armnnUtils/ParserPrototxtFixture.hpp
@@ -5,12 +5,17 @@
 
 #pragma once
 
-#include "armnn/IRuntime.hpp"
-#include "armnnOnnxParser/IOnnxParser.hpp"
-#include "test/TensorHelpers.hpp"
-#include "VerificationHelpers.hpp"
+#include <armnn/IRuntime.hpp>
+#include <armnn/test/TensorHelpers.hpp>
+
+#include <armnnOnnxParser/IOnnxParser.hpp>
+
+#include <armnnUtils/VerificationHelpers.hpp>
+
+#include <backends/BackendRegistry.hpp>
 
 #include <boost/format.hpp>
+
 #include <string>
 
 namespace armnnUtils
@@ -24,15 +29,13 @@
         , m_NetworkIdentifier(-1)
     {
         armnn::IRuntime::CreationOptions options;
-        m_Runtimes.push_back(std::make_pair(armnn::IRuntime::Create(options), armnn::Compute::CpuRef));
 
-#if ARMCOMPUTENEON_ENABLED
-        m_Runtimes.push_back(std::make_pair(armnn::IRuntime::Create(options), armnn::Compute::CpuAcc));
-#endif
-
-#if ARMCOMPUTECL_ENABLED
-        m_Runtimes.push_back(std::make_pair(armnn::IRuntime::Create(options), armnn::Compute::GpuAcc));
-#endif
+        // Create runtimes for each available backend
+        const armnn::BackendIdSet availableBackendIds = armnn::BackendRegistryInstance().GetBackendIds();
+        for (auto& backendId : availableBackendIds)
+        {
+            m_Runtimes.push_back(std::make_pair(armnn::IRuntime::Create(options), backendId));
+        }
     }
 
     /// Parses and loads the network defined by the m_Prototext string.
diff --git a/src/backends/cl/CMakeLists.txt b/src/backends/cl/CMakeLists.txt
index 1f99017..7182332 100644
--- a/src/backends/cl/CMakeLists.txt
+++ b/src/backends/cl/CMakeLists.txt
@@ -3,21 +3,18 @@
 # SPDX-License-Identifier: MIT
 #
 
-list(APPEND armnnClBackend_sources
-    ClBackend.cpp
-    ClBackend.hpp
-    ClBackendId.hpp
-    ClContextControl.cpp
-    ClContextControl.hpp
-    ClLayerSupport.cpp
-    ClLayerSupport.hpp
-    ClWorkloadFactory.cpp
-    ClWorkloadFactory.hpp
-)
-
 if(ARMCOMPUTECL)
     list(APPEND armnnClBackend_sources
+        ClBackend.cpp
+        ClBackend.hpp
         ClBackendId.hpp
+        ClContextControl.cpp
+        ClContextControl.hpp
+        ClLayerSupport.cpp
+        ClLayerSupport.hpp
+        ClTensorHandle.hpp
+        ClWorkloadFactory.cpp
+        ClWorkloadFactory.hpp
         OpenClTimer.cpp
         OpenClTimer.hpp
     )
@@ -27,6 +24,17 @@
     if(BUILD_UNIT_TESTS)
         add_subdirectory(test)
     endif()
+
+else()
+    list(APPEND armnnClBackend_sources
+        ClBackendId.hpp
+        ClContextControl.cpp
+        ClContextControl.hpp
+        ClLayerSupport.cpp
+        ClLayerSupport.hpp
+        ClWorkloadFactory.cpp
+        ClWorkloadFactory.hpp
+    )
 endif()
 
 add_library(armnnClBackend OBJECT ${armnnClBackend_sources})
