Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 256784 - sys-apps/shadow-4.1.2.2 - fails on uClibc due to nanosecond timestruct usage
Summary: sys-apps/shadow-4.1.2.2 - fails on uClibc due to nanosecond timestruct usage
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-29 13:26 UTC by Anthony Giorgio
Modified: 2009-02-11 03:39 UTC (History)
4 users (show)

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


Attachments
Build log (build.log,20.26 KB, text/plain)
2009-01-29 13:26 UTC, Anthony Giorgio
Details
buildlog for failure with patch suggested in comment #4 (build.log,20.81 KB, text/plain)
2009-02-08 14:10 UTC, Tom Lloyd
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anthony Giorgio 2009-01-29 13:26:27 UTC
When emerging the newly stable sys-apps/shadow-4.1.2.2, I see the following compiler error message:

armeb-softfloat-linux-uclibc-gcc -DHAVE_CONFIG_H -I. -I.. -I../lib    -march=armv5t -mtune=xscale -Os -MT copydir.o -MD -MP -MF .deps/copydir.Tpo -c -o copydir.o copydir.c
copydir.c: In function `copy_entry':
copydir.c:289: error: structure has no member named `st_atim'
copydir.c:290: error: structure has no member named `st_atim'
copydir.c:291: error: structure has no member named `st_mtim'
copydir.c:292: error: structure has no member named `st_mtim'
make[2]: *** [copydir.o] Error 1
make[2]: Leaving directory `/var/tmp/portage/sys-apps/shadow-4.1.2.2/work/shadow-4.1.2.2/libmisc'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/sys-apps/shadow-4.1.2.2/work/shadow-4.1.2.2'
make: *** [all] Error 2


Reproducible: Always




SlugMoo angio # Portage 2.1.6.4 (uclibc/arm, gcc-3.4.6, uclibc-0.9.30-r0, 2.6.21.7 armv5teb)
=================================================================
System uname: Linux-2.6.21.7-armv5teb-XScale-IXP42x_Family_rev_1_-v5b-with-libc0
Timestamp of tree: Thu, 29 Jan 2009 08:05:02 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p33
dev-lang/python:     2.5.2-r7
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.63
sys-devel/automake:  1.9.5, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="arm"
CBUILD="armeb-softfloat-linux-uclibc"
CFLAGS="-march=armv5t -mtune=xscale -Os"
CHOST="armeb-softfloat-linux-uclibc"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=armv5t -mtune=xscale -Os"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg ccache distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://mirror.datapipe.net/gentoo http://gentoo.mirrors.pair.com/ http://gentoo.netnitco.net"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="arm cli cracklib crypt cups dri midi mudflap ncurses openmp pcre perl python readline reflection session spl ssl tcpd uclibc uclibc-compat xorg zlib" 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 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="uclibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="dummy fbdev v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Anthony Giorgio 2009-01-29 13:26:45 UTC
Created attachment 180096 [details]
Build log
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2009-01-30 02:01:30 UTC
Probably a uclibc problem.
Comment 3 Nomadster 2009-02-01 09:51:16 UTC
It also fails for me:

