Reviewed by Antti.
[WebKit-https.git] / WebKitTools / BuildSlaveSupport / build-launcher-app
index 4c7d7cf3383c453c362c12b48a75656428dbe1f7..19b55c92431beac21d74b3ca19584b980713b02b 100755 (executable)
@@ -49,11 +49,24 @@ sub buildNightlyLauncher
     chdirWebKit();
 }
 
+sub currentSVNBranch
+{
+    my $sourceDir = sourceDir();
+    my $svnInfo = `LC_ALL=C svn info $sourceDir | grep URL:`;
+    (my $url) = ($svnInfo =~ m/URL: (.+)/g);
+    (my $branch) = ($url =~ m/\/svn\/webkit\/(trunk|branches\/[^\/]+)/);
+    die "Unable to determine current SVN branch in $sourceDir" unless (defined $branch);
+    $branch =~ s/^branches\///;
+    return $branch
+}
+
 sub copyNightlyLauncher
 {
     my $revision = currentSVNRevision();
+    my $branch = currentSVNBranch();
     my $infoPlist = "$nightlyLauncherStagingPath/Contents/Info.plist";
     my $versionFile = "$nightlyLauncherStagingPath/Contents/Resources/VERSION";
+    my $branchFile = "$nightlyLauncherStagingPath/Contents/Resources/BRANCH";
     my $data;
     open(IN, $infoPlist) or die "Couldn't open Info.plist in built application for reading";
     {
@@ -70,6 +83,10 @@ sub copyNightlyLauncher
     print OUT "$revision\n";
     close(OUT);
 
+    open(OUT, ">$branchFile") or die "Couldn't open BRANCH in built application for writing";
+    print OUT "$branch\n";
+    close(OUT);
+
     my @frameworks = ("JavaScriptCore", "JavaScriptGlue", "WebCore", "WebKit");
     for my $framework (@frameworks) {
         system("ditto", productDir() . "/$framework.framework", "$nightlyLauncherStagingPath/Contents/Resources/$framework.framework") == 0 or die "Failed copying $framework.framework into $nightlyLauncherStagingPath";