1
0

13 Commits

Author SHA256 Message Date
a8862e3d34 Accepting request 1293796 from graphics
OBS-URL: https://build.opensuse.org/request/show/1293796
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/OpenShadingLanguage?expand=0&rev=33
2025-07-17 15:18:03 +00:00
ce0021be5e - Lock the python and gcc versions to the same versions as blender
- refreshed fix-install-paths.patch
- Add missing Qt6 BuildRequires to enable osltoy
    relied on uninitialized variables.
    the build. #1443
- do not list pkgconfig directory - provided by filesystem package

OBS-URL: https://build.opensuse.org/package/show/graphics/OpenShadingLanguage?expand=0&rev=73
2025-07-16 12:18:51 +00:00
b17d919dda - Place shader headers in /usr/share/OSL
- flag devel and doc packages noarch
- Improve wildcard patterns for packaged items

OBS-URL: https://build.opensuse.org/package/show/graphics/OpenShadingLanguage?expand=0&rev=72
2025-07-14 13:08:41 +00:00
74ac66db4a Accepting request 1292206 from graphics
OBS-URL: https://build.opensuse.org/request/show/1292206
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/OpenShadingLanguage?expand=0&rev=32
2025-07-11 19:31:32 +00:00
5a89f10db9 - Update to 1.14.6.0
- fix: Check for errors in ShadingSystem::ReParameter() #1998 (by
    cmstein)
  - fix: Pass the real number of channels to rs_texture and
    rs_texture3d on gpu #2004
  - build: Link batched libraries with liboslexec #1987 (by John
    Haddon)
  - build: Update include directives for OpenImageIO_ROOT #1997 (by
    cmstein)
  - build(optix): Simplify FindOptiX.cmake a bit now that OptiX 7
    is the minimum #1988
  - build(optix): Get OptiX headers from new improved location
    #1989
  - build: Add compatibility with LLVM 20.1 #1993 (by Sven-Hendrik
    Haase)
  - ci: Remove Windows-2019 job #1990
  - ci: GPU/OptiX full build and test #1992
  - ci: Improve CI caching scheme #1994
  - ci: Add vp2025 test #1995
- drop add-missing-cstdint.patch
- Allow OIIO 3 now

- Update to 1.14.5.1
  https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.14.5.1
  https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.14.5.0
  https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.14.4.0-beta1
  https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.13.12.0
- refreshed fix-install-paths.patch 
- add add-missing-cstdint.patch

OBS-URL: https://build.opensuse.org/package/show/graphics/OpenShadingLanguage?expand=0&rev=70
2025-07-11 16:03:24 +00:00
5f207a68bf Accepting request 1248216 from graphics
OBS-URL: https://build.opensuse.org/request/show/1248216
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/OpenShadingLanguage?expand=0&rev=31
2025-02-25 15:47:46 +00:00
de0d746cc6 - Force newer boost on leap for blender
- disable Qt on leap

OBS-URL: https://build.opensuse.org/package/show/graphics/OpenShadingLanguage?expand=0&rev=68
2025-02-24 17:00:47 +00:00
15b9a1b9ae Accepting request 1245123 from graphics
OBS-URL: https://build.opensuse.org/request/show/1245123
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/OpenShadingLanguage?expand=0&rev=30
2025-02-11 20:31:36 +00:00
7c40afc1ea - Also lock the cmake(OpenImageIO) to the version smaller than 3
OBS-URL: https://build.opensuse.org/package/show/graphics/OpenShadingLanguage?expand=0&rev=66
2025-02-11 15:12:41 +00:00
a7e63b5a41 Accepting request 1224917 from graphics
OBS-URL: https://build.opensuse.org/request/show/1224917
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/OpenShadingLanguage?expand=0&rev=29
2024-11-19 21:16:27 +00:00
ca0a98f339 - Allow newer LLVM. it is no longer restricted to < 15.9
New upper limit is 18.9.
- for llvm >= 16 it wants CXX standard 17

