Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 405655 - sys-fs/e2fsprogs-1.42.1 src_test(): tst_bitmaps.c:510:19: error: 'et_ss_error_table' undeclared (first use in this function)
Summary: sys-fs/e2fsprogs-1.42.1 src_test(): tst_bitmaps.c:510:19: error: 'et_ss_error...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
: 405733 417293 429690 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-02-24 21:39 UTC by Chris Reffett (RETIRED)
Modified: 2016-05-19 18:14 UTC (History)
7 users (show)

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


Attachments
build.log (build.log,43.92 KB, text/plain)
2012-02-24 21:40 UTC, Chris Reffett (RETIRED)
Details
proposed fix (e2fsprogs-1.42.1-use-system-ss.patch,841 bytes, patch)
2012-08-21 19:43 UTC, Göktürk Yüksek
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Reffett (RETIRED) gentoo-dev Security 2012-02-24 21:39:03 UTC
e2fsprogs fails the test phase with the error "tst_bitmaps.c:510:19: error: 'et_ss_error_table' undeclared (first use in this function)" 

Reproducible: Always

Steps to Reproduce:
1. FEATURES="test" emerge -1 =sys-fs/e2fsprogs-1.42.1
Actual Results:  
Emerge fails test phase and exits.

Expected Results:  
Emerge should complete the test phase and finish successfully.

emerge --info:
Portage 2.2.0_alpha89 (default/linux/amd64/10.0, gcc-4.5.3, glibc-2.14.1-r2, 3.2.6-gentoo-zeugma x86_64)
=================================================================
System uname: Linux-3.2.6-gentoo-zeugma-x86_64-Intel-R-_Core-TM-_i5_CPU_M_560_@_2.67GHz-with-gentoo-2.1
Timestamp of tree: Fri, 24 Feb 2012 19:30:01 +0000
app-shells/bash:          4.2_p20
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.2-r3, 3.2.2
dev-util/cmake:           2.8.7-r3
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1
sys-apps/openrc:          0.9.8.4
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.11.2-r1
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.3-r2
sys-devel/gcc-config:     1.5-r2
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.2 (virtual/os-headers)
sys-libs/glibc:           2.14.1-r2
Repositories: gentoo gamerlay-stable kde sunrise zeugma-local
Installed sets: @kde-4.8
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA AdobeFlash-10.1 dlj-1.1 googleearth google-talkplugin Oracle-BCLA-JavaSE RTCW-ETEULA Q3AEULA skype-eula"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=core2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=core2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles news parallel-fetch preserve-libs protect-owned sandbox sfperms strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS=""
GENTOO_MIRRORS="http://mirror.rit.edu/gentoo http://gtlib.gatech.edu/pub/gentoo"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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="/var/lib/layman/gamerlay /var/lib/layman/kde /var/lib/layman/sunrise /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X accessibility acl acpi alsa amd64 bash-completion berkdb bluetooth bzip2 cairo cdda cddb cli consolekit cracklib crypt cups cxx dbus dri dvd encode ffmpeg flac fortran gdbm geoip git gnutls gpm gstreamer iconv icu id3tag ipod ipv6 java jpeg kde lame latex libnotify mad mmx mng modules mp3 mpeg mudflap multilib ncurses networkmanager nls nptl nptlonly nsplugin offensive ogg openal opengl openmp pam pcre png policykit pppd qt3support qt4 readline semantic-desktop session spell sql sse sse2 ssl ssse3 svg sysfs tcpd threads tiff truetype udev unicode usb v4l v4l2 vcd vim-syntax vorbis wifi xcomposite xinerama xorg xscreensaver zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul 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 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 stage tables krita karbon braindump" 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="mouse keyboard evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby19" USERLAND="GNU" VIDEO_CARDS="ati radeon fglrx intel uvesafb 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"
Comment 1 Chris Reffett (RETIRED) gentoo-dev Security 2012-02-24 21:40:12 UTC
Created attachment 303095 [details]
build.log
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2012-02-27 01:12:05 UTC
*** Bug 405733 has been marked as a duplicate of this bug. ***
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2012-05-24 01:40:05 UTC
*** Bug 417293 has been marked as a duplicate of this bug. ***
Comment 4 Göktürk Yüksek archtester gentoo-dev 2012-07-03 21:04:45 UTC
The reason is, in src_prepare():
    sed -i -r \
                -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \
                Makefile.in || die "remove subdirs"

deletes "lib/ss" from $LIB_SUBDIRS in Makefile.in

However the missing variable 'et_ss_error_table' is exported by lib/ss/ss_err.h, which is created from lib/ss/ss_err.et. If you want to run tests you should have "lib/ss" in $LIB_SUBDIRS.
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2012-08-04 00:39:07 UTC
*** Bug 429690 has been marked as a duplicate of this bug. ***
Comment 6 SpanKY gentoo-dev 2012-08-18 05:20:21 UTC
(In reply to comment #4)

no, e2fsprogs should be pulling the ss headers from the system, not locally
Comment 7 Göktürk Yüksek archtester gentoo-dev 2012-08-21 19:37:53 UTC
(In reply to comment #6)
> (In reply to comment #4)
> 
> no, e2fsprogs should be pulling the ss headers from the system, not locally

Unfortunately that's not the case. It passes something like '-I../lib' to gcc and the header files are satisfied from 'lib/ss' instead of '/usr/include/lib/ss'. But since we 'touch lib/ss/ss_err.h' the file is empty.
Comment 8 Göktürk Yüksek archtester gentoo-dev 2012-08-21 19:43:32 UTC
Created attachment 321888 [details, diff]
proposed fix

It's a little bit hacky but the idea is to have a special build rule for 'tst_bitmaps.o' in Makefile.in. The problem is that 'tst_bitmaps.c' requires header files 'config.h' and 'dirpaths.h' which reside under 'lib/'. But we don't want to pass '-I../lib' to gcc because of the 'lib/ss' - '/usr/include/ss' collision. Simply copying these files into $(srcdir) solves the problem. Since these files are read-only, it shouldn't have any side effects.

Also since we avoid rebuilding, we have to use the system's "mk_cmds".
Comment 9 SpanKY gentoo-dev 2016-05-19 18:14:44 UTC
should be fixed in 1.43.  let us know if it's still failing there & re-open.