# please before bumping this version ensure there is a match between the OSL version used in blender package and in upstream blender # (the easiest way to check is just to take the upstream blender binaries at the same version level of our blender. run them and do a save # system-info.txt to get the list of library versions actually used); if unsure, fork a new OSL package version in the meanwhile and # fix the %libmajor and %apiversion accordingly. %define fver %{version} %define libmajor 1.11 %define apiversion 1.11 %define pkgname openshadinglanguage %define libname %mklibname %{pkgname} %{apiversion} %{libmajor} %define develname %mklibname -d %{pkgname} %{apiversion} Name: openshadinglanguage%{libmajor} Version: 1.11.17.0 Release: %mkrel 10 Summary: A language for programmable shading in advanced renderers Group: Graphics/3D License: BSD-3-Clause Url: https://github.com/AcademySoftwareFoundation/OpenShadingLanguage Source0: https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/refs/tags/v%{version}.tar.gz#//OpenShadingLanguage-%{version}.tar.gz # from git Patch0: 0001-Support-for-LLVM-14-1492.patch # Mageia patches Patch100: 0001-Allow-building-without-ARM-NEON-support.patch BuildRequires: bison BuildRequires: cmake BuildRequires: cmake(pybind11) BuildRequires: clang BuildRequires: clang-devel BuildRequires: flex BuildRequires: llvm-devel BuildRequires: libboost-devel BuildRequires: openimageio %ifnarch %{ix86} %{arm32} BuildRequires: partio-devel %endif %if %mgaversion < 9 BuildRequires: pkgconfig(IlmBase) %else BuildRequires: pkgconfig(Imath) %endif BuildRequires: pkgconfig(OpenEXR) BuildRequires: pkgconfig(OpenImageIO) >= 2.0 BuildRequires: pkgconfig(pugixml) BuildRequires: pkgconfig(python3) BuildRequires: python3dist(numpy) %description Open Shading Language (OSL) is a small but rich language for programmable shading in advanced renderers and other applications, ideal for describing materials, lights, displacement, and pattern generation. %package -n %{libname} Summary: A language for programmable shading in advanced renderers Group: System/Libraries Provides: openshadinglanguage = %{version}-%{release} Provides: %{pkgname} = %{version}-%{release} Provides: lib%{pkgname} = %{version}-%{release} Provides: lib%{name} = %{version}-%{release} %description -n %{libname} Open Shading Language (OSL) is a small but rich language for programmable shading in advanced renderers and other applications, ideal for describing materials, lights, displacement, and pattern generation. This package contains the shared library of OpenShadingLanguage. %package -n %{develname} Summary: Development files for the OpenShadingLanguage library Group: Development/C Requires: %{libname} = %{version}-%{release} Provides: %{pkgname}-devel = %{version}-%{release} Provides: lib%{pkgname}-devel = %{version}-%{release} Provides: lib%{name}-devel = %{version}-%{release} %description -n %{develname} Development files for the OpenShadingLanguage library. Install this package if you want to compile applications using the OpenShadingLanguage library. %package -n python3-%{name} Summary: Python files for the OpenShadingLanguage library Group: Development/Python Requires: %{libname} = %{version}-%{release} %description -n python3-%{name} Python bindinds for the OpenShadingLanguage. %package -n openimageio-plugin-osl Summary: OSL plugin for OpenImageIO Group: Graphics/3D %description -n openimageio-plugin-osl OSL plugin for OpenImageIO. %prep %setup -q -n OpenShadingLanguage-%{fver} %autopatch -p1 %build # TODO: rebuild without -DSTOP_ON_WARNING:BOOL=OFF # Note for packagers: the OpenImageIO plugin search path is defined with the # configuration option "-DPLUGIN_SEARCH_PATH" in the openimageio.spec # file. Please ensure that the file "osl.imageio.so" is placed at the # right place to match the path defined in the openimageio package # (which is %{_libdir} for now). Please do not move the plugin file manually in other places, # unless fixing the path in the openimageio.spec file accordingly. %cmake \ -DCMAKE_CXX_STANDARD=17 \ -DCMAKE_SKIP_RPATH:BOOL=ON \ -DUSE_fPIC:BOOL=ON \ -DENABLERTTI:BOOL=ON \ -DUSE_BOOST_WAVE:BOOL=ON \ -DOSL_BUILD_MATERIALX:BOOL=ON \ -DOSL_SHADER_INSTALL_DIR:PATH=%{_datadir}/%{name} \ %ifarch %{arm32} -DOSL_OIIO_NO_NEON:BOOL=ON \ %endif %ifarch %{ix86} %{arm32} -DUSE_PARTIO:BOOL=OFF \ %endif -DSTOP_ON_WARNING:BOOL=OFF # avoid build break in simd which includes NEON armv8 instruction %cmake_build %install %cmake_install %files %doc CHANGES.md CONTRIBUTING.md README.md %license LICENSE.md %{_bindir}/* %{_datadir}/doc/OSL/* %{_datadir}/%{name} %files -n %{libname} %{_libdir}/*.%{libmajor}{,.*} %files -n %{develname} %{_includedir}/* %{_libdir}/lib*.so %{_libdir}/cmake/OSL %{_libdir}/pkgconfig/*.pc %files -n python3-%{name} %{python3_sitearch}/oslquery.so %files -n openimageio-plugin-osl %{_libdir}/osl.imageio.so %changelog * Sun Jan 01 2023 wally <wally> 1.11.17.0-10.mga9 + Revision: 1928614 - add patch to support building without ARM NEON support * Sun Jan 01 2023 wally <wally> 1.11.17.0-9.mga9 + Revision: 1928552 - another build for armv7 without NEON support * Sun Jan 01 2023 wally <wally> 1.11.17.0-8.mga9 + Revision: 1928531 - try harder to build without NEON support on armv7 * Sun Jan 01 2023 wally <wally> 1.11.17.0-7.mga9 + Revision: 1928492 - rebuild for openimageio 2.4.6.1 * Sat Dec 24 2022 wally <wally> 1.11.17.0-6.mga9 + Revision: 1926514 - rebuild for boost 1.81.0 * Sat Nov 05 2022 ghibo <ghibo> 1.11.17.0-5.mga9 + Revision: 1903822 - Rebuild against newer openimageio * Sat Oct 01 2022 papoteur <papoteur> 1.11.17.0-4.mga9 + Revision: 1893602 - Fix again designation of armv7hl arch * Sat Oct 01 2022 papoteur <papoteur> 1.11.17.0-3.mga9 + Revision: 1893598 - Fix designation of armv7hl arch * Fri Sep 30 2022 papoteur <papoteur> 1.11.17.0-2.mga9 + Revision: 1893540 - Exclude partio also for armv7 * Fri Sep 30 2022 papoteur <papoteur> 1.11.17.0-1.mga9 + Revision: 1893534 - Update to 1.11.17.0, thanks to ghibo - Revert to the version 1.11 - Fork for the version 1.12 + tv <tv> - Rebuild for llvm-15 - Rebuild for llvm-14 + wally <wally> - rebuild for boost 1.79.0 + umeabot <umeabot> - Mageia 9 Mass Rebuild * Mon Dec 27 2021 wally <wally> 1.10.13-11.mga9 + Revision: 1764500 - add patch to fix build with openimageio 2.3 - rebuild for openexr 3.1.3 * Thu Dec 23 2021 wally <wally> 1.10.13-10.mga9 + Revision: 1763494 - add patch to fix build with llvm13 - rebuild for boost 1.78.0 + tv <tv> - Rebuild for llvm 13.0 * Sat Sep 11 2021 wally <wally> 1.10.13-8.mga9 + Revision: 1745175 - skip RPATH - rebuild for boost 1.77.0 * Fri May 14 2021 wally <wally> 1.10.13-7.mga9 + Revision: 1723001 - rebuild for boost 1.76.0 * Mon Mar 01 2021 tv <tv> 1.10.13-6.mga9 + Revision: 1695523 - rebuild for llvm/clang-12 * Thu Dec 31 2020 wally <wally> 1.10.13-5.mga8 + Revision: 1666797 - rebuild for boost 1.75.0 * Sun Dec 20 2020 wally <wally> 1.10.13-4.mga8 + Revision: 1662039 - rebuild for boost 1.74.0 * Sat Dec 05 2020 ghibo <ghibo> 1.10.13-3.mga8 + Revision: 1652992 - Add 2nd patch for building under llvm11 - Reorder patch numbering, closing holes. - Add patch to fix building error about std::string. + tv <tv> - rebuild for llvm/clang 11.0 * Sat Nov 07 2020 joequant <joequant> 1.10.13-1.mga8 + Revision: 1643286 - update to latest point release 1.10.13 * Sat Nov 07 2020 joequant <joequant> 1.10.9-8.mga8 + Revision: 1643249 - bump version - disable simd neon only for arm32 * Sat Nov 07 2020 joequant <joequant> 1.10.9-7.mga8 + Revision: 1643239 - disable unknown simd call for arm * Fri Nov 06 2020 joequant <joequant> 1.10.9-6.mga8 + Revision: 1643096 - bump up release for rebuild - revert update to 1.11 - fix sources - update to 1.11.8.0 and sync with fedora build Version 1.10 was not building because of obscure compile errors, and updating versions and porting patches did not work. * Thu Nov 05 2020 joequant <joequant> 1.10.9-5.mga8 + Revision: 1642845 - update build + daviddavid <daviddavid> - rebuild for new openimageio 2.2.8.0 * Sat Sep 12 2020 daviddavid <daviddavid> 1.10.9-4.mga8 + Revision: 1625303 - rebuild for new openexr/ilmbase 2.5.3 * Sun May 03 2020 wally <wally> 1.10.9-3.mga8 + Revision: 1578093 - rebuild for boost 1.73.0 * Fri Apr 03 2020 daviddavid <daviddavid> 1.10.9-2.mga8 + Revision: 1564141 - rebuild for new openimageio 2.1.13.0 * Thu Mar 26 2020 tv <tv> 1.10.9-1.mga8 + Revision: 1560530 - new release - rebuild for llvm-10.0.0 * Thu Feb 20 2020 umeabot <umeabot> 1.10.8-2.mga8 + Revision: 1545098 - Mageia 8 Mass Rebuild * Mon Jan 27 2020 daviddavid <daviddavid> 1.10.8-1.mga8 + Revision: 1483769 - new version: 1.10.8 + wally <wally> - rebuild for boost 1.72.0 - build with new cmake macros * Thu Oct 17 2019 daviddavid <daviddavid> 1.10.7-1.mga8 + Revision: 1454221 - new version: 1.10.7 (LLVM 9 / clang 9 compatibility) + tv <tv> - rebuild for llvm-9.0 * Mon Jul 15 2019 daviddavid <daviddavid> 1.10.5-2.mga8 + Revision: 1421596 - rebuild for new openimageio 2.0.9 * Fri May 17 2019 ghibo <ghibo> 1.10.5-1.mga7 + Revision: 1398164 - Update to release 1.10.5 * Fri Apr 26 2019 ghibo <ghibo> 1.10.4-3.mga7 + Revision: 1395526 - Fix license * Fri Apr 26 2019 ghibo <ghibo> 1.10.4-2.mga7 + Revision: 1395482 - Added patches to fix lookup path for stdosl.h - Fix URL * Wed Apr 24 2019 ghibo <ghibo> 1.10.4-1.mga7 + Revision: 1395059 - imported package openshadinglanguage1.10 * Wed Apr 24 2019 ghibo <ghibo> 1.11.0-0.20190422.1.mga7 - Initial release.