Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 156323 - media-video/gpac builds non-PIC shared objects
Summary: media-video/gpac builds non-PIC shared objects
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on: 157894
Blocks:
  Show dependency tree
 
Reported: 2006-11-26 10:00 UTC by Kevin F. Quinn (RETIRED)
Modified: 2007-02-14 19:10 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kevin F. Quinn (RETIRED) gentoo-dev 2006-11-26 10:00:44 UTC
The reason being that it doesn't set '-fPIC' when building code for the libraries.  Unfortunately its "configure" script is hand-generated shell script, and the Makefiles are maintained manually, which makes fixing this sort of thing a bit awkward.  If it had been autotools stuff, this would all have been managed properly for all arches.

Adding the following:

    # Ensure stuff is built PIC
    sed -i -e 's/CFLAGS= /CFLAGS= -fPIC /' \
        ${S}/modules/*/Makefile \
        ${S}/src/*/Makefile \
        ${S}/src/Makefile

to the end of src_unpack() did the trick for me (hardened x86), but I notice there's some attempt to add -fPIC on amd64 in the configure script, although I wouldn't be surprised if that's ineffective anyway - the Makefiles generally set CFLAGS, rather than append to it.


Portage 2.1.2_rc2-r1 (hardened/x86/2.6, gcc-3.4.6/hardened, glibc-2.4-r4, 2.6.18-hardened i686)
=================================================================
System uname: 2.6.18-hardened i686 Mobile Intel(R) Pentium(R) III CPU - M  1200MHz
Gentoo Base System version 1.12.6
Last Sync: Unknown
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [disabled]
app-admin/eselect-compiler: 2.0.0_rc2-r1
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python:     2.3.5-r2, 2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.15.92.0.2-r9, 2.15.92.0.2-r10, 2.16-r1, 2.16.1-r3
sys-devel/gcc-config: 2.0.0_rc1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-ggdb2 -O2 -march=pentium3 -pipe -Wall -Wstack-protector -Wtrampolines"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/fax /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/spool/fax/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-ggdb2 -O2 -march=pentium3 -pipe -Wall -Wstack-protector -Wtrampolines"
DISTDIR="/data/g2/distfiles"
FEATURES="autoaddcvs autoconfig collision-protect cvs distlocks fixpackages installsources metadata-transfer pax sandbox sfperms sign splitdebug strict stricter test userpriv"
GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp.linux.ee/pub/gentoo/distfiles/ http://ftp.easynet.nl/mirror/gentoo/ http://ftp.heanet.ie/pub/gentoo/ http://gentoo.osuosl.org/"
LC_ALL="en_GB.utf8"
LDFLAGS="-Wl,-O1"
LINGUAS="en_GB en it de es fr"
MAKEOPTS="-j1"
PKGDIR="/data/g2/pkgdir"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/data/g2/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/data/g2/dev-overlays/kevquinn/hardened/toolchain /data/g2/dev-overlays/kevquinn/hardened/xorg /var/portage"
SYNC="cvs://kevquinn@cvs.gentoo.org:/var/cvsroot"
USE="X a52 aac acl acpi alsa apache2 arts berkdb bluetooth boundschecking bzip2 caps cdr crypt cups dbus dlloader dri dts dv dvd dvdr dvdread elibc_glibc encode faad fbcon ffmpeg fortran gcj gif gnokii gtk gtk2 hal hardened hardenedphp ieee1394 imagemagick input_devices_keyboard input_devices_mouse ipv6 java javascript jikes jpeg jpeg2k kde kdeenablefinal kerberos kernel_linux ldap libcaca linguas_de linguas_en linguas_en_GB linguas_es linguas_fr linguas_it mad madwifi mailwrapper mbox mmx mozilla mp3 mp4 mpeg mysql nas nls nptl nsplugin odbc ogg openexr opengl oss pam pda perl pic png postgres python qt qt3 qt4 quicktime readline samba scanner sdl slp sndfile spell sse ssl svg tcl tcltk tcpd test theora threads tidy tiff timidity tk truetype unicode usb userland_GNU userlocales v4l video_cards_radeon video_cards_vesa video_cards_vga vorbis wifi wma x264 x86 xinerama xml xml2 xorg xprint xv xvid zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Alexis Ballier gentoo-dev 2006-11-29 12:12:17 UTC
see bug #156016

I've fixed it in 0.4.2-r1, feel free to ask for it to be stabilized if you think it's ready (that's mostly checking if everything is sane on a stable system with this version).

Bug #156637 might also be a good reason to ask for it to go stable.
Comment 2 Alexis Ballier gentoo-dev 2007-02-14 19:10:02 UTC
fixed in 0.4.2-r1 which has gone stable since