From 1c6e275a6e7422ffd38b6a8905607874dccceb79 Mon Sep 17 00:00:00 2001 From: Dimitri John Ledkov Date: Sat, 28 Dec 2013 13:20:30 +0000 Subject: Apply patch from Petr Salinger to fix FTBFS on kFreeBSD (Closes: #719173) --- .pc/applied-patches | 1 + .../export/OpenColorIO/OpenColorABI.h.in | 89 ++++++++++++++++++++++ debian/changelog | 1 + debian/patches/fix-kfreebsd.patch | 15 ++++ debian/patches/series | 1 + export/OpenColorIO/OpenColorABI.h.in | 2 +- 6 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 .pc/fix-kfreebsd.patch/export/OpenColorIO/OpenColorABI.h.in create mode 100644 debian/patches/fix-kfreebsd.patch diff --git a/.pc/applied-patches b/.pc/applied-patches index 9db761e..9ecf6a1 100644 --- a/.pc/applied-patches +++ b/.pc/applied-patches @@ -1 +1,2 @@ 0001-Fix_built-in_documentation_dependencies.patch +fix-kfreebsd.patch diff --git a/.pc/fix-kfreebsd.patch/export/OpenColorIO/OpenColorABI.h.in b/.pc/fix-kfreebsd.patch/export/OpenColorIO/OpenColorABI.h.in new file mode 100644 index 0000000..d39d586 --- /dev/null +++ b/.pc/fix-kfreebsd.patch/export/OpenColorIO/OpenColorABI.h.in @@ -0,0 +1,89 @@ +/* +Copyright (c) 2003-2010 Sony Pictures Imageworks Inc., et al. +All Rights Reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of Sony Pictures Imageworks nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef INCLUDED_OCIO_OPENCOLORABI_H +#define INCLUDED_OCIO_OPENCOLORABI_H + +// Makefile configuration options +#define OCIO_NAMESPACE @OCIO_NAMESPACE@ +#define OCIO_USE_BOOST_PTR @OCIO_USE_BOOST_PTR@ +#define OCIO_VERSION "@OCIO_VERSION@" +#define OCIO_VERSION_NS v@SOVERSION@ + +/* Version as a single 4-byte hex number, e.g. 0x01050200 == 1.5.2 + Use this for numeric comparisons, e.g. #if OCIO_VERSION_HEX >= ... + Note: in the case where SOVERSION is overridden at compile-time, + this will reflect the original API version number. + */ +#define OCIO_VERSION_HEX ((@OCIO_VERSION_MAJOR@ << 24) | \ + (@OCIO_VERSION_MINOR@ << 16) | \ + (@OCIO_VERSION_PATCH@ << 8)) + + +// Namespace / version mojo +#define OCIO_NAMESPACE_ENTER namespace OCIO_NAMESPACE { namespace OCIO_VERSION_NS +#define OCIO_NAMESPACE_EXIT using namespace OCIO_VERSION_NS; } +#define OCIO_NAMESPACE_USING using namespace OCIO_NAMESPACE; + +// shared_ptr / dynamic_pointer_cast +#if OCIO_USE_BOOST_PTR +#include +#define OCIO_SHARED_PTR boost::shared_ptr +#define OCIO_DYNAMIC_POINTER_CAST boost::dynamic_pointer_cast +#elif __GNUC__ >= 4 +#include +#define OCIO_SHARED_PTR std::tr1::shared_ptr +#define OCIO_DYNAMIC_POINTER_CAST std::tr1::dynamic_pointer_cast +#else +#error OCIO needs gcc 4 or later to get access to (or specify USE_BOOST_PTR instead) +#endif + +// If supported, define OCIOEXPORT, OCIOHIDDEN +// (used to choose which symbols to export from OpenColorIO) +#if defined __linux__ || __APPLE__ + #if __GNUC__ >= 4 + #define OCIOEXPORT __attribute__ ((visibility("default"))) + #define OCIOHIDDEN __attribute__ ((visibility("hidden"))) + #else + #define OCIOEXPORT + #define OCIOHIDDEN + #endif +#elif defined(_WIN32) || defined(_WIN64) || defined(_WINDOWS) || defined(_MSC_VER) + // Windows requires you to export from the main library and then import in any others + #if defined OpenColorIO_EXPORTS + #define OCIOEXPORT __declspec(dllexport) + #else + #define OCIOEXPORT __declspec(dllimport) + #endif + #define OCIOHIDDEN +#else // Others platforms not supported atm + #define OCIOEXPORT + #define OCIOHIDDEN +#endif + +#endif // INCLUDED_OCIO_OPENCOLORABI_H diff --git a/debian/changelog b/debian/changelog index 245fe45..f59c0f1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,6 +3,7 @@ opencolorio (1.0.8~dfsg0-2.1) UNRELEASED; urgency=medium * Non-maintainer upload. * Build-depend on libboost-dev (Closes: #725533) * Build-depend on yaml-cpp0.3, instead of yaml-cpp (0.5). + * Apply patch from Petr Salinger to fix FTBFS on kFreeBSD (Closes: #719173) -- Dimitri John Ledkov Sat, 28 Dec 2013 13:16:38 +0000 diff --git a/debian/patches/fix-kfreebsd.patch b/debian/patches/fix-kfreebsd.patch new file mode 100644 index 0000000..74ae200 --- /dev/null +++ b/debian/patches/fix-kfreebsd.patch @@ -0,0 +1,15 @@ +Description: fix FTBFS on kFreeBSD (Closes: #719173) +Author: Petr Salinger +Bug-Debian: http://bugs.debian.org/719173 + +--- opencolorio-1.0.8~dfsg0.orig/export/OpenColorIO/OpenColorABI.h.in ++++ opencolorio-1.0.8~dfsg0/export/OpenColorIO/OpenColorABI.h.in +@@ -65,7 +65,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE + + // If supported, define OCIOEXPORT, OCIOHIDDEN + // (used to choose which symbols to export from OpenColorIO) +-#if defined __linux__ || __APPLE__ ++#if defined __linux__ || __APPLE__ || __GLIBC__ + #if __GNUC__ >= 4 + #define OCIOEXPORT __attribute__ ((visibility("default"))) + #define OCIOHIDDEN __attribute__ ((visibility("hidden"))) diff --git a/debian/patches/series b/debian/patches/series index 9db761e..9ecf6a1 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ 0001-Fix_built-in_documentation_dependencies.patch +fix-kfreebsd.patch diff --git a/export/OpenColorIO/OpenColorABI.h.in b/export/OpenColorIO/OpenColorABI.h.in index d39d586..4e64cb2 100644 --- a/export/OpenColorIO/OpenColorABI.h.in +++ b/export/OpenColorIO/OpenColorABI.h.in @@ -65,7 +65,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // If supported, define OCIOEXPORT, OCIOHIDDEN // (used to choose which symbols to export from OpenColorIO) -#if defined __linux__ || __APPLE__ +#if defined __linux__ || __APPLE__ || __GLIBC__ #if __GNUC__ >= 4 #define OCIOEXPORT __attribute__ ((visibility("default"))) #define OCIOHIDDEN __attribute__ ((visibility("hidden"))) -- cgit v1.2.3