Ian, Thanks for the explanation. Feel free to close this.
-- John On Wed, Feb 02, 2005 at 06:14:51PM +0000, Ian Lynagh wrote: > > Hi John, > > On Wed, Jan 19, 2005 at 08:35:13AM -0600, John Goerzen wrote: > > > > Although its manpage implies that hmake handles proprocessor flags > > automatically in all cases, it dies compiling files that use HaXml > > because it tries to process the GHC code (which happens to occur first) > > instead of the nhc98 code. As far as I can tell, it doesn't even manage > > to invoke nhc98. > > > > I even tried: > > > > HFLAGS="-cpp" hmake -cpp -IHaXml-1.12/src -nhc98 -o dtmconv dtmconv.hs > > > > It made no difference. > > Your report is rather vague. If I use HaXml from > http://www.haskell.org/HaXml/HaXml-1.12.tar.gz and run > > hmake -cpp -IHaXml-1.12/src -nhc98 -o dtmconv dtmconv.hs > > (the HFLAGS="-cpp" doesn't affect the output and I would advise against > using it) then I get: > > Fail: Can't find module System.IO.Unsafe in user directories > . > HaXml-1.12/src > Or in installed libraries/packages at > /usr/include/nhc98 > Asked for by: HaXml-1.12/src/Text/XML/HaXml/Parse.hs > Fix using the -I, -P, or -package flags. > > Stop - hmake dependency error. > > Is this the problem you're having? > > This is because HaXml-1.12/src/Text/XML/HaXml/Parse.hs contains > > if defined(__GLASGOW_HASKELL__) && ( __GLASGOW_HASKELL__ > 502 ) > import System.IO.Unsafe (unsafePerformIO) > #elif defined(__GLASGOW_HASKELL__) || defined(__HUGS__) > import IOExts (unsafePerformIO) > #elif defined(__NHC__) && ( __NHC__ > 114 ) > * import System.IO.Unsafe (unsafePerformIO) > #elif defined(__NHC__) > import IOExtras (unsafePerformIO) > #elif defined(__HBC__) > import UnsafePerformIO > #endif > > (it is the line I have marked with a * that it is complaining about), > System.IO.Unsafe is in package base and hmake wasn't looking in the base > package by default. > > Version 3.09-2 should fix the above issue. If that doesn't solve your > problem then please can you give me step by step instructions to > reproduce the problem and say exactly what error you get? > > If that was the problem, please can you close this bug (or let me know > and I'll do it). > > > Incidentally, > > hmake -cpp -IHaXml-1.12/src -nhc98 -o dtmconv dtmconv.hs > > now gives > > Fail: Can't find module System.Posix.Time in user directories > . > HaXml-1.12/src > Or in installed libraries/packages at > /usr/include/nhc98 > /usr/include/nhc98/base > Asked for by: dtmconv.hs > Fix using the -I, -P, or -package flags. > > Stop - hmake dependency error. > > which looks like an unportability in your code. > > > Thanks > Ian > > -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]