From 6ea17344f851e3c27d3f3ae5f4f929ad016cce43 Mon Sep 17 00:00:00 2001 From: Artur Jamro Date: Fri, 3 Jan 2014 20:07:19 +0000 Subject: [PATCH 1/3] Added recipe files for IlmBase and OpenEXR --- media-libs/ilmbase/ilmbase-2.1.0.recipe | 100 ++++++++++++++ .../ilmbase/patches/ilmbase-2.1.0.patch | 13 ++ media-libs/openexr/openexr-2.1.0.recipe | 127 ++++++++++++++++++ .../openexr/patches/openexr-2.1.0.patch | 13 ++ 4 files changed, 253 insertions(+) create mode 100644 media-libs/ilmbase/ilmbase-2.1.0.recipe create mode 100644 media-libs/ilmbase/patches/ilmbase-2.1.0.patch create mode 100644 media-libs/openexr/openexr-2.1.0.recipe create mode 100644 media-libs/openexr/patches/openexr-2.1.0.patch diff --git a/media-libs/ilmbase/ilmbase-2.1.0.recipe b/media-libs/ilmbase/ilmbase-2.1.0.recipe new file mode 100644 index 000000000..f902c61ab --- /dev/null +++ b/media-libs/ilmbase/ilmbase-2.1.0.recipe @@ -0,0 +1,100 @@ +DESCRIPTION=" +IlmBase provides base libraries for OpenEXR. It contains five \ +modules. Half encapsulates 16-bit floating-point format. IlmThread \ +is thread abstraction library which currently supports pthreads and \ +Windows threads. Imath implements 2D and 3D vectors, 3x3 and 4x4 \ +matrices, quaternions and other useful math functions. Iex is an \ +exception-handling library. There is also IexMath module. +" +SUMMARY="OpenEXR ILM Base libraries" +HOMEPAGE="http://www.openexr.com" +LICENSE="BSD (3-clause)" +COPYRIGHT="2002-2011 Industrial Light & Magic" +SRC_URI="http://download.savannah.nongnu.org/releases/openexr/ilmbase-2.1.0.tar.gz" +CHECKSUM_MD5="8ba2f608191ad020e50277d8a3ba0850" +REVISION="1" + +ARCHITECTURES="x86 ?x86_64" +if [ $effectiveTargetArchitecture != x86_gcc2 ]; then + # x86_gcc2 is fine as primary target architecture as long as we're building + # for a different secondary architecture. + ARCHITECTURES="$ARCHITECTURES x86_gcc2" +else + ARCHITECTURES="$ARCHITECTURES !x86_gcc2" +fi +SECONDARY_ARCHITECTURES="x86 ?x86_64" + +PATCHES="ilmbase-2.1.0.patch" + +PROVIDES=" + ilmbase$secondaryArchSuffix = $portVersion + lib:libilmbase$secondaryArchSuffix = $portVersion + lib:libHalf$secondaryArchSuffix = $portVersion + lib:libIex_2_1$secondaryArchSuffix = $portVersion + lib:libIexMath_2_1$secondaryArchSuffix = $portVersion + lib:libIlmThread_2_1$secondaryArchSuffix = $portVersion + lib:libImath_2_1$secondaryArchSuffix = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + " +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + " +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:which + cmd:autoconf + cmd:aclocal + cmd:libtoolize + " + +BUILD() +{ + ./bootstrap + runConfigure ./configure + make +} + +INSTALL() +{ + make install + + # prepare development lib links + prepareInstalledDevelLibs libHalf + prepareInstalledDevelLibs libIex + prepareInstalledDevelLibs libIexMath + prepareInstalledDevelLibs libIlmThread + prepareInstalledDevelLibs libImath + prepareInstalledDevelLibs libIex-2_1 + prepareInstalledDevelLibs libIexMath-2_1 + prepareInstalledDevelLibs libIlmThread-2_1 + prepareInstalledDevelLibs libImath-2_1 + + fixPkgconfig + + # devel package + packageEntries devel $developDir +} + +# ----- devel package ------------------------------------------------------- + +PROVIDES_devel=" + ilmbase${secondaryArchSuffix}_devel = $portVersion + devel:libilmbase$secondaryArchSuffix = $portVersion + devel:libHalf$secondaryArchSuffix = $portVersion + devel:libIex_2_1$secondaryArchSuffix = $portVersion + devel:libIexMath_2_1$secondaryArchSuffix = $portVersion + devel:libIlmThread_2_1$secondaryArchSuffix = $portVersion + devel:libImath_2_1$secondaryArchSuffix = $portVersion + devel:libIex$secondaryArchSuffix = $portVersion + devel:libIexMath$secondaryArchSuffix = $portVersion + devel:libIlmThread$secondaryArchSuffix = $portVersion + devel:libImath$secondaryArchSuffix = $portVersion + " +REQUIRES_devel=" + ilmbase$secondaryArchSuffix == $portVersion base + " diff --git a/media-libs/ilmbase/patches/ilmbase-2.1.0.patch b/media-libs/ilmbase/patches/ilmbase-2.1.0.patch new file mode 100644 index 000000000..83627aede --- /dev/null +++ b/media-libs/ilmbase/patches/ilmbase-2.1.0.patch @@ -0,0 +1,13 @@ +diff --git a/configure.ac b/configure.ac +index 743fc1f..30ca197 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -10,7 +10,7 @@ AC_SUBST(ILMBASE_VERSION_API, ${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR}) + + AC_CANONICAL_HOST + AC_CONFIG_SRCDIR(ImathTest/main.cpp) +-AM_CONFIG_HEADER(config/IlmBaseConfig.h) ++AC_CONFIG_HEADER(config/IlmBaseConfig.h) + AM_INIT_AUTOMAKE(1.6.3) dnl Require automake 1.6.3 or better + AM_MAINTAINER_MODE + diff --git a/media-libs/openexr/openexr-2.1.0.recipe b/media-libs/openexr/openexr-2.1.0.recipe new file mode 100644 index 000000000..f5046cbed --- /dev/null +++ b/media-libs/openexr/openexr-2.1.0.recipe @@ -0,0 +1,127 @@ +DESCRIPTION=" +OpenEXR is a high dynamic-range (HDR) image file format developed \ +by Industrial Light & Magic for use in computer imaging \ +applications. OpenEXR is used by ILM on all motion pictures \ +currently in production. The first movies to employ OpenEXR were \ +Harry Potter and the Sorcerers Stone, Men in Black II, Gangs of \ +New York, and Signs. Since then, OpenEXR has become ILM's main \ +image file format. +" +SUMMARY="OpenEXR is a high dynamic-range (HDR) image file format" +HOMEPAGE="http://www.openexr.com" +LICENSE="BSD (3-clause)" +COPYRIGHT="2002-2011 Industrial Light & Magic" +SRC_URI="http://download.savannah.nongnu.org/releases/openexr/openexr-2.1.0.tar.gz" +CHECKSUM_MD5="33735d37d2ee01c6d8fbd0df94fb8b43" +REVISION="1" + +ARCHITECTURES="x86 ?x86_64" +if [ $effectiveTargetArchitecture != x86_gcc2 ]; then + # x86_gcc2 is fine as primary target architecture as long as we're building + # for a different secondary architecture. + ARCHITECTURES="$ARCHITECTURES x86_gcc2" +else + ARCHITECTURES="$ARCHITECTURES !x86_gcc2" +fi +SECONDARY_ARCHITECTURES="x86 ?x86_64" + +PATCHES="openexr-2.1.0.patch" + +PROVIDES=" + openexr$secondaryArchSuffix = $portVersion + lib:libIlmImf_Imf_2_1$secondaryArchSuffix = $portVersion + cmd:exrenvmap$secondaryArchSuffix = $portVersion + cmd:exrheader$secondaryArchSuffix = $portVersion + cmd:exrmakepreview$secondaryArchSuffix = $portVersion + cmd:exrmaketiled$secondaryArchSuffix = $portVersion + cmd:exrmultipart$secondaryArchSuffix = $portVersion + cmd:exrmultiview$secondaryArchSuffix = $portVersion + cmd:exrstdattr$secondaryArchSuffix = $portVersion + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libilmbase$secondaryArchSuffix == $portVersion + lib:libHalf$secondaryArchSuffix == $portVersion + lib:libIex_2_1$secondaryArchSuffix == $portVersion + lib:libIexMath_2_1$secondaryArchSuffix == $portVersion + lib:libIlmThread_2_1$secondaryArchSuffix == $portVersion + lib:libImath_2_1$secondaryArchSuffix == $portVersion + lib:libz$secondaryArchSuffix + " +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + ilmbase${secondaryArchSuffix}_devel == $portVersion + devel:libilmbase$secondaryArchSuffix == $portVersion + devel:libHalf$secondaryArchSuffix == $portVersion + devel:libIex_2_1$secondaryArchSuffix == $portVersion + devel:libIexMath_2_1$secondaryArchSuffix == $portVersion + devel:libIlmThread_2_1$secondaryArchSuffix == $portVersion + devel:libImath_2_1$secondaryArchSuffix == $portVersion + devel:libIex$secondaryArchSuffix == $portVersion + devel:libIexMath$secondaryArchSuffix == $portVersion + devel:libIlmThread$secondaryArchSuffix == $portVersion + devel:libImath$secondaryArchSuffix == $portVersion + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + ilmbase$secondaryArchSuffix == $portVersion + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:which + cmd:autoconf + cmd:aclocal + cmd:libtoolize + cmd:pkg_config + " + +BUILD() +{ + pathSecondaryArchSuffix=$(echo ${secondaryArchSuffix} | sed s/^_//g) + IlmBasePkgconfig=$(find /packages/ilmbase${secondaryArchSuffix}_devel-\ +${portVersion}-*/ilmbase${secondaryArchSuffix}/develop/lib/\ +${pathSecondaryArchSuffix}/pkgconfig/IlmBase.pc | sed s/IlmBase\.pc//g) + export PKG_CONFIG_PATH+=:$IlmBasePkgconfig + + ./bootstrap + runConfigure ./configure + make +} + +INSTALL() +{ + make install + + # prepare development documentation + devDocDir=$developDocDir + mkdir -p $devDocDir + mv $dataDir/doc $devDocDir + + # prepare autom4te script + aclocalDir=$developDir + mkdir -p $aclocalDir + mv $dataDir/aclocal $aclocalDir + + #clear empty directory + rmdir $dataDir + + # prepare development lib links + prepareInstalledDevelLibs libIlmImf + + fixPkgconfig + + # devel package + packageEntries devel $developDir +} + +# ----- devel package ------------------------------------------------------- + +PROVIDES_devel=" + openexr${secondaryArchSuffix}_devel = $portVersion + devel:libIlmImf$secondaryArchSuffix = $portVersion + doc:libIlmImf$secondaryArchSuffix = $portVersion + " +REQUIRES_devel=" + openexr$secondaryArchSuffix == $portVersion base + " diff --git a/media-libs/openexr/patches/openexr-2.1.0.patch b/media-libs/openexr/patches/openexr-2.1.0.patch new file mode 100644 index 000000000..b192a850e --- /dev/null +++ b/media-libs/openexr/patches/openexr-2.1.0.patch @@ -0,0 +1,13 @@ +diff --git a/configure.ac b/configure.ac +index 23e9e5f..90570d4 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -11,7 +11,7 @@ AC_SUBST(OPENEXR_VERSION_API, ${OPENEXR_VERSION_MAJOR}_${OPENEXR_VERSION_MINOR}) + + AC_CANONICAL_HOST + AC_CONFIG_SRCDIR(IlmImfTest/main.cpp) +-AM_CONFIG_HEADER(config/OpenEXRConfig.h) ++AC_CONFIG_HEADER(config/OpenEXRConfig.h) + AM_INIT_AUTOMAKE(1.6.3) dnl Require automake 1.6.3 or better + AM_MAINTAINER_MODE + From a03db20b9001d8e73a7eb226e9ba05085a71687e Mon Sep 17 00:00:00 2001 From: Artur Jamro Date: Fri, 3 Jan 2014 22:49:17 +0000 Subject: [PATCH 2/3] IlmBase and OpenEXR recipes: provided some fixes --- media-libs/ilmbase/ilmbase-2.1.0.recipe | 18 +++++++++--------- media-libs/openexr/openexr-2.1.0.recipe | 18 +++++++++--------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/media-libs/ilmbase/ilmbase-2.1.0.recipe b/media-libs/ilmbase/ilmbase-2.1.0.recipe index f902c61ab..e3f497dce 100644 --- a/media-libs/ilmbase/ilmbase-2.1.0.recipe +++ b/media-libs/ilmbase/ilmbase-2.1.0.recipe @@ -64,15 +64,15 @@ INSTALL() make install # prepare development lib links - prepareInstalledDevelLibs libHalf - prepareInstalledDevelLibs libIex - prepareInstalledDevelLibs libIexMath - prepareInstalledDevelLibs libIlmThread - prepareInstalledDevelLibs libImath - prepareInstalledDevelLibs libIex-2_1 - prepareInstalledDevelLibs libIexMath-2_1 - prepareInstalledDevelLibs libIlmThread-2_1 - prepareInstalledDevelLibs libImath-2_1 + prepareInstalledDevelLibs libHalf \ + libIex \ + libIexMath \ + libIlmThread \ + libImath \ + libIex-2_1 \ + libIexMath-2_1 \ + libIlmThread-2_1 \ + libImath-2_1 fixPkgconfig diff --git a/media-libs/openexr/openexr-2.1.0.recipe b/media-libs/openexr/openexr-2.1.0.recipe index f5046cbed..777db4078 100644 --- a/media-libs/openexr/openexr-2.1.0.recipe +++ b/media-libs/openexr/openexr-2.1.0.recipe @@ -29,6 +29,7 @@ PATCHES="openexr-2.1.0.patch" PROVIDES=" openexr$secondaryArchSuffix = $portVersion + lib:libIlmImf$secondaryArchSuffix = $portVersion lib:libIlmImf_Imf_2_1$secondaryArchSuffix = $portVersion cmd:exrenvmap$secondaryArchSuffix = $portVersion cmd:exrheader$secondaryArchSuffix = $portVersion @@ -73,7 +74,7 @@ BUILD_PREREQUIRES=" cmd:autoconf cmd:aclocal cmd:libtoolize - cmd:pkg_config + cmd:pkg_config$secondaryArchSuffix " BUILD() @@ -94,20 +95,19 @@ INSTALL() make install # prepare development documentation - devDocDir=$developDocDir - mkdir -p $devDocDir - mv $dataDir/doc $devDocDir + mkdir -p $developDocDir + mv $dataDir/doc $developDocDir # prepare autom4te script - aclocalDir=$developDir - mkdir -p $aclocalDir - mv $dataDir/aclocal $aclocalDir + mkdir -p $developDir + mv $dataDir/aclocal $developDir #clear empty directory rmdir $dataDir # prepare development lib links - prepareInstalledDevelLibs libIlmImf + prepareInstalledDevelLibs libIlmImf-Imf_2_1 \ + libIlmImf fixPkgconfig @@ -120,7 +120,7 @@ INSTALL() PROVIDES_devel=" openexr${secondaryArchSuffix}_devel = $portVersion devel:libIlmImf$secondaryArchSuffix = $portVersion - doc:libIlmImf$secondaryArchSuffix = $portVersion + devel:libIlmImf_Imf_2_1$secondaryArchSuffix = $portVersion " REQUIRES_devel=" openexr$secondaryArchSuffix == $portVersion base From 2c58d51b9d858cc03db209a9851a473bd5fa1149 Mon Sep 17 00:00:00 2001 From: Artur Jamro Date: Fri, 3 Jan 2014 23:54:26 +0000 Subject: [PATCH 3/3] IlmBase and OpenEXR recipes: cosmetic patch --- media-libs/ilmbase/ilmbase-2.1.0.recipe | 11 ++--------- media-libs/openexr/openexr-2.1.0.recipe | 3 +-- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/media-libs/ilmbase/ilmbase-2.1.0.recipe b/media-libs/ilmbase/ilmbase-2.1.0.recipe index e3f497dce..b1d704c3f 100644 --- a/media-libs/ilmbase/ilmbase-2.1.0.recipe +++ b/media-libs/ilmbase/ilmbase-2.1.0.recipe @@ -64,15 +64,8 @@ INSTALL() make install # prepare development lib links - prepareInstalledDevelLibs libHalf \ - libIex \ - libIexMath \ - libIlmThread \ - libImath \ - libIex-2_1 \ - libIexMath-2_1 \ - libIlmThread-2_1 \ - libImath-2_1 + prepareInstalledDevelLibs libHalf libIex libIexMath libIlmThread \ + libImath libIex-2_1 libIexMath-2_1 libIlmThread-2_1 libImath-2_1 fixPkgconfig diff --git a/media-libs/openexr/openexr-2.1.0.recipe b/media-libs/openexr/openexr-2.1.0.recipe index 777db4078..e05c89722 100644 --- a/media-libs/openexr/openexr-2.1.0.recipe +++ b/media-libs/openexr/openexr-2.1.0.recipe @@ -106,8 +106,7 @@ INSTALL() rmdir $dataDir # prepare development lib links - prepareInstalledDevelLibs libIlmImf-Imf_2_1 \ - libIlmImf + prepareInstalledDevelLibs libIlmImf-Imf_2_1 libIlmImf fixPkgconfig