]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STARLIGHT/starlight/standard/Makefile
STARLIGHT code and interface
[u/mrichter/AliRoot.git] / STARLIGHT / starlight / standard / Makefile
1
2 #
3 # The PROGRAM macro defines the name of the program or project.  It
4 # allows the program name to be changed by editing in only one
5 # location
6 #
7
8 PROGRAM = starlight
9
10 # The INCLUDEDIRS macro contains a list of include directories
11 # to pass to the compiler so it can find necessary header files.
12 #
13 # The LIBDIRS macro contains a list of library directories
14 # to pass to the linker so it can find necessary libraries.
15 #
16 # The LIBS macro contains a list of libraries that the the
17 # executable must be linked against.
18 #
19
20 INCLUDEDIRS = \
21         -I/home/gorbunov/pythia/pythia8120/include \
22         -I/usr/local/root/include \
23         -I../include    
24
25
26 LIBDIRS = \
27         -L/usr/local/root/lib \
28         -L/home/gorbunov/pythia/pythia8120/lib/archive
29
30
31 LIBS =  -lCore -lCint -lRIO  -lGpad  -lRint -lGui -lPhysics -lMathCore\
32         -lGraf -lGraf3d -lHist -lHtml -lMatrix  -lMinuit -lNet \
33         -lPostscript -lProof -lTree -lThread  -lVMC -lGeom \
34         -lEG -ldl -lpthread -lTreePlayer -lProofPlayer -lpythia8 -llhapdfdummy
35
36
37 #
38 # The CXXSOURCES macro contains a list of source files.
39 #
40 # The CXXOBJECTS macro converts the CXXSOURCES macro into a list
41 # of object files.
42 #
43 # The CXXFLAGS macro contains a list of options to be passed to
44 # the compiler.  Adding "-g" to this line will cause the compiler
45 # to add debugging information to the executable.
46 #
47 # The CXX macro defines the C++ compiler.
48 #
49 # The LDFLAGS macro contains all of the library and library
50 # directory information to be passed to the linker.
51 #
52 OTHERDIR= ../src
53 CXXSOURCES = $(OTHERDIR)/main.cpp $(OTHERDIR)/inputparameters.cpp $(OTHERDIR)/nucleus.cpp $(OTHERDIR)/bessel.cpp $(OTHERDIR)/beam.cpp $(OTHERDIR)/beambeamsystem.cpp $(OTHERDIR)/twophotonluminosity.cpp $(OTHERDIR)/upcevent.cpp $(OTHERDIR)/vector3.cpp $(OTHERDIR)/lorentzvector.cpp $(OTHERDIR)/eventfilewriter.cpp $(OTHERDIR)/filewriter.cpp $(OTHERDIR)/eventchannel.cpp $(OTHERDIR)/gammagammaleptonpair.cpp $(OTHERDIR)/readinluminosity.cpp   $(OTHERDIR)/randomgenerator.cpp   $(OTHERDIR)/gammagammasingle.cpp $(OTHERDIR)/gammaavm.cpp $(OTHERDIR)/gammaaluminosity.cpp $(OTHERDIR)/gammaacrosssection.cpp  $(OTHERDIR)/psifamily.cpp $(OTHERDIR)/starlightparticle.cpp $(OTHERDIR)/starlightparticlecodes.cpp $(OTHERDIR)/starlight.cpp $(OTHERDIR)/starlightstandalone.cpp # list of source files 
54 CXXOBJECTS = $(CXXSOURCES:.cpp=.o)  # expands to list of object files
55 CXXFLAGS =  $(INCLUDEDIRS)
56 CXX = g++
57
58 LDFLAGS = $(LIBDIRS) $(LIBS)
59
60 #
61 # Default target: the first target is the default target.
62 # Just type "make -f Makefile.Linux" to build it.
63 #
64
65 all: $(PROGRAM)
66
67 #
68 # Link target: automatically builds its object dependencies before
69 # executing its link command.
70 #
71
72 $(PROGRAM): $(CXXOBJECTS)
73         $(CXX) -o $@ $(CXXOBJECTS) $(LDFLAGS)
74
75 #
76 # Object targets: rules that define objects, their dependencies, and
77 # a list of commands for compilation.
78 #
79 #
80 #basic_sample.o: basic_sample.cpp basic_sample.h
81 #       $(CXX) $(CXXFLAGS) -c -o basic_sample.o basic_sample.cpp
82 #
83 #
84 # Clean target: "make -f Makefile.Linux clean" to remove unwanted objects and executables.
85 #
86
87 clean:
88         $(RM) -f $(CXXOBJECTS) $(PROGRAM) 
89