diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/extmk.rb.in | 23 | ||||
-rw-r--r-- | ext/readline/extconf.rb | 16 |
2 files changed, 39 insertions, 0 deletions
diff --git a/ext/extmk.rb.in b/ext/extmk.rb.in index 57d7a4a455..743ec16b34 100644 --- a/ext/extmk.rb.in +++ b/ext/extmk.rb.in @@ -242,6 +242,29 @@ def have_header(header) return TRUE end +def arg_config(config, default=nil) + unless defined? $configure_args + $configure_args = {} + for arg in CONFIG["configure_args"].split + next unless /^--/ =~ arg + if /=/ =~ arg + $configure_args[$`] = $' + else + $configure_args[arg] = default + end + end + end + p [$configure_args, config] + $configure_args.fetch(config, default) +end + +def with_config(config, default=nil) + unless /^--with-/ =~ config + config = '--with-' + config + end + arg_config(config, default) +end + def create_header() if $defs.length > 0 hfile = open("extconf.h", "w") diff --git a/ext/readline/extconf.rb b/ext/readline/extconf.rb index e55233eb20..1cf55bb4d9 100644 --- a/ext/readline/extconf.rb +++ b/ext/readline/extconf.rb @@ -1,5 +1,21 @@ require "mkmf" +readline_dir = with_config("readline-dir") +if readline_dir + $CFLAGS = "-I#{readline_dir}/include" + $LDFLAGS = "-L#{readline_dir}/lib" +end + +readline_dir = with_config("readline-include-dir") +if readline_dir + $CFLAGS = "-I#{readline_dir}" +end + +readline_dir = with_config("readline-lib-dir") +if readline_dir + $LDFLAGS = "-L#{readline_dir}" +end + have_library("termcap", "tgetnum") if have_header("readline/readline.h") and have_header("readline/history.h") and |