[project @ 2001-06-29 14:47:20 by sewardj]
[ghc-hetmet.git] / ghc / driver / PackageSrc.hs
index ad10cf0..f9651bd 100644 (file)
@@ -67,7 +67,7 @@ package_details installing
 #ifndef mingw32_TARGET_OS
        extra_libraries   = [],
 #else
-        extra_libraries   = [ "winmm" ], -- for the threadDelay timer
+        extra_libraries   = [ "winmm", "wsock32" ], -- winmm for the threadDelay timer, wsock32 for the linker
 #endif
         include_dirs   = if installing
                             then [ "$libdir/includes" ]
@@ -128,12 +128,23 @@ package_details installing
                             then [ "$libdir" ]
                             else [ ghc_src_dir cGHC_LIB_DIR ++ "/std"
                                  , ghc_src_dir cGHC_LIB_DIR ++ "/std/cbits" ],
-        hs_libraries      = [ "HSstd" ],
+
+        hs_libraries      = 
+#                           ifndef mingw32_TARGET_OS
+                            [ "HSstd" ]
+#                           else
+                            -- This splitting is the subject of a totally 
+                            -- horrible hack, which glues HSstd1 and HSstd2 
+                            -- back into HSstd for the purposes of static linking.
+                            -- See DriverState.getPackageLibraries for details.
+                            [ "HSstd1", "HSstd2" ]
+#                           endif
+                            ,
        extra_libraries   = [ "HSstd_cbits" ] ++
 #                           ifdef mingw32_TARGET_OS
-                            ["wsock32", "msvcrt"]
+                            [ "wsock32", "msvcrt" ]
 #                           else
-                            ["m"]   -- libm, that is
+                            [ "m" ]   -- libm, that is
 #                           endif
                             ,
         include_dirs   = if installing
@@ -305,7 +316,11 @@ package_details installing
                              else [ "$libdir/hslibs/util"
                                   , "$libdir/hslibs/util/cbits" ],
          hs_libraries      = [ "HSutil" ],
-        extra_libraries   = [ "HSutil_cbits" ] ++ words cLibsReadline,
+        extra_libraries   = [ "HSutil_cbits" ] 
+#ifndef mingw32_TARGET_OS
+                             ++ words cLibsReadline
+#endif
+                             ,
          include_dirs   = if installing
                              then []
                              else [ "$libdir/hslibs/util/cbits" ],
@@ -399,6 +414,46 @@ package_details installing
          extra_ld_opts  = []
         }
 #endif
+
+         ,Package {
+         name           = "xlib",
+         import_dirs    = if installing
+                             then [ "$libdir/imports/xlib" ]
+                             else [ "$libdir/hslibs/xlib" ],
+         source_dirs    = [],
+         library_dirs   = if installing
+                             then [ "$libdir" ]
+                             else [ "$libdir/hslibs/xlib"
+                                  , "$libdir/hslibs/xlib/cbits" ],
+         hs_libraries      = [ "HSxlib" ],
+        extra_libraries   = [ "HSxlib_cbits", "X11" ],
+         include_dirs   = if installing
+                             then []
+                             else [ "$libdir/hslibs/xlib/cbits" ],
+         c_includes     = [ "HsXlib.h" ],
+         package_deps   = [ "greencard" ],
+         extra_ghc_opts = [],
+         extra_cc_opts  = [],
+         extra_ld_opts  = []
+        }
+
+         ,Package {
+         name           = "HGL",
+         import_dirs    = if installing
+                             then [ "$libdir/imports/HGL" ]
+                             else [ "$libdir/hslibs/graphics/lib/x11" ],
+         source_dirs    = [],
+         library_dirs   = [],
+         hs_libraries   = [ "HSHGL" ],
+        extra_libraries= [],
+         include_dirs   = [],
+         c_includes     = [],
+         package_deps   = [ "xlib", "concurrent" ],
+         extra_ghc_opts = [],
+         extra_cc_opts  = [],
+         extra_ld_opts  = []
+        }
+
    ]
   where
        ghc_src_dir :: String -> String