commit:     32822cad445a3b80067723488e8d9fa487dfc03d
Author:     Sv. Lockal <lockalsash <AT> gmail <DOT> com>
AuthorDate: Sun Jan 21 09:47:07 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 21 11:20:41 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32822cad

media-gfx/blender: fix error "string sub-command REGEX, mode REPLACE needs at 
least 6 arguments"

See also: 
https://github.com/blender/blender/commit/ecd307041e4181f721bf5d2248c02ffe980edcba
Closes: https://bugs.gentoo.org/922324

Signed-off-by: Sv. Lockal <lockalsash <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-gfx/blender/blender-4.0.1.ebuild             |  4 +++
 .../files/blender-4.0.1-fix-cflags-cleaner.patch   | 39 ++++++++++++++++++++++
 2 files changed, 43 insertions(+)

diff --git a/media-gfx/blender/blender-4.0.1.ebuild 
b/media-gfx/blender/blender-4.0.1.ebuild
index 389d34b7495b..f25d645c6efb 100644
--- a/media-gfx/blender/blender-4.0.1.ebuild
+++ b/media-gfx/blender/blender-4.0.1.ebuild
@@ -141,6 +141,10 @@ BDEPEND="
        )
 "
 
+PATCHES=(
+       "${FILESDIR}/${PN}-4.0.1-fix-cflags-cleaner.patch"  # to be dropped for 
releases after Dec 8, 2023
+)
+
 blender_check_requirements() {
        [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
 

diff --git a/media-gfx/blender/files/blender-4.0.1-fix-cflags-cleaner.patch 
b/media-gfx/blender/files/blender-4.0.1-fix-cflags-cleaner.patch
new file mode 100644
index 000000000000..d28db84d8c36
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.0.1-fix-cflags-cleaner.patch
@@ -0,0 +1,39 @@
+Fix CMake Error: string sub-command REGEX, mode REPLACE needs at least 6 
arguments total to command.
+https://bugs.gentoo.org/922324
+https://github.com/blender/blender/commit/ecd307041e4181f721bf5d2248c02ffe980edcba
+--- a/build_files/cmake/macros.cmake
++++ b/build_files/cmake/macros.cmake
+@@ -750,11 +750,11 @@ macro(remove_c_flag
+   _flag)
+ 
+   foreach(f ${ARGV})
+-    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS ${CMAKE_C_FLAGS})
+-    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})
+-    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_RELEASE 
${CMAKE_C_FLAGS_RELEASE})
+-    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_MINSIZEREL 
${CMAKE_C_FLAGS_MINSIZEREL})
+-    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_RELWITHDEBINFO 
${CMAKE_C_FLAGS_RELWITHDEBINFO})
++    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
++    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
++    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_RELEASE 
"${CMAKE_C_FLAGS_RELEASE}")
++    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_MINSIZEREL 
"${CMAKE_C_FLAGS_MINSIZEREL}")
++    string(REGEX REPLACE ${f} "" CMAKE_C_FLAGS_RELWITHDEBINFO 
"${CMAKE_C_FLAGS_RELWITHDEBINFO}")
+   endforeach()
+   unset(f)
+ endmacro()
+@@ -763,11 +763,11 @@ macro(remove_cxx_flag
+   _flag)
+ 
+   foreach(f ${ARGV})
+-    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
+-    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_DEBUG 
${CMAKE_CXX_FLAGS_DEBUG})
+-    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_RELEASE 
${CMAKE_CXX_FLAGS_RELEASE})
+-    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_MINSIZEREL 
${CMAKE_CXX_FLAGS_MINSIZEREL})
+-    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO 
${CMAKE_CXX_FLAGS_RELWITHDEBINFO})
++    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
++    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_DEBUG 
"${CMAKE_CXX_FLAGS_DEBUG}")
++    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_RELEASE 
"${CMAKE_CXX_FLAGS_RELEASE}")
++    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_MINSIZEREL 
"${CMAKE_CXX_FLAGS_MINSIZEREL}")
++    string(REGEX REPLACE ${f} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO 
"${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
+   endforeach()
+   unset(f)
+ endmacro()
\ No newline at end of file

Reply via email to