[GTK] Allow to run any jhbuild command with jhbuild-wrapper script
[WebKit-https.git] / Tools / Scripts / update-webkit-libs-jhbuild
1 #!/usr/bin/perl -w
2 # Copyright (C) 2011 Igalia S.L.
3 # Copyright (C) 2012 Intel Corporation
4 #
5 # This library is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU Lesser General Public
7 # License as published by the Free Software Foundation; either
8 # version 2 of the License, or (at your option) any later version.
9 #
10 # This library is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 # Lesser General Public License for more details.
14 #
15 # You should have received a copy of the GNU Lesser General Public
16 # License along with this library; if not, write to the Free Software
17 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
18
19 use FindBin;
20 use lib $FindBin::Bin;
21 use webkitdirs;
22 use Getopt::Long;
23
24 my $platformEfl = 0;
25 my $platformGtk = 0;
26
27 my $getOptionsResult = GetOptions(
28     'efl' => \$platformEfl,
29     'gtk' => \$platformGtk
30     );
31
32 my $platform = "";
33 if (!$getOptionsResult) {
34     die "No platform specified for " . basename($0) .". Use --gtk or --efl.\n";
35 } else {
36     if ($platformEfl) {
37         $platform = "efl";
38     }
39     if ($platformGtk) {
40         $platform = "gtk";
41     }
42 }
43
44 sub runJhbuild
45 {
46     my $command = shift;
47     my @jhbuildArgs = ("./jhbuild-wrapper", "--".$platform, $command);
48     push(@jhbuildArgs, @ARGV[2..-1]);
49     system(@jhbuildArgs) == 0 or die "Running jhbuild-wrapper " . $command . " failed.\n";
50 }
51
52 delete $ENV{AR_FLAGS} if exists $ENV{AR_FLAGS};
53
54 chdir(relativeScriptsDir() . "/../jhbuild") or die $!;
55
56 my %prettyPlatform = ( "efl" => "EFL", "gtk" => "GTK+" );
57 print "Updating " . $prettyPlatform{$platform} . " port dependencies using jhbuild...\n";
58 runJhbuild("build");