Your message dated Sun, 12 Nov 2023 14:11:38 +0200
with message-id <20231112121138.wlgywttxajrd7...@iliastsi.net>
and subject line Re: Bug#972187: undeclarable haskell-devscripts-minimal 
dependency is now declarable for cross compilation
has caused the Debian Bug report #972187,
regarding undeclarable haskell-devscripts-minimal dependency is now declarable 
for cross compilation
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
972187: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=972187
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: ghc
Version: 8.8.4-1
Severity: minor
Tags: patch

Hi,

a while ago, Adrian made ghc barely cross buildable. It still builds
something quite different from the regular ghc package, but it crosses
and the crossed thing seems to be able to build a native ghc.

One aspect that didnd't work out at all back then was the dependency on
haskell-devscripts-minimal. We told him, that no, we cannot mark it
Multi-Arch: foreign and we haven't moved forward on that aspect yet.
Therefore Adrian annotatd it "<!cross>". cross builds now need to supply
some haskell-devscripts-minimal to work. What changed since then is that
the apt and dpkg now allow annotating Architecture: all packages with
":native". I think doing so is a better workaround than "<!cross>".

It's a drop in the bucket. Can you apply it anyway?

Helmut
diff --minimal -Nru ghc-8.8.4/debian/changelog ghc-8.8.4/debian/changelog
--- ghc-8.8.4/debian/changelog  2020-08-11 16:12:43.000000000 +0200
+++ ghc-8.8.4/debian/changelog  2020-10-13 21:38:13.000000000 +0200
@@ -1,3 +1,10 @@
+ghc (8.8.4-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Simplify cross compilation workaround. (Closes: #-1)
+
+ -- Helmut Grohne <hel...@subdivi.de>  Tue, 13 Oct 2020 21:38:13 +0200
+
 ghc (8.8.4-1) unstable; urgency=medium
 
   * New upstream release
diff --minimal -Nru ghc-8.8.4/debian/control ghc-8.8.4/debian/control
--- ghc-8.8.4/debian/control    2020-05-28 16:01:41.000000000 +0200
+++ ghc-8.8.4/debian/control    2020-10-13 21:38:08.000000000 +0200
@@ -7,7 +7,7 @@
 Rules-Requires-Root: no
 Build-Depends:
   debhelper-compat (= 12),
-  haskell-devscripts-minimal <!cross>,
+  haskell-devscripts-minimal:native,
   devscripts,
   grep-dctrl,
   pkg-config,

--- End Message ---
--- Begin Message ---
Version: 9.4.7-1

Hi Helmut,

On Wed, Oct 14, 2020 at 06:09AM, Helmut Grohne wrote:
> a while ago, Adrian made ghc barely cross buildable. It still builds
> something quite different from the regular ghc package, but it crosses
> and the crossed thing seems to be able to build a native ghc.
> 
> One aspect that didnd't work out at all back then was the dependency on
> haskell-devscripts-minimal. We told him, that no, we cannot mark it
> Multi-Arch: foreign and we haven't moved forward on that aspect yet.
> Therefore Adrian annotatd it "<!cross>". cross builds now need to supply
> some haskell-devscripts-minimal to work. What changed since then is that
> the apt and dpkg now allow annotating Architecture: all packages with
> ":native". I think doing so is a better workaround than "<!cross>".
> 
> It's a drop in the bucket. Can you apply it anyway?

GHC depends on haskell-devscripts-minimal in order to run
'dh_haskell_provides', which lists the libraries GHC provides (it runs
ghc-pkg) and generates the control file.

During cross compilation, we are not able to run the final ghc-pkg
binary and calculate the list of libraries GHC provides. As such, I
believe it doesn't make sense for us to run 'dh_haskell_provides' when
cross compiling GHC. This of course means that the final Debian package
will not have a correct "Provides" field, but as you already mentioned,
the final package of a cross compilation is quite different from the
regular ghc package, so this is acceptable.

I have made the above change in version 9.4.7-1 (i.e., we now don't run
'dh_haskell_provides' when cross compiling) so I will close this bug
report. Feel free to re-open it if there is a better way to handle this.

Best,

-- 
Ilias

--- End Message ---

Reply via email to