Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 356883 - =media-tv/xbmc-10.0 fails to build on hardened (internal static python link not PIC)
Summary: =media-tv/xbmc-10.0 fails to build on hardened (internal static python link n...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Xbox project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-28 18:45 UTC by Rick Farina (Zero_Chaos)
Modified: 2012-03-29 16:20 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
full build log if needed (build.log,1.88 MB, text/plain)
2011-02-28 18:52 UTC, Rick Farina (Zero_Chaos)
Details
Patch to fix PIC code (XBPythonDllFuncs_fix_pic.patch,722 bytes, patch)
2011-03-01 04:11 UTC, Francisco Blas Izquierdo Riera (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Rick Farina (Zero_Chaos) gentoo-dev 2011-02-28 18:45:58 UTC
=media-tv/xbmc-10.0 fails to build on hardened

Reproducible: Always

Steps to Reproduce:
1.emerge xbmc
2.be sad
3.

Actual Results:  
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/../../../../x86_64-pc-linux-gnu/bin/ld: xbmc/lib/libPython/python.a(XBPythonDllFuncs.o): relocation R_X86_64_32S against `p_PyEval_ReleaseLock' can not be used when making a shared object; recompile with -fPIC
xbmc/lib/libPython/python.a: could not read symbols: Bad value

Expected Results:  
no error
Comment 1 Rick Farina (Zero_Chaos) gentoo-dev 2011-02-28 18:48:21 UTC
flea ~ # emerge --info
Portage 2.1.9.25 (hardened/linux/amd64, gcc-4.4.5, glibc-2.11.2-r3, 2.6.37-pentoo-r2-grsec x86_64)
=================================================================
System uname: Linux-2.6.37-pentoo-r2-grsec-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T6670_@_2.20GHz-with-gentoo-2.0.1
Timestamp of tree: Mon, 28 Feb 2011 14:30:01 +0000
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.6.6-r2
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1::pentoo
sys-apps/openrc:     0.7.0::pentoo
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.4_p6-r1, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.5
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.36.1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/openvpn/easy-rsa"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--nospinner"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox severe sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US"
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="/var/lib/layman/sunrise /var/lib/layman/enlightenment /var/lib/layman/ohnobinki /usr/src/pentoo/portage/trunk"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X Xaw3d a52 aac aalib abyss acl acpi adns alsa amd64 amr ao apache2 apm archive ares atmo attrib autoipd automount bash-completion bazaar berkdb bidi binary-drivers binfilter bluetooth branding bs2b btrfs bzip2 cairo caps cdda cddax cddb cdio cdr chardet cleartype cli consolekit cracklib crypt ctypes-python cue cups curl custom-cflags custom-optimization cvs cxx dbus device-mapper dirac directfb djvu dri dts dvb dvd dvdr dxr3 eap-sim emerald encode ewf exif expat extensions faac faad facedetect fbcon festival ffmpeg fftw firefox fits flac fluidsynth fontconfig fortran fpx fts3 fuse fwcutter gdbm gdu geoip geos geotiff ggi gif git glitz gml gnuplot gnutls gpm graphviz groupwise gs gsm gstreamer gtk gtk2 hardened hddtemp hdf5 health howl-compat icecast iconv icu id3tag idn imlib injection inotify iphone iplayer ipod ipv6 ithreads jack java jbig jce jpeg jpeg2k justify kate kqemu ladspa lame lcms ldap libass libcaca libnotify libproxy libsamplerate libssh2 libtiger libv4l libv4l2 lirc live lm_sensors logwatch lua lzma mad matroska mdadm mdnsresponder-compat meanwhile mem-scramble mercurial midi mikmod mmap mmx mng modplug modules mono moonlight motif mozdom mozembed mp3 mpeg mpi mtp mudflap multilib musepack musicbrainz ncurses network nptl nptlonly nsplugin ntp offensive ogdi ogg openal openexr opengl openmp optimization oss pam pcmcia pcre pentoo perl pic pnat png policykit postproc pppd prediction projectm pulseaudio pvr python pyx qemu qt-faststart qt3support qt4 rar raw readline rle romio rtmp rtsp samba scale0tilt schroedinger scrobbler sdl sdl-image secure-delete sensord session shine shout sid silc skins smi smp sms sndfile socks5 sound speed speex sqlite sse sse2 sse3 ssl ssse3 startup-notification subversion svg sysfs system-sqlite taglib tcl tcpd tcpreplay test-programs theora threads thunar tiff timidity tk tools tor tordns truetype twolame udev ugly unicode upnp urandom usb v4l v4l2 vaapi vcd vcdinfo vcdx vdr visual vlm vorbis vpx wavpack wifi wimax wma wma-fixed wmf wps x264 xattr xcb xcomposite xfce xft xine xinerama xml xmp xorg xosd xrandr xulrunner xv xvid xvmc zephyr zlib zvbi" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="ptp2" 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="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev intel vesa vga" XFCE_PLUGINS="brightness menu logout trash" 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, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 Rick Farina (Zero_Chaos) gentoo-dev 2011-02-28 18:49:32 UTC
Others are having this issue to it seems:

http://forums.gentoo.org/viewtopic-t-839280.html?sid=4270bcc033d499247c05c5e159e69f88
Comment 3 Rick Farina (Zero_Chaos) gentoo-dev 2011-02-28 18:50:59 UTC
abbreviated build log (full doesn't fit)

Compiling ../Python/Lib/idlelib/CodeContext.pyo
Compiling ../Python/Lib/idlelib/ColorDelegator.pyo
Compiling ../Python/Lib/idlelib/Debugger.pyo
ar crus paplayer.a AC3CDDACodec.o AC3Codec.o ADPCMCodec.o AIFFcodec.o AudioDecoder.o CDDAcodec.o CodecFactory.o VGMCodec.o FLACcodec.o MP3codec.o NSFCodec.o OGGcodec.o ReplayGain.o SIDCodec.o TimidityCodec.o WAVcodec.o WAVPackcodec.o YMCodec.o DVDPlayerCodec.o DTSCodec.o DTSCDDACodec.o PAPlayer.o OggCallback.o ModplugCodec.o SPCCodec.o    
Compiling ../Python/Lib/idlelib/Delegator.pyo
Compiling ../Python/Lib/idlelib/EditorWindow.pyo
make[1]: Leaving directory `/var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/cores/paplayer'
x86_64-pc-linux-gnu-g++ -march=native -O3 -pipe -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 -march=native -O3 -pipe -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 -Wl,-O1 -Wl,--as-needed -Wl,-O1 -Wl,--as-needed -o xbmc.bin -Wl,--whole-archive xbmc/lib/cmyth/libcmyth/libcmyth.a xbmc/lib/cmyth/librefmem/librefmem.a xbmc/linux/linux.a xbmc/utils/utils.a xbmc/cores/DllLoader/exports/util/exports_utils.a xbmc/cores/DllLoader/exports/exports.a -Wl,--no-whole-archive xbmc/xbmc.a xbmc/addons/addons.a xbmc/cores/playercorefactory/playercorefactory.a xbmc/cores/dvdplayer/DVDPlayer.a xbmc/cores/paplayer/paplayer.a xbmc/cores/VideoRenderers/VideoRenderer.a xbmc/cores/VideoRenderers/VideoShaders/VideoShaders.a guilib/guilib.a guilib/common/gui_common.a guilib/tinyXML/tinyxml.a xbmc/cdrip/cdrip.a xbmc/cores/cores.a xbmc/lib/libPython/python.a xbmc/cores/DllLoader/dllloader.a xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.a xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a xbmc/cores/dvdplayer/DVDCodecs/Overlay/Overlay.a xbmc/cores/dvdplayer/DVDCodecs/Video/Video.a xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxers.a xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreams.a xbmc/cores/dvdplayer/DVDSubtitles/DVDSubtitles.a xbmc/cores/AudioRenderers/audiorenderers.a xbmc/cores/ExternalPlayer/ExternalPlayer.a xbmc/FileSystem/filesystem.a xbmc/FileSystem/MusicDatabaseDirectory/musicdatabasedirectory.a xbmc/FileSystem/VideoDatabaseDirectory/videodatabasedirectory.a xbmc/karaoke/karaoke.a xbmc/lib/libPython/xbmcmodule/xbmcmodule.a xbmc/lib/libscrobbler/scrobbler.a xbmc/lib/libRTV/librtv-x86_64-linux.a xbmc/lib/libUPnP/libupnp-x86_64-linux.a xbmc/lib/libXDAAP/libxdaap-x86_64-linux.a xbmc/lib/libjsonrpc/libjsonrpc.a lib/jsoncpp/jsoncpp/src/lib_json/libjsoncpp.a xbmc/lib/libhttpapi/libhttpapi.a xbmc/lib/sqLite/sqllite.a xbmc/lib/libsquish/libsquish-x86_64-linux.a xbmc/lib/libapetag/.libs/libapetag.a lib/xbmc-dll-symbols/dll-symbols.a xbmc/settings/settings.a xbmc/lib/libXBMS/libxbms-x86_64-linux.a xbmc/lib/UnrarXLib/UnrarXLib.a xbmc/lib/libhts/libhts.a xbmc/posix/posix.a -lva -lva-glx -lXrandr -lfaac -lpulse -lSDL_image -lrt -ltiff -ljasper -lresolv -ldl -lSDL_mixer -lsmbclient -lfaad -lmysqlclient -lmodplug -lmpeg2convert -lmpeg2 -lwavpack -lcrypto -lssl -lz -llzo2 -lpthread -ljpeg -lbz2 -lass -lGLU -lGLEW -lGL  -lmad -lm   -lfontconfig   -lfribidi   -lsqlite3   -lpng14   -L/lib64 -lpcre   -lpcrecpp   -lcdio -lm   -lsamplerate   -lmms -lm -lglib-2.0   -lfreetype   -logg   -lvorbis -lm -logg   -lvorbisenc -lvorbis -lm -logg   -Wl,-O1 -Wl,--as-needed -rdynamic -L/usr/lib64/mysql -lmysqlclient -L/usr//lib -lz -lcrypt -lnsl -lm -L/usr/lib/ -lssl -lcrypto -lasound   -lenca -lm   -lXt -lX11   -lXtst   -lXext   -lXmu -lXt -lX11   -lXinerama   -lcurl   -ldbus-1 -lpthread -lrt   -lSDL -lpthread   -lavcodec -lavformat -lavutil -lpostproc -lswscale   -rdynamic
Compiling ../Python/Lib/idlelib/FileList.pyo
Compiling ../Python/Lib/idlelib/FormatParagraph.pyo
Compiling ../Python/Lib/idlelib/GrepDialog.pyo
Compiling ../Python/Lib/idlelib/IOBinding.pyo
Compiling ../Python/Lib/idlelib/IdleHistory.pyo
Compiling ../Python/Lib/idlelib/MultiStatusBar.pyo
Compiling ../Python/Lib/idlelib/ObjectBrowser.pyo
Compiling ../Python/Lib/idlelib/OutputWindow.pyo
Compiling ../Python/Lib/idlelib/ParenMatch.pyo
Compiling ../Python/Lib/idlelib/PathBrowser.pyo
Compiling ../Python/Lib/idlelib/Percolator.pyo
Compiling ../Python/Lib/idlelib/PyParse.pyo
Compiling ../Python/Lib/idlelib/PyShell.pyo
Compiling ../Python/Lib/idlelib/RemoteDebugger.pyo
Compiling ../Python/Lib/idlelib/RemoteObjectBrowser.pyo
Compiling ../Python/Lib/idlelib/ReplaceDialog.pyo
Compiling ../Python/Lib/idlelib/ScriptBinding.pyo
Compiling ../Python/Lib/idlelib/ScrolledList.pyo
Compiling ../Python/Lib/idlelib/SearchDialog.pyo
Compiling ../Python/Lib/idlelib/SearchDialogBase.pyo
Compiling ../Python/Lib/idlelib/SearchEngine.pyo
Compiling ../Python/Lib/idlelib/StackViewer.pyo
Compiling ../Python/Lib/idlelib/ToolTip.pyo
Compiling ../Python/Lib/idlelib/TreeWidget.pyo
Compiling ../Python/Lib/idlelib/UndoDelegator.pyo
Compiling ../Python/Lib/idlelib/WidgetRedirector.pyo
Compiling ../Python/Lib/idlelib/WindowList.pyo
Compiling ../Python/Lib/idlelib/ZoomHeight.pyo
Compiling ../Python/Lib/idlelib/__init__.pyo
Compiling ../Python/Lib/idlelib/aboutDialog.pyo
Compiling ../Python/Lib/idlelib/buildapp.pyo
Compiling ../Python/Lib/idlelib/configDialog.pyo
Compiling ../Python/Lib/idlelib/configHandler.pyo
Compiling ../Python/Lib/idlelib/configHelpSourceEdit.pyo
Compiling ../Python/Lib/idlelib/configSectionNameDialog.pyo
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/../../../../x86_64-pc-linux-gnu/bin/ld: xbmc/lib/libPython/python.a(XBPythonDllFuncs.o): relocation R_X86_64_32S against `p_PyEval_ReleaseLock' can not be used when making a shared object; recompile with -fPIC
xbmc/lib/libPython/python.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [xbmc.bin] Error 1
make: *** Waiting for unfinished jobs....
Compiling ../Python/Lib/idlelib/dynOptionMenuWidget.pyo
Compiling ../Python/Lib/idlelib/idle.pyo
Compiling ../Python/Lib/idlelib/idlever.pyo
Compiling ../Python/Lib/idlelib/keybindingDialog.pyo
Compiling ../Python/Lib/idlelib/rpc.pyo
Compiling ../Python/Lib/idlelib/run.pyo
Compiling ../Python/Lib/idlelib/tabpage.pyo
Compiling ../Python/Lib/idlelib/testcode.pyo
Compiling ../Python/Lib/idlelib/textView.pyo
Compiling ../Python/Lib/lib-old/Para.pyo
Compiling ../Python/Lib/lib-old/addpack.pyo
Compiling ../Python/Lib/lib-old/cmp.pyo
Compiling ../Python/Lib/lib-old/cmpcache.pyo
Compiling ../Python/Lib/lib-old/codehack.pyo
Compiling ../Python/Lib/lib-old/dircmp.pyo
Compiling ../Python/Lib/lib-old/dump.pyo
Compiling ../Python/Lib/lib-old/find.pyo
Compiling ../Python/Lib/lib-old/fmt.pyo
Compiling ../Python/Lib/lib-old/grep.pyo
Compiling ../Python/Lib/lib-old/lockfile.pyo
Compiling ../Python/Lib/lib-old/newdir.pyo
Compiling ../Python/Lib/lib-old/ni.pyo
Compiling ../Python/Lib/lib-old/packmail.pyo
Compiling ../Python/Lib/lib-old/poly.pyo
Compiling ../Python/Lib/lib-old/rand.pyo
Compiling ../Python/Lib/lib-old/tb.pyo
Compiling ../Python/Lib/lib-old/util.pyo
Compiling ../Python/Lib/lib-old/whatsound.pyo
Compiling ../Python/Lib/lib-old/zmod.pyo
Compiling ../Python/Lib/lib-tk/Canvas.pyo
Compiling ../Python/Lib/lib-tk/Dialog.pyo
Compiling ../Python/Lib/lib-tk/FileDialog.pyo
Compiling ../Python/Lib/lib-tk/FixTk.pyo
Compiling ../Python/Lib/lib-tk/ScrolledText.pyo
Compiling ../Python/Lib/lib-tk/SimpleDialog.pyo
Compiling ../Python/Lib/lib-tk/Tix.pyo
Compiling ../Python/Lib/lib-tk/Tkconstants.pyo
Compiling ../Python/Lib/lib-tk/Tkdnd.pyo
Compiling ../Python/Lib/lib-tk/Tkinter.pyo
Compiling ../Python/Lib/lib-tk/tkColorChooser.pyo
Compiling ../Python/Lib/lib-tk/tkCommonDialog.pyo
Compiling ../Python/Lib/lib-tk/tkFileDialog.pyo
Compiling ../Python/Lib/lib-tk/tkFont.pyo
Compiling ../Python/Lib/lib-tk/tkMessageBox.pyo
Compiling ../Python/Lib/lib-tk/tkSimpleDialog.pyo
Compiling ../Python/Lib/lib-tk/turtle.pyo
Compiling ../Python/Lib/logging/__init__.pyo
Compiling ../Python/Lib/logging/config.pyo
Compiling ../Python/Lib/logging/handlers.pyo
Compiling ../Python/Lib/xml/__init__.pyo
Compiling ../Python/Lib/plat-linux2/CDROM.pyo
Compiling ../Python/Lib/plat-linux2/DLFCN.pyo
Compiling ../Python/Lib/plat-linux2/IN.pyo
Compiling ../Python/Lib/plat-linux2/TYPES.pyo
Compiling ../Python/Lib/bsddb/test/__init__.pyo
Compiling ../Python/Lib/bsddb/test/test_1413192.pyo
Compiling ../Python/Lib/bsddb/test/test_all.pyo
Compiling ../Python/Lib/bsddb/test/test_associate.pyo
Compiling ../Python/Lib/bsddb/test/test_basics.pyo
Compiling ../Python/Lib/bsddb/test/test_compat.pyo
Compiling ../Python/Lib/bsddb/test/test_dbobj.pyo
Compiling ../Python/Lib/bsddb/test/test_dbshelve.pyo
Compiling ../Python/Lib/bsddb/test/test_dbtables.pyo
Compiling ../Python/Lib/bsddb/test/test_env_close.pyo
Compiling ../Python/Lib/bsddb/test/test_get_none.pyo
Compiling ../Python/Lib/bsddb/test/test_join.pyo
Compiling ../Python/Lib/bsddb/test/test_lock.pyo
Compiling ../Python/Lib/bsddb/test/test_misc.pyo
Compiling ../Python/Lib/bsddb/test/test_pickle.pyo
Compiling ../Python/Lib/bsddb/test/test_queue.pyo
Compiling ../Python/Lib/bsddb/test/test_recno.pyo
Compiling ../Python/Lib/bsddb/test/test_thread.pyo
Compiling ../Python/Lib/distutils/command/__init__.pyo
Compiling ../Python/Lib/distutils/command/bdist.pyo
Compiling ../Python/Lib/distutils/command/bdist_dumb.pyo
Compiling ../Python/Lib/distutils/command/bdist_rpm.pyo
Compiling ../Python/Lib/distutils/command/bdist_wininst.pyo
Compiling ../Python/Lib/distutils/command/build.pyo
Compiling ../Python/Lib/distutils/command/build_clib.pyo
Compiling ../Python/Lib/distutils/command/build_ext.pyo
Compiling ../Python/Lib/distutils/command/build_py.pyo
Compiling ../Python/Lib/distutils/command/build_scripts.pyo
Compiling ../Python/Lib/distutils/command/clean.pyo
Compiling ../Python/Lib/distutils/command/config.pyo
Compiling ../Python/Lib/distutils/command/install.pyo
Compiling ../Python/Lib/distutils/command/install_data.pyo
Compiling ../Python/Lib/distutils/command/install_headers.pyo
Compiling ../Python/Lib/distutils/command/install_lib.pyo
Compiling ../Python/Lib/distutils/command/install_scripts.pyo
Compiling ../Python/Lib/distutils/command/register.pyo
Compiling ../Python/Lib/distutils/command/sdist.pyo
Compiling ../Python/Lib/distutils/tests/support.pyo
Compiling ../Python/Lib/distutils/tests/__init__.pyo
Compiling ../Python/Lib/distutils/tests/test_build_py.pyo
Compiling ../Python/Lib/distutils/tests/test_build_scripts.pyo
Compiling ../Python/Lib/distutils/tests/test_dist.pyo
Compiling ../Python/Lib/distutils/tests/test_install.pyo
Compiling ../Python/Lib/distutils/tests/test_install_scripts.pyo
Compiling ../Python/Lib/email/test/__init__.pyo
Compiling ../Python/Lib/email/test/test_email.pyo
Compiling ../Python/Lib/email/test/test_email_codecs.pyo
Compiling ../Python/Lib/email/test/test_email_torture.pyo
Compiling ../Python/Lib/xml/dom/NodeFilter.pyo
Compiling ../Python/Lib/xml/dom/__init__.pyo
Compiling ../Python/Lib/xml/dom/domreg.pyo
Compiling ../Python/Lib/xml/dom/expatbuilder.pyo
Compiling ../Python/Lib/xml/dom/minicompat.pyo
Compiling ../Python/Lib/xml/dom/minidom.pyo
Compiling ../Python/Lib/xml/dom/pulldom.pyo
Compiling ../Python/Lib/xml/dom/xmlbuilder.pyo
Compiling ../Python/Lib/xml/parsers/__init__.pyo
Compiling ../Python/Lib/xml/parsers/expat.pyo
Compiling ../Python/Lib/xml/sax/__init__.pyo
Compiling ../Python/Lib/xml/sax/_exceptions.pyo
Compiling ../Python/Lib/xml/sax/expatreader.pyo
Compiling ../Python/Lib/xml/sax/handler.pyo
Compiling ../Python/Lib/xml/sax/saxutils.pyo
Compiling ../Python/Lib/xml/sax/xmlreader.pyo
pushd ../Python/build/lib.linux-x86_64-2.4/ && \
		zip -0guq ../../../../../../system/python/python24.zip *.so; \
		popd
/var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/Python/build/lib.linux-x86_64-2.4 /var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/linux
/var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/linux
pushd ../Python/Lib/ && \
		zip -0gurq ../../../../../system/python/python24.zip *.py* bsddb compiler curses distutils email encodings hotshot idlelib lib-old lib-tk logging site-packages xml plat-linux2 -x *.svn* *test*; \
		popd
/var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/Python/Lib /var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/linux
/var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/linux
make[2]: Leaving directory `/var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/linux'
make[1]: Leaving directory `/var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/xbmc/lib/libPython/linux'
emake failed
Comment 4 Rick Farina (Zero_Chaos) gentoo-dev 2011-02-28 18:52:04 UTC
Created attachment 264197 [details]
full build log if needed
Comment 5 Magnus Granberg gentoo-dev 2011-03-01 02:13:25 UTC
XBPythonDllFuncs.o is from a asm file that is not PIC friendly coded.
xbmc/lib/libPython/XBPythonDllFuncs.S We need to make it PIC friendly.
Comment 6 Francisco Blas Izquierdo Riera (RETIRED) gentoo-dev 2011-03-01 02:39:05 UTC
(In reply to comment #5)
> XBPythonDllFuncs.o is from a asm file that is not PIC friendly coded.
> xbmc/lib/libPython/XBPythonDllFuncs.S We need to make it PIC friendly.
> 

If somebody handles me the file I'll see what can be done.
Comment 7 Francisco Blas Izquierdo Riera (RETIRED) gentoo-dev 2011-03-01 04:11:37 UTC
Created attachment 264223 [details, diff]
Patch to fix PIC code

The attached patch should fix the problem but I can't test it here, so please test and report back.

To test it just do:
# ebuild /usr/portage/media-tv/xbmc/xbmc-10.0.ebuild unpack
# cd /var/tmp/portage/media-tv/xbmc-10.0/work/xbmc-10.0/
# patch -p1 < /tmp/XBPythonDllFuncs_fix_pic.patch
# ebuild /usr/portage/media-tv/xbmc/xbmc-10.0.ebuild compile

Remind replacing "/tmp/XBPythonDllFuncs_fix_pic.patch" with the path to your patch.
Comment 8 SpanKY gentoo-dev 2011-03-01 07:49:35 UTC
that'll fix it for non-arm/ppc only.  really the arm/fallback branches could be combined as well, but oh well.

wrap the func name and change the macros that way.
#ifdef __PIC__
# define FUNC_NAME(name) p_##name##@PLT
#else
# define FUNC_NAME(name) p_##name
#endif

then do:
...
    lis 11,(FUNC_NAME(name))@ha;     \
    lwz 12,(FUNC_NAME(name))@l(11);  \
...
        b (FUNC_NAME(name))
...
    jmp *(FUNC_NAME(name))
...
Comment 9 Rick Farina (Zero_Chaos) gentoo-dev 2011-03-01 10:12:07 UTC
Confirmed, patch posted by klondike works on amd64.

If we all agree that this fix is good enough I can submit upstream, if someone wants to make an arm/ppc fix I'll wait.

Thanks
Comment 10 SpanKY gentoo-dev 2012-03-29 16:20:22 UTC
probably fixed with 11.0 by way of not having this code anymore