From f31f3df019a99ace7f809fd07cfa3dc734457c02 Mon Sep 17 00:00:00 2001
From: Fons Rademakers <Fons.Rademakers@cern.ch>
Date: Fri, 16 Dec 2005 14:26:45 +0000
Subject: [PATCH] Compiling TTreeFormula.cxx with NOOPT on MacOS with gcc 4.0.1
 fixes crash in stress.

git-svn-id: http://root.cern.ch/svn/root/trunk@13728 27541ba8-7e3a-0410-8455-c3a389f83636
---
 Makefile             | 8 +++++---
 treeplayer/Module.mk | 8 ++++++++
 2 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/Makefile b/Makefile
index b2c4cb1ba32..35b84e463a8 100644
--- a/Makefile
+++ b/Makefile
@@ -259,9 +259,11 @@ endif
 ##### gcc version #####
 
 ifneq ($(findstring gnu,$(COMPILER)),)
-GCC_MAJOR    := $(shell $(CXX) -dumpversion 2>&1 | cut -d'.' -f1)
-GCC_MINOR    := $(shell $(CXX) -dumpversion 2>&1 | cut -d'.' -f2)
-GCC_VERS     := gcc-$(GCC_MAJOR).$(GCC_MINOR)
+GCC_MAJOR     := $(shell $(CXX) -dumpversion 2>&1 | cut -d'.' -f1)
+GCC_MINOR     := $(shell $(CXX) -dumpversion 2>&1 | cut -d'.' -f2)
+GCC_PATCH     := $(shell $(CXX) -dumpversion 2>&1 | cut -d'.' -f3)
+GCC_VERS      := gcc-$(GCC_MAJOR).$(GCC_MINOR)
+GCC_VERS_FULL := gcc-$(GCC_MAJOR).$(GCC_MINOR).$(GCC_PATCH)
 endif
 
 ##### f77 options #####
diff --git a/treeplayer/Module.mk b/treeplayer/Module.mk
index 5fa3593c908..e8237708853 100644
--- a/treeplayer/Module.mk
+++ b/treeplayer/Module.mk
@@ -68,3 +68,11 @@ distclean-treeplayer: clean-treeplayer
 		   $(TREEPLAYERLIB)
 
 distclean::     distclean-treeplayer
+
+##### extra rules ######
+ifeq ($(ARCH),macosx)
+ifeq ($(GCC_VERS_FULL),gcc-4.0.1)
+$(TREEPLAYERDIRS)/TTreeFormula.o: $(TREEPLAYERDIRS)/TTreeFormula.cxx
+	$(CXX) $(NOOPT) $(CXXFLAGS) -o $@ -c $<
+endif
+endif
-- 
GitLab