Bug 1032452 - scl-utils: Macro scl_files expands bad on 64 bit architecture if metapackage is noarch
scl-utils: Macro scl_files expands bad on 64 bit architecture if metapackage ...
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: scl-utils (Show other bugs)
7.0
Unspecified Unspecified
unspecified Severity medium
: rc
: ---
Assigned To: Jan Zeleny
Lukas Zachar
:
Depends On: 1009921 1029516 1040860
Blocks: 1007875
  Show dependency treegraph
 
Reported: 2013-11-20 04:01 EST by Marcela Mašláňová
Modified: 2014-06-18 04:01 EDT (History)
6 users (show)

See Also:
Fixed In Version: scl-utils-20130529-2.el7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1029516
Environment:
Last Closed: 2014-04-17 15:06:02 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Marcela Mašláňová 2013-11-20 04:01:50 EST
+++ This bug was initially created as a clone of Bug #1029516 +++

+++ This bug was initially created as a clone of Bug #1009921 +++

If you try to build a noarch metapackage on 64 bit machine, you'll end up with error like this:

RPM build errors:
    Installed (but unpackaged) file(s) found:
   /opt/rh/python27/root/lib64

This is caused by these lines in macros.scl:

%ifarch x86_64 ppc ppc64 sparc sparc64 s390 s390x
%{_scl_root}/%{_lib}
%endif

The problem is, that %ifarch conditionals seems not to expand in %files section. To reproduce this, just write a specfile with %files section like this:

%files
%ifarch <yourarch>
this_file_wont_be_searched_for
%endif

this_file_wont_be_searched_for doesn't exist in BUILDROOT, but RPM raises no error (so this could as well be RPM error, not scl-utils problem).

It'd seem that the same should happen to %{_scl_root}/usr/%{_lib}, which uses the same conditionals, but this is included because there are lots of other directories included inside it, which masks the error.

Note You need to log in before you can comment on or make changes to this bug.