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

Bug 349063

Summary: >=x11-libs/qt-webkit-4.7 does not compile with USE="jit"
Product: Gentoo Linux Reporter: Podko Andrew <copyer>
Component: New packagesAssignee: Qt Bug Alias <qt>
Status: RESOLVED FIXED    
Severity: normal CC: copyer, mgorny
Priority: High    
Version: unspecified   
Hardware: PPC   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 390963    
Attachments: build.log

Description Podko Andrew 2010-12-19 08:19:04 UTC
with USE="jit" compilation aborted with errors
jit/JITStubs.h:193:2: error: #error "JITStackFrame not defined for this platform."
jit/ExecutableAllocator.h:272:6: error: #error "The cacheFlush support is missing on this platform."



Reproducible: Always

Steps to Reproduce:
1. add  "jit" in USE flags
2. try emerge qt-webkit -1
3. compilation aborted with errors

Actual Results:  
powerpc-unknown-linux-gnu-g++ -c -O2 -mcpu=7450 -mtune=7450 -pipe -maltivec -mabi=altivec -frename-registers -fivopts -ftree-vectorize -I/usr/include/freetype2 -Wall -Wreturn-type -fno-strict-aliasing -Wcast-align -Wchar-subscripts -Wformat-security -Wreturn-type -Wno-unused-parameter -Wno-sign-compare -Wno-switch -Wno-switch-enum -Wundef -Wmissing-noreturn -Winit-self -fno-stack-protector -O3 -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -D_REENTRANT -DBUILDING_QT__=1 -DWTF_USE_ACCELERATED_COMPOSITING -DNDEBUG -DBUILDING_QT__ -DBUILDING_JavaScriptCore -DBUILDING_WTF -DENABLE_JIT=1 -DENABLE_YARR_JIT=1 -DENABLE_YARR=1 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_SHARED -I../../../../mkspecs/linux-g++ -I. -I../../../../include/QtCore -I../../../../include -I. -I../../webkit -Iassembler -Ibytecode -Ibytecompiler -Idebugger -Iinterpreter -Ijit -Iparser -Ipcre -Iprofiler -Iruntime -Iwtf -Iwtf/symbian -Iwtf/unicode -Iyarr -IAPI -IForwardingHeaders -Igenerated -I/include/QtWebKit -Ipcre -I/JavaScriptCore/tmp -I.moc/release-static -o .obj/release-static/JSBase.o API/JSBase.cpp
In file included from runtime/JSGlobalData.h:34:0,
                 from runtime/Identifier.h:24,
                 from runtime/Structure.h:29,
                 from runtime/JSCell.h:30,
                 from runtime/JSAPIValueWrapper.h:26,
                 from API/APICast.h:29,
                 from API/JSBase.cpp:30:
jit/ExecutableAllocator.h:272:6: error: #error "The cacheFlush support is missing on this platform."
In file included from runtime/JSGlobalData.h:35:0,
                 from runtime/Identifier.h:24,
                 from runtime/Structure.h:29,
                 from runtime/JSCell.h:30,
                 from runtime/JSAPIValueWrapper.h:26,
                 from API/APICast.h:29,
                 from API/JSBase.cpp:30:
