readline/rlstdc.h not found (and other errors) when building readline on Mac OS X with framework GNUreadline
When building readline on a Mac OS X with the GNUreadline framework in /Libraries/Frameworks, the build fails:
$ runhaskell Setup.hs build Preprocessing library readline-1.0.1... Building readline-1.0.1... In file included from include/HsReadline.h:7, from HsReadline_cbits.c:1:0: /Library/Frameworks/GNUreadline.framework/Headers/readline/readline.h:36:31: error: readline/rlstdc.h: No such file or directory ...
This is in spite of:
$ runhaskell Setup.hs configure Configuring readline-1.0.1... ... checking for GNUreadline.framework... checking for readline... yes checking for rl_readline_version... yes checking for rl_begin_undo_group... yes checking for rl_erase_empty_line... yes checking for rl_free_undo_list... yes checking for rl_completion_word_break_hook in -lreadline... yes ... $
This problem affects the tnaur osx buildbot slaves after I have installed the GNUreadline framework in /Libraries/Frameworks. See http://darcs.haskell.org/buildbot/all/tnaur%20PPC%20OSX%20stable/builds/29/step-stage1/0 for an example of this. Earlier, the tnaur osx buildbot slaves have have avoided this problem by simply not detecting readline and, therefore, never attempting to build the readline library.
The enclosed patch introduces a fix for this, changing the readline.cabal file. Please note that this is included for illustration only, it is not intended to be the solution to this problem.
Best regards Thorkil