diff --git a/Objective-J/Rakefile b/Objective-J/Rakefile index cef3e67de..da676adf5 100644 --- a/Objective-J/Rakefile +++ b/Objective-J/Rakefile @@ -8,12 +8,14 @@ require 'rake/clean' $PRODUCT = File.join($PRODUCT_DIR, 'Objective-J') $ENVIRONMENT_PRODUCT = File.join($ENVIRONMENT_FRAMEWORKS_DIR, 'Objective-J') +$LICENSE_PRODUCT = File.join($PRODUCT, 'LICENSE') + +$LICENSE_FILE = File.join($HOME_DIR, 'Rake', 'lib', 'licenses', 'LGPL-v2.1') -$LICENSE_FILE = File.join($PRODUCT, 'LICENSE') $BROWSER_FILE = File.join($PRODUCT, 'Objective-J.js') $RHINO_FILE = File.join($PRODUCT, 'rhino.platform', 'Objective-J.js') -task :Products => [$BROWSER_FILE, $RHINO_FILE] +task :Products => [$BROWSER_FILE, $RHINO_FILE, $LICENSE_PRODUCT] Files = [ 'LICENSE.txt', 'constants.js', @@ -44,6 +46,10 @@ file_d $ENVIRONMENT_PRODUCT => [:Products] do cp_r(File.join($PRODUCT, '.'), $ENVIRONMENT_PRODUCT) end +file_d $LICENSE_PRODUCT => [$LICENSE_FILE] do + cp($LICENSE_FILE, $LICENSE_PRODUCT) +end + def platform_flags(*platforms) return { 'PLATFORMS' => ('"[' + platforms.uniq.map { |platform| '\"' + platform + '\"' }.join(', ') + ']"') } end diff --git a/common.rb b/common.rb index fa895b29d..1281de1a2 100644 --- a/common.rb +++ b/common.rb @@ -1,5 +1,25 @@ require 'rake' +def gem_command + case RUBY_PLATFORM + when /win32/ + 'gem.bat' + when /java/ + 'jruby -S gem' + else + 'gem' + end +end + +begin + 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'] @@ -145,3 +165,4 @@ task :clobberall => ['clobber-all'] def spawn_rake(task_name) system %{#{$serialized_env} #{$0} #{task_name}} end +