Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 476078 - libtoolize fails during emerge of curl
Summary: libtoolize fails during emerge of curl
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-07-07 15:30 UTC by Gustav Schaffter
Modified: 2013-07-09 07:30 UTC (History)
1 user (show)

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


Attachments
Build log from failed build (net-misc:curl-7.30.0:20130707-152719.log,2.86 KB, text/plain)
2013-07-07 15:35 UTC, Gustav Schaffter
Details
ebuild environment file (environment,109.29 KB, text/plain)
2013-07-07 15:37 UTC, Gustav Schaffter
Details
The libtoolize out file (libtoolize.out,1004 bytes, text/plain)
2013-07-07 15:48 UTC, Gustav Schaffter
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gustav Schaffter 2013-07-07 15:30:51 UTC
Not sure if this should be filed under sys-devel/libtool-2.4-r1 or under net-misc/curl-7.30.0 because it concerns the build of more than one package. All failing if they use libtoolize.

But as an example, net-misc/curl fails to build.


Reproducible: Always

Steps to Reproduce:
1. # emerge net-misc/curl
2. See the build fail.

Actual Results:  
The build fails.

Expected Results:  
The build should succeed.

# emerge --info
Portage 2.1.12.2 (default/linux/x86/13.0, gcc-4.6.3, glibc-2.15-r3, 3.8.4-linode50 i686)
=================================================================
System uname: Linux-3.8.4-linode50-i686-Intel-R-_Xeon-R-_CPU_E5-2670_0_@_2.60GHz-with-gentoo-2.2
KiB Mem:     1024976 total,    381440 free
KiB Swap:    2097148 total,   1999672 free
Timestamp of tree: Sun, 07 Jul 2013 09:45:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
app-shells/bash:          4.2_p45
dev-lang/python:          2.7.3-r3, 3.2.5-r1
dev-util/cmake:           2.8.10.2-r2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6, 1.12.6
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.5.4, 4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.7 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer -mno-tls-direct-seg-refs -mno-avx"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe -fomit-frame-pointer -mno-tls-direct-seg-refs -mno-avx"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/                 http://mirror.qubenet.net/mirror/gentoo/"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="-4 -v"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="acl apache2 authdaemond bash-completion berkdb bzip2 clamdtop cli corefonts cracklib cron crypt cxx dkim dlz dri emacs extensions fam ffmpeg fortran gd gdbm geoip gif iconv imagemagick imap ipv6 jpeg jpeg2k logrotate mailbox maildir md5sum modules mudflap mysql mysqli ncurses nls nptl openmp pam pcre pdo php png python razor readline sasl session spamassassin spell sqlite sse sse2 ssl symlink tcpd theora threads truetype unicode unzip urandom vda vhosts vorbis x86 xml xvid zip zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default auth_digest authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache 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" APACHE2_MPMS="worker" 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="glibc" 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 ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en fr it sv" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-3 php5-4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON


# uname -a
Linux www 3.8.4-linode50 #1 SMP Mon Mar 25 15:50:29 EDT 2013 i686 Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz GenuineIntel GNU/Linux

# As can be seen, this computer runs in a Virtual Machine under Xen at Linode. Fact is, I have another server running at the same hosting company with a very look-alike setup that doesn't show this error.

# emerge net-misc/curl
.
.
.
* Applying curl-fix-gnutls-nettle.patch ...                                                                                                                                                                                          [ ok ]
 * Adjusting to prefix /
 *   curl-config.in ...                                                                                                                                                                                                               [ ok ]
 * Running eautoreconf in '/var/tmp/portage/net-misc/curl-7.30.0/work/curl-7.30.0' ...
 * Running libtoolize --install --copy --force --automake ...                                                                                                                                                                         [ !! ]

 * Failed Running libtoolize !
 * 
 * Include in your bugreport the contents of:
 * 
 *   /var/tmp/portage/net-misc/curl-7.30.0/temp/libtoolize.out

 * ERROR: net-misc/curl-7.30.0 failed (prepare phase):
 *   Failed Running libtoolize !
 * 
 * Call stack:
 *     ebuild.sh, line   93:  Called src_prepare
 *   environment, line 3021:  Called eautoreconf
 *   environment, line  824:  Called _elibtoolize '--install' '--copy' '--force'
 *   environment, line  374:  Called autotools_run_tool 'libtoolize' '--install' '--copy' '--force' '--automake'
 *   environment, line  601:  Called die
 * The specific snippet of code:
 *           die "Failed Running $1 !";
 * 
 * If you need support, post the output of `emerge --info '=net-misc/curl-7.30.0'`,
 * the complete build log and the output of `emerge -pqv '=net-misc/curl-7.30.0'`.
