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