guix/gnu/packages/patches/blender-2.79-gcc9.patch
Mark H Weaver 96a655a77b
gnu: Add blender@2.79b.
Restore blender@2.79b, the last version that does not require OpenGL 3,
and therefore the last version to work on many older computers.  Note
that this commit relies on blender-2.79-newer-ffmpeg.patch and
blender-2.79-python-3.7-fix.patch, which were left in the tree when
blender@2.79b was previously removed in commit
1f14453eed.

* gnu/packages/patches/blender-2.79-gcc8.patch,
gnu/packages/patches/blender-2.79-gcc9.patch,
gnu/packages/patches/blender-2.79-oiio2.patch,
gnu/packages/patches/blender-2.79-python-3.8-fix.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/graphics.scm (blender-2.79): New variable.
2020-07-31 13:38:47 -04:00

54 lines
2.3 KiB
Diff

commit e6d803fd4a383cecf8c643095f093a31c944b785
Author: Robert-André Mauchin <zebob.m@gmail.com>
Date: Wed Apr 3 01:36:52 2019 +0200
Fix for GCC9 new OpenMP data sharing
GCC 9 started implementing the OpenMP 4.0 and later behavior. When not using
default clause or when using default(shared), this makes no difference, but
if using default(none), previously the choice was not specify the const
qualified variables on the construct at all, or specify in firstprivate
clause. In GCC 9 as well as for OpenMP 4.0 compliance, those variables need
to be specified on constructs in which they are used, either in shared or
in firstprivate clause. Specifying them in firstprivate clause is one way to
achieve compatibility with both older GCC versions and GCC 9,
another option is to drop the default(none) clause.
This patch thus drops the default(none) clause.
See https://gcc.gnu.org/gcc-9/porting_to.html#ompdatasharing
Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
diff --git a/intern/elbeem/intern/solver_main.cpp b/intern/elbeem/intern/solver_main.cpp
index 68f7c04cd54..514087b6130 100644
--- a/intern/elbeem/intern/solver_main.cpp
+++ b/intern/elbeem/intern/solver_main.cpp
@@ -381,7 +381,7 @@ LbmFsgrSolver::mainLoop(const int lev)
GRID_REGION_INIT();
#if PARALLEL==1
const int gDebugLevel = ::gDebugLevel;
-#pragma omp parallel default(none) num_threads(mNumOMPThreads) \
+#pragma omp parallel num_threads(mNumOMPThreads) \
reduction(+: \
calcCurrentMass,calcCurrentVolume, \
calcCellsFilled,calcCellsEmptied, \
@@ -1126,7 +1126,7 @@ LbmFsgrSolver::preinitGrids()
GRID_REGION_INIT();
#if PARALLEL==1
const int gDebugLevel = ::gDebugLevel;
-#pragma omp parallel default(none) num_threads(mNumOMPThreads) \
+#pragma omp parallel num_threads(mNumOMPThreads) \
reduction(+: \
calcCurrentMass,calcCurrentVolume, \
calcCellsFilled,calcCellsEmptied, \
@@ -1164,7 +1164,7 @@ LbmFsgrSolver::standingFluidPreinit()
GRID_REGION_INIT();
#if PARALLEL==1
const int gDebugLevel = ::gDebugLevel;
-#pragma omp parallel default(none) num_threads(mNumOMPThreads) \
+#pragma omp parallel num_threads(mNumOMPThreads) \
reduction(+: \
calcCurrentMass,calcCurrentVolume, \
calcCellsFilled,calcCellsEmptied, \