Bug 1449582

Summary: FTBFS on big endian arches
Product: [Fedora] Fedora Reporter: Dan Horák <dan>
Component: qt5-qt3dAssignee: Than Ngo <than>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: helio, kde-sig, than
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-05-10 18:38:08 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 467765, 1071880    

Description Dan Horák 2017-05-10 10:07:15 UTC
qt5-qt3d 5.9 fails to build on ppc64 and s390x in koji. First problem is that the bundled assimp is used for the build (visible in build.log), likely it misses fixes from our package. Second problem is why the system assimp can't be used, I did a local rebuild and found following in the cmake logs (qt3d-opensource-src-5.9.0-beta3/s390x-redhat-linux-gnu/config.log)

...
looking for library assimp
Trying source 0 (type pkgConfig) of library assimp ...
+ /usr/bin/pkg-config --exists --silence-errors assimp '>' 3.3.1
pkg-config did not find package.
  => source produced no result.
Trying source 1 (type inline) of library assimp ...
+ cd /home/sharkcz/qt5-qt3d/qt3d-opensource-src-5.9.0-beta3/s390x-redhat-linux-gnu/config.tests/assimp && /usr/lib64/qt5/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CON
> Info: creating stash file /home/sharkcz/qt5-qt3d/qt3d-opensource-src-5.9.0-beta3/s390x-redhat-linux-gnu/config.tests/.qmake.stash
+ cd /home/sharkcz/qt5-qt3d/qt3d-opensource-src-5.9.0-beta3/s390x-redhat-linux-gnu/config.tests/assimp && MAKEFLAGS= make
> g++ -c -pipe -O2 -Wall -W -fPIC  -I/home/sharkcz/qt5-qt3d/qt3d-opensource-src-5.9.0-beta3/config.tests/assimp -I. -I/usr/lib64/qt5/mkspecs/linux-g++ -o main.o /home/sharkcz/qt5-qt3d/qt3d-o
> g++ -Wl,-O1 -o assimp main.o   -lassimp
> /usr/lib/gcc/s390x-redhat-linux/7/../../../../lib64/libassimp.so: undefined reference to `p2t::CDT::~CDT()'
> /usr/lib/gcc/s390x-redhat-linux/7/../../../../lib64/libassimp.so: undefined reference to `p2t::CDT::AddHole(std::vector<p2t::Point*, std::allocator<p2t::Point*> >)'
> /usr/lib/gcc/s390x-redhat-linux/7/../../../../lib64/libassimp.so: undefined reference to `p2t::CDT::Triangulate()'
> /usr/lib/gcc/s390x-redhat-linux/7/../../../../lib64/libassimp.so: undefined reference to `p2t::CDT::CDT(std::vector<p2t::Point*, std::allocator<p2t::Point*> >)'
> /usr/lib/gcc/s390x-redhat-linux/7/../../../../lib64/libassimp.so: undefined reference to `p2t::CDT::GetTriangles()'
> collect2: error: ld returned 1 exit status
> make: *** [Makefile:65: assimp] Error 1
 => source failed verification.
test config.core.libraries.assimp FAILED
...

The p2t::CDT class should be coming from the poly2tri package. Probably there is a difference in poly2tri between the arches.


Version-Release number of selected component (if applicable):
qt5-qt3d-5.9.0-0.beta.3.fc27

Additional information:
Access to a ppc64 machine is available for package maintainer via https://fedoraproject.org/wiki/Test_Machine_Resources_For_Package_Maintainers

Comment 1 Than Ngo 2017-05-10 10:14:07 UTC
i'm already aware of this issue and working on a fix.

Comment 2 Than Ngo 2017-05-10 18:38:08 UTC
it's fixed in qt5-qt3d-5.9.0-1.beta.3.fc27

https://koji.fedoraproject.org/koji/taskinfo?taskID=19489293