tools/check_for_mercurial_updates.pl
author William Roberts <williamr@symbian.org>
Thu, 18 Nov 2010 15:45:28 +0000
changeset 138 6028e81d48fd
parent 118 177393f3fa3e
permissions -rw-r--r--
Update stem_rom.oby and rom_content.csv to remove multimedia Also removed spurious Phonebook2_reg.rsc file which causes PhoneBook to appear in the matrix menu
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
118
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     1
# Copyright (c) 2010 Symbian Foundation Ltd.
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     2
# All rights reserved.
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     3
# This component and the accompanying materials are made available
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     4
# under the terms of the License "Eclipse Public License v1.0"
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     5
# which accompanies this distribution, and is available
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     6
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     7
#
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     8
# Initial Contributors:
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
     9
# Symbian Foundation - initial contribution.
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    10
#
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    11
# Contributors:
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    12
#
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    13
# Description: 
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    14
# Check in Mercurial for updates to files branched to make stem versions
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    15
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    16
use strict;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    17
use Getopt::Long;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    18
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    19
my $old_rev = "PDK_3.0.2";
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    20
my $new_rev = "PDK_3.0.4";
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    21
my $mercurial_tree = "Q:";
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    22
GetOptions(
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    23
  "old=s" => \$old_rev,             # revision which is the current basis for modified files
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    24
  "new=s" => \$new_rev,             # new revision we need to catch up to
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    25
  "hgtree=s" => \$mercurial_tree,   # location of a tree of mercurial repositories
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    26
  );
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    27
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    28
sub do_system(@)
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    29
	{
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    30
	my @args = @_;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    31
	my $cmd = join(" ", @args);
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    32
	# print STDERR "* $cmd\n";
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    33
	my @lines = `$cmd`;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    34
	# print STDERR join("    ", "", @lines);
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    35
	return @lines;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    36
	}
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    37
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    38
my $line;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    39
while ($line = <>)
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    40
	{
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    41
	chomp $line;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    42
	my ($localdir,$repo,$path,$file) = split /\t/, $line;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    43
	next if (!defined $file);
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    44
	
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    45
	my @output = do_system ("hg", "--cwd", "$mercurial_tree$repo", "status", "--rev", $old_rev, "--rev", $new_rev, "$path/$file");
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    46
	next if (!@output);	# must be unchanged
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    47
	
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    48
	# what's the difference?
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    49
	my @diff_output = do_system ("hg", "--cwd", "$mercurial_tree$repo", "diff", "--rev", $old_rev, "--rev", $new_rev, "$path/$file");
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    50
	next if (!@diff_output); # none
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    51
	
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    52
	print "\n$localdir/$file might need updating\n", @diff_output;
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    53
	}
177393f3fa3e Add breakdeps\origins.txt to record the original location of modified files
William Roberts <williamr@symbian.org>
parents:
diff changeset
    54