/usr/lib/portage/bin/isolated-functions.sh: line 215: wait: `Failed Running libtoolize !': not a pid or valid job spec
 * The complete build log is located at '/var/log/portage/net-misc:curl-7.30.0:20130707-152719.log'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/net-misc/curl-7.30.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-misc/curl-7.30.0/temp/environment'.
 * Working directory: '/var/tmp/portage/net-misc/curl-7.30.0/work/curl-7.30.0'
 * S: '/var/tmp/portage/net-misc/curl-7.30.0/work/curl-7.30.0'


# emerge --info '=net-misc/curl-7.30.0'
Portage 2.1.12.2 (default/linux/x86/13.0, gcc-4.6.3, glibc-2.15-r3, 3.8.4-linode50 i686)
=================================================================
                        System Settings
=================================================================
System uname: Linux-3.8.4-linode50-i686-Intel-R-_Xeon-R-_CPU_E5-2670_0_@_2.60GHz-with-gentoo-2.2
KiB Mem:     1024976 total,    379000 free
KiB Swap:    2097148 total,   1999672 free
Timestamp of tree: Sun, 07 Jul 2013 09:45:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
app-shells/bash:          4.2_p45
dev-lang/python:          2.7.3-r3, 3.2.5-r1
dev-util/cmake:           2.8.10.2-r2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6, 1.12.6
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.5.4, 4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.7 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer -mno-tls-direct-seg-refs -mno-avx"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe -fomit-frame-pointer -mno-tls-direct-seg-refs -mno-avx"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/                 http://mirror.qubenet.net/mirror/gentoo/"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="-4 -v"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="acl apache2 authdaemond bash-completion berkdb bzip2 clamdtop cli corefonts cracklib cron crypt cxx dkim dlz dri emacs extensions fam ffmpeg fortran gd gdbm geoip gif iconv imagemagick imap ipv6 jpeg jpeg2k logrotate mailbox maildir md5sum modules mudflap mysql mysqli ncurses nls nptl openmp pam pcre pdo php png python razor readline sasl session spamassassin spell sqlite sse sse2 ssl symlink tcpd theora threads truetype unicode unzip urandom vda vhosts vorbis x86 xml xvid zip zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default auth_digest authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache 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" APACHE2_MPMS="worker" 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="glibc" 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 ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en fr it sv" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-3 php5-4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON


Will now proceed to provide relevant logfiles...
Comment 1 Gustav Schaffter 2013-07-07 15:35:21 UTC
Created attachment 352790 [details]
Build log from failed build
Comment 2 Gustav Schaffter 2013-07-07 15:37:56 UTC
Created attachment 352792 [details]
ebuild environment file
Comment 3 Gustav Schaffter 2013-07-07 15:48:04 UTC
Created attachment 352796 [details]
The libtoolize out file

# cd /usr/share/libtool/config/
# pwd
/usr/share/libtool/config


# ls -la
total 348
drwxr-xr-x 2 root root   4096 Jul  7 17:03 .
drwxr-xr-x 4 root root   4096 Oct  7  2010 ..
-rwxr-xr-x 1 root root   6871 Jul  7 17:03 compile
lrwxrwxrwx 1 root root     33 Jul  7 17:03 config.guess -> /usr/share/gnuconfig/config.guess
lrwxrwxrwx 1 root root     31 Jul  7 17:03 config.sub -> /usr/share/gnuconfig/config.sub
-rwxr-xr-x 1 root root  18615 Jul  7 17:03 depcomp
-rwxr-xr-x 1 root root  13781 Jul  7 17:03 install-sh
-rwxr-xr-x 1 root root 282745 Jul  7 17:03 ltmain.sh
-rwxr-xr-x 1 root root  11419 Jul  7 17:03 missing


# ls -l /usr/share/gnuconfig/config.guess
-rwxr-xr-x 1 root root 45170 May 21 10:29 /usr/share/gnuconfig/config.guess


# cd /var/tmp/portage/net-misc/curl-7.30.0/work/curl-7.30.0/
# pwd
/var/tmp/portage/net-misc/curl-7.30.0/work/curl-7.30.0


# ls -la
total 2160
drwxr-xr-x 13 root    root       4096 Jul  7 17:27 .
drwx------  3 portage portage    4096 Jul  7 17:27 ..
-rw-r--r--  1 root    root        227 Jul  7 17:27 .__autoconf_trace_data
-rw-r--r--  1 root    root     200652 Apr 12 09:13 CHANGES
drwxr-xr-x  3 root    root       4096 Apr 12 09:13 CMake
-rw-r--r--  1 root    root      33879 Feb  6 10:47 CMakeLists.txt
-rw-r--r--  1 root    root       1044 Feb  6 10:47 COPYING
-rwxr-xr-x  1 root    root       5682 Feb 17 23:19 MacOSX-Framework
-rw-r--r--  1 root    root       8121 Apr 12 09:13 Makefile
-rw-r--r--  1 root    root       8989 Feb 13 19:45 Makefile.am
-rw-r--r--  1 root    root      42881 Apr 12 09:12 Makefile.in
-rw-r--r--  1 root    root       1607 Dec 11  2012 README
-rw-r--r--  1 root    root       6505 Apr 11 23:58 RELEASE-NOTES
-rw-r--r--  1 root    root      83847 Apr 11 20:46 acinclude.m4
-rw-r--r--  1 root    root      38547 Apr 11 20:47 aclocal.m4
drwxr-xr-x  2 root    root       4096 Jul  7 17:27 autom4te.cache
-rwxr-xr-x  1 root    root      14743 Jan  6 23:33 buildconf
-rwxr-xr-x  1 root    root       7274 Apr 11 16:19 compile
-rwx------  1 root    root      40448 Jul  7 17:27 config.guess
-rwx------  1 root    root      30208 Jul  7 17:27 config.sub
-rwxr-xr-x  1 root    root    1110077 Apr 11 20:47 configure
-rw-r--r--  1 root    root     103264 Jul  7 17:27 configure.ac
-rw-r--r--  1 root    root       4650 Jul  7 17:27 curl-config.in
-rwxr-xr-x  1 root    root      20899 Apr 11 16:19 depcomp
drwxr-xr-x  4 root    root       4096 Apr 12 09:13 docs
drwxr-xr-x  3 root    root       4096 Apr 12 09:13 include
-rwx------  1 root    root       9728 Jul  7 17:27 install-sh
drwxr-xr-x  2 root    root      12288 Apr 12 09:13 lib
-rw-r--r--  1 root    root       1501 Dec 11  2012 libcurl.pc.in
-rwx------  1 root    root     275968 Jul  7 17:27 ltmain.sh
drwxr-xr-x  2 root    root       4096 Jul  7 17:27 m4
-rwxr-xr-x  1 root    root       5342 Dec 11  2012 maketgz
-rwxr-xr-x  1 root    root       8867 Dec 11  2012 missing
-rwxr-xr-x  1 root    root       3538 Feb 13 15:47 mkinstalldirs
drwxr-xr-x 14 root    root       4096 Apr 12 09:13 packages
drwxr-xr-x  3 root    root       4096 Apr 12 09:13 src
drwxr-xr-x  7 root    root       4096 Apr 12 09:13 tests
drwxr-xr-x  5 root    root       4096 Apr 12 09:13 vs
drwxr-xr-x  2 root    root       4096 Apr 12 09:13 winbuild
Comment 4 Gustav Schaffter 2013-07-07 15:50:08 UTC
# libtoolize --version
libtoolize (GNU libtool) 2.4
Written by Gary V. Vaughan <gary@gnu.org>, 2003

Copyright (C) 2010 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.



# eix -Iv sys-devel/libtool
* sys-devel/libtool
     Available versions:  
        (1.3)   1.3.5
        (1.5)   **1.5.26 ~1.5.26-r1
        (2)     2.2.10 2.4-r1 ~2.4-r4 ~2.4.2 **9999
     IUSE (all versions): static-libs test vanilla
     Installed versions:  Version:   2.4-r1(2)
                          Date:      05:03:15 PM 07/07/2013
                          USE:       -test -vanilla
     Best versions/slot:  1.3.5(1.3) 2.4-r1(2)
     Homepage:            http://www.gnu.org/software/libtool/
     Find open bugs:      http://bugs.gentoo.org/buglist.cgi?quicksearch=sys-devel%2Flibtool
     Description:         A shared library tool for developers
     License:             GPL-2
Comment 5 Gustav Schaffter 2013-07-07 15:54:00 UTC
I have rebuilt sys-devel/libtool, sys-libs/glibc and sys-devel/gcc without any improvement.

(By chance, none of them depends on using libtoolize. :-)
Comment 6 Gustav Schaffter 2013-07-09 07:30:14 UTC
It seems to have been solved.

I noticed that the rebuild of 'emacs' failed, due to 'tar' failing with 'illegal instruction'.

I rebuilt 'tar', then 'emacs' and everything started to fall back in place. Currently rebuilding packages, one after the other.


Will close this bug report.


Thanks for the time you've spent on it so far.