]> git.uio.no Git - u/mrichter/AliRoot.git/blame - AliGeant4/config/make_source.pl
added tcsh UI
[u/mrichter/AliRoot.git] / AliGeant4 / config / make_source.pl
CommitLineData
0f507a31 1#!/usr/local/bin/perl
2# $Id$
3# by I. Hrivnacova, 22.6. 2000
4#
5# This script creates source directory structured
6# according subcategories with links to the flat
7# source structure.
8
9# main categories (packages)
10@DIRLIST = "TGeant4";
11@DIRLIST = (@DIRLIST,"AliGeant4");
599216c1 12@NAMELIST = "g4mc";
13@NAMELIST = (@NAMELIST,"alice");
0f507a31 14
15# subcategories
16@CATLIST = "global";
17@CATLIST = (@CATLIST,"geometry");
6609420b 18@CATLIST = (@CATLIST,"digits+hits");
0f507a31 19@CATLIST = (@CATLIST,"physics");
20@CATLIST = (@CATLIST,"event");
21@CATLIST = (@CATLIST,"run");
22@CATLIST = (@CATLIST,"visualization");
da0a9be5 23@CATLIST = (@CATLIST,"interfaces");
0f507a31 24
25# create source dir structure
26for( $i = 0 ; $i < $#DIRLIST+1 ; $i++ ) {
27 $DIR = @DIRLIST[$i];
0f507a31 28 $DIRPATH = $ENV{'AG4_INSTALL'} . "/../" . $DIR;
29 chdir $DIRPATH;
30 if (! grep(/source/, `ls`)) {
31 `mkdir source ` ;
32 foreach $CAT (@CATLIST) {
33 $CATDIRPATH = "source" . "/" . $CAT;
34 $INCLUDEPATH = $CATDIRPATH . "/" . "include";
35 $SRCPATH = $CATDIRPATH . "/" . "src";
36 `mkdir $CATDIRPATH` ;
37 `mkdir $INCLUDEPATH` ;
38 `mkdir $SRCPATH` ;
39 }
40 print $DIR . "/source directory has been created." . "\n";
41 }
42}
43
599216c1 44# link main history file
45$HISTORYPATH = $ENV{'AG4_INSTALL'} . "/doc/history";
46$HISTORYBASE = $HISTORYPATH . "/History";
47chdir $ENV{'AG4_INSTALL'};
48`ln -s $HISTORYBASE "History" `;
49
50# link source files and history files
51for ( $i = 0 ; $i < $#DIRLIST+1 ; $i++ ) {
0f507a31 52 $DIR = @DIRLIST[$i];
53 $NAME = @NAMELIST[$i];
54 $DIRPATH = $ENV{'AG4_INSTALL'} . "/../" . $DIR;
55 $RELDIRPATH = "../../..";
56
599216c1 57 # History categories files
58 $HISTORYBASE = $HISTORYPATH . "/" . $NAME . "_History";
59 chdir $DIRPATH . "/source";
60 `ln -s $HISTORYBASE "History" `;
61
0f507a31 62 foreach $CAT (@CATLIST) {
63 chdir $DIRPATH;
64
65 $CATSTRING = "\"Category: " . $CAT . "\"";
c429ee7b 66 @FILELIST_H = `find . -name \"*.h\" -exec grep -l $CATSTRING {} \\;`;
67 @FILELIST_ICC = `find . -name \"*.icc\" -exec grep -l $CATSTRING {} \\;`;
68 @FILELIST_CXX = `find . -name \"*.cxx\" -exec grep -l $CATSTRING {} \\;`;
0f507a31 69
70 print "Processing category: " . $CAT . "\n";
71 $CATDIRPATH = "source" . "/" . $CAT;
72 $INCLUDEPATH = $CATDIRPATH . "/" . "include";
73 $SRCPATH = $CATDIRPATH . "/" . "src";
74 $CVSBASE = $DIRPATH . "/CVS";
599216c1 75 $HISTORYBASE = $HISTORYPATH . "/" . $NAME . "_" . $CAT . "_History";
76
77 # History subcategories files
78 chdir $CATDIRPATH;
79 `ln -s $HISTORYBASE "History" `;
0f507a31 80
599216c1 81 # .h files
0f507a31 82 chdir $DIRPATH . "/" . $INCLUDEPATH;
83 `ln -s $CVSBASE "CVS" `;
599216c1 84
0f507a31 85 foreach $FILEPATH (@FILELIST_H) {
86 @TEMP = split('/',$FILEPATH);
87 $FILE = @TEMP[@TEMP - 1];
88 chop $FILE;
89 print " Linking file " . $FILE . "\n";
90 $FILEBASE = $RELDIRPATH . "/" . $FILE;
91 `ln -s $FILEBASE $FILE`;
92 }
93
599216c1 94 # .icc files
0f507a31 95 foreach $FILEPATH (@FILELIST_ICC) {
96 @TEMP = split('/',$FILEPATH);
97 $FILE = @TEMP[@TEMP - 1];
98 chop $FILE;
99 print " Linking file " . $FILE . "\n";
100 $FILEBASE = $RELDIRPATH . "/" . $FILE;
101 `ln -s $FILEBASE $FILE`;
102 }
103
599216c1 104 # .cxx files
0f507a31 105 chdir $DIRPATH . "/" . $SRCPATH;
106 `ln -s $CVSBASE "CVS" `;
107 foreach $FILEPATH (@FILELIST_CXX) {
108 @TEMP = split('/',$FILEPATH);
109 $FILE = @TEMP[@TEMP - 1];
110 chop $FILE;
c429ee7b 111 print " Linking file " . $FILE . "\n";
0f507a31 112 $FILEBASE = $RELDIRPATH . "/" . $FILE;
113 `ln -s $FILEBASE $FILE`;
114 }
115 }
599216c1 116}
117