-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmake-dist-drupal-module
More file actions
executable file
·51 lines (46 loc) · 1.39 KB
/
make-dist-drupal-module
File metadata and controls
executable file
·51 lines (46 loc) · 1.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#! /usr/bin/perl
chomp($version = `./version -c`);
make_dist_drupal_module($version, "drupal-module-6.x");
sub sys {
my $cmd = shift;
print("$cmd\n");
return system($cmd);
}
sub make_dist_drupal_module {
my $version = shift;
my $drupal_module = shift;
my $dist_name = "multigraph-$version-$drupal_module";
sys("/bin/rm -f $dist_name.zip");
sys("/bin/rm -rf $dist_name");
sys("mkdir $dist_name");
sys("(cd $drupal_module ; tar cf - multigraph) | (cd $dist_name ; tar xvf -)");
sys("find $dist_name -name '.svn' -print | xargs /bin/rm -rf");
sys("cp Multigraph.swf $dist_name/multigraph/Multigraph-$version.swf");
edit_file_byline("$dist_name/multigraph/multigraph.module", sub {
my $line = shift;
$line =~ s|Multigraph.swf|Multigraph-$version.swf|;
return $line;
}
);
edit_file_byline("$dist_name/multigraph/multigraph.info", sub {
my $line = shift;
$line =~ s|version\s*=\s*"([^\.\"]+\.[^\.\"]+)-([^\.\"]+\.[^\.\"]+)"|version = "\1-$version"|;
return $line;
}
);
sys("(cd $dist_name ; tar cvfz ../$dist_name.tar.gz multigraph)");
sys("/bin/rm -rf $dist_name");
}
sub edit_file_byline {
my $file = shift;
my $func = shift;
open(IN, "<$file");
open(OUT, ">$file.new");
while (my $line=<IN>) {
$line = &{$func}($line);
print OUT $line;
}
close(OUT);
close(IN);
rename("$file.new", "$file");
}