X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FMakefile;h=536f246787931bc03772cf7d888d4cf07e3e9616;hb=28a5c73a83e8f27c31cad02da07c81e4e6764303;hp=41e5fec71c03ce0d7e9faa31b1629c83871b3f6b;hpb=422a9829583338fb9f0462ba3846b1bcfe73e7de;p=ghc-hetmet.git diff --git a/compiler/Makefile b/compiler/Makefile index 41e5fec..536f246 100644 --- a/compiler/Makefile +++ b/compiler/Makefile @@ -110,15 +110,6 @@ endif endif boot :: stage_dirs -# On Windows, we can't use symbolic links for the -hi-boot files -# because GHC itself is a Mingw program and does not understand -# symbolic links. So we have to copy the files instead of link them. -# That means that if you modify a .hi-boot file in Windows, you -# have to to say 'make boot' again. -# -# PS: 'ln -s foo baz' takes 'foo' relative to the path to 'baz' -# whereas 'cp foo baz' treats the two paths independently. -# Hence the "../.." in the ln command line ifeq "$(stage)" "1" HC=$(GHC) @@ -419,11 +410,6 @@ else SRC_HC_OPTS += -DOMIT_NATIVE_CODEGEN endif -ifeq ($(GhcWithJavaGen),YES) -ALL_DIRS += javaGen -SRC_HC_OPTS += -DJAVA -endif - ifeq "$(BootingFromHc)" "YES" # HC files are always from a self-booted compiler bootstrapped = YES @@ -585,47 +571,11 @@ ifeq "$(BootingFromHc)" "YES" SRC_CC_OPTS += -D__GLASGOW_HASKELL__=$(ProjectVersionInt) endif -# Special flags for particular modules -# The standard suffix rule for compiling a Haskell file -# adds these flags to the command line - -# There used to be a -fforce-recomp flag on PrimOp, but why? -# It's an expensive module to recompile! -prelude/PrimOp_HC_OPTS = -H80m - - -main/ParsePkgConf_HC_OPTS += -fno-warn-incomplete-patterns -parser/Parser_HC_OPTS += -fno-warn-incomplete-patterns - -# Careful optimisation of the parser: we don't want to throw everything -# at it, because that takes too long and doesn't buy much, but we do want -# to inline certain key external functions, so we instruct GHC not to -# throw away inlinings as it would normally do in -O0 mode: -parser/Parser_HC_OPTS += -O0 -fno-ignore-interface-pragmas - -ifeq "$(HOSTPLATFORM)" "hppa1.1-hp-hpux9" -rename/RnMonad_HC_OPTS = -O2 -O2-for-C -endif - -# basicTypes/SrcLoc_HC_OPTS = -funbox-strict-fields - # ---- Profiling ---- #simplCore/Simplify_HC_OPTS = -auto-all #simplCore/SimplEnv_HC_OPTS = -auto-all #simplCore/SimplUtils_HC_OPTS = -auto-all -# CSE interacts badly with top-level IORefs (reportedly in DriverState and -# DriverMkDepend), causing some of them to be commoned up. We have a fix for -# this in 5.00+, but earlier versions of the compiler will need CSE turned off. -# To be on the safe side, we disable CSE in *all* modules with top-level IORefs. -ghci/InteractiveUI_HC_OPTS = -fno-cse -main/CmdLineOpts_HC_OPTS = -fno-cse -main/DriverMkDepend_HC_OPTS = -fno-cse -main/DriverPipeline_HC_OPTS = -fno-cse -main/Finder_HC_OPTS = -fno-cse -main/SysTools_HC_OPTS = -fno-cse -main/StaticFlags_HC_OPTS = -fno-cse - # The #include is vital for the via-C route, else the C # compiler doesn't realise that the stcall foreign imports are indeed # stdcall, and doesn't generate the Foo@8 name for them @@ -637,10 +587,6 @@ endif # prototype via a global option instead of a myriad of per-file OPTIONS SRC_HC_OPTS += '-\#include "cutils.h"' -ifeq "$(ghc_ge_605)" "NO" -utils/LazyUniqFM_HC_OPTS += -fallow-undecidable-instances -endif - # ---------------------------------------------------------------------------- # Generate supporting stuff for prelude/PrimOp.lhs # from prelude/primops.txt