You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by pu...@apache.org on 2013/02/05 02:18:49 UTC

[1/2] git commit: command line to create a new project

command line to create a new project


Project: http://git-wip-us.apache.org/repos/asf/cordova-wp8/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-wp8/commit/36822def
Tree: http://git-wip-us.apache.org/repos/asf/cordova-wp8/tree/36822def
Diff: http://git-wip-us.apache.org/repos/asf/cordova-wp8/diff/36822def

Branch: refs/heads/master
Commit: 36822defda7f13ab158999508f5f6b4c9f7b5d6f
Parents: b183792
Author: Jesse MacFadyen <pu...@gmail.com>
Authored: Mon Feb 4 16:35:22 2013 -0800
Committer: Jesse MacFadyen <pu...@gmail.com>
Committed: Mon Feb 4 16:35:22 2013 -0800

----------------------------------------------------------------------
 bin/create.js |   52 ++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 42 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/36822def/bin/create.js
----------------------------------------------------------------------
diff --git a/bin/create.js b/bin/create.js
index b17d408..41a5e17 100644
--- a/bin/create.js
+++ b/bin/create.js
@@ -18,16 +18,40 @@
 */
 
 /*
- * create a cordova/wp7 project
+ * create a cordova/wp8 project
  *
  * USAGE
  *  ./create [path package activity]
+
+    ./bin/create.bat ~/MyTestProj "test.proj" "TestProject"
  */
 
 function Usage()
 {
   WScript.Echo("Usage: create PATH [PACKAGE] [NAME]");
-  WScript.Echo("Creates a new cordova/wp7 project.");
+  WScript.Echo("Creates a new cordova/wp8 project.");
+}
+
+var LinkageType = "DLL"; // ||  Yeah, that's it ...
+
+var fso=WScript.CreateObject("Scripting.FileSystemObject");
+// working dir
+var ROOT = WScript.ScriptFullName.split('\\bin\\create.js').join('');
+
+if(LinkageType == "DLL") // the only type for now.
+{
+    // TODO: check that the dll exists and the cordova-lib has been built
+    var dllPath = ROOT + "\\framework\\Bin\\Release\\WPCordovaClassLib.dll";
+    if(fso.FileExists(dllPath))
+    {
+        WScript.Echo("File Exists");
+    }
+    else 
+    {
+        WScript.Echo("Error: Missing Library! Could not find the file: " + dllPath);
+        WScript.Echo("Open and build the project ./framework/WPCordovaClassLib.csproj and build it in release mode first.");
+        WScript.Quit(1);
+    }
 }
 
 var ForReading = 1, ForWriting = 2, ForAppending = 8;
@@ -35,7 +59,7 @@ var TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0;
 
 function read(filename) {
     //WScript.Echo('Reading in ' + filename);
-    var fso=WScript.CreateObject("Scripting.FileSystemObject");
+    
     var f=fso.OpenTextFile(filename, 1,2);
     var s=f.ReadAll();
     f.Close();
@@ -43,7 +67,7 @@ function read(filename) {
 }
 
 function write(filename, contents) {
-    var fso=WScript.CreateObject("Scripting.FileSystemObject");
+    //var fso=WScript.CreateObject("Scripting.FileSystemObject");
     var f=fso.OpenTextFile(filename, ForWriting, TristateTrue);
     f.Write(contents);
     f.Close();
@@ -51,10 +75,15 @@ function write(filename, contents) {
 function replaceInFile(filename, regexp, replacement) {
     write(filename,read(filename).replace(regexp,replacement));
 }
+
+
 function exec(s, output) {
     WScript.Echo('Executing::' + s);
+    
     var o=shell.Exec(s);
-    while (o.Status == 0) {
+    var timeOut = 2000;
+    while (o.Status == 0 && timeOut > 0) {
+        timeOut -= 100;
         WScript.Sleep(100);
     }
     WScript.Echo(o.StdErr.ReadAll());
@@ -86,8 +115,6 @@ var args = WScript.Arguments,
     NAME="Example",
     shell=WScript.CreateObject("WScript.Shell");
     
-// working dir
-var ROOT = WScript.ScriptFullName.split('\\bin\\create.js').join('');
 
 if (args.Count() > 0) 
 {
@@ -128,9 +155,13 @@ WScript.Echo("Package as path: " + PACKAGE_AS_PATH);
 var newProjGuid = genGuid();
 WScript.Echo('newProjGuid ' + newProjGuid);
 
-
 // Copy the template source files to the new destination
-exec('cmd /c xcopy templates\\full ' + PROJECT_PATH + ' /S /Y');
+
+//var fso=WScript.CreateObject("Scripting.FileSystemObject");
+//WScript.Echo("src = " + ROOT + "\\templates\\standalone");
+fso.CopyFolder(ROOT + "\\templates\\standalone", PROJECT_PATH); 
+
+
 // replace the guid in the AppManifest
 replaceInFile(PROJECT_PATH + "\\Properties\\WMAppManifest.xml","$guid1$",newProjGuid);
 // replace safe-project-name in AppManifest
@@ -145,9 +176,10 @@ replaceInFile(PROJECT_PATH + "\\MainPage.xaml",/\$safeprojectname\$/g,PACKAGE);
 replaceInFile(PROJECT_PATH + "\\MainPage.xaml.cs",/\$safeprojectname\$/g,PACKAGE);
 replaceInFile(PROJECT_PATH + "\\CordovaAppProj.csproj",/\$safeprojectname\$/g,PACKAGE);
 
-WScript.Echo("Generated project : " + PROJECT_PATH + NAME);
+WScript.Echo("Generated project : " + PROJECT_PATH);
 
 // TODO: Name the project according to the arguments
 // update the solution to include the new project by name
 // version BS
 // index.html title set to project name ?
+