[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1004250: contents of syslinux binary package don't match syslinux-common



Hi Vangelis,

thanks for your report!

On Sun, 23 Jan 2022 17:32:34 +0200
Vangelis Koukis <vkoukis@gmail.com> wrote:

> After installing syslinux on a FAT32 fs:
> (...)
> I see the md5sum of ldlinux.c32 doesn't match the md5sum of
> /usr/lib/syslinux/modules/bios/ldlinux.c32:
> (...)
> 
> I don't know where syslinux/ldlinux.c32 comes from, I assume it's
> embedded in /usr/bin/syslinux, but
> /usr/lib/syslinux/modules/bios/syslinux.c32 comes from the
> syslinux-common binary package.

Your assumption is correct: ldlinux.c32 is embedded into the syslinux
installer binary and the embedded copy is copied into the target folder
during the installation.

syslinux.c32 does not get copied automatically by the installer. It
must have been copied either manually or by some other script from
/usr/lib/syslinux/modules/bios/syslinux.c32 (and thus the files are the
same).

> I understand there was a recent binary-only upload, which means the
> contents of the syslinux package no longer match the contents of
> the syslinux-common package.
> (...)
> The problem is that syslinux-common *also* contains binaries [the
> syslinux modules], and they no longer match.

I looked into this and found two more things that will cause the
ldlinux.c32 embedded into the installer to be different from the copy
shipped in the syslinux-common package even without the binary-only
non-maintainer upload (binNMU) you mentioned:

* Currently the debug symbols are stripped from the .c32 files after
  the build (dh_strip).  However the ldlinux.c32 copy that's
  embedded into the installer binaries gets included before the
  stripping and still includes the debug symbols.  This is arguably a
  bug.

* The syslinux-common package is an Architecture: all package. That
  means on both amd64 and i386 the same syslinux-common package is
  installed.  I don't believe the toolchains on both systems yield
  exactly the same .c32 files, and currently the Architecture: all
  packages seem to always get built on amd64.

> I think it makes sense to upload all syslinux binary packages from the
> same build to the repository, so everything aligns.

I hope to be able to make a new upload fairly soon (recently picked up
working on https://bugs.debian.org/994274 again), but for the reasons
above there will still be a mismatch between the files.

My understanding so far is that this is a cosmetic issue:  Both the
files built into the installer as well as the c32 module in
syslinux-common work.  Is there something more to this problem that I'm
missing?

Thanks and kind regards
Lukas

Attachment: pgpryxv4IW0DS.pgp
Description: OpenPGP digital signature


Reply to: