2011-04-15 21:19:26 +00:00
|
|
|
require "fileutils"
|
2011-10-21 19:55:08 +00:00
|
|
|
require "rbconfig"
|
2011-04-15 21:19:26 +00:00
|
|
|
|
|
|
|
module CapybaraWebkitBuilder
|
|
|
|
extend self
|
|
|
|
|
2011-07-25 13:43:05 +00:00
|
|
|
def make_bin
|
2012-01-27 15:26:05 +00:00
|
|
|
ENV['MAKE'] || 'make'
|
2011-07-25 13:43:05 +00:00
|
|
|
end
|
|
|
|
|
2012-01-27 15:26:05 +00:00
|
|
|
def qmake_bin
|
|
|
|
ENV['QMAKE'] || 'qmake'
|
|
|
|
end
|
|
|
|
|
|
|
|
def spec
|
|
|
|
ENV['SPEC'] || os_spec
|
|
|
|
end
|
|
|
|
|
|
|
|
def os_spec
|
2011-10-21 19:55:08 +00:00
|
|
|
case RbConfig::CONFIG['host_os']
|
2011-05-22 14:51:11 +00:00
|
|
|
when /linux/
|
2012-01-27 15:26:05 +00:00
|
|
|
"linux-g++"
|
2011-07-25 13:43:05 +00:00
|
|
|
when /freebsd/
|
2012-01-27 15:26:05 +00:00
|
|
|
"freebsd-g++"
|
2011-05-22 14:51:11 +00:00
|
|
|
else
|
2012-01-27 15:26:05 +00:00
|
|
|
"macx-g++"
|
2011-05-22 14:51:11 +00:00
|
|
|
end
|
2011-04-15 21:19:26 +00:00
|
|
|
end
|
|
|
|
|
2012-01-27 15:26:05 +00:00
|
|
|
def makefile
|
2012-03-02 16:52:01 +00:00
|
|
|
system("LANG='en_US.UTF-8' #{qmake_bin} -spec #{spec}")
|
2012-01-27 15:26:05 +00:00
|
|
|
end
|
|
|
|
|
2011-04-15 21:19:26 +00:00
|
|
|
def qmake
|
2012-03-02 16:52:01 +00:00
|
|
|
system("LANG='en_US.UTF-8' #{make_bin} qmake")
|
2011-04-15 21:19:26 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
def build
|
2011-07-25 13:43:05 +00:00
|
|
|
system(make_bin) or return false
|
2011-04-15 21:19:26 +00:00
|
|
|
|
|
|
|
FileUtils.mkdir("bin") unless File.directory?("bin")
|
2011-05-11 13:04:31 +00:00
|
|
|
FileUtils.cp("src/webkit_server", "bin", :preserve => true)
|
2011-04-15 21:19:26 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
def build_all
|
2011-05-05 21:45:44 +00:00
|
|
|
makefile &&
|
|
|
|
qmake &&
|
2011-04-15 21:19:26 +00:00
|
|
|
build
|
|
|
|
end
|
|
|
|
end
|