Following are the changes I made to get libnbcompat to compile on A/UX. I
can't say this is ready to commit yet, as I have not completed the entire
bootstrap process to be able to see if this actually _works_. But I wanted
to post it here and solicit feedback, in case I've committed any egregious
pkgsrc sins or something like that. :) I made changes in
bootstrap/bootstrap also but I'll post that separately.
Thanks,
Tim
PS If it's bad form to post patches like this, please let me know.
Index: pkgtools/libnbcompat/files/configure
===================================================================
RCS file: /cvsroot/pkgsrc/pkgtools/libnbcompat/files/configure,v
retrieving revision 1.62
diff -u -p -r1.62 configure
--- pkgtools/libnbcompat/files/configure 19 May 2008 12:52:57 -0000
1.62
+++ pkgtools/libnbcompat/files/configure 30 Jun 2008 19:02:51 -0000
@@ -11797,8 +11797,10 @@ done
-for ac_func in gid_from_group group_from_gid pwcache_groupdb \
- pwcache_userdb uid_from_user user_from_uid \
+
+
+for ac_func in endgrent endpwent gid_from_group group_from_gid \
+ pwcache_groupdb pwcache_userdb uid_from_user user_from_uid \
do
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
@@ -11904,8 +11906,10 @@ done
-for ac_func in gid_from_group group_from_gid pwcache_groupdb \
- pwcache_userdb uid_from_user user_from_uid \
+
+
+for ac_func in endgrent endpwent gid_from_group group_from_gid \
+ pwcache_groupdb pwcache_userdb uid_from_user user_from_uid \
do
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
@@ -13177,6 +13181,114 @@ else
:
fi
+{ $as_echo "$as_me:$LINENO: checking for struct statfs.f_flags" >&5
+$as_echo_n "checking for struct statfs.f_flags... " >&6; }
+if test "${ac_cv_member_struct_statfs_f_flags+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+ #include <sys/statfs.h>
+
+int
+main ()
+{
+static struct statfs ac_aggr;
+if (ac_aggr.f_flags)
+return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_member_struct_statfs_f_flags=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+ #include <sys/statfs.h>
+
+int
+main ()
+{
+static struct statfs ac_aggr;
+if (sizeof ac_aggr.f_flags)
+return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_member_struct_statfs_f_flags=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_member_struct_statfs_f_flags=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_statfs_f_flags"
>&5
+$as_echo "$ac_cv_member_struct_statfs_f_flags" >&6; }
+if test $ac_cv_member_struct_statfs_f_flags = yes; then
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_STATFS_F_FLAGS 1
+_ACEOF
+
+:
+else
+ :
+fi
+
{ $as_echo "$as_me:$LINENO: checking for struct dirent.d_namlen" >&5
$as_echo_n "checking for struct dirent.d_namlen... " >&6; }
if test "${ac_cv_member_struct_dirent_d_namlen+set}" = set; then
Index: pkgtools/libnbcompat/files/configure.ac
===================================================================
RCS file: /cvsroot/pkgsrc/pkgtools/libnbcompat/files/configure.ac,v
retrieving revision 1.63
diff -u -p -r1.63 configure.ac
--- pkgtools/libnbcompat/files/configure.ac 19 May 2008 12:52:57 -0000
1.63
+++ pkgtools/libnbcompat/files/configure.ac 30 Jun 2008 19:02:51 -0000
@@ -260,11 +260,11 @@ AC_CHECK_FUNCS([getmode setmode], [:], [
break
])
-AC_CHECK_FUNCS([gid_from_group group_from_gid pwcache_groupdb \
- pwcache_userdb uid_from_user user_from_uid \
+AC_CHECK_FUNCS([endgrent endpwent gid_from_group group_from_gid \
+ pwcache_groupdb pwcache_userdb uid_from_user user_from_uid \
])
-AC_CHECK_FUNCS([gid_from_group group_from_gid pwcache_groupdb \
- pwcache_userdb uid_from_user user_from_uid \
+AC_CHECK_FUNCS([endgrent endpwent gid_from_group group_from_gid \
+ pwcache_groupdb pwcache_userdb uid_from_user user_from_uid \
], [:], [
AC_LIBOBJ(pwcache)
break
@@ -330,6 +330,8 @@ AC_CHECK_MEMBERS([struct statfs.f_fsize]
[ #include <sys/statfs.h> ])
AC_CHECK_MEMBERS([struct statfs.f_iosize], [:], [:],
[ #include <sys/statfs.h> ])
+AC_CHECK_MEMBERS([struct statfs.f_flags], [:], [:],
+ [ #include <sys/statfs.h> ])
AC_CHECK_MEMBERS([struct dirent.d_namlen, DIR.dd_fd], [:], [:],
[ #include <sys/types.h>
#if HAVE_DIRENT_H
Index: pkgtools/libnbcompat/files/statvfs.c
===================================================================
RCS file: /cvsroot/pkgsrc/pkgtools/libnbcompat/files/statvfs.c,v
retrieving revision 1.4
diff -u -p -r1.4 statvfs.c
--- pkgtools/libnbcompat/files/statvfs.c 29 Apr 2008 05:46:08 -0000
1.4
+++ pkgtools/libnbcompat/files/statvfs.c 30 Jun 2008 19:02:51 -0000
@@ -39,10 +39,12 @@ static void
fs2vfs(struct statvfs *vfs, const struct statfs *sfs)
{
vfs->f_flag = 0;
+#if HAVE_STRUCT_STATFS_F_FLAGS
if (sfs->f_flags & MNT_RDONLY)
vfs->f_flag |= ST_RDONLY;
if (sfs->f_flags & MNT_NOSUID)
vfs->f_flag |= ST_NOSUID;
+#endif
#if HAVE_STRUCT_STATFS_F_FSIZE
vfs->f_bsize = sfs->f_fsize
Index: pkgtools/libnbcompat/files/nbcompat/grp.h
===================================================================
RCS file: /cvsroot/pkgsrc/pkgtools/libnbcompat/files/nbcompat/grp.h,v
retrieving revision 1.2
diff -u -p -r1.2 grp.h
--- pkgtools/libnbcompat/files/nbcompat/grp.h 29 Apr 2008 05:46:08 -0000
1.2
+++ pkgtools/libnbcompat/files/nbcompat/grp.h 30 Jun 2008 19:02:51 -0000
@@ -52,4 +52,8 @@ const char *group_from_gid(gid_t, int);
int gid_from_group(const char *, gid_t *);
#endif
+#if !HAVE_ENDGRENT
+void endgrent(void);
+#endif
+
#endif /* !_NBCOMPAT_GRP_H_ */
Index: pkgtools/libnbcompat/files/nbcompat/pwd.h
===================================================================
RCS file: /cvsroot/pkgsrc/pkgtools/libnbcompat/files/nbcompat/pwd.h,v
retrieving revision 1.2
diff -u -p -r1.2 pwd.h
--- pkgtools/libnbcompat/files/nbcompat/pwd.h 29 Apr 2008 05:46:08 -0000
1.2
+++ pkgtools/libnbcompat/files/nbcompat/pwd.h 30 Jun 2008 19:02:51 -0000
@@ -52,4 +52,8 @@ const char *user_from_uid(uid_t, int);
int uid_from_user(const char *, uid_t *);
#endif
+#if !HAVE_ENDPWENT
+void endpwent(void);
+#endif
+
#endif /* !_NBCOMPAT_PWD_H_ */
--
Tim Larson AMT2 Unix Systems Administrator
InterCall, a division of West Corporation
Eschew obfuscation!
Attachment:
smime.p7s
Description: S/MIME cryptographic signature