You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stdcxx.apache.org by fa...@apache.org on 2007/09/11 19:30:35 UTC
svn commit: r574643 - in /incubator/stdcxx/trunk/etc/config/windows:
build.wsf generate.wsf
Author: faridz
Date: Tue Sep 11 10:30:34 2007
New Revision: 574643
URL: http://svn.apache.org/viewvc?rev=574643&view=rev
Log:
2007-09-11 Farid Zaripov <Fa...@epam.com>
* build.wsf: Added optional parameter TOPDIR. Replace build
dir path and src dir path in logs to $(BUILDDIR) and $(TOPDIR)
respectively.
(removeLogClutter): New function to remove clutters from build log.
* generate.wsf (generateBuildBatch): Pass /TOPDIR parameter to
build.wsf script.
Modified:
incubator/stdcxx/trunk/etc/config/windows/build.wsf
incubator/stdcxx/trunk/etc/config/windows/generate.wsf
Modified: incubator/stdcxx/trunk/etc/config/windows/build.wsf
URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/etc/config/windows/build.wsf?rev=574643&r1=574642&r2=574643&view=diff
==============================================================================
--- incubator/stdcxx/trunk/etc/config/windows/build.wsf (original)
+++ incubator/stdcxx/trunk/etc/config/windows/build.wsf Tue Sep 11 10:30:34 2007
@@ -28,6 +28,8 @@
name="CONFIG" required="true" type="string"/>
<named helpstring="Output directory for modules"
name="BUILDDIR" required="true" type="string"/>
+ <named helpstring="Top directory of stdcxx sources tree"
+ name="TOPDIR" required="false" type="string"/>
<named helpstring="Name of the solution configuration"
name="BUILDTYPE" required="true" type="string"/>
<named helpstring="Build projects only, do not execute tests"
@@ -35,10 +37,12 @@
<example>cscript build.wsf /CONFIG:msvc-7.1 /BUILDTYPE:11d
</example>
<usage>
-Usage: cscript build.wsf /CONFIG:@CONFIG /BUILDDIR:@BUILDDIR /BUILDTYPE:@BUILDTYPE [/BUILDONLY:@BUILDONLY]
+Usage: cscript build.wsf /CONFIG:@CONFIG /BUILDDIR:@BUILDDIR
+/TOPDIR:@TOPDIR /BUILDTYPE:@BUILDTYPE [/BUILDONLY:@BUILDONLY]
where
@CONFIG is the compiler configuration (msvc-7.1, icc-9.0, etc).
@BUILDDIR is the root of the build directory.
+@TOPDIR is the root of the stdcxx source tree.
@BUILDTYPE is the build type (11d, 11s, etc).
@BUILDONLY is one of { yes, no } - execute or not the tests.
</usage>
@@ -61,11 +65,15 @@
// constants
var currentCfg = "";
var slnDir = "";
+var srcDir = "";
var buildType = "";
var longConfName = "";
var buildOnly = false;
var outputPane = null;
+var winconfigDir = "\\etc\\config\\windows";
var postBuildInvoked;
+var rxBuildDir = null;
+var rxTopDir = null;
var description = new build; // run
@@ -107,6 +115,33 @@
return log;
}
+function removeLogClutter(log)
+{
+ if ("" != slnDir)
+ {
+ if (null == rxBuildDir)
+ {
+ var buildDir = slnDir.replace(/\\/g, "\\\\");
+ rxBuildDir = new RegExp("(" + buildDir + ")", "ig");
+ }
+ log = log.replace(rxBuildDir, "$(BUILDDIR)");
+ }
+
+ if ("" != srcDir)
+ {
+ if (null == rxTopDir)
+ {
+ var topDir = srcDir.replace(/\\/g, "\\\\");
+ rxTopDir = new RegExp("(" + topDir + ")", "ig");
+ }
+ log = log.replace(rxTopDir, "$(TOPDIR)");
+ }
+
+ log = log.replace(/^Build log was saved at.*$/gm, "");
+
+ return log;
+}
+
function event_ProjectBuildFinished(Cfg, Warnings, Errors, Canceled)
{
postBuildInvoked = true;
@@ -159,7 +194,7 @@
log = log2;
}
- WScript.Echo(log);
+ WScript.Echo(removeLogClutter(log));
}
function BuildProject(solutionBuild, projectName)
@@ -214,7 +249,7 @@
dte.SuppressUI = true;
- var solutionName = slnDir + "\\" + currentCfg + "\\" + currentCfg + ".sln";
+ var solutionName = slnDir + "\\" + currentCfg + ".sln";
WScript.Echo("Loading solution...");
var solution = dte.Solution;
@@ -417,7 +452,22 @@
currentCfg = WScript.Arguments.Named("CONFIG");
slnDir = WScript.Arguments.Named("BUILDDIR");
- slnDir = fso.GetAbsolutePathName (slnDir);
+ slnDir = fso.GetAbsolutePathName (slnDir) + "\\" + currentCfg;
+
+ if (WScript.Arguments.Named.Exists("TOPDIR"))
+ {
+ srcDir = WScript.Arguments.Named("TOPDIR");
+ }
+ else
+ {
+ // try to deduce it
+ var myDir = WScript.ScriptFullName;
+ var dirIndex = myDir.indexOf(winconfigDir);
+ if (0 <= dirIndex)
+ srcDir = myDir.substr(0, dirIndex);
+ else
+ srcDir = "";
+ }
buildType = WScript.Arguments.Named("BUILDTYPE");
Modified: incubator/stdcxx/trunk/etc/config/windows/generate.wsf
URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/etc/config/windows/generate.wsf?rev=574643&r1=574642&r2=574643&view=diff
==============================================================================
--- incubator/stdcxx/trunk/etc/config/windows/generate.wsf (original)
+++ incubator/stdcxx/trunk/etc/config/windows/generate.wsf Tue Sep 11 10:30:34 2007
@@ -428,8 +428,8 @@
buildBatchFile.WriteLine("cscript /nologo "
+ "\"%topdir%\\%scriptdir%\\build.wsf\""
- + " /BUILDDIR:\"%builddir%\" /BUILDTYPE:%cfgbrief%"
- + " /CONFIG:" + currentCfg);
+ + " /BUILDDIR:\"%builddir%\" /TOPDIR:\"%topdir%\""
+ + " /BUILDTYPE:%cfgbrief% /CONFIG:" + currentCfg);
buildBatchFile.WriteLine("cscript /nologo "
+ "\"%topdir%\\%scriptdir%\\%makelog%\""
+ " /BUILDDIR:\"%builddir%\" /BUILDTYPE:%cfgbrief%"