diff --git a/Build/AtlasBuildScripts/build_Gaudi.sh b/Build/AtlasBuildScripts/build_Gaudi.sh
index 20b648d15fe4599274294672eab73bc6f2eaf0b4..c2ad59fe18f8217f38d45fdf95bcbf0a0aab8758 100755
--- a/Build/AtlasBuildScripts/build_Gaudi.sh
+++ b/Build/AtlasBuildScripts/build_Gaudi.sh
@@ -104,6 +104,13 @@ cmake -DCMAKE_BUILD_TYPE:STRING=${BUILDTYPE} -DCTEST_USE_LAUNCHERS:BOOL=TRUE \
 test -f $error_stamp && ((ERROR_COUNT++))
 rm -f $error_stamp
 
+# Trigger xenv to pickle the Gaudi build configuration ahead of the build.
+# Otherwise parallel processes may step on each others' toes. See ATLINFR-3336.
+if [ -f ${BUILDDIR}/config/Gaudi-build.xenv ] && [ -x ${BUILDDIR}/bin/xenv ]; then
+    echo "Triggering the creation of ${BUILDDIR}/config/Gaudi-build.xenvc"
+    ${BUILDDIR}/bin/xenv --xml ${BUILDDIR}/config/Gaudi-build.xenv true
+fi
+
 # Build it:
 error_stamp=`mktemp .tmp.error.XXXXX` ; rm -f $error_stamp
 {