]>
Commit | Line | Data |
---|---|---|
abde65b8 | 1 | #!/bin/bash |
2 | ||
3 | # | |
4 | # Author: K. Read | |
5 | # | |
6 | # This script makes PAR files without requiring write access to $ALICE_ROOT. | |
7 | # Execute this script in your local area with write access. | |
8 | # Usage: | |
9 | # parmaker ANALYSIS | |
10 | # parmaker ANALYSIS remote | |
11 | # parmaker PWG4PartCorrDep | |
12 | # parmaker PWG4PartCorrDep remote | |
13 | # | |
14 | # So far only available for these par files: | |
15 | # ANALYSIS ANALYSISalice AOD ESD PWG4PartCorrBase PWG4PartCorrDep STEERBase | |
16 | # | |
17 | ||
18 | case $2 in | |
19 | ||
20 | "remote") | |
21 | ||
22 | case $1 in | |
23 | "ANALYSIS") | |
24 | parmaker_input_basedir="ANALYSIS" | |
25 | parmaker_input_dir_subdir="ANALYSIS" | |
26 | parmaker_output_dir_subdir="ANALYSIS" | |
27 | ;; | |
28 | "ANALYSISalice") | |
29 | parmaker_input_basedir="ANALYSIS" | |
30 | parmaker_input_dir_subdir="ANALYSIS" | |
31 | parmaker_output_dir_subdir="ANALYSISalice" | |
32 | ;; | |
33 | "AOD") | |
34 | parmaker_input_basedir="STEER" | |
35 | parmaker_input_dir_subdir="STEER" | |
36 | parmaker_output_dir_subdir="AOD" | |
37 | ;; | |
38 | "ESD") | |
39 | parmaker_input_basedir="STEER" | |
40 | parmaker_input_dir_subdir="STEER" | |
41 | parmaker_output_dir_subdir="ESD" | |
42 | ;; | |
43 | "PWG4PartCorrBase") | |
44 | parmaker_input_basedir="PWG4" | |
45 | parmaker_input_dir_subdir="PWG4/PartCorrBase" | |
46 | parmaker_output_dir_subdir="PWG4PartCorrBase/PartCorrBase" | |
47 | ;; | |
48 | "PWG4PartCorrDep") | |
49 | parmaker_input_basedir="PWG4" | |
50 | parmaker_input_dir_subdir="PWG4/PartCorrDep" | |
51 | parmaker_output_dir_subdir="PWG4PartCorrDep/PartCorrDep" | |
52 | ;; | |
53 | "STEERBase") | |
54 | parmaker_input_basedir="STEER" | |
55 | parmaker_input_dir_subdir="STEER" | |
56 | parmaker_output_dir_subdir="STEERBase" | |
57 | ;; | |
58 | *) | |
59 | echo "parmaker: I'm sorry Dave, I'm afraid I can't do that." | |
60 | exit | |
61 | esac | |
62 | ||
63 | ||
64 | echo "parmaker to use source $ALICE_ROOT/$parmaker_input_dir_subdir" | |
65 | if [ -e "$ALICE_ROOT/$parmaker_input_dir_subdir" ] | |
66 | then | |
67 | echo "parmaker creating $1.par" | |
68 | mkdir $1 | |
69 | if [ $parmaker_input_basedir != $parmaker_input_dir_subdir ] | |
70 | then | |
71 | mkdir $parmaker_output_dir_subdir | |
72 | fi | |
73 | ||
74 | list=`grep Ali ${ALICE_ROOT}/${parmaker_input_basedir}/lib${1}.pkg | sed -e 's:.cxx::g' -e 's:SRCS::' -e 's:=::' -e 's:+::' -e 's:\\\::'` | |
75 | for i in $list; do | |
76 | cp $ALICE_ROOT/$parmaker_input_basedir/$i.cxx $parmaker_output_dir_subdir | |
77 | cp $ALICE_ROOT/$parmaker_input_basedir/$i.h $parmaker_output_dir_subdir | |
78 | done | |
79 | ||
80 | mkdir $1/PROOF-INF | |
81 | cp -r $ALICE_ROOT/$parmaker_input_basedir/PROOF-INF.$1/* $1/PROOF-INF | |
82 | cp $ALICE_ROOT/$parmaker_input_basedir/${1}LinkDef.h $1 | |
83 | cp $ALICE_ROOT/$parmaker_input_basedir/lib${1}.pkg $1 | |
84 | cp $ROOTSYS/test/Makefile.arch $1 | |
85 | cp $ALICE_ROOT/$parmaker_input_basedir/Makefile $1/Makefiletemp | |
86 | sed -e 's:include \$(ROOTSYS)\/test\/Makefile.arch:include Makefile.arch:' -e "s:PACKAGE = .*:PACKAGE = ${1}:" $1/Makefiletemp > $1/Makefile | |
87 | ||
88 | /bin/rm $1/Makefiletemp | |
89 | tar cfzh $1.par $1 | |
90 | /bin/rm -rf $1 | |
91 | fi | |
92 | ;; | |
93 | ||
94 | *) | |
95 | echo "parmaker to use local source $1" | |
96 | if [ -e "$1" ] | |
97 | then | |
98 | echo "parmaker creating $1.par" | |
99 | tar cfzh $1.par $1 | |
100 | else | |
101 | echo "local subdirectory $1 not found" | |
102 | fi | |
103 | ||
104 | esac |