r=chase Make packager understand OSes other than Windows git-svn-id: svn://10.0.0.236/trunk@180827 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
c3d59f8a58
commit
7867d0df46
@ -59,7 +59,6 @@ $gDirCwd = cwd();
|
||||
push(@INC, $gDirScripts);
|
||||
require StageUtils;
|
||||
|
||||
$gOsPkg = undef;
|
||||
$inProductName = undef;
|
||||
$inStagingScript = undef;
|
||||
$inOs = undef;
|
||||
@ -89,15 +88,6 @@ if(!$inProductName || !$inOs)
|
||||
PrintUsage();
|
||||
}
|
||||
|
||||
if($inOs =~ /^win$/i)
|
||||
{
|
||||
$gOsPkg = "dos";
|
||||
}
|
||||
else
|
||||
{
|
||||
$gOsPkg = $inOs;
|
||||
}
|
||||
|
||||
if(!$inStagingScript)
|
||||
{
|
||||
# Look for the stage script in cwd first, then look at the
|
||||
@ -128,7 +118,7 @@ else
|
||||
}
|
||||
|
||||
# This is where the stage area is actually created.
|
||||
&StageProduct($inDirSrcDist, $inDirDestStage, $inProductName, $gOsPkg);
|
||||
&StageProduct($inDirSrcDist, $inDirDestStage, $inProductName, $inOs);
|
||||
chdir($gDirCwd);
|
||||
|
||||
exit(0);
|
||||
@ -195,6 +185,7 @@ sub ParseArgV
|
||||
++$counter;
|
||||
if(($myArgv[$counter] =~ /^win$/i) ||
|
||||
($myArgv[$counter] =~ /^mac$/i) ||
|
||||
($myArgv[$counter] =~ /^os2$/i) ||
|
||||
($myArgv[$counter] =~ /^unix$/i))
|
||||
{
|
||||
$inOs = $myArgv[$counter];
|
||||
@ -251,7 +242,7 @@ sub PrintUsage
|
||||
mozilla
|
||||
|
||||
* -os
|
||||
win, mac, unix
|
||||
win, mac, unix, os2
|
||||
|
||||
'*' indicates required parameters.
|
||||
\n";
|
||||
|
||||
@ -41,28 +41,42 @@ return(1);
|
||||
|
||||
sub StageProduct
|
||||
{
|
||||
my($aDirSrcDist, $aDirStage, $aProductName, $aOsPkg) = @_;
|
||||
my($aDirSrcDist, $aDirStage, $aProductName, $aInOs) = @_;
|
||||
my($dirDistPackagesProductName) = "$aDirSrcDist/packages/$aProductName";
|
||||
my($dirStageProductName) = "$aDirStage/$aProductName";
|
||||
my($dirMozRoot) = StageUtils::GetAbsPath("moz_root");
|
||||
my($dirMozPackager) = StageUtils::GetAbsPath("moz_packager");
|
||||
my($dirMozPackager) = StageUtils::GetAbsPath("moz_packager");
|
||||
|
||||
my($osPkg);
|
||||
my($osPkgFile);
|
||||
if($aInOs =~ /^win$/i)
|
||||
{
|
||||
$osPkg = "dos";
|
||||
$osPkgFile = "win";
|
||||
}
|
||||
else
|
||||
{
|
||||
$osPkg = $aInOs;
|
||||
$osPkgFile = $aInOs;
|
||||
}
|
||||
|
||||
|
||||
StageUtils::CleanupStage($aDirStage, $aProductName);
|
||||
StageUtils::CleanupDistPackages("$aDirSrcDist/packages", $aProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/xpcom-win.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/basebrowser-installer-win.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/gre-installer-win.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/xpcom-$osPkgFile.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/basebrowser-installer-$osPkgFile.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/gre-installer-$osPkgFile.pkg", $dirDistPackagesProductName);
|
||||
|
||||
mkdir("$aDirStage", 0775) if (!(-e "$aDirStage"));
|
||||
mkdir("$aDirStage/$aProductName", 0775) if (!(-e "$aDirStage/$aProductName"));
|
||||
mkdir("$aDirStage/$aProductName/gre", 0775) if (!(-e "$aDirStage/$aProductName/gre"));
|
||||
|
||||
# Call pkgcp.pl on each of the package list
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist\" -d \"$dirStageProductName\" -f \"$dirDistPackagesProductName/xpcom-win.pkg\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/gre\" -f \"$dirDistPackagesProductName/basebrowser-installer-win.pkg\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/gre\" -f \"$dirDistPackagesProductName/gre-installer-win.pkg\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist\" -d \"$dirStageProductName\" -f \"$dirDistPackagesProductName/xpcom-$osPkgFile.pkg\" -o $osPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/gre\" -f \"$dirDistPackagesProductName/basebrowser-installer-$osPkgFile.pkg\" -o $osPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/gre\" -f \"$dirDistPackagesProductName/gre-installer-$osPkgFile.pkg\" -o $osPkg -v");
|
||||
|
||||
# consolidate the .xpt files for each xpi into one file
|
||||
system("perl \"$dirMozPackager/xptlink.pl\" --source \"$aDirSrcDist\" --destination \"$dirStageProductName\" -o $aOsPkg --verbose");
|
||||
system("perl \"$dirMozPackager/xptlink.pl\" --source \"$aDirSrcDist\" --destination \"$dirStageProductName\" -o $osPkg --verbose");
|
||||
}
|
||||
|
||||
|
||||
@ -41,29 +41,42 @@ return(1);
|
||||
|
||||
sub StageProduct
|
||||
{
|
||||
my($aDirSrcDist, $aDirStage, $aProductName, $aOsPkg) = @_;
|
||||
my($aDirSrcDist, $aDirStage, $aProductName, $aInOs) = @_;
|
||||
my($dirDistPackagesProductName) = "$aDirSrcDist/packages/$aProductName";
|
||||
my($dirStageProductName) = "$aDirStage/$aProductName";
|
||||
my($dirMozRoot) = StageUtils::GetAbsPath("moz_root");
|
||||
my($dirMozPackager) = StageUtils::GetAbsPath("moz_packager");
|
||||
my($dirMozPackager) = StageUtils::GetAbsPath("moz_packager");
|
||||
|
||||
my($osPkg);
|
||||
my($osPkgFile);
|
||||
if($aInOs =~ /^win$/i)
|
||||
{
|
||||
$osPkg = "dos";
|
||||
$osPkgFile = "win";
|
||||
}
|
||||
else
|
||||
{
|
||||
$osPkg = $aInOs;
|
||||
$osPkgFile = $aInOs;
|
||||
}
|
||||
|
||||
StageUtils::CleanupStage($aDirStage, $aProductName);
|
||||
StageUtils::CleanupDistPackages("$aDirSrcDist/packages", $aProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/xpcom-win.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/pkgs-mfcembed-win", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/pkgs-mfcembed-win-supp", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/basebrowser-win-supp", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/gre-win-supp", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/xpcom-$osPkgFile.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/pkgs-mfcembed-$osPkgFile", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/pkgs-mfcembed-$osPkgFile-supp", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/basebrowser-$osPkgFile-supp", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozRoot/embedding/config/gre-$osPkgFile-supp", $dirDistPackagesProductName);
|
||||
|
||||
mkdir("$aDirStage", 0775) if (!(-e "$aDirStage"));
|
||||
mkdir("$aDirStage/$aProductName", 0775) if (!(-e "$aDirStage/$aProductName"));
|
||||
mkdir("$aDirStage/$aProductName/mfcembed", 0775) if (!(-e "$aDirStage/$aProductName/mfcembed"));
|
||||
|
||||
# Call pkgcp.pl on each of the package list
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist\" -d \"$dirStageProductName\" -f \"$dirDistPackagesProductName/xpcom-win.pkg\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/pkgs-mfcembed-win\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/gre_app_support\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/pkgs-mfcembed-win-supp\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/basebrowser-win-supp\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/gre-win-supp\" -o $aOsPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist\" -d \"$dirStageProductName\" -f \"$dirDistPackagesProductName/xpcom-$osPkgFile.pkg\" -o $osPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/pkgs-mfcembed-$osPkgFile\" -o $osPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/gre_app_support\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/pkgs-mfcembed-$osPkgFile-supp\" -o $osPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/basebrowser-$osPkgFile-supp\" -o $osPkg -v");
|
||||
system("perl \"$dirMozPackager/pkgcp.pl\" -s \"$aDirSrcDist/bin\" -d \"$dirStageProductName/mfcembed\" -f \"$dirDistPackagesProductName/gre-$osPkgFile-supp\" -o $osPkg -v");
|
||||
}
|
||||
|
||||
|
||||
@ -41,7 +41,7 @@ return(1);
|
||||
|
||||
sub StageProduct
|
||||
{
|
||||
my($aDirSrcDist, $aDirStage, $aProductName, $aOsPkg) = @_;
|
||||
my($aDirSrcDist, $aDirStage, $aProductName, $aInOs) = @_;
|
||||
my($dirDistPackagesProductName) = "$aDirSrcDist/packages/$aProductName";
|
||||
my($dirStageProductName) = "$aDirStage/$aProductName";
|
||||
my($dirMozRoot) = StageUtils::GetAbsPath("moz_root");
|
||||
@ -53,24 +53,42 @@ sub StageProduct
|
||||
print " aDirSrcDist : $aDirSrcDist\n";
|
||||
print " aDirStage : $aDirStage\n";
|
||||
print " aProductName : $aProductName\n";
|
||||
print " aOsPkg : $aOsPkg\n";
|
||||
print " aInOs : $aInOs\n";
|
||||
print " dirDistPackagesProductName : $dirDistPackagesProductName\n";
|
||||
print " dirStageProductName : $dirStageProductName\n";
|
||||
print " dirMozRoot : $dirMozRoot\n";
|
||||
print " dirMozPackager : $dirMozPackager\n";
|
||||
}
|
||||
|
||||
my($osPkg);
|
||||
my($osPkgFile);
|
||||
if($aInOs =~ /^win$/i)
|
||||
{
|
||||
$osPkg = "dos";
|
||||
$osPkgFile = "win";
|
||||
}
|
||||
elsif($aInOs =~ /^os2$/i)
|
||||
{
|
||||
$osPkg = "dos";
|
||||
$osPkgFile = "os2";
|
||||
}
|
||||
else
|
||||
{
|
||||
$osPkg = $aInOs;
|
||||
$osPkgFile = $aInOs;
|
||||
}
|
||||
|
||||
StageUtils::CleanupStage($aDirStage, $aProductName);
|
||||
StageUtils::CleanupDistPackages("$aDirSrcDist/packages", $aProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/xpcom-win.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/packages-win", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/xpcom-$osPkgFile.pkg", $dirDistPackagesProductName);
|
||||
StageUtils::CopyAdditionalPackage("$dirMozPackager/packages-$osPkgFile", $dirDistPackagesProductName);
|
||||
# StageUtils::GeneratePackagesFromSinglePackage($inOs, "$dirMozPackager/packages-win", $dirDistPackagesProductName);
|
||||
|
||||
# Call CreateStage() to create the aProductName stage dir using the packages
|
||||
# in dist/packages.
|
||||
StageUtils::CreateStage($aDirSrcDist, $dirStageProductName, $dirDistPackagesProductName, $aOsPkg);
|
||||
StageUtils::CreateStage($aDirSrcDist, $dirStageProductName, $dirDistPackagesProductName, $osPkg);
|
||||
|
||||
# consolidate the .xpt files for each xpi into one file
|
||||
system("perl \"$dirMozPackager/xptlink.pl\" --source \"$aDirSrcDist\" --destination \"$dirStageProductName\" -o $aOsPkg --verbose");
|
||||
system("perl \"$dirMozPackager/xptlink.pl\" --source \"$aDirSrcDist\" --destination \"$dirStageProductName\" -o $osPkg --verbose");
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user