Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 544736 - sys-devel/gettext: fails to bootstrap
Summary: sys-devel/gettext: fails to bootstrap
Status: UNCONFIRMED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: FreeBSD (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo/BSD Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-03-28 09:31 UTC by i.Dark_Templar
Modified: 2015-03-28 09:33 UTC (History)
1 user (show)

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


Attachments
build.log (build.log,255.60 KB, text/x-log)
2015-03-28 09:32 UTC, i.Dark_Templar
Details
gettext-0.19.4.ebuild (gettext-0.19.4.ebuild,3.83 KB, text/plain)
2015-03-28 09:33 UTC, i.Dark_Templar
Details

Note You need to log in before you can comment on or make changes to this bug.
Description i.Dark_Templar 2015-03-28 09:31:40 UTC
sys-devel/gettext-0.19.4 fails to build on Gentoo/FreeBSD first time, because there is no libintl.h available yet.

Reproducible: Always

Steps to Reproduce:
1. to imitate bootstrap process save copy of sys-devel/gettext package and remove it
 quickpkg sys-devel/gettext
 emerge -Ca sys-devel/gettext
2. emerge -1 sys-devel/gettext
Actual Results:  
emerge fails

Expected Results:  
emerge should succeed

To fix the system after that just emerge saved binary copy of sys-devel/gettext
emerge -1k sys-devel/gettext

Relevant piece of build log:
/bin/sh ../libtool  --tag=CC --mode=compile i686-gentoo-freebsd9.2-gcc -std=gnu99 -c -DLOCALEDIR=\"/usr/share/locale\" -DLOCALE_ALIAS_PATH=\"/usr/share/locale\" -DLIBDIR=\"/usr/lib\" -DBUILDING_LIBINTL -DBUILDING_DLL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"/usr/lib\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl -I.. -D_THREAD_SAFE -march=native -O2 -pipe -fomit-frame-pointer -fvisibility=hidden  /var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl/ngettext.c
libtool: compile:  i686-gentoo-freebsd9.2-gcc -std=gnu99 -c -DLOCALEDIR=\"/usr/share/locale\" -DLOCALE_ALIAS_PATH=\"/usr/share/locale\" -DLIBDIR=\"/usr/lib\" -DBUILDING_LIBINTL -DBUILDING_DLL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"/usr/lib\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl -I.. -D_THREAD_SAFE -march=native -O2 -pipe -fomit-frame-pointer -fvisibility=hidden /var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl/ngettext.c  -fPIC -DPIC -o .libs/ngettext.o
sed -e 's|^#line \([0-9]*\) "\(plural\.[cy]\)"|#line \1 "/var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl/\2"|' < /var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl/plural.c > pluralx.c
/bin/sh ../libtool  --tag=CC --mode=compile i686-gentoo-freebsd9.2-gcc -std=gnu99 -c -DLOCALEDIR=\"/usr/share/locale\" -DLOCALE_ALIAS_PATH=\"/usr/share/locale\" -DLIBDIR=\"/usr/lib\" -DBUILDING_LIBINTL -DBUILDING_DLL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"/usr/lib\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl -I.. -D_THREAD_SAFE -march=native -O2 -pipe -fomit-frame-pointer -fvisibility=hidden  pluralx.c
libtool: compile:  i686-gentoo-freebsd9.2-gcc -std=gnu99 -c -DLOCALEDIR=\"/usr/share/locale\" -DLOCALE_ALIAS_PATH=\"/usr/share/locale\" -DLIBDIR=\"/usr/lib\" -DBUILDING_LIBINTL -DBUILDING_DLL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"/usr/lib\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl -I.. -D_THREAD_SAFE -march=native -O2 -pipe -fomit-frame-pointer -fvisibility=hidden pluralx.c  -fPIC -DPIC -o .libs/pluralx.o
/var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4/gettext-tools/../gettext-runtime/intl/plural.c:313:59: fatal error: libintl.h: No such file or directory
 #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
                                                           ^
compilation terminated.
Makefile:292: recipe for target 'pluralx.lo' failed
gmake[4]: *** [pluralx.lo] Error 1
gmake[4]: Leaving directory '/var/tmp/portage/sys-devel/gettext-0.19.4/work/gettext-0.19.4-abi_x86_32.x86_fbsd/gettext-tools/intl'
Makefile:1721: recipe for target 'all-recursive' failed

$ emerge --info
Portage 2.2.18 (python 2.7.9-final-0, default/bsd/fbsd/x86/9.2, gcc-4.8.4, freebsd-lib-9.2, 9.2-Gentoo i386)
=================================================================
System uname: FreeBSD-9.2-Gentoo-i386-32bit-ELF
KiB Mem:     1027488 total
KiB Swap:          0 total
Timestamp of repository gentoo: Fri, 20 Mar 2015 00:45:01 +0000
sh sh
ld GNU ld (Gentoo 2.25 p1.0) 2.25
app-shells/bash:         4.3_p33-r2::gentoo
dev-lang/perl:           5.20.2::gentoo
dev-lang/python:         2.7.9-r2::crossdev
dev-util/cmake:          3.1.0::gentoo
sys-apps/baselayout:     2.2::gentoo
sys-apps/openrc:         0.13.11::gentoo
sys-devel/autoconf:      2.69-r1::gentoo
sys-devel/automake:      1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:      2.25::gentoo
sys-devel/gcc:           4.8.4::gentoo
sys-devel/gcc-config:    1.8::gentoo
sys-devel/libtool:       2.4.6-r1::gentoo
sys-devel/make:          4.1-r1::gentoo
sys-freebsd/freebsd-lib: 9.2::crossdev (virtual/os-headers)
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

local-overlay
    location: /usr/local/portage
    masters: gentoo
    priority: 0

crossdev
    location: /usr/local/portage_crossdev
    masters: gentoo
    priority: 1

ACCEPT_KEYWORDS="x86-fbsd ~x86-fbsd"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-gentoo-freebsd9.2"
CFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
CHOST="i686-gentoo-freebsd9.2"
CONFIG_PROTECT="/boot/device.hints /etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y --binpkg-respect-use=y --autounmask=n"
FCFLAGS="-march=i486 -O2 -pipe"
FEATURES="binpkg-logs chflags distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersync"
FFLAGS="-march=i486 -O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK=" /etc/systemd /lib*/systemd /lib*/tmpfiles.d /usr/lib*/systemd /usr/lib*/tmpfiles.d /usr/lib*/python*/test "
LDFLAGS=""
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="X acl bidi bzip2 c++0x cleartype consolekit cracklib crypt custom-cflags custom-optimization cxx dbus dga dri fontconfig fontforge freetype fribidi gmp iconv icu ipv6 java5 java6 kde libav lzma mmap modules ncurses nls opengl openmp oss pam pch pcntl pcre pic plasma png policykit posix private-headers python2 qt3support qt4 readline ssl startup-notification system-cairo system-icu system-jpeg system-libvpx system-sqlite tcpd threads truetype unicode usb x86-fbsd xattr xcb xcomposite xft xinerama xscreensaver zlib" ABI_X86="32" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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 cgi cgid 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" CALLIGRA_
FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="FreeBSD" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse" KERNEL="FreeBSD" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru en ru_RU en_US" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7" RUBY_TARGETS="ruby19 ruby20" USERLAND="BSD" VIDEO_CARDS="vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, LANG, LC_ALL, MAKEOPTS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

On Gentoo/Linux file /usr/include/libintl.h belongs to sys-libs/glibc, while on Gentoo/FreeBSD it belongs to sys-devel/gettext.
Comment 1 i.Dark_Templar 2015-03-28 09:32:17 UTC
Created attachment 399928 [details]
build.log
Comment 2 i.Dark_Templar 2015-03-28 09:33:15 UTC
Created attachment 399930 [details]
gettext-0.19.4.ebuild

Fixed ebuild.

$ diff -u /usr/{portage,local/portage_crossdev}/sys-devel/gettext/gettext-0.19.4.ebuild
--- /usr/portage/sys-devel/gettext/gettext-0.19.4.ebuild        2015-03-19 23:01:18.000000000 +0300
+++ /usr/local/portage_crossdev/sys-devel/gettext/gettext-0.19.4.ebuild 2015-03-28 12:23:44.000000000 +0300
@@ -13,7 +13,7 @@
 LICENSE="GPL-3 LGPL-2"
 SLOT="0"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
-IUSE="acl -cvs doc emacs git java nls +cxx ncurses openmp static-libs elibc_glibc elibc_musl"
+IUSE="acl build -cvs doc emacs git java nls +cxx ncurses openmp static-libs elibc_glibc elibc_musl"
 
 # only runtime goes multilib
 DEPEND=">=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
@@ -97,6 +97,12 @@
                )
        fi
 
+       if use build && [[ ${USERLAND} == "BSD" ]] ; then
+               # needed for bootsrap, there is no libintl.h in system yet
+               append-cflags   "-I${BUILD_DIR}/gettext-runtime/intl"
+               append-cxxflags "-I${BUILD_DIR}/gettext-runtime/intl"
+       fi
+
        econf "${myconf[@]}"
 }