aboutsummaryrefslogtreecommitdiff
path: root/ports/field3d
diff options
context:
space:
mode:
authorStefano Sinigardi <stesinigardi@hotmail.com>2020-07-28 02:43:23 +0200
committerGitHub <noreply@github.com>2020-07-27 17:43:23 -0700
commitf1e7a3f167f9065a59e0c0ddb943a23506d646bd (patch)
treeb81e89f238b8c3dfb5080220e22f3e28668758ee /ports/field3d
parent458c20e94b9f558b523f187ce403bd062e131cdb (diff)
downloadvcpkg-f1e7a3f167f9065a59e0c0ddb943a23506d646bd.tar.gz
vcpkg-f1e7a3f167f9065a59e0c0ddb943a23506d646bd.zip
[opencv4] update to v4.3 (#11130)
* [opencv4] draft update to v4.3 * restore uwp patch * fix qt and ipp features * fix libepoxy and meson on osx * fix baseline, trigger a full rebuild due to meson tool changes * remove jpeg feature on windows due to a bug with MSVC * minor fixes for some features * ffmpeg x11 lib not required anymore on apple for downstream projects * small fixes for ogre and qt5 * remove a broken module * fix installation path * fix openexr which was broken and regressed opencv downstream projects * first round of ci passes * improve compatibility with android toolchain * [openexr] upgrade to v2.5.0 to fix regressions, might require fixes in dependent projects and might deserve its own PR * fix OpenEXR link for downstream projects * do not install unrequested features * fix compatibility with newer OpenEXR * [OpenCV3] update to v3.4.10 * fix openexr on windows, was creating symlinks that broke vcpkg * fix openexr wrapper * [openexr] cmake config files are installed into a lowered-case folder * remove mangled paths trying to fix android setup * disable dnn on android, fix mangled cmake config paths again * fix downstream CUDA dependency * fix compatibility with vs16.6 * remove from baseline ports now passing tests * [alembic] fixes for new openexr * fix baseline * [field3d] fixes for new openexr * [field3d] improve fixes, windows still unsupported despite what is said upstream * apply fixes required from review * add missing field3d patch * [field3d] disable mpi integration * [opencv2] remove cublas integration * [vtk] do not create libharu::libharu target if already existing * Update ports/opencv4/portfile.cmake Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> * Update ports/opencv3/portfile.cmake Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> * improve compatibility with newer CUDNN * [OpenCV3, OpenCV4] improve compatibility with CUDA 11 * [OpenCV2] improve compatibility with CUDA 11 * [field3d] regenerate patch ignoring space at eol * [vcpkg] Use SSH keys instead of password authentication when minting Linux scale sets (#11999) * [field3d] regenerate patch ignoring space at eol * [field3d] regenerate patch, again * [field3d] fixes for windows * [libass] fix regression * ci.baseline.txt update * [CUDA11] use FindCUDA from CMake 3.18 to ease transition later * re-bump vtk and ffmpeg, which were lost with merges from master * [OpenCV4] Halide feature is not broken anymore * [field3d] regenerate hdf5 patch * [OpenCV4] remove GTK features: it can be built only on *nix but GTK on vcpkg cannot be built on *nix systems... * merge ci.baseline.txt from master and fix field3d patch * remove rebuilding * restore vtk CONTROL file * update CONTROL files * Trigger rebuild * Update ports/freeimage/CONTROL * Update ports/freeimage/CONTROL * [opencv3/4] avoid tesseract dependency on uwp builds * [opencv] add missing module search Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com> Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
Diffstat (limited to 'ports/field3d')
-rw-r--r--ports/field3d/0001_fix_build_errors.patch148
-rw-r--r--ports/field3d/0002_improve_win_compatibility.patch43
-rw-r--r--ports/field3d/0003_hdf5_api.patch (renamed from ports/field3d/hdf5.api.patch)9
-rw-r--r--ports/field3d/CONTROL5
-rw-r--r--ports/field3d/fix-build_error.patch13
-rw-r--r--ports/field3d/portfile.cmake22
6 files changed, 209 insertions, 31 deletions
diff --git a/ports/field3d/0001_fix_build_errors.patch b/ports/field3d/0001_fix_build_errors.patch
new file mode 100644
index 000000000..95149e39d
--- /dev/null
+++ b/ports/field3d/0001_fix_build_errors.patch
@@ -0,0 +1,148 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1610c2e..b012008 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -31,25 +31,17 @@
+
+ # Author : Nicholas Yue yue.nicholas@gmail.com
+
+-CMAKE_MINIMUM_REQUIRED( VERSION 2.8 )
++CMAKE_MINIMUM_REQUIRED( VERSION 3.17 )
+
+ PROJECT ( field3d )
+
+ set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake )
+
+ FIND_PACKAGE (Doxygen)
+-FIND_PACKAGE (HDF5 COMPONENTS C)
+-IF ( CMAKE_HOST_WIN32 )
+-# f3dinfo relies on program_options but don't include it, since
+-# for some reason, unlike all the other boost components, a link is
+-# forced via a pragma.
+-FIND_PACKAGE (Boost COMPONENTS regex thread)
+-ELSE ()
+-FIND_PACKAGE (Boost COMPONENTS regex thread program_options system)
+-FIND_PACKAGE (MPI)
+-ENDIF ()
++FIND_PACKAGE (HDF5 COMPONENTS C REQUIRED)
++FIND_PACKAGE (Boost COMPONENTS regex thread program_options system REQUIRED)
+
+-FIND_PACKAGE (ILMBase)
++FIND_PACKAGE (OpenEXR REQUIRED)
+
+ # Allow the developer to select if Dynamic or Static libraries are built
+ OPTION (BUILD_SHARED_LIBS "Build Shared Libraries" ON)
+@@ -79,26 +71,14 @@ IF ( CMAKE_HOST_UNIX )
+ ENDIF ( )
+ IF ( CMAKE_HOST_WIN32 )
+ ADD_DEFINITIONS (
+- -D_HAS_ITERATOR_DEBUGGING=0
+ -D_CRT_SECURE_NO_WARNINGS=1
+ )
+ ENDIF ( )
+
+ SET ( LIB_TYPE SHARED )
+ IF ( NOT BUILD_SHARED_LIBS )
+- IF ( CMAKE_HOST_WIN32 )
+- # User wants to build static libraries, so change the LIB_TYPE variable to CMake keyword 'STATIC'
+ SET ( LIB_TYPE STATIC )
+ ADD_DEFINITIONS( -DFIELD3D_STATIC )
+- ENDIF()
+-ELSE ()
+- IF ( CMAKE_HOST_WIN32 )
+- ADD_DEFINITIONS (
+- -DOPENEXR_DLL
+- -D_HDF5USEDLL_
+- -DHDF5CPP_USEDLL
+- )
+- ENDIF()
+ ENDIF ( NOT BUILD_SHARED_LIBS )
+
+ ADD_LIBRARY ( Field3D ${LIB_TYPE}
+@@ -147,24 +128,22 @@ IF ( CMAKE_HOST_UNIX )
+ ${MPI_LIBRARIES} )
+ ENDIF ( MPI_FOUND )
+ LIST ( APPEND Field3D_Libraries_Shared
+- Iex Half IlmThread Imath
+ pthread dl z )
+ SET ( Field3D_DSO_Libraries ${Field3D_Libraries_Shared} )
+ SET ( Field3D_BIN_Libraries Field3D ${Field3D_Libraries_Shared}
+ ${Boost_LIBRARIES} )
+ ENDIF ( )
+ IF ( CMAKE_HOST_WIN32 )
+- # Add OpenEXR and zlib release/debug
+- FOREACH ( lib Iex Half IlmThread Imath zdll )
++ FOREACH ( lib zlib )
+ LIST ( APPEND Field3D_Libraries_Shared
+ optimized ${lib}
+- debug ${lib}_d )
++ debug ${lib}d )
+ ENDFOREACH()
+ SET ( Field3D_DSO_Libraries ${Field3D_Libraries_Shared} Shlwapi.lib)
+ SET ( Field3D_BIN_Libraries Field3D ${Boost_LIBRARIES} )
+ ENDIF ()
+
+-TARGET_LINK_LIBRARIES ( Field3D ${Field3D_DSO_Libraries} ${Boost_LIBRARIES})
++TARGET_LINK_LIBRARIES ( Field3D ${Field3D_DSO_Libraries} ${Boost_LIBRARIES} OpenEXR::IlmImf)
+
+ # Parase version and soversion from export/ns.h
+
+@@ -214,33 +193,7 @@ ADD_EXECUTABLE ( f3dinfo
+
+ TARGET_LINK_LIBRARIES ( f3dinfo ${Field3D_BIN_Libraries} )
+
+-# field3d - sparse_field_io
+-ADD_EXECUTABLE ( sparse_field_io
+- apps/sample_code/sparse_field_io/main.cpp
+- )
+-
+-TARGET_LINK_LIBRARIES ( sparse_field_io ${Field3D_BIN_Libraries} )
+-
+-# field3d - read
+-ADD_EXECUTABLE ( read
+- apps/sample_code/read/main.cpp
+- )
+
+-TARGET_LINK_LIBRARIES ( read ${Field3D_BIN_Libraries} )
+-
+-# field3d - mixed_types
+-ADD_EXECUTABLE ( mixed_types
+- apps/sample_code/mixed_types/main.cpp
+- )
+-
+-TARGET_LINK_LIBRARIES ( mixed_types ${Field3D_BIN_Libraries} )
+-
+-# field3d - create_and_write
+-ADD_EXECUTABLE ( create_and_write
+- apps/sample_code/create_and_write/main.cpp
+- )
+-
+-TARGET_LINK_LIBRARIES ( create_and_write ${Field3D_BIN_Libraries} )
+
+ IF (DOXYGEN_FOUND)
+ ADD_CUSTOM_TARGET ( doc
+@@ -249,7 +202,7 @@ IF (DOXYGEN_FOUND)
+ WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
+ )
+ IF (INSTALL_DOCS)
+- INSTALL (DIRECTORY
++ INSTALL (DIRECTORY
+ ${CMAKE_HOME_DIRECTORY}/docs
+ DESTINATION ${CMAKE_INSTALL_PREFIX}
+ )
+@@ -263,12 +216,11 @@ INSTALL ( TARGETS
+
+ FILE(GLOB Field3d_Includes "${CMAKE_CURRENT_SOURCE_DIR}/export/*.h")
+
+-INSTALL ( FILES
+- ${Field3d_Includes}
++INSTALL ( FILES
++ ${Field3d_Includes}
+ DESTINATION include/Field3D
+ )
+
+-INSTALL ( TARGETS f3dinfo
++INSTALL ( TARGETS f3dinfo
+ RUNTIME DESTINATION bin
+ )
+-
diff --git a/ports/field3d/0002_improve_win_compatibility.patch b/ports/field3d/0002_improve_win_compatibility.patch
new file mode 100644
index 000000000..08167be69
--- /dev/null
+++ b/ports/field3d/0002_improve_win_compatibility.patch
@@ -0,0 +1,43 @@
+diff --git a/include/UtilFoundation.h b/include/UtilFoundation.h
+index 2eb6290..a449b5b 100644
+--- a/include/UtilFoundation.h
++++ b/include/UtilFoundation.h
+@@ -90,6 +90,9 @@
+ #ifndef WIN32_LEAN_AND_MEAN
+ #define WIN32_LEAN_AND_MEAN
+ #endif
++#ifndef NOMINMAX
++#define NOMINMAX
++#endif
+
+ // needed for mutex stuff
+ #include <Windows.h>
+diff --git a/src/FieldMapping.cpp b/src/FieldMapping.cpp
+index b1f1a1f..90612b1 100644
+--- a/src/FieldMapping.cpp
++++ b/src/FieldMapping.cpp
+@@ -49,9 +49,6 @@
+ #include "FieldMapping.h"
+ #include "Types.h"
+
+-#ifdef WIN32
+-#define isnan(__x__) _isnan(__x__)
+-#endif
+
+ //----------------------------------------------------------------------------//
+
+diff --git a/src/Log.cpp b/src/Log.cpp
+index f78229c..d095a50 100644
+--- a/src/Log.cpp
++++ b/src/Log.cpp
+@@ -40,8 +40,9 @@
+ */
+
+ //----------------------------------------------------------------------------//
+-
++#ifndef _WIN32
+ #include <unistd.h>
++#endif
+ #include <ios>
+ #include <fstream>
+
diff --git a/ports/field3d/hdf5.api.patch b/ports/field3d/0003_hdf5_api.patch
index 21a08baeb..88641dac8 100644
--- a/ports/field3d/hdf5.api.patch
+++ b/ports/field3d/0003_hdf5_api.patch
@@ -1,12 +1,11 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 1e608b3ec..5ff2c3c31 100644
---- a/CMakeLists.txt
+index b57057f..e809880 100644
+--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -34,7 +34,8 @@
- CMAKE_MINIMUM_REQUIRED( VERSION 2.8 )
+@@ -35,6 +35,8 @@ CMAKE_MINIMUM_REQUIRED( VERSION 3.17 )
PROJECT ( field3d )
--
+
+add_definitions(-UH5_USE_112_API_DEFAULT)
+add_definitions(-DH5_USE_110_API_DEFAULT)
set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake )
diff --git a/ports/field3d/CONTROL b/ports/field3d/CONTROL
index 965ad7477..d16bd4cb4 100644
--- a/ports/field3d/CONTROL
+++ b/ports/field3d/CONTROL
@@ -1,6 +1,7 @@
Source: field3d
Version: 1.7.3
+Port-Version: 1
Homepage: https://github.com/imageworks/Field3D
Description: An open source library for storing voxel data. It provides C++ classes that handle in-memory storage and a file format based on HDF5 that allows the C++ objects to be written to and read from disk.
-Build-Depends: hdf5[core], boost-regex, boost-thread, boost-program-options, boost-system, openexr, boost-foreach, boost-test, boost-timer, boost-format
-Supports: !(windows|arm|uwp) \ No newline at end of file
+Build-Depends: hdf5, boost-regex, boost-thread, boost-program-options, boost-system, openexr, boost-foreach, boost-test, boost-timer, boost-format
+Supports: !(uwp)
diff --git a/ports/field3d/fix-build_error.patch b/ports/field3d/fix-build_error.patch
deleted file mode 100644
index e2f44c093..000000000
--- a/ports/field3d/fix-build_error.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e9ad44f..45f3fad 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -147,7 +147,7 @@ IF ( CMAKE_HOST_UNIX )
- ${MPI_LIBRARIES} )
- ENDIF ( MPI_FOUND )
- LIST ( APPEND Field3D_Libraries_Shared
-- Iex Half IlmThread Imath
-+ Iex-2_3 Half-2_3 IlmThread-2_3 Imath-2_3
- pthread dl z )
- SET ( Field3D_DSO_Libraries ${Field3D_Libraries_Shared} )
- SET ( Field3D_BIN_Libraries Field3D ${Field3D_Libraries_Shared}
diff --git a/ports/field3d/portfile.cmake b/ports/field3d/portfile.cmake
index ccbfcd95a..a23e04249 100644
--- a/ports/field3d/portfile.cmake
+++ b/ports/field3d/portfile.cmake
@@ -1,21 +1,23 @@
+vcpkg_fail_port_install(ON_TARGET "UWP")
-if (TRIPLET_SYSTEM_ARCH MATCHES "arm")
- message(FATAL_ERROR "ARM is currently not supported.")
-elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore)
- message(FATAL_ERROR "Error: UWP builds are currently not supported.")
+if(VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO imageworks/Field3D
- REF v1.7.3
- SHA512 de3f10ff120420925de67064b2169f2a30c9180e308acc9090d70567b45be5423f4b1f7eb32bb376c887cea1364803cf7b2db66c2bc49f8a39a1037bbf0e5f39
+ REF 0cf75ad982917e0919f59e5cb3d483517d06d7da
+ SHA512 e6f137013dd7b64b51b2ec3cc3ed8f4dbfadb85858946f08393653d78136cf8f93ae124716db11358e325c5e64ba04802afd4b89ca36ad65a14dd3db17f3072c
HEAD_REF master
PATCHES
- fix-build_error.patch
- hdf5.api.patch # Switches the HDF5 default API for this port to 1.10
+ 0001_fix_build_errors.patch
+ 0002_improve_win_compatibility.patch
+ 0003_hdf5_api.patch # Switches the HDF5 default API for this port to 1.10
)
+file(REMOVE ${SOURCE_PATH}/cmake/FindILMBase.cmake)
+
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
@@ -30,6 +32,4 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-# Handle copyright
-file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
-file(INSTALL "${SOURCE_PATH}/README" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") \ No newline at end of file
+file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)