Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-09 Thread Rob Browning
Rob Browning  writes:

> Ahh, apologies, I'd just carelessly assumed they were roughly the same.
> I'll check a bit more carefully when I get a chance -- and if I can't
> figure it out, I imagine someone will know on #guile (freenode) or of
> course guile-devel.

Oh, and for what it's worth -- I suspect if nothing else, we
(guile-related package maintainers) can just exclude the guile .go
containing dirs from dh_strip.  I expect the .go files to be well
segregated in typical cases, i.e. in /usr/lib/.../guile...

I mean it'd be nice if dh_strip could handle it automatically, but
offhand, I don't think that's critical.

-- 
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-09 Thread Rob Browning
Niels Thykier  writes:

> Those are guile-2.0 files; the files Jeremy reported issues with are
> guile-2.2.
>
> Guile 2.0 files starts with the MAGIC "GOOF" whereas Guile-2.2 is a
> genuine ELF binary (\x7f followed by "ELF").  Even file(1) recognises
> them simply as ELF files:

Ahh, apologies, I'd just carelessly assumed they were roughly the same.
I'll check a bit more carefully when I get a chance -- and if I can't
figure it out, I imagine someone will know on #guile (freenode) or of
course guile-devel.

Thanks
-- 
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-09 Thread Niels Thykier
Rob Browning:
> Niels Thykier  writes:
> 
>> Partly, I still have to identify them as "non-strippable" somehow.  Is
>> there an ELF header I can use to identify on?
> 
> Not sure -- though here's some additional information:
> https://www.gnu.org/software/guile/manual/html_node/Object-File-Format.html
> 
> And I think someone mentioned file knows about it, which I'd assume
> means libmagic has some related code:
> 
>   $ file /usr/lib/x86_64-linux-gnu/guile/2.0/ccache/ice-9/futures.go
>   /usr/lib/x86_64-linux-gnu/guile/2.0/ccache/ice-9/futures.go: Guile Object, 
> little endian, 64bit, bytecode v2.0
> 

Those are guile-2.0 files; the files Jeremy reported issues with are
guile-2.2.

Guile 2.0 files starts with the MAGIC "GOOF" whereas Guile-2.2 is a
genuine ELF binary (\x7f followed by "ELF").  Even file(1) recognises
them simply as ELF files:

"""
./usr/lib/x86_64-linux-gnu/aisleriot/guile/2.2/zebra.go:
ELF 64-bit LSB shared object, no machine, version 1 (embedded),
dynamically linked, with debug_info, not stripped
"""

Thanks,
~Niels



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-09 Thread Rob Browning
Niels Thykier  writes:

> Partly, I still have to identify them as "non-strippable" somehow.  Is
> there an ELF header I can use to identify on?

Not sure -- though here's some additional information:
https://www.gnu.org/software/guile/manual/html_node/Object-File-Format.html

And I think someone mentioned file knows about it, which I'd assume
means libmagic has some related code:

  $ file /usr/lib/x86_64-linux-gnu/guile/2.0/ccache/ice-9/futures.go
  /usr/lib/x86_64-linux-gnu/guile/2.0/ccache/ice-9/futures.go: Guile Object, 
little endian, 64bit, bytecode v2.0

-- 
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-08 Thread Niels Thykier
Rob Browning:
> Jeremy Bicha  writes:
> 
>> On Sun, Sep 2, 2018 at 2:30 AM Niels Thykier  wrote:
> 
>>> These files appear to regular ELF files.  How would I recognise them as
>>> "non-strippable" ELF files?  Note even file(1) classifies them as ELF
>>> shared object with debug info and not stripped.
>>>
>>> Related, are we sure this is not a bug/missing feature in strip(1)?
>>
>> I don't know anything about Guile. Rob, can you help?
> 
> I don't know all the details here, but I believe that Guile uses the ELF
> format,  for its byte-compiled files, and they *are* ELF files, but
> they're not "normal" executables.  They contain Guile VM byte code, data
> sections, etc.
> 
> And as such, I assume they're not strippable, at least not in the
> typical sense.
> 
> Does that help?
> 

