forked from root-project/root
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches. git-svn-id: http://root.cern.ch/svn/root/trunk@3 27541ba8-7e3a-0410-8455-c3a389f83636
- Loading branch information
1 parent
16d6408
commit 8526000
Showing
1,762 changed files
with
584,222 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
ROOT Software Terms and Conditions | ||
|
||
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, | ||
|
||
|
||
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. | ||
|
||
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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,350 @@ | ||
# Top level Makefile for ROOT System | ||
# Copyright (c) 2000 Rene Brun and Fons Rademakers | ||
# | ||
# Author: Fons Rademakers, 29/2/2000 | ||
|
||
|
||
##### include path/location macros (result of ./configure) #### | ||
|
||
include config/Makefile.config | ||
|
||
##### include machine dependent macros #### | ||
|
||
include config/Makefile.$(ARCH) | ||
|
||
##### allow local macros #### | ||
|
||
-include MyConfig.mk | ||
|
||
##### Modules to build ##### | ||
|
||
MODULES = build cint utils base cont meta net zip clib new hist \ | ||
tree graf g3d gpad gui matrix minuit histpainter proof \ | ||
treeplayer treeviewer physics postscript rint html eg | ||
|
||
ifneq ($(ARCH),win32) | ||
MODULES += unix x11 x3d rootx rootd proofd | ||
SYSTEMO = $(UNIXO) | ||
SYSTEMDO = $(UNIXDO) | ||
else | ||
MODULES += winnt win32 | ||
SYSTEMO = $(WINNTO) | ||
SYSTEMDO = $(WINNTDO) | ||
endif | ||
ifneq ($(TTFINCDIR),) | ||
MODULES += x11ttf | ||
endif | ||
ifneq ($(OPENGLINCDIR),) | ||
MODULES += gl | ||
endif | ||
ifneq ($(RFIO),) | ||
MODULES += rfio | ||
endif | ||
ifneq ($(THREAD),) | ||
MODULES += thread | ||
endif | ||
ifneq ($(PYTHIA),) | ||
MODULES += pythia | ||
endif | ||
ifneq ($(PYTHIA6),) | ||
MODULES += pythia6 | ||
endif | ||
ifneq ($(VENUS),) | ||
MODULES += venus | ||
endif | ||
ifneq ($(STAR),) | ||
MODULES += star | ||
endif | ||
ifneq ($(MYSQLINCDIR),) | ||
MODULES += mysql | ||
endif | ||
ifneq ($(SRPDIR),) | ||
MODULES += srputils | ||
endif | ||
|
||
ifneq ($(findstring $(MAKECMDGOALS),distclean distsrc),) | ||
MODULES += unix winnt x11 x11ttf win32 gl rfio thread pythia pythia6 \ | ||
venus star mysql srputils x3d rootx rootd proofd | ||
MODULES := $(sort $(MODULES)) # removes duplicates | ||
endif | ||
|
||
MODULES += main # must be last, $(ALLLIBS) must be fully formed | ||
|
||
##### ROOT libraries ##### | ||
|
||
LPATH = lib | ||
|
||
ifneq ($(ARCH),win32) | ||
RPATH := -L$(LPATH) | ||
CINTLIBS := -lCint | ||
ROOTLIBS := -lNew -lCore -lCint -lHist -lGraf -lGraf3d -lTree | ||
RINTLIBS := -lRint | ||
PROOFLIBS := -lGpad -lProof -lTreePlayer | ||
CERNPATH := -L$(CERNLIBDIR) | ||
CERNLIBS := -lpacklib -lkernlib | ||
else | ||
CINTLIBS := $(LPATH)/libCint.lib | ||
ROOTLIBS := $(LPATH)/libNew.lib $(LPATH)/libCore.lib $(LPATH)/libCint.lib \ | ||
$(LPATH)/libHist.lib $(LPATH)/libGraf.lib \ | ||
$(LPATH)/libGraf3d.lib $(LPATH)/libTree.lib | ||
RINTLIBS := $(LPATH)/libRint.lib | ||
PROOFLIBS := $(LPATH)/libGpad.lib $(LPATH)/libProof.lib \ | ||
$(LPATH)/libTreePlayer.lib | ||
CERNLIBS := '$(shell cygpath -w -- $(CERNLIBDIR)/packlib.lib)' \ | ||
'$(shell cygpath -w -- $(CERNLIBDIR)/kernlib.lib)' | ||
endif | ||
|
||
##### f77 options ##### | ||
|
||
ifeq ($(F77LD),) | ||
F77LD := $(LD) | ||
endif | ||
ifeq ($(F77OPT),) | ||
F77OPT := $(OPT) | ||
endif | ||
ifeq ($(F77LDFLAGS),) | ||
F77LDFLAGS := $(LDFLAGS) | ||
endif | ||
|
||
##### utilities ##### | ||
|
||
MAKEDEP = build/unix/depend.sh | ||
MAKELIB = build/unix/makelib.sh | ||
MAKEDIST = build/unix/makedist.sh | ||
MAKEDISTSRC = build/unix/makedistsrc.sh | ||
MAKEVERSION = build/unix/makeversion.sh | ||
IMPORTCINT = build/unix/importcint.sh | ||
MAKECOMPDATA = build/unix/compiledata.sh | ||
MAKEMAKEINFO = build/unix/makeinfo.sh | ||
MAKEHTML = build/unix/makehtml.sh | ||
MAKELOGHTML = build/unix/makeloghtml.sh | ||
ifeq ($(ARCH),win32) | ||
MAKELIB = build/win/makelib.sh | ||
MAKEMAKEINFO = build/win/makeinfo.sh | ||
endif | ||
|
||
##### compiler directives ##### | ||
|
||
COMPILEDATA = include/compiledata.h | ||
MAKEINFO = cint/MAKEINFO | ||
|
||
##### libCore ##### | ||
|
||
COREO = $(BASEO) $(CONTO) $(METAO) $(NETO) $(SYSTEMO) $(ZIPO) $(CLIBO) | ||
COREDO = $(BASEDO) $(CONTDO) $(METADO) $(NETDO) $(SYSTEMDO) | ||
|
||
CORELIB := $(LPATH)/libCore.$(SOEXT) | ||
|
||
##### if shared libs need to resolve all symbols (e.g.: aix, win32) ##### | ||
|
||
ifneq ($(EXPLICITLINK),) | ||
MAINLIBS = $(CORELIB) $(CINTLIB) | ||
else | ||
MAINLIBS = | ||
endif | ||
|
||
##### all ##### | ||
|
||
ALLHDRS := | ||
ALLLIBS := $(CORELIB) | ||
ALLEXECS := | ||
INCLUDEFILES := | ||
|
||
##### RULES ##### | ||
|
||
.SUFFIXES: .cxx .d | ||
.PRECIOUS: include/%.h | ||
|
||
# special rules (need to be defined before generic ones) | ||
cint/src/%.o: cint/src/%.cxx | ||
$(CXX) $(OPT) $(CINTCXXFLAGS) -o $@ -c $< | ||
|
||
cint/src/%.o: cint/src/%.c | ||
$(CC) $(OPT) $(CINTCFLAGS) -o $@ -c $< | ||
|
||
%.o: %.cxx | ||
$(CXX) $(OPT) $(CXXFLAGS) -o $@ -c $< | ||
|
||
%.o: %.c | ||
$(CC) $(OPT) $(CFLAGS) -o $@ -c $< | ||
|
||
%.o: %.f | ||
ifeq ($(F77),f2c) | ||
f2c -a -A $< | ||
$(CC) $(F77OPT) $(CFLAGS) -o $@ -c $*.c | ||
else | ||
$(F77) $(F77OPT) $(F77FLAGS) -o $@ -c $< | ||
endif | ||
|
||
|
||
##### TARGETS ##### | ||
|
||
.PHONY: all fast config rootcint rootlibs rootexecs dist distsrc \ | ||
clean distclean compiledata importcint version html \ | ||
$(patsubst %,all-%,$(MODULES)) \ | ||
$(patsubst %,clean-%,$(MODULES)) \ | ||
$(patsubst %,distclean-%,$(MODULES)) | ||
|
||
all: rootexecs | ||
|
||
fast: rootexecs | ||
|
||
include $(patsubst %,%/Module.mk,$(MODULES)) | ||
|
||
-include MyRules.mk # allow local rules | ||
|
||
ifeq ($(findstring $(MAKECMDGOALS),clean distclean dist distsrc version \ | ||
importcint install showbuild),) | ||
ifeq ($(findstring $(MAKECMDGOALS),fast),) | ||
include $(INCLUDEFILES) | ||
endif | ||
include build/dummy.d # must be last include | ||
endif | ||
|
||
|
||
rootcint: all-cint $(ROOTCINTTMP) $(ROOTCINT) $(CINTTMP) $(CINT) | ||
|
||
rootlibs: rootcint compiledata $(ALLLIBS) | ||
|
||
rootexecs: rootlibs $(ALLEXECS) | ||
|
||
compiledata: $(COMPILEDATA) $(MAKEINFO) | ||
|
||
config config/Makefile.: | ||
@(if [ ! -f config/Makefile.config ] ; then \ | ||
echo ""; echo "Please, run ./configure first"; echo ""; \ | ||
exit 1; \ | ||
fi) | ||
|
||
$(COMPILEDATA): config/Makefile.$(ARCH) | ||
@$(MAKECOMPDATA) $(COMPILEDATA) $(CXX) "$(OPT)" "$(CXXFLAGS)" \ | ||
"$(SOFLAGS)" "$(LDFLAGS)" "$(SOEXT)" "$(SYSLIBS)" "$(LIBDIR)" \ | ||
"$(ROOTLIBS)" "$(RINTLIBS)" "$(INCDIR)" | ||
|
||
$(MAKEINFO): config/Makefile.$(ARCH) | ||
@$(MAKEMAKEINFO) $(MAKEINFO) $(CXX) $(CC) | ||
|
||
build/dummy.d: config $(RMKDEP) $(BINDEXP) $(ALLHDRS) | ||
@(if [ ! -f $@ ] ; then \ | ||
touch $@; \ | ||
fi) | ||
|
||
%.d: %.c $(RMKDEP) | ||
$(MAKEDEP) $@ "$(CFLAGS)" $*.c > $@ | ||
|
||
%.d: %.cxx $(RMKDEP) | ||
$(MAKEDEP) $@ "$(CXXFLAGS)" $*.cxx > $@ | ||
|
||
$(CORELIB): $(COREO) $(COREDO) $(CINTLIB) | ||
@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \ | ||
"$(SOFLAGS)" libCore.$(SOEXT) $@ "$(COREO) $(COREDO)" \ | ||
"$(CORELIBEXTRA)" | ||
|
||
dist: | ||
@$(MAKEDIST) | ||
|
||
distsrc: distclean | ||
@$(MAKEDISTSRC) | ||
|
||
clean:: | ||
@rm -f __compiledata __makeinfo *~ core | ||
|
||
ifeq ($(CXX),KCC) | ||
clean:: | ||
@find . -name "ti_files" -exec rm -rf {} \; | ||
endif | ||
|
||
distclean:: clean | ||
@mv -f include/config.h include/config.hh | ||
@rm -f include/*.h $(MAKEINFO) $(CORELIB) | ||
@mv -f include/config.hh include/config.h | ||
@rm -f build/dummy.d bin/*.dll lib/*.def lib/*.exp lib/*.lib .def | ||
@rm -f tutorials/*.root tutorials/*.ps tutorials/*.gif | ||
@rm -rf htmldoc | ||
@cd test && $(MAKE) distclean | ||
|
||
version: $(CINTTMP) | ||
@$(MAKEVERSION) | ||
|
||
importcint: distclean-cint | ||
@$(IMPORTCINT) | ||
|
||
html: $(ROOTEXE) | ||
@$(MAKELOGHTML) | ||
@$(MAKEHTML) | ||
|
||
install: | ||
@(inode1=`ls -id $(BINDIR) | awk '{ print $$1 }'`; \ | ||
inode2=`ls -id $$(pwd)/bin | awk '{ print $$1 }'`;\ | ||
if [ -d $(BINDIR) ] && [ $$inode1 -eq $$inode2 ]; then \ | ||
echo "Everything already installed..."; \ | ||
else \ | ||
echo "Installing binaries in $(BINDIR)"; \ | ||
$(INSTALL) $(ALLEXECS) $(CINT) $(ROOTCINT) $(BINDIR); \ | ||
echo "Installing libraries in $(LIBDIR)"; \ | ||
chmod u+w $(LIBDIR)/*; \ | ||
$(INSTALL) $(ALLLIBS) $(LIBDIR); \ | ||
$(INSTALL) $(CINTLIB) $(LIBDIR); \ | ||
echo "Installing headers in $(INCDIR)"; \ | ||
$(INSTALLDATA) include/*.h $(INCDIR); \ | ||
echo "Installing main/src/rmain.cxx in $(INCDIR)"; \ | ||
$(INSTALLDATA) main/src/rmain.cxx $(INCDIR); \ | ||
echo "Installing $(MAKEINFO) in $(CINTINCDIR)"; \ | ||
$(INSTALLDATA) $(MAKEINFO) $(CINTINCDIR); \ | ||
echo "Installing cint/include lib and stl in $(CINTINCDIR)"; \ | ||
$(INSTALLDATA) cint/include cint/lib cint/stl $(CINTINCDIR); \ | ||
fi) | ||
|
||
showbuild: | ||
@echo "ROOTSYS = $(ROOTSYS)" | ||
@echo "PLATFORM = $(PLATFORM)" | ||
@echo "OPT = $(OPT)" | ||
@echo "" | ||
@echo "CXX = $(CXX)" | ||
@echo "CC = $(CC)" | ||
@echo "F77 = $(F77)" | ||
@echo "CPP = $(CPP)" | ||
@echo "LD = $(LD)" | ||
@echo "F77LD = $(F77LD)" | ||
@echo "" | ||
@echo "CXXFLAGS = $(CXXFLAGS)" | ||
@echo "CINTCXXFLAGS = $(CINTCXXFLAGS)" | ||
@echo "EXTRA_CXXFLAGS = $(EXTRA_CXXFLAGS)" | ||
@echo "CFLAGS = $(CFLAGS)" | ||
@echo "CINTCFLAGS = $(CINTCFLAGS)" | ||
@echo "EXTRA_CFLAGS = $(EXTRA_CFLAGS)" | ||
@echo "F77FLAGS = $(F77FLAGS)" | ||
@echo "LDFLAGS = $(LDFLAGS)" | ||
@echo "EXTRA_LDFLAGS = $(EXTRA_LDFLAGS)" | ||
@echo "SOFLAGS = $(SOFLAGS)" | ||
@echo "SOEXT = $(SOEXT)" | ||
@echo "" | ||
@echo "SYSLIBS = $(SYSLIBS)" | ||
@echo "XLIBS = $(XLIBS)" | ||
@echo "CILIBS = $(CILIBS)" | ||
@echo "F77LIBS = $(F77LIBS)" | ||
@echi "" | ||
@echo "PYTHIA = $(PYTHIA)" | ||
@echo "PYTHIA6 = $(PYTHIA6)" | ||
@echo "VENUS = $(VENUS)" | ||
@echo "STAR = $(STAR)" | ||
@echo "XPMLIBDIR = $(XPMLIBDIR)" | ||
@echo "TTFLIBDIR = $(TTFLIBDIR)" | ||
@echo "TTFINCDIR = $(TTFINCDIR)" | ||
@echo "TTFFONTDIR = $(TTFFONTDIR)" | ||
@echo "OPENGLLIBDIR = $(OPENGLLIBDIR)" | ||
@echo "OPENGLINCDIR = $(OPENGLINCDIR)" | ||
@echo "CERNLIBDIR = $(CERNLIBDIR)" | ||
@echo "THREAD = $(THREAD)" | ||
@echo "RFIO = $(RFIO)" | ||
@echo "MYSQLINCDIR = $(MYSQLINCDIR)" | ||
@echo "SRPDIR = $(SRPDIR)" | ||
@echo "AFSDIR = $(AFSDIR)" | ||
@echo "" | ||
@echo "INSTALL = $(INSTALL)" | ||
@echo "MAKEDEP = $(MAKEDEP)" | ||
@echo "MAKELIB = $(MAKELIB)" | ||
@echo "MAKEDIST = $(MAKEDIST)" | ||
@echo" MAKEDISTSRC = $(MAKEDISTSRC)" | ||
@echo "MAKEVERSION = $(MAKEVERSION)" | ||
@echo "IMPORTCINT = $(IMPORTCINT)" |
Oops, something went wrong.