This is an automated email from the git hooks/post-receive script. sebastic pushed a commit to branch master in repository libkml.
commit d51c042a1a142db4acdab97e1fddd0361c9258ff Author: Bas Couwenberg <[email protected]> Date: Wed Dec 23 11:06:39 2015 +0100 Imported Upstream version 1.3.0 --- CMakeLists.txt | 64 +++++++++++++++++++++++++++++++++----- cmake/External_minizip.cmake | 6 +++- cmake/External_uriparser.cmake | 5 +++ cmake/External_zlib.cmake | 10 +++++- cmake/LibKMLConfig.cmake.in | 22 +++++++++++++ cmake/LibKMLConfigVersion.cmake.in | 11 +++++++ cmake/LibKMLHelper.cmake | 12 +++++-- src/CMakeLists.txt | 4 ++- src/kml/CMakeLists.txt | 3 ++ 9 files changed, 125 insertions(+), 12 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 957dcc6..9728ead 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,6 +6,10 @@ set(VERSION_MINOR "3") set(VERSION_PATCH "0") set(VERSION_STRING "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") +if(NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE "Release") +endif() + option(BUILD_TESTING "Build testing." OFF) option(BUILD_EXAMPLES "Build examples." OFF) option(INSTALL_EXAMPLES "Install examples sources and executables" OFF) @@ -25,7 +29,8 @@ set(TEST_FLAGS "-Wall -Wextra -Wno-unused-parameter -fno-rtti -DGTEST_HAS_RTTI=0 else() if(MSVC) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DUNICODE /D_UNICODE") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DUNICODE /D_UNICODE") + set(BUILD_SHARED_LIBS OFF) endif() endif() @@ -64,6 +69,15 @@ if(NOT DEFINED PKGCONFIG_INSTALL_DIR) set(PKGCONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/pkgconfig") endif(NOT DEFINED PKGCONFIG_INSTALL_DIR) +if(WIN32 AND NOT CYGWIN) + set(DEF_INSTALL_CMAKE_DIR cmake) +else() + set(DEF_INSTALL_CMAKE_DIR lib/cmake/libkml) +endif() +set(CMAKE_INSTALL_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files") + +set(INSTALL_DIR "${CMAKE_INSTALL_PREFIX}" CACHE "install directory " PATH) + # Path to additional CMake modules set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake @@ -71,18 +85,14 @@ set(CMAKE_MODULE_PATH include(LibKMLHelper) -if(NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE "Release") -endif() - include(ExternalProject) -set(INSTALL_DIR "${CMAKE_INSTALL_PREFIX}" CACHE "install directory " PATH) - set(KMLBASE_LINK_LIBS "" CACHE INTERNAL "KMLBASE_LINK_LIBS") set(KMLBASE_DEPENDS "" CACHE INTERNAL "KMLBASE_DEPENDS") set(MINIZIP_DEPENDS "" CACHE INTERNAL "MINIZIP_DEPENDS") +set(LIBKML_TARGETS) + find_package(EXPAT) if(EXPAT_FOUND) include_directories(${EXPAT_INCLUDE_DIR}) @@ -166,3 +176,43 @@ endif() if(BUILD_EXAMPLES) add_subdirectory(examples) endif() + +string(TOUPPER ${CMAKE_BUILD_TYPE} CONFIG_TYPE) + +# Make relative paths absolute (needed later on) +foreach(p LIB BIN INCLUDE CMAKE) + set(var ${p}_INSTALL_DIR) + if(NOT IS_ABSOLUTE "${${var}}") + set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}") + endif() +endforeach() + +export(TARGETS ${LIBKML_TARGETS} + FILE "${CMAKE_BINARY_DIR}/LibKMLTargets.cmake") + +# Create the LibKMLConfig.cmake and LibKMLConfigVersion files +file(RELATIVE_PATH REL_INCLUDE_DIR "${CMAKE_INSTALL_DIR}" + "${INCLUDE_INSTALL_DIR}") + +# ... for the build tree +set(CONF_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/src") +configure_file(cmake/LibKMLConfig.cmake.in + "${PROJECT_BINARY_DIR}/LibKMLConfig.cmake" @ONLY) + +# ... for the install tree +set(CONF_INCLUDE_DIRS "\${LIBKML_CMAKE_DIR}/${REL_INCLUDE_DIR}") +configure_file(cmake/LibKMLConfig.cmake.in + "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/LibKMLConfig.cmake" @ONLY) + +# ... for both +configure_file(cmake/LibKMLConfigVersion.cmake.in + "${CMAKE_BINARY_DIR}/LibKMLConfigVersion.cmake" @ONLY) + +# Install the LibKMLConfig.cmake and LibKMLConfigVersion.cmake +install(FILES + "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/LibKMLConfig.cmake" + "${CMAKE_BINARY_DIR}/LibKMLConfigVersion.cmake" + DESTINATION "${CMAKE_INSTALL_DIR}" ) + +# Install the export set for use with the install-tree +install(EXPORT LibKMLTargets DESTINATION "${CMAKE_INSTALL_DIR}") \ No newline at end of file diff --git a/cmake/External_minizip.cmake b/cmake/External_minizip.cmake index a894176..01e7c25 100644 --- a/cmake/External_minizip.cmake +++ b/cmake/External_minizip.cmake @@ -11,4 +11,8 @@ ExternalProject_Add(MINIZIP -DZLIB_LIBRARY:FILEPATH=${ZLIB_LIBRARY} -DBUILD_SHARED_LIBS:BOOL=${BUILD_SHARED_LIBS} ) -include_project_vars(MINIZIP "libminizip") +if(MSVC) + include_project_vars(MINIZIP "minizip") +else() + include_project_vars(MINIZIP "libminizip") +endif() diff --git a/cmake/External_uriparser.cmake b/cmake/External_uriparser.cmake index ac21e53..e6d5c91 100644 --- a/cmake/External_uriparser.cmake +++ b/cmake/External_uriparser.cmake @@ -10,4 +10,9 @@ ExternalProject_Add(URIPARSER -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} -DBUILD_SHARED_LIBS:BOOL=${BUILD_SHARED_LIBS} ) + +if(MSVC) +include_project_vars(URIPARSER "uriparser") +else() include_project_vars(URIPARSER "liburiparser") +endif() diff --git a/cmake/External_zlib.cmake b/cmake/External_zlib.cmake index 32386c9..3d567af 100644 --- a/cmake/External_zlib.cmake +++ b/cmake/External_zlib.cmake @@ -9,4 +9,12 @@ ExternalProject_Add(ZLIB -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} -DBUILD_SHARED_LIBS:BOOL=${BUILD_SHARED_LIBS}) -include_project_vars(ZLIB "libz") \ No newline at end of file + if(MSVC) + if(BUILD_SHARED_LIBS) + include_project_vars(ZLIB "zlib") + else() + include_project_vars(ZLIB "zlibstatic") + endif() +else() + include_project_vars(ZLIB "libz") +endif() diff --git a/cmake/LibKMLConfig.cmake.in b/cmake/LibKMLConfig.cmake.in new file mode 100644 index 0000000..3e295f4 --- /dev/null +++ b/cmake/LibKMLConfig.cmake.in @@ -0,0 +1,22 @@ +# Compute paths +get_filename_component(LIBKML_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) + +set(LIBKML_INCLUDE_DIRS "@CONF_INCLUDE_DIRS@") + +if(NOT TARGET foo AND NOT LIBKML_BINARY_DIR) + include("${LIBKML_CMAKE_DIR}/LibKMLTargets.cmake") +endif() + +set(LIBKML_LIBRARIES) + +foreach(targ @LIBKML_TARGETS@) + get_target_property(LIB_LIB_FILENAME ${targ} IMPORTED_LOCATION_@CONFIG_TYPE@) + get_target_property(LIB_LINK_FILENAME ${targ} IMPORTED_LINK_INTERFACE_LIBRARIES_@CONFIG_TYPE@) + string(REGEX MATCH "^kml" matched ${LIB_LINK_FILENAME}) + if(NOT matched) + list(APPEND LIBKML_LIBRARIES ${LIB_LINK_FILENAME}) + endif() + list(APPEND LIBKML_LIBRARIES ${LIB_LIB_FILENAME}) +endforeach() + +set(LIBKML_FOUND TRUE) diff --git a/cmake/LibKMLConfigVersion.cmake.in b/cmake/LibKMLConfigVersion.cmake.in new file mode 100644 index 0000000..5bf4373 --- /dev/null +++ b/cmake/LibKMLConfigVersion.cmake.in @@ -0,0 +1,11 @@ +set(PACKAGE_VERSION "@VERSION_STRING@") + +# Check whether the requested PACKAGE_FIND_VERSION is compatible +if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}") + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else() + set(PACKAGE_VERSION_COMPATIBLE TRUE) + if ("${PACKAGE_VERSION}" VERSION_EQUAL "${PACKAGE_FIND_VERSION}") + set(PACKAGE_VERSION_EXACT TRUE) + endif() +endif() diff --git a/cmake/LibKMLHelper.cmake b/cmake/LibKMLHelper.cmake index f99ae5f..5cc166a 100644 --- a/cmake/LibKMLHelper.cmake +++ b/cmake/LibKMLHelper.cmake @@ -29,9 +29,17 @@ endmacro(build_target) macro(install_target _target) install(TARGETS ${_target} + EXPORT LibKMLTargets RUNTIME DESTINATION ${BIN_INSTALL_DIR} LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) + + list(LENGTH LIBKML_TARGETS LIBKML_TARGETS_LENGTH) + if(LIBKML_TARGETS_LENGTH LESS 1) + set(LIBKML_TARGETS "${_target}" PARENT_SCOPE) + else() + set(LIBKML_TARGETS "${LIBKML_TARGETS};${_target}" PARENT_SCOPE) + endif() endmacro(install_target) function(build_test) @@ -51,7 +59,7 @@ endfunction(build_example) macro(include_project_vars _project _lib) - set(${_project}_INCLUDE_DIR "${INSTALL_DIR}/include" ) + set(${_project}_INCLUDE_DIR "${INSTALL_DIR}/include") if(WIN32) set(_suffix ${CMAKE_LINK_LIBRARY_SUFFIX}) else(UNIX) @@ -61,6 +69,6 @@ macro(include_project_vars _project _lib) set(_suffix ".a") endif() endif(WIN32) - set(${_project}_LIBRARY "${INSTALL_DIR}/lib/${_lib}${_suffix}" ) + set(${_project}_LIBRARY "${INSTALL_DIR}/lib/${_lib}${_suffix}") include_directories(${${_project}_INCLUDE_DIR}) endmacro() diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7d5ed43..dd64342 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,4 +1,6 @@ add_subdirectory(kml) if(WITH_SWIG) add_subdirectory(swig) -endif() \ No newline at end of file +endif() + +set(LIBKML_TARGETS "${LIBKML_TARGETS}" PARENT_SCOPE) \ No newline at end of file diff --git a/src/kml/CMakeLists.txt b/src/kml/CMakeLists.txt index 7393f89..04923f6 100644 --- a/src/kml/CMakeLists.txt +++ b/src/kml/CMakeLists.txt @@ -5,7 +5,10 @@ add_subdirectory(engine) add_subdirectory(convenience) add_subdirectory(regionator) +set(LIBKML_TARGETS "${LIBKML_TARGETS}" PARENT_SCOPE) install( FILES dom.h engine.h DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Development) + + \ No newline at end of file -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/libkml.git _______________________________________________ Pkg-grass-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel

