Moved nib2cib and capp to jake.

Reviewed by me.
This commit is contained in:
Francisco Ryan Tolmasky I committed 2009-09-25 03:28:38 -07:00
1 parent ffd99e3ed7
commit 714cd402df
8 files changed
+147 -52

No files matched your search

@@ -7,4 +7,9 @@ exports.bundle = BUNDLE_TASK.bundle;
var FRAMEWORK_TASK = require("objective-j/jake/frameworktask");
exports.FrameworkTask = FRAMEWORK_TASK.FrameworkTask;
exports.framework = FRAMEWORK_TASK.framework;
exports.framework = FRAMEWORK_TASK.framework;
var APPLICATION_TASK = require("objective-j/jake/applicationtask");
exports.ApplicationTask = APPLICATION_TASK.ApplicationTask;
exports.app = APPLICATION_TASK.app;
@@ -3,7 +3,7 @@ BundleTask = require("objective-j/jake/bundletask").BundleTask;
function ApplicationTask(aName)
{
ApplicationTask.apply(this, arguments);
BundleTask.apply(this, arguments);
}
ApplicationTask.__proto__ = BundleTask;
@@ -16,7 +16,7 @@ ApplicationTask.prototype.packageTask = function()
exports.ApplicationTask = ApplicationTask;
exports.application = function(aName, aFunction)
exports.app = function(aName, aFunction)
{
// No .apply necessary because the parameters aren't variable.
return ApplicationTask.defineTask(aName, aFunction);
File renamed without changes.
+6
View File
@@ -0,0 +1,6 @@
#!/usr/bin/env narwhal
require("../common.jake");
// nib2cib has to come before capp since capp uses nib2cib
subtasks(["nib2cib", "capp"/*, "bake", "press"*/], ["build"/*, "clean", "clobber"*/]);
+42
View File
@@ -0,0 +1,42 @@
#!/usr/bin/env ruby
var FILE = require("file");
require ("../../common.jake");
app ("capp", function(cappTask)
{
cappTask.setBuildIntermediatesPath(FILE.join($BUILD_DIR, "capp.build", $CONFIGURATION))
cappTask.setBuildPath($COMMONJS_PRODUCT_LIB);
cappTask.setIdentifier("com.280n.capp");
cappTask.setLicense(BundleTask.License.LGPL_v2_1);
cappTask.setVersion("0.7.1");
// t.author = '280 North, Inc.'
// t.email = 'feedback @nospam@ 280north.com'
// t.summary = 'Setup up Cappuccino projects'
cappTask.setSources(FILE.glob("*.j"));
cappTask.setResources(["Templates"]);
cappTask.setIncludesNibsAndXibs(true);
cappTask.setPlatforms([BundleTask.Platform.CommonJS]);
if ($CONFIGURATION === "Release")
cappTask.setCompilerFlags("-O");
else
cappTask.setCompilerFlags("-DDEBUG -g");
});
$COMMONJS_CAPP_BIN_PRODUCT = FILE.join($COMMONJS_PRODUCT_BIN, 'nib2cib');
// executable in environment directory
filedir($COMMONJS_CAPP_BIN_PRODUCT, ["capp"], function()
{
make_objj_executable($COMMONJS_CAPP_BIN_PRODUCT);
});
task ("build", ["capp", $COMMONJS_CAPP_BIN_PRODUCT]);
/*
CLOBBER.include($ENVIRONMENT_BIN_PRODUCT, $ENVIRONMENT_LIB_PRODUCT)
*/
@@ -1 +0,0 @@
280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CLine truncated
+41
View File
@@ -0,0 +1,41 @@
#!/usr/bin/env narwhal
var FILE = require("file");
require("../../common.jake");
app ("nib2cib", function(nib2cibTask)
{
nib2cibTask.setBuildIntermediatesPath(FILE.join($BUILD_DIR, "nib2cib.build", $CONFIGURATION))
nib2cibTask.setBuildPath($COMMONJS_PRODUCT_LIB);
nib2cibTask.setIdentifier("com.280n.nib2cib");
nib2cibTask.setLicense(BundleTask.License.LGPL_v2_1);
nib2cibTask.setVersion("0.7.1");
// t.author = '280 North, Inc.'
// t.email = 'feedback @nospam@ 280north.com'
// t.summary = 'nib2cib converts Cocoa nib and xibs to Cappuccino cibs'
nib2cibTask.setSources(FILE.glob("*.j"));// t.sources = FileList['**/*.j']
nib2cibTask.setResources(FILE.glob("Resources/*"));
nib2cibTask.setPlatforms([BundleTask.Platform.CommonJS]);
nib2cibTask.setFlattensSources(true);
if ($CONFIGURATION === "Release")
nib2cibTask.setCompilerFlags("-O");
else
nib2cibTask.setCompilerFlags("-DDEBUG -g");
});
$COMMONJS_NIB2CIB_BIN_PRODUCT = FILE.join($COMMONJS_PRODUCT_BIN, 'nib2cib');
// executable in environment directory
filedir($COMMONJS_NIB2CIB_BIN_PRODUCT, ["nib2cib"], function()
{
make_objj_executable($COMMONJS_NIB2CIB_BIN_PRODUCT);
});
task ("build", ["nib2cib", $COMMONJS_NIB2CIB_BIN_PRODUCT]);
/*
CLOBBER.include($ENVIRONMENT_BIN_PRODUCT, $ENVIRONMENT_LIB_PRODUCT )*/
+50 -48
View File
@@ -11,28 +11,6 @@ global.directory = Jake.directory;
//global.file = Jake.file;
global.filedir = Jake.filedir;
/*
def gem_command
case RUBY_PLATFORM
when /win32/
'gem.bat'
when /java/
'jruby -S gem'
else
'gem'
end
end
begin
require 'rubygems'
require 'plist'
rescue LoadError
puts 'Plist gem not installed, installing...'
cmd = "#{gem_command} install plist"
puts cmd
puts %x(#{cmd})
end
*/
// Read in and set up development environment variables.
if (!ENV["BUILD_PATH"])
{
@@ -54,8 +32,13 @@ ENV["BUILD_PATH"] = FILE.absolute(ENV["BUILD_PATH"]);
if (!ENV["CONFIG"])
ENV["CONFIG"] = "Release";
global.$CONFIGURATION = ENV['CONFIG'];
global.$BUILD_DIR = ENV['BUILD_PATH'];
global.$CONFIGURATION = ENV['CONFIG'];
global.$BUILD_DIR = ENV['BUILD_PATH'];
global.$COMMONJS_PRODUCT = FILE.join($BUILD_DIR, $CONFIGURATION, "CommonJS", "objective-j");
global.$COMMONJS_PRODUCT_BIN = FILE.join($COMMONJS_PRODUCT, "bin");
global.$COMMONJS_PRODUCT_LIB = FILE.join($COMMONJS_PRODUCT, "lib");
global.$PRODUCT_DIR = FILE.join($BUILD_DIR, $CONFIGURATION);
global.$ENVIRONMENT_DIR = FILE.join($BUILD_DIR, $CONFIGURATION, 'env');
global.$ENVIRONMENT_NARWHAL_BIN_DIR= FILE.join($ENVIRONMENT_DIR, 'bin', '');
@@ -66,17 +49,28 @@ global.$ENVIRONMENT_FRAMEWORKS_DIR = FILE.join($ENVIRONMENT_LIB_DIR, 'Frameworks
global.$HOME_DIR = FILE.absolute(FILE.dirname(module.path));
global.$LICENSE_FILE = FILE.absolute(FILE.join(FILE.dirname(module.path), 'LICENSE'));
var objectiveJLibJS = FILE.join($BUILD_DIR, $CONFIGURATION, "CommonJS", "objective-j", "lib-js");
if (FILE.exists(objectiveJLibJS))
if(!global.COMMON_DO_ONCE)
{
require.paths.unshift(objectiveJLibJS);
global.COMMON_DO_ONCE = true;
var OBJECTIVE_J_JAKE = require("objective-j/jake");
var objectiveJBin = FILE.join($BUILD_DIR, $CONFIGURATION, "CommonJS", "objective-j", "bin"),
objectiveJLibJS = FILE.join($BUILD_DIR, $CONFIGURATION, "CommonJS", "objective-j", "lib-js");
global.bundle = OBJECTIVE_J_JAKE.bundle;
global.framework = OBJECTIVE_J_JAKE.framework;
global.BundleTask = OBJECTIVE_J_JAKE.BundleTask;
if (FILE.exists(objectiveJLibJS))
{
require.paths.unshift(objectiveJLibJS);
var OBJECTIVE_J_JAKE = require("objective-j/jake");
global.app = OBJECTIVE_J_JAKE.app;
global.bundle = OBJECTIVE_J_JAKE.bundle;
global.framework = OBJECTIVE_J_JAKE.framework;
global.BundleTask = OBJECTIVE_J_JAKE.BundleTask;
}
if (FILE.exists(objectiveJBin))
OS.system("PATH=$PATH:" + objectiveJBin);
}
global.rm_rf = function(/*String*/ aFilename)
@@ -87,6 +81,7 @@ global.rm_rf = function(/*String*/ aFilename)
global.cp_r = function(/*String*/ from, /*String*/ to)
{
rm_rf(to);
FILE.copyTree(from, to);
}
@@ -95,14 +90,6 @@ global.cp = function(/*String*/ from, /*String*/ to)
FILE.copy(from, to);
}
if(!global.COMMON_DO_ONCE)
{
COMMON_DO_ONCE = true
// $LOAD_PATH << File.join($HOME_DIR, 'Tools', 'Rake', 'lib')
ENV["PATH"] = $ENVIRONMENT_NARWHAL_BIN_DIR + ":" + ENV["PATH"];
}
//require 'objective-j'
function serializedENV()
@@ -143,14 +130,14 @@ global.executableExists = function(/*String*/ aFileName)
});
}
$OBJJ_TEMPLATE_EXECUTABLE = FILE.join($HOME_DIR, 'Tools', 'Rake', 'lib', 'objj-executable')
/*
def make_objj_executable(path)
cp($OBJJ_TEMPLATE_EXECUTABLE, path)
File.chmod(0755, path)
symlink_executable(path)
end
*/
$OBJJ_TEMPLATE_EXECUTABLE = FILE.join($HOME_DIR, "Objective-J", "CommonJS", "objj-executable");
global.make_objj_executable = function(aPath)
{
cp($OBJJ_TEMPLATE_EXECUTABLE, aPath);
FILE.chmod(aPath, 0755);
}
global.symlink_executable = function(source)
{
relative = FILE.relative($ENVIRONMENT_NARWHAL_BIN_DIR, source);
@@ -219,3 +206,18 @@ function spawnJake(/*String*/ aTaskName)
//system %{#{$serialized_env} #{$0} #{task_name}}
//rake abort if ($? != 0)
}
global.subtasks = function(subprojects, taskNames)
{
taskNames.forEach(function(aTaskName)
{
var subtaskName = taskNames + "_subprojects";
task (aTaskName, [subtaskName]);
task (subtaskName, function()
{
subjake(subprojects, aTaskName);
});
});
}