diff --git a/.gitignore b/.gitignore index d11ad28..f31a75d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/root-5.26.00e.tar.gz +/root-5.28.00.tar.gz diff --git a/root-cern-filename.patch b/root-cern-filename.patch deleted file mode 100644 index 7efe061..0000000 --- a/root-cern-filename.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -ur root-5.26.00d.orig/tutorials/tree/cernbuild.C root-5.26.00d/tutorials/tree/cernbuild.C ---- root-5.26.00d.orig/tutorials/tree/cernbuild.C 2010-08-24 13:29:47.000000000 +0200 -+++ root-5.26.00d/tutorials/tree/cernbuild.C 2010-08-29 10:20:56.069801363 +0200 -@@ -18,6 +18,7 @@ - - //The input file cern.dat is a copy of the CERN staff data base - //from 1988 -+ TString filename = "cernstaff.root"; - TString dir = gSystem->UnixPathName(gInterpreter->GetCurrentMacroName()); - dir.ReplaceAll("cernbuild.C",""); - dir.ReplaceAll("/./","/"); -@@ -70,7 +71,10 @@ - tree->Write(); - - fclose(fp); -- if (get) return hfile; - delete hfile; -+ if (get) { -+ hfile = TFile::Open(filename); -+ return hfile; -+ } - return 0; - } diff --git a/root-dpm-rfio.patch b/root-dpm-rfio.patch deleted file mode 100644 index bd03c24..0000000 --- a/root-dpm-rfio.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- trunk/configure 2010/05/02 15:51:16 33334 -+++ trunk/configure 2010/05/02 15:58:46 33335 -@@ -1194,7 +1194,7 @@ - sapdb-incdir SapDB support, location of sql.h - sapdb-libdir SapDB support, location of libsqlod - rfio-incdir RFIO support, location of rfio_api.h -- rfio-libdir RFIO support, location of librfio or libshift -+ rfio-libdir RFIO support, location of librfio, libdpm or libshift - srp Secure Remote Passwd support, location of SRP distribution - srp-incdir SRP support, location header of t_server.h - srp-libdir SRP support, location header of libsrp.a -@@ -2558,7 +2558,7 @@ - # - # (See http://savannah.cern.ch/files/?group=castor) - # --# Check for rfio_api.h of CASTOR 2 and librfio or libshift -+# Check for rfio_api.h of CASTOR 2 and librfio, libdpm or libshift - # - shiftold="" - if test ! "x$enable_rfio" = "xno" ; then -@@ -2584,7 +2584,7 @@ - fi - fi - -- check_library "librfio libshift shiftmd shift" "$enable_shared" \ -+ check_library "librfio libdpm libshift shiftmd shift" "$enable_shared" \ - "$shiftlibdir" \ - $RFIO $RFIO/lib /cern/pro/lib /cern/new/lib /cern/old/lib \ - /opt/shift/lib /usr/local/shift/lib /usr/lib/shift \ diff --git a/root-fontconfig.patch b/root-fontconfig.patch index 4737514..f4d49f4 100644 --- a/root-fontconfig.patch +++ b/root-fontconfig.patch @@ -1,7 +1,7 @@ -diff -ur root-5.26.00.orig/core/base/src/TApplication.cxx root-5.26.00/core/base/src/TApplication.cxx ---- root-5.26.00.orig/core/base/src/TApplication.cxx 2009-12-14 20:17:59.000000000 +0100 -+++ root-5.26.00/core/base/src/TApplication.cxx 2010-01-12 16:42:30.247556669 +0100 -@@ -231,20 +231,9 @@ +diff -ur root-trunk.orig/core/base/src/TApplication.cxx root-trunk/core/base/src/TApplication.cxx +--- root-trunk.orig/core/base/src/TApplication.cxx 2010-11-03 22:51:34.000000000 +0100 ++++ root-trunk/core/base/src/TApplication.cxx 2010-11-25 20:47:25.726705009 +0100 +@@ -252,20 +252,9 @@ // Try to load TrueType font renderer. Only try to load if not in batch // mode and Root.UseTTFonts is true and Root.TTFontPath exists. Abort silently // if libttf or libGX11TTF are not found in $ROOTSYS/lib or $ROOTSYS/ttf/lib. @@ -23,7 +23,7 @@ diff -ur root-5.26.00.orig/core/base/src/TApplication.cxx root-5.26.00/core/base if (gClassTable->GetDict("TGX11TTF")) { // in principle we should not have linked anything against libGX11TTF // but with ACLiC this can happen, initialize TGX11TTF by hand -@@ -257,7 +246,6 @@ +@@ -279,7 +268,6 @@ } } #endif @@ -31,9 +31,9 @@ diff -ur root-5.26.00.orig/core/base/src/TApplication.cxx root-5.26.00/core/base // Create WM dependent application environment if (fAppImp) -diff -ur root-5.26.00.orig/graf2d/graf/Module.mk root-5.26.00/graf2d/graf/Module.mk ---- root-5.26.00.orig/graf2d/graf/Module.mk 2009-12-14 20:18:27.000000000 +0100 -+++ root-5.26.00/graf2d/graf/Module.mk 2010-01-12 16:42:30.248319334 +0100 +diff -ur root-trunk.orig/graf2d/graf/Module.mk root-trunk/graf2d/graf/Module.mk +--- root-trunk.orig/graf2d/graf/Module.mk 2010-11-25 20:41:40.000000000 +0100 ++++ root-trunk/graf2d/graf/Module.mk 2010-11-25 20:47:25.727705004 +0100 @@ -45,7 +45,7 @@ @$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \ "$(SOFLAGS)" libGraf.$(SOEXT) $@ \ @@ -42,10 +42,10 @@ diff -ur root-5.26.00.orig/graf2d/graf/Module.mk root-5.26.00/graf2d/graf/Module + "$(FREETYPELDFLAGS) $(FREETYPELIB) $(GRAFLIBEXTRA) -lfontconfig" $(GRAFDS): $(GRAFH) $(GRAFL) $(ROOTCINTTMPDEP) - @echo "Generating dictionary $@..." -diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/TTF.cxx ---- root-5.26.00.orig/graf2d/graf/src/TTF.cxx 2009-12-14 20:18:27.000000000 +0100 -+++ root-5.26.00/graf2d/graf/src/TTF.cxx 2010-01-12 16:42:30.265068705 +0100 + $(MAKEDIR) +diff -ur root-trunk.orig/graf2d/graf/src/TTF.cxx root-trunk/graf2d/graf/src/TTF.cxx +--- root-trunk.orig/graf2d/graf/src/TTF.cxx 2010-11-03 22:51:58.000000000 +0100 ++++ root-trunk/graf2d/graf/src/TTF.cxx 2010-11-25 20:47:25.780705003 +0100 @@ -26,6 +26,7 @@ #include "TMath.h" #include "TError.h" @@ -54,7 +54,7 @@ diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/ // to scale fonts to the same size as the old TT version const Float_t kScale = 0.93376068; -@@ -111,10 +112,13 @@ +@@ -112,10 +113,13 @@ charmap = fgFace[fgCurFontIdx]->charmaps[i]; platform = charmap->platform_id; encoding = charmap->encoding_id; @@ -69,7 +69,7 @@ diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/ (platform == 1 && encoding == 0 && !strcmp(fgFontName[fgCurFontIdx], "symbol.ttf"))) { -@@ -336,19 +340,86 @@ +@@ -360,19 +364,86 @@ return 0; } @@ -153,7 +153,7 @@ diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/ + FcPatternAddInteger (pat, FC_WEIGHT, FC_WEIGHT_BOLD); + FcPatternAddInteger (pat, FC_SLANT, FC_SLANT_ITALIC); + } -+ else if (strcmp(basename, /* 12 */ "symbol.ttf") == 0) { ++ else if (strcmp(basename, /* 12 and 15 */ "symbol.ttf") == 0) { + FcPatternAddString (pat, FC_FAMILY, (const FcChar8*)"symbol"); + FcPatternAddInteger (pat, FC_WEIGHT, FC_WEIGHT_REGULAR); + FcPatternAddInteger (pat, FC_SLANT, FC_SLANT_ROMAN); @@ -169,7 +169,7 @@ diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/ if (fgFontCount) { Warning("TTF::SetTextFont", "using default font %s", fgFontName[0]); fgCurFontIdx = 0; // use font 0 (default font, set in ctor) -@@ -358,11 +429,18 @@ +@@ -382,11 +453,18 @@ } } @@ -190,7 +190,7 @@ diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/ if (tface) FT_Done_Face(tface); if (fgFontCount) { Warning("TTF::SetTextFont", "using default font %s", fgFontName[0]); -@@ -373,7 +451,8 @@ +@@ -397,7 +475,8 @@ } } @@ -200,15 +200,15 @@ diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/ fgFontName[fgFontCount] = StrDup(basename); fgCurFontIdx = fgFontCount; -@@ -428,35 +507,10 @@ - /*14 */ { "wingding.ttf", "opens___.ttf" } +@@ -464,37 +543,12 @@ + /*15 */ { "symbol.ttf", "symbol.ttf" } }; - static int fontset = -1; - int thisset = fontset; - int fontid = fontnumber / 10; - if (fontid < 0 || fontid > 14) fontid = 0; + if (fontid < 0 || fontid > 15) fontid = 0; - if (thisset == -1) { - // try to load font (font must be in Root.TTFontPath resource) @@ -229,17 +229,19 @@ diff -ur root-5.26.00.orig/graf2d/graf/src/TTF.cxx root-5.26.00/graf2d/graf/src/ - thisset = 1; - } - } -- int ret = SetTextFont(fonttable[fontid][thisset]); + Int_t italic = 0; + if (fontid==15) italic = 1; +- int ret = SetTextFont(fonttable[fontid][thisset], italic); - // Do not define font set is we're loading the symbol.ttf - it's - // the same in both cases. - if (ret == 0 && fontid != 12) fontset = thisset; -+ SetTextFont(fonttable[fontid][0]); ++ SetTextFont(fonttable[fontid][0], italic); } //______________________________________________________________________________ -diff -ur root-5.26.00.orig/graf3d/gl/Module.mk root-5.26.00/graf3d/gl/Module.mk ---- root-5.26.00.orig/graf3d/gl/Module.mk 2009-12-14 20:18:13.000000000 +0100 -+++ root-5.26.00/graf3d/gl/Module.mk 2010-01-12 16:42:30.265068705 +0100 +diff -ur root-trunk.orig/graf3d/gl/Module.mk root-trunk/graf3d/gl/Module.mk +--- root-trunk.orig/graf3d/gl/Module.mk 2010-11-25 20:41:36.000000000 +0100 ++++ root-trunk/graf3d/gl/Module.mk 2010-11-25 20:47:25.781705003 +0100 @@ -68,7 +68,7 @@ $(GLLIB): $(GLO) $(GLDO) $(ORDER_) $(MAINLIBS) $(GLLIBDEP) $(FTGLLIB) $(GLEWLIB) @$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \ @@ -248,31 +250,33 @@ diff -ur root-5.26.00.orig/graf3d/gl/Module.mk root-5.26.00/graf3d/gl/Module.mk + "$(GLLIBEXTRA) $(FTGLLIBDIR) $(FTGLLIBS) $(GLEWLIBDIR) $(GLEWLIBS) $(GLLIBS) -lfontconfig" $(GLDS): $(GLH2) $(GLL) $(ROOTCINTTMPDEP) - @echo "Generating dictionary $@..." -diff -ur root-5.26.00.orig/graf3d/gl/src/TGLFontManager.cxx root-5.26.00/graf3d/gl/src/TGLFontManager.cxx ---- root-5.26.00.orig/graf3d/gl/src/TGLFontManager.cxx 2009-12-14 20:18:13.000000000 +0100 -+++ root-5.26.00/graf3d/gl/src/TGLFontManager.cxx 2010-01-12 16:55:59.130070188 +0100 -@@ -35,6 +35,8 @@ - # include "FTGLBitmapFont.h" + $(MAKEDIR) +diff -ur root-trunk.orig/graf3d/gl/src/TGLFontManager.cxx root-trunk/graf3d/gl/src/TGLFontManager.cxx +--- root-trunk.orig/graf3d/gl/src/TGLFontManager.cxx 2010-11-03 22:51:45.000000000 +0100 ++++ root-trunk/graf3d/gl/src/TGLFontManager.cxx 2010-11-25 20:47:25.782705002 +0100 +@@ -37,6 +37,8 @@ #endif + +#include + //______________________________________________________________________________ // TGLFont // -@@ -389,14 +391,91 @@ +@@ -391,17 +393,91 @@ FontMap_i it = fFontMap.find(TGLFont(size, fileID, mode)); if (it == fFontMap.end()) { -- TString ttpath; +- TString ttpath, file; -# ifdef TTFFONTDIR - ttpath = gEnv->GetValue("Root.TTGLFontPath", TTFFONTDIR ); -# else - ttpath = gEnv->GetValue("Root.TTGLFontPath", "$(ROOTSYS)/fonts"); -# endif -- TObjString* name = (TObjString*)fgFontFileArray[fileID]; -- TString file = gSystem->Which(ttpath.Data(), Form("%s.ttf", name->GetString().Data())); +- { +- char *fp = gSystem->Which(ttpath, ((TObjString*)fgFontFileArray[fileID])->String() + ".ttf"); +- file = fp; +- delete [] fp; + const char *fontname = ((TObjString*)fgFontFileArray[fileID])->String().Data(); + + FcPattern *pat, *match; @@ -316,7 +320,7 @@ diff -ur root-5.26.00.orig/graf3d/gl/src/TGLFontManager.cxx root-5.26.00/graf3d/ + FcPatternAddString (pat, FC_FAMILY, (const FcChar8*)"arial"); + FcPatternAddInteger (pat, FC_WEIGHT, FC_WEIGHT_BOLD); + FcPatternAddInteger (pat, FC_SLANT, FC_SLANT_ROMAN); -+ } + } + else if (strcmp(fontname, /* 7 */ "arialbi") == 0) { + FcPatternAddString (pat, FC_FAMILY, (const FcChar8*)"arial"); + FcPatternAddInteger (pat, FC_WEIGHT, FC_WEIGHT_BOLD); @@ -342,7 +346,7 @@ diff -ur root-5.26.00.orig/graf3d/gl/src/TGLFontManager.cxx root-5.26.00/graf3d/ + FcPatternAddInteger (pat, FC_WEIGHT, FC_WEIGHT_BOLD); + FcPatternAddInteger (pat, FC_SLANT, FC_SLANT_ITALIC); + } -+ else if (strcmp(fontname, /* 12 */ "symbol") == 0) { ++ else if (strcmp(fontname, /* 12 and 15 */ "symbol") == 0) { + FcPatternAddString (pat, FC_FAMILY, (const FcChar8*)"symbol"); + FcPatternAddInteger (pat, FC_WEIGHT, FC_WEIGHT_REGULAR); + FcPatternAddInteger (pat, FC_SLANT, FC_SLANT_ROMAN); @@ -361,7 +365,7 @@ diff -ur root-5.26.00.orig/graf3d/gl/src/TGLFontManager.cxx root-5.26.00/graf3d/ FTFont* ftfont = 0; switch (mode) -@@ -422,9 +501,13 @@ +@@ -427,9 +503,13 @@ break; default: Error("TGLFontManager::GetFont", "invalid FTGL type"); @@ -375,9 +379,9 @@ diff -ur root-5.26.00.orig/graf3d/gl/src/TGLFontManager.cxx root-5.26.00/graf3d/ ftfont->FaceSize(size); const TGLFont &mf = fFontMap.insert(std::make_pair(TGLFont(size, fileID, mode, ftfont, 0), 1)).first->first; out.CopyAttributes(mf); -diff -ur root-5.26.00.orig/graf3d/gl/src/TGLText.cxx root-5.26.00/graf3d/gl/src/TGLText.cxx ---- root-5.26.00.orig/graf3d/gl/src/TGLText.cxx 2009-12-14 20:18:13.000000000 +0100 -+++ root-5.26.00/graf3d/gl/src/TGLText.cxx 2010-01-12 16:42:30.266069599 +0100 +diff -ur root-trunk.orig/graf3d/gl/src/TGLText.cxx root-trunk/graf3d/gl/src/TGLText.cxx +--- root-trunk.orig/graf3d/gl/src/TGLText.cxx 2010-11-03 22:51:45.000000000 +0100 ++++ root-trunk/graf3d/gl/src/TGLText.cxx 2010-11-25 20:47:25.783705001 +0100 @@ -34,6 +34,8 @@ # include "FTGLBitmapFont.h" #endif @@ -494,10 +498,10 @@ diff -ur root-5.26.00.orig/graf3d/gl/src/TGLText.cxx root-5.26.00/graf3d/gl/src/ + FcPatternDestroy (match); + FcPatternDestroy (pat); } -diff -ur root-5.26.00.orig/gui/gui/src/TGApplication.cxx root-5.26.00/gui/gui/src/TGApplication.cxx ---- root-5.26.00.orig/gui/gui/src/TGApplication.cxx 2009-12-14 20:18:16.000000000 +0100 -+++ root-5.26.00/gui/gui/src/TGApplication.cxx 2010-01-12 16:42:30.266069599 +0100 -@@ -83,24 +83,11 @@ +diff -ur root-trunk.orig/gui/gui/src/TGApplication.cxx root-trunk/gui/gui/src/TGApplication.cxx +--- root-trunk.orig/gui/gui/src/TGApplication.cxx 2010-11-03 22:51:54.000000000 +0100 ++++ root-trunk/gui/gui/src/TGApplication.cxx 2010-11-25 20:47:25.784705001 +0100 +@@ -83,25 +83,12 @@ gROOT->SetBatch(kFALSE); if (strcmp(appClassName, "proofserv")) { @@ -516,16 +520,17 @@ diff -ur root-5.26.00.orig/gui/gui/src/TGApplication.cxx root-5.26.00/gui/gui/sr + if (gEnv->GetValue("Root.UseTTFonts", 1)) { TPluginHandler *h; if ((h = gROOT->GetPluginManager()->FindHandler("TVirtualX", "x11ttf"))) - h->LoadPlugin(); + if (h->LoadPlugin() == -1) + Info("TGApplication", "no TTF support"); } - - delete [] ttfont; } // Create the canvas colors early so they are allocated before -diff -ur root-5.26.00.orig/gui/gui/src/TGSpeedo.cxx root-5.26.00/gui/gui/src/TGSpeedo.cxx ---- root-5.26.00.orig/gui/gui/src/TGSpeedo.cxx 2009-12-14 20:18:16.000000000 +0100 -+++ root-5.26.00/gui/gui/src/TGSpeedo.cxx 2010-01-12 16:58:26.233069701 +0100 +diff -ur root-trunk.orig/gui/gui/src/TGSpeedo.cxx root-trunk/gui/gui/src/TGSpeedo.cxx +--- root-trunk.orig/gui/gui/src/TGSpeedo.cxx 2010-11-03 22:51:54.000000000 +0100 ++++ root-trunk/gui/gui/src/TGSpeedo.cxx 2010-11-25 20:47:25.785705002 +0100 @@ -117,8 +117,7 @@ TString sc; diff --git a/root-fonttype-combobox-dtor.patch b/root-fonttype-combobox-dtor.patch deleted file mode 100644 index f466c72..0000000 --- a/root-fonttype-combobox-dtor.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ur root-5.26.00e.orig/gui/gui/src/TGComboBox.cxx root-5.26.00e/gui/gui/src/TGComboBox.cxx ---- root-5.26.00e.orig/gui/gui/src/TGComboBox.cxx 2010-10-13 12:39:55.000000000 +0200 -+++ root-5.26.00e/gui/gui/src/TGComboBox.cxx 2010-11-12 19:21:44.043723000 +0100 -@@ -765,5 +765,6 @@ - // Text font combo box dtor. - - for (int i = 0; i < kMaxFonts && fFonts[i] != 0; i++) -- gVirtualX->DeleteFont(fFonts[i]); -+ if (fFonts[i] != TGTextLBEntry::GetDefaultFontStruct()) -+ gVirtualX->DeleteFont(fFonts[i]); - } diff --git a/root-ftgl.patch b/root-ftgl.patch index 10d435e..b4bf1e4 100644 --- a/root-ftgl.patch +++ b/root-ftgl.patch @@ -1,9 +1,28 @@ -diff -ur root-5.24.00b.orig/graf3d/gl/src/TGLFontManager.cxx root-5.24.00b/graf3d/gl/src/TGLFontManager.cxx ---- root-5.24.00b.orig/graf3d/gl/src/TGLFontManager.cxx 2009-10-11 22:39:43.000000000 +0200 -+++ root-5.24.00b/graf3d/gl/src/TGLFontManager.cxx 2009-11-16 17:55:18.643028075 +0100 -@@ -24,7 +24,13 @@ +diff -ur root-trunk.orig/configure root-trunk/configure +--- root-trunk.orig/configure 2010-12-04 00:23:49.000000000 +0100 ++++ root-trunk/configure 2010-12-04 19:40:46.810052008 +0100 +@@ -2502,13 +2502,13 @@ + message "Checking for libftgl" + if pkg-config --exists ftgl ; then + result "ok" +- message "Checking for ftgl version > 2.1.2" ++ message "Checking for ftgl" + ftgl_version=`pkg-config --modversion ftgl | \ + tr '.' ' ' | \ + awk 'BEGIN { FS = " "; } \ + { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'` + # Use FTGL/ftgl.h when > 2.1.2 +- if test $ftgl_version -gt 2001002 ; then ++ if test $ftgl_version -gt 0 ; then + result "ok" + ftglincdir=`pkg-config --cflags-only-I ftgl | sed 's/-I//g'` + ftgllibs=`pkg-config --libs-only-l ftgl` +diff -ur root-trunk.orig/graf3d/gl/src/TGLFontManager.cxx root-trunk/graf3d/gl/src/TGLFontManager.cxx +--- root-trunk.orig/graf3d/gl/src/TGLFontManager.cxx 2010-11-03 22:51:45.000000000 +0100 ++++ root-trunk/graf3d/gl/src/TGLFontManager.cxx 2010-12-04 19:36:46.716052000 +0100 +@@ -25,7 +25,13 @@ // Direct inclussion of FTGL headers is deprecated in ftgl-2.1.3 while - // ftgl-2.1.2 shipped with root requires manual inclusion. + // ftgl-2.1.2 shipped with ROOT requires manual inclusion. #ifndef BUILTIN_FTGL -# include +# include @@ -16,12 +35,12 @@ diff -ur root-5.24.00b.orig/graf3d/gl/src/TGLFontManager.cxx root-5.24.00b/graf3 #else # include "FTFont.h" # include "FTGLExtrdFont.h" -diff -ur root-5.24.00b.orig/graf3d/gl/src/TGLText.cxx root-5.24.00b/graf3d/gl/src/TGLText.cxx ---- root-5.24.00b.orig/graf3d/gl/src/TGLText.cxx 2009-10-11 22:39:43.000000000 +0200 -+++ root-5.24.00b/graf3d/gl/src/TGLText.cxx 2009-11-16 17:56:09.971279053 +0100 +diff -ur root-trunk.orig/graf3d/gl/src/TGLText.cxx root-trunk/graf3d/gl/src/TGLText.cxx +--- root-trunk.orig/graf3d/gl/src/TGLText.cxx 2010-11-03 22:51:45.000000000 +0100 ++++ root-trunk/graf3d/gl/src/TGLText.cxx 2010-12-04 19:36:46.716052000 +0100 @@ -23,7 +23,13 @@ // Direct inclussion of FTGL headers is deprecated in ftgl-2.1.3 while - // ftgl-2.1.2 shipped with root requires manual inclusion. + // ftgl-2.1.2 shipped with ROOT requires manual inclusion. #ifndef BUILTIN_FTGL -# include +# include diff --git a/root-htmldoc.patch b/root-htmldoc.patch index 72fed03..64a6d46 100644 --- a/root-htmldoc.patch +++ b/root-htmldoc.patch @@ -1,52 +1,11 @@ -diff -ur root-5.26.00e.orig/geom/geompainter/src/TGeoChecker.cxx root-5.26.00e/geom/geompainter/src/TGeoChecker.cxx ---- root-5.26.00e.orig/geom/geompainter/src/TGeoChecker.cxx 2010-10-13 12:40:03.000000000 +0200 -+++ root-5.26.00e/geom/geompainter/src/TGeoChecker.cxx 2010-10-23 16:07:47.281557948 +0200 -@@ -62,6 +62,7 @@ - //----------------- - // - // -> add it from the doc. -+//Begin_Html - /* - - */ -diff -ur root-5.26.00e.orig/gui/gui/src/TGSimpleTable.cxx root-5.26.00e/gui/gui/src/TGSimpleTable.cxx ---- root-5.26.00e.orig/gui/gui/src/TGSimpleTable.cxx 2010-10-13 12:39:55.000000000 +0200 -+++ root-5.26.00e/gui/gui/src/TGSimpleTable.cxx 2010-10-23 16:08:51.592561863 +0200 -@@ -25,7 +25,7 @@ - ClassImp(TGSimpleTable) - - //______________________________________________________________________________ --/* Begin HTML -+/* Begin_Html -

