diff options
| author | Hiroshi Miura <miurahr@linux.com> | 2018-03-02 03:39:20 +0900 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2018-03-01 10:39:20 -0800 |
| commit | 8fe30fe1ea70d5bfac400fdccf30276e4d987be5 (patch) | |
| tree | 2a9011241d4eed58d1d8a8daf30b28c830b10d53 /ports/kealib/fix-cmake.patch | |
| parent | e70250ca199f9e55c88c242ee980313b8acb45e5 (diff) | |
| download | vcpkg-8fe30fe1ea70d5bfac400fdccf30276e4d987be5.tar.gz vcpkg-8fe30fe1ea70d5bfac400fdccf30276e4d987be5.zip | |
Add kealib ports and modify hdf5 recipe (#2708)
* [kealib] add kealib ports
KEALib is a GDAL model library using HDF5 standard.
- Patch library cmake scripts.
- Provide MIT license file.
- Depend on hdf5 library with [cpp] feature.
- No generation of GDAL driver.
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [kealib] fix option key to specify building shared library
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [kealib] call copy_pdbs() after install
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [kealib] update cmake patch
- fix library name in MSVC
- fix to find hdf5 libraries
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [kealib] add parallel feature
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* Revert "[hdf5] add cpp feature"
This reverts commit fbe876646601ea1426679793d44dec7cd3852ddf.
* [hdf5] always build cpp library
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [kealib] drop dependency for feature hdf5[cpp]
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [kealib] update static link handling
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [kealib] revert a previous hack for static link to szip/zlib
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* [hdf5] work around szip-config.cmake behavior
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* link dependencies of static libs
Diffstat (limited to 'ports/kealib/fix-cmake.patch')
| -rw-r--r-- | ports/kealib/fix-cmake.patch | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/ports/kealib/fix-cmake.patch b/ports/kealib/fix-cmake.patch new file mode 100644 index 000000000..191517990 --- /dev/null +++ b/ports/kealib/fix-cmake.patch @@ -0,0 +1,122 @@ +diff --git a/trunk/CMakeLists.txt b/trunk/CMakeLists.txt
+index 464fb13..dc8e26f 100644
+--- a/trunk/CMakeLists.txt
++++ b/trunk/CMakeLists.txt
+@@ -8,6 +8,7 @@
+ # which were derived from those used by libLAS (http://liblas.org/)
+ #
+ # History
++# 2018/01/25 - updated by Hiroshi Miura
+ # 2012/07/02 - Created by Peter Bunting
+ #
+ ###############################################################################
+@@ -50,13 +51,10 @@ endif()
+
+ option (BUILD_SHARED_LIBS "Build with shared library" ON)
+
+-set(HDF5_INCLUDE_DIR /usr/local/include CACHE PATH "Include PATH for HDF5")
+-set(HDF5_LIB_PATH /usr/local/lib CACHE PATH "Library PATH for HDF5")
+
+ set(GDAL_INCLUDE_DIR "NOTFOUND" CACHE PATH "Include PATH for GDAL")
+ set(GDAL_LIB_PATH "NOTFOUND" CACHE PATH "Library PATH for GDAL")
+
+-set(HDF5_STATIC_LIBS FALSE CACHE BOOL "On Windows, link against static HDF5 libs")
+
+ IF(GDAL_INCLUDE_DIR AND GDAL_LIB_PATH)
+ # by default, only build if paths are set
+@@ -65,6 +63,8 @@ ELSE()
+ set(LIBKEA_WITH_GDAL FALSE CACHE BOOL "Choose if .kea GDAL driver should be built")
+ ENDIF()
+
++find_package(hdf5 COMPONENTS CXX HL REQUIRED)
++link_libraries(hdf5::hdf5_cpp-shared)
+ ###############################################################################
+
+ ###############################################################################
+@@ -141,14 +141,7 @@ endif(APPLE)
+ # Check the required libraries are present
+
+ if (MSVC)
+- if(HDF5_STATIC_LIBS)
+- set(HDF5_LIBRARIES -LIBPATH:"${HDF5_LIB_PATH}" hdf5_cpp.lib hdf5.lib zlibstatic.lib)
+- else()
+- set(HDF5_LIBRARIES -LIBPATH:"${HDF5_LIB_PATH}" hdf5_cpp.lib hdf5.lib)
+- set_property(DIRECTORY PROPERTY COMPILE_DEFINITIONS H5_BUILT_AS_DYNAMIC_LIB)
+- endif()
+ else()
+- set(HDF5_LIBRARIES "-L${HDF5_LIB_PATH} -lhdf5 -lhdf5_hl -lhdf5_cpp")
+ endif(MSVC)
+
+ if (MSVC)
+@@ -160,21 +153,19 @@ endif(MSVC)
+
+ ###############################################################################
+ # Setup configure file
+-configure_file ( "${PROJECT_HEADER_DIR}/kea-config.h.in" "${PROJECT_HEADER_DIR}/libkea/kea-config.h" )
+-configure_file ( "${PROJECT_TOOLS_DIR}/kea-config.in" "${PROJECT_BINARY_DIR}/kea-config" )
++configure_file ( "${PROJECT_HEADER_DIR}/kea-config.h.in" "${CMAKE_BINARY_DIR}/${PROJECT_HEADER_DIR}/libkea/kea-config.h" )
++configure_file ( "${PROJECT_TOOLS_DIR}/kea-config.in" "${CMAKE_BINARY_DIR}/${PROJECT_BINARY_DIR}/kea-config" )
+ ###############################################################################
+
+ ###############################################################################
+ # Documentation
+-file(READ "doc/index.txt" README )
+-file(WRITE "README.txt" "${README}")
+ ###############################################################################
+
+ ###############################################################################
+ # Build library
+
+ include_directories ("${PROJECT_HEADER_DIR}")
+-include_directories(${HDF5_INCLUDE_DIR})
++include_directories ("${CMAKE_BINARY_DIR}/${PROJECT_HEADER_DIR}")
+ add_subdirectory ("${PROJECT_SOURCE_DIR}")
+ if (LIBKEA_WITH_GDAL)
+ add_subdirectory ("${PROJECT_GDAL_DIR}")
+@@ -185,13 +176,11 @@ endif(LIBKEA_WITH_GDAL)
+ # Tests
+ enable_testing()
+ add_test(NAME test1 COMMAND src/test1)
+-
+ ###############################################################################
+
+ ###############################################################################
+ # Installation
+-
+-install (FILES "${PROJECT_BINARY_DIR}/kea-config" DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
++install (FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_BINARY_DIR}/kea-config" DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+ ###############################################################################
+
+ ###############################################################################
+diff --git a/trunk/src/CMakeLists.txt b/trunk/src/CMakeLists.txt
+index 84456c4..b804e74 100644
+--- a/trunk/src/CMakeLists.txt
++++ b/trunk/src/CMakeLists.txt
+@@ -37,6 +37,7 @@ target_link_libraries(${LIBKEA_LIB_NAME} ${HDF5_LIBRARIES} )
+
+ ###############################################################################
+ # Testing
++if(NOT DISABLE_TESTS)
+ # exe needs to be in 'src' otherwise it doesn't work
+ add_executable (test1 ${PROJECT_TEST_DIR}/test1.cpp)
+ target_link_libraries (test1 ${LIBKEA_LIB_NAME})
+@@ -53,6 +54,7 @@ if(NOT WIN32)
+ # probably should match other compilers, but since this is a Conda
+ # specific hack I'm not going to bother
+ endif()
++endif()
+
+ ###############################################################################
+ # Set target properties
+@@ -67,6 +69,9 @@ PROPERTIES
+
+ ###############################################################################
+ # Installation
+-install (TARGETS ${LIBKEA_LIB_NAME} DESTINATION lib)
++install (TARGETS ${LIBKEA_LIB_NAME}
++ RUNTIME DESTINATION bin
++ LIBRARY DESTINATION lib
++ ARCHIVE DESTINATION lib)
+ install (FILES ${LIBKEA_H} DESTINATION include/libkea)
+ ###############################################################################
+\ No newline at end of file
|
