Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 87560 - AMD64: create_ml_includes in multilib.eclass creates incorrect paths in include files
Summary: AMD64: create_ml_includes in multilib.eclass creates incorrect paths in inclu...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: AMD64 Linux
: High major (vote)
Assignee: Jeremy Huddleston (RETIRED)
URL:
Whiteboard:
Keywords:
: 80177 81967 87278 88276 90470 90754 96113 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-04-01 06:34 UTC by huginson
Modified: 2005-10-22 05:38 UTC (History)
9 users (show)

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


Attachments
fam header file (as requested) (fam.h,11.32 KB, text/plain)
2005-10-21 08:50 UTC, Jacob Smullyan
Details
limits.h, as requested (limits.h,229 bytes, text/plain)
2005-10-21 09:01 UTC, Jacob Smullyan
Details

Note You need to log in before you can comment on or make changes to this bug.
Description huginson 2005-04-01 06:35:55 UTC
The create_ml_includes function in the script multilib.eclass uses ".." to access the platform-specific files from the generic include file.
This is wrong, since it begins the look-up in the current directory during compilation. The correct form is <..>.

This breaks, e.g., the ebuild for ltrace.

Reproducible: Always
Steps to Reproduce:
1.
2.
3.

Actual Results:  
E.g., in /usr/include/asm/a.out.h: 
 
#ifdef __i386__ 
#include "../asm-i386/a.out.h" 
#endif /* __i386__ */ 

Expected Results:  
#ifdef __i386__ 
#include <asm-i386/a.out.h> 
#endif /* __i386__ */
Comment 1 Herbie Hopkins (RETIRED) gentoo-dev 2005-04-12 02:50:57 UTC
*** Bug 88276 has been marked as a duplicate of this bug. ***
Comment 2 Herbie Hopkins (RETIRED) gentoo-dev 2005-04-12 02:52:30 UTC
*** Bug 81967 has been marked as a duplicate of this bug. ***
Comment 3 Jeremy Huddleston (RETIRED) gentoo-dev 2005-04-19 10:48:02 UTC
This has been fixed for about a week.  Please re-emerge your linux-headers or glibc if you need to.
Comment 4 Herbie Hopkins (RETIRED) gentoo-dev 2005-04-24 15:47:00 UTC
*** Bug 87278 has been marked as a duplicate of this bug. ***
Comment 5 Herbie Hopkins (RETIRED) gentoo-dev 2005-04-25 03:06:17 UTC
*** Bug 80177 has been marked as a duplicate of this bug. ***
Comment 6 Jakub Moc (RETIRED) gentoo-dev 2005-04-26 02:43:23 UTC
*** Bug 90470 has been marked as a duplicate of this bug. ***
Comment 7 Jakub Moc (RETIRED) gentoo-dev 2005-04-28 12:45:55 UTC
*** Bug 90754 has been marked as a duplicate of this bug. ***
Comment 8 Herbie Hopkins (RETIRED) gentoo-dev 2005-06-14 12:28:59 UTC
*** Bug 96113 has been marked as a duplicate of this bug. ***
Comment 9 Aaron Walker (RETIRED) gentoo-dev 2005-08-31 05:55:16 UTC
*** Bug 104192 has been marked as a duplicate of this bug. ***
Comment 10 Jacob Smullyan 2005-10-21 07:47:51 UTC
I have a borked multilib setup and don't know how to fix it. It manifests itself
when I try to emerge lighttpd with fam enabled; in fam.h, limits.h isn't found
during the configure step.  (Details are in bug 104192, marked as a duplicate of
this.)  I've reemerged linux-headers and glibc; no joy.  Any clues/suggestions?
 Emerge info follows.

zelenka ~ # emerge info
Portage 2.0.51.22-r3 (default-linux/amd64/2005.0, gcc-3.4.4, glibc-2.3.5-r2,
2.6.11-gentoo-r11-gentoo-osmp x86_64)
=================================================================
System uname: 2.6.11-gentoo-r11-gentoo-osmp x86_64 AMD Opteron(tm) Processor 846 HE
Gentoo Base System version 1.6.13
dev-lang/python:     2.3.5, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
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-r10
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=opteron -mtune=opteron -fomit-frame-pointer
-fprefetch-loop-arrays"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=opteron -mtune=opteron -fomit-frame-pointer
-fprefetch-loop-arrays"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 a52 acpi alsa apache2 audiofile avi berkdb cdr crypt cups curl dvd
dvdr eds emacs emboss encode esd fam foomaticdb fortran gdbm gif gpm gstreamer
imagemagick imlib jpeg jpeg2k kde lcms libg++ libwww lzw lzw-tiff mad maildir
mp3 mpeg mysql ncurses network nls nocardbus ogg oggvorbis pam pcre pdflib perl
png postgres postgresql python qt quicktime readline rtc sdl slang sndfile spell
sqlite ssl tcpd threads tiff udev unicode usb userlocales vorbis xml2 xpm xv
zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 11 Simon Stelling (RETIRED) gentoo-dev 2005-10-21 08:32:55 UTC
jacub, in the other bug report you said, fam.h does exist. could you attach it
to this report please? also, have you ever done emerge --sync? looking at your
emerge info your system looks pretty outdated
Comment 12 Jacob Smullyan 2005-10-21 08:50:14 UTC
Created attachment 71125 [details]
fam header file (as requested)

I don't think this will contain surprises.  The config.log (an earlier one is
attached to the previous bug report, the error is the same) shows (I think)
that config dies trying to find limits.h as referenced by fam.h.
Comment 13 Jacob Smullyan 2005-10-21 08:53:25 UTC
Simon -- actually I have synced, and in fact did an emerge -u system right
before this.  I haven't recompiled the kernel for some time, though.
Comment 14 Simon Stelling (RETIRED) gentoo-dev 2005-10-21 08:59:03 UTC
err, sorry, my fault. I wanted you to attach /usr/include/limits.h
Comment 15 Jacob Smullyan 2005-10-21 09:01:00 UTC
Created attachment 71127 [details]
limits.h, as requested

all yours!
Comment 16 Simon Stelling (RETIRED) gentoo-dev 2005-10-21 11:08:14 UTC
okay, this limits.h looks fine. though, looking at the config.log, it says: 

configure:24761: x86_64-pc-linux-gnu-gcc -c -O2 -march=opteron -mtune=opteron
-fomit-frame-pointer -fprefetch-loop-arrays  -D_REENTRANT  conftest.c >&5
In file included from /usr/include/limits.h:7,
                 from /usr/include/fam.h:44,
                 from conftest.c:106:
/usr/include/gentoo-multilib/amd64/limits.h:124:26: no include path in which to
search for limits.h

/usr/include/gentoo-multilib/amd64/limits.h:122-124 is:

#if defined __GNUC__ && !defined _GCC_LIMITS_H_
/* `_GCC_LIMITS_H_' is what GCC's file defines.  */
# include_next <limits.h>

i'm stuck here, no idea how to fix it :/

btw: your CFLAGS don't make much sense: -fomit-frame-pointer doesn't do anything
on amd64 and -mtune=opteron is already set with -march=opteron ;P
Comment 17 Jeremy Huddleston (RETIRED) gentoo-dev 2005-10-21 18:14:58 UTC
Jacob, that's a completely differnet bug than this one, and I'm not sure where
to start with it.  Please reopen the bug that was marked a dupe of this one.