From 15b6cd19e80a8e6b9fc86c178fdb03c3bd0ac2fe Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 22 Nov 2013 15:04:23 +0000 Subject: * windres.c (define_resource): Use zero for timestamp, making output deterministic. time.h include is no longer needed. * resres.c (res_append_resource): Likewise. * libcoff-in.h: Add insert_timestamp flag to the pe_data struct. * libcoff.h: Regenerate. * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Only use a real timestamp if --insert-timestamp was used. * pe-dll.c (fill_edata): Only use a real timestamp if --insert-timestamp was used. * emultempl/pe.em: Add the --insert-timestamp option. * emultempl/pep.em: Likewise for 64bit. * ld.texinfo: Document the --insert-timestamp option. --- bfd/ChangeLog | 7 +++++++ bfd/libcoff-in.h | 5 ++--- bfd/libcoff.h | 5 ++--- bfd/peXXigen.c | 8 +++++--- 4 files changed, 16 insertions(+), 9 deletions(-) (limited to 'bfd') diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 11a0586f1e..60b769ba67 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2013-11-22 Cory Fields + + * libcoff-in.h: Add insert_timestamp flag to the pe_data struct. + * libcoff.h: Regenerate. + * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Only use a real + timestamp if --insert-timestamp was used. + 2013-11-19 Roland McGrath * elf-nacl.c (nacl_modify_segment_map): Calculate SIZEOF_HEADERS diff --git a/bfd/libcoff-in.h b/bfd/libcoff-in.h index 6efbc524a9..49b5f10b0a 100644 --- a/bfd/libcoff-in.h +++ b/bfd/libcoff-in.h @@ -1,7 +1,5 @@ /* BFD COFF object file private structure. - Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 - Free Software Foundation, Inc. + Copyright 1990-2013 Free Software Foundation, Inc. Written by Cygnus Support. This file is part of BFD, the Binary File Descriptor library. @@ -118,6 +116,7 @@ typedef struct pe_tdata int dll; int has_reloc_section; int dont_strip_reloc; + bfd_boolean insert_timestamp; bfd_boolean (*in_reloc_p) (bfd *, reloc_howto_type *); flagword real_flags; } pe_data_type; diff --git a/bfd/libcoff.h b/bfd/libcoff.h index 6270bab86b..19b6d9c8e1 100644 --- a/bfd/libcoff.h +++ b/bfd/libcoff.h @@ -3,9 +3,7 @@ Run "make headers" in your build bfd/ to regenerate. */ /* BFD COFF object file private structure. - Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 - Free Software Foundation, Inc. + Copyright 1990-2013 Free Software Foundation, Inc. Written by Cygnus Support. This file is part of BFD, the Binary File Descriptor library. @@ -122,6 +120,7 @@ typedef struct pe_tdata int dll; int has_reloc_section; int dont_strip_reloc; + bfd_boolean insert_timestamp; bfd_boolean (*in_reloc_p) (bfd *, reloc_howto_type *); flagword real_flags; } pe_data_type; diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c index d0f7a96e1f..287e4a2e3a 100644 --- a/bfd/peXXigen.c +++ b/bfd/peXXigen.c @@ -1,6 +1,5 @@ /* Support for the generic parts of PE/PEI; the common executable parts. - Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, - 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright 1995-2013 Free Software Foundation, Inc. Written by Cygnus Solutions. This file is part of BFD, the Binary File Descriptor library. @@ -793,7 +792,10 @@ _bfd_XXi_only_swap_filehdr_out (bfd * abfd, void * in, void * out) H_PUT_16 (abfd, filehdr_in->f_magic, filehdr_out->f_magic); H_PUT_16 (abfd, filehdr_in->f_nscns, filehdr_out->f_nscns); - H_PUT_32 (abfd, time (0), filehdr_out->f_timdat); + /* Only use a real timestamp if the option was chosen. */ + if ((pe_data (abfd)->insert_timestamp)) + H_PUT_32 (abfd, time(0), filehdr_out->f_timdat); + PUT_FILEHDR_SYMPTR (abfd, filehdr_in->f_symptr, filehdr_out->f_symptr); H_PUT_32 (abfd, filehdr_in->f_nsyms, filehdr_out->f_nsyms); -- cgit v1.2.1