Making all in libguile gmake[2]: Entering directory `/var/tmp/portage/dev-scheme/guile-1.8.3-r1/work/guile-1.8.3/libguile' if [ "no" = "yes" ]; then \ i686-gentoo-freebsd6.2-gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I.. -c -o gen-scmconfig.o gen-scmconfig.c; \ else \ i686-gentoo-freebsd6.2-gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I.. -march=athlon-xp -O2 -pipe -Wall -Wmissing-prototypes -c -o gen-scmconfig.o gen-scmconfig.c; \ fi In file included from ./strings.h:25, from /usr/include/string.h:49, from gen-scmconfig.c:127: ../libguile/__scm.h:76:32: error: libguile/scmconfig.h: No such file or directory gmake[2]: *** [gen-scmconfig.o] Error 1 gmake[2]: Leaving directory `/var/tmp/portage/dev-scheme/guile-1.8.3-r1/work/guile-1.8.3/libguile' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/var/tmp/portage/dev-scheme/guile-1.8.3-r1/work/guile-1.8.3' gmake: *** [all] Error 2 I'm not entirely sure it's an issue specific to bsd emerge --info Portage 2.1.4_rc9 (default-bsd/fbsd/6.2/x86, gcc-4.2.2, freebsd-lib-6.2-r3, 6.2-RELEASE i386) ================================================================= System uname: 6.2-RELEASE i386 i386 Timestamp of tree: Unknown distcc 2.18.3 i686-gentoo-freebsd6.2 (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.4 [enabled] app-shells/bash: 3.2_p17-r1 dev-lang/python: 2.5.1-r4 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 2.0.0_rc6 sys-apps/sandbox: 1.2.20_alpha2-r1 sys-devel/autoconf: 2.13, 2.61-r1 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.17-r2 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.24 virtual/os-headers: 6.2-r3 ACCEPT_KEYWORDS="x86-fbsd ~x86-fbsd" CBUILD="i686-gentoo-freebsd6.2" CFLAGS="-march=athlon-xp -O2 -pipe" CHOST="i686-gentoo-freebsd6.2" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=athlon-xp -O2 -pipe" DISTDIR="/mnt/distfiles" FEATURES="buildpkg buildsyspkg ccache collision-protect distcc distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict test unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="-Wl,--as-needed" LINGUAS="en en_US en_GB fr" MAKEOPTS="-j4" PKGDIR="/usr/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/mnt/portage_cvs" PORTDIR_OVERLAY="/usr/local/portage /mnt/overlay /usr/local/mozilla" SYNC="rsync://alexis/gentoo-portage" USE="3dnow 3dnowext X a52 aac aalib bash-completion bzip2 cli cracklib crypt dbus djvu dri dts dv dvd dvdread encode flac gif glitz gtk hal iconv imagemagick imlib ipv6 ithreads java5 jpeg kpathsea ladspa latex libcaca libnotify libsamplerate live lzo mad midi mjpeg mmx mmxext modplug mp2 mp3 musepack ncurses network nls offensive ogg opengl oss pam pcre perl png pnm ppds python qt4 quicktime rar readline reflection session sndfile speex spl sse ssl svg tcpd test tetex tga theora threads tiff truetype unicode usb vim-syntax vorbis wavpack wma x264 x86-fbsd xcb xcomposite xml xorg xv xvid xvmc zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" 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="FreeBSD" INPUT_DEVICES="keyboard mouse" KERNEL="FreeBSD" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US en_GB fr" USERLAND="BSD" VIDEO_CARDS="nv vesa vga" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS [ebuild N ] dev-scheme/guile-1.8.3-r1 USE="deprecated nls threads -debug -debug-freelist -debug-malloc -discouraged -elisp -networking -regex"
seems a bsd issue: in /usr/include/string.h: #if __BSD_VISIBLE #include <strings.h> #endif and it tries to include libguile/strings.h ....
Created attachment 138474 [details, diff] a bit dirty but working
Hmm, if that works, then does simply removing the code in /usr/include/string.h: #if __BSD_VISIBLE #include <strings.h> #endif work too? In your patch is there any point in not doing just: +#undef __BSD_VISIBLE
(In reply to comment #3) > Hmm, if that works, then does simply removing the code in > /usr/include/string.h: > > #if __BSD_VISIBLE > #include <strings.h> > #endif > > work too? yes > In your patch is there any point in not doing just: > +#undef __BSD_VISIBLE nope, seems better like that. But anyway, I dont think its clean to do like that; a better solution imho would be to rename guile strings.h in something else, like guile_strings.h. Even on linux there is a system header named strings.h
some irc log after asking Roy about it: 16:26 <@UberLord> aballier: never undef __BSD_VISIBLE 16:26 <@UberLord> if it's a local include, then #include "strings.h" should work 16:27 < aballier> UberLord: the problem is the .c includes string.h 16:27 < aballier> which then includes <strings.h> because of __BSD_VISIBLE 16:27 < aballier> but there is locally strings.h 16:27 < aballier> which needs what the program compiled with the .c should generate 16:28 * UberLord head explodes 16:28 < aballier> :) 16:34 <@UberLord> aballier: append_cppflags -I/usr/include 16:34 <@UberLord> may fix it 16:34 < aballier> ho, will try this 16:36 < aballier> UberLord: but then, when it'll want its local strings.h, what will happen ? 16:39 <@UberLord> i dunno 16:39 <@UberLord> what happens if a package defines stdio.h 16:40 <@UberLord> the correct fix is to beat upstream into renaming their header 16:40 < aballier> yes ;) 16:41 <@UberLord> of course, you could also write a patch to do just that
1.8.5 appears to be fine now :) i dont remember when this changed