Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 111912 - emerge eix fails when the configuration cannot find strndup
Summary: emerge eix fails when the configuration cannot find strndup
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Mac OSX (show other bugs)
Hardware: PPC OS X
: High normal (vote)
Assignee: Gentoo for Mac OS X
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-08 13:51 UTC by Jani Lahtinen
Modified: 2006-04-12 10:53 UTC (History)
1 user (show)

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


Attachments
Fix compilation problems with scandir on darwin (eix-0.5.0_darwin-scandir.patch,3.77 KB, patch)
2005-11-20 05:24 UTC, Emil Beinroth
Details | Diff
Use autoconf to detect byteorder (eix-0.5.0_darwin-fix-byteorder-detection.patch,1.64 KB, patch)
2005-11-20 06:38 UTC, Emil Beinroth
Details | Diff
Don't use gnu-sed syntax to make first letter uppercase (eix-0.5.0_darwin-no-gnu-sed.patch,619 bytes, patch)
2005-11-20 07:37 UTC, Emil Beinroth
Details | Diff
Change all basic to extended regex (eix-0.5.0_basic-regex-to-extended.patch,2.40 KB, patch)
2005-11-21 09:20 UTC, Emil Beinroth
Details | Diff
Don't use errno/strerror for regcomp (eix-0.5.0_strerror-not-for-regcomp.patch,797 bytes, patch)
2005-11-21 13:51 UTC, Emil Beinroth
Details | Diff
Previous patches in one big patch. (eix-0.5.0_pre2-darwin.patch,9.09 KB, patch)
2005-11-22 10:28 UTC, Emil Beinroth
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jani Lahtinen 2005-11-08 13:51:59 UTC
After syncing I tried to emerge eix-0.5.0_beta. This fails during the
configuration. The same also happens with eix-0.3.0.

Reproducible: Always
Steps to Reproduce:
1. emerge sync
2. emerge eix
3.

Actual Results:  
Calculating dependencies ...done!
>>> emerge (1 of 1) app-portage/eix-0.5.0_beta to /
>>> Downloading http://distfiles.gentoo.org/distfiles/eix-0.5.0_beta.tar.bz2
######################################################################## 100.0%
>>> md5 files   ;-) eix-0.2.2.ebuild
>>> md5 files   ;-) eix-0.2.6.ebuild
>>> md5 files   ;-) eix-0.3.0-r1.ebuild
>>> md5 files   ;-) eix-0.3.0.ebuild
>>> md5 files   ;-) eix-0.5.0_beta.ebuild
>>> md5 files   ;-) files/0.2.2-incorrect-masks.patch
>>> md5 files   ;-) files/0.2.2-unistd.h.patch
>>> md5 files   ;-) files/0.2.6-cdb-cast.patch
>>> md5 files   ;-) files/0.2.6-package.cc.patch
>>> md5 files   ;-) files/0.3.0-datatype-mix.patch
>>> md5 files   ;-) files/0.3.0-dbmatchcriteria-fix.patch
>>> md5 files   ;-) files/0.3.0-getParentProfile.patch
>>> md5 files   ;-) files/0.3.0-if-else-fi.patch
>>> md5 files   ;-) files/digest-eix-0.2.2
>>> md5 files   ;-) files/digest-eix-0.2.6
>>> md5 files   ;-) files/digest-eix-0.3.0
>>> md5 files   ;-) files/digest-eix-0.3.0-r1
>>> md5 files   ;-) files/digest-eix-0.5.0_beta
>>> md5 src_uri ;-) eix-0.5.0_beta.tar.bz2
>>> Unpacking source...
>>> Unpacking eix-0.5.0_beta.tar.bz2 to /var/tmp/portage/eix-0.5.0_beta/work
>>> Source unpacked.
 * econf: updating eix-0.5.0_beta/config.guess with
/usr/share/gnuconfig/config.guess
 * econf: updating eix-0.5.0_beta/config.sub with /usr/share/gnuconfig/config.sub
./configure --prefix=/usr --host=powerpc-apple-darwin --mandir=/usr/share/man
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
--localstatedir=/var/lib --build=powerpc-apple-darwin
checking build system type... powerpc-apple-darwin
checking host system type... powerpc-apple-darwin
checking target system type... powerpc-apple-darwin
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for powerpc-apple-darwin-gcc... no
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking dependency style of gcc... gcc3
checking for regcomp... yes
checking for strchr... yes
checking for strcspn... yes
checking for strdup... yes
checking for strerror... yes
checking for strndup... no
configure: error: We really need those functions ..

