[Bf-blender-cvs] [76aba51a219] master: Build: update centos7 script to run on rocky8

Campbell Barton noreply at git.blender.org
Wed Dec 14 02:33:45 CET 2022


Commit: 76aba51a219560a8796bae171f1e31ebccf072e4
Author: Campbell Barton
Date:   Fri Dec 9 12:55:38 2022 +1100
Branches: master
https://developer.blender.org/rB76aba51a219560a8796bae171f1e31ebccf072e4

Build: update centos7 script to run on rocky8

===================================================================

R064	build_files/build_environment/linux/linux-centos7-setup.sh	build_files/build_environment/linux/linux-rocky8-setup.sh

===================================================================

diff --git a/build_files/build_environment/linux/linux-centos7-setup.sh b/build_files/build_environment/linux/linux-rocky8-setup.sh
similarity index 64%
rename from build_files/build_environment/linux/linux-centos7-setup.sh
rename to build_files/build_environment/linux/linux-rocky8-setup.sh
index e664f530edb..a1696ad5ccc 100644
--- a/build_files/build_environment/linux/linux-centos7-setup.sh
+++ b/build_files/build_environment/linux/linux-rocky8-setup.sh
@@ -11,19 +11,25 @@ if [ `id -u` -ne 0 ]; then
    exit 1
 fi
 
+# Packages `ninja-build` and `meson` are not available unless CBR or PowerTools repositories are enabled.
+# See: https://wiki.rockylinux.org/rocky/repo/#notes-on-unlisted-repositories
+dnf config-manager --set-enabled powertools
+
 # yum-config-manager does not come in the default minimal install,
 # so make sure it is installed and available.
 yum -y update
 yum -y install yum-utils
 
-# Install all the packages needed for a new toolchain.
+# Install all the packages needed for a new tool-chain.
 #
 # NOTE: Keep this separate from the packages install, since otherwise
-# older toolchain will be installed.
+# older tool-chain will be installed.
 yum -y update
-yum -y install epel-release
-yum -y install centos-release-scl
-yum -y install devtoolset-9
+yum -y install scl-utils
+yum -y install scl-utils-build
+
+# Currently this is defined by the VFX platform (CY2023), see: https://vfxplatform.com
+yum -y install gcc-toolset-11
 
 # Install packages needed for Blender's dependencies.
 PACKAGES_FOR_LIBS=(
@@ -47,19 +53,12 @@ PACKAGES_FOR_LIBS=(
     automake
     libtool
 
-    # Meta-build system used by various packages.
-    meson
+    # TODO: why is this needed?
+    patchelf
+
     # Builds generated by meson use Ninja for the actual build.
     ninja-build
 
-    # Required by Blender build option: `WITH_GHOST_X11`.
-    libXrandr-devel
-    libXinerama-devel
-    libXcursor-devel
-    libXi-devel
-    libX11-devel
-    libXt-devel
-
     # Required by Blender build option: `WITH_GHOST_WAYLAND`.
     mesa-libEGL-devel
     # Required by: Blender & `external_opensubdiv` (probably others).
@@ -79,16 +78,18 @@ PACKAGES_FOR_LIBS=(
     # Why are both needed?
     yasm
 
-    # Required by: `meson` (Python based build system).
-    python36
-    # Required by: `mako` (Python module used for building `external_mesa`)
-    python-setuptools
+    # NOTE(@campbellbarton): while `python39` is available, the default Python version is 3.6.
+    # This is used for the `python3-mako` package for e.g.
+    # So use the "default" system Python since it means it's most compatible with other packages.
+
+    # Required by: `mesa`.
+    expat-devel
 
     # Required by: `external_igc` & `external_osl` as a build-time dependency.
     bison
     # Required by: `external_osl` as a build-time dependency.
     flex
-    # TODO: dependencies build without this, consider removal.
+    # Required by: `external_ispc`.
     ncurses-devel
 )
 
@@ -96,35 +97,22 @@ PACKAGES_FOR_LIBS=(
 PACKAGES_FOR_BLENDER=(
     # Required by Blender build option: `WITH_GHOST_WAYLAND`.
     libxkbcommon-devel
+
+    # Required by Blender build option: `WITH_GHOST_X11`.
+    libX11-devel
+    libXcursor-devel
+    libXi-devel
+    libXinerama-devel
+    libXrandr-devel
+    libXt-devel
+    libXxf86vm-devel
 )
 
 yum -y install -y ${PACKAGES_FOR_LIBS[@]} ${PACKAGES_FOR_BLENDER[@]}
 
-# Dependencies for Mesa
-yum -y install expat-devel
-python3 -m pip install mako
-
-# Dependencies for pip (needed for buildbot-worker).
-yum -y install python36-pip python36-devel
+# Dependencies for pip (needed for buildbot-worker), uses Python3.6.
+yum -y install python3 python3-pip python3-devel
 
 # Dependencies for asound.
 yum -y install -y  \
     alsa-lib-devel pulseaudio-libs-devel
-
-alternatives --install /usr/local/bin/cmake cmake /usr/bin/cmake 10  \
-    --slave /usr/local/bin/ctest ctest /usr/bin/ctest  \
-    --slave /usr/local/bin/cpack cpack /usr/bin/cpack  \
-    --slave /usr/local/bin/ccmake ccmake /usr/bin/ccmake  \
-    --family cmake
-
-alternatives --install /usr/local/bin/cmake cmake /usr/bin/cmake3 20  \
-    --slave /usr/local/bin/ctest ctest /usr/bin/ctest3  \
-    --slave /usr/local/bin/cpack cpack /usr/bin/cpack3  \
-    --slave /usr/local/bin/ccmake ccmake /usr/bin/ccmake3  \
-    --family cmake
-
-alternatives --install /usr/local/bin/cmake cmake /usr/bin/cmake3 20  \
-    --slave /usr/local/bin/ctest ctest /usr/bin/ctest3  \
-    --slave /usr/local/bin/cpack cpack /usr/bin/cpack3  \
-    --slave /usr/local/bin/ccmake ccmake /usr/bin/ccmake3  \
-    --family cmake



More information about the Bf-blender-cvs mailing list