
Hi Judah, On Wed, Jan 09, 2008 at 10:08:20AM -0800, Judah Jacobson wrote:
- If it is libedit, we #ifdef out all of the functions not supported by libedit. (these are generally low-level APIs not needed by most applications, including ghci.) Otherwise, if we're linking against GNU readline, we support all the available APIs.
Thoughts?
I agree with Thorkil's message to the bug report (although I think the library name should be libedit or editline - I'm a bit confused about the relationship of the two). If a Haskell library or program has a build-depends on readline, then it should get the same functions everywhere; otherwise dependencies are meaningless. If a program wants to support both libraries then it can do something like If flag(readline) Build-depends: readline CPP-flags: -DUSING_READLINE Else Build-depends: editline CPP-flags: -DUSING_EDITLINE Of course, a third library could do the above conditional dependency and provide an interface to the intersection of readline and editline's functionalities. Other programs can then use that third library. Thanks Ian