Hi,

At Thu, 27 Aug 2009 00:20:03 +0900,
Takahiro Kambe wrote in [ruby-dev:39169]:
> > So please change the Ruby's license to GPLv3 (and GPLv2) compat.
> Another option is make Ruby use older readline library which was GPLv2
> strictly.

A patch followed.

> And you need to know, Ruby's readline module work not only with GNU
> readline but also editline library (contained in *BSD).  So, importing
> editline library is another option.  :-)

However, editline's compatibility is still incomplete a little.
I found it lacks rl_getc declaration and the type of
rl_getc_function differs from GNU readline's one.


Index: ext/readline/extconf.rb =================================================================== --- ext/readline/extconf.rb (revision 24680) +++ ext/readline/extconf.rb (working copy) @@ -4,5 +4,5 @@ $readline_headers = ["stdio.h"] def have_readline_header(header) - if have_header(header) + if have_header(header, &$readline_extra_check) $readline_headers.push(header) return true @@ -25,4 +25,10 @@ dir_config('termcap') dir_config("readline") enable_libedit = enable_config("libedit") +$readline_extra_check = (proc {|src| src << <<EOS} unless enable_config("readline-v6")) +#if RL_VERSION_MAJOR >= 6 +#error GPLv2 incompatible +#endif +EOS + have_library("user32", nil) if /cygwin/ === RUBY_PLATFORM have_library("ncurses", "tgetnum") ||
-- Nobu Nakada