Re: rpmbuild problem with rust code

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

 



On Mon, Feb 26, 2024 at 04:25:02PM -0500, Steve Grubb wrote:
> Hello,
> 
> I've run across a strange problem building a package that has some rust files 
> in it. The build goes fine until the end when it starts to check for shebangs. 
> It ends like this:
> 
> /usr/src/debug/suricata-7.0.3-1.fc41.x86_64/rust/vendor/alloc-no-stdlib/src/
> lib.rs has shebang which doesn't start with '/' ([no_std])
> 
> When I check the file, I find this:
> #![no_std]
> 
> #[macro_use]
> mod allocated_memory;
> mod stack_allocator;
> mod allocated_stack_memory;
> 
> Not being a rust programmer, I have no good idea what the code is doing. I 
> can't patch this code to move it off the first line because it's vendored 
> code.

The code is correct (for Rust) as it indicates that the standard
library shouldn't be used:

https://docs.rust-embedded.org/book/intro/no-std.html

It's a bit unfortunate that Rust used the shebang syntax here,
although in practice they couldn't be confused as these files
shouldn't ever be executable.

It's also correct that RPM worries about this file since it is
installed (in debuginfo) and appears to contain a shebang.

> Is there a way to tell rpmbuild not to worry about this?

rust.spec has this in %prep, and /usr/lib/rpm/redhat/brp-mangle-shebangs
only seems to care about executable files, so this should help:

  # Sometimes Rust sources start with #![...] attributes, and "smart" editors think
  # it's a shebang and make them executable. Then brp-mangle-shebangs gets upset...
  find -name '*.rs' -type f -perm /111 -exec chmod -v -x '{}' '+'

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW
--
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux