mirror of
https://git.code.sf.net/p/libpng/code.git
synced 2025-07-10 18:04:09 +02:00
[devel] Improved missing symbol handling in checksym.awk; symbols missing in
both the old and new files can now be optionally ignored, treated as errors or warnings.
This commit is contained in:
parent
f1cf90238b
commit
d02f246887
3
ANNOUNCE
3
ANNOUNCE
@ -462,6 +462,9 @@ Version 1.5.0beta56 [December 7, 2010]
|
|||||||
Version 1.5.0beta57 [December 7, 2010]
|
Version 1.5.0beta57 [December 7, 2010]
|
||||||
Documented the pngvalid gamma error summary with additional comments and
|
Documented the pngvalid gamma error summary with additional comments and
|
||||||
print statements.
|
print statements.
|
||||||
|
Improved missing symbol handling in checksym.awk; symbols missing in both
|
||||||
|
the old and new files can now be optionally ignored, treated as errors
|
||||||
|
or warnings.
|
||||||
|
|
||||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
|
Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
|
||||||
(subscription required; visit
|
(subscription required; visit
|
||||||
|
|||||||
3
CHANGES
3
CHANGES
@ -3100,6 +3100,9 @@ Version 1.5.0beta56 [December 7, 2010]
|
|||||||
Version 1.5.0beta57 [December 7, 2010]
|
Version 1.5.0beta57 [December 7, 2010]
|
||||||
Documented the pngvalid gamma error summary with additional comments and
|
Documented the pngvalid gamma error summary with additional comments and
|
||||||
print statements.
|
print statements.
|
||||||
|
Improved missing symbol handling in checksym.awk; symbols missing in both
|
||||||
|
the old and new files can now be optionally ignored, treated as errors
|
||||||
|
or warnings.
|
||||||
|
|
||||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
||||||
(subscription required; visit
|
(subscription required; visit
|
||||||
|
|||||||
@ -20,6 +20,7 @@ BEGIN{
|
|||||||
lasto = 0 # last ordinal value from png.h
|
lasto = 0 # last ordinal value from png.h
|
||||||
mastero = 0 # highest ordinal in master file
|
mastero = 0 # highest ordinal in master file
|
||||||
symbolo = 0 # highest ordinal in png.h
|
symbolo = 0 # highest ordinal in png.h
|
||||||
|
missing = "error"# log an error on missing symbols
|
||||||
}
|
}
|
||||||
|
|
||||||
# Read existing definitions from the master file (the first
|
# Read existing definitions from the master file (the first
|
||||||
@ -44,6 +45,13 @@ FILENAME==master && NF==2 && $2~/^@/ && $1!~/^;/ {
|
|||||||
print master ": bad export line format:", $0
|
print master ": bad export line format:", $0
|
||||||
err = 1
|
err = 1
|
||||||
}
|
}
|
||||||
|
FILENAME==master && $1==";missing" && NF==2{
|
||||||
|
# This allows the master file to control how missing symbols
|
||||||
|
# are handled; symbols that aren't in either the master or
|
||||||
|
# the new file. Valid values are 'ignore', 'warning' and
|
||||||
|
# 'error'
|
||||||
|
missing = $2
|
||||||
|
}
|
||||||
FILENAME==master {
|
FILENAME==master {
|
||||||
next
|
next
|
||||||
}
|
}
|
||||||
@ -112,11 +120,19 @@ END{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (unexported != 0) {
|
if (unexported != 0) {
|
||||||
# Symbols in the .def but not in the new file are errors
|
# Symbols in the .def but not in the new file are errors, but
|
||||||
|
# the 'unexported' symbols aren't in either. By default this
|
||||||
|
# is an error too (see the setting of 'missing' at the start),
|
||||||
|
# but this can be reset on the command line or by stuff in the
|
||||||
|
# file - see the comments above.
|
||||||
|
if (missing != "ignore") {
|
||||||
if (o-1 > unexported)
|
if (o-1 > unexported)
|
||||||
print "png.h: warning: unexported symbol definitions:", unexported "-" o-1
|
print "png.h:", missing ": missing symbols:", unexported "-" o-1
|
||||||
else
|
else
|
||||||
print "png.h: warning: unexported symbol definition:", unexported
|
print "png.h:", missing ": missing symbol:", unexported
|
||||||
|
if (missing != "warning")
|
||||||
|
err = 1
|
||||||
|
}
|
||||||
unexported = 0
|
unexported = 0
|
||||||
}
|
}
|
||||||
if (symbol[o] != "" && removed[o] != "") {
|
if (symbol[o] != "" && removed[o] != "") {
|
||||||
|
|||||||
@ -3,6 +3,12 @@
|
|||||||
; On OS/2 uncomment lines preceded by ;0S2
|
; On OS/2 uncomment lines preceded by ;0S2
|
||||||
;--------------------------------------------------------------
|
;--------------------------------------------------------------
|
||||||
|
|
||||||
|
; make scripts/pngwin.chk will validate this file against the
|
||||||
|
; build of libpng, the following line tells the check code to
|
||||||
|
; ignore symbols (ordinal values) that are missing in both
|
||||||
|
; files.
|
||||||
|
;missing ignore
|
||||||
|
|
||||||
; If you give the library an explicit name one or other files
|
; If you give the library an explicit name one or other files
|
||||||
; may need modifying to support the new name on one or more
|
; may need modifying to support the new name on one or more
|
||||||
; systems.
|
; systems.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user