From d8254f3ba01f0301657f4a1a141c327925cc33b2 Mon Sep 17 00:00:00 2001 From: Fons Rademakers <Fons.Rademakers@cern.ch> Date: Fri, 8 Dec 2000 17:41:01 +0000 Subject: [PATCH] man pages of all ROOT executables provided by Christian Holm. git-svn-id: http://root.cern.ch/svn/root/trunk@1133 27541ba8-7e3a-0410-8455-c3a389f83636 --- man/cint.1 | 270 ++++++++++++++++++++++++++++++++ man/g2root.1 | 158 +++++++++++++++++++ man/h2root.1 | 160 +++++++++++++++++++ man/proofd.1 | 264 +++++++++++++++++++++++++++++++ man/proofserv.1 | 75 +++++++++ man/rmkdepend.1 | 390 ++++++++++++++++++++++++++++++++++++++++++++++ man/root-config.1 | 112 +++++++++++++ man/root.1 | 116 ++++++++++++++ man/root.exe.1 | 47 ++++++ man/rootcint.1 | 202 ++++++++++++++++++++++++ man/rootd.1 | 232 +++++++++++++++++++++++++++ 11 files changed, 2026 insertions(+) create mode 100644 man/cint.1 create mode 100644 man/g2root.1 create mode 100644 man/h2root.1 create mode 100644 man/proofd.1 create mode 100644 man/proofserv.1 create mode 100644 man/rmkdepend.1 create mode 100644 man/root-config.1 create mode 100644 man/root.1 create mode 100644 man/root.exe.1 create mode 100644 man/rootcint.1 create mode 100644 man/rootd.1 diff --git a/man/cint.1 b/man/cint.1 new file mode 100644 index 00000000000..902fd3154bc --- /dev/null +++ b/man/cint.1 @@ -0,0 +1,270 @@ +.\" +.\" $Id$ +.\" +.TH CINT 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 +cint \- C/C++ interactive interpretor +.SH SYNOPSIS +.B cint +.I "[options] files ..." +.SH "DESCRIPTION" +This manual page documents briefly the +.BR cint , +program. +.PP +.B CINT +is a C/C++ interpreter which is aimed at processing C/C++ +scripts. Scripts are programs which perform specific tasks. Generally +execution time is not critical, but rapid development is. Using an +interpreter the compile and link cycle is dramatically reduced +facilitating rapid development. +.PP +.B CINT +is not aimed to be a 100% ANSI/ISO compliant C/C++ language +processor. It rather is a portable script language environment which +is close enough to the standard C++. +.PP +Regulary check either of +.I /tmp /usr/tmp /temp /windows/temp +directory and remove temp-files which are accidentally left by +.BR CINT . +.PP +.B CINT +reads source file on-the-fly from the file system. Do not change the +active source during +.BR cint run . +Use +.B -C +option or +.B C1 +command otherwise. +.PP +In source code trace mode, +.B CINT +sometimes displays extra-characters. This is harmless. Please ignore. +.PP +.B CINT +covers about 95% of ANSI C and 85% of C++. +.BR CINT , +written in ANSI C (about 80000 loc), is solid enough +to interpret itself and let the interpreted version execute a program. +.PP +.B CINT +makes C/C++ programming enjoyable even for part-time programmers. +.PP +.B CINT +is developed by +.BR Masaharu Goto , +who works for HP Japan. Masaharu collaborates closely with the +.B ROOT +team to integrate +.B CINT +seamlessly into +.B ROOT +and to further optimize +.BR CINT / ROOT. +.PP +The +.B ROOT +system embeds +.B CINT +to be able to execute C++ scripts and C++ command line input. +.B CINT +also provides +.B ROOT +with extensive RTTI (Run Time Type Identification) capabilities. +.PP +This manual page was written for the Debian GNU/Linux distribution +because the original program does not have a manual page. +.SH OPTIONS +.TP +.BR -A + ANSI C++ mode(default) +.TP +.BR -b [line] +set break line +.TP +.B -c -1 +make C++ precompiled interface method files +.TP +.B -c -2 + make C precompiled interface method files +.TP +.BR -C + copy src to $TMPDIR so that src can be change during cint run +.TP +.BR -d [dumpfile] + dump function call history +.TP +.BR -D [macro] + define macro symbol for #ifdef +.TP +.BR -e + Not ignore extern declarations +.TP +.BR -E + Dump core at error +.TP +.BR -f [file] + set break file +.TP +.BR -F [assignement] + set global variable +.TP +.BR -G [tracedmp] + dump exec trace into file +.TP +.BR -i + interactively return undefined symbol value +.TP +.BR -I [includepath] + set include file search path +.TP +.BR -K + C mode +.TP +.BR -l [dynamiclinklib] + link dynamic link library +.TP +.BR -n [linkname] + Specify precompiled interface method filename +.TP +.BR -N [DLL_name] + Specify DLL interface method name +.TP +.BR -O [0~4] + Loop compiler on(1~5) off(0). Default on(4) +.TP +.BR -p + use preprocessor prior to interpretation +.TP +.BR -q [security] + Set security level(default 0) +.TP +.BR -r + revision and linked function/global info +.TP +.BR -R + display input file at break point +.TP +.BR -s + step execution mode +.TP +.BR -S + step execution mode, First stop in main() +.TP +.BR -t + trace execution +.TP +.BR -T + trace from pre-run +.TP +.BR -u [undefout] + listup possible undefined typenames +.TP +.BR -V + Generate symbols for non-public member with -c option +.TP +.BR -v + Bytecode compiler debug mode +.TP +.BR -X [readlinedumpfile] + Execute readline dumpfile +.TP +.BR -x 'main() {...}' + Execute argument as source code +suboptions +.TP +.B ++V +turn on class title comment mode for following source fies +.TP +.BR -V + turn off class title comment mode for following source fies +.TP +.B +P +turn on preprocessor for following source files +.TP +.BR -P + turn off preprocessor for following source files +.TP +.B +STUB +stub function header begin +.TP +.BR -STUB + stub function header end +.TP +.B [files] +Any valid C/C++ source or header files +.SH "EXAMPLES" +.RS +$ cint prog.c main.c +.RE +where the file +.I main.c +may contain any ANSI C code, say +.RS +.ft 3 +.nf +.sp +int main() { + char* greeting = "Hello World" + printf("The classic greeting: \"%s\"\n", greeting); + return 0; +} +.ft +.LP +.RE +Interpreting the above file like +.RS +$ cint -S prog.c main.c +.RE +will single step through the body of +.BR main() . +.SH "SEE ALSO" +The program is documented fully on +.RS +.I http://root.cern.ch/root/Cint.html +.RE +.sp 1 +.IR root(1), +.IR rootcint(1) +.SH "ORIGINAL AUTHORS" +.B Masaharu Goto +.SH "COPYRIGHT" +ROOT Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/g2root.1 b/man/g2root.1 new file mode 100644 index 00000000000..8a7fcd111ca --- /dev/null +++ b/man/g2root.1 @@ -0,0 +1,158 @@ +.\" +.\" $Id$ +.\" +.TH G2ROOT 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 +g2root \- convert GEANT geomtry files to ROOT files +.SH SYNOPSIS +.B g2rootd +.I [-f map_name] geant_name macro_name +.SH "DESCRIPTION" +You can convert a +.B GEANT +(see +.I http://wwwinfo.cern.ch/asd/geant/index.html +fore more on +.BR GEANT ) +geometry to +.B ROOT +geometry with the following steps +.TP +1 +Run the interactive version of +.B GEANT +and produce a Zebra RZ file +.IR detector.geom , +by typing the command: +.sp 1 +.RS +Geant > rz/file 21 \fIdetector.geom\fR on +.RE +.sp 1 +.TP +2 +Run the +.B g2root +program to convert the Zebra RZ file into a +.B ROOT +macro +.I detector.C: +.sp 1 +.RS +g2root \fIdetector.geom\fR \fIdetector.C\fR +.RE +.sp 1 +.TP +3 +Run the following +.B ROOT +session; +.sp 1 +.RS +.nf +root [1] .x detector.C +root [2] detector.Draw() +root [3] c1.x3d() // (this invokes the 3-d Root viewver) +root [4] TFile f("detector.root","NEW") //open a new root file +root [5] detector.Write() //Write the geometry structure +root [6] f.Write() +.fi +.RE +.sp 1 +Note that the +.I TNode +structure currently in +.B ROOT +was not designed as a replacement for a true geometry package. The +idea was mainly to draw simple geometries in event display +programs. We are currently investigating several alternatives for a +true & efficient geometry package supporting; +.TP +- +a disk data base with storage of multiple geometry versions +.TP +- +an interactive editor and viewer +.TP +- +with 3-d views +.TP +- +but also 2-d cut views +.TP +- +with interfaces to existing or future MC such as +.B GEANT3 +or +.B GEANT4 +.PP +A second program called +.B gh2root +(see +.IR http://root.cern.ch/root/gh2root.html ) +generates automatically C++ code corresponding to the +.B GEANT3 Zebra +structures +.IR JSET , +.IR JVERTX , +.IR JKINE , +.I JHITS +and +.I JDIGI. +.SH "SEE ALSO" +.RS +.IR root(1) , +.IR h2root(1) , +.RE +and +.RS +.I The ROOT Users Guide +.RE +avaliable from the main +.B ROOT +website: +.RS +.I http://root.cern.ch +.RE +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +\fBRene Brun\fR and \fBFons Rademakers\fR +.RE +.SH "COPYRIGHT" +ROOT Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/h2root.1 b/man/h2root.1 new file mode 100644 index 00000000000..1fe8d967070 --- /dev/null +++ b/man/h2root.1 @@ -0,0 +1,160 @@ +.\" +.\" $Id$ +.\" +.TH H2ROOT 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 +h2root \- convert PAW HBOOK files to ROOT files +.SH SYNOPSIS +.B h2root +.I file.hbook file.root [compress] [tolower] [lrecl] +.SH DESCRIPTION +.B h2root +you can use to convert your +.B HBOOK/PAW +histograms or ntuples files into +.B ROOT +files. To use this program, you type the shell script command: +.sp 1 +.RS +.B h2root +.I hbookfile +.I rootfile +.RE +.sp 1 +If you do not specify the second parameter, a file name is +automatically generated for you. If +.I hbookfile +is of the form +.IR file.hbook , +then the +.B ROOT +file will be +called +.IR file.root . +.PP +This program converts +.B HBOOK +histograms into +.B ROOT +objects of the class +.IR TH1F . +.B HBOOK +profile histograms are converted into +.B ROOT +profile histograms (see class +.IR TProfile ). +.B HBOOK +row-wise and column-wise ntuples are automatically converted to +.B ROOT +Trees(see +.IR TTree ). +Some +.B HBOOK +column-wise ntuples may not be fully converted in case one of the +columns is an array with fix dimensions (eg. `var[6]') or is a +multi-dimensional array. +.PP +.B HBOOK +integer identifiers are converted into +.B ROOT +named objects by prefixing the integer identifier with the letter `h' +if the identifier is a positive integer and by `h_' if it is a +negative integer identifier. +.PP +In case of row-wise or column-wise ntuples, each column is converted +to a branch of a Tree. +.B +Note that +.B h2root +is able to convert +.B HBOOK +files containing several levels of sub-directories. +.B +Once you have converted your file, you can look at it and draw +histograms or process ntuples using the +.B ROOT +interactive module. You can also use the +.B ROOT +browser (see +.IR TBrowser ) +to inspect this file. +.PP +The chapter +.I How to read a Tree +explains two ways to read a Tree. ROOT includes the function +.I TTree::MakeCode +to automatically generate the code for a skeleton analysis +function. With +.SH OPTIONS +.TP +.B compress += 1 by default (use 0 for no compression) +.TP +.B tolower += 1 by default (use 0 to keep case of column names) +.TP +.B lrecl += 0 by default (must be specified if >8092) +.SH "SEE ALSO" +.RS +.IR root(1) , +.I g2root(1) +.RE +and +.RS +.I The ROOT Users Guide +.RE +avaliable from the main +.B ROOT +website: +.RS +.I http://root.cern.ch +.RE +.PP +.B h2root +is documented fully on +.RS +.I http://root.cern.ch/root/HowtoConvert.html +.RE +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +\fBRene Brun\fR and \fBFons Rademakers\fR +.RE +.SH "COPYRIGHT" +ROOT Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/proofd.1 b/man/proofd.1 new file mode 100644 index 00000000000..ced47c8f1dd --- /dev/null +++ b/man/proofd.1 @@ -0,0 +1,264 @@ +.\" +.\" $Id$ +.\" +.TH PROOFD 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 +proofd \- PROOF (The Parallel ROOT Facility) + +.SH "DESCRIPTION" +Using \fBPROOF\fI (The \fIP\fRarallel \fIROO\fRT \fIF\fRacility) one +can analyze trees in parallel on a cluster of computers. The +\fBPROOF\fR system consists of the \fIproofd\fR(1) from-end program +which is started via \fIinetd\fR(8). +.PP +\fIproofd\fR takes care of user authentication and overlays itself +then with the desired version of the \fIproofserv\fR(1) +executable. +.PP The \fIproofserv\fR(1) is a basically the same as the \fBROOT\fR +interactive module \fIroot\fR(1), except that it reads its commands +from a socket instead of from the terminal. +.PP +Since it is a remote server it will not do graphics and therefore is +not linked with any graphics libraries (Motif, X11, etc.). + +.SH "SETTING UP PROOF" +Since you need to handle sensitive system files, you need to have root +(the user, not the program!) privileges. Also, it's recommended that +you read the appropiate \fIman\fR(1) pages first. These are +\fIinetd\fR(8) (the internet daemon), \fIsysklogd\fR(8) and +\fIsyslog\fR(3) (the system logger daemon), and \fIinit\fR(8) (the +SYSV process control initializer). +.PP +In other words: +.RS +.I Be very VERY carefull when installing \fBproofd\fR +.RE +There, I said it. And ofcourse, no warrenties what so ever. +.TP +1 +Make sure every node has \fBROOT\fR installed. We'll assume you +installed the \fBROOT\fR applications in <\fIbindir\fR> +(e.g. \fI/usr/bin\fR) and the \fBPROOF\fR configuration files in +files in \fI<proofdir>/etc\fB (e.g. \fI/usr/share/root/etc\fB). + +.TP +2 +The TCP port 1094 was allocated by \fBIANA\fR, ( +.UR Iwww.iana.org +\fIwww.iana.org\fR +.UE +), +to \fBrootd\fR, so add to \fI/etc/services\fR the lines: +.nf + + proofd 1093/tcp + rootd 1094/tcp + +.fi + +.TP +3 +On each node, add to \fI/etc/inetd.conf\fR the lines: +.nf + + proofd stream tcp nowait root <\fIbindir\fR>/proofd proofd <\fIproofdir\fR>/proof + rootd stream tcp nowait root <\fIbindir\fR>/rootd rootd -i + +.fi +You can substitute the <\fIproofdir\fR> with any directory that holds +your \fBPROOF\fR configuration, for example +\fI/etc/root/proof\fR. However, it should be shared among all nodes in +the cluster. + +.TP +4 +Restart \fBinetd\fR or force it to re-read the config file: +.nf + + kill -1 <\fIinetd pid\fR> + +.fi +If you use \fBSYSV\fR \fIinit\fR(8) scripts, you can probaly just do +.nf + + /etc/init.d/inetd restart + +.fi +or whatever is appropiate for your system. + +.TP +5 +On the master node, add to \fI/etc/syslog.conf\fR the line: +.nf + + local5,local6.debug <\fIproofdir\fR>/log/proof.log + +.fi +and all slave nodes: +.nf + + local5,local6.debug @<\fImaster hostname\fR> + +.fi +where <\fImaster hostname\fR> is domain name of the master node. +All PROOF syslog messages will be collected on the master node. +Just make one node in the cluster the master, all others are slaves. + +.TP +6 +On all nodes, change the below lines in \fI/etc/syslog.conf\fR, +.nf + + *.info;mail.none;news.none;authpriv.none /var/log/messages + +.fi +to: +.nf + + *.info;local5,local6,mail.none;news.none;authpriv.none /var/log/messages + +.fi + +.TP +7 +Create an empty <\fIproofdir\fR>/log/proof.log: +.nf + + echo "" > <\fIproofdir\fR>/log/proof.log + +.fi + +.TP +8 +Restart syslogd or force it to re-read the config file: +.nf + + kill -1 <\fIsyslogd pid\fR>. + +.fi +If you use \fBSYSV\fR \fIinit\fR(8) scripts, you can probaly just do +.nf + + /etc/init.d/sysklogd restart + +.fi +or whatever is appropiate for your system. + +.TP +9 +Edit <\fIproofdir\fR>\fI/etc/proof.conf\fR to reflect your cluster +configuration. See the example \fIproof.conf\fR file for more +information. +.PP +If you installed \fBROOT\fR using some precompiled package (for +example a \fBRedhat Linux\fR or a \fBDebian GNU/Linux\fR package), +steps 2 to 4 may already be done for you. +.PP +If you're running \fBLinux\fR, Steps 5 to 7 can be somewhat automated +using the script \fIproof-facility\fR in <\fIproofdir\fR> of your +distribution. This script uses \fIsyslog-facility\fR(1), from the +\fBLinux\fR \fIsyslog\fR(1) distribution, and may run on other +platforms as well - but no warrenties mind you! +.PP +Step 9 is completly up to the user. +.SH "EXAMPLE" +That's it. To test PROOF try the following: +.nf + + root [1] gROOT->Proof("<\fImaster hostname\fR>") + root [2] gPROOF->Print() + <shows information on the master and all active slave servers> + root [3] .q + +.fi +.SH "FILES" +.TP +<\fIproofdir\fB> +The location of your \fBPROOF\fI data. In binary packages, like for +\fBRedhat Linux\fII or \fBDebian GNU/Linux\fR, this will probably be +\fI/usr/share/root/proof\fB. If you got a binary \fItar\fR(1)-ball +from the \fBROOT\fR website, or a build it yourself without the static +paths option, then this directory could be ROOTSYS/proof. However, you +may set it to something else when starting your server. +.TP +<\fIproofdir\fB>/etc\fR +This directory holds all the configuration files for your cluster(s). +.TP +<\fIproofdir\fB>/etc/<cluster>.conf\fR +This is the cluster named <\fIcluster\fR> configuration file. See +<\fIproofdir\fB>/etc/<cluster>.conf.sample\fR for an example. +.TP +<\fIproofdir\fB>/etc/motd\fR +This is Message-Of-The-Day file. See +<\fIproofdir\fB>/etc/motd.sample\fR for an example. +.TP +<\fIproofdir\fB>/etc/noproof\fR +If this file is present, all \fBPROOF\fR services will be diabled. See +<\fIproofdir\fB>/etc/noproof.sample\fR for an example. +.TP +<\fIproofdir\fB>/etc/proof.conf\fR +This is the \fBPROOF\fR configuration file. See +<\fIproofdir\fB>/etc/proof.conf.sample\fR for an example. +.TP +\fB~/.rootnetrc.conf\fR +Configuration file for network access. Here you specify login names +and pass word, so it \fBMUST\fI be read/write-able only by the user. +See <\fIproofdir\fB>/etc/rootnetrc.conf.sample\fR for an example. +.TP +<\fIproofdir\fB>/log\fR +This directory holds the log files from the master and slaves. +<\fIproofdir\fB>/log/proof.log\fR +\fISyslog\fR(1) log file for \fBPROOF\fR. +.SH "SEE ALSO" +.IR proofserv (1) +, +.IR root (1) +, +.IR rootd (1) +.PP +More information can be found at the \fBROOT\fR website: +.UR http://root.cern.ch +\fIhttp://root.cern.ch\fB +.UE +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +\fBRene Brun\fR and \fBFons Rademakers\fR +.RE +.SH "COPYRIGHT" +\fBROOT\fR Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/proofserv.1 b/man/proofserv.1 new file mode 100644 index 00000000000..7f76aace190 --- /dev/null +++ b/man/proofserv.1 @@ -0,0 +1,75 @@ +.\" +.\" $Id$ +.\" +.TH PROOFSERV 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 +proofserv \- PROOF (The Parallel ROOT Facility) +.SH "DESCRIPTION" +Using \fBPROOF\fI (The \fIP\fRarallel \fIROO\fRT \fIF\fRacility) one +can analyze trees in parallel on a cluster of computers. The +\fBPROOF\fR system consists of the \fIproofd\fR(1) from-end program +which is started via \fIinetd\fR(8). +.PP +\fIproofd\fR takes care of user authentication and overlays itself +then with the desired version of the \fIproofserv\fR(1) +executable. +.PP The \fIproofserv\fR(1) is a basically the same as the \fBROOT\fR +interactive module \fIroot\fR(1), except that it reads its commands +from a socket instead of from the terminal. +.PP +Since it is a remote server it will not do graphics and therefore is +not linked with any graphics libraries (Motif, X11, etc.). + +.SH "SEE ALSO" +.IR proofd (1) +, +.IR root (1) +, +.IR rootd (1) +.PP +More information can be found at the \fBROOT\fR website: +.UR http://root.cern.ch +\fIhttp://root.cern.ch\fB +.UE +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +\fBRene Brun\fR and \fBFons Rademakers\fR +.RE +.SH "COPYRIGHT" +\fBROOT\fR Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/rmkdepend.1 b/man/rmkdepend.1 new file mode 100644 index 00000000000..b1cabbca850 --- /dev/null +++ b/man/rmkdepend.1 @@ -0,0 +1,390 @@ +.\" +.\" $Id$ +.\" +.\" Permission is hereby granted, free of charge, to any person obtaining a +.\" copy of this software and associated documentation files (the "Software"), +.\" to deal in the Software without restriction, including without limitation +.\" the rights to use, copy, modify, merge, publish, distribute, sublicense, +.\" and/or sell copies of the Software, and to permit persons to whom the +.\" Software furnished to do so, subject to the following conditions: +.\" +.\" The above copyright notice and this permission notice shall be included in +.\" all copies or substantial portions of the Software. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +.\" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +.\" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +.\" THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +.\" WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +.\" OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +.\" SOFTWARE. +.\" +.\" Except as contained in this notice, the name of the X Consortium shall not +.\" be used in advertising or otherwise to promote the sale, use or other +.\" dealing in this Software without prior written authorization from the +.\" X Consortium. +.TH RMKDEPEND 1 "Version 3" "ROOT" +.UC 4 +.SH NAME +rmkdepend \- create dependencies in makefiles (ROOT Version) +.SH SYNOPSIS +.B rmkdepend +[ +.BI \-D name\fB=\fPdef +] [ +.BI \-D name +] [ +.BI \-I includedir +] [ +.BI \-Y includedir +] [ +.B \-a +] [ +.BI \-f makefile +] [ +.BI \-o objsuffix +] [ +.BI \-p objprefix +] [ +.BI \-s string +] [ +.BI \-w width +] [ +.B \-v +] [ +.B \-m +] [ +\-\^\- +.I otheroptions +\-\^\- +] +.I sourcefile +\&.\|.\|. +.br +.SH DESCRIPTION +The +.B rmkdepend +program reads each +.I sourcefile +in sequence and parses it like a C-preprocessor, +processing all +.I #include, +.I #define, +.I #undef, +.I #ifdef, +.I #ifndef, +.I #endif, +.I #if, +.I #elif +and +.I #else +directives so that it can correctly tell which +.I #include, +directives would be used in a compilation. +Any +.I #include, +directives can reference files having other +.I #include +directives, and parsing will occur in these files as well. +.PP +Every file that a +.I sourcefile +includes, +directly or indirectly, +is what +.B rmkdepend +calls a \fIdependency.\fP +These dependencies are then written to a +.I makefile +in such a way that +.B make(1) +will know which object files must be recompiled when a dependency has changed. +.PP +By default, +.B rmkdepend +places its output in the file named +.I makefile +if it exists, otherwise +.I Makefile. +An alternate makefile may be specified with the +.B \-f +option. +It first searches the makefile for +the line +.sp + # DO NOT DELETE THIS LINE \-\^\- make depend depends on it. +.sp +or one provided with the +.B \-s +option, +as a delimiter for the dependency output. +If it finds it, it will delete everything +following this to the end of the makefile +and put the output after this line. +If it doesn't find it, the program +will append the string to the end of the makefile +and place the output following that. +For each +.I sourcefile +appearing on the command line, +.B rmkdepend +puts lines in the makefile of the form +.sp + sourcefile.o:\0dfile .\|.\|. +.sp +Where \fIsourcefile.o\fP is the name from the command +line with its suffix replaced with ``.o'', +and \fIdfile\fP is a dependency discovered in a +.I #include +directive while parsing +.I sourcefile +or one of the files it included. +.PP +.SH NOTE +The \fBrmkdepend\fR application is based on \fImakedepend\fR(1) from +the X Consortium, but modified slightly to fit the needs of the +\fBROOT\fR system. This \fIman\fR(1) page is more or less identical to +the manpage for \fImakedepend\fR(1), except for this notice, and the +\fBSEE ALSO\fR and \fBAUTHORS\fR sections. +.SH EXAMPLE +Normally, +.B rmkdepend +will be used in a makefile target so that typing ``make depend'' will +bring the dependencies up to date for the makefile. +For example, +.nf + SRCS\0=\0file1.c\0file2.c\0.\|.\|. + CFLAGS\0=\0\-O\0\-DHACK\0\-I\^.\^.\^/foobar\0\-xyz + depend: + rmkdepend\0\-\^\-\0$(CFLAGS)\0\-\^\-\0$(SRCS) +.fi +.SH OPTIONS +The program +will ignore any option that it does not understand so that you may use +the same arguments that you would for +.B cc(1). +.TP 5 +.B \-D\fIname\fP=\fIdef\fP \fRor\fP \-D\fIname\fP +Define. +This places a definition for +.I name +in +.B rmkdepend's +symbol table. +Without +.I =def\| +the symbol becomes defined as ``1''. +.TP 5 +.B \-I\fIincludedir\fP +Include directory. +This option tells +.B rmkdepend +to prepend +.I includedir +to its list of directories to search when it encounters +a +.I #include +directive. +By default, +.B rmkdepend +only searches the standard include directories (usually /usr/include +and possibly a compiler-dependent directory). +.TP 5 +.B \-Y\fIincludedir\fP +Replace all of the standard include directories with the single specified +include directory; you can omit the +.I includedir +to simply prevent searching the standard include directories. +.TP 5 +.B \-a +Append the dependencies to the end of the file instead of replacing them. +.TP 5 +.B \-f\fImakefile\fP +Filename. +This allows you to specify an alternate makefile in which +.B rmkdepend +can place its output. +Specifying ``\-'' as the file name (i.e., \fB\-f\-\fP) sends the +output to standard output instead of modifying an existing file. +.TP 5 +.B \-o\fIobjsuffix\fP +Object file suffix. +Some systems may have object files whose suffix is something other +than ``.o''. +This option allows you to specify another suffix, such as +``.b'' with +.I \-o.b +or ``:obj'' +with +.I \-o:obj +and so forth. +.TP 5 +.B \-p\fIobjprefix\fP +Object file prefix. +The prefix is prepended to the name of the object file. This is +usually used to designate a different directory for the object file. +The default is the empty string. +.TP 5 +.B \-s\fIstring\fP +Starting string delimiter. +This option permits you to specify +a different string for +.B rmkdepend +to look for in the makefile. +.TP 5 +.B \-w\fIwidth\fP +Line width. +Normally, +.B rmkdepend +will ensure that every output line that it writes will be no wider than +78 characters for the sake of readability. +This option enables you to change this width. +.TP 5 +.B \-v +Verbose operation. +This option causes +.B rmkdepend +to emit the list of files included by each input file on standard output. +.TP 5 +.B \-m +Warn about multiple inclusion. +This option causes +.B rmkdepend +to produce a warning if any input file includes another file more than +once. In previous versions of +.B rmkdepend +this was the default behavior; the default has been changed to better +match the behavior of the C compiler, which does not consider multiple +inclusion to be an error. This option is provided for backward +compatibility, and to aid in debugging problems related to multiple +inclusion. +.TP 5 +.B "\-\^\- \fIoptions\fP \-\^\-" +If +.B rmkdepend +encounters a double hyphen (\-\^\-) in the argument list, +then any unrecognized argument following it +will be silently ignored; a second double hyphen terminates this +special treatment. +In this way, +.B rmkdepend +can be made to safely ignore esoteric compiler arguments that might +normally be found in a CFLAGS +.B make +macro (see the +.B EXAMPLE +section above). +All options that +.B rmkdepend +recognizes and appear between the pair of double hyphens +are processed normally. +.SH ALGORITHM +The approach used in this program enables it to run an order of magnitude +faster than any other ``dependency generator'' I have ever seen. +Central to this performance are two assumptions: +that all files compiled by a single +makefile will be compiled with roughly the same +.I \-I +and +.I \-D +options; +and that most files in a single directory will include largely the +same files. +.PP +Given these assumptions, +.B rmkdepend +expects to be called once for each makefile, with +all source files that are maintained by the +makefile appearing on the command line. +It parses each source and include +file exactly once, maintaining an internal symbol table +for each. +Thus, the first file on the command line will take an amount of time +proportional to the amount of time that a normal C preprocessor takes. +But on subsequent files, if it encounters an include file +that it has already parsed, it does not parse it again. +.PP +For example, +imagine you are compiling two files, +.I file1.c +and +.I file2.c, +they each include the header file +.I header.h, +and the file +.I header.h +in turn includes the files +.I def1.h +and +.I def2.h. +When you run the command +.sp + rmkdepend\0file1.c\0file2.c +.sp +.B rmkdepend +will parse +.I file1.c +and consequently, +.I header.h +and then +.I def1.h +and +.I def2.h. +It then decides that the dependencies for this file are +.sp + file1.o:\0header.h\0def1.h\0def2.h +.sp +But when the program parses +.I file2.c +and discovers that it, too, includes +.I header.h, +it does not parse the file, +but simply adds +.I header.h, +.I def1.h +and +.I def2.h +to the list of dependencies for +.I file2.o. +.SH "SEE ALSO" +cc(1), make(1), root(1), root-cint(1) +.PP +See also the \fBROOT\fR webpages: +.UR http://root.cern.ch +\fIhttp://root.cern.ch\fR +.UE +.SH BUGS +.B rmkdepend +parses, but does not currently evaluate, the SVR4 +#predicate(token-list) preprocessor expression; +such expressions are simply assumed to be true. +This may cause the wrong +.I #include +directives to be evaluated. +.PP +Imagine you are parsing two files, +say +.I file1.c +and +.I file2.c, +each includes the file +.I def.h. +The list of files that +.I def.h +includes might truly be different when +.I def.h +is included by +.I file1.c +than when it is included by +.I file2.c. +But once +.B rmkdepend +arrives at a list of dependencies for a file, +it is cast in concrete. +.SH AUTHOR +Todd Brunhoff, Tektronix, Inc. and MIT Project Athena. Modified by +Christian Holm Christensen <cholm@nbi.dk> for the \fBROOT\fR +distribution. +.\" +.\" $Log$ +.\" diff --git a/man/root-config.1 b/man/root-config.1 new file mode 100644 index 00000000000..d3332f55ba0 --- /dev/null +++ b/man/root-config.1 @@ -0,0 +1,112 @@ +.\" +.\" $Id$ +.\" +.TH ROOT-CONFIG 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 +root-config \- ROOT utility for your Makefiles +.SH "DESCRIPTION" +Put lines like +.RS +.nf +CFLAGS = $(shell root-config --cflags) +LIBS = $(shell root-config --libs) +GLIBS = $(shell root-config --glibs) + +%Cint.cxx:%Inc.h %LinkDef.h + rootcint -f $@ -c $^ +.fi +.RE +in you Makefile. +.PP +You may also find the \fIautomake\fR(1), \fIautoconf\fR(1), and +\fIlibtool\fR(1) macro file \fI/usr/share/root/acinclude.m4\fR +useful. Copy the contents to your source package \fIacinclude.m4\fR +file, and in the directories you use \fBROOT\fR libraries, have in your +\fIMakefile.am\fR file: +.RS +.nf +lib_LTLIBRARIES = libFoo.la +libFoo_la_SOURCES = Foo.cxx Foo.h \\ + FooCint.cxx FooCint.h +libFoo_la_LDFLAGS = -version-info 1:0 + +BUILT_SOURCES = FooCint.cxx FooCint.h + +ROOTCONF = @ROOTCONF@ +ROOTCINT = $(shell $(ROOTCONF) --prefix)/bin/rootcint +ROOTLIBS = $(shell $(ROOTCONF) --libs) +ROOTCFLAGS = $(shell $(ROOTCONF) --cflags) + +INCLUDES = -I$(top_srcdir)/include $(ROOTCFLAGS) +CINTINCLUDES = -I$(top_srcdir)/include +LIBS = $(ROOTLIBS) +CLEANFILES = *Cint.cxx *Cint.h *~ core + +%Cint.cxx:%Inc.h %LinkDef.h + $(ROOTCINT) -f $@ -c $(CINTINCLUDES) $^ + +.fi +.RE +where you should substitute \fBFoo\fR with whatever, and list the +appropiate source files in the \fB_SOURCES\fR variable. In you +\ficonfigure.in\fR file, put: +.RS +.nf +AC_PROG_CC +AC_PROG_CXX +AC_ROOT +AM_DISABLE_STATIC +AM_PROG_LIBTOOL +.fi +.RE +along with any other macros you may need. + +.SH "SEE ALSO" +\fIroot\fR(1), \fIroot-cint\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" +\fBROOT\fR Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/root.1 b/man/root.1 new file mode 100644 index 00000000000..849b1c50c18 --- /dev/null +++ b/man/root.1 @@ -0,0 +1,116 @@ +.\" +.\" $Id$ +.\" +.TH ROOT 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 +root \- Interpretor of C++ for the ROOT framework +.SH SYNOPSIS +.B root +.I "[options] files ..." +.SH "DESCRIPTION" +\fBR\fROOTs \fBO\fRbject-\fBO\fRriented \fBT\fRechnologies. +.PP +.B root +is a interactive interpretor of C++ code. It uses the +.B ROOT +framework. For more information on +.BR ROOT , +please refer to +.US http://root.cern.ch +\fIhttp://root.cern.ch\fR. +.UE +An extensive \fIUsers Guide\fR is available from that site. +.SH OPTIONS +.B \-? +Show summary of options. +.TP +.B -b +Run in batch mode without graphics +.TP +.B -n +Do not execute logon and logoff macros as specified in +.B .rootrc +.TP +.B -q +Exit after processing command line macro files +.TP +.B -l +Do not show splash screen +.SH "SEE ALSO" +.SB +\fIrootcint\fR(1), \fIcint\fR(1), \fIroot-config\fR(1), +\fIrootd\fR(1), \fIh2root\fR(1), \fIg2root\fR(1) +.PP +.SE +For extensive documentation on the \fBROOT\fR system, see +.UR http://root.cern.ch +\fIhttp://root.cern.ch\fR +.UE +.PP +The classes of ROOT are all documented on +.UR http://root.cern.ch/root/html/ClassIndex.html +\fIhttp://root.cern.ch/root/html/ClassIndex.html\fR +.UE +.SH FILES +.TP +<\fIetcdir\fR>/\fBsystem.rootrc\fR +System-wide configuration file. <\fIetcdir\fR> either ROOTSYS, or +something like \fB/etc/root\fR +.TP +<\fIlibdir\fR>/*\fR +.B ROOT +C++ class libraries. <\fIlibdir\fR> is either ROOTSYS/lib or something +like \fB/usr/lib/root\fR. +.TP +<\fIincdir\fR>/*\fR +The header files for the +.B ROOT +C++ class libraries. <\fIincdir\fR> is either ROOTSYS/include or +something like \fB/usr/include/root\fR. +.TP +\fB~/.rootrc\fR, \fB./.rootrc\fR +User configuration file +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +.B Rene Brun +and +.B Fons Rademakers +.RE +.SH "COPYRIGHT" +ROOT Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/root.exe.1 b/man/root.exe.1 new file mode 100644 index 00000000000..fec0ef6c4a9 --- /dev/null +++ b/man/root.exe.1 @@ -0,0 +1,47 @@ +.TH ROOT.EXE 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 +root.exe \- ROOT interpretor backend +.SH "SEE" +.B root(1) +.SH "ORIGINAL AUTHORS" +The ROOT team: +.RS +.B Rene Brun +and +.B Fons Rademakers +.RE +.SH "COPYRIGHT" +ROOT Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). + diff --git a/man/rootcint.1 b/man/rootcint.1 new file mode 100644 index 00000000000..91c917ab7f5 --- /dev/null +++ b/man/rootcint.1 @@ -0,0 +1,202 @@ +.\" +.\" $Id$ +.\" +.TH ROOTCINT 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 +rootcint \- ROOT Dictionary generator +.SH SYNOPSIS +.nf +\fBrootcint \fIheader_file\fR[+][-][!] ... [LinkDef.h] > \fIdict_file\fR +\fBrootcint \fR[-f] \fIdict_file \fR[-c] \fIheader_file\fR[+][-][!] ... [LinkDef.h] +.fi +.SH "DESCRIPTION" +The +.B rootcint +program generates the +.IR Streamer() , +.I TBuffer &operator>>() +and +.I ShowMembers() +methods for +.B ROOT +classes, i.e. classes using the +.I ClassDef +and +.I ClassImp +macros. +In addition +.B rootcint +can also generate the +.B CINT +dictionaries needed in order to get access to ones classes via the +interpreter. +.PP +.B rootcint +can be used like: +.sp 1 +.RS +.nf +.B rootcint TAttAxis.h[-][!] ... [LinkDef.h] > AxisGen.C +.fi +.RE +or +.RS +.nf +.B rootcint [-f] [AxDict.C] [-c] TAttAxis.h[-][!] ... [LinkDef.h] +.fi +.RE +.sp 1 +The difference between the two is that in the first case only the +.I Streamer() +and +.I ShowMembers() +methods are generated while in the latter case a complete compileable +file is generated (including the include statements). The first method +also allows the output to be appended to an already existing file +(using +.B >> +). The optional minus behind the include file name tells +.B rootcint +to not generate the +.B Streamer() +method. A custom method must be provided by the user in that +case. When using option +.B -c +also the interpreter method interface stubs will be written to the +output file ( +.B AxDict.C +in the above case). +By default the output file will not be overwritten if it exists. Use +the +.B -f (force) +option to overwite the output file. +.PP +Before specifying the first header file one can also add include file +directories to be searched and preprocessor defines, like: +.sp 1 +.RS +.nf +.B -I$../include -DDebug +.fi +.RE +.sp 1 +The (optional) file +.B LinkDef.h +looks like: +.sp 1 +.RS +.nf +#ifdef __CINT__ + +#pragma link off all globals; +#pragma link off all classes; +#pragma link off all functions; + +#pragma link C++ class TAxis; +#pragma link C++ class TAttAxis-; +#pragma link C++ class TArrayC-!; + +#pragma link C++ function StrDup; +#pragma link C++ function operator+(const TString&,const TString&); + +#pragma link C++ global gROOT; +#pragma link C++ global gEnv; + +#pragma link C++ enum EMessageTypes; + +#endif +.fi +.RE +.sp 1 +This file tells +.B rootcint +for which classes the method interface stubs should be generated. A +trailing `-' in the class name tells +.B rootcint +to not generate the +.B Streamer() +method. This is necessary for those classes that need a customized +.B Streamer() +method. A trailing `!' in the class name tells +.B rootcint +to not generate the +.B operator>>(TBuffer &b, MyClass *&obj) +method. This is necessary to be able to write pointers to objects of +classes not inheriting from +.I TObject. +When this file is not specified a default version exporting the +classes with the names equal to the include files minus the +.B .h +is generated. +.PP +.B IMPORTANT: +.TP +1 +.B LinkDef.h +must be the last argument on the +.B rootcint command line. +.TP +2 +Note that the +.B LinkDef +file name MUST contain the string: +.B LinkDef.h +or +.BR linkdef.h , +i.e. +.B NA49_LinkDef.h +is fine just like, +.BR mylinkdef.h . +.El +.SH "SEE ALSO" +\fIroot\fR(1), \fIcint\fR(1) +.PP +.B rootcint +is documented fully on +.US http://root.cern.ch/root/RootCintMan.html +.I http://root.cern.ch/root/RootCintMan.html +.UE +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +.B Rene Brun +and +.B Fons Rademakers +.RE +.SH "COPYRIGHT" +ROOT Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" diff --git a/man/rootd.1 b/man/rootd.1 new file mode 100644 index 00000000000..c6b84a649c2 --- /dev/null +++ b/man/rootd.1 @@ -0,0 +1,232 @@ +.\" +.\" $Id$ +.\" +.TH ROOTD 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 +rootd \- The ROOT file server deamon +.SH SYNOPSIS +.B rootd +.I "[options]" +.SH "DESCRIPTION" +This manual page documents briefly the +.BR root , +program. +.PP +.B rootd +is a +.B ROOT +remote file server daemon. +.PP +This small server is started either by \fIinetd\fR(8) when a client +requests a connection to a \fIrootd\fR server or by hand (i.e. from +the command line). The \fIrootd\fR server works with the \fBROOT\fR +\fITNetFile\fR class. It allows remote access to \fBROOT\fR database +files in either read or write mode. By default \fITNetFile\fR assumes +port 1094 - which requires \fIrootd\fR to be started as root (the +user, not the program). +.SH "STARTING VIA INETD" +To run \fIrootd\fR via \fIinetd\fR(8) add the following line to +\fI/etc/services\fR: +.sp 1 +.RS +.nf +rootd 1094/tcp +.fi +.RE +.sp 1 +and to \fI/etc/inetd.conf\fR: +.sp 1 +.RS +.nf +rootd stream tcp nowait root <\fIbindir\fR>/rootd rootd -i +.fi +.RE +.sp 1 +where <\fIbindir\fR> is the directory you have installed \fIrootd\fR +in. +.PP +Force \fIinetd\fR(8) to reread its conf file with +.sp 1 +.RS +.nf +kill -HUP <pid inetd> +.fi +.RE +.sp 1 +If you use \fBSYSV\fR \fIinit\fR(8) scripts, you can probaly just do +.sp 1 +.RS +.nf +/etc/init.d/inetd restart +.fi +.RE +.sp 1 +or whatever is appropiate for your system. +.PP +If you installed \fBROOT\fR using some precompiled package (for +example a \fBRedhat Linux\fR or a \fBDebian GNU/Linux\fR package), +this may already be done for you. +.SH "STARTING BY HAND (NON-SUPERUSERS)" +You can also start +\fIrootd\fR by hand running directly under your private account (no +root system priviliges needed). For example to start \fIrootd\fR +listening on port 5151 just type: +.sp 1 +.RS +.nf +rootd -p 5151 +.fi +.RE +.sp 1 +\fBNotice\fR: no & is needed \fIrootd\fR will go in background by +itself. +.SH "ANONYMOUS LOGINS" +\fIrootd\fR can also be configured for anonymous usage (like anonymous +ftp). To setup \fIrootd\fR to accept anonymous logins do the following +(while being logged in as root): +.TP +.Bl -enum +.It +Add the following line to /etc/passwd: +.sp 1 +.RS +.nf +rootd:*:71:72:Anonymous rootd:/var/spool/rootd:/bin/false +.fi +.RE +.sp 1 +where you may modify the uid, gid (71, 72) and the home directory to +suite your system. +.Ic +Add the following line to /etc/group: +.sp 1 +.RS +.nf +rootd:*:72:rootd +.fi +.RE +.sp 1 +where the gid must match the gid in +.I /etc/passwd +.Ic + Create the directories: +.sp 1 +.RS +.nf +/var/spool/rootd +mkdir /var/spool/rootd/tmp +chmod 777 /var/spool/rootd/tmp +.fi +.RE +.sp 1 +Where +.I /var/spool/rootd +must match the +.B rootd +home directory as specified in the +.B rootd +.I /etc/passwd +entry. +.It +To make writeable directories for anonymous do, for example: +.sp 1 +.RS +.nf +mkdir /var/spool/rootd/pub +chown rootd:rootd /var/spool/rootd/pub +.fi +.RE +.sp 1 +.El +That's all. +.PP +If you installed \fBROOT\fR using some precompiled package (for +example a \fBRedhat Linux\fR or a \fBDebian GNU/Linux\fR package), +this may already be done for you. +.PP +Several remarks: +.TP +.B * +You can login to an anonymous server either with the names +.I anonymous +or +.I rootd. +.TP +.B * +The passwd should be of type +.I user@host.domain +Only the @ is enforced for the time being. +.TP +.B * +In anonymous mode the top of the file tree is set to the +.B rootd +home directory, therefore only files below the home directory can be +accessed. +.TP +.B * +Anonymous mode only works when the server is started via +.B inetd(8). +.SH OPTIONS +.B \-? +Show summary of options. +.TP +.B -i +says we are started by \fIinetd\fR(8) +.TP +\fB-p\fR <\fIport#\fR> +specifies port number to listen on +.TP +\fB-d\fR <\fIlevel\fR> +level of debug info written to syslogd +0 = no debug (default), 1 = minimum, 2 = medium, 3 = maximum. +.SH "SEE ALSO" +\fIroot\fR(1), \fIproofd\fR(1) +.PP +For more information on the \fBROOT\fR system, please refer to +.US http://root.cern.ch/ +.I http://root.cern.ch +.UE +.SH "ORIGINAL AUTHORS" +The ROOT team (see web page above): +.RS +.B Rene Brun +and +.B Fons Rademakers +.RE +.SH "COPYRIGHT" +ROOT Software Terms and Conditions +.PP +The authors hereby grant permission to use, copy, and distribute this +software and its documentation for any purpose, provided that existing +copyright notices are retained in all copies and that this notice is +included verbatim in any distributions. Additionally, the authors grant +permission to modify this software and its documentation for any purpose, +provided that such modifications are not distributed without the explicit +consent of the authors and that existing copyright notices are retained in +all copies. Users of the software are asked to feed back problems, benefits, +and/or suggestions about the software to the ROOT Development Team +(rootdev@root.cern.ch). Support for this software - fixing of bugs, +incorporation of new features - is done on a best effort basis. All bug +fixes and enhancements will be made available under the same terms and +conditions as the original software, +.PP +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT +OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, +EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.PP +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS +PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO +OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. +.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). +.\" +.\" $Log$ +.\" -- GitLab