workaround cygwin l10n problems by remounting /cygdrive as-needed b=397842 r=cf

This commit is contained in:
rhelmer@mozilla.com 2007-10-01 09:55:46 -07:00
parent 17f514d3bb
commit ea86e17778
2 changed files with 32 additions and 0 deletions

View File

@ -19,6 +19,7 @@ sub Execute {
my $rc = $config->Get(var => 'rc');
my $buildPlatform = $config->Get(sysvar => 'buildPlatform');
my $logDir = $config->Get(sysvar => 'logDir');
my $osname = $config->SystemInfo(var => 'osname');
my $rcTag = $productTag . '_RC' . $rc;
my $lastBuilt = catfile($buildDir, $buildPlatform, 'last-built');
@ -30,6 +31,16 @@ sub Execute {
my $buildLog = catfile($logDir, 'build_' . $rcTag . '-build.log');
# For Cygwin only, ensure that the system mount point is binmode
# This forces CVS to use Unix-style linefeed EOL characters.
if ($osname eq 'win32') {
$this->Shell(
cmd => 'mount',
cmdArgs => ['-b', '-sc', '/cygdrive'],
dir => $buildDir,
);
}
$this->Shell(
cmd => './build-seamonkey.pl',
cmdArgs => ['--once', '--mozconfig', 'mozconfig', '--depend',

View File

@ -18,6 +18,7 @@ sub Execute {
my $rc = $config->Get(var => 'rc');
my $logDir = $config->Get(sysvar => 'logDir');
my $l10n_buildPlatform = $config->Get(sysvar => 'l10n_buildPlatform');
my $osname = $config->SystemInfo(var => 'osname');
my $rcTag = $productTag . '_RC' . $rc;
my $buildLog = catfile($logDir, 'repack_' . $rcTag . '-build-l10n.log');
@ -26,6 +27,16 @@ sub Execute {
or $this->Log(msg => "Cannot unlink last-built file $lastBuilt: $!");
$this->Log(msg => "Unlinked $lastBuilt");
# For Cygwin only, ensure that the system mount point is textmode
# This forces CVS to use DOS-style carriage-return EOL characters.
if ($osname eq 'win32') {
$this->Shell(
cmd => 'mount',
cmdArgs => ['-t', '-sc', '/cygdrive'],
dir => $buildDir,
);
}
$this->Shell(
cmd => './build-seamonkey.pl',
cmdArgs => ['--once', '--mozconfig', 'mozconfig', '--depend',
@ -35,6 +46,16 @@ sub Execute {
logFile => $buildLog,
timeout => 36000
);
# For Cygwin only, set the system mount point back to binmode
# This forces CVS to use Unix-style linefeed EOL characters.
if ($osname eq 'win32') {
$this->Shell(
cmd => 'mount',
cmdArgs => ['-b', '-sc', '/cygdrive'],
dir => $buildDir,
);
}
}
sub Verify {