Your message dated Tue, 03 Sep 2024 19:00:10 +0000
with message-id <[email protected]>
and subject line Bug#1078823: fixed in liblopsub 1.0.5-2
has caused the Debian Bug report #1078823,
regarding liblopsub-dev is unusable 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 [email protected]
immediately.)


-- 
1078823: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1078823
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: liblopsub-dev
Version: 1.0.5-1
Tags: patch
User: [email protected]
Usertags: ftcbfs
Control: affects -1 + src:tfortune

Hi,

thanks for having improved cross building on the tfortune side.
Unfortunately, it still doesn't cross. This time around, the problem is
to be found in liblopsub though. In order to build tfortune, we need the
liblopsub shared library (for the host architecture) and we also need to
run lopsubgen (as a build architecture executable). These things
currently reside in the same binary package, but for a cross build we
need them to be installed for different architectures.

I am proposing to split the liblopsub-dev package into a liblopsub-bin
package. Since the former depends on the latter, all existing uses will
continue to work as is. Things change when we attempt to cross build.
liblopsub-dev will continue to be installed for the host architecture.
liblopsub-bin will be installed for the build architecture though as it
will be marked Multi-Arch: foreign. That enables us to actually run
lopsubgen.

We also need a quick excursion into that Multi-Arch: foreign aspect.
That stanza is a strong assertion on how a package behaves. In essence,
it says that the architecture of the package does not matter for
interactions with it. Quite obviously the architecture of the shared
library matters and therefore liblopsub-dev must never be marked
Multi-Arch: foreign. For lopsubgen, we are in a convenient situation.
All formats that it deals with are textual (e.g. C source code as output
format). Textual formats typically are architecture-independent. I
expect that no matter whether I run a amd64 lopsubgen or an armhf one
(on a suitable CPU or using qemu), it produces the same output. Please
correct me if I'm wrong and in that case do not apply my patch.

The proposed change requires a trip through the NEW queue as it
introduces a new binary package. It's not a trivial change nor easily
reverted (as it requires reverse Breaks+Replaces to revert). Please take
a bit of time to understand the proposed change before committing it and
ask any questions you may have. The lib*-bin split is quite common and
in searching for similarly named packages you shall find a number of
prior art examples.

