OSDN Git Service

Prepare, tag, and publish 0.47 release.
[mingw/pexports.git] / ChangeLog
1 2015-09-08  Keith Marshall  <keithmarshall@users.sourceforge.net>
2
3         Prepare, tag, and publish 0.47 release.
4
5         * configure.ac: Update copyright notice.
6         (AC_INIT): Increment PACKAGE_VERSION assignment to 0.47
7
8         * pexports.c: Update copyright notice.
9
10         * README: Add release notes.
11         * All files: Tagged "v0_47" for release.
12
13 2015-09-07  Keith Marshall  <keithmarshall@users.sourceforge.net>
14
15         Avoid uint32_t difference overflow in 64-bit pointer adjustment.
16
17         * pexports.c (rva_to_ptr): Do not compute uint32_t offset differences;
18         apply each offset adjustment individually to the base pointer.
19
20         * pexports.h: Add '#pragma ms_struct on', to keep structures aligned
21         per MSVC convention.
22
23 2015-09-07  Keith Marshall  <keithmarshall@users.sourceforge.net>
24
25         Eliminate Microsoft inspired obfuscated typedef insanity.
26
27         * pexports.c pexports.h (BYTE, WORD, DWORD): Delete typedefs;
28         respectively replace all corresponding usage instances with...
29         (uint8_t, uint16_t, uint32_t): ...these ISO-C standard types.
30         (PVOID, PIMAGE_DOS_HEADER, PIMAGE_FILE_HEADER, PIMAGE_SECTION_HEADER)
31         (PIMAGE_DATA_DIRECTORY, PIMAGE_EXPORT_DIRECTORY, PIMAGE_NT_HEADERS32)
32         (PIMAGE_NT_HEADERS64, PIMAGE_OPTIONAL_HEADER32)
33         (PIMAGE_OPTIONAL_HEADER64): Delete these non-standard style pointer
34         reference typedefs; replace with conventional pointer references to
35         the underlying data type; where these are structural types, delete
36         initial underscores from the corresponding structure tag names.
37         (HMODULE): Likewise; replace with pointer to void.
38
39 2013-05-30  Keith Marshall  <keithmarshall@users.sourceforge.net>
40
41         Prepare, tag, and publish 0.46 release.
42
43         * README: Add release notes.
44         * All files: Tagged "v0_46" for release.
45
46 2013-05-30  Keith Marshall  <keithmarshall@users.sourceforge.net>
47
48         Assemble licence and documentation tarballs for distribution.
49
50         * Makefile.in (dist): Add dependencies on...
51         (licdist, docdist): ...these new build goals; specify them based on...
52         (LIC_DISTFILES, DOC_DISTFILES): ...these new macros; define them as
53         the respective list of files to include in each tarball.
54
55 2013-05-29  Keith Marshall  <keithmarshall@users.sourceforge.net>
56
57         Force a remake, on package version updates.
58
59         * Makefile.in (pexports.OBJEXT): Make it depend on Makefile; this
60         indirectly captures changes, when configure.ac is updated.
61
62 2013-05-29  Keith Marshall  <keithmarshall@users.sourceforge.net>
63
64         Update program identification, via configuration process.
65
66         * pexports.c (main): Update identification text; remove references...
67         (VER_MAJOR, VER_MINOR): ...to these; combine them by substituting...
68         (PACKAGE_VERSION_STRING): ...this new macro; also amend instructions
69         for reporting bugs, as directed at URL identified by...
70         (PACKAGE_BUG_REPORT): ...this additional new macro.
71
72         * pexports.h (VER_MAJOR, VER_MINOR): Obsolete macros; delete them.
73
74         * Makefile.in (PACKAGE_DEFS): New macro; defined in terms of these...
75         (PACKAGE_VERSION_STRING, PACKAGE_BUG_REPORT_URL, PACKAGE_BUG_REPORT):
76         ...these additional new macros, defined by AC_SUBST from configure.ac,
77         and subsequently propagated to pexports.c, as an addendum to...
78         (CDEPFLAGS): ...this.
79
80 2013-05-29  Keith Marshall  <keithmarshall@users.sourceforge.net>
81
82         Autoconfiscate.
83
84         * configure.ac Makefile.in: New files.
85         * Makefile: Now auto-generated at configure time; remove it.
86         * .hgignore: Add configure, Makefile, autom4te.cache and build dir.
87
88 2013-05-29  Keith Marshall  <keithmarshall@users.sourceforge.net>
89
90         Integrate build-aux utilities as a submodule.
91
92         * .gitmodules .hgsub .hgsubstate: New files.
93
94 2013-05-28  Keith Marshall  <keithmarshall@users.sourceforge.net>
95
96         Designate files which mercurial should not track.
97
98         * .hgignore: New file.
99
100 2013-05-28  Keith Marshall  <keithmarshall@users.sourceforge.net>
101
102         Correct some obfuscated typedef portability issues.
103
104         * pexports.c: Include inttypes.h; it permits use of...
105         (PRIdPTR): ...this ISO-C99 standard macro, in preference to...
106         (INT_PTR_FORMAT): ...this non-standard contrivance; similarly...
107         (intptr_t): ...substitute this ISO-C99 standard typedef...
108         (INT_PTR): ...for this non-standard type.
109
110         * pexports.h: Include stdint.h; typedef...
111         (BYTE): ...this, as explicitly equivalent to uint8_t.
112         (WORD): ...this, as explicitly equivalent to uint16_t.
113         (DWORD): ...this, as explicitly equivalent to uint32_t.
114         (INT_PTR, INT_PTR_FORMAT): No longer required; delete them.
115         (ULONGLONG): Explicitly typedef as equivalent to uint64_t; although
116         'unsigned long long' seems a better fit, our present usage requires
117         the explicit 64-bit association, and use of this standard type allows
118         us to eliminate all references to Microsoft's non-standard __int64.
119         (LONG): Explicitly typedef as equivalent to int32_t; technically, this
120         is incorrect, but misuse elsewhere requires the explicit 32-bit type,
121         which is not guaranteed by ISO-C99's standard 'long' type.
122
123 2011-09-14  Daniel Collins  <solemnwarning@solemnwarning.net>
124
125         Avoid segmentation faults in forwarder function checks.
126
127         * pexports.h (dump_exports): Adjust prototype to accommodate new
128         'exports_size' argument; this is to be assigned and passed from...
129         * pexports.c (main): ...here; assigned value is determined from the
130         export table size recorded in the PE file image, whence passed to...
131         (dump_exports): ...here; it is used to avoid crashing or corruption
132         when the export table isn't at the end of its section.  Also check
133         for, and filter out duplicated symbol reports.
134
135 2009-09-15  Charles Wilson  <cwilso11@users.sourceforge.net>
136
137         Slight build improvements.
138
139         * README: Update.
140         * Makefile: Rewrite dist rule to create a .tar.lzma instead
141         of a .zip (and don't create a tarbomb). 
142
143 2009-09-15  Charles Wilson  <cwilso11@users.sourceforge.net>
144
145         Package 0.44-1-mingw32 fixes.
146
147         * pexports.c (main): Fix typo in usage statement.
148         * pexports.h: Ensure ULONGLONG is defined.
149         * Makefile: Force use of flex and bison, not lex and yacc.
150
151 2008-08-31  Tor Lillqvist  <tml@novell.com>
152
153         Release 0.44. Add support for 64-bit executables.
154
155         * hlex.l
156         * hparse.y
157         * pexports.h
158         * pexports.c
159         * str_tree.h
160         * str_tree.c: Handle also 64-bit executables. Make it work also if
161         built as 64-bit code. Remove all gcc -Wall warnings. Make it
162         compilable also with MSVC. Disable Wow64 file system redirection
163         when running as a 32-bit process on 64-bit Windows. Bump version
164         to 0.44.
165         * Makefile: New.
166         * pe.h: Not needed, removed.
167         * hparse.h: Remove generated file.
168         * Makefile.am: Removed.
169
170 2002-11-08  Luke Dunstan  <infidel@users.sourceforge.net>
171
172         * pexports.c (dump_exports): fix exports incorrectly
173         determined to be forwarders.
174
175 1999-04-02  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
176
177         * pexports.c: now distinguishes data/non-data symbols,
178         depending on type of section symbol in
179         * pexports.c: in verbose mode prints section name for symbol
180         * pexports.c: file offsets are now in hex
181
182 1998-11-07  Anders Norlander  <kv98anr@cs.umu.se>
183
184         * hparse.y: types and parameters are now recognized as
185         a series of tokens, which means that keywords like const
186         struct and so on are not recognized as such, allowing any
187         kind of parameter, including function pointers.
188
189 1998-11-05  Anders Norlander  <kv98anr@cs.umu.se>
190
191         * hlex.l: removed all tokens except ID, CONST and VOLATILE
192         * hparse.y: Added INC_ARGS macro to increment arg_size only if
193         new flag inc_flag is set
194         * hparse.y: Added function_pointer and function_pointer_name rules
195         * hparse.y: Function attributes are now handled as list of ID's
196         * pexports.h: Incremented VER_MINOR
197         * pexports.c: Print name of file if a header is not found
198         * pexports.c: Separated printing to function dump_symbol
199         * pexports.c: Fixed handling of forwarded exports
200
201 1998-10-26  Anders Norlander  <anorland@hem2.passagen.se>
202
203         * New files: str_tree.c str_tree.h: implements
204         a symbol tree.
205         * pexports.c: changed symbol handling to use str_tree,
206         add_function_prot removed.
207         * pexports.h: removed add_function_prot prototype
208         * hlex.l: removed unnecessary code (count, CONSTANT, STRING)
209         * hlex.l: added ATTRIBUTE token.
210         * hparse.y: completely rewritten. *Much* improved parser.
211         * pexports.h: changed VER_MINOR to 3
212
213 1998-10-21  Anders Norlander  <anorland@hem2.passagen.se>
214
215         * pexports.c: removed include_path structure and replaced
216         it with a generic string list str_list.
217         * pexports.c: preprocessor now defaults to "gcc -E -xc-header"
218         instead of "cpp".
219         * pexports.h: incremented minor version VER_MINOR to 2
220         * pexports.c: headers are now parsed after all paramaters
221         command line options have been parsed.
222         * hparse.y: fixed problem with unnamed parameters that
223         are pointers.
224         * pexports.c: in dump_exports: don't print extra white
225         space if ordinals are not supposed to be printed.