Files
cappuccino/Tests/Manual/CPColorWellBindingsTest/Jakefile
T
David Richardson eb2f2b2fc2 Fix recursive clean|clobber failures and orphaned build artifacts in Tests/Manual
- Update clean and clobber targets in Tests/Manual/Jakefile to enforce -mindepth 2 -maxdepth 2 traversal. This accurately purges subsidiary Build directories and Frameworks symlinks without triggering subjake dependency cycles.

- Inject explicit clean and clobber overrides into all 150+ subsidiary application Jakefiles. This forces local execution to wipe the top-level Build directory, bypassing applicationtask's default behavior of only targeting configuration-specific intermediate paths.

- Harmonizes artifact sweeping across both root-level orchestration and local leaf-level execution.
2026-10-03 13:18:22 -06:00

105 lines
3.4 KiB
JavaScript

/*
* Jakefile
* CPColorWellBindingsTest
*
* Created by You on January 27, 2012.
* Copyright 2012, Your Company All rights reserved.
*/
var ENV = process.env,
cp = require("child_process"),
fs = require("fs"),
path = require("path"),
task = JAKE.task,
FileList = JAKE.FileList,
app = CAPPUCCINO.Jake.applicationtask.app,
configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug";
app ("CPColorWellBindingsTest", function(task)
{
task.setBuildIntermediatesPath(path.join("Build", "CPColorWellBindingsTest.build", configuration));
task.setBuildPath(path.join("Build", configuration));
task.setProductName("CPColorWellBindingsTest");
task.setIdentifier("com.yourcompany.CPColorWellBindingsTest");
task.setVersion("1.0");
task.setAuthor("Your Company");
task.setEmail("feedback @nospam@ yourcompany.com");
task.setSummary("CPColorWellBindingsTest");
task.setSources((new FileList("**/*.j")).exclude(path.join("Build", "**")));
task.setResources(new FileList("Resources/**"));
task.setIndexFilePath("index.html");
task.setInfoPlistPath("Info.plist");
task.setNib2CibFlags("-R Resources/");
if (configuration === "Debug")
task.setCompilerFlags("-DDEBUG -g");
else
task.setCompilerFlags("-O");
});
task ("default", ["CPColorWellBindingsTest"], function()
{
printResults(configuration);
});
task ("build", ["default"]);
task ("debug", function()
{
ENV["CONFIGURATION"] = "Debug";
JAKE.subjake(["."], "build", ENV);
});
task ("release", function()
{
ENV["CONFIGURATION"] = "Release";
JAKE.subjake(["."], "build", ENV);
});
task ("run", ["debug"], function()
{
cp.execSync(["open", path.join("Build", "Debug", "CPColorWellBindingsTest", "index.html")].join(" "), { stdio: "inherit" });
});
task ("run-release", ["release"], function()
{
cp.execSync(["open", path.join("Build", "Release", "CPColorWellBindingsTest", "index.html")].join(" "), { stdio: "inherit" });
});
task ("deploy", ["release"], function()
{
fs.mkdirSync(path.join("Build", "Deployment", "CPColorWellBindingsTest"), { recursive: true });
cp.execSync(["press", "-f", path.join("Build", "Release", "CPColorWellBindingsTest"), path.join("Build", "Deployment", "CPColorWellBindingsTest")].join(" "), { stdio: "inherit" });
printResults("Deployment")
});
task ("desktop", ["release"], function()
{
fs.mkdirSync(path.join("Build", "Desktop", "CPColorWellBindingsTest"), { recursive: true });
require("@objj/nativehost").buildNativeHost(path.join("Build", "Release", "CPColorWellBindingsTest"), path.join("Build", "Desktop", "CPColorWellBindingsTest", "CPColorWellBindingsTest.app"));
printResults("Desktop")
});
task ("run-desktop", ["desktop"], function()
{
cp.execSync([path.join("Build", "Desktop", "CPColorWellBindingsTest", "CPColorWellBindingsTest.app", "Contents", "MacOS", "NativeHost"), "-i"].join(" "), { stdio: "inherit" });
});
function printResults(configuration)
{
console.log("----------------------------");
console.log(configuration+" app built at path: "+path.join("Build", configuration, "CPColorWellBindingsTest"));
console.log("----------------------------");
}
task ("clean", function()
{
cp.execSync("rm -rf Build", { stdio: "inherit" });
});
task ("clobber", ["clean"], function()
{
cp.execSync("rm -rf Frameworks", { stdio: "inherit" });
});