From 1646c406ce5e5cf59d99c61c3e02f1ee8afac06d Mon Sep 17 00:00:00 2001
From: Julien Malik <julien.malik@c-s.fr>
Date: Fri, 6 Jul 2012 10:02:27 +0200
Subject: [PATCH] COMP: move OTB specific try_compile out of FindTinyXML (must
 be reusable from outside)

---
 CMake/FindTinyXML.cmake   | 11 -----------
 CMake/ImportTinyXML.cmake | 10 ++++++++++
 2 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/CMake/FindTinyXML.cmake b/CMake/FindTinyXML.cmake
index 4a34fb154a..7890c9ee99 100644
--- a/CMake/FindTinyXML.cmake
+++ b/CMake/FindTinyXML.cmake
@@ -4,8 +4,6 @@
 #   TINYXML_FOUND        - True if TinyXML found.
 #   TINYXML_INCLUDE_DIRS - where to find tinyxml.h, etc.
 #   TINYXML_LIBRARIES    - List of libraries when using TinyXML.
-#   TIXML_USE_STL        - ON or undefined whether STL support is found
-#                          can be used directly in a #cmakedefine
 #
 
 IF( TINYXML_INCLUDE_DIR )
@@ -32,18 +30,9 @@ IF(TINYXML_FOUND)
   SET(TINYXML_INCLUDE_DIRS ${TINYXML_INCLUDE_DIR})
   SET(TINYXML_LIBRARIES    ${TINYXML_LIBRARY})
 
-  # Check if STL support is enabled with macro TIXML_USE_STL
-  TRY_COMPILE(TIXML_USE_STL
-              ${CMAKE_CURRENT_BINARY_DIR}/CMake
-              ${CMAKE_CURRENT_SOURCE_DIR}/CMake/otbTestTinyXMLUseSTL.cxx
-              CMAKE_FLAGS "-DINCLUDE_DIRECTORIES:PATH=${TINYXML_INCLUDE_DIRS}" "-DLINK_LIBRARIES:STRING=${TINYXML_LIBRARIES}"
-              COMPILE_DEFINITIONS "-DTIXML_USE_STL"
-              OUTPUT_VARIABLE OUTPUT)
-
 ELSE(TINYXML_FOUND)
 
   SET(TINYXML_INCLUDE_DIRS)
   SET(TINYXML_LIBRARIES)
-  SET(TIXML_USE_STL)
 
 ENDIF(TINYXML_FOUND)
diff --git a/CMake/ImportTinyXML.cmake b/CMake/ImportTinyXML.cmake
index 260f4b13b8..b4fe878599 100644
--- a/CMake/ImportTinyXML.cmake
+++ b/CMake/ImportTinyXML.cmake
@@ -3,9 +3,19 @@ FIND_PACKAGE(TinyXML)
 
 IF(TINYXML_FOUND)
   OPTION(OTB_USE_EXTERNAL_TINYXML "Use external TinyXML library." ON)
+    
+  # Check if STL support is enabled with macro TIXML_USE_STL
+  TRY_COMPILE(TIXML_USE_STL
+              ${CMAKE_CURRENT_BINARY_DIR}/CMake
+              ${CMAKE_CURRENT_SOURCE_DIR}/CMake/otbTestTinyXMLUseSTL.cxx
+              CMAKE_FLAGS "-DINCLUDE_DIRECTORIES:PATH=${TINYXML_INCLUDE_DIRS}" "-DLINK_LIBRARIES:STRING=${TINYXML_LIBRARIES}"
+              COMPILE_DEFINITIONS "-DTIXML_USE_STL"
+              OUTPUT_VARIABLE OUTPUT)
+
 ELSE(TINYXML_FOUND)
   OPTION(OTB_USE_EXTERNAL_TINYXML "Use external TinyXML library." OFF)
   SET(TINYXML_LIBRARIES otbtinyXML)
+  SET(TIXML_USE_STL)
 ENDIF(TINYXML_FOUND)
 MARK_AS_ADVANCED(OTB_USE_EXTERNAL_TINYXML)
 
-- 
GitLab