jit/JITStubs.h:193:2: error: #error "JITStackFrame not defined for this platform."
powerpc-unknown-linux-gnu-g++ -c -O2 -mcpu=7450 -mtune=7450 -pipe -maltivec -mabi=altivec -frename-registers -fivopts -ftree-vectorize -I/usr/include/freetype2 -Wall -Wreturn-type -fno-strict-aliasing -Wcast-align -Wchar-subscripts -Wformat-security -Wreturn-type -Wno-unused-parameter -Wno-sign-compare -Wno-switch -Wno-switch-enum -Wundef -Wmissing-noreturn -Winit-self -fno-stack-protector -O3 -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -D_REENTRANT -DBUILDING_QT__=1 -DWTF_USE_ACCELERATED_COMPOSITING -DNDEBUG -DBUILDING_QT__ -DBUILDING_JavaScriptCore -DBUILDING_WTF -DENABLE_JIT=1 -DENABLE_YARR_JIT=1 -DENABLE_YARR=1 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_SHARED -I../../../../mkspecs/linux-g++ -I. -I../../../../include/QtCore -I../../../../include -I. -I../../webkit -Iassembler -Ibytecode -Ibytecompiler -Idebugger -Iinterpreter -Ijit -Iparser -Ipcre -Iprofiler -Iruntime -Iwtf -Iwtf/symbian -Iwtf/unicode -Iyarr -IAPI -IForwardingHeaders -Igenerated -I/include/QtWebKit -Ipcre -I/JavaScriptCore/tmp -I.moc/release-static -o .obj/release-static/JSCallbackConstructor.o API/JSCallbackConstructor.cpp
In file included from runtime/JSGlobalData.h:34:0,
                 from interpreter/CallFrame.h:26,
                 from ./runtime/ClassInfo.h:26,
                 from ./runtime/JSObject.h:27,
                 from API/JSCallbackConstructor.h:30,
                 from API/JSCallbackConstructor.cpp:27:
jit/ExecutableAllocator.h:272:6: error: #error "The cacheFlush support is missing on this platform."
In file included from runtime/JSGlobalData.h:35:0,
                 from interpreter/CallFrame.h:26,
                 from ./runtime/ClassInfo.h:26,
                 from ./runtime/JSObject.h:27,
                 from API/JSCallbackConstructor.h:30,
                 from API/JSCallbackConstructor.cpp:27:
