blob: c31ac7ae921d18cd19cc3972dd573491e28ae39c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
MRuby::Gem::Specification.new('mruby-bin-mirb') do |spec|
spec.license = 'MIT'
spec.author = 'mruby developers'
spec.summary = 'mirb command'
if spec.build.cc.search_header_path 'readline/readline.h'
spec.cc.defines << "MRB_USE_READLINE"
spec.cc.defines << "MRB_READLINE_HEADER='<readline/readline.h>'"
spec.cc.defines << "MRB_READLINE_HISTORY='<readline/history.h>'"
if spec.build.cc.search_header_path 'termcap.h'
if MRUBY_BUILD_HOST_IS_CYGWIN || MRUBY_BUILD_HOST_IS_OPENBSD
if spec.build.cc.search_header_path 'termcap.h'
if MRUBY_BUILD_HOST_IS_CYGWIN then
spec.linker.libraries << 'ncurses'
else
spec.linker.libraries << 'termcap'
end
end
end
end
if RUBY_PLATFORM.include?('netbsd')
spec.linker.libraries << 'edit'
else
spec.linker.libraries << 'readline'
if RUBY_PLATFORM.include?('darwin')
# Workaround to build with Homebrew's readline on Mac (#4537)
lib_path = spec.build.cc.header_search_paths.find do |include_path|
lib_path = File.expand_path("#{include_path}/../lib")
break lib_path if File.exist?("#{lib_path}/libreadline.dylib") ||
File.exist?("#{lib_path}/libreadline.a")
end
spec.linker.library_paths << lib_path if lib_path
end
if spec.build.cc.search_header_path 'curses.h'
spec.linker.libraries << 'ncurses'
end
end
elsif spec.build.cc.search_header_path 'edit/readline/readline.h'
spec.cc.defines << "MRB_USE_READLINE"
spec.cc.defines << "MRB_READLINE_HEADER='<edit/readline/readline.h>'"
spec.cc.defines << "MRB_READLINE_HISTORY='<edit/readline/history.h>'"
spec.linker.libraries << "edit"
elsif spec.build.cc.search_header_path 'linenoise.h'
spec.cc.defines << "MRB_USE_LINENOISE"
end
spec.bins = %w(mirb)
spec.add_dependency('mruby-compiler', :core => 'mruby-compiler')
end
|