Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.

Bug 1056067

Summary: Add a way to break qt5-qttools<>qt5-qtwebkit build dependency loop
Product: [Fedora] Fedora Reporter: Marcin Juszkiewicz <mjuszkie>
Component: qt5-qttoolsAssignee: Ngo Than <than>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: jreznik, kevin, ltinkl, rdieter, rnovacek, than
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-01-21 15:40:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Marcin Juszkiewicz 2014-01-21 13:47:04 UTC
Description of problem:

When Qt5 needs to be bootstrapped there is circular build dependency between qt5-qttools and qt5-qtwebkit packages. It is easy to handle but needs to be done in few places in spec file so I added "with_webkit" variable which controls that.

Hope that someone will find it useful.

Version-Release number of selected component (if applicable):

5.2.0

How reproducible:

always

Steps to Reproduce:
1. build package on aarch64
2.
3.

Actual results:

fails due to lack of qt5-qtwebkit

Expected results:

builds

Additional info:

Comment 1 Rex Dieter 2014-01-21 14:20:53 UTC
That's precisely why this is included in qt5-qtwebkit.spec:

# define to build docs, need to undef this for bootstrapping
# where qt5-qttools builds are not yet available
# only primary archs (for now), allow secondary to bootstrap
%ifarch %{arm} %{ix86} x86_64
%define docs 1
%endif


So, either: 

1. manually undef the 'docs' macro

or (probably preferable), 

2. I can add aarch64 to the list of secondary archs there (and elsewhere in other qt5-related packages).

Comment 2 Marcin Juszkiewicz 2014-01-21 14:38:27 UTC
Building docs is one thing. 

But during bootstrapping you can not run mock with qt5-qttools before you build qt5-qtwebkit which needs qt5-qttools due to one line in qt5-qttools.spec:

BuildRequires: qt5-qtwebkit-devel

And when this gets removed build still fails cause it tries to package not-built parts.

Comment 3 Rex Dieter 2014-01-21 14:42:30 UTC
The way it works is:

1. build/bootstrap qt5-qtwebkit without docs (which requires qt5-qtools)
2. build qt5-qttools
3. profit

Comment 4 Rex Dieter 2014-01-21 14:58:25 UTC
Hrm, my login in option 2 in comment #1 may be wrong, Is aarch64 included in %{arm} or not?

If not, bootstrapping should 'just work' here, since aarch64 isn't considered a primary arch yet.

Comment 5 Rex Dieter 2014-01-21 15:17:07 UTC
Ok, confirmed on #fedora-arm irc that aarch64 is not in %{arm}, so this should theoretically not be a problem.  But apparently it is?  Can you point me to some failed build logs, to get a better grasp of what's going wrong?

Comment 6 Marcin Juszkiewicz 2014-01-21 15:20:18 UTC
(In reply to Rex Dieter from comment #3)

O! I should ask before going with my graph then. Please add "aarch64" to docs exclusion list and we can close that bug as NOTABUG.

Comment 7 Rex Dieter 2014-01-21 15:40:58 UTC
Looks like it's already excluded, since aarch64 isn't matched in existing conditional
%ifarch %{arm} %{ix86} x86_64
%define docs 1
%endif