TGSimpleTable

-

- To provide a simple class to visualize an array of doubles, the class -diff -ur root-5.26.00e.orig/roofit/roofitcore/src/RooSimPdfBuilder.cxx root-5.26.00e/roofit/roofitcore/src/RooSimPdfBuilder.cxx ---- root-5.26.00e.orig/roofit/roofitcore/src/RooSimPdfBuilder.cxx 2010-10-13 12:39:50.000000000 +0200 -+++ root-5.26.00e/roofit/roofitcore/src/RooSimPdfBuilder.cxx 2010-10-23 16:08:51.592561863 +0200 -@@ -16,12 +16,10 @@ - - ////////////////////////////////////////////////////////////////////////////// - // --// BEGIN_HTML -+// Begin_Html - // - // This tool has now been superceded by RooSimWSTool - // --//Begin_Html --// - //

- // RooSimPdfBuilder is a powerful tool to build RooSimultaneous - // PDFs that are defined in terms component PDFs that are identical in -@@ -411,10 +409,8 @@ - // RooSimultaneous returned by buildPdf(). Therefore the builder instance should - // exist as long as the constructed PDFs needs to exist. - //

--//
--//End_Html
- //
--// END_HTML
-+// End_Html
- //
+--- root-5.28.00/hist/hist/src/TGraph2DErrors.cxx.orig	2010-12-14 15:20:19.000000000 +0100
++++ root-5.28.00/hist/hist/src/TGraph2DErrors.cxx	2010-12-16 21:06:23.524327001 +0100
+@@ -75,7 +75,7 @@
+    return c;
+ }
+ End_Macro
+-End_Html */
++*/
  
  
+ //______________________________________________________________________________
diff --git a/root-linker-scripts.patch b/root-linker-scripts.patch
deleted file mode 100644
index 7097d29..0000000
--- a/root-linker-scripts.patch
+++ /dev/null
@@ -1,280 +0,0 @@
---- trunk/configure	2010/05/13 12:58:02	33500
-+++ trunk/configure	2010/05/17 16:43:27	33534
-@@ -338,19 +338,26 @@
- 
-     # Save arguments in logical names
-     chklib64=$1
--    logmsg "Checking if $chklib64 is a 64bit library"
-+    logmsg "Checking if $chklib64 is a 64-bit library"
-     if [ "x`basename $chklib64 .a`" != "x`basename $chklib64`" ]; then
-         # we have an archive .a file
-         logmsg " objdump -a $chklib64 | grep 'x86-64'"
--        objdump -a $chklib64 | grep 'x86-64' > /dev/null 2>& 1
--        ret=$?
-+        if objdump -a $chklib64 | grep 'x86-64' > /dev/null 2>& 1 ; then
-+            ret=1
-+        fi
-     else
--        logmsg " file -L $chklib64 | grep '64-bit'"
--        file -L $chklib64 | grep '64-bit' > /dev/null 2>& 1
--        ret=$?
-+        if file -L $chklib64 | grep 'ASCII' > /dev/null 2>& 1 ; then
-+            check_link $chklib64
-+            ret=$link_result
-+        else
-+            logmsg " file -L $chklib64 | grep '64-bit'"
-+            if file -L $chklib64 | grep '64-bit' > /dev/null 2>& 1 ; then
-+                ret=1
-+            fi
-+        fi
-     fi
-     logmsg " result: $ret"
--    if test $ret -eq 0 ; then
-+    if test $ret -eq 1 ; then
-         is_lib64=1
-         logmsg " is a 64bit library"
-     fi
-@@ -637,6 +644,79 @@
- }
- 
- #_____________________________________________________________________
-+check_link() {
-+    # This function will try to link a specific library [$1] in an
-+    # optional directory [$2] and test, optionally, for a specified
-+    # symbol [$3].
-+    # The result of the check is stored in link_result, 1 if true,
-+    # 0 otherwise, which should be immediately copied, since the variable
-+    # will be overwritten at next invocation of this function.
-+
-+    # Assert that we got enough arguments
-+    if test $# -lt 1 ; then
-+        echo "check_link: need at least one argument"
-+        link_result=0
-+        return 1
-+    fi
-+
-+    # save arguments in logical names
-+    linklib="$1"; shift
-+    linkdir=""
-+    if test $# -ge 1 ; then
-+        linkdir="$1"; shift
-+    fi
-+    linksymbol=""
-+    if test $# -ge 1 ; then
-+        linksymbol="$1"
-+    fi
-+
-+    if test "x$linksymbol" = "x" ; then
-+       if test "x$linkdir" = "x" ; then
-+          logmsg " trying to link against $linklib"
-+       else
-+          logmsg " trying to link against $linkdir $linklib"
-+       fi
-+       cat < conftest.mk
-+include config/Makefile.${arch}
-+conftest: conftest.c
-+	\$(CC) \$(CFLAGS) \$(LDFLAGS) $linkdir $linklib \$< -o \$@
-+
-+conftest.c:
-+	echo "int main() { return 0; }" > \$@
-+EOF
-+    else
-+       if test "x$linkdir" = "x" ; then
-+           logmsg " trying to resolve symbol $linksymbol in $linklib"
-+       else
-+           logmsg " trying to resolve symbol $linksymbol in $linkdir $linklib"
-+       fi
-+       cat < conftest.mk
-+include config/Makefile.${arch}
-+conftest:conftest.c
-+	\$(CC) \$(CFLAGS) \$(LDFLAGS) $linkdir $linklib \$< -o \$@
-+
-+conftest.c:
-+	echo "extern int $linksymbol (); " > \$@
-+	echo "int main() { $linksymbol (); return 0; }" >> \$@
-+EOF
-+    fi
-+    $gnumake -f conftest.mk >> $logfile 2>&1
-+    if test $? -eq 0 ; then
-+        link_result=1
-+        logmsg " Link OK"
-+    else
-+        link_result=0
-+        logmsg " Failed code was"
-+        cat conftest.mk >> $logfile
-+    fi
-+    rm -rf conftest.c conftest.mk conftest
-+
-+    unset linklib
-+    unset linkdir
-+    unset linksymbol
-+}
-+
-+#_____________________________________________________________________
- check_symbol() {
-     # This function will try to locate a symbol [$1] in a specific
-     # library [$2] and in a given directory [$3].
-@@ -658,6 +738,9 @@
- 
-     if test "x$symbollib" = "x" ; then
-         found_symbol=0
-+        unset symbol
-+        unset symbollib
-+        unset symboldir
-         return 1
-     fi
- 
-@@ -721,6 +804,9 @@
-     if test "x$symbolfile" = "x" || test ! -r $symbolfile ; then
-        found_symbol=0
-        logmsg " Symbol not found"
-+       unset symbol
-+       unset symbollib
-+       unset symboldir
-        return 1
-     fi
- 
-@@ -732,29 +818,10 @@
-     else
-         nm $symbolfile 2>&1 | grep "no symbols" > /dev/null 2>&1
-         if test $? -eq 0 ; then
--            logmsg " $symbolfile is stripped, trying a link"
--            # stripped library - only safe test is to link against the
--            # library!  However, we do not know what compiler to use
--            # so we can not do the test.  Assume the symbol is in
--            cat < conftest.mk
--include config/Makefile.${arch}
--conftest:conftest.c $symbolfile
--	\$(CC) \$(CFLAGS) \$(LDFLAGS) $symbolfile \$< -o \$@
--
--conftest.c:
--	echo "extern int $symbol (); " > \$@
--	echo "int main() { $symbol (); return 0; }" >> \$@
--EOF
--            $gnumake -f conftest.mk >> $logfile 2>&1
--            if test $? -eq 0 ; then
--                found_symbol=1
--                logmsg " Link OK"
--            else
--                found_symbol=0
--                logmsg " Failed code was"
--                cat conftest.mk >> $logfile
--            fi
--            rm -rf conftest.c conftest.mk conftest
-+            logmsg " $symbolfile is stripped, trying to link"
-+            # stripped library - only safe test is to link against the library
-+            check_link $symbolfile "" $symbol
-+            found_symbol=$link_result
-         else
-             found_symbol=0
-         fi
-@@ -764,6 +831,10 @@
-     else
-         result "no"
-     fi
-+
-+    unset symbol
-+    unset symbollib
-+    unset symboldir
- }
- 
- #_____________________________________________________________________
-@@ -2641,19 +2712,12 @@
-         case $platform in
-            linux)      shiftlib="$shiftlib -lnsl"
-                 for i in "" -ladns ; do
--                    echo "extern rfio_fchmod(); int main() { rfio_fchmod(); return 0; }" > conftest.c
--                    logmsg " Checking if we can link against $shiflib"
--                    logmsg " gcc conftest.c $shiftlibdir $shiftlib $i -o conftest"
--                    gcc conftest.c $shiftlibdir $shiftlib $i -o conftest >> $logfile 2>&1
--                    if test $? -eq 0 ; then
-+                    check_link "$shiftlib $i" $shiftlibdir rfio_fchmod
-+                    if test $link_result -eq 1 ; then
-                         shiftlib="$shiftlib $i" ;
-                         break ;
--                    else
--                        logmsg " Failed program was:"
--                        cat conftest.c >> $logfile
-                     fi
-                 done
--                rm -f conftest.c conftest
-                 ;;
-            solaris)    shiftlib="$shiftlib -lposix4" ;;
-            win32)      shiftincdir="$shiftincdir $shiftincdir/../win32"
-@@ -2730,19 +2794,12 @@
-         case $platform in
-            linux)      castorlib="$castorlib -lnsl"
-                 for i in "" -ladns ; do
--                    echo "extern rfio_fchmod(); int main() { rfio_fchmod(); return 0; }" > conftest.c
--                    logmsg " Checking if we can link against $castorlib"
--                    logmsg " gcc conftest.c $castorlibdir $castorlib $i -o conftest"
--                    gcc conftest.c $castorlibdir $castorlib $i -o conftest >> $logfile 2>&1
--                    if test $? -eq 0 ; then
-+                    check_link "$shiftlib $i" $shiftlibdir rfio_fchmod
-+                    if test $link_result -eq 1 ; then
-                         castorlib="$castorlib $i" ;
-                         break ;
--                    else
--                        logmsg " Failed program was:"
--                        cat conftest.c >> $logfile
-                     fi
-                 done
--                rm -f conftest.c conftest
-                 ;;
-            solaris)    castorlib="$castorlib -lposix4" ;;
-            win32)      castorincdir="$castorincdir $castorincdir/../win32"
-@@ -3112,44 +3169,19 @@
-         enable_hdfs="no"
-     else
-         case $platform in
--           linux)
--                hdfslib="$hdfslib"
--                for i in "" -ladns ; do
--                    echo 'extern hdfsConnect(const char *, unsigned short); int main() { hdfsConnect("default", 0); return 0; }' > conftest.c
--                    logmsg " Checking if we can link against $hdfslib"
--                    logmsg " gcc conftest.c $hdfslibdir $hdfslib $i -o conftest"
--                    gcc conftest.c $hdfslibdir $hdfslib $i -o conftest >> $logfile 2>&1
--                    if test $? -eq 0 ; then
--                        hdfslib="$hdfslib $i" ;
--                        break ;
--                    else
--                        logmsg " Failed program was:"
--                        cat conftest.c >> $logfile
--                        enable_hdfs="no"
--                    fi
--                done
--                rm -f conftest.c conftest
-+            linux)
-+                check_link $hdfslib $hdfslibdir hdfsConnect
-+                if test $link_result -eq 0 ; then
-+                    enable_hdfs="no"
-+                fi
- 
--                jvmlib="$jvmlib"
--                for i in "" -ladns ; do
--                    echo '#include "jni.h"' > conftest.c
--                    echo 'int main() { JNI_CreateJavaVM(NULL, NULL, NULL); return 0; }' >> conftest.c
--                    logmsg " Checking if we can link against $jvmlib"
--                    logmsg " gcc conftest.c -I$jniincdir -I$jniincdir/linux $jvmlibdir $jvmlib $i -o conftest"
--                    gcc conftest.c -I$jniincdir -I$jniincdir/linux $jvmlibdir $jvmlib $i -o conftest >> $logfile 2>&1
--                    if test $? -eq 0 ; then
--                        jvmlib="$jvmlib $i" ;
--                        break ;
--                    else
--                        logmsg " Failed program was:"
--                        cat conftest.c >> $logfile
--                        enable_hdfs="no"
--                    fi
--                done
--                rm -f conftest.c conftest
-+                check_link $jvmlib $jvmlibdir JNI_CreateJavaVM
-+                if test $link_result -eq 0 ; then
-+                    enable_hdfs="no"
-+                fi
-                 ;;
-         esac
--        echo "HDFS disabled due to failed compile and link test!"
-+        echo "HDFS disabled due to failed compile and link test"
-     fi
- fi
- check_explicit "$enable_hdfs" "$enable_hdfs_explicit" \
diff --git a/root-make-3.82.patch b/root-make-3.82.patch
deleted file mode 100644
index 11a1c0a..0000000
--- a/root-make-3.82.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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-missing-explicit-link.patch b/root-missing-explicit-link.patch
deleted file mode 100644
index ebccb89..0000000
--- a/root-missing-explicit-link.patch
+++ /dev/null
@@ -1,77 +0,0 @@
---- trunk/config/Makefile.depend	2010/07/27 12:56:50	34610
-+++ trunk/config/Makefile.depend	2010/07/27 16:18:34	34625
-@@ -39,6 +39,7 @@
- SESSIONVIEWERLIBDEPM   = $(PROOFLIB) $(GUILIB) $(HISTLIB) $(GPADLIB) $(GRAFLIB) \
-                          $(TREELIB) $(MATHCORELIB)
- X3DLIBDEPM             = $(G3DLIB) $(GUILIB)
-+CLARENSLIBDEPM         = $(MATHCORELIB)
- PEACLIBDEPM            = $(PROOFLIB) $(CLARENSLIB)
- PEACGUILIBDEPM         = $(GUILIB)
- EGLIBDEPM              = $(G3DLIB) $(GRAFLIB) $(GPADLIB) $(MATHCORELIB)
-@@ -83,6 +84,7 @@
- CINTEXLIBDEPM          = $(REFLEXLIB)
- REFLEXDICTLIBDEPM      = $(REFLEXLIB)
- RAUTHLIBDEPM           = $(NETLIB) $(IOLIB)
-+GLBSAUTHLIBDEPM        = $(RAUTHLIB)
- KRB5AUTHLIBDEPM        = $(RAUTHLIB) $(NETLIB)
- SRVAUTHLIBDEPM         = $(NETLIB)
- QTGSILIBDEPM           = $(GUILIB) $(GPADLIB)
-@@ -149,6 +151,7 @@
- PROOFDRAWLIBDEP        = $(PROOFDRAWLIBDEPM)
- PROOFXLIBDEP           = $(PROOFXLIBDEPM)
- SESSIONVIEWERLIBDEP    = $(SESSIONVIEWERLIBDEPM)
-+CLARENSLIBDEP          = $(CLARENSLIBDEPM)
- PEACLIBDEP             = $(PEACLIBDEPM)
- PEACGUILIBDEP          = $(PEACGUILIBDEPM)
- EGLIBDEP               = $(EGLIBDEPM)
-@@ -180,6 +183,7 @@
- CINTEXLIBDEP           = $(CINTEXLIBDEPM)
- REFEXDICTLIBDEP        = $(REFLEXDICTLIBDEPM)
- RAUTHLIBDEP            = $(RAUTHLIBDEPM)
-+GLBSAUTHLIBDEP         = $(GLBSAUTHLIBDEPM)
- KRB5AUTHLIBDEP         = $(KRB5AUTHLIBDEPM)
- SRVAUTHLIBDEP          = $(SRVAUTHLIBDEPM)
- QTGSILIBDEP            = $(QTGSILIBDEPM)
-@@ -261,6 +265,7 @@
- SESSIONVIEWERLIBEXTRA   = lib/libProof.lib lib/libGui.lib lib/libHist.lib \
-                           lib/libGpad.lib lib/libGraf.lib lib/libTree.lib \
-                           lib/libMathCore.lib
-+CLARENSLIBEXTRA         = lib/libMathCore.lib
- PEACLIBEXTRA            = lib/libProof.lib lib/libClarens.lib
- PEACGUILIBEXTRA         = lib/libGui.lib
- EGLIBEXTRA              = lib/libGraf3d.lib lib/libGraf.lib lib/libGpad.lib \
-@@ -320,6 +325,7 @@
- CINTEXLIBEXTRA          = lib/libReflex.lib
- REFLEXDICTLIBEXTRA      = lib/libReflex.lib
- RAUTHLIBEXTRA           = lib/libNet.lib lib/libRIO.lib
-+GLBSAUTHLIBEXTRA        = lib/libRootAuth.lib
- KRB5AUTHLIBEXTRA        = lib/libRootAuth.lib lib/libNet.lib
- SRVAUTHLIBEXTRA         = lib/libNet.lib
- QTGSILIBEXTRA           = lib/libGui.lib lib/libGpad.lib
-@@ -389,6 +395,7 @@
- PROOFXLIBEXTRA          = -Llib -lNet -lProof -lThread
- SESSIONVIEWERLIBEXTRA   = -Llib -lProof -lGui -lHist -lGpad -lGraf -lTree \
-                           -lMathCore
-+CLARENSLIBEXTRA         = -Llib -lMathCore
- PEACLIBEXTRA            = -Llib -lProof -lClarens
- PEACGUILIBEXTRA         = -Llib -lGui
- X3DLIBEXTRA             = -Llib -lGraf3d -lGui
-@@ -437,6 +444,7 @@
- CINTEXLIBEXTRA          = -Llib -lReflex
- REFLEXDICTLIBEXTRA      = -Llib -lReflex
- RAUTHLIBEXTRA           = -Llib -lNet -lRIO
-+GLBSAUTHLIBEXTRA        = -Llib -lRootAuth
- KRB5AUTHLIBEXTRA        = -Llib -lRootAuth -lNet
- SRVAUTHLIBEXTRA         = -Llib -lNet
- QTGSILIBEXTRA           = -Llib -lGui -lGpad
---- trunk/net/globusauth/Module.mk	2010/07/27 16:09:01	34624
-+++ trunk/net/globusauth/Module.mk	2010/07/27 16:18:34	34625
-@@ -45,7 +45,7 @@
- include/%.h:    $(GLBSAUTHDIRI)/%.h
- 		cp $< $@
- 
--$(GLBSAUTHLIB): $(GLBSAUTHO) $(GLBPATCHO) $(ORDER_) $(MAINLIBS)
-+$(GLBSAUTHLIB): $(GLBSAUTHO) $(GLBPATCHO) $(ORDER_) $(MAINLIBS) $(GLBSAUTHLIBDEP)
- 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
- 		   "$(SOFLAGS)" libGlobusAuth.$(SOEXT) $@ \
- 		   "$(GLBSAUTHO) $(GLBPATCHO)" \
diff --git a/root-split-latex.patch b/root-split-latex.patch
deleted file mode 100644
index 0473726..0000000
--- a/root-split-latex.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -ur root-5.26.00a.orig/roofit/roostats/src/HybridResult.cxx root-5.26.00a/roofit/roostats/src/HybridResult.cxx
---- root-5.26.00a.orig/roofit/roostats/src/HybridResult.cxx	2010-01-19 12:43:10.000000000 +0100
-+++ root-5.26.00a/roofit/roostats/src/HybridResult.cxx	2010-02-02 05:47:22.937047752 +0100
-@@ -175,8 +175,7 @@
-   // Returns an estimate of the error on CLb assuming a binomial error on
-   // CLb:
-   // BEGIN_LATEX
--  // #sigma_{CL_{b}} &=& #sqrt{CL_{b} #left( 1 - CL_{b} #right) /
--  //   n_{toys}} 
-+  // #sigma_{CL_{b}} &=& #sqrt{CL_{b} #left( 1 - CL_{b} #right) / n_{toys}}
-   // END_LATEX
-   unsigned const int n = fTestStat_b.size();
-   return TMath::Sqrt(CLb() * (1. - CLb()) / n);
-@@ -189,8 +188,7 @@
-   // Returns an estimate of the error on CLsplusb assuming a binomial
-   // error on CLsplusb:
-   // BEGIN_LATEX
--  // #sigma_{CL_{s+b}} &=& #sqrt{CL_{s+b} #left( 1 - CL_{s+b} #right) /
--  //   n_{toys}} 
-+  // #sigma_{CL_{s+b}} &=& #sqrt{CL_{s+b} #left( 1 - CL_{s+b} #right) / n_{toys}}
-   // END_LATEX
-   unsigned const int n = fTestStat_sb.size();
-   return TMath::Sqrt(CLsplusb() * (1. - CLsplusb()) / n);
-@@ -203,9 +201,7 @@
-   // Returns an estimate of the error on CLs through combination of the
-   // errors on CLb and CLsplusb:
-   // BEGIN_LATEX
--  // #sigma_{CL_s} &=& CL_s
--  //   #sqrt{#left( #frac{#sigma_{CL_{s+b}}}{CL_{s+b}} #right)^2 +
--  //     #left( #frac{#sigma_{CL_{b}}}{CL_{b}} #right)^2}
-+  // #sigma_{CL_s} &=& CL_s #sqrt{#left( #frac{#sigma_{CL_{s+b}}}{CL_{s+b}} #right)^2 + #left( #frac{#sigma_{CL_{b}}}{CL_{b}} #right)^2}
-   // END_LATEX
-   unsigned const int n_b = fTestStat_b.size();
-   unsigned const int n_sb = fTestStat_sb.size();
diff --git a/root-unuran.patch b/root-unuran.patch
index 4360b40..b051e6e 100644
--- a/root-unuran.patch
+++ b/root-unuran.patch
@@ -1,16 +1,16 @@
-diff -ur root-5.26.00b.orig/math/unuran/Module.mk root-5.26.00b/math/unuran/Module.mk
---- root-5.26.00b.orig/math/unuran/Module.mk	2010-02-11 14:20:23.000000000 +0100
-+++ root-5.26.00b/math/unuran/Module.mk	2010-06-10 09:18:04.620574784 +0200
-@@ -19,7 +19,7 @@
- UNURANETAG   := $(UNURANDIRS)/headers.d
- UNRCFG       := $(UNURANDIRS)/$(UNRVERS)/config.h
+diff -ur root-trunk.orig/math/unuran/Module.mk root-trunk/math/unuran/Module.mk
+--- root-trunk.orig/math/unuran/Module.mk	2010-11-25 20:41:32.000000000 +0100
++++ root-trunk/math/unuran/Module.mk	2010-11-25 20:51:47.190704977 +0100
+@@ -20,7 +20,7 @@
+ UNURANETAG   := $(call stripsrc,$(UNURANDIRS)/headers.d)
+ UNRCFG       := $(call stripsrc,$(UNURANDIRS)/$(UNRVERS)/config.h)
  