i386-gentoo-linux-uclibc-gcc -DHAVE_CONFIG_H -I. -I.. -I../lib    -Os -mtune=i386 -pipe -MT copydir.o -MD -MP -MF .deps/copydir.Tpo -c -o copydir.o copydir.c
copydir.c: In function 'copy_entry':
copydir.c:289: error: 'struct stat' has no member named 'st_atim'
copydir.c:290: error: 'struct stat' has no member named 'st_atim'
copydir.c:291: error: 'struct stat' has no member named 'st_mtim'
copydir.c:292: error: 'struct stat' has no member named 'st_mtim'
make[2]: *** [copydir.o] Error 1
make[2]: Leaving directory `/var/tmp/portage/sys-apps/shadow-4.1.2.2/work/shadow-4.1.2.2/libmisc'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/sys-apps/shadow-4.1.2.2/work/shadow-4.1.2.2'


Portage 2.1.6.4 (uclibc/x86, gcc-4.1.2, uclibc-0.9.28.3-r2, 2.6.24-tuxonice-r9 i686)
=================================================================
System uname: Linux-2.6.24-tuxonice-r9-i686-Intel-R-_Core-TM-2_Duo_CPU_T8300_@_2.40GHz-with-libc0
Timestamp of tree: Sun, 01 Feb 2009 03:00:01 +0000
app-shells/bash:     3.2_p39
dev-lang/python:     2.4.4-r6, 2.5.2-r7
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.63
sys-devel/automake:  1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="x86"
CBUILD="i386-gentoo-linux-uclibc"
CFLAGS="-Os -mtune=i386 -pipe"
CHOST="i386-gentoo-linux-uclibc"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-Os -mtune=i386 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks fixpackages nodoc noinfo noman parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LDFLAGS="-Wl,-O1"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="cli cracklib crypt dri midi mudflap ncurses openmp pcre perl python readline reflection session spl ssl tcpd uclibc x86 xorg zlib" 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 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="uclibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="dummy fbdev v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY


Comment 4 Nomadster 2009-02-01 09:56:50 UTC
Found over internet. Could someone try it?

Adding the following declarations to copydir.c (line 285) gets rid of the 
above error ;
#ifndef (__UCLIBC__)
.
.
.
#endif
Comment 5 Anthony Giorgio 2009-02-02 02:08:51 UTC
This is no longer exclusive to ARM.
Comment 6 Nomadster 2009-02-02 22:14:34 UTC
This also appen with uclibc-0.9.30-r0 (the rest of emerge --info is the same above)
Comment 7 solar (RETIRED) gentoo-dev 2009-02-02 22:21:28 UTC
=sys-apps/shadow-4.0.18.2 (works for those needing a quick fix)
Comment 8 swarm32 2009-02-06 07:51:26 UTC
Also occurs on i386 with uclibc. http://dpaste.com/117328/
Found what might be a patch at: http://lists.alioth.debian.org/pipermail/pkg-shadow-devel/2008-August/006776.html

Portage 2.1.6.4 (uclibc/x86, gcc-4.1.2, uclibc-0.9.30-r0, 2.6.27-gentoo-r8 i686)
=================================================================
System uname: Linux-2.6.27-gentoo-r8-i686-Intel-R-_Xeon-TM-_CPU_3.06GHz-with-libc0
Timestamp of tree: Thu, 05 Feb 2009 13:45:01 +0000
ccache version 2.4 [disabled]
app-shells/bash:     3.2_p39
dev-lang/python:     2.4.4-r6, 2.5.2-r7
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.63
sys-devel/automake:  1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="x86"
CBUILD="i386-gentoo-linux-uclibc"
CFLAGS="-Os -mtune=pentium-m -pipe"
CHOST="i386-gentoo-linux-uclibc"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS=""
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks fixpackages nodoc noinfo noman parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LDFLAGS="-Wl,-O1"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="cli cracklib crypt dri ftp midi minimal mudflap ncurses openmp pcre perl python readline reflection samba session spl ssl tcpd uclibc x86 xorg zlib" 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 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="uclibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="dummy fbdev v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 9 Tom Lloyd 2009-02-08 14:08:50 UTC
(In reply to comment #4)
> Found over internet. Could someone try it?
> 
> Adding the following declarations to copydir.c (line 285) gets rid of the 
> above error ;
> #ifndef (__UCLIBC__)
> .
> .
> .
> #endif
> 

I'm no C coder, but I wrapped that around the "if" statement in question, (and its accompanying code blocks), so that on a uclibc system the compiler should see this:

static int copy_entry (const char *src, const char *dst,
                       long int uid, long int gid)
{
        int err = 0;
        struct stat sb;
        struct link_name *lp;
        struct timeval mt[2];

        return err;
}


The build still failed, but in a different way.  I'm attaching the buildlog.  I'll provide my full emerge --info on request, but to prevent clutter I'll just post the first line for now:

Portage 2.1.6.4 (uclibc/ppc/hardened, gcc-3.4.6, uclibc-0.9.30-r0, 2.6.26-hardened-r7-muttley-1-misc ppc)
Comment 10 Tom Lloyd 2009-02-08 14:10:18 UTC
Created attachment 181313 [details]
buildlog for failure with patch suggested in comment #4