mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-08-25 13:07:02 +00:00
Support for postinstall scripts
This commit is contained in:
@@ -189,6 +189,8 @@ function gen(/*va_args*/)
|
||||
{
|
||||
fail("The directory " + FILE.absolute(destinationProject) + " already exists.");
|
||||
}
|
||||
|
||||
executePostInstallScript(destinationProject);
|
||||
}
|
||||
|
||||
function createFrameworksInFile(/*Array*/ frameworks, /*String*/ aFile, /*Boolean*/ symlink, /*Boolean*/ build, /*Boolean*/ force)
|
||||
@@ -365,6 +367,19 @@ function listFrameworks()
|
||||
});
|
||||
}
|
||||
|
||||
function executePostInstallScript(/*String*/ destinationProject)
|
||||
{
|
||||
var path = FILE.join(destinationProject, "postinstall");
|
||||
|
||||
if (FILE.exists(path))
|
||||
{
|
||||
stream.print(colorize("Executing postinstall script...", "cyan"));
|
||||
|
||||
OS.system(["/bin/sh", path, destinationProject]); // Use sh in case it isn't marked executable
|
||||
FILE.remove(path);
|
||||
}
|
||||
}
|
||||
|
||||
function colorize(message, color)
|
||||
{
|
||||
return "\0" + color + "(" + message + "\0)";
|
||||
|
||||
@@ -88,6 +88,20 @@ or
|
||||
This is a handy shortcut for
|
||||
.Sy --symlink --build.
|
||||
.El
|
||||
.Ss Postinstall scripts
|
||||
After copying the chosen template, replacing placeholders, and installing the frameworks,
|
||||
if
|
||||
.Nm
|
||||
finds a file named "postinstall", it will be executed using
|
||||
.Sy sh.
|
||||
The script receives a single parameter which is the directory of the generated project.
|
||||
Scripts should reference files in the project relative to that directory.
|
||||
.Pp
|
||||
After executing the
|
||||
.Sy postinstall
|
||||
script,
|
||||
.Nm
|
||||
deletes it from the generated project.
|
||||
.\"-----------------------------------------------------------------------------------------
|
||||
.Sh CONFIGURING
|
||||
.\"-----------------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user