Find build-tool installed programs before programs in path
commit84c30c263c15546834e39520afb8bd61c4ac20f5
authorRodrigo Mesquita <rodrigo.m.mesquita@gmail.com>
Fri, 1 Mar 2024 14:39:32 +0000 (1 14:39 +0000)
committerMikolaj <281893+Mikolaj@users.noreply.github.com>
Sun, 3 Mar 2024 23:16:19 +0000 (3 23:16 +0000)
tree3ba602e88ef088249497b833b690981ea8f1d188
parentb48a620665b21e53e753af522fd7584f3302b442
Find build-tool installed programs before programs in path

We must consider the path to the installed build-tool before the path to
existing versions of the build tool in paths such as `extra-prog-path`
or in the system path.

This was previously fixed by #8972 but undone by #9527.

This also renames `appendProgramSearchPath` to
`prependProgramSearchPath` to describe correctly what that function
does.

Fixes #9756
21 files changed:
Cabal/src/Distribution/Simple/Configure.hs
Cabal/src/Distribution/Simple/ConfigureScript.hs
Cabal/src/Distribution/Simple/Program/Db.hs
Cabal/src/Distribution/Simple/Program/Types.hs
cabal-install/src/Distribution/Client/CmdExec.hs
cabal-install/src/Distribution/Client/CmdInstall.hs
cabal-install/src/Distribution/Client/HttpUtils.hs
cabal-install/src/Distribution/Client/ProjectPlanning.hs
cabal-install/src/Distribution/Client/SetupWrapper.hs
cabal-install/src/Distribution/Client/VCS.hs
cabal-testsuite/PackageTests/Regression/T9756/OK.hs [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/cabal-bug-build-tool.cabal [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/cabal.out [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/cabal.project [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/cabal.test.hs [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/repo/mybuilder-0.1.0.0/CHANGELOG.md [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/repo/mybuilder-0.1.0.0/app/Main.hs [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/repo/mybuilder-0.1.0.0/mybuilder.cabal [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/repo/mybuilder-0.2.0.0/CHANGELOG.md [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/repo/mybuilder-0.2.0.0/app/Main.hs [new file with mode: 0644]
cabal-testsuite/PackageTests/Regression/T9756/repo/mybuilder-0.2.0.0/mybuilder.cabal [new file with mode: 0644]