mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-09-19 17:03:29 +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.");
|
fail("The directory " + FILE.absolute(destinationProject) + " already exists.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
executePostInstallScript(destinationProject);
|
||||||
}
|
}
|
||||||
|
|
||||||
function createFrameworksInFile(/*Array*/ frameworks, /*String*/ aFile, /*Boolean*/ symlink, /*Boolean*/ build, /*Boolean*/ force)
|
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)
|
function colorize(message, color)
|
||||||
{
|
{
|
||||||
return "\0" + color + "(" + message + "\0)";
|
return "\0" + color + "(" + message + "\0)";
|
||||||
|
|||||||
@@ -88,6 +88,20 @@ or
|
|||||||
This is a handy shortcut for
|
This is a handy shortcut for
|
||||||
.Sy --symlink --build.
|
.Sy --symlink --build.
|
||||||
.El
|
.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
|
.Sh CONFIGURING
|
||||||
.\"-----------------------------------------------------------------------------------------
|
.\"-----------------------------------------------------------------------------------------
|
||||||
|
|||||||
Reference in New Issue
Block a user