Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 287246 - no debugedit ebuild for OS X
Summary: no debugedit ebuild for OS X
Status: RESOLVED CANTFIX
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: All OS X
: High enhancement (vote)
Assignee: Gentoo Prefix
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-01 16:50 UTC by steve
Modified: 2009-10-15 18:04 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 steve 2009-10-01 16:50:10 UTC
In bug 287245 I was able to make eix seg fault.
http://bugs.gentoo.org/show_bug.cgi?id=287245

It would be nice if I could provide better backtraces in my bug reports. I have been told that I can do this with the "FEATURE = installsources" option in make.conf. I was also told that inorder to use that feature I needed to emerge debugedit.

I have no ebuild for debug editon my prefix system.

Reproducible: Always

Steps to Reproduce:
1. N/A
2.
3.

Actual Results:  
n/a

Expected Results:  
n/a

<emerge info>
[lambda: Gentoo]$ emerge --info
Portage 2.2.00.14200-prefix (prefix/darwin/macos/10.6/x86, gcc-4.2.1,
unavailable, 10.0.0 i386)
=================================================================
System uname: Darwin-10.0.0-i386-32bit
Timestamp of tree: Thu, 01 Oct 2009 15:18:13 +0000
distcc 2.18.5-Apple.1 i386-apple-darwin10.0 (protocols 1 and 2) (default port
3632) [disabled]
app-shells/bash:     4.0_p33
dev-lang/python:     2.6.2-r2
sys-devel/autoconf:  2.63-r01.1
sys-devel/automake:  1.10.2-r00.1, 1.11
sys-devel/gcc-config: 1.4.1-r00.2
sys-devel/libtool:   2.2.6a-r00.2
ACCEPT_KEYWORDS="~x86-macos"
CBUILD="i686-apple-darwin10"
CFLAGS="-ggdb3 -O2 -pipe -march=nocona"
CHOST="i686-apple-darwin10"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf
/etc/terminfo"
CPPFLAGS="-I/Users/steves/Library/Gentoo/usr/include"
CXXFLAGS="-ggdb3 -O2 -pipe -march=nocona"
DISTDIR="/Users/steves/Library/Gentoo/usr/portage/distfiles"
FEATURES="assume-digests collision-protect distlocks fixpackages nostrip
parallel-fetch preserve-libs protect-owned sfperms splitdebug strict
unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-search_paths_first -L/Users/steves/Library/Gentoo/usr/lib
-L/Users/steves/Library/Gentoo/lib"
PKGDIR="/Users/steves/Library/Gentoo/usr/portage/packages"
PORTAGE_CONFIGROOT="/Users/steves/Library/Gentoo/"
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="/Users/steves/Library/Gentoo/var/tmp"
PORTDIR="/Users/steves/Library/Gentoo/usr/portage"
SYNC="rsync://rsync.prefix.freens.org/gentoo-portage-prefix"
USE="aqua coreaudio cracklib mmx mmxext modules ncurses objc objc++ prefix
readline sse sse2 ssl x86-macos zlib" 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
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" ELIBC="Darwin" INPUT_DEVICES="keyboard mouse" KERNEL="Darwin"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses
text" USERLAND="GNU"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, LINGUAS,
MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS,
PORTDIR_OVERLAY
</emerge info>
Comment 1 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2009-10-01 16:52:14 UTC
Please test it :) We have so many bugs that we can't get to every package =/

http://www.gentoo.org/proj/en/gentoo-alt/prefix/ecopy.xml
Comment 2 steve 2009-10-01 19:08:46 UTC
Gave this a shot
PORTDIR_OVERLAY="{$EPREFIX}/usr/local/portage"
~/Library/Gentoo/usr/portage/scripts/ecopy dev-util/debugedit
ekeyword ~x86-macos debugedit-4.4.6-r1.ebuild
FEATURES=test ebuild debugedit-4.4.6-r1.ebuild test
# digest issue
ebuild debugedit-4.4.6-r1.ebuild digest
FEATURES=test ebuild debugedit-4.4.6-r1.ebuild test

At this point I get build errors, 1st large issue is missing headers:
debugedit.c:23:22: error: byteswap.h: No such file or directory
debugedit.c:24:20: error: endian.h: No such file or directory
debugedit.c:26:19: error: error.h: No such file or directory
debugedit.c:36:18: error: gelf.h: No such file or directory
debugedit.c:37:19: error: dwarf.h: No such file or directory

Is there already a standard way to handle missing headers? (Although to be fair this is more than missing headers, OS X actually implements these with different names)

If not could we create a <something>-headers ebuild specifically for this prefix? This would be a 
set of headers that wrap OS X includes and define macros/inline function that 
define what the linux apps expect to exist.

For example this missing byteswap header:
http://cgit.freedesktop.org/xorg/xserver/tree/GL/glx/glxbyteorder.h?id=cdf6b15f039c4905d8d54152153b0a3ecd7aba55;id2=415e49b940bba2d08870db410ebb47d2add5d836

Could be pulled in and included in a byteswap.h header installed in $EPREFIX/usr/include/
Comment 3 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2009-10-14 15:29:45 UTC
Thanks for your analysis. Too little time to implement such ideas. I'm afraid it will have to hold for some time. Sorry.
Comment 4 Fabian Groffen gentoo-dev 2009-10-15 18:04:57 UTC
You can forget about debugedit ever working on OSX.  This package seems to be geared towards ELF systems, and OSX/Darwin uses MACHO.

If eix devs want a backtrace from you, you better reemerge eix with CFLAGS="-g" FEATURES="keepwork nostrip" and then start eix from gdb: gdb --args eix args... and then when the debugger catches the segfault, print the backtrace using "bt".