From bea78dbfd6a70a81a38f0001b90c48d5ddcc8c28 Mon Sep 17 00:00:00 2001 From: Oleg Grenrus Date: Wed, 19 Feb 2020 16:22:05 +0200 Subject: [PATCH] Make cabal-install build-type: Simple --- boot/ci-artifacts.template.yml | 2 +- cabal-install/Setup.hs | 64 +--------------------------- cabal-install/cabal-install.cabal | 9 +--- cabal-install/cabal-install.cabal.pp | 14 ------ 4 files changed, 4 insertions(+), 85 deletions(-) diff --git a/boot/ci-artifacts.template.yml b/boot/ci-artifacts.template.yml index ec673f7c7e5..4ff11b2598a 100644 --- a/boot/ci-artifacts.template.yml +++ b/boot/ci-artifacts.template.yml @@ -124,7 +124,7 @@ jobs: shell: bash run: | cabal v2-build cabal-install:exe:cabal - cp dist-newstyle/build/x86_64-windows/ghc-8.6.5/cabal-install-3.3.0.0/build/cabal/cabal.exe cabal.exe + cp dist-newstyle/build/x86_64-windows/ghc-8.6.5/cabal-install-3.3.0.0/x/cabal/build/cabal/cabal.exe cabal.exe - name: Smoke test shell: bash run: | diff --git a/cabal-install/Setup.hs b/cabal-install/Setup.hs index 1d652abdb55..b55cb169539 100644 --- a/cabal-install/Setup.hs +++ b/cabal-install/Setup.hs @@ -1,63 +1,3 @@ -import Distribution.PackageDescription ( PackageDescription ) -import Distribution.Simple ( defaultMainWithHooks - , simpleUserHooks - , postBuild - , postCopy - , postInst - ) -import Distribution.Simple.InstallDirs ( mandir - , CopyDest (NoCopyDest) - ) -import Distribution.Simple.LocalBuildInfo ( LocalBuildInfo(..) - , absoluteInstallDirs - ) -import Distribution.Simple.Utils ( installOrdinaryFiles - , notice ) -import Distribution.Simple.Setup ( buildVerbosity - , copyDest - , copyVerbosity - , fromFlag - , installVerbosity - ) -import Distribution.Verbosity ( Verbosity ) - -import System.IO ( openFile - , IOMode (WriteMode) - ) -import System.Process ( runProcess ) -import System.FilePath ( () ) - --- WARNING to editors of this file: --- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --- At this moment (Cabal 1.23), whatever you write here must be --- compatible with ALL Cabal libraries which we support bootstrapping --- with. This is because pre-setup-depends versions of cabal-install will --- build Setup.hs against the version of Cabal which MATCHES the library --- that cabal-install was built against. There is no way of overriding --- this behavior without bumping the required 'cabal-version' in our --- Cabal file. Travis will let you know if we fail to install from --- tarball! - +import Distribution.Simple main :: IO () -main = defaultMainWithHooks $ simpleUserHooks - { postBuild = \ _ flags _ lbi -> - buildManpage lbi (fromFlag $ buildVerbosity flags) - , postCopy = \ _ flags pkg lbi -> - installManpage pkg lbi (fromFlag $ copyVerbosity flags) (fromFlag $ copyDest flags) - , postInst = \ _ flags pkg lbi -> - installManpage pkg lbi (fromFlag $ installVerbosity flags) NoCopyDest - } - -buildManpage :: LocalBuildInfo -> Verbosity -> IO () -buildManpage lbi verbosity = do - let cabal = buildDir lbi "cabal/cabal" - manpage = buildDir lbi "cabal/cabal.1" - manpageHandle <- openFile manpage WriteMode - notice verbosity ("Generating manual page " ++ manpage ++ " ...") - _ <- runProcess cabal ["man","--raw"] Nothing Nothing Nothing (Just manpageHandle) Nothing - return () - -installManpage :: PackageDescription -> LocalBuildInfo -> Verbosity -> CopyDest -> IO () -installManpage pkg lbi verbosity copy = do - let destDir = mandir (absoluteInstallDirs pkg lbi copy) "man1" - installOrdinaryFiles verbosity destDir [(buildDir lbi "cabal", "cabal.1")] +main = defaultMain diff --git a/cabal-install/cabal-install.cabal b/cabal-install/cabal-install.cabal index 6cdb50e147d..8a85e482a95 100644 --- a/cabal-install/cabal-install.cabal +++ b/cabal-install/cabal-install.cabal @@ -18,7 +18,7 @@ Author: Cabal Development Team (see AUTHORS file) Maintainer: Cabal Development Team Copyright: 2003-2019, Cabal Development Team Category: Distribution -Build-type: Custom +Build-type: Simple Extra-Source-Files: README.md bash-completion/cabal bootstrap.sh changelog @@ -126,13 +126,6 @@ Flag lukko default: True manual: True -custom-setup - setup-depends: - Cabal >= 2.2, - base, - process >= 1.1.0.1 && < 1.7, - filepath >= 1.3 && < 1.5 - executable cabal main-is: Main.hs hs-source-dirs: main diff --git a/cabal-install/cabal-install.cabal.pp b/cabal-install/cabal-install.cabal.pp index e05bf88f5f8..15546093db9 100644 --- a/cabal-install/cabal-install.cabal.pp +++ b/cabal-install/cabal-install.cabal.pp @@ -279,11 +279,7 @@ Maintainer: Cabal Development Team Copyright: 2003-2019, Cabal Development Team Category: Distribution -%if CABAL_FLAG_LIB Build-type: Simple -%else -Build-type: Custom -%endif Extra-Source-Files: README.md bash-completion/cabal bootstrap.sh changelog @@ -391,16 +387,6 @@ default: True manual: True -%if CABAL_FLAG_LIB -%else -custom-setup - setup-depends: - Cabal >= 2.2, - base, - process >= 1.1.0.1 && < 1.7, - filepath >= 1.3 && < 1.5 - -%endif # # Libraries, if CABAL_FLAG_LIB #