Partly, I still have to identify them as "non-strippable" somehow.  Is
there an ELF header I can use to identify on?

Thanks,
~Niels



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-08 Thread Rob Browning
Jeremy Bicha  writes:

> On Sun, Sep 2, 2018 at 2:30 AM Niels Thykier  wrote:

>> These files appear to regular ELF files.  How would I recognise them as
>> "non-strippable" ELF files?  Note even file(1) classifies them as ELF
>> shared object with debug info and not stripped.
>>
>> Related, are we sure this is not a bug/missing feature in strip(1)?
>
> I don't know anything about Guile. Rob, can you help?

I don't know all the details here, but I believe that Guile uses the ELF
format,  for its byte-compiled files, and they *are* ELF files, but
they're not "normal" executables.  They contain Guile VM byte code, data
sections, etc.

And as such, I assume they're not strippable, at least not in the
typical sense.

Does that help?
-- 
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-08 Thread Jeremy Bicha
On Sun, Sep 2, 2018 at 2:30 AM Niels Thykier  wrote:
> Control: tags -1 moreinfo
>
> On Thu, 23 Aug 2018 11:37:27 -0400 Jeremy Bicha  wrote:
> > Source: debhelper
> > Version: 11.3.5
> > X-Debbugs-CC: guile-...@packages.debian.org
> >
> > When I switched aisleriot to build with guile-2.2 instead of
> > guile-2.0, dh_strip failed the build with this error:
> >
> > "Unable to recognise the format of the input file"
> > `debian/aisleriot/usr/lib/x86_64-linux-gnu/aisleriot/guile/2.2/quatorze.go'
> >
> >
> > I worked around the issue by excluding .go files from dh_strip but I
> > guess this is a bug in dh_strip.
> >
> > https://salsa.debian.org/gnome-team/aisleriot/commit/1701f31
> >
> > Thanks,
> > Jeremy Bicha
> >
> >
>
> Hi Jeremy,
>
> These files appear to regular ELF files.  How would I recognise them as
> "non-strippable" ELF files?  Note even file(1) classifies them as ELF
> shared object with debug info and not stripped.
>
> Related, are we sure this is not a bug/missing feature in strip(1)?

I don't know anything about Guile. Rob, can you help?

Thanks,
Jeremy Bicha



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-09-01 Thread Niels Thykier
Control: tags -1 moreinfo

On Thu, 23 Aug 2018 11:37:27 -0400 Jeremy Bicha  wrote:
> Source: debhelper
> Version: 11.3.5
> X-Debbugs-CC: guile-...@packages.debian.org
> 
> When I switched aisleriot to build with guile-2.2 instead of
> guile-2.0, dh_strip failed the build with this error:
> 
> "Unable to recognise the format of the input file"
> `debian/aisleriot/usr/lib/x86_64-linux-gnu/aisleriot/guile/2.2/quatorze.go'
> 
> 
> I worked around the issue by excluding .go files from dh_strip but I
> guess this is a bug in dh_strip.
> 
> https://salsa.debian.org/gnome-team/aisleriot/commit/1701f31
> 
> Thanks,
> Jeremy Bicha
> 
> 

Hi Jeremy,

These files appear to regular ELF files.  How would I recognise them as
"non-strippable" ELF files?  Note even file(1) classifies them as ELF
shared object with debug info and not stripped.

Related, are we sure this is not a bug/missing feature in strip(1)?

Thanks,
~Niels



Bug#907061: dh_strip: Unable to recognize the format of guile 2.2 files

2018-08-23 Thread Jeremy Bicha
Source: debhelper
Version: 11.3.5
X-Debbugs-CC: guile-...@packages.debian.org

When I switched aisleriot to build with guile-2.2 instead of
guile-2.0, dh_strip failed the build with this error:

"Unable to recognise the format of the input file"
`debian/aisleriot/usr/lib/x86_64-linux-gnu/aisleriot/guile/2.2/quatorze.go'


I worked around the issue by excluding .go files from dh_strip but I
guess this is a bug in dh_strip.

https://salsa.debian.org/gnome-team/aisleriot/commit/1701f31

Thanks,
Jeremy Bicha