dfa78ec
From 1a5a7855f359e644c5981c1b1fc9f20b9e7e5139 Mon Sep 17 00:00:00 2001
7606b92
From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan[at]danny.cz>
7606b92
Date: Wed, 18 Jan 2012 20:41:05 +0100
dfa78ec
Subject: [PATCH 3/7] use system xerces-c if available
7606b92
7606b92
---
dfa78ec
 CMakeLists.txt                | 10 +++++++---
dfa78ec
 src/FlightCrew/CMakeLists.txt |  8 +++++---
dfa78ec
 2 files changed, 12 insertions(+), 6 deletions(-)
7606b92
7606b92
diff --git a/CMakeLists.txt b/CMakeLists.txt
dfa78ec
index 8cf8fa7..7f1a55d 100644
7606b92
--- a/CMakeLists.txt
7606b92
+++ b/CMakeLists.txt
dfa78ec
@@ -42,6 +42,8 @@ set( CMAKE_OSX_DEPLOYMENT_TARGET "10.9" )
dfa78ec
 
dfa78ec
 find_package( Boost COMPONENTS date_time filesystem program_options regex system thread )
dfa78ec
 find_package( ZLIB )
dfa78ec
+find_package( PkgConfig )
dfa78ec
+pkg_check_modules( XERCES xerces-c>=3.1 )
7606b92
 
7606b92
 # The parsing order is significant!
dfa78ec
 
dfa78ec
@@ -61,9 +63,11 @@ set( Boost_REGEX_LIBRARY 1 )
dfa78ec
 set( Boost_SYSTEM_LIBRARY 1 )
dfa78ec
 set( Boost_THREAD_LIBRARY 1 )
dfa78ec
 
7606b92
-add_subdirectory( src/Xerces )
dfa78ec
-set( XERCES_LIBRARIES Xerces )
dfa78ec
-set( XERCES_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/src/Xerces )
dfa78ec
+if( NOT XERCES_FOUND )
dfa78ec
+    add_subdirectory( src/Xerces )
dfa78ec
+    set( XERCES_LIBRARIES Xerces )
dfa78ec
+    set( XERCES_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/src/Xerces )
dfa78ec
+endif()
dfa78ec
 
7606b92
 add_subdirectory( src/XercesExtensions )
dfa78ec
 set( XERCESEXTENSIONS_LIBRARIES XercesExtensions )
7606b92
diff --git a/src/FlightCrew/CMakeLists.txt b/src/FlightCrew/CMakeLists.txt
dfa78ec
index b50ee13..81bb1e3 100644
7606b92
--- a/src/FlightCrew/CMakeLists.txt
7606b92
+++ b/src/FlightCrew/CMakeLists.txt
7606b92
@@ -51,7 +51,7 @@ list( REMOVE_ITEM SOURCES ${to_remove} )
7606b92
 # creating PCH's for MSVC and GCC on Linux
7606b92
 include( ${CMAKE_SOURCE_DIR}/cmake_extras/CustomPCH.cmake )
dfa78ec
 set( ALL_INCLUDES ${BOOST_INCLUDE_DIRS}
7606b92
-                  ${Xerces_SOURCE_DIR}
dfa78ec
+                  ${XERCES_INCLUDE_DIRS}
7606b92
                   ${zipios_SOURCE_DIR} )
7606b92
 set( GCC_PCH_TARGET gccPCH_fc )
7606b92
 
7606b92
@@ -66,7 +66,7 @@ include_directories( ${CMAKE_CURRENT_BINARY_DIR}
7606b92
                      ${CMAKE_CURRENT_SOURCE_DIR}
7606b92
                      ../zipios 
dfa78ec
                      ${BOOST_INCLUDE_DIRS}
7606b92
-                     ../Xerces
dfa78ec
+                     ${XERCES_INCLUDE_DIRS}
7606b92
                      ../XercesExtensions
7606b92
                      ../utf8-cpp
7606b92
                    )
dfa78ec
@@ -116,7 +116,9 @@ elseif( CMAKE_COMPILER_IS_GNUCXX )
7606b92
 endif()
7606b92
 
7606b92
 # needed for correct Xerces header inclusion
7606b92
-add_definitions( -DXERCES_STATIC_LIBRARY )
dfa78ec
+if( NOT XERCES_FOUND )
dfa78ec
+    add_definitions( -DXERCES_STATIC_LIBRARY )
dfa78ec
+endif()
7606b92
 
7606b92
 #############################################################################
7606b92
 
7606b92
-- 
dfa78ec
2.7.1
7606b92