summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2022-08-05 22:29:57 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2022-08-25 20:05:31 -0400
commit6fd9b0a1c6b076ef1977db1a2ce8b9505b9a3254 (patch)
tree862b1a0b8ac78ebddea1cbc4eee597ca4acbb241 /utils
parent822b0302f3406bb5e916d72c36566322ba900e76 (diff)
downloadhaskell-6fd9b0a1c6b076ef1977db1a2ce8b9505b9a3254.tar.gz
Drop make build system
Here we at long last remove the `make`-based build system, it having been replaced with the Shake-based Hadrian build system. Users are encouraged to refer to the documentation in `hadrian/doc` and this [1] blog post for details on using Hadrian. Closes #17527. [1] https://www.haskell.org/ghc/blog/20220805-make-to-hadrian.html
Diffstat (limited to 'utils')
-rw-r--r--utils/check-exact/ghc.mk18
-rw-r--r--utils/check-ppr/ghc.mk18
-rw-r--r--utils/compare_sizes/ghc.mk9
-rw-r--r--utils/count-deps/ghc.mk18
-rw-r--r--utils/deriveConstants/ghc.mk20
-rw-r--r--utils/gen-dll/ghc.mk19
-rw-r--r--utils/genapply/ghc.mk30
-rw-r--r--utils/genprimopcode/ghc.mk19
-rw-r--r--utils/ghc-cabal/ghc.mk97
-rw-r--r--utils/ghc-pkg/ghc.mk98
-rw-r--r--utils/hp2ps/ghc.mk42
-rw-r--r--utils/hpc/ghc.mk21
-rw-r--r--utils/iserv/ghc.mk113
-rw-r--r--utils/mkdirhier/ghc.mk22
-rw-r--r--utils/remote-iserv/ghc.mk113
-rw-r--r--utils/runghc/ghc.mk43
-rw-r--r--utils/testremove/ghc.mk9
-rw-r--r--utils/touchy/ghc.mk18
-rw-r--r--utils/unlit/ghc.mk34
19 files changed, 0 insertions, 761 deletions
diff --git a/utils/check-exact/ghc.mk b/utils/check-exact/ghc.mk
deleted file mode 100644
index f8ad02948b..0000000000
--- a/utils/check-exact/ghc.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/check-exact_USES_CABAL = YES
-utils/check-exact_PACKAGE = check-exact
-utils/check-exact_dist-install_PROGNAME = check-exact
-utils/check-exact_dist-install_INSTALL = NO
-utils/check-exact_dist-install_INSTALL_INPLACE = YES
-$(eval $(call build-prog,utils/check-exact,dist-install,2))
diff --git a/utils/check-ppr/ghc.mk b/utils/check-ppr/ghc.mk
deleted file mode 100644
index 08e4062256..0000000000
--- a/utils/check-ppr/ghc.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/check-ppr_USES_CABAL = YES
-utils/check-ppr_PACKAGE = check-ppr
-utils/check-ppr_dist-install_PROGNAME = check-ppr
-utils/check-ppr_dist-install_INSTALL = NO
-utils/check-ppr_dist-install_INSTALL_INPLACE = YES
-$(eval $(call build-prog,utils/check-ppr,dist-install,2))
diff --git a/utils/compare_sizes/ghc.mk b/utils/compare_sizes/ghc.mk
deleted file mode 100644
index d659a5e6d8..0000000000
--- a/utils/compare_sizes/ghc.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-
-utils/compare_sizes_USES_CABAL = YES
-utils/compare_sizes_PACKAGE = compareSizes
-utils/compare_sizes_MODULES = Main
-utils/compare_sizes_dist-install_PROGNAME = compareSizes
-utils/compare_sizes_dist-install_INSTALL_INPLACE = NO
-
-$(eval $(call build-prog,utils/compare_sizes,dist-install,1))
-
diff --git a/utils/count-deps/ghc.mk b/utils/count-deps/ghc.mk
deleted file mode 100644
index 45259efee6..0000000000
--- a/utils/count-deps/ghc.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/count-deps_USES_CABAL = YES
-utils/count-deps_PACKAGE = count-deps
-utils/count-deps_dist-install_PROGNAME = count-deps
-utils/count-deps_dist-install_INSTALL = NO
-utils/count-deps_dist-install_INSTALL_INPLACE = YES
-$(eval $(call build-prog,utils/count-deps,dist-install,2))
diff --git a/utils/deriveConstants/ghc.mk b/utils/deriveConstants/ghc.mk
deleted file mode 100644
index 98c8633666..0000000000
--- a/utils/deriveConstants/ghc.mk
+++ /dev/null
@@ -1,20 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009-2012 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/deriveConstants_USES_CABAL = YES
-utils/deriveConstants_PACKAGE = deriveConstants
-utils/deriveConstants_dist_PROGNAME = deriveConstants
-utils/deriveConstants_dist_INSTALL = NO
-utils/deriveConstants_dist_INSTALL_INPLACE = YES
-
-$(eval $(call build-prog,utils/deriveConstants,dist,0))
-
diff --git a/utils/gen-dll/ghc.mk b/utils/gen-dll/ghc.mk
deleted file mode 100644
index 77c75f07ed..0000000000
--- a/utils/gen-dll/ghc.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/gen-dll_USES_CABAL = YES
-utils/gen-dll_PACKAGE = gen-dll
-utils/gen-dll_dist_PROGNAME = gen-dll
-utils/gen-dll_dist_INSTALL = NO
-utils/gen-dll_dist_INSTALL_INPLACE = YES
-
-$(eval $(call build-prog,utils/gen-dll,dist,0))
diff --git a/utils/genapply/ghc.mk b/utils/genapply/ghc.mk
deleted file mode 100644
index 5721c9069a..0000000000
--- a/utils/genapply/ghc.mk
+++ /dev/null
@@ -1,30 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/genapply_USES_CABAL = YES
-utils/genapply_PACKAGE = genapply
-utils/genapply_dist_PROGNAME = genapply
-utils/genapply_dist_INSTALL = NO
-utils/genapply_dist_INSTALL_INPLACE = YES
-
-utils/dist/package-data.mk : $(includes_1_H_PLATFORM)
-utils/dist/package-data.mk : $(includes_1_H_CONFIG)
-
-ifeq "$(GhcUnregisterised)" "YES"
-utils/genapply_CONFIGURE_OPTS = --flag unregisterised
-endif
-
-$(eval $(call build-prog,utils/genapply,dist,0))
-
-# Purposely do the wrong stage for HOST := TARGET hack.
-# See Note [Genapply target as host for RTS macros].
-utils/genapply_dist_CC_OPTS += $(addprefix -Irts/include,$(includes_dist-install_DIST_INCLUDE_DIRS))
diff --git a/utils/genprimopcode/ghc.mk b/utils/genprimopcode/ghc.mk
deleted file mode 100644
index 47250711a9..0000000000
--- a/utils/genprimopcode/ghc.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/genprimopcode_USES_CABAL = YES
-utils/genprimopcode_PACKAGE = genprimopcode
-utils/genprimopcode_dist_PROGNAME = genprimopcode
-utils/genprimopcode_dist_INSTALL = NO
-utils/genprimopcode_dist_INSTALL_INPLACE = YES
-
-$(eval $(call build-prog,utils/genprimopcode,dist,0))
diff --git a/utils/ghc-cabal/ghc.mk b/utils/ghc-cabal/ghc.mk
deleted file mode 100644
index 035ee8adaa..0000000000
--- a/utils/ghc-cabal/ghc.mk
+++ /dev/null
@@ -1,97 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-# Bootstrapping ghc-cabal
-
-# Euch, hideous hack:
-# XXX This should be in a different Makefile
-CABAL_DOTTED_VERSION := $(shell grep "^version:" libraries/Cabal/Cabal/Cabal.cabal | sed "s/^version: *//")
-CABAL_VERSION := $(subst .,$(comma),$(CABAL_DOTTED_VERSION))
-CABAL_CONSTRAINT := --constraint="Cabal == $(CABAL_DOTTED_VERSION)"
-
-# Starting with GHC 8.0 we make use of GHC's native ability to
-# generate MIN_VERSION_<pkgname>() CPP macros. The generation of those
-# macros is triggered by `-hide-all-packages`, so we have to explicitly
-# enumerate all packages we need in scope.
-CABAL_BUILD_DEPS := ghc-prim base binary array transformers time containers bytestring deepseq process pretty directory filepath template-haskell text
-ifeq "$(Windows_Host)" "YES"
-CABAL_BUILD_DEPS += Win32
-else
-CABAL_BUILD_DEPS += unix
-endif
-
-ghc-cabal_DIST_BINARY_NAME = ghc-cabal$(exeext0)
-ghc-cabal_DIST_BINARY = utils/ghc-cabal/dist/build/tmp/$(ghc-cabal_DIST_BINARY_NAME)
-ghc-cabal_INPLACE = inplace/bin/$(ghc-cabal_DIST_BINARY_NAME)
-
-ifneq "$(BINDIST)" "YES"
-$(ghc-cabal_INPLACE) : $(ghc-cabal_DIST_BINARY) | $$(dir $$@)/.
- "$(CP)" $< $@
-
-CABAL_LEXER_DEP := libraries/Cabal/Cabal-syntax/src/Distribution/Fields/Lexer.hs
-
-$(ghc-cabal_DIST_BINARY): $(wildcard libraries/Cabal/Cabal/src/Distribution/*/*/*.hs)
-$(ghc-cabal_DIST_BINARY): $(wildcard libraries/Cabal/Cabal/src/Distribution/*/*.hs)
-$(ghc-cabal_DIST_BINARY): $(wildcard libraries/Cabal/Cabal/src/Distribution/*.hs)
-$(ghc-cabal_DIST_BINARY): $(wildcard libraries/Cabal/Cabal-syntax/src/Distribution/*.hs)
-
-# N.B. Compile with -O0 since this is not a performance-critical executable
-# and the Cabal takes nearly twice as long to build with -O1. See #16817.
-$(ghc-cabal_DIST_BINARY): $(CABAL_LEXER_DEP) utils/ghc-cabal/Main.hs $(TOUCH_DEP) | $$(dir $$@)/. bootstrapping/.
- "$(GHC)" $(SRC_HC_OPTS) \
- $(addprefix -optc, $(SRC_CC_OPTS) $(CONF_CC_OPTS_STAGE0)) \
- $(addprefix -optl, $(SRC_LD_OPTS) $(CONF_GCC_LINKER_OPTS_STAGE0)) \
- -O0 \
- -XHaskell2010 \
- -hide-all-packages \
- -package-env - \
- $(addprefix -package , $(CABAL_BUILD_DEPS)) \
- --make utils/ghc-cabal/Main.hs -o $@ \
- -no-user-package-db \
- -Wall -fno-warn-unused-imports -fno-warn-warnings-deprecations \
- -DCABAL_VERSION=$(CABAL_VERSION) \
- -DBOOTSTRAPPING \
- -odir bootstrapping \
- -hidir bootstrapping \
- $(CABAL_LEXER_DEP) \
- -ilibraries/Cabal/Cabal/src \
- -ilibraries/Cabal/Cabal-syntax/src \
- -ilibraries/binary/src \
- -ilibraries/filepath \
- -ilibraries/hpc \
- -ilibraries/mtl \
- -ilibraries/parsec/src \
- $(utils/ghc-cabal_dist_EXTRA_HC_OPTS) \
- $(EXTRA_HC_OPTS)
- "$(TOUCH_CMD)" $@
-endif
-
-# touch is required, because otherwise if mkdirhier is newer, we
-# repeatedly rebuild ghc-cabal.
-
-$(eval $(call clean-target,utils/ghc-cabal,dist,\
- utils/ghc-cabal/dist bootstrapping))
-
-$(eval $(call all-target,utils/ghc-cabal,$(ghc-cabal_INPLACE)))
-
-# -----------------------------------------------------------------------------
-# Now make another copy that goes in bindists. This needs to be built
-# with the in-tree compiler.
-
-utils/ghc-cabal_USES_CABAL = YES
-utils/ghc-cabal_PACKAGE = ghc-cabal
-utils/ghc-cabal_dist-install_PROGNAME = ghc-cabal
-utils/ghc-cabal_dist-install_INSTALL_INPLACE = NO
-utils/ghc-cabal_dist-install_WANT_BINDIST_WRAPPER = YES
-utils/ghc-cabal_dist-install_MODULES = Main
-
-$(eval $(call build-prog,utils/ghc-cabal,dist-install,1))
diff --git a/utils/ghc-pkg/ghc.mk b/utils/ghc-pkg/ghc.mk
deleted file mode 100644
index 029d0b86e6..0000000000
--- a/utils/ghc-pkg/ghc.mk
+++ /dev/null
@@ -1,98 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009-2012 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-# -----------------------------------------------------------------------------
-# Bootstrapping ghc-pkg
-
-utils/ghc-pkg_PACKAGE = ghc-pkg
-
-# Note [Why build certain utils twice?]
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-# We build certain utils twice: once with stage0, and once with stage1.
-# Examples are ghc-pkg and hsc2hs.
-#
-# These tools are needed during the bootstrapping process, so we have to use
-# stage0 to build them at first (stage1 doesn't exist yet). (side note: they're
-# also used later in the build process). We install them inplace.
-#
-# But we can't install these copies when you run 'make install'. The reason is
-# that when DYNAMIC_GHC_PROGRAMS=YES, we want to install copies that are
-# dynamically linked. But the stage0 copies are either statically linked, or
-# linked against libraries on the build machine.
-#
-# Therefore we build fresh copies, using the stage1 compiler, and install them
-# when you run 'make install'. They are not used for any other purpose.
-
-# -----------------------------------------------------------------------------
-# Build ghc-pkg with the stage0 compiler in the dist directory, and install
-# inplace. This is the copy we use during in-tree development.
-utils/ghc-pkg_dist_USES_CABAL = YES
-utils/ghc-pkg_dist_PROGNAME = ghc-pkg
-utils/ghc-pkg_dist_SHELL_WRAPPER = YES
-utils/ghc-pkg_dist_INSTALL_INPLACE = YES
-
-# When cross-built ghc-stage2 is installed 'make install' needs to call
-# native ghc-pkg (not the cross-built one) to register installed packages
-# 'ghc-pkg_DIST_BINARY' variable only refer to native binary.
-ghc-pkg_DIST_BINARY_NAME = ghc-pkg$(exeext0)
-ghc-pkg_DIST_BINARY = utils/ghc-pkg/dist/build/tmp/$(ghc-pkg_DIST_BINARY_NAME)
-
-# See Note [Stage1Only vs stage=1] in mk/config.mk.in.
-ifeq "$(Stage1Only)" "YES"
-# Install the copy of ghc-pkg from the dist directory when running 'make
-# install' (it's the only copy we have at this stage).
-utils/ghc-pkg_dist_INSTALL = YES
-utils/ghc-pkg_dist_INSTALL_SHELL_WRAPPER_NAME = ghc-pkg-$(ProjectVersion)
-endif
-
-ifeq "$(WITH_TERMINFO)" "NO"
-utils/ghc-pkg_dist-install_CONFIGURE_OPTS += -f-terminfo
-endif
-
-$(eval $(call build-prog,utils/ghc-pkg,dist,0))
-
-# ghc-pkg uses `settings` to figure out the target platform to figure out a
-# subdirectory for the user pkg db. So make sure `settings` exists (alternative
-# is to specify global package db only).
-$(ghc-pkg_INPLACE) : | $(INPLACE_PACKAGE_CONF)/. $(INPLACE_LIB)/settings
-
-# -----------------------------------------------------------------------------
-# Build another copy of ghc-pkg with the stage1 compiler in the dist-install
-# directory. Don't install it inplace (we use the dist copy there), but do
-# install it when running 'make install'.
-#
-# See Note [Why build certain utils twice?].
-
-# See Note [Stage1Only vs stage=1] in mk/config.mk.in.
-ifneq "$(Stage1Only)" "YES"
-utils/ghc-pkg_dist-install_USES_CABAL = YES
-utils/ghc-pkg_dist-install_PROGNAME = ghc-pkg
-utils/ghc-pkg_dist-install_SHELL_WRAPPER = YES
-utils/ghc-pkg_dist-install_INSTALL_INPLACE = NO
-utils/ghc-pkg_dist-install_INSTALL = YES
-utils/ghc-pkg_dist-install_INSTALL_SHELL_WRAPPER_NAME = ghc-pkg-$(ProjectVersion)
-
-$(eval $(call build-prog,utils/ghc-pkg,dist-install,1))
-endif
-
-# -----------------------------------------------------------------------------
-# Link ghc-pkg to ghc-pkg-$(ProjectVersion) when installing
-
-ifeq "$(Windows_Host)" "NO"
-install: install_utils/ghc-pkg_link
-
-.PHONY: install_utils/ghc-pkg_link
-install_utils/ghc-pkg_link:
- $(INSTALL_DIR) "$(DESTDIR)$(bindir)"
- $(call removeFiles,"$(DESTDIR)$(bindir)/$(CrossCompilePrefix)ghc-pkg")
- $(LN_S) $(CrossCompilePrefix)ghc-pkg-$(ProjectVersion) "$(DESTDIR)$(bindir)/$(CrossCompilePrefix)ghc-pkg"
-endif
diff --git a/utils/hp2ps/ghc.mk b/utils/hp2ps/ghc.mk
deleted file mode 100644
index d7797be3e9..0000000000
--- a/utils/hp2ps/ghc.mk
+++ /dev/null
@@ -1,42 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-# stage0
-utils/hp2ps_dist_C_SRCS = AreaBelow.c Curves.c Error.c Main.c \
- Reorder.c TopTwenty.c AuxFile.c Deviation.c \
- HpFile.c Marks.c Scale.c TraceElement.c \
- Axes.c Dimensions.c Key.c PsFile.c Shade.c \
- Utilities.c
-utils/hp2ps_dist_EXTRA_LIBRARIES = m
-utils/hp2ps_dist_PROGNAME = hp2ps
-utils/hp2ps_dist_INSTALL_INPLACE = YES
-utils/hp2ps_dist_SHELL_WRAPPER = YES
-utils/hp2ps_dist_INSTALL_SHELL_WRAPPER_NAME = hp2ps
-
-# stage 1
-utils/hp2ps_dist-install_C_SRCS = $(utils/hp2ps_dist_C_SRCS)
-utils/hp2ps_dist-install_EXTRA_LIBRARIES = $(utils/hp2ps_dist_EXTRA_LIBRARIES)
-utils/hp2ps_dist-install_PROGNAME = $(utils/hp2ps_dist_PROGNAME)
-utils/hp2ps_dist-install_INSTALL_INPLACE = NO
-utils/hp2ps_dist-install_SHELL_WRAPPER = YES
-utils/hp2ps_dist-install_INSTALL_SHELL_WRAPPER_NAME = $(utils/hp2ps_dist_INSTALL_SHELL_WRAPPER_NAME)
-
-ifeq "$(Stage1Only)" "YES"
-utils/hp2ps_dist_INSTALL = YES
-utils/hp2ps_dist-install_INSTALL = NO
-else
-utils/hp2ps_dist_INSTALL = NO
-utils/hp2ps_dist-install_INSTALL = YES
-endif
-
-$(eval $(call build-prog,utils/hp2ps,dist,0))
-$(eval $(call build-prog,utils/hp2ps,dist-install,1))
diff --git a/utils/hpc/ghc.mk b/utils/hpc/ghc.mk
deleted file mode 100644
index 9b2bce238e..0000000000
--- a/utils/hpc/ghc.mk
+++ /dev/null
@@ -1,21 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/hpc_USES_CABAL = YES
-utils/hpc_PACKAGE = hpc-bin
-utils/hpc_dist-install_INSTALL = YES
-utils/hpc_dist-install_INSTALL_INPLACE = YES
-utils/hpc_dist-install_PROGNAME = hpc
-utils/hpc_dist-install_SHELL_WRAPPER = YES
-utils/hpc_dist-install_INSTALL_SHELL_WRAPPER_NAME = hpc
-
-$(eval $(call build-prog,utils/hpc,dist-install,1))
diff --git a/utils/iserv/ghc.mk b/utils/iserv/ghc.mk
deleted file mode 100644
index 74f90e60b7..0000000000
--- a/utils/iserv/ghc.mk
+++ /dev/null
@@ -1,113 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009-2012 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/iserv_USES_CABAL = YES
-utils/iserv_PACKAGE = iserv
-utils/iserv_EXECUTABLE = iserv
-
-ifeq "$(GhcDebugged)" "YES"
-utils/iserv_stage2_MORE_HC_OPTS += -debug
-utils/iserv_stage2_p_MORE_HC_OPTS += -debug
-utils/iserv_stage2_dyn_MORE_HC_OPTS += -debug
-endif
-
-ifeq "$(GhcThreaded)" "YES"
-utils/iserv_stage2_MORE_HC_OPTS += -threaded
-utils/iserv_stage2_p_MORE_HC_OPTS += -threaded
-utils/iserv_stage2_dyn_MORE_HC_OPTS += -threaded
-endif
-
-# Add -Wl,--export-dynamic enables GHCi to load dynamic objects that
-# refer to the RTS. This is harmless if you don't use it (adds a bit
-# of overhead to startup and increases the binary sizes) but if you
-# need it there's no alternative.
-ifeq "$(TargetElf)" "YES"
-ifneq "$(TargetOS_CPP)" "solaris2"
-# The Solaris linker does not support --export-dynamic option. It also
-# does not need it since it exports all dynamic symbols by default
-utils/iserv_stage2_MORE_HC_OPTS += -optl-Wl,--export-dynamic
-utils/iserv_stage2_p_MORE_HC_OPTS += -optl-Wl,--export-dynamic
-utils/iserv_stage2_dyn_MORE_HC_OPTS += -optl-Wl,--export-dynamic
-endif
-endif
-
-# Override the default way, because we want a specific version of this
-# program for each way. Note that it's important to do this even for
-# the vanilla version, otherwise we get a dynamic executable when
-# DYNAMIC_GHC_PROGRAMS=YES.
-utils/iserv_stage2_PROGRAM_WAY = v
-utils/iserv_stage2_p_PROGRAM_WAY = p
-utils/iserv_stage2_dyn_PROGRAM_WAY = dyn
-
-utils/iserv_stage2_PROGNAME = ghc-iserv
-utils/iserv_stage2_p_PROGNAME = ghc-iserv-prof
-utils/iserv_stage2_dyn_PROGNAME = ghc-iserv-dyn
-
-utils/iserv_stage2_MORE_HC_OPTS += -no-hs-main
-utils/iserv_stage2_p_MORE_HC_OPTS += -no-hs-main
-utils/iserv_stage2_dyn_MORE_HC_OPTS += -no-hs-main
-
-utils/iserv_stage2_INSTALL = YES
-utils/iserv_stage2_p_INSTALL = YES
-utils/iserv_stage2_dyn_INSTALL = YES
-
-# Install in $(libexec), not in $(bindir)
-utils/iserv_stage2_TOPDIR = YES
-utils/iserv_stage2_p_TOPDIR = YES
-utils/iserv_stage2_dyn_TOPDIR = YES
-
-utils/iserv_stage2_INSTALL_INPLACE = YES
-utils/iserv_stage2_p_INSTALL_INPLACE = YES
-utils/iserv_stage2_dyn_INSTALL_INPLACE = YES
-
-ifeq "$(CLEANING)" "YES"
-
-NEED_iserv = YES
-NEED_iserv_p = YES
-NEED_iserv_dyn = YES
-
-else
-
-ifneq "$(findstring v, $(GhcLibWays))" ""
-NEED_iserv = YES
-else
-NEED_iserv = NO
-endif
-
-ifneq "$(findstring p, $(GhcLibWays))" ""
-NEED_iserv_p = YES
-else
-NEED_iserv_p = NO
-endif
-
-ifneq "$(findstring dyn, $(GhcLibWays))" ""
-NEED_iserv_dyn = YES
-else
-NEED_iserv_dyn = NO
-endif
-endif
-
-ifeq "$(NEED_iserv)" "YES"
-$(eval $(call build-prog,utils/iserv,stage2,1))
-endif
-
-ifeq "$(NEED_iserv_p)" "YES"
-$(eval $(call build-prog,utils/iserv,stage2_p,1))
-endif
-
-ifeq "$(NEED_iserv_dyn)" "YES"
-$(eval $(call build-prog,utils/iserv,stage2_dyn,1))
-endif
-
-all_ghc_stage2 : $(iserv-stage2_INPLACE)
-all_ghc_stage2 : $(iserv-stage2_p_INPLACE)
-all_ghc_stage2 : $(iserv-stage2_dyn_INPLACE)
diff --git a/utils/mkdirhier/ghc.mk b/utils/mkdirhier/ghc.mk
deleted file mode 100644
index a574b86861..0000000000
--- a/utils/mkdirhier/ghc.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-$(MKDIRHIER) : utils/mkdirhier/mkdirhier.sh
- mkdir -p $(INPLACE_BIN)
- mkdir -p $(INPLACE_LIB)
- $(call removeFiles,$@)
- echo '#!/bin/sh' >> $@
- cat utils/mkdirhier/mkdirhier.sh >> $@
- $(EXECUTABLE_FILE) $@
-
-$(eval $(call all-target,utils/mkdirhier,$(MKDIRHIER)))
-$(eval $(call clean-target,utils/mkdirhier,,$(MKDIRHIER)))
diff --git a/utils/remote-iserv/ghc.mk b/utils/remote-iserv/ghc.mk
deleted file mode 100644
index f0cd9ffa49..0000000000
--- a/utils/remote-iserv/ghc.mk
+++ /dev/null
@@ -1,113 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009-2012 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/remote-iserv_USES_CABAL = YES
-utils/remote-iserv_PACKAGE = remote-iserv
-utils/remote-iserv_EXECUTABLE = remote-iserv
-
-ifeq "$(GhcDebugged)" "YES"
-utils/remote-iserv_stage2_MORE_HC_OPTS += -debug
-utils/remote-iserv_stage2_p_MORE_HC_OPTS += -debug
-utils/remote-iserv_stage2_dyn_MORE_HC_OPTS += -debug
-endif
-
-ifeq "$(GhcThreaded)" "YES"
-utils/remote-iserv_stage2_MORE_HC_OPTS += -threaded
-utils/remote-iserv_stage2_p_MORE_HC_OPTS += -threaded
-utils/remote-iserv_stage2_dyn_MORE_HC_OPTS += -threaded
-endif
-
-# Add -Wl,--export-dynamic enables GHCi to load dynamic objects that
-# refer to the RTS. This is harmless if you don't use it (adds a bit
-# of overhead to startup and increases the binary sizes) but if you
-# need it there's no alternative.
-ifeq "$(TargetElf)" "YES"
-ifneq "$(TargetOS_CPP)" "solaris2"
-# The Solaris linker does not support --export-dynamic option. It also
-# does not need it since it exports all dynamic symbols by default
-utils/remote-iserv_stage2_MORE_HC_OPTS += -optl-Wl,--export-dynamic
-utils/remote-iserv_stage2_p_MORE_HC_OPTS += -optl-Wl,--export-dynamic
-utils/remote-iserv_stage2_dyn_MORE_HC_OPTS += -optl-Wl,--export-dynamic
-endif
-endif
-
-# Override the default way, because we want a specific version of this
-# program for each way. Note that it's important to do this even for
-# the vanilla version, otherwise we get a dynamic executable when
-# DYNAMIC_GHC_PROGRAMS=YES.
-utils/remote-iserv_stage2_PROGRAM_WAY = v
-utils/remote-iserv_stage2_p_PROGRAM_WAY = p
-utils/remote-iserv_stage2_dyn_PROGRAM_WAY = dyn
-
-utils/remote-iserv_stage2_PROGNAME = ghc-iserv
-utils/remote-iserv_stage2_p_PROGNAME = ghc-iserv-prof
-utils/remote-iserv_stage2_dyn_PROGNAME = ghc-iserv-dyn
-
-utils/remote-iserv_stage2_MORE_HC_OPTS += -no-hs-main
-utils/remote-iserv_stage2_p_MORE_HC_OPTS += -no-hs-main
-utils/remote-iserv_stage2_dyn_MORE_HC_OPTS += -no-hs-main
-
-utils/remote-iserv_stage2_INSTALL = YES
-utils/remote-iserv_stage2_p_INSTALL = YES
-utils/remote-iserv_stage2_dyn_INSTALL = YES
-
-# Install in $(libexec), not in $(bindir)
-utils/remote-iserv_stage2_TOPDIR = YES
-utils/remote-iserv_stage2_p_TOPDIR = YES
-utils/remote-iserv_stage2_dyn_TOPDIR = YES
-
-utils/remote-iserv_stage2_INSTALL_INPLACE = YES
-utils/remote-iserv_stage2_p_INSTALL_INPLACE = YES
-utils/remote-iserv_stage2_dyn_INSTALL_INPLACE = YES
-
-ifeq "$(CLEANING)" "YES"
-
-NEED_iserv = YES
-NEED_iserv_p = YES
-NEED_iserv_dyn = YES
-
-else
-
-ifneq "$(findstring v, $(GhcLibWays))" ""
-NEED_iserv = YES
-else
-NEED_iserv = NO
-endif
-
-ifneq "$(findstring p, $(GhcLibWays))" ""
-NEED_iserv_p = YES
-else
-NEED_iserv_p = NO
-endif
-
-ifneq "$(findstring dyn, $(GhcLibWays))" ""
-NEED_iserv_dyn = YES
-else
-NEED_iserv_dyn = NO
-endif
-endif
-
-ifeq "$(NEED_iserv)" "YES"
-$(eval $(call build-prog,utils/remote-iserv,stage2,1))
-endif
-
-ifeq "$(NEED_iserv_p)" "YES"
-$(eval $(call build-prog,utils/remote-iserv,stage2_p,1))
-endif
-
-ifeq "$(NEED_iserv_dyn)" "YES"
-$(eval $(call build-prog,utils/remote-iserv,stage2_dyn,1))
-endif
-
-all_ghc_stage2 : $(remote-iserv-stage2_INPLACE)
-all_ghc_stage2 : $(remote-iserv-stage2_p_INPLACE)
-all_ghc_stage2 : $(remote-iserv-stage2_dyn_INPLACE)
diff --git a/utils/runghc/ghc.mk b/utils/runghc/ghc.mk
deleted file mode 100644
index 76272d9d80..0000000000
--- a/utils/runghc/ghc.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/runghc_PACKAGE = runghc
-utils/runghc_dist-install_USES_CABAL = YES
-utils/runghc_dist-install_PROGNAME = runghc
-utils/runghc_dist-install_SHELL_WRAPPER = YES
-utils/runghc_dist-install_INSTALL = YES
-utils/runghc_dist-install_INSTALL_INPLACE = YES
-utils/runghc_dist-install_INSTALL_SHELL_WRAPPER_NAME = runghc-$(ProjectVersion)
-
-# Be explicit about which version of ghc to call (#9054).
-define utils/runghc_dist-install_INPLACE_SHELL_WRAPPER_EXTRA
-echo 'ghcprog="$(ghc_stage2_INPLACE_SHELL_WRAPPER_NAME)"' >> "$(WRAPPER)"
-endef
-define utils/runghc_dist-install_INSTALL_SHELL_WRAPPER_EXTRA
-echo 'ghcprog="$(ghc_stage$(INSTALL_GHC_STAGE)_INSTALL_SHELL_WRAPPER_NAME)"' >> "$(WRAPPER)"
-endef
-
-$(eval $(call build-prog,utils/runghc,dist-install,1))
-
-install: install_runhaskell
-
-.PHONY: install_runhaskell
-ifeq "$(Windows_Host)" "YES"
-install_runhaskell: install_bins
- "$(CP)" $(DESTDIR)$(bindir)/$(CrossCompilePrefix)runghc$(exeext1) $(DESTDIR)$(bindir)/$(CrossCompilePrefix)runhaskell$(exeext1)
-else
-install_runhaskell:
- $(call removeFiles,"$(DESTDIR)$(bindir)/$(CrossCompilePrefix)runhaskell")
- $(LN_S) $(CrossCompilePrefix)runghc "$(DESTDIR)$(bindir)/$(CrossCompilePrefix)runhaskell"
- $(call removeFiles,"$(DESTDIR)$(bindir)/$(CrossCompilePrefix)runghc")
- $(LN_S) $(CrossCompilePrefix)runghc-$(ProjectVersion) "$(DESTDIR)$(bindir)/$(CrossCompilePrefix)runghc"
-endif
diff --git a/utils/testremove/ghc.mk b/utils/testremove/ghc.mk
deleted file mode 100644
index ac9ef6ce03..0000000000
--- a/utils/testremove/ghc.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-
-.PHONY: utils/testremove_all
-utils/testremove_all: utils/testremove/wouldrm utils/testremove/checkremove
-
-utils/testremove/wouldrm: $$@.hs
- $(GHC_STAGE1) --make -O $@
-
-utils/testremove/checkremove: $$@.hs
- $(GHC_STAGE1) --make -O $@
diff --git a/utils/touchy/ghc.mk b/utils/touchy/ghc.mk
deleted file mode 100644
index 9c093c19cf..0000000000
--- a/utils/touchy/ghc.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-utils/touchy_dist_C_SRCS = touchy.c
-utils/touchy_dist_PROGNAME = touchy
-utils/touchy_dist_TOPDIR = YES
-utils/touchy_dist_INSTALL = YES
-utils/touchy_dist_INSTALL_INPLACE = YES
-$(eval $(call build-prog,utils/touchy,dist,0))
diff --git a/utils/unlit/ghc.mk b/utils/unlit/ghc.mk
deleted file mode 100644
index fe38cbbd0f..0000000000
--- a/utils/unlit/ghc.mk
+++ /dev/null
@@ -1,34 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# (c) 2009 The University of Glasgow
-#
-# This file is part of the GHC build system.
-#
-# To understand how the build system works and how to modify it, see
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/architecture
-# https://gitlab.haskell.org/ghc/ghc/wikis/building/modifying
-#
-# -----------------------------------------------------------------------------
-
-# built by ghc-stage0
-utils/unlit_dist_C_SRCS = unlit.c fs.c
-utils/unlit_dist_PROGNAME = unlit
-utils/unlit_dist_TOPDIR = YES
-utils/unlit_dist_INSTALL_INPLACE = YES
-
-# built by ghc-stage1
-utils/unlit_dist-install_C_SRCS = $(utils/unlit_dist_C_SRCS)
-utils/unlit_dist-install_PROGNAME = $(utils/unlit_dist_PROGNAME)
-utils/unlit_dist-install_TOPDIR = $(utils/unlit_dist_TOPDIR)
-utils/unlit_dist-install_INSTALL_INPLACE = NO
-
-ifeq "$(Stage1Only)" "YES"
-utils/unlit_dist_INSTALL = YES
-utils/unlit_dist-install_INSTALL = NO
-else
-utils/unlit_dist_INSTALL = NO
-utils/unlit_dist-install_INSTALL = YES
-endif
-
-$(eval $(call build-prog,utils/unlit,dist,0))
-$(eval $(call build-prog,utils/unlit,dist-install,1))