[arch-commits] Commit in openshadinglanguage/repos (6 files)
Sven-Hendrik Haase
svenstaro at nymeria.archlinux.org
Wed Jan 8 03:12:05 UTC 2014
Date: Wednesday, January 8, 2014 @ 04:12:05
Author: svenstaro
Revision: 103588
archrelease: copy trunk to community-staging-i686, community-staging-x86_64
Added:
openshadinglanguage/repos/community-staging-i686/
openshadinglanguage/repos/community-staging-i686/PKGBUILD
(from rev 103587, openshadinglanguage/trunk/PKGBUILD)
openshadinglanguage/repos/community-staging-i686/llvm32.patch
(from rev 103587, openshadinglanguage/trunk/llvm32.patch)
openshadinglanguage/repos/community-staging-x86_64/
openshadinglanguage/repos/community-staging-x86_64/PKGBUILD
(from rev 103587, openshadinglanguage/trunk/PKGBUILD)
openshadinglanguage/repos/community-staging-x86_64/llvm32.patch
(from rev 103587, openshadinglanguage/trunk/llvm32.patch)
---------------------------------------+
community-staging-i686/PKGBUILD | 48 +++++++++++++++++++++
community-staging-i686/llvm32.patch | 71 ++++++++++++++++++++++++++++++++
community-staging-x86_64/PKGBUILD | 48 +++++++++++++++++++++
community-staging-x86_64/llvm32.patch | 71 ++++++++++++++++++++++++++++++++
4 files changed, 238 insertions(+)
Copied: openshadinglanguage/repos/community-staging-i686/PKGBUILD (from rev 103587, openshadinglanguage/trunk/PKGBUILD)
===================================================================
--- community-staging-i686/PKGBUILD (rev 0)
+++ community-staging-i686/PKGBUILD 2014-01-08 03:12:05 UTC (rev 103588)
@@ -0,0 +1,48 @@
+# $Id$
+# Maintainer: Sven-Hendrik Haase <sh at lutzhaase.com>
+pkgname=openshadinglanguage
+pkgver=1.5.4dev
+pkgrel=1
+pkgdesc="Advanced shading language for production GI renderers"
+arch=(i686 x86_64)
+url="https://github.com/imageworks/OpenShadingLanguage"
+license=('custom')
+depends=('boost-libs' 'openimageio' 'openexr' 'intel-tbb' 'freetype2' 'libpng' 'libtiff' 'llvm')
+makedepends=('boost' 'cmake' 'clang')
+source=(https://github.com/imageworks/OpenShadingLanguage/archive/Release-${pkgver}.tar.gz
+ https://github.com/imageworks/OpenShadingLanguage/pull/320.patch)
+md5sums=('4dda1fb2919d3440344d36ecbdf13d47'
+ '590137809ea344b41b1ad1e0fc81738c')
+
+build() {
+ cd OpenShadingLanguage-Release-$pkgver
+
+ # LLVM 3.4 build fix
+ patch -Np1 < $srcdir/320.patch
+
+ cd src
+
+ [[ -d build ]] && rm -r build
+ mkdir build && cd build
+
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLLVM_STATIC=0 \
+ ../..
+ make
+}
+
+package() {
+ cd OpenShadingLanguage-Release-$pkgver/src/build
+
+ make DESTDIR="$pkgdir/" install
+
+ mkdir -p "$pkgdir"/usr/share/OSL/
+ mkdir -p "$pkgdir"/usr/share/licenses/$pkgname
+ mv "$pkgdir"/usr/LICENSE "$pkgdir"/usr/share/licenses/$pkgname # TODO: Tell upstream about this shit
+ mv "$pkgdir"/usr/{CHANGES,README.md,INSTALL} "$pkgdir"/usr/share/OSL/
+ mv "$pkgdir"/usr/doc "$pkgdir"/usr/share/OSL/doc
+ mv "$pkgdir"/usr/shaders "$pkgdir"/usr/share/OSL/shaders
+}
+
+# vim:set ts=2 sw=2 et:
Copied: openshadinglanguage/repos/community-staging-i686/llvm32.patch (from rev 103587, openshadinglanguage/trunk/llvm32.patch)
===================================================================
--- community-staging-i686/llvm32.patch (rev 0)
+++ community-staging-i686/llvm32.patch 2014-01-08 03:12:05 UTC (rev 103588)
@@ -0,0 +1,71 @@
+commit c391ceb1936459b70147d6f8ac389ded26a7e028
+Author: Sven-Hendrik Haase <sh at lutzhaase.com>
+Date: Fri Dec 28 09:00:33 2012 +0100
+
+ Fix for LLVM 3.2
+
+diff --git a/src/liboslexec/llvm_headers.h b/src/liboslexec/llvm_headers.h
+index 41a7a11..5ff4384 100644
+--- a/src/liboslexec/llvm_headers.h
++++ b/src/liboslexec/llvm_headers.h
+@@ -45,10 +45,18 @@ namespace llvm = LLVM_NAMESPACE;
+ #include <llvm/LLVMContext.h>
+ #include <llvm/Module.h>
+ #include <llvm/PassManager.h>
++#if OSL_LLVM_VERSION >= 32
++#include <llvm/IRBuilder.h>
++#else
+ #include <llvm/Support/IRBuilder.h>
++#endif
+ #include <llvm/Support/ManagedStatic.h>
+ #include <llvm/Support/MemoryBuffer.h>
+ #include <llvm/Support/raw_ostream.h>
++#if OSL_LLVM_VERSION >= 32
++#include <llvm/DataLayout.h>
++#else
+ #include <llvm/Target/TargetData.h>
++#endif
+
+ #endif /* OSL_LLVM_HEADERS_H */
+diff --git a/src/liboslexec/llvm_instance.cpp b/src/liboslexec/llvm_instance.cpp
+index 8709c8b..3e42557 100644
+--- a/src/liboslexec/llvm_instance.cpp
++++ b/src/liboslexec/llvm_instance.cpp
+@@ -1273,13 +1273,21 @@ RuntimeOptimizer::llvm_setup_optimization_passes ()
+ //
+ m_llvm_func_passes = new llvm::FunctionPassManager(llvm_module());
+ llvm::FunctionPassManager &fpm (*m_llvm_func_passes);
++#if OSL_LLVM_VERSION >= 32
++ fpm.add (new llvm::DataLayout(llvm_module()));
++#else
+ fpm.add (new llvm::TargetData(llvm_module()));
++#endif
+
+ // Specify module-wide (interprocedural optimization) passes
+ //
+ m_llvm_passes = new llvm::PassManager;
+ llvm::PassManager &passes (*m_llvm_passes);
++#if OSL_LLVM_VERSION >= 32
++ passes.add (new llvm::DataLayout(llvm_module()));
++#else
+ passes.add (new llvm::TargetData(llvm_module()));
++#endif
+
+ if (shadingsys().llvm_optimize() >= 1 && shadingsys().llvm_optimize() <= 3) {
+ // For LLVM 3.0 and higher, llvm_optimize 1-3 means to use the
+diff --git a/src/liboslexec/llvm_util.cpp b/src/liboslexec/llvm_util.cpp
+index 135da2e..4e0eefe 100644
+--- a/src/liboslexec/llvm_util.cpp
++++ b/src/liboslexec/llvm_util.cpp
+@@ -42,7 +42,11 @@ namespace pvt {
+ llvm::Type *
+ RuntimeOptimizer::llvm_type_union(const std::vector<llvm::Type *> &types)
+ {
++#if OSL_LLVM_VERSION >= 32
++ llvm::DataLayout target(llvm_module());
++#else
+ llvm::TargetData target(llvm_module());
++#endif
+ size_t max_size = 0;
+ size_t max_align = 1;
+ for (size_t i = 0; i < types.size(); ++i) {
Copied: openshadinglanguage/repos/community-staging-x86_64/PKGBUILD (from rev 103587, openshadinglanguage/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2014-01-08 03:12:05 UTC (rev 103588)
@@ -0,0 +1,48 @@
+# $Id$
+# Maintainer: Sven-Hendrik Haase <sh at lutzhaase.com>
+pkgname=openshadinglanguage
+pkgver=1.5.4dev
+pkgrel=1
+pkgdesc="Advanced shading language for production GI renderers"
+arch=(i686 x86_64)
+url="https://github.com/imageworks/OpenShadingLanguage"
+license=('custom')
+depends=('boost-libs' 'openimageio' 'openexr' 'intel-tbb' 'freetype2' 'libpng' 'libtiff' 'llvm')
+makedepends=('boost' 'cmake' 'clang')
+source=(https://github.com/imageworks/OpenShadingLanguage/archive/Release-${pkgver}.tar.gz
+ https://github.com/imageworks/OpenShadingLanguage/pull/320.patch)
+md5sums=('4dda1fb2919d3440344d36ecbdf13d47'
+ '590137809ea344b41b1ad1e0fc81738c')
+
+build() {
+ cd OpenShadingLanguage-Release-$pkgver
+
+ # LLVM 3.4 build fix
+ patch -Np1 < $srcdir/320.patch
+
+ cd src
+
+ [[ -d build ]] && rm -r build
+ mkdir build && cd build
+
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLLVM_STATIC=0 \
+ ../..
+ make
+}
+
+package() {
+ cd OpenShadingLanguage-Release-$pkgver/src/build
+
+ make DESTDIR="$pkgdir/" install
+
+ mkdir -p "$pkgdir"/usr/share/OSL/
+ mkdir -p "$pkgdir"/usr/share/licenses/$pkgname
+ mv "$pkgdir"/usr/LICENSE "$pkgdir"/usr/share/licenses/$pkgname # TODO: Tell upstream about this shit
+ mv "$pkgdir"/usr/{CHANGES,README.md,INSTALL} "$pkgdir"/usr/share/OSL/
+ mv "$pkgdir"/usr/doc "$pkgdir"/usr/share/OSL/doc
+ mv "$pkgdir"/usr/shaders "$pkgdir"/usr/share/OSL/shaders
+}
+
+# vim:set ts=2 sw=2 et:
Copied: openshadinglanguage/repos/community-staging-x86_64/llvm32.patch (from rev 103587, openshadinglanguage/trunk/llvm32.patch)
===================================================================
--- community-staging-x86_64/llvm32.patch (rev 0)
+++ community-staging-x86_64/llvm32.patch 2014-01-08 03:12:05 UTC (rev 103588)
@@ -0,0 +1,71 @@
+commit c391ceb1936459b70147d6f8ac389ded26a7e028
+Author: Sven-Hendrik Haase <sh at lutzhaase.com>
+Date: Fri Dec 28 09:00:33 2012 +0100
+
+ Fix for LLVM 3.2
+
+diff --git a/src/liboslexec/llvm_headers.h b/src/liboslexec/llvm_headers.h
+index 41a7a11..5ff4384 100644
+--- a/src/liboslexec/llvm_headers.h
++++ b/src/liboslexec/llvm_headers.h
+@@ -45,10 +45,18 @@ namespace llvm = LLVM_NAMESPACE;
+ #include <llvm/LLVMContext.h>
+ #include <llvm/Module.h>
+ #include <llvm/PassManager.h>
++#if OSL_LLVM_VERSION >= 32
++#include <llvm/IRBuilder.h>
++#else
+ #include <llvm/Support/IRBuilder.h>
++#endif
+ #include <llvm/Support/ManagedStatic.h>
+ #include <llvm/Support/MemoryBuffer.h>
+ #include <llvm/Support/raw_ostream.h>
++#if OSL_LLVM_VERSION >= 32
++#include <llvm/DataLayout.h>
++#else
+ #include <llvm/Target/TargetData.h>
++#endif
+
+ #endif /* OSL_LLVM_HEADERS_H */
+diff --git a/src/liboslexec/llvm_instance.cpp b/src/liboslexec/llvm_instance.cpp
+index 8709c8b..3e42557 100644
+--- a/src/liboslexec/llvm_instance.cpp
++++ b/src/liboslexec/llvm_instance.cpp
+@@ -1273,13 +1273,21 @@ RuntimeOptimizer::llvm_setup_optimization_passes ()
+ //
+ m_llvm_func_passes = new llvm::FunctionPassManager(llvm_module());
+ llvm::FunctionPassManager &fpm (*m_llvm_func_passes);
++#if OSL_LLVM_VERSION >= 32
++ fpm.add (new llvm::DataLayout(llvm_module()));
++#else
+ fpm.add (new llvm::TargetData(llvm_module()));
++#endif
+
+ // Specify module-wide (interprocedural optimization) passes
+ //
+ m_llvm_passes = new llvm::PassManager;
+ llvm::PassManager &passes (*m_llvm_passes);
++#if OSL_LLVM_VERSION >= 32
++ passes.add (new llvm::DataLayout(llvm_module()));
++#else
+ passes.add (new llvm::TargetData(llvm_module()));
++#endif
+
+ if (shadingsys().llvm_optimize() >= 1 && shadingsys().llvm_optimize() <= 3) {
+ // For LLVM 3.0 and higher, llvm_optimize 1-3 means to use the
+diff --git a/src/liboslexec/llvm_util.cpp b/src/liboslexec/llvm_util.cpp
+index 135da2e..4e0eefe 100644
+--- a/src/liboslexec/llvm_util.cpp
++++ b/src/liboslexec/llvm_util.cpp
+@@ -42,7 +42,11 @@ namespace pvt {
+ llvm::Type *
+ RuntimeOptimizer::llvm_type_union(const std::vector<llvm::Type *> &types)
+ {
++#if OSL_LLVM_VERSION >= 32
++ llvm::DataLayout target(llvm_module());
++#else
+ llvm::TargetData target(llvm_module());
++#endif
+ size_t max_size = 0;
+ size_t max_align = 1;
+ for (size_t i = 0; i < types.size(); ++i) {
More information about the arch-commits
mailing list