X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=mk%2Fconfig.mk.in;h=edcf625e5c5b034e7a86692f2ff37025ee8f4522;hb=c80ca5708526c9aaab9344c1377404cc1cae901f;hp=a8b57fb31204b11e24fd9f4bdafc894229722a74;hpb=d84757e30d8578aaa788c26f0245c67ab482d0f9;p=ghc-hetmet.git diff --git a/mk/config.mk.in b/mk/config.mk.in index a8b57fb..edcf625 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -26,7 +26,6 @@ TOP = @hardtop@ include $(TOP)/mk/project.mk -include $(TOP)/mk/install.mk ################################################################################ # @@ -35,12 +34,9 @@ include $(TOP)/mk/install.mk ################################################################################ # BootingFromHc - build GHC and the libraries from .hc files? +# (unregisterised only) BootingFromHc = @BootingFromHc@ -# BootingFromUnregisterisedHc - treat .hc files as containing unregisterised -# rather than registerised code, i.e., disable the mangler? -BootingFromUnregisterisedHc = @BootingFromUnregisterisedHc@ - NO_INCLUDE_DEPS = NO NO_INCLUDE_PKGDATA = NO @@ -105,13 +101,9 @@ GhcProfiled=NO GhcDebugged=NO GhcLibProfiled=$(if $(filter p,$(GhcLibWays)),YES,NO) -# Build shared and/or static libs? +# Do we support shared libs? PlatformSupportsSharedLibs = $(if $(filter $(TARGETPLATFORM),i386-unknown-linux x86_64-unknown-linux),YES,NO) -ifeq "$(PlatformSupportsSharedLibs)" "YES" -BuildSharedLibs = YES -else -BuildSharedLibs = NO -endif + # ToDo later: # BuildStaticLibs=@BuildStaticLibs@ @@ -199,6 +191,9 @@ else RelocatableBuild = NO endif +# needs to be after $(RelocatableBuild) is set above +include $(TOP)/mk/install.mk + # When building bindists we set this to yes so that the binaries are as # portable as possible. BeConservative = NO @@ -224,10 +219,13 @@ ifneq "$(BootingFromHc)" "YES" GhcLibWays += p endif -ifeq "$(BuildSharedLibs)" "YES" +ifeq "$(PlatformSupportsSharedLibs)" "YES" GhcLibWays += dyn endif +# Handy way to test whether we're building shared libs or not. +BuildSharedLibs=$(strip $(if $(findstring dyn,$(GhcLibWays)),YES,NO)) + # In addition, the RTS is built in some further variations. Ways that # make sense here: # @@ -241,7 +239,6 @@ endif # debug_t : debugging ticky-ticky profiling # l : event logging # thr_l : threaded and event logging -# thr_debug_l : threaded and debugging and event logging # GhcRTSWays=l @@ -250,15 +247,12 @@ ifeq "$(BootingFromHc)" "NO" GhcRTSWays += debug endif -ifeq "$(BuildSharedLibs)" "YES" -GhcRTSWays += dyn debug_dyn $(if $(findstring NO, $(GhcUnregisterised)),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. GhcRTSWays += $(if $(findstring NO, $(GhcUnregisterised)),thr thr_debug thr_l,) GhcRTSWays += $(if $(findstring p, $(GhcLibWays)),$(if $(findstring NO, $(GhcUnregisterised)),thr_p,),) +GhcRTSWays += $(if $(findstring dyn, $(GhcLibWays)), dyn debug_dyn $(if $(findstring NO, $(GhcUnregisterised)),thr_dyn thr_debug_dyn),) # We can only build GHCi threaded if we have a threaded RTS: GhcThreaded = $(if $(findstring thr,$(GhcRTSWays)),YES,NO) @@ -508,7 +502,7 @@ INSTALL_GHC_STAGE=2 BOOTSTRAPPING_CONF = libraries/bootstrapping.conf -INPLACE_PACKAGE_CONF = $(INPLACE_LIB)/package.conf +INPLACE_PACKAGE_CONF = $(INPLACE_LIB)/package.conf.d GhcVersion = @GhcVersion@ GhcPatchLevel = @GhcPatchLevel@ @@ -516,6 +510,8 @@ GhcMajVersion = @GhcMajVersion@ GhcMinVersion = @GhcMinVersion@ ghc_ge_609 = @ghc_ge_609@ +ghc_ge_6102 = @ghc_ge_6102@ +ghc_ge_611 = @ghc_ge_611@ # Canonicalised ghc version number, used for easy (integer) version # comparisons. We must expand $(GhcMinVersion) to two digits by @@ -546,15 +542,16 @@ else endif endif -# default C compiler and linker flags -SRC_CC_OPTS = @SRC_CC_OPTS@ -SRC_LD_OPTS = @SRC_LD_OPTS@ +# C compiler and linker flags from configure (e.g. -m to select +# correct C compiler backend). +CONF_CC_OPTS = @CONF_CC_OPTS@ +CONF_LD_OPTS = @CONF_LD_OPTS@ ifeq "$(TARGETPLATFORM)" "ia64-unknown-linux" -SRC_CC_OPTS += -G0 +CONF_CC_OPTS += -G0 endif -SRC_HSC2HS_OPTS += $(addprefix --cflag=,$(filter-out -O,$(SRC_CC_OPTS))) +SRC_HSC2HS_OPTS += $(addprefix --cflag=,$(filter-out -O,$(SRC_CC_OPTS) $(CONF_CC_OPTS))) SRC_HSC2HS_OPTS += $(foreach d,$(GMP_INCLUDE_DIRS),-I$(d)) #----------------------------------------------------------------------------- @@ -775,8 +772,7 @@ endif # # The ways currently defined. # -ALL_WAYS=v p t l s mp mg debug dyn thr thr_l debug_dyn thr_dyn thr_debug_dyn thr_p thr_debug thr_debug_l debug_p thr_debug_p -USER_WAYS=a b c d e f g h j k l m n o A B +ALL_WAYS=v p t l s mp mg debug dyn thr thr_l debug_dyn thr_dyn thr_debug_dyn thr_p thr_debug debug_p thr_debug_p # # The following ways currently have treated specially, p t mg, @@ -846,10 +842,6 @@ WAY_thr_debug_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG WAY_thr_debug_p_NAME=threaded debug profiling WAY_thr_debug_p_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG -prof -# Way 'thr_debug_l': -WAY_thr_debug_l_NAME=threaded debug event logging -WAY_thr_debug_l_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG -eventlog - # Way 'dyn': build dynamic shared libraries WAY_dyn_NAME=dyn WAY_dyn_HC_OPTS=-fPIC -dynamic @@ -866,57 +858,6 @@ WAY_thr_debug_dyn_HC_OPTS=-fPIC -dynamic -optc-DTHREADED_RTS -optc-DDEBUG WAY_debug_dyn_NAME=thr_dyn WAY_debug_dyn_HC_OPTS=-fPIC -dynamic -optc-DDEBUG -# -# Add user-way configurations here: -# -WAY_A_NAME= -WAY_A_HC_OPTS= - -WAY_B_NAME= -WAY_B_HC_OPTS= - -WAY_a_NAME= -WAY_a_HC_OPTS= - -WAY_b_NAME= -WAY_b_HC_OPTS= - -WAY_c_NAME= -WAY_c_HC_OPTS= - -WAY_d_NAME= -WAY_d_HC_OPTS= - -WAY_e_NAME= -WAY_e_HC_OPTS= - -WAY_f_NAME= -WAY_f_HC_OPTS= - -WAY_g_NAME= -WAY_g_HC_OPTS= - -WAY_h_NAME= -WAY_h_HC_OPTS= - -WAY_j_NAME= -WAY_j_HC_OPTS= - -WAY_k_NAME= -WAY_k_HC_OPTS= - -WAY_l_NAME= -WAY_l_HC_OPTS= - -WAY_m_NAME= -WAY_m_HC_OPTS= - -WAY_n_NAME= -WAY_n_HC_OPTS= - -WAY_o_NAME= -WAY_o_HC_OPTS= - ################################################################################ # # 31-bit-Int Core files @@ -946,6 +887,15 @@ CONFIGURE_ARGS = @CONFIGURE_ARGS@ ################################################################################ # +# To be passed to sub-builds +# +################################################################################ + +ICONV_INCLUDE_DIRS = @ICONV_INCLUDE_DIRS@ +ICONV_LIB_DIRS = @ICONV_LIB_DIRS@ + +################################################################################ +# # Bindist testing directory # ################################################################################