svn commit: r251227 - head/contrib/binutils/bfd
Pedro F. Giffuni
pfg at FreeBSD.org
Sat Jun 1 18:03:04 UTC 2013
Author: pfg
Date: Sat Jun 1 18:03:01 2013
New Revision: 251227
URL: http://svnweb.freebsd.org/changeset/base/251227
Log:
Revert: Use time_t instead of long for archive timestamps.
Back out for now: this breaks the i386 build and requires some revision.
Modified:
head/contrib/binutils/bfd/archive.c
head/contrib/binutils/bfd/bfd-in2.h
head/contrib/binutils/bfd/bfdio.c
head/contrib/binutils/bfd/coff-rs6000.c
head/contrib/binutils/bfd/ecoff.c
head/contrib/binutils/bfd/libbfd-in.h
head/contrib/binutils/bfd/libbfd.h
Modified: head/contrib/binutils/bfd/archive.c
==============================================================================
--- head/contrib/binutils/bfd/archive.c Sat Jun 1 15:02:15 2013 (r251226)
+++ head/contrib/binutils/bfd/archive.c Sat Jun 1 18:03:01 2013 (r251227)
@@ -1390,8 +1390,8 @@ bfd_ar_hdr_from_filesystem (bfd *abfd, c
/* ar headers are space padded, not null padded! */
memset (hdr, ' ', sizeof (struct ar_hdr));
- _bfd_ar_spacepad (hdr->ar_date, sizeof (hdr->ar_date), "%-12lld",
- (long long)status.st_mtime);
+ _bfd_ar_spacepad (hdr->ar_date, sizeof (hdr->ar_date), "%-12ld",
+ status.st_mtime);
#ifdef HPUX_LARGE_AR_IDS
/* HP has a very "special" way to handle UID/GID's with numeric values
> 99999. */
@@ -1458,11 +1458,6 @@ bfd_generic_stat_arch_elt (bfd *abfd, st
if (aloser == hdr->arelt) \
return -1;
-#define fooll(arelt, stelt, size) \
- buf->stelt = strtoll (hdr->arelt, &aloser, size); \
- if (aloser == hdr->arelt) \
- return -1;
-
/* Some platforms support special notations for large IDs. */
#ifdef HPUX_LARGE_AR_IDS
# define foo2(arelt, stelt, size) \
@@ -1489,7 +1484,7 @@ bfd_generic_stat_arch_elt (bfd *abfd, st
# define foo2(arelt, stelt, size) foo (arelt, stelt, size)
#endif
- fooll (ar_date, st_mtime, 10);
+ foo (ar_date, st_mtime, 10);
foo2 (ar_uid, st_uid, 10);
foo2 (ar_gid, st_gid, 10);
foo (ar_mode, st_mode, 8);
Modified: head/contrib/binutils/bfd/bfd-in2.h
==============================================================================
--- head/contrib/binutils/bfd/bfd-in2.h Sat Jun 1 15:02:15 2013 (r251226)
+++ head/contrib/binutils/bfd/bfd-in2.h Sat Jun 1 18:03:01 2013 (r251227)
@@ -38,7 +38,6 @@ extern "C" {
#include "ansidecl.h"
#include "symcat.h"
-#include <time.h> /* time_t */
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
#ifndef SABER
/* This hack is to avoid a problem with some strict ANSI C preprocessors.
@@ -1142,7 +1141,7 @@ bfd_boolean bfd_fill_in_gnu_debuglink_se
/* Extracted from bfdio.c. */
-time_t bfd_get_mtime (bfd *abfd);
+long bfd_get_mtime (bfd *abfd);
file_ptr bfd_get_size (bfd *abfd);
Modified: head/contrib/binutils/bfd/bfdio.c
==============================================================================
--- head/contrib/binutils/bfd/bfdio.c Sat Jun 1 15:02:15 2013 (r251226)
+++ head/contrib/binutils/bfd/bfdio.c Sat Jun 1 18:03:01 2013 (r251227)
@@ -377,7 +377,7 @@ FUNCTION
bfd_get_mtime
SYNOPSIS
- time_t bfd_get_mtime (bfd *abfd);
+ long bfd_get_mtime (bfd *abfd);
DESCRIPTION
Return the file modification time (as read from the file system, or
@@ -385,7 +385,7 @@ DESCRIPTION
*/
-time_t
+long
bfd_get_mtime (bfd *abfd)
{
struct stat buf;
Modified: head/contrib/binutils/bfd/coff-rs6000.c
==============================================================================
--- head/contrib/binutils/bfd/coff-rs6000.c Sat Jun 1 15:02:15 2013 (r251226)
+++ head/contrib/binutils/bfd/coff-rs6000.c Sat Jun 1 18:03:01 2013 (r251227)
@@ -1548,7 +1548,7 @@ _bfd_xcoff_stat_arch_elt (abfd, s)
{
struct xcoff_ar_hdr *hdrp = arch_xhdr (abfd);
- s->st_mtime = strtoll (hdrp->date, (char **) NULL, 10);
+ s->st_mtime = strtol (hdrp->date, (char **) NULL, 10);
s->st_uid = strtol (hdrp->uid, (char **) NULL, 10);
s->st_gid = strtol (hdrp->gid, (char **) NULL, 10);
s->st_mode = strtol (hdrp->mode, (char **) NULL, 8);
@@ -1558,7 +1558,7 @@ _bfd_xcoff_stat_arch_elt (abfd, s)
{
struct xcoff_ar_hdr_big *hdrp = arch_xhdr_big (abfd);
- s->st_mtime = strtoll (hdrp->date, (char **) NULL, 10);
+ s->st_mtime = strtol (hdrp->date, (char **) NULL, 10);
s->st_uid = strtol (hdrp->uid, (char **) NULL, 10);
s->st_gid = strtol (hdrp->gid, (char **) NULL, 10);
s->st_mode = strtol (hdrp->mode, (char **) NULL, 8);
@@ -1678,7 +1678,6 @@ xcoff_write_armap_old (abfd, elength, ma
static char buff20[XCOFFARMAGBIG_ELEMENT_SIZE + 1];
#define FMT20 "%-20lld"
#define FMT12 "%-12d"
-#define FMT12_LL "%-12lld"
#define FMT12_OCTAL "%-12o"
#define FMT4 "%-4d"
#define PRINT20(d, v) \
@@ -1689,10 +1688,6 @@ static char buff20[XCOFFARMAGBIG_ELEMENT
sprintf (buff20, FMT12, (int)(v)), \
memcpy ((void *) (d), buff20, 12)
-#define PRINT12_LL(d, v) \
- sprintf (buff20, FMT12_LL, (long long)(v)), \
- memcpy ((void *) (d), buff20, 12)
-
#define PRINT12_OCTAL(d, v) \
sprintf (buff20, FMT12_OCTAL, (unsigned int)(v)), \
memcpy ((void *) (d), buff20, 12)
@@ -2157,7 +2152,7 @@ xcoff_write_archive_contents_old (abfd)
}
sprintf (ahdrp->size, "%ld", (long) s.st_size);
- sprintf (ahdrp->date, "%lld", (long long) s.st_mtime);
+ sprintf (ahdrp->date, "%ld", (long) s.st_mtime);
sprintf (ahdrp->uid, "%ld", (long) s.st_uid);
sprintf (ahdrp->gid, "%ld", (long) s.st_gid);
sprintf (ahdrp->mode, "%o", (unsigned int) s.st_mode);
@@ -2393,7 +2388,7 @@ xcoff_write_archive_contents_big (abfd)
}
PRINT20 (ahdrp->size, s.st_size);
- PRINT12_LL (ahdrp->date, s.st_mtime);
+ PRINT12 (ahdrp->date, s.st_mtime);
PRINT12 (ahdrp->uid, s.st_uid);
PRINT12 (ahdrp->gid, s.st_gid);
PRINT12_OCTAL (ahdrp->mode, s.st_mode);
Modified: head/contrib/binutils/bfd/ecoff.c
==============================================================================
--- head/contrib/binutils/bfd/ecoff.c Sat Jun 1 15:02:15 2013 (r251226)
+++ head/contrib/binutils/bfd/ecoff.c Sat Jun 1 18:03:01 2013 (r251227)
@@ -3050,7 +3050,7 @@ _bfd_ecoff_write_armap (bfd *abfd,
linker just checks the archive name; the GNU linker may check the
date. */
stat (abfd->filename, &statbuf);
- sprintf (hdr.ar_date, "%lld", (long long) (statbuf.st_mtime + 60));
+ sprintf (hdr.ar_date, "%ld", (long) (statbuf.st_mtime + 60));
/* The DECstation uses zeroes for the uid, gid and mode of the
armap. */
Modified: head/contrib/binutils/bfd/libbfd-in.h
==============================================================================
--- head/contrib/binutils/bfd/libbfd-in.h Sat Jun 1 15:02:15 2013 (r251226)
+++ head/contrib/binutils/bfd/libbfd-in.h Sat Jun 1 18:03:01 2013 (r251227)
@@ -71,7 +71,8 @@ struct artdata {
symindex symdef_count; /* how many there are */
char *extended_names; /* clever intel extension */
bfd_size_type extended_names_size; /* Size of extended names */
- time_t armap_timestamp; /* Timestamp value written into armap.
+ /* when more compilers are standard C, this can be a time_t */
+ long armap_timestamp; /* Timestamp value written into armap.
This is used for BSD archives to check
that the timestamp is recent enough
for the BSD linker to not complain,
Modified: head/contrib/binutils/bfd/libbfd.h
==============================================================================
--- head/contrib/binutils/bfd/libbfd.h Sat Jun 1 15:02:15 2013 (r251226)
+++ head/contrib/binutils/bfd/libbfd.h Sat Jun 1 18:03:01 2013 (r251227)
@@ -76,7 +76,8 @@ struct artdata {
symindex symdef_count; /* how many there are */
char *extended_names; /* clever intel extension */
bfd_size_type extended_names_size; /* Size of extended names */
- time_t armap_timestamp; /* Timestamp value written into armap.
+ /* when more compilers are standard C, this can be a time_t */
+ long armap_timestamp; /* Timestamp value written into armap.
This is used for BSD archives to check
that the timestamp is recent enough
for the BSD linker to not complain,
More information about the svn-src-head
mailing list