aboutsummaryrefslogtreecommitdiff
path: root/ports/openjpeg
diff options
context:
space:
mode:
authorAlexander Neumann <30894796+Neumann-A@users.noreply.github.com>2020-08-03 00:49:20 +0200
committerGitHub <noreply@github.com>2020-08-02 15:49:20 -0700
commit8e76503a769e153dad8f4e7b2c95a152bb35edaa (patch)
tree977e80e16b3ae4ef1d34824d505a5db8b877e904 /ports/openjpeg
parent1c2af994151fb3e177df54f89223b056ecddbcec (diff)
downloadvcpkg-8e76503a769e153dad8f4e7b2c95a152bb35edaa.tar.gz
vcpkg-8e76503a769e153dad8f4e7b2c95a152bb35edaa.zip
[ITK] Update to 5.1 (#11208)
* [vtk-m] new port vtk-m * [VTK] Update to 9.0 * include local buildtree changes * [pcl] disable VTK due to API changes in VTK 9.0 * [vtk-m] add supports field to be only x64 * [vtk-dicom] add python executable. * fix vtkm dependency * [vtk-dicom] fix missing std:: namespace * [vtk-m] add uwp to unsupported triplets * [vtk] add pegtl include patch, reenable IOMotionFX * remove hdf5 changes for testing * use different pgetl patch which redirects to the installed config of pegtl * [pegtl-2] version file needs renaming too * [vtk] change dependency to pgetl-2 and fix the patch * [vtk] put in hdf5 fix again and correct manually installed include files * remove deprecated function to retrigger CI * [lz4] correctly lowercase the lz4 config * [vtk] remove unnecessary code * [pegtl-2] add homepage * [pegtl] modernize portfiles * [vtk-dicom] add homepage * [vtk-dicom] modernize portfile * [vtk-m] remove empty build depends * [vtk] try fixing the permission issue * [vtk] minimal dependency correction * [itk] update * fix portfile errors * WIP commit * should make ITK green in VCPKG CI but there a still issues with features * more dependencies and features.... * remove itk from baseline failure so the check can get green * more dependency updating. * minor build fixes * [openjpeg] Fix dll location * fix other issues * add rtkcuda * [openjpeg] remove default features to make arm and uwp platforms happy * [itk] more dependency fixes * [openjpeg] fix no tools case * [itk] fix wip patch * [itk] split up patches & cleanup & and move rtk tools if build * [itk] fix patch and remove old and wip patch * [nifticlib] Add new port required by minc * [nifticlib] change repo and add features * [nifticilib] add zlib dependency & cleanup * [minc] add new port * [vcpkg/scripts] add swig to find acquire programm * [itk/minc] update for external minc * add supports field for nifticlib * [itk] make python a default feature for testing * [itk] cleanup python vars a bit [vcpkg/scripts] correct swig hash * [vcpkg/scripts] fix swig * [itk] fix python include path on unix system * [itk] remove python as a default. A bit of feature cleanup * [itk] update remote RTK * [itk|rtk] remove RTK module before configure to allow patching * [opencl] update opencl wrapper * [itk] fix opencl static linkage * [itk] add cufftw fix * update baseline * [itk] fix itk[tbb] * [itk] update python paths to 3.8 * [itk] add failure messages for unsupported architectures for some features * [vcpkg_find_acquire_program] update swig to 4.0.2 * Update portfile.cmake * [itk] move the module removal out of the if for people reusing the old source tree * [itk] add missing auto_clean to vcpkg_copy_tools * Update ports/nifticlib/CONTROL Co-authored-by: Robert Schumacher <roschuma@microsoft.com> * Update ports/openjpeg/portfile.cmake Co-authored-by: Robert Schumacher <roschuma@microsoft.com> * Update scripts/cmake/vcpkg_find_acquire_program.cmake Co-authored-by: Robert Schumacher <roschuma@microsoft.com> * [openjpeg] pass OPTIONS to vcpkg_configure_cmake * [itk] fix typo and leave a todo. * use sourceforge args for swig * Update ports/openjpeg/CONTROL Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> * Update ports/opencl/CONTROL Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> * [itk] remove debug msgs from patch * pre-install yasm on OSX Co-authored-by: Lily <47812810+LilyWangL@users.noreply.github.com> Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
Diffstat (limited to 'ports/openjpeg')
-rw-r--r--ports/openjpeg/CONTROL15
-rw-r--r--ports/openjpeg/dll.location.patch32
-rw-r--r--ports/openjpeg/portfile.cmake49
3 files changed, 89 insertions, 7 deletions
diff --git a/ports/openjpeg/CONTROL b/ports/openjpeg/CONTROL
index 0fd7d64a6..07afd75f1 100644
--- a/ports/openjpeg/CONTROL
+++ b/ports/openjpeg/CONTROL
@@ -1,4 +1,17 @@
Source: openjpeg
-Version: 2.3.1-1
+Version: 2.3.1
+Port-Version: 2
Homepage: https://github.com/uclouvain/openjpeg
Description: JPEG 2000 image library
+
+Feature: jpwl
+Description: Build optional component jpwl
+
+Feature: mj2
+Description: Build optional component mj2
+
+Feature: jpip
+Description: Build optional component jpip
+
+Feature: jp3d
+Description: Build optional component jp3d
diff --git a/ports/openjpeg/dll.location.patch b/ports/openjpeg/dll.location.patch
new file mode 100644
index 000000000..bdc77a542
--- /dev/null
+++ b/ports/openjpeg/dll.location.patch
@@ -0,0 +1,32 @@
+diff --git a/src/lib/openjp3d/CMakeLists.txt b/src/lib/openjp3d/CMakeLists.txt
+index b0469af1f..75048ef13 100644
+--- a/src/lib/openjp3d/CMakeLists.txt
++++ b/src/lib/openjp3d/CMakeLists.txt
+@@ -34,8 +34,9 @@ endif()
+ # Install library
+ install(TARGETS ${OPENJP3D_LIBRARY_NAME}
+ EXPORT OpenJP3DTargets
+- DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
+- COMPONENT Libraries
++ RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++ LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++ ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+ )
+
+ # Install includes files
+diff --git a/src/lib/openmj2/CMakeLists.txt b/src/lib/openmj2/CMakeLists.txt
+index 25294b20e..e3acfe8e7 100644
+--- a/src/lib/openmj2/CMakeLists.txt
++++ b/src/lib/openmj2/CMakeLists.txt
+@@ -53,8 +53,9 @@ endif()
+ # Install library
+ install(TARGETS ${OPENMJ2_LIBRARY_NAME}
+ EXPORT OpenMJ2Targets
+- DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
+- COMPONENT Libraries
++ RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++ LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++ ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+ )
+
+ # Install includes files
diff --git a/ports/openjpeg/portfile.cmake b/ports/openjpeg/portfile.cmake
index 2296734ad..c6d854490 100644
--- a/ports/openjpeg/portfile.cmake
+++ b/ports/openjpeg/portfile.cmake
@@ -1,27 +1,65 @@
-include(vcpkg_common_functions)
-
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO uclouvain/openjpeg
REF v2.3.1
SHA512 339fbc899bddf2393d214df71ed5d6070a3a76b933b1e75576c8a0ae9dfcc4adec40bdc544f599e4b8d0bc173e4e9e7352408497b5b3c9356985605830c26c03
HEAD_REF master
+ PATCHES dll.location.patch
)
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ list(APPEND OPTIONS "-DBUILD_SHARED_LIBS=OFF"
+ "-DBUILD_STATIC_LIBS=ON")
+else()
+ list(APPEND OPTIONS "-DBUILD_SHARED_LIBS=ON"
+ "-DBUILD_STATIC_LIBS=OFF")
+endif()
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ "jpwl" BUILD_JPWL
+ "mj2" BUILD_MJ2
+ "jpip" BUILD_JPIP
+ "jp3d" BUILD_JP3D
+ )
+
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS -DBUILD_CODEC:BOOL=OFF
+ -DBUILD_DOC:BOOL=OFF
-DOPENJPEG_INSTALL_PACKAGE_DIR=share/openjpeg
-DOPENJPEG_INSTALL_INCLUDE_DIR=include
+ -DEXECUTABLE_OUTPUT_PATH=tools/${PORT}
+ -DBUILD_PKGCONFIG_FILES=ON
+ ${FEATURE_OPTIONS}
+ ${OPTIONS}
)
vcpkg_install_cmake()
+vcpkg_fixup_cmake_targets()
+if(VCPKG_TARGET_IS_WINDOWS)
+ # TODO: remove -lm from *.pc files
+endif()
+vcpkg_fixup_pkgconfig(SYSTEM_LIBRARIES m)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-vcpkg_fixup_cmake_targets()
-
+set(TOOL_NAMES)
+if("jpwl" IN_LIST FEATURES)
+ list(APPEND TOOL_NAMES opj_dec_server opj_jpwl_compress opj_jpwl_decompress)
+endif()
+if("mj2" IN_LIST FEATURES)
+ list(APPEND TOOL_NAMES opj_compress opj_decompress opj_dump opj_mj2_compress opj_mj2_decompress opj_mj2_extract opj_mj2_wrap)
+endif()
+if("jpip" IN_LIST FEATURES)
+ list(APPEND TOOL_NAMES opj_jpip_addxml opj_jpip_test opj_jpip_transcode)
+endif()
+if("jp3d" IN_LIST FEATURES)
+ list(APPEND TOOL_NAMES opj_jp3d_compress opj_jp3d_decompress)
+endif()
+if(TOOL_NAMES)
+ vcpkg_copy_tools(TOOL_NAMES ${TOOL_NAMES} AUTO_CLEAN)
+endif()
file(READ ${CURRENT_PACKAGES_DIR}/include/openjpeg.h OPENJPEG_H)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
string(REPLACE "defined(OPJ_STATIC)" "1" OPENJPEG_H "${OPENJPEG_H}")
@@ -32,7 +70,6 @@ string(REPLACE "defined(DLL_EXPORT)" "0" OPENJPEG_H "${OPENJPEG_H}")
file(WRITE ${CURRENT_PACKAGES_DIR}/include/openjpeg.h "${OPENJPEG_H}")
# Handle copyright
-file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openjpeg)
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/openjpeg/LICENSE ${CURRENT_PACKAGES_DIR}/share/openjpeg/copyright)
+file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
vcpkg_copy_pdbs()