Commit 633fd09f authored by Ian Lance Taylor's avatar Ian Lance Taylor
Browse files

* configure.in: Check whether getuid and getgid exist.

	* archive.c: Define getuid and getgid as macros if HAVE_GETUID or
	HAVE_GETGID are not defined, respectively.
	(bfd_write_armap): Don't special case on _WIN32 for getuid and
	getgid.
	* configure.host: Set ac_cv_func_get{ug}id for *-*-windows*.
	* configure, config.in: Rebuild.
parent 6da466c7
1999-05-28 Ian Lance Taylor <ian@zembu.com>
* configure.in: Check whether getuid and getgid exist.
* archive.c: Define getuid and getgid as macros if HAVE_GETUID or
HAVE_GETGID are not defined, respectively.
(bfd_write_armap): Don't special case on _WIN32 for getuid and
getgid.
* configure.host: Set ac_cv_func_get{ug}id for *-*-windows*.
* configure, config.in: Rebuild.
1999-05-28 Martin Dorey <mdorey@madge.com>
* elf32-i960.c: New file.
......
/* BFD back-end for archive files (libraries).
Copyright 1990, 91, 92, 93, 94, 95, 96, 97, 1998
Copyright 1990, 91, 92, 93, 94, 95, 96, 97, 98, 1999
Free Software Foundation, Inc.
Written by Cygnus Support. Mostly Gumby Henkel-Wallace's fault.
......@@ -1340,6 +1340,14 @@ _bfd_construct_extended_name_table (abfd, trailing_slash, tabloc, tablen)
/** A couple of functions for creating ar_hdrs */
#ifndef HAVE_GETUID
#define getuid() 0
#endif
#ifndef HAVE_GETGID
#define getgid() 0
#endif
/* Takes a filename, returns an arelt_data for it, or NULL if it can't
make one. The filename must refer to a filename in the filesystem.
The filename field of the ar_hdr will NOT be initialized. If member
......@@ -1901,13 +1909,8 @@ bsd_write_armap (arch, elength, map, orl_count, stridx)
bfd_ardata (arch)->armap_datepos = (SARMAG
+ offsetof (struct ar_hdr, ar_date[0]));
sprintf (hdr.ar_date, "%ld", bfd_ardata (arch)->armap_timestamp);
#ifndef _WIN32
sprintf (hdr.ar_uid, "%ld", (long) getuid ());
sprintf (hdr.ar_gid, "%ld", (long) getgid ());
#else
sprintf (hdr.ar_uid, "%ld", (long) 666);
sprintf (hdr.ar_gid, "%ld", (long) 42);
#endif
sprintf (hdr.ar_size, "%-10d", (int) mapsize);
strncpy (hdr.ar_fmag, ARFMAG, 2);
for (i = 0; i < sizeof (struct ar_hdr); i++)
......
......@@ -67,9 +67,15 @@
/* Define if you have the getcwd function. */
#undef HAVE_GETCWD
/* Define if you have the getgid function. */
#undef HAVE_GETGID
/* Define if you have the getpagesize function. */
#undef HAVE_GETPAGESIZE
/* Define if you have the getuid function. */
#undef HAVE_GETUID
/* Define if you have the madvise function. */
#undef HAVE_MADVISE
......
......@@ -4460,7 +4460,7 @@ fi
fi
for ac_func in fcntl getpagesize setitimer sysconf fdopen
for ac_func in fcntl getpagesize setitimer sysconf fdopen getuid getgid
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
echo "configure:4467: checking for $ac_func" >&5
......
......@@ -63,6 +63,8 @@ m68*-hp-hpux*) HDEFINES=-DHOST_HP300HPUX ;;
ac_cv_func_getpagesize=no
ac_cv_func_madvise=no
ac_cv_func_mprotect=no
ac_cv_func_getuid=no
ac_cv_func_getgid=no
ac_cv_header_sys_file_h=no
ac_cv_header_sys_time_h=no
ac_cv_header_unistd_h=no
......
......@@ -98,7 +98,7 @@ AC_CHECK_HEADERS(stddef.h string.h strings.h stdlib.h time.h unistd.h)
AC_CHECK_HEADERS(fcntl.h sys/file.h sys/time.h)
AC_HEADER_TIME
AC_HEADER_DIRENT
AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen)
AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid)
BFD_BINARY_FOPEN
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment