fix internal python installation [release 3.1.2-2mamba;Mon Apr 18 2022]

This commit is contained in:
Silvan Calarco 2024-01-05 20:49:38 +01:00
parent 3a7c2b613b
commit 9367b50927
3 changed files with 116 additions and 41 deletions

View File

@ -0,0 +1,15 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 75f5795db68..d50686adfb0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -754,10 +754,6 @@ endif()
set_and_warn_dependency(WITH_PYTHON WITH_CYCLES OFF)
set_and_warn_dependency(WITH_PYTHON WITH_DRACO OFF)
-if(WITH_DRACO AND NOT WITH_PYTHON_INSTALL)
- message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")
- set(WITH_DRACO OFF)
-endif()
# enable boost for cycles, audaspace or i18n
# otherwise if the user disabled

View File

@ -0,0 +1,21 @@
diff --git a/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py b/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py
index e7518ac4..c0d78564 100644
--- a/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py
+++ b/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py
@@ -13,6 +13,7 @@
# limitations under the License.
import os
+import site
import sys
from pathlib import Path
import bpy
@@ -30,7 +31,7 @@ def dll_path() -> Path:
python_lib = Path('{v[0]}.{v[1]}/python/lib'.format(v=bpy.app.version))
python_version = 'python{v[0]}.{v[1]}'.format(v=sys.version_info)
- path = os.environ.get('BLENDER_EXTERN_DRACO_LIBRARY_PATH')
+ path = site.getsitepackages()[0]
if path is None:
path = {
'win32': blender_root / python_lib / 'site-packages',

View File

@ -1,14 +1,14 @@
%define majver %(echo %version | sed "s|[a-z]*$||")
Name: blender
Version: 2.81a
Release: 1mamba
Version: 3.1.2
Release: 2mamba
Summary: 3D modeling, animation, rendering and post-production
Group: Applications/Multimedia
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://www.blender.org/
Source0: http://download.blender.org/source/blender-%{version}.tar.xz
URL: https://www.blender.org/
Source0: https://download.blender.org/source/blender-%{version}.tar.xz
Source1: blender.png
Source2: blender.desktop
Source3: blender-wrapper
@ -17,31 +17,55 @@ Patch1: %{name}-2.48a-ffmpeg.patch
Patch2: %{name}-2.48a-ffmpeg-includes.patch
Patch3: blender-2.68a-freestyle-build.patch
Patch4: blender-2.79a-freetype-link.patch
Patch5: blender-3.1.2-force-draco1.patch
Patch6: blender-3.1.2-force-draco2.patch
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libSDL2-devel
BuildRequires: libX11-devel
BuildRequires: libXfixes-devel
BuildRequires: libXi-devel
BuildRequires: libXrender-devel
BuildRequires: libXxf86vm-devel
BuildRequires: libavcodec-ffmpeg-devel
BuildRequires: libavdevice-ffmpeg-devel
BuildRequires: libavfilter-ffmpeg-devel
BuildRequires: libavformat-ffmpeg-devel
BuildRequires: libavutil-ffmpeg-devel
BuildRequires: libboost-devel
BuildRequires: libexpat-devel
BuildRequires: libfftw-devel
BuildRequires: libfreetype-devel
BuildRequires: libgcc
BuildRequires: libGL-devel
BuildRequires: libglew-devel
BuildRequires: libGLU-devel
BuildRequires: libglvnd-devel
BuildRequires: libgmp-cxx-devel
BuildRequires: libgmp-devel
BuildRequires: libgomp-devel
BuildRequires: libilmbase-devel
BuildRequires: libimath-devel
BuildRequires: libjack-devel
BuildRequires: libjemalloc-devel
BuildRequires: libjpeg-devel
BuildRequires: libopenal-devel
BuildRequires: libopencolorio-devel
BuildRequires: libopenexr-devel
BuildRequires: libopenimageio-devel
BuildRequires: libopenjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libpython3-devel
BuildRequires: libSDL-devel
BuildRequires: libpotrace-devel
BuildRequires: libpulseaudio-devel
BuildRequires: libpython310-devel
BuildRequires: libsndfile-devel
BuildRequires: libspnav-devel
BuildRequires: libstdc++6-devel
BuildRequires: libswresample-ffmpeg-devel
BuildRequires: libswscale-ffmpeg-devel
BuildRequires: libtbb-devel
BuildRequires: libtiff-devel
BuildRequires: libX11-devel
BuildRequires: libXi-devel
BuildRequires: libXxf86vm-devel
BuildRequires: libyaml-cpp-devel
BuildRequires: libz-devel
BuildRequires: libzstd-devel
BuildRequires: pugixml-devel
## AUTOBUILDREQ-END
BuildRequires: bash
BuildRequires: ldconfig
@ -58,20 +82,11 @@ BuildRequires: libsmpeg-devel
BuildRequires: libode-devel
BuildRequires: gettext-devel
BuildRequires: libspnav-devel
BuildRequires: python-numpy-py3
BuildRequires: python3
BuildRequires: libopenexr-devel >= 2.0.1-3mamba
BuildRequires: libilmbase-devel >= 2.0.1-2mamba
BuildRequires: libopencolorio-devel
BuildRequires: tbb-devel
BuildRequires: python-numpy-devel
#BuildRequires: python3
BuildRequires: libembree-devel
#Requires: yafray
%py3_requires
BuildRoot: %{_tmppath}/%{name}-%{version}-root/
# FIXME : (build requirements)
# fmod: http://www.fmod.org/
# quicktime: http://developer.apple.com/quicktime/
# FTGL: http://homepages.paradise.net.nz/henryj/code/#FTGL
#% py3_requires
%description
Blender is the essential software solution you need for 3D, from modeling, animation, rendering and post-production to interactive creation and playback.
@ -85,6 +100,10 @@ Professionals and novices can easily and inexpensively publish stand-alone, secu
#:<< _EOF
#%patch3 -p1
%patch4 -p1
%patch5 -p1 -b .force-draco1
cd release/scripts/addons
%patch6 -p1 -b .force-draco2
cd ../../..
%build
#:<< _EOF
@ -98,11 +117,13 @@ Professionals and novices can easily and inexpensively publish stand-alone, secu
-DFTGL_LIBPATH=%{_libdir} \
-DWITH_FREESTYLE=ON \
-DWITH_SYSTEM_OPENJPEG=ON \
-DPYTHON_VERSION=%{python3_version} \
-DPYTHON_LIBPATH=%{_libdir}
-DWITH_PYTHON_INSTALL=OFF \
-DPYTHON_VERSION=%{python310_version} \
-DPYTHON_LIBPATH=%{_libdir} \
-DPYTHON_LIBRARY=python%{python310_version} \
-DPYTHON_INCLUDE_DIRS=%{python310_inc} \
-DWITH_BULLET=OFF
# -DPYTHON_LIBRARY=python3.6m \
# -DPYTHON_INCLUDE_DIRS=%{_includedir}/python3.6m
export LD_LIBRARY_PATH=`pwd`/lib
%make
@ -111,6 +132,8 @@ export LD_LIBRARY_PATH=`pwd`/lib
[ "%{buildroot}" != "/" ] && rm -rf "%{buildroot}"
%makeinstall -C build
install -Dm755 release/bin/blender-softwaregl %{buildroot}%{_bindir}/blender-softwaregl
install -d %{buildroot}%{_libdir}/blender
cp -a build/lib/* %{buildroot}%{_libdir}/blender/
@ -119,6 +142,17 @@ cat > %{buildroot}%{_sysconfdir}/ld.so.conf.d/blender.conf << _EOF
%{_libdir}/blender
_EOF
# Manually install draco bindings
mv %{buildroot}%{_datadir}/blender/3*/python/lib/python%{python310_version} %{buildroot}%{_libdir}/
rm -rf %{buildroot}%{_datadir}/blender/3*/python
install -D -m644 release/freedesktop/org.blender.Blender.appdata.xml \
%{buildroot}%{_datadir}/metainfo/org.blender.Blender.appdata.xml
## Manually install additional scripts
#cp -r release/scripts/addons_contrib/* \
# %{buildroot}%{_datadir}/blender/3*/scripts/addons_contrib/
# BF_PYTHON=%{python3_inc} \
#scons install \
# BF_BUILDDIR=./rpmbuildir \
@ -144,27 +178,23 @@ _EOF
%clean
[ "%{buildroot}" != "/" ] && rm -rf "%{buildroot}"
%post
/sbin/ldconfig
:
%postun
if [ $? -eq 0 ]; then
/sbin/ldconfig
fi
:
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-, root, root)
%{_sysconfdir}/ld.so.conf.d/blender.conf
%{_bindir}/blender
%{_bindir}/blender-thumbnailer.py
%{_bindir}/blender-softwaregl
%{_bindir}/blender-thumbnailer
%dir %{_libdir}/blender
%{_libdir}/blender/*.so
%{_libdir}/blender/libaudaspace*.a
%{python310_sitearch}/libextern_draco.so
%{_datadir}/applications/blender.desktop
%{_datadir}/metainfo/org.blender.Blender.appdata.xml
%dir %{_datadir}/blender
%{_datadir}/blender/*
%{_datadir}/applications/blender.desktop
%{_datadir}/icons/hicolor/symbolic/apps/*.svg
%{_datadir}/icons/hicolor/scalable/apps/*.svg
%dir %{_datadir}/doc/blender
@ -172,6 +202,15 @@ fi
#%{_mandir}/man1/blender.1.gz
%changelog
* Mon Apr 18 2022 Silvan Calarco <silvan.calarco@mambasoft.it> 3.1.2-2mamba
- fix internal python installation
* Tue Apr 12 2022 Silvan Calarco <silvan.calarco@mambasoft.it> 3.1.2-1mamba
- update to 3.1.2
* Tue Mar 24 2020 Silvan Calarco <silvan.calarco@mambasoft.it> 2.82a-1mamba
- update to 2.82a
* Thu Dec 26 2019 Automatic Build System <autodist@mambasoft.it> 2.81a-1mamba
- automatic version update by autodist