From c847bf2420600492159657b31600e7bd1e8cdfff Mon Sep 17 00:00:00 2001 From: Fons Rademakers <Fons.Rademakers@cern.ch> Date: Fri, 11 May 2007 15:02:31 +0000 Subject: [PATCH] From Chistian Holm: * New package names. Packages that used to be named `root-{bin,doc,common,...}' are now called `root-system-{bin,doc,common,...}' This is to please the Debian FTP masters so that they might accept ROOT into the main Debian distribution. * The above change means a lot of files in the `build/package/...' need to be renamed. * Fix to `unuran/Module.mk' to allow unpacking the tar-ball an remove it before making packages. This is also done for roofit and afterimage. This is required by Debian so that the security team can make patches. * Note, that due to the name change, the packages are not compatible with the old packages. That means that users will have to completely de-install the old ROOT packages before installing the new ones. git-svn-id: http://root.cern.ch/svn/root/trunk@18746 27541ba8-7e3a-0410-8455-c3a389f83636 --- build/package/common/libroot-dev.install.in | 5 +- .../common/libroot-python-dev.install.in | 9 +- build/package/common/libroot.control | 14 +- build/package/common/libroot.install.in | 4 +- ...ot-bin.control => root-system-bin.control} | 8 +- ....install.in => root-system-bin.install.in} | 0 ...stall.in => root-system-common.install.in} | 2 + ...ot-doc.control => root-system-doc.control} | 4 +- ....install.in => root-system-doc.install.in} | 0 ...ofd.control => root-system-proofd.control} | 8 +- ...stall.in => root-system-proofd.install.in} | 1 + ...ootd.control => root-system-rootd.control} | 8 +- ...root-rootd.dscr => root-system-rootd.dscr} | 0 ...otd.control => root-system-xrootd.control} | 4 +- ...stall.in => root-system-xrootd.install.in} | 2 +- build/package/common/s050000l.pe | 66 ++++ build/package/common/s050000l.pfb | Bin 0 -> 33709 bytes build/package/debian/README.Debian | 3 +- build/package/debian/changelog | 7 + build/package/debian/control.in | 6 +- build/package/debian/root-common.dirs | 1 - build/package/debian/root-common.links | 13 - build/package/debian/root-common.postinst.in | 33 -- build/package/debian/root-common.postrm.in | 35 -- build/package/debian/root-doc.overrides | 1 - .../package/debian/root-proofd.README.Debian | 18 - build/package/debian/root-proofd.overrides | 1 - ....desktop.in => root-system-bin.desktop.in} | 2 +- ...ot-bin.menu.in => root-system-bin.menu.in} | 4 +- .../{root-bin.mime => root-system-bin.mime} | 0 .../{root-bin.png => root-system-bin.png} | Bin ...ostinst.in => root-system-bin.postinst.in} | 0 ...-bin.prerm.in => root-system-bin.prerm.in} | 0 ...imeinfo => root-system-bin.sharedmimeinfo} | 0 .../{root-bin.xpm => root-system-bin.xpm} | 0 .../package/debian/root-system-common.conf.in | 1 + ...copyright => root-system-common.copyright} | 0 .../package/debian/root-system-common.dirs.in | 2 + .../debian/root-system-common.links.in | 13 + .../{root-doc.docs => root-system-doc.docs} | 0 .../package/debian/root-system-doc.overrides | 1 + .../debian/root-system-proofd.README.Debian | 27 ++ ...ofd.default => root-system-proofd.default} | 0 ...d.examples => root-system-proofd.examples} | 0 ...ofd.init.in => root-system-proofd.init.in} | 26 +- .../debian/root-system-proofd.overrides | 2 + ...inst.in => root-system-proofd.postinst.in} | 0 ...-proofd.prerm => root-system-proofd.prerm} | 0 ...ootd.default => root-system-rootd.default} | 4 +- ...td.examples => root-system-rootd.examples} | 0 ...ootd.init.in => root-system-rootd.init.in} | 26 +- ...tinst.in => root-system-rootd.postinst.in} | 0 ...-rootd.postrm => root-system-rootd.postrm} | 0 ...ootd.preinst => root-system-rootd.preinst} | 0 ...ot-rootd.prerm => root-system-rootd.prerm} | 0 ...otd.default => root-system-xrootd.default} | 4 +- ...otd.init.in => root-system-xrootd.init.in} | 6 +- .../debian/root-system-xrootd.overrides | 4 + build/package/debian/root-xrootd.overrides | 4 - build/package/debian/rules | 344 ++++++++++-------- build/package/lib/makebuilddepend.sh | 26 +- build/package/lib/makedebdir.sh | 318 +++++++++++++--- build/package/lib/makelist | 32 +- build/package/lib/makelists.sh | 65 ++-- build/package/lib/makerpmspec.sh | 4 +- build/package/lib/makerpmspecs.sh | 87 ----- ...ot-proofd.post => root-system-proofd.post} | 0 ...-proofd.preun => root-system-proofd.preun} | 0 ...root-rootd.post => root-system-rootd.post} | 0 ...-rootd.postun => root-system-rootd.postun} | 0 .../{root-rootd.pre => root-system-rootd.pre} | 0 ...ot-rootd.preun => root-system-rootd.preun} | 0 ...ootd.spec.in => root-system-rootd.spec.in} | 1 + build/package/rpm/spec.in | 27 +- configure | 4 +- man/man1/genmap.1 | 56 +++ reflex/.cvsignore | 2 +- reflex/inc/Reflex/.cvsignore | 2 +- reflex/inc/Reflex/Builder/.cvsignore | 2 +- reflex/inc/Reflex/internal/.cvsignore | 2 +- reflex/python/.cvsignore | 2 +- reflex/python/genreflex/.cvsignore | 2 +- reflex/src/.cvsignore | 2 +- reflex/test/.cvsignore | 2 +- reflex/test/testDict1/.cvsignore | 2 +- reflex/test/testDict2/.cvsignore | 2 +- unuran/Module.mk | 15 +- 87 files changed, 806 insertions(+), 572 deletions(-) rename build/package/common/{root-bin.control => root-system-bin.control} (89%) rename build/package/common/{root-bin.install.in => root-system-bin.install.in} (100%) rename build/package/common/{root-common.install.in => root-system-common.install.in} (85%) rename build/package/common/{root-doc.control => root-system-doc.control} (80%) rename build/package/common/{root-doc.install.in => root-system-doc.install.in} (100%) rename build/package/common/{root-proofd.control => root-system-proofd.control} (67%) rename build/package/common/{root-proofd.install.in => root-system-proofd.install.in} (84%) rename build/package/common/{root-rootd.control => root-system-rootd.control} (64%) rename build/package/common/{root-rootd.dscr => root-system-rootd.dscr} (100%) rename build/package/common/{root-xrootd.control => root-system-xrootd.control} (74%) rename build/package/common/{root-xrootd.install.in => root-system-xrootd.install.in} (70%) create mode 100644 build/package/common/s050000l.pe create mode 100644 build/package/common/s050000l.pfb delete mode 100644 build/package/debian/root-common.dirs delete mode 100644 build/package/debian/root-common.links delete mode 100644 build/package/debian/root-common.postinst.in delete mode 100644 build/package/debian/root-common.postrm.in delete mode 100644 build/package/debian/root-doc.overrides delete mode 100644 build/package/debian/root-proofd.README.Debian delete mode 100644 build/package/debian/root-proofd.overrides rename build/package/debian/{root-bin.desktop.in => root-system-bin.desktop.in} (92%) rename build/package/debian/{root-bin.menu.in => root-system-bin.menu.in} (57%) rename build/package/debian/{root-bin.mime => root-system-bin.mime} (100%) rename build/package/debian/{root-bin.png => root-system-bin.png} (100%) rename build/package/debian/{root-bin.postinst.in => root-system-bin.postinst.in} (100%) rename build/package/debian/{root-bin.prerm.in => root-system-bin.prerm.in} (100%) rename build/package/debian/{root-bin.sharedmimeinfo => root-system-bin.sharedmimeinfo} (100%) rename build/package/debian/{root-bin.xpm => root-system-bin.xpm} (100%) create mode 100644 build/package/debian/root-system-common.conf.in rename build/package/debian/{root-common.copyright => root-system-common.copyright} (100%) create mode 100644 build/package/debian/root-system-common.dirs.in create mode 100644 build/package/debian/root-system-common.links.in rename build/package/debian/{root-doc.docs => root-system-doc.docs} (100%) create mode 100644 build/package/debian/root-system-doc.overrides create mode 100644 build/package/debian/root-system-proofd.README.Debian rename build/package/debian/{root-proofd.default => root-system-proofd.default} (100%) rename build/package/debian/{root-proofd.examples => root-system-proofd.examples} (100%) rename build/package/debian/{root-proofd.init.in => root-system-proofd.init.in} (86%) create mode 100644 build/package/debian/root-system-proofd.overrides rename build/package/debian/{root-proofd.postinst.in => root-system-proofd.postinst.in} (100%) rename build/package/debian/{root-proofd.prerm => root-system-proofd.prerm} (100%) rename build/package/debian/{root-rootd.default => root-system-rootd.default} (96%) rename build/package/debian/{root-rootd.examples => root-system-rootd.examples} (100%) rename build/package/debian/{root-rootd.init.in => root-system-rootd.init.in} (89%) rename build/package/debian/{root-rootd.postinst.in => root-system-rootd.postinst.in} (100%) rename build/package/debian/{root-rootd.postrm => root-system-rootd.postrm} (100%) rename build/package/debian/{root-rootd.preinst => root-system-rootd.preinst} (100%) rename build/package/debian/{root-rootd.prerm => root-system-rootd.prerm} (100%) rename build/package/debian/{root-xrootd.default => root-system-xrootd.default} (91%) rename build/package/debian/{root-xrootd.init.in => root-system-xrootd.init.in} (97%) create mode 100644 build/package/debian/root-system-xrootd.overrides delete mode 100644 build/package/debian/root-xrootd.overrides delete mode 100755 build/package/lib/makerpmspecs.sh rename build/package/rpm/{root-proofd.post => root-system-proofd.post} (100%) rename build/package/rpm/{root-proofd.preun => root-system-proofd.preun} (100%) rename build/package/rpm/{root-rootd.post => root-system-rootd.post} (100%) rename build/package/rpm/{root-rootd.postun => root-system-rootd.postun} (100%) rename build/package/rpm/{root-rootd.pre => root-system-rootd.pre} (100%) rename build/package/rpm/{root-rootd.preun => root-system-rootd.preun} (100%) rename build/package/rpm/{root-rootd.spec.in => root-system-rootd.spec.in} (99%) create mode 100644 man/man1/genmap.1 diff --git a/build/package/common/libroot-dev.install.in b/build/package/common/libroot-dev.install.in index 4f517125cd1..5943274f51c 100644 --- a/build/package/common/libroot-dev.install.in +++ b/build/package/common/libroot-dev.install.in @@ -2,14 +2,17 @@ @prefix@/share/emacs/site-lisp/root-help.el @prefix@/include/root/compiledata.h @prefix@/include/root/rmain.cxx +@prefix@/include/root/RConfigure.h @prefix@/lib/root/@version@/python # @prefix@/lib/root/@version@/PyCintex.py* @prefix@/bin/rootcint @prefix@/bin/root-config @prefix@/bin/memprobe @prefix@/bin/rmkdepend +@prefix@/bin/rlibmap @prefix@/share/man/man1/rootcint.1* @prefix@/share/man/man1/root-config.1* @prefix@/share/man/man1/memprobe.1* @prefix@/share/man/man1/rmkdepend.1* -@sysconfdir@/root/system.rootmap +@prefix@/share/man/man1/rlibmap.1* +# @sysconfdir@/root/system.rootmap diff --git a/build/package/common/libroot-python-dev.install.in b/build/package/common/libroot-python-dev.install.in index 42942702934..fe946604665 100644 --- a/build/package/common/libroot-python-dev.install.in +++ b/build/package/common/libroot-python-dev.install.in @@ -1,10 +1,5 @@ @prefix@/lib/root/@version@/ROOT.py -@prefix@/lib/root/@version@/GDMLContentHandler.py -@prefix@/lib/root/@version@/GDMLROOT.py -@prefix@/lib/root/@version@/ROOTBinding.py -@prefix@/lib/root/@version@/ROOTGDML.py @prefix@/lib/root/@version@/ROOTwriter.py -@prefix@/lib/root/@version@/processes.py -@prefix@/lib/root/@version@/units.py @prefix@/lib/root/@version@/writer.py -@prefix@/lib/root/@version@/PyCintex.py \ No newline at end of file +@prefix@/lib/root/@version@/PyCintex.py + diff --git a/build/package/common/libroot.control b/build/package/common/libroot.control index d6cb6b304c6..c94415f433e 100644 --- a/build/package/common/libroot.control +++ b/build/package/common/libroot.control @@ -1,11 +1,9 @@ Package: libroot@libvers@ Section: libs Architecture: any -Depends: root-common, ${shlibs:Depends} -Recommends: root-bin, libroot-dev -Conflicts: root-cint +Depends: root-system-common, ${shlibs:Depends} +Recommends: root-system-bin, libroot-dev Provides: libroot -Replaces: root-cint Description: Numerical data analysis framework - shared runtime libraries This package contains the shared libraries used by the ROOT system. The libraries contain numerous C++ class definitions for @@ -24,9 +22,7 @@ Package: libroot-dev Section: libdevel Architecture: any Depends: ${shlibs:Depends}, zlib1g-dev, libssl-dev, comerr-dev, libkrb5-dev, libx11-dev, libfreetype6-dev, libpcre3-dev, libxpm-dev, g++ | c++-compiler, ${python:Depends}, cfortran -Suggests: root-bin, gccxml -Replaces: root-cint -Conflicts: root-cint +Suggests: root-system-bin, gccxml Description: Header files for ROOT This package contains header files (Class declarations) for the ROOT class libraries. Please refer the package documentation for libroot @@ -34,11 +30,9 @@ Description: Header files for ROOT . ROOT web-site: http://root.cern.ch -Package: root-common +Package: root-system-common Architecture: all Depends: ttf-freefont | root-ttf, ttf-opensymbol | root-ttf -Replaces: libroot (<< 5.09.01-5), root-bin (<< 5.09.01-5), root-rootd (<< 5.09.01-7), root-proofd (<< 5.09.01-7), root-xrootd (<< 5.09.01-7) -Conflicts: libroot (<< 5.09.01-5), root-bin (<< 5.09.01-5), root-rootd (<< 5.09.01-7), root-proofd (<< 5.09.01-7), root-xrootd (<< 5.09.01-7) Description: Common files for ROOT This package contains some common infrastructure files for ROOT. . diff --git a/build/package/common/libroot.install.in b/build/package/common/libroot.install.in index d9e033de69e..c6b1850c5ba 100644 --- a/build/package/common/libroot.install.in +++ b/build/package/common/libroot.install.in @@ -1,3 +1,3 @@ -@prefix@/lib/root/lib*Dict.so* -@prefix@/lib/root/@version@/lib*Dict.so* +@prefix@/lib/root/lib[a-z]*Dict.so* +@prefix@/lib/root/@version@/lib[a-z]*Dict.so* @prefix@/lib/root/@version@/cint diff --git a/build/package/common/root-bin.control b/build/package/common/root-system-bin.control similarity index 89% rename from build/package/common/root-bin.control rename to build/package/common/root-system-bin.control index 110bd7108f5..9222777833c 100644 --- a/build/package/common/root-bin.control +++ b/build/package/common/root-system-bin.control @@ -1,9 +1,7 @@ -Package: root-bin +Package: root-system-bin Architecture: any -Depends: ${shlibs:Depends} -Recommends: root-plugin-gl, root-plugin-asimage, libroot-minuit | root-fitter, libroot-dev -Conflicts: root-cint -Replaces: root-cint +Depends: ${shlibs:Depends}, root-plugin-asimage +Recommends: root-plugin-gl, libroot-minuit | root-fitter, libroot-dev Description: Numerical data analysis framework - general applications The ROOT system provides a set of OO frameworks with all the functionality needed to handle and analyse large amounts of data in a diff --git a/build/package/common/root-bin.install.in b/build/package/common/root-system-bin.install.in similarity index 100% rename from build/package/common/root-bin.install.in rename to build/package/common/root-system-bin.install.in diff --git a/build/package/common/root-common.install.in b/build/package/common/root-system-common.install.in similarity index 85% rename from build/package/common/root-common.install.in rename to build/package/common/root-system-common.install.in index adee6ee0532..b7f0c19ed62 100644 --- a/build/package/common/root-common.install.in +++ b/build/package/common/root-system-common.install.in @@ -5,6 +5,8 @@ @sysconfdir@/root/system.rootrc @sysconfdir@/root/system.rootdaemonrc @sysconfdir@/root/RadioNuclides.txt +@sysconfdir@/root/gdb-backtrace.sh +@sysconfdir@/root/html @prefix@/share/man/man1/system.rootdaemonrc.1* @prefix@/share/root/icons/ @prefix@/share/root/fonts/symbol.ttf diff --git a/build/package/common/root-doc.control b/build/package/common/root-system-doc.control similarity index 80% rename from build/package/common/root-doc.control rename to build/package/common/root-system-doc.control index bd9fa16272a..3d5bed70f9d 100644 --- a/build/package/common/root-doc.control +++ b/build/package/common/root-system-doc.control @@ -1,7 +1,7 @@ -Package: root-doc +Package: root-system-doc Section: doc Architecture: all -Suggests: root-bin +Suggests: root-system-bin Description: Tutorial and test suit for the ROOT system This package contains the tutorial scripts and test suit for the ROOT system. diff --git a/build/package/common/root-doc.install.in b/build/package/common/root-system-doc.install.in similarity index 100% rename from build/package/common/root-doc.install.in rename to build/package/common/root-system-doc.install.in diff --git a/build/package/common/root-proofd.control b/build/package/common/root-system-proofd.control similarity index 67% rename from build/package/common/root-proofd.control rename to build/package/common/root-system-proofd.control index ea837f9e697..80497bf7279 100644 --- a/build/package/common/root-proofd.control +++ b/build/package/common/root-system-proofd.control @@ -1,8 +1,8 @@ -Package: root-proofd +Package: root-system-proofd Architecture: any -Pre-Depends: netbase -Depends: root-common, root-plugin-proof, lsb-base (>= 3.0-6), ${shlibs:Depends} -Recommends: root-bin, libroot-dev, root-file-server | root-rootd +Pre-Depends: openbsd-inetd | inet-superserver +Depends: root-system-common, root-plugin-proof, lsb-base (>= 3.0-6), ${shlibs:Depends} +Recommends: root-system-bin, libroot-dev, root-file-server | root-system-rootd Description: Parallel ROOt Facility - distributed, parallel computing This package contains the PROOF server. proofd is the core daemon of the PROOF (Parallel ROOt Facility) system for distributed parallel diff --git a/build/package/common/root-proofd.install.in b/build/package/common/root-system-proofd.install.in similarity index 84% rename from build/package/common/root-proofd.install.in rename to build/package/common/root-system-proofd.install.in index 9147c2cf9bf..1679601c9d2 100644 --- a/build/package/common/root-proofd.install.in +++ b/build/package/common/root-system-proofd.install.in @@ -1,5 +1,6 @@ @prefix@/share/root/proof/ @prefix@/bin/proofserv +@prefix@/bin/proofserv.exe @prefix@/bin/proofserv.bin @prefix@/share/man/man1/proofserv.1* @prefix@/share/root/proof/log/ diff --git a/build/package/common/root-rootd.control b/build/package/common/root-system-rootd.control similarity index 64% rename from build/package/common/root-rootd.control rename to build/package/common/root-system-rootd.control index c37fa359576..989facd0c22 100644 --- a/build/package/common/root-rootd.control +++ b/build/package/common/root-system-rootd.control @@ -1,8 +1,8 @@ -Package: root-rootd +Package: root-system-rootd Architecture: any -Depends: root-common, lsb-base (>= 3.0-6), ${shlibs:Depends} -Pre-Depends: adduser, netbase -Recommends: root-bin, libroot-dev +Depends: root-system-common, lsb-base (>= 3.0-6), ${shlibs:Depends} +Pre-Depends: adduser, openbsd-inetd | inet-superserver +Recommends: root-system-bin, libroot-dev Provides: root-file-server Description: ROOT remote file server This package contains ROOT file server. rootd is a server for ROOT diff --git a/build/package/common/root-rootd.dscr b/build/package/common/root-system-rootd.dscr similarity index 100% rename from build/package/common/root-rootd.dscr rename to build/package/common/root-system-rootd.dscr diff --git a/build/package/common/root-xrootd.control b/build/package/common/root-system-xrootd.control similarity index 74% rename from build/package/common/root-xrootd.control rename to build/package/common/root-system-xrootd.control index 8b14f662310..43fa3c69ee2 100644 --- a/build/package/common/root-xrootd.control +++ b/build/package/common/root-system-xrootd.control @@ -1,6 +1,6 @@ -Package: root-xrootd +Package: root-system-xrootd Architecture: any -Depends: root-common, lsb-base (>= 3.0-6), ${shlibs:Depends} +Depends: root-system-common, lsb-base (>= 3.0-6), ${shlibs:Depends} Provides: root-file-server Description: Extented ROOT file server This package contains the xrootd server for ROOT, the eXtended diff --git a/build/package/common/root-xrootd.install.in b/build/package/common/root-system-xrootd.install.in similarity index 70% rename from build/package/common/root-xrootd.install.in rename to build/package/common/root-system-xrootd.install.in index 5bbcbff0234..f44b83c3937 100644 --- a/build/package/common/root-xrootd.install.in +++ b/build/package/common/root-system-xrootd.install.in @@ -1,5 +1,5 @@ @prefix@/bin/xrd.bin @prefix@/bin/xrdcp.bin @prefix@/bin/xrdpwdadmin.bin -@prefix@/bin/xrdgsiproxy.bin +# @prefix@/bin/xrdgsiproxy.bin diff --git a/build/package/common/s050000l.pe b/build/package/common/s050000l.pe new file mode 100644 index 00000000000..71bc6fe4a55 --- /dev/null +++ b/build/package/common/s050000l.pe @@ -0,0 +1,66 @@ +#!/usr/bin/fontforge +# +# Copyright: 1994, 1995, 1996, 1997, 1998, 1999 ROOT Team +# 2000, 2001, 2002, 2003, 2004, 2005 ROOT Team +# 2006 ROOT Team +# +# This library is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 2.1 of the +# License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 +# USA +# +Print("Opening s050000l.pfb"); +Open("./s050000l.pfb"); +Print("Reencoding to symbol"); +Reencode("symbol"); +Generate("s050000l.sym.ttf","ttf"); +# Move misplaced glyphs" +a = Array(9); +a[0] = 39; +a[1] = 68; +a[2] = 87; +a[3] = 109; +a[4] = 160; +a[5] = 210; +a[6] = 211; +a[7] = 212; +a[8] = 224; +s = Array(9); +s[0] = "suchthat"; +s[1] = "Delta"; +s[2] = "Omega"; +s[3] = "mu"; +s[4] = "Euro"; +s[5] = "registerserif"; +s[6] = "copyrightserif"; +s[7] = "trademarkserif"; +s[8] = "lozenge"; +i = 0; +while (i < 9) + Print("Moving ",256+i," (",s[i],") to ",a[i]); + Select(256+i); + Cut(); + Select(a[i]); + Paste(); + SetCharName(s[i]); + i++; +endloop; +Print("Scale to em"); +ScaleToEm(1638,410); +Print("Saving to s050000l.sym.ttf"); +Generate("s050000l.sym.ttf","ttf"); +Print("Please rename s050000l.sym.ttf to symbol.ttf"); + +# +# EOF +# diff --git a/build/package/common/s050000l.pfb b/build/package/common/s050000l.pfb new file mode 100644 index 0000000000000000000000000000000000000000..d0505e46cd55172d6307cb0dcdcd2e9030280e16 GIT binary patch literal 33709 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YOF0De99%oan$)~pXgt}QEYWn6~%i-{_-Z1|* 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 literal 0 HcmV?d00001 diff --git a/build/package/debian/README.Debian b/build/package/debian/README.Debian index 3e6676b60c4..6da43833e0d 100644 --- a/build/package/debian/README.Debian +++ b/build/package/debian/README.Debian @@ -532,4 +532,5 @@ Thanks: Local Variables: mode: text -End: \ No newline at end of file +End: + diff --git a/build/package/debian/changelog b/build/package/debian/changelog index d35b7fc9629..edb9ddc10e2 100644 --- a/build/package/debian/changelog +++ b/build/package/debian/changelog @@ -1,3 +1,10 @@ +root-system (5.15.07-1) experimental; urgency=low + + * New version. + * New source package name to please FTP-masters. + + -- Christian Holm Christensen <cholm@nbi.dk> Tue, 01 May 2007 22:18:01 +0200 + root (5.13.05-7) experimental; urgency=low * New release. take out /usr/lib/root/<version> from diff --git a/build/package/debian/control.in b/build/package/debian/control.in index 89b449979c7..e8bc8a1977d 100644 --- a/build/package/debian/control.in +++ b/build/package/debian/control.in @@ -1,13 +1,13 @@ -Source: root +Source: root-system Section: science Priority: optional Maintainer: Christian Holm Christensen <cholm@nbi.dk> Build-Depends: debhelper (>= 5.0.37.2), po-debconf, libssl-dev, comerr-dev, libxpm-dev, libfreetype6-dev, libpcre3-dev, zlib1g-dev | libz-dev, python-dev (>= 2.1)@builddepends@ Standards-Version: 3.7.2 -Package: root +Package: root-system Architecture: all -Depends: root-bin, libroot, libroot-dev +Depends: root-system-bin, libroot, libroot-dev Recommends: @plugins@ Suggests: @extras@ Description: Meta package to install all ROOT packages diff --git a/build/package/debian/root-common.dirs b/build/package/debian/root-common.dirs deleted file mode 100644 index b4c4e2d8cc9..00000000000 --- a/build/package/debian/root-common.dirs +++ /dev/null @@ -1 +0,0 @@ -usr/lib/root diff --git a/build/package/debian/root-common.links b/build/package/debian/root-common.links deleted file mode 100644 index 4a3d1460fd6..00000000000 --- a/build/package/debian/root-common.links +++ /dev/null @@ -1,13 +0,0 @@ -usr/share/fonts/truetype/freefont/FreeMono.ttf usr/share/root/fonts/FreeMono.ttf -usr/share/fonts/truetype/freefont/FreeMonoBold.ttf usr/share/root/fonts/FreeMonoBold.ttf -usr/share/fonts/truetype/freefont/FreeMonoOblique.ttf usr/share/root/fonts/FreeMonoOblique.ttf -usr/share/fonts/truetype/freefont/FreeMonoBoldOblique.ttf usr/share/root/fonts/FreeMonoBoldOblique.ttf -usr/share/fonts/truetype/freefont/FreeSans.ttf usr/share/root/fonts/FreeSans.ttf -usr/share/fonts/truetype/freefont/FreeSansBold.ttf usr/share/root/fonts/FreeSansBold.ttf -usr/share/fonts/truetype/freefont/FreeSansOblique.ttf usr/share/root/fonts/FreeSansOblique.ttf -usr/share/fonts/truetype/freefont/FreeSansBoldOblique.ttf usr/share/root/fonts/FreeSansBoldOblique.ttf -usr/share/fonts/truetype/freefont/FreeSerif.ttf usr/share/root/fonts/FreeSerif.ttf -usr/share/fonts/truetype/freefont/FreeSerifBold.ttf usr/share/root/fonts/FreeSerifBold.ttf -usr/share/fonts/truetype/freefont/FreeSerifItalic.ttf usr/share/root/fonts/FreeSerifItalic.ttf -usr/share/fonts/truetype/freefont/FreeSerifBoldItalic.ttf usr/share/root/fonts/FreeSerifBoldItalic.ttf -usr/share/fonts/truetype/openoffice/opens___.ttf usr/share/root/fonts/opens___.ttf diff --git a/build/package/debian/root-common.postinst.in b/build/package/debian/root-common.postinst.in deleted file mode 100644 index 9032bea145d..00000000000 --- a/build/package/debian/root-common.postinst.in +++ /dev/null @@ -1,33 +0,0 @@ -#! /bin/sh -# postinst script for libroot -# -# see: dh_installdeb(1) - -set -e - -case "$1" in - configure) - # Add @prefix@/lib/root to the directories searched by ldd, if not - # so already - if ! grep -qs ^@prefix@/lib/root\$ /etc/ld.so.conf ; then - echo @prefix@/lib/root >> /etc/ld.so.conf - fi - ;; - abort-upgrade|abort-remove|abort-deconfigure) - # Nothing to be done here - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 0 - ;; -esac - -# dh_installdeb will replace this with shell code automatically -# generated by other debhelper scripts. - -#DEBHELPER# - -exit 0 - - diff --git a/build/package/debian/root-common.postrm.in b/build/package/debian/root-common.postrm.in deleted file mode 100644 index db551bb200b..00000000000 --- a/build/package/debian/root-common.postrm.in +++ /dev/null @@ -1,35 +0,0 @@ -#! /bin/sh -# postrm script for root-cint -# -# see: dh_installdeb(1) - -set -e - -case "$1" in - purge|remove) - # remove lines for @prefix@/lib/root in /etc/ld.so.conf - # if they exist. This can be done here, since all other - # packages depends on this package, so this package cannot be - # removed without removing this package, and so the the directory - # @prefix@/lib/root will no longer exist. - if grep -qs ^@prefix@/lib/root\$ /etc/ld.so.conf ; then - sed '/^\@prefix@\/lib\/root$/d' /etc/ld.so.conf \ - > /etc/ld.so.conf.root-tmp - mv /etc/ld.so.conf.root-tmp /etc/ld.so.conf - fi - ;; - upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) - # Nothing to be done here - ;; - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 0 - -esac - -# dh_installdeb will replace this with shell code automatically -# generated by other debhelper scripts. - -#DEBHELPER# - - diff --git a/build/package/debian/root-doc.overrides b/build/package/debian/root-doc.overrides deleted file mode 100644 index 5433f7dfb48..00000000000 --- a/build/package/debian/root-doc.overrides +++ /dev/null @@ -1 +0,0 @@ -root-doc: wrong-name-for-upstream-changelog usr/share/doc/root-doc/ChangeLog-2-24.gz diff --git a/build/package/debian/root-proofd.README.Debian b/build/package/debian/root-proofd.README.Debian deleted file mode 100644 index bd6ab1a86ff..00000000000 --- a/build/package/debian/root-proofd.README.Debian +++ /dev/null @@ -1,18 +0,0 @@ -Parallel ROOT Facility Daemon: -============================== -Per default, the PROOF daemon (proofd) is turned off. This is -because the user need to set up a few things before starting the -daemon. Specifically, the user need to make the files -`<proofd_dir>/etc/cluster.conf' and `<proofd_dir>/etc/proofd.conf'. -Examples for these are provided in the documentation directory of -`root-proofd' (`/usr/share/doc/root-proofd/examples/'). -`<proofd_dir>' can be set to any location in -`/etc/default/root-proofd'. Note, however, that ROOT recommends that -this directory is shared (via NFS or similar) among all the nodes of -the cluster. To enable `root-proofd' set `ENABLE_PROOFD=yes' in -`/etc/default/root-proofd'. See also the `read me' file -`/usr/share/doc/root-doc/README.PROOF' in the `root-doc' package, as -well as the web-site [1]. - -[1] http://root.cern.ch/root/PROOF.html - diff --git a/build/package/debian/root-proofd.overrides b/build/package/debian/root-proofd.overrides deleted file mode 100644 index d7d3288991e..00000000000 --- a/build/package/debian/root-proofd.overrides +++ /dev/null @@ -1 +0,0 @@ -root-proofd: binary-without-manpage proofserv.bin diff --git a/build/package/debian/root-bin.desktop.in b/build/package/debian/root-system-bin.desktop.in similarity index 92% rename from build/package/debian/root-bin.desktop.in rename to build/package/debian/root-system-bin.desktop.in index a66019af096..ce96672def1 100644 --- a/build/package/debian/root-bin.desktop.in +++ b/build/package/debian/root-system-bin.desktop.in @@ -5,7 +5,7 @@ GenericName=ROOT Comment=ROOT's Object Oriented Technologies Comment[dk]=ROOT er Object Orienteret Teknologi Exec=@prefix@/bin/root %F -Icon=root-bin.png +Icon=root-system-bin.png Categories=Application;Development;Science;Physics;ROOT; MimeType=application/x-root Terminal=true diff --git a/build/package/debian/root-bin.menu.in b/build/package/debian/root-system-bin.menu.in similarity index 57% rename from build/package/debian/root-bin.menu.in rename to build/package/debian/root-system-bin.menu.in index ce842342959..e46b0ec05f7 100644 --- a/build/package/debian/root-bin.menu.in +++ b/build/package/debian/root-system-bin.menu.in @@ -1,6 +1,6 @@ -?package(root-bin):needs="text" \ +?package(root-system-bin):needs="text" \ section="Apps/Science" \ title="ROOT" \ longtitle="ROOT's Object Oriented Technologies" \ command="@prefix@/bin/root" \ - icon="@prefix@/share/pixmaps/root-bin.xpm" + icon="@prefix@/share/pixmaps/root-system-bin.xpm" diff --git a/build/package/debian/root-bin.mime b/build/package/debian/root-system-bin.mime similarity index 100% rename from build/package/debian/root-bin.mime rename to build/package/debian/root-system-bin.mime diff --git a/build/package/debian/root-bin.png b/build/package/debian/root-system-bin.png similarity index 100% rename from build/package/debian/root-bin.png rename to build/package/debian/root-system-bin.png diff --git a/build/package/debian/root-bin.postinst.in b/build/package/debian/root-system-bin.postinst.in similarity index 100% rename from build/package/debian/root-bin.postinst.in rename to build/package/debian/root-system-bin.postinst.in diff --git a/build/package/debian/root-bin.prerm.in b/build/package/debian/root-system-bin.prerm.in similarity index 100% rename from build/package/debian/root-bin.prerm.in rename to build/package/debian/root-system-bin.prerm.in diff --git a/build/package/debian/root-bin.sharedmimeinfo b/build/package/debian/root-system-bin.sharedmimeinfo similarity index 100% rename from build/package/debian/root-bin.sharedmimeinfo rename to build/package/debian/root-system-bin.sharedmimeinfo diff --git a/build/package/debian/root-bin.xpm b/build/package/debian/root-system-bin.xpm similarity index 100% rename from build/package/debian/root-bin.xpm rename to build/package/debian/root-system-bin.xpm diff --git a/build/package/debian/root-system-common.conf.in b/build/package/debian/root-system-common.conf.in new file mode 100644 index 00000000000..0660df26cd6 --- /dev/null +++ b/build/package/debian/root-system-common.conf.in @@ -0,0 +1 @@ +@prefix@/lib/root diff --git a/build/package/debian/root-common.copyright b/build/package/debian/root-system-common.copyright similarity index 100% rename from build/package/debian/root-common.copyright rename to build/package/debian/root-system-common.copyright diff --git a/build/package/debian/root-system-common.dirs.in b/build/package/debian/root-system-common.dirs.in new file mode 100644 index 00000000000..f0c5cc23b3c --- /dev/null +++ b/build/package/debian/root-system-common.dirs.in @@ -0,0 +1,2 @@ +@prefix@/lib/root +@sysconfdir@/ld.so.conf.d diff --git a/build/package/debian/root-system-common.links.in b/build/package/debian/root-system-common.links.in new file mode 100644 index 00000000000..9dad5689bdc --- /dev/null +++ b/build/package/debian/root-system-common.links.in @@ -0,0 +1,13 @@ +usr/share/fonts/truetype/freefont/FreeMono.ttf @prefix@/share/root/fonts/FreeMono.ttf +usr/share/fonts/truetype/freefont/FreeMonoBold.ttf @prefix@/share/root/fonts/FreeMonoBold.ttf +usr/share/fonts/truetype/freefont/FreeMonoOblique.ttf @prefix@/share/root/fonts/FreeMonoOblique.ttf +usr/share/fonts/truetype/freefont/FreeMonoBoldOblique.ttf @prefix@/share/root/fonts/FreeMonoBoldOblique.ttf +usr/share/fonts/truetype/freefont/FreeSans.ttf @prefix@/share/root/fonts/FreeSans.ttf +usr/share/fonts/truetype/freefont/FreeSansBold.ttf @prefix@/share/root/fonts/FreeSansBold.ttf +usr/share/fonts/truetype/freefont/FreeSansOblique.ttf @prefix@/share/root/fonts/FreeSansOblique.ttf +usr/share/fonts/truetype/freefont/FreeSansBoldOblique.ttf @prefix@/share/root/fonts/FreeSansBoldOblique.ttf +usr/share/fonts/truetype/freefont/FreeSerif.ttf @prefix@/share/root/fonts/FreeSerif.ttf +usr/share/fonts/truetype/freefont/FreeSerifBold.ttf @prefix@/share/root/fonts/FreeSerifBold.ttf +usr/share/fonts/truetype/freefont/FreeSerifItalic.ttf @prefix@/share/root/fonts/FreeSerifItalic.ttf +usr/share/fonts/truetype/freefont/FreeSerifBoldItalic.ttf @prefix@/share/root/fonts/FreeSerifBoldItalic.ttf +usr/share/fonts/truetype/openoffice/opens___.ttf @prefix@/share/root/fonts/opens___.ttf diff --git a/build/package/debian/root-doc.docs b/build/package/debian/root-system-doc.docs similarity index 100% rename from build/package/debian/root-doc.docs rename to build/package/debian/root-system-doc.docs diff --git a/build/package/debian/root-system-doc.overrides b/build/package/debian/root-system-doc.overrides new file mode 100644 index 00000000000..4881d3cabce --- /dev/null +++ b/build/package/debian/root-system-doc.overrides @@ -0,0 +1 @@ +root-system-doc: wrong-name-for-upstream-changelog usr/share/doc/root-system-doc/ChangeLog-2-24.gz diff --git a/build/package/debian/root-system-proofd.README.Debian b/build/package/debian/root-system-proofd.README.Debian new file mode 100644 index 00000000000..5bb49935bc1 --- /dev/null +++ b/build/package/debian/root-system-proofd.README.Debian @@ -0,0 +1,27 @@ +Parallel ROOT Facility Daemon: +============================== + +Per default, the PROOF daemon (proofd) is turned off. This is because +the user need to set up a few things before starting the daemon. + +Specifically, the user need to make the files +`<proofd_dir>/etc/cluster.conf' and `<proofd_dir>/etc/proofd.conf'. + +Examples for these are provided in the documentation directory of +`root-system-proofd' (`/usr/share/doc/root-system-proofd/examples/'). + +`<proofd_dir>' can be set to any location in +`/etc/default/root-system-proofd'. + +Note, however, that ROOT recommends that this directory is shared (via +NFS or similar) among all the nodes of the cluster. + +To enable `root-system-proofd' set `ENABLE_PROOFD=yes' in +`/etc/default/root-system-proofd'. + +See also the `read me' file +`/usr/share/doc/root-system-doc/README.PROOF' in the `root-system-doc' +package, as well as the web-site [1]. + +[1] http://root.cern.ch/root/PROOF.html + diff --git a/build/package/debian/root-proofd.default b/build/package/debian/root-system-proofd.default similarity index 100% rename from build/package/debian/root-proofd.default rename to build/package/debian/root-system-proofd.default diff --git a/build/package/debian/root-proofd.examples b/build/package/debian/root-system-proofd.examples similarity index 100% rename from build/package/debian/root-proofd.examples rename to build/package/debian/root-system-proofd.examples diff --git a/build/package/debian/root-proofd.init.in b/build/package/debian/root-system-proofd.init.in similarity index 86% rename from build/package/debian/root-proofd.init.in rename to build/package/debian/root-system-proofd.init.in index 0f1e5e8388e..db38041cc00 100644 --- a/build/package/debian/root-proofd.init.in +++ b/build/package/debian/root-system-proofd.init.in @@ -28,8 +28,8 @@ DESC="Parallel ROOt Facility Server" test -x $DAEMON || exit 0 # Include root defaults if available -if [ -f @sysconfdir@/default/root-proofd ] ; then - . @sysconfdir@/default/root-proofd +if [ -f @sysconfdir@/default/root-system-proofd ] ; then + . @sysconfdir@/default/root-system-proofd fi # Load the VERBOSE setting and other rcS variables @@ -54,19 +54,15 @@ if test -f /var/run/xinetd.pid ; then ENABLE_PROOFD=no fi # old name - if test -f /etc/xinetd.d/proofd && - grep "disable[[:space:]]*= *[Nn][Oo]" /etc/xinetd.d/proofd > /dev/null 2>&1 ; then - # PROOFD is controlled by xinetd. - ENABLE_PROOFD=no - - fi - # new name - if test -f /etc/xinetd.d/root-proofd && - grep "disable[[:space:]]*= *[Nn][Oo]" /etc/xinetd.d/root-proofd > /dev/null 2>&1 ; then - # PROOFD is controlled by xinetd. - ENABLE_PROOFD=no - - fi + for i in proofd root-proofd root-system-proofd ; do + if test ! -f /etc/xinetd.d/$i ; then continue ; fi + if grep "disable[[:space:]]*= *[Nn][Oo]" /etc/xinetd.d/$i \ + > /dev/null 2>&1 ; then + # PROOFD is controlled by xinetd. + ENABLE_PROOFD=no + break + fi + done fi # Check if we're enabled diff --git a/build/package/debian/root-system-proofd.overrides b/build/package/debian/root-system-proofd.overrides new file mode 100644 index 00000000000..d4de55b7ccf --- /dev/null +++ b/build/package/debian/root-system-proofd.overrides @@ -0,0 +1,2 @@ +root-system-proofd: binary-without-manpage proofserv.bin +root-system-proofd: binary-without-manpage proofserv.exe diff --git a/build/package/debian/root-proofd.postinst.in b/build/package/debian/root-system-proofd.postinst.in similarity index 100% rename from build/package/debian/root-proofd.postinst.in rename to build/package/debian/root-system-proofd.postinst.in diff --git a/build/package/debian/root-proofd.prerm b/build/package/debian/root-system-proofd.prerm similarity index 100% rename from build/package/debian/root-proofd.prerm rename to build/package/debian/root-system-proofd.prerm diff --git a/build/package/debian/root-rootd.default b/build/package/debian/root-system-rootd.default similarity index 96% rename from build/package/debian/root-rootd.default rename to build/package/debian/root-system-rootd.default index 0e5a01c1c2c..294dd0f4655 100644 --- a/build/package/debian/root-rootd.default +++ b/build/package/debian/root-system-rootd.default @@ -1,6 +1,6 @@ # Defaults for rootd initscript -# sourced by /etc/init.d/root-rootd -# installed at /etc/default/root-rootd by the maintainer scripts +# sourced by /etc/init.d/root-system-rootd +# installed at /etc/default/root-system-rootd by the maintainer scripts # # Please refer to the rootd(1) man(1) page for more information on # command line parameters. diff --git a/build/package/debian/root-rootd.examples b/build/package/debian/root-system-rootd.examples similarity index 100% rename from build/package/debian/root-rootd.examples rename to build/package/debian/root-system-rootd.examples diff --git a/build/package/debian/root-rootd.init.in b/build/package/debian/root-system-rootd.init.in similarity index 89% rename from build/package/debian/root-rootd.init.in rename to build/package/debian/root-system-rootd.init.in index 25055ad3282..0ad779bb1f2 100644 --- a/build/package/debian/root-rootd.init.in +++ b/build/package/debian/root-system-rootd.init.in @@ -26,8 +26,8 @@ USER=rootd test -x $DAEMON || exit 0 # Include root defaults if available -if [ -f @sysconfdir@/default/root-rootd ] ; then - . @sysconfdir@/default/root-rootd +if [ -f @sysconfdir@/default/root-system-rootd ] ; then + . @sysconfdir@/default/root-system-rootd fi # Load the VERBOSE setting and other rcS variables @@ -77,19 +77,15 @@ if test -f /var/run/xinetd.pid ; then ENABLE_ROOTD=no fi # old name - if test -f /etc/xinetd.d/rootd && - grep "disable[[:space:]]*= *[Nn][Oo]" /etc/xinetd.d/rootd > /dev/null 2>&1 ; then - # ROOTD is controlled by xinetd. - ENABLE_ROOTD=no - - fi - # new name - if test -f /etc/xinetd.d/root-rootd && - grep "disable[[:space:]]*= *[Nn][Oo]" /etc/xinetd.d/root-rootd > /dev/null 2>&1 ; then - # ROOTD is controlled by xinetd. - ENABLE_ROOTD=no - - fi + for i in rootd root-rootd root-system-rootd ; do + if test ! -f /etc/xinetd.d/$i ; then continue ; fi + if test grep "disable[[:space:]]*= *[Nn][Oo]" /etc/xinetd.d/$i \ + > /dev/null 2>&1 ; then + # ROOTD is controlled by xinetd. + ENABLE_ROOTD=no + break + fi + done fi # Check if we're enabled at all diff --git a/build/package/debian/root-rootd.postinst.in b/build/package/debian/root-system-rootd.postinst.in similarity index 100% rename from build/package/debian/root-rootd.postinst.in rename to build/package/debian/root-system-rootd.postinst.in diff --git a/build/package/debian/root-rootd.postrm b/build/package/debian/root-system-rootd.postrm similarity index 100% rename from build/package/debian/root-rootd.postrm rename to build/package/debian/root-system-rootd.postrm diff --git a/build/package/debian/root-rootd.preinst b/build/package/debian/root-system-rootd.preinst similarity index 100% rename from build/package/debian/root-rootd.preinst rename to build/package/debian/root-system-rootd.preinst diff --git a/build/package/debian/root-rootd.prerm b/build/package/debian/root-system-rootd.prerm similarity index 100% rename from build/package/debian/root-rootd.prerm rename to build/package/debian/root-system-rootd.prerm diff --git a/build/package/debian/root-xrootd.default b/build/package/debian/root-system-xrootd.default similarity index 91% rename from build/package/debian/root-xrootd.default rename to build/package/debian/root-system-xrootd.default index 306f0c717c0..0b357f9f3d1 100644 --- a/build/package/debian/root-xrootd.default +++ b/build/package/debian/root-system-xrootd.default @@ -1,6 +1,6 @@ # Defaults for rootd initscript -# sourced by /etc/init.d/rootd -# installed at /etc/default/rootd by the maintainer scripts +# sourced by /etc/init.d/root-system-xrootd +# installed at /etc/default/root-system-xrootd by the maintainer scripts # # Please refer to the xrootd(1) and olbd(1) man(1) page for more # information on command line parameters. diff --git a/build/package/debian/root-xrootd.init.in b/build/package/debian/root-system-xrootd.init.in similarity index 97% rename from build/package/debian/root-xrootd.init.in rename to build/package/debian/root-system-xrootd.init.in index 7eb2ce97b33..f78e5896d10 100644 --- a/build/package/debian/root-xrootd.init.in +++ b/build/package/debian/root-system-xrootd.init.in @@ -31,8 +31,8 @@ USER=root test -x $DAEMON || exit 0 # Include root defaults if available -if [ -f @sysconfdir@/default/root-xrootd ] ; then - . @sysconfdir@/default/root-xrootd +if [ -f @sysconfdir@/default/root-system-xrootd ] ; then + . @sysconfdir@/default/root-system-xrootd fi # Load the VERBOSE setting and other rcS variables @@ -180,7 +180,7 @@ case "$1" in [ $ret -ne 0 ] && exit $ret ;; *) - N=@sysconfdir@/init.d/root-$XNAME + N=@sysconfdir@/init.d/root-system-$XNAME # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 diff --git a/build/package/debian/root-system-xrootd.overrides b/build/package/debian/root-system-xrootd.overrides new file mode 100644 index 00000000000..5be6b7ceeb0 --- /dev/null +++ b/build/package/debian/root-system-xrootd.overrides @@ -0,0 +1,4 @@ +root-system-xrootd: binary-without-manpage xrdgsiproxy.bin +root-system-xrootd: binary-without-manpage xrdpwdadmin.bin +root-system-xrootd: binary-without-manpage xrd.bin +root-system-xrootd: binary-without-manpage xrdcp.bin diff --git a/build/package/debian/root-xrootd.overrides b/build/package/debian/root-xrootd.overrides deleted file mode 100644 index 31bc53eae7f..00000000000 --- a/build/package/debian/root-xrootd.overrides +++ /dev/null @@ -1,4 +0,0 @@ -root-xrootd: binary-without-manpage xrdgsiproxy.bin -root-xrootd: binary-without-manpage xrdpwdadmin.bin -root-xrootd: binary-without-manpage xrd.bin -root-xrootd: binary-without-manpage xrdcp.bin diff --git a/build/package/debian/rules b/build/package/debian/rules index 135da894ab5..4cbd7270e60 100644 --- a/build/package/debian/rules +++ b/build/package/debian/rules @@ -19,7 +19,7 @@ DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_HOST_ARCH_CPU ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) DEB_BUILD_GNU_SYSTEM ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_SYSTEM) -DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) +DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) ifeq ($(DEB_HOST_ARCH_CPU),powerpc) PLATFORM = linuxppcgcc else @@ -55,13 +55,18 @@ PKGDOCDIR = $(PREFIX)/share/doc/root CINTDIR = $(PREFIX)/lib/root/$(SOVERS)/cint ICONTHEME = $(PREFIX)/share/icons/hicolor/48x48 CONFOPTIONS :=--enable-cintex \ + --enable-clarens \ --enable-explicitlink \ + --enable-gdml \ --enable-fftw3 \ + --enable-ldap \ --enable-qt \ --enable-qtgsi \ --enable-mathcore \ --enable-mathmore \ --enable-minuit2 \ + --enable-mysql \ + --enable-peac \ --enable-pgsql \ --enable-odbc \ --enable-reflex \ @@ -71,6 +76,7 @@ CONFOPTIONS :=--enable-cintex \ --enable-shared \ --enable-soversion \ --enable-table \ + --enable-unuran \ --enable-xrootd \ --disable-rpath \ --disable-afs \ @@ -82,14 +88,13 @@ CONFOPTIONS :=--enable-cintex \ --disable-alien \ --disable-chirp \ --disable-dcache \ + --disable-g4root \ --disable-gfal \ --disable-globus \ --disable-monalisa \ --disable-oracle \ - --disable-pythia \ --disable-pythia6 \ --disable-rfio \ - --disable-venus \ --fail-on-missing \ $(SAPDB) \ $(HBOOK) \ @@ -105,57 +110,57 @@ CONFOPTIONS :=--enable-cintex \ # --disable-builtin \ VERSION := $(shell cat build/version_number | tr '/' '.') -MAJOR := $(shell echo $(VERSION) | tr '.' ' ' | cut -f1 -d' ') -MINOR := $(shell echo $(VERSION) | tr '.' ' ' | cut -f2 -d' ') +MAJOR := $(shell echo $(VERSION) | tr '.' ' ' | cut -f1 -d' ') +MINOR := $(shell echo $(VERSION) | tr '.' ' ' | cut -f2 -d' ') SOVERS := $(MAJOR).$(MINOR) PKGLIST := $(shell ./configure $(PLATFORM) --pkglist $(CONFOPTIONS) | sed -n -e 's/packages: //p') -ESSENTIALS := libroot-dev \ - libroot \ - root-bin \ - root-common \ +ESSENTIALS := libroot-dev \ + libroot \ + root-system-bin \ + root-system-common \ ttf-root-installer -PLUGINS := libroot-ldap \ - libroot-mathmore \ - libroot-minuit \ - libroot-mlp \ - libroot-quadp \ - libroot-tmva \ - root-doc \ - root-plugin-asimage \ - root-plugin-fftw3 \ - root-plugin-fumili \ - root-plugin-gl \ - root-plugin-hbook \ - root-plugin-krb5 \ - root-plugin-minuit2 \ - root-plugin-netx \ - root-plugin-odbc \ - root-plugin-proof \ - root-plugin-qt \ - root-plugin-sql \ - root-plugin-xml \ - root-plugin-xproof \ - root-proofd \ - root-rootd \ - root-xrootd -EXTRAS := libroot-clarens \ - libroot-python \ - libroot-roofit \ - libroot-ruby \ - root-plugin-alien \ - root-plugin-castor \ - root-plugin-chirp \ - root-plugin-dcache \ - root-plugin-globus \ - root-plugin-peac \ - root-plugin-maxdb \ - root-plugin-mysql \ - root-plugin-oracle \ - root-plugin-pgsql \ - root-plugin-pythia5 \ - root-plugin-pythia6 \ - root-plugin-srp \ - root-plugin-venus +PLUGINS := libroot-ldap \ + libroot-mathmore \ + libroot-minuit \ + libroot-mlp \ + libroot-quadp \ + libroot-tmva \ + root-system-doc \ + root-plugin-asimage \ + root-plugin-fftw3 \ + root-plugin-fumili \ + root-plugin-gl \ + root-plugin-hbook \ + root-plugin-krb5 \ + root-plugin-minuit2 \ + root-plugin-netx \ + root-plugin-odbc \ + root-plugin-proof \ + root-plugin-qt \ + root-plugin-sql \ + root-plugin-xml \ + root-plugin-xproof \ + root-system-proofd \ + root-system-rootd \ + root-system-xrootd +EXTRAS := libroot-clarens \ + libroot-python \ + libroot-roofit \ + libroot-ruby \ + root-plugin-alien \ + root-plugin-castor \ + root-plugin-chirp \ + root-plugin-dcache \ + root-plugin-globus \ + root-plugin-peac \ + root-plugin-maxdb \ + root-plugin-mysql \ + root-plugin-oracle \ + root-plugin-pgsql \ + root-plugin-pythia5 \ + root-plugin-pythia6 \ + root-plugin-srp \ + root-plugin-venus PLUGINLIST := $(filter-out $(EXTRAS) $(ESSENTIALS), $(PKGLIST)) EXTRALIST := $(filter-out $(PLUGINS) $(ESSENTIALS), $(PKGLIST)) PLUGINLIST := $(PLUGINLIST:libroot%=libroot%-dev) @@ -165,9 +170,9 @@ PLUGINLIST := $(PLUGINHEAD:%=%,) $(lastword $(PLUGINLIST)) EXTRAHEAD := $(filter-out $(lastword $(EXTRALIST)), $(EXTRALIST)) EXTRALIST := $(EXTRAHEAD:%=%,) $(lastword $(EXTRALIST)) TEMPLATES := $(wildcard debian/*.in) -SPKGLIST := $(filter-out root-doc root-common ttf-root-installer, $(PKGLIST:libroot%=libroot%$(SOVERS))) $(filter libroot%, $(PKGLIST:libroot%=libroot%-dev)) -IPKGLIST := root-doc ttf-root-installer root-common root -DPKGLIST := $(SPKGLIST:%=%,) root-doc, root-ttf +SPKGLIST := $(filter-out root-system-doc root-system-common ttf-root-installer, $(PKGLIST:libroot%=libroot%$(SOVERS))) $(filter libroot%, $(PKGLIST:libroot%=libroot%-dev)) +IPKGLIST := root-system-doc ttf-root-installer root-system-common root-system +DPKGLIST := $(SPKGLIST:%=%,) root-system-doc, root-ttf #root-plugins root-extra-plugins SPKGOPTS := $(SPKGLIST:%=-p%) IPKGOPTS := $(IPKGLIST:%=-p%) @@ -202,6 +207,9 @@ show_libpkgs: @echo "$(SPKGLIST)" @echo "$(patsubst %, -p%, $(filter libroot%$(SOVERS),$(SPKGLIST)))" +show_conf: + ./configure $(PLATFORM) --pkglist $(CONFOPTIONS) + debian/%:debian/%.in @echo "Making $@ from $< " @sed -e 's,@prefix@,$(PREFIX),g' \ @@ -225,7 +233,7 @@ debian/control:debian/control.in -e 's,@pkgdocdir@,$(PKGDOCDIR),g' \ -e "s/@builddepends@/$${builddep}/" \ -e 's/@pyvers@/$(PYVER)/g' \ - -e 's/@pkglist@/$(DPKGLIST)/' \ + -e 's/@pkglist@/$(DPKGLIST)/' \ -e 's/@plugins@/$(PLUGINLIST)/' \ -e 's/@extras@/$(EXTRALIST)/' < $@.tmp > $@ rm -rf $@.tmp @@ -238,7 +246,7 @@ config.status: configure dh_testdir # Add here commands to configure the package. ./configure $(PLATFORM) \ - --prefix=$(PREFIX) \ + --prefix=$(PREFIX) \ --mandir=$(PREFIX)/share/man/man1 \ --docdir=$(PKGDOCDIR) \ --cintincdir=$(CINTDIR) \ @@ -246,9 +254,13 @@ config.status: configure --with-sys-iconpath=$(PREFIX)/share/pixmaps \ --libdir=$(PREFIX)/lib/root/$(SOVERS) \ $(CONFOPTIONS) + touch xrootd/src/headers.d + touch asimage/src/headers.d + touch roofit/headers.d + touch unuran/src/headers.d touch configure-stamp -# --fontdir=%_datadir/root/fonts/truetype +# --fontdir=%_datadir/root/fonts/truetype #Architecture build: build-arch build-indep @@ -256,7 +268,7 @@ build-arch: build-arch-cint-stamp build-arch-stamp: configure-stamp # Add here commands to compile the arch part of the package. - $(MAKE) ASTEPETAG= XROOTDETAG= ROOFITETAG= + $(MAKE) ASTEPETAG= XROOTDETAG= ROOFITETAG= UNURANETAG= touch build-arch-stamp build-arch-cint-stamp:build-arch-stamp @@ -270,7 +282,7 @@ build-indep-stamp: configure-stamp #$(MAKE) doc touch build-indep-stamp -clean: $(TEMPLATES:%.in=%) +clean: $(TEMPLATES:%.in=%) dh_testdir dh_testroot debconf-updatepo --podir=build/package/debian/po @@ -280,49 +292,52 @@ clean: $(TEMPLATES:%.in=%) -rm -rf minuit2/src/Minuit-1_7_6 -rm -rf freetype/src/freetype-2.1.9 #-rm -rf asimage/src/libAfterImage - -rm -rf debian/*.files debian/*.install - -rm -f macros/html.C - -rm -f cint/MAKEINFO - -rm -f etc/daemons/proofd.rc.d - -rm -f etc/daemons/proofd.xinetd - -rm -f etc/daemons/rootd.rc.d - -rm -f etc/daemons/rootd.xinetd - -rm -f etc/daemons/olbd.rc.d - -rm -f etc/daemons/xrootd.rc.d - -rm -f qtgsi/src/G__QtGSI.cxx qtgsi/src/G__QtGSI.h - -rm -f qt/src/moc_*.cxx - -rm -f G__genreflex_rootcint.h - -rm -f asimage/src/libAfterImage/Makefile - -rm -f asimage/src/libAfterImage/afterbase.h - -rm -f asimage/src/libAfterImage/afterimage-config - -rm -f asimage/src/libAfterImage/afterimage-libs - -rm -f asimage/src/libAfterImage/config.h - -rm -f asimage/src/libAfterImage/config.log - -rm -f asimage/src/libAfterImage/config.status - -rm -f asimage/src/libAfterImage/libAfterImage.a - -rm -f xrootd/src/xrootd/GNUmakefile - -rm -f xrootd/src/xrootd/src/GNUmake.env - -rm -f xrootd/src/xrootd/src/GNUmake.options + -rm -rf debian/*.files debian/*.install + -rm -f macros/html.C + -rm -f cint/MAKEINFO + -rm -f etc/daemons/proofd.rc.d + -rm -f etc/daemons/proofd.xinetd + -rm -f etc/daemons/rootd.rc.d + -rm -f etc/daemons/rootd.xinetd + -rm -f etc/daemons/olbd.rc.d + -rm -f etc/daemons/xrootd.rc.d + -rm -f qtgsi/src/G__QtGSI.cxx qtgsi/src/G__QtGSI.h + -rm -f qt/src/moc_*.cxx + -rm -f G__genreflex_rootcint.h + -rm -f asimage/src/libAfterImage/Makefile + -rm -f asimage/src/libAfterImage/afterbase.h + -rm -f asimage/src/libAfterImage/afterimage-config + -rm -f asimage/src/libAfterImage/afterimage-libs + -rm -f asimage/src/libAfterImage/config.h + -rm -f asimage/src/libAfterImage/config.log + -rm -f asimage/src/libAfterImage/config.status + -rm -f asimage/src/libAfterImage/libAfterImage.a + -rm -f xrootd/src/xrootd/GNUmakefile + -rm -f xrootd/src/xrootd/src/GNUmake.env + -rm -f xrootd/src/xrootd/src/GNUmake.options -find . -name ".#*" | xargs rm -rf -find . \( -name "G__*.cxx" -or -name "G__*.h" -or -name "G__*.c" \) \ -and -not -name "G__ci.h" -and -not -name G__postprocess.h \ -and -not -name "G__main.c" -and -not -name "G__setup.c" \ | xargs rm -rf # Add here commands to clean up after the build process. - -$(MAKE) distclean ASTEPVERS=.bogus ASTEPETAG= \ - XROOTDDIRD= XROOTDETAG= \ - ROOFITDIRS= ROOFITDIRI= ROOFITETAG= + touch unuran/src/.bogus.tar.gz + -$(MAKE) distclean ASTEPVERS=.bogus ASTEPETAG= \ + XROOTDDIRD= XROOTDETAG= \ + ROOFITDIRS= ROOFITDIRI= ROOFITETAG= \ + UNRVERS=.bogus UNURANETAG= + rm -f unuran/src/.bogus.tar.gz build/unix/makecintdll.sh clean - rm -rf bin lib include \ - system.rootrc \ - config/Makefile.config \ - README/Changelog \ - etc/system.rootrc \ - etc/system.rootauthrc \ - etc/system.rootdaemonrc \ - etc/root.mimes \ - build/misc/root-help.el \ - debian/*.files \ + rm -rf bin lib include \ + system.rootrc \ + config/Makefile.config \ + README/Changelog \ + etc/system.rootrc \ + etc/system.rootauthrc \ + etc/system.rootdaemonrc \ + etc/root.mimes \ + build/misc/root-help.el \ + debian/*.files \ debian/*.install \ debian/shlibs.local \ freetype/src/freetype-2.1.3 \ @@ -341,19 +356,20 @@ clean: $(TEMPLATES:%.in=%) touch xrootd/src/headers.d touch asimage/src/headers.d touch roofit/headers.d + touch unuran/src/headers.d dh_clean pkglists: - -rm -rf debian/*.files debian/*.install + -rm -rf debian/*.files debian/*.install build/package/lib/makelists.sh debian debian/tmp \ $(VERSION) $(PREFIX) $(SYSCONFDIR) $(PKGDOCDIR) -# @for i in debian/libroot* ; do \ -# if test -d $$i ; then continue ; fi ; \ -# case $$i in \ -# *-dev.*|*.in|libroot*$(SOVERS).*) continue ;; \ -# *) echo "Renaming $$i to version specific" ; \ -# cp $$i `echo $$i | sed 's/libroot\(.*\)\.\(.*\)/libroot\1$(SOVERS).\2/'` ;; esac ; \ -# done +# @for i in debian/libroot* ; do \ +# if test -d $$i ; then continue ; fi ; \ +# case $$i in \ +# *-dev.*|*.in|libroot*$(SOVERS).*) continue ;; \ +# *) echo "Renaming $$i to version specific" ; \ +# cp $$i `echo $$i | sed 's/libroot\(.*\)\.\(.*\)/libroot\1$(SOVERS).\2/'` ;; esac ; \ +# done install: install-indep install-arch install-indep: @@ -368,33 +384,42 @@ install-indep: # dh_install $(IPKGOPTS) --sourcedir=$(DTMP) dh_install -i --sourcedir=$(DTMP) + # Fix some permissions - -find debian/root-common/$(PREFIX)/share/root/icons \ + -find debian/root-system-common/$(PREFIX)/share/root/icons \ -perm 0755 -and -not -type d | xargs chmod a-x - mkdir -p debian/root-doc/usr/share/lintian/overrides/ - cp debian/root-doc.overrides \ - debian/root-doc/usr/share/lintian/overrides/root-doc + mkdir -p debian/root-system-doc/usr/share/lintian/overrides/ + cp debian/root-system-doc.overrides \ + debian/root-system-doc/usr/share/lintian/overrides/root-system-doc + + # New Ld.so.conf file + cp debian/root-system-common.conf \ + debian/root-system-common/$(SYSCONFDIR)/ld.so.conf.d + install-arch: dh_testroot dh_clean -k -s -X$(DTMP) + # Need to clean this, because we don't want to use the + # symblic links made later on. + rm -rf $(DTMP)$(PREFIX)/lib/root dh_installdirs -s # Add here commands to install the arch part of the package into # $(DTMP). $(MAKE) install DESTDIR=$(CURDIR)/$(DTMP) \ - ASTEPETAG= XROOTDETAG= ROOFITETAG= + ASTEPETAG= XROOTDETAG= ROOFITETAG= UNURANETAG= # Install desktop entry and icon mkdir -p $(DTMP)/$(PREFIX)/share/applications mkdir -p $(DTMP)/$(PREFIX)/share/pixmaps mkdir -p $(DTMP)/$(ICONTHEME)/apps mkdir -p $(DTMP)/$(ICONTHEME)/mimetypes - -cp debian/root-bin.desktop $(DTMP)/$(PREFIX)/share/applications - -cp build/package/debian/root-bin.xpm \ - $(DTMP)/$(PREFIX)/share/pixmaps/root-bin.xpm - -cp build/package/debian/root-bin.png \ - $(DTMP)/$(ICONTHEME)/apps/root-bin.png + -cp debian/root-system-bin.desktop $(DTMP)/$(PREFIX)/share/applications + -cp build/package/debian/root-system-bin.xpm \ + $(DTMP)/$(PREFIX)/share/pixmaps/root-system-bin.xpm + -cp build/package/debian/root-system-bin.png \ + $(DTMP)/$(ICONTHEME)/apps/root-system-bin.png -cp build/package/debian/application-x-root.png \ $(DTMP)/$(ICONTHEME)/mimetypes/application-x-root.png @@ -412,15 +437,15 @@ install-arch: # Rename proofserv, xrdgsiproxy, xrdpwdadmin, xrdcp, and xrd in # /usr/bin to end in `.bin' and make wrapper script in /usr/bin - for i in proofserv xrdgsiproxy xrdpwdadmin xrdcp xrd ; do \ - if test -f $(DTMP)$(PREFIX)/bin/$$i && \ - test -f build/package/common/$$i.in ; then \ - mv $(DTMP)$(PREFIX)/bin/$$i \ - $(DTMP)$(PREFIX)/bin/$$i.bin ; \ + for i in proofserv xrdgsiproxy xrdpwdadmin xrdcp xrd ; do \ + if test -f $(DTMP)$(PREFIX)/bin/$$i && \ + test -f build/package/common/$$i.in ; then \ + mv $(DTMP)$(PREFIX)/bin/$$i \ + $(DTMP)$(PREFIX)/bin/$$i.bin ; \ sed -e 's,@prefix@,$(PREFIX),g' \ -e 's,@libvers@,$(SOVERS),g' \ < build/package/common/$$i.in \ - > $(DTMP)$(PREFIX)/bin/$$i ; \ + > $(DTMP)$(PREFIX)/bin/$$i ; \ chmod 755 $(DTMP)$(PREFIX)/bin/$$i ; fi ; done # Make the empty proof log file @@ -467,6 +492,7 @@ install-arch: -find $(DTMP)$(CINTDIR) -perm 755 -and -not -type d | xargs chmod a-x -chmod a+x $(DTMP)$(CINTDIR)/lib/pthread/setup -chmod a-x $(DTMP)$(PREFIX)/lib/root/$(SOVERS)/*.py + -chmod a-x $(DTMP)$(SYSCONFDIR)/root/html/* # -chmod a+x $(DTMP)$(PREFIX)/lib/root/$(SOVERS)/GDMLROOT.py # Remove she-bang line from a python scripts @@ -481,51 +507,51 @@ install-arch: mkdir -p $(DTMP)/$(PREFIX)/lib/root ./debian/rules pkglists - # --sourcedir=$(DTMP) $(SPKGOPTS) + # --sourcedir=$(DTMP) $(SPKGOPTS) dh_install -s \ - --list-missing \ - --sourcedir=$(DTMP) \ - -X$(PREFIX)/include/root/config.h \ - -X$(PREFIX)/share/man/man1/rlibmap.1 \ - -X$(PREFIX)/include/root/rootcint.pri \ - -X$(PREFIX)/include/root/rootcintrule.pri \ - -X$(PREFIX)/include/root/rootlibs.pri \ - -X$(PREFIX)/include/root/precompile.h \ - -X$(PREFIX)/include/root/precompile.h.gch \ - -X$(PREFIX)/include/root/TQtWidget.cw \ - -X$(PREFIX)/share/root/fonts \ + --list-missing \ + --sourcedir=$(DTMP) \ + -X$(PREFIX)/include/root/config.h \ + -X$(PREFIX)/include/root/rootcint.pri \ + -X$(PREFIX)/include/root/rootcintrule.pri \ + -X$(PREFIX)/include/root/rootlibs.pri \ + -X$(PREFIX)/include/root/precompile.h \ + -X$(PREFIX)/include/root/precompile.h.gch \ + -X$(PREFIX)/include/root/TQtWidget.cw \ + -X$(PREFIX)/share/root/fonts \ -X$(PREFIX)/share/doc/root \ -X$(PREFIX)/share/man/man1/system.rootdaemonrc.1 \ -X$(PREFIX)/share/man/man1/xproofd.1 \ -X$(PREFIX)/bin/thisroot.sh \ -X$(PREFIX)/bin/thisroot.csh \ - -X$(PREFIX)/share/root/icons/ \ - -X$(SYSCONFDIR)/root/rootd \ + -X$(PREFIX)/share/root/icons/ \ + -X$(SYSCONFDIR)/root/rootd \ -X$(SYSCONFDIR)/root/daemons/ \ -X$(SYSCONFDIR)/root/proof/ \ - -X$(SYSCONFDIR)/root/RadioNuclides.txt \ + -X$(SYSCONFDIR)/root/html \ + -X$(SYSCONFDIR)/root/RadioNuclides.txt \ -X$(SYSCONFDIR)/root/gdb-backtrace-script \ - -X$(SYSCONFDIR)/root/hostcert.conf \ - -X$(SYSCONFDIR)/root/pdg_table.txt \ - -X$(SYSCONFDIR)/root/root.mimes \ - -X$(SYSCONFDIR)/root/system.rootrc \ - -X$(SYSCONFDIR)/root/system.rootauthrc \ - -X$(SYSCONFDIR)/root/system.rootdaemonrc \ - -X$(SYSCONFDIR)/root/pdg_table.txt \ - -X$(SYSCONFDIR)/root/pdg_table.txt \ - -X$(SYSCONFDIR)/root/pdg_table.txt \ + -X$(SYSCONFDIR)/root/gdb-backtrace.sh \ + -X$(SYSCONFDIR)/root/hostcert.conf \ + -X$(SYSCONFDIR)/root/pdg_table.txt \ + -X$(SYSCONFDIR)/root/root.mimes \ + -X$(SYSCONFDIR)/root/system.rootrc \ + -X$(SYSCONFDIR)/root/system.rootauthrc \ + -X$(SYSCONFDIR)/root/system.rootdaemonrc \ + -X$(SYSCONFDIR)/root/pdg_table.txt \ + -X$(SYSCONFDIR)/root/pdg_table.txt \ + -X$(SYSCONFDIR)/root/pdg_table.txt \ -X$(PREFIX)/lib/root/$(SOVERS)/libAfterImage.a \ -X$(PREFIX)/lib/root/$(SOVERS)/PyCintex.pyc \ -X$(PREFIX)/lib/root/$(SOVERS)/PyCintex.pyo \ -X$(PREFIX)/lib/root/$(SOVERS)/ROOT.pyc \ - -X$(PREFIX)/lib/root/$(SOVERS)/ROOT.pyo \ - $(foreach i, \ - $(wildcard $(DTMP)/$(PREFIX)/lib/root/lib*.so.$(SOVERS)), \ - -X$(i:$(DTMP)/%=%) ) - + -X$(PREFIX)/lib/root/$(SOVERS)/ROOT.pyo +# $(foreach i, \ +# $(wildcard $(DTMP)/$(PREFIX)/lib/root/lib*.so.$(SOVERS)), \ +# -X$(i:$(DTMP)/%=%) ) # Install Lintian overrides files - for i in debian/*.overrides ; do \ + for i in debian/*.overrides ; do \ if test ! -f $$i ; then continue; fi; \ b=`basename $$i .overrides` ; \ echo "Installing Lintian override $$i in debian/$$b/usr/share/lintian/overrides/$$b" ; \ @@ -534,15 +560,15 @@ install-arch: done # This is for alternatives registration, if one want's to install - # Richard Kreckels cint package next to ROOT - mv debian/root-bin/$(PREFIX)/bin/cint \ - debian/root-bin/$(PREFIX)/bin/cint.root - mv debian/root-bin/$(PREFIX)/bin/makecint \ - debian/root-bin/$(PREFIX)/bin/makecint.root - mv debian/root-bin/$(PREFIX)/share/man/man1/cint.1 \ - debian/root-bin/$(PREFIX)/share/man/man1/cint.root.1 - mv debian/root-bin/$(PREFIX)/share/man/man1/makecint.1 \ - debian/root-bin/$(PREFIX)/share/man/man1/makecint.root.1 + # Richard Kreckels cint package next to ROOT + mv debian/root-system-bin/$(PREFIX)/bin/cint \ + debian/root-system-bin/$(PREFIX)/bin/cint.root + mv debian/root-system-bin/$(PREFIX)/bin/makecint \ + debian/root-system-bin/$(PREFIX)/bin/makecint.root + mv debian/root-system-bin/$(PREFIX)/share/man/man1/cint.1 \ + debian/root-system-bin/$(PREFIX)/share/man/man1/cint.root.1 + mv debian/root-system-bin/$(PREFIX)/share/man/man1/makecint.1 \ + debian/root-system-bin/$(PREFIX)/share/man/man1/makecint.root.1 # Must not depend on anything. This is to be called by # binary-arch/binary-indep @@ -582,7 +608,7 @@ binary-indep: build-indep install-indep binary-arch: build-arch install-arch $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common dh_pysupport -plibroot-python-dev - # $(PREFIX)/lib/root/$(SOVERS) $(PREFIX)/lib/root + # $(PREFIX)/lib/root/$(SOVERS) $(PREFIX)/lib/root dh_pysupport -plibroot-dev \ $(PREFIX)/lib/root/$(SOVERS)/python/genreflex dh_makeshlibs -V $(patsubst %, -p%, $(filter libroot%$(SOVERS),$(SPKGLIST))) diff --git a/build/package/lib/makebuilddepend.sh b/build/package/lib/makebuilddepend.sh index b37883e9d11..0b0c34b3827 100755 --- a/build/package/lib/makebuilddepend.sh +++ b/build/package/lib/makebuilddepend.sh @@ -7,9 +7,9 @@ if test "x$1" = "xrpm" ; then case $i in *-dev) ;; libroot) ;; - root-bin) ;; + root-system-bin) ;; root-cint) ;; - root-doc) ;; + root-system-doc) ;; *alien) echo "BuildRequires: AliEn-Client" ;; # Build dependency on AfterStep-devel temporarily commented out # until such a time when ROOT can use the normal libAfterImage. @@ -79,11 +79,11 @@ EOF *tmva) ;; *venus) ;; *xml) echo "BuildRequires: libxml2-devel" ;; - root-proofd) ;; - root-rootd) ;; - root-xrootd) echo "BuildRequires: krb5-devel" ;; + root-system-proofd) ;; + root-system-rootd) ;; + root-system-xrootd) echo "BuildRequires: krb5-devel" ;; ttf-root*) ;; - root-common) ;; + root-system-common) ;; *) echo "*** Warning *** Unknown package $i - please update $0" \ > /dev/stderr @@ -100,9 +100,9 @@ for i in $* ; do case $i in *-dev) ;; libroot) ;; - root-bin) ;; + root-system-bin) ;; root-cint) ;; - root-doc) ;; + root-system-doc) ;; *alien) echo -n ", libalien-dev" ;; # Build dependency libafterimage-dev temporarily commented out # until such a time that ROOT can use the normal libAfterImage. @@ -143,7 +143,7 @@ for i in $* ; do *netx) ;; *odbc) echo -n ", libiodbc2-dev | unixodbc-dev" ;; *peac) ;; - *pgsql) echo -n ", postgresql-dev | libpq-dev" ;; + *pgsql) echo -n ", libpq-dev | postgresql-dev" ;; *proof) ;; *pythia5) echo -n ", pythia5-dev" ;; *pythia6) echo -n ", pythia6-dev" ;; @@ -160,16 +160,16 @@ for i in $* ; do *tmva) ;; *venus) echo -n ", libvenus-dev" ;; *xml) echo -n ", libxml2-dev" ;; - root-proofd) ;; - root-rootd) ;; - root-xrootd) + root-system-proofd) ;; + root-system-rootd) ;; + root-system-xrootd) if test $have_krb -lt 1 ; then echo -n ", libkrb5-dev|heimdal-dev" have_krb=1 fi ;; ttf-root*) ;; - root-common) ;; + root-system-common) ;; *) echo "*** Warning *** Unknown package $i - please update $0" \ > /dev/stderr ;; diff --git a/build/package/lib/makedebdir.sh b/build/package/lib/makedebdir.sh index 6685af208a3..9987f44cde8 100755 --- a/build/package/lib/makedebdir.sh +++ b/build/package/lib/makedebdir.sh @@ -1,75 +1,273 @@ #!/bin/sh # -# $Id: makedebdir.sh,v 1.14 2006/04/21 16:29:33 rdm Exp $ +# $Id: makedebdir.sh,v 1.15 2006/08/24 13:49:53 rdm Exp $ # # Make the debian packaging directory # - -### echo %%% possibly update the changelog file -root_vers=`cat build/version_number | tr '/' '.'` -last_vers=`head -n 1 build/package/debian/changelog | sed 's/root (\(.*\)).*/\1/'` -root_lvers=`echo $root_vers | awk 'BEGIN {FS="."} {printf "%d", (($1 * 1000) + $2) * 1000 + $3}'` -last_lvers=`echo $last_vers | awk 'BEGIN {FS="."} {printf "%d", (($1 * 1000) + $2) * 1000 + $3}'` +purge=0 +leave=0 +clean=0 +setup=1 +upcl=1 root_sovers=`cat build/version_number | sed 's,/.*,,'` -if test $root_lvers -gt $last_lvers ; then - dch -v ${root_vers}-1 -c build/package/debian/changelog "New upstream version" -fi -### echo %%% Make the directory -mkdir -p debian +# ____________________________________________________________________ +usage () +{ + cat <<EOF +Usage: $0 [OPTIONS] + +Options: + -h,--help This help + -p,--purge Purge source directory + -c,--clean Clean the source directory + -n,--no-setup Do not setup debian directory +EOF + exit 0 +} + +# ____________________________________________________________________ +purge () +{ + test $purge -lt 1 && return 0 -### echo %%% Copy files to directory, making subsitutions if needed -for i in build/package/debian/* ; do - if test -d $i ; then + cat <<-EOF + ============================================================= + Warning: Purging sources of unwanted stuff + + I will expand tar-balls, and remove them. I will also remove + non-free True Type Fonts. To restore these files, you should + do a CVS update. + ============================================================= + EOF + # Now, remove files we definitely don't want + # rm -f fonts/*.ttf + echo 1 -n "Removing unwanted files ... " + rm -f \ + build/package/common/root-cint.control \ + build/package/common/root-cint.copyright \ + build/package/common/root-cint.install.in \ + build/package/common/libroot-dev.control \ + build/package/common/root-plugin-clarens.control \ + build/package/common/root-plugin-ldap.control \ + build/package/common/root-plugin-minuit.control \ + build/package/common/root-plugin-mlp.control \ + build/package/common/root-plugin-python.control \ + build/package/common/root-plugin-python.install.in \ + build/package/common/root-plugin-quadp.control \ + build/package/common/root-plugin-roofit.control \ + build/package/common/root-plugin-ruby.control \ + build/package/common/root-plugin-sapdb.control \ + build/package/common/root-rootd.install.in \ + build/package/common/root-xrootd.install.old \ + build/package/common/ttf-root.control \ + build/package/common/ttf-root.install.in \ + build/package/debian/libroot.postinst \ + build/package/debian/libroot.postrm \ + build/package/debian/pycompat \ + build/package/debian/root-plugin-roofit.copyright \ + build/package/debian/root-cint.copyright \ + build/package/debian/root-cint.postinst.in \ + build/package/debian/root-cint.postrm.in \ + build/package/debian/root-cint.prerm.in \ + build/package/debian/ttf-root.copyright \ + build/package/lib/makerpmspecs.sh \ + fonts/LICENSE + rm -rf asimage/src/libAfterImage + rm -rf xrootd/src/xrootd + rm -rf rootfit/src/ + rm -rf rootfit/inc/ + for i in fonts/*.ttf ; do + if test ! -f ${i} ; then continue ; fi case $i in - */CVS) ;; - *) - echo "Copying directory `basename $i` to debian/" - cp -a $i debian/ ;; + */symbol.ttf) ;; + *) rm $i ;; esac - continue + done + if test $leave -lt 1 ; then + # Remove old package files + for i in build/package/*/root-{bin,doc,common,xrootd,rootd,proofd}* + do + if test ! -f $i ; then continue ; fi + rm $i + done + fi + echo "done" + + # Extract tar-balls, and remove the tar-balls. + echo -n "Extracting tar-balls ... " + # Xrootd + xtar=`find xrootd/src/ -name "*.tgz"` + echo -n "$xtar ... " + tar -xzf $xtar -C xrootd/src/ + touch xrootd/src/headers.d + rm -f unuran/src/unuran-*-root/config.status + rm -f unuran/src/unuran-*-root/config.log + rm -f $xtar + # ASImage + atar=`find asimage/src/ -name "*.tar.gz"` + echo -n "$atar ... " + tar -xzf $atar -C asimage/src/ + touch asimage/src/headers.d + rm -f $atar + # Some extra files to delete from the unpacked sources of libAfterimage + rm -rf asimage/src/libAfterImage/Makefile \ + asimage/src/libAfterImage/afterbase.h \ + asimage/src/libAfterImage/afterimage-config \ + asimage/src/libAfterImage/afterimage-libs \ + asimage/src/libAfterImage/config.h \ + asimage/src/libAfterImage/config.log \ + asimage/src/libAfterImage/config.status + # Unuran + utar=`find unuran/src/ -name "*.tar.gz"` + echo -n "$utar ... " + tar -xzf $utar -C unuran/src/ + touch unuran/src/headers.d + rm -f $utar + # ROOFit + ftar=`find roofit/ -name "*.tgz"` + echo -n "$ftar ... " + tar -xzf $ftar -C roofit/ + touch roofit/headers.d + rm -f $ftar + echo "done" +} + +# ____________________________________________________________________ +clean() +{ + if test $clean -lt 1 ; then return 0 ; fi + + echo -n "Cleaning ... " + touch unuran/src/.bogus.tar.gz + make maintainer-clean \ + ASTEPVERS=.bogus ASTEPETAG= \ + XROOTDDIRD= XROOTDETAG= \ + ROOFITDIRS= ROOFITDIRI= ROOFITETAG= \ + UNRVERS=.bogus UNURANETAG= + rm -f unuran/src/.bogus.tar.gz + rm -rf debian + rm -f fonts/s050000l.pfb + rm -f fonts/s050000l.pe + echo "done" +} + + +# ____________________________________________________________________ +vers2num() +{ + echo $1 | \ + tr '/' '.' | \ + awk 'BEGIN {FS="."}{printf "%d", (($1*1000)+$2)*1000+$3}' +} + +# ____________________________________________________________________ +update_cl() +{ + test $upcl -lt 1 && return 0 + + cl=build/package/debian/changelog + echo -n "Update $cl ..." + root_vers=`cat build/version_number` + last_vers=`head -n 1 $cl | sed 's/root-system (\(.*\)).*/\1/'` + root_lvers=`vers2num $root_vers` + last_lvers=`vers2num $last_vers` + if test $root_lvers -gt $last_lvers ; then + dch -v ${root_vers}-1 -c $cl "New upstream version" + echo "done" + else + echo "same version" fi - case $i in - */lib*-dev*) - echo "Copying `basename $i` to debian/" - cp -a $i debian/ - ;; - */lib*.overrides.in) - b=`basename $i .overrides.in ` - echo "Copying ${b}.overrides to debian/${b}${root_sovers}.overrides" - sed "s/@libvers@/${root_sovers}/g" \ - < $i > debian/${b}${root_sovers}.overrides - ;; - */lib*.in) - e=`basename $i .in | sed 's/.*\.//'` - b=`basename $i .$e.in` - echo "Copying ${b}.${e}.in to debian/${b}${root_sovers}.${e}.in" - cp -a $i debian/${b}${root_sovers}.${e}.in - ;; - */lib*) - e=`basename $i | sed 's/.*\.//'` - b=`basename $i .$e` - echo "Copying ${b}.${e}.in to debian/${b}${root_sovers}.${e}.in" - cp -a $i debian/${b}${root_sovers}.${e} - ;; - *) - echo "Copying `basename $i` to debian/" - cp -a $i debian/ - ;; +} + +# ____________________________________________________________________ +setup() +{ + test $setup -lt 1 && return 0 + + ### echo %%% Make the directory + echo "Setting up debian directory ... " + mkdir -p debian + + ### echo %%% Copy files to directory, making subsitutions if needed + for i in build/package/debian/* ; do + if test -d $i ; then + case $i in + */CVS) continue ;; + esac + echo "Copying directory `basename $i` to debian/" + cp -a $i debian/ + continue + fi + + case $i in + */lib*-dev*) + echo "Copying `basename $i` to debian/" + cp -a $i debian/ + ;; + */lib*.overrides.in) + b=`basename $i .overrides.in ` + t="${b}${root_sovers}.overrides" + echo "Copying ${b}.overrides to debian/${t}" + sed "s/@libvers@/${root_sovers}/g" < $i > debian/${t} + ;; + */lib*.in) + e=`basename $i .in | sed 's/.*\.//'` + b=`basename $i .$e.in` + t="${b}${root_sovers}.${e}.in" + echo "Copying ${b}.${e}.in to debian/${t}" + cp -a $i debian/${t} + ;; + */lib*) + e=`basename $i | sed 's/.*\.//'` + b=`basename $i .$e` + t="${b}${root_sovers}.${e}" + echo "Copying ${b}.${e}.in to debian/${t}n" + cp -a $i debian/${t} + ;; + */s050000l.pfb|*/s050000l.pe) + # Copying s050000l.pfb and s050000l.pe to font directory + b=`basename $i` + echo "Copying $b to fonts/$b" + cp $i fonts/ + ;; + *) + b=`basename ${i}` + echo "Copying $b to debian/$b" + cp -a $i debian/ + ;; + esac + done + + # cp -a build/package/debian/* debian/ + find debian -name "CVS" | xargs -r rm -frv + rm -fr debian/root-system-bin.png + rm -fr debian/application-x-root.png + chmod a+x debian/rules + chmod a+x build/package/lib/* + + # Make sure we rebuild debian/control + touch debian/control.in +} + +# ____________________________________________________________________ +while test $# -gt 0 ; do + case $1 in + -h|--help) usage ;; + -p|--purge) purge=1 ;; + -c|--clean) clean=1 ;; + -n|--no-setup) setup=0 ; upcl=0 ;; + -o|--leave-old) leave=1 ;; + *) echo "Unknown option: $1, try $0 --help" > /dev/stderr ;; esac -done -# cp -a build/package/debian/* debian/ -find debian -name "CVS" | xargs -r rm -frv -rm -fr debian/root-bin.png -rm -fr debian/application-x-root.png -chmod a+x debian/rules -chmod a+x build/package/lib/* -# Make sure we rebuild debian/control -touch debian/control.in - -### echo %%% Make skeleton control file -# cat build/package/debian/control.in build/package/common/*.control \ -# > debian/control.in + shift +done + +# ____________________________________________________________________ +purge +clean +update_cl +setup # # EOF diff --git a/build/package/lib/makelist b/build/package/lib/makelist index 080cc3fca1f..4fb7182d750 100755 --- a/build/package/lib/makelist +++ b/build/package/lib/makelist @@ -34,7 +34,7 @@ endif all: hello liblist devlist binlist hello: @echo "Making list for $(DIRS) ($(SLIB),$(DEV),$(SBIN))" - +# @echo "ALLLIBS=$(ALLLIBS) ALLMAPS=$(ALLMAPS) PKGLIBS=$(PKGLIBS)" # If we have a development package, get the list of headers. ifneq ($(DEV),) @@ -46,33 +46,38 @@ ifneq ($(LIB),) # if the development package and the library package is not the same, # we need to append the soversion to the library directory ifneq ($(LIB),$(DEV)) -PKGLIBS := $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(SOVER)) \ - $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(MAJOR)) \ - $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) \ - $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/%.$(SOVER)) +PKGLIBS := $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(SOVER)) \ + $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(MAJOR)) \ + $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) \ + $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/%.$(SOVER)) DEVLIBS := $(ALLLIBS) else # ! $(LIB) = $(DEV) # If the development and library package is the same (plugins), then we need # only add the soversion to the library directory ifneq ($(NOVERS),1) -PKGLIBS := $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(SOVER)) \ - $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(MAJOR)) \ - $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) +PKGLIBS := $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(SOVER)) \ + $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%.$(MAJOR)) \ + $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) else # ! $(NOVERS) != 1 # Special case of xrootd ifeq ($(DIRS), xrootd) XRDLIBS := $(patsubst lib/%, $(LPATH)/%, \ $(filter-out lib/libXrdProofd.so, $(wildcard lib/libXrd*.so))) PKGLIBS := $(XRDLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) -# In case we do no have a library package +# In case we do not have a library package else # ! $(DIR) = xrootd PKGLIBS := $(ALLLIBS) \ - $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) \ - $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/%.$(SOVER)) + $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) \ + $(ALLLIBS:$(RLIBD)/%=$(RLIBD)/%.$(SOVER)) endif # $(DIRS) = xrootd endif # $(NOVERS) != 1 endif # $(LIB) = $(DEV) endif # $(LIB) +ifneq ($(NOMAP),1) +#NOXRD := $(filter-out $(LIBPATH)/libXrd%, $(ALLLIBS)) +#PKGLIBS := $(PKGLIBS) $(NOXRD:$(RLIBD)/%.so=$(RLIBD)/$(SOVER)/%.rootmap) +PKGLIBS := $(PKGLIBS) $(ALLMAPS:$(RLIBD)/%=$(RLIBD)/$(SOVER)/%) +endif # The rule to make library lists liblist: @@ -83,7 +88,10 @@ ifneq ($(LIB),$(DEV)) for i in $(ALLLIBS) ; do \ b=`basename $$i` ; \ ln -fs $(SOVER)/$$b . ; \ - ln -fs $(SOVER)/$$b.$(SOVER) .; done) + ln -fs $(SOVER)/$$b.$(SOVER) . ; done) + +# mv $(SOVER)/$$b.$(SOVER) . ; \ +# (cd $(SOVER) && ln -sf ../$$b.$(SOVER) .) ; done) else ifneq ($(DIRS), xrootd) @(cd $(BUILD)/$(RLIBD) && \ diff --git a/build/package/lib/makelists.sh b/build/package/lib/makelists.sh index 175a0e9f658..a0a2741b7e2 100755 --- a/build/package/lib/makelists.sh +++ b/build/package/lib/makelists.sh @@ -6,9 +6,15 @@ version=$1 ; shift prefix=$1 ; shift sysconfdir=$1 ; shift pkgdocdir=$1 ; shift -sovers=`echo $version | sed 's/\([[:digit:]]*\.[[:digit:]]*\)\.[[:digit:]]*/\1/'` +sovers=`echo $version | sed 's/\([[:digit:]]*\.[[:digit:]]*\)\..*/\1/'` rm -f $outdir/*.install +# install file lists that need no substitutions +for i in build/package/common/*.install ; do + if test ! -f $i ; then continue ; fi + cp $i $outdir +done + # # Loop over the directories, and update the file lists based on the # information in Module.mk files in each subdirectory @@ -33,21 +39,34 @@ for d in * ; do # if it's libraries and such should go into some special package. # case $d in - auth) lib=libroot ; dev=libroot-dev; bin=root-bin ;; - base) lib=libroot ; dev=libroot-dev; bin=root-bin - extra="ALLLIBS=${prefix}/lib/root/libCore.so" ;; - cint) lib=libroot ; dev=libroot-dev; bin=root-bin - extra="ALLLIBS=${prefix}/lib/root/libCint.so" ;; - clib|cont|eg|foam|fitpanel|g3d|ged*|geom*|gpad|graf|gui*|hist*|html) - lib=libroot ; dev=libroot-dev; bin=root-bin ;; - mathcore|matrix|meta*|net|newdelete|physics|postscript|rint|spectrum) - lib=libroot ; dev=libroot-dev; bin=root-bin ;; - table|thread|tree*|unix|utils|vmc|x11*|x3d|zip|rpdutils|rootx) - lib=libroot ; dev=libroot-dev; bin=root-bin ;; - smatrix|splot|xml) - lib=libroot ; dev=libroot-dev; bin=root-bin ;; + auth) lib=libroot ; dev=libroot-dev; + bin=root-system-bin ;; + base) lib=libroot ; dev=libroot-dev; + bin=root-system-bin + extra="ALLMAPS=${prefix}/lib/root/libCore.rootmap " + extra="$extra ALLLIBS=${prefix}/lib/root/libCore.so" ;; + cint) lib=libroot ; dev=libroot-dev; + bin=root-system-bin ; + extra="ALLLIBS=${prefix}/lib/root/libCint.so" ;; + # extra="NOMAP=1 ALLLIBS=${prefix}/lib/root/libCint.so" ;; + clib|cont|eg|foam|fitpanel|g3d|gdml|ged*|geom*|gpad|graf|gui*|hist*) + lib=libroot ; dev=libroot-dev; + bin=root-system-bin ;; + html|io|math|mathcore|matrix|meta*|net|physics|postscript|rint) + lib=libroot ; dev=libroot-dev; + bin=root-system-bin ;; + spectrum*|table|thread|tree*|unix|utils|vmc|x11*|x3d|zip) + lib=libroot ; dev=libroot-dev; + bin=root-system-bin ;; + rpdutils) lib=libroot ; dev=libroot-dev; + bin=root-system-bin ;; # extra="NOMAP=1" ;; + rootx|sessionviewer|smatrix|splot|unuran|xml) + lib=libroot ; dev=libroot-dev; + bin=root-system-bin ;; + newdelete) lib=libroot ; dev=libroot-dev; + bin=libroot-dev ;; # extra="NOMAP=1" ;; reflex) lib=libroot ; dev=libroot-dev; - bin=libroot-dev ;; + bin=libroot-dev ;; # extra="NOMAP=1" ;; cintex) lib=libroot ; dev=libroot-dev; bin=libroot-dev ;; globusauth) lib=root-plugin-globus ; dev=$lib ; bin=$lib ;; @@ -57,11 +76,14 @@ for d in * ; do srputils) lib=root-plugin-srp ; dev=$lib ; bin=$lib ;; xmlparser) lib=root-plugin-xml ; dev=$lib ; bin=$lib ;; krb5auth) lib=root-plugin-krb5 ; dev=$lib ; bin=$lib ;; - proofd) lib=root-plugin-xproof ; dev=$lib ; bin=root-$d ;; - rootd) lib=root-$d ; dev=$lib ; bin=$lib ;; - xrootd) lib=root-$d ; dev=$lib ; bin=$lib ; - xrdlibs= - extra="ALLLIBS= NOVERS=1" ;; + proofd) lib=root-plugin-xproof ; dev=$lib ; + bin=root-system-proofd ;; + proofplayer) + lib=root-plugin-proof ; dev=$lib ; bin=$lib ;; + rootd) lib=root-system-$d ; dev=$lib ; bin=$lib ;; + xrootd) lib=root-system-$d ; dev=$lib ; bin=$lib ; + xrdlibs= ; extra="ALLLIBS= NOVERS=1" ;; + # NOMAP=1" ;; pyroot) lib=libroot-python ; dev=${lib}-dev ; bin=$lib ;; clarens|ldap|mlp|quadp|roofit|ruby|mathmore|minuit|tmva) lib=libroot-$d ; dev=${lib}-dev ; bin=$lib ;; @@ -69,7 +91,8 @@ for d in * ; do proofx) lib=root-plugin-xproof ; dev=$lib ; bin=$lib ;; sapdb) lib=root-plugin-maxdb ; dev=$lib ; bin=$lib ;; qtgsi) lib=root-plugin-qt ; dev=$lib ; bin=$lib ;; - fftw) lib=root-plugin-${d}3 ; dev=$lib ; bin=$lib ;; + fftw) lib=root-plugin-${d}3 ; dev=$lib ; bin=$lib ;; + # extra="NOMAP=1" ;; *) lib=root-plugin-$d ; dev=$lib ; bin=$lib ;; esac diff --git a/build/package/lib/makerpmspec.sh b/build/package/lib/makerpmspec.sh index cd93479fc79..7ba4fdb1d73 100755 --- a/build/package/lib/makerpmspec.sh +++ b/build/package/lib/makerpmspec.sh @@ -1,6 +1,6 @@ #!/bin/sh -e # -# $Id: makerpmspec.sh,v 1.14 2006/04/21 16:29:33 rdm Exp $ +# $Id: makerpmspec.sh,v 1.15 2006/08/24 13:49:53 rdm Exp $ # # Make the rpm spec file in ../root.spec # @@ -103,7 +103,7 @@ for p in $pkglist ; do echo "Requires: root-fitter" >> root.spec ;; libroot) - echo "Requires: root-ttf, root-common" >> root.spec + echo "Requires: root-ttf, root-system-common" >> root.spec ;; *rootd) echo "Prefix: %_prefix" >> root.spec diff --git a/build/package/lib/makerpmspecs.sh b/build/package/lib/makerpmspecs.sh deleted file mode 100755 index 502c33cbb1c..00000000000 --- a/build/package/lib/makerpmspecs.sh +++ /dev/null @@ -1,87 +0,0 @@ -#!/bin/sh -e -# -# $Id: makerpmspecs.sh,v 1.5 2005/07/14 15:00:44 rdm Exp $ -# -# Writes an entry in ../root.spec -# -tgtdir=$1 ; shift -cmndir=$1 ; shift -rpmdir=$1 ; shift -pkg=$1 - -### echo %%% "tgtdir: $tgtdir" -### echo %%% "cmndir: $cmndir" -### echo %%% "rpmdir: $rpmdir" -### echo %%% "pkg: $pkg" - -### echo %%% Check if skeleton and description file exist -if [ ! -f $cmndir/$pkg.dscr ] || [ ! -f $rpmdir/$pkg.spec.in ] ; then - echo "$0: couldn't find one and/or both of" 1>&2 - echo " $cmndir/$pkg.dscr" 1>&2 - echo " $rpmdir/$pkg.spec.in" 1>&2 - echo "giving up" 1>&2 - exit 4 -fi - -### echo %%% Find the short description -short=`sed -n 's/^short: \(.*\)$/\1/p' < ${cmndir}/${pkg}.dscr` -if [ "x$short" = "x" ] ; then - echo "$0: short description empty - giving up" 1>&2 - exit 4 -fi - -### echo %%% Insert the short description -sed -e "s|@short@|$short|" < $rpmdir/$pkg.spec.in > ${cmndir}/tmp - -### echo %%% Now prepare to insert long description -### echo %%% -### echo %%% first split the file at mark '@long@' -csplit -q -f ${cmndir}/tmp. -k ${cmndir}/tmp "/@long@/" - -### echo %%% cat first part to new file -cat ${cmndir}/tmp.00 > ${cmndir}/tmp - -### echo %%% then output the long description -sed -e '/^#.*$/d' \ - -e '/^short:.*$/d' \ - -e '/^long:.*/d' \ - < ${cmndir}/${pkg}.dscr >> ${cmndir}/tmp - -### echo %%% If this is not the bin package, give a refernce to that -if [ "x$pkg" != "xroot-bin" ] ; then - echo "" >> ${cmndir}/tmp - echo "See also root-bin package documentation for more information" >> \ - ${cmndir}/tmp -fi - -### echo %%% Insert the general description -if [ -f ${cmndir}/general.dscr ] ; then - # put an 'empty' line - echo "" >> ${cmndir}/tmp - - # put the general documentation in the end - sed -e '/^#.*$/d' \ - -e '/^general:.*/d' \ - < ${cmndir}/general.dscr >> ${cmndir}/tmp -fi - -### echo %%% and finally cat the last part of the file to new file -cat ${cmndir}/tmp.01 >> ${cmndir}/tmp - -### echo %%% remove temporary split files -rm ${cmndir}/tmp.00 ${cmndir}/tmp.01 - -### echo %%% remove the remainder of the split, and insert tgtdir -sed -e "/^@long@.*$/d" \ - -e "s|@tgtdir@|${tgtdir}|" \ - -e "s|@files@|${tgtdir}/${pkg}.files|" \ - < ${cmndir}/tmp > ${cmndir}/spec.tmp -rm -f ${cmndir}/tmp - -cat ${cmndir}/spec.tmp -echo "" -rm ${cmndir}/spec.tmp - -# -# EOF -# diff --git a/build/package/rpm/root-proofd.post b/build/package/rpm/root-system-proofd.post similarity index 100% rename from build/package/rpm/root-proofd.post rename to build/package/rpm/root-system-proofd.post diff --git a/build/package/rpm/root-proofd.preun b/build/package/rpm/root-system-proofd.preun similarity index 100% rename from build/package/rpm/root-proofd.preun rename to build/package/rpm/root-system-proofd.preun diff --git a/build/package/rpm/root-rootd.post b/build/package/rpm/root-system-rootd.post similarity index 100% rename from build/package/rpm/root-rootd.post rename to build/package/rpm/root-system-rootd.post diff --git a/build/package/rpm/root-rootd.postun b/build/package/rpm/root-system-rootd.postun similarity index 100% rename from build/package/rpm/root-rootd.postun rename to build/package/rpm/root-system-rootd.postun diff --git a/build/package/rpm/root-rootd.pre b/build/package/rpm/root-system-rootd.pre similarity index 100% rename from build/package/rpm/root-rootd.pre rename to build/package/rpm/root-system-rootd.pre diff --git a/build/package/rpm/root-rootd.preun b/build/package/rpm/root-system-rootd.preun similarity index 100% rename from build/package/rpm/root-rootd.preun rename to build/package/rpm/root-system-rootd.preun diff --git a/build/package/rpm/root-rootd.spec.in b/build/package/rpm/root-system-rootd.spec.in similarity index 99% rename from build/package/rpm/root-rootd.spec.in rename to build/package/rpm/root-system-rootd.spec.in index 648cb734081..a7d11249c6b 100644 --- a/build/package/rpm/root-rootd.spec.in +++ b/build/package/rpm/root-system-rootd.spec.in @@ -27,6 +27,7 @@ Group: ROOT BuildRoot: /tmp/rootdrpm Prefix: %{_prefix} Summary: @short@ +Conflicts: root-system-rootd #--------------------------------------------------------------------- # Less concise description diff --git a/build/package/rpm/spec.in b/build/package/rpm/spec.in index ee10028d774..624f3474ff3 100644 --- a/build/package/rpm/spec.in +++ b/build/package/rpm/spec.in @@ -16,7 +16,7 @@ # # Header # -Name: root +Name: root-system Version: %{ver} Release: %{rel} License: GNU Lesser General Public License @@ -54,7 +54,7 @@ ROOT web-site: http://root.cern.ch # # Prepare sources - make package output dir (e.g. ../i686) %prep -%setup -n %{name} +%setup -n root #--------------------------------------------------------------------- # The actual build @@ -97,12 +97,13 @@ mkdir -p ${RPM_BUILD_ROOT}/%{_prefix}/share/applications mkdir -p ${RPM_BUILD_ROOT}/%{_prefix}/share/pixmaps mkdir -p ${RPM_BUILD_ROOT}/%{_icontheme}/apps mkdir -p ${RPM_BUILD_ROOT}/%{_icontheme}/mimetypes -sed 's,@prefix@,%{_prefix},' < build/package/debian/root-bin.desktop.in \ - > ${RPM_BUILD_ROOT}/%{_prefix}/share/applications/root-bin.desktop -cp build/package/debian/root-bin.xpm \ - ${RPM_BUILD_ROOT}/%{_prefix}/share/pixmaps/root-bin.xpm -cp build/package/debian/root-bin.png \ - ${RPM_BUILD_ROOT}/%{_icontheme}/apps/root-bin.png +sed 's,@prefix@,%{_prefix},' \ + < build/package/debian/root-system-bin.desktop.in \ + > ${RPM_BUILD_ROOT}/%{_prefix}/share/applications/root-system-bin.desktop +cp build/package/debian/root-system-bin.xpm \ + ${RPM_BUILD_ROOT}/%{_prefix}/share/pixmaps/root-system-bin.xpm +cp build/package/debian/root-system-bin.png \ + ${RPM_BUILD_ROOT}/%{_icontheme}/apps/root-system-bin.png cp build/package/debian/application-x-root.png \ ${RPM_BUILD_ROOT}/%{_icontheme}/mimetypes/application-x-root.png @@ -150,15 +151,15 @@ mkdir -p rpm build/package/lib/makelists.sh rpm ${RPM_BUILD_ROOT} \ %ver %_prefix %_sysconfdir %_defaultdocdir echo "%attr(0755, root, root) %{_sysconfdir}/rc.d/init.d/rootd" \ - >> rpm/root-rootd.install + >> rpm/root-system-rootd.install echo "%attr(0755, root, root) %{_sysconfdir}/rc.d/init.d/proofd" \ - >> rpm/root-proofd.install + >> rpm/root-system-proofd.install touch rpm/ttf-root-installer.install -if test -f rpm/root-xrootd.install ; then +if test -f rpm/root-system-xrootd.install ; then echo "%attr(0755, root, root) %{_sysconfdir}/rc.d/init.d/xrootd" \ - >> rpm/root-xrootd.install + >> rpm/root-system-xrootd.install echo "%attr(0755, root, root) %{_sysconfdir}/rc.d/init.d/olbd" \ - >> rpm/root-xrootd.install + >> rpm/root-system-xrootd.install fi # Make the empty proof log file diff --git a/configure b/configure index af22b7fc8d9..31e1133d524 100755 --- a/configure +++ b/configure @@ -3969,9 +3969,9 @@ if test "x$show_pkglist" = "xyes" ; then test "x$enable_sapdb" = "xyes" && pkglist="$pkglist root-plugin-maxdb" test "x$enable_srp" = "xyes" && pkglist="$pkglist root-plugin-srp" test "x$enable_xml" = "xyes" && pkglist="$pkglist root-plugin-xml" - test "x$enable_xrootd" = "xyes" && pkglist="$pkglist root-xrootd root-plugin-netx" + test "x$enable_xrootd" = "xyes" && pkglist="$pkglist root-system-xrootd root-plugin-netx" - pkglist="$pkglist root-plugin-fumili libroot-minuit libroot-mlp libroot-tmva root-plugin-proof root-plugin-xproof root-plugin-sql libroot-quadp root-proofd root-rootd root-doc root-bin libroot root-common ttf-root-installer" + pkglist="$pkglist root-plugin-fumili libroot-minuit libroot-mlp libroot-tmva root-plugin-proof root-plugin-xproof root-plugin-sql libroot-quadp root-system-proofd root-system-rootd root-system-doc root-system-bin libroot root-system-common ttf-root-installer" # If we're called from the package preparation script, then # print out the package list and exit result "packages: $pkglist" diff --git a/man/man1/genmap.1 b/man/man1/genmap.1 new file mode 100644 index 00000000000..909060c3dad --- /dev/null +++ b/man/man1/genmap.1 @@ -0,0 +1,56 @@ +.\" +.\" $Id: genmap.1,v 1.2 2005/09/07 10:23:23 rdm Exp $ +.\" +.TH GENMAP 1 "Version 3" "ROOT" +.\" NAME should be all caps, SECTION should be 1-8, maybe w/ subsection +.\" other parms are allowed: see man(7), man(1) +.SH NAME +genmap \- ROOT utility to create class to library maps +.SH SYNOPSIS +.\fBgenmap\fR [-D] [-i \fImapfile\fR] [-o \fIlibrary\fR] +.SH "DESCRIPTION" +Creates a map from classes to shared libraries that contain these +classes. +.SH OPTIONS +.TP +.B -D +Show debug information. +.TP +.BI -o mapfile +Output on \fImapfile\fR +.TP +.BI -i sofile +Library to inspect +.SH "SEE ALSO" +\fIroot\fR(1), \fIrlibmap\fR(1) +.PP +See also the \fBROOT\fR webpages: +.US http://root.cern.ch +\fIhttp://root.cern.ch\fR +.UE +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +\fBRene Brun\fR and \fBFons Rademakers\fR +.RE +.SH "COPYRIGHT" +This library is free software; you can redistribute it and/or modify +it under the terms of the GNU Lesser General Public License as +published by the Free Software Foundation; either version 2.1 of the +License, or (at your option) any later version. +.P +This library is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. +.P +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +.SH AUTHOR +This manual page was written by Christian Holm Christensen +<cholm@nbi.dk>, for the Debian GNU/Linux system (but may be used by +others). +.\" +.\" EOF +.\" diff --git a/reflex/.cvsignore b/reflex/.cvsignore index cd3a2a04a62..2d071f0ae81 100644 --- a/reflex/.cvsignore +++ b/reflex/.cvsignore @@ -5,4 +5,4 @@ include lib bin .scons* -.sconf* \ No newline at end of file +.sconf* diff --git a/reflex/inc/Reflex/.cvsignore b/reflex/inc/Reflex/.cvsignore index 90d7e11d2a8..8aa0442fd30 100644 --- a/reflex/inc/Reflex/.cvsignore +++ b/reflex/inc/Reflex/.cvsignore @@ -1 +1 @@ -.scons* \ No newline at end of file +.scons* diff --git a/reflex/inc/Reflex/Builder/.cvsignore b/reflex/inc/Reflex/Builder/.cvsignore index 90d7e11d2a8..8aa0442fd30 100644 --- a/reflex/inc/Reflex/Builder/.cvsignore +++ b/reflex/inc/Reflex/Builder/.cvsignore @@ -1 +1 @@ -.scons* \ No newline at end of file +.scons* diff --git a/reflex/inc/Reflex/internal/.cvsignore b/reflex/inc/Reflex/internal/.cvsignore index 90d7e11d2a8..8aa0442fd30 100644 --- a/reflex/inc/Reflex/internal/.cvsignore +++ b/reflex/inc/Reflex/internal/.cvsignore @@ -1 +1 @@ -.scons* \ No newline at end of file +.scons* diff --git a/reflex/python/.cvsignore b/reflex/python/.cvsignore index 90d7e11d2a8..8aa0442fd30 100644 --- a/reflex/python/.cvsignore +++ b/reflex/python/.cvsignore @@ -1 +1 @@ -.scons* \ No newline at end of file +.scons* diff --git a/reflex/python/genreflex/.cvsignore b/reflex/python/genreflex/.cvsignore index 35b1f74752a..58daa41ca76 100644 --- a/reflex/python/genreflex/.cvsignore +++ b/reflex/python/genreflex/.cvsignore @@ -1,2 +1,2 @@ *.pyc -.scons* \ No newline at end of file +.scons* diff --git a/reflex/src/.cvsignore b/reflex/src/.cvsignore index f6adf806ac8..434f91fd58b 100644 --- a/reflex/src/.cvsignore +++ b/reflex/src/.cvsignore @@ -1,2 +1,2 @@ *.os -.scons* \ No newline at end of file +.scons* diff --git a/reflex/test/.cvsignore b/reflex/test/.cvsignore index d0ca3b938ef..4add3f6a0ec 100644 --- a/reflex/test/.cvsignore +++ b/reflex/test/.cvsignore @@ -5,4 +5,4 @@ test_Reflex_simple1 test_Reflex_simple2 *_rflx.cpp local_* -.scons* \ No newline at end of file +.scons* diff --git a/reflex/test/testDict1/.cvsignore b/reflex/test/testDict1/.cvsignore index f7bff7c7750..512cc503405 100644 --- a/reflex/test/testDict1/.cvsignore +++ b/reflex/test/testDict1/.cvsignore @@ -1,4 +1,4 @@ *_rflx.cpp Reflex.xml .scons* -*.os \ No newline at end of file +*.os diff --git a/reflex/test/testDict2/.cvsignore b/reflex/test/testDict2/.cvsignore index 1200662073a..f88c7b4604b 100644 --- a/reflex/test/testDict2/.cvsignore +++ b/reflex/test/testDict2/.cvsignore @@ -1,4 +1,4 @@ *_rflx.cpp Class2Dict.xml .scons* -*.os \ No newline at end of file +*.os diff --git a/unuran/Module.mk b/unuran/Module.mk index 057fd16d806..0cf580e6056 100644 --- a/unuran/Module.mk +++ b/unuran/Module.mk @@ -16,6 +16,7 @@ UNRVERS := unuran-1.0.0-root UNRSRCS := $(MODDIRS)/$(UNRVERS).tar.gz UNRDIRS := $(MODDIRS)/$(UNRVERS) UNURANETAG := $(UNURANDIRS)/headers.d +UNRCFG := $(UNURANDIRS)/$(UNRVERS)/config.h UNRS := $(wildcard $(UNRDIRS)/src/utils/*.c)\ $(wildcard $(UNRDIRS)/src/methods/*.c) \ @@ -70,9 +71,10 @@ include/%.h: $(UNURANDIRI)/%.h $(UNURANETAG) ifeq ($(findstring $(MAKECMDGOALS),distclean maintainer-clean),) -include $(UNURANETAG) endif +$(UNURANDEP): $(UNRCFG) $(UNURANETAG): $(UNRSRCS) - echo "** untar and configure unuran" + echo "** untar unuran" @(if [ -d $(UNRDIRS) ]; then \ rm -rf $(UNRDIRS); \ fi; \ @@ -81,8 +83,10 @@ $(UNURANETAG): $(UNRSRCS) gunzip -c $(UNRVERS).tar.gz | tar xf -; \ etag=`basename $(UNURANETAG)` ; \ touch $$etag ; \ - fi; \ - cd $(UNRVERS); \ + fi); +$(UNRCFG): $(UNRANETAG) + @echo "** configure unuran" + cd $(UNURANDIRS)/$(UNRVERS) ; \ ACC=$(CC); \ if [ "$(CC)" = "icc" ]; then \ ACC="icc"; \ @@ -106,7 +110,7 @@ $(UNURANETAG): $(UNRSRCS) ACFLAGS="-MD -G5 -GX"; \ fi; \ GNUMAKE=$(MAKE) ./configure --prefix=`pwd`/$(MODDIRS)/$(UNRVERS) CC="$$ACC" \ - CFLAGS="$$ACFLAGS";) + CFLAGS="$$ACFLAGS"; $(UNURANLIB): $(UNRCFG) $(UNRO) $(UNURANO) $(UNURANDO) $(ORDER_) $(MAINLIBS) @$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \ @@ -153,4 +157,5 @@ $(UNRO): CFLAGS := $(filter-out -Iinclude,$(CFLAGS) -I$(UNRDIRS) -I$(UNRDIRS)/sr endif ifeq ($(CC),icc) $(UNRO): CFLAGS += -mp -endif \ No newline at end of file +endif + -- GitLab