Zubin pushed to branch wip/26635 at Glasgow Haskell Compiler / GHC
Commits:
-
b14f8557
by Zubin Duggal at 2026-03-31T11:06:16+05:30
4 changed files:
- hadrian/bindist/Makefile
- hadrian/src/CommandLine.hs
- hadrian/src/Context.hs
- hadrian/src/Settings/Builders/Cabal.hs
Changes:
| ... | ... | @@ -205,7 +205,7 @@ update_package_db: install_bin install_lib |
| 205 | 205 | $(INSTALL_DATA) mk/system-cxx-std-lib-1.0.conf "$(DESTDIR)$(ActualLibsDir)/package.conf.d"
|
| 206 | 206 | @echo "Updating the package DB"
|
| 207 | 207 | $(foreach p, $(PKG_CONFS),\
|
| 208 | - $(call patchpackageconf,$(shell echo $(notdir $p) | sed 's/-[0-9.]*-[0-9a-zA-Z]*\.conf//g'),$(shell echo "$p" | sed 's:\0xxx\0: :g'),$(docdir),$(shell mk/relpath.sh "$(ActualLibsDir)" "$(docdir)"),$(shell echo $(notdir $p) | sed 's/.conf//g')))
|
|
| 208 | + $(call patchpackageconf,$(shell echo $(notdir $p) | sed 's/-[0-9.]*-[0-9a-zA-Z]*\.conf//g'),$(shell echo "$p" | sed 's:\0xxx\0: :g'),$(docdir),$(shell mk/relpath.sh "$(ActualLibsDir)" "$(docdir)"),$(shell echo $(notdir $p) | sed 's/-[0-9a-zA-Z]*\.conf$$//')))
|
|
| 209 | 209 | '$(DESTDIR)$(ActualBinsDir)/$(CrossCompilePrefix)ghc-pkg' --global-package-db "$(DESTDIR)$(ActualLibsDir)/package.conf.d" recache
|
| 210 | 210 | |
| 211 | 211 | .PHONY: install_mingw
|
| ... | ... | @@ -114,7 +114,7 @@ data DocArgs = DocArgs |
| 114 | 114 | } deriving (Eq, Show)
|
| 115 | 115 | |
| 116 | 116 | defaultDocArgs :: DocArgs
|
| 117 | -defaultDocArgs = DocArgs { docsBaseUrl = "../%pkgid%" }
|
|
| 117 | +defaultDocArgs = DocArgs { docsBaseUrl = "../%pkg%" }
|
|
| 118 | 118 | |
| 119 | 119 | readConfigure :: Either String (CommandLineArgs -> CommandLineArgs)
|
| 120 | 120 | readConfigure = Left "hadrian --configure has been deprecated (see #20167). Please run ./boot; ./configure manually"
|
| ... | ... | @@ -120,7 +120,9 @@ pkgSetupConfigFile context = pkgSetupConfigDir context <&> (-/- "setup-config") |
| 120 | 120 | pkgHaddockFile :: Context -> Action FilePath
|
| 121 | 121 | pkgHaddockFile Context {..} = do
|
| 122 | 122 | root <- buildRoot
|
| 123 | - version <- pkgUnitId stage package
|
|
| 123 | + -- We don't want to use the hash in the html documentation because it
|
|
| 124 | + -- makes it harder for non-boot packages to link to boot packages, see #26635
|
|
| 125 | + version <- pkgSimpleIdentifier package
|
|
| 124 | 126 | return $ root -/- "doc/html/libraries" -/- version -/- pkgName package <.> "haddock"
|
| 125 | 127 | |
| 126 | 128 | -- | Path to the registered ghc-pkg library file of a given 'Context', e.g.:
|
| ... | ... | @@ -83,6 +83,9 @@ commonCabalArgs :: Stage -> Args |
| 83 | 83 | commonCabalArgs stage = do
|
| 84 | 84 | pkg <- getPackage
|
| 85 | 85 | package_id <- expr $ pkgUnitId stage pkg
|
| 86 | + -- We don't want to use the hash in the html documentation because it
|
|
| 87 | + -- makes it harder for non-boot packages to link to boot packages, see #26635
|
|
| 88 | + package_simple_id <- expr $ pkgSimpleIdentifier pkg
|
|
| 86 | 89 | let prefix = "${pkgroot}" ++ (if windowsHost then "" else "/..")
|
| 87 | 90 | mconcat [ -- Don't strip libraries when cross compiling.
|
| 88 | 91 | -- TODO: We need to set @--with-strip=(stripCmdPath :: Action FilePath)@,
|
| ... | ... | @@ -110,7 +113,7 @@ commonCabalArgs stage = do |
| 110 | 113 | --
|
| 111 | 114 | -- This doesn't hold if we move the @doc@ folder anywhere else.
|
| 112 | 115 | , arg "--htmldir"
|
| 113 | - , arg $ "${pkgroot}/../../doc/html/libraries/" ++ package_id
|
|
| 116 | + , arg $ "${pkgroot}/../../doc/html/libraries/" ++ package_simple_id
|
|
| 114 | 117 | |
| 115 | 118 | -- These trigger a need on each dependency, so every important to need
|
| 116 | 119 | -- them in parallel or it linearises the build of Ghc and GhcPkg
|