Skip to content

Commit

Permalink
Merge branch 'master' into overlapping-tyfams
Browse files Browse the repository at this point in the history
  • Loading branch information
Richard Eisenberg committed May 27, 2013
2 parents 0276b49 + 20d8e8c commit 4af50af
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 17 deletions.
4 changes: 2 additions & 2 deletions Makefile
Expand Up @@ -45,7 +45,7 @@ endif
include mk/custom-settings.mk

# No need to update makefiles for these targets:
REALGOALS=$(filter-out binary-dist binary-dist-prep bootstrapping-files framework-pkg clean clean_% distclean maintainer-clean show help test fulltest,$(MAKECMDGOALS))
REALGOALS=$(filter-out binary-dist binary-dist-prep bootstrapping-files framework-pkg clean clean_% distclean maintainer-clean show echo help test fulltest,$(MAKECMDGOALS))

# configure touches certain files even if they haven't changed. This
# can mean a lot of unnecessary recompilation after a re-configure, so
Expand Down Expand Up @@ -93,7 +93,7 @@ clean distclean maintainer-clean:
$(filter clean_%, $(MAKECMDGOALS)) : clean_% :
$(MAKE) -r --no-print-directory -f ghc.mk $@ CLEANING=YES

bootstrapping-files show:
bootstrapping-files show echo:
$(MAKE) -r --no-print-directory -f ghc.mk $@

ifeq "$(darwin_TARGET_OS)" "1"
Expand Down
7 changes: 6 additions & 1 deletion compiler/main/DynFlags.hs
Expand Up @@ -1188,7 +1188,12 @@ doDynamicToo dflags0 = let dflags1 = addWay' WayDyn dflags0
-- | Used by 'GHC.newSession' to partially initialize a new 'DynFlags' value
initDynFlags :: DynFlags -> IO DynFlags
initDynFlags dflags = do
refCanGenerateDynamicToo <- newIORef True
let -- We can't build with dynamic-too on Windows, as labels before
-- the fork point are different depending on whether we are
-- building dynamically or not.
platformCanGenerateDynamicToo
= platformOS (targetPlatform dflags) /= OSMinGW32
refCanGenerateDynamicToo <- newIORef platformCanGenerateDynamicToo
refFilesToClean <- newIORef []
refDirsToClean <- newIORef Map.empty
refFilesToNotIntermediateClean <- newIORef []
Expand Down
15 changes: 1 addition & 14 deletions compiler/main/TidyPgm.lhs
Expand Up @@ -1180,20 +1180,7 @@ hasCafRefs dflags this_pkg this_mod p arity expr
| otherwise = NoCafRefs
where
mentions_cafs = isFastTrue (cafRefsE dflags p expr)
is_dynamic_name n = if gopt Opt_BuildDynamicToo dflags
then -- If we're building the dynamic way too,
-- then we need to check whether it's a
-- dynamic name there too. Note that this
-- means that the vanila code is more
-- pessimistic on Windows when -dynamic-too
-- is used, but the alternative is that
-- -dynamic-too is unusable on Windows
-- as even the interfaces in the integer
-- package don't match.
is_dynamic_name' dflags n ||
is_dynamic_name' (doDynamicToo dflags) n
else is_dynamic_name' dflags n
is_dynamic_name' dflags' = isDllName dflags' this_pkg this_mod
is_dynamic_name = isDllName dflags this_pkg this_mod
is_caf = not (arity > 0 || rhsIsStatic (targetPlatform dflags) is_dynamic_name expr)
-- NB. we pass in the arity of the expression, which is expected
Expand Down
8 changes: 8 additions & 0 deletions ghc.mk
Expand Up @@ -110,6 +110,14 @@ comma=,
show:
@echo '$(VALUE)="$($(VALUE))"'

# echo is used by the nightly builders to query the build system for
# information.
# Using printf means that we don't get a trailing newline. We escape
# backslashes and double quotes in the string to protect them from the
# shell, and percent signs to protect them from printf.
echo:
@printf "$(subst %,%%,$(subst ",\",$(subst \,\\\\,$($(VALUE)))))"

# -----------------------------------------------------------------------------
# Include subsidiary build-system bits

Expand Down

0 comments on commit 4af50af

Please sign in to comment.