]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - PWG4/macros/electrons/parmaker
correct the cluster rejection by energy range and number of cells cut
[u/mrichter/AliRoot.git] / PWG4 / macros / electrons / parmaker
... / ...
CommitLineData
1#!/bin/bash
2
3#
4# Author: K. Read
5#
6# This script makes PAR files without requiring write access to
7# $ALICE_ROOT. It is not necessary to first make AliRoot after doing
8# an svn checkout or update. Execute this script in your local area
9# with write access.
10#
11# Usage:
12# parmaker JETAN
13# parmaker JETAN remote
14# parmaker JETAN remote patch
15# parmaker all remote
16#
17# So far only available for these par files:
18# ANALYSIS ANALYSISalice AOD EMCALUtils ESD FASTJETAN JETAN
19# PHOSUtils PWG4PartCorrBase PWG4PartCorrDep STEERBase
20#
21
22case $2 in
23
24 "remote")
25
26 case $1 in
27 "all")
28 ./parmaker ANALYSIS remote
29 ./parmaker ANALYSISalice remote
30 ./parmaker AOD remote
31 ./parmaker EMCALUtils remote
32 ./parmaker ESD remote
33 ./parmaker FASTJETAN remote
34 ./parmaker JETAN remote
35 ./parmaker PHOSUtils remote
36 ./parmaker PWG4PartCorrBase remote
37 ./parmaker PWG4PartCorrDep remote
38 ./parmaker STEERBase remote
39 echo " "
40 echo "finished making complete set of par files"
41 exit
42 ;;
43 "ANALYSIS")
44 parmaker_input_basedir="ANALYSIS"
45 parmaker_input_dir_subdir="ANALYSIS"
46 parmaker_output_dir_subdir="ANALYSIS"
47 ;;
48 "ANALYSISalice")
49 parmaker_input_basedir="ANALYSIS"
50 parmaker_input_dir_subdir="ANALYSIS"
51 parmaker_output_dir_subdir="ANALYSISalice"
52 ;;
53 "AOD")
54 parmaker_input_basedir="STEER"
55 parmaker_input_dir_subdir="STEER"
56 parmaker_output_dir_subdir="AOD"
57 ;;
58 "EMCALUtils")
59 parmaker_input_basedir="EMCAL"
60 parmaker_input_dir_subdir="EMCAL"
61 parmaker_output_dir_subdir="EMCALUtils"
62 ;;
63 "ESD")
64 parmaker_input_basedir="STEER"
65 parmaker_input_dir_subdir="STEER"
66 parmaker_output_dir_subdir="ESD"
67 ;;
68 "PHOSUtils")
69 parmaker_input_basedir="PHOS"
70 parmaker_input_dir_subdir="PHOS"
71 parmaker_output_dir_subdir="PHOSUtils"
72 ;;
73 "PWG4PartCorrBase")
74 parmaker_input_basedir="PWG4"
75 parmaker_input_dir_subdir="PWG4/PartCorrBase"
76 parmaker_output_dir_subdir="PWG4PartCorrBase/PartCorrBase"
77 ;;
78 "PWG4PartCorrDep")
79 parmaker_input_basedir="PWG4"
80 parmaker_input_dir_subdir="PWG4/PartCorrDep"
81 parmaker_output_dir_subdir="PWG4PartCorrDep/PartCorrDep"
82 ;;
83 "STEERBase")
84 parmaker_input_basedir="STEER"
85 parmaker_input_dir_subdir="STEER"
86 parmaker_output_dir_subdir="STEERBase"
87 ;;
88 "JETAN")
89 parmaker_input_basedir="JETAN"
90 parmaker_input_dir_subdir="JETAN"
91 parmaker_output_dir_subdir="JETAN"
92 ;;
93 "FASTJETAN")
94 parmaker_input_basedir="JETAN"
95 parmaker_input_dir_subdir="JETAN"
96 parmaker_output_dir_subdir="FASTJETAN"
97 ;;
98 *)
99 echo "parmaker: I'm sorry Dave, I'm afraid I can't do that."
100 exit
101 esac
102
103
104 echo " "
105 echo "parmaker to use source $ALICE_ROOT/$parmaker_input_dir_subdir"
106 if [ -e "$ALICE_ROOT/$parmaker_input_dir_subdir" ]
107 then
108 echo "parmaker creating $1.par"
109 mkdir $1
110 if [ $parmaker_input_basedir != $parmaker_input_dir_subdir ]
111 then
112 mkdir $parmaker_output_dir_subdir
113 fi
114
115 list=`grep Ali ${ALICE_ROOT}/${parmaker_input_basedir}/lib${1}.pkg | sed -e '/EXPORT/d' -e '/EINCLUDE/d' -e 's:.cxx::g' -e 's:SRCS::' -e 's:=::' -e 's:+::' -e 's:\\\::'`
116 for i in $list; do
117# echo "adding:" $i
118 cp $ALICE_ROOT/$parmaker_input_basedir/$i.cxx $parmaker_output_dir_subdir
119 cp $ALICE_ROOT/$parmaker_input_basedir/$i.h $parmaker_output_dir_subdir
120 done
121
122 mkdir $1/PROOF-INF
123 cp -r $ALICE_ROOT/$parmaker_input_basedir/PROOF-INF.$1/* $1/PROOF-INF
124 cp $ALICE_ROOT/$parmaker_input_basedir/${1}LinkDef.h $1
125 cp $ALICE_ROOT/$parmaker_input_basedir/lib${1}.pkg $1
126 cp $ROOTSYS/test/Makefile.arch $1
127 cp $ALICE_ROOT/$parmaker_input_basedir/Makefile $1/Makefiletemp
128 sed -e 's:include \$(ROOTSYS)\/test\/Makefile.arch:include Makefile.arch:' -e "s:PACKAGE = .*:PACKAGE = ${1}:" $1/Makefiletemp > $1/Makefile
129
130 /bin/rm $1/Makefiletemp
131
132
133# Apply temporary patches.
134 if [ -z $3 ]
135 then
136 echo "no non-standard patches applied"
137 else
138 if [ $3 = "patch" ]
139 then
140 if [ -e "patches/$1" ]
141 then
142 echo "applying temporary $1 patch"
143 cp patches/$1/* $parmaker_output_dir_subdir
144 echo "completed temporary $1 patch"
145 else
146 echo "no patches found for $1"
147 fi
148 else
149 echo "argument $3 not processed"
150 fi
151 fi
152
153# Apply further FASTJETAN tweaks.
154 if [ $1 = "FASTJETAN" ]
155 then
156 echo "Making temporary adjustments to FASTJETAN.par."
157 cp -r $ALICE_ROOT/JETAN/fastjet FASTJETAN
158
159 sed -e "s:CXXFLAGS +:\nALICEINC += -I../JETAN -I./fastjet -I./fastjet/fastjet\n\n\nCXXFLAGS +:" FASTJETAN/Makefile > FASTJETAN/Makefile2
160 mv FASTJETAN/Makefile2 FASTJETAN/Makefile
161 fi
162
163 tar cfzh $1.par $1
164 /bin/rm -rf $1
165 fi
166 ;;
167
168 *)
169 echo "parmaker to use local source $1"
170 if [ -e "$1" ]
171 then
172 echo "parmaker creating $1.par"
173 tar cfzh $1.par $1
174 else
175 echo "local subdirectory $1 not found"
176 fi
177
178esac