[root] - Adapt makefile to changes in make 3.82

Mattias Ellert ellert at fedoraproject.org
Tue Aug 31 20:14:05 UTC 2010


commit dd8fd6c2c3326c6e979cc1f5efacdb883a2cd760
Author: Mattias Ellert <mattias.ellert at fysast.uu.se>
Date:   Tue Aug 31 22:11:58 2010 +0200

    - Adapt makefile to changes in make 3.82

 root-make-3.82.patch     |   34 ++++++++++++++++++++++++++++
 root-tmva-segfault.patch |   55 ++++++++++++++++++++++++++++++++++++++++++++++
 root.spec                |   13 ++++++++++-
 3 files changed, 101 insertions(+), 1 deletions(-)
---
diff --git a/root-make-3.82.patch b/root-make-3.82.patch
new file mode 100644
index 0000000..11a1c0a
--- /dev/null
+++ b/root-make-3.82.patch
@@ -0,0 +1,34 @@
+diff -ur root-5.26.00d.orig/Makefile root-5.26.00d/Makefile
+--- root-5.26.00d.orig/Makefile	2010-08-24 13:30:19.000000000 +0200
++++ root-5.26.00d/Makefile	2010-08-30 17:25:11.474550801 +0200
+@@ -544,6 +544,30 @@
+ .PRECIOUS: include/%.h
+ 
+ # special rules (need to be defined before generic ones)
++cint/cint/lib/dll_stl/G__%.o: cint/cint/lib/dll_stl/G__%.cxx
++	$(MAKEDEP) -R -f$(patsubst %.o,%.d,$@) -Y -w 1000 -- \
++	   $(CXXFLAGS) $(DICTFLAGS) -D__cplusplus -I$(CINTDIR)/lib/prec_stl \
++	   -I$(CINTDIR)/stl -I$(CINTDIR)/inc -- $<
++	$(CXX) $(NOOPT) $(CXXFLAGS) $(DICTFLAGS) -I. -I$(CINTDIR)/inc  $(CXXOUT)$@ -c $<
++
++cint/cint/lib/dll_stl/G__c_%.o: cint/cint/lib/dll_stl/G__c_%.c
++	$(MAKEDEP) -R -f$(patsubst %.o,%.d,$@) -Y -w 1000 -- \
++	   $(CFLAGS) $(DICTFLAGS) -I$(CINTDIR)/lib/prec_stl \
++	   -I$(CINTDIR)/stl -I$(CINTDIR)/inc -- $<
++	$(CC) $(NOOPT) $(CFLAGS) $(DICTFLAGS) -I. -I$(CINTDIR)/inc  $(CXXOUT)$@ -c $<
++
++cint/cint/lib/G__%.o: cint/cint/lib/G__%.cxx
++	$(MAKEDEP) -R -f$(patsubst %.o,%.d,$@) -Y -w 1000 -- \
++	   $(CXXFLAGS) $(DICTFLAGS) -D__cplusplus -I$(CINTDIR)/lib/prec_stl \
++	   -I$(CINTDIR)/stl -I$(CINTDIR)/inc -- $<
++	$(CXX) $(NOOPT) $(CXXFLAGS) $(DICTFLAGS) -I. -I$(CINTDIR)/inc  $(CXXOUT)$@ -c $<
++
++cint/cint/lib/G__c_%.o: cint/cint/lib/G__c_%.c
++	$(MAKEDEP) -R -f$(patsubst %.o,%.d,$@) -Y -w 1000 -- \
++	   $(CFLAGS) $(DICTFLAGS) -I$(CINTDIR)/lib/prec_stl \
++	   -I$(CINTDIR)/stl -I$(CINTDIR)/inc -- $<
++	$(CC) $(NOOPT) $(CFLAGS) $(DICTFLAGS) -I. -I$(CINTDIR)/inc  $(CXXOUT)$@ -c $<
++
+ G__%.o: G__%.cxx
+ 	$(MAKEDEP) -R -f$(patsubst %.o,%.d,$@) -Y -w 1000 -- \
+ 	   $(CXXFLAGS) $(DICTFLAGS) -D__cplusplus -I$(CINTDIR)/lib/prec_stl \
diff --git a/root-tmva-segfault.patch b/root-tmva-segfault.patch
new file mode 100644
index 0000000..8c0bdff
--- /dev/null
+++ b/root-tmva-segfault.patch
@@ -0,0 +1,55 @@
+diff -ur root-5.26.00d.orig/tmva/inc/MsgLogger.h root-5.26.00d/tmva/inc/MsgLogger.h
+--- root-5.26.00d.orig/tmva/inc/MsgLogger.h	2010-08-24 13:30:17.000000000 +0200
++++ root-5.26.00d/tmva/inc/MsgLogger.h	2010-08-31 19:44:33.000000000 +0200
+@@ -100,7 +100,7 @@
+ 
+       // private utility routines
+       void Send();
+-      void InitMaps();
++      static void InitMaps();
+       void WriteMsg( EMsgType type, const std::string& line ) const;
+ 
+       const TObject*                  fObjSource;      // the source TObject (used for name)
+diff -ur root-5.26.00d.orig/tmva/src/MsgLogger.cxx root-5.26.00d/tmva/src/MsgLogger.cxx
+--- root-5.26.00d.orig/tmva/src/MsgLogger.cxx	2010-08-24 13:30:17.000000000 +0200
++++ root-5.26.00d/tmva/src/MsgLogger.cxx	2010-08-31 19:42:16.000000000 +0200
+@@ -54,7 +54,6 @@
+      fMinType   ( minType )
+ {
+    // constructor
+-   InitMaps();
+ }
+ 
+ //_______________________________________________________________________
+@@ -65,7 +64,6 @@
+      fMinType   ( minType )
+ {
+    // constructor
+-   InitMaps();
+ }
+ 
+ //_______________________________________________________________________
+@@ -76,7 +74,6 @@
+      fMinType   ( minType )
+ {
+    // constructor
+-   InitMaps();
+ }
+ 
+ //_______________________________________________________________________
+@@ -86,7 +83,6 @@
+      TObject()
+ {
+    // copy constructor
+-   InitMaps();
+    *this = parent;
+ }
+ 
+@@ -178,6 +174,7 @@
+ 
+    if (type < fMinType || (fgInhibitOutput && type!=kFATAL)) return; // no output
+ 
++   InitMaps();
+    std::map<EMsgType, std::string>::const_iterator stype;
+    if ((stype = fgTypeMap.find( type )) == fgTypeMap.end()) return;
+    if (!gConfig().IsSilent() || type==kFATAL) {
diff --git a/root.spec b/root.spec
index 9ab3f70..bc75fa9 100644
--- a/root.spec
+++ b/root.spec
@@ -13,7 +13,7 @@
 Name:		root
 Version:	5.26.00d
 %global libversion %(cut -d. -f 1-2 <<< %{version})
-Release:	1%{?dist}
+Release:	2%{?dist}
 Summary:	Numerical data analysis framework
 
 Group:		Applications/Engineering
@@ -57,6 +57,10 @@ Patch7:		%{name}-split-latex.patch
 Patch8:		%{name}-cern-filename.patch
 #		Workaround for broken Form() on ppc
 Patch9:		%{name}-cern-ppc.patch
+#		Adapt makefile to changes in make 3.82
+Patch10:	%{name}-make-3.82.patch
+#		Fix segfault in TMVA
+Patch11:	%{name}-tmva-segfault.patch
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 #		The build segfaults on ppc64 during an invocation of cint:
 #		https://savannah.cern.ch/bugs/index.php?70542
@@ -853,6 +857,8 @@ package to use root with GNU Emacs.
 %patch7 -p1
 %patch8 -p1
 %patch9 -p1
+%patch10 -p1
+%patch11 -p1
 
 find . '(' -name '*.cxx' -o -name '*.cpp' -o -name '*.C' -o -name '*.c' -o \
 	   -name '*.h' -o -name '*.hh' -o -name '*.hi' -o -name '*.py' -o \
@@ -1171,6 +1177,8 @@ echo %{_libdir}/%{name} > \
 
 # Generate documentation
 echo Rint.Includes: 0 > .rootrc
+echo Root.StacktraceScript: ${PWD}/etc/gdb-backtrace.sh >> .rootrc
+echo Gui.MimeTypeFile: ${PWD}/etc/root.mimes >> .rootrc
 sed "s!@PWD@!${PWD}!g" %{SOURCE2} > html.C
 LD_LIBRARY_PATH=${PWD}/lib:${PWD}/cint/cint/include:${PWD}/cint/cint/stl \
 ROOTSYS=${PWD} ./bin/root.exe -l -b -q html.C
@@ -1954,6 +1962,9 @@ fi
 %{emacs_lispdir}/root/*.el
 
 %changelog
+* Mon Aug 30 2010 Mattias Ellert <mattias.ellert at fysast.uu.se> - 5.26.00d-2
+- Adapt makefile to changes in make 3.82
+
 * Fri Aug 27 2010 Mattias Ellert <mattias.ellert at fysast.uu.se> - 5.26.00d-1
 - Update to 5.26.00d
 - Improved doc generation script


More information about the scm-commits mailing list