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