X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Flib%2Fstd%2FMakefile;h=02e279cb8c1eff005b90eb6cf51bafa0e4c89f45;hb=192b2bc9a0e943438faff225b0f82a8d7804a733;hp=0accdab54e4f4fc57ece5385f57d5e273b13969a;hpb=ae21acc5e101aca5a1163c1e0d85705fdfe5147f;p=ghc-hetmet.git diff --git a/ghc/lib/std/Makefile b/ghc/lib/std/Makefile index 0accdab..02e279c 100644 --- a/ghc/lib/std/Makefile +++ b/ghc/lib/std/Makefile @@ -23,7 +23,7 @@ endif # LIBRARY = libHS$(_way).a -HS_SRCS = $(wildcard *.lhs) +HS_SRCS = $(wildcard *.lhs) HS_OBJS = $(HS_SRCS:.lhs=.$(way_)o) LIBOBJS = $(HS_OBJS) HS_IFACES= $(HS_SRCS:.lhs=.$(way_)hi) PrelGHC.$(way_)hi @@ -32,7 +32,10 @@ HS_IFACES= $(HS_SRCS:.lhs=.$(way_)hi) PrelGHC.$(way_)hi #----------------------------------------------------------------------------- # Setting the GHC compile options -SRC_HC_OPTS += -recomp -cpp -fglasgow-exts -fvia-C -Rghc-timing $(GhcLibHcOpts) +SRC_HC_OPTS += -recomp -cpp -fglasgow-exts -fvia-C -Rghc-timing $(GhcLibHcOpts) -fcompiling-prelude +ifneq "$(way)" "dll" +SRC_HC_OPTS += -static +endif # # Profiling options @@ -47,28 +50,27 @@ SRC_HC_OPTS += -hisuf $(way_)hi endif # per-module flags -PrelArr_HC_OPTS += -monly-2-regs -Directory_HC_OPTS += -monly-3-regs -Time_HC_OPTS += -monly-3-regs -H16m +PrelArrExtra_HC_OPTS += -monly-2-regs +Directory_HC_OPTS += -monly-3-regs +Time_HC_OPTS += -monly-3-regs -# Far too much heap is needed to compile PrelNum with -O at the +# Far too much heap is needed to compile PrelNumExtra with -O at the # moment, but there you go.. -PrelNum_HC_OPTS += -H30m -# Note: this option has to go in the Makefile rather than in an -# OPTIONS line in the source file. The reason being that we want -# to override the SRC_HC_OPTS of -O, and anything option coming -# from the Makefile overrides what's in OPTIONS lines. (mumble_HC_OPTS -# does override SRC_HC_OPTS settings) -PrelUnsafe_HC_OPTS += -Onot +PrelNumExtra_HC_OPTS += -H34m -K2m +PrelPack_HC_OPTS += -K4m PrelBase_HC_OPTS += -H12m -PrelRead_HC_OPTS += -H12m -PrelTup_HC_OPTS += -H12m +PrelRead_HC_OPTS += -H20m +PrelTup_HC_OPTS += -H12m -K2m +PrelNum_HC_OPTS += -H12m -K4m PrelArr_HC_OPTS += -H8m -PrelHandle_HC_OPTS += -H12m -Time_HC_OPTS += -H8m +PrelHandle_HC_OPTS += -H20m +Time_HC_OPTS += -H24m -K2m Complex_HC_OPTS += -H10m IO_HC_OPTS += -H12m +PrelMain_HC_OPTS += -fno-prune-tydecls # avoids an apparent bug; ToDo +List_HC_OPTS += -H8m +Directory_HC_OPTS += -H8m #----------------------------------------------------------------------------- # Dependency generation @@ -83,6 +85,17 @@ PrelGHC.$(way_)hi : PrelGHC.hi-boot boot :: PrelGHC.hi $(foreach way, $(WAYS), PrelGHC.$(way)_hi) +DLL_NAME = HSprel.dll +DLL_IMPLIB_NAME = libHS_imp.a +SRC_BLD_DLL_OPTS += --export-all --output-def=HSprel.def +SRC_BLD_DLL_OPTS += -lwinmm -lHSrts_imp -lHS_cbits_imp -lgmp -L. -L../../rts/gmp -L../../rts -Lcbits + + +ifeq "$(way)" "dll" +HS_SRCS := $(filter-out PrelMain.lhs, $(HS_SRCS)) +endif + + #----------------------------------------------------------------------------- # Installation; need to install .hi files as well as libraries # @@ -101,8 +114,3 @@ INSTALL_LIBS += $(LIBRARY) INSTALL_DATAS += $(HS_IFACES) include $(TOP)/mk/target.mk - -glaExts/PackedString_HC_OPTS += -monly-3-regs -concurrent/Parallel_HC_OPTS += -fglasgow-exts -glaExts/Int_HC_OPTS += -H8m -glaExts/Word_HC_OPTS += -H8m