[arch-commits] Commit in openshadinglanguage/trunk (2 files)
Date: Wednesday, April 15, 2020 @ 22:53:00 Author: foutrelis Revision: 615075 upgpkg: openshadinglanguage 1.10.9-4: LLVM 10 rebuild Added: openshadinglanguage/trunk/0001-Allow-OSL-to-compile-with-LLVM-10.x-1128.patch Modified: openshadinglanguage/trunk/PKGBUILD -+ 0001-Allow-OSL-to-compile-with-LLVM-10.x-1128.patch | 85 ++ PKGBUILD| 13 +- 2 files changed, 94 insertions(+), 4 deletions(-) Added: 0001-Allow-OSL-to-compile-with-LLVM-10.x-1128.patch === --- 0001-Allow-OSL-to-compile-with-LLVM-10.x-1128.patch (rev 0) +++ 0001-Allow-OSL-to-compile-with-LLVM-10.x-1128.patch 2020-04-15 22:53:00 UTC (rev 615075) @@ -0,0 +1,85 @@ +From 2f9093ed2aedc008ba6e0a0b3ba0ff1839d73ac1 Mon Sep 17 00:00:00 2001 +From: Christopher Kulla +Date: Thu, 12 Mar 2020 13:16:19 -0700 +Subject: [PATCH] Allow OSL to compile with LLVM 10.x (#1128) + +--- + src/liboslexec/backendllvm.cpp | 4 + src/liboslexec/llvm_util.cpp | 27 +-- + 2 files changed, 25 insertions(+), 6 deletions(-) + +diff --git a/src/liboslexec/backendllvm.cpp b/src/liboslexec/backendllvm.cpp +index 263d8cab..93e091b0 100644 +--- a/src/liboslexec/backendllvm.cpp b/src/liboslexec/backendllvm.cpp +@@ -368,7 +368,11 @@ BackendLLVM::addCUDAVariable(const std::string& name, int size, int alignment, + + ASSERT (g_var && "Unable to create GlobalVariable"); + ++#if OSL_LLVM_VERSION >= 100 ++g_var->setAlignment (llvm::MaybeAlign(alignment)); ++#else + g_var->setAlignment (alignment); ++#endif + g_var->setLinkage(llvm::GlobalValue::ExternalLinkage); + g_var->setVisibility (llvm::GlobalValue::DefaultVisibility); + g_var->setInitializer(constant); +diff --git a/src/liboslexec/llvm_util.cpp b/src/liboslexec/llvm_util.cpp +index 8fa915fe..dde2f1e6 100644 +--- a/src/liboslexec/llvm_util.cpp b/src/liboslexec/llvm_util.cpp +@@ -1160,8 +1160,12 @@ LLVM_Util::op_return (llvm::Value *retval) + void + LLVM_Util::op_memset (llvm::Value *ptr, int val, int len, int align) + { +-builder().CreateMemSet (ptr, builder().getInt8((unsigned char)val), +-uint64_t(len), (unsigned)align); ++builder().CreateMemSet (ptr, builder().getInt8((unsigned char)val), uint64_t(len), ++#if OSL_LLVM_VERSION >= 100 ++llvm::MaybeAlign(align)); ++#else ++unsigned(align)); ++#endif + } + + +@@ -1169,8 +1173,12 @@ LLVM_Util::op_memset (llvm::Value *ptr, int val, int len, int align) + void + LLVM_Util::op_memset (llvm::Value *ptr, int val, llvm::Value *len, int align) + { +-builder().CreateMemSet (ptr, builder().getInt8((unsigned char)val), +-len, (unsigned)align); ++builder().CreateMemSet (ptr, builder().getInt8((unsigned char)val), len, ++#if OSL_LLVM_VERSION >= 100 ++llvm::MaybeAlign(align)); ++#else ++unsigned(align)); ++#endif + } + + +@@ -1187,7 +1195,10 @@ void + LLVM_Util::op_memcpy (llvm::Value *dst, int dstalign, + llvm::Value *src, int srcalign, int len) + { +-#if OSL_LLVM_VERSION >= 70 ++#if OSL_LLVM_VERSION >= 100 ++builder().CreateMemCpy (dst, llvm::MaybeAlign(dstalign), src, llvm::MaybeAlign(srcalign), ++uint64_t(len)); ++#elif OSL_LLVM_VERSION >= 70 + builder().CreateMemCpy (dst, (unsigned)dstalign, src, (unsigned)srcalign, + uint64_t(len)); + #else +@@ -1588,7 +1599,11 @@ LLVM_Util::ptx_compile_group (llvm::Module* lib_module, const std::string& name, + llvm::raw_svector_ostream assembly_stream (assembly); + + // TODO: Make sure rounding modes, etc., are set correctly +-#if OSL_LLVM_VERSION >= 70 ++#if OSL_LLVM_VERSION >= 100 ++target_machine->addPassesToEmitFile (mod_pm, assembly_stream, ++ nullptr, // FIXME: Correct? ++ llvm::CGFT_AssemblyFile); ++#elif OSL_LLVM_VERSION >= 70 + target_machine->addPassesToEmitFile (mod_pm, assembly_stream, + nullptr, // FIXME: Correct? + llvm::TargetMachine::CGFT_AssemblyFile); Modified: PKGBUILD === --- PKGBUILD2020-04-15 22:38:22 UTC (rev 615074) +++ PKGBUILD2020-04-15 22:53:00 UTC (rev 615075) @@ -1,7 +1,7 @@ # Maintainer: Sven-Hendrik Haase pkgname=openshadinglanguage pkgver=1.10.9 -pkgrel=3 +pkgrel=4 pkgdesc="Advanced shading language for production GI renderers" arch=(x86_64) url="https://github.com/imageworks/OpenShadingLanguage; @@ -9,11 +9,15 @@ depends=('boost-libs' 'openimageio' 'openexr' 'intel-tbb' 'freetype2' 'libpng' 'libtiff' 'zlib' 'ncurses') makedepends=('boost' 'cmake' 'python' 'llvm' 'clang')
[arch-commits] Commit in openshadinglanguage/trunk (2 files)
Date: Sunday, October 6, 2019 @ 10:15:52 Author: foutrelis Revision: 513202 Remove old patches Deleted: openshadinglanguage/trunk/clang7.patch openshadinglanguage/trunk/llvm-static-system-libs.patch ---+ clang7.patch | 173 llvm-static-system-libs.patch | 15 --- 2 files changed, 188 deletions(-) Deleted: clang7.patch === --- clang7.patch2019-10-06 09:50:34 UTC (rev 513201) +++ clang7.patch2019-10-06 10:15:52 UTC (rev 513202) @@ -1,173 +0,0 @@ -From 8fbbe7dc32e2a418cc259ff8392bd29045d228f8 Mon Sep 17 00:00:00 2001 -From: Larry Gritz -Date: Sun, 23 Sep 2018 13:19:49 -0700 -Subject: [PATCH] Support clang7 and llvm7 - -(backported from master) - CHANGES.md| 2 +- - INSTALL.md| 2 +- - site/spi/Makefile-bits| 24 +-- - src/liboslcomp/oslcomp.cpp| 6 - src/liboslexec/llvm_util.cpp | 28 +++--- - .../render-background/ref/out-clang7mac.exr | Bin 0 -> 345516 bytes - 6 files changed, 53 insertions(+), 9 deletions(-) - create mode 100644 testsuite/render-background/ref/out-clang7mac.exr - -diff --git a/site/spi/Makefile-bits b/site/spi/Makefile-bits -index fc7dd5542..3ec6a4270 100644 a/site/spi/Makefile-bits -+++ b/site/spi/Makefile-bits -@@ -18,7 +18,7 @@ ifeq ($(SP_OS), rhel7) - - ## If not overridden, here is our preferred LLVM installation - ## (may be changed as new versions are rolled out to the facility) --LLVM_DIRECTORY ?= /shots/spi/home/lib/arnold/rhel7/llvm_5.0.0 -+LLVM_DIRECTORY ?= /shots/spi/home/lib/arnold/rhel7/llvm_7.0.0 - - # A variety of tags can be used to try specific versions of gcc or - # clang from the site-specific places we have installed them. -@@ -28,14 +28,26 @@ ifeq ($(SP_OS), rhel7) - -DCMAKE_CXX_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_4.0_final/bin/clang++ - else ifeq (${COMPILER}, clang5) - MY_CMAKE_FLAGS += \ -- -DCMAKE_C_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_5.0.0/bin/clang \ -- -DCMAKE_CXX_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_5.0.0/bin/clang++ -+ -DCMAKE_C_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_5.0.1/bin/clang \ -+ -DCMAKE_CXX_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_5.0.1/bin/clang++ -+else ifeq (${COMPILER}, clang6) -+MY_CMAKE_FLAGS += \ -+ -DCMAKE_C_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_6.0.1/bin/clang \ -+ -DCMAKE_CXX_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_6.0.1/bin/clang++ -+else ifeq (${COMPILER}, clang7) -+MY_CMAKE_FLAGS += \ -+ -DCMAKE_C_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_7.0.0/bin/clang \ -+ -DCMAKE_CXX_COMPILER=/shots/spi/home/lib/arnold/rhel7/llvm_7.0.0/bin/clang++ - else ifeq (${COMPILER},clang) - MY_CMAKE_FLAGS += -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ - else ifeq (${COMPILER}, gcc490) - MY_CMAKE_FLAGS += \ - -DCMAKE_C_COMPILER=/net/soft_scratch/apps/arnold/tools/gcc-4.9-20130512-test/bin/gcc \ - -DCMAKE_CXX_COMPILER=/net/soft_scratch/apps/arnold/tools/gcc-4.9-20130512-test/bin/g++ -+else ifeq (${COMPILER}, gcc6) -+ MY_CMAKE_FLAGS += \ -+ -DCMAKE_C_COMPILER=/opt/rh/devtoolset-6/root/usr/bin/gcc \ -+ -DCMAKE_CXX_COMPILER=/opt/rh/devtoolset-6/root/usr/bin/g++ - else ifeq (${COMPILER},gcc) - MY_CMAKE_FLAGS += -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ - else ifeq (${COMPILER},) -@@ -43,8 +55,12 @@ ifeq ($(SP_OS), rhel7) - MY_CMAKE_FLAGS += \ --DCMAKE_C_COMPILER=${LLVM_DIRECTORY}/bin/clang \ --DCMAKE_CXX_COMPILER=${LLVM_DIRECTORY}/bin/clang++ -+MY_CMAKE_FLAGS += -DCMAKE_C_FLAGS="--gcc-toolchain=/usr" \ -+ -DCMAKE_CXX_FLAGS="--gcc-toolchain=/usr" \ -+-DTOOLCHAIN_FLAGS="--gcc-toolchain=/usr" - endif - -+ - MY_CMAKE_FLAGS += \ - -DOPENEXR_CUSTOM_INCLUDE_DIR=/usr/include/OpenEXR2 \ - -DOPENEXR_CUSTOM_LIB_DIR=/usr/lib64/OpenEXR2 \ -@@ -93,6 +109,8 @@ else ifeq (${platform}, macosx) - MY_CMAKE_FLAGS += -DCMAKE_C_COMPILER=clang-3.5 -DCMAKE_CXX_COMPILER=clang++-3.5 - else ifeq (${COMPILER},clang40) - MY_CMAKE_FLAGS += -DCMAKE_C_COMPILER=/usr/local/opt/llvm@4/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/opt/llvm@4/bin/clang++ -+else ifeq (${COMPILER},clang7) -+MY_CMAKE_FLAGS += -DCMAKE_C_COMPILER=/usr/local/Cellar/llvm/7.0.0/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/Cellar/llvm/7.0.0/bin/clang++ - else ifeq (${COMPILER},clang) - MY_CMAKE_FLAGS += -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ - else ifeq (${COMPILER},gcc) -diff
[arch-commits] Commit in openshadinglanguage/trunk (2 files)
Date: Monday, March 16, 2015 @ 02:31:20 Author: foutrelis Revision: 129342 upgpkg: openshadinglanguage 1.5.12-4 Build statically against LLVM 3.5 to fix a crash that occurs when both libLLVM-3.5.so and libLLVM-3.6.so get loaded. (LLVM 3.6 gets loaded by mesa.) Added: openshadinglanguage/trunk/llvm-static-system-libs.patch Modified: openshadinglanguage/trunk/PKGBUILD ---+ PKGBUILD | 13 ++--- llvm-static-system-libs.patch | 15 +++ 2 files changed, 25 insertions(+), 3 deletions(-) Modified: PKGBUILD === --- PKGBUILD2015-03-16 00:16:04 UTC (rev 129341) +++ PKGBUILD2015-03-16 01:31:20 UTC (rev 129342) @@ -2,21 +2,28 @@ # Maintainer: Sven-Hendrik Haase s...@lutzhaase.com pkgname=openshadinglanguage pkgver=1.5.12 -pkgrel=3 +pkgrel=4 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' 'llvm35-libs') +depends=('boost-libs' 'openimageio' 'openexr' 'intel-tbb' 'freetype2' 'libpng' + 'libtiff' 'zlib' 'ncurses') makedepends=('boost' 'cmake' 'clang35' 'llvm35') source=(https://github.com/imageworks/OpenShadingLanguage/archive/Release-${pkgver}.tar.gz +llvm-static-system-libs.patch alignment.patch::https://github.com/imageworks/OpenShadingLanguage/commit/bcaf5778e2d778b72615e5c49269b59671cf0d91.patch) md5sums=('484752a0f97df55962c3a667075deddc' + 'b7c212b2549981ced03c091375f48122' 'f3f24c2aa7f5aabd98c0967747b58ecc') prepare() { cd OpenShadingLanguage-Release-$pkgver patch -Np1 $srcdir/alignment.patch + + # Add system libraries needed to link against LLVM components (zlib, ncurses) + # This is required in order to statically link against LLVM + patch -Np1 $srcdir/llvm-static-system-libs.patch } build() { @@ -29,7 +36,7 @@ cmake ../.. \ -DCMAKE_INSTALL_PREFIX=/usr \ --DLLVM_STATIC=0 \ +-DLLVM_STATIC=1 \ -DCMAKE_CXX_FLAGS=-std=c++11 make } Added: llvm-static-system-libs.patch === --- llvm-static-system-libs.patch (rev 0) +++ llvm-static-system-libs.patch 2015-03-16 01:31:20 UTC (rev 129342) @@ -0,0 +1,15 @@ +diff -upr OpenShadingLanguage-Release-1.5.12.orig/src/cmake/externalpackages.cmake OpenShadingLanguage-Release-1.5.12/src/cmake/externalpackages.cmake +--- OpenShadingLanguage-Release-1.5.12.orig/src/cmake/externalpackages.cmake 2014-12-26 22:22:53.0 +0200 OpenShadingLanguage-Release-1.5.12/src/cmake/externalpackages.cmake 2015-03-16 03:12:56.052479730 +0200 +@@ -211,9 +211,10 @@ if ((LLVM_LIBRARY OR LLVM_STATIC) AND LL + # if static LLVM libraries were requested, use llvm-config to generate + # the list of what libraries we need, and substitute that in the right + # way for LLVM_LIBRARY. +-execute_process (COMMAND ${LLVM_CONFIG} --libfiles ++execute_process (COMMAND ${LLVM_CONFIG} --libfiles --system-libs + OUTPUT_VARIABLE LLVM_LIBRARY + OUTPUT_STRIP_TRAILING_WHITESPACE) ++string (REPLACE \n LLVM_LIBRARY ${LLVM_LIBRARY}) + string (REPLACE ; LLVM_LIBRARY ${LLVM_LIBRARY}) + endif () + if (VERBOSE)