Bug 840588

Summary: FTBFS: Buld failure on PPC64: ./yarr/pcre/pcre.h:49:18: fatal error: jstl.h: No such file or directory
Product: Red Hat Enterprise Linux 5 Reporter: Tomas Pelka <tpelka>
Component: xulrunnerAssignee: Martin Stransky <stransky>
Status: CLOSED WONTFIX QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 5.8CC: caillon, dan, gecko-bugs-nobody, gustavold, johnp, lemenkov, stransky, walters
Target Milestone: rc   
Target Release: ---   
Hardware: powerpc   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 814879 Environment:
Last Closed: 2012-07-19 10:08:21 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: 814879    
Bug Blocks:    

Description Tomas Pelka 2012-07-16 15:55:10 UTC
+++ This bug was initially created as a clone of Bug #814879 +++

Description of problem:
xulrunner-11.0-3.fc17 fails to build on PPC64 with the following error:

c++ -o jsanalyze.o -c  -fvisibility=hidden -DOSTYPE=\"Linux2.6.32-220.4.2.el6\" -DOSARCH=Linux -DEXPORT_JS_API -DIMPL_MFBT -DJS_HAS_CTYPES -DDLL_PREFIX=\"lib\" -DDLL_SUFFIX=\".so\" -DNO_NSPR_10_SUPPORT -Ictypes/libffi/include -I.  -I. -I. -I./../../dist/include -I./../../dist/include/nsprpub  -I/usr/include/nspr4  -I. -I./assembler -I./yarr  -fPIC  -fno-rtti -pedantic -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -Wno-long-long -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fno-exceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -fpermissive -pthread -pipe  -DNDEBUG -DTRIMMED -g -O3 -freorder-blocks  -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsanalyze.pp /builddir/build/BUILD/xulrunner-11.0/mozilla-release/js/src/jsanalyze.cpp
In file included from ./vm/RegExpObject.h:54:0,
                 from ./jsscriptinlines.h:53,
                 from /builddir/build/BUILD/xulrunner-11.0/mozilla-release/js/src/vm/Stack-inl.h:49,
                 from /builddir/build/BUILD/xulrunner-11.0/mozilla-release/js/src/jsinferinlines.h:50,
                 from /builddir/build/BUILD/xulrunner-11.0/mozilla-release/js/src/jsanalyze.cpp:45:
./yarr/pcre/pcre.h:49:18: fatal error: jstl.h: No such file or directory


Version-Release number of selected component (if applicable):
xulrunner-11.0-3.fc17

How reproducible:
always

Steps to Reproduce:
1. ppc-koji build --scratch f17 xulrunner-11.0-3.fc17.src.rpm
2.
3.
  
Actual results:
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=483598

Expected results:


Additional info:

--- Additional comment from gustavold.ibm.com on 2012-04-25 14:11:10 EDT ---

Created attachment 580226 [details]
Use YARR interpreter instead of PCRE on platforms where YARR JIT is not supported

Based on Landry Breuil's patch posted on the upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=691898

--- Additional comment from gustavold.ibm.com on 2012-04-25 14:14:08 EDT ---

Created attachment 580229 [details]
Only build SPS on supported platforms

Based on Mike Hommey's patch posted on the upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=734335

--- Additional comment from gustavold.ibm.com on 2012-04-25 14:20:27 EDT ---

Created attachment 580231 [details]
Disable JEMALLOC_STATIC_SIZES on powerpc

Disables the use of JEMALLOC_STATIC_SIZES on powerpc since it assumes 4k page size. JEMALLOC_STATIC_SIZES was introduced after landing of: https://bugzilla.mozilla.org/show_bug.cgi?id=571209

--- Additional comment from gustavold.ibm.com on 2012-04-25 14:35:07 EDT ---

I was able to build xulrunner-12.0-1.fc17 on powerpc:
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=512647

I used the patches #580226, #580229 and #580231 to build xulrunner on powerpc. It was not needed to build successfully, but I also used in my scratch build Martin's patch posted here: https://bugzilla.mozilla.org/show_bug.cgi?id=746112

firefox-12.0-1.fc17 built with no issues.

I tested the built packages on ppc64 and it works as good as [xulrunner|firefox]-10.0-1.fc17.

If you are interested, I have also xulrunner-11.0-3.fc17 version of these patches.

--- Additional comment from stransky on 2012-04-26 03:18:10 EDT ---

"it works as good as [xulrunner|firefox]-10.0-1.fc17" - so does it freeze or not? (Bug 813095).

--- Additional comment from gustavold.ibm.com on 2012-04-26 03:26:23 EDT ---

Yes, it does :(

--- Additional comment from stransky on 2012-05-03 05:42:17 EDT ---

The patch should be included in Firefox 15.

--- Additional comment from dan on 2012-05-07 10:32:46 EDT ---

The changes are committed to master branch in Fedora and a scratch build is at http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=535816
Marting will update F<=17 branches later.

--- Additional comment from lemenkov on 2012-05-07 10:55:52 EDT ---

(In reply to comment #8)
> The changes are committed to master branch in Fedora and a scratch build is at
> http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=535816
> Marting will update F<=17 branches later.

Still consumes 100% CPU while executing jscripts. If I switch to safe mode it starts at least.

I wonder can we borrow some PPC-related patches from TenFourFox project. I'm using it on a daily basis and it works good.

http://code.google.com/p/tenfourfox/

--- Additional comment from stransky on 2012-05-14 04:31:33 EDT ---

The bug on PPC/Fedora17 is cuased by broken gcc47 on ppc. The firefox version is not related here.

--- Additional comment from stransky on 2012-06-20 09:51:28 EDT ---

It should be already fixed on F17.

Comment 2 Martin Stransky 2012-07-19 10:08:21 UTC
We don't ship xulrunner 11 on RHEL 5.8.

Comment 3 Tomas Pelka 2012-07-19 10:18:41 UTC
(In reply to comment #2)
> We don't ship xulrunner 11 on RHEL 5.8.

I met that on firefox-10.0.6-1.el5_8 just for make it clear.