commit 4c56ad36ee0d1f8b6f1b2bc0d8fff1c9acd1a389 Author: Thomas Miedema Date: Mon Jan 4 18:29:49 2016 +0100 Build system: delete ghc-pwd On Windows, with msys2, `pwd` works (as can be seen by the use of `pwd` that slipped into the validate script), so there is really no need for `ghc-pwd` anymore. Test Plan: try it Reviewers: austin, bgamari, Phyx Reviewed By: Phyx Subscribers: Phyx, erikd Differential Revision: https://phabricator.haskell.org/D1731 diff --git a/aclocal.m4 b/aclocal.m4 index 8e97726..0c93de4 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1737,33 +1737,9 @@ AC_DEFUN([FP_CURSES], # Calculate absolute path to build tree # -------------------------------------------------------------- -AC_DEFUN([FP_INTREE_GHC_PWD],[ -AC_MSG_NOTICE(Building in-tree ghc-pwd) - dnl This would be - dnl make -C utils/ghc-pwd clean && make -C utils/ghc-pwd - dnl except we don't want to have to know what make is called. Sigh. - rm -rf utils/ghc-pwd/dist-boot - mkdir utils/ghc-pwd/dist-boot - dnl If special linker flags are needed to build things, then allow - dnl the user to pass them in via LDFLAGS. - changequote(, )dnl - GHC_LDFLAGS=`perl -e 'foreach (@ARGV) { print "-optl$_ " }' -- $LDFLAGS` - changequote([, ])dnl - if ! "$WithGhc" $GHC_LDFLAGS -v0 -no-user-$GHC_PACKAGE_DB_FLAG -hidir utils/ghc-pwd/dist-boot -odir utils/ghc-pwd/dist-boot -stubdir utils/ghc-pwd/dist-boot --make utils/ghc-pwd/Main.hs -o utils/ghc-pwd/dist-boot/ghc-pwd - then - AC_MSG_ERROR([Building ghc-pwd failed]) - fi - - GHC_PWD=utils/ghc-pwd/dist-boot/ghc-pwd -]) - -AC_DEFUN([FP_BINDIST_GHC_PWD],[ - GHC_PWD=utils/ghc-pwd/dist-install/build/tmp/ghc-pwd-bindist -]) - AC_DEFUN([FP_FIND_ROOT],[ AC_MSG_CHECKING(for path to top of build tree) - hardtop=`$GHC_PWD` + hardtop=`pwd` dnl Remove common automounter nonsense hardtop=`echo $hardtop | sed 's|^/tmp_mnt.*\(/local/.*\)$|\1|' | sed 's|^/tmp_mnt/|/|'` diff --git a/configure.ac b/configure.ac index 042b417..ab82bb0 100644 --- a/configure.ac +++ b/configure.ac @@ -26,6 +26,8 @@ AC_INIT([The Glorious Glasgow Haskell Compilation System], [8.1], [glasgow-haske # checkout), then we ship a file 'VERSION' containing the full version # when the source distribution was created. +FP_FIND_ROOT + if test ! -f mk/config.h.in; then echo "mk/config.h.in doesn't exist: perhaps you haven't run 'perl boot'?" exit 1 @@ -258,10 +260,6 @@ AC_ARG_WITH(hc, ) AC_SUBST(WithHc) -# This uses GHC, so put it after the "GHC is required" check above: -FP_INTREE_GHC_PWD -FP_FIND_ROOT - fail() { echo >&2 echo "$1" >&2 diff --git a/distrib/configure.ac.in b/distrib/configure.ac.in index 0f68a52..4d57cd8 100644 --- a/distrib/configure.ac.in +++ b/distrib/configure.ac.in @@ -6,7 +6,6 @@ dnl AC_INIT([The Glorious Glasgow Haskell Compilation System], [@ProjectVersion@], [glasgow-haskell-bugs@haskell.org], [ghc]) -FP_BINDIST_GHC_PWD FP_FIND_ROOT dnl-------------------------------------------------------------------- diff --git a/ghc.mk b/ghc.mk index ba708a1..3ccc496 100644 --- a/ghc.mk +++ b/ghc.mk @@ -516,7 +516,6 @@ $(foreach pkg,$(PACKAGES_STAGE1),$(eval $(call fixed_pkg_dep,$(pkg),dist-install # the stage1 packages, so we have to make sure those packages get configured # and registered before we can start with these. Note that they don't depend on # eachother, so we can configure them in parallel. -utils/ghc-pwd/dist-install/package-data.mk: $(fixed_pkg_prev) utils/ghc-cabal/dist-install/package-data.mk: $(fixed_pkg_prev) utils/hpc/dist-install/package-data.mk: $(fixed_pkg_prev) utils/ghc-pkg/dist-install/package-data.mk: $(fixed_pkg_prev) @@ -660,7 +659,6 @@ BUILD_DIRS += utils/testremove BUILD_DIRS += utils/ghctags BUILD_DIRS += utils/check-api-annotations BUILD_DIRS += utils/dll-split -BUILD_DIRS += utils/ghc-pwd BUILD_DIRS += utils/ghc-cabal BUILD_DIRS += utils/hpc BUILD_DIRS += utils/runghc @@ -1020,7 +1018,6 @@ $(eval $(call bindist-list,.,\ mk/config.mk.in \ $(INPLACE_BIN)/mkdirhier \ utils/ghc-cabal/dist-install/build/tmp/ghc-cabal \ - utils/ghc-pwd/dist-install/build/tmp/ghc-pwd \ $(BINDIST_WRAPPERS) \ $(BINDIST_PERL_SOURCES) \ $(BINDIST_LIBS) \ @@ -1366,9 +1363,6 @@ distclean : clean # Internal files generated by ./configure for itself. $(call removeFiles,config.cache config.status config.log) -# ./configure build ghc-pwd in utils/ghc-pwd/dist-boot, so clean it up. - $(call removeTrees,utils/ghc-pwd/dist-boot) - # The root Makefile makes .old versions of some files that configure # generates, so we clean those too. $(call removeFiles,mk/config.mk.old) diff --git a/utils/ghc-pwd/Main.hs b/utils/ghc-pwd/Main.hs deleted file mode 100644 index 91a5606..0000000 --- a/utils/ghc-pwd/Main.hs +++ /dev/null @@ -1,22 +0,0 @@ - -module Main where - -import System.Directory -import System.Environment -import System.Exit -import System.IO - -main :: IO () -main = do - args <- getArgs - case args of - [] -> do d <- getCurrentDirectory - putStr $ map forwardifySlashes d - _ -> do hPutStrLn stderr ("Bad args: " ++ show args) - hPutStrLn stderr "Usage: ghc-pwd" - exitFailure - -forwardifySlashes :: Char -> Char -forwardifySlashes '\\' = '/' -forwardifySlashes c = c - diff --git a/utils/ghc-pwd/Setup.hs b/utils/ghc-pwd/Setup.hs deleted file mode 100644 index 9a994af..0000000 --- a/utils/ghc-pwd/Setup.hs +++ /dev/null @@ -1,2 +0,0 @@ -import Distribution.Simple -main = defaultMain diff --git a/utils/ghc-pwd/ghc.mk b/utils/ghc-pwd/ghc.mk deleted file mode 100644 index ac6bc76..0000000 --- a/utils/ghc-pwd/ghc.mk +++ /dev/null @@ -1,9 +0,0 @@ - -utils/ghc-pwd_USES_CABAL = YES -utils/ghc-pwd_PACKAGE = ghc-pwd -utils/ghc-pwd_dist-install_INSTALL_INPLACE = YES -utils/ghc-pwd_dist-install_WANT_BINDIST_WRAPPER = YES -utils/ghc-pwd_dist-install_PROGNAME = ghc-pwd - -$(eval $(call build-prog,utils/ghc-pwd,dist-install,1)) -