diff --git a/ghc/compiler/Makefile b/ghc/compiler/Makefile index 293ec5cba21fba70a50ba6b14b9338d69d5a2bfd..413f59e474b2289eab57dd0f657ea7809c232ed5 100644 --- a/ghc/compiler/Makefile +++ b/ghc/compiler/Makefile @@ -1,5 +1,5 @@ # ----------------------------------------------------------------------------- -# $Id: Makefile,v 1.102 2000/10/30 09:52:14 simonpj Exp $ +# $Id: Makefile,v 1.103 2000/10/30 11:18:14 sewardj Exp $ TOP = .. include $(TOP)/mk/boilerplate.mk @@ -366,7 +366,7 @@ parser/Parser.hs : parser/Parser.y #----------------------------------------------------------------------------- # Linking -SRC_LD_OPTS += -no-link-chk +SRC_LD_OPTS += -no-link-chk -ldl ifneq "$(GhcWithHscBuiltViaC)" "YES" ifeq "$(GhcReportCompiles)" "YES" diff --git a/ghc/compiler/main/DriverPipeline.hs b/ghc/compiler/main/DriverPipeline.hs index 092b9243325a780b8f5dc3127a3ba4a841189d6d..8f1cb2b26fda2b380332a840804a36ae7dcc3922 100644 --- a/ghc/compiler/main/DriverPipeline.hs +++ b/ghc/compiler/main/DriverPipeline.hs @@ -1,5 +1,5 @@ ----------------------------------------------------------------------------- --- $Id: DriverPipeline.hs,v 1.10 2000/10/27 13:50:25 sewardj Exp $ +-- $Id: DriverPipeline.hs,v 1.11 2000/10/30 11:18:14 sewardj Exp $ -- -- GHC Driver -- @@ -413,7 +413,7 @@ run_phase Hsc basename suff input_fn output_fn -- only do this if we're eventually going to generate a .o file. -- (ToDo: do when generating .hc files too?) -- - -- Setting source_unchanged to "-fsource_unchanged" means that M.o seems + -- Setting source_unchanged to "-fsource-unchanged" means that M.o seems -- to be up to date wrt M.hs; so no need to recompile unless imports have -- changed (which the compiler itself figures out). -- Setting source_unchanged to "" tells the compiler that M.o is out of @@ -448,6 +448,7 @@ run_phase Hsc basename suff input_fn output_fn -- run the compiler! pcs <- initPersistentCompilerState result <- hscMain dyn_flags{ hscOutName = output_fn } + (source_unchanged == "-fsource-unchanged") summary Nothing -- no iface emptyModuleEnv -- HomeSymbolTable @@ -749,6 +750,7 @@ compile summary old_iface hst hit pcs = do -- run the compiler hsc_result <- hscMain dyn_flags{ hscOutName = output_fn } + (panic "compile:source_unchanged") summary old_iface hst hit pcs case hsc_result of { diff --git a/ghc/compiler/main/HscMain.lhs b/ghc/compiler/main/HscMain.lhs index b22d33dc6111851cdd8c1224c3a12cee238b5aa0..45eaed42e11b1cae0afa70aa478ef5f3ac79e668 100644 --- a/ghc/compiler/main/HscMain.lhs +++ b/ghc/compiler/main/HscMain.lhs @@ -86,6 +86,7 @@ data HscResult hscMain :: DynFlags + -> Bool -- source unchanged? -> ModSummary -- summary, including source filename -> Maybe ModIface -- old interface, if available -> HomeSymbolTable -- for home module ModDetails @@ -93,11 +94,11 @@ hscMain -> PersistentCompilerState -- IN: persistent compiler state -> IO HscResult -hscMain dflags summary maybe_old_iface hst hit pcs +hscMain dflags source_unchanged summary maybe_old_iface hst hit pcs = do { -- ????? source_unchanged :: Bool -- extracted from summary? - let source_unchanged = trace "WARNING: source_unchanged?!" False - ; + --let source_unchanged = trace "WARNING: source_unchanged?!" False + --; putStrLn "checking old iface ..."; (pcs_ch, check_errs, (recomp_reqd, maybe_checked_iface)) <- checkOldIface dflags hit hst pcs (ms_mod summary)