Browse Source

multimedia/ctl: Fix 15.0 build.

Signed-off-by: B. Watson <yalhcru@gmail.com>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
pull/180/head
B. Watson 4 years ago
committed by Willy Sudiarto Raharjo
parent
commit
3e3fb884ff
No known key found for this signature in database GPG Key ID: 3F617144D7238786
  1. 8
      multimedia/ctl/README
  2. 399
      multimedia/ctl/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch
  3. 42
      multimedia/ctl/ctl.SlackBuild
  4. 11
      multimedia/ctl/ilmbase-2.3.0-compatibility.patch

8
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.

399
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} )

42
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

11
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;
}
Loading…
Cancel
Save