Update 'create project' and iOS build to use variable substitution in directories/file names

This commit is contained in:
Joshua Granick
2017-11-27 15:29:27 -08:00
parent b0c81eb2fd
commit 36e18ef270
12 changed files with 28 additions and 13 deletions

View File

@@ -87,7 +87,8 @@ class IOSPlatform extends PlatformTarget {
public override function display ():Void {
var hxml = PathHelper.findTemplate (project.templatePaths, "iphone/PROJ/haxe/Build.hxml");
var hxml = PathHelper.findTemplate (project.templatePaths, "iphone/PROJ/haxe/Build.hxml", false);
if (hxml == null) hxml = PathHelper.findTemplate (project.templatePaths, "iphone/template/{{app.file}}/Build.hxml", true);
var template = new Template (File.getContent (hxml));
project = project.clone ();
@@ -350,7 +351,8 @@ class IOSPlatform extends PlatformTarget {
}
context.HXML_PATH = PathHelper.findTemplate (project.templatePaths, "iphone/PROJ/haxe/Build.hxml");
context.HXML_PATH = PathHelper.findTemplate (project.templatePaths, "iphone/PROJ/haxe/Build.hxml", false);
if (context.HXML_PATH == null) context.HXML_PATH = PathHelper.findTemplate (project.templatePaths, "iphone/template/{{app.file}}/haxe/Build.hxml");
context.PRERENDERED_ICON = project.config.getBool ("ios.prerenderedIcon", false);
var allowInsecureHTTP = project.config.getString ("ios.allow-insecure-http", "*");
@@ -580,17 +582,24 @@ class IOSPlatform extends PlatformTarget {
PathHelper.mkdir (projectDirectory + "/resources");
PathHelper.mkdir (projectDirectory + "/haxe/build");
FileHelper.recursiveCopyTemplate (project.templatePaths, "iphone/resources", projectDirectory + "/resources", context, true, false);
FileHelper.recursiveCopyTemplate (project.templatePaths, "iphone/PROJ/haxe", projectDirectory + "/haxe", context);
FileHelper.recursiveCopyTemplate (project.templatePaths, "haxe", projectDirectory + "/haxe", context);
FileHelper.recursiveCopyTemplate (project.templatePaths, "iphone/PROJ/Classes", projectDirectory + "/Classes", context);
FileHelper.recursiveCopyTemplate (project.templatePaths, "iphone/PROJ/Images.xcassets", projectDirectory + "/Images.xcassets", context);
FileHelper.copyFileTemplate (project.templatePaths, "iphone/PROJ/PROJ-Entitlements.plist", projectDirectory + "/" + project.app.file + "-Entitlements.plist", context);
FileHelper.copyFileTemplate (project.templatePaths, "iphone/PROJ/PROJ-Info.plist", projectDirectory + "/" + project.app.file + "-Info.plist", context);
FileHelper.copyFileTemplate (project.templatePaths, "iphone/PROJ/PROJ-Prefix.pch", projectDirectory + "/" + project.app.file + "-Prefix.pch", context);
FileHelper.recursiveCopyTemplate (project.templatePaths, "iphone/PROJ.xcodeproj", targetDirectory + "/" + project.app.file + ".xcodeproj", context);
// Long deprecated template path
//SWFHelper.generateSWFClasses (project, projectDirectory + "/haxe");
FileHelper.recursiveSmartCopyTemplate (project, "iphone/resources", projectDirectory + "/resources", context, true, false);
// New template path
FileHelper.recursiveSmartCopyTemplate (project, "ios/template", targetDirectory, context);
// Recently deprecated template paths
FileHelper.recursiveSmartCopyTemplate (project, "iphone/PROJ/haxe", projectDirectory + "/haxe", context, true, false);
FileHelper.recursiveSmartCopyTemplate (project, "haxe", projectDirectory + "/haxe", context, true, false);
FileHelper.recursiveSmartCopyTemplate (project, "iphone/PROJ/Classes", projectDirectory + "/Classes", context, true, false);
FileHelper.recursiveSmartCopyTemplate (project, "iphone/PROJ/Images.xcassets", projectDirectory + "/Images.xcassets", context, true, false);
FileHelper.copyFileTemplate (project.templatePaths, "iphone/PROJ/PROJ-Entitlements.plist", projectDirectory + "/" + project.app.file + "-Entitlements.plist", context, true, false);
FileHelper.copyFileTemplate (project.templatePaths, "iphone/PROJ/PROJ-Info.plist", projectDirectory + "/" + project.app.file + "-Info.plist", context, true, false);
FileHelper.copyFileTemplate (project.templatePaths, "iphone/PROJ/PROJ-Prefix.pch", projectDirectory + "/" + project.app.file + "-Prefix.pch", context, true, false);
FileHelper.recursiveSmartCopyTemplate (project, "iphone/PROJ.xcodeproj", targetDirectory + "/" + project.app.file + ".xcodeproj", context, true, false);
PathHelper.mkdir (projectDirectory + "/lib");

View File

@@ -240,6 +240,12 @@ class CreateTemplate {
}
project.meta.title = title;
project.meta.packageName = packageName;
project.meta.version = version;
project.meta.company = company;
project.app.file = file;
context.title = title;
context.packageName = packageName;
context.version = version;
@@ -279,7 +285,7 @@ class CreateTemplate {
}*/
PathHelper.mkdir (folder);
FileHelper.recursiveCopyTemplate (project.templatePaths, "project", folder, context);
FileHelper.recursiveSmartCopyTemplate (project, "project", folder, context);
try {