public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-libs/openjpeg/files/, media-libs/openjpeg/
@ 2019-04-11 11:40 Lars Wendler
  0 siblings, 0 replies; 5+ messages in thread
From: Lars Wendler @ 2019-04-11 11:40 UTC (permalink / raw
  To: gentoo-commits

commit:     1300f5f73c69b5d2e0352cdb0a5f8f5e169e0723
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 11 10:47:25 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Apr 11 11:40:30 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1300f5f7

media-libs/openjpeg: Bump to version 2.3.1

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 media-libs/openjpeg/Manifest                       |   2 +
 .../files/openjpeg-2.3.1-gnuinstalldirs.patch      | 495 +++++++++++++++++++++
 media-libs/openjpeg/openjpeg-2.3.1.ebuild          | 131 ++++++
 3 files changed, 628 insertions(+)

diff --git a/media-libs/openjpeg/Manifest b/media-libs/openjpeg/Manifest
index 62efea271dd..cd6c971b736 100644
--- a/media-libs/openjpeg/Manifest
+++ b/media-libs/openjpeg/Manifest
@@ -1,3 +1,5 @@
 DIST openjpeg-1.5.2.tar.gz 1385702 BLAKE2B 936ab6e0fb48f2839df13113c716c39b9572bd590206cd823dedccfd4001444d73a81ccbf82616a40a35ad8b1fae8d2f08d7c265a771d9d9ef413beac5e84ac1 SHA512 b945cf4f8b5e3227a0c07120c94b0ed5bf30c901de73059ee1d47975f46744fb62bbe84cdb2917c6431128f400020874eb07160af870b5448ced897998b08862
 DIST openjpeg-2.3.0.tar.gz 2207329 BLAKE2B b03ddb02127cc85e647cbda11423f63f2caa0abae40d5687a1b191e7857aa9b428da5afc86ce0c08cce1516c290eeac31ae1db841db56ba70afa020f126d2508 SHA512 0a9d427be4a820b1d759fca4b50e293721b45fe4885aa61ca1ae09e099f75ed93520448090c780d62f51076d575cc03618cd6d5181bdb6b34e4fc07b4cfdd568
+DIST openjpeg-2.3.1.tar.gz 2214401 BLAKE2B ecc7e573592a5302dcdbade791f6aa6e48f6791c7412fdd44976f3619c8fc0cca7d904fa42013f33ab17dd0f569a76d3c49a73eccaf0a749d34f305362367af9 SHA512 339fbc899bddf2393d214df71ed5d6070a3a76b933b1e75576c8a0ae9dfcc4adec40bdc544f599e4b8d0bc173e4e9e7352408497b5b3c9356985605830c26c03
 DIST openjpeg-data_20170814.tar.gz 497454197 BLAKE2B ea27ab763e685724dfd5c2242a93d9b93111a0516ea7a8aef9f37ec31b00cc887d84d4d0bf7f79f3636aa0ea9a0302f43df4596fc967c243a8773ccde6e79fe0 SHA512 a13c941839f0d3f3a71b3f5b36d6c2ddb789e765526ebb6aed99150991bb717363e3ce40f335451a983d44a0b047538e0870d0fe5b37d6a002497eb99a403e24
+DIST openjpeg-data_20180620.tar.gz 497894373 BLAKE2B 3a596f8f9ee56037bf567b6f2d3731b97299dba24e0c9d3562d38c15ddf58d352a918edaccb528f054cf288f87d6362d90d3450d4a5b968e9c8dfe05f54d89fe SHA512 32189a10c4d8cf00c23cda455f9e4353deb2175189d85f9b3aab1c4375a02a491ec2de89815725ebbcaea86c2c7ab274b89ee2583ffd8bf0dc32d4fc2d8f7507

diff --git a/media-libs/openjpeg/files/openjpeg-2.3.1-gnuinstalldirs.patch b/media-libs/openjpeg/files/openjpeg-2.3.1-gnuinstalldirs.patch
new file mode 100644
index 00000000000..b0b2666c722
--- /dev/null
+++ b/media-libs/openjpeg/files/openjpeg-2.3.1-gnuinstalldirs.patch
@@ -0,0 +1,495 @@
+From fecc8e9e23f78de94c41bc641b3e5b9e9a84560b Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.com>
+Date: Thu, 11 Apr 2019 13:10:57 +0200
+Subject: [PATCH] Use GNUInstallDirs for standard installation directories
+
+Raises minimum cmake version by a little.
+---
+ CMakeLists.txt                           | 61 +++++-------------------
+ cmake/OpenJPEGConfig.cmake.in            |  2 +-
+ doc/CMakeLists.txt                       |  2 +-
+ src/bin/jp2/CMakeLists.txt               |  4 +-
+ src/bin/jp3d/CMakeLists.txt              |  2 +-
+ src/bin/jpip/CMakeLists.txt              | 10 ++--
+ src/bin/jpwl/CMakeLists.txt              |  2 +-
+ src/bin/mj2/CMakeLists.txt               |  2 +-
+ src/lib/openjp2/CMakeLists.txt           | 12 ++---
+ src/lib/openjp2/libopenjp2.pc.cmake.in   | 10 ++--
+ src/lib/openjp3d/CMakeLists.txt          |  4 +-
+ src/lib/openjp3d/libopenjp3d.pc.cmake.in | 10 ++--
+ src/lib/openjpip/CMakeLists.txt          |  8 ++--
+ src/lib/openjpip/libopenjpip.pc.cmake.in | 10 ++--
+ src/lib/openjpwl/CMakeLists.txt          |  6 +--
+ src/lib/openjpwl/libopenjpwl.pc.cmake.in | 10 ++--
+ src/lib/openmj2/CMakeLists.txt           |  4 +-
+ wrapping/java/openjp2/CMakeLists.txt     |  2 +-
+ 18 files changed, 61 insertions(+), 100 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3ea2424a..1f70226a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,7 +7,7 @@
+ # For this purpose you can define a CMake var: OPENJPEG_NAMESPACE to whatever you like
+ # e.g.:
+ # set(OPENJPEG_NAMESPACE "GDCMOPENJPEG")
+-cmake_minimum_required(VERSION 2.8.2)
++cmake_minimum_required(VERSION 2.8.5)
+ 
+ if(COMMAND CMAKE_POLICY)
+   cmake_policy(SET CMP0003 NEW)
+@@ -103,59 +103,28 @@ endif()
+ 
+ # --------------------------------------------------------------------------
+ # Install directories
++include(GNUInstallDirs)
++
+ # Build DOCUMENTATION (not in ALL target and only if Doxygen is found)
+ option(BUILD_DOC "Build the HTML documentation (with doxygen if available)." OFF)
+ 
+ string(TOLOWER ${PROJECT_NAME} projectname)
+ set(OPENJPEG_INSTALL_SUBDIR "${projectname}-${OPENJPEG_VERSION_MAJOR}.${OPENJPEG_VERSION_MINOR}")
+ 
+-if(NOT OPENJPEG_INSTALL_BIN_DIR)
+-  set(OPENJPEG_INSTALL_BIN_DIR "bin")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_LIB_DIR)
+-  set(OPENJPEG_INSTALL_LIB_DIR "lib")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_SHARE_DIR)
+-  set(OPENJPEG_INSTALL_SHARE_DIR "share")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_DATA_DIR)
+-  set(OPENJPEG_INSTALL_DATA_DIR "${OPENJPEG_INSTALL_SHARE_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_INCLUDE_DIR)
+-  set(OPENJPEG_INSTALL_INCLUDE_DIR "include/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-
+-if(BUILD_DOC)
+-if(NOT OPENJPEG_INSTALL_MAN_DIR)
+-  set(OPENJPEG_INSTALL_MAN_DIR "share/man/")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_DOC_DIR)
+-  set(OPENJPEG_INSTALL_DOC_DIR "share/doc/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-endif()
+-
+ if(NOT OPENJPEG_INSTALL_JNI_DIR)
+   if(WIN32)
+-    set(OPENJPEG_INSTALL_JNI_DIR ${OPENJPEG_INSTALL_BIN_DIR})
++    set(OPENJPEG_INSTALL_JNI_DIR ${CMAKE_INSTALL_BINDIR})
+   else()
+-    set(OPENJPEG_INSTALL_JNI_DIR ${OPENJPEG_INSTALL_LIB_DIR})
++    set(OPENJPEG_INSTALL_JNI_DIR ${CMAKE_INSTALL_LIBDIR})
+   endif()
+ endif()
+ 
+ if(NOT OPENJPEG_INSTALL_PACKAGE_DIR)
+-  # We could install *.cmake files in share/ however those files contains
+-  # hardcoded path to libraries on a multi-arch system (fedora/debian) those
+-  # path will be different (lib/i386-linux-gnu vs lib/x86_64-linux-gnu)
+-  set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
++  set(OPENJPEG_INSTALL_PACKAGE_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${OPENJPEG_INSTALL_SUBDIR}")
+ endif()
+ 
+ if (APPLE)
+-	list(APPEND OPENJPEG_LIBRARY_PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/${OPENJPEG_INSTALL_LIB_DIR}")
++	list(APPEND OPENJPEG_LIBRARY_PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}")
+ 	option(OPJ_USE_DSYMUTIL "Call dsymutil on binaries after build." OFF)
+ endif()
+ 
+@@ -339,14 +308,6 @@ install( FILES ${OPENJPEG_BINARY_DIR}/OpenJPEGConfig.cmake
+ )
+ 
+ #-----------------------------------------------------------------------------
+-# install CHANGES and LICENSE
+-if(BUILD_DOC)
+-if(EXISTS ${OPENJPEG_SOURCE_DIR}/CHANGES)
+-  install(FILES CHANGES DESTINATION ${OPENJPEG_INSTALL_DOC_DIR})
+-endif()
+-
+-install(FILES LICENSE DESTINATION ${OPENJPEG_INSTALL_DOC_DIR})
+-endif()
+ 
+ include (cmake/OpenJPEGCPack.cmake)
+ 
+@@ -363,14 +324,14 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp2/libopenjp2.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjp2.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjp2.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+ #
+   if(BUILD_JPWL)
+   # install in lib and not share (see multi-arch note above)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjpwl/libopenjpwl.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjpwl.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjpwl.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ #
+   if(BUILD_JPIP)
+@@ -378,7 +339,7 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjpip/libopenjpip.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjpip.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjpip.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ #
+   if(BUILD_JP3D)
+@@ -386,7 +347,7 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp3d/libopenjp3d.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjp3d.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjp3d.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ endif()
+ 
+diff --git a/cmake/OpenJPEGConfig.cmake.in b/cmake/OpenJPEGConfig.cmake.in
+index 2925108a..702e2790 100644
+--- a/cmake/OpenJPEGConfig.cmake.in
++++ b/cmake/OpenJPEGConfig.cmake.in
+@@ -29,7 +29,7 @@ if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
+ 
+   # We find a relative path from the PKG directory to header files.
+   set(PKG_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_PACKAGE_DIR@")
+-  set(INC_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_INCLUDE_DIR@")
++  set(INC_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@")
+   file(RELATIVE_PATH PKG_TO_INC_RPATH "${PKG_DIR}" "${INC_DIR}")
+ 
+   get_filename_component(OPENJPEG_INCLUDE_DIRS "${SELF_DIR}/${PKG_TO_INC_RPATH}" ABSOLUTE)
+diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
+index d4f3ddbe..ed5cb44c 100644
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -44,7 +44,7 @@ if(DOXYGEN_FOUND)
+ 
+   # install HTML documentation (install png files too):
+   install(DIRECTORY ${CMAKE_BINARY_DIR}/doc/html
+-    DESTINATION share/doc
++    DESTINATION ${CMAKE_INSTALL_DOCDIR}
+     PATTERN ".svn" EXCLUDE
+   )
+ else()
+diff --git a/src/bin/jp2/CMakeLists.txt b/src/bin/jp2/CMakeLists.txt
+index 4d4bd952..29b4dd20 100644
+--- a/src/bin/jp2/CMakeLists.txt
++++ b/src/bin/jp2/CMakeLists.txt
+@@ -67,7 +67,7 @@ foreach(exe opj_decompress opj_compress opj_dump)
+   # Install exe
+   install(TARGETS ${exe}
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+   if(OPJ_USE_DSYMUTIL)
+     add_custom_command(TARGET ${exe} POST_BUILD
+@@ -83,6 +83,6 @@ install(
+   FILES       ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_compress.1
+               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_decompress.1
+               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_dump.1
+-  DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man1)
++  DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+ #
+ endif()
+diff --git a/src/bin/jp3d/CMakeLists.txt b/src/bin/jp3d/CMakeLists.txt
+index 3cac1a8f..ed62b4f3 100644
+--- a/src/bin/jp3d/CMakeLists.txt
++++ b/src/bin/jp3d/CMakeLists.txt
+@@ -36,6 +36,6 @@ foreach(exe opj_jp3d_compress opj_jp3d_decompress)
+   # Install exe
+   install(TARGETS ${exe}
+     EXPORT OpenJP3DTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ endforeach()
+diff --git a/src/bin/jpip/CMakeLists.txt b/src/bin/jpip/CMakeLists.txt
+index 301d885b..ddd867dc 100644
+--- a/src/bin/jpip/CMakeLists.txt
++++ b/src/bin/jpip/CMakeLists.txt
+@@ -13,7 +13,7 @@ add_executable(opj_jpip_addxml opj_jpip_addxml.c)
+ # Install exe
+ install(TARGETS opj_jpip_addxml
+   EXPORT OpenJPEGTargets
+-  DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++  DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ 
+ if(BUILD_JPIP_SERVER)
+@@ -38,7 +38,7 @@ if(BUILD_JPIP_SERVER)
+   # Install exe
+   install(TARGETS opj_server
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+     )
+ endif()
+ 
+@@ -52,7 +52,7 @@ add_executable(${exe} ${exe}.c)
+   target_link_libraries(${exe} openjpip)
+   install(TARGETS ${exe}
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+     )
+ endforeach()
+ 
+@@ -123,7 +123,7 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
+       )
+ 
+     install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+-      DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++      DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+       )
+   else()
+     # opj_viewer (simple, no xerces)
+@@ -153,7 +153,7 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
+       )
+ 
+     install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+-      DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++      DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+       )
+   endif()
+ else()
+diff --git a/src/bin/jpwl/CMakeLists.txt b/src/bin/jpwl/CMakeLists.txt
+index 5df225de..8a798e61 100644
+--- a/src/bin/jpwl/CMakeLists.txt
++++ b/src/bin/jpwl/CMakeLists.txt
+@@ -57,6 +57,6 @@ foreach(exe decompress compress)
+   endif()
+ 
+   install(TARGETS ${jpwl_exe}
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ endforeach()
+diff --git a/src/bin/mj2/CMakeLists.txt b/src/bin/mj2/CMakeLists.txt
+index 5d3e288b..6669c502 100644
+--- a/src/bin/mj2/CMakeLists.txt
++++ b/src/bin/mj2/CMakeLists.txt
+@@ -43,5 +43,5 @@ foreach(exe
+   endif()
+ 
+   install(TARGETS ${exe}
+-  	DESTINATION ${OPENJPEG_INSTALL_BIN_DIR})
++    DESTINATION ${CMAKE_INSTALL_BINDIR})
+ endforeach()
+diff --git a/src/lib/openjp2/CMakeLists.txt b/src/lib/openjp2/CMakeLists.txt
+index b2714858..9cbc4c3f 100644
+--- a/src/lib/openjp2/CMakeLists.txt
++++ b/src/lib/openjp2/CMakeLists.txt
+@@ -2,7 +2,7 @@ include_regular_expression("^.*$")
+ 
+ #
+ install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/opj_config.h
+- DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR} COMPONENT Headers)
++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR} COMPONENT Headers)
+ 
+ include_directories(
+   ${${OPENJPEG_NAMESPACE}_BINARY_DIR}/src/lib/openjp2 # opj_config.h and opj_config_private.h
+@@ -114,21 +114,21 @@ endif()
+ # Install library
+ install(TARGETS ${INSTALL_LIBS}
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ install(FILES openjpeg.h opj_stdint.h
+-  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR} COMPONENT Headers
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR} COMPONENT Headers
+ )
+ 
+ if(BUILD_DOC)
+ # install man page of the library
+ install(
+   FILES       ${OPENJPEG_SOURCE_DIR}/doc/man/man3/libopenjp2.3
+-  DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man3)
++  DESTINATION ${CMAKE_INSTALL_MANDIR}/man3)
+ endif()
+ 
+ if(BUILD_LUTS_GENERATOR)
+diff --git a/src/lib/openjp2/libopenjp2.pc.cmake.in b/src/lib/openjp2/libopenjp2.pc.cmake.in
+index 62159b00..ebad9578 100644
+--- a/src/lib/openjp2/libopenjp2.pc.cmake.in
++++ b/src/lib/openjp2/libopenjp2.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjp2
+ Description: JPEG2000 library (Part 1 and 2)
+diff --git a/src/lib/openjp3d/CMakeLists.txt b/src/lib/openjp3d/CMakeLists.txt
+index b0469af1..6e251984 100644
+--- a/src/lib/openjp3d/CMakeLists.txt
++++ b/src/lib/openjp3d/CMakeLists.txt
+@@ -34,12 +34,12 @@ endif()
+ # Install library
+ install(TARGETS ${OPENJP3D_LIBRARY_NAME}
+   EXPORT OpenJP3DTargets
+-  DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
+   COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ install(FILES openjp3d.h
+-  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR}
+   COMPONENT Headers
+ )
+diff --git a/src/lib/openjp3d/libopenjp3d.pc.cmake.in b/src/lib/openjp3d/libopenjp3d.pc.cmake.in
+index e9b6c404..866a0174 100644
+--- a/src/lib/openjp3d/libopenjp3d.pc.cmake.in
++++ b/src/lib/openjp3d/libopenjp3d.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjp3d
+ Description: JPEG2000 Extensions for three-dimensional data (Part 10)
+diff --git a/src/lib/openjpip/CMakeLists.txt b/src/lib/openjpip/CMakeLists.txt
+index b3cb8ce8..aace36d4 100644
+--- a/src/lib/openjpip/CMakeLists.txt
++++ b/src/lib/openjpip/CMakeLists.txt
+@@ -74,9 +74,9 @@ endif()
+ # Install library
+ install(TARGETS openjpip
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+   )
+ 
+ if(BUILD_JPIP_SERVER)
+@@ -86,6 +86,6 @@ if(BUILD_JPIP_SERVER)
+     PROPERTIES COMPILE_FLAGS "-DSERVER")
+   install(TARGETS openjpip_server
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++    DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+     )
+ endif()
+diff --git a/src/lib/openjpip/libopenjpip.pc.cmake.in b/src/lib/openjpip/libopenjpip.pc.cmake.in
+index 7c3f29af..4cfa6fce 100644
+--- a/src/lib/openjpip/libopenjpip.pc.cmake.in
++++ b/src/lib/openjpip/libopenjpip.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjpip
+ Description: JPEG2000 Interactivity tools, APIs and protocols (Part 9)
+diff --git a/src/lib/openjpwl/CMakeLists.txt b/src/lib/openjpwl/CMakeLists.txt
+index 1b33adbe..bb90c87c 100644
+--- a/src/lib/openjpwl/CMakeLists.txt
++++ b/src/lib/openjpwl/CMakeLists.txt
+@@ -58,7 +58,7 @@ endif()
+ # Install library
+ install(TARGETS openjpwl
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+ )
+diff --git a/src/lib/openjpwl/libopenjpwl.pc.cmake.in b/src/lib/openjpwl/libopenjpwl.pc.cmake.in
+index b1244197..8acc1457 100644
+--- a/src/lib/openjpwl/libopenjpwl.pc.cmake.in
++++ b/src/lib/openjpwl/libopenjpwl.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjpwl
+ Description: JPEG2000 Wireless library (Part 11)
+diff --git a/src/lib/openmj2/CMakeLists.txt b/src/lib/openmj2/CMakeLists.txt
+index 25294b20..dced53f6 100644
+--- a/src/lib/openmj2/CMakeLists.txt
++++ b/src/lib/openmj2/CMakeLists.txt
+@@ -53,12 +53,12 @@ endif()
+ # Install library
+ install(TARGETS ${OPENMJ2_LIBRARY_NAME}
+   EXPORT OpenMJ2Targets
+-  DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
+   COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ #install(FILES mj2.h
+-#  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}/${subdir}
++#  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR}
+ #  COMPONENT Headers
+ #)
+diff --git a/wrapping/java/openjp2/CMakeLists.txt b/wrapping/java/openjp2/CMakeLists.txt
+index eb3da0ed..4504da5f 100644
+--- a/wrapping/java/openjp2/CMakeLists.txt
++++ b/wrapping/java/openjp2/CMakeLists.txt
+@@ -69,5 +69,5 @@ add_custom_target(OpenJPEGJavaJar ALL
+ )
+ 
+ install(FILES ${LIBRARY_OUTPUT_PATH}/openjpeg.jar
+-  DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++  DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+ )
+-- 
+2.21.0
+

diff --git a/media-libs/openjpeg/openjpeg-2.3.1.ebuild b/media-libs/openjpeg/openjpeg-2.3.1.ebuild
new file mode 100644
index 00000000000..9140607a0a3
--- /dev/null
+++ b/media-libs/openjpeg/openjpeg-2.3.1.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-multilib
+
+# Make sure that test data are not newer than release;
+# otherwise we will see "Found-But-No-Test" test failures!
+MY_TESTDATA_COMMIT="25632d6deca2e567d30ef476b4abe63916c36f6e"
+
+DESCRIPTION="Open-source JPEG 2000 library"
+HOMEPAGE="https://www.openjpeg.org"
+SRC_URI="https://github.com/uclouvain/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+	test? ( https://github.com/uclouvain/openjpeg-data/archive/${MY_TESTDATA_COMMIT}.tar.gz -> ${PN}-data_20180620.tar.gz )"
+
+LICENSE="BSD-2"
+SLOT="2/7" # based on SONAME
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc static-libs test"
+
+RDEPEND="
+	media-libs/lcms:2
+	media-libs/libpng:0=
+	media-libs/tiff:0
+	sys-libs/zlib:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+	doc? ( app-doc/doxygen )"
+
+DOCS=( AUTHORS.md CHANGELOG.md NEWS.md README.md THANKS.md )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-2.3.1-gnuinstalldirs.patch" # bug 667150
+)
+
+src_prepare() {
+	if use test; then
+		mv "${WORKDIR}"/openjpeg-data-${MY_TESTDATA_COMMIT} "${WORKDIR}"/data ||
+			die "Failed to rename test data"
+	fi
+
+	cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+	local mycmakeargs=(
+		-DBUILD_PKGCONFIG_FILES=ON	# always build pkgconfig files, bug #539834
+		-DBUILD_TESTING="$(multilib_native_usex test)"
+		-DBUILD_DOC=$(multilib_native_usex doc ON OFF)
+		-DBUILD_CODEC=$(multilib_is_native_abi && echo ON || echo OFF)
+		-DBUILD_STATIC_LIBS=$(usex static-libs)
+	)
+
+	cmake-utils_src_configure
+}
+
+multilib_src_test() {
+	if ! multilib_is_native_abi ; then
+		elog "Cannot run tests for non-multilib abi."
+		return 0
+	fi
+
+	local myctestargs=
+
+	pushd "${BUILD_DIR}" > /dev/null || die
+	[[ -e CTestTestfile.cmake ]] || die "Test suite not available! Check source!"
+
+	[[ -n ${TEST_VERBOSE} ]] && myctestargs+=( --extra-verbose --output-on-failure )
+
+	echo ctest "${myctestargs[@]}" "$@"
+	if ctest "${myctestargs[@]}" "$@" ; then
+		einfo "Tests succeeded."
+		popd > /dev/null || die
+		return 0
+	else
+		local FAILEDTEST_LOG="${BUILD_DIR}/Testing/Temporary/LastTestsFailed.log"
+
+		if [[ ! -f "${FAILEDTEST_LOG}" ]] ; then
+			# Should never happen
+			die "Cannot analyze test failures: LastTestsFailed.log is missing!"
+		fi
+
+		echo ""
+		einfo "Note: Upstream is maintaining a list of known test failures."
+		einfo "We will now compare our test results against this list and sort out any known failure."
+
+		local KNOWN_FAILURES_LIST="${T}/known_failures_compiled.txt"
+		cat "${S}/tools/travis-ci/knownfailures-all.txt" > "${KNOWN_FAILURES_LIST}" || die
+
+		local ARCH_SPECIFIC_FAILURES=
+		if use amd64 ; then
+			ARCH_SPECIFIC_FAILURES="$(find "${S}/tools/travis-ci/" -name 'knownfailures-*x86_64*.txt' -print0 | sort -z | tail -z -n 1 | tr -d '\0')"
+		elif use x86 || use arm || use arm64; then
+			ARCH_SPECIFIC_FAILURES="$(find "${S}/tools/travis-ci/" -name 'knownfailures-*i386*.txt' -print0 | sort -z | tail -z -n 1 | tr -d '\0')"
+		fi
+
+		if [[ -f "${ARCH_SPECIFIC_FAILURES}" ]] ; then
+			einfo "Adding architecture specific failures (${ARCH_SPECIFIC_FAILURES}) to known failures list ..."
+			cat "${ARCH_SPECIFIC_FAILURES}" >> "${KNOWN_FAILURES_LIST}" || die
+		fi
+
+		# Logic copied from $S/tools/travis-ci/run.sh
+		local FAILEDTEST=
+		local FAILURES_LOG="${BUILD_DIR}/Testing/Temporary/failures.txt"
+		local HAS_UNKNOWN_TEST_FAILURES=0
+
+		echo ""
+
+		awk -F: '{ print $2 }' "${FAILEDTEST_LOG}" > "${FAILURES_LOG}"
+		while read FAILEDTEST; do
+			# is this failure known?
+			if grep -x "${FAILEDTEST}" "${KNOWN_FAILURES_LIST}" > /dev/null; then
+				ewarn "Test '${FAILEDTEST}' is known to fail, ignoring ..."
+				continue
+			fi
+
+			eerror "New/unknown test failure found: '${FAILEDTEST}'"
+			HAS_UNKNOWN_TEST_FAILURES=1
+		done < "${FAILURES_LOG}"
+
+		if [[ ${HAS_UNKNOWN_TEST_FAILURES} -ne 0 ]]; then
+			die "Test suite failed. New/unknown test failure(s) found!"
+		else
+			echo ""
+			einfo "Test suite passed. No new/unknown test failure(s) found!"
+		fi
+
+		return 0
+	fi
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/openjpeg/files/, media-libs/openjpeg/
@ 2020-03-25 22:42 Thomas Deutschmann
  0 siblings, 0 replies; 5+ messages in thread
From: Thomas Deutschmann @ 2020-03-25 22:42 UTC (permalink / raw
  To: gentoo-commits

commit:     cc5624c83ee4d27e8beba205f28324ad8765adeb
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 25 22:41:37 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Wed Mar 25 22:42:03 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc5624c8

media-libs/openjpeg: fix tests with tiff-4.1+

Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 .../files/openjpeg-2.3.1-libtiff-4.1-compat.patch  | 210 +++++++++++++++++++++
 media-libs/openjpeg/openjpeg-2.3.1-r1.ebuild       |   1 +
 2 files changed, 211 insertions(+)

diff --git a/media-libs/openjpeg/files/openjpeg-2.3.1-libtiff-4.1-compat.patch b/media-libs/openjpeg/files/openjpeg-2.3.1-libtiff-4.1-compat.patch
new file mode 100644
index 00000000000..53985b19093
--- /dev/null
+++ b/media-libs/openjpeg/files/openjpeg-2.3.1-libtiff-4.1-compat.patch
@@ -0,0 +1,210 @@
+From b5cb419faff300fdbc0b4e98dab5c9010db6f39d Mon Sep 17 00:00:00 2001
+From: Even Rouault <even.rouault@spatialys.com>
+Date: Fri, 7 Feb 2020 21:53:10 +0100
+Subject: [PATCH] tests: add alternate checksums for libtiff 4.1
+
+Fixes #1233
+
+libtiff 4.1 slightly modifies the way it generates files. So
+add the new expected md5sum.
+
+Not super elegant solution admitedly.
+---
+ tests/nonregression/checkmd5refs.cmake  |  5 ++
+ tests/nonregression/md5refs.txt         | 86 +++++++++++++++++++++++--
+ tests/nonregression/test_suite.ctest.in | 16 ++---
+ 3 files changed, 93 insertions(+), 14 deletions(-)
+
+diff --git a/tests/nonregression/checkmd5refs.cmake b/tests/nonregression/checkmd5refs.cmake
+index 75afbed05..76e2f245f 100644
+--- a/tests/nonregression/checkmd5refs.cmake
++++ b/tests/nonregression/checkmd5refs.cmake
+@@ -46,10 +46,15 @@ foreach(pgxfullpath ${globfiles})
+ 
+   string(REGEX MATCH "[0-9a-f]+  ${pgxfile}" output_var "${variable}")
+ 
++  # Search for variant md5sum for libtiff >= 4.1
++  string(REGEX MATCH "libtiff_4_1:[0-9a-f]+  ${pgxfile}" alternate_output_var "${variable}")
++
+   set(output "${output}  ${pgxfile}")
+ 
+   if("${output_var}" STREQUAL "${output}")
+     message(STATUS "equal: [${output_var}] vs [${output}]")
++  elseif("${alternate_output_var}" STREQUAL "libtiff_4_1:${output}")
++    message(STATUS "equal: [${alternate_output_var}] vs [libtiff_4_1:${output}]")
+   else()
+     message(SEND_ERROR "not equal: [${output_var}] vs [${output}]")
+   endif()
+diff --git a/tests/nonregression/md5refs.txt b/tests/nonregression/md5refs.txt
+index a33e82a12..95d3d74cb 100644
+--- a/tests/nonregression/md5refs.txt
++++ b/tests/nonregression/md5refs.txt
+@@ -180,6 +180,7 @@ dacaf60e4c430916a8c2a9ebec32e71c  issue458.jp2_3.pgx
+ d33fb5dbddb9b9b4438eb51fa27445a3  issue495.jp2_0.pgx
+ 27db8c35e12a5d5eb94d403d2aae2909  issue495.jp2_1.pgx
+ 97da625d2f2d0b75bf891d8083ce8bfb  issue495.jp2_2.pgx
++
+ 86729c5f2b74b2dfd42cb0d8e47aef79  a1_mono_tif-1.tif
+ fa9b7b896536b25a7a1d8eeeacb59141  a1_mono_tif-10.tif
+ e1f194f69d1c58ce8bed62cd4f1d5b6a  a1_mono_tif-11.tif
+@@ -196,6 +197,24 @@ de53251a33356e206a793fbdbaf90db2  a1_mono_tif-13.tif
+ e164a6c0219737ee05a3d55d6e3a3104  a1_mono_tif-7.tif
+ c3ebfcf478b1c4fc786748813f2b5d53  a1_mono_tif-8.tif
+ 67adb084f1fe234f240a1d0b2698507e  a1_mono_tif-9.tif
++
++libtiff_4_1:fc19057ff2d65c24daf9c9e25e34a48a  a1_mono_tif-1.tif
++libtiff_4_1:66246b6bbc83c06962f034235acb9924  a1_mono_tif-10.tif
++libtiff_4_1:ce1e07bdafe83a84a5df87fce2ffde6a  a1_mono_tif-11.tif
++libtiff_4_1:614f1ab59ca8473f5f8b1772b7a19d24  a1_mono_tif-12.tif
++libtiff_4_1:941bdcdf9103a22f7b6f66aaca3276d1  a1_mono_tif-13.tif
++libtiff_4_1:38df45296861df2b44879e8a0787d43c  a1_mono_tif-14.tif
++libtiff_4_1:387575ff38bed3d177776891e1b2804e  a1_mono_tif-15.tif
++libtiff_4_1:ee4838fbd88ddcb73ef26df523a3bb5d  a1_mono_tif-16.tif
++libtiff_4_1:6de7e8cbd95e2c465b587f2273daf9dc  a1_mono_tif-2.tif
++libtiff_4_1:e1e026d7ed26e8f3334cf25a8884abbd  a1_mono_tif-3.tif
++libtiff_4_1:c120fac03d1b3756a2deb9b92ba519d4  a1_mono_tif-4.tif
++libtiff_4_1:3a7b84ed9061e0b13996660fc2910e8a  a1_mono_tif-5.tif
++libtiff_4_1:7ac8316261d54f22e6c847fbac01542b  a1_mono_tif-6.tif
++libtiff_4_1:d714670f6746931c4e7defbfbe38b249  a1_mono_tif-7.tif
++libtiff_4_1:b28f4b92be5e3481d44f50f2cd7626aa  a1_mono_tif-8.tif
++libtiff_4_1:2a12dcda3e9927384e7344c4ecabdcf1  a1_mono_tif-9.tif
++
+ 31650ec40241737634179fff6ad306f8  basn4a08_tif-1.tif
+ abf884080bcfbf58c044a9d86bfa5e5d  basn4a08_tif-10.tif
+ b0d82c12aa2c9b3ecd96c6a5b5663a8c  basn4a08_tif-11.tif
+@@ -212,6 +231,24 @@ fb5cf848d63c61dc485c87c9246ee9c7  basn4a08_tif-16.tif
+ 18a59ac6036ee64e92af19b7e3cd3d64  basn4a08_tif-7.tif
+ dc40cc1da6de28e7e973c8ba796ca189  basn4a08_tif-8.tif
+ 824b776a5aa3459b77894b5f77621311  basn4a08_tif-9.tif
++
++libtiff_4_1:4c50df5b25e006041b05e8a6fb77c95e  basn4a08_tif-1.tif
++libtiff_4_1:68cc9a9bc5f95474744d06ea4efb2cf3  basn4a08_tif-10.tif
++libtiff_4_1:f643c00bd0673c8f6092125e38759a35  basn4a08_tif-11.tif
++libtiff_4_1:cfcefece2fb08a437876d85941cdaa27  basn4a08_tif-12.tif
++libtiff_4_1:1c3850831691aa8b565e4cd0d13166f9  basn4a08_tif-13.tif
++libtiff_4_1:06059e0429956946ecd3b1893ad39d18  basn4a08_tif-14.tif
++libtiff_4_1:71557ba6728e6641ad289b1d142acade  basn4a08_tif-15.tif
++libtiff_4_1:150c663277b43d0331112f24d47fd34e  basn4a08_tif-16.tif
++libtiff_4_1:9b43011e7a19079c21d65318b4a1139b  basn4a08_tif-2.tif
++libtiff_4_1:125ca7b2e45fafa4e003f5adc9f11da8  basn4a08_tif-3.tif
++libtiff_4_1:9fbc1a8f4d12c8152cde3e004cebd191  basn4a08_tif-4.tif
++libtiff_4_1:51c6b54e9d8b53355c3f73ad813bdeef  basn4a08_tif-5.tif
++libtiff_4_1:604ac42b1a9e7a75d63e97ce40e43442  basn4a08_tif-6.tif
++libtiff_4_1:360d1ce74faffa1a736d5f30c22976ed  basn4a08_tif-7.tif
++libtiff_4_1:2059aaa9e54c09f36d16107870c1546a  basn4a08_tif-8.tif
++libtiff_4_1:07496859507882401d66d70dcf392505  basn4a08_tif-9.tif
++
+ 59e32c45591fd3bb44fe99381a116ba1  basn6a08_tif-1.tif
+ 630e6fb6deba0b3efd93b610561d607a  basn6a08_tif-10.tif
+ 5419fec92f0e0e5907d838dacf9712b4  basn6a08_tif-11.tif
+@@ -228,6 +265,24 @@ d60864a6a5c8a49a202d98ae6f5165c7  basn6a08_tif-6.tif
+ 086fd12fec963995fe2e405dcef7e477  basn6a08_tif-7.tif
+ c3e93f61125f82a9832d0b9440468034  basn6a08_tif-8.tif
+ a9723dcc0732e74c9e8cd2bf93474a7d  basn6a08_tif-9.tif
++
++libtiff_4_1:98f777ca80a132d8ab820d4533daa5b6  basn6a08_tif-1.tif
++libtiff_4_1:9c5873a1fa5571aad9e73d36d5a4206a  basn6a08_tif-10.tif
++libtiff_4_1:c05dac7d4c19bc4b78cea426e5e52430  basn6a08_tif-11.tif
++libtiff_4_1:0223432f61df2508d0195f696988ddeb  basn6a08_tif-12.tif
++libtiff_4_1:ccc64d14279063ed9daf371be62077f7  basn6a08_tif-13.tif
++libtiff_4_1:ace0bab2c2fbb5f92a8214600df9159f  basn6a08_tif-14.tif
++libtiff_4_1:9b54bda92a09bcac9870fa02b428b7e6  basn6a08_tif-15.tif
++libtiff_4_1:178665d070f54f2920521c4e1cb9d5d0  basn6a08_tif-16.tif
++libtiff_4_1:c4b1e96d19429137cd8871833af2ea5a  basn6a08_tif-2.tif
++libtiff_4_1:44e8b5591740289d0ca52a3e19f19c22  basn6a08_tif-3.tif
++libtiff_4_1:70b4f469dd29c8e99d3f0525301286b8  basn6a08_tif-4.tif
++libtiff_4_1:bf7c35a2b05eecb406aab7959431a842  basn6a08_tif-5.tif
++libtiff_4_1:7d2ecb1c35869ddbafd11b4896357b81  basn6a08_tif-6.tif
++libtiff_4_1:2cd6ec32a0256806f46706c0ca564d9d  basn6a08_tif-7.tif
++libtiff_4_1:116b611b7a358bee2c4f2695732ec357  basn6a08_tif-8.tif
++libtiff_4_1:ed9ca54d25fb5b0cd5339eedfa16cbea  basn6a08_tif-9.tif
++
+ cfe04d15cf9d615fc36357dcb3b3956b  p0_14_tif-1.tif
+ 9ad87e7fddc77ac85e2e92509bee2365  p0_14_tif-10.tif
+ f144e26d6d5aa24d98f0415f10751025  p0_14_tif-11.tif
+@@ -244,6 +299,24 @@ b6f71c941e3a5b8d2547792ccec58d54  p0_14_tif-4.tif
+ 951c99efbd922d8f3feb015e9ef8e350  p0_14_tif-7.tif
+ 6808377b760b4ef3559ba8b14ed9b91a  p0_14_tif-8.tif
+ 96aa7dafa873d0ce33f84bb1ff78fa9b  p0_14_tif-9.tif
++
++libtiff_4_1:5f97d4bbab138f99b6b125e5a5bf96bd  p0_14_tif-1.tif
++libtiff_4_1:686c7a1561d73e53c000800ec0c5fa0a  p0_14_tif-10.tif
++libtiff_4_1:a8585d901cc1b7cbbda6e524ecb5db35  p0_14_tif-11.tif
++libtiff_4_1:17b5497c9b8a0c68739c0beae90aa432  p0_14_tif-12.tif
++libtiff_4_1:a024a04b96ccb13c81cd57a5ee6ad07a  p0_14_tif-13.tif
++libtiff_4_1:aabadca3f87437a32878fef7e265b23a  p0_14_tif-14.tif
++libtiff_4_1:5390a77296962268b73a793467092633  p0_14_tif-15.tif
++libtiff_4_1:47dc7cc71832e5739c32794a713966c3  p0_14_tif-16.tif
++libtiff_4_1:1a9247cd1fb26f5fffa870e8543f6d30  p0_14_tif-2.tif
++libtiff_4_1:e4c0c9481d4032ea6b7e6a08a39e9030  p0_14_tif-3.tif
++libtiff_4_1:c7d6ec9b235aaff146228875e69edbaa  p0_14_tif-4.tif
++libtiff_4_1:d3b8110b2284a09cfb7d5c4ffd451aff  p0_14_tif-5.tif
++libtiff_4_1:6189ee17c4a276f99302ac7e296b3daa  p0_14_tif-6.tif
++libtiff_4_1:b4a3b9b63681448abb7c460702de4df9  p0_14_tif-7.tif
++libtiff_4_1:04deb4e9679e7971c2cd0449fcd255b7  p0_14_tif-8.tif
++libtiff_4_1:254443e438ed6a5b0631d6188cc84789  p0_14_tif-9.tif
++
+ dd15b3d487d36a3682be0679300a4319  issue235.jp2_0.pgx
+ b9cd6dc76b141fb1fec15f50c1f70e01  issue235.jp2_1.pgx
+ 3edef2ae197ef30b08deda1b28825399  issue235.jp2_2.pgx
+@@ -288,6 +361,7 @@ fc2844a9f3c8e924e349180ba9e122dd  p0_14_png-2.png
+ 8d7685f1569d446787476c0a56c93750  dwt_interleave_h.gsr105.jp2_1.pgx
+ ddfff2ce2df4a9102518c92a362e6d25  dwt_interleave_h.gsr105.jp2_2.pgx
+ 63bf755af5a1f8a478d65079dc7c8964  issue205-tif.jp2.tif
++libtiff_4_1:f9678a9e12d540f768ebebaee2af8f14  issue205-tif.jp2.tif
+ b01ed87dbac424bc820b2ac590e4884e  issue236-ESYCC-CDEF.jp2_0.pgx
+ 2635cc00b1e18ef11adcba09e845d459  issue236-ESYCC-CDEF.jp2_1.pgx
+ f9c95d0aec2f6e7b814fa1d09edcdbda  issue236-ESYCC-CDEF.jp2_2.pgx
+@@ -310,11 +384,11 @@ d1bb7f93f4c0eb984b2e9c54e544b7e9  broken.jpc_1.pgx
+ b704ad4c0cfefffd78c20a54f5541265  dwt_interleave_h.gsr105.jp2_d_1_1_33_33_0.pgx
+ 9d7fe43cd7a50b7bbaf712926ee11980  dwt_interleave_h.gsr105.jp2_d_1_1_33_33_1.pgx
+ 0960b580f991ff10f693b24aa41ad58b  dwt_interleave_h.gsr105.jp2_d_1_1_33_33_2.pgx
+-fa7382fd8b2e788b28b807e200dd95b9  file1.jp2-c0.tif
+-ed79b7fe443955cdefba2b039ddc846a  file1.jp2-c0_1_2.tif
+-ac8f6ab3acc9c692ed7c41bd62a0e1e8  file1.jp2-c0-r1.tif
+-fbfcf662b6f7549574b2885490fbcf12  file1.jp2-c0-d10_20_30_40.tif
+-fa7382fd8b2e788b28b807e200dd95b9  file1.jp2-c0-t0.tif
+-ac8f6ab3acc9c692ed7c41bd62a0e1e8  file1.jp2-c0-t0-r1.tif
++6e23ded7d3ca0b1dd8405448e3ff931b  file1.jp2-c0.png
++5acabea0ef6d09d2c1f681773e886935  file1.jp2-c0_1_2.png
++1150acbee2c1e33c57592c05c76e565a  file1.jp2-c0-r1.png
++1b8ab42d8ee4e28d2868c04a815fb569  file1.jp2-c0-d10_20_30_40.png
++6e23ded7d3ca0b1dd8405448e3ff931b  file1.jp2-c0-t0.png
++1150acbee2c1e33c57592c05c76e565a  file1.jp2-c0-t0-r1.png
+ f31bcb01c771f829054cdb013575e86a  issue1043.png
+ 62bc654c830efddf1b23d6e208447dab  tnsot_zero.png
+diff --git a/tests/nonregression/test_suite.ctest.in b/tests/nonregression/test_suite.ctest.in
+index c42bad162..bda0681f7 100644
+--- a/tests/nonregression/test_suite.ctest.in
++++ b/tests/nonregression/test_suite.ctest.in
+@@ -612,22 +612,22 @@ opj_decompress -i @INPUT_NR_PATH@/issue979.j2k -o @TEMP_PATH@/issue979.j2k.pgx
+ opj_decompress -i @INPUT_NR_PATH@/dwt_interleave_h.gsr105.jp2 -o @TEMP_PATH@/dwt_interleave_h.gsr105.jp2_d_1_1_33_33.pgx -d 1,1,33,33
+ 
+ # partial component decoding with opj_decode(): one component
+-opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0.tif -c 0
++opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0.png -c 0
+ # partial component decoding with opj_decode(): 3 components without MCT
+-opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0_1_2.tif -c 0,1,2
++opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0_1_2.png -c 0,1,2
+ # partial component decoding with opj_decode() and opj_set_decode_area()
+-opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-d10_20_30_40.tif -c 0 -d 10,20,30,40
++opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-d10_20_30_40.png -c 0 -d 10,20,30,40
+ # partial component decoding with opj_decode() and reduced resolution
+-opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-r1.tif -c 0 -r 1
++opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-r1.png -c 0 -r 1
+ # partial component decoding with opj_get_decoded_tile()
+-opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-t0.tif -c 0 -t 0
++opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-t0.png -c 0 -t 0
+ # partial component decoding with opj_get_decoded_tile() and reduced resolution
+-opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-t0-r1.tif -c 0 -t 0 -r 1
++opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0-t0-r1.png -c 0 -t 0 -r 1
+ 
+ # try to map the same component several times
+-!opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0_0.tif -c 0,0
++!opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c0_0.png -c 0,0
+ # try to map an invalid component
+-!opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c10.tif -c 10
++!opj_decompress -i @INPUT_CONF_PATH@/file1.jp2 -o @TEMP_PATH@/file1.jp2-c10.png -c 10
+ 
+ opj_decompress -i @INPUT_NR_PATH@/db11217111510058.jp2 -o @TEMP_PATH@/issue1043.png
+ 

diff --git a/media-libs/openjpeg/openjpeg-2.3.1-r1.ebuild b/media-libs/openjpeg/openjpeg-2.3.1-r1.ebuild
index 7f22db1cc92..871bae223ed 100644
--- a/media-libs/openjpeg/openjpeg-2.3.1-r1.ebuild
+++ b/media-libs/openjpeg/openjpeg-2.3.1-r1.ebuild
@@ -36,6 +36,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-2.3.1-gnuinstalldirs.patch" # bug 667150
 	"${FILESDIR}/${P}-CVE-2020-6851.patch"
 	"${FILESDIR}/${P}-CVE-2020-8112.patch"
+	"${FILESDIR}/${P}-libtiff-4.1-compat.patch"
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/openjpeg/files/, media-libs/openjpeg/
@ 2020-12-29  2:59 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2020-12-29  2:59 UTC (permalink / raw
  To: gentoo-commits

commit:     77e5ad18b2cc380826ad062461b08357633889a6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 29 02:56:24 2020 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Dec 29 02:56:24 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77e5ad18

media-libs/openjpeg: security bump to 2.4.0

Bug: https://bugs.gentoo.org/675426
Bug: https://bugs.gentoo.org/718918
Closes: https://bugs.gentoo.org/715306
Closes: https://bugs.gentoo.org/715422
Closes: https://bugs.gentoo.org/715130
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/openjpeg/Manifest                       |   2 +
 .../files/openjpeg-2.4.0-gnuinstalldirs.patch      | 420 +++++++++++++++++++++
 media-libs/openjpeg/openjpeg-2.4.0.ebuild          | 139 +++++++
 3 files changed, 561 insertions(+)

diff --git a/media-libs/openjpeg/Manifest b/media-libs/openjpeg/Manifest
index 1d294acdcfb..0179013e339 100644
--- a/media-libs/openjpeg/Manifest
+++ b/media-libs/openjpeg/Manifest
@@ -1,3 +1,5 @@
 DIST openjpeg-1.5.2.tar.gz 1385702 BLAKE2B 936ab6e0fb48f2839df13113c716c39b9572bd590206cd823dedccfd4001444d73a81ccbf82616a40a35ad8b1fae8d2f08d7c265a771d9d9ef413beac5e84ac1 SHA512 b945cf4f8b5e3227a0c07120c94b0ed5bf30c901de73059ee1d47975f46744fb62bbe84cdb2917c6431128f400020874eb07160af870b5448ced897998b08862
 DIST openjpeg-2.3.1.tar.gz 2214401 BLAKE2B ecc7e573592a5302dcdbade791f6aa6e48f6791c7412fdd44976f3619c8fc0cca7d904fa42013f33ab17dd0f569a76d3c49a73eccaf0a749d34f305362367af9 SHA512 339fbc899bddf2393d214df71ed5d6070a3a76b933b1e75576c8a0ae9dfcc4adec40bdc544f599e4b8d0bc173e4e9e7352408497b5b3c9356985605830c26c03
+DIST openjpeg-2.4.0.tar.gz 2233229 BLAKE2B ab8907638ac041ce7dcbcbcd9624ea5e4b7542c9ec38a850e363c071c27c4bc8b16e207700b12e67d8d32bdd9b0838735bede27084090ce95105d32c539b09cf SHA512 55daab47d33823af94e32e5d345b52c251a5410f0c8e0a13b693f17899eedc8b2bb107489ddcba9ab78ef17dfd7cd80d3c5ec80c1e429189cb041124b67e07a8
 DIST openjpeg-data_20180620.tar.gz 497894373 BLAKE2B 3a596f8f9ee56037bf567b6f2d3731b97299dba24e0c9d3562d38c15ddf58d352a918edaccb528f054cf288f87d6362d90d3450d4a5b968e9c8dfe05f54d89fe SHA512 32189a10c4d8cf00c23cda455f9e4353deb2175189d85f9b3aab1c4375a02a491ec2de89815725ebbcaea86c2c7ab274b89ee2583ffd8bf0dc32d4fc2d8f7507
+DIST openjpeg-data_20201130.tar.gz 497969983 BLAKE2B 35ff1ee234e3bbf47a822151c97cdf2764f864094973fa60adc7962f8065b38318b0cc41338b5ba3fffd9bb00eac3eaf4153ecc398abd49a8047168414c1c85b SHA512 4c367c8262fe894f90a1e63fb59d87e974ae0d750d3cee89adfe4d765040f0a2049b491a17a34a5b3ba79e183a508c9d592376fe3c112df56c311bf3212f0c31

diff --git a/media-libs/openjpeg/files/openjpeg-2.4.0-gnuinstalldirs.patch b/media-libs/openjpeg/files/openjpeg-2.4.0-gnuinstalldirs.patch
new file mode 100644
index 00000000000..7b0014980fd
--- /dev/null
+++ b/media-libs/openjpeg/files/openjpeg-2.4.0-gnuinstalldirs.patch
@@ -0,0 +1,420 @@
+From fecc8e9e23f78de94c41bc641b3e5b9e9a84560b Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 11 Apr 2019 13:10:57 +0200
+Subject: [PATCH] Use GNUInstallDirs for standard installation directories
+
+Raises minimum cmake version by a little.
+- Later rebased by sam@gentoo.org for 2.4.0
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,7 +7,7 @@
+ # For this purpose you can define a CMake var: OPENJPEG_NAMESPACE to whatever you like
+ # e.g.:
+ # set(OPENJPEG_NAMESPACE "GDCMOPENJPEG")
+-cmake_minimum_required(VERSION 2.8.2)
++cmake_minimum_required(VERSION 2.8.5)
+ 
+ if(COMMAND CMAKE_POLICY)
+   cmake_policy(SET CMP0003 NEW)
+@@ -105,58 +105,27 @@ endif()
+ # --------------------------------------------------------------------------
+ # Install directories
+ # Build DOCUMENTATION (not in ALL target and only if Doxygen is found)
++include(GNUInstallDirs)
++
+ option(BUILD_DOC "Build the HTML documentation (with doxygen if available)." OFF)
+ 
+ string(TOLOWER ${PROJECT_NAME} projectname)
+ set(OPENJPEG_INSTALL_SUBDIR "${projectname}-${OPENJPEG_VERSION_MAJOR}.${OPENJPEG_VERSION_MINOR}")
+ 
+-if(NOT OPENJPEG_INSTALL_BIN_DIR)
+-  set(OPENJPEG_INSTALL_BIN_DIR "bin")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_LIB_DIR)
+-  set(OPENJPEG_INSTALL_LIB_DIR "lib")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_SHARE_DIR)
+-  set(OPENJPEG_INSTALL_SHARE_DIR "share")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_DATA_DIR)
+-  set(OPENJPEG_INSTALL_DATA_DIR "${OPENJPEG_INSTALL_SHARE_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_INCLUDE_DIR)
+-  set(OPENJPEG_INSTALL_INCLUDE_DIR "include/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-
+-if(BUILD_DOC)
+-if(NOT OPENJPEG_INSTALL_MAN_DIR)
+-  set(OPENJPEG_INSTALL_MAN_DIR "share/man/")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_DOC_DIR)
+-  set(OPENJPEG_INSTALL_DOC_DIR "share/doc/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-endif()
+-
+ if(NOT OPENJPEG_INSTALL_JNI_DIR)
+   if(WIN32)
+-    set(OPENJPEG_INSTALL_JNI_DIR ${OPENJPEG_INSTALL_BIN_DIR})
++    set(OPENJPEG_INSTALL_JNI_DIR ${CMAKE_INSTALL_BINDIR})
+   else()
+-    set(OPENJPEG_INSTALL_JNI_DIR ${OPENJPEG_INSTALL_LIB_DIR})
++    set(OPENJPEG_INSTALL_JNI_DIR ${CMAKE_INSTALL_LIBDIR})
+   endif()
+ endif()
+ 
+ if(NOT OPENJPEG_INSTALL_PACKAGE_DIR)
+-  # We could install *.cmake files in share/ however those files contains
+-  # hardcoded path to libraries on a multi-arch system (fedora/debian) those
+-  # path will be different (lib/i386-linux-gnu vs lib/x86_64-linux-gnu)
+-  set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
++  set(OPENJPEG_INSTALL_PACKAGE_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${OPENJPEG_INSTALL_SUBDIR}")
+ endif()
+ 
+ if (APPLE)
+-	list(APPEND OPENJPEG_LIBRARY_PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/${OPENJPEG_INSTALL_LIB_DIR}")
++	list(APPEND OPENJPEG_LIBRARY_PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}")
+ 	option(OPJ_USE_DSYMUTIL "Call dsymutil on binaries after build." OFF)
+ endif()
+ 
+@@ -366,14 +335,14 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp2/libopenjp2.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjp2.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjp2.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+ #
+   if(BUILD_JPWL)
+   # install in lib and not share (see multi-arch note above)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjpwl/libopenjpwl.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjpwl.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjpwl.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ #
+   if(BUILD_JPIP)
+@@ -381,7 +350,7 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjpip/libopenjpip.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjpip.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjpip.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ #
+   if(BUILD_JP3D)
+@@ -389,7 +358,7 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp3d/libopenjp3d.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjp3d.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjp3d.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ endif()
+ 
+--- a/cmake/OpenJPEGConfig.cmake.in
++++ b/cmake/OpenJPEGConfig.cmake.in
+@@ -27,7 +27,7 @@ if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
+   # This is an install tree
+   include(${SELF_DIR}/OpenJPEGTargets.cmake)
+ 
+-  set(INC_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_INCLUDE_DIR@")
++  set(INC_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@")
+   get_filename_component(OPENJPEG_INCLUDE_DIRS "${INC_DIR}" ABSOLUTE)
+ 
+ else()
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -44,7 +44,7 @@ if(DOXYGEN_FOUND)
+ 
+   # install HTML documentation (install png files too):
+   install(DIRECTORY ${CMAKE_BINARY_DIR}/doc/html
+-    DESTINATION ${OPENJPEG_INSTALL_DOC_DIR}
++    DESTINATION ${CMAKE_INSTALL_DOCDIR}
+     PATTERN ".svn" EXCLUDE
+   )
+ else()
+--- a/src/bin/jp2/CMakeLists.txt
++++ b/src/bin/jp2/CMakeLists.txt
+@@ -67,7 +67,7 @@ foreach(exe opj_decompress opj_compress opj_dump)
+   # Install exe
+   install(TARGETS ${exe}
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+   if(OPJ_USE_DSYMUTIL)
+     add_custom_command(TARGET ${exe} POST_BUILD
+@@ -83,6 +83,6 @@ install(
+   FILES       ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_compress.1
+               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_decompress.1
+               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_dump.1
+-  DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man1)
++  DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+ #
+ endif()
+--- a/src/bin/jp3d/CMakeLists.txt
++++ b/src/bin/jp3d/CMakeLists.txt
+@@ -36,6 +36,6 @@ foreach(exe opj_jp3d_compress opj_jp3d_decompress)
+   # Install exe
+   install(TARGETS ${exe}
+     EXPORT OpenJP3DTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ endforeach()
+--- a/src/bin/jpip/CMakeLists.txt
++++ b/src/bin/jpip/CMakeLists.txt
+@@ -13,7 +13,7 @@ add_executable(opj_jpip_addxml opj_jpip_addxml.c)
+ # Install exe
+ install(TARGETS opj_jpip_addxml
+   EXPORT OpenJPEGTargets
+-  DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++  DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ 
+ if(BUILD_JPIP_SERVER)
+@@ -38,7 +38,7 @@ if(BUILD_JPIP_SERVER)
+   # Install exe
+   install(TARGETS opj_server
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+     )
+ endif()
+ 
+@@ -52,7 +52,7 @@ add_executable(${exe} ${exe}.c)
+   target_link_libraries(${exe} openjpip)
+   install(TARGETS ${exe}
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+     )
+ endforeach()
+ 
+@@ -123,7 +123,7 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
+       )
+ 
+     install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+-      DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++      DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+       )
+   else()
+     # opj_viewer (simple, no xerces)
+@@ -153,7 +153,7 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
+       )
+ 
+     install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+-      DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++      DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+       )
+   endif()
+ else()
+--- a/src/bin/jpwl/CMakeLists.txt
++++ b/src/bin/jpwl/CMakeLists.txt
+@@ -57,6 +57,6 @@ foreach(exe decompress compress)
+   endif()
+ 
+   install(TARGETS ${jpwl_exe}
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ endforeach()
+--- a/src/bin/mj2/CMakeLists.txt
++++ b/src/bin/mj2/CMakeLists.txt
+@@ -43,5 +43,5 @@ foreach(exe
+   endif()
+ 
+   install(TARGETS ${exe}
+-  	DESTINATION ${OPENJPEG_INSTALL_BIN_DIR})
++  	DESTINATION ${CMAKE_INSTALL_BINDIR})
+ endforeach()
+--- a/src/lib/openjp2/CMakeLists.txt
++++ b/src/lib/openjp2/CMakeLists.txt
+@@ -2,7 +2,7 @@ include_regular_expression("^.*$")
+ 
+ #
+ install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/opj_config.h
+- DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR} COMPONENT Headers)
++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR} COMPONENT Headers)
+ 
+ include_directories(
+   ${${OPENJPEG_NAMESPACE}_BINARY_DIR}/src/lib/openjp2 # opj_config.h and opj_config_private.h
+@@ -114,21 +114,21 @@ endif()
+ # Install library
+ install(TARGETS ${INSTALL_LIBS}
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ install(FILES openjpeg.h opj_stdint.h
+-  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR} COMPONENT Headers
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR} COMPONENT Headers
+ )
+ 
+ if(BUILD_DOC)
+ # install man page of the library
+ install(
+   FILES       ${OPENJPEG_SOURCE_DIR}/doc/man/man3/libopenjp2.3
+-  DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man3)
++  DESTINATION ${CMAKE_INSTALL_MANDIR}/man3)
+ endif()
+ 
+ if(BUILD_LUTS_GENERATOR)
+--- a/src/lib/openjp2/libopenjp2.pc.cmake.in
++++ b/src/lib/openjp2/libopenjp2.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjp2
+ Description: JPEG2000 library (Part 1 and 2)
+--- a/src/lib/openjp3d/CMakeLists.txt
++++ b/src/lib/openjp3d/CMakeLists.txt
+@@ -34,12 +34,12 @@ endif()
+ # Install library
+ install(TARGETS ${OPENJP3D_LIBRARY_NAME}
+   EXPORT OpenJP3DTargets
+-  DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
+   COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ install(FILES openjp3d.h
+-  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR}
+   COMPONENT Headers
+ )
+--- a/src/lib/openjp3d/libopenjp3d.pc.cmake.in
++++ b/src/lib/openjp3d/libopenjp3d.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@ 
+ 
+ Name: openjp3d
+ Description: JPEG2000 Extensions for three-dimensional data (Part 10)
+--- a/src/lib/openjpip/CMakeLists.txt
++++ b/src/lib/openjpip/CMakeLists.txt
+@@ -74,9 +74,9 @@ endif()
+ # Install library
+ install(TARGETS openjpip
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+   )
+ 
+ if(BUILD_JPIP_SERVER)
+@@ -86,6 +86,6 @@ if(BUILD_JPIP_SERVER)
+     PROPERTIES COMPILE_FLAGS "-DSERVER")
+   install(TARGETS openjpip_server
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++    DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+     )
+ endif()
+--- a/src/lib/openjpip/libopenjpip.pc.cmake.in
++++ b/src/lib/openjpip/libopenjpip.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjpip
+ Description: JPEG2000 Interactivity tools, APIs and protocols (Part 9)
+--- a/src/lib/openjpwl/CMakeLists.txt
++++ b/src/lib/openjpwl/CMakeLists.txt
+@@ -58,7 +58,7 @@ endif()
+ # Install library
+ install(TARGETS openjpwl
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+ )
+--- a/src/lib/openjpwl/libopenjpwl.pc.cmake.in
++++ b/src/lib/openjpwl/libopenjpwl.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=${prefix}/@CMAKE_INSTALL_MANDIR@
++docdir=${prefix}/@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjpwl
+ Description: JPEG2000 Wireless library (Part 11)
+--- a/src/lib/openmj2/CMakeLists.txt
++++ b/src/lib/openmj2/CMakeLists.txt
+@@ -53,12 +53,12 @@ endif()
+ # Install library
+ install(TARGETS ${OPENMJ2_LIBRARY_NAME}
+   EXPORT OpenMJ2Targets
+-  DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
+   COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ #install(FILES mj2.h
+-#  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}/${subdir}
++#  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR}
+ #  COMPONENT Headers
+ #)
+--- a/wrapping/java/openjp2/CMakeLists.txt
++++ b/wrapping/java/openjp2/CMakeLists.txt
+@@ -69,5 +69,5 @@ add_custom_target(OpenJPEGJavaJar ALL
+ )
+ 
+ install(FILES ${LIBRARY_OUTPUT_PATH}/openjpeg.jar
+-  DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++  DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+ )

diff --git a/media-libs/openjpeg/openjpeg-2.4.0.ebuild b/media-libs/openjpeg/openjpeg-2.4.0.ebuild
new file mode 100644
index 00000000000..835a389bc40
--- /dev/null
+++ b/media-libs/openjpeg/openjpeg-2.4.0.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+inherit cmake-multilib flag-o-matic
+
+# Make sure that test data are not newer than release;
+# otherwise we will see "Found-But-No-Test" test failures!
+MY_TESTDATA_COMMIT="cd724fb1f93e6af41ebc68c4904f4bf2a4cd1e60"
+
+DESCRIPTION="Open-source JPEG 2000 library"
+HOMEPAGE="https://www.openjpeg.org"
+SRC_URI="https://github.com/uclouvain/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+	test? ( https://github.com/uclouvain/openjpeg-data/archive/${MY_TESTDATA_COMMIT}.tar.gz -> ${PN}-data_20201130.tar.gz )"
+
+LICENSE="BSD-2"
+SLOT="2/7" # based on SONAME
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc static-libs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	media-libs/lcms:2
+	media-libs/libpng:0=
+	media-libs/tiff:0
+	sys-libs/zlib:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+	doc? ( app-doc/doxygen )"
+
+DOCS=( AUTHORS.md CHANGELOG.md NEWS.md README.md THANKS.md )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-2.4.0-gnuinstalldirs.patch" # bug 667150
+)
+
+src_prepare() {
+	if use test; then
+		mv "${WORKDIR}"/openjpeg-data-${MY_TESTDATA_COMMIT} "${WORKDIR}"/data ||
+			die "Failed to rename test data"
+	fi
+
+	cmake_src_prepare
+}
+
+multilib_src_configure() {
+	local mycmakeargs=(
+		-DBUILD_PKGCONFIG_FILES=ON # always build pkgconfig files, bug #539834
+		-DBUILD_TESTING="$(multilib_native_usex test)"
+		-DBUILD_DOC=$(multilib_native_usex doc ON OFF)
+		-DBUILD_CODEC=$(multilib_is_native_abi && echo ON || echo OFF)
+		-DBUILD_STATIC_LIBS=$(usex static-libs)
+	)
+
+	# Cheat a little bit and force disabling fixed point magic
+	# The test suite is extremely fragile to small changes
+	# bug 715130, bug 715422
+	# https://github.com/uclouvain/openjpeg/issues/1017
+	multilib_is_native_abi && use test && append-cflags "-ffp-contract=off"
+
+	cmake_src_configure
+}
+
+multilib_src_test() {
+	if ! multilib_is_native_abi ; then
+		elog "Cannot run tests for non-multilib abi."
+		return 0
+	fi
+
+	local myctestargs=
+
+	pushd "${BUILD_DIR}" > /dev/null || die
+	[[ -e CTestTestfile.cmake ]] || die "Test suite not available! Check source!"
+
+	[[ -n ${TEST_VERBOSE} ]] && myctestargs+=( --extra-verbose --output-on-failure )
+
+	echo ctest "${myctestargs[@]}" "$@"
+	if ctest "${myctestargs[@]}" "$@" ; then
+		einfo "Tests succeeded."
+		popd > /dev/null || die
+		return 0
+	else
+		local FAILEDTEST_LOG="${BUILD_DIR}/Testing/Temporary/LastTestsFailed.log"
+
+		if [[ ! -f "${FAILEDTEST_LOG}" ]] ; then
+			# Should never happen
+			die "Cannot analyze test failures: LastTestsFailed.log is missing!"
+		fi
+
+		echo ""
+		einfo "Note: Upstream is maintaining a list of known test failures."
+		einfo "We will now compare our test results against this list and sort out any known failure."
+
+		local KNOWN_FAILURES_LIST="${T}/known_failures_compiled.txt"
+		cat "${S}/tools/travis-ci/knownfailures-all.txt" > "${KNOWN_FAILURES_LIST}" || die
+
+		local ARCH_SPECIFIC_FAILURES=
+		if use amd64 ; then
+			ARCH_SPECIFIC_FAILURES="$(find "${S}/tools/travis-ci/" -name 'knownfailures-*x86_64*.txt' -print0 | sort -z | tail -z -n 1 | tr -d '\0')"
+		elif use x86 || use arm || use arm64; then
+			ARCH_SPECIFIC_FAILURES="$(find "${S}/tools/travis-ci/" -name 'knownfailures-*i386*.txt' -print0 | sort -z | tail -z -n 1 | tr -d '\0')"
+		fi
+
+		if [[ -f "${ARCH_SPECIFIC_FAILURES}" ]] ; then
+			einfo "Adding architecture specific failures (${ARCH_SPECIFIC_FAILURES}) to known failures list ..."
+			cat "${ARCH_SPECIFIC_FAILURES}" >> "${KNOWN_FAILURES_LIST}" || die
+		fi
+
+		# Logic copied from $S/tools/travis-ci/run.sh
+		local FAILEDTEST=
+		local FAILURES_LOG="${BUILD_DIR}/Testing/Temporary/failures.txt"
+		local HAS_UNKNOWN_TEST_FAILURES=0
+
+		echo ""
+
+		awk -F: '{ print $2 }' "${FAILEDTEST_LOG}" > "${FAILURES_LOG}"
+		while read FAILEDTEST; do
+			# is this failure known?
+			if grep -x "${FAILEDTEST}" "${KNOWN_FAILURES_LIST}" > /dev/null; then
+				ewarn "Test '${FAILEDTEST}' is known to fail, ignoring ..."
+				continue
+			fi
+
+			eerror "New/unknown test failure found: '${FAILEDTEST}'"
+			HAS_UNKNOWN_TEST_FAILURES=1
+		done < "${FAILURES_LOG}"
+
+		if [[ ${HAS_UNKNOWN_TEST_FAILURES} -ne 0 ]]; then
+			die "Test suite failed. New/unknown test failure(s) found!"
+		else
+			echo ""
+			einfo "Test suite passed. No new/unknown test failure(s) found!"
+		fi
+
+		return 0
+	fi
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/openjpeg/files/, media-libs/openjpeg/
@ 2022-02-03  2:21 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2022-02-03  2:21 UTC (permalink / raw
  To: gentoo-commits

commit:     fde99243e307bd130c6f9cc04090bcb9829ce9c0
Author:     Thomas Bracht Laumann Jespersen <t <AT> laumann <DOT> xyz>
AuthorDate: Wed Feb  2 19:19:35 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Feb  3 02:20:20 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fde99243

media-libs/openjpeg: Fix mandir and docdir for generated pkgconfig

Update the patch to remove the ${prefix} variable from mandir and docdir
as it results in incorrect paths.

Before:

	$ pkg-config --variable=docdir libopenjp2
	/usr//usr/share/doc/openjpeg-2.4.0
	$ pkg-config --variable=mandir libopenjp2
	/usr//usr/share/man

and after:

	$ pkg-config --variable=docdir libopenjp2
	/usr/share/doc/openjpeg-2.4.0-r1
	$ pkg-config --variable=mandir libopenjp2
	/usr/share/man

Bug: https://bugs.gentoo.org/694776
Signed-off-by: Thomas Bracht Laumann Jespersen <t <AT> laumann.xyz>
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Closes: https://github.com/gentoo/gentoo/pull/24000
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/openjpeg-2.4.0-r1-gnuinstalldirs.patch   | 435 +++++++++++++++++++++
 media-libs/openjpeg/openjpeg-2.4.0-r1.ebuild       | 139 +++++++
 2 files changed, 574 insertions(+)

diff --git a/media-libs/openjpeg/files/openjpeg-2.4.0-r1-gnuinstalldirs.patch b/media-libs/openjpeg/files/openjpeg-2.4.0-r1-gnuinstalldirs.patch
new file mode 100644
index 000000000000..bc6771c0c4be
--- /dev/null
+++ b/media-libs/openjpeg/files/openjpeg-2.4.0-r1-gnuinstalldirs.patch
@@ -0,0 +1,435 @@
+From fecc8e9e23f78de94c41bc641b3e5b9e9a84560b Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 11 Apr 2019 13:10:57 +0200
+Subject: [PATCH] Use GNUInstallDirs for standard installation directories
+
+Raises minimum cmake version by a little.
+(Later rebased by sam@gentoo.org for 2.4.0)
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,7 +7,7 @@
+ # For this purpose you can define a CMake var: OPENJPEG_NAMESPACE to whatever you like
+ # e.g.:
+ # set(OPENJPEG_NAMESPACE "GDCMOPENJPEG")
+-cmake_minimum_required(VERSION 2.8.2)
++cmake_minimum_required(VERSION 2.8.5)
+ 
+ if(COMMAND CMAKE_POLICY)
+   cmake_policy(SET CMP0003 NEW)
+@@ -105,58 +105,27 @@ endif()
+ # --------------------------------------------------------------------------
+ # Install directories
+ # Build DOCUMENTATION (not in ALL target and only if Doxygen is found)
++include(GNUInstallDirs)
++
+ option(BUILD_DOC "Build the HTML documentation (with doxygen if available)." OFF)
+ 
+ string(TOLOWER ${PROJECT_NAME} projectname)
+ set(OPENJPEG_INSTALL_SUBDIR "${projectname}-${OPENJPEG_VERSION_MAJOR}.${OPENJPEG_VERSION_MINOR}")
+ 
+-if(NOT OPENJPEG_INSTALL_BIN_DIR)
+-  set(OPENJPEG_INSTALL_BIN_DIR "bin")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_LIB_DIR)
+-  set(OPENJPEG_INSTALL_LIB_DIR "lib")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_SHARE_DIR)
+-  set(OPENJPEG_INSTALL_SHARE_DIR "share")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_DATA_DIR)
+-  set(OPENJPEG_INSTALL_DATA_DIR "${OPENJPEG_INSTALL_SHARE_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_INCLUDE_DIR)
+-  set(OPENJPEG_INSTALL_INCLUDE_DIR "include/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-
+-if(BUILD_DOC)
+-if(NOT OPENJPEG_INSTALL_MAN_DIR)
+-  set(OPENJPEG_INSTALL_MAN_DIR "share/man/")
+-endif()
+-
+-if(NOT OPENJPEG_INSTALL_DOC_DIR)
+-  set(OPENJPEG_INSTALL_DOC_DIR "share/doc/${OPENJPEG_INSTALL_SUBDIR}")
+-endif()
+-endif()
+-
+ if(NOT OPENJPEG_INSTALL_JNI_DIR)
+   if(WIN32)
+-    set(OPENJPEG_INSTALL_JNI_DIR ${OPENJPEG_INSTALL_BIN_DIR})
++    set(OPENJPEG_INSTALL_JNI_DIR ${CMAKE_INSTALL_BINDIR})
+   else()
+-    set(OPENJPEG_INSTALL_JNI_DIR ${OPENJPEG_INSTALL_LIB_DIR})
++    set(OPENJPEG_INSTALL_JNI_DIR ${CMAKE_INSTALL_LIBDIR})
+   endif()
+ endif()
+ 
+ if(NOT OPENJPEG_INSTALL_PACKAGE_DIR)
+-  # We could install *.cmake files in share/ however those files contains
+-  # hardcoded path to libraries on a multi-arch system (fedora/debian) those
+-  # path will be different (lib/i386-linux-gnu vs lib/x86_64-linux-gnu)
+-  set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
++  set(OPENJPEG_INSTALL_PACKAGE_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${OPENJPEG_INSTALL_SUBDIR}")
+ endif()
+ 
+ if (APPLE)
+-	list(APPEND OPENJPEG_LIBRARY_PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/${OPENJPEG_INSTALL_LIB_DIR}")
++	list(APPEND OPENJPEG_LIBRARY_PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}")
+ 	option(OPJ_USE_DSYMUTIL "Call dsymutil on binaries after build." OFF)
+ endif()
+ 
+@@ -342,14 +311,6 @@ install( FILES ${OPENJPEG_BINARY_DIR}/OpenJPEGConfig.cmake
+ )
+ 
+ #-----------------------------------------------------------------------------
+-# install CHANGES and LICENSE
+-if(BUILD_DOC)
+-if(EXISTS ${OPENJPEG_SOURCE_DIR}/CHANGES)
+-  install(FILES CHANGES DESTINATION ${OPENJPEG_INSTALL_DOC_DIR})
+-endif()
+-
+-install(FILES LICENSE DESTINATION ${OPENJPEG_INSTALL_DOC_DIR})
+-endif()
+ 
+ include (cmake/OpenJPEGCPack.cmake)
+ 
+@@ -366,14 +327,14 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp2/libopenjp2.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjp2.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjp2.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+ #
+   if(BUILD_JPWL)
+   # install in lib and not share (see multi-arch note above)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjpwl/libopenjpwl.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjpwl.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjpwl.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ #
+   if(BUILD_JPIP)
+@@ -381,7 +342,7 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjpip/libopenjpip.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjpip.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjpip.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ #
+   if(BUILD_JP3D)
+@@ -389,7 +350,7 @@ if(BUILD_PKGCONFIG_FILES)
+   configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/lib/openjp3d/libopenjp3d.pc.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/libopenjp3d.pc @ONLY)
+   install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/libopenjp3d.pc DESTINATION
+-    ${OPENJPEG_INSTALL_LIB_DIR}/pkgconfig )
++    ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
+   endif()
+ endif()
+ 
+--- a/cmake/OpenJPEGConfig.cmake.in
++++ b/cmake/OpenJPEGConfig.cmake.in
+@@ -27,7 +27,7 @@ if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
+   # This is an install tree
+   include(${SELF_DIR}/OpenJPEGTargets.cmake)
+ 
+-  set(INC_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_INCLUDE_DIR@")
++  set(INC_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@")
+   get_filename_component(OPENJPEG_INCLUDE_DIRS "${INC_DIR}" ABSOLUTE)
+ 
+ else()
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -44,7 +44,7 @@ if(DOXYGEN_FOUND)
+ 
+   # install HTML documentation (install png files too):
+   install(DIRECTORY ${CMAKE_BINARY_DIR}/doc/html
+-    DESTINATION ${OPENJPEG_INSTALL_DOC_DIR}
++    DESTINATION ${CMAKE_INSTALL_DOCDIR}
+     PATTERN ".svn" EXCLUDE
+   )
+ else()
+--- a/src/bin/jp2/CMakeLists.txt
++++ b/src/bin/jp2/CMakeLists.txt
+@@ -67,7 +67,7 @@ foreach(exe opj_decompress opj_compress opj_dump)
+   # Install exe
+   install(TARGETS ${exe}
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+   if(OPJ_USE_DSYMUTIL)
+     add_custom_command(TARGET ${exe} POST_BUILD
+@@ -83,6 +83,6 @@ install(
+   FILES       ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_compress.1
+               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_decompress.1
+               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/opj_dump.1
+-  DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man1)
++  DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+ #
+ endif()
+--- a/src/bin/jp3d/CMakeLists.txt
++++ b/src/bin/jp3d/CMakeLists.txt
+@@ -36,6 +36,6 @@ foreach(exe opj_jp3d_compress opj_jp3d_decompress)
+   # Install exe
+   install(TARGETS ${exe}
+     EXPORT OpenJP3DTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ endforeach()
+--- a/src/bin/jpip/CMakeLists.txt
++++ b/src/bin/jpip/CMakeLists.txt
+@@ -13,7 +13,7 @@ add_executable(opj_jpip_addxml opj_jpip_addxml.c)
+ # Install exe
+ install(TARGETS opj_jpip_addxml
+   EXPORT OpenJPEGTargets
+-  DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++  DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ 
+ if(BUILD_JPIP_SERVER)
+@@ -38,7 +38,7 @@ if(BUILD_JPIP_SERVER)
+   # Install exe
+   install(TARGETS opj_server
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+     )
+ endif()
+ 
+@@ -52,7 +52,7 @@ add_executable(${exe} ${exe}.c)
+   target_link_libraries(${exe} openjpip)
+   install(TARGETS ${exe}
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+     )
+ endforeach()
+ 
+@@ -123,7 +123,7 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
+       )
+ 
+     install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+-      DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++      DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+       )
+   else()
+     # opj_viewer (simple, no xerces)
+@@ -153,7 +153,7 @@ if(Java_Development_FOUND AND Java_JAVAC_EXECUTABLE)
+       )
+ 
+     install(FILES ${LIBRARY_OUTPUT_PATH}/opj_jpip_viewer.jar
+-      DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++      DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+       )
+   endif()
+ else()
+--- a/src/bin/jpwl/CMakeLists.txt
++++ b/src/bin/jpwl/CMakeLists.txt
+@@ -57,6 +57,6 @@ foreach(exe decompress compress)
+   endif()
+ 
+   install(TARGETS ${jpwl_exe}
+-    DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
++    DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
+   )
+ endforeach()
+--- a/src/bin/mj2/CMakeLists.txt
++++ b/src/bin/mj2/CMakeLists.txt
+@@ -43,5 +43,5 @@ foreach(exe
+   endif()
+ 
+   install(TARGETS ${exe}
+-  	DESTINATION ${OPENJPEG_INSTALL_BIN_DIR})
++  	DESTINATION ${CMAKE_INSTALL_BINDIR})
+ endforeach()
+--- a/src/lib/openjp2/CMakeLists.txt
++++ b/src/lib/openjp2/CMakeLists.txt
+@@ -2,7 +2,7 @@ include_regular_expression("^.*$")
+ 
+ #
+ install( FILES  ${CMAKE_CURRENT_BINARY_DIR}/opj_config.h
+- DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR} COMPONENT Headers)
++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR} COMPONENT Headers)
+ 
+ include_directories(
+   ${${OPENJPEG_NAMESPACE}_BINARY_DIR}/src/lib/openjp2 # opj_config.h and opj_config_private.h
+@@ -114,21 +114,21 @@ endif()
+ # Install library
+ install(TARGETS ${INSTALL_LIBS}
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ install(FILES openjpeg.h opj_stdint.h
+-  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR} COMPONENT Headers
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR} COMPONENT Headers
+ )
+ 
+ if(BUILD_DOC)
+ # install man page of the library
+ install(
+   FILES       ${OPENJPEG_SOURCE_DIR}/doc/man/man3/libopenjp2.3
+-  DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man3)
++  DESTINATION ${CMAKE_INSTALL_MANDIR}/man3)
+ endif()
+ 
+ if(BUILD_LUTS_GENERATOR)
+--- a/src/lib/openjp2/libopenjp2.pc.cmake.in
++++ b/src/lib/openjp2/libopenjp2.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=@CMAKE_INSTALL_MANDIR@
++docdir=@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjp2
+ Description: JPEG2000 library (Part 1 and 2)
+--- a/src/lib/openjp3d/CMakeLists.txt
++++ b/src/lib/openjp3d/CMakeLists.txt
+@@ -34,12 +34,12 @@ endif()
+ # Install library
+ install(TARGETS ${OPENJP3D_LIBRARY_NAME}
+   EXPORT OpenJP3DTargets
+-  DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
+   COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ install(FILES openjp3d.h
+-  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}
++  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR}
+   COMPONENT Headers
+ )
+--- a/src/lib/openjp3d/libopenjp3d.pc.cmake.in
++++ b/src/lib/openjp3d/libopenjp3d.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=@CMAKE_INSTALL_MANDIR@
++docdir=@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjp3d
+ Description: JPEG2000 Extensions for three-dimensional data (Part 10)
+--- a/src/lib/openjpip/CMakeLists.txt
++++ b/src/lib/openjpip/CMakeLists.txt
+@@ -74,9 +74,9 @@ endif()
+ # Install library
+ install(TARGETS openjpip
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+   )
+ 
+ if(BUILD_JPIP_SERVER)
+@@ -86,6 +86,6 @@ if(BUILD_JPIP_SERVER)
+     PROPERTIES COMPILE_FLAGS "-DSERVER")
+   install(TARGETS openjpip_server
+     EXPORT OpenJPEGTargets
+-    DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++    DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+     )
+ endif()
+--- a/src/lib/openjpip/libopenjpip.pc.cmake.in
++++ b/src/lib/openjpip/libopenjpip.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=@CMAKE_INSTALL_MANDIR@
++docdir=@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjpip
+ Description: JPEG2000 Interactivity tools, APIs and protocols (Part 9)
+--- a/src/lib/openjpwl/CMakeLists.txt
++++ b/src/lib/openjpwl/CMakeLists.txt
+@@ -58,7 +58,7 @@ endif()
+ # Install library
+ install(TARGETS openjpwl
+   EXPORT OpenJPEGTargets
+-  RUNTIME DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
+-  LIBRARY DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+-  ARCHIVE DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
++  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Applications
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
+ )
+--- a/src/lib/openjpwl/libopenjpwl.pc.cmake.in
++++ b/src/lib/openjpwl/libopenjpwl.pc.cmake.in
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-bindir=${prefix}/@OPENJPEG_INSTALL_BIN_DIR@
+-mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
+-docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
+-libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
+-includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
++bindir=${prefix}/@CMAKE_INSTALL_BINDIR@
++mandir=@CMAKE_INSTALL_MANDIR@
++docdir=@CMAKE_INSTALL_DOCDIR@
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@
+ 
+ Name: openjpwl
+ Description: JPEG2000 Wireless library (Part 11)
+--- a/src/lib/openmj2/CMakeLists.txt
++++ b/src/lib/openmj2/CMakeLists.txt
+@@ -53,12 +53,12 @@ endif()
+ # Install library
+ install(TARGETS ${OPENMJ2_LIBRARY_NAME}
+   EXPORT OpenMJ2Targets
+-  DESTINATION ${OPENJPEG_INSTALL_LIB_DIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
+   COMPONENT Libraries
+ )
+ 
+ # Install includes files
+ #install(FILES mj2.h
+-#  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}/${subdir}
++#  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENJPEG_INSTALL_SUBDIR}
+ #  COMPONENT Headers
+ #)
+--- a/wrapping/java/openjp2/CMakeLists.txt
++++ b/wrapping/java/openjp2/CMakeLists.txt
+@@ -69,5 +69,5 @@ add_custom_target(OpenJPEGJavaJar ALL
+ )
+ 
+ install(FILES ${LIBRARY_OUTPUT_PATH}/openjpeg.jar
+-  DESTINATION ${OPENJPEG_INSTALL_SHARE_DIR} COMPONENT JavaModule
++  DESTINATION ${CMAKE_INSTALL_DATAROOTDIR} COMPONENT JavaModule
+ )

diff --git a/media-libs/openjpeg/openjpeg-2.4.0-r1.ebuild b/media-libs/openjpeg/openjpeg-2.4.0-r1.ebuild
new file mode 100644
index 000000000000..554c61b5304b
--- /dev/null
+++ b/media-libs/openjpeg/openjpeg-2.4.0-r1.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+inherit cmake-multilib flag-o-matic
+
+# Make sure that test data are not newer than release;
+# otherwise we will see "Found-But-No-Test" test failures!
+MY_TESTDATA_COMMIT="cd724fb1f93e6af41ebc68c4904f4bf2a4cd1e60"
+
+DESCRIPTION="Open-source JPEG 2000 library"
+HOMEPAGE="https://www.openjpeg.org"
+SRC_URI="https://github.com/uclouvain/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+	test? ( https://github.com/uclouvain/openjpeg-data/archive/${MY_TESTDATA_COMMIT}.tar.gz -> ${PN}-data_20201130.tar.gz )"
+
+LICENSE="BSD-2"
+SLOT="2/7" # based on SONAME
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc static-libs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	media-libs/lcms:2
+	media-libs/libpng:0=
+	media-libs/tiff:0
+	sys-libs/zlib:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+	doc? ( app-doc/doxygen )"
+
+DOCS=( AUTHORS.md CHANGELOG.md NEWS.md README.md THANKS.md )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-2.4.0-r1-gnuinstalldirs.patch" # bug 667150
+)
+
+src_prepare() {
+	if use test; then
+		mv "${WORKDIR}"/openjpeg-data-${MY_TESTDATA_COMMIT} "${WORKDIR}"/data ||
+			die "Failed to rename test data"
+	fi
+
+	cmake_src_prepare
+}
+
+multilib_src_configure() {
+	local mycmakeargs=(
+		-DBUILD_PKGCONFIG_FILES=ON # always build pkgconfig files, bug #539834
+		-DBUILD_TESTING="$(multilib_native_usex test)"
+		-DBUILD_DOC=$(multilib_native_usex doc ON OFF)
+		-DBUILD_CODEC=$(multilib_is_native_abi && echo ON || echo OFF)
+		-DBUILD_STATIC_LIBS=$(usex static-libs)
+	)
+
+	# Cheat a little bit and force disabling fixed point magic
+	# The test suite is extremely fragile to small changes
+	# bug 715130, bug 715422
+	# https://github.com/uclouvain/openjpeg/issues/1017
+	multilib_is_native_abi && use test && append-cflags "-ffp-contract=off"
+
+	cmake_src_configure
+}
+
+multilib_src_test() {
+	if ! multilib_is_native_abi ; then
+		elog "Cannot run tests for non-multilib abi."
+		return 0
+	fi
+
+	local myctestargs=
+
+	pushd "${BUILD_DIR}" > /dev/null || die
+	[[ -e CTestTestfile.cmake ]] || die "Test suite not available! Check source!"
+
+	[[ -n ${TEST_VERBOSE} ]] && myctestargs+=( --extra-verbose --output-on-failure )
+
+	echo ctest "${myctestargs[@]}" "$@"
+	if ctest "${myctestargs[@]}" "$@" ; then
+		einfo "Tests succeeded."
+		popd > /dev/null || die
+		return 0
+	else
+		local FAILEDTEST_LOG="${BUILD_DIR}/Testing/Temporary/LastTestsFailed.log"
+
+		if [[ ! -f "${FAILEDTEST_LOG}" ]] ; then
+			# Should never happen
+			die "Cannot analyze test failures: LastTestsFailed.log is missing!"
+		fi
+
+		echo ""
+		einfo "Note: Upstream is maintaining a list of known test failures."
+		einfo "We will now compare our test results against this list and sort out any known failure."
+
+		local KNOWN_FAILURES_LIST="${T}/known_failures_compiled.txt"
+		cat "${S}/tools/travis-ci/knownfailures-all.txt" > "${KNOWN_FAILURES_LIST}" || die
+
+		local ARCH_SPECIFIC_FAILURES=
+		if use amd64 ; then
+			ARCH_SPECIFIC_FAILURES="$(find "${S}/tools/travis-ci/" -name 'knownfailures-*x86_64*.txt' -print0 | sort -z | tail -z -n 1 | tr -d '\0')"
+		elif use x86 || use arm || use arm64; then
+			ARCH_SPECIFIC_FAILURES="$(find "${S}/tools/travis-ci/" -name 'knownfailures-*i386*.txt' -print0 | sort -z | tail -z -n 1 | tr -d '\0')"
+		fi
+
+		if [[ -f "${ARCH_SPECIFIC_FAILURES}" ]] ; then
+			einfo "Adding architecture specific failures (${ARCH_SPECIFIC_FAILURES}) to known failures list ..."
+			cat "${ARCH_SPECIFIC_FAILURES}" >> "${KNOWN_FAILURES_LIST}" || die
+		fi
+
+		# Logic copied from $S/tools/travis-ci/run.sh
+		local FAILEDTEST=
+		local FAILURES_LOG="${BUILD_DIR}/Testing/Temporary/failures.txt"
+		local HAS_UNKNOWN_TEST_FAILURES=0
+
+		echo ""
+
+		awk -F: '{ print $2 }' "${FAILEDTEST_LOG}" > "${FAILURES_LOG}"
+		while read FAILEDTEST; do
+			# is this failure known?
+			if grep -x "${FAILEDTEST}" "${KNOWN_FAILURES_LIST}" > /dev/null; then
+				ewarn "Test '${FAILEDTEST}' is known to fail, ignoring ..."
+				continue
+			fi
+
+			eerror "New/unknown test failure found: '${FAILEDTEST}'"
+			HAS_UNKNOWN_TEST_FAILURES=1
+		done < "${FAILURES_LOG}"
+
+		if [[ ${HAS_UNKNOWN_TEST_FAILURES} -ne 0 ]]; then
+			die "Test suite failed. New/unknown test failure(s) found!"
+		else
+			echo ""
+			einfo "Test suite passed. No new/unknown test failure(s) found!"
+		fi
+
+		return 0
+	fi
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/openjpeg/files/, media-libs/openjpeg/
@ 2022-05-23 20:44 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2022-05-23 20:44 UTC (permalink / raw
  To: gentoo-commits

commit:     de20312c7cc3c05ec8183595808198048699fed2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon May 23 20:43:45 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon May 23 20:44:08 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de20312c

media-libs/openjpeg: fix GNUInstallDirs patch

- Fix install dir for CMake*Config (needs to be in a subdir)
- Fix include path within those

Closes: https://bugs.gentoo.org/847013
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/openjpeg-2.5.0-gnuinstalldirs.patch      | 33 +++++++++++++++++-----
 ...eg-2.5.0-r1.ebuild => openjpeg-2.5.0-r2.ebuild} |  0
 2 files changed, 26 insertions(+), 7 deletions(-)

diff --git a/media-libs/openjpeg/files/openjpeg-2.5.0-gnuinstalldirs.patch b/media-libs/openjpeg/files/openjpeg-2.5.0-gnuinstalldirs.patch
index f47f062b8939..9e0eebbfdfb7 100644
--- a/media-libs/openjpeg/files/openjpeg-2.5.0-gnuinstalldirs.patch
+++ b/media-libs/openjpeg/files/openjpeg-2.5.0-gnuinstalldirs.patch
@@ -75,7 +75,7 @@ Raises minimum cmake version by a little.
 -  # hardcoded path to libraries on a multi-arch system (fedora/debian) those
 -  # path will be different (lib/i386-linux-gnu vs lib/x86_64-linux-gnu)
 -  set(OPENJPEG_INSTALL_PACKAGE_DIR "${OPENJPEG_INSTALL_LIB_DIR}/${OPENJPEG_INSTALL_SUBDIR}")
-+  set(OPENJPEG_INSTALL_PACKAGE_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_INSTALL_SUBDIR}")
++  set(OPENJPEG_INSTALL_PACKAGE_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${OPENJPEG_INSTALL_SUBDIR}")
  endif()
  
  if (APPLE)
@@ -120,19 +120,38 @@ Raises minimum cmake version by a little.
    endif()
  endif()
  
+@@ -385,3 +346,14 @@ endif()
+ 
+ # build our version of astyle
+ SET (WITH_ASTYLE FALSE CACHE BOOL "If you plan to contribute you should reindent with scripts/prepare-commit.sh (using 'our' astyle)")
++
++message(STATUS "<<< Gentoo configuration >>>
++Build type      ${CMAKE_BUILD_TYPE}
++Install path    ${CMAKE_INSTALL_PREFIX}
++Compiler flags:
++C               ${CMAKE_C_FLAGS}
++C++             ${CMAKE_CXX_FLAGS}
++Linker flags:
++Executable      ${CMAKE_EXE_LINKER_FLAGS}
++Module          ${CMAKE_MODULE_LINKER_FLAGS}
++Shared          ${CMAKE_SHARED_LINKER_FLAGS}\n")
 --- a/cmake/OpenJPEGConfig.cmake.in
 +++ b/cmake/OpenJPEGConfig.cmake.in
-@@ -28,8 +28,8 @@ if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
+@@ -27,12 +27,8 @@ if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
+   # This is an install tree
    include(${SELF_DIR}/OpenJPEGTargets.cmake)
  
-   # We find a relative path from the PKG directory to header files.
+-  # We find a relative path from the PKG directory to header files.
 -  set(PKG_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_PACKAGE_DIR@")
 -  set(INC_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_INCLUDE_DIR@")
-+  set(PKG_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@/@OPENJPEG_INSTALL_PACKAGE_DIR@")
-+  set(INC_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@/@OPENJPEG_INSTALL_INCLUDE_DIR@")
-   file(RELATIVE_PATH PKG_TO_INC_RPATH "${PKG_DIR}" "${INC_DIR}")
+-  file(RELATIVE_PATH PKG_TO_INC_RPATH "${PKG_DIR}" "${INC_DIR}")
+-
+-  get_filename_component(OPENJPEG_INCLUDE_DIRS "${SELF_DIR}/${PKG_TO_INC_RPATH}" REALPATH)
++  set(INC_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@/@OPENJPEG_INSTALL_SUBDIR@")
++  get_filename_component(OPENJPEG_INCLUDE_DIRS "${INC_DIR}" ABSOLUTE)
  
-   get_filename_component(OPENJPEG_INCLUDE_DIRS "${SELF_DIR}/${PKG_TO_INC_RPATH}" REALPATH)
+ else()
+   if(EXISTS ${SELF_DIR}/OpenJPEGExports.cmake)
 --- a/doc/CMakeLists.txt
 +++ b/doc/CMakeLists.txt
 @@ -44,7 +44,7 @@ if(DOXYGEN_FOUND)

diff --git a/media-libs/openjpeg/openjpeg-2.5.0-r1.ebuild b/media-libs/openjpeg/openjpeg-2.5.0-r2.ebuild
similarity index 100%
rename from media-libs/openjpeg/openjpeg-2.5.0-r1.ebuild
rename to media-libs/openjpeg/openjpeg-2.5.0-r2.ebuild


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-05-23 20:44 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-25 22:42 [gentoo-commits] repo/gentoo:master commit in: media-libs/openjpeg/files/, media-libs/openjpeg/ Thomas Deutschmann
  -- strict thread matches above, loose matches on Subject: below --
2022-05-23 20:44 Sam James
2022-02-03  2:21 Sam James
2020-12-29  2:59 Sam James
2019-04-11 11:40 Lars Wendler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox