Commit 4c56ad36 authored by thomie's avatar thomie Committed by Ben Gamari

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
parent 5c10f5ce
......@@ -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/|/|'`
......
......@@ -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
......
......@@ -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--------------------------------------------------------------------
......
......@@ -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)
......
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
import Distribution.Simple
main = defaultMain
Name: ghc-pwd
Version: 0.1
Copyright: XXX
License: BSD3
-- XXX License-File: LICENSE
-- XXX Author:
-- XXX Maintainer:
Synopsis: XXX
Description:
XXX
build-type: Simple
cabal-version: >=1.10
Executable ghc-pwd
Default-Language: Haskell2010
Main-Is: Main.hs
Build-Depends: base >= 3 && < 5,
directory >= 1 && < 1.3
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))
......@@ -161,10 +161,12 @@ $make -C utils/checkUniques
if [ $testsuite_only -eq 0 ]; then
thisdir=`pwd`
if [ $no_clean -eq 0 ]; then
$make maintainer-clean NO_CLEAN_GMP=YES
INSTDIR=`pwd`/inst
INSTDIR="$thisdir/inst"
if [ $use_dph -eq 1 ]; then
perl -w boot --validate --required-tag=dph
......@@ -174,8 +176,6 @@ if [ $no_clean -eq 0 ]; then
./configure --prefix="$INSTDIR" $config_args
fi
thisdir=`utils/ghc-pwd/dist-boot/ghc-pwd`
echo "Validating=YES" > mk/are-validating.mk
echo "ValidateSpeed=$speed" >> mk/are-validating.mk
echo "ValidateHpc=$hpc" >> mk/are-validating.mk
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment