summaryrefslogtreecommitdiff
path: root/rts/package.conf.in
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2009-11-03 16:05:47 +0000
committerSimon Marlow <marlowsd@gmail.com>2009-11-03 16:05:47 +0000
commit3501ac6af749ada0afcaf84f112ab2e4bf9120b9 (patch)
tree2afe6473e18531985cd92d872b45f4267c6158cb /rts/package.conf.in
parent7068f60cc7aefef514f02d5927d5abbdcd5c94d4 (diff)
downloadhaskell-3501ac6af749ada0afcaf84f112ab2e4bf9120b9.tar.gz
Fix #1185 (RTS part, also needs corresponding change to libraries/base)
GHC.Conc.ensureIOManagerIsRunning now creates an IO manager thread if one does not exist or has died/exited. Unfortunately this exposed a problem caused by the fact that we have two base packages, and hence two IO managers, in GHCi: see NOTE [io-manager-ghci] in rts/Linker.c. The workaround can go away if/when we switch to a dynamically linked GHCi.
Diffstat (limited to 'rts/package.conf.in')
-rw-r--r--rts/package.conf.in16
1 files changed, 16 insertions, 0 deletions
diff --git a/rts/package.conf.in b/rts/package.conf.in
index 087a7e9d66..131f1e389b 100644
--- a/rts/package.conf.in
+++ b/rts/package.conf.in
@@ -99,6 +99,14 @@ ld-options:
, "-u", "_base_GHCziConc_ensureIOManagerIsRunning_closure"
, "-u", "_base_GHCziConc_runSparks_closure"
, "-u", "_base_GHCziConc_runHandlers_closure"
+ , "-u", "_base_GHCziConc_pendingDelays_closure"
+ , "-u", "_base_GHCziConc_pendingEvents_closure"
+ , "-u", "_base_GHCziConc_ioManagerThread_closure"
+#if !defined(mingw32_HOST_OS)
+ , "-u", "_base_GHCziConc_prodding_closure"
+ , "-u", "_base_GHCziConc_sync_closure"
+ , "-u", "_base_GHCziConc_stick_closure"
+#endif
#else
"-u", "ghczmprim_GHCziTypes_Izh_static_info"
, "-u", "ghczmprim_GHCziTypes_Czh_static_info"
@@ -137,6 +145,14 @@ ld-options:
, "-u", "base_GHCziConc_ensureIOManagerIsRunning_closure"
, "-u", "base_GHCziConc_runSparks_closure"
, "-u", "base_GHCziConc_runHandlers_closure"
+ , "-u", "base_GHCziConc_pendingDelays_closure"
+ , "-u", "base_GHCziConc_pendingEvents_closure"
+ , "-u", "base_GHCziConc_ioManagerThread_closure"
+#if !defined(mingw32_HOST_OS)
+ , "-u", "base_GHCziConc_prodding_closure"
+ , "-u", "base_GHCziConc_sync_closure"
+ , "-u", "base_GHCziConc_stick_closure"
+#endif
#endif
/* Pick up static libraries in preference over dynamic if in earlier search