The package rpms/blender.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/blender.git/commit/?id=aacbd08a5b...
https://src.fedoraproject.org/cgit/rpms/blender.git/commit/?id=1d6ff40663...
https://src.fedoraproject.org/cgit/rpms/blender.git/commit/?id=8203f38945....
Change:
+%ifarch x86_64
+%ifarch x86_64 || aarch64
-%ifarch x86_64 || aarch64
Thanks.
Full change:
============
commit a28125f00ca4fcb8c7607a7dbf04cdb8d9813606
Merge: 3a0bb1f b0aff7f
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Fri Jun 10 19:28:01 2022 -0700
Update to 3.2.0
commit b0aff7f7d1ccf555c52084834f65df518bff2f9e
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Thu Jun 9 19:32:35 2022 -0700
Enable ffpmeg support
diff --git a/blender.spec b/blender.spec
index 66ac487..2674122 100644
--- a/blender.spec
+++ b/blender.spec
@@ -7,7 +7,7 @@
%undefine _package_note_flags
%bcond_with clang
-%bcond_with ffmpeg
+%bcond_without ffmpeg
# Needed to enable osl support for cycles rendering
%bcond_without llvm
%bcond_without openshading
@@ -140,6 +140,7 @@ BuildRequires: pkgconfig(xproto)
BuildRequires: cmake(Alembic)
%if %{with ffmpeg}
BuildRequires: ffmpeg-free-devel
+BuildRequires: libavdevice-free-devel
BuildRequires: libavformat-free-devel
%endif
BuildRequires: lame-devel
@@ -242,7 +243,7 @@ sed -i "s/date_time/date_time
python%{python3_version_nodots}/" \
%cmake \
%if %{with ffmpeg}
-DWITH_CODEC_FFMPEG=ON \
- -D_ffmpeg_INCLUDE_DIR=%{_includedir} \
+ -D_ffmpeg_INCLUDE_DIR=%{_includedir}/ffmpeg \
%else
-DWITH_CODEC_FFMPEG=OFF \
%endif
commit 9b887f4ea6a4cf9b34d79d2676cfa49836e00af1
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Thu Jun 9 01:02:27 2022 -0700
Revert deleted pythonlibs-fix
diff --git a/blender-usd-pythonlibs-fix.diff b/blender-usd-pythonlibs-fix.diff
new file mode 100644
index 0000000..28fd72e
--- /dev/null
+++ b/blender-usd-pythonlibs-fix.diff
@@ -0,0 +1,20 @@
+diff -ru blender-2.93.3-original/source/blender/io/usd/CMakeLists.txt
blender-2.93.3/source/blender/io/usd/CMakeLists.txt
+--- blender-2.93.3-original/source/blender/io/usd/CMakeLists.txt 2021-04-20
19:02:39.000000000 -0700
++++ blender-2.93.3/source/blender/io/usd/CMakeLists.txt 2021-08-19 22:52:43.578924282
-0700
+@@ -53,6 +53,7 @@
+ ${USD_INCLUDE_DIRS}
+ ${BOOST_INCLUDE_DIR}
+ ${TBB_INCLUDE_DIR}
++ ${PYTHON_INCLUDE_DIRS}
+ )
+
+ set(SRC
+@@ -86,6 +87,8 @@
+
+ list(APPEND LIB
+ ${BOOST_LIBRARIES}
++ ${PYTHON_LINKFLAGS}
++ ${PYTHON_LIBRARIES}
+ )
+
+ list(APPEND LIB
commit b169927e4320f23de410d94b5431d1d424f32ab5
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Thu Jun 9 00:51:59 2022 -0700
Update to 3.2.0 (#2094907)
diff --git
a/blender-2.93.5-0001-Fix-T93425-makesdna-force-DNAstr-to-be-4-bytes-align.patch
b/blender-2.93.5-0001-Fix-T93425-makesdna-force-DNAstr-to-be-4-bytes-align.patch
deleted file mode 100644
index 7f8a539..0000000
--- a/blender-2.93.5-0001-Fix-T93425-makesdna-force-DNAstr-to-be-4-bytes-align.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From aa31976394c6439b5baa823e578f5122a9cf3685 Mon Sep 17 00:00:00 2001
-From: Mamoru TASAKA <mtasaka(a)fedoraproject.org>
-Date: Sat, 27 Nov 2021 23:22:55 +0900
-Subject: [PATCH] Fix T93425: makesdna: force DNAstr to be 4 bytes aligned.
-
-init_structDNA() in dna_gen.c expects that the input sdna->data is 4-bytes aligned.
-DNAstr[] buffer written by makesdna is used for this data, so make DNAstr forcely
-4-bytes aligned.
----
- source/blender/makesdna/intern/makesdna.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/source/blender/makesdna/intern/makesdna.c
b/source/blender/makesdna/intern/makesdna.c
-index 114c0b4..d709582 100644
---- a/source/blender/makesdna/intern/makesdna.c
-+++ b/source/blender/makesdna/intern/makesdna.c
-@@ -1555,8 +1555,14 @@ int main(int argc, char **argv)
- base_directory = BASE_HEADER;
- }
-
-+#ifdef __GNUC__
-+#define FORCE_ALIGN_4 " __attribute__((aligned(4))) "
-+#else
-+#define FORCE_ALIGN_4 " "
-+#endif
-+
- fprintf(file_dna, "extern const unsigned char DNAstr[];\n");
-- fprintf(file_dna, "const unsigned char DNAstr[] = {\n");
-+ fprintf(file_dna, "const unsigned char " FORCE_ALIGN_4 "DNAstr[] =
{\n");
- if (make_structDNA(base_directory, file_dna, file_dna_offsets, file_dna_verify))
{
- /* error */
- fclose(file_dna);
---
-2.33.1
-
diff --git a/blender-usd-21_11-fix-D14184.diff b/blender-usd-21_11-fix-D14184.diff
deleted file mode 100644
index dfd67fe..0000000
--- a/blender-usd-21_11-fix-D14184.diff
+++ /dev/null
@@ -1,274 +0,0 @@
-diff --git a/source/blender/io/usd/intern/usd_reader_light.cc
b/source/blender/io/usd/intern/usd_reader_light.cc
---- a/source/blender/io/usd/intern/usd_reader_light.cc
-+++ b/source/blender/io/usd/intern/usd_reader_light.cc
-@@ -9,8 +9,6 @@
- #include "DNA_light_types.h"
- #include "DNA_object_types.h"
-
--#include <pxr/usd/usdLux/light.h>
--
- #include <pxr/usd/usdLux/diskLight.h>
- #include <pxr/usd/usdLux/distantLight.h>
- #include <pxr/usd/usdLux/rectLight.h>
-@@ -40,14 +38,17 @@
- if (!prim_) {
- return;
- }
-+#if PXR_VERSION >= 2111
-+ pxr::UsdLuxLightAPI light_api(prim_);
-+#else
-+ pxr::UsdLuxLight light_api(prim_);
-+#endif
-
-- pxr::UsdLuxLight light_prim(prim_);
--
-- if (!light_prim) {
-+ if (!light_api) {
- return;
- }
-
-- pxr::UsdLuxShapingAPI shaping_api(light_prim);
-+ pxr::UsdLuxShapingAPI shaping_api;
-
- /* Set light type. */
-
-@@ -63,6 +64,8 @@
- else if (prim_.IsA<pxr::UsdLuxSphereLight>()) {
- blight->type = LA_LOCAL;
-
-+ shaping_api = pxr::UsdLuxShapingAPI(prim_);
-+
- if (shaping_api && shaping_api.GetShapingConeAngleAttr().IsAuthored()) {
- blight->type = LA_SPOT;
- }
-@@ -73,7 +76,7 @@
-
- /* Set light values. */
-
-- if (pxr::UsdAttribute intensity_attr = light_prim.GetIntensityAttr()) {
-+ if (pxr::UsdAttribute intensity_attr = light_api.GetIntensityAttr()) {
- float intensity = 0.0f;
- if (intensity_attr.Get(&intensity, motionSampleTime)) {
- blight->energy = intensity * this->import_params_.light_intensity_scale;
-@@ -92,14 +95,14 @@
- light_prim.GetDiffuseAttr().Get(&diffuse, motionSampleTime);
- #endif
-
-- if (pxr::UsdAttribute spec_attr = light_prim.GetSpecularAttr()) {
-+ if (pxr::UsdAttribute spec_attr = light_api.GetSpecularAttr()) {
- float spec = 0.0f;
- if (spec_attr.Get(&spec, motionSampleTime)) {
- blight->spec_fac = spec;
- }
- }
-
-- if (pxr::UsdAttribute color_attr = light_prim.GetColorAttr()) {
-+ if (pxr::UsdAttribute color_attr = light_api.GetColorAttr()) {
- pxr::GfVec3f color;
- if (color_attr.Get(&color, motionSampleTime)) {
- blight->r = color[0];
-diff --git a/source/blender/io/usd/intern/usd_reader_stage.cc
b/source/blender/io/usd/intern/usd_reader_stage.cc
---- a/source/blender/io/usd/intern/usd_reader_stage.cc
-+++ b/source/blender/io/usd/intern/usd_reader_stage.cc
-@@ -18,7 +18,13 @@
- #include <pxr/usd/usdGeom/nurbsCurves.h>
- #include <pxr/usd/usdGeom/scope.h>
- #include <pxr/usd/usdGeom/xform.h>
--#include <pxr/usd/usdLux/light.h>
-+
-+#if PXR_VERSION >= 2111
-+# include <pxr/usd/usdLux/boundableLightBase.h>
-+# include <pxr/usd/usdLux/nonboundableLightBase.h>
-+#else
-+# include <pxr/usd/usdLux/light.h>
-+#endif
-
- #include <iostream>
-
-@@ -55,7 +61,12 @@
- if (params_.import_meshes && prim.IsA<pxr::UsdGeomMesh>()) {
- return new USDMeshReader(prim, params_, settings_);
- }
-+#if PXR_VERSION >= 2111
-+ if (params_.import_lights && (prim.IsA<pxr::UsdLuxBoundableLightBase>()
||
-+ prim.IsA<pxr::UsdLuxNonboundableLightBase>())) {
-+#else
- if (params_.import_lights && prim.IsA<pxr::UsdLuxLight>()) {
-+#endif
- return new USDLightReader(prim, params_, settings_);
- }
- if (params_.import_volumes && prim.IsA<pxr::UsdVolVolume>()) {
-@@ -82,7 +93,11 @@
- if (prim.IsA<pxr::UsdGeomMesh>()) {
- return new USDMeshReader(prim, params_, settings_);
- }
-+#if PXR_VERSION >= 2111
-+ if (prim.IsA<pxr::UsdLuxBoundableLightBase>() ||
prim.IsA<pxr::UsdLuxNonboundableLightBase>()) {
-+#else
- if (prim.IsA<pxr::UsdLuxLight>()) {
-+#endif
- return new USDLightReader(prim, params_, settings_);
- }
- if (prim.IsA<pxr::UsdVolVolume>()) {
-diff --git a/source/blender/io/usd/intern/usd_reader_xform.cc
b/source/blender/io/usd/intern/usd_reader_xform.cc
---- a/source/blender/io/usd/intern/usd_reader_xform.cc
-+++ b/source/blender/io/usd/intern/usd_reader_xform.cc
-@@ -131,7 +131,7 @@
- return false;
- }
-
-- if (prim_.IsInMaster()) {
-+ if (prim_.IsInPrototype()) {
- /* We don't consider prototypes to be root prims,
- * because we never want to apply global scaling
- * or rotations to the prototypes themselves. */
-diff --git a/source/blender/io/usd/intern/usd_writer_light.cc
b/source/blender/io/usd/intern/usd_writer_light.cc
---- a/source/blender/io/usd/intern/usd_writer_light.cc
-+++ b/source/blender/io/usd/intern/usd_writer_light.cc
-@@ -33,7 +33,12 @@
- pxr::UsdTimeCode timecode = get_export_time_code();
-
- Light *light = static_cast<Light *>(context.object->data);
-- pxr::UsdLuxLight usd_light;
-+#if PXR_VERSION >= 2111
-+ pxr::UsdLuxLightAPI usd_light_api;
-+#else
-+ pxr::UsdLuxLight usd_light_api;
-+
-+#endif
-
- switch (light->type) {
- case LA_AREA:
-@@ -42,21 +47,33 @@
- case LA_AREA_ELLIPSE: { /* An ellipse light will deteriorate into a disk light.
*/
- pxr::UsdLuxDiskLight disk_light = pxr::UsdLuxDiskLight::Define(stage,
usd_path);
- disk_light.CreateRadiusAttr().Set(light->area_size, timecode);
-- usd_light = disk_light;
-+#if PXR_VERSION >= 2111
-+ usd_light_api = disk_light.LightAPI();
-+#else
-+ usd_light_api = disk_light;
-+#endif
- break;
- }
- case LA_AREA_RECT: {
- pxr::UsdLuxRectLight rect_light = pxr::UsdLuxRectLight::Define(stage,
usd_path);
- rect_light.CreateWidthAttr().Set(light->area_size, timecode);
- rect_light.CreateHeightAttr().Set(light->area_sizey, timecode);
-- usd_light = rect_light;
-+#if PXR_VERSION >= 2111
-+ usd_light_api = rect_light.LightAPI();
-+#else
-+ usd_light_api = rect_light;
-+#endif
- break;
- }
- case LA_AREA_SQUARE: {
- pxr::UsdLuxRectLight rect_light = pxr::UsdLuxRectLight::Define(stage,
usd_path);
- rect_light.CreateWidthAttr().Set(light->area_size, timecode);
- rect_light.CreateHeightAttr().Set(light->area_size, timecode);
-- usd_light = rect_light;
-+#if PXR_VERSION >= 2111
-+ usd_light_api = rect_light.LightAPI();
-+#else
-+ usd_light_api = rect_light;
-+#endif
- break;
- }
- }
-@@ -64,12 +81,23 @@
- case LA_LOCAL: {
- pxr::UsdLuxSphereLight sphere_light = pxr::UsdLuxSphereLight::Define(stage,
usd_path);
- sphere_light.CreateRadiusAttr().Set(light->area_size, timecode);
-- usd_light = sphere_light;
-+#if PXR_VERSION >= 2111
-+ usd_light_api = sphere_light.LightAPI();
-+#else
-+ usd_light_api = sphere_light;
-+#endif
- break;
- }
-- case LA_SUN:
-- usd_light = pxr::UsdLuxDistantLight::Define(stage, usd_path);
-+ case LA_SUN: {
-+ pxr::UsdLuxDistantLight distant_light = pxr::UsdLuxDistantLight::Define(stage,
usd_path);
-+ /* TODO(makowalski): set angle attribute here. */
-+#if PXR_VERSION >= 2111
-+ usd_light_api = distant_light.LightAPI();
-+#else
-+ usd_light_api = distant_light;
-+#endif
- break;
-+ }
- default:
- BLI_assert_msg(0, "is_supported() returned true for unsupported light
type");
- }
-@@ -85,10 +113,10 @@
- else {
- usd_intensity = light->energy / 100.0f;
- }
-- usd_light.CreateIntensityAttr().Set(usd_intensity, timecode);
-+ usd_light_api.CreateIntensityAttr().Set(usd_intensity, timecode);
-
-- usd_light.CreateColorAttr().Set(pxr::GfVec3f(light->r, light->g, light->b),
timecode);
-- usd_light.CreateSpecularAttr().Set(light->spec_fac, timecode);
-+ usd_light_api.CreateColorAttr().Set(pxr::GfVec3f(light->r, light->g,
light->b), timecode);
-+ usd_light_api.CreateSpecularAttr().Set(light->spec_fac, timecode);
- }
-
- } // namespace blender::io::usd
-diff --git a/source/blender/io/usd/intern/usd_writer_material.cc
b/source/blender/io/usd/intern/usd_writer_material.cc
---- a/source/blender/io/usd/intern/usd_writer_material.cc
-+++ b/source/blender/io/usd/intern/usd_writer_material.cc
-@@ -162,7 +162,7 @@
- created_shader = create_usd_preview_shader(usd_export_context, usd_material,
input_node);
-
- preview_surface.CreateInput(input_spec.input_name, input_spec.input_type)
-- .ConnectToSource(created_shader, input_spec.source_name);
-+ .ConnectToSource(created_shader.ConnectableAPI(), input_spec.source_name);
- }
- else if (input_spec.set_default_value) {
- /* Set hardcoded value. */
-@@ -216,7 +216,7 @@
- shader.CreateInput(usdtokens::metallic,
pxr::SdfValueTypeNames->Float).Set(material->metallic);
-
- /* Connect the shader and the material together. */
-- usd_material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface);
-+ usd_material.CreateSurfaceOutput().ConnectToSource(shader.ConnectableAPI(),
usdtokens::surface);
- }
-
- /* Return USD Preview Surface input map singleton. */
-@@ -292,12 +292,12 @@
- uv_shader.CreateInput(usdtokens::varname, pxr::SdfValueTypeNames->Token)
- .Set(pxr::TfToken(uv_set));
- usd_tex_shader.CreateInput(usdtokens::st, pxr::SdfValueTypeNames->Float2)
-- .ConnectToSource(uv_shader, usdtokens::result);
-+ .ConnectToSource(uv_shader.ConnectableAPI(), usdtokens::result);
- }
- else {
- uv_shader.CreateInput(usdtokens::varname,
pxr::SdfValueTypeNames->Token).Set(default_uv);
- usd_tex_shader.CreateInput(usdtokens::st, pxr::SdfValueTypeNames->Float2)
-- .ConnectToSource(uv_shader, usdtokens::result);
-+ .ConnectToSource(uv_shader.ConnectableAPI(), usdtokens::result);
- }
- }
-
-@@ -312,7 +312,7 @@
- if (uv_shader.GetPrim().IsValid()) {
- uv_shader.CreateInput(usdtokens::varname,
pxr::SdfValueTypeNames->Token).Set(default_uv);
- usd_tex_shader.CreateInput(usdtokens::st, pxr::SdfValueTypeNames->Float2)
-- .ConnectToSource(uv_shader, usdtokens::result);
-+ .ConnectToSource(uv_shader.ConnectableAPI(), usdtokens::result);
- }
- }
- }
-@@ -487,7 +487,7 @@
- case SH_NODE_BSDF_DIFFUSE:
- case SH_NODE_BSDF_PRINCIPLED: {
- shader.CreateIdAttr(pxr::VtValue(usdtokens::preview_surface));
-- material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface);
-+ material.CreateSurfaceOutput().ConnectToSource(shader.ConnectableAPI(),
usdtokens::surface);
- break;
- }
-
-
diff --git a/blender-usd-pythonlibs-fix.diff b/blender-usd-pythonlibs-fix.diff
deleted file mode 100644
index 28fd72e..0000000
--- a/blender-usd-pythonlibs-fix.diff
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -ru blender-2.93.3-original/source/blender/io/usd/CMakeLists.txt
blender-2.93.3/source/blender/io/usd/CMakeLists.txt
---- blender-2.93.3-original/source/blender/io/usd/CMakeLists.txt 2021-04-20
19:02:39.000000000 -0700
-+++ blender-2.93.3/source/blender/io/usd/CMakeLists.txt 2021-08-19 22:52:43.578924282
-0700
-@@ -53,6 +53,7 @@
- ${USD_INCLUDE_DIRS}
- ${BOOST_INCLUDE_DIR}
- ${TBB_INCLUDE_DIR}
-+ ${PYTHON_INCLUDE_DIRS}
- )
-
- set(SRC
-@@ -86,6 +87,8 @@
-
- list(APPEND LIB
- ${BOOST_LIBRARIES}
-+ ${PYTHON_LINKFLAGS}
-+ ${PYTHON_LIBRARIES}
- )
-
- list(APPEND LIB
diff --git a/blender-usd-writer-abstract-fix.diff b/blender-usd-writer-abstract-fix.diff
deleted file mode 100644
index 7b36a8f..0000000
--- a/blender-usd-writer-abstract-fix.diff
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -Naur blender-2.93.3.original/source/blender/io/usd/intern/usd_writer_abstract.cc
blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc
----
blender-2.93.3.original/source/blender/io/usd/intern/usd_writer_abstract.cc 2021-04-20
19:02:39.000000000 -0700
-+++ blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc 2021-08-21
18:39:23.531036813 -0700
-@@ -102,7 +102,9 @@
- shader.CreateInput(usdtokens::metallic,
pxr::SdfValueTypeNames->Float).Set(material->metallic);
-
- /* Connect the shader and the material together. */
-- usd_material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface);
-+ usd_material.CreateSurfaceOutput().ConnectToSource(
-+ shader.ConnectableAPI(),
-+ usdtokens::surface);
-
- return usd_material;
- }
diff --git a/blender.spec b/blender.spec
index 8409727..66ac487 100644
--- a/blender.spec
+++ b/blender.spec
@@ -1,4 +1,4 @@
-%global blender_api 3.1
+%global blender_api 3.2
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo
$d)
#/usr/bin/ld.gold: error:
/builddir/build/BUILD/blender-3.0.0/.package_note-blender-3.0.0-3.fc36.x86_64.ld:42:8:
syntax error, unexpected STRING
@@ -37,7 +37,7 @@
Name: blender
Epoch: 1
-Version: 3.1.2
+Version: 3.2.0
Release: %autorelease
@@ -51,13 +51,6 @@ Source1: macros.%{name}
# Include missing pyconfig header for 3.10
Patch1: %{name}-usd-pythonlibs-fix.diff
-# Force makesdna: force DNAstr to be 4 bytes aligned : fixes s390x LTO issue
-Patch2:
%{name}-2.93.5-0001-Fix-T93425-makesdna-force-DNAstr-to-be-4-bytes-align.patch
-
-# USD: Support building against USD 21.11+
-#
https://developer.blender.org/D14184
-Patch3: %{name}-usd-21_11-fix-D14184.diff
-
# Development stuff
BuildRequires: boost-devel
%if %{with clang}
@@ -147,6 +140,7 @@ BuildRequires: pkgconfig(xproto)
BuildRequires: cmake(Alembic)
%if %{with ffmpeg}
BuildRequires: ffmpeg-free-devel
+BuildRequires: libavformat-free-devel
%endif
BuildRequires: lame-devel
BuildRequires: libspnav-devel
diff --git a/sources b/sources
index 3996edd..00ccf7e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (blender-3.1.2.tar.xz) =
e92aefbc020268e7347008e02d7fe2ef8670a568fab0ae2072ee82520ca67645e665e81ec2829b67a4de069ce1c0578bf2f7f4f783929e7574a8c9aef2f82a02
+SHA512 (blender-3.2.0.tar.xz) =
2e9c502fad6bbad7618caad393dfd21d2adc6df0a2de8581cea904cfe3588d783564f2d7ec5600d99d10307a81eb6bb56b31209bf34aae072fbc9a0d8ce54f81
commit a87d7ea0d4f2344b0999d601e46adf3b38275e78
Author: Benjamin A. Beasley <code(a)musicinmybrain.net>
Date: Wed Jun 1 18:13:14 2022 -0400
Rebuild for usd-22.05a
commit 9756eb9ba92f441570a45c3e98f1fb25a63cf4e7
Author: Sandro Mani <manisandro(a)gmail.com>
Date: Sat May 21 00:25:16 2022 +0200
Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0
commit caa1687961e62f8fa2d18a5f4a047e62d100d872
Author: Thomas Rodgers <trodgers(a)redhat.com>
Date: Wed May 4 11:37:45 2022 +0200
Rebuilt for Boost 1.78
commit 860576946f402952b892f26364deae856e5ddb85
Author: Benjamin A. Beasley <code(a)musicinmybrain.net>
Date: Sun Apr 10 07:04:55 2022 -0400
BR usd-devel instead of cmake(pxr)
The usd-devel package no longer Provides cmake(pxr); see RHBZ#2055414.
Blender includes its own CMake scripts for finding and using USD.
diff --git a/blender.spec b/blender.spec
index 1052870..8409727 100644
--- a/blender.spec
+++ b/blender.spec
@@ -139,7 +139,7 @@ BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(ode)
BuildRequires: pkgconfig(sdl2)
%if %{with usd}
-BuildRequires: cmake(pxr)
+BuildRequires: usd-devel
%endif
BuildRequires: pkgconfig(xproto)
commit 89cad97c8fafdcaeed1c3335d7cd0300e6ef897d
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Fri Apr 1 11:43:57 2022 -0700
New upstream release 3.1.2
diff --git a/sources b/sources
index 8b93bcf..3996edd 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (blender-3.1.1.tar.xz) =
88c339540a7b621b1771e1f17ecf7d4c21d86e05b83e395e15cd90b1347a50dda74ebaedd5ca178cabe6981b45244a64110ab855efdf74fe42f5bf45ffe811b1
+SHA512 (blender-3.1.2.tar.xz) =
e92aefbc020268e7347008e02d7fe2ef8670a568fab0ae2072ee82520ca67645e665e81ec2829b67a4de069ce1c0578bf2f7f4f783929e7574a8c9aef2f82a02
commit 5637c61f8c288369f1c1d41c8ef5ad49583425a1
Author: Fedora Release Monitoring <release-monitoring(a)fedoraproject.org>
Date: Fri Apr 1 09:58:26 2022 +0000
Update to 3.1.2 (#2070344)
diff --git a/blender.spec b/blender.spec
index 4ccdf2b..1052870 100644
--- a/blender.spec
+++ b/blender.spec
@@ -37,7 +37,7 @@
Name: blender
Epoch: 1
-Version: 3.1.1
+Version: 3.1.2
Release: %autorelease
commit 42f41252c09c412e5195014fa37f4676b2bdd603
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Thu Mar 31 18:09:56 2022 -0700
Add missing source
diff --git a/sources b/sources
index c1983e7..8b93bcf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (blender-3.1.0.tar.xz) =
354d4e7c92233e610d0e938c10d966aff7ee34fd21993b65b645b4d01e37f90f741206190817a7ab6932c5321d698827a09ec0e1d966c28596d130b4af2ce6bb
+SHA512 (blender-3.1.1.tar.xz) =
88c339540a7b621b1771e1f17ecf7d4c21d86e05b83e395e15cd90b1347a50dda74ebaedd5ca178cabe6981b45244a64110ab855efdf74fe42f5bf45ffe811b1
commit a87bf60fab292a07a5a7b9a281f9fd20fb60475f
Author: Fedora Release Monitoring <release-monitoring(a)fedoraproject.org>
Date: Wed Mar 30 21:27:05 2022 +0000
Update to 3.1.1 (#2070344)
diff --git a/blender.spec b/blender.spec
index 633247a..4ccdf2b 100644
--- a/blender.spec
+++ b/blender.spec
@@ -37,7 +37,7 @@
Name: blender
Epoch: 1
-Version: 3.1.0
+Version: 3.1.1
Release: %autorelease
commit d897fe372a5e99c033593364039c18ea8464411a
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Sun Mar 13 12:56:33 2022 -0700
Rebuild to sync with Fedora 35 version
commit d4ee21cb950c0b7d2f7c72dc5c8b6b15fdbe7d03
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Sun Mar 13 12:55:27 2022 -0700
Rebuild
commit d5c760424780e0197422af1f83c28e2e0308d23e
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Sat Mar 12 13:44:32 2022 -0800
Empty commit
commit 6d373fc21e6591ada9d6903ffb985426f5d916f6
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Sat Mar 12 13:28:17 2022 -0800
Bump release to sync with f35 version
commit aacbd08a5ba0f277bf1ea4bcf561d2c04c6b191c
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Fri Mar 11 21:53:53 2022 -0800
oidn support only for x86_64 arch
diff --git a/blender.spec b/blender.spec
index c3aa9b1..633247a 100644
--- a/blender.spec
+++ b/blender.spec
@@ -21,7 +21,9 @@
%ifarch x86_64 || aarch64
%bcond_without embree
%bcond_without hidapi
+%ifarch x86_64
%bcond_without oidn
+%endif
%bcond_without usd
%else
%bcond_with embree
commit 1d6ff406633b3642fb0874d804bb0d2e2c615aa7
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Fri Mar 11 20:10:22 2022 -0800
Reenable USD support
diff --git a/blender-embree-library.diff b/blender-embree-library.diff
deleted file mode 100644
index 967f64c..0000000
--- a/blender-embree-library.diff
+++ /dev/null
@@ -1,32 +0,0 @@
-diff -ru blender-2.90.0.orig/build_files/cmake/Modules/FindEmbree.cmake
blender-2.90.0/build_files/cmake/Modules/FindEmbree.cmake
---- blender-2.90.0.orig/build_files/cmake/Modules/FindEmbree.cmake 2020-08-31
05:03:18.000000000 -0700
-+++ blender-2.90.0/build_files/cmake/Modules/FindEmbree.cmake 2020-09-04
20:51:57.064441379 -0700
-@@ -79,10 +79,10 @@
- # all listed variables are TRUE
- INCLUDE(FindPackageHandleStandardArgs)
- FIND_PACKAGE_HANDLE_STANDARD_ARGS(Embree DEFAULT_MSG
-- _embree_LIBRARIES EMBREE_INCLUDE_DIR)
-+ EMBREE_LIBRARY EMBREE_INCLUDE_DIR)
-
- IF(EMBREE_FOUND)
-- SET(EMBREE_LIBRARIES ${_embree_LIBRARIES})
-+ SET(EMBREE_LIBRARIES ${EMBREE_LIBRARY})
- SET(EMBREE_INCLUDE_DIRS ${EMBREE_INCLUDE_DIR})
- ENDIF(EMBREE_FOUND)
-
-diff -ru blender-2.90.0.orig/intern/cycles/blender/CMakeLists.txt
blender-2.90.0/intern/cycles/blender/CMakeLists.txt
---- blender-2.90.0.orig/intern/cycles/blender/CMakeLists.txt 2020-08-31
04:59:44.000000000 -0700
-+++ blender-2.90.0/intern/cycles/blender/CMakeLists.txt 2020-09-04 20:40:25.631042062
-0700
-@@ -67,6 +67,12 @@
- )
- endif()
-
-+if(WITH_CYCLES_EMBREE)
-+ list(APPEND LIB
-+ ${EMBREE_LIBRARIES}
-+ )
-+endif()
-+
- set(ADDON_FILES
- addon/__init__.py
- addon/engine.py
diff --git a/blender-usd-21_11-fix-D14184.diff b/blender-usd-21_11-fix-D14184.diff
new file mode 100644
index 0000000..dfd67fe
--- /dev/null
+++ b/blender-usd-21_11-fix-D14184.diff
@@ -0,0 +1,274 @@
+diff --git a/source/blender/io/usd/intern/usd_reader_light.cc
b/source/blender/io/usd/intern/usd_reader_light.cc
+--- a/source/blender/io/usd/intern/usd_reader_light.cc
++++ b/source/blender/io/usd/intern/usd_reader_light.cc
+@@ -9,8 +9,6 @@
+ #include "DNA_light_types.h"
+ #include "DNA_object_types.h"
+
+-#include <pxr/usd/usdLux/light.h>
+-
+ #include <pxr/usd/usdLux/diskLight.h>
+ #include <pxr/usd/usdLux/distantLight.h>
+ #include <pxr/usd/usdLux/rectLight.h>
+@@ -40,14 +38,17 @@
+ if (!prim_) {
+ return;
+ }
++#if PXR_VERSION >= 2111
++ pxr::UsdLuxLightAPI light_api(prim_);
++#else
++ pxr::UsdLuxLight light_api(prim_);
++#endif
+
+- pxr::UsdLuxLight light_prim(prim_);
+-
+- if (!light_prim) {
++ if (!light_api) {
+ return;
+ }
+
+- pxr::UsdLuxShapingAPI shaping_api(light_prim);
++ pxr::UsdLuxShapingAPI shaping_api;
+
+ /* Set light type. */
+
+@@ -63,6 +64,8 @@
+ else if (prim_.IsA<pxr::UsdLuxSphereLight>()) {
+ blight->type = LA_LOCAL;
+
++ shaping_api = pxr::UsdLuxShapingAPI(prim_);
++
+ if (shaping_api && shaping_api.GetShapingConeAngleAttr().IsAuthored()) {
+ blight->type = LA_SPOT;
+ }
+@@ -73,7 +76,7 @@
+
+ /* Set light values. */
+
+- if (pxr::UsdAttribute intensity_attr = light_prim.GetIntensityAttr()) {
++ if (pxr::UsdAttribute intensity_attr = light_api.GetIntensityAttr()) {
+ float intensity = 0.0f;
+ if (intensity_attr.Get(&intensity, motionSampleTime)) {
+ blight->energy = intensity * this->import_params_.light_intensity_scale;
+@@ -92,14 +95,14 @@
+ light_prim.GetDiffuseAttr().Get(&diffuse, motionSampleTime);
+ #endif
+
+- if (pxr::UsdAttribute spec_attr = light_prim.GetSpecularAttr()) {
++ if (pxr::UsdAttribute spec_attr = light_api.GetSpecularAttr()) {
+ float spec = 0.0f;
+ if (spec_attr.Get(&spec, motionSampleTime)) {
+ blight->spec_fac = spec;
+ }
+ }
+
+- if (pxr::UsdAttribute color_attr = light_prim.GetColorAttr()) {
++ if (pxr::UsdAttribute color_attr = light_api.GetColorAttr()) {
+ pxr::GfVec3f color;
+ if (color_attr.Get(&color, motionSampleTime)) {
+ blight->r = color[0];
+diff --git a/source/blender/io/usd/intern/usd_reader_stage.cc
b/source/blender/io/usd/intern/usd_reader_stage.cc
+--- a/source/blender/io/usd/intern/usd_reader_stage.cc
++++ b/source/blender/io/usd/intern/usd_reader_stage.cc
+@@ -18,7 +18,13 @@
+ #include <pxr/usd/usdGeom/nurbsCurves.h>
+ #include <pxr/usd/usdGeom/scope.h>
+ #include <pxr/usd/usdGeom/xform.h>
+-#include <pxr/usd/usdLux/light.h>
++
++#if PXR_VERSION >= 2111
++# include <pxr/usd/usdLux/boundableLightBase.h>
++# include <pxr/usd/usdLux/nonboundableLightBase.h>
++#else
++# include <pxr/usd/usdLux/light.h>
++#endif
+
+ #include <iostream>
+
+@@ -55,7 +61,12 @@
+ if (params_.import_meshes && prim.IsA<pxr::UsdGeomMesh>()) {
+ return new USDMeshReader(prim, params_, settings_);
+ }
++#if PXR_VERSION >= 2111
++ if (params_.import_lights && (prim.IsA<pxr::UsdLuxBoundableLightBase>()
||
++ prim.IsA<pxr::UsdLuxNonboundableLightBase>())) {
++#else
+ if (params_.import_lights && prim.IsA<pxr::UsdLuxLight>()) {
++#endif
+ return new USDLightReader(prim, params_, settings_);
+ }
+ if (params_.import_volumes && prim.IsA<pxr::UsdVolVolume>()) {
+@@ -82,7 +93,11 @@
+ if (prim.IsA<pxr::UsdGeomMesh>()) {
+ return new USDMeshReader(prim, params_, settings_);
+ }
++#if PXR_VERSION >= 2111
++ if (prim.IsA<pxr::UsdLuxBoundableLightBase>() ||
prim.IsA<pxr::UsdLuxNonboundableLightBase>()) {
++#else
+ if (prim.IsA<pxr::UsdLuxLight>()) {
++#endif
+ return new USDLightReader(prim, params_, settings_);
+ }
+ if (prim.IsA<pxr::UsdVolVolume>()) {
+diff --git a/source/blender/io/usd/intern/usd_reader_xform.cc
b/source/blender/io/usd/intern/usd_reader_xform.cc
+--- a/source/blender/io/usd/intern/usd_reader_xform.cc
++++ b/source/blender/io/usd/intern/usd_reader_xform.cc
+@@ -131,7 +131,7 @@
+ return false;
+ }
+
+- if (prim_.IsInMaster()) {
++ if (prim_.IsInPrototype()) {
+ /* We don't consider prototypes to be root prims,
+ * because we never want to apply global scaling
+ * or rotations to the prototypes themselves. */
+diff --git a/source/blender/io/usd/intern/usd_writer_light.cc
b/source/blender/io/usd/intern/usd_writer_light.cc
+--- a/source/blender/io/usd/intern/usd_writer_light.cc
++++ b/source/blender/io/usd/intern/usd_writer_light.cc
+@@ -33,7 +33,12 @@
+ pxr::UsdTimeCode timecode = get_export_time_code();
+
+ Light *light = static_cast<Light *>(context.object->data);
+- pxr::UsdLuxLight usd_light;
++#if PXR_VERSION >= 2111
++ pxr::UsdLuxLightAPI usd_light_api;
++#else
++ pxr::UsdLuxLight usd_light_api;
++
++#endif
+
+ switch (light->type) {
+ case LA_AREA:
+@@ -42,21 +47,33 @@
+ case LA_AREA_ELLIPSE: { /* An ellipse light will deteriorate into a disk light.
*/
+ pxr::UsdLuxDiskLight disk_light = pxr::UsdLuxDiskLight::Define(stage,
usd_path);
+ disk_light.CreateRadiusAttr().Set(light->area_size, timecode);
+- usd_light = disk_light;
++#if PXR_VERSION >= 2111
++ usd_light_api = disk_light.LightAPI();
++#else
++ usd_light_api = disk_light;
++#endif
+ break;
+ }
+ case LA_AREA_RECT: {
+ pxr::UsdLuxRectLight rect_light = pxr::UsdLuxRectLight::Define(stage,
usd_path);
+ rect_light.CreateWidthAttr().Set(light->area_size, timecode);
+ rect_light.CreateHeightAttr().Set(light->area_sizey, timecode);
+- usd_light = rect_light;
++#if PXR_VERSION >= 2111
++ usd_light_api = rect_light.LightAPI();
++#else
++ usd_light_api = rect_light;
++#endif
+ break;
+ }
+ case LA_AREA_SQUARE: {
+ pxr::UsdLuxRectLight rect_light = pxr::UsdLuxRectLight::Define(stage,
usd_path);
+ rect_light.CreateWidthAttr().Set(light->area_size, timecode);
+ rect_light.CreateHeightAttr().Set(light->area_size, timecode);
+- usd_light = rect_light;
++#if PXR_VERSION >= 2111
++ usd_light_api = rect_light.LightAPI();
++#else
++ usd_light_api = rect_light;
++#endif
+ break;
+ }
+ }
+@@ -64,12 +81,23 @@
+ case LA_LOCAL: {
+ pxr::UsdLuxSphereLight sphere_light = pxr::UsdLuxSphereLight::Define(stage,
usd_path);
+ sphere_light.CreateRadiusAttr().Set(light->area_size, timecode);
+- usd_light = sphere_light;
++#if PXR_VERSION >= 2111
++ usd_light_api = sphere_light.LightAPI();
++#else
++ usd_light_api = sphere_light;
++#endif
+ break;
+ }
+- case LA_SUN:
+- usd_light = pxr::UsdLuxDistantLight::Define(stage, usd_path);
++ case LA_SUN: {
++ pxr::UsdLuxDistantLight distant_light = pxr::UsdLuxDistantLight::Define(stage,
usd_path);
++ /* TODO(makowalski): set angle attribute here. */
++#if PXR_VERSION >= 2111
++ usd_light_api = distant_light.LightAPI();
++#else
++ usd_light_api = distant_light;
++#endif
+ break;
++ }
+ default:
+ BLI_assert_msg(0, "is_supported() returned true for unsupported light
type");
+ }
+@@ -85,10 +113,10 @@
+ else {
+ usd_intensity = light->energy / 100.0f;
+ }
+- usd_light.CreateIntensityAttr().Set(usd_intensity, timecode);
++ usd_light_api.CreateIntensityAttr().Set(usd_intensity, timecode);
+
+- usd_light.CreateColorAttr().Set(pxr::GfVec3f(light->r, light->g, light->b),
timecode);
+- usd_light.CreateSpecularAttr().Set(light->spec_fac, timecode);
++ usd_light_api.CreateColorAttr().Set(pxr::GfVec3f(light->r, light->g,
light->b), timecode);
++ usd_light_api.CreateSpecularAttr().Set(light->spec_fac, timecode);
+ }
+
+ } // namespace blender::io::usd
+diff --git a/source/blender/io/usd/intern/usd_writer_material.cc
b/source/blender/io/usd/intern/usd_writer_material.cc
+--- a/source/blender/io/usd/intern/usd_writer_material.cc
++++ b/source/blender/io/usd/intern/usd_writer_material.cc
+@@ -162,7 +162,7 @@
+ created_shader = create_usd_preview_shader(usd_export_context, usd_material,
input_node);
+
+ preview_surface.CreateInput(input_spec.input_name, input_spec.input_type)
+- .ConnectToSource(created_shader, input_spec.source_name);
++ .ConnectToSource(created_shader.ConnectableAPI(), input_spec.source_name);
+ }
+ else if (input_spec.set_default_value) {
+ /* Set hardcoded value. */
+@@ -216,7 +216,7 @@
+ shader.CreateInput(usdtokens::metallic,
pxr::SdfValueTypeNames->Float).Set(material->metallic);
+
+ /* Connect the shader and the material together. */
+- usd_material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface);
++ usd_material.CreateSurfaceOutput().ConnectToSource(shader.ConnectableAPI(),
usdtokens::surface);
+ }
+
+ /* Return USD Preview Surface input map singleton. */
+@@ -292,12 +292,12 @@
+ uv_shader.CreateInput(usdtokens::varname, pxr::SdfValueTypeNames->Token)
+ .Set(pxr::TfToken(uv_set));
+ usd_tex_shader.CreateInput(usdtokens::st, pxr::SdfValueTypeNames->Float2)
+- .ConnectToSource(uv_shader, usdtokens::result);
++ .ConnectToSource(uv_shader.ConnectableAPI(), usdtokens::result);
+ }
+ else {
+ uv_shader.CreateInput(usdtokens::varname,
pxr::SdfValueTypeNames->Token).Set(default_uv);
+ usd_tex_shader.CreateInput(usdtokens::st, pxr::SdfValueTypeNames->Float2)
+- .ConnectToSource(uv_shader, usdtokens::result);
++ .ConnectToSource(uv_shader.ConnectableAPI(), usdtokens::result);
+ }
+ }
+
+@@ -312,7 +312,7 @@
+ if (uv_shader.GetPrim().IsValid()) {
+ uv_shader.CreateInput(usdtokens::varname,
pxr::SdfValueTypeNames->Token).Set(default_uv);
+ usd_tex_shader.CreateInput(usdtokens::st, pxr::SdfValueTypeNames->Float2)
+- .ConnectToSource(uv_shader, usdtokens::result);
++ .ConnectToSource(uv_shader.ConnectableAPI(), usdtokens::result);
+ }
+ }
+ }
+@@ -487,7 +487,7 @@
+ case SH_NODE_BSDF_DIFFUSE:
+ case SH_NODE_BSDF_PRINCIPLED: {
+ shader.CreateIdAttr(pxr::VtValue(usdtokens::preview_surface));
+- material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface);
++ material.CreateSurfaceOutput().ConnectToSource(shader.ConnectableAPI(),
usdtokens::surface);
+ break;
+ }
+
+
diff --git a/blender.spec b/blender.spec
index 489db60..c3aa9b1 100644
--- a/blender.spec
+++ b/blender.spec
@@ -17,16 +17,12 @@
%ifarch x86_64 || aarch64 || ppc64le
%global cyclesflag ON
-# Availabel for x86_64 and aarch64
-# Temporairly disable support
-#%%ifarch x86_64 || aarch64
-#%%bcond_with usd
-#%%endif
-# Only available on x86_64
-%ifarch x86_64
+# Only available on x86_64 and aarch64
+%ifarch x86_64 || aarch64
%bcond_without embree
%bcond_without hidapi
%bcond_without oidn
+%bcond_without usd
%else
%bcond_with embree
%bcond_with hidapi
@@ -56,6 +52,10 @@ Patch1: %{name}-usd-pythonlibs-fix.diff
# Force makesdna: force DNAstr to be 4 bytes aligned : fixes s390x LTO issue
Patch2:
%{name}-2.93.5-0001-Fix-T93425-makesdna-force-DNAstr-to-be-4-bytes-align.patch
+# USD: Support building against USD 21.11+
+#
https://developer.blender.org/D14184
+Patch3: %{name}-usd-21_11-fix-D14184.diff
+
# Development stuff
BuildRequires: boost-devel
%if %{with clang}
@@ -137,7 +137,7 @@ BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(ode)
BuildRequires: pkgconfig(sdl2)
%if %{with usd}
-BuildRequires: usd-devel
+BuildRequires: cmake(pxr)
%endif
BuildRequires: pkgconfig(xproto)
@@ -285,7 +285,7 @@ sed -i "s/date_time/date_time
python%{python3_version_nodots}/" \
-DWITH_SYSTEM_GLEW=ON \
%if %{with usd}
-DWITH_USD=ON \
- -DUSD_LIBRARY=%{_libdir} \
+ -DUSD_LIBRARY=%{_libdir}/libusd_usd_ms.so \
%else
-DWITH_USD=OFF \
%endif
commit 8203f38945a9ad4f0b1f50728972872d595d9ead
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Wed Mar 9 23:25:08 2022 -0800
Update to blender 3.1.0
Dropped some no longer needed patches
Signed-off-by: Luya Tshimbalanga <luya(a)fedoraproject.org>
diff --git a/blender-oiio-2.3.patch b/blender-oiio-2.3.patch
deleted file mode 100644
index 87175b7..0000000
--- a/blender-oiio-2.3.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Index: blender-2.93.4/build_files/cmake/Modules/FindOpenImageIO.cmake
-===================================================================
---- blender-2.93.4.orig/build_files/cmake/Modules/FindOpenImageIO.cmake
-+++ blender-2.93.4/build_files/cmake/Modules/FindOpenImageIO.cmake
-@@ -48,6 +48,15 @@ FIND_LIBRARY(OPENIMAGEIO_LIBRARY
- lib64 lib
- )
-
-+FIND_LIBRARY(OPENIMAGEIO_UTIL_LIBRARY
-+ NAMES
-+ OpenImageIO_Util
-+ HINTS
-+ ${_openimageio_SEARCH_DIRS}
-+ PATH_SUFFIXES
-+ lib64 lib
-+ )
-+
- FIND_FILE(OPENIMAGEIO_IDIFF
- NAMES
- idiff
-@@ -64,7 +73,7 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenIm
- OPENIMAGEIO_LIBRARY OPENIMAGEIO_INCLUDE_DIR)
-
- IF(OPENIMAGEIO_FOUND)
-- SET(OPENIMAGEIO_LIBRARIES ${OPENIMAGEIO_LIBRARY})
-+ SET(OPENIMAGEIO_LIBRARIES ${OPENIMAGEIO_LIBRARY} ${OPENIMAGEIO_UTIL_LIBRARY})
- SET(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO_INCLUDE_DIR})
- IF(EXISTS ${OPENIMAGEIO_INCLUDE_DIR}/OpenImageIO/pugixml.hpp)
- SET(OPENIMAGEIO_PUGIXML_FOUND TRUE)
diff --git a/blender-openexr.patch b/blender-openexr.patch
deleted file mode 100644
index 56aef7e..0000000
--- a/blender-openexr.patch
+++ /dev/null
@@ -1,192 +0,0 @@
-Index: blender-2.93.3/source/blender/imbuf/intern/openexr/openexr_api.cpp
-===================================================================
---- blender-2.93.3.orig/source/blender/imbuf/intern/openexr/openexr_api.cpp
-+++ blender-2.93.3/source/blender/imbuf/intern/openexr/openexr_api.cpp
-@@ -32,30 +32,31 @@
- #include <stdexcept>
- #include <string>
-
--#include <Iex.h>
-+#include <OpenEXR/Iex.h>
- #include <ImathBox.h>
--#include <ImfArray.h>
--#include <ImfChannelList.h>
--#include <ImfCompression.h>
--#include <ImfCompressionAttribute.h>
--#include <ImfIO.h>
--#include <ImfInputFile.h>
--#include <ImfOutputFile.h>
--#include <ImfPixelType.h>
--#include <ImfStandardAttributes.h>
--#include <ImfStringAttribute.h>
--#include <ImfVersion.h>
--#include <half.h>
-+#include <OpenEXR/ImfArray.h>
-+#include <OpenEXR/ImfFrameBuffer.h>
-+#include <OpenEXR/ImfChannelList.h>
-+#include <OpenEXR/ImfCompression.h>
-+#include <OpenEXR/ImfCompressionAttribute.h>
-+#include <OpenEXR/ImfIO.h>
-+#include <OpenEXR/ImfInputFile.h>
-+#include <OpenEXR/ImfOutputFile.h>
-+#include <OpenEXR/ImfPixelType.h>
-+#include <OpenEXR/ImfStandardAttributes.h>
-+#include <OpenEXR/ImfStringAttribute.h>
-+#include <OpenEXR/ImfVersion.h>
-+#include <Imath/half.h>
-
- /* multiview/multipart */
--#include <ImfInputPart.h>
--#include <ImfMultiPartInputFile.h>
--#include <ImfMultiPartOutputFile.h>
--#include <ImfMultiView.h>
--#include <ImfOutputPart.h>
--#include <ImfPartHelper.h>
--#include <ImfPartType.h>
--#include <ImfTiledOutputPart.h>
-+#include <OpenEXR/ImfInputPart.h>
-+#include <OpenEXR/ImfMultiPartInputFile.h>
-+#include <OpenEXR/ImfMultiPartOutputFile.h>
-+#include <OpenEXR/ImfMultiView.h>
-+#include <OpenEXR/ImfOutputPart.h>
-+#include <OpenEXR/ImfPartHelper.h>
-+#include <OpenEXR/ImfPartType.h>
-+#include <OpenEXR/ImfTiledOutputPart.h>
-
- #include "DNA_scene_types.h" /* For OpenEXR compression constants */
-
-@@ -131,12 +132,12 @@ class IMemStream : public Imf::IStream {
- return false;
- }
-
-- Int64 tellg() override
-+ uint64_t tellg() override
- {
- return _exrpos;
- }
-
-- void seekg(Int64 pos) override
-+ void seekg(uint64_t pos) override
- {
- _exrpos = pos;
- }
-@@ -146,8 +147,8 @@ class IMemStream : public Imf::IStream {
- }
-
- private:
-- Int64 _exrpos;
-- Int64 _exrsize;
-+ uint64_t _exrpos;
-+ uint64_t _exrsize;
- unsigned char *_exrbuf;
- };
-
-@@ -182,12 +183,12 @@ class IFileStream : public Imf::IStream
- return check_error();
- }
-
-- Int64 tellg() override
-+ uint64_t tellg() override
- {
- return std::streamoff(ifs.tellg());
- }
-
-- void seekg(Int64 pos) override
-+ void seekg(uint64_t pos) override
- {
- ifs.seekg(pos);
- check_error();
-@@ -231,19 +232,19 @@ class OMemStream : public OStream {
- ibuf->encodedsize += n;
- }
-
-- Int64 tellp() override
-+ uint64_t tellp() override
- {
- return offset;
- }
-
-- void seekp(Int64 pos) override
-+ void seekp(uint64_t pos) override
- {
- offset = pos;
- ensure_size(offset);
- }
-
- private:
-- void ensure_size(Int64 size)
-+ void ensure_size(uint64_t size)
- {
- /* if buffer is too small increase it. */
- while (size > ibuf->encodedbuffersize) {
-@@ -254,7 +255,7 @@ class OMemStream : public OStream {
- }
-
- ImBuf *ibuf;
-- Int64 offset;
-+ uint64_t offset;
- };
-
- /* File Output Stream */
-@@ -284,12 +285,12 @@ class OFileStream : public OStream {
- check_error();
- }
-
-- Int64 tellp() override
-+ uint64_t tellp() override
- {
- return std::streamoff(ofs.tellp());
- }
-
-- void seekp(Int64 pos) override
-+ void seekp(uint64_t pos) override
- {
- ofs.seekp(pos);
- check_error();
-Index: blender-2.93.3/build_files/cmake/Modules/FindOpenEXR.cmake
-===================================================================
---- blender-2.93.3.orig/build_files/cmake/Modules/FindOpenEXR.cmake
-+++ blender-2.93.3/build_files/cmake/Modules/FindOpenEXR.cmake
-@@ -25,6 +25,7 @@
- # see accompanying file BSD-3-Clause-license.txt for details.
- #=============================================================================
-
-+
- # If OPENEXR_ROOT_DIR was defined in the environment, use it.
- IF(NOT OPENEXR_ROOT_DIR AND NOT $ENV{OPENEXR_ROOT_DIR} STREQUAL "")
- SET(OPENEXR_ROOT_DIR $ENV{OPENEXR_ROOT_DIR})
-@@ -33,6 +34,16 @@ ENDIF()
- # Old versions (before 2.0?) do not have any version string, just assuming this should
be fine though.
- SET(_openexr_libs_ver_init "2.0")
-
-+find_package(Imath CONFIG QUIET)
-+if(TARGET Imath::Imath)
-+SET(_openexr_FIND_COMPONENTS
-+ Imath
-+ Iex
-+ OpenEXR
-+ IlmThread
-+)
-+
-+else()
- SET(_openexr_FIND_COMPONENTS
- Half
- Iex
-@@ -40,6 +51,7 @@ SET(_openexr_FIND_COMPONENTS
- IlmThread
- Imath
- )
-+endif()
-
- SET(_openexr_SEARCH_DIRS
- ${OPENEXR_ROOT_DIR}
-@@ -121,6 +133,9 @@ IF(OPENEXR_FOUND)
- SET(OPENEXR_LIBRARIES ${_openexr_LIBRARIES})
- # Both include paths are needed because of dummy OSL headers mixing #include
<OpenEXR/foo.h> and #include <foo.h> :(
- SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR)
-+ if(TARGET Imath::Imath)
-+ list(APPEND OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR}/Imath)
-+ endif()
- ENDIF()
-
- MARK_AS_ADVANCED(
diff --git a/blender.spec b/blender.spec
index c4ac4a6..489db60 100644
--- a/blender.spec
+++ b/blender.spec
@@ -1,4 +1,4 @@
-%global blender_api 3.0
+%global blender_api 3.1
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo
$d)
#/usr/bin/ld.gold: error:
/builddir/build/BUILD/blender-3.0.0/.package_note-blender-3.0.0-3.fc36.x86_64.ld:42:8:
syntax error, unexpected STRING
@@ -19,9 +19,9 @@
%global cyclesflag ON
# Availabel for x86_64 and aarch64
# Temporairly disable support
-%ifarch x86_64 || aarch64
-%bcond_with usd
-%endif
+#%%ifarch x86_64 || aarch64
+#%%bcond_with usd
+#%%endif
# Only available on x86_64
%ifarch x86_64
%bcond_without embree
@@ -39,7 +39,7 @@
Name: blender
Epoch: 1
-Version: 3.0.1
+Version: 3.1.0
Release: %autorelease
@@ -50,23 +50,11 @@ URL:
http://www.blender.org
Source0:
http://download.%{name}.org/source/%{name}-%{version}.tar.xz
Source1: macros.%{name}
-# One-way minimal patch for OpenEXR/Imath 3.
-%if 0%{?fedora} > 34
-Patch0: blender-openexr.patch
-%endif
-
# Include missing pyconfig header for 3.10
Patch1: %{name}-usd-pythonlibs-fix.diff
-# Fix USD build
-#
https://developer.blender.org/T90842
-Patch2: %{name}-usd-writer-abstract-fix.diff
-
-# Patch for build with OIIO 2.3+
-Patch3: %{name}-oiio-2.3.patch
-#
https://developer.blender.org/T93425
# Force makesdna: force DNAstr to be 4 bytes aligned : fixes s390x LTO issue
-Patch4:
%{name}-2.93.5-0001-Fix-T93425-makesdna-force-DNAstr-to-be-4-bytes-align.patch
+Patch2:
%{name}-2.93.5-0001-Fix-T93425-makesdna-force-DNAstr-to-be-4-bytes-align.patch
# Development stuff
BuildRequires: boost-devel
@@ -156,7 +144,7 @@ BuildRequires: pkgconfig(xproto)
# Picture/Video stuff
BuildRequires: cmake(Alembic)
%if %{with ffmpeg}
-BuildRequires: ffmpeg-devel
+BuildRequires: ffmpeg-free-devel
%endif
BuildRequires: lame-devel
BuildRequires: libspnav-devel
@@ -258,6 +246,7 @@ sed -i "s/date_time/date_time
python%{python3_version_nodots}/" \
%cmake \
%if %{with ffmpeg}
-DWITH_CODEC_FFMPEG=ON \
+ -D_ffmpeg_INCLUDE_DIR=%{_includedir} \
%else
-DWITH_CODEC_FFMPEG=OFF \
%endif
diff --git a/sources b/sources
index 5aaf62e..c1983e7 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (blender-3.0.1.tar.xz) =
b9af6d49201eb26ec77a3cecdb9c0945ffc915d4eecaaa36091365340244bfd1565a7679c8b7a81d3335383f158dc01339ea8edc108730835d81db1de84049bf
+SHA512 (blender-3.1.0.tar.xz) =
354d4e7c92233e610d0e938c10d966aff7ee34fd21993b65b645b4d01e37f90f741206190817a7ab6932c5321d698827a09ec0e1d966c28596d130b4af2ce6bb
commit e87fac9a75b05a882274ca4fad066f5881506a13
Author: Luya Tshimbalanga <luya(a)fedoraproject.org>
Date: Mon Feb 28 08:58:40 2022 -0800
Bump release