-----------------------------------------------------------------------------
--- $Id: DriverState.hs,v 1.55 2001/08/15 09:58:00 sewardj Exp $
+-- $Id: DriverState.hs,v 1.56 2001/09/04 16:35:02 sewardj Exp $
--
-- Settings for the driver
--
-- different route (in InteractiveUI.linkPackage).
-- See driver/PackageSrc.hs for the HSstd1/HSstd2 split definition.
-- THIS IS A STRICTLY TEMPORARY HACK (famous last words ...)
+ -- JRS 04 Sept 01: Same appalling hack for HSwin32[1,2]
hACK libs
# ifndef mingw32_TARGET_OS
= libs
# else
= if "HSstd1" `elem` libs && "HSstd2" `elem` libs
then "HSstd" : filter ((/= "HSstd").(take 5)) libs
- else libs
+ else
+ if "HSwin321" `elem` libs && "HSwin322" `elem` libs
+ then "HSwin32" : filter ((/= "HSwin32").(take 7)) libs
+ else
+ libs
# endif
getPackageExtraGhcOpts :: IO [String]
library_dirs = if installing
then [ "$libdir" ]
else [ "$libdir/hslibs/win32" ],
- hs_libraries = [ "HSwin32" ],
- extra_libraries = [ "user32", "gdi32", "winmm" ],
+ hs_libraries = [ "HSwin321", "HSwin322" ],
+ extra_libraries = [ "user32", "gdi32", "winmm",
+ "kernel32", "advapi32" ],
include_dirs = [],
c_includes = [], -- ???
package_deps = [ "lang" ], -- greencard now built in
all :: $(GHCI_LIBRARY)
+# How come GNU make doesn't support ands and ors? Duh.
ifneq "$(GHCI_LIBRARY)" "HSstd.o"
+ifneq "$(GHCI_LIBRARY)" "HSwin32.o"
# An annoying gotcha is that the Prelude is a bit special,
# for reasons described in ghc/lib/std/Makefile.
# So we only put in this standard rule for packages other than std
# We check for GHCI_LIBRARY being HSstd.o rather than
# PACKAGE being std, because we want to still use the boilerplate rule
# for cbits.
+# JRS 04 Sept 01: The exact same deal applies to hslibs/HSwin32.o.
$(GHCI_LIBRARY) :: $(LIBOBJS)
ld -r -x -o $@ $(LIBOBJS) $(STUBOBJS)
-endif
+endif # GHCI_LIBRARY != "HSwin32.o"
+endif # GHCI_LIBRARY != "HSstd.o"
endif # GhcWithInterpreter
endif # way
-endif # GHCI_LIBRARY
+endif # GHCI_LIBRARY != ""
#----------------------------------------