Gentoo Archives: gentoo-hardened

From: "Peter S. Mazinger" <ps.m@×××.net>
To: gentoo-hardened@l.g.o
Subject: Re: [gentoo-hardened] removing .text relocations from mplayer and xine-lib
Date: Thu, 02 Jun 2005 12:42:56
Message-Id: Pine.LNX.4.44.0506021435290.4678-100000@lnx.bridge.intra
In Reply to: Re: [gentoo-hardened] removing .text relocations from mplayer and xine-lib by "René Rhéaume"
1 On Mon, 30 May 2005, René Rhéaume wrote:
2
3 > I found out symlinking libtool-nofpic to libtool (which produces PIC
4 > binaries) eliminates most of the relocations. I am able to build on
5 > Gentoo either outside Portage or using my custom ebuild.
6 >
7 > Just add "use x86 && has_pic && ln -sf libtool ${S}/libtool-nofpic"
8 > right after econf. You can also comment RESTRICT="nostrip" in the
9 > ebuild and add "strict" to your FEATURES to get the list of the
10 > remaining TEXTREL binaries, which are on my system:
11
12 Better yet, add --enable-fpic to econf. The change proposed above w/ the
13 link is allowed conditionally, if use has_pic && use x86 (probably amd64
14 too)
15
16 > $(get-libdir)/xine/plugins/${PV}/post/xineplug_post_{planar,tvtime}.so
17 > $(get-libdir)/xine/plugins/${PV}/xineplug_decode_{ff,w32dll,qt}.so
18
19 xineplug_decode_ff.so is clean as of 1.0.1, I remove the rest from the
20 system, else xine-lib fails to load (see original bug-report, failure on
21 planar)
22
23 >
24 > Feedback from other architectures is appreciated.
25 >
26 > Also, it seems that "use x86 && has_pic && append-flags -UHAVE_MMX" is
27 > not needed. I can build fine either with or without.
28
29 it disables mmx/asm code for any case
30
31 >
32 > *This paragraph is more a note to myself, but can be interesting for
33 > those with older gcc versions*
34 > I also tried this symlinking trick on my half-Mandr* install and got
35 > two build errors (make -k). It is probably a bug from that old
36 > gcc-3.2-1mdk I get as I already have to patch xine-lib to disable SIMD
37 > code generation in FAAD code even when I generate non-PIC code.
38 > Faulty files are:
39 > ${S}/src/libffmpeg/libavcodec/i386/mpegvideo_mmx_template.c
40 > ${S}/src/libffmpeg/libavcodec/libpostproc/postprocess_template.c
41 > Error message: can't find a register in class `GENERAL_REGS' while
42 > reloading `asm'
43
44 see how this is solved in the ffmpeg ebuild, important is to disable
45 mmx/asm code.
46
47 Peter
48
49 --
50 Peter S. Mazinger <ps dot m at gmx dot net> ID: 0xA5F059F2
51 Key fingerprint = 92A4 31E1 56BC 3D5A 2D08 BB6E C389 975E A5F0 59F2
52
53 --
54 gentoo-hardened@g.o mailing list

Replies

Subject Author
Re: [gentoo-hardened] removing .text relocations from mplayer and xine-lib "René Rhéaume" <rene.rheaume@×××××.com>