X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=mk%2Fconfig.mk.in;h=f42e5fa76416cb22ba993977a0765bae572fa0b0;hb=c29b47b74c7625c66d81405907e303ea66bdb061;hp=f3a23243ff5e25ed3dae9e2013218b6f4aec1851;hpb=9412e62942ebab0599c7fb0b358a9d4869647b67;p=ghc-hetmet.git diff --git a/mk/config.mk.in b/mk/config.mk.in index f3a2324..f42e5fa 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -242,6 +242,11 @@ GhcStage3HcOpts=-O2 GhcProfiled=NO GhcDebugged=NO +# Build shared and/or static libs? +BuildSharedLibs=@BuildSharedLibs@ +# ToDo later: +# BuildStaticLibs=@BuildStaticLibs@ + # Build a compiler that will build *unregisterised* libraries and # binaries by default. Unregisterised code is supposed to compile and # run without any support for architecture-specific assembly mangling, @@ -362,6 +367,10 @@ else GhcLibWays=p endif +ifeq "$(BuildSharedLibs)" "YES" +GhcLibWays += dyn +endif + # In addition, the RTS is built in some further variations. Ways that # make sense here: # @@ -381,6 +390,10 @@ ifeq "$(BootingFromHc)" "NO" GhcRTSWays += debug endif +ifeq "$(BuildSharedLibs)" "YES" +GhcRTSWays += debug_dyn thr_dyn thr_debug_dyn +endif + # Want the threaded versions unless we're unregisterised # Defer the check until later by using $(if..), because GhcUnregisterised might # be set in build.mk, which hasn't been read yet. @@ -625,10 +638,7 @@ ifacedir = $(libdir) # (NOTE: configure script setting is ignored). libexecdir = $(libdir) -# This is a bit of a lie, as this is a wrapper rather than the program -# itself. However, it means that we don't have to worry about Windows -# and non-Windows having different extensions. -GHC_PKG_PROG = $(FPTOOLS_TOP_ABS)/$(GHC_PKG_DIR_REL)/ghc-pkg-inplace +GHC_PKG_PROG = $(FPTOOLS_TOP_ABS)/$(GHC_PKG_DIR_REL)/install-inplace/bin/ghc-pkg #----------------------------------------------------------------------------- # install configuration @@ -809,7 +819,6 @@ GHC_TOUCHY_PGM = touchy$(exeext) GHC_MANGLER_PGM = ghc-asm GHC_SPLIT_PGM = ghc-split GHC_SYSMAN_PGM = SysMan -GHC_PKG_INPLACE_PGM = ghc-pkg-inplace GHC_GENPRIMOP_PGM = genprimopcode GHC_GENAPPLY_PGM = genapply GHC_MKDEPENDC_PGM = mkdependC @@ -834,7 +843,7 @@ HSC2HS_INPLACE = $(GHC_HSC2HS_DIR)/install-inplace/bin/$(GHC_HSC2HS_INPLACE_PGM MANGLER = $(GHC_MANGLER_DIR)/$(GHC_MANGLER_PGM) SPLIT = $(GHC_SPLIT_DIR)/$(GHC_SPLIT_PGM) SYSMAN = $(GHC_SYSMAN_DIR)/$(GHC_SYSMAN_PGM) -GHC_PKG_INPLACE = $(GHC_PKG_DIR)/$(GHC_PKG_INPLACE_PGM) +GHC_PKG_INPLACE = $(GHC_PKG_PROG) GENPRIMOP = $(GHC_GENPRIMOP_DIR)/$(GHC_GENPRIMOP_PGM) GENAPPLY = $(GHC_GENAPPLY_DIR)/$(GHC_GENAPPLY_PGM) MKDEPENDC = $(GHC_MKDEPENDC_DIR)/$(GHC_MKDEPENDC_PGM) @@ -872,9 +881,9 @@ NHC = @NHC@ # tree). We can refer to "this ghc" as $(GHC_INPLACE): GHC_INPLACE = $(GHC_STAGE1) -GHC_STAGE1 = $(GHC_COMPILER_DIR_ABS)/stage1-inplace/bin/ghc -GHC_STAGE2 = $(GHC_COMPILER_DIR_ABS)/stage2-inplace/bin/ghc -GHC_STAGE3 = $(GHC_COMPILER_DIR_ABS)/stage3-inplace/bin/ghc +GHC_STAGE1 = $(GHC_COMPILER_DIR_ABS)/stage1-inplace/ghc +GHC_STAGE2 = $(GHC_COMPILER_DIR_ABS)/stage2-inplace/ghc +GHC_STAGE3 = $(GHC_COMPILER_DIR_ABS)/stage3-inplace/ghc # XXX All those used to have -no-user-package-conf, but then we can't # pass them to Cabal