!!! Please attach the config.log to your bug report:
!!! /var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/config.log

!!! ERROR: app-portage/eix-0.5.0_beta failed.
!!! Function econf, Line 485, Exitcode 0
!!! econf failed
!!! If you need support, post the topmost build error, NOT this status message.


Expected Results:  
eix should be installed, I guess.

The contents of var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/config.log

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by eix configure 0.5.0_beta, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  $ ./configure --prefix=/usr --host=powerpc-apple-darwin
--mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share
--sysconfdir=/etc --localstatedir=/var/lib --build=powerpc-apple-darwin

## --------- ##
## Platform. ##
## --------- ##

hostname = 3.255.168.192.in-addr.arpa
uname -m = Power Macintosh
uname -r = 8.3.0
uname -s = Darwin
uname -v = Darwin Kernel Version 8.3.0: Mon Oct  3 20:04:04 PDT 2005;
root:xnu-792.6.22.obj~2/RELEASE_PPC

/usr/bin/uname -p = powerpc
/bin/uname -X     = unknown

/bin/arch              = unknown
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
hostinfo               = Mach kernel version:
         Darwin Kernel Version 8.3.0: Mon Oct  3 20:04:04 PDT 2005;
root:xnu-792.6.22.obj~2/RELEASE_PPC
Kernel configured for a single processor only.
1 processor is physically available.
Processor type: ppc7450 (PowerPC 7450)
Processor active: 0
Primary memory available: 1.00 gigabytes
Default processor set: 50 tasks, 171 threads, 1 processors
Load average: 2.21, Mach factor: 0.41
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /sbin
PATH: /usr/sbin
PATH: /usr/lib/portage/bin
PATH: /bin
PATH: /usr/bin
PATH: .
PATH: /usr/X11R6/bin
PATH: /System/Library/Frameworks/Python.framework/Versions/Current/bin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:1546: checking build system type
configure:1564: result: powerpc-apple-darwin
configure:1572: checking host system type
configure:1586: result: powerpc-apple-darwin
configure:1594: checking target system type
configure:1608: result: powerpc-apple-darwin
configure:1639: checking for a BSD-compatible install
configure:1694: result: /usr/bin/install -c
configure:1705: checking whether build environment is sane
configure:1748: result: yes
configure:1813: checking for gawk
configure:1842: result: no
configure:1813: checking for mawk
configure:1842: result: no
configure:1813: checking for nawk
configure:1842: result: no
configure:1813: checking for awk
configure:1829: found /usr/bin/awk
configure:1839: result: awk
configure:1849: checking whether make sets $(MAKE)
configure:1869: result: yes
configure:2050: checking for style of include used by make
configure:2078: result: GNU
configure:2111: checking for powerpc-apple-darwin-gcc
configure:2140: result: no
configure:2149: checking for gcc
configure:2165: found /usr/bin/gcc
configure:2175: result: gcc
configure:2419: checking for C compiler version
configure:2422: gcc --version </dev/null >&5
powerpc-apple-darwin8-gcc-4.0.0 (GCC) 4.0.0 20041026 (Apple Computer, Inc. build
4061)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:2425: $? = 0
configure:2427: gcc -v </dev/null >&5
Reading specs from /usr/lib/gcc/powerpc-apple-darwin8/4.0.0/specs
Configured with: /private/var/tmp/gcc/gcc-4061.obj~8/src/configure
--disable-checking --prefix=/usr --mandir=/share/man
--enable-languages=c,objc,c++,obj-c++
--program-transform-name=/^[cg][^+.-]*$/s/$/-4.0/
--with-gxx-include-dir=/include/gcc/darwin/4.0/c++ --build=powerpc-apple-darwin8
--host=powerpc-apple-darwin8 --target=powerpc-apple-darwin8
Thread model: posix
gcc version 4.0.0 20041026 (Apple Computer, Inc. build 4061)
configure:2430: $? = 0
configure:2432: gcc -V </dev/null >&5
gcc: argument to `-V' is missing
configure:2435: $? = 1
configure:2458: checking for C compiler default output file name
configure:2461: gcc -O2 -pipe   conftest.c  >&5
configure:2464: $? = 0
configure:2510: result: a.out
configure:2515: checking whether the C compiler works
configure:2521: ./a.out
configure:2524: $? = 0
configure:2541: result: yes
configure:2548: checking whether we are cross compiling
configure:2550: result: no
configure:2553: checking for suffix of executables
configure:2555: gcc -o conftest -O2 -pipe   conftest.c  >&5
configure:2558: $? = 0
configure:2583: result: 
configure:2589: checking for suffix of object files
configure:2610: gcc -c -O2 -pipe  conftest.c >&5
configure:2613: $? = 0
configure:2635: result: o
configure:2639: checking whether we are using the GNU C compiler
configure:2663: gcc -c -O2 -pipe  conftest.c >&5
configure:2669: $? = 0
configure:2673: test -z 
                         || test ! -s conftest.err
configure:2676: $? = 0
configure:2679: test -s conftest.o
configure:2682: $? = 0
configure:2695: result: yes
configure:2701: checking whether gcc accepts -g
configure:2722: gcc -c -g  conftest.c >&5
configure:2728: $? = 0
configure:2732: test -z 
                         || test ! -s conftest.err
configure:2735: $? = 0
configure:2738: test -s conftest.o
configure:2741: $? = 0
configure:2752: result: yes
configure:2769: checking for gcc option to accept ANSI C
configure:2839: gcc  -c -O2 -pipe  conftest.c >&5
configure:2845: $? = 0
configure:2849: test -z 
                         || test ! -s conftest.err
configure:2852: $? = 0
configure:2855: test -s conftest.o
configure:2858: $? = 0
configure:2876: result: none needed
configure:2894: gcc -c -O2 -pipe  conftest.c >&5
conftest.c:2: error: parse error before "me"
configure:2900: $? = 1
configure: failed program was:
| #ifndef __cplusplus
|   choke me
| #endif
configure:3035: checking dependency style of gcc
configure:3125: result: gcc3
configure:3158: checking for regcomp
configure:3215: gcc -o conftest -O2 -pipe   conftest.c  >&5
configure:3221: $? = 0
configure:3225: test -z 
                         || test ! -s conftest.err
configure:3228: $? = 0
configure:3231: test -s conftest
configure:3234: $? = 0
configure:3246: result: yes
configure:3158: checking for strchr
configure:3215: gcc -o conftest -O2 -pipe   conftest.c  >&5
conftest.c:36: warning: conflicting types for built-in function 'strchr'
configure:3221: $? = 0
configure:3225: test -z 
                         || test ! -s conftest.err
configure:3228: $? = 0
configure:3231: test -s conftest
configure:3234: $? = 0
configure:3246: result: yes
configure:3158: checking for strcspn
configure:3215: gcc -o conftest -O2 -pipe   conftest.c  >&5
conftest.c:37: warning: conflicting types for built-in function 'strcspn'
configure:3221: $? = 0
configure:3225: test -z 
                         || test ! -s conftest.err
configure:3228: $? = 0
configure:3231: test -s conftest
configure:3234: $? = 0
configure:3246: result: yes
configure:3158: checking for strdup
configure:3215: gcc -o conftest -O2 -pipe   conftest.c  >&5
conftest.c:38: warning: conflicting types for built-in function 'strdup'
configure:3221: $? = 0
configure:3225: test -z 
                         || test ! -s conftest.err
configure:3228: $? = 0
configure:3231: test -s conftest
configure:3234: $? = 0
configure:3246: result: yes
configure:3158: checking for strerror
configure:3215: gcc -o conftest -O2 -pipe   conftest.c  >&5
configure:3221: $? = 0
configure:3225: test -z 
                         || test ! -s conftest.err
configure:3228: $? = 0
configure:3231: test -s conftest
configure:3234: $? = 0
configure:3246: result: yes
configure:3158: checking for strndup
configure:3215: gcc -o conftest -O2 -pipe   conftest.c  >&5
/usr/bin/ld: Undefined symbols:
_strndup
collect2: ld returned 1 exit status
configure:3221: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| 
| #define PACKAGE_NAME "eix"
| #define PACKAGE_TARNAME "eix"
| #define PACKAGE_VERSION "0.5.0_beta"
| #define PACKAGE_STRING "eix 0.5.0_beta"
| #define PACKAGE_BUGREPORT "http://sourceforge.net/projects/eix/"
| #define PACKAGE "eix"
| #define VERSION "0.5.0_beta"
| #define HAVE_REGCOMP 1
| #define HAVE_STRCHR 1
| #define HAVE_STRCSPN 1
| #define HAVE_STRDUP 1
| #define HAVE_STRERROR 1
| /* end confdefs.h.  */
| /* Define strndup to an innocuous variant, in case <limits.h> declares strndup.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define strndup innocuous_strndup
| 
| /* System header to define __stub macros and hopefully few prototypes,
|     which can conflict with char strndup (); below.
|     Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
|     <limits.h> exists even on freestanding compilers.  */
| 
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
| 
| #undef strndup
| 
| /* Override any gcc2 internal prototype to avoid an error.  */
| #ifdef __cplusplus
| extern "C"
| {
| #endif
| /* We use char because int might match the return type of a gcc2
|    builtin and then its argument prototype would still apply.  */
| char strndup ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined (__stub_strndup) || defined (__stub___strndup)
| choke me
| #else
| char (*f) () = strndup;
| #endif
| #ifdef __cplusplus
| }
| #endif
| 
| int
| main ()
| {
| return f != strndup;
|   ;
|   return 0;
| }
configure:3246: result: no
configure:3254: error: We really need those functions ..

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=powerpc-apple-darwin
ac_cv_build_alias=powerpc-apple-darwin
ac_cv_c_compiler_gnu=yes
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-O2 -pipe'
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=set
ac_cv_env_CXXFLAGS_value='-O2 -pipe'
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_F77_set=
ac_cv_env_F77_value=
ac_cv_env_FFLAGS_set=
ac_cv_env_FFLAGS_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_build_alias_set=set
ac_cv_env_build_alias_value=powerpc-apple-darwin
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=powerpc-apple-darwin
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_exeext=
ac_cv_func_regcomp=yes
ac_cv_func_strchr=yes
ac_cv_func_strcspn=yes
ac_cv_func_strdup=yes
ac_cv_func_strerror=yes
ac_cv_func_strndup=no
ac_cv_host=powerpc-apple-darwin
ac_cv_host_alias=powerpc-apple-darwin
ac_cv_objext=o
ac_cv_path_install='/usr/bin/install -c'
ac_cv_prog_AWK=awk
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_cc_g=yes
ac_cv_prog_cc_stdc=
ac_cv_prog_make_make_set=yes
ac_cv_target=powerpc-apple-darwin
ac_cv_target_alias=powerpc-apple-darwin
am_cv_CC_dependencies_compiler_type=gcc3

## ----------------- ##
## Output variables. ##
## ----------------- ##

ACLOCAL='${SHELL} /var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/missing
--run aclocal-1.9'
AMDEPBACKSLASH='\'
AMDEP_FALSE='#'
AMDEP_TRUE=''
AMTAR='${SHELL} /var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/missing
--run tar'
AM_CXXFLAGS=''
AR=''
AUTOCONF='${SHELL} /var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/missing
--run autoconf'
AUTOHEADER='${SHELL} /var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/missing
--run autoheader'
AUTOMAKE='${SHELL} /var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/missing
--run automake-1.9'
AWK='awk'
CC='gcc'
CCDEPMODE='depmode=gcc3'
CFLAGS='-O2 -pipe'
CPP=''
CPPFLAGS=''
CXX=''
CXXCPP=''
CXXDEPMODE=''
CXXFLAGS='-O2 -pipe'
CYGPATH_W='echo'
DEFS=''
DEPDIR='.deps'
ECHO='echo'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
EIX_CACHEFILE=''
EIX_WIKI=''
EXEEXT=''
EXTRA_CXXFLAGS=''
F77=''
FFLAGS=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s'
LDFLAGS=''
LEVENSHTEIN_DISTANCE=''
LIBOBJS=''
LIBS=''
LIBTOOL=''
LN_S=''
LTLIBOBJS=''
MAKEINFO='${SHELL} /var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/missing
--run makeinfo'
OBJEXT='o'
PACKAGE='eix'
PACKAGE_BUGREPORT='http://sourceforge.net/projects/eix/'
PACKAGE_NAME='eix'
PACKAGE_STRING='eix 0.5.0_beta'
PACKAGE_TARNAME='eix'
PACKAGE_VERSION='0.5.0_beta'
PATH_SEPARATOR=':'
RANLIB=''
SET_MAKE=''
SHELL='/bin/sh'
STRIP=''
VERSION='0.5.0_beta'
ac_ct_AR=''
ac_ct_CC='gcc'
ac_ct_CXX=''
ac_ct_F77=''
ac_ct_RANLIB=''
ac_ct_STRIP=''
am__fastdepCC_FALSE='#'
am__fastdepCC_TRUE=''
am__fastdepCXX_FALSE=''
am__fastdepCXX_TRUE=''
am__include='include'
am__leading_dot='.'
am__quote=''
am__tar='${AMTAR} chof - "$$tardir"'
am__untar='${AMTAR} xf -'
bindir='${exec_prefix}/bin'
build='powerpc-apple-darwin'
build_alias='powerpc-apple-darwin'
build_cpu='powerpc'
build_os='darwin'
build_vendor='apple'
datadir='/usr/share'
exec_prefix='NONE'
host='powerpc-apple-darwin'
host_alias='powerpc-apple-darwin'
host_cpu='powerpc'
host_os='darwin'
host_vendor='apple'
includedir='${prefix}/include'
infodir='/usr/share/info'
install_sh='/var/tmp/portage/eix-0.5.0_beta/work/eix-0.5.0_beta/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localstatedir='/var/lib'
mandir='/usr/share/man'
mkdir_p='$(install_sh) -d'
oldincludedir='/usr/include'
prefix='/usr'
program_transform_name='s,x,x,'
regex_cmd=''
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='/etc'
target='powerpc-apple-darwin'
target_alias=''
target_cpu='powerpc'
target_os='darwin'
target_vendor='apple'

## ----------- ##
## confdefs.h. ##
## ----------- ##

#define HAVE_REGCOMP 1
#define HAVE_STRCHR 1
#define HAVE_STRCSPN 1
#define HAVE_STRDUP 1
#define HAVE_STRERROR 1
#define PACKAGE "eix"
#define PACKAGE_BUGREPORT "http://sourceforge.net/projects/eix/"
#define PACKAGE_NAME "eix"
#define PACKAGE_STRING "eix 0.5.0_beta"
#define PACKAGE_TARNAME "eix"
#define PACKAGE_VERSION "0.5.0_beta"
#define VERSION "0.5.0_beta"

configure: exit 1


emerge info:
!!! Relying on the shell to locate gcc, this may break
!!! DISTCC, installing gcc-config and setting your current gcc
!!! profile will fix this
Portage 2.0.51.22-r3 (default-darwin/macos/10.4, gcc-4.0.0, libsystem-7.1-r0,
8.3.0 Power Macintosh)
=================================================================
System uname: 8.3.0 Power Macintosh powerpc
macos-20041118
distcc 2.0.1-zeroconf powerpc-apple-darwin7.0 (protocol 1) (default port 3632)
[disabled]
dev-lang/python:     [Not Present]
sys-apps/sandbox:    [Not Present]
sys-devel/autoconf:  [Not Present]
sys-devel/automake:  [Not Present]
sys-devel/binutils:  [Not Present]
sys-devel/libtool:   [Not Present]
virtual/os-headers:  7.1
ACCEPT_KEYWORDS="ppc-macos"
AUTOCLEAN="yes"
CBUILD="powerpc-apple-darwin"
CFLAGS="-O2 -pipe"
CHOST="powerpc-apple-darwin"
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/env.d"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig collision-protect distlocks sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="ppc emboss gmp opengl pcre ppc-macos userland_Darwin kernel_Darwin
elibc_Darwin"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Comment 1 Fabian Groffen gentoo-dev 2005-11-09 00:21:53 UTC
the fact that upstream dies on not having it, means that we'll have to hack the
configure.ac file and make it define HAVE_STRNDUP or something and manually add
the implementation for strndup.  I did that once, but I forgot for which package.
Comment 2 Emil Beinroth 2005-11-09 03:58:25 UTC
If've fixed this in the upstream svn.
A quick question: does ppc-macos have FNM_CASEFOLD?
fnmatch(3) tells me it's a gnu extension, but some online-manpages say it's also
available on macos/darwin stuff.
Comment 3 Fabian Groffen gentoo-dev 2005-11-09 09:39:19 UTC
given de manpage, I'd say that if you include fnmatch.h, then FNM_CASEFOLD
should be available.  The fnmatch() function first appeared in 4.4BSD.
Comment 4 Emil Beinroth 2005-11-16 03:16:04 UTC
Please test the new eix-0.5.0_pre1.
Comment 5 Fabian Groffen gentoo-dev 2005-11-16 11:02:18 UTC
configure is ok now, but I hit a GCC4 issue, I think:

if g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../src    -O3 -pipe -MT flat.o
-MD -MP -MF ".deps/flat.Tpo" -c -o flat.o `test -f 'flat/flat.cc' || echo
'./'`flat/flat.cc; \
then mv -f ".deps/flat.Tpo" ".deps/flat.Po"; else rm -f ".deps/flat.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../src    -O3 -pipe -MT
flat-utils.o -MD -MP -MF ".deps/flat-utils.Tpo" -c -o flat-utils.o `test -f
'flat/flat-utils.cc' || echo './'`flat/flat-utils.cc; \
then mv -f ".deps/flat-utils.Tpo" ".deps/flat-utils.Po"; else rm -f
".deps/flat-utils.Tpo"; exit 1; fi
flat/flat.cc: In member function 'virtual int
FlatCache::readCategory(std::vector<Package*, std::allocator<Package*> >&, const
std::string&, void (*)(const char*, ...))':
flat/flat.cc:51: error: invalid conversion from 'int (*)(const dirent*)' to 'int
(*)(dirent*)'
flat/flat.cc:51: error:   initializing argument 3 of 'int scandir(const char*,
dirent***, int (*)(dirent*), int (*)(const void*, const void*))'
make[4]: *** [flat.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [all-recursive] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
Comment 6 Emil Beinroth 2005-11-20 05:24:04 UTC
Created attachment 73223 [details, diff]
Fix compilation problems with scandir on darwin

Could you please try this patch? Thanks
Comment 7 Fabian Groffen gentoo-dev 2005-11-20 05:48:24 UTC
Making all in portage
Making all in cache
if g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../src    -O3 -pipe -MT flat.o
-MD -MP -MF ".deps/flat.Tpo" -c -o flat.o `test -f 'flat/flat.cc' || echo
'./'`flat/flat.cc; \
then mv -f ".deps/flat.Tpo" ".deps/flat.Po"; else rm -f ".deps/flat.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../src    -O3 -pipe -MT
flat-utils.o -MD -MP -MF ".deps/flat-utils.Tpo" -c -o flat-utils.o `test -f
'flat/flat-utils.cc' || echo './'`flat/flat-utils.cc; \
then mv -f ".deps/flat-utils.Tpo" ".deps/flat-utils.Po"; else rm -f
".deps/flat-utils.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../src    -O3 -pipe -MT none.o
-MD -MP -MF ".deps/none.Tpo" -c -o none.o `test -f 'none/none.cc' || echo
'./'`none/none.cc; \
then mv -f ".deps/none.Tpo" ".deps/none.Po"; else rm -f ".deps/none.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../src    -O3 -pipe -MT cdb.o
-MD -MP -MF ".deps/cdb.Tpo" -c -o cdb.o `test -f 'cdb/cdb.cc' || echo
'./'`cdb/cdb.cc; \
then mv -f ".deps/cdb.Tpo" ".deps/cdb.Po"; else rm -f ".deps/cdb.Tpo"; exit 1; fi
cdb/cdb.cc:38:20: error: endian.h: No such file or directory
make[4]: *** [cdb.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [all-recursive] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Darwin doesn't have a endian.h in /usr/include.  It does have:
% find /usr/include -name "endian.h" 
/usr/include/i386/endian.h
/usr/include/machine/endian.h
/usr/include/ppc/endian.h

machine/endian.h is the portable one that selects the right arch itself and
includes either ppc or i386.
Comment 8 Emil Beinroth 2005-11-20 06:38:36 UTC
Created attachment 73227 [details, diff]
Use autoconf to detect byteorder

Is /usr/include/machine/endian.h a bsd-thing, cause I don't have that file on
any of my gnu/linux maschines.

This patch uses autoconf to detect the byteorder.
Please test, thanks
Comment 9 Fabian Groffen gentoo-dev 2005-11-20 06:58:24 UTC
I added an eautoreconf to generate the new configure script.  All went fine.  We
now stop on the next error ;)

./generate-cachemap.sh > cache-map.cc
source='cache-map.cc' object='cache-map.o' libtool=no \
depfile='.deps/cache-map.Po' tmpdepfile='.deps/cache-map.TPo' \
depmode=gcc3 /bin/sh ../../../depcomp \
g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../src    -O3 -pipe -c -o
cache-map.o `test -f 'cache-map.cc' || echo './'`cache-map.cc
cache-map.cc: In function 'BasicCache* get_cache(std::string)':
cache-map.cc:10: error: expected type-specifier before 'UbackportCache'
cache-map.cc:10: error: cannot convert 'int*' to 'BasicCache*' in return
cache-map.cc:10: error: expected ';' before 'UbackportCache'
cache-map.cc:10: error: 'UbackportCache' was not declared in this scope
cache-map.cc:13: error: expected type-specifier before 'UcdbCache'
cache-map.cc:13: error: cannot convert 'int*' to 'BasicCache*' in return
cache-map.cc:13: error: expected ';' before 'UcdbCache'
cache-map.cc:13: error: 'UcdbCache' was not declared in this scope
cache-map.cc:16: error: expected type-specifier before 'UflatCache'
cache-map.cc:16: error: cannot convert 'int*' to 'BasicCache*' in return
cache-map.cc:16: error: expected ';' before 'UflatCache'
cache-map.cc:16: error: 'UflatCache' was not declared in this scope
cache-map.cc:19: error: expected type-specifier before 'UnoneCache'
cache-map.cc:19: error: cannot convert 'int*' to 'BasicCache*' in return
cache-map.cc:19: error: expected ';' before 'UnoneCache'
cache-map.cc:19: error: 'UnoneCache' was not declared in this scope
make[4]: *** [cache-map.o] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
Comment 10 Emil Beinroth 2005-11-20 07:37:07 UTC
Created attachment 73244 [details, diff]
Don't use gnu-sed syntax to make first letter uppercase

I hope the tr-stuff works :)
Comment 11 Fabian Groffen gentoo-dev 2005-11-20 07:51:25 UTC
You're not going to believe this...  it compiles and installs!

However.  I'm probably doing something wrong here, but the tool is either
blazingly fast, or it doesn't like me:

% update-eix 
User 'root' is needed to initially generate the database.
% sudo update-eix
Reading Portage settings ..
void Mask::splitMaskString(std::string): Unable to split mask
"-*sys-libs/readline" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/sed"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "virtual/editor"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "-*net-misc/wget"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"virtual/baselayout" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-arch/bzip2"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-arch/cpio"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-arch/tar"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-shells/bash"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-lang/perl"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-lang/python"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "net-misc/iputils"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "net-misc/rsync"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "net-misc/wget"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-apps/coreutils" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-apps/debianutils" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-apps/diffutils" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/file"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-apps/findutils" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/gawk"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/grep"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/groff"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/kbd"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/man"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-apps/man-pages" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-apps/net-tools" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
">=sys-apps/portage-2.0.51" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-process/procps" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-process/psmisc" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/sed"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/shadow"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/texinfo"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/which"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/autoconf" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/autoconf-wrapper" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/automake" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/automake-wrapper" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/binutils" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/bison"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/flex"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/gcc"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/gnuconfig" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/libtool" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/m4"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/make"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/patch"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-fs/e2fsprogs"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-libs/cracklib" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-libs/ncurses"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-libs/readline" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-libs/zlib"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"virtual/dev-manager" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "virtual/editor"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "virtual/gzip"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "virtual/libc"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "virtual/modutils"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"virtual/os-headers" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "virtual/pager"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "virtual/ssh" into
compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-arch/zip"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-arch/unzip"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-editors/nano"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"app-editors/vim-core" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-editors/vim"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
">=app-portage/esearch-0.7.1" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-shells/bash"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-shells/zsh"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-db/sqlite"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-lang/perl"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-lang/python"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-lang/ruby"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-libs/libxml2"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"dev-perl/XML-Parser" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"dev-util/intltool" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "dev-util/guile"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"media-libs/a52dec" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "net-misc/curl"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "net-misc/rsync"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-apps/diffutils" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/gawk"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/grep"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-apps/texinfo"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/gcc-apple" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/autoconf" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/autoconf-wrapper" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/automake" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/automake-wrapper" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/bison"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-devel/flex"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-devel/libperl" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-libs/com_err"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "sys-libs/ncurses"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"sys-libs/readline" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "x11-libs/gtk+"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-vim/phpdocs"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"app-vim/gentoo-syntax" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-vim/taglist"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "app-arch/cpio"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask "net-dns/libidn"
into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"=app-editors/nano-1.3.4" into compararator-category-rest
void Mask::splitMaskString(std::string): Unable to split mask
"=net-misc/keychain-2.6.1" into compararator-category-rest
Building database (/var/cache/eix) from scratch ..
[0] /nfs/poseidon/export/home/gentoo/gentoo-x86/ (cache: flat)
     Reading 001%void BasicVersion::parseVersion(const char*, unsigned int):
regexec("0.9.5") failed. Can't determine primary version.
%
Comment 12 Emil Beinroth 2005-11-21 09:20:40 UTC
Created attachment 73317 [details, diff]
Change all basic to extended regex

\? and \+ shouldn't have a special meaning in basic regexp .. gnu doesn't care
:)
This patch changes all regex from basic to extended, cause basic-regex are
obsolete anyways (according to every regex related manpage I've read).
Please test :)
Comment 13 Fabian Groffen gentoo-dev 2005-11-21 10:19:09 UTC
update-eix went fine.

I might do something wrong here, but it doesn't sound ok:
% eix monetdb
void Regex::compile(const char*, int): regcomp(): No such file or directory

running eix returns all packages.  eix -L GPL seems to be accepted though.
Comment 14 Emil Beinroth 2005-11-21 13:51:54 UTC
Created attachment 73326 [details, diff]
Don't use errno/strerror for regcomp

I hope this is the last time I need to abuse you for testing :)
Comment 15 Fabian Groffen gentoo-dev 2005-11-22 10:03:35 UTC
PATCH COMMAND:  patch -p0 -g0 --no-backup-if-mismatch < /nfs/poseidon/export/  
home/gentoo/gentoo-x86/app-portage/eix/files/eix-0.5.0-macos.patch

=================================
patching file config.h.in
patching file configure.in
patching file src/portage/cache/none/none.cc
patching file src/portage/cache/backport/backport.cc
patching file src/portage/cache/flat/flat.cc
patching file ./src/portage/cache/cdb/cdb.cc
patching file ./configure.in
Hunk #1 succeeded at 16 with fuzz 2 (offset -33 lines).
patching file src/portage/cache/generate-cachemap.sh
patching file src/eixTk/stringutils.cc
patching file src/portage/basicversion.cc
patching file src/portage/mask.cc
patching file src/eixTk/regexp.h
Hunk #1 FAILED at 62.
1 out of 2 hunks FAILED -- saving rejects to file src/eixTk/regexp.h.rej

I already removed the previous patch to src/eixTk/regexp.h but that didn't help.
 I can't get the patch applied.  Can you perhaps do a jumbo patch so we can take
that one as checkpoint?
Comment 16 Emil Beinroth 2005-11-22 10:28:54 UTC
Created attachment 73381 [details, diff]
Previous patches in one big patch.

Sure.
Comment 17 Fabian Groffen gentoo-dev 2005-11-22 11:15:35 UTC
I guess we're almost there now:
% eix monetdb
regcomp(): empty (sub)expression


I updated the database again to be sure.  I might just do it wrong, as I don't
know what the app expects.  Reading the man-page makes me think I'm not doing it
wrong that obviously ;)
Comment 18 Emil Beinroth 2005-11-22 12:25:07 UTC
Please try and put MATCH_NAME_IF=".*" into /etc/eixrc.
Comment 19 Fabian Groffen gentoo-dev 2005-11-22 12:50:13 UTC
Ok, that did the trick somehow.  Then it some sort of was obvious.

% eix monetdb

Found 0 matches

% eix -sr ".*monetdb.*"

Found 0 matches


What does this tool do?  I would've expected one hit.  It appears only a very
small number (around 190) of ebuilds are in the cache.
Comment 20 Fabian Groffen gentoo-dev 2005-11-30 02:30:53 UTC
I just saw there was a revbump of eix.  Are the patches made in this bug
included in the new version?
Comment 21 Emil Beinroth 2005-11-30 05:53:54 UTC
The patches are included in >=eix-0.5.0_rc1.
Comment 22 Adrian Chmielewski 2006-01-08 17:34:44 UTC
Hmm meny problems you had I see. Better way will me compile
by turn off collision-protect
CODE:
FEATURES="-collision-protect" emerge eix
Comment 23 Fabian Groffen gentoo-dev 2006-01-09 00:15:00 UTC
If you have to turn off collision-protect, something is wrong...  Please say so in your other bug.  Judging from that one, this one can be closed.