OBS-URL: https://build.opensuse.org/package/show/graphics/OpenShadingLanguage?expand=0&rev=64
2024-11-18 17:05:32 +00:00
bf2c464e27 Accepting request 1224430 from graphics
OBS-URL: https://build.opensuse.org/request/show/1224430
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/OpenShadingLanguage?expand=0&rev=28
2024-11-15 14:42:03 +00:00
e195e0a91d - update to 1.13.11.0:
OBS-URL: https://build.opensuse.org/package/show/graphics/OpenShadingLanguage?expand=0&rev=62
2024-11-15 11:50:19 +00:00
5 changed files with 393 additions and 53 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6562a3fa10b80b8d328951004258ab6d12a6a23c23143f46a86d2f48f55354d3
size 20555853

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5b56f6f779a092e81ea0cad1f1ad69b1c26f8ad8086e415d1608911328fe4527
size 43339662

View File

@@ -1,7 +1,302 @@
-------------------------------------------------------------------
Tue Jul 15 16:21:57 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
- Lock the python and gcc versions to the same versions as blender
-------------------------------------------------------------------
Mon Jul 14 10:34:59 UTC 2025 - Hans-Peter Jansen <hpj@urpla.net>
- Place shader headers in /usr/share/OSL
- flag devel and doc packages noarch
- Improve wildcard patterns for packaged items
-------------------------------------------------------------------
Thu Jul 10 11:08:12 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
- Update to 1.14.6.0
- fix: Check for errors in ShadingSystem::ReParameter() #1998 (by
cmstein)
- fix: Pass the real number of channels to rs_texture and
rs_texture3d on gpu #2004
- build: Link batched libraries with liboslexec #1987 (by John
Haddon)
- build: Update include directives for OpenImageIO_ROOT #1997 (by
cmstein)
- build(optix): Simplify FindOptiX.cmake a bit now that OptiX 7
is the minimum #1988
- build(optix): Get OptiX headers from new improved location
#1989
- build: Add compatibility with LLVM 20.1 #1993 (by Sven-Hendrik
Haase)
- ci: Remove Windows-2019 job #1990
- ci: GPU/OptiX full build and test #1992
- ci: Improve CI caching scheme #1994
- ci: Add vp2025 test #1995
- drop add-missing-cstdint.patch
- Allow OIIO 3 now
-------------------------------------------------------------------
Sat Jun 28 01:59:56 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
- Update to 1.14.5.1
https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.14.5.1
https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.14.5.0
https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.14.4.0-beta1
https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases/tag/v1.13.12.0
- refreshed fix-install-paths.patch
- add add-missing-cstdint.patch
-------------------------------------------------------------------
Thu Feb 13 03:53:06 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
- Force newer boost on leap for blender
-------------------------------------------------------------------
Thu Feb 13 03:45:32 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
- disable Qt on leap
-------------------------------------------------------------------
Sat Feb 1 22:02:06 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
- Also lock the cmake(OpenImageIO) to the version smaller than 3
-------------------------------------------------------------------
Mon Nov 18 15:40:40 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Allow newer LLVM. it is no longer restricted to < 15.9
New upper limit is 18.9.
- for llvm >= 16 it wants CXX standard 17
-------------------------------------------------------------------
Thu Nov 14 19:46:27 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Added fix-install-paths.patch:
implement suggestions from
https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/issues/1771
- use ldconfig scriptlets macros
-------------------------------------------------------------------
Thu Nov 14 19:01:53 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- update to 1.13.11.0:
- fix/batched: Assume BatchedRendererServices texture derivatives
are in st space. #1828 (by sfriedmapixar) (1.13.10.0)
- fix: Make backfacing shadeop indicate backfacing shader-global
is needed #1827 (by sfriedmapixar) (1.13.10.0)
- deps: Handle various OpenImageIO deprecations and changes in
the run-up to OIIO 3.0 #1834 #1806 #1838 #1842 #1850
(1.13.10.0)
- deps: Adjust to OIIO change to IC/TS API #1848 (1.13.10.0)
- deps: Llvm 18 compat issue - include libclangAPINotes #1812
(1.13.10.0)
- deps: Make finding bison work better on Apple Silicon Macs +
homebrew #1822 (1.13.10.0)
- ci: Mods to CI to deal with OIIO master raising dependency mins
#1833 (1.13.10.0)
- ci: Deal with CentOS 7 EOL and disappearance of yum mirrors
#1839 (1.13.10.0)
- ci: Fix GHA CI after they upgraded nodejs #1837 (1.13.10.0)
- admin: Change release notice icon to use the icon vs the normal
logo so it shows up better #1777 (by John Mertic) (1.13.10.0)
- changes from 1.13.10.0
- testrender: Implement new Oren-Nayar model from OpenPBR #1817
(by Christopher Kulla)
- docs: Fix outdated or wrong repo URLs #1811
- changes from 1.13.9.0
- deps: Support for LLVM-18 #1773 (by مهدي شينون (Mehdi Chinoune)
#1803 (by Larry Gritz)
- fix: Make isconnected() work with downstream renderer
"connections." #1782 (by sfriedmapixar)
- cleanup: Change OSL_CONSTEXPR14 to constexpr #1805
- internals build: Fix ifdef typo #1804
- build: Propagate cpp version #1797
- build: Print commit hash of locally built dependencies #1798
- ci: Lock down to OIIO 2.5 for icc tests #1799
- ci: Suppress leak sanitizer warnings about internals of
robin_hash #1807
- docs: More detail about supported platforms in INSTALL.md #1796
- changes from 1.13.8.0
- fix(batched): Codegen bug for compref with varying index for
batched shading #1776 (by Alex Wells)
- fix: Calculatenormal needs fliphandedness #1783 (by
sfriedmapixar)
- fix: Print closure missing error message at compile time
instead of run time. #1781 (by sfriedmapixar)
- int: Change long-deprecated OIIO macro to new one #1788
- ci: Fix broken Macos-13 CI #1780
- changes from 1.13.7.0
- fix: Mute partio error prints #1774 (by olegul)
- ci: Test with Mac ARM runner #1770
- docs: Fix links to RTD docs from github landing page #1768
- admin: Switch release announcement workflow to jmertic's
awesome action #1766
- changes from 1.13.6.1
- New minimum dependencies and compatibility changes:
- For GPU/OptiX mode, OptiX 6.0 support has been removed. For
GPU rendering with OptiX, a minimum of OptiX 7.0 is required,
and the Cuda minimum has been raised to 9.0 #1737
- The minimum version OpenImageIO has been raised from 2.2 to
2.4. #1591 #1722
- The minimum CMake dependency has been raised from 3.12 to
3.15 #1724 (1.13.5.0)
- The minimum Imath/OpenEXR has been raised from 2.3 to 2.4.
(Note: OSL 1.13 is probably the last major release family
that will support Imath/OpenEXR 2.x.)
- OSL Language and oslc compiler:
- There have been no substantive changes to the OSL language in
this release.
- ⛰️ API changes, new options, new ShadingSystem features (for
renderer writers):
- A new shadingStateUniform pointer field was added to
ShaderGlobals for planned future expansion and improved GPU
support. #1585 (1.13.1.0)
- Adding relaxed type-equivalency to ReParameter() #1639 (by
cmstein) (1.13.2.1)
- Expose llvm groupdata size as a shadergroup attribute #1642
(by Chris Hellmuth) (1.13.4.0)
- RendererServices API for letting get_texture_handle consider
colorspace #1641 (1.13.4.0)
- Make "compile_report" attribute an int instead of just 0/1.
Passing 1 makes a brief report, values >1 are more verbose.
(Zero still prints no report.) #1654 (1.13.4.0)
- Switch lockgeom to interpolated and interactive. The
lockgeom=0 was confusing. Now we use interpolated=1 to mean
"don't optimize it away because it might be interpolated
across the geometry and thus won't have the same value at all
points being shaded," and the subtly different interactive=1
to mean "don't optimize it away because although it will
always take on the same value at all points at the same time,
the user might want to interactively adjust the value and we
don't want to have to recompile the shader group if that
happens." #1662 (1.13.4.0)
- Add type information for needed attributes. #1650 (by Curtis
Black) (1.13.4.0)
- Add API for building attribute getter free functions. #1704
(by Curtis Black) (1.13.5.0)
- Rs fmt specification - Journaling Algorithm for error,
warning, fprintf #1702 (by Steena Monteiro) #1711 #1715
(1.13.5.0)
- 🚀 SIMD batched shading mode
- Fix some array overruns (asymptomatic, but still potentially
buggy) in common_ancestor_between. #1577 (1.13.0.2)
- Fix issue with closure keyword parameters. #1620
(1.13.2.0/1.12.8.0)
- Fix crash when adding a default initialized closure. #1624
(1.13.2.0/1.12.8.0)
- Fix support for closures with array types. #1630
(1.13.2.0/1.12.8.0)
- Fix bug with masked wide llvm_gen_closure() #1637 (by
danieldresser-ie) (1.13.2.1)
- Fix Force LLVM Boolean #1717 (by Alex Wells)
- Batched pointcloud if "index" is not passed #1753 (by Alex
Wells)
- 🚀 OptiX GPU rendering
- OptiX 6.0 support has been removed. For GPU rendering with
OptiX, a minimum of OptiX 7.0 is required.
- Big overhaul/simplification of how strings are represented on
the GPU: the extra level of indirection to global variables
is removed, and strings are simply represented in ordinary
variables as the hash of their characters. #1531 (1.13.0.0)
#1553 (1.13.0.1)
- Better PTX cache hit rate by eliminating several sources of
not being strictly deterministic in the PTX text we were
generating. #1566 #1570 (1.13.0.1)
- Fix PTX symbol visibility issues. #1609 (1.13.2.0)
- Hide more code that is only used for OptiX mode, when OptiX
is disabled. #1608 (1.13.2.0)
- Remove dependency on OptiX SDK for building core OSL with
OptiX support. You can now build OSL with OptiX support
enabled even if you don't have the OptiX SDK headers present
at build time. But you will still need them to build your
OptiX-based application that uses OSL for GPU rendering.
#1627 (1.13.2.0/1.12.8.0)
- GPU/OptiX support of ReParameter #1686 (1.13.4.0)
- Fix userdata derivatives for interpolated params on GPU #1685
(by Pascal Lecocq) (1.13.4.0)
- Enable userdata derivatives for interpolated params on GPU
#1657 (by Chris Hellmuth) (1.13.4.0)
- Move qualifying GroupData params onto stack for higher
performance. #1710 (by Chris Hellmuth) (1.13.5.0)
- Handle mixed string casting that plagues optix codegen #1718
(1.13.5.0)
- Add missing members to ShaderGlobals in rend_lib.h #1721 (by
Tim Grant) (1.13.5.0)
- OptiX direct callable API that owns groupdata buffer #1683
(by Chris Hellmuth) (1.13.5.0)
- OptiX PTX pipeline overhaul #1680 (by Tim Grant) (1.13.5.0)
- Perf: Don't insert redundant run layer calls inside a basic
block #1665 #1669 #1672 (by Chris Hellmuth) (1.13.4.0)
- Fix NVPTX TargetMachine leak, etc. #1763 (by Tim Grant)
- 🐛/🔧 Internals: fixes, improvements, and developer concerns
- Fix memory leak in oslc ASTvariable_declaration. #1576
(1.13.0.2)
- Fix memory leaks in LPE code in error conditions. #1593 #1594
(1.13.0.3)
- Fix mismatched strides when calling OCIO for transformc with
derivs #1646 (1.13.4.0)
- Set up ray types for testrender #1648 (1.13.4.0)
- Fix userdata binding corner case #1673 (by Alejandro Conty)
(1.13.4.0)
- Fix constant float values being converted to ints #1674 (by
Declan Russell) (1.13.4.0)
- Don't try to ReParameter symbols not in the group #1693 (by
Alejandro Conty) (1.13.5.0)
- Have ReParameter only copy data when it changes #1698
(1.13.5.0)
- Avoid deprecated OSLQuery ctr in test example #1699
(1.13.5.0)
- Zero derivs for interactive params when needed #1700 (by
Alejandro Conty) (1.13.5.0)
- oslc bug fix: shader params whose default values involve
"init ops" could be incorrectly initialized if their values
came from instance parameters set to zero. #1578 (1.13.0.2)
- oslc: Add missing fmod() variants #1643 (1.13.4.0)
- Simple constant folding of binary expressions now happen on
the oslc side #1653 (1.13.4.0)
- platform.h:
- New OSL_ALLOCA macro to allocate on the stack. #1589
(1.13.0.3)
- Define OSL::bitcast utility. #1610 (1.13.2.0)
- Make sure that std::hash is defined for ustring and
ustringhash. #1599 (1.13.1.1)
- Deprecate LLVMUtil::internalize_module_functions. #1606
(1.13.1.0)
- Work toward always representing strings in shaders as
ustringhash rather than ustring: phase 1 #1603 phase2 #1612
(1.13.2.0) #1726 (1.13.5.0)
- Remove unnecessary setting of locale::global #1636 (by
danieldresser-ie) (1.13.2.1)
- Fully define bitcast template #1635 (1.13.2.1)
- Fix for ReParameter corner case #1670 (by cmstein) (1.13.4.0)
- Switch deprecated oiio simd names to modern #1679 (1.13.4.0)
- Give ShadingSystemImpl a handy use_optix() method #1682
(1.13.4.0)
- Fix default fmt logic changing in latest openimageio release
#1725 (1.13.5.0)
- The recently added SS::find_symloc can have const args #1723
(1.13.5.0)
- SymOverrideInfo bitfields should be the same type #1745
- Fix wrong offset of MxSheen param #1751 (by Rasmus Bonnedal)
- Make get_texture_info robust to empty shaderglobals param
#1731
- Documentation
- First stab at ReadTheDocs -- new Experimental OSL
Documentation on ReadTheDocs is still a little rough, but
eventually will be our primary documentation. #1736
- doc/RELEASING.md documents our release process and versioning
policies. #1572 (1.13.0.2)
- Improve documentation of trace function #1671 (by AidanWelch)
(1.13.4.0)
- Update CONTRIBUTING #1689 (1.13.5.0)
- Update logos #1705, Move logos and add an icon-only logo
#1707 (1.13.5.0)
-------------------------------------------------------------------
Tue Jan 16 19:38:15 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Add missing Qt6 BuildRequires to enable osltoy
- Add missing Qt6 BuildRequires to enable osltoy
-------------------------------------------------------------------
Tue Jan 16 11:01:20 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
@@ -87,7 +382,7 @@ Mon Jan 16 07:05:07 UTC 2023 - Dirk Müller <dmueller@suse.com>
* Batch mode: Fix support for closures with array types.
* testshade: better testing of all closure parameter types.
* Fix various CI breaks as dependencies shifted.
-------------------------------------------------------------------
Sat Dec 10 21:04:49 UTC 2022 - Dirk Müller <dmueller@suse.com>
@@ -173,7 +468,7 @@ Sun Apr 10 10:06:53 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.11.17.0:
* Fix in runtime optimizer where tracking of messages and unknown messages
relied on uninitialized variables.
relied on uninitialized variables.
* Minor changes related to OpenColorIO changing their master branch name to
"main". #1431
* Testing: Get texture3d tests operational again. #1437
@@ -183,7 +478,7 @@ Sun Apr 10 10:06:53 UTC 2022 - Dirk Müller <dmueller@suse.com>
OSL_SUPPORTED_RELEASE be cache strings, so they can be overridden; change
OSL_IS_SUBPROJECT to PROJECT_IS_TOP_LEVEL (and change its sense) to match
CMake 21+ behavior; add a TIME_COMMANDS option to help debug performance of
the build. #1443
the build. #1443
- drop 8682211d0bfe5c4be63a4a003d06037ff9721e66.diff, 1420.diff (upstream)
-------------------------------------------------------------------
@@ -253,7 +548,7 @@ Sun May 2 05:54:38 UTC 2021 - munix9@googlemail.com
-------------------------------------------------------------------
Wed Apr 7 22:16:17 UTC 2021 - Dirk Müller <dmueller@suse.com>
- do not list pkgconfig directory - provided by filesystem package
- do not list pkgconfig directory - provided by filesystem package
-------------------------------------------------------------------
Sun Mar 21 15:50:36 UTC 2021 - Hans-Peter Jansen <hpj@urpla.net>

