You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by ma...@apache.org on 2012/06/20 02:05:16 UTC
[lucy-commits] svn commit: r1351904 - /lucy/trunk/ruby/Rakefile
Author: marvin
Date: Wed Jun 20 00:05:16 2012
New Revision: 1351904
URL: http://svn.apache.org/viewvc?rev=1351904&view=rev
Log:
Use meld version of charmonizer.
Modified:
lucy/trunk/ruby/Rakefile
Modified: lucy/trunk/ruby/Rakefile
URL: http://svn.apache.org/viewvc/lucy/trunk/ruby/Rakefile?rev=1351904&r1=1351903&r2=1351904&view=diff
==============================================================================
--- lucy/trunk/ruby/Rakefile (original)
+++ lucy/trunk/ruby/Rakefile Wed Jun 20 00:05:16 2012
@@ -82,7 +82,8 @@ IS_DISTRO_NOT_DEVEL = File.directory?('
AUTOGEN_DIR = "autogen"
BASE_DIR = File.absolute_path(IS_DISTRO_NOT_DEVEL ? '.' : '..')
CHARMONIZER_ORIG_DIR = File.join(BASE_DIR, "charmonizer")
-CHARMONIZE_EXE_PATH = exe_path(CHARMONIZER_ORIG_DIR, 'charmonize')
+CHARMONIZE_C_PATH = File.absolute_path('charmonize.c')
+CHARMONIZE_EXE_PATH = File.absolute_path(exe_path('charmonize'))
CLOWNFISH_PATH = File.join(BASE_DIR,"clownfish","ruby")
CHARMONY_PATH = "charmony.h"
CORE_SOURCE_DIR = File.join(BASE_DIR, "core")
@@ -111,8 +112,23 @@ end
desc "Build the charmonize executable"
task :charmonize do
puts "Building #{CHARMONIZE_EXE_PATH}...\n"
- run_make(CHARMONIZER_ORIG_DIR, [])
+ meld_c = File.absolute_path("charmonize.c")
+ charmonize_main = File.join(CHARMONIZER_ORIG_DIR, 'charmonize.c')
+ run_make_args = [ "meld", "FILES=#{charmonize_main}", "OUT=#{meld_c}" ]
+ run_make(CHARMONIZER_ORIG_DIR, run_make_args)
+
+ if !uptodate?(CHARMONIZE_EXE_PATH, [meld_c])
+ outflag = cc_command.match(/cl\b/) ? "/Fe" : "-o "
+ command = "#{cc_command} #{outflag}#{CHARMONIZE_EXE_PATH} #{meld_c}"
+ puts command
+ success = system(command)
+ if !success
+ raise "Failed to write charmony.h"
+ end
+ end
end
+CLEAN.include(CHARMONIZE_C_PATH)
+CLEAN.include(CHARMONIZE_EXE_PATH)
desc "Run the charmonize executable, creating the charmony.h file"
task :charmony => [:charmonize] do
@@ -128,6 +144,7 @@ task :charmony => [:charmonize] do
if ENV["CHARM_VALGRIND"]
command.unshift("valgrind", "--leak-check=yes")
end
+ puts command.join(" ")
success = system(*command);
if !success
raise "Failed to write charmony.h"