diff options
author | B. Watson <yalhcru@gmail.com> | 2022-02-23 11:11:23 -0500 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2022-02-25 22:57:59 +0700 |
commit | 3e3fb884ff1425a68261cef3b390b3dc858861b9 (patch) | |
tree | 041868e2bb20250d5b9492529942ff6d9e9b45bd /multimedia/ctl | |
parent | efdf30be0d410f6fdc429239315786f4f20449c4 (diff) |
multimedia/ctl: Fix 15.0 build.
Signed-off-by: B. Watson <yalhcru@gmail.com>
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'multimedia/ctl')
-rw-r--r-- | multimedia/ctl/README | 8 | ||||
-rw-r--r-- | multimedia/ctl/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch | 399 | ||||
-rw-r--r-- | multimedia/ctl/ctl.SlackBuild | 42 | ||||
-rw-r--r-- | multimedia/ctl/ilmbase-2.3.0-compatibility.patch | 11 |
4 files changed, 432 insertions, 28 deletions
diff --git a/multimedia/ctl/README b/multimedia/ctl/README index ed1def51854b2..ad67ec3ff4262 100644 --- a/multimedia/ctl/README +++ b/multimedia/ctl/README @@ -6,10 +6,10 @@ different representations or color spaces. The Color Transformation Language, or CTL, is a small programming language that was designed to serve as a building block for digital color management systems. -CTL allows users to describe color transforms in a concise and unambiguous -way by expressing them as programs. In order to apply a given -transform to an image, the color management system instructs a CTL -interpreter to load and run the CTL program that describes the +CTL allows users to describe color transforms in a concise and +unambiguous way by expressing them as programs. In order to apply a +given transform to an image, the color management system instructs +a CTL interpreter to load and run the CTL program that describes the transform. The original and the transformed image constitute the CTL program's input and output. diff --git a/multimedia/ctl/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch b/multimedia/ctl/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch new file mode 100644 index 0000000000000..e4fadf1aa05c3 --- /dev/null +++ b/multimedia/ctl/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch @@ -0,0 +1,399 @@ +From db1cccd9cee830f8822521f2c401ea74ad161360 Mon Sep 17 00:00:00 2001 +From: Jonathan Scruggs <j.scruggs@gmail.com> +Date: Mon, 25 Sep 2017 17:41:26 +0100 +Subject: [PATCH] CTL: Use GNUInstallDirs and fix PkgConfig files + +* GNUInstallDirs are variables set by each distro and OS, so we + don't need to define them manually. They can also be set manually + during the configure phase. The code to define custom directories can + be removed and replaced with the equivalent GNUInstallDirs variable. +* Pkg-Config is used to find IlmBase and OpenEXR, but isn't fully + utilized everywhere. This makes Pkg-Config a hard dependency so that + the libraries and directories can be found easily. This will use the + correct libraries no matter how they are named, so this is compatible + with both pre-2.0 and post 2.0 naming schemes. +* The Pkg-Config files had several errors that are now fixed. + +Upstream PR: https://github.com/ampas/CTL/pull/67 +--- + CMakeLists.txt | 36 ++++++++--------------------- + OpenEXR_CTL/CMakeLists.txt | 2 +- + OpenEXR_CTL/CtlModules/CMakeLists.txt | 2 +- + OpenEXR_CTL/exr_ctl_exr/CMakeLists.txt | 4 ++-- + OpenEXR_CTL/exrdpx/CMakeLists.txt | 4 ++-- + config/CTL.pc.in | 8 +++---- + config/OpenEXR_CTL.pc.in | 15 ++++++------- + configure.cmake | 41 ++++++++++++++++------------------ + ctlrender/CMakeLists.txt | 20 ++++++++--------- + doc/CMakeLists.txt | 2 +- + lib/IlmCtl/CMakeLists.txt | 4 ++-- + lib/IlmCtlMath/CMakeLists.txt | 4 ++-- + lib/IlmCtlSimd/CMakeLists.txt | 6 ++--- + lib/IlmImfCtl/CMakeLists.txt | 6 ++--- + lib/dpx/CMakeLists.txt | 1 + + 15 files changed, 66 insertions(+), 89 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 01f622c..35e9a48 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,22 +1,14 @@ + cmake_minimum_required(VERSION 2.8) + project( CTL ) + ++INCLUDE ( GNUInstallDirs ) ++ + set( CTL_MAJOR_VERSION 1 ) + set( CTL_MINOR_VERSION 5 ) +-set( CTL_PATCH_VERSION 0 ) ++set( CTL_PATCH_VERSION 2 ) + set( CTL_VERSION ${CTL_MAJOR_VERSION}.${CTL_MINOR_VERSION}.${CTL_PATCH_VERSION} ) + +-## Make install directories overrideable +-set( INSTALL_LIB_DIR lib CACHE PATH "Install directory for libraries" ) +-set( INSTALL_BIN_DIR bin CACHE PATH "Install directory for executable binaries" ) +-set( INSTALL_INCLUDE_DIR include CACHE PATH "Install directory for public header files" ) +-set( INSTALL_DOC_DIR doc CACHE PATH "Install directory for documentation" ) +-if( WIN32 AND NOT CYGWIN ) +- set(DEF_INSTALL_CMAKE_DIR CMake) +-else() +- set(DEF_INSTALL_CMAKE_DIR lib/CMake/CTL) +-endif() +-set(INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Install directory for project CMake files" ) ++set(INSTALL_CMAKE_DIR ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/CTL CACHE PATH "Install directory for project CMake files" ) + + # use, i.e. don't skip the full RPATH for the build tree + SET(CMAKE_SKIP_BUILD_RPATH FALSE) +@@ -28,20 +20,11 @@ SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) + # which point to directories outside the build tree to the install RPATH + SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + # the RPATH to be used when installing, but only if it's not a system directory +-LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir) ++LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_FULL_LIBDIR}" isSystemDir) + IF("${isSystemDir}" STREQUAL "-1") +- SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") ++ SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}") + ENDIF("${isSystemDir}" STREQUAL "-1") + +- +-## convert install paths to absolute +-foreach( p LIB BIN INCLUDE CMAKE DOC) +- set( var INSTALL_${p}_DIR ) +- if( NOT IS_ABSOLUTE "${${var}}" ) +- set( ${var} "${CMAKE_INSTALL_PREFIX}/${${var}}" ) +- endif() +-endforeach() +- + option(ENABLE_SHARED "Enable Shared Libraries" ON) + + if ( ENABLE_SHARED ) +@@ -70,20 +53,19 @@ export( TARGETS IlmCtl IlmCtlMath IlmCtlSimd FILE "${PROJECT_BINARY_DIR}/CTLLibr + export(PACKAGE CTL) + + # Create a CTLBuildTreeSettings.cmake file for the use from the build tree +-file(RELATIVE_PATH CONF_REL_INCLUDE_DIR "${INSTALL_CMAKE_DIR}" "${INSTALL_INCLUDE_DIR}") ++file(RELATIVE_PATH CONF_REL_INCLUDE_DIR "${INSTALL_CMAKE_DIR}" "${CMAKE_INSTALL_FULL_INCLUDEDIR}") + configure_file(config/CTLBuildTreeSettings.cmake.in "${PROJECT_BINARY_DIR}/CTLBuildTreeSettings.cmake" @ONLY) + configure_file(config/CTLConfig.cmake.in "${PROJECT_BINARY_DIR}/CTLConfig.cmake" @ONLY) + configure_file(config/CTLConfigVersion.cmake.in "${PROJECT_BINARY_DIR}/CTLConfigVersion.cmake" @ONLY) + + if ( PKG_CONFIG_FOUND ) + configure_file(config/CTL.pc.in "${PROJECT_BINARY_DIR}/CTL.pc" @ONLY) +-install( FILES "${PROJECT_BINARY_DIR}/CTL.pc" DESTINATION lib/pkgconfig COMPONENT dev ) ++install( FILES "${PROJECT_BINARY_DIR}/CTL.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig COMPONENT dev ) + endif() + + install( FILES + "${PROJECT_BINARY_DIR}/CTLConfig.cmake" + "${PROJECT_BINARY_DIR}/CTLConfigVersion.cmake" ++ "${PROJECT_BINARY_DIR}/CTLLibraryDepends.cmake" + DESTINATION "${INSTALL_CMAKE_DIR}" COMPONENT dev) +-install(FILES "${PROJECT_BINARY_DIR}/CTLLibraryDepends.cmake" DESTINATION +- "${INSTALL_CMAKE_DIR}" COMPONENT dev) + +diff --git a/OpenEXR_CTL/CMakeLists.txt b/OpenEXR_CTL/CMakeLists.txt +index c1ca53e..3f19dd4 100644 +--- a/OpenEXR_CTL/CMakeLists.txt ++++ b/OpenEXR_CTL/CMakeLists.txt +@@ -13,7 +13,7 @@ add_custom_target( OpenEXR_CTL DEPENDS CtlModules exrdpx exr_ctl_exr ) + + if ( PKG_CONFIG_FOUND ) + configure_file(../config/OpenEXR_CTL.pc.in "${PROJECT_BINARY_DIR}/OpenEXR_CTL.pc" @ONLY) +-install( FILES "${PROJECT_BINARY_DIR}/OpenEXR_CTL.pc" DESTINATION lib/pkgconfig COMPONENT dev ) ++install( FILES "${PROJECT_BINARY_DIR}/OpenEXR_CTL.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig COMPONENT dev ) + endif() + + # TODO CMake config +diff --git a/OpenEXR_CTL/CtlModules/CMakeLists.txt b/OpenEXR_CTL/CtlModules/CMakeLists.txt +index c63c22e..9c9e5b8 100644 +--- a/OpenEXR_CTL/CtlModules/CMakeLists.txt ++++ b/OpenEXR_CTL/CtlModules/CMakeLists.txt +@@ -2,6 +2,6 @@ install( + FILES + utilities.ctl + DESTINATION +- ${INSTALL_LIB_DIR}/CTL ++ ${CMAKE_INSTALL_LIBDIR}/CTL + ) + +diff --git a/OpenEXR_CTL/exr_ctl_exr/CMakeLists.txt b/OpenEXR_CTL/exr_ctl_exr/CMakeLists.txt +index e396ec5..1f0eea0 100644 +--- a/OpenEXR_CTL/exr_ctl_exr/CMakeLists.txt ++++ b/OpenEXR_CTL/exr_ctl_exr/CMakeLists.txt +@@ -20,6 +20,6 @@ target_link_libraries( exr_ctl_exr IlmCtlSimd IlmCtlMath IlmCtl IlmImfCtl ) + target_link_libraries( exr_ctl_exr ${IlmBase_LIBRARIES} ${IlmBase_LDFLAGS_OTHER} ) + target_link_libraries( exr_ctl_exr ${OpenEXR_LIBRARIES} ${OpenEXR_LDFLAGS_OTHER} ) + +-install( TARGETS exr_ctl_exr DESTINATION ${INSTALL_BIN_DIR} ) ++install( TARGETS exr_ctl_exr DESTINATION ${CMAKE_INSTALL_BINDIR} ) + +-install( FILES change_saturation.ctl DESTINATION ${INSTALL_LIB_DIR}/CTL ) ++install( FILES change_saturation.ctl DESTINATION ${CMAKE_INSTALL_LIBDIR}/CTL ) +diff --git a/OpenEXR_CTL/exrdpx/CMakeLists.txt b/OpenEXR_CTL/exrdpx/CMakeLists.txt +index 50bd116..d9eadd8 100644 +--- a/OpenEXR_CTL/exrdpx/CMakeLists.txt ++++ b/OpenEXR_CTL/exrdpx/CMakeLists.txt +@@ -20,8 +20,8 @@ target_link_libraries( exrdpx IlmCtlSimd IlmCtlMath IlmCtl IlmImfCtl ) + target_link_libraries( exrdpx ${IlmBase_LIBRARIES} ${IlmBase_LDFLAGS_OTHER} ) + target_link_libraries( exrdpx ${OpenEXR_LIBRARIES} ${OpenEXR_LDFLAGS_OTHER} ) + +-install( TARGETS exrdpx DESTINATION ${INSTALL_BIN_DIR} ) ++install( TARGETS exrdpx DESTINATION ${CMAKE_INSTALL_BINDIR} ) + +-install( FILES transform_DPX_EXR.ctl transform_EXR_DPX.ctl DESTINATION ${INSTALL_LIB_DIR}/CTL ) ++install( FILES transform_DPX_EXR.ctl transform_EXR_DPX.ctl DESTINATION ${CMAKE_INSTALL_LIBDIR}/CTL ) + + +diff --git a/config/CTL.pc.in b/config/CTL.pc.in +index 6d6e732..9b212a4 100644 +--- a/config/CTL.pc.in ++++ b/config/CTL.pc.in +@@ -1,8 +1,6 @@ +-prefix=@CMAKE_INSTALL_PREFIX@ +-exec_prefix=@INSTALL_BIN_DIR@ +-libdir=@INSTALL_LIB_DIR@ +-includedir=@INSTALL_INCLUDE_DIR@ +-CTL_includedir=@INSTALL_INCLUDE_DIR@/CTL ++libdir=@CMAKE_INSTALL_FULL_LIBDIR@ ++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ ++CTL_includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@/CTL + + Name: CTL + Description: CTL interpreter library +diff --git a/config/OpenEXR_CTL.pc.in b/config/OpenEXR_CTL.pc.in +index 4cef5c6..39a1a3f 100644 +--- a/config/OpenEXR_CTL.pc.in ++++ b/config/OpenEXR_CTL.pc.in +@@ -1,11 +1,10 @@ +-prefix=@prefix@ +-exec_prefix=@exec_prefix@ +-libdir=@libdir@ +-includedir=@includedir@ +-OpenEXR_includedir=@includedir@/OpenEXR ++libdir=@CMAKE_INSTALL_FULL_LIBDIR@ ++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ ++OpenEXR_includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@/OpenEXR + + Name: OpenEXR_CTL + Description: Simplified OpenEXR interface to CTL +-Version: @OPENEXR_CTL_VERSION@ +-Libs: -L${libdir} -lIlmImfCtl @OPENEXR_LDFLAGS@ @CTL_LDFLAGS@ +-Cflags: @CTL_CXXFLAGS_PC@ @OPENEXR_CXXFLAGS@ -I${OpenEXR_includedir} ++Version: @CTL_VERSION@ ++Libs: -L${libdir} -lIlmImfCtl ++Cflags: -I${OpenEXR_includedir} ++Requires: CTL,OpenEXR +diff --git a/configure.cmake b/configure.cmake +index 1817071..eb7e14e 100644 +--- a/configure.cmake ++++ b/configure.cmake +@@ -1,10 +1,7 @@ +-# Until we get some of these modules into the upstream packages, put them here +-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/") +-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_INSTALL_PREFIX}/share/CMake") ++# Make Pkg-Config required. ++find_package( PkgConfig ) + +-find_package( PkgConfig QUIET ) +- +-find_package( IlmBase QUIET ) ++PKG_CHECK_MODULES ( IlmBase REQUIRED IlmBase ) + if(IlmBase_FOUND) + message( STATUS "found IlmBase, version ${IlmBase_VERSION}" ) + ### +@@ -13,11 +10,11 @@ if(IlmBase_FOUND) + ### + include_directories( ${IlmBase_INCLUDE_DIRS} ) + link_directories( ${IlmBase_LIBRARY_DIRS} ) +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${IlmBase_CFLAGS}" ) +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${IlmBase_CFLAGS}" ) +- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${IlmBase_LDFLAGS}" ) +- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${IlmBase_LDFLAGS}" ) +- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${IlmBase_LDFLAGS}" ) ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${IlmBase_CFLAGS_OTHER}" ) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${IlmBase_CFLAGS_OTHER}" ) ++ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${IlmBase_LDFLAGS_OTHER}" ) ++ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${IlmBase_LDFLAGS_OTHER}" ) ++ set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${IlmBase_LDFLAGS_OTHER}" ) + else() + message( SEND_ERROR "IlmBase not found, please set the include and library paths manually" ) + endif() +@@ -39,20 +36,20 @@ else() + endif() + endif() + +-find_package( OpenEXR QUIET ) ++PKG_CHECK_MODULES ( OpenEXR REQUIRED OpenEXR ) + if (OpenEXR_FOUND) + message( STATUS "Found OpenEXR, version ${OpenEXR_VERSION}" ) + else() + message( WARNING "Unable to find OpenEXR libraries, disabling" ) + endif() + +-find_package( AcesContainer ) +-if (AcesContainer_FOUND) +- message( STATUS "Found AcesContainer, version ${AcesContainer_VERSION}" ) +-else() +- if ( PKG_CONFIG_FOUND ) +- pkg_check_modules( AcesContainer AcesContainer ) +- else() +- message( WARNING "Unable to find AcesContainer libraries, disabling" ) +- endif() +-endif() ++find_package( AcesContainer ) ++ if (AcesContainer_FOUND) ++ message( STATUS "Found AcesContainer, version ${AcesContainer_VERSION}" ) ++ else() ++ if ( PKG_CONFIG_FOUND ) ++ pkg_check_modules( AcesContainer AcesContainer ) ++ else() ++ message( WARNING "Unable to find AcesContainer libraries, disabling" ) ++ endif() ++ endif() +diff --git a/ctlrender/CMakeLists.txt b/ctlrender/CMakeLists.txt +index 9fced14..d97093d 100644 +--- a/ctlrender/CMakeLists.txt ++++ b/ctlrender/CMakeLists.txt +@@ -11,12 +11,12 @@ include_directories( ${OpenEXR_INCLUDE_DIRS} ) + link_directories( ${OpenEXR_LIBRARY_DIRS} ) + endif() + +-if ( AcesContainer_FOUND ) +-add_definitions( -DHAVE_ACESFILE=1 ) +-include_directories( ${AcesContainer_INCLUDE_DIRS} ) +-link_directories( ${AcesContainer_LIBRARY_DIRS} ) +-endif() +- ++if ( AcesContainer_FOUND ) ++add_definitions( -DHAVE_ACESFILE=1 ) ++include_directories( ${AcesContainer_INCLUDE_DIRS} ) ++link_directories( ${AcesContainer_LIBRARY_DIRS} ) ++endif() ++ + include_directories( "${CMAKE_CURRENT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/lib/IlmCtl" "${PROJECT_SOURCE_DIR}/lib/IlmCtlMath" "${PROJECT_SOURCE_DIR}/lib/IlmCtlSimd" "${PROJECT_SOURCE_DIR}/lib/dpx" ) + + add_executable( ctlrender +@@ -41,9 +41,9 @@ if (OpenEXR_FOUND) + target_link_libraries( ctlrender ${OpenEXR_LIBRARIES} ) + target_link_libraries( ctlrender ${OpenEXR_LDFLAGS_OTHER} ) + endif() +-if (AcesContainer_FOUND) +-target_link_libraries( ctlrender ${AcesContainer_LIBRARIES} ) +-target_link_libraries( ctlrender ${AcesContainer_LDFLAGS_OTHER} ) ++if (AcesContainer_FOUND) ++target_link_libraries( ctlrender ${AcesContainer_LIBRARIES} ) ++target_link_libraries( ctlrender ${AcesContainer_LDFLAGS_OTHER} ) + endif() + +-install( TARGETS ctlrender DESTINATION bin ) ++install( TARGETS ctlrender DESTINATION ${CMAKE_INSTALL_BINDIR} ) +diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt +index 0b123d0..9776205 100644 +--- a/doc/CMakeLists.txt ++++ b/doc/CMakeLists.txt +@@ -1 +1 @@ +-install( FILES CtlManual.pdf CtlManual.doc DESTINATION doc/CTL ) ++install( FILES CtlManual.pdf CtlManual.doc DESTINATION ${CMAKE_INSTALL_DOCDIR} ) +diff --git a/lib/IlmCtl/CMakeLists.txt b/lib/IlmCtl/CMakeLists.txt +index 3672a43..ef301bd 100644 +--- a/lib/IlmCtl/CMakeLists.txt ++++ b/lib/IlmCtl/CMakeLists.txt +@@ -22,7 +22,7 @@ add_library( IlmCtl ${DO_SHARED} + ) + + target_link_libraries( IlmCtl ${IlmBase_LDFLAGS_OTHER} ) +-target_link_libraries( IlmCtl Iex IlmThread Half ) ++target_link_libraries( IlmCtl ${IlmBase_LIBRARIES} ) + + set_target_properties( IlmCtl PROPERTIES + VERSION ${CTL_VERSION} +@@ -50,4 +50,4 @@ install( FILES + CtlVersion.h + DESTINATION include/CTL ) + +-install( TARGETS IlmCtl DESTINATION lib ) ++install( TARGETS IlmCtl DESTINATION ${CMAKE_INSTALL_LIBDIR} ) +diff --git a/lib/IlmCtlMath/CMakeLists.txt b/lib/IlmCtlMath/CMakeLists.txt +index 96738cf..6997c74 100644 +--- a/lib/IlmCtlMath/CMakeLists.txt ++++ b/lib/IlmCtlMath/CMakeLists.txt +@@ -18,8 +18,8 @@ install( FILES + CtlLookupTable.h + CtlRbfInterpolator.h + CtlSparseMatrix.h +- DESTINATION include/CTL ) ++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/CTL ) + +-install( TARGETS IlmCtlMath DESTINATION lib ) ++install( TARGETS IlmCtlMath DESTINATION ${CMAKE_INSTALL_LIBDIR} ) + + # TODO Add Imath and Iex libadd dependency and version info +diff --git a/lib/IlmCtlSimd/CMakeLists.txt b/lib/IlmCtlSimd/CMakeLists.txt +index 2ba792a..5eaf87d 100644 +--- a/lib/IlmCtlSimd/CMakeLists.txt ++++ b/lib/IlmCtlSimd/CMakeLists.txt +@@ -1,7 +1,7 @@ + include_directories( "${CMAKE_CURRENT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/lib/IlmCtl" "${PROJECT_SOURCE_DIR}/lib/IlmCtlMath" ) + + add_executable( halfExpLogTable halfExpLogTable.cpp ) +-target_link_libraries( halfExpLogTable Half ) ++target_link_libraries( halfExpLogTable ${IlmBase_LIBRARIES} ) + + add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/halfExpLogTable.h" + COMMAND halfExpLogTable "${CMAKE_CURRENT_BINARY_DIR}/halfExpLogTable.h" "${CMAKE_CURRENT_BINARY_DIR}/halfExpLog.h" +@@ -40,6 +40,6 @@ set_target_properties( IlmCtlSimd PROPERTIES + SOVERSION ${CTL_VERSION} + ) + +-install( FILES CtlSimdInterpreter.h DESTINATION include/CTL ) ++install( FILES CtlSimdInterpreter.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/CTL ) + +-install( TARGETS IlmCtlSimd DESTINATION lib ) ++install( TARGETS IlmCtlSimd DESTINATION ${CMAKE_INSTALL_LIBDIR} ) +diff --git a/lib/IlmImfCtl/CMakeLists.txt b/lib/IlmImfCtl/CMakeLists.txt +index 47563df..784e27f 100644 +--- a/lib/IlmImfCtl/CMakeLists.txt ++++ b/lib/IlmImfCtl/CMakeLists.txt +@@ -7,10 +7,10 @@ add_library( IlmImfCtl ${DO_SHARED} + ImfCtlCopyFunctionArg.cpp + ) + +-target_link_libraries( IlmImfCtl IlmCtl IlmImf Iex IlmThread Half ) ++target_link_libraries( IlmImfCtl IlmCtl ${OpenEXR_LIBRARIES} ${IlmBase_LIBRARIES} ) + +-install( FILES ImfCtlApplyTransforms.h DESTINATION include/OpenEXR ) ++install( FILES ImfCtlApplyTransforms.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/OpenEXR ) + + export( TARGETS IlmImfCtl IlmCtl FILE "${PROJECT_BINARY_DIR}/CTLLibraryDepends.cmake" ) + +-install( TARGETS IlmImfCtl DESTINATION lib ) ++install( TARGETS IlmImfCtl DESTINATION ${CMAKE_INSTALL_LIBDIR} ) +diff --git a/lib/dpx/CMakeLists.txt b/lib/dpx/CMakeLists.txt +index c8be26e..918890e 100644 +--- a/lib/dpx/CMakeLists.txt ++++ b/lib/dpx/CMakeLists.txt +@@ -11,3 +11,4 @@ add_library( ctldpx + dpx_rw.cc + ) + ++target_link_libraries( ctldpx ${IlmBase_LIBRARIES} ) diff --git a/multimedia/ctl/ctl.SlackBuild b/multimedia/ctl/ctl.SlackBuild index 8db6239b9750e..b29fa6ede51a0 100644 --- a/multimedia/ctl/ctl.SlackBuild +++ b/multimedia/ctl/ctl.SlackBuild @@ -4,13 +4,16 @@ # Copyright 2016 Klaatu, Wellington NZ # All rights reserved. -# + +# 20220222 bkw: Modified by SlackBuilds.org, BUILD=2: +# - fix build on 15.0. +# - move .doc and .pdf documentation to our doc dir. cd $(dirname $0) ; CWD=$(pwd) PRGNAM=ctl VERSION=${VERSION:-1.5.2} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -22,9 +25,6 @@ if [ -z "$ARCH" ]; then esac fi -# If the variable PRINT_PACKAGE_NAME is set, then this script will report what -# the name of the created package would be, and then exit. This information -# could be useful to other scripts. if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" exit 0 @@ -59,9 +59,16 @@ cd CTL-$PRGNAM-$VERSION chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ - -o -perm 511 \) -exec chmod 755 {} \; -o \ + -o -perm 511 \) -exec chmod 755 {} \+ -o \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ - -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+ || true + +# 20220223 bkw: patches comes from AUR and/or gentoo. +patch -p1 < $CWD/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch +patch -p1 < $CWD/ilmbase-2.3.0-compatibility.patch + +# 20220223 bkw: C++, the ever-moving target... +sed -i -e 's,std::istream::streampos,std::streampos,g' lib/dpx/dpx.hh PKG_CONFIG_PATH="$PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig:$PKG_CONFIG_PATH" \ CFLAGS="$SLKCFLAGS" \ @@ -71,32 +78,19 @@ cd build cmake \ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_EXE_LINKER_FLAGS="-lAcesContainer" \ -DCMAKE_INSTALL_PREFIX=/usr \ -DINSTALL_CMAKE_DIR=/usr/lib${LIBDIRSUFFIX} \ -DINSTALL_LIB_DIR=/usr/lib${LIBDIRSUFFIX} \ -DCMAKE_BUILD_TYPE=Release .. make - make install DESTDIR=$PKG - - #brute force to conform to LIBDIRSUFFIX post facto - #installer as written hardcode some files to usr/lib - if [ -n "$LIBDIRSUFFIX" ]; then - mv $PKG/usr/lib/* $PKG/usr/lib${LIBDIRSUFFIX} - rmdir $PKG/usr/lib || false - fi - + make install/strip DESTDIR=$PKG cd .. -find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ - | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true - -find $PKG -name perllocal.pod \ - -o -name ".packlist" \ - -o -name "*.bs" \ - | xargs rm -f - mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a AUTHORS LICENSE CHANGELOG README.md $PKG/usr/doc/$PRGNAM-$VERSION +mv $PKG/usr/share/doc/CTL/* $PKG/usr/doc/$PRGNAM-$VERSION +rm -rf $PKG/usr/share cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install diff --git a/multimedia/ctl/ilmbase-2.3.0-compatibility.patch b/multimedia/ctl/ilmbase-2.3.0-compatibility.patch new file mode 100644 index 0000000000000..48555c17a6ff6 --- /dev/null +++ b/multimedia/ctl/ilmbase-2.3.0-compatibility.patch @@ -0,0 +1,11 @@ +--- a/lib/IlmCtlSimd/CtlSimdInst.cpp.orig 2014-06-03 01:11:24 UTC ++++ b/lib/IlmCtlSimd/CtlSimdInst.cpp +@@ -189,7 +189,7 @@ SimdInst::executePath (SimdBoolMask &mas + REPLACE_EXC + (e, "\n" << + xcontext.fileName() << ":" << +- inst->lineNumber() << ": " << e); ++ inst->lineNumber() << ": " << e.what()); + + throw e; + } |