View File

@@ -1,7 +1,7 @@
#
# spec file for package OpenShadingLanguage
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -22,8 +22,29 @@
# Required for the plugin directory name, see https://github.com/OpenImageIO/oiio/issues/2583
%define oiio_major_minor_ver %(rpm -q --queryformat='%%{version}' OpenImageIO-devel | cut -d . -f 1-2)
# we could have a minimum of 9 here. but to more easily switch to C++17 we set the minium to 16
%global min_llvm_version 16
%global max_llvm_version 18.9
# cmake expects the shaders in /usr/share/OSL
%define osldir OSL
# keep in sync with blender
%if 0%{?suse_version} >= 1600
%bcond_without qt
%global py3ver 3.13
%global py3pkg python313
%else
%bcond_with qt
%global force_boost_version 1_75_0
%global force_gcc_version 14
%global py3ver 3.11
%global py3pkg python311
%endif
Name: OpenShadingLanguage
Version: 1.12.14.0
Version: 1.14.6.0
Release: 0
Summary: A language for programmable shading
License: BSD-3-Clause
@@ -31,37 +52,35 @@ Group: Productivity/Graphics/Other
URL: https://github.com/AcademySoftwareFoundation/OpenShadingLanguage
Source0: https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: https://creativecommons.org/licenses/by/3.0/legalcode.txt#/CC-BY-3.0.txt
BuildRequires: OpenEXR-devel >= 2.3
BuildRequires: OpenImageIO >= 2.2
Patch0: fix-install-paths.patch
BuildRequires: OpenEXR-devel >= 2.4
BuildRequires: OpenImageIO >= 2.5
BuildRequires: bison
BuildRequires: cmake >= 3.15
BuildRequires: flex
BuildRequires: gcc%{?force_gcc_version}-c++
BuildRequires: libboost_filesystem%{?force_boost_version}-devel
BuildRequires: libboost_system%{?force_boost_version}-devel
BuildRequires: libboost_thread%{?force_boost_version}-devel
BuildRequires: (cmake(Clang) >= %{min_llvm_version} with cmake(Clang) =< %{max_llvm_version})
BuildRequires: (cmake(LLVM) >= %{min_llvm_version} with cmake(LLVM) =< %{max_llvm_version})
%if %{with qt}
BuildRequires: cmake(Qt6)
BuildRequires: cmake(Qt6Core)
BuildRequires: cmake(Qt6Gui)
BuildRequires: cmake(Qt6OpenGLWidgets)
BuildRequires: cmake(Qt6Widgets)
%if 0%{?suse_version} > 1500
#!BuildIgnore: clang-tools
BuildRequires: clang15-devel
BuildRequires: llvm15-devel
%else
BuildRequires: clang-devel > 9
BuildRequires: llvm-devel > 9
%endif
BuildRequires: cmake >= 3.12
BuildRequires: flex
BuildRequires: gcc-c++
BuildRequires: libboost_filesystem-devel
BuildRequires: libboost_system-devel
BuildRequires: libboost_thread-devel
%ifnarch %{arm}
# Build fails with partio on armv7/armv6
BuildRequires: partio-devel
%endif
BuildRequires: %{py3pkg}-devel
BuildRequires: %{py3pkg}-pybind11-devel
BuildRequires: pkg-config
BuildRequires: python3-devel
BuildRequires: python3-pybind11-devel
BuildRequires: cmake(OpenImageIO) >= 2.0
BuildRequires: cmake(OpenImageIO) >= 2.5
BuildRequires: cmake(pugixml)
BuildRequires: cmake(tsl-robin-map)
Requires: %{name}-common-headers = %{version}
Recommends: %{name}-doc = %{version}
ExcludeArch: %{ix86}
@@ -79,6 +98,7 @@ Summary: Documentation for OpenShadingLanguage
License: CC-BY-3.0
Group: Documentation/Other
Requires: %{name} = %{version}
BuildArch: noarch
%description doc
Open Shading Language (OSL) is a language for programmable shading
@@ -92,6 +112,7 @@ License: BSD-3-Clause
Group: Development/Languages/Other
Requires: %{name} = %{version}
Requires: %{name}-common-headers
BuildArch: noarch
%description example-shaders-source
Open Shading Language (OSL) is a language for programmable shading
@@ -105,6 +126,7 @@ Summary: OSL standard library and auxiliary headers
License: BSD-3-Clause
Group: Development/Languages/Other
Requires: %{name} = %{version}
BuildArch: noarch
%description common-headers
Open Shading Language (OSL) is a language for programmable shading
@@ -195,15 +217,26 @@ developing applications that use %{name}.
%prep
%autosetup -p1
find . -iname CMakeLists.txt -exec sed "-i" "-e s/COMMAND python/COMMAND python3/" "{}" \;
find . -iname CMakeLists.txt -exec sed "-i" "-e s/COMMAND python/COMMAND python%{py3ver}/" "{}" \;
%build
%define _lto_cflags %{nil}
%if 0%{?force_gcc_version}
export CC="gcc-%{?force_gcc_version}"
export CXX="g++-%{?force_gcc_version}"
%endif
%if 0%{?suse_version} == 1500
export pybind11_DIR="$(pybind11-config --cmakedir)"
%endif
%cmake \
%if %{without qt}
-DUSE_QT:BOOL=FALSE \
%endif
-DCMAKE_SKIP_RPATH:BOOL=TRUE \
-DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%{name} \
-DOSL_SHADER_INSTALL_DIR:PATH=%{_datadir}/%{name}/shaders/ \
-DCMAKE_CXX_STANDARD:STRING=14
-DOSL_SHADER_INSTALL_DIR:PATH=%{_datadir}/%{osldir}/shaders/ \
-DCMAKE_CXX_STANDARD:STRING=17
%cmake_build
%install
@@ -215,39 +248,31 @@ find %{buildroot} -name LICENSE.md -print -delete
# add top level markdowns to the doc package
cp -p *.md %{buildroot}%{_docdir}/%{name}/
# TODO: package python module
find %{buildroot}%{python3_sitearch} -name oslquery.so -print -delete
rm -rv %{buildroot}%{_libdir}/python%{py3ver}/site-packages/oslquery/
rm %{buildroot}%{_datadir}/build-scripts/serialize-bc.py
%post -n liboslcomp%{sufx} -p /sbin/ldconfig
%postun -n liboslcomp%{sufx} -p /sbin/ldconfig
%post -n liboslexec%{sufx} -p /sbin/ldconfig
%postun -n liboslexec%{sufx} -p /sbin/ldconfig
%post -n liboslnoise%{sufx} -p /sbin/ldconfig
%postun -n liboslnoise%{sufx} -p /sbin/ldconfig
%post -n liboslquery%{sufx} -p /sbin/ldconfig
%postun -n liboslquery%{sufx} -p /sbin/ldconfig
%post -n libtestshade%{sufx} -p /sbin/ldconfig
%postun -n libtestshade%{sufx} -p /sbin/ldconfig
%ldconfig_scriptlets -n liboslcomp%{sufx}
%ldconfig_scriptlets -n liboslexec%{sufx}
%ldconfig_scriptlets -n liboslnoise%{sufx}
%ldconfig_scriptlets -n liboslquery%{sufx}
%ldconfig_scriptlets -n libtestshade%{sufx}
%files
%license LICENSE.md
%{_bindir}/*
%{_bindir}/{osl,test}*
%files doc
%license CC-BY-3.0.txt
%doc %{_docdir}/%{name}/
%files example-shaders-source
%{_datadir}/%{name}/shaders/*.osl
%{_datadir}/%{name}/shaders/*.oso
%{_datadir}/%{osldir}/shaders/*.osl
%{_datadir}/%{osldir}/shaders/*.oso
%files common-headers
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/shaders
%{_datadir}/%{name}/shaders/*.h
%dir %{_datadir}/%{osldir}
%dir %{_datadir}/%{osldir}/shaders
%{_datadir}/%{osldir}/shaders/*.h
%files -n liboslcomp%{sufx}
%license LICENSE.md
@@ -275,7 +300,7 @@ find %{buildroot}%{python3_sitearch} -name oslquery.so -print -delete
%files devel
%license LICENSE.md
%{_includedir}/*
%{_includedir}/%{osldir}
%{_libdir}/lib*.so
%{_libdir}/cmake/OSL
%{_libdir}/pkgconfig/osl*.pc

20
fix-install-paths.patch Normal file
View File

@@ -0,0 +1,20 @@
Index: OpenShadingLanguage-1.14.5.1/CMakeLists.txt
===================================================================
--- OpenShadingLanguage-1.14.5.1.orig/CMakeLists.txt
+++ OpenShadingLanguage-1.14.5.1/CMakeLists.txt
@@ -323,13 +323,13 @@ configure_package_config_file ("${PROJEC
install (FILES "${OSL_PROJECT_CONFIG}" "${OSL_VERSION_CONFIG}"
DESTINATION "${OSL_CONFIG_INSTALL_DIR}")
-install (FILES src/cmake/llvm_macros.cmake DESTINATION cmake)
+install (FILES src/cmake/llvm_macros.cmake DESTINATION ${OSL_CONFIG_INSTALL_DIR})
set (PERMISSION_FLAGS OWNER_EXECUTE OWNER_READ OWNER_WRITE
GROUP_EXECUTE GROUP_READ
WORLD_EXECUTE WORLD_READ)
install (FILES src/build-scripts/serialize-bc.py
- DESTINATION build-scripts
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/build-scripts
PERMISSIONS ${PERMISSION_FLAGS})
# install targets files