You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by bo...@apache.org on 2008/01/28 21:57:37 UTC
svn commit: r616038 - /incubator/buildr/trunk/lib/java/compilers.rb
Author: boisvert
Date: Mon Jan 28 12:57:35 2008
New Revision: 616038
URL: http://svn.apache.org/viewvc?rev=616038&view=rev
Log:
Scalac: Supply REQUIRED dependencies so tests also use scala base libraries.
Modified:
incubator/buildr/trunk/lib/java/compilers.rb
Modified: incubator/buildr/trunk/lib/java/compilers.rb
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/lib/java/compilers.rb?rev=616038&r1=616037&r2=616038&view=diff
==============================================================================
--- incubator/buildr/trunk/lib/java/compilers.rb (original)
+++ incubator/buildr/trunk/lib/java/compilers.rb Mon Jan 28 12:57:35 2008
@@ -89,8 +89,20 @@
# * :debug -- Generate debugging info.
# * :other -- Array of options to pass to the Scalac compiler as is, e.g. -Xprint-types
class Scalac < Base
+ class << self
+ def scala_home
+ home = ENV['SCALA_HOME'] or fail 'Missing SCALA_HOME environment variable'
+ fail 'Invalid SCALA_HOME environment variable' unless File.directory?(home)
+ home
+ end
+
+ def dependencies
+ FileList["#{scala_home}/lib/*"]
+ end
+ end
OPTIONS = [:warnings, :deprecation, :optimise, :source, :target, :debug, :other]
+ REQUIRES = Scalac.dependencies
specify :language=>:scala, :target=>'classes', :target_ext=>'class', :packaging=>:jar
@@ -104,11 +116,10 @@
def compile(sources, target, dependencies) #:nodoc:
check_options options, OPTIONS
- home = ENV['SCALA_HOME'] or fail 'Missing SCALA_HOME environment variable'
- fail 'Invalid SCALA_HOME environment variable' unless File.directory?(home)
+ home = Scalac.scala_home
cmd_args = []
- cmd_args << '-cp' << (dependencies + FileList["#{home}/lib/*"]).join(File::PATH_SEPARATOR)
+ cmd_args << '-cp' << (dependencies + Scalac.dependencies).join(File::PATH_SEPARATOR)
use_fsc = !(ENV["USE_FSC"] =~ /^(no|off|false)$/i)
source_paths = sources.select { |source| File.directory?(source) }
cmd_args << '-sourcepath' << source_paths.join(File::PATH_SEPARATOR) unless source_paths.empty?