1998-06-16 21:40:51 +00:00
|
|
|
#!perl
|
1998-06-11 03:58:24 +00:00
|
|
|
|
|
|
|
#
|
|
|
|
# The contents of this file are subject to the Netscape Public License
|
|
|
|
# Version 1.0 (the "NPL"); you may not use this file except in
|
|
|
|
# compliance with the NPL. You may obtain a copy of the NPL at
|
|
|
|
# http://www.mozilla.org/NPL/
|
|
|
|
#
|
|
|
|
# Software distributed under the NPL is distributed on an "AS IS" basis,
|
|
|
|
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
|
|
|
|
# for the specific language governing rights and limitations under the
|
|
|
|
# NPL.
|
|
|
|
#
|
|
|
|
# The Initial Developer of this code under the NPL is Netscape
|
|
|
|
# Communications Corporation. Portions created by Netscape are
|
|
|
|
# Copyright (C) 1998 Netscape Communications Corporation. All Rights
|
|
|
|
# Reserved.
|
|
|
|
#
|
|
|
|
|
|
|
|
#
|
|
|
|
# nglayout build script (debug)
|
|
|
|
#
|
1998-10-29 00:17:52 +00:00
|
|
|
use Mac::Processes;
|
1998-06-11 03:58:24 +00:00
|
|
|
use NGLayoutBuildList;
|
|
|
|
use Cwd;
|
|
|
|
use Moz;
|
|
|
|
|
|
|
|
# configuration variables
|
|
|
|
$DEBUG = 1;
|
1998-12-16 03:30:39 +00:00
|
|
|
$ALIAS_SYM_FILES = $DEBUG;
|
1999-04-15 22:50:18 +00:00
|
|
|
$CLOBBER_LIBS = 1; # turn on to clobber existing libs and .xSYM files before
|
1998-12-17 01:24:37 +00:00
|
|
|
# building each project
|
1999-05-11 21:26:07 +00:00
|
|
|
$CARBON = 0; # turn on to build with TARGET_CARBON
|
1999-05-10 23:01:39 +00:00
|
|
|
|
|
|
|
# The following two options will delete all files, but leave the directory structure intact.
|
|
|
|
$CLOBBER_DIST_ALL = 0; # turn on to clobber all aliases/files inside dist (headers/xsym/libs)
|
|
|
|
$CLOBBER_DIST_LIBS = 0; # turn on to clobber only aliases/files for libraries/sym files in dist
|
1999-05-11 19:09:33 +00:00
|
|
|
$USE_XPIDL = 0; # turn on to use the XPIDL plugin to generate files.
|
1999-05-10 23:01:39 +00:00
|
|
|
|
1999-05-11 19:24:04 +00:00
|
|
|
$CodeWarriorLib::CLOSE_PROJECTS_FIRST = 0;
|
|
|
|
#1 = close then make (for development), 0 = make then close (for tinderbox).
|
|
|
|
|
1999-01-12 20:53:24 +00:00
|
|
|
$MOZ_FULLCIRCLE = 0;
|
1998-12-16 03:30:39 +00:00
|
|
|
|
1999-04-15 22:50:18 +00:00
|
|
|
$pull{all} = 0;
|
1998-06-11 03:58:24 +00:00
|
|
|
$pull{lizard} = 0;
|
|
|
|
$pull{xpcom} = 0;
|
|
|
|
$pull{imglib} = 0;
|
|
|
|
$pull{netlib} = 0;
|
|
|
|
$pull{nglayout} = 0;
|
|
|
|
$pull{mac} = 0;
|
|
|
|
|
1999-04-15 22:42:18 +00:00
|
|
|
$build{all} = 1; # turn off to do individual builds, or to do "most"
|
|
|
|
$build{most} = 1; # turn off to do individual builds
|
1998-12-16 03:30:39 +00:00
|
|
|
$build{dist} = 0;
|
|
|
|
$build{stubs} = 0;
|
|
|
|
$build{common} = 0;
|
1999-05-04 19:21:00 +00:00
|
|
|
$build{intl} = 0;
|
1998-12-16 03:44:58 +00:00
|
|
|
$build{nglayout} = 0;
|
|
|
|
$build{resources} = 0;
|
|
|
|
$build{editor} = 0;
|
1999-04-15 22:49:51 +00:00
|
|
|
$build{mailnews} = 0;
|
1998-12-16 03:44:58 +00:00
|
|
|
$build{viewer} = 0;
|
|
|
|
$build{xpapp} = 0;
|
1998-12-16 03:30:39 +00:00
|
|
|
|
1998-12-16 03:47:14 +00:00
|
|
|
if ($pull{all})
|
|
|
|
{
|
|
|
|
foreach $k (keys(%pull))
|
|
|
|
{
|
|
|
|
$pull{$k} = 1;
|
|
|
|
}
|
|
|
|
}
|
1998-12-16 03:30:39 +00:00
|
|
|
if ($build{all})
|
|
|
|
{
|
|
|
|
foreach $k (keys(%build))
|
|
|
|
{
|
|
|
|
$build{$k} = 1;
|
|
|
|
}
|
1999-04-15 22:42:18 +00:00
|
|
|
}
|
|
|
|
if ($build{most})
|
|
|
|
{
|
|
|
|
### Just uncomment/comment to get the ones you want (if "most" is selected).
|
1999-05-11 19:24:04 +00:00
|
|
|
# $build{dist} = 1;
|
|
|
|
# $build{stubs} = 1;
|
|
|
|
# $build{common} = 1; # Requires intl
|
1999-05-04 19:21:00 +00:00
|
|
|
# $build{intl} = 1;
|
1999-05-11 19:24:04 +00:00
|
|
|
# $build{nglayout} = 1;
|
|
|
|
# $build{resources} = 1;
|
1999-04-15 22:42:18 +00:00
|
|
|
# $build{editor} = 1;
|
1999-05-11 19:24:04 +00:00
|
|
|
$build{mailnews} = 1;
|
1999-05-04 19:21:00 +00:00
|
|
|
# $build{viewer} = 1;
|
1999-05-11 19:24:04 +00:00
|
|
|
# $build{xpapp} = 1;
|
1998-12-16 03:30:39 +00:00
|
|
|
}
|
1998-06-11 03:58:24 +00:00
|
|
|
|
|
|
|
# do the work
|
1999-04-15 22:42:18 +00:00
|
|
|
# you should not have to edit anything below
|
1998-06-11 03:58:24 +00:00
|
|
|
|
|
|
|
chdir("::::");
|
1998-11-04 03:59:18 +00:00
|
|
|
$MOZ_SRC = cwd();
|
1998-08-01 02:37:32 +00:00
|
|
|
|
1999-01-13 00:46:28 +00:00
|
|
|
if ($MOZ_FULLCIRCLE)
|
1999-01-12 20:53:24 +00:00
|
|
|
{
|
|
|
|
#// Get the Build Number for the Master.ini(Full Circle) n'stuff
|
|
|
|
$buildnum = Moz::SetBuildNumber();
|
|
|
|
}
|
|
|
|
|
1999-05-10 23:01:39 +00:00
|
|
|
$USE_TIMESTAMPED_LOGS = 1;
|
|
|
|
if ($USE_TIMESTAMPED_LOGS)
|
|
|
|
{
|
|
|
|
#Use time-stamped names so that you don't clobber your previous log file!
|
|
|
|
my $now = localtime();
|
|
|
|
while ($now =~ s@:@.@) {} # replace all colons by periods
|
|
|
|
my $logdir = ":Build Logs:";
|
|
|
|
if (!stat($logdir))
|
|
|
|
{
|
|
|
|
print "Creating directory $logdir\n";
|
|
|
|
mkdir $logdir, 0777 || die "Couldn't create directory $logdir";
|
|
|
|
}
|
|
|
|
OpenErrorLog("$logdir$now");
|
|
|
|
}
|
|
|
|
else
|
1999-04-15 22:42:18 +00:00
|
|
|
{
|
1999-05-10 23:01:39 +00:00
|
|
|
OpenErrorLog("NGLayoutBuildLog"); # Release build
|
|
|
|
#OpenErrorLog("Mozilla.BuildLog"); # Tinderbox requires that name
|
1999-04-15 22:42:18 +00:00
|
|
|
}
|
|
|
|
|
1998-06-16 21:40:51 +00:00
|
|
|
Moz::StopForErrors();
|
|
|
|
#Moz::DontStopForErrors();
|
1998-08-01 02:37:32 +00:00
|
|
|
|
1998-11-04 03:59:18 +00:00
|
|
|
if ($pull{all}) {
|
|
|
|
Checkout();
|
|
|
|
}
|
|
|
|
|
1999-04-15 22:42:18 +00:00
|
|
|
if ($build{dist}) {
|
|
|
|
chdir($MOZ_SRC);
|
|
|
|
BuildDist();
|
|
|
|
}
|
1998-08-01 02:37:32 +00:00
|
|
|
|
1998-11-04 03:59:18 +00:00
|
|
|
chdir($MOZ_SRC);
|
1998-06-11 03:58:24 +00:00
|
|
|
BuildProjects();
|
1998-08-01 02:37:32 +00:00
|
|
|
|
1998-06-16 21:40:51 +00:00
|
|
|
print "Build layout complete\n";
|