jit/JITStubs.h:193:2: error: #error "JITStackFrame not defined for this platform."
make: *** [.obj/release-static/JSBase.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [.obj/release-static/JSCallbackConstructor.o] Error 1
emake failed
Comment 1 Podko Andrew 2010-12-19 08:23:09 UTC
Portage 2.1.9.25 (default/linux/powerpc/ppc32/10.0, gcc-4.5.1, glibc-2.12.1-r3, 2.6.37-rc5 ppc)
=================================================================
System uname: Linux-2.6.37-rc5-ppc-7447A,_altivec_supported-with-gentoo-2.0.1
Timestamp of tree: Sat, 18 Dec 2010 18:30:01 +0000
distcc 3.1 powerpc-unknown-linux-gnu [disabled]
app-shells/bash:     4.1_p9
dev-lang/python:     2.6.5-r3, 2.7.1, 3.1.3
dev-util/cmake:      2.8.3
sys-apps/baselayout: 2.0.1-r1
sys-apps/openrc:     0.6.8
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.68
sys-devel/automake:  1.6.3, 1.7.9-r1, 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.21
sys-devel/gcc:       4.5.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.82
virtual/os-headers:  2.6.36.1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="ppc ~ppc"
ACCEPT_LICENSE="* -@EULA Q3AEULA LOKI-EULA"
CBUILD="powerpc-unknown-linux-gnu"
CFLAGS="-O2 -mcpu=7450 -mtune=7450 -pipe -maltivec -mabi=altivec -frename-registers -fivopts -ftree-vectorize"
CHOST="powerpc-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/rc.d /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/wget"
CXXFLAGS="-O2 -mcpu=7450 -mtune=7450 -pipe -maltivec -mabi=altivec -frename-registers -fivopts -ftree-vectorize"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs collision-protect distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://192.168.1.101/pub/Distrib/System/Gentoo/ http://ftp.mgts.by/pub/gentoo-distfiles"
LANG="ru_RU.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="ru en"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/zugaina /usr/local/portage/layman/zugaina /usr/local/portage/layman/x11 /usr/local/portage/layman/desktop-effects /usr/local/portage/my"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3ds 7zip X Xaw3d a52 aac acl additions aften aiglx allegro alsa altivec amrnb amuled ao apm asf aspnet2 attr bash-completion berkdb bineditor bluetooth bookmarks boost bzip2 bzlib cairo cdaudio cdio charconv chm cleartype cli clucene cmake consolekit cracklib crypt css cups curl cvs cxx d dbus dc1394 debugger designer devfs-compat device-mapper dga dhcp directv disk-partition djvu dmraid dmx dri dts dv dvb dvbpsi dvd dvdnav dvdr dvdread eap-tls ebook enca encode exif exiv2 expat extensions extrafilters fam fat ffmpeg fftw fifi flac fontconfig fontforge fortran freetype ftp fts3 fuse gallium gif git gles glib glitz glut gnome gnutls gphoto2 gpl gpm graphite grp gs gsm gtk gtk2 hardware-carrier hddtemp hdri hfs history httpd ibam iconv icu id3 id3tag idn ieee1394 ifp imlib inotify ioctl iplayer iptv ipv6 jabber jack jfs jpeg jpeg2k kipi lame lcms libnotify libsamplerate libwww live llvm logitech-mouse lzma lzo mad madwifi matroska mdadm midi mikmod mjpeg mng modules moonlight mp2 mp3 mp4 mpeg mplayer mpx mudflap ncurses netboot network network_manager nls no-seamonkey nocardbus nosendmail nptl nptlonly nsplugin ntfs nut ogg openal opencore-amr openexr opengl openmp optimization optimized-qmake optsoscar oscar osdmenu otr pam pam_timestamp pango pcap pcre pdf perl physfs pic pmu png policykit pp ppc ppds ppp pppd ps pulseaudio pvr python q32 qca qpak qt3support qt4 qtscript quicktime radio rdesktop rdp readline reiser4 reiserfs remote rtc samba scanner schedule sdl secure-delete sensord session shm slang slp smbclient smbsharemodes smp sndfile sockets speex spell sql sqlite srt ssl stream strigi strong-optimization subtitles subversion svg swscaler symlink sysfs sysvipc taglib teletext theora threads threadsafe tidy tiff timidity toolbar transcode truetype type3 unicode urandom usb userlocales utf8 v4l v4l2 vcd vdpau vdr vnc vorbis vorbis-psy vte wad webkit wicd wideband wifi wxwindows xanim xattr xcb xchatdccserver xcomposite xfs xft xine xkb xml xorg xpm xprint xv xvid yv12 zip zlib zvbi" ALSA_CARDS="aoa aoa-fabric-layout aoa-onyx aoa-soundbus aoa-soundbus-i2s aoa-tas aoa-toonie powermac usb-audio via82xx" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="*" APACHE2_MPMS="worker" CAMERAS="*" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ru en" LIRC_DEVICES="*" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2010-12-19 10:55:18 UTC
Seems to be platform-specific bug. Please attach the complete build log.
Comment 3 Podko Andrew 2010-12-19 11:25:51 UTC
Created attachment 257535 [details]
build.log
Comment 4 Podko Andrew 2010-12-19 11:29:54 UTC
(In reply to comment #2)
> Seems to be platform-specific bug. Please attach the complete build log.
> 

cat /var/tmp/portage/x11-libs/qt-webkit-4.7.1-r1/work/qt-everywhere-opensource-src-4.7.1/src/3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocator.h | grep CPU
#if CPU(X86) || CPU(X86_64)
#elif CPU(ARM_THUMB2) && OS(IPHONE_OS)
#elif CPU(ARM_THUMB2) && OS(LINUX)
#elif CPU(ARM_TRADITIONAL) && OS(LINUX)

No JIT for PowerPC :(
Comment 5 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2010-12-19 14:56:34 UTC
I guess USE=jit would be a candidate for profile-wide use.mask then.
Comment 6 Guy 2011-02-12 20:12:26 UTC
You may want to consider bug# 354657.

I encountered a segmentation fault in the same area when attempting to build qt-webkit-4.7.1-r1. However, I'm building for '~x86', not ppc.

I solved my problem by setting MAKEOPTS="-j1". Just a thought.
Comment 7 Malte E. 2011-04-15 01:11:47 UTC
I did not encounter this problem on amd64, with neither 4.7.1-r1 or the current 4.7.2. Possibly, it depends on the architechture or it just happens sometimes.
Comment 8 Raúl Porcel (RETIRED) gentoo-dev 2011-06-18 16:14:04 UTC
jit is only for amd64/arm/x86, so all the rest of the arches should have it masked...
Comment 9 Davide Pesavento (RETIRED) gentoo-dev 2011-11-30 00:10:17 UTC
USE="jit" is now masked on all arches except amd64/arm/x86