]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STARLIGHT/starlight/standard/Makefile
STARLIGHT code and interface
[u/mrichter/AliRoot.git] / STARLIGHT / starlight / standard / Makefile
CommitLineData
da32329d
AM
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
8PROGRAM = 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
20INCLUDEDIRS = \
21 -I/home/gorbunov/pythia/pythia8120/include \
22 -I/usr/local/root/include \
23 -I../include
24
25
26LIBDIRS = \
27 -L/usr/local/root/lib \
28 -L/home/gorbunov/pythia/pythia8120/lib/archive
29
30
31LIBS = -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#
52OTHERDIR= ../src
53CXXSOURCES = $(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
54CXXOBJECTS = $(CXXSOURCES:.cpp=.o) # expands to list of object files
55CXXFLAGS = $(INCLUDEDIRS)
56CXX = g++
57
58LDFLAGS = $(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
65all: $(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
87clean:
88 $(RM) -f $(CXXOBJECTS) $(PROGRAM)
89