]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/Photos/Makefile
Merge branch 'TPCdev' of https://git.cern.ch/reps/AliRoot into TPCdev
[u/mrichter/AliRoot.git] / TEvtGen / Photos / Makefile
CommitLineData
f97ec6ec 1include make.inc
2
3LIB_VER = 1.0.0
4
5#Name of libraries to create
6LIB_PHOTOS_CXX_INT_SO = libPhotosCxxInterface.so
7LIB_PHOTOS_CXX_INT_A = libPhotosCxxInterface.a
8LIB_PHOTOS_FORTRAN_SO = libPhotosFortran.so
9LIB_PHOTOS_FORTRAN_A = libPhotosFortran.a
10
11PHOTOS_CXX_INT_OBJECTS = src/$(EVENT_RECORD_INTERFACE_DIR)/*.o \
12 src/$(C_PHOTOS_INTERFACE_DIR)/*.o \
13 src/$(UTILITIES_DIR)/*.o \
14 src/$(FORTRAN_PHOTOS_INTERFACE_DIR)/*.o
15
16PHOTOS_FORTRAN_OBJECTS = src/$(PHOTOS_FORTRAN_DIR)/*.o
17
18#directories containing source code
19EVENT_RECORD_INTERFACE_DIR = eventRecordInterfaces
20FORTRAN_PHOTOS_INTERFACE_DIR = photosFortranInterfaces
21C_PHOTOS_INTERFACE_DIR = photosCInterfaces
22PHOTOS_FORTRAN_DIR = photos-fortran
23UTILITIES_DIR = utilities
24
25##### Link objects to make library ######
26all: include_dir $(EVENT_RECORD_INTERFACE_DIR) $(FORTRAN_PHOTOS_INTERFACE_DIR) $(C_PHOTOS_INTERFACE_DIR) $(PHOTOS_FORTRAN_DIR) $(UTILITIES_DIR)
27 ar cr lib/$(LIB_PHOTOS_CXX_INT_A) $(PHOTOS_CXX_INT_OBJECTS)
28 $(LD) $(LDFLAGS) $(SOFLAGS) -o lib/$(LIB_PHOTOS_CXX_INT_SO).$(LIB_VER) $(PHOTOS_CXX_INT_OBJECTS)
29 ar cr lib/$(LIB_PHOTOS_FORTRAN_A) $(PHOTOS_FORTRAN_OBJECTS)
30 $(LD) $(LDFLAGS) $(SOFLAGS) -o lib/$(LIB_PHOTOS_FORTRAN_SO).$(LIB_VER) $(PHOTOS_FORTRAN_OBJECTS)
31 ln -sf $(LIB_PHOTOS_CXX_INT_SO).$(LIB_VER) lib/$(LIB_PHOTOS_CXX_INT_SO)
32 ln -sf $(LIB_PHOTOS_FORTRAN_SO).$(LIB_VER) lib/$(LIB_PHOTOS_FORTRAN_SO)
33 @echo "##################################################################"
34 @echo " Photos C++ Interface library created and moved to lib/ directory "
35 @echo "##################################################################"
36 @echo ""
37 @echo "##################################################################"
38 @echo " To run examples, cd examples/ directory and there './configure' "
39 @echo " and 'make' again. Examples require Pythia8, ROOT and MC-Tester "
40 @echo " installed. For details see examples/README. "
41 @echo "##################################################################"
42
43include_dir:
44 mkdir -p include/Photos
45
46####### Make object files ########
47$(FORTRAN_PHOTOS_INTERFACE_DIR):
48 make -C src/$(FORTRAN_PHOTOS_INTERFACE_DIR)
49 cp src/$(FORTRAN_PHOTOS_INTERFACE_DIR)/*.h include/Photos
50
51$(EVENT_RECORD_INTERFACE_DIR):
52 make -C src/$(EVENT_RECORD_INTERFACE_DIR)
53 cp src/$(EVENT_RECORD_INTERFACE_DIR)/*.h include/Photos
54
55$(C_PHOTOS_INTERFACE_DIR):
56 make -C src/$(C_PHOTOS_INTERFACE_DIR)
57 cp src/$(C_PHOTOS_INTERFACE_DIR)/*.h include/Photos
58
59$(UTILITIES_DIR):
60 make -C src/$(UTILITIES_DIR)
61 cp src/$(UTILITIES_DIR)/*.h include/Photos
62
63$(PHOTOS_FORTRAN_DIR):
64 make -C src/$(PHOTOS_FORTRAN_DIR)
65
66install:
67 mkdir -p $(PREFIX)/include/Photos
68 cp include/Photos/* $(PREFIX)/include/Photos/.
69 mkdir -p $(PREFIX)/lib
70 cp lib/* $(PREFIX)/lib/.
71
72clean:
73 make clean -C src/$(EVENT_RECORD_INTERFACE_DIR)
74 make clean -C src/$(FORTRAN_PHOTOS_INTERFACE_DIR)
75 make clean -C src/$(C_PHOTOS_INTERFACE_DIR)
76 make clean -C src/$(PHOTOS_FORTRAN_DIR)
77 make clean -C src/$(UTILITIES_DIR)
78 rm -f *~
79
80Clean: clean
81 rm -f lib/* include/Photos/*
82 rm -rf config.log config.status autom4te.cache
83 rm -rf configure.paths.sh configure.paths.csh
84 rm -f platform/make.inc make.inc
85 rm -f examples/make.inc
86
87make.inc:
88 @echo ""
89 @echo "Please execute ./configure first!"
90 @echo "(Consider using 'source platform/afs.paths.sh' [or .csh] first)"
91 @echo ""
92 @false
93
94always:
95 @true