[devel] Added symbols.chk target to Makefile.am to validate symbols in png.h

against the new DEF file scripts/symbols.def.
Changed the default DEF file back to pngwin.def.
Removed makefile.mingw.
This commit is contained in:
Glenn Randers-Pehrson 2010-03-16 07:52:34 -05:00
parent b92e2f7335
commit c551c0dbb3
11 changed files with 250 additions and 20 deletions

View File

@ -1,5 +1,5 @@
Libpng 1.5.0beta15 - March 14, 2010
Libpng 1.5.0beta15 - March 16, 2010
This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version.
@ -124,7 +124,11 @@ version 1.5.0beta14 [March 14, 2010]
platforms on which it happened (all but Mac OS and RISC OS).
Moved the Mac OS test into pngpriv.h (the only place it is used.)
version 1.5.0beta14 [March 14, 2010]
version 1.5.0beta14 [March 16, 2010]
Added symbols.chk target to Makefile.am to validate the symbols in png.h
against the new DEF file scripts/symbols.def.
Changed the default DEF file back to pngwin.def.
Removed makefile.mingw.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -2601,7 +2601,11 @@ version 1.5.0beta14 [March 14, 2010]
platforms on which it happened (all but Mac OS and RISC OS).
Moved the Mac OS test into pngpriv.h (the only place it is used.)
version 1.5.0beta14 [March 14, 2010]
version 1.5.0beta14 [March 16, 2010]
Added symbols.chk target to Makefile.am to validate the symbols in png.h
against the new DEF file scripts/symbols.def.
Changed the default DEF file back to pngwin.def.
Removed makefile.mingw.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -69,13 +69,14 @@ EXTRA_DIST= \
${srcdir}/contrib/pngsuite/* \
${srcdir}/contrib/visupng/* \
$(TESTS) \
CMakeLists.txt example.c libpng.def libpng-@PNGLIB_VERSION@.txt
CMakeLists.txt example.c libpng-@PNGLIB_VERSION@.txt
CLEANFILES= dfn.c dfn?.out pngout.png libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.pc \
libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@-config libpng.vers libpng.sym
libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@-config libpng.vers libpng.sym \
libpng.def checksym.lst symbols.new symbols.chk
MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.guess config.h.in \
config.sub configure depcomp install-sh ltmain.sh missing libpng.def
config.sub configure depcomp install-sh ltmain.sh missing
$(PNGLIB_BASENAME).pc: libpng.pc
cp libpng.pc $@
@ -86,19 +87,28 @@ $(PNGLIB_BASENAME)-config: libpng-config
libpng.sym: scripts/sym.dfn png.h pngconf.h
libpng.vers: scripts/vers.dfn png.h pngconf.h
libpng.def: scripts/def.dfn png.h pngconf.h
checksym.lst: scripts/checksym.dfn png.h pngconf.h
SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\
-DPNGLIB_VERSION='@PNGLIB_VERSION@'\
-DSYMBOL_PREFIX='$(SYMBOL_PREFIX)'
libpng.sym libpng.vers libpng.def:
$(RM) -f $@ dfn.c dfn?.out
libpng.sym libpng.vers libpng.def checksym.lst:
$(RM) $@ dfn.c dfn?.out
echo '#include "$<"' >dfn.c
$(CPP) @LIBPNG_DEFINES@ $(CPPFLAGS) $(SYMBOL_CFLAGS) dfn.c >dfn1.out
$(SED) -n -e 's|^.*PNG_DEFN_MAGIC-\(.*\)-PNG_DEFN_END.*$$|\1|p' dfn1.out >dfn2.out
$(SED) -e 's| *@@@ *||' -e 's| *$$||' dfn2.out >dfn3.out
$(RM) dfn.c dfn[12].out
mv dfn3.out $@
symbols.chk: scripts/checksym.awk scripts/symbols.def checksym.lst
$(RM) $@ symbols.new
$(AWK) -f $^ >&2
mv symbols.new $@
dist: symbols.chk
test: check
# install the .../include headers as links to the new ones

View File

@ -38,6 +38,7 @@ AC_PROG_CC
AC_PROG_LD
AC_PROG_CPP
AC_CHECK_TOOL(SED, sed, :)
AC_CHECK_TOOL(AWK, awk, :)
AC_LIBTOOL_WIN32_DLL
AC_PROG_INSTALL
AC_PROG_LN_S

17
png.h
View File

@ -1,7 +1,7 @@
/* png.h - header file for PNG reference library
*
* libpng version 1.5.0beta15 - March 14, 2010
* libpng version 1.5.0beta15 - March 16, 2010
* Copyright (c) 1998-2010 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
@ -11,7 +11,7 @@
* Authors and maintainers:
* libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat
* libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger
* libpng versions 0.97, January 1998, through 1.5.0beta15 - March 14, 2010: Glenn
* libpng versions 0.97, January 1998, through 1.5.0beta15 - March 16, 2010: Glenn
* See also "Contributing Authors", below.
*
* Note about libpng version numbers:
@ -170,7 +170,7 @@
*
* This code is released under the libpng license.
*
* libpng versions 1.2.6, August 15, 2004, through 1.5.0beta15, March 14, 2010, are
* libpng versions 1.2.6, August 15, 2004, through 1.5.0beta15, March 16, 2010, are
* Copyright (c) 2004, 2006-2010 Glenn Randers-Pehrson, and are
* distributed according to the same disclaimer and license as libpng-1.2.5
* with the following individual added to the list of Contributing Authors:
@ -282,7 +282,7 @@
* Y2K compliance in libpng:
* =========================
*
* March 14, 2010
* March 16, 2010
*
* Since the PNG Development group is an ad-hoc body, we can't make
* an official declaration.
@ -346,7 +346,7 @@
/* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.5.0beta15"
#define PNG_HEADER_VERSION_STRING \
" libpng version 1.5.0beta15 - March 14, 2010\n"
" libpng version 1.5.0beta15 - March 16, 2010\n"
#define PNG_LIBPNG_VER_SONUM 15
#define PNG_LIBPNG_VER_DLLNUM 15
@ -1982,6 +1982,13 @@ extern PNG_EXPORT(void,png_save_int_32,(png_bytep buf, png_int_32 i),,206);
extern PNG_EXPORT(void,png_save_uint_16,(png_bytep buf, unsigned int i),,207);
/* No png_save_int_16 -- may be added if there's a real need for it. */
/* The last ordinal number (this is the *last* one, the next one to
* use is one more than this.)
*/
#ifdef PNG_EXPORT_LAST_ORDINAL
PNG_EXPORT_LAST_ORDINAL(207);
#endif
/* ************************************************************************* */
/* Various modes of operation. Note that after an init, mode is set to

View File

@ -241,7 +241,7 @@ SOURCE=..\..\pngtrans.c
# End Source File
# Begin Source File
SOURCE=..\..\libpng.def
SOURCE=..\..\scripts\pngwin.def
!IF "$(CFG)" == "libpng - Win32 DLL Release"

View File

@ -11,7 +11,7 @@ Changes in libpng 15:
Consequently the VB configuration is no longer required but is provided
in libpng15vb.dll for backward compatibility.
* The DEF file is no longer required, the DLLs link by name. A standard
DEF file, libpng.def, is included in the distribution for applications
DEF file, pngwin.def, is included in the distribution for applications
that require link by number (ordinal), builds that require link by
number should use the ordinals from this file (or from png.h).

View File

@ -1,5 +1,5 @@
Makefiles for libpng version 1.5.0beta15 - March 14, 2010
Makefiles for libpng version 1.5.0beta15 - March 16, 2010
makefile.linux => Linux/ELF makefile
(gcc, creates libpng15.so.15.1.5.0beta15)

View File

@ -11,7 +11,7 @@
#define PNG_EXPORT(type, name, args, attributes, ordinal)\
PNG_DEFN_MAGIC- name @ordinal-PNG_DEFN_END
#define PNG_REMOVED(name, ordinal)\
#define PNG_REMOVED(type, name, args, attributes, ordinal)\
PNG_DEFN_MAGIC-; name @ordinal-PNG_DEFN_END
PNG_DEFN_MAGIC-;---------------------------------------------------------------PNG_DEFN_END

View File

@ -4,7 +4,7 @@
# For conditions of distribution and use, see the disclaimer
# and license in png.h
# Related files: libpng.def
# Related files: scripts/pngwin.def
CC=gcc -Zomf -s
@ -36,10 +36,10 @@ all: $(PNGLIB) $(SHAREDLIB) $(SHAREDLIBIMP)
$(PNGLIB): $(OBJS)
$(AR) rc $@ $(OBJS)
$(SHAREDLIB): $(OBJS) libpng.def
$(SHAREDLIB): $(OBJS) scripts/pngwin.def
$(CC) $(LDFLAGS) -Zdll -o $@ $^
$(SHAREDLIBIMP): libpng.def
$(SHAREDLIBIMP): scripts/pngwin.def
$(IMPLIB) -o $@ $^
pngtest.exe: pngtest.o png.dll pngdll.lib

204
scripts/pngwin.def Normal file
View File

@ -0,0 +1,204 @@
;--------------------------------------------------------------
; LIBPNG module definition file for Windows, WindowsCE and OS/2
; On OS/2 uncomment lines preceded by ;0S2
;--------------------------------------------------------------
; If you give the library an explicit name one or other files
; may need modifying to support the new name on one or more
; systems.
LIBRARY
;OS2 DESCRIPTION "PNG image compression library"
;OS2 CODE PRELOAD MOVEABLE DISCARDABLE
EXPORTS
;Version 1.5.0beta15
png_access_version_number @1
png_set_sig_bytes @2
png_sig_cmp @3
png_create_read_struct @4
png_create_write_struct @5
png_get_compression_buffer_size @6
png_set_compression_buffer_size @7
png_set_longjmp_fn @8
png_longjmp @9
png_reset_zstream @10
png_create_read_struct_2 @11
png_create_write_struct_2 @12
png_write_sig @13
png_write_chunk @14
png_write_chunk_start @15
png_write_chunk_data @16
png_write_chunk_end @17
png_create_info_struct @18
png_info_init_3 @19
png_write_info_before_PLTE @20
png_write_info @21
png_read_info @22
png_convert_to_rfc1123 @23
png_convert_from_struct_tm @24
png_convert_from_time_t @25
png_set_expand @26
png_set_expand_gray_1_2_4_to_8 @27
png_set_palette_to_rgb @28
png_set_tRNS_to_alpha @29
png_set_bgr @30
png_set_gray_to_rgb @31
png_set_rgb_to_gray @32
png_set_rgb_to_gray_fixed @33
png_get_rgb_to_gray_status @34
png_build_grayscale_palette @35
png_set_strip_alpha @36
png_set_swap_alpha @37
png_set_invert_alpha @38
png_set_filler @39
png_set_add_alpha @40
png_set_swap @41
png_set_packing @42
png_set_packswap @43
png_set_shift @44
png_set_interlace_handling @45
png_set_invert_mono @46
png_set_background @47
png_set_strip_16 @48
png_set_gamma @50
png_set_flush @51
png_write_flush @52
png_start_read_image @53
png_read_update_info @54
png_read_rows @55
png_read_row @56
png_read_image @57
png_write_row @58
png_write_rows @59
png_write_image @60
png_write_end @61
png_read_end @62
png_destroy_info_struct @63
png_destroy_read_struct @64
png_destroy_write_struct @65
png_set_crc_action @66
png_set_filter @67
png_set_filter_heuristics @68
png_set_compression_level @69
png_set_compression_mem_level @70
png_set_compression_strategy @71
png_set_compression_window_bits @72
png_set_compression_method @73
png_init_io @74
png_set_error_fn @75
png_get_error_ptr @76
png_set_write_fn @77
png_set_read_fn @78
png_get_io_ptr @79
png_set_read_status_fn @80
png_set_write_status_fn @81
png_set_mem_fn @82
png_get_mem_ptr @83
png_set_read_user_transform_fn @84
png_set_write_user_transform_fn @85
png_set_user_transform_info @86
png_get_user_transform_ptr @87
png_set_read_user_chunk_fn @88
png_get_user_chunk_ptr @89
png_set_progressive_read_fn @90
png_get_progressive_ptr @91
png_process_data @92
png_progressive_combine_row @93
png_malloc @94
png_calloc @95
png_malloc_warn @96
png_free @97
png_free_data @98
png_data_freer @99
png_malloc_default @100
png_free_default @101
png_error @102
png_chunk_error @103
png_warning @105
png_chunk_warning @106
png_get_valid @110
png_get_rowbytes @111
png_get_rows @112
png_set_rows @113
png_get_channels @114
png_get_image_width @115
png_get_image_height @116
png_get_bit_depth @117
png_get_color_type @118
png_get_filter_type @119
png_get_interlace_type @120
png_get_compression_type @121
png_get_pixels_per_meter @122
png_get_x_pixels_per_meter @123
png_get_y_pixels_per_meter @124
png_get_pixel_aspect_ratio @125
png_get_x_offset_pixels @126
png_get_y_offset_pixels @127
png_get_x_offset_microns @128
png_get_y_offset_microns @129
png_get_signature @130
png_get_bKGD @131
png_set_bKGD @132
png_get_cHRM @133
png_get_cHRM_fixed @134
png_set_cHRM @135
png_set_cHRM_fixed @136
png_get_gAMA @137
png_get_gAMA_fixed @138
png_set_gAMA @139
png_set_gAMA_fixed @140
png_get_hIST @141
png_set_hIST @142
png_get_IHDR @143
png_set_IHDR @144
png_get_oFFs @145
png_set_oFFs @146
png_get_pCAL @147
png_set_pCAL @148
png_get_pHYs @149
png_set_pHYs @150
png_get_PLTE @151
png_set_PLTE @152
png_get_sBIT @153
png_set_sBIT @154
png_get_sRGB @155
png_set_sRGB @156
png_set_sRGB_gAMA_and_cHRM @157
png_get_iCCP @158
png_set_iCCP @159
png_get_sPLT @160
png_set_sPLT @161
png_get_text @162
png_set_text @163
png_get_tIME @164
png_set_tIME @165
png_get_tRNS @166
png_set_tRNS @167
png_get_sCAL @168
png_set_sCAL @170
png_set_keep_unknown_chunks @172
png_handle_as_unknown @173
png_set_unknown_chunks @174
png_set_unknown_chunk_location @175
png_get_unknown_chunks @176
png_set_invalid @177
png_read_png @178
png_write_png @179
png_get_copyright @180
png_get_header_ver @181
png_get_header_version @182
png_get_libpng_ver @183
png_permit_mng_features @184
png_set_user_limits @186
png_get_user_width_max @187
png_get_user_height_max @188
png_set_chunk_cache_max @189
png_get_chunk_cache_max @190
png_set_chunk_malloc_max @191
png_get_chunk_malloc_max @192
png_get_io_state @199
png_get_io_chunk_name @200
png_get_uint_31 @204
png_save_uint_32 @205
png_save_int_32 @206
png_save_uint_16 @207