--UNRTARCONTENT:=$(subst $(UNRVERS),$(UNRDIRS),$(shell cd $(UNURANDIRS); gunzip -c $(UNRVERS).tar.gz | tar tf -))
+-UNRTARCONTENT:=$(subst $(UNRVERS),$(UNRDIRS),$(shell mkdir -p $(UNRDIR); cd $(UNRDIR); gunzip -c $(UNRSRCS) | tar tf -))
 +UNRTARCONTENT:=
- UNRS         := $(filter %.c,\
-                 $(filter $(UNRDIRS)/src/utils/%,$(UNRTARCONTENT))\
+ UNRS         := $(filter %.c, \
+                 $(filter $(UNRDIRS)/src/utils/%,$(UNRTARCONTENT)) \
                  $(filter $(UNRDIRS)/src/methods/%,$(UNRTARCONTENT)) \
-@@ -68,10 +68,9 @@
+@@ -69,10 +69,9 @@
  ##### local rules #####
  .PHONY:         all-$(MODNAME) clean-$(MODNAME) distclean-$(MODNAME)
  
@@ -22,7 +22,7 @@ diff -ur root-5.26.00b.orig/math/unuran/Module.mk root-5.26.00b/math/unuran/Modu
  $(UNRS):        $(UNURANETAG)
  
  $(UNURANETAG):	$(UNRSRCS)
-@@ -123,12 +122,12 @@
+@@ -125,12 +124,12 @@
  		GNUMAKE=$(MAKE) ./configure  CC="$$ACC"  \
  		CFLAGS="$$ACFLAGS");
  
@@ -36,4 +36,4 @@ diff -ur root-5.26.00b.orig/math/unuran/Module.mk root-5.26.00b/math/unuran/Modu
 +		   "$(UNURANLIBEXTRA) -lunuran"
  
  $(UNURANDS):    $(UNRINIT) $(UNURANDH1) $(UNURANL) $(ROOTCINTTMPDEP)
- 		@echo "Generating dictionary $@..."
+ 		$(MAKEDIR)
diff --git a/root.spec b/root.spec
index f2b0879..fbe8841 100644
--- a/root.spec
+++ b/root.spec
@@ -11,9 +11,9 @@
 %endif
 
 Name:		root
-Version:	5.26.00e
+Version:	5.28.00
 %global libversion %(cut -d. -f 1-2 <<< %{version})
-Release:	3%{?dist}
+Release:	1%{?dist}
 Summary:	Numerical data analysis framework
 
 Group:		Applications/Engineering
@@ -42,27 +42,10 @@ Patch1:		%{name}-fontconfig.patch
 Patch2:		%{name}-afterimage.patch
 #		Use system unuran:
 Patch3:		%{name}-unuran.patch
-#		Fix library detection when linker scripts are used:
-#		(backported from root svn trunk)
-Patch4:		%{name}-linker-scripts.patch
-#		Allow building RFIO IO modules using DPM's RFIO implementation:
-#		(backported from root svn trunk)
-Patch5:		%{name}-dpm-rfio.patch
-#		Missing explicit linking 
-#		(backported from root svn trunk)
-Patch6:		%{name}-missing-explicit-link.patch
-#		Can't split latex markup into multiple lines
-Patch7:		%{name}-split-latex.patch
-#		Fix broken macro
-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
+Patch4:		%{name}-cern-ppc.patch
 #		Fix doc markup
-Patch11:	%{name}-htmldoc.patch
-#		Fix crash in TGFontTypeComboBox destructor
-Patch12:	%{name}-fonttype-combobox-dtor.patch
+Patch5:		%{name}-htmldoc.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
@@ -79,9 +62,16 @@ BuildRequires:	glew-devel
 BuildRequires:	gl2ps-devel
 BuildRequires:	pcre-devel
 BuildRequires:	zlib-devel
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 BuildRequires:	libAfterImage-devel
+%else
+BuildRequires:	libjpeg-devel
+BuildRequires:	libpng-devel
+BuildRequires:	libtiff-devel
+%endif
 BuildRequires:	ncurses-devel
 BuildRequires:	avahi-compat-libdns_sd-devel
+BuildRequires:	avahi-devel
 BuildRequires:	xmlrpc-c-devel
 BuildRequires:	libxml2-devel
 BuildRequires:	fftw-devel
@@ -96,10 +86,12 @@ BuildRequires:	mesa-libGL-devel
 BuildRequires:	mesa-libGLU-devel
 BuildRequires:	postgresql-devel
 BuildRequires:	python-devel
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 BuildRequires:	qt-devel
 %if %{?fedora}%{!?fedora:0} >= 14
 BuildRequires:	qt-webkit-devel
 %endif
+%endif
 BuildRequires:	ruby
 BuildRequires:	ruby-devel
 BuildRequires:	openssl-devel
@@ -110,14 +102,21 @@ BuildRequires:	desktop-file-utils
 BuildRequires:	dcap-devel
 BuildRequires:	dpm-devel
 BuildRequires:	xrootd-devel
-BuildRequires:	dos2unix
+BuildRequires:	cfitsio-devel
 BuildRequires:	emacs
 BuildRequires:	emacs-el
 BuildRequires:	gcc-gfortran
 BuildRequires:	graphviz-devel
+%if "%{?rhel}" == "5"
+BuildRequires:	graphviz-gd
+%endif
+%if %{?fedora}%{!?fedora:0} >= 11 || %{?rhel}%{!?rhel:0} >= 6
 BuildRequires:	font(liberationsans)
 BuildRequires:	font(liberationserif)
 BuildRequires:	font(liberationmono)
+%else
+BuildRequires:	liberation-fonts
+%endif
 #		This contains a Symbol font that can be used by fontconfig
 BuildRequires:	urw-fonts
 Requires:	hicolor-icon-theme
@@ -150,7 +149,10 @@ analysis systems.
 
 %package icons
 Summary:	ROOT icon collection
+Group:		Applications/Engineering
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 BuildArch:	noarch
+%endif
 Requires:	%{name}-core = %{version}-%{release}
 
 %description icons
@@ -158,7 +160,10 @@ This package contains icons used by the ROOT GUI.
 
 %package doc
 Summary:	Documentation for the ROOT system
+Group:		Applications/Engineering
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 BuildArch:	noarch
+%endif
 License:	LGPLv2+ and GPLv2+ and BSD
 Requires:	%{name}-cint = %{version}-%{release}
 
@@ -168,7 +173,10 @@ documentation.
 
 %package tutorial
 Summary:	ROOT tutorial scripts and test suite
+Group:		Applications/Engineering
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 BuildArch:	noarch
+%endif
 Requires:	%{name}-cint = %{version}-%{release}
 
 %description tutorial
@@ -176,24 +184,28 @@ This package contains the tutorial scripts and test suite for ROOT.
 
 %package core
 Summary:	ROOT core libraries
-Provides:	root-io = %{version}-%{release}
-Obsoletes:	root-io < 5.26.00c-2
+Group:		Applications/Engineering
 License:	LGPLv2+ and BSD
 Requires:	%{name}-icons = %{version}-%{release}
 Requires:	%{name}-graf-asimage = %{version}-%{release}
 Requires:	xorg-x11-fonts-ISO8859-1-75dpi
+%if %{?fedora}%{!?fedora:0} >= 11 || %{?rhel}%{!?rhel:0} >= 6
 Requires:	font(liberationsans)
 Requires:	font(liberationserif)
 Requires:	font(liberationmono)
+%else
+Requires:	liberation-fonts
+%endif
 #		This contains a Symbol font that can be used by fontconfig
 Requires:	urw-fonts
 
 %description core
 This package contains the core libraries used by ROOT: libCore, libNew,
-libRint, libRIO and libThread.
+libRint and libThread.
 
 %package cint
 Summary:	CINT C++ interpreter
+Group:		Applications/Engineering
 Obsoletes:	%{name}-cint7 < 5.26.00c
 License:	MIT
 
@@ -202,6 +214,7 @@ This package contains the CINT C++ interpreter version 5.
 
 %package reflex
 Summary:	Reflex dictionary generator
+Group:		Applications/Engineering
 Requires:	gccxml
 
 %description reflex
@@ -213,6 +226,7 @@ This package contains the reflex dictionary generator for ROOT.
 #		./configure only allows --enable-cintex for ix86 and x86_64
 %package cintex
 Summary:	Reflex to CINT dictionary converter
+Group:		Applications/Engineering
 Requires:	%{name}-python = %{version}-%{release}
 
 %description cintex
@@ -223,6 +237,7 @@ with CINT with any class for which a Reflex dictionary is provided.
 
 %package proofd
 Summary:	Parallel ROOT Facility - distributed, parallel computing
+Group:		Applications/Engineering
 Requires:	%{name}-net-rpdutils = %{version}-%{release}
 Requires:	%{name}-proof = %{version}-%{release}
 Requires(preun):	chkconfig
@@ -240,6 +255,7 @@ transparent interface.
 
 %package rootd
 Summary:	ROOT remote file server
+Group:		Applications/Engineering
 Requires:	%{name}-net-rpdutils = %{version}-%{release}
 Requires(preun):	chkconfig
 Requires(preun):	initscripts
@@ -254,6 +270,7 @@ transparent interface.
 
 %package python
 Summary:	Python extension for ROOT
+Group:		Applications/Engineering
 
 %description python
 This package contains the Python extension for ROOT. This package
@@ -261,6 +278,7 @@ provide a Python interface to ROOT, and a ROOT interface to Python.
 
 %package ruby
 Summary:	Ruby extension for ROOT
+Group:		Applications/Engineering
 Provides:	ruby(libRuby) = %{version}
 requires:	ruby(abi) = 1.8
 
@@ -269,14 +287,23 @@ This package contains the Ruby extension for ROOT. The interface
 goes both ways - that is, you can call ROOT functions from Ruby, and
 invoke the Ruby interpreter from ROOT.
 
+%package genetic
+Summary:	Genetic algorithms for ROOT
+Group:		Applications/Engineering
+
+%description genetic
+This package contains a genetic minimizer module for ROOT.
+
 %package geom
 Summary:	Geometry library for ROOT
+Group:		Applications/Engineering
 
 %description geom
 This package contains a library for defining geometries in ROOT.
 
 %package gdml
 Summary:	GDML import/export for ROOT geometries
+Group:		Applications/Engineering
 Requires:	%{name}-python = %{version}-%{release}
 
 %description gdml
@@ -284,45 +311,62 @@ This package contains an import/export module for ROOT geometries.
 
 %package graf
 Summary:	2D graphics library for ROOT
+Group:		Applications/Engineering
 
 %description graf
 This package contains the 2-dimensional graphics library for ROOT.
 
 %package graf-asimage
 Summary:	AfterImage graphics renderer for ROOT
+Group:		Applications/Engineering
 
 %description graf-asimage
 This package contains the AfterImage renderer for ROOT, which allows
 you to store output graphics in many formats, including JPEG, PNG and
 TIFF.
 
+%package graf-fitsio
+Summary:	ROOT interface for the Flexible Image Transport System (FITS)
+Group:		Applications/Engineering
+
+%description graf-fitsio
+This package contains a library for using the Flexible Image Transport
+System (FITS) data format in root.
+
 %package graf-gpad
 Summary:	Canvas and pad library for ROOT
+Group:		Applications/Engineering
 
 %description graf-gpad
 This package contains a library for canvas and pad manipulations.
 
 %package graf-gviz
 Summary:	Graphviz 2D library for ROOT
+Group:		Applications/Engineering
 
 %description graf-gviz
 This package contains the 2-dimensional graphviz library for ROOT.
 
 %package graf-postscript
 Summary:	Postscript/PDF renderer library for ROOT
+Group:		Applications/Engineering
 
 %description graf-postscript
 This package contains a library for ROOT, which allows rendering
 postscript and PDF output.
 
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 %package graf-qt
 Summary:	Qt renderer for ROOT
+Group:		Applications/Engineering
 
 %description graf-qt
 This package contains the Qt renderer for ROOT.
+%endif
 
 %package graf-x11
 Summary:	X window system renderer for ROOT
+Group:		Applications/Engineering
 
 %description graf-x11
 This package contains the X11 renderer for ROOT, which allows using an
@@ -330,6 +374,7 @@ X display for showing graphics.
 
 %package graf3d
 Summary:	Basic 3D shapes library for ROOT
+Group:		Applications/Engineering
 
 %description graf3d
 This library contains the basic 3D shapes and classes for ROOT. For
@@ -337,12 +382,14 @@ a more full-blown geometry library, see the root-geom package.
 
 %package graf3d-eve
 Summary:	Event display library for ROOT
+Group:		Applications/Engineering
 
 %description graf3d-eve
 This package contains a library for defining event displays in ROOT.
 
 %package graf3d-gl
 Summary:	GL renderer for ROOT
+Group:		Applications/Engineering
 
 %description graf3d-gl
 This package contains the GL renderer for ROOT. This library provides
@@ -352,12 +399,14 @@ rendering of histograms, and similar. Included is also a high quality
 
 %package graf3d-gviz3d
 Summary:	Graphviz 3D library for ROOT
+Group:		Applications/Engineering
 
 %description graf3d-gviz3d
 This package contains the 3-dimensional graphviz library for ROOT.
 
 %package graf3d-x3d
 Summary:	X 3D renderer for ROOT
+Group:		Applications/Engineering
 
 %description graf3d-x3d
 This package contains the X 3D renderer for ROOT. This library provides
@@ -366,6 +415,7 @@ a low quality 3D viewer for ROOT defined geometries.
 
 %package gui
 Summary:	GUI library for ROOT
+Group:		Applications/Engineering
 Requires:	%{name}-graf-x11 = %{version}-%{release}
 Requires:	%{name}-gui-ged = %{version}-%{release}
 
@@ -374,6 +424,7 @@ This package contains a library for defining graphical user interfaces.
 
 %package gui-fitpanel
 Summary:	GUI element for fits in ROOT
+Group:		Applications/Engineering
 
 %description gui-fitpanel
 This package contains a library to show a pop-up dialog when fitting
@@ -381,6 +432,7 @@ various kinds of data.
 
 %package gui-ged
 Summary:	GUI element for editing various ROOT objects
+Group:		Applications/Engineering
 
 %description gui-ged
 This package contains a library to show a pop-up window for editing
@@ -388,19 +440,24 @@ various ROOT objects.
 
 %package guibuilder
 Summary:	GUI editor library for ROOT
+Group:		Applications/Engineering
 
 %description guibuilder
 This package contains a library for editing graphical user interfaces
 in ROOT.
 
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 %package gui-qt
 Summary:	Qt GUI for ROOT
+Group:		Applications/Engineering
 
 %description gui-qt
 This package contains the Qt GUI for ROOT.
+%endif
 
 %package gui-recorder
 Summary:	Interface for recording and replaying events in ROOT
+Group:		Applications/Engineering
 
 %description gui-recorder
 This library provides interface for recording and replaying events in ROOT.
@@ -412,6 +469,7 @@ and can be replayed again anytime.
 
 %package hbook
 Summary:	Hbook library for ROOT
+Group:		Applications/Engineering
 
 %description hbook
 This package contains the Hbook library for ROOT, allowing you to
@@ -419,6 +477,7 @@ access legacy Hbook files (NTuples and Histograms from PAW).
 
 %package hist
 Summary:	Histogram library for ROOT
+Group:		Applications/Engineering
 Requires:	%{name}-hist-painter = %{version}-%{release}
 
 %description hist
@@ -426,44 +485,65 @@ This package contains a library for histogramming in ROOT.
 
 %package hist-painter
 Summary:	Histogram painter plugin for ROOT
+Group:		Applications/Engineering
 
 %description hist-painter
 This package contains a painter of histograms for ROOT.
 
 %package spectrum
 Summary:	Spectra analysis library for ROOT
+Group:		Applications/Engineering
 
 %description spectrum
 This package contains the Spectrum library for ROOT.
 
 %package spectrum-painter
 Summary:	Spectrum painter plugin for ROOT
+Group:		Applications/Engineering
 
 %description spectrum-painter
 This package contains a painter of spectra for ROOT.
 
+%package hist-factory
+Summary:	RooFit PDFs from ROOT histograms
+Group:		Applications/Engineering
+
+%description hist-factory
+Create RooFit probability density functions from ROOT histograms.
+
 %package html
 Summary:	HTML documentation generator for ROOT
+Group:		Applications/Engineering
 Requires:	graphviz
 
 %description html
 This package contains classes to automatically extract documentation
 from marked up sources.
 
+%package io
+Summary:	Input/output of ROOT objects
+Group:		Applications/Engineering
+
+%description io
+This package provides I/O routines for ROOT objects.
+
 %package io-dcache
 Summary:	dCache input/output library for ROOT
+Group:		Applications/Engineering
 
 %description io-dcache
 This package contains the dCache extension for ROOT.
 
 %package io-rfio
 Summary:	Remote File input/output library for ROOT
+Group:		Applications/Engineering
 
 %description io-rfio
 This package contains the Remote File IO extension for ROOT.
 
 %package io-sql
 Summary:	SQL input/output library for ROOT
+Group:		Applications/Engineering
 
 %description io-sql
 This package contains the SQL extension for ROOT, that allows
@@ -472,12 +552,14 @@ TFile interface.
 
 %package io-xml
 Summary:	XML reader library for ROOT
+Group:		Applications/Engineering
 
 %description io-xml
 This package contains the XML reader library for ROOT.
 
 %package foam
 Summary:	A Compact Version of the Cellular Event Generator
+Group:		Applications/Engineering
 
 %description foam
 The general-purpose self-adapting Monte Carlo (MC) event
@@ -488,6 +570,7 @@ easier to use for the average user.
 
 %package fftw
 Summary:	FFTW library for ROOT
+Group:		Applications/Engineering
 License:	GPLv2+
 
 %description fftw
@@ -496,6 +579,7 @@ It uses the very fast fftw (version 3) library.
 
 %package fumili
 Summary:	Fumili library for ROOT
+Group:		Applications/Engineering
 
 %description fumili
 This package contains the fumili library for ROOT. This provides an
@@ -503,6 +587,7 @@ alternative fitting algorithm for ROOT.
 
 %package genvector
 Summary:	Generalized vector library for ROOT
+Group:		Applications/Engineering
 
 %description genvector
 This package contains the Genvector library for ROOT. This provides
@@ -510,6 +595,7 @@ a generalized vector library.
 
 %package mathcore
 Summary:	Core mathematics library for ROOT
+Group:		Applications/Engineering
 Requires:	%{name}-minuit = %{version}-%{release}
 
 %description mathcore
@@ -517,6 +603,7 @@ This package contains the MathCore library for ROOT.
 
 %package mathmore
 Summary:	GSL interface library for ROOT
+Group:		Applications/Engineering
 License:	GPLv2+
 
 %description mathmore
@@ -527,12 +614,14 @@ is licensed under GPLv2+ due to its use of GSL.
 
 %package matrix
 Summary:	Matrix library for ROOT
+Group:		Applications/Engineering
 
 %description matrix
 This package contains the Matrix library for ROOT.
 
 %package minuit
 Summary:	Minuit library for ROOT
+Group:		Applications/Engineering
 
 %description minuit
 This package contains the MINUIT library for ROOT. This provides a
@@ -540,6 +629,7 @@ fitting algorithm for ROOT.
 
 %package minuit2
 Summary:	Minuit version 2 library for ROOT
+Group:		Applications/Engineering
 
 %description minuit2
 This package contains the MINUIT version 2 library for ROOT. This
@@ -547,6 +637,7 @@ provides an fitting algorithm for ROOT.
 
 %package mlp
 Summary:	Multi-layer perceptron extension for ROOT
+Group:		Applications/Engineering
 
 %description mlp
 This package contains the mlp library for ROOT. This library provides
@@ -554,12 +645,14 @@ a multi-layer perceptron neural network package for ROOT.
 
 %package physics
 Summary:	Physics library for ROOT
+Group:		Applications/Engineering
 
 %description physics
 This package contains the physics library for ROOT.
 
 %package quadp
 Summary:	QuadP library for ROOT
+Group:		Applications/Engineering
 
 %description quadp
 This package contains the QuadP library for ROOT. This provides the a
@@ -569,12 +662,14 @@ subject to linear constraints.
 
 %package smatrix
 Summary:	Sparse matrix library for ROOT
+Group:		Applications/Engineering
 
 %description smatrix
 This package contains the Smatrix library for ROOT.
 
 %package splot
 Summary:	Splot library for ROOT
+Group:		Applications/Engineering
 
 %description splot
 A common method used in High Energy Physics to perform measurements
@@ -606,6 +701,7 @@ discriminating variables.
 
 %package unuran
 Summary:	Random number generator library
+Group:		Applications/Engineering
 License:	GPLv2+
 
 %description unuran
@@ -625,6 +721,7 @@ variates from the desired distribution.
 
 %package memstat
 Summary:	Memory statistics tool for use with ROOT
+Group:		Applications/Engineering
 
 %description memstat
 This package contains the memory statistics tool for debugging memory
@@ -632,48 +729,56 @@ leaks and such.
 
 %package table
 Summary:	Table library for ROOT
+Group:		Applications/Engineering
 
 %description table
 This package contains the Table library for ROOT.
 
 %package montecarlo-eg
 Summary:	Event generator library for ROOT
+Group:		Applications/Engineering
 
 %description montecarlo-eg
 This package contains an event generator library for ROOT.
 
 %package montecarlo-vmc
 Summary:	Virtual Monte-Carlo (simulation) library for ROOT
+Group:		Applications/Engineering
 
 %description montecarlo-vmc
 This package contains the VMC library for ROOT.
 
 %package net
 Summary:	Net library for ROOT
+Group:		Applications/Engineering
 
 %description net
 This package contains the ROOT networking library.
 
 %package net-rpdutils
 Summary:	Authentication utilities used by rootd and proofd
+Group:		Applications/Engineering
 
 %description net-rpdutils
 This package contains authentication utilities used by rootd and proofd.
 
 %package net-bonjour
 Summary:	Bonjour extension for ROOT
+Group:		Applications/Engineering
 
 %description net-bonjour
 This package contains a bonjour extension for ROOT.
 
 %package net-auth
 Summary:	Authentication extension for ROOT
+Group:		Applications/Engineering
 
 %description net-auth
 This package contains the basic authentication algorithms used by ROOT.
 
 %package net-globus
 Summary:	Globus extension for ROOT
+Group:		Applications/Engineering
 Requires:	globus-proxy-utils
 
 %description net-globus
@@ -682,6 +787,7 @@ authentication and authorization against Globus.
 
 %package net-krb5
 Summary:	Kerberos (version 5) extension for ROOT
+Group:		Applications/Engineering
 Requires:	krb5-workstation
 
 %description net-krb5
@@ -690,6 +796,7 @@ allows authentication and authorization using Kerberos tokens.
 
 %package net-ldap
 Summary:	LDAP extension for ROOT
+Group:		Applications/Engineering
 
 %description net-ldap
 This package contains the LDAP extension for ROOT. This gives you
@@ -697,6 +804,7 @@ access to LDAP directories via ROOT.
 
 %package netx
 Summary:	NetX extension for ROOT
+Group:		Applications/Engineering
 
 %description netx
 This package contains the NetX extension for ROOT, i.e. a client for
@@ -704,13 +812,22 @@ the xrootd server.
 
 %package proof
 Summary:	PROOF extension for ROOT
+Group:		Applications/Engineering
 
 %description proof
 This package contains the proof extension for ROOT. This provides a
 client to use in a PROOF environment.
 
+%package proof-pq2
+Summary:	PROOF Quick Query (pq2)
+Group:		Applications/Engineering
+
+%description proof-pq2
+Shell-based interface to the PROOF dataset handling.
+
 %package proof-sessionviewer
 Summary:	GUI to browse an interactive PROOF session
+Group:		Applications/Engineering
 
 %description proof-sessionviewer
 This package contains a library for browsing an interactive PROOF
@@ -718,6 +835,7 @@ session in ROOT.
 
 %package clarens
 Summary:	Clarens extension for ROOT
+Group:		Applications/Engineering
 
 %description clarens
 This package contains the Clarens extension for ROOT, for use in a
@@ -729,6 +847,7 @@ computational resources provided by computing grids.
 
 %package peac
 Summary:	PEAC extension for ROOT - run-time libraries
+Group:		Applications/Engineering
 
 %description peac
 This package contains the PEAC (Proof Enabled Analysis Center)
@@ -741,6 +860,7 @@ services.
 
 %package xproof
 Summary:	XPROOF extension for ROOT
+Group:		Applications/Engineering
 
 %description xproof
 This package contains the xproof extension for ROOT. This provides a
@@ -748,6 +868,7 @@ client to be used in a PROOF environment.
 
 %package roofit
 Summary:	ROOT extension for modeling expected distributions
+Group:		Applications/Engineering
 License:	BSD
 
 %description roofit
@@ -765,6 +886,7 @@ suitable for adoption in different disciplines as well.
 
 %package sql-mysql
 Summary:	MySQL client plugin for ROOT
+Group:		Applications/Engineering
 
 %description sql-mysql
 This package contains the MySQL plugin for ROOT. This plugin
@@ -774,6 +896,7 @@ ROOT environment.
 
 %package sql-odbc
 Summary:	ODBC plugin for ROOT
+Group:		Applications/Engineering
 
 %description sql-odbc
 This package contains the ODBC (Open DataBase Connectivity) plugin
@@ -782,6 +905,7 @@ supports the ODBC protocol.
 
 %package sql-pgsql
 Summary:	PostgreSQL client plugin for ROOT
+Group:		Applications/Engineering
 
 %description sql-pgsql
 This package contains the PostGreSQL plugin for ROOT. This plugin
@@ -791,6 +915,7 @@ ROOT environment.
 
 %package tmva
 Summary:	Toolkit for multivariate data analysis
+Group:		Applications/Engineering
 License:	BSD
 
 %description tmva
@@ -815,36 +940,45 @@ compared.
 
 %package tree
 Summary:	Tree library for ROOT
+Group:		Applications/Engineering
 
 %description tree
 This package contains the Tree library for ROOT.
 
 %package tree-player
 Summary:	Library to loop over a ROOT tree
+Group:		Applications/Engineering
 
 %description tree-player
 This package contains a plugin to loop over a ROOT tree.
 
 %package tree-viewer
 Summary:	GUI to browse a ROOT tree
+Group:		Applications/Engineering
 
 %description tree-viewer
 This package contains a plugin for browsing a ROOT tree in ROOT.
 
 %package -n emacs-%{name}
-Requires:	%{name} = %{version}-%{release}
-Requires:	emacs(bin) >= %{emacs_version}
 Summary:	Compiled elisp files to run root under GNU Emacs
+Group:		Applications/Engineering
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 BuildArch:	noarch
+%endif
+Requires:	%{name} = %{version}-%{release}
+Requires:	emacs(bin) >= %{emacs_version}
 
 %description -n emacs-%{name}
 emacs-root is an add-on package for GNU Emacs. It provides integration
 with ROOT.
 
 %package -n emacs-%{name}-el
-Requires:	emacs-%{name} = %{version}-%{release}
 Summary:	Elisp source files for root under GNU Emacs
+Group:		Applications/Engineering
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 BuildArch:	noarch
+%endif
+Requires:	emacs-%{name} = %{version}-%{release}
 
 %description -n emacs-%{name}-el
 This package contains the elisp source files for root under GNU Emacs. You
@@ -853,7 +987,7 @@ package to use root with GNU Emacs.
 
 %prep
 %setup -q
-%if "%(pkg-config --modversion ftgl)" < "2.1.3"
+%if "%(pkg-config --modversion ftgl 2>/dev/null)" < "2.1.3"
 %patch0 -p1
 %endif
 %patch1 -p1
@@ -861,13 +995,6 @@ package to use root with GNU Emacs.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-%patch9 -p1
-%patch10 -p1
-%patch11 -p1
-%patch12 -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 \
@@ -877,51 +1004,27 @@ find . '(' -name '*.cxx' -o -name '*.cpp' -o -name '*.C' -o -name '*.c' -o \
 
 chmod 644 cint/cint/include/makehpib \
 	  cint/cint/stl/_climits \
-	  cint/cint7/include/makeit.bat \
 	  test/DrawTest.sh \
 	  test/dt_RunDrawTest.sh \
 	  test/dt_MakeFiles.sh \
 	  test/ProofBench/make_event_par.sh \
 	  test/RootIDE/Makefile \
-	  test/RootShower/.rootshowerrc
-
-dos2unix tutorials/image/mditestbg.xpm \
-	 tutorials/gui/mditestbg.xpm
-
-for f in test/RootShower/RootShower.rc \
-	 tutorials/eve/alice_esd_html_summary.C \
-	 tutorials/eve/SplitGLView.C \
-	 tutorials/graphics/markerwarning.C ; do
-    iconv -f iso-8859-1 -t utf-8 $f -o $f.new
-    mv $f.new $f
-done
-
-# No idea how this happened...
-for f in core/base/inc/TVirtualFFT.h ; do
-    iconv -f euc-jp -t utf-8 $f -o $f.new
-    mv $f.new $f
-done
-
-# Junk byte - it is neither iso-8859-1 nor macroman - remove
-sed s/"plateau."/"plateau"/ -i test/stressFit.cxx
-
-# This one is a mixture of iso-8859-1 and macroman
-iconv -f macintosh -t utf-8 README/CREDITS | sed s/È/é/ > README/CREDITS.new
-mv README/CREDITS.new README/CREDITS
-
-# Typo in documentation
-sed s/SePalette/SetPalette/g -i hist/histpainter/src/THistPainter.cxx
+	  tutorials/fitsio/sample1.fits
 
 # Badly named file - not python - aborts python byte compilation
 mv tutorials/pyroot/fit1_py.py tutorials/pyroot/fit1_py.txt
 sed s/fit1_py.py/fit1_py.txt/ -i tutorials/pyroot/fit1.py
 
-# Fix strange example
-sed s/ABCDFGF/ABCDEFGH/ -i core/base/doc/macros/fonts.C
-
 # Remove embedded sources in order to be sure they are not used
 #  * afterimage
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 rm -rf graf2d/asimage/src/libAfterImage
+%else
+rm -rf graf2d/asimage/src/libAfterImage/libjpeg
+rm -rf graf2d/asimage/src/libAfterImage/libpng
+rm -rf graf2d/asimage/src/libAfterImage/zlib
+sed '/zlib\/zlib.h/d' -i graf2d/asimage/src/libAfterImage/.depend
+%endif
 #  * ftgl
 rm -rf graf3d/ftgl/src graf3d/ftgl/inc
 #  * freetype
@@ -972,7 +1075,11 @@ unset QTINC
 	    --etcdir=%{_datadir}/%{name} \
 	    --docdir=%{_defaultdocdir}/%{name}-%{version} \
 	    --elispdir=%{emacs_lispdir}/%{name} \
+%if %{?fedora}%{!?fedora:0} >= 10 || %{?rhel}%{!?rhel:0} >= 6
 	    --disable-builtin-afterimage \
+%else
+	    --enable-builtin-afterimage \
+%endif
 	    --disable-builtin-ftgl \
 	    --disable-builtin-freetype \
 	    --disable-builtin-glew \
@@ -981,12 +1088,12 @@ unset QTINC
 	    --enable-asimage \
 	    --enable-astiff \
 	    --enable-bonjour \
-	    --enable-cint5 \
 	    --enable-clarens \
 	    --enable-dcache \
 	    --enable-editline \
 	    --enable-exceptions \
 	    --enable-explicitlink \
+	    --enable-fitsio \
 	    --enable-fftw3 \
 	    --enable-gdml \
 	    --enable-globus \
@@ -1004,8 +1111,13 @@ unset QTINC
 	    --enable-peac \
 	    --enable-pgsql \
 	    --enable-python \
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 	    --enable-qt \
 	    --enable-qtgsi \
+%else
+	    --disable-qt \
+	    --disable-qtgsi \
+%endif
 	    --enable-reflex \
 	    --enable-rfio \
 	      --with-rfio-incdir=%{_includedir}/dpm \
@@ -1019,6 +1131,7 @@ unset QTINC
 	    --enable-table \
 	    --enable-tmva \
 	    --enable-unuran \
+	    --enable-x11 \
 	    --enable-xml \
 	    --enable-xft \
 	    --enable-xrootd \
@@ -1031,16 +1144,15 @@ unset QTINC
 %endif
 	    --disable-afs \
 	    --disable-alien \
+	    --disable-alloc \
 	    --disable-castor \
 	    --disable-chirp \
-	    --disable-cint7 \
+	    --disable-cling \
 	    --disable-gfal \
-	    --disable-g4root \
 	    --disable-glite \
 	    --disable-hdfs \
 	    --disable-monalisa \
 	    --disable-oracle \
-	    --disable-pch \
 	    --disable-pythia6 \
 	    --disable-pythia8 \
 	    --disable-rpath \
@@ -1078,10 +1190,11 @@ Terminal=true
 Type=Application
 MimeType=application/x-root;
 Categories=Utility;
+Encoding=UTF-8
 EOF
 
 desktop-file-install --dir=${RPM_BUILD_ROOT}%{_datadir}/applications \
-		     root.desktop
+		     --vendor "" root.desktop
 install -p -m 644 build/package/debian/root-system-bin.png \
     ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/48x48/apps/root.png
 
@@ -1117,6 +1230,10 @@ mv ${RPM_BUILD_ROOT}%{_libdir}/%{name}/libRuby.so.%{libversion} \
 ln -s ..`sed 's!%{_libdir}!!' <<< %{ruby_sitearch}`/libRuby.so \
    ${RPM_BUILD_ROOT}%{_libdir}/%{name}/libRuby.so.%{libversion}
 
+# These should be in PATH
+mv ${RPM_BUILD_ROOT}%{_datadir}/%{name}/proof/utils/pq2/pq2* \
+   ${RPM_BUILD_ROOT}%{_bindir}
+
 # Remove some junk
 rm ${RPM_BUILD_ROOT}%{_datadir}/%{name}/daemons/*.plist
 rm ${RPM_BUILD_ROOT}%{_datadir}/%{name}/daemons/*.xinetd
@@ -1128,6 +1245,10 @@ rm ${RPM_BUILD_ROOT}%{_datadir}/%{name}/hostcert.conf
 rm ${RPM_BUILD_ROOT}%{_datadir}/%{name}/proof/*.sample
 rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/proof/utils
 rm ${RPM_BUILD_ROOT}%{_datadir}/%{name}/svninfo.txt
+%if %{?fedora}%{!?fedora:0} < 10 && %{?rhel}%{!?rhel:0} < 6
+rm ${RPM_BUILD_ROOT}%{_libdir}/%{name}/libAfterImage.a
+%endif
+rm ${RPM_BUILD_ROOT}%{_bindir}/drop_from_path
 rm ${RPM_BUILD_ROOT}%{_bindir}/thisroot*
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/cint.1
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/cmsd.1
@@ -1136,11 +1257,14 @@ rm ${RPM_BUILD_ROOT}%{_mandir}/man1/makecint.1
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/olbd.1
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/proofserva.1
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/roota.1
+rm ${RPM_BUILD_ROOT}%{_mandir}/man1/setup-pq2.1
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/xprep.1
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/xrd*.1
 rm ${RPM_BUILD_ROOT}%{_mandir}/man1/xrootd.1
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 rm ${RPM_BUILD_ROOT}%{_includedir}/%{name}/*.cw
 rm ${RPM_BUILD_ROOT}%{_includedir}/%{name}/*.pri
+%endif
 rm ${RPM_BUILD_ROOT}%{_includedir}/%{name}/proofdp.h
 rm ${RPM_BUILD_ROOT}%{_includedir}/%{name}/rootdp.h
 rm ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-%{version}/BUILDSYSTEM
@@ -1167,6 +1291,9 @@ rm TFile/P110_THDFSFile.C
 rm TGLManager/P020_TGWin32GLManager.C
 rm TGrid/P010_TAlien.C
 rm TGrid/P020_TGLite.C
+%if %{?fedora}%{!?fedora:0} < 9 && %{?rhel}%{!?rhel:0} < 6
+rm TGuiFactory/P020_TQtRootGuiFactory.C
+%endif
 rm TImagePlugin/P010_TASPluginGS.C
 rm TSQLServer/P030_TSapDBServer.C
 rm TSQLServer/P040_TOracleServer.C
@@ -1176,6 +1303,9 @@ rm TViewerX3D/P020_TQtViewerX3D.C
 rm TVirtualGLImp/P020_TGWin32GL.C
 rm TVirtualMonitoringWriter/P010_TMonaLisaWriter.C
 rm TVirtualX/P030_TGWin32.C
+%if %{?fedora}%{!?fedora:0} < 9 && %{?rhel}%{!?rhel:0} < 6
+rm TVirtualX/P040_TGQt.C
+%endif
 rmdir TAFS
 rmdir TDataProgressDialog
 rmdir TGrid
@@ -1195,21 +1325,18 @@ 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
 rm .rootrc
-# Partial workaround for https://savannah.cern.ch/bugs/?70608
-touch htmldoc/INCLUDE_Index.html
 mv htmldoc ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-%{version}/html
 
 # Create includelist files ...
 for module in `find * -name Module.mk` ; do
     module=`dirname $module`
-    make -f %{SOURCE1} includelist MODULE=$module
+    make -f %{SOURCE1} includelist MODULE=$module ROOT_SRCDIR=$PWD
 done
 
 # ... and merge some of them
 cat includelist-core-[^w]* > includelist-core
-cat includelist-io-io >> includelist-core
 cat includelist-geom-geom* > includelist-geom
-cat includelist-roofit-* > includelist-roofit
+cat includelist-roofit-roo* > includelist-roofit
 cat includelist-gui-qt* > includelist-gui-qt
 cat includelist-graf2d-x11ttf >> includelist-graf2d-x11
 cat includelist-gui-guihtml >> includelist-gui-gui
@@ -1277,6 +1404,8 @@ fi
 %postun python -p /sbin/ldconfig
 %post ruby -p /sbin/ldconfig
 %postun ruby -p /sbin/ldconfig
+%post genetic -p /sbin/ldconfig
+%postun genetic -p /sbin/ldconfig
 %post geom -p /sbin/ldconfig
 %postun geom -p /sbin/ldconfig
 %post gdml -p /sbin/ldconfig
@@ -1285,14 +1414,18 @@ fi
 %postun graf -p /sbin/ldconfig
 %post graf-asimage -p /sbin/ldconfig
 %postun graf-asimage -p /sbin/ldconfig
+%post graf-fitsio -p /sbin/ldconfig
+%postun graf-fitsio -p /sbin/ldconfig
 %post graf-gpad -p /sbin/ldconfig
 %postun graf-gpad -p /sbin/ldconfig
 %post graf-gviz -p /sbin/ldconfig
 %postun graf-gviz -p /sbin/ldconfig
 %post graf-postscript -p /sbin/ldconfig
 %postun graf-postscript -p /sbin/ldconfig
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 %post graf-qt -p /sbin/ldconfig
 %postun graf-qt -p /sbin/ldconfig
+%endif
 %post graf-x11 -p /sbin/ldconfig
 %postun graf-x11 -p /sbin/ldconfig
 %post graf3d -p /sbin/ldconfig
@@ -1313,8 +1446,10 @@ fi
 %postun gui-ged -p /sbin/ldconfig
 %post guibuilder -p /sbin/ldconfig
 %postun guibuilder -p /sbin/ldconfig
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 %post gui-qt -p /sbin/ldconfig
 %postun gui-qt -p /sbin/ldconfig
+%endif
 %post gui-recorder -p /sbin/ldconfig
 %postun gui-recorder -p /sbin/ldconfig
 %post hbook -p /sbin/ldconfig
@@ -1327,8 +1462,12 @@ fi
 %postun spectrum -p /sbin/ldconfig
 %post spectrum-painter -p /sbin/ldconfig
 %postun spectrum-painter -p /sbin/ldconfig
+%post hist-factory -p /sbin/ldconfig
+%postun hist-factory -p /sbin/ldconfig
 %post html -p /sbin/ldconfig
 %postun html -p /sbin/ldconfig
+%post io -p /sbin/ldconfig
+%postun io -p /sbin/ldconfig
 %post io-dcache -p /sbin/ldconfig
 %postun io-dcache -p /sbin/ldconfig
 %post io-rfio -p /sbin/ldconfig
@@ -1455,10 +1594,10 @@ fi
 %{_libdir}/%{name}/libCore.*
 %{_libdir}/%{name}/libNew.*
 %{_libdir}/%{name}/libRint.*
-%{_libdir}/%{name}/libRIO.*
 %{_libdir}/%{name}/libThread.*
 %{_libdir}/%{name}/lib[^R]*Dict.*
 %dir %{_datadir}/%{name}
+%{_datadir}/%{name}/class.rules
 %{_datadir}/%{name}/gdb-backtrace.sh
 %{_datadir}/%{name}/root.mimes
 %{_datadir}/%{name}/system.rootauthrc
@@ -1469,8 +1608,6 @@ fi
 %{_datadir}/%{name}/macros/Dialogs.C
 %dir %{_datadir}/%{name}/plugins
 %dir %{_datadir}/%{name}/plugins/*
-%{_datadir}/%{name}/plugins/TArchiveFile/P010_TZIPFile.C
-%{_datadir}/%{name}/plugins/TVirtualStreamerInfo/P010_TStreamerInfo.C
 %{_includedir}/%{name}/RConfigOptions.h
 %{_includedir}/%{name}/RConfigure.h
 %{_includedir}/%{name}/compiledata.h
@@ -1553,6 +1690,11 @@ fi
 %{_libdir}/%{name}/libRuby.*
 %{ruby_sitearch}/libRuby.*
 
+%files genetic -f includelist-math-genetic
+%defattr(-,root,root,-)
+%{_libdir}/%{name}/libGenetic.*
+%{_datadir}/%{name}/plugins/ROOT@@Math@@Minimizer/P080_GeneticMinimizer.C
+
 %files geom -f includelist-geom
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libGeom.*
@@ -1580,6 +1722,10 @@ fi
 %{_datadir}/%{name}/plugins/TImage/P010_TASImage.C
 %{_datadir}/%{name}/plugins/TPaletteEditor/P010_TASPaletteEditor.C
 
+%files graf-fitsio -f includelist-graf2d-fitsio
+%defattr(-,root,root,-)
+%{_libdir}/%{name}/libFITSIO.*
+
 %files graf-gpad -f includelist-graf2d-gpad
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libGpad.*
@@ -1597,10 +1743,12 @@ fi
 %{_datadir}/%{name}/plugins/TVirtualPS/P030_TPDF.C
 %{_datadir}/%{name}/plugins/TVirtualPS/P040_TImageDump.C
 
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 %files graf-qt -f includelist-graf2d-qt
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libGQt.*
 %{_datadir}/%{name}/plugins/TVirtualX/P040_TGQt.C
+%endif
 
 %files graf-x11 -f includelist-graf2d-x11
 %defattr(-,root,root,-)
@@ -1663,11 +1811,13 @@ fi
 %{_datadir}/%{name}/plugins/TGuiBuilder/P010_TRootGuiBuilder.C
 %{_datadir}/%{name}/plugins/TVirtualDragManager/P010_TGuiBldDragManager.C
 
+%if %{?fedora}%{!?fedora:0} >= 9 || %{?rhel}%{!?rhel:0} >= 6
 %files gui-qt -f includelist-gui-qt
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libQtRoot.*
 %{_libdir}/%{name}/libQtGSI.*
 %{_datadir}/%{name}/plugins/TGuiFactory/P020_TQtRootGuiFactory.C
+%endif
 
 %files gui-recorder -f includelist-gui-recorder
 %defattr(-,root,root,-)
@@ -1700,12 +1850,29 @@ fi
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libSpectrumPainter.*
 
+%files hist-factory -f includelist-roofit-histfactory
+%defattr(-,root,root,-)
+%{_bindir}/hist2workspace
+%{_bindir}/prepareHistFactory
+%{_mandir}/man1/hist2workspace.1*
+%{_mandir}/man1/prepareHistFactory.1*
+%{_libdir}/%{name}/libHistFactory.*
+%{_datadir}/%{name}/HistFactorySchema.dtd
+%dir %{_includedir}/%{name}/RooStats/HistFactory
+%doc roofit/histfactory/doc/README
+
 %files html -f includelist-html
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libHtml.*
 %{_datadir}/%{name}/html
 %{_datadir}/%{name}/macros/html.C
 
+%files io -f includelist-io-io
+%defattr(-,root,root,-)
+%{_libdir}/%{name}/libRIO.*
+%{_datadir}/%{name}/plugins/TArchiveFile/P010_TZIPFile.C
+%{_datadir}/%{name}/plugins/TVirtualStreamerInfo/P010_TStreamerInfo.C
+
 %files io-dcache -f includelist-io-dcache
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libDCache.*
@@ -1732,6 +1899,7 @@ fi
 %files foam -f includelist-math-foam
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libFoam.*
+%{_datadir}/%{name}/plugins/ROOT@@Math@@DistSampler/P020_TFoamSampler.C
 
 %files fftw -f includelist-math-fftw
 %defattr(-,root,root,-)
@@ -1814,11 +1982,11 @@ fi
 %files unuran -f includelist-math-unuran
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libUnuran.*
+%{_datadir}/%{name}/plugins/ROOT@@Math@@DistSampler/P010_TUnuranSampler.C
 
 %files memstat -f includelist-misc-memstat
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libMemStat.*
-%{_libdir}/%{name}/libMemStatGui.*
 
 %files table -f includelist-misc-table
 %defattr(-,root,root,-)
@@ -1897,6 +2065,11 @@ fi
 %{_datadir}/%{name}/valgrind-root.supp
 %doc %{_defaultdocdir}/%{name}-%{version}/README.PROOF
 
+%files proof-pq2 -f includelist-proof-pq2
+%defattr(-,root,root,-)
+%{_bindir}/pq2*
+%{_mandir}/man1/pq2*.1*
+
 %files proof-sessionviewer -f includelist-gui-sessionviewer
 %defattr(-,root,root,-)
 %{_libdir}/%{name}/libSessionViewer.*
@@ -1976,6 +2149,17 @@ fi
 %{emacs_lispdir}/root/*.el
 
 %changelog
+* Wed Dec 15 2010 Mattias Ellert  - 5.28.00-1
+- Update to 5.28.00
+- Drop patches fixed upstream: root-linker-scripts.patch, root-dpm-rfio.patch,
+  root-missing-explicit-link.patch, root-split-latex.patch,
+  root-cern-filename.patch, root-make-3.82.patch,
+  root-fonttype-combobox-dtor.patch
+- New sub-packages: root-genetic, root-graf-fitsio, root-hist-factory,
+  root-proof-pq2
+- Make root-io a separate package again - the circular dependency with the
+  root-core package was resolved upstream
+
 * Fri Nov 12 2010 Mattias Ellert  - 5.26.00e-3
 - Fix crash in TGFontTypeComboBox destructor
 - Add Requires on root-gui-ged to root-gui
diff --git a/sources b/sources
index 6e1245c..cb93b9c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-acbb121b59b2768790efc40106ed8ce2  root-5.26.00e.tar.gz
+aab18be50baf16bfd4035162911cac31  root-5.28.00.tar.gz