зеркало из https://github.com/mozilla/gecko-dev.git
Various changes to improve release build automation for firefox. In particular, add ExtraFiles which allows firefox to pull browser/config/mozconfig, change the clobber target to distclean, and make the clobber and build targets be run separately. Bug 238698, r=leaf
This commit is contained in:
Родитель
0292a753a1
Коммит
9dfad4c34c
|
@ -0,0 +1,37 @@
|
|||
#!/usr/bin/perl -w
|
||||
|
||||
require 5.003;
|
||||
|
||||
# This script has split some functions off into a util
|
||||
# script so they can be re-used by other scripts.
|
||||
require "build-seamonkey-util.pl";
|
||||
|
||||
use strict;
|
||||
|
||||
# "use strict" complains if we do not define these.
|
||||
# They are not initialized here. The default values are after "__END__".
|
||||
$TreeSpecific::name = $TreeSpecific::checkout_target = $TreeSpecific::checkout_clobber_target = $::Version = undef;
|
||||
|
||||
$::Version = '$Revision: 1.1 $ ';
|
||||
|
||||
{
|
||||
TinderUtils::Setup();
|
||||
tree_specific_overides();
|
||||
TinderUtils::Build();
|
||||
}
|
||||
|
||||
# End of main
|
||||
#======================================================================
|
||||
|
||||
|
||||
|
||||
sub tree_specific_overides {
|
||||
|
||||
$TreeSpecific::name = 'mozilla';
|
||||
$TreeSpecific::build_target = 'build_all_depend';
|
||||
$TreeSpecific::checkout_target = 'checkout';
|
||||
$TreeSpecific::clobber_target = 'distclean';
|
||||
$TreeSpecific::extrafiles = 'mozilla/browser/config';
|
||||
}
|
||||
|
||||
|
|
@ -23,7 +23,7 @@ use Config; # for $Config{sig_name} and $Config{sig_num}
|
|||
use File::Find ();
|
||||
use File::Copy;
|
||||
|
||||
$::UtilsVersion = '$Revision: 1.253 $ ';
|
||||
$::UtilsVersion = '$Revision: 1.254 $ ';
|
||||
|
||||
package TinderUtils;
|
||||
|
||||
|
@ -895,7 +895,7 @@ sub BuildIt {
|
|||
# more than one cvs tree so set CVSROOT here to avoid confusion.
|
||||
$ENV{CVSROOT} = $Settings::moz_cvsroot;
|
||||
|
||||
run_shell_command("$Settings::CVS $cvsco $TreeSpecific::name/$Settings::moz_client_mk");
|
||||
run_shell_command("$Settings::CVS $cvsco $TreeSpecific::name/$Settings::moz_client_mk $TreeSpecific::extrafiles");
|
||||
}
|
||||
|
||||
# Create toplevel source directory.
|
||||
|
@ -964,17 +964,20 @@ sub BuildIt {
|
|||
$make = "$Settings::Make -f $Settings::moz_client_mk fast-update && $Settings::Make -f $Settings::moz_client_mk $Settings::MakeOverrides CONFIGURE_ENV_ARGS='$Settings::ConfigureEnvArgs' build";
|
||||
}
|
||||
|
||||
# Build up target string.
|
||||
my $targets;
|
||||
$targets = $TreeSpecific::clobber_target unless $Settings::BuildDepend;
|
||||
$targets .= " $TreeSpecific::build_target";
|
||||
|
||||
# Make sure we have an ObjDir if we need one.
|
||||
mkdir $Settings::ObjDir, 0777 if ($Settings::ObjDir && ! -e $Settings::ObjDir);
|
||||
|
||||
# Run the make command.
|
||||
# Run the clobber target.
|
||||
if (!$Settings::BuildDepend && $build_status ne 'busted') {
|
||||
$status = run_shell_command "$make $TreeSpecific::clobber_target";
|
||||
if ($status != 0) {
|
||||
$build_status = 'busted';
|
||||
}
|
||||
}
|
||||
|
||||
# Run the build target.
|
||||
if ($build_status ne 'busted') {
|
||||
$status = run_shell_command "$make $targets";
|
||||
$status = run_shell_command "$make $TreeSpecific::build_target";
|
||||
if ($status != 0) {
|
||||
$build_status = 'busted';
|
||||
} elsif (not BinaryExists($full_binary_name)) {
|
||||
|
|
|
@ -12,7 +12,7 @@ use strict;
|
|||
# They are not initialized here. The default values are after "__END__".
|
||||
$TreeSpecific::name = $TreeSpecific::build_target = $TreeSpecific::checkout_target = $TreeSpecific::clobber_target = $::Version = undef;
|
||||
|
||||
$::Version = '$Revision: 1.101 $ ';
|
||||
$::Version = '$Revision: 1.102 $ ';
|
||||
|
||||
{
|
||||
TinderUtils::Setup();
|
||||
|
@ -30,7 +30,7 @@ sub tree_specific_overides {
|
|||
$TreeSpecific::name = 'mozilla';
|
||||
$TreeSpecific::build_target = 'build_all_depend';
|
||||
$TreeSpecific::checkout_target = 'checkout';
|
||||
$TreeSpecific::clobber_target = 'clean';
|
||||
$TreeSpecific::clobber_target = 'distclean';
|
||||
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче