1 |
# Flight quick look - FQLOOK |
# Flight quick look - FQLOOK |
2 |
# SOFTWARE VERSION |
# SOFTWARE VERSION |
3 |
VER= v1r01 |
VER= v1r17 |
4 |
# An almost general purpouse Makefile for PAMELA repository |
# An almost general purpouse Makefile for PAMELA repository |
5 |
# Let's start with some usefull definition for colorize the echo |
# Let's start with some usefull definition for colorize the echo |
6 |
RED='\E[1;31;40m' |
RED='\E[1;31;40m' |
23 |
# Here the variables used to override the standard make flags |
# Here the variables used to override the standard make flags |
24 |
# C |
# C |
25 |
CC=gcc |
CC=gcc |
26 |
CFLAGS=-Wall |
CFLAGS=-Wall -O -fPIC -pthread |
27 |
# Enviroment: |
# Enviroment: |
28 |
GCCVER=`gcc --version | head -1` |
GCCVER=`gcc --version | head -1` |
29 |
UNAMEA=`uname -a` |
UNAMEA=`uname -a` |
33 |
F77FLAGS= -Wall -Wno-globals -fvxt -fno-automatic -fbounds-check -g -extend_source -static -fno-backslash |
F77FLAGS= -Wall -Wno-globals -fvxt -fno-automatic -fbounds-check -g -extend_source -static -fno-backslash |
34 |
# C++ |
# C++ |
35 |
CXX=g++ |
CXX=g++ |
36 |
CXXFLAGS=-Wall |
CXXFLAGS=-Wall -O -fPIC -pthread |
37 |
# ROOTCINT |
# ROOTCINT |
38 |
ROOTCINT=rootcint |
ROOTCINT=rootcint |
39 |
# Here the variables definig the local directories |
# Here the variables definig the local directories |
51 |
|
|
52 |
MACROSRCS=${DIRMACROS}/FCaloQLOOK.cxx \ |
MACROSRCS=${DIRMACROS}/FCaloQLOOK.cxx \ |
53 |
${DIRMACROS}/FCaloCHKCALIB.cxx |
${DIRMACROS}/FCaloCHKCALIB.cxx |
54 |
MACROSLIBS=$(MACROSRCS:${DIRMACROS}/%.cxx=${DIRLIB}/%_cxx_${VER}.so) |
MACROSLIBS=$(MACROSRCS:${DIRMACROS}/%.cxx=${DIRLIB}/lib%_${VER}.so) |
55 |
MACROCLIBS=FCaloQLOOK_cxx FCaloCHKCALIB_cxx |
MACROCLIBS=libFCaloQLOOK libFCaloCHKCALIB |
56 |
FULLMACROCLIBS=$(MACROCLIBS:%=${DIRLIB}/%_${VER}.so) |
FULLMACROCLIBS=$(MACROCLIBS:%=${DIRLIB}/%_${VER}.so) |
57 |
FULLLINKMACROCLIBS=$(MACROCLIBS:%=${DIRLIB}/%.so) |
FULLLINKMACROCLIBS=$(MACROCLIBS:%=${DIRLIB}/%.so) |
58 |
|
|
68 |
|
|
69 |
CALIBFILES= |
CALIBFILES= |
70 |
|
|
71 |
DOCFILES=${DIRDOC}/fcaloQLOOK.README.pdf ${DIRDOC}/FQL-calo-doc.pdf |
DOCFILES=${DIRDOC}/fcaloQLOOK.README.pdf ${DIRDOC}/FQL-calo-opmanual.pdf ${DIRDOC}/FQL-calo-opmanual.doc |
72 |
|
|
73 |
# Here the Variables used for info target |
# Here the Variables used for info target |
74 |
PACKAGE=Calorimeter flight quick look software |
PACKAGE=Calorimeter flight quick look software |
96 |
@echo 'void info(){ printf("\nQLOOK flight package version: ${VER}\n\nCompiled on '${TODAY}' with: '${GCCVER}'\n\nOn: '${UNAMEA}'\n\n"); }' >> ${DIRSRC}/temp.cc |
@echo 'void info(){ printf("\nQLOOK flight package version: ${VER}\n\nCompiled on '${TODAY}' with: '${GCCVER}'\n\nOn: '${UNAMEA}'\n\n"); }' >> ${DIRSRC}/temp.cc |
97 |
@${CXX} ${CXXFLAGS} -c -o $@ ${DIRSRC}/temp.cc -I${DIRINC} -I${PAM_INC} -I${PAM_YODA}/include/yoda/ `root-config --cflags` |
@${CXX} ${CXXFLAGS} -c -o $@ ${DIRSRC}/temp.cc -I${DIRINC} -I${PAM_INC} -I${PAM_YODA}/include/yoda/ `root-config --cflags` |
98 |
|
|
99 |
|
|
100 |
${MACROSLIBS}: ${MACROSRCS} |
${MACROSLIBS}: ${MACROSRCS} |
101 |
@(${EGREEN} "Compiling macro: "${WHITE} "$@"; ${RESET}) |
@(${EGREEN} "Compiling macro: "${WHITE} "$@"; ${RESET}) |
102 |
@${ROOTCINT} -f ${DIRMACROS}/`basename $(@F) _cxx_${VER}.so`link.cxx -c -I${ROOTINC} ${DIRINC}/`basename $(@F) _cxx_${VER}.so`fun.h ${DIRINC}/`basename $(@F) _cxx_${VER}.so`LinkDef.h |
@${ROOTCINT} -f ${DIRMACROS}/`basename $(@F) _${VER}.so | sed s/lib//`link.cxx -c -I${ROOTINC} ${DIRINC}/`basename $(@F) _${VER}.so | sed s/lib//`fun.h ${DIRINC}/`basename $(@F) _${VER}.so | sed s/lib//`LinkDef.h |
103 |
@${CXX} ${CXXFLAGS} -Xlinker -soname=$(@F) -shared -o $@ ${DIRMACROS}/`basename $(@F) _cxx_${VER}.so`.cxx ${DIRMACROS}/`basename $(@F) _cxx_${VER}.so`link.cxx -lg2c -I${PAM_INC} -I${DIRTOP}/${DIRINC} -I${DIRTOP} -I${PAM_YODA}/include/yoda/ ${PAM_YODA}/lib/libyoda.so `root-config --cflags --glibs` &>/dev/null |
@${CXX} ${CXXFLAGS} -Xlinker -soname=$(@F) -shared -o $@ ${DIRMACROS}/`basename $(@F) _${VER}.so | sed s/lib//`.cxx ${DIRMACROS}/`basename $(@F) _${VER}.so | sed s/lib//`link.cxx -lg2c -I${PAM_INC} -I${DIRTOP}/${DIRINC} -I${DIRTOP} -I${PAM_YODA}/include/yoda/ ${PAM_YODA}/lib/libyoda.so `root-config --cflags --glibs` 1>/dev/null |
104 |
|
|
105 |
${CXXEXELIBS}: ${CXXEXEOBJS} |
${CXXEXELIBS}: ${CXXEXEOBJS} |
106 |
@(${EGREEN} "Creating exec file: "${WHITE} "$@"; ${RESET}) |
@(${EGREEN} "Creating exec file: "${WHITE} "$@"; ${RESET}) |
107 |
@${CXX} ${CXXFLAGS} -o ${DIRBIN}/$@ ${DIRBIN}/$@.o -I${DIRINC} -I${PAM_INC} -I${PAM_YODA}/include/yoda/ ${PAM_YODA}/lib/libyoda.so ${DIRTOP}/${DIRLIB}/$@_cxx_${VER}.so `root-config --cflags --glibs`; |
@${CXX} ${CXXFLAGS} -o ${DIRBIN}/$@ ${DIRBIN}/$@.o -I${DIRINC} -I${PAM_INC} -I${PAM_YODA}/include/yoda/ ${PAM_YODA}/lib/libyoda.so ${DIRTOP}/${DIRLIB}/lib$@_${VER}.so `root-config --cflags --glibs`; |
108 |
@rm -f ${DIRSRC}/temp.cc |
@rm -f ${DIRSRC}/temp.cc |
109 |
|
|
110 |
# A small target to check environmental variables |
# A small target to check environmental variables |