aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1999-05-27 22:48:53 +0000
committerIan Lance Taylor <ian@airs.com>1999-05-27 22:48:53 +0000
commit633fd09f3cfd79906b88fc1adcd2c16f39e9848e (patch)
tree222169633012952f6d750a27b4bad5fc6f777922
parent6da466c730cb814a5903049a922e2169e60a311c (diff)
downloadfsf-binutils-gdb-633fd09f3cfd79906b88fc1adcd2c16f39e9848e.zip
fsf-binutils-gdb-633fd09f3cfd79906b88fc1adcd2c16f39e9848e.tar.gz
fsf-binutils-gdb-633fd09f3cfd79906b88fc1adcd2c16f39e9848e.tar.bz2
* 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.
-rw-r--r--bfd/ChangeLog10
-rw-r--r--bfd/archive.c15
-rw-r--r--bfd/config.in6
-rwxr-xr-xbfd/configure2
-rw-r--r--bfd/configure.host2
-rw-r--r--bfd/configure.in2
6 files changed, 29 insertions, 8 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index facda27..09dac05 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,13 @@
+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.
diff --git a/bfd/archive.c b/bfd/archive.c
index 8ac5aa4..ac5aeaf 100644
--- a/bfd/archive.c
+++ b/bfd/archive.c
@@ -1,5 +1,5 @@
/* 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++)
diff --git a/bfd/config.in b/bfd/config.in
index 51fa45b..abb2c78 100644
--- a/bfd/config.in
+++ b/bfd/config.in
@@ -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
diff --git a/bfd/configure b/bfd/configure
index 783a393..83e93e6 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -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
diff --git a/bfd/configure.host b/bfd/configure.host
index ef7048b..e24cd60 100644
--- a/bfd/configure.host
+++ b/bfd/configure.host
@@ -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
diff --git a/bfd/configure.in b/bfd/configure.in
index d5aa882..94f3ef6 100644
--- a/bfd/configure.in
+++ b/bfd/configure.in
@@ -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