From 301d648926b72c59b46826f076ee5e26f5b51d79 Mon Sep 17 00:00:00 2001 From: "mcafee%netscape.com" Date: Tue, 14 Aug 2001 06:36:41 +0000 Subject: [PATCH] Pass mozilla_dir to post-mozilla build. properly pull and build galeon source. --- tools/tinderbox/build-galeon.pl | 48 ++++++++++++++++------- tools/tinderbox/build-seamonkey-util.pl | 51 +++++++++---------------- tools/tinderbox/build-seamonkey.pl | 5 +-- tools/tinderbox/post-mozilla-sample.pl | 4 ++ 4 files changed, 58 insertions(+), 50 deletions(-) diff --git a/tools/tinderbox/build-galeon.pl b/tools/tinderbox/build-galeon.pl index 176075643725..4fb1f153d3b1 100644 --- a/tools/tinderbox/build-galeon.pl +++ b/tools/tinderbox/build-galeon.pl @@ -16,35 +16,57 @@ use strict; package PostMozilla; +sub checkout { + my ($mozilla_build_dir) = @_; + + # chdir to build directory + chdir "$mozilla_build_dir"; + + # checkout galeon source + $ENV{CVSROOT} = ":pserver:anonymous\@anoncvs.gnome.org:/cvs/gnome"; + + my $status = TinderUtils::run_shell_command("cvs checkout galeon"); + + # hack in the galeon prefs, if needed + + return $status; +} + sub main { + my ($mozilla_build_dir) = @_; + TinderUtils::print_log "Post-Mozilla build goes here.\n"; my $post_status = 'success'; # Success until we report a failure. my $status = 0; - my $galeon_alive_test = 1; - my $galeon_test8_test = 1; - my $galeon_dir = "/u/mcafee/gnome/galeon"; + my $galeon_alive_test = 0; + my $galeon_test8_test = 0; + my $galeon_dir = "$mozilla_build_dir/galeon"; - # Hack. This needs to auto-pull into the tbox build directory. - chdir "/u/mcafee/gnome"; - $status = TinderUtils::run_shell_command "checkout"; + # Checkout/update the galeon code. + $status = checkout($mozilla_build_dir); if ($status != 0) { - $post_status = 'busted'; + $post_status = 'busted'; } # Build galeon if we passed the checkout command. if ($post_status ne 'busted') { # Build galeon. - # - # Hack. There should be a configure step in here. - # We need to point at mozilla installation, etc. - # - chdir $galeon_dir; + + # Make sure we have a configure + unless (-e "configure") { + $status = TinderUtils::run_shell_command("./autogen.sh"); + } + + # Not sure how to only do this when we need to. + # Force a configure for now. + $status = TinderUtils::run_shell_command("./configure --sysconfdir=/etc --with-mozilla-libs=$mozilla_build_dir/mozilla/dist/bin --with-mozilla-includes=$mozilla_build_dir/mozilla/dist/include --with-nspr-includes=$mozilla_build_dir/mozilla/dist/include/nspr --with-mozilla-home=$mozilla_build_dir/mozilla/dist/bin"); + TinderUtils::DeleteBinary("$galeon_dir/src/galeon-bin"); - $status = TinderUtils::run_shell_command "gmake"; + $status = TinderUtils::run_shell_command("gmake"); if ($status != 0) { $post_status = 'busted'; diff --git a/tools/tinderbox/build-seamonkey-util.pl b/tools/tinderbox/build-seamonkey-util.pl index 1ec23b4083b9..c838400739a8 100644 --- a/tools/tinderbox/build-seamonkey-util.pl +++ b/tools/tinderbox/build-seamonkey-util.pl @@ -18,7 +18,7 @@ use POSIX qw(sys_wait_h strftime); use Cwd; use File::Basename; # for basename(); use Config; # for $Config{sig_name} and $Config{sig_num} -$::UtilsVersion = '$Revision: 1.55 $ '; +$::UtilsVersion = '$Revision: 1.56 $ '; package TinderUtils; @@ -28,13 +28,6 @@ package TinderUtils; require "post-mozilla.pl" if -e "post-mozilla.pl"; -# -# Driver script should call into this file like this: -# TinderUtils::Setup() -# tree_specific_overrides() -# TinderUtils::Build($args); -# - sub Setup { InitVars(); my $args = ParseArgs(); @@ -113,8 +106,6 @@ sub ParseArgs { } } - - return $args; } @@ -465,7 +456,7 @@ sub adjust_start_time { # to 1 minute intervals to make them nice and even. my $cycle = 1 * 60; # Updates every 1 minutes. my $begin = 0 * 60; # Starts 0 minutes after the hour. - my $lag = 0 * 60; # Takes 0 minute to update. + my $lag = 0 * 60; # Takes 0 minute to update. return int(($start_time - $begin - $lag) / $cycle) * $cycle + $begin; } @@ -616,7 +607,13 @@ sub BuildIt { # Make sure we have client.mk unless (-e "$TreeSpecific::name/client.mk") { - run_shell_command "$Settings::CVS $cvsco $TreeSpecific::name/client.mk"; + + # Set CVSROOT here. We should only need to checkout a new + # version of client.mk once; we might have more than one + # cvs tree so set CVSROOT here to avoid confusion. + $ENV{CVSROOT} = ":pserver:$ENV{USER}%netscape.com\@cvs.mozilla.org:/cvsroot"; + + run_shell_command("$Settings::CVS $cvsco $TreeSpecific::name/client.mk"); } # Create toplevel source directory. @@ -646,27 +643,13 @@ sub BuildIt { } else { $build_status = 'success'; } - - # Build the embedded app. - # Currently this is a post-build-seamonkey hack. - if (($Settings::EmbedTest or $Settings::BuildEmbed) and $build_status eq 'success') { - print_log "$binary_basename binary exists, building $embed_binary_basename now.\n"; - - my $tmpEmbedConfigDir = "$build_dir/$Settings::Topsrcdir/${Settings::ObjDir}/embedding/config"; - chdir $tmpEmbedConfigDir or die "chdir $Settings::Topsrcdir: $!\n"; - - my $make = "$Settings::Make"; - - my $statusEmbed = run_shell_command "$make"; - if ($statusEmbed != 0) { - $build_status = 'busted'; - } elsif (not BinaryExists($full_embed_binary_name)) { - print_log "Error: binary not found: gtkEmbed\n"; - $build_status = 'busted'; - } else { - $build_status = 'success'; - } - + + # TestGtkEmbed built by default, report if not found. + if (not BinaryExists($full_embed_binary_name)) { + print_log "Error: binary not found: $Settings::EmbedBinaryName\n"; + $build_status = 'busted'; + } else { + $build_status = 'success'; } } @@ -687,7 +670,7 @@ sub BuildIt { # my $external_build = "$Settings::BaseDir/post-mozilla.pl"; if (-e $external_build and $build_status eq 'success') { - $build_status = PostMozilla::main(); + $build_status = PostMozilla::main($build_dir); } close LOG; diff --git a/tools/tinderbox/build-seamonkey.pl b/tools/tinderbox/build-seamonkey.pl index f320730156a1..90fcfa8b33d1 100755 --- a/tools/tinderbox/build-seamonkey.pl +++ b/tools/tinderbox/build-seamonkey.pl @@ -12,10 +12,9 @@ use strict; # 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.96 $ '; +$::Version = '$Revision: 1.97 $ '; -{ - $ENV{CVSROOT} = ":pserver:$ENV{USER}%netscape.com\@cvs.mozilla.org:/cvsroot" if !defined($ENV{CVSROOT}); +{ TinderUtils::Setup(); tree_specific_overides(); TinderUtils::Build(); diff --git a/tools/tinderbox/post-mozilla-sample.pl b/tools/tinderbox/post-mozilla-sample.pl index c12124f5a42b..1671d24067c8 100755 --- a/tools/tinderbox/post-mozilla-sample.pl +++ b/tools/tinderbox/post-mozilla-sample.pl @@ -18,6 +18,10 @@ package PostMozilla; sub main { + # Get build directory from caller. + my ($mozilla_build_dir) = @_; + + TinderUtils::print_log "Post-Mozilla build goes here.\n"; #