Helmut
diff --minimal -Nru liblopsub-1.0.5/debian/changelog 
liblopsub-1.0.5/debian/changelog
--- liblopsub-1.0.5/debian/changelog    2024-05-11 21:02:48.000000000 +0200
+++ liblopsub-1.0.5/debian/changelog    2024-08-16 19:03:09.000000000 +0200
@@ -1,3 +1,10 @@
+liblopsub (1.0.5-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Split lopsubgen into a Multi-Arch: foreign package. (Closes: #-1)
+
+ -- Helmut Grohne <[email protected]>  Fri, 16 Aug 2024 19:03:09 +0200
+
 liblopsub (1.0.5-1) unstable; urgency=medium
 
   * prefer https:// over http:// and git://
diff --minimal -Nru liblopsub-1.0.5/debian/control 
liblopsub-1.0.5/debian/control
--- liblopsub-1.0.5/debian/control      2024-05-11 21:02:48.000000000 +0200
+++ liblopsub-1.0.5/debian/control      2024-08-16 19:00:06.000000000 +0200
@@ -28,7 +28,7 @@
 
 Package: liblopsub-dev
 Architecture: any
-Depends: ${shlibs:Depends}, liblopsub1t64 (= ${binary:Version}), 
${misc:Depends}
+Depends: ${shlibs:Depends}, liblopsub1t64 (= ${binary:Version}), 
${misc:Depends}, liblopsub-bin (= ${binary:Version})
 Description: Long Option Parser for Subcommand - headers
  Lopsub  is  an  open  source library written in C which aims to ease
  the task of creating, documenting and parsing the options of Unix
@@ -40,3 +40,21 @@
  supports single-character short options and GNU-style long  options.
  The public API is well documented and stable.
  This package contains the development environment for the lopsub library.
+
+Package: liblopsub-bin
+Architecture: any
+Multi-Arch: foreign
+Depends: ${shlibs:Depends}, liblopsub1t64 (= ${binary:Version}), 
${misc:Depends}
+Breaks: liblopsub-dev (<< 1.0.5-1.1~)
+Replaces: liblopsub-dev (<< 1.0.5-1.1~)
+Description: Long Option Parser for Subcommand - generator
+ Lopsub  is  an  open  source library written in C which aims to ease
+ the task of creating, documenting and parsing the options of Unix
+ command line utilities. It is suitable for simple commands as well
+ as complex command line utilities with many subcommands where  each
+ subcommand  has its own set of options. Options and documentation are
+ kept together in a single file which can be translated to C code (to
+ be included in the application), or to a manual page.  The library
+ supports single-character short options and GNU-style long  options.
+ The public API is well documented and stable.
+ This package contains the lopsubgen converstion utility.
diff --minimal -Nru liblopsub-1.0.5/debian/liblopsub-bin.install 
liblopsub-1.0.5/debian/liblopsub-bin.install
--- liblopsub-1.0.5/debian/liblopsub-bin.install        1970-01-01 
01:00:00.000000000 +0100
+++ liblopsub-1.0.5/debian/liblopsub-bin.install        2024-08-16 
19:00:28.000000000 +0200
@@ -0,0 +1,2 @@
+usr/bin/lopsubgen
+usr/share/man/man1/lopsubgen*
diff --minimal -Nru liblopsub-1.0.5/debian/liblopsub-bin.links 
liblopsub-1.0.5/debian/liblopsub-bin.links
--- liblopsub-1.0.5/debian/liblopsub-bin.links  1970-01-01 01:00:00.000000000 
+0100
+++ liblopsub-1.0.5/debian/liblopsub-bin.links  2024-08-16 19:03:09.000000000 
+0200
@@ -0,0 +1 @@
+usr/share/doc/liblopsub1t64 usr/share/doc/liblopsub-bin
diff --minimal -Nru liblopsub-1.0.5/debian/liblopsub-dev.install 
liblopsub-1.0.5/debian/liblopsub-dev.install
--- liblopsub-1.0.5/debian/liblopsub-dev.install        2024-05-11 
21:02:48.000000000 +0200
+++ liblopsub-1.0.5/debian/liblopsub-dev.install        2024-08-16 
19:00:21.000000000 +0200
@@ -1,5 +1,3 @@
 usr/include/*
 usr/lib/*/liblopsub.so
-usr/bin/lopsubgen
-usr/share/man/man1/lopsubgen*
 usr/share/man/man5/lopsub-suite*
diff --minimal -Nru liblopsub-1.0.5/debian/rules liblopsub-1.0.5/debian/rules
--- liblopsub-1.0.5/debian/rules        2024-05-11 21:02:48.000000000 +0200
+++ liblopsub-1.0.5/debian/rules        2024-08-16 19:03:07.000000000 +0200
@@ -4,6 +4,7 @@
 
 package := liblopsub1t64
 devpackage := liblopsub-dev
+binpackage := liblopsub-bin
 
 define checkdir
        @test -f debian/rules -a -f lopsub.c || \
@@ -47,6 +48,8 @@
        mv $(TMPDIR)/usr/lib-$(TRIPLET) $(TMPDIR)/usr/lib/$(TRIPLET)
        dh_install -p $(package)
        dh_install -p $(devpackage)
+       dh_install -p $(binpackage)
+       dh_link -p $(binpackage)
        dh_lintian
        $(MAKE_DIR) $(DESTDIR)/DEBIAN $(DOCS_DIR) $(DEVDOCS_DIR)
        echo 'activate-noawait ldconfig' > $(DESTDIR)/DEBIAN/triggers

--- End Message ---
--- Begin Message ---
Source: liblopsub
Source-Version: 1.0.5-2
Done: Andre Noll <[email protected]>

We believe that the bug you reported is fixed in the latest version of
liblopsub, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Andre Noll <[email protected]> (supplier of updated liblopsub package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Mon, 26 Aug 2024 16:21:14 +0200
Binary: liblopsub-bin liblopsub-bin-dbgsym liblopsub-dev liblopsub1t64 
liblopsub1t64-dbgsym
Source: liblopsub
Architecture: amd64 source
Version: 1.0.5-2
Distribution: experimental
Urgency: medium
Maintainer: Andre Noll <[email protected]>
Changed-By: Andre Noll <[email protected]>
Closes: 1078823
Description: 
 liblopsub-bin - Long Option Parser for Subcommand - generator
 liblopsub-dev - Long Option Parser for Subcommand - headers
 liblopsub1t64 - Long Option Parser for Subcommands
Changes:
 liblopsub (1.0.5-2) experimental; urgency=medium
 .
   [ Helmut Grohne ]
   * Split lopsubgen into a Multi-Arch: foreign package. Closes: #1078823
 .
   [ Andre Noll ]
   * Mark liblopsub1t64 Multi-Arch: same.
Checksums-Sha1: 
 975e28203a6635072bc4cd272873e17b98f62dc8 2104 liblopsub_1.0.5-2.dsc
 397279cfa047fa38b274ca70625c782f743a5d23 5240 liblopsub_1.0.5-2.debian.tar.xz
 40a985905b204c71c8d5a042bb4d40684c4a537f 73984 
liblopsub-bin-dbgsym_1.0.5-2_amd64.deb
 313d4718d7cb90ec99258b32685ea4339de1547f 34028 liblopsub-bin_1.0.5-2_amd64.deb
 1a13566320c7275c28fa42a77611341c1e408fe1 18264 liblopsub-dev_1.0.5-2_amd64.deb
 fd4a0772cacade64fffd577f1319e5638ef37ab5 48396 
liblopsub1t64-dbgsym_1.0.5-2_amd64.deb
 342e0badd08dce6c01bda20c1d861f91305a7d23 23276 liblopsub1t64_1.0.5-2_amd64.deb
 ae8a666e5e5e09784440d49ad219f542c5362a01 6570 liblopsub_1.0.5-2_amd64.buildinfo
Checksums-Sha256: 
 e86280d29eafd1ff618416e06ebbd61df1b541bd6b12121595fbffa6790b44e8 2104 
liblopsub_1.0.5-2.dsc
 2e3158d18f5e748f88c65f6858249e45ab6dfd84aca568bda759f6dc88f4f1a0 5240 
liblopsub_1.0.5-2.debian.tar.xz
 53405f6e16b43adcf2073c95aa4c29de6b7a275af95666a918f144ea6803c9c6 73984 
liblopsub-bin-dbgsym_1.0.5-2_amd64.deb
 8e7721aa8a9021f90d50c05827d68f45606e62517f759dd1cfc3044165f6acd8 34028 
liblopsub-bin_1.0.5-2_amd64.deb
 1973e14600b28349be03c1c1c94fc76e6f47e1377339c276700f56c1cb4de241 18264 
liblopsub-dev_1.0.5-2_amd64.deb
 b63bb426590fb1d59f48a4c6cb6ba8f917a137749a2da9975fe0f9102c7a968f 48396 
liblopsub1t64-dbgsym_1.0.5-2_amd64.deb
 c24f2bb78865cf1f4aebd56ba7f0c5a09686dd15af35112e86f763a3f661728b 23276 
liblopsub1t64_1.0.5-2_amd64.deb
 240f40a6a5fc322a3da18c37574934440ac505b140ef06db3471f74b76efa5b6 6570 
liblopsub_1.0.5-2_amd64.buildinfo
Files: 
 d949560d342e959566fb4b03497168b5 2104 libdevel optional liblopsub_1.0.5-2.dsc
 e6a0edff6eb93774bc627af36e44c7f3 5240 libdevel optional 
liblopsub_1.0.5-2.debian.tar.xz
 6a17a8eaa0440c91283f0f0425292f53 73984 debug optional 
liblopsub-bin-dbgsym_1.0.5-2_amd64.deb
 3fb5ddd0c12aa9fd0f3c5dc656df2743 34028 libdevel optional 
liblopsub-bin_1.0.5-2_amd64.deb
 470b0909080e2a895fbf04306fe8adee 18264 libdevel optional 
liblopsub-dev_1.0.5-2_amd64.deb
 76c9d1d62b962a6f1e656e10ac1ecf3e 48396 debug optional 
liblopsub1t64-dbgsym_1.0.5-2_amd64.deb
 4b0dac67b5a2e6de209e4e0b353c3694 23276 libs optional 
liblopsub1t64_1.0.5-2_amd64.deb
 49d793afe5ec9fc83b5ee1b99b329390 6570 libdevel optional 
liblopsub_1.0.5-2_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEETMLS2QqNFlTb+HOqLRqqzyREREIFAmbXItIACgkQLRqqzyRE
REL6Dg/+Oemiz6Ht9hQjg5IbDbwnLfOBXt5wvW2IK2BkP1jgMXu5PAMc+3qe0W0M
MjrxEZtuMkdcBc0Gr9baH+I25i73ut3PCMb7J+Al9DTJVNIVQM8Oi2IoIplgZPjs
Tsc8Zgy3xoOidbFAf2uVB3LsnxYfTj0rw6fR5Hi5NGCXF7PqaYKCuvRaUrtfi13W
UzFDsoFPIlUXvSwTiELtDuzUCYioQMYYGSciebiPqXLnMC38I3GwFHPVJb+4CVwG
Cr+kSOK/Oxiz0JtGU/AB6U7g5DOYPtmihr1XfZqc2vdiebo5XsRHP0iN6G2B58cl
LnuNu5sOe0QSJ2K2IeD+2TRKUm81HDKeRq5L8gcr7dm8DeDolcsDoLuDm5n7DiCv
XPnEBMKBP7eUpBH2T1GnCdScpCHOyyHCHonVEsD0HAeGxt6C+ishtc+rL+3Q0+AL
7fAF+ytoV6X5zJLcG6xKDKumK3x5AX3a/2xqGgPYTEPMqIoJy/eOr9z5XL3CC/Pp
97m5VIEeYGEzXZSSrF8KpqvlpWugEseMyRtiH8vGxydkAzjHhyyDBxdTVi28fdYL
DerwdC0RLuAeXyaXroytA0Ylw50cejiGB4JYgjHeC2SbX6IEIBxB8yNfw98JHUxq
OSpmKL3J3vEbS5ypgTU4Q8UXwY9j/3qJN9MVCepFl3unZTIcAXo=
=R62K
-----END PGP SIGNATURE-----

Attachment: pgpsLdB2o02os.pgp
Description: PGP signature


--- End Message ---

Reply via email to