#3750: libpng-1.5.13 make check fails with apng patch
---------------------------+------------------------------------------------
 Reporter:  dandennison84  |       Owner:  blfs-book@…                   
     Type:  enhancement    |      Status:  new                           
 Priority:  normal         |   Milestone:  current                       
Component:  BOOK           |     Version:  SVN                           
 Severity:  normal         |    Keywords:  libpng                        
---------------------------+------------------------------------------------
 When adding the apng patch per the book's instructions, running make check
 will result in a failure because png.h is adding new symbols and not
 updating scripts/symbols.def.  One can not run the tests, ignore the
 results or comment out the test.  This solution simply adds the missing
 symbols to the def file.

 {{{
 gawk -f ./scripts/checksym.awk ./scripts/symbols.def\
     scripts/symbols.out >&2
 png.h: exported symbol 235 'png_get_acTL' not present in
 ./scripts/symbols.def
 png.h: exported symbol 236 'png_set_acTL' not present in
 ./scripts/symbols.def
 png.h: exported symbol 237 'png_get_num_frames' not present in
 ./scripts/symbols.def
 png.h: exported symbol 238 'png_get_num_plays' not present in
 ./scripts/symbols.def
 png.h: exported symbol 239 'png_get_next_frame_fcTL' not present in
 ./scripts/symbols.def
 png.h: exported symbol 240 'png_set_next_frame_fcTL' not present in
 ./scripts/symbols.def
 png.h: exported symbol 241 'png_get_next_frame_width' not present in
 ./scripts/symbols.def
 png.h: exported symbol 242 'png_get_next_frame_height' not present in
 ./scripts/symbols.def
 png.h: exported symbol 243 'png_get_next_frame_x_offset' not present in
 ./scripts/symbols.def
 png.h: exported symbol 244 'png_get_next_frame_y_offset' not present in
 ./scripts/symbols.def
 png.h: exported symbol 245 'png_get_next_frame_delay_num' not present in
 ./scripts/symbols.def
 png.h: exported symbol 246 'png_get_next_frame_delay_den' not present in
 ./scripts/symbols.def
 png.h: exported symbol 247 'png_get_next_frame_dispose_op' not present in
 ./scripts/symbols.def
 png.h: exported symbol 248 'png_get_next_frame_blend_op' not present in
 ./scripts/symbols.def
 png.h: exported symbol 249 'png_get_first_frame_is_hidden' not present in
 ./scripts/symbols.def
 png.h: exported symbol 250 'png_set_first_frame_is_hidden' not present in
 ./scripts/symbols.def
 png.h: exported symbol 251 'png_read_frame_head' not present in
 ./scripts/symbols.def
 png.h: exported symbol 252 'png_set_progressive_frame_fn' not present in
 ./scripts/symbols.def
 png.h: exported symbol 253 'png_write_frame_head' not present in
 ./scripts/symbols.def
 png.h: exported symbol 254 'png_write_frame_tail' not present in
 ./scripts/symbols.def
 *** A new list is in symbols.new ***
 make: *** [scripts/symbols.chk] Error 1
 }}}

 The following are some awk scripts to add the missing symbols from png.h
 to scripts/symbols.def.  It should be run right after the patch.

 From the Book:
 {{{
 gzip -cd ../libpng-1.5.13-apng.patch.gz | patch -p1
 }}}

 Add This:
 {{{
 START=$(awk '/@/' scripts/symbols.def | sort -k2.3n | tail -1 | cut -d "@"
 -f2) &&
 awk -v v="$START" '/^PNG(_.+)?_EXPORTA?\(/ {gsub(/PNG(_.+)?_EXPORTA?\(/,
 ""); gsub(/,/, ""); \
 if($1 > v) print $3 " @"$1}' png.h | sort -k2.3n >> scripts/symbols.def
 }}}

 The first awk is looking for the last symbol number and saving it.  The
 second awk is appending all the symbol numbers that are greater than that
 value.  This will ensure the test passes.

-- 
Ticket URL: <http://wiki.linuxfromscratch.org/blfs/ticket/3750>
BLFS Trac <http://wiki.linuxfromscratch.org/blfs>
Beyond Linux From Scratch
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to