]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/Photos/Makefile
TENDER becomes Tender, removing .so
[u/mrichter/AliRoot.git] / TEvtGen / Photos / Makefile
1 include make.inc
2
3 LIB_VER = 1.0.0
4
5 #Name of libraries to create
6 LIB_PHOTOS_CXX_INT_SO = libPhotosCxxInterface.so
7 LIB_PHOTOS_CXX_INT_A  = libPhotosCxxInterface.a
8 LIB_PHOTOS_FORTRAN_SO = libPhotosFortran.so
9 LIB_PHOTOS_FORTRAN_A  = libPhotosFortran.a
10
11 PHOTOS_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
16 PHOTOS_FORTRAN_OBJECTS = src/$(PHOTOS_FORTRAN_DIR)/*.o
17
18 #directories containing source code
19 EVENT_RECORD_INTERFACE_DIR   = eventRecordInterfaces
20 FORTRAN_PHOTOS_INTERFACE_DIR = photosFortranInterfaces
21 C_PHOTOS_INTERFACE_DIR       = photosCInterfaces
22 PHOTOS_FORTRAN_DIR           = photos-fortran
23 UTILITIES_DIR                = utilities
24
25 ##### Link objects to make library ######
26 all: 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
43 include_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
66 install:
67         mkdir -p $(PREFIX)/include/Photos
68         cp include/Photos/* $(PREFIX)/include/Photos/.
69         mkdir -p $(PREFIX)/lib
70         cp lib/* $(PREFIX)/lib/.
71
72 clean:
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
80 Clean: 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
87 make.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
94 always:
95         @true