Makefile.in (TARGET_GETGROUPS_T): New configuration variable.

* Makefile.in (TARGET_GETGROUPS_T): New configuration variable.
	* configure.in (TARGET_GETGROUPS_T): Evaluate.
	* sys-protos.h (getgroups): Use TARGET_GETGROUPS_T for array type
	of second argument of getgroups.
	* configure, config.in: Rebuilt.

From-SVN: r35086
This commit is contained in:
J. David Anglin 2000-07-17 09:23:16 +00:00 committed by Jeff Law
parent 69ff85f30c
commit e256b8b6ec
6 changed files with 302 additions and 134 deletions

View file

@ -1,3 +1,11 @@
2000-07-17 J. David Anglin <dave@hiauly1.hia.nrc.ca>
* Makefile.in (TARGET_GETGROUPS_T): New configuration variable.
* configure.in (TARGET_GETGROUPS_T): Evaluate.
* sys-protos.h (getgroups): Use TARGET_GETGROUPS_T for array type
of second argument of getgroups.
* configure, config.in: Rebuilt.
2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
* simplify-rtx.c (simplify_relational_operation): Two signed

View file

@ -130,6 +130,9 @@ RANLIB_TEST = \
[ -f $(RANLIB) ] \
|| [ -f /usr/bin/ranlib -o -f /bin/ranlib ]
# Substitution type for target's getgroups 2nd arg.
TARGET_GETGROUPS_T = @TARGET_GETGROUPS_T@
# Compiler to use for compiling libgcc1.a.
# OLDCC should not be the GNU C compiler,
# since that would compile typical libgcc1.a functions such as mulsi3
@ -1857,7 +1860,8 @@ unprotoize.o: unprotoize.c protoize.c $(srcdir)/../include/getopt.h \
SYSCALLS.c.X: $(srcdir)/sys-types.h $(srcdir)/sys-protos.h $(GCC_PASSES) \
stmp-int-hdrs
-rm -f SYSCALLS.c tmp-SYSCALLS.s
cat $(srcdir)/sys-types.h $(srcdir)/sys-protos.h > SYSCALLS.c
sed -e s/TARGET_GETGROUPS_T/$(TARGET_GETGROUPS_T)/ \
$(srcdir)/sys-types.h $(srcdir)/sys-protos.h > SYSCALLS.c
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
-aux-info $@ -S -o tmp-SYSCALLS.s SYSCALLS.c
-rm -f SYSCALLS.c tmp-SYSCALLS.s
@ -2014,7 +2018,8 @@ scan.o: scan.c scan.h $(build_xm_file) system.h
$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/scan.c
xsys-protos.h: $(GCC_PASSES) $(srcdir)/sys-protos.h deduced.h gen-protos Makefile
cat deduced.h $(srcdir)/sys-protos.h > tmp-fixtmp.c
sed -e s/TARGET_GETGROUPS_T/$(TARGET_GETGROUPS_T)/ \
deduced.h $(srcdir)/sys-protos.h > tmp-fixtmp.c
mv tmp-fixtmp.c fixtmp.c
$(GCC_FOR_TARGET) fixtmp.c -w -U__SIZE_TYPE__ -U__PTRDIFF_TYPE__ -U__WCHAR_TYPE__ -E \
| sed -e 's/ / /g' -e 's/ *(/ (/g' -e 's/ [ ]*/ /g' -e 's/( )/()/' \

View file

@ -10,6 +10,13 @@
This function is required for alloca.c support on those systems. */
#undef CRAY_STACKSEG_END
/* Define to the type of elements in the array set by `getgroups'.
Usually this is either `int' or `gid_t'. */
#undef GETGROUPS_T
/* Define to `int' if <sys/types.h> doesn't define. */
#undef gid_t
/* Define if you have alloca, as a function or macro. */
#undef HAVE_ALLOCA
@ -64,6 +71,9 @@
/* Define if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Define to `int' if <sys/types.h> doesn't define. */
#undef uid_t
/* Define vfork as fork if vfork does not work. */
#undef vfork

387
gcc/configure vendored

File diff suppressed because it is too large Load diff

View file

@ -480,6 +480,26 @@ AC_CHECK_FUNCS(strtoul bsearch putenv popen bcopy bzero bcmp \
AC_CHECK_TYPE(ssize_t, int)
# Try to determine the array type of the second argument of getgroups
# for the target system (int or gid_t).
AC_TYPE_GETGROUPS
if test "${target}" = "${build}"; then
TARGET_GETGROUPS_T=$ac_cv_type_getgroups
else
case "${target}" in
# This condition may need some tweaking. It should include all
# targets where the array type of the second argument of getgroups
# is int and the type of gid_t is not equivalent to int.
*-*-sunos* | *-*-ultrix*)
TARGET_GETGROUPS_T=int
;;
*)
TARGET_GETGROUPS_T=gid_t
;;
esac
fi
AC_SUBST(TARGET_GETGROUPS_T)
gcc_AC_FUNC_VFPRINTF_DOPRNT
gcc_AC_FUNC_PRINTF_PTR

View file

@ -445,7 +445,7 @@ extern gid_t getgid(void);
extern struct group * getgrent(void);
extern struct group * getgrgid(gid_t);
extern struct group * getgrnam(const char *);
extern int getgroups(int, gid_t *);
extern int getgroups(int, TARGET_GETGROUPS_T []);
extern struct hostent * gethostbyaddr(/* ??? */);
extern struct hostent * gethostbyname(/* ??? */);
extern struct hostent * gethostent(/* ??? */);