conditional support for haskeline, readline and editline

This commit is contained in:
krasimir
2009-04-30 09:40:48 +00:00
parent ff9ba99e72
commit 69c5448f95
2 changed files with 34 additions and 8 deletions

View File

@@ -543,10 +543,18 @@ data-files:
lib/resource/thai/VerbTha.gf lib/resource/thai/VerbTha.gf
lib/LICENSE lib/LICENSE
flag haskeline
Description: Enable Haskeline in the shell
Default: True
flag readline flag readline
Description: Enable Readline in the shell Description: Enable Readline in the shell
Default: True Default: True
flag editline
Description: Enable Editline in the shell
Default: True
flag interrupt flag interrupt
Description: Enable Ctrl+Break in the shell Description: Enable Ctrl+Break in the shell
Default: True Default: True
@@ -701,12 +709,22 @@ executable gf
GFC GFC
GFI GFI
if flag(readline) if flag(haskeline)
build-depends: readline build-depends: haskeline
ghc-options: -DUSE_READLINE cpp-options: -DUSE_HASKELINE
other-modules: GF.System.UseReadline other-modules: GF.System.UseHaskeline
else else
other-modules: GF.System.NoReadline if flag(readline)
build-depends: readline
cpp-options: -DUSE_READLINE
other-modules: GF.System.UseReadline
else
if flag(editline)
build-depends: editline
cpp-options: -DUSE_EDITLINE
other-modules: GF.System.UseEditline
else
other-modules: GF.System.NoReadline
if flag(interrupt) if flag(interrupt)
cpp-options: -DUSE_INTERRUPT cpp-options: -DUSE_INTERRUPT

View File

@@ -16,10 +16,18 @@
module GF.System.Readline (fetchCommand, setCompletionFunction, filenameCompletionFunction) where module GF.System.Readline (fetchCommand, setCompletionFunction, filenameCompletionFunction) where
#ifdef USE_READLINE #ifdef USE_HASKELINE
import GF.System.UseHaskeline
#elif USE_READLINE
import GF.System.UseReadline import GF.System.UseReadline
#elif USE_EDITLINE
import GF.System.UseEditline
#else #else
import GF.System.NoReadline import GF.System.NoReadline