Subject: pkg/25891: statfs vs. statvfs again: e2fsprogs
To: None <gnats-bugs@gnats.NetBSD.org>
From: Andreas Wiese <awiese@despammed.com>
List: pkgsrc-bugs
Date: 06/10/2004 16:17:10
>Number:         25891
>Category:       pkg
>Synopsis:       e2fsprogs don't build on NetBSD-current
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jun 10 14:21:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator:     Andreas Wiese
>Release:        NetBSD 2.0F
>Organization:
Linux User Group Halberstadt
>Environment:
	
	
System: NetBSD schroeder.singeklub.invalid 2.0F NetBSD 2.0F (SCHROEDER) #5: Mon Jun 7 21:29:04 CEST 2004 root@schroeder.singeklub.invalid:/sys/arch/i386/compile/SCHROEDER i386
Architecture: i386
Machine: i386
>Description:
The build of pkgsrc/sysutils/e2fsprogs aborts with

#v+
[...]
ismounted.c: In function `check_getmntinfo':
ismounted.c:201: warning: passing arg 1 of `getmntinfo' from incompatible pointe
r type
ismounted.c:212: error: dereferencing pointer to incomplete type
ismounted.c:221: error: increment of pointer to unknown structure
ismounted.c:221: error: arithmetic on pointer to an imcomplete type
ismounted.c:224: error: dereferencing pointer to incomplete type
*** Error code 1

Stop.
make: stopped in /usr/pkgsrc/sysutils/e2fsprogs/work/e2fsprogs-1.32/lib/ext2fs
*** Error code 1
[...]
#v-

That's again caused by the replacing of statfs with statvfs in
NetBSD-current.

>How-To-Repeat:
Compile pkgsrc/sysutils/e2fsprogs on NetBSD-current.
>Fix:
The problem can be solved by replacing all occurences of `statfs' with
`statvfs', e.g. by including

#define statfs  statvfs

at the beginning of ${DISTDIR}/lib/ext2fs/ismounted.c.  For cosmetical
reasons you should probably include <sys/statvfs.h> explicitly there, too.
>Release-Note:
>Audit-Trail:
>Unformatted: