This is an automated email from the ASF dual-hosted git repository.
jbarrett pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode-native.git
The following commit(s) were added to refs/heads/develop by this push:
new fec1632 GEODE-3806: Updated to Xerces-C 3.2.0. (#163)
fec1632 is described below
commit fec16323b4f601b9a722c4cb6f27ec48055944a6
Author: Jacob Barrett <[email protected]>
AuthorDate: Tue Dec 5 22:00:30 2017 -0800
GEODE-3806: Updated to Xerces-C 3.2.0. (#163)
- Convert to CMake build process.
---
dependencies/xerces-c/CMakeLists.txt | 49 +++++++++---------------------------
1 file changed, 12 insertions(+), 37 deletions(-)
diff --git a/dependencies/xerces-c/CMakeLists.txt
b/dependencies/xerces-c/CMakeLists.txt
index dc29d7a..af59de5 100644
--- a/dependencies/xerces-c/CMakeLists.txt
+++ b/dependencies/xerces-c/CMakeLists.txt
@@ -12,55 +12,24 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-cmake_minimum_required( VERSION 3.3 )
+
project( xerces-c )
-set( ${PROJECT_NAME}_VERSION 3.1.4 )
-set( ${PROJECT_NAME}_SHA265
c98eedac4cf8a73b09366ad349cb3ef30640e7a3089d360d40a3dde93f66ecf6 )
+set( ${PROJECT_NAME}_VERSION 3.2.0 )
+set( ${PROJECT_NAME}_SHA265
d3162910ada85612f5b8cc89cdab84d0ad9a852a49577691e54bc7e9fc304e15 )
set( ${PROJECT_NAME}_URL
"http://archive.apache.org/dist/xerces/c/3/sources/xerces-c-${${PROJECT_NAME}_VERSION}.tar.gz"
)
set( ${PROJECT_NAME}_EXTERN ${PROJECT_NAME}-extern )
set ( ${PROJECT_NAME}_CFLAGS "${${PROJECT_NAME}_CFLAGS} ${CFLAGS_ARCH}" )
set ( ${PROJECT_NAME}_CXXFLAGS "${${PROJECT_NAME}_CXXFLAGS} ${CXXFLAGS_ARCH}
${CXXFLAGS_C++}" )
-
- if (MSVC_VERSION GREATER 14)
- # Only have project files for VS14 and older
- set(MSVC_VERSION 14)
- endiF()
-
-if (WIN32)
- if (64 EQUAL ${BUILD_BITS})
- set( _PLATFORM x64 )
- set( _BUILD_DIR Build/Win64/VC${MSVC_VERSION}/${_DEBUG_OR_RELEASE} )
- else()
- set( _PLATFORM win32 )
- set( _BUILD_DIR Build/Win32/VC${MSVC_VERSION}/${_DEBUG_OR_RELEASE} )
- endif()
-
- set ( _CONFIGURE_COMMAND "" )
- set ( _BUILD_COMMAND ${MSBUILD}
projects\\Win32\\VC${MSVC_VERSION}\\xerces-all\\xerces-all.sln /m
/p:Configuration=${_DEBUG_OR_RELEASE} /p:Platform=${_PLATFORM} )
- set ( _INSTALL_COMMAND ${CMAKE_COMMAND} -E copy
${_BUILD_DIR}/xerces-c_3_1$<$<CONFIG:Debug>:D>.dll
<INSTALL_DIR>/bin/xerces-c_3_1$<$<CONFIG:Debug>:D>.dll
- COMMAND ${CMAKE_COMMAND} -E copy
${_BUILD_DIR}/xerces-c_3$<$<CONFIG:Debug>:D>.lib
<INSTALL_DIR>/lib/xerces-c_3$<$<CONFIG:Debug>:D>.lib
- #TODO cleanup includes?
- COMMAND ${CMAKE_COMMAND} -E copy_directory src
<INSTALL_DIR>/include )
-else()
- set ( _CONFIGURE_COMMAND ${CONFIGURE} $<$<CONFIG:Debug>:--with-debug>
--libdir=<INSTALL_DIR>/lib --without-curl --with-pic
"CFLAGS=${${PROJECT_NAME}_CFLAGS}" "CXXFLAGS=${${PROJECT_NAME}_CXXFLAGS}"
"MAKE=$(MAKE)" )
- set ( _BUILD_COMMAND $(MAKE) all )
- set ( _INSTALL_COMMAND $(MAKE) install )
-endif()
-
include(ExternalProject)
ExternalProject_Add( ${${PROJECT_NAME}_EXTERN}
URL ${${PROJECT_NAME}_URL}
URL_HASH SHA256=${${PROJECT_NAME}_SHA265}
- #TODO prefix - directory length too long for windows
UPDATE_COMMAND ""
- BUILD_IN_SOURCE 1
- CONFIGURE_COMMAND "${_CONFIGURE_COMMAND}"
- BUILD_COMMAND "${_BUILD_COMMAND}"
- INSTALL_COMMAND "${_INSTALL_COMMAND}"
+ CMAKE_ARGS -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_FLAGS=-m64
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
)
ExternalProject_Get_Property( ${${PROJECT_NAME}_EXTERN} SOURCE_DIR )
@@ -70,8 +39,14 @@ set( ${PROJECT_NAME}_INSTALL_DIR ${INSTALL_DIR} )
set( DEPENDENCIES_${PROJECT_NAME}_DIR ${${PROJECT_NAME}_INSTALL_DIR}
PARENT_SCOPE)
if (${WIN32})
+ set(LIBRARY_NAME xerces-c_3$<$<CONFIG:Debug>:D>)
+else()
+ set(LIBRARY_NAME xerces-c-3.2)
+endif()
+
+if (${WIN32})
#TODO find better way to handle import lib on windows
- set(CMAKE_SHARED_LIBRARY_SUFFIX _3$<$<CONFIG:Debug>:D>.lib)
+ set(CMAKE_SHARED_LIBRARY_SUFFIX .lib)
endif()
add_library(${PROJECT_NAME} INTERFACE)
@@ -79,7 +54,7 @@ target_include_directories(${PROJECT_NAME} INTERFACE
$<BUILD_INTERFACE:${${PROJECT_NAME}_INSTALL_DIR}/include>
)
target_link_libraries(${PROJECT_NAME} INTERFACE
-
${${PROJECT_NAME}_INSTALL_DIR}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}xerces-c${CMAKE_SHARED_LIBRARY_SUFFIX}
+
${${PROJECT_NAME}_INSTALL_DIR}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}${LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}
)
add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXTERN})
--
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].