summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Scruggs <j.scruggs@gmail.com>2018-01-15 11:52:34 +0000
committerAmy Liffey <amynka@gentoo.org>2018-01-15 13:22:02 +0100
commitebb22ebedd1b13c36efd0fec50ebce9b099d8605 (patch)
tree8a41fc312c043ada2ded83e4e4c059f0a63ec909 /media-libs
parentapp-admin/sysstat: Old. (diff)
downloadgentoo-ebb22ebedd1b13c36efd0fec50ebce9b099d8605.tar.gz
gentoo-ebb22ebedd1b13c36efd0fec50ebce9b099d8605.tar.bz2
gentoo-ebb22ebedd1b13c36efd0fec50ebce9b099d8605.zip
media-libs/ctl: Fix installation of cmake files
The CMake files are being installed to the wrong directory. This updated patch address this issue.
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/ctl/ctl-1.5.2-r1.ebuild27
-rw-r--r--media-libs/ctl/files/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch399
2 files changed, 426 insertions, 0 deletions
diff --git a/media-libs/ctl/ctl-1.5.2-r1.ebuild b/media-libs/ctl/ctl-1.5.2-r1.ebuild
new file mode 100644
index 000000000000..55acc2744c99
--- /dev/null
+++ b/media-libs/ctl/ctl-1.5.2-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="AMPAS' Color Transformation Language"
+HOMEPAGE="https://github.com/ampas/CTL"
+SRC_URI="${HOMEPAGE}/archive/ctl-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="AMPAS"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+
+RDEPEND="media-libs/ilmbase:=
+ media-libs/openexr:=
+ media-libs/tiff:=
+ !media-libs/openexr_ctl"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}/CTL-ctl-${PV}"
+
+PATCHES=( "${FILESDIR}/${P}-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch" )
+
+mycmakeargs=( -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}" )
diff --git a/media-libs/ctl/files/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch b/media-libs/ctl/files/ctl-1.5.2-Use-GNUInstallDirs-and-fix-PkgConfig-files-1.patch
new file mode 100644
index 000000000000..e4fadf1aa05c
--- /dev/null
+++ b/media-libs/ctl/files/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} )