Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 727276

Summary: dev-lang/rust-1.41.1 has faulty patterns in QA_FLAGS_IGNORED (CFLAGS/LDFLAGS)
Product: Gentoo Linux Reporter: Agostino Sarubbo <ago>
Component: Current packagesAssignee: Georgy Yakovlev <gyakovlev>
Status: RESOLVED FIXED    
Severity: normal CC: rust
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 59506, 331933    
Attachments: build.log.bz2

Description Agostino Sarubbo gentoo-dev 2020-06-06 08:12:55 UTC
@@This is an auto-filed bug@@
If you think that a different summary clarifies the issue better, feel free to change it.

Issue: dev-lang/rust does not respect CFLAGS/LDFLAGS.
Discovered on: amd64

NOTE:
To reproduce this issue you may want to add "-frecord-gcc-switches" to CFLAGS/CXXFLAGS/FFLAGS/FCFLAGS and LDFLAGS="${LDFLAGS} -Wl,--defsym=__gentoo_check_ldflags__=0". If this is not something about c/c++ see this bug as an hint to hide the QA warning (with QA_FLAGS_IGNORED) where is not possible to respect CFLAGS/LDFLAGS.
Comment 1 Agostino Sarubbo gentoo-dev 2020-06-06 08:13:04 UTC
Created attachment 643586 [details]
build.log.bz2

build log and emerge --info
Comment 2 Georgy Yakovlev archtester gentoo-dev 2020-06-06 10:01:04 UTC
rust is compiled using rust, co CFLAGS do not work, ofc.

ebuild already defines

QA_FLAGS_IGNORED="                                                                                                                                                                                                                    
    usr/bin/*-${PV}                                                                                                                                                                                                                   
    usr/lib*/lib*.so                                                                                                                                                                                                                  
    usr/lib/rustlib/*/codegen-backends/librustc_codegen_llvm-llvm.so                                                                                                                                                                  
    usr/lib/rustlib/*/lib/lib*.so                                                                                                                                                                                                     
"

idk how it's possible to hit this warning.
Comment 3 Mike Gilbert gentoo-dev 2020-06-06 18:41:07 UTC
From ebuild(5):

       QA_FLAGS_IGNORED
              This  should contain a list of file paths, relative to the image
              directory, of files that do not contain  .GCC.command.line  sec‐
              tions  or contain .hash sections.  The paths may contain regular
              expressions with escape-quoted special characters.

              This variable is intended to be used on files of binary packages
              which  ignore  CFLAGS,  CXXFLAGS,  FFLAGS,  FCFLAGS, and LDFLAGS
              variables.

Note the phrase "the paths may contain regular expressions".

The patterns in the rust ebuild are faulty and will not match the paths that are actually installed.

It looks like you are using fnmatch (shell glob) syntax instead of regular expressions.
Comment 4 Mike Gilbert gentoo-dev 2020-06-06 18:45:21 UTC
It looks like the faulty patterns only appear in rust-1.41.1.ebuild. Later versions have corrected patterns.
Comment 5 Georgy Yakovlev archtester gentoo-dev 2020-06-06 20:25:26 UTC
ok, now got it.
of course I was looking in terminal at up-to-date ebuild, and pasted the old one from web view.
Comment 6 Larry the Git Cow gentoo-dev 2020-06-06 20:27:19 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3100724312fa44ee00e2795a6da9ad24401b4084

commit 3100724312fa44ee00e2795a6da9ad24401b4084
Author:     Georgy Yakovlev <gyakovlev@gentoo.org>
AuthorDate: 2020-06-06 20:26:11 +0000
Commit:     Georgy Yakovlev <gyakovlev@gentoo.org>
CommitDate: 2020-06-06 20:26:28 +0000

    dev-lang/rust: update QA_FLAGS_IGNORED patterns
    
    Closes: https://bugs.gentoo.org/727276
    Package-Manager: Portage-2.3.100, Repoman-2.3.22
    Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>

 dev-lang/rust/rust-1.41.1.ebuild | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)