Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 127019 - gcc-4.0.3: pie patch fails to apply
Summary: gcc-4.0.3: pie patch fails to apply
Status: RESOLVED DUPLICATE of bug 121034
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-20 15:56 UTC by Shawn Leas
Modified: 2006-05-13 10:09 UTC (History)
1 user (show)

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 Shawn Leas 2006-03-20 15:56:13 UTC
03_all_gcc-3.4.0-v8.7.6.1-pie-arm.patch fails to apply. It seems like it's because the patch has not been properly massaged for application (if I'm guessing correctly as to how this toolchain stuff works).

 * Applying upstream pie patches ...
 *   00_all_gcc-4.0-cvs-incompat.patch ...                                                                                                                                                     [ ok ] *   00_all_gcc-4.0-cvs-start_endfile.patch ...                                                                                                                                                [ ok ] *   03_all_gcc-3.4.0-v8.7.6.1-pie-arm.patch ...

 * Failed Patch: 03_all_gcc-3.4.0-v8.7.6.1-pie-arm.patch !
 *  ( /var/tmp/portage/gcc-4.0.3/work/piepatch/upstream/03_all_gcc-3.4.0-v8.7.6.1-pie-arm.patch )
 *
 * Include in your bugreport the contents of:
 *
 *   /var/tmp/portage/gcc-4.0.3/temp/03_all_gcc-3.4.0-v8.7.6.1-pie-arm.patch-4408.out

There's simpyl a .rej out there by the target file. I looked at the patch, then looked at the file, and there's a conflict. See in the patch (below) where ELF_DYNAMIC_LINKER is? 

--- gcc-3.4.0/gcc/config/arm/linux-elf.h.mps    Thu May 20 09:11:17 2004
+++ gcc-3.4.0/gcc/config/arm/linux-elf.h        Thu May 20 09:12:28 2004
@@ -91,10 +91,11 @@
 #define LINK_SPEC "%{h*} %{version:-v} \
    %{b} %{Wl,*:%*} \
-   %{static:-Bstatic} \
    %{shared:-shared} \
    %{symbolic:-Bsymbolic} \
+   %{!shared: %{!static: \
    %{rdynamic:-export-dynamic} \
-   %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER  "} \
+   %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER  "}} \
+   %{static:-Bstatic}} \
    -X \
    %{mbig-endian:-EB}" \
    SUBTARGET_EXTRA_LINK_SPEC

The patch should more likely end up looking like the following according to the code it's trying to patch.
--- gcc/config/arm/linux-elf.h  2006-03-20 17:39:13.000000000 -0600
+++ gcc/config/arm/linux-elf.h.new      2006-03-20 17:32:47.000000000 -0600
@@ -92,11 +92,12 @@
 #undef  LINK_SPEC
 #define LINK_SPEC "%{h*} %{version:-v} \
    %{b} %{Wl,*:%*} \
-   %{static:-Bstatic} \
    %{shared:-shared} \
    %{symbolic:-Bsymbolic} \
+   %{!shared: %{!static: \
    %{rdynamic:-export-dynamic} \
-   %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \
+   %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
+   %{static:-Bstatic}} \
    -X \
    %{mbig-endian:-EB}" \
    SUBTARGET_EXTRA_LINK_SPEC

Portage 2.1_pre6-r5 (default-linux/amd64/2005.1, gcc-4.0.2, glibc-2.4-r1, 2.6.14-gentoo x86_64)
=================================================================
System uname: 2.6.14-gentoo x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.12.0_pre11
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5, 2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.15.92.0.2-r1, 2.15.92.0.2-r8, 2.16.1-r2
sys-devel/libtool:   1.5.20-r1
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=athlon64 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/lib64/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O2 -march=athlon64 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/home/core/Data/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 16bit 3dnowex 64bit 7zip X a52 aac alsa amarok aotuv apache2 aqua_theme artworkextra async avi bash-completion beepmp berkdb bitmap-fonts browserplugin buffysize bzlib cairo calendar cddb chroot clamav clamd corba crypt css cups daap dba dbus dcc dri dv dvd dvdr dvdread easteregg ecc edl eds emboss encode epiphany erandom escreen evms2 evo extensions fax fbcon flash follow-xff font-server foomaticdb fortran freetype fuse gb gif gimp gimpprint glitz glx gmail gmailtimestamps gnome gnome-print gnomecanvas gnutls gpgme gpm gstreamer gtk gtk2 gvim hardened hddtemp hpn httpd icq idea imap imlib imlib2 innodb ipv6 irda jabber javascript jbig jce jcs jfs jikes jms jmx jp2 jpeg jpeg2k kde kdeenablefinal libgda live lzo lzw lzw-tiff maildir mbox mbx menu mozdevelop mozp3p mozsvg mozxmlterm mp3 mpeg mpeg2 mpeg4 mplayer mpm-worker msn multislot musicbrainz mysqli mythtv nagios-dns nagios-ntp nagios-ping nagios-ssh nautilus ncurses neXt netbeans netpbm network neural nextaw nfs nls nntp nptl nptlonly nsplugin ntfs ntlm nvidia oav objc offensive ofx oggvorbis opengl oscar oss pam pam-mysql pam_chroot pam_console pam_timestamp pango parse-clocks pcap pdflib pear physfs png pop ppds procmail psyco pwdb python pyzor qt quicktime rar razor rdesktop readline real reiser4 reiserfs rplay rtc sasl sdl shorten silc silvercity silverxp smime smtp socks5 sox spamassassin speedo spell sql ssl stream stroke subp subtitles subversion sysfs sysvipc szip tagwriting tcpd theora thesaurus tiff tools tos transcode truetype-fonts type1-fonts usb userlocales uudeview vanilla vcd vcdimager vhosts vim-pager vim-with-x virus-scan visualization vlm vnc wordperfect wv wxwindows xchat xfs xmlrpc xosd xpm xprint xrandr xscreensaver xsl xslt xv xvmc yahoo zip zlib elibc_glibc kernel_linux userland_GNU"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2006-03-20 15:59:21 UTC
(In reply to comment #0)
> 03_all_gcc-3.4.0-v8.7.6.1-pie-arm.patch fails to apply. It seems like it's
> because the patch has not been properly massaged for application (if I'm
> guessing correctly as to how this toolchain stuff works).

No, that's because of USE=vanilla...

*** This bug has been marked as a duplicate of 121034 ***