diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2015-01-14 10:59:36 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2015-01-14 10:59:36 +0000 |
commit | aa7bbf0e9b00afeeab12fb092b62976cf24fb439 (patch) | |
tree | c18d4ee9d969c2fca65036c7d9194d0961df61a3 /Build/source/libs/gd | |
parent | 51f86fe156c11e441cc74238dc38b99f9576d1a9 (diff) |
libgd 2.1.1
git-svn-id: svn://tug.org/texlive/trunk@36054 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/gd')
-rw-r--r-- | Build/source/libs/gd/ChangeLog | 8 | ||||
-rw-r--r-- | Build/source/libs/gd/Makefile.am | 37 | ||||
-rw-r--r-- | Build/source/libs/gd/Makefile.in | 469 | ||||
-rwxr-xr-x | Build/source/libs/gd/configure | 24 | ||||
-rw-r--r-- | Build/source/libs/gd/gdtest.c | 15 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-02-no-stdcall | 12 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.0/ChangeLog | 1169 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.0/src/gd_intern.h | 42 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.0/src/gd_io.h | 52 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.0/windows/Makefile.w32 | 177 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1-PATCHES/ChangeLog (renamed from Build/source/libs/gd/libgd-2.1.0-PATCHES/ChangeLog) | 9 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1-PATCHES/TL-Changes (renamed from Build/source/libs/gd/libgd-2.1.0-PATCHES/TL-Changes) | 5 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-01-win32 (renamed from Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-01-win32) | 10 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-02-no-stdcall | 12 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-03-ceill (renamed from Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-03-ceill) | 6 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/CMakeLists.txt) | 23 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/CONTRIBUTORS | 26 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/COPYING (renamed from Build/source/libs/gd/libgd-2.1.0/COPYING) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/ChangeLog | 317 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/Makefile.am (renamed from Build/source/libs/gd/libgd-2.1.0/Makefile.am) | 2 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/NEWS (renamed from Build/source/libs/gd/libgd-2.1.0/NEWS) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/README | 10 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/VMS/CONFIGURE.COM (renamed from Build/source/libs/gd/libgd-2.1.0/VMS/CONFIGURE.COM) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/VMS/README.VMS (renamed from Build/source/libs/gd/libgd-2.1.0/VMS/README.VMS) | 0 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd-2.1.1/bootstrap.sh (renamed from Build/source/libs/gd/libgd-2.1.0/bootstrap.sh) | 16 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/AC_HEADER_STDC.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/AC_HEADER_STDC.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/CMakeParseArguments.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/CMakeParseArguments.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/CheckDIRSymbolExists.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/CheckDIRSymbolExists.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/CheckPrototypeExists.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/CheckPrototypeExists.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindFontConfig.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindFontConfig.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindFreetype.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindFreetype.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindGD.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindGD.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindICONV.cmake | 64 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindJPEG.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindJPEG.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindLIQ.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindLIQ.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPNG.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPNG.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPTHREAD.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPTHREAD.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPackageHandleStandardArgs.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPackageHandleStandardArgs.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindVPX.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindVPX.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindXPM.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindXPM.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForHighBitCharacters.c (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForHighBitCharacters.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForHighBitCharacters.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForHighBitCharacters.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForStandardHeaderwait.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForStandardHeaderwait.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/cmake/modules/gd.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/cmake/modules/gd.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/config/Makefile.am (renamed from Build/source/libs/gd/libgd-2.1.0/config/Makefile.am) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/config/gdlib-config.in (renamed from Build/source/libs/gd/libgd-2.1.0/config/gdlib-config.in) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/config/gdlib.pc.in (renamed from Build/source/libs/gd/libgd-2.1.0/config/gdlib.pc.in) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/configure.ac (renamed from Build/source/libs/gd/libgd-2.1.0/configure.ac) | 35 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/INSTALL (renamed from Build/source/libs/gd/libgd-2.1.0/docs/INSTALL) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/INSTALL.Solaris | 16 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/README.CMAKE (renamed from Build/source/libs/gd/libgd-2.1.0/docs/README.CMAKE) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/README.JPN (renamed from Build/source/libs/gd/libgd-2.1.0/docs/README.JPN) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/README.TESTING (renamed from Build/source/libs/gd/libgd-2.1.0/docs/README.TESTING) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/README.TXT (renamed from Build/source/libs/gd/libgd-2.1.0/docs/README.TXT) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/license.txt | 74 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/nobgd.pl | 58 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/preamble.txt | 95 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Languages.txt | 113 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Topics.txt | 81 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/run_docs.sh | 33 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/examples/CMakeLists.txt) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/arc.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/arc.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/copyrotated.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/copyrotated.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/crop.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/crop.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/flip.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/flip.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/gif.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/gif.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/nnquant.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/nnquant.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/noIcon.pic (renamed from Build/source/libs/gd/libgd-2.1.0/examples/noIcon.pic) | bin | 63486 -> 63486 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/noIcon.sgi (renamed from Build/source/libs/gd/libgd-2.1.0/examples/noIcon.sgi) | bin | 66605 -> 66605 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/noIcon.tga (renamed from Build/source/libs/gd/libgd-2.1.0/examples/noIcon.tga) | bin | 153682 -> 153682 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/noIconAlpha.tga (renamed from Build/source/libs/gd/libgd-2.1.0/examples/noIconAlpha.tga) | bin | 153682 -> 153682 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/resize.c | 59 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/test_crop_threshold.png (renamed from Build/source/libs/gd/libgd-2.1.0/examples/test_crop_threshold.png) | bin | 7919 -> 7919 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/tgaread.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/tgaread.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/tiffread.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/tiffread.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/examples/windows.c (renamed from Build/source/libs/gd/libgd-2.1.0/examples/windows.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/m4/ax_pthread.m4 (renamed from Build/source/libs/gd/libgd-2.1.0/m4/ax_pthread.m4) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/m4/visibility.m4 (renamed from Build/source/libs/gd/libgd-2.1.0/m4/visibility.m4) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/m4/w32.m4 (renamed from Build/source/libs/gd/libgd-2.1.0/m4/w32.m4) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/netware/Makefile.netware (renamed from Build/source/libs/gd/libgd-2.1.0/netware/Makefile.netware) | 4 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/netware/get_exp.awk (renamed from Build/source/libs/gd/libgd-2.1.0/netware/get_exp.awk) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/netware/get_ver.awk (renamed from Build/source/libs/gd/libgd-2.1.0/netware/get_ver.awk) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/netware/keepscreen.c (renamed from Build/source/libs/gd/libgd-2.1.0/netware/keepscreen.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/netware/nwlibc.c (renamed from Build/source/libs/gd/libgd-2.1.0/netware/nwlibc.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/netware/tests/Makefile.netware (renamed from Build/source/libs/gd/libgd-2.1.0/netware/tests/Makefile.netware) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/src/CMakeLists.txt) | 14 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/COPYING (renamed from Build/source/libs/gd/libgd-2.1.0/src/COPYING) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/Makefile.am (renamed from Build/source/libs/gd/libgd-2.1.0/src/Makefile.am) | 2 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/annotate.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/annotate.c) | 0 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd-2.1.1/src/bdftogd (renamed from Build/source/libs/gd/libgd-2.1.0/src/bdftogd) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/bmp.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/bmp.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/circletexttest.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/circletexttest.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/config.h.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/src/config.h.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/config.hin (renamed from Build/source/libs/gd/libgd-2.1.0/src/config.hin) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/demoin.png (renamed from Build/source/libs/gd/libgd-2.1.0/src/demoin.png) | bin | 10027 -> 10027 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/entities.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/entities.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/entities.html (renamed from Build/source/libs/gd/libgd-2.1.0/src/entities.html) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/entities.tcl (renamed from Build/source/libs/gd/libgd-2.1.0/src/entities.tcl) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/fontconfigtest.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/fontconfigtest.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/fontsizetest.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/fontsizetest.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/fontwheeltest.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/fontwheeltest.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd.c) | 172 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd.h) | 265 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd2copypal.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd2copypal.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd2time.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd2time.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd2togif.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd2togif.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd2topng.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd2topng.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_bmp.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_bmp.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_color.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_color.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_color.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_color.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_color_map.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_color_map.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_color_map.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_color_map.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_color_map_test.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_color_map_test.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_color_match.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_color_match.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_crop.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_crop.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_errors.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_errors.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_filename.c | 254 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_filter.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_filter.c) | 263 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_gd.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_gd.c) | 59 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_gd2.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_gd2.c) | 119 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_gif_in.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_gif_in.c) | 72 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_gif_out.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_gif_out.c) | 448 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_intern.h | 90 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_interpolation.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_interpolation.c) | 335 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_io.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_io.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_io.h | 100 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_io_dp.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_io_dp.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_io_file.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_io_file.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_io_ss.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_io_ss.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_io_stream.cxx (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_io_stream.cxx) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_io_stream.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_io_stream.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_jpeg.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_jpeg.c) | 201 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_matrix.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_matrix.c) | 20 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_nnquant.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_nnquant.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_nnquant.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_nnquant.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_png.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_png.c) | 236 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_rotate.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_rotate.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_security.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_security.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_ss.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_ss.c) | 6 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_tga.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_tga.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_tga.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_tga.h) | 20 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_tiff.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_tiff.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_topal.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_topal.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_transform.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_transform.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_version.c | 33 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_wbmp.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_wbmp.c) | 67 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_webp.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_webp.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gd_xbm.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gd_xbm.c) | 37 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdcache.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdcache.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdcache.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdcache.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdcmpgif.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdcmpgif.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gddemo.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gddemo.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontg.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontg.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontg.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontg.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontl.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontl.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontl.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontl.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontmb.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontmb.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontmb.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontmb.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfonts.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfonts.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfonts.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfonts.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontt.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontt.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfontt.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfontt.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdft.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdft.c) | 136 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfx.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfx.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdfx.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdfx.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdhelpers.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdhelpers.c) | 5 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdhelpers.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdhelpers.h) | 9 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdkanji.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdkanji.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdparttopng.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdparttopng.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdpp.cxx (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdpp.cxx) | 12 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdpp.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdpp.h) | 91 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdtables.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdtables.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdtest.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdtest.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdtestft.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdtestft.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdtopng.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdtopng.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gdxpm.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gdxpm.c) | 44 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/gifanimtest.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/gifanimtest.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/giftogd2.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/giftogd2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/jisx0208.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/jisx0208.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/msinttypes/inttypes.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/msinttypes/inttypes.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/msinttypes/stdint.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/msinttypes/stdint.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/pngtogd.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/pngtogd.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/pngtogd2.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/pngtogd2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/testac.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/testac.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/testtr.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/testtr.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/wbmp.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/wbmp.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/wbmp.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/wbmp.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/webpimg.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/webpimg.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/webpimg.h (renamed from Build/source/libs/gd/libgd-2.1.0/src/webpimg.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/src/webpng.c (renamed from Build/source/libs/gd/libgd-2.1.0/src/webpng.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/test/gdtest.gd2 (renamed from Build/source/libs/gd/libgd-2.1.0/test/gdtest.gd2) | bin | 28661 -> 28661 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/test/gdtest.png (renamed from Build/source/libs/gd/libgd-2.1.0/test/gdtest.png) | bin | 26658 -> 26658 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/test/gdtest_200_300_150_100.png (renamed from Build/source/libs/gd/libgd-2.1.0/test/gdtest_200_300_150_100.png) | bin | 1776 -> 1776 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/test/gdtest_merge.png (renamed from Build/source/libs/gd/libgd-2.1.0/test/gdtest_merge.png) | bin | 30372 -> 30372 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/test/gdtest_wbmp_to_png.png (renamed from Build/source/libs/gd/libgd-2.1.0/test/gdtest_wbmp_to_png.png) | bin | 286 -> 286 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/CMakeLists.txt) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/Makefile.am (renamed from Build/source/libs/gd/libgd-2.1.0/tests/Makefile.am) | 12 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/bmp/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/bmp/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/bmp/bmp_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/bmp/bmp_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/bmp/bmp_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/bmp/bmp_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/freetype/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/freetype/CMakeLists.txt) | 5 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/freetype/DejaVuSans.ttf (renamed from Build/source/libs/gd/libgd-2.1.0/tests/freetype/DejaVuSans.ttf) | bin | 569008 -> 569008 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/freetype/bug00132.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/freetype/bug00132.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/freetype/bug00132_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/freetype/bug00132_exp.png) | bin | 217 -> 217 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd/CMakeLists.txt) | 4 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd/crafted_num_colors.gd (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd/crafted_num_colors.gd) | bin | 1039 -> 1039 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_num_colors.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_num_colors.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_versiontest.c | 21 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_gd2_exp.gd2 (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_gd2_exp.gd2) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_test.gd2 (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_test.gd2) | bin | 423 -> 423 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_test_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_test_exp.png) | bin | 87 -> 87 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/empty.gd2 (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/empty.gd2) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_empty_file.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_empty_file.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_read.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_read.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/bug00079.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/bug00079.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/bug00079_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/bug00079_exp.png) | bin | 2127 -> 2127 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorclosest/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorclosest/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorclosest/gdimagecolorclosest.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorclosest/gdimagecolorclosest.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolordeallocate/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolordeallocate/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolordeallocate/gdimagecolordeallocate.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolordeallocate/gdimagecolordeallocate.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorexact/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorexact/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorexact/gdimagecolorexact.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorexact/gdimagecolorexact.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorreplace/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorreplace/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorreplace/gdimagecolorreplace.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorreplace/gdimagecolorreplace.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorresolve/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorresolve/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorresolve/gdimagecolorresolve.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorresolve/gdimagecolorresolve.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolortransparent/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolortransparent/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolortransparent/gdimagecolortransparent.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolortransparent/gdimagecolortransparent.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00007.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00007.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00081.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00081.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00081_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00081_exp.png) | bin | 95 -> 95 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/bug00020.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/bug00020.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/bug00020_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/bug00020_exp.png) | bin | 402 -> 402 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/gdnametest.c | 169 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.tga | bin | 0 -> 9018 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xbm | 37 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xpm | 58 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_1.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_1.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_1_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_1_exp.png) | bin | 289 -> 289 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_2.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_2_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_2_exp.png) | bin | 393 -> 393 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_3.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_3.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_3_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_3_exp.png) | bin | 410 -> 410 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_4.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_4.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_4_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_4_exp.png) | bin | 192 -> 192 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00010.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00010.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00010_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00010_exp.png) | bin | 479 -> 479 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00191.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00191.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00191.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00191.png) | bin | 143 -> 143 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/bug00100.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/bug00100.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/bug00100.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/bug00100.png) | bin | 2124 -> 2124 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon0.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon0.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon0.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon0.png) | bin | 95 -> 95 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon1.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon1.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon1.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon1.png) | bin | 95 -> 95 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon2.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon2.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon2.png) | bin | 140 -> 140 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon3.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon3.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon3.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon3.png) | bin | 269 -> 269 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00004.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00004.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00078.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00078.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00106_gdimagefilledrectangle.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00106_gdimagefilledrectangle.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilltoborder/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilltoborder/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilltoborder/bug00037.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilltoborder/bug00037.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilter/gdCopyBlurred.c | 198 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00072.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00072.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00072_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00072_exp.png) | bin | 133 -> 133 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00077.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00077.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00077_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00077_exp.png) | bin | 97 -> 97 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00111.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00111.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00111_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00111_exp.png) | bin | 79 -> 79 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdImageAALine_thickness.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdImageAALine_thickness.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdImageAALine_thickness_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdImageAALine_thickness_exp.png) | bin | 534 -> 534 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_a_0_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_a_0_exp.png) | bin | 198 -> 198 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_a_1_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_a_1_exp.png) | bin | 202 -> 202 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_b_0_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_b_0_exp.png) | bin | 343 -> 343 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_b_1_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_b_1_exp.png) | bin | 197 -> 197 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_c_0_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_c_0_exp.png) | bin | 200 -> 200 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_c_1_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_c_1_exp.png) | bin | 194 -> 194 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_d_0_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_d_0_exp.png) | bin | 200 -> 200 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_d_1_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_d_1_exp.png) | bin | 216 -> 216 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_outofrange.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_outofrange.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_bug5.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_bug5.c) | 31 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon0.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon0.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon0.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon0.png) | bin | 95 -> 95 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon1.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon1.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon1.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon1.png) | bin | 95 -> 95 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon2.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon2.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon2.png) | bin | 140 -> 140 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon3.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon3.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon3.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon3.png) | bin | 237 -> 237 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepixelate/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepixelate/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepixelate/gdimagepixelate.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepixelate/gdimagepixelate.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon0.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon0.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon0.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon0.png) | bin | 95 -> 95 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon1.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon1.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon1.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon1.png) | bin | 99 -> 99 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon2.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon2.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon2.png) | bin | 140 -> 140 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon3.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon3.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon3.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon3.png) | bin | 271 -> 271 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/bug00003.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/bug00003.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/bug00106_gdimagerectangle.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/bug00106_gdimagerectangle.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_000_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_000_exp.png) | bin | 30195 -> 30195 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_015_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_015_exp.png) | bin | 34731 -> 34731 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_030_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_030_exp.png) | bin | 36734 -> 36734 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_045_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_045_exp.png) | bin | 36631 -> 36631 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_060_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_060_exp.png) | bin | 36759 -> 36759 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_075_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_075_exp.png) | bin | 34775 -> 34775 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_090_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_090_exp.png) | bin | 30955 -> 30955 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_105_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_105_exp.png) | bin | 35010 -> 35010 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_120_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_120_exp.png) | bin | 36899 -> 36899 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_135_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_135_exp.png) | bin | 37111 -> 37111 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_150_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_150_exp.png) | bin | 36771 -> 36771 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_165_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_165_exp.png) | bin | 34593 -> 34593 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_180_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_180_exp.png) | bin | 30299 -> 30299 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898.png) | bin | 1191 -> 1191 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898_exp.png) | bin | 6363 -> 6363 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/remirh128.jpg (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/remirh128.jpg) | bin | 10619 -> 10619 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208.png) | bin | 14179 -> 14179 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_1.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_1.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_1.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_1.png) | bin | 22719 -> 22719 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_2.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_2.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_2.png) | bin | 18296 -> 18296 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagesetpixel/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagesetpixel/CMakeLists.txt) | 5 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagesetpixel/bug00186.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagesetpixel/bug00186.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringft/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringft/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringft/gdimagestringft_bbox.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringft/gdimagestringft_bbox.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringftex/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringftex/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringftex/gdimagestringftex_returnfontpathname.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringftex/gdimagestringftex_returnfontpathname.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdModesAndPalettes.c | 48 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdTrivialResize.c | 94 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdnewfilectx/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdnewfilectx/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdnewfilectx/gdnewfilectx_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdnewfilectx/gdnewfilectx_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdtest/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdtest/CMakeLists.txt) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdtest/gdtest.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdtest/gdtest.c) | 70 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdtest/gdtest.h (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdtest/gdtest.h) | 10 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdtest/test_config.h.cmake (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdtest/test_config.h.cmake) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/bug00032.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/bug00032.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/bug00032_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/bug00032_exp.png) | bin | 233 -> 233 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_0.gif (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_0.gif) | bin | 7332 -> 7332 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_1.gif (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_1.gif) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2.gif (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2.gif) | bin | 65646 -> 65646 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2_exp.png) | bin | 10515 -> 10515 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_3.gif (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_3.gif) | bin | 18276 -> 18276 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00006.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00006.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00060.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00060.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00060.gif (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00060.gif) | bin | 16821 -> 16821 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066.gif (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066.gif) | bin | 25489 -> 25489 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066_exp.png) | bin | 12247 -> 12247 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00181.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00181.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00227.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00227.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/gif_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/gif_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/gif/gif_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/gif/gif_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/conv_test.jpeg (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/conv_test.jpeg) | bin | 2317 -> 2317 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/conv_test_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/conv_test_exp.png) | bin | 39678 -> 39678 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/empty.jpeg (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/empty.jpeg) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_empty_file.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_empty_file.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_read.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_read.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_resolution.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_resolution.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00011.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00011.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00033.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00033.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00033.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00033.png) | bin | 393216 -> 393216 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00086.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00086.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_1.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_1.png) | bin | 1892 -> 1892 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_1_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_1_exp.png) | bin | 2791 -> 2791 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_2.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_2.png) | bin | 238 -> 238 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_2_exp.png (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_2_exp.png) | bin | 284 -> 284 bytes | |||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/bug00193.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/bug00193.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/emptyfile (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/emptyfile) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/png_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/png_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/png_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/png_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/png/png_resolution.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/png/png_resolution.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/test_config.h.in (renamed from Build/source/libs/gd/libgd-2.1.0/tests/test_config.h.in) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/tga/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/tga/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/tga/tga_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/tga/tga_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/tiff/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/tiff/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/tiff/tiff_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/tiff/tiff_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/tiff/tiff_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/tiff/tiff_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/wbmp/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/wbmp/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/wbmp/wbmp_im2im.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/wbmp/wbmp_im2im.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/wbmp/wbmp_null.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/wbmp/wbmp_null.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/CMakeLists.txt (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/CMakeLists.txt) | 3 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00166.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00166.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00166.xpm (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00166.xpm) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185.xpm (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185.xpm) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185_damaged.xpm (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185_damaged.xpm) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/color_name.c (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/color_name.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/tests/xpm/color_name.xpm (renamed from Build/source/libs/gd/libgd-2.1.0/tests/xpm/color_name.xpm) | 0 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd-2.1.1/thumbs.bat | 37 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd-2.1.1/thumbs.sh | 320 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/windows/Makefile.vc | 183 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/windows/libgd.rc (renamed from Build/source/libs/gd/libgd-2.1.0/windows/libgd.rc) | 0 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/windows/msys/Makefile | 143 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/windows/msys/README.MSYS.md | 65 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/windows/msys/deps.mk | 1 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd-2.1.1/windows/msys/run_tests.sh | 67 | ||||
-rw-r--r-- | Build/source/libs/gd/libgd-2.1.1/windows/readme.md | 11 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd-2.1.1/windows/run_tests.bat | 38 | ||||
-rwxr-xr-x | Build/source/libs/gd/libgd.test | 7 | ||||
-rw-r--r-- | Build/source/libs/gd/version.ac | 4 |
432 files changed, 5977 insertions, 1945 deletions
diff --git a/Build/source/libs/gd/ChangeLog b/Build/source/libs/gd/ChangeLog index 99bed33199e..71da43c53f3 100644 --- a/Build/source/libs/gd/ChangeLog +++ b/Build/source/libs/gd/ChangeLog @@ -1,3 +1,11 @@ +2015-01-14 Peter Breitenlohner <peb@mppmu.mpg.de> + + Import libgd-2.1.1. + * version.ac: Adjust. + * libgd.test (new): Shell script for a basic test. + * gdtest.c (new): Source code for test program. + * Makefile.am: Add new libgd files and test program. + 2014-06-16 Peter Breitenlohner <peb@mppmu.mpg.de> * Makefile.am: Drop the obsolete ACLOCAL_AMFLAGS. diff --git a/Build/source/libs/gd/Makefile.am b/Build/source/libs/gd/Makefile.am index b134f98fbe6..e977b3bffa7 100644 --- a/Build/source/libs/gd/Makefile.am +++ b/Build/source/libs/gd/Makefile.am @@ -1,6 +1,6 @@ ## Proxy Makefile.am to build libgd for TeX Live. ## -## Copyright (C) 2009-2014 Peter Breitenlohner <tex-live@tug.org> +## Copyright (C) 2009-2015 Peter Breitenlohner <tex-live@tug.org> ## ## This file is free software; the copyright holder ## gives unlimited permission to copy and/or distribute it, @@ -17,27 +17,6 @@ EXTRA_DIST += $(GD_TREE)-PATCHES # in case of an SVN repository dist-hook: rm -rf `find $(distdir) -name .svn -o -name .deps -o -name .dirstamp -o -name '*.$(OBJEXT)'` - rm -f $(distdir)/$(GD_TREE)/Makefile.in \ - $(distdir)/$(GD_TREE)/aclocal.m4 \ - $(distdir)/$(GD_TREE)/config/Makefile.in \ - $(distdir)/$(GD_TREE)/config/ar-lib \ - $(distdir)/$(GD_TREE)/config/compile \ - $(distdir)/$(GD_TREE)/config/config.guess \ - $(distdir)/$(GD_TREE)/config/config.rpath \ - $(distdir)/$(GD_TREE)/config/config.sub \ - $(distdir)/$(GD_TREE)/config/depcomp \ - $(distdir)/$(GD_TREE)/config/install-sh \ - $(distdir)/$(GD_TREE)/config/ltmain.sh \ - $(distdir)/$(GD_TREE)/config/missing \ - $(distdir)/$(GD_TREE)/configure \ - $(distdir)/$(GD_TREE)/m4/libtool.m4 \ - $(distdir)/$(GD_TREE)/m4/ltoptions.m4 \ - $(distdir)/$(GD_TREE)/m4/ltsugar.m4 \ - $(distdir)/$(GD_TREE)/m4/ltversion.m4 \ - $(distdir)/$(GD_TREE)/m4/lt~obsolete.m4 \ - $(distdir)/$(GD_TREE)/src/Makefile.in \ - $(distdir)/$(GD_TREE)/src/depcomp \ - $(distdir)/$(GD_TREE)/tests/Makefile.in SUBDIRS = . include @@ -57,6 +36,7 @@ libgd_a_SOURCES = \ @GD_TREE@/src/gd_color_map.c \ @GD_TREE@/src/gd_color_match.c \ @GD_TREE@/src/gd_crop.c \ + @GD_TREE@/src/gd_filename.c \ @GD_TREE@/src/gd_filter.c \ @GD_TREE@/src/gd_gd.c \ @GD_TREE@/src/gd_gd2.c \ @@ -78,6 +58,7 @@ libgd_a_SOURCES = \ @GD_TREE@/src/gd_tiff.c \ @GD_TREE@/src/gd_topal.c \ @GD_TREE@/src/gd_transform.c \ + @GD_TREE@/src/gd_version.c \ @GD_TREE@/src/gd_wbmp.c \ @GD_TREE@/src/gd_webp.c \ @GD_TREE@/src/gd_xbm.c \ @@ -98,6 +79,18 @@ libgd_a_SOURCES = \ $(libgd_a_OBJECTS): config.force +if build +check_PROGRAMS = gdtest +dist_check_SCRIPTS = libgd.test +TESTS = libgd.test +endif build + +gdtest_SOURCES = gdtest.c + +gdtest_CPPFLAGS = -Iinclude -DBGDWIN32 -DNONDLL + +LDADD = libgd.a + ## Rebuild libpng @LIBPNG_RULE@ ## Rebuild libfreetype diff --git a/Build/source/libs/gd/Makefile.in b/Build/source/libs/gd/Makefile.in index 2aea568083c..cde93275358 100644 --- a/Build/source/libs/gd/Makefile.in +++ b/Build/source/libs/gd/Makefile.in @@ -89,6 +89,7 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ @WIN32_TRUE@am__append_1 = -DNONDLL -DBGDWIN32 +@build_TRUE@check_PROGRAMS = gdtest$(EXEEXT) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/../../m4/kpse-common.m4 \ @@ -101,7 +102,8 @@ am__aclocal_m4_deps = $(top_srcdir)/../../m4/kpse-common.m4 \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ - $(am__configure_deps) $(am__DIST_COMMON) + $(am__configure_deps) $(am__dist_check_SCRIPTS_DIST) \ + $(am__DIST_COMMON) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d @@ -124,6 +126,7 @@ am_libgd_a_OBJECTS = @GD_TREE@/src/gd.$(OBJEXT) \ @GD_TREE@/src/gd_color_map.$(OBJEXT) \ @GD_TREE@/src/gd_color_match.$(OBJEXT) \ @GD_TREE@/src/gd_crop.$(OBJEXT) \ + @GD_TREE@/src/gd_filename.$(OBJEXT) \ @GD_TREE@/src/gd_filter.$(OBJEXT) \ @GD_TREE@/src/gd_gd.$(OBJEXT) @GD_TREE@/src/gd_gd2.$(OBJEXT) \ @GD_TREE@/src/gd_gif_in.$(OBJEXT) \ @@ -142,6 +145,7 @@ am_libgd_a_OBJECTS = @GD_TREE@/src/gd.$(OBJEXT) \ @GD_TREE@/src/gd_tiff.$(OBJEXT) \ @GD_TREE@/src/gd_topal.$(OBJEXT) \ @GD_TREE@/src/gd_transform.$(OBJEXT) \ + @GD_TREE@/src/gd_version.$(OBJEXT) \ @GD_TREE@/src/gd_wbmp.$(OBJEXT) \ @GD_TREE@/src/gd_webp.$(OBJEXT) @GD_TREE@/src/gd_xbm.$(OBJEXT) \ @GD_TREE@/src/gdcache.$(OBJEXT) \ @@ -155,6 +159,11 @@ am_libgd_a_OBJECTS = @GD_TREE@/src/gd.$(OBJEXT) \ @GD_TREE@/src/gdtables.$(OBJEXT) @GD_TREE@/src/gdxpm.$(OBJEXT) \ @GD_TREE@/src/wbmp.$(OBJEXT) @GD_TREE@/src/webpimg.$(OBJEXT) libgd_a_OBJECTS = $(am_libgd_a_OBJECTS) +am_gdtest_OBJECTS = gdtest-gdtest.$(OBJEXT) +gdtest_OBJECTS = $(am_gdtest_OBJECTS) +gdtest_LDADD = $(LDADD) +gdtest_DEPENDENCIES = libgd.a +am__dist_check_SCRIPTS_DIST = libgd.test AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -171,6 +180,10 @@ DEFAULT_INCLUDES = -I.@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/../../build-aux/depcomp am__depfiles_maybe = depfiles am__mv = mv -f +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) @@ -183,8 +196,8 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = -SOURCES = $(libgd_a_SOURCES) -DIST_SOURCES = $(libgd_a_SOURCES) +SOURCES = $(libgd_a_SOURCES) $(gdtest_SOURCES) +DIST_SOURCES = $(libgd_a_SOURCES) $(gdtest_SOURCES) RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \ install-data-recursive install-dvi-recursive \ @@ -205,7 +218,7 @@ am__recursive_targets = \ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - cscope distdir dist dist-all distcheck + cscope check recheck distdir dist dist-all distcheck am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ $(LISP)config.h.in # Read a list of newline-separated strings from the standard input, @@ -227,6 +240,207 @@ am__define_uniq_tagged_files = \ ETAGS = etags CTAGS = ctags CSCOPE = cscope +am__tty_colors_dummy = \ + mgn= red= grn= lgn= blu= brg= std=; \ + am__color_tests=no +am__tty_colors = { \ + $(am__tty_colors_dummy); \ + if test "X$(AM_COLOR_TESTS)" = Xno; then \ + am__color_tests=no; \ + elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ + am__color_tests=yes; \ + elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ + am__color_tests=yes; \ + fi; \ + if test $$am__color_tests = yes; then \ + red='[0;31m'; \ + grn='[0;32m'; \ + lgn='[1;32m'; \ + blu='[1;34m'; \ + mgn='[0;35m'; \ + brg='[1m'; \ + std='[m'; \ + fi; \ +} +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__recheck_rx = ^[ ]*:recheck:[ ]* +am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* +am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* +# A command that, given a newline-separated list of test names on the +# standard input, print the name of the tests that are to be re-run +# upon "make recheck". +am__list_recheck_tests = $(AWK) '{ \ + recheck = 1; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + { \ + if ((getline line2 < ($$0 ".log")) < 0) \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ + { \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ + { \ + break; \ + } \ + }; \ + if (recheck) \ + print $$0; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# A command that, given a newline-separated list of test names on the +# standard input, create the global log from their .trs and .log files. +am__create_global_log = $(AWK) ' \ +function fatal(msg) \ +{ \ + print "fatal: making $@: " msg | "cat >&2"; \ + exit 1; \ +} \ +function rst_section(header) \ +{ \ + print header; \ + len = length(header); \ + for (i = 1; i <= len; i = i + 1) \ + printf "="; \ + printf "\n\n"; \ +} \ +{ \ + copy_in_global_log = 1; \ + global_test_result = "RUN"; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".trs"); \ + if (line ~ /$(am__global_test_result_rx)/) \ + { \ + sub("$(am__global_test_result_rx)", "", line); \ + sub("[ ]*$$", "", line); \ + global_test_result = line; \ + } \ + else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ + copy_in_global_log = 0; \ + }; \ + if (copy_in_global_log) \ + { \ + rst_section(global_test_result ": " $$0); \ + while ((rc = (getline line < ($$0 ".log"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".log"); \ + print line; \ + }; \ + printf "\n"; \ + }; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# Restructured Text title. +am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } +# Solaris 10 'make', and several other traditional 'make' implementations, +# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it +# by disabling -e (using the XSI extension "set +e") if it's set. +am__sh_e_setup = case $$- in *e*) set +e;; esac +# Default flags passed to test drivers. +am__common_driver_flags = \ + --color-tests "$$am__color_tests" \ + --enable-hard-errors "$$am__enable_hard_errors" \ + --expect-failure "$$am__expect_failure" +# To be inserted before the command running the test. Creates the +# directory for the log if needed. Stores in $dir the directory +# containing $f, in $tst the test, in $log the log. Executes the +# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and +# passes TESTS_ENVIRONMENT. Set up options for the wrapper that +# will run the test scripts (or their associated LOG_COMPILER, if +# thy have one). +am__check_pre = \ +$(am__sh_e_setup); \ +$(am__vpath_adj_setup) $(am__vpath_adj) \ +$(am__tty_colors); \ +srcdir=$(srcdir); export srcdir; \ +case "$@" in \ + */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ + *) am__odir=.;; \ +esac; \ +test "x$$am__odir" = x"." || test -d "$$am__odir" \ + || $(MKDIR_P) "$$am__odir" || exit $$?; \ +if test -f "./$$f"; then dir=./; \ +elif test -f "$$f"; then dir=; \ +else dir="$(srcdir)/"; fi; \ +tst=$$dir$$f; log='$@'; \ +if test -n '$(DISABLE_HARD_ERRORS)'; then \ + am__enable_hard_errors=no; \ +else \ + am__enable_hard_errors=yes; \ +fi; \ +case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ + am__expect_failure=yes;; \ + *) \ + am__expect_failure=no;; \ +esac; \ +$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) +# A shell command to get the names of the tests scripts with any registered +# extension removed (i.e., equivalently, the names of the test logs, with +# the '.log' extension removed). The result is saved in the shell variable +# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, +# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", +# since that might cause problem with VPATH rewrites for suffix-less tests. +# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. +am__set_TESTS_bases = \ + bases='$(TEST_LOGS)'; \ + bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ + bases=`echo $$bases` +RECHECK_LOGS = $(TEST_LOGS) +TEST_SUITE_LOG = test-suite.log +TEST_EXTENSIONS = @EXEEXT@ .test +am__test_logs1 = $(TESTS:=.log) +am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) +TEST_LOGS = $(am__test_logs2:.test.log=.log) +TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/../../build-aux/test-driver +TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ + $(TEST_LOG_FLAGS) +am__set_b = \ + case '$@' in \ + */*) \ + case '$*' in \ + */*) b='$*';; \ + *) b=`echo '$@' | sed 's/\.log$$//'`; \ + esac;; \ + *) \ + b='$*';; \ + esac DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/../../am/rebuild.am \ $(srcdir)/../../am/reconfig.am $(srcdir)/Makefile.in \ @@ -235,12 +449,13 @@ am__DIST_COMMON = $(srcdir)/../../am/rebuild.am \ $(top_srcdir)/../../build-aux/config.sub \ $(top_srcdir)/../../build-aux/depcomp \ $(top_srcdir)/../../build-aux/install-sh \ - $(top_srcdir)/../../build-aux/missing ../../build-aux/compile \ - ../../build-aux/config.guess ../../build-aux/config.sub \ - ../../build-aux/depcomp ../../build-aux/install-sh \ - ../../build-aux/ltmain.sh ../../build-aux/missing \ - ../../build-aux/texinfo.tex ../../build-aux/ylwrap ChangeLog \ - README + $(top_srcdir)/../../build-aux/missing \ + $(top_srcdir)/../../build-aux/test-driver \ + ../../build-aux/compile ../../build-aux/config.guess \ + ../../build-aux/config.sub ../../build-aux/depcomp \ + ../../build-aux/install-sh ../../build-aux/ltmain.sh \ + ../../build-aux/missing ../../build-aux/texinfo.tex \ + ../../build-aux/ylwrap ChangeLog README DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -407,6 +622,7 @@ libgd_a_SOURCES = \ @GD_TREE@/src/gd_color_map.c \ @GD_TREE@/src/gd_color_match.c \ @GD_TREE@/src/gd_crop.c \ + @GD_TREE@/src/gd_filename.c \ @GD_TREE@/src/gd_filter.c \ @GD_TREE@/src/gd_gd.c \ @GD_TREE@/src/gd_gd2.c \ @@ -428,6 +644,7 @@ libgd_a_SOURCES = \ @GD_TREE@/src/gd_tiff.c \ @GD_TREE@/src/gd_topal.c \ @GD_TREE@/src/gd_transform.c \ + @GD_TREE@/src/gd_version.c \ @GD_TREE@/src/gd_wbmp.c \ @GD_TREE@/src/gd_webp.c \ @GD_TREE@/src/gd_xbm.c \ @@ -446,6 +663,11 @@ libgd_a_SOURCES = \ @GD_TREE@/src/wbmp.c \ @GD_TREE@/src/webpimg.c +@build_TRUE@dist_check_SCRIPTS = libgd.test +@build_TRUE@TESTS = libgd.test +gdtest_SOURCES = gdtest.c +gdtest_CPPFLAGS = -Iinclude -DBGDWIN32 -DNONDLL +LDADD = libgd.a # Reconfig reconfig_prereq = $(LIBPNG_DEPEND) $(FREETYPE2_DEPEND) @@ -459,7 +681,7 @@ all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: -.SUFFIXES: .c .o .obj +.SUFFIXES: .c .log .o .obj .test .test$(EXEEXT) .trs am--refresh: Makefile @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/../../am/reconfig.am $(srcdir)/../../am/rebuild.am $(am__configure_deps) @@ -530,6 +752,8 @@ clean-noinstLIBRARIES: @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) @GD_TREE@/src/gd_crop.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) +@GD_TREE@/src/gd_filename.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ + @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) @GD_TREE@/src/gd_filter.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) @GD_TREE@/src/gd_gd.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ @@ -573,6 +797,8 @@ clean-noinstLIBRARIES: @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) @GD_TREE@/src/gd_transform.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) +@GD_TREE@/src/gd_version.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ + @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) @GD_TREE@/src/gd_wbmp.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ @GD_TREE@/src/$(DEPDIR)/$(am__dirstamp) @GD_TREE@/src/gd_webp.$(OBJEXT): @GD_TREE@/src/$(am__dirstamp) \ @@ -613,6 +839,13 @@ libgd.a: $(libgd_a_OBJECTS) $(libgd_a_DEPENDENCIES) $(EXTRA_libgd_a_DEPENDENCIES $(AM_V_AR)$(libgd_a_AR) libgd.a $(libgd_a_OBJECTS) $(libgd_a_LIBADD) $(AM_V_at)$(RANLIB) libgd.a +clean-checkPROGRAMS: + -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) + +gdtest$(EXEEXT): $(gdtest_OBJECTS) $(gdtest_DEPENDENCIES) $(EXTRA_gdtest_DEPENDENCIES) + @rm -f gdtest$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(gdtest_OBJECTS) $(gdtest_LDADD) $(LIBS) + mostlyclean-compile: -rm -f *.$(OBJEXT) -rm -f @GD_TREE@/src/*.$(OBJEXT) @@ -620,12 +853,14 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gdtest-gdtest.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_bmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_color.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_color_map.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_color_match.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_crop.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_filename.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_filter.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_gd.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_gd2.Po@am__quote@ @@ -647,6 +882,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_tiff.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_topal.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_transform.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_version.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_wbmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_webp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@@GD_TREE@/src/$(DEPDIR)/gd_xbm.Po@am__quote@ @@ -681,6 +917,20 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` +gdtest-gdtest.o: gdtest.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdtest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gdtest-gdtest.o -MD -MP -MF $(DEPDIR)/gdtest-gdtest.Tpo -c -o gdtest-gdtest.o `test -f 'gdtest.c' || echo '$(srcdir)/'`gdtest.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gdtest-gdtest.Tpo $(DEPDIR)/gdtest-gdtest.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdtest.c' object='gdtest-gdtest.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdtest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gdtest-gdtest.o `test -f 'gdtest.c' || echo '$(srcdir)/'`gdtest.c + +gdtest-gdtest.obj: gdtest.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdtest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gdtest-gdtest.obj -MD -MP -MF $(DEPDIR)/gdtest-gdtest.Tpo -c -o gdtest-gdtest.obj `if test -f 'gdtest.c'; then $(CYGPATH_W) 'gdtest.c'; else $(CYGPATH_W) '$(srcdir)/gdtest.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gdtest-gdtest.Tpo $(DEPDIR)/gdtest-gdtest.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdtest.c' object='gdtest-gdtest.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdtest_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gdtest-gdtest.obj `if test -f 'gdtest.c'; then $(CYGPATH_W) 'gdtest.c'; else $(CYGPATH_W) '$(srcdir)/gdtest.c'; fi` + # This directory's subdirectories are mostly independent; you can cd # into them and run 'make' without going through this Makefile. # To change the values of 'make' variables: instead of editing Makefiles, @@ -787,6 +1037,162 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files +# Recover from deleted '.trs' file; this should ensure that +# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create +# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells +# to avoid problems with "make -n". +.log.trs: + rm -f $< $@ + $(MAKE) $(AM_MAKEFLAGS) $< + +# Leading 'am--fnord' is there to ensure the list of targets does not +# expand to empty, as could happen e.g. with make check TESTS=''. +am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) +am--force-recheck: + @: + +$(TEST_SUITE_LOG): $(TEST_LOGS) + @$(am__set_TESTS_bases); \ + am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ + redo_bases=`for i in $$bases; do \ + am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ + done`; \ + if test -n "$$redo_bases"; then \ + redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ + redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ + if $(am__make_dryrun); then :; else \ + rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ + fi; \ + fi; \ + if test -n "$$am__remaking_logs"; then \ + echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ + "recursion detected" >&2; \ + elif test -n "$$redo_logs"; then \ + am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ + fi; \ + if $(am__make_dryrun); then :; else \ + st=0; \ + errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ + for i in $$redo_bases; do \ + test -f $$i.trs && test -r $$i.trs \ + || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ + test -f $$i.log && test -r $$i.log \ + || { echo "$$errmsg $$i.log" >&2; st=1; }; \ + done; \ + test $$st -eq 0 || exit 1; \ + fi + @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ + ws='[ ]'; \ + results=`for b in $$bases; do echo $$b.trs; done`; \ + test -n "$$results" || results=/dev/null; \ + all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ + pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ + fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ + skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ + xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ + xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ + error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ + if test `expr $$fail + $$xpass + $$error` -eq 0; then \ + success=true; \ + else \ + success=false; \ + fi; \ + br='==================='; br=$$br$$br$$br$$br; \ + result_count () \ + { \ + if test x"$$1" = x"--maybe-color"; then \ + maybe_colorize=yes; \ + elif test x"$$1" = x"--no-color"; then \ + maybe_colorize=no; \ + else \ + echo "$@: invalid 'result_count' usage" >&2; exit 4; \ + fi; \ + shift; \ + desc=$$1 count=$$2; \ + if test $$maybe_colorize = yes && test $$count -gt 0; then \ + color_start=$$3 color_end=$$std; \ + else \ + color_start= color_end=; \ + fi; \ + echo "$${color_start}# $$desc $$count$${color_end}"; \ + }; \ + create_testsuite_report () \ + { \ + result_count $$1 "TOTAL:" $$all "$$brg"; \ + result_count $$1 "PASS: " $$pass "$$grn"; \ + result_count $$1 "SKIP: " $$skip "$$blu"; \ + result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ + result_count $$1 "FAIL: " $$fail "$$red"; \ + result_count $$1 "XPASS:" $$xpass "$$red"; \ + result_count $$1 "ERROR:" $$error "$$mgn"; \ + }; \ + { \ + echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ + $(am__rst_title); \ + create_testsuite_report --no-color; \ + echo; \ + echo ".. contents:: :depth: 2"; \ + echo; \ + for b in $$bases; do echo $$b; done \ + | $(am__create_global_log); \ + } >$(TEST_SUITE_LOG).tmp || exit 1; \ + mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ + if $$success; then \ + col="$$grn"; \ + else \ + col="$$red"; \ + test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ + fi; \ + echo "$${col}$$br$${std}"; \ + echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ + echo "$${col}$$br$${std}"; \ + create_testsuite_report --maybe-color; \ + echo "$$col$$br$$std"; \ + if $$success; then :; else \ + echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ + if test -n "$(PACKAGE_BUGREPORT)"; then \ + echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ + fi; \ + echo "$$col$$br$$std"; \ + fi; \ + $$success || exit 1 + +check-TESTS: + @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list + @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + trs_list=`for i in $$bases; do echo $$i.trs; done`; \ + log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ + exit $$?; +recheck: all $(check_PROGRAMS) $(dist_check_SCRIPTS) + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + bases=`for i in $$bases; do echo $$i; done \ + | $(am__list_recheck_tests)` || exit 1; \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + log_list=`echo $$log_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ + am__force_recheck=am--force-recheck \ + TEST_LOGS="$$log_list"; \ + exit $$? +.test.log: + @p='$<'; \ + $(am__set_b); \ + $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +@am__EXEEXT_TRUE@.test$(EXEEXT).log: +@am__EXEEXT_TRUE@ @p='$<'; \ +@am__EXEEXT_TRUE@ $(am__set_b); \ +@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ +@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ +@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ +@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) + distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @@ -979,6 +1385,9 @@ distcleancheck: distclean $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) \ + $(dist_check_SCRIPTS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-recursive all-am: Makefile $(LIBRARIES) config.h installdirs: installdirs-recursive @@ -1003,6 +1412,9 @@ install-strip: "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: + -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) + -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) + -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) @@ -1019,11 +1431,12 @@ maintainer-clean-generic: @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive -clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am +clean-am: clean-checkPROGRAMS clean-generic clean-noinstLIBRARIES \ + mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf @GD_TREE@/src/$(DEPDIR) + -rm -rf ./$(DEPDIR) @GD_TREE@/src/$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-hdr distclean-tags @@ -1071,7 +1484,7 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache - -rm -rf @GD_TREE@/src/$(DEPDIR) + -rm -rf ./$(DEPDIR) @GD_TREE@/src/$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -1089,10 +1502,11 @@ ps-am: uninstall-am: -.MAKE: $(am__recursive_targets) all install-am install-strip +.MAKE: $(am__recursive_targets) all check-am install-am install-strip .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ - am--refresh check check-am clean clean-cscope clean-generic \ + am--refresh check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-cscope clean-generic \ clean-noinstLIBRARIES cscope cscopelist-am ctags ctags-am dist \ dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \ dist-tarZ dist-xz dist-zip distcheck distclean \ @@ -1106,7 +1520,7 @@ uninstall-am: installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \ - tags tags-am uninstall uninstall-am + recheck tags tags-am uninstall uninstall-am .PRECIOUS: Makefile @@ -1114,27 +1528,6 @@ uninstall-am: # in case of an SVN repository dist-hook: rm -rf `find $(distdir) -name .svn -o -name .deps -o -name .dirstamp -o -name '*.$(OBJEXT)'` - rm -f $(distdir)/$(GD_TREE)/Makefile.in \ - $(distdir)/$(GD_TREE)/aclocal.m4 \ - $(distdir)/$(GD_TREE)/config/Makefile.in \ - $(distdir)/$(GD_TREE)/config/ar-lib \ - $(distdir)/$(GD_TREE)/config/compile \ - $(distdir)/$(GD_TREE)/config/config.guess \ - $(distdir)/$(GD_TREE)/config/config.rpath \ - $(distdir)/$(GD_TREE)/config/config.sub \ - $(distdir)/$(GD_TREE)/config/depcomp \ - $(distdir)/$(GD_TREE)/config/install-sh \ - $(distdir)/$(GD_TREE)/config/ltmain.sh \ - $(distdir)/$(GD_TREE)/config/missing \ - $(distdir)/$(GD_TREE)/configure \ - $(distdir)/$(GD_TREE)/m4/libtool.m4 \ - $(distdir)/$(GD_TREE)/m4/ltoptions.m4 \ - $(distdir)/$(GD_TREE)/m4/ltsugar.m4 \ - $(distdir)/$(GD_TREE)/m4/ltversion.m4 \ - $(distdir)/$(GD_TREE)/m4/lt~obsolete.m4 \ - $(distdir)/$(GD_TREE)/src/Makefile.in \ - $(distdir)/$(GD_TREE)/src/depcomp \ - $(distdir)/$(GD_TREE)/tests/Makefile.in $(libgd_a_OBJECTS): config.force diff --git a/Build/source/libs/gd/configure b/Build/source/libs/gd/configure index 4fecbd2365b..9e1b0b306f1 100755 --- a/Build/source/libs/gd/configure +++ b/Build/source/libs/gd/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for gd (TeX Live) 2.1.0. +# Generated by GNU Autoconf 2.69 for gd (TeX Live) 2.1.1. # # Report bugs to <tex-k@tug.org>. # @@ -580,12 +580,12 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='gd (TeX Live)' PACKAGE_TARNAME='gd--tex-live-' -PACKAGE_VERSION='2.1.0' -PACKAGE_STRING='gd (TeX Live) 2.1.0' +PACKAGE_VERSION='2.1.1' +PACKAGE_STRING='gd (TeX Live) 2.1.1' PACKAGE_BUGREPORT='tex-k@tug.org' PACKAGE_URL='' -ac_unique_file="libgd-2.1.0/src/gd.c" +ac_unique_file="libgd-2.1.1/src/gd.c" # Factoring default headers for most tests. ac_includes_default="\ #include <stdio.h> @@ -1306,7 +1306,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures gd (TeX Live) 2.1.0 to adapt to many kinds of systems. +\`configure' configures gd (TeX Live) 2.1.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1376,7 +1376,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of gd (TeX Live) 2.1.0:";; + short | recursive ) echo "Configuration of gd (TeX Live) 2.1.1:";; esac cat <<\_ACEOF @@ -1485,7 +1485,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -gd (TeX Live) configure 2.1.0 +gd (TeX Live) configure 2.1.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1908,7 +1908,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by gd (TeX Live) $as_me 2.1.0, which was +It was created by gd (TeX Live) $as_me 2.1.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3831,7 +3831,7 @@ fi # Define the identity of the package. PACKAGE='gd--tex-live-' - VERSION='2.1.0' + VERSION='2.1.1' cat >>confdefs.h <<_ACEOF @@ -5961,7 +5961,7 @@ $as_echo "#define HAVE_LIBFREETYPE 1" >>confdefs.h $as_echo "#define HAVE_FT2BUILD_H 1" >>confdefs.h -GD_TREE=libgd-2.1.0 +GD_TREE=libgd-2.1.1 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for native WIN32 or MINGW32" >&5 @@ -6569,7 +6569,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by gd (TeX Live) $as_me 2.1.0, which was +This file was extended by gd (TeX Live) $as_me 2.1.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -6635,7 +6635,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -gd (TeX Live) config.status 2.1.0 +gd (TeX Live) config.status 2.1.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/Build/source/libs/gd/gdtest.c b/Build/source/libs/gd/gdtest.c new file mode 100644 index 00000000000..0a02df04801 --- /dev/null +++ b/Build/source/libs/gd/gdtest.c @@ -0,0 +1,15 @@ +/* pixtest.c: Basic test for libpixman + * + * Copyright (C) 2013 Peter Breitenlohner <tex-live@tug.org> + * You may freely use, modify and/or distribute this file. + */ + +#include <stdio.h> +#include <gd.h> + +int main (int argc, char **argv) +{ + printf ("%s: Compiled with libgd version %s; using %s\n", + argv[0], GD_VERSION_STRING, gdVersionString ()); + return 0; +} diff --git a/Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-02-no-stdcall b/Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-02-no-stdcall deleted file mode 100644 index ec0a7305484..00000000000 --- a/Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-02-no-stdcall +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur libgd-2.1.0.orig/src/gd.h libgd-2.1.0/src/gd.h ---- libgd-2.1.0.orig/src/gd.h 2013-06-25 11:58:23.000000000 +0200 -+++ libgd-2.1.0/src/gd.h 2013-06-26 13:53:36.000000000 +0200 -@@ -44,7 +44,7 @@ - # define BGD_EXPORT_DATA_PROT __declspec(dllimport) - # endif - # endif --# define BGD_STDCALL __stdcall -+# define BGD_STDCALL - # define BGD_EXPORT_DATA_IMPL - #else - # ifdef HAVE_VISIBILITY diff --git a/Build/source/libs/gd/libgd-2.1.0/ChangeLog b/Build/source/libs/gd/libgd-2.1.0/ChangeLog deleted file mode 100644 index 18f133911ac..00000000000 --- a/Build/source/libs/gd/libgd-2.1.0/ChangeLog +++ /dev/null @@ -1,1169 +0,0 @@ -2007-04-09 18:21 pajoye - - * NEWS: - #72 entry - -2007-04-09 18:18 pajoye - - * gd.c, tests/gdimageline/bug00072.c, - tests/gdimageline/bug00072_exp.png: - #72, gdImageAALine draws - axis aligned lines two pixels large . add gdImageVLine and - HLine, not exported (will be 2.1.0) - -2007-04-09 16:00 pajoye - - * tests/: gdimageline/gdimageline_aa.c, gdtest/gdtest.c, - gif/bug00005.c: - always store image diff files in the build dir - - store the output result as well - remove c++ comment - be more - verbose in the error messages - -2007-04-04 14:04 pajoye - - * tests/gif/: CMakeLists.txt, bug00060.c, bug00066.c, bug00066.gif, - bug00066_exp.png: - add test for #66 - fix leak in test #60 - -2007-04-04 13:38 pajoye - - * NEWS: - #70 entry - -2007-04-04 13:33 pajoye - - * gd_gif_in.c: - #70, do not try to use the global color map if - none exists - free im on error - -2007-04-03 19:03 pajoye - - * NEWS: - update NEWS entries for the last commits - -2007-04-03 18:38 pajoye - - * gdft.c: - we already lock it earlier, prevent deadlock/double - lock - -2007-04-01 22:41 pajoye - - * gd.c, gd_png.c, gdft.c: - #67, Preferable calls of gdFree() in - libg (tabe at fixedpoint dot jp) - -2007-04-01 22:12 pajoye - - * tests/gdtest/test_config.h.cmake: - add configuration file - -2007-04-01 21:54 pajoye - - * gd_gif_in.c: - #52, #60, #66 - a frame size must be confined to - the screen defition - consider 00005_2 as invalid (65k x - 65k frame size for a 400x312 screen) - be sure to always - read the dimensions in the frame and does not use the screen - size (see #66 for a side effect) - -2007-04-01 21:48 pajoye - - * tests/: gd2/gd2_empty_file.c, gd2/gd2_read.c, - gdimagecopyrotated/bug00020.c, gdimagefill/bug00002_1.c, - gdimagefill/bug00002_2.c, gdimagefill/bug00002_3.c, - gdimagefill/bug00002_4.c, gdimagefilledellipse/bug00010.c, - gdimageline/gdimageline_aa.c, gdtest/CMakeLists.txt, - gdtest/gdtest.c, gif/CMakeLists.txt, gif/bug00005.c, - gif/bug00060.c, gif/bug00060.gif, jpeg/jpeg_empty_file.c, - jpeg/jpeg_read.c, png/bug00011.c, png/bug00033.c: - allow tests - to be launched outside the src tree - #60, add test case for #60 - -2007-03-31 19:24 pajoye - - * entities.h: - update from entities.tcl - -2007-03-31 16:26 pajoye - - * gd_gif_in.c: - #52, #60 - local Pallette are read twice - Use - the local dimension when available - Rely on the global - dimension when the local dimension are invalid and the format - is GIF87 (no animation) NB: The #52 TS patch must be applied - first - -2007-03-15 23:25 nlopess - - * tests/gif/bug00005_2.c: MFB: fix leak in test - -2007-03-15 23:23 nlopess - - * tests/gif/bug00005_2.c: fix leak in test - -2007-03-12 17:05 pajoye - - * CMakeLists.txt: -MFB: - generate config.h in the BUIL_DIR - instead of the SOURCE_DIR - drop old commented lines - -2007-03-12 17:01 pajoye - - * CMakeLists.txt: - generate config.h in the BUIL_DIR instead of - the SOURCE_DIR - drop old commented lines - -2007-03-08 21:02 nlopess - - * gd_gif_in.c: MFB: fix bug #52: Reading GIF images is not thread - safe (static usage in private functions) - -2007-03-08 20:59 nlopess - - * NEWS: fix news, sorry - -2007-03-08 20:56 nlopess - - * NEWS, gd_gif_in.c: fix bug #52: Reading GIF images is not thread - safe (static usage in private functions) - -2007-03-08 20:52 pajoye - - * ISSUES: - we use NEWS now - -2007-03-07 20:30 nlopess - - * CMakeLists.txt: set HAVE_FT2BUILD_H when ft2build.h file is found - -2007-03-07 16:53 pajoye - - * CMakeLists.txt: - fix windows cmake support - use BGDWIN32 for - now, static build and other windows options will follow shortly - -2007-03-07 16:52 pajoye - - * cmake/modules/FindFreetype.cmake: - windows may have - freetype2.lib - -2007-03-05 16:42 pajoye - - * Makefile.am, NEWS, windows/Makefile: - #51 - revert Ilia's patch - (was not required) - Remove strlcpy, we don't need it now (I - keep it in cvs just in case but it will not be distributed or - used in the binaries) - -2007-03-02 23:02 nlopess - - * gd_gif_in.c: MFB - -2007-03-02 22:59 nlopess - - * cmake/modules/FindPTHREAD.cmake: fix pthread support in cmake - toolchain - -2007-03-02 22:59 nlopess - - * gd_gif_in.c: merge with php tree: fix access to unitialized - memory (introduced with the strlcpy usage) # now gd_strlcpy() - becomes useless again :P - -2007-03-02 15:36 edink - - * windows/Makefile: Add new file compilation - -2007-02-27 21:32 pajoye - - * windows/Makefile: - MFH: fix new lines, vc7 does not like - makefile with both unix and windows line ending - -2007-02-27 21:32 pajoye - - * windows/Makefile: - fix new lines, vc7 does not like makefile - with both unix and windows line ending - -2007-02-27 01:38 pajoye - - * NEWS: - andersrum.. - -2007-02-27 00:55 pajoye - - * ChangeLog: - update Changelog - -2007-02-27 00:55 pajoye - - * NEWS: - update NEWS for 2.0.35RC1 - -2007-02-27 00:46 pajoye - - * gd.c: - #41, fix possible overrun (detected with valgrind) (Nuno - Lopes) - -2007-02-27 00:39 pajoye - - * CMakeLists.txt, Makefile.am, gd.h, gd_gif_in.c, strlcpy.c: - #51, - Use strlcpy instead of strncpy in gd_gif_c - fix off-by-one - -2007-02-26 20:59 pajoye - - * gdft.c: - #48, Race condition in gdImageStringFTEx It is safe - to destroy a unlocked mutex, not a locked one (Nuno Lopes) - -2007-02-26 20:58 pajoye - - * gdft.c: - #48, Race condition in gdImageStringFTEx it is safe - to destroy an unlocked mutex, not a locked one (Nuno Lopes) - -2007-02-26 20:30 pajoye - - * gdft.c: - MFB: #48, Race condition in gdImageStringFTEx (cache) - -2007-02-26 20:30 pajoye - - * gdft.c: - #48, Race condition in gdImageStringFTEx (cache) - -2007-02-07 01:32 pajoye - - * ChangeLog: - sync - -2007-02-07 01:27 pajoye - - * NEWS: - add CVE ref. - -2007-02-07 01:26 pajoye - - * ChangeLog: - sync changelog - -2007-02-07 01:26 pajoye - - * gd.h: - go for 2.0.34 - -2007-02-07 01:24 pajoye - - * gd.c: - MFB: ansi/windows build fix, all declarations must be on - top (Edin) - -2007-02-07 01:21 pajoye - - * gd.c: - ansi/windows build fix, all declarations must be on top - (Edin) - -2007-02-07 01:14 pajoye - - * NEWS: - #40 - -2007-02-07 01:12 pajoye - - * gdft.c: - #40 — possible Buffer overflow in the - gdImageStringFTEx function in gdft.c (patch by Kees Kook) - -2007-02-06 23:29 pajoye - - * windows/libgd.rc: - update dll rc - -2007-02-06 23:24 pajoye - - * ChangeLog: - sync Changelog - -2007-02-03 02:34 pajoye - - * NEWS: - updates - -2007-02-03 02:18 pajoye - - * ChangeLog: - update changelog - -2007-02-03 02:16 pajoye - - * Makefile.am, configure.ac: - MFB: #31 — Shared library support - on cygwin (Dr. Volker Zell) - -2007-02-03 02:15 pajoye - - * Makefile.am, configure.ac: - #31 Shared library support on cygwin - (Dr. Volker Zell) - -2007-02-03 02:11 pajoye - - * gd.h, gdft.c, index.html: - MFB: #30, restores the ability to - recognize and handle a font with Adobe-specific character - encoding - -2007-02-03 02:03 pajoye - - * gd.c: - MFB: #14, sanity check - -2007-02-03 02:00 pajoye - - * gd.c: - #14, sanity check - -2007-02-01 12:01 pajoye - - * gdft.c: - #30, do not extend sign (restores the ability to - recognize and handle a font with Adobe-specific character - encoding (Adobe custom) ). - -2007-02-01 00:31 pajoye - - * gd.h, gdft.c, index.html: - #30, restores the ability to - recognize and handle a font with Adobe-specific character - encoding (Adobe custom) - Fix proto in index.html - -2007-01-30 10:11 pajoye - - * NEWS: - 2.0.34RC1 news - -2007-01-29 23:22 pajoye - - * ChangeLog: - update - -2007-01-29 22:56 pajoye - - * gd.c: - #32, Pattern-fill works incorrectly if tile is created - via gdImageCreateTruecolor (Ethan Merritt) - -2007-01-29 22:11 pajoye - - * ChangeLog: - update changelog - -2007-01-29 22:07 pajoye - - * COPYING, index.html: - update years and (c) - -2007-01-25 01:08 pajoye - - * cmake/modules/: FindFontconfig.cmake, FindFreetype.cmake, - FindGD.cmake, FindPNG.cmake, FindPTHREAD.cmake, FindXPM.cmake: - - add lib64 tests (Chritian Rodriguez) - -2007-01-25 00:06 pajoye - - * tests/gif/bug00005.c: - remove version checks - -2007-01-24 23:32 pajoye - - * config.h.cmake: - config.h.in for cmake - -2007-01-24 23:20 pajoye - - * cmake/modules/: AC_HEADER_STDC.cmake, CheckDIRSymbolExists.cmake, - CheckPrototypeExists.cmake, FindFontconfig.cmake, - FindFreetype.cmake, FindGD.cmake, FindPNG.cmake, - FindPTHREAD.cmake, FindXPM.cmake, TestForHighBitCharacters.c, - TestForHighBitCharacters.cmake, TestForStandardHeaderwait.cmake, - gd.cmake: - add missing cmake macros/modules - -2007-01-24 01:36 pajoye - - * README.TESTING: - WS - -2007-01-24 00:57 pajoye - - * tests/: gd2/CMakeLists.txt, gd2/conv_gd2_exp.gd2, - gd2/conv_test.gd2, gd2/conv_test_exp.png, gd2/empty.gd2, - gd2/gd2_empty_file.c, gd2/gd2_read.c, - gdimagecolorclosest/CMakeLists.txt, - gdimagecolorclosest/gdimagecolorclosest.c, - gdimagecolorexact/CMakeLists.txt, - gdimagecolorexact/gdimagecolorexact.c, - gdimagecolorresolve/CMakeLists.txt, - gdimagecolorresolve/gdimagecolorresolve.c, - gdimagecopy/CMakeLists.txt, gdimagecopy/bug00007.c, - gdimagecopyrotated/CMakeLists.txt, gdimagecopyrotated/bug00020.c, - gdimagecopyrotated/bug00020_exp.png, gdimagefill/CMakeLists.txt, - gdimagefill/bug00002_1.c, gdimagefill/bug00002_1_exp.png, - gdimagefill/bug00002_2.c, gdimagefill/bug00002_2_exp.png, - gdimagefill/bug00002_3.c, gdimagefill/bug00002_3_exp.png, - gdimagefill/bug00002_4.c, gdimagefill/bug00002_4_exp.png, - gdimagefilledellipse/CMakeLists.txt, - gdimagefilledellipse/bug00010.c, - gdimagefilledellipse/bug00010_exp.png, - gdimagefilledrectangle/CMakeLists.txt, - gdimagefilledrectangle/bug00004.c, - gdimagefilltoborder/CMakeLists.txt, - gdimagefilltoborder/bug00037.c, gdimageline/CMakeLists.txt, - gdimageline/gdimageline_aa.c, - gdimageline/gdimageline_aa_a_0_exp.png, - gdimageline/gdimageline_aa_a_1_exp.png, - gdimageline/gdimageline_aa_b_0_exp.png, - gdimageline/gdimageline_aa_b_1_exp.png, - gdimageline/gdimageline_aa_c_0_exp.png, - gdimageline/gdimageline_aa_c_1_exp.png, - gdimageline/gdimageline_aa_d_0_exp.png, - gdimageline/gdimageline_aa_d_1_exp.png, - gdimageline/gdimageline_aa_outofrange.c, - gdimagerectangle/CMakeLists.txt, gdimagerectangle/bug00003.c, - gdtest/CMakeLists.txt, gdtest/gdtest.c, gdtest/gdtest.h, - gdtiled/CMakeLists.txt, gdtiled/bug00032.c, - gdtiled/bug00032_exp.png, gif/CMakeLists.txt, gif/bug00005.c, - gif/bug00005_0.gif, gif/bug00005_1.gif, gif/bug00005_2.c, - gif/bug00005_2.gif, gif/bug00005_2_exp.png, gif/bug00005_3.gif, - gif/bug00006.c, jpeg/CMakeLists.txt, jpeg/conv_test.jpeg, - jpeg/conv_test_exp.png, jpeg/empty.jpeg, jpeg/jpeg_empty_file.c, - jpeg/jpeg_read.c, png/CMakeLists.txt, png/bug00011.c, - png/bug00033.c, png/bug00033.png, png/emptyfile: - initial commit - of the GD test suites See README.TESTING for more details or - how to run it - -2007-01-24 00:55 pajoye - - * tests/CMakeLists.txt: - initial commit of the GD test suites - See README.TESTING for more details or how to ru - -2007-01-24 00:54 pajoye - - * CMakeLists.txt, README.TESTING: - initial commit of the GD test - suites See README.TESTING for more details or how to run it - -2007-01-24 00:45 pajoye - - * tests/: README, bug00001.c, bug00002_1.c, bug00002_2.c, - bug00002_3.c, bug00003.c, bug00004.c, bug00005.c, bug00005_1.gif, - bug00005_2.gif, bug00005_3.gif, bug00007.c, bug00008.c, - bug00010.c, bug00011.c, emptyfile: - remove temporary tests - before adding the tests suite - -2007-01-20 03:09 pajoye - - * gd.c: - #4, gdImageFill rewrite fix, small images (< 4 pixels) - crash - -2007-01-20 03:02 pajoye - - * gd.c: #37, gdImageFillToBorder crashes when used with alpha - -2007-01-12 14:02 pajoye - - * gd.h: - prepare snap - -2007-01-12 14:00 pajoye - - * circletexttest.c: - double config.h include removed (Edin) - -2007-01-11 21:58 pajoye - - * gd_gif_in.c: - #7, part of the patch required for - http://bugs.php.net/bug.php?id=33220 was missing. Thanks to - Nuno Lopes for the head up - -2007-01-11 03:24 pajoye - - * gdcache.c: #14, another sanity check (catched by Takeshi - (tabe[at]fixedpoint[dot]jp)) - -2007-01-09 17:08 pajoye - - * ChangeLog: - update - -2007-01-07 19:18 pajoye - - * gd_png.c: - #32, malformed PNG image crashes (CRC error) test - is following - -2007-01-06 14:48 pajoye - - * configure.ac: - older versions of auto* need quotes here - -2007-01-05 05:11 pajoye - - * gd.c: - add sanity checks for alloc error in gdImageFill - -2007-01-05 05:03 pajoye - - * tests/bug00002_3.c: - #2, #32, add transparent color to each - image (see #32) - -2007-01-05 03:41 pajoye - - * tests/bug00002_3.c: - add a test to conver the case described in - issue #32 when a tile is a truecolor image, background of tiled - region is painted black rather than transparent - -2007-01-04 15:27 pajoye - - * README.TXT: - add bootstrap.sh note - -2007-01-04 15:25 pajoye - - * COPYING: - add myself - -2007-01-04 15:23 pajoye - - * makefile.sample: - remove outdated makefile.sample - -2007-01-04 15:21 pajoye - - * index.html: - changelog, issues and the release announcements - will be used from now on - -2007-01-04 15:10 pajoye - - * configure.ac, index.html: - update version nr - update links - - update bug report link - -2007-01-04 14:45 pajoye - - * ISSUES: - windows build support entry (Edin) - -2007-01-04 14:23 pajoye - - * ChangeLog: - update it - -2007-01-04 13:52 pajoye - - * gdfx.c: - New line at the end of the file - -2007-01-04 13:49 pajoye - - * gd_topal.c: #14, set fserror after the check - -2007-01-04 13:44 pajoye - - * ISSUES, gd_gif_out.c: - #14, sanity check in gd_gif_out - -2007-01-04 13:40 pajoye - - * gd_gd2.c: - #14, one more sanity check in gd_gd2 - -2007-01-04 13:36 pajoye - - * ISSUES, gd.c: - #14, sanity check for memory alloc error in - gdImageCreateTrueColor - -2007-01-04 13:05 pajoye - - * README.TXT, configure.pl: - rm configure.pl, outdated anyway - -2007-01-04 02:49 pajoye - - * ISSUES: - Update credentials - -2007-01-04 02:24 pajoye - - * gdxpm.c: - #14, some more sanitiy check - -2007-01-04 01:40 pajoye - - * ISSUES: - fix to match the issues # - -2007-01-03 22:57 pajoye - - * ISSUES, gd_topal.c: #35, Added sanity checks for allocations - failure in gd_topal (yet another.) - -2007-01-03 22:50 pajoye - - * gd_io.h, gd_io_ss.c: #33, sourceGetbuf must return 0 for errors - and EOF #34, Fixed gdSeek declaration, offset argument was - missing - -2007-01-03 22:47 pajoye - - * ISSUES, gd_io_dp.c: #33, dynamicGetbuf must return 0 for errors - and EOF - -2007-01-03 22:42 pajoye - - * ISSUES, gd_gd2.c: #32, Added sanity checks for allocations - failures in gd_gd2 - -2007-01-03 22:24 pajoye - - * ISSUES: #31, Added DISABLE_THREADS to permit disabling of thread - support (John Ellson/Graphviz) - -2007-01-03 22:21 pajoye - - * ISSUES, gdft.c: #30, uninitialized variable "charmap" and avoid - divide-by-zero errors at very small dpi values (John - Ellson/Graphviz) - -2007-01-03 22:04 pajoye - - * ISSUES, gdft.c: #28, Fixed gdImageStringFTEx when called with an - empty string Initialize the bounding box variables to zero - (Kevin Scaldeferri) - -2007-01-03 21:56 pajoye - - * ISSUES, gdft.c: #26, gdFontCacheSetup returns error when - gdCacheCreate fails #27, Added sanity checks for possible - failures in fontFetch and tweenColorFetch - -2007-01-03 21:50 pajoye - - * ISSUES, gdcache.c: #25, Added sanity checks for possible - allocation failures in gdCacheCreate and main - -2007-01-03 21:45 pajoye - - * ISSUES, gd.c: #23, Added sanity checks for possible allocation - failures in gdImageFilledPolygon and gdImageSetStyle #24, - Out of range checks in gdImageSetAAPixelColor - -2007-01-03 21:38 pajoye - - * gd.c: #22, missing immplementation - -2007-01-03 21:34 pajoye - - * ISSUES, gd.c: #22, Fixed transparency preservation in - gdImageCopyRotated - -2007-01-03 21:31 pajoye - - * ISSUES, gd.c: #21, gdImageCopyResized sanity check for allocation - failures - -2007-01-03 21:25 pajoye - - * ISSUES, gd.c: #20, Fixed gdImageCopyMergeGray when used with a - true color image - -2007-01-03 21:18 pajoye - - * ISSUES, gd.c: #19, Use abs instead of fbas in HWB_Diff (Nick - Atty) - -2007-01-03 21:09 pajoye - - * ISSUES, gd.c: - #18, Removed invalid gdFree call when overflow2 - fails - #17, Free im->pixels as well on error - -2007-01-03 20:48 pajoye - - * ISSUES, entities.tcl: #17, Added "static" to entities_s struct - declaration to avoid obscure compiler problem on Suns (John - Ellson/Graphviz) - -2007-01-03 20:42 pajoye - - * ISSUES, gd.c: - #16, Added sanity checks in gdImageCreate for - possible allocation failures (John Ellson/Graphviz) - -2007-01-03 20:14 pajoye - - * ISSUES, gd_topal.c: - #15, gdImageCreatePaletteFromTrueColor(), - colors allocated henceforth from the resulting image - overwrite the palette colors (Rob Leslie) - -2007-01-03 19:31 pajoye - - * ISSUES, gd_topal.c: - #14, Fixed leak in jinit_2pass_quantizer - (gd_topal.c) - -2006-11-08 13:32 lhecking - - * ISSUES: Updated. - -2006-11-08 13:23 pajoye - - * gd.c: - #7, gdImageCopy does not respect alpha (2/2) - -2006-11-05 16:01 pajoye - - * ISSUES, gd_png.c: - #12, initialize the sig buf not infile, good - that we don't use getC... - -2006-10-15 19:20 pajoye - - * ChangeLog: - initial cvs ChangeLog, will create a cronjob to - update it daily - -2006-10-12 13:38 lhecking - - * Makefile.in, aclocal.m4, configure, config/Makefile.in, - test/Makefile.in: Remove generated files. - -2006-10-12 13:36 lhecking - - * bootstrap.sh: Bootstrap script to generate auto* files. - -2006-10-12 13:30 lhecking - - * .cvsignore, config/.cvsignore, test/.cvsignore: Update after - removal of generated files. - -2006-10-11 11:46 lhecking - - * config/gdlib-config.in: Add @LIBICONV@ wherever @LIBS@ is used. - -2006-10-11 02:03 pajoye - - * ISSUES: - #11 entry - -2006-10-11 02:02 pajoye - - * gd_png.c, tests/bug00011.c, tests/emptyfile: - #11, - gdImageCreateFromPng* possible crash with empty file - Thanks to Antony Dovgal to have catched this bug - -2006-10-10 02:40 pajoye - - * ISSUES, gd.c, tests/bug00010.c: - #10, gdImageFilledEllipse does - not respect transparency (rewriten) - -2006-10-09 16:22 pajoye - - * ISSUES, Makefile.am, Makefile.in, aclocal.m4, config.hin, - configure, configure.ac, config/Makefile.in, config/config.guess, - config/config.sub, config/ltmain.sh, test/Makefile.in: - #9, - configure/build script updates auto* lib* (Lars Hecking) - -2006-10-09 04:38 pajoye - - * ISSUES, tests/bug00008.c: - port another test for gdImageFill - -2006-10-09 04:37 pajoye - - * tests/bug00007.c: - temp fp - -2006-10-08 23:43 pajoye - - * ISSUES, gd.c, tests/bug00007.c: - #7, imagecopy doen't copy the - alpha channel, palette to truecolor copy - -2006-10-08 18:42 pajoye - - * ISSUES, gd_gif_out.c, tests/bug00004.c: - #4, TrueColor - transparency with GIF palette output - -2006-09-28 17:22 pajoye - - * ISSUES, gd_gif_in.c, tests/bug00005.c, tests/bug00005_1.gif, - tests/bug00005_2.gif, tests/bug00005_3.gif: - GIF security fixes - -2006-09-28 10:16 pajoye - - * ISSUES, gd.c, tests/bug00003.c: - #3, gdImageRectanle draws the - corners twice - -2006-09-28 02:32 pajoye - - * tests/bug00002_2.c: - #2, test with gdTile - -2006-09-28 02:01 pajoye - - * ISSUES: - #2 entry - -2006-09-28 01:58 pajoye - - * gd.c, tests/bug00002_1.c: - - #2, imagefill segfaults: - when call with invalid index color - - segfaults or invalid result when used with complex patterns or - transparent color (more tests to come) - -2006-09-28 01:07 pajoye - - * tests/bug00001.c: - test case for bug #1 - -2006-09-28 01:05 pajoye - - * gdft.c: - #1, Initialize values this also provides a 5x speedup - in the imagefttext.phpt test, because without this patch it - never got cache hits (Nuno Lopes) - -2006-09-28 01:04 pajoye - - * ISSUES: - initial commit temp file to store issue fixes - history. Will be replaced by the issue tracker asap - -2006-09-28 00:50 pajoye - - * aclocal.m4, configure: - Sync the generated version TODO: - remove all generated files from CVS and add an autogen.sh script - -2006-05-17 17:53 edink - - * windows/: .cvsignore, Makefile: Added nmake dist target - -2006-05-17 17:27 edink - - * gdcmpgif.c: Fixed windows build - -2006-05-17 17:26 edink - - * windows/Makefile: Compile more helper tools - -2006-05-17 15:05 edink - - * windows/: Makefile, libgd.rc: Use bgd.dll name, and update - copyright info - -2006-05-17 15:04 edink - - * gd.h: Added version info - -2006-05-17 14:39 edink - - * windows/Makefile: "all" target should be the first - -2006-05-17 14:34 edink - - * windows/: .cvsignore, Makefile, libgd.rc: Added MSVC++ build file - for use with nmake.exe - -2006-05-17 11:15 edink - - * windows/.cvsignore: Added windows build dir - -2006-05-17 10:43 edink - - * .cvsignore, config/.cvsignore, test/.cvsignore: Ignore build - files - -2006-04-14 02:15 pajoye - - * tests/README: - as reminder, initila commit - -2006-04-05 22:46 pajoye - - * gd_jpeg.c, wbmp.c: - URLs - -2006-04-05 22:40 pajoye - - * configure.ac: - use the devel list in there - -2006-04-05 22:14 pajoye - - * AUTHORS, ChangeLog, HISTORY, Makefile, Makefile.nt, NEWS, README, - alphachanneltest.html, antialiased.png, arc, bdf-howto.txt, - bresenham_ellipse, bwtest.png, config.guess, config.sub, - configure.in, demoout.gif, demoout.png, errs, gd-1.2.lsm, gd.1, - gd.ver, gd2tolzw.c, gd_arc_f.c, gd_arc_f_buggy.c, gd_lzw_out.c, - gdfonta.c, gdfonta.h, gdft.c.swp, gdparttogif.c, gdprog, - gdprog.1, gdtestttf.c, gdtogif.c, gdttf.c, giftogd.c, giftolzw.c, - io.c, io.h, io_dp.c, io_file.c, io_ss.c, libgd.so.2.0.0, - ltconfig, ltmain.sh, mathmake.c, mtables.c, readme.txt, - so_locations, tc, webgif.c: - remove files not present in 2.0.33 - -2006-04-05 19:21 pajoye - - * alphachanneltest.html: - testing loginfo/cvsspam - -2006-04-05 19:12 pajoye - - * index.html: - update URLs and MLs - -2006-04-05 17:56 pierre - - * config/Makefile.am, config/Makefile.in, config/config.guess, - config/config.rpath, config/config.sub, config/depcomp, - config/gdlib-config.in, config/install-sh, config/ltmain.sh, - config/missing, config/mkinstalldirs, test/Makefile.am, - test/Makefile.in, test/gdtest.gd2, test/gdtest.png, - test/gdtest_200_300_150_100.png, test/gdtest_merge.png, - test/gdtest_wbmp_to_png.png: - sync with 2.0.33 - -2006-04-05 17:55 pierre - - * circletexttest.c, configure, configure.ac, fontconfigtest.c, - gd2togif.c, gd2topng.c, gd_gif_out.c, gdcmpgif.c, gdft.c, - gdkanji.c, gifanimtest.c, index.html: - sync to 2.0.33 - -2006-04-05 17:55 pierre - - * configure, configure.ac, gd.c, gd_gif_in.c, gdft.c, gdtestft.c, - index.html, testtr.c: - sync to 2.0.32 - -2006-04-05 17:55 pierre - - * Makefile.in, aclocal.m4, configure, configure.ac, gdft.c, - index.html: - sync to 2.0.31 - -2006-04-05 17:54 pierre - - * configure, configure.ac, gd.h, gdft.c, index.html: - sync to - 2.0.30 - -2006-04-05 17:54 pierre - - * Makefile.am, Makefile.in, circletexttest.c, config.hin, - configure, configure.ac, entities.h, entities.tcl, err.out, - fontconfigtest.c, fontsizetest.c, fontwheeltest.c, gd.c, gd.h, - gd2togif.c, gd_gd2.c, gd_gif_out.c, gd_io.h, gd_io_dp.c, - gd_jpeg.c, gd_png.c, gd_security.c, gd_topal.c, gd_wbmp.c, - gdcache.h, gdcmpgif.c, gdfontg.h, gdfontl.h, gdfontmb.h, - gdfonts.h, gdfontt.h, gdft.c, gdfx.c, gdfx.h, gdhelpers.c, - gdhelpers.h, gdxpm.c, gifanimtest.c, giftogd2.c, index.html, - jisx0208.h, makefile.sample, testtr.c, wbmp.c, wbmp.h: - sync to - 2.0.29 - -2006-04-05 17:53 pierre - - * Makefile.am, Makefile.in, configure, configure.ac, gd.h, - gd_gif_in.c, gd_gif_out.c, gd_topal.c, gddemo.c, index.html, - testtr.c: - sync to 2.0.28 - -2006-04-05 17:53 pierre - - * configure, configure.ac, gd.c, gdft.c, index.html: - sync to - 2.0.27 - -2006-04-05 17:53 pierre - - * Makefile.am, Makefile.in, config.hin, configure, configure.ac, - entities.h, entities.html, entities.tcl, fontwheeltest.c, gd.c, - gd.h, gddemo.c, gdft.c, index.html, testtr.c: - sync to 2.0.26 - -2006-04-05 17:52 pierre - - * configure, configure.ac, gd.h, gdfontg.h, gdfontl.h, gdfontmb.h, - gdfonts.h, gdfontt.h, index.html: - sync to 2.0.25 - -2006-04-05 17:52 pierre - - * annotate.c, configure, configure.ac, fontsizetest.c, gd.c, gd.h, - gd2time.c, gd_gd.c, gd_gd2.c, gd_io_dp.c, gd_io_file.c, - gd_io_ss.c, gd_jpeg.c, gd_png.c, gd_ss.c, gd_topal.c, gd_wbmp.c, - gdcache.h, gdfontg.c, gdfontg.h, gdfontl.c, gdfontl.h, - gdfontmb.c, gdfontmb.h, gdfonts.c, gdfonts.h, gdfontt.c, - gdfontt.h, gdft.c, gdfx.c, gdfx.h, gdhelpers.c, gdhelpers.h, - gdkanji.c, gdxpm.c, index.html, webpng.c: - sync to 2.0.24 - -2006-04-05 17:51 pierre - - * circletexttest.c, configure, configure.ac, gd.h, gd_gd2.c, - gd_io_dp.c, gd_jpeg.c, gd_png.c, gd_topal.c, gddemo.c, gdfontg.c, - gdfontl.c, gdfontmb.c, gdfonts.c, gdfontt.c, gdft.c, gdfx.c, - gdtest.c, index.html: - sync to 2.0.23 - -2006-04-05 17:51 pierre - - * Makefile.in, circletexttest.c, configure, configure.ac, gd.c, - gd_jpeg.c, gddemo.c, gdfontg.c, gdfontg.h, gdfontl.c, gdfontl.h, - gdfontmb.c, gdfontmb.h, gdfonts.c, gdfonts.h, gdfontt.c, - gdfontt.h, index.html: - sync to 2.0.22 - -2006-04-05 17:50 pierre - - * configure, configure.ac, gd.c, gd.h, gd_gd.c, gd_gd2.c, - gd_io_dp.c, gd_jpeg.c, gd_png.c, gd_wbmp.c, gdft.c, gdtest.c, - index.html: - sync to 2.0.21 - -2006-04-05 17:50 pierre - - * configure, configure.ac, gd.h, gdfontg.c, gdfontl.c, gdfontmb.c, - gdfonts.c, gdfontt.c, gdft.c, index.html: - sync to 2.0.20 - -2006-04-05 17:50 pierre - - * configure, configure.ac, gd.h, gdfontg.h, gdfontl.h, gdfonts.h, - index.html: - sync to 2.0.19 - -2006-04-05 17:50 pierre - - * circletexttest.c, configure, configure.ac, gd.h, gd_io.h, - gdcache.h, gdfontg.c, gdfontg.h, gdfontl.c, gdfontl.h, - gdfontmb.c, gdfontmb.h, gdfonts.c, gdfonts.h, gdfontt.c, - gdfontt.h, gdft.c, gdfx.h, gdhelpers.h, index.html: - sync to - 2.0.18 - -2006-04-05 17:49 pierre - - * Makefile.am, Makefile.in, circletexttest.c, config.hin, - configure, configure.ac, gd.c, gd.h, gd_gd2.c, gd_io.c, - gd_io_file.c, gd_jpeg.c, gd_png.c, gd_topal.c, gdft.c, gdfx.c, - gdfx.h, gdhelpers.h, index.html: - sync to 2.0.17 - -2006-04-05 17:49 pierre - - * configure, configure.ac, gd.c, index.html: - sync to 2.0.15 - -2006-04-05 17:48 pierre - - * configure, configure.ac, gd.c, gd_jpeg.c, index.html: - sync to - 2.0.14 - -2006-04-05 17:48 pierre - - * configure, configure.ac, gd.c, gd_gd2.c, gd_png.c, gdft.c, - index.html: - sync to 2.0.13 - -2006-04-05 17:47 pierre - - * Makefile.am, Makefile.in, annotate.c, config.hin, configure, - configure.ac, gd.c, gd.h, gd2topng.c, gd_gd.c, gd_gd2.c, gd_io.h, - gd_jpeg.c, gd_png.c, gd_topal.c, gdcache.c, gdcache.h, gddemo.c, - gdft.c, gdkanji.c, gdtest.c, gdtestft.c, gdtopng.c, index.html: - - sync to 2.0.12 - -2006-04-05 17:47 pierre - - * configure, configure.ac, gd.h, gd2topng.c, gd_gd2.c, gd_io.h, - gd_io_file.c, index.html, pngtogd2.c: - sync to 2.0.11 - -2006-04-05 17:47 pierre - - * Makefile.in, aclocal.m4, configure, configure.ac, depcomp, gd.c, - gd.h, gd_jpeg.c, gddemo.c, gdft.c, gdtestft.c, index.html, - install-sh, missing, mkinstalldirs: - sync to 2.0.10 - -2006-04-05 17:46 pierre - - * Makefile.in, aclocal.m4, annotate.c, config.hin, configure, - configure.ac, fontsizetest.c, fontwheeltest.c, gd.c, gd.h, - gd2time.c, gd2topng.c, gd_gd.c, gd_gd2.c, gd_io.h, gd_io_dp.c, - gd_io_file.c, gd_io_ss.c, gd_jpeg.c, gd_png.c, gd_ss.c, - gd_topal.c, gd_wbmp.c, gdcache.c, gdcache.h, gddemo.c, gdfontg.c, - gdfontg.h, gdfontl.c, gdfontl.h, gdfontmb.c, gdfontmb.h, - gdfonts.c, gdfonts.h, gdfontt.c, gdfontt.h, gdft.c, gdhelpers.h, - gdkanji.c, gdparttopng.c, gdtables.c, gdtest.c, gdtestft.c, - gdtopng.c, index.html, jisx0208.h, mathmake.c, pngtogd.c, - pngtogd2.c, testac.c, wbmp.c, wbmp.h, webpng.c: - sync to 2.0.9 - -2006-04-05 17:46 pierre - - * aclocal.m4, configure, configure.ac, gd.c, gd.h, gddemo.c, - index.html: - sync to 2.0.8 - -2006-04-05 17:45 pierre - - * configure, configure.ac, index.html: - sync to 2.0.7 - -2006-04-05 17:45 pierre - - * README.TXT, configure, configure.ac, gd.c, gd2copypal.c, - gd2topng.c, gdft.c, gdtestft.c, gdxpm.c, index.html, mathmake.c, - pngtogd.c, testac.c: - sync to 2.0.6 - -2006-04-05 17:44 pierre - - * COPYING, INSTALL, Makefile.am, Makefile.in, README.TXT, - aclocal.m4, annotate.c, config.hin, configure, configure.ac, - configure.pl, fontsizetest.c, fontwheeltest.c, gd.c, gd.h, - gd2copypal.c, gd2time.c, gd2topng.c, gd_gd.c, gd_gd2.c, gd_io.c, - gd_io_dp.c, gd_io_file.c, gd_io_ss.c, gd_jpeg.c, gd_png.c, - gd_ss.c, gd_topal.c, gd_wbmp.c, gdcache.c, gdcache.h, gddemo.c, - gdft.c, gdhelpers.c, gdkanji.c, gdparttopng.c, gdtest.c, - gdtestft.c, gdtopng.c, gdxpm.c, index.html, mathmake.c, - pngtogd.c, pngtogd2.c, testac.c, wbmp.c, webpng.c: - sync to - 2.0.5 - -2006-04-05 17:44 pierre - - * configure, err.out, fontsizetest.c, fontwheeltest.c, gd.c, gd.h, - gd2topng.c, gd_gd.c, gd_gd2.c, gd_io.h, gd_io_dp.c, gd_io_file.c, - gd_io_ss.c, gd_jpeg.c, gd_png.c, gd_ss.c, gd_topal.c, gd_wbmp.c, - gdcache.h, gddemo.c, gdft.c, gdhelpers.c, gdhelpers.h, gdkanji.c, - gdparttopng.c, gdtest.c, gdtestft.c, gdtopng.c, gdxpm.c, - index.html, makefile.sample, testac.c, wbmp.c, webpng.c: - sync - to 2.0.4 - -2006-04-05 17:43 pierre - - * annotate.c, configure, gd.c, gd_gd2.c, index.html: - sync to - 2.0.3 - -2006-04-05 17:43 pierre - - * README.TXT, configure, gd.c, gd.h, gddemo.c, gdft.c, gdtestft.c, - index.html, makefile.sample: - sync to 2.0.2 - -2006-04-05 17:42 pierre - - * Makefile, arc, bresenham_ellipse, gd.c, gd.h, gd2copypal.c, - gd2time.c, gd2topng.c, gd_arc_f_buggy.c, gd_gd.c, gd_gd2.c, - gd_io.c, gd_io_dp.c, gd_io_file.c, gd_io_ss.c, gd_jpeg.c, - gd_png.c, gd_ss.c, gd_topal.c, gd_wbmp.c, gdcache.c, gddemo.c, - gdfontg.c, gdfontl.c, gdfontmb.c, gdfonts.c, gdfontt.c, gdft.c, - gdhelpers.c, gdkanji.c, gdparttopng.c, gdtables.c, gdtest.c, - gdtestft.c, gdtopng.c, gdxpm.c, index.html, libgd.so.2.0.0, - mathmake.c, pngtogd.c, pngtogd2.c, readme.jpn, readme.txt, - testac.c, wbmp.c, webpng.c: - sync to 2.0.1 - -2006-04-05 17:42 pierre - - * Makefile, Makefile.nt, README-JPEG.TXT, alphachanneltest.html, - antialiased.png, errs, gd.c, gd.h, gd_arc_f.c, gd_gd.c, gd_gd2.c, - gd_jpeg.c, gd_png.c, gd_topal.c, gddemo.c, gdft.c, gdft.c.swp, - gdkanji.c, gdtestft.c, index.html, libgd.so.2.0.0, readme.txt, - tc, testac.c, webpng.c: - sync to 2.0.0 - -2006-04-05 17:41 pierre - - * Makefile, Makefile.nt, gd.c, gd.h, gd_gd2.c, gd_io.c, gd_io_dp.c, - gd_io_file.c, gd_io_ss.c, gd_jpeg.c, gd_png.c, gd_wbmp.c, - gdcache.c, gdft.c, gdhelpers.c, gdhelpers.h, gdkanji.c, - gdtestft.c, gdtestttf.c, gdttf.c, gdxpm.c, index.html, - readme.txt, wbmp.c, wbmp.h: - sync to 1.8.4 - -2006-04-05 17:41 pierre - - * Makefile, bwtest.png, gd.c, gd.h, gd_jpeg.c, gd_png.c, gd_wbmp.c, - gdtest.c, index.html, install-item, readme.txt, wbmp.c, wbmp.h: - - sync to 1.8.3 - -2006-04-05 17:40 pierre - - * Makefile, Makefile.nt, bdftogd, gd_jpeg.c, gdtest.c, index.html, - readme.txt, webpng.c: - sync to 1.8.1 - -2006-04-05 17:40 pierre - - * Makefile, gd.c, gd.h, gd_jpeg.c, gd_wbmp.c, gdtest.c, index.html, - readme.txt: - sync to 1.8.0 - -2006-04-05 17:39 pierre - - * Makefile, index.html, readme.txt: - sync to 1.7.3 - -2006-04-05 17:39 pierre - - * Makefile, gdttf.c, index.html, readme.txt: - sync to 1.7.2 - -2006-04-05 17:38 pierre - - * ChangeLog, Makefile, gdtestttf.c, index.html, readme.txt: - sync - to 1.7.1 - -2006-04-05 17:38 pierre - - * ChangeLog, Makefile, bdftogd, demoout.png, gd.c, gd.h, gd_gd2.c, - gd_io_dp.c, gd_io_file.c, gd_io_ss.c, gddemo.c, gdfontg.h, - gdfontl.h, gdfontmb.h, gdfonts.h, gdfontt.h, gdkanji.c, - gdtables.c, gdtestttf.c, gdttf.c, gdxpm.c, index.html, - jisx0208.h, readme.txt: - sync to 1.7.0 - -2006-04-05 17:37 pierre - - * COPYING, ChangeLog, NEWS, README, configure, configure.in, - gd_png.c, index.html, mkinstalldirs: - sync to 1.6.3 - -2006-04-05 17:37 pierre - - * AUTHORS, COPYING, ChangeLog, INSTALL, Makefile.am, Makefile.in, - NEWS, README, aclocal.m4, config.guess, config.sub, configure, - configure.in, gd.c, gd.h, gd2copypal.c, gd2time.c, gd2topng.c, - gd_gd.c, gd_gd2.c, gd_io_dp.c, gd_png.c, gdcache.c, gdcache.h, - gdparttopng.c, gdtest.c, gdtestttf.c, gdtopng.c, gdttf.c, - index.html, install-sh, ltconfig, ltmain.sh, missing, - mkinstalldirs, pngtogd.c, pngtogd2.c, webpng.c: - sync to 1.6.2 - -2006-04-05 17:36 pierre - - * HISTORY, gd.h, gd_png.c, index.html, readme.txt: - sync to 1.6.1 - -2006-04-05 17:35 pierre - - * HISTORY, Makefile, demoin.png, demoout.png, gd.c, gd.h, - gd2copypal.c, gd2time.c, gd2topng.c, gd_gd.c, gd_gd2.c, gd_io.c, - gd_io.h, gd_io_dp.c, gd_io_file.c, gd_io_ss.c, gd_png.c, gd_ss.c, - gddemo.c, gdparttopng.c, gdtest.c, gdtopng.c, index.html, - pngtogd.c, pngtogd2.c, readme.txt, webpng.c: - sync to 1.6.0 - -2006-04-05 17:35 pierre - - * HISTORY, Makefile, bdftogd, gd.c, gd.h, gd2copypal.c, gd2time.c, - gd2togif.c, gd2tolzw.c, gd_gd.c, gd_gd2.c, gd_gif_in.c, - gd_gif_out.c, gd_lzw_out.c, gdparttogif.c, gdtest.c, gdtogif.c, - giftogd2.c, giftolzw.c, index.html, io.c, io.h, io_dp.c, - io_file.c, io_ss.c, readme.txt: - sync to 1.5.0 - -2006-04-05 17:34 pierre - - * Makefile, bdf-howto.txt, bdftogd, gd.c, gd.h, gdfonta.c, - gdfonta.h, index.html, readme.txt: - sync to 1.4.0 - -2006-04-05 17:33 pierre - - * Makefile, bdftogd, demoin.gif, demoout.gif, gd.c, gd.h, gddemo.c, - gdfontg.c, gdfontg.h, gdfontl.c, gdfontl.h, gdfontmb.c, - gdfontmb.h, gdfonts.c, gdfonts.h, gdfontt.c, gdfontt.h, - giftogd.c, index.html, mathmake.c, mtables.c, readme.txt, - so_locations, webgif.c: - sync to 1.3.0 - -2006-04-05 17:28 pierre - - * INSTALL, Makefile, README, gd-1.2.lsm, gd.1, gd.ver, gdprog, - gdprog.1: Initial revision - -2006-04-05 17:28 pierre - - * INSTALL, Makefile, README, gd-1.2.lsm, gd.1, gd.ver, gdprog, - gdprog.1: initial import - diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_intern.h b/Build/source/libs/gd/libgd-2.1.0/src/gd_intern.h deleted file mode 100644 index 2e60613e981..00000000000 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_intern.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef GD_INTERN_H -#define GD_INTERN_H - -#if HAVE_LIMITS_H -#include <limits.h> -#endif - -#ifndef MIN -#define MIN(a,b) ((a)<(b)?(a):(b)) -#endif -#define MIN3(a,b,c) ((a)<(b)?(MIN(a,c)):(MIN(b,c))) -#ifndef MAX -#define MAX(a,b) ((a)<(b)?(b):(a)) -#endif -#define MAX3(a,b,c) ((a)<(b)?(MAX(b,c)):(MAX(a,c))) - -#ifndef MAXPATHLEN -# ifdef PATH_MAX -# define MAXPATHLEN PATH_MAX -# elif defined(MAX_PATH) -# define MAXPATHLEN MAX_PATH -# else -# if defined(__GNU__) -# define MAXPATHLEN 4096 -# else -# define MAXPATHLEN 256 /* Should be safe for any weird systems that do not define it */ -# endif -# endif -#endif - -#ifdef HAVE_STDINT_H -# include <stdint.h> -#else -# if defined(HAVE_INTTYPES_H) -# include <inttypes.h> -# else -# include "msinttypes/inttypes.h" -# endif -#endif - -#endif - diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_io.h b/Build/source/libs/gd/libgd-2.1.0/src/gd_io.h deleted file mode 100644 index ed02d25735c..00000000000 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_io.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef GD_IO_H -#define GD_IO_H 1 - -#include <stdio.h> - -#ifdef VMS -# define Putchar gdPutchar -#endif - - typedef struct gdIOCtx { - int (*getC)(struct gdIOCtx *); - int (*getBuf)(struct gdIOCtx *, void *, int); - void (*putC)(struct gdIOCtx *, int); - int (*putBuf)(struct gdIOCtx *, const void *, int); - /* seek must return 1 on SUCCESS, 0 on FAILURE. Unlike fseek! */ - int (*seek)(struct gdIOCtx *, const int); - long (*tell)(struct gdIOCtx *); - void (*gd_free)(struct gdIOCtx *); - void *data; - } - gdIOCtx; - - typedef struct gdIOCtx *gdIOCtxPtr; - - void Putword(int w, gdIOCtx *ctx); - void Putchar(int c, gdIOCtx *ctx); - - void gdPutC(const unsigned char c, gdIOCtx *ctx); - int gdPutBuf(const void *, int, gdIOCtx *); - void gdPutWord(int w, gdIOCtx *ctx); - void gdPutInt(int w, gdIOCtx *ctx); - - int gdGetC(gdIOCtx *ctx); - int gdGetBuf(void *, int, gdIOCtx *); - int gdGetByte(int *result, gdIOCtx *ctx); - int gdGetWord(int *result, gdIOCtx *ctx); - int gdGetWordLSB(signed short int *result, gdIOCtx *ctx); - int gdGetInt(int *result, gdIOCtx *ctx); - int gdGetIntLSB(signed int *result, gdIOCtx *ctx); - - int gdSeek(gdIOCtx *ctx, const int offset); - long gdTell(gdIOCtx *ctx); - -#endif - -#ifdef __cplusplus -} -#endif diff --git a/Build/source/libs/gd/libgd-2.1.0/windows/Makefile.w32 b/Build/source/libs/gd/libgd-2.1.0/windows/Makefile.w32 deleted file mode 100644 index 22e0256b82d..00000000000 --- a/Build/source/libs/gd/libgd-2.1.0/windows/Makefile.w32 +++ /dev/null @@ -1,177 +0,0 @@ -# Makefile form Microsoft C++ nmake.exe -# $Id$ -!IFNDEF WITH_DEVEL -WITH_DEVEL = ../../deps -!ENDIF - -!IFNDEF WITH_BUILD -WITH_BUILD = ..\..\gdbuild -!ENDIF - -!IFDEF WITH_PNG -!IF "$(WITH_PNG)"=="dll" -PNG_LIBS = libpng.lib -USE_LIBPNG = true -PNG = dll -!ELSEIF "$(WITH_PNG)"=="static" -PNG_LIBS = libpng_a.lib -USE_LIBPNG = true -PNG = static -!ELSE -USE_LIBPNG = false -!ENDIF -!ENDIF - -!IFDEF WITH_JPEG -!IF "$(WITH_JPEG)"=="dll" -JPEG_LIBS = libjpeg.lib -USE_LIBJPEG = true -PNG = dll -!ELSEIF "$(WITH_JPEG)"=="static" -JPEG_LIBS = libjpeg_a.lib -USE_LIBJPEG = true -PNG = static -!ELSE -USE_LIBJPEG = false -!ENDIF -!ENDIF - -EXTRA_INCLUDE=$(WITH_DEVEL)/include -EXTRA_LIBS=/libpath:$(WITH_DEVEL)/lib - -CC=cl.exe -LD=link.exe -BUILD=Release -#BUILD=Debug - -LIBGD_SRC_DIR=..\src -LIBGD_OBJ_DIR=$(WITH_BUILD) -LIBGD_BIN_DIR=$(WITH_BUILD)\bin - -!MESSAGE library source: $(LIBGD_SRC_DIR) -!MESSAGE library objects: $(LIBGD_OBJ_DIR) - -LIBGDCFLAGS= \ - /D PATHSEPARATOR="\";\"" \ - /D DEFAULT_FONTPATH="\"C:\\WINDOWS\\FONTS;C:\\WINNT\\FONTS\"" \ - -#LIBS=libjpeg.lib freetype2.lib libpng.lib zlib.lib kernel32.lib user32.lib advapi32.lib -LIBS=kernel32.lib user32.lib advapi32.lib - -!IF "$(USE_LIBPNG)" == "true" -LIBPNG_CFLAGS = $(LIBPNG_CFLAGS) /I"$(WITH_DEVEL)/include/libpng15" /D HAVE_LIBPNG -LIBS= $(LIBS) libpng_a.lib -!ENDIF - -CFLAGS=/c -I. -I.. -I../src -I$(EXTRA_INCLUDE) -nologo -DWIN32 -D_WIN32 -DMSWIN32 -DBGDWIN32 $(LIBGDCFLAGS) -#LIBS=libjpeg.lib freetype2.lib libpng.lib zlib.lib kernel32.lib user32.lib advapi32.lib - -!if "$(BUILD)" == "Debug" -CFLAGS=$(CFLAGS) /Od /Zi /MTd /D_DEBUG /LDd -LDFLAGS=/DEBUG $(LDFLAGS) /nodefaultlib:msvcrt.lib $(EXTRA_LIBS) -LIBS=$(LIBS) msvcrtd.lib -!else -CFLAGS=$(CFLAGS) /Oi /O2 /Oy /GF /MT /DNDEBUG /LD -LDFLAGS=/nodefaultlib:msvcrtd.lib $(EXTRA_LIBS) -LIBS=$(LIBS) msvcrt.lib -!endif - -CPPFLAGS=$(CFLAGS) - -!if "$(DLLNAME)" == "" -DLLNAME=libgd.dll -!endif - -DYNAMICLIB=$(DLLNAME:.dll=.lib) - -!if "$(STATICLIB)" == "" -STATICLIB=libgd_a.lib -!endif - -LIB_OBJS= \ - $(LIBGD_OBJ_DIR)\gd.obj \ - $(LIBGD_OBJ_DIR)\gdcache.obj \ - $(LIBGD_OBJ_DIR)\gdfontg.obj \ - $(LIBGD_OBJ_DIR)\gdfontl.obj \ - $(LIBGD_OBJ_DIR)\gdfontmb.obj \ - $(LIBGD_OBJ_DIR)\gdfonts.obj \ - $(LIBGD_OBJ_DIR)\gdfontt.obj \ - $(LIBGD_OBJ_DIR)\gdft.obj \ - $(LIBGD_OBJ_DIR)\gdfx.obj \ - $(LIBGD_OBJ_DIR)\gd_gd2.obj \ - $(LIBGD_OBJ_DIR)\gd_gd.obj \ - $(LIBGD_OBJ_DIR)\gd_gif_in.obj \ - $(LIBGD_OBJ_DIR)\gd_gif_out.obj \ - $(LIBGD_OBJ_DIR)\gdhelpers.obj \ - $(LIBGD_OBJ_DIR)\gd_io.obj \ - $(LIBGD_OBJ_DIR)\gd_io_dp.obj \ - $(LIBGD_OBJ_DIR)\gd_io_file.obj \ - $(LIBGD_OBJ_DIR)\gd_io_ss.obj \ - $(LIBGD_OBJ_DIR)\gd_jpeg.obj \ - $(LIBGD_OBJ_DIR)\gd_security.obj \ - $(LIBGD_OBJ_DIR)\gdkanji.obj \ - $(LIBGD_OBJ_DIR)\gd_png.obj \ - $(LIBGD_OBJ_DIR)\gd_ss.obj \ - $(LIBGD_OBJ_DIR)\gdtables.obj \ - $(LIBGD_OBJ_DIR)\gd_topal.obj \ - $(LIBGD_OBJ_DIR)\gd_transform.obj \ - $(LIBGD_OBJ_DIR)\gd_wbmp.obj \ - $(LIBGD_OBJ_DIR)\gdxpm.obj \ - $(LIBGD_OBJ_DIR)\wbmp.obj \ - $(LIBGD_OBJ_DIR)\gd_interpolation.obj \ - $(LIBGD_OBJ_DIR)\gd_matrix.obj \ - $(LIBGD_OBJ_DIR)\gd_rotate.obj - -EXE_OBJS= \ - annotate.obj \ - circletexttest.obj \ - fontconfigtest.obj \ - fontsizetest.obj \ - fontwheeltest.obj \ - gd2copypal.obj \ - gd2togif.obj \ - gd2topng.obj \ - gdcmpgif.obj \ - gdparttopng.obj \ - gdtopng.obj \ - giftogd2.obj \ - gdtest.obj \ - gdtestft.obj \ - gifanimtest.obj \ - pngtogd.obj \ - pngtogd2.obj \ - testac.obj \ - testtr.obj \ - webpng.obj - -$(LIBGD_OBJ_DIR): - @if not exist $(LIBGD_OBJ_DIR) mkdir $(LIBGD_OBJ_DIR) - -$(LIBGD_BIN_DIR): - @if not exist $(LIBGD_BIN_DIR) mkdir $(LIBGD_BIN_DIR) - -all: $(LIBGD_OBJ_DIR) $(LIBGD_BIN_DIR) $(LIB_OBJS) $(STATICLIB) - -.SUFFIXES: .c .obj .res - -{$(LIBGD_SRC_DIR)\}.c{$(LIBGD_OBJ_DIR)\}.obj: - $(CC) $(CFLAGS) /Fo"$@" $< - -$(STATICLIB): $(LIB_OBJS) - $(LD) /lib /out:$(LIBGD_BIN_DIR)/$(STATICLIB) $(LIB_OBJS) - -dist: all - -rmdir /s /q distro - mkdir distro - mkdir distro\bin - copy *.exe distro\bin - copy *.dll distro\bin - mkdir distro\include - copy ..\*.h distro\include - mkdir distro\lib - copy *.lib distro\lib - copy ..\COPYING distro\COPYING.TXT - -clean: - -del /q $(LIBGD_OBJ_DIR)\*.obj $(LIBGD_OBJ_DIR)\*.dll $(LIBGD_OBJ_DIR)\*.lib $(LIBGD_OBJ_DIR)\*.ilk $(LIBGD_OBJ_DIR)\*.pdb $(LIBGD_OBJ_DIR)\*.exp $(LIBGD_OBJ_DIR)\*.exe $(LIBGD_OBJ_DIR)\*.png $(LIBGD_OBJ_DIR)\*.res - -rmdir /s /q distro
\ No newline at end of file diff --git a/Build/source/libs/gd/libgd-2.1.0-PATCHES/ChangeLog b/Build/source/libs/gd/libgd-2.1.1-PATCHES/ChangeLog index f7dd7300e94..f4dc178903b 100644 --- a/Build/source/libs/gd/libgd-2.1.0-PATCHES/ChangeLog +++ b/Build/source/libs/gd/libgd-2.1.1-PATCHES/ChangeLog @@ -1,3 +1,12 @@ +2015-01-14 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported libgd-2.1.1 source tree from: + https://bitbucket.org/libgd/gd-libgd/downloads + + * patch-01-win32: Adapted. + * patch-02-no-stdcall: Adapted. + * patch-03-ceill: Adapted. + 2014-06-20 Peter Breitenlohner <peb@mppmu.mpg.de> * patch-03-ceill (new): Replace ceill() by ceil() as everywhere. diff --git a/Build/source/libs/gd/libgd-2.1.0-PATCHES/TL-Changes b/Build/source/libs/gd/libgd-2.1.1-PATCHES/TL-Changes index 2898c0677dd..4e822ab3e8b 100644 --- a/Build/source/libs/gd/libgd-2.1.0-PATCHES/TL-Changes +++ b/Build/source/libs/gd/libgd-2.1.1-PATCHES/TL-Changes @@ -1,10 +1,11 @@ -Changes applied to the libgd-2.1.0/ tree as obtained from: +Changes applied to the libgd-2.1.1/ tree as obtained from: https://bitbucket.org/libgd/gd-libgd/downloads Removed: Makefile.in aclocal.m4 config/Makefile.in + config/ar-lib config/compile config/config.guess config/config.rpath @@ -24,6 +25,6 @@ Removed: tests/Makefile.in Removed execute permission: - windows/Makefile.w32 windows/libgd.rc + windows/msys/deps.mk diff --git a/Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-01-win32 b/Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-01-win32 index 70ee7ce5275..66c6d4fe915 100644 --- a/Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-01-win32 +++ b/Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-01-win32 @@ -1,7 +1,7 @@ -diff -ur libgd-2.1.0.orig/src/gdft.c libgd-2.1.0/src/gdft.c ---- libgd-2.1.0.orig/src/gdft.c 2013-06-25 11:58:23.000000000 +0200 -+++ libgd-2.1.0/src/gdft.c 2013-06-26 13:52:34.000000000 +0200 -@@ -1512,6 +1512,16 @@ +diff -ur libgd-2.1.1.orig/src/gdft.c libgd-2.1.1/src/gdft.c +--- libgd-2.1.1.orig/src/gdft.c 2015-01-14 02:10:56.000000000 +0100 ++++ libgd-2.1.1/src/gdft.c 2015-01-14 10:47:30.790634045 +0100 +@@ -1638,6 +1638,16 @@ */ *fontpath = NULL; fontsearchpath = getenv ("GDFONTPATH"); @@ -17,4 +17,4 @@ diff -ur libgd-2.1.0.orig/src/gdft.c libgd-2.1.0/src/gdft.c +#endif if (!fontsearchpath) fontsearchpath = DEFAULT_FONTPATH; - + path = (char *) gdMalloc(sizeof(char) * strlen(fontsearchpath) + 1); diff --git a/Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-02-no-stdcall b/Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-02-no-stdcall new file mode 100644 index 00000000000..f493ede7614 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-02-no-stdcall @@ -0,0 +1,12 @@ +diff -ur libgd-2.1.1.orig/src/gd.h libgd-2.1.1/src/gd.h +--- libgd-2.1.1.orig/src/gd.h 2015-01-14 02:15:47.000000000 +0100 ++++ libgd-2.1.1/src/gd.h 2015-01-14 10:49:15.922009653 +0100 +@@ -62,7 +62,7 @@ + # define BGD_EXPORT_DATA_PROT __declspec(dllimport) + # endif + # endif +-# define BGD_STDCALL __stdcall ++# define BGD_STDCALL + # define BGD_EXPORT_DATA_IMPL + #else + # ifdef HAVE_VISIBILITY diff --git a/Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-03-ceill b/Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-03-ceill index f8fc797d69e..574ccf0a805 100644 --- a/Build/source/libs/gd/libgd-2.1.0-PATCHES/patch-03-ceill +++ b/Build/source/libs/gd/libgd-2.1.1-PATCHES/patch-03-ceill @@ -1,6 +1,6 @@ -diff -ur libgd-2.1.0.orig/src/gd_bmp.c libgd-2.1.0/src/gd_bmp.c ---- libgd-2.1.0.orig/src/gd_bmp.c 2013-06-25 11:58:23.000000000 +0200 -+++ libgd-2.1.0/src/gd_bmp.c 2014-06-20 17:18:24.000000000 +0200 +diff -ur libgd-2.1.1.orig/src/gd_bmp.c libgd-2.1.1/src/gd_bmp.c +--- libgd-2.1.1.orig/src/gd_bmp.c 2015-01-06 10:16:03.000000000 +0100 ++++ libgd-2.1.1/src/gd_bmp.c 2015-01-14 10:50:17.032906106 +0100 @@ -792,7 +792,7 @@ } diff --git a/Build/source/libs/gd/libgd-2.1.0/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/CMakeLists.txt index 4880f559ce5..5bec7043208 100644 --- a/Build/source/libs/gd/libgd-2.1.0/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/CMakeLists.txt @@ -1,9 +1,9 @@ # $Id$ +CMAKE_MINIMUM_REQUIRED(VERSION 2.6 FATAL_ERROR) SET(PACKAGE GD) SET(PACKAGE_NAME GD) -CMAKE_MINIMUM_REQUIRED(VERSION 2.6 FATAL_ERROR) CMAKE_POLICY(SET CMP0017 OLD) PROJECT(GD) @@ -13,6 +13,7 @@ OPTION(ENABLE_PNG "Enable PNG support" 0) OPTION(ENABLE_LIQ "Enable libimagequant support" 0) OPTION(ENABLE_JPEG "Enable JPEG support" 0) OPTION(ENABLE_TIFF "Enable TIFF support" 0) +OPTION(ENABLE_ICONV "Enable ICONV support" 0) OPTION(ENABLE_XPM "Enable XPM support" 0) OPTION(ENABLE_FREETYPE "Enable Freetype2 support" 0) OPTION(ENABLE_FONTCONFIG "Enable FontConfig support" 0) @@ -68,12 +69,12 @@ else (USE_EXT_GD) SET(GD_VERSION_MAJOR "2") SET(GD_VERSION_MINOR "1") - SET(GD_VERSION_PATCH "0") - SET(GD_VERSION_EXTRA "-alpha1") + SET(GD_VERSION_PATCH "1") + SET(GD_VERSION_EXTRA "") SET(GD_VERSION "${GD_VERSION_MAJOR}.${GD_VERSION_MINOR}.${GD_VERSION_PATCH}${GD_VERSION_EXTRA}") SET(GD_VERSION_STRING "${GD_VERSION}") - SET(GD_VERSION_INT "20100") + SET(GD_VERSION_INT "20101") SET(CMAKE_REQUIRED_INCLUDES "/usr/include" "/usr/local/include") @@ -86,6 +87,10 @@ else (USE_EXT_GD) if (ENABLE_PNG) FIND_PACKAGE(PNG REQUIRED) endif (ENABLE_PNG) + + if (ENABLE_ICONV) + FIND_PACKAGE(ICONV REQUIRED) + endif (ENABLE_ICONV) FIND_PACKAGE(ZLIB) @@ -141,6 +146,12 @@ else (USE_EXT_GD) INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR}) SET(HAVE_LIBPNG 1) ENDIF(PNG_FOUND) + + IF(ICONV_FOUND) + INCLUDE_DIRECTORIES(${ICONV_INCLUDE_DIR}) + SET(HAVE_ICONV 1) + SET(HAVE_ICONV_H 1) + ENDIF(ICONV_FOUND) IF(LIQ_FOUND) INCLUDE_DIRECTORIES(${LIQ_INCLUDE_DIR}) @@ -191,13 +202,13 @@ else (USE_EXT_GD) ADD_DEFINITIONS("/D_CRT_SECURE_NO_DEPRECATE") endif(NOT MINGW AND MSVC_VERSION GREATER 1399) if (MINGW OR MSYS) - ADD_DEFINITIONS("-mms-bitfields -m32") + ADD_DEFINITIONS("-mms-bitfields") # -m32 endif (MINGW OR MSYS) else (WIN32) SET(GD_LIB gd) endif (WIN32) - SET(GD_LIB_STATIC "${GD_LIB}-static") + SET(GD_LIB_STATIC "${GD_LIB}_static") IF(PROFILE) add_definitions("-pg") diff --git a/Build/source/libs/gd/libgd-2.1.1/CONTRIBUTORS b/Build/source/libs/gd/libgd-2.1.1/CONTRIBUTORS new file mode 100644 index 00000000000..37ae474b6c3 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/CONTRIBUTORS @@ -0,0 +1,26 @@ +chapg +Chris Reuter +Colin Watson +Dimitar Dobrev +edink +Gilles Espinasse +guenter +Kornel Lesiński +kshepherd +lhecking +Marcin Wojdyr +mattias +Mike Frysinger +mloskot +Nathanael Jones +nlopess +Ondřej Surý +Pierre Joye +pornel +Remi Collet +scottmac +tabe +Takeshi Abe +Tim Toohey +tostercx +Vincent Bernat diff --git a/Build/source/libs/gd/libgd-2.1.0/COPYING b/Build/source/libs/gd/libgd-2.1.1/COPYING index 5e17d03e861..5e17d03e861 100644 --- a/Build/source/libs/gd/libgd-2.1.0/COPYING +++ b/Build/source/libs/gd/libgd-2.1.1/COPYING diff --git a/Build/source/libs/gd/libgd-2.1.1/ChangeLog b/Build/source/libs/gd/libgd-2.1.1/ChangeLog new file mode 100644 index 00000000000..8668226ee13 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/ChangeLog @@ -0,0 +1,317 @@ +be907e0 fix indent (Pierre Joye) +999b5d2 add sanity check and fix leak on exit (Pierre Joye) +1424dd6 free path on error (Pierre Joye) +13d87a6 free im on error (Pierre Joye) +2a40315 update changelog (Pierre Joye) +5c562ec Add thumbs.bat and thumbs.sh to Makefile.am (Nathanael Jones) +bc372f2 Merge branch 'master' into rebase-1-for-2015 (Nathanael Jones) +a247407 Use sprintf instead of snprintf to be C89 compliant. (Nathanael Jones) +0324316 Remove uneeded includes introduced in earlier version-local commits. (Nathanael Jones) +4d54513 Exposed all missing format-independent members in the C++ wrapper. (Nathanael Jones) +c7bf379 Update gdpp.* to use HAVE_LIBPNG vs HAVE_PNG, etc.- should honor the same feature support flags as the rest of gd, (Nathanael Jones) +40c6129 Normalize static lib name to libgd.a on *nix and libgd_static.lib on windows. (Nathanael Jones) +7c2b071 Replace windows MSVC makefile; update msys iconv path. (Nathanael Jones) +07c3fde Drop -m32 definition on MINGW; prevents a 64-bit build from occurring. (Nathanael Jones) +37f5925 Skip bug00132 - failing because test data is out if date (we think). (Nathanael Jones) +f085a2e When both CPP_SHARP and _WIN32 are defined, do not enable thread safety. (Nathanael Jones) +e81ff90 Export C++ wrapper clases. Change two Gd() functions of the C++ wrapper to return values when the underlying C calls do. (Nathanael Jones) +56f79f3 C89 compat; define vars at top of function (Nathanael Jones) +b52b9c5 Upgrade to long-syntax CMAKE add_test command to improve cross-platform compatibility. (Nathanael Jones) +e8a1a46 free coeffs (Pierre Joye) +5f7c099 free allocated palette on error (Pierre Joye) +7b49862 fix im leaked on error (Pierre Joye) +4faf926 just reduce static analyzer noise (Pierre Joye) +2a09086 free tc_cache and path on error (leak) (Pierre Joye) +09e954b Thumbs: add osx settings for travis (tostercx) +4af76c9 fix comment (Remi Collet) +3c0d220 Fix possible infinite loop (php bug report #68713) - make code more legible (yy>=yy-1 seems ugly) - fix mem leak, always free src->tpixels (Remi Collet) +7a8e6b8 Thumbs: use rsync -u on osx as it doesn't have cp -u (tostercx) +eb9d7d1 Thumbs: Remove cp -u usage (Nathanael Jones) +c9e458b add read-only test images to tarball (Remi Collet) +3169371 use / in image patch (Remi Collet) +81e9a99 move overflow test outside the loop for perf (Remi Collet) +47eb44b Fix possible buffer read overflow detected by -fsanitize=address, thanks to Jan Bee (Remi Collet) +5fe6837 squash test commits; add deps from nuget; fix bindings (tostercx) +679fd78 pack compressed dll vers; build bindings (tostercx) +0c3b914 fix mingw if blocks (tostercx) +84319d1 replace slashes with backslashes for appveyor/cmd (tostercx) +c954881 add build targets for gnu with thumbs (tostercx) +18c51e6 fix tiff targets (tostercx) +5f99611 fix dll_name not set before usage (tostercx) +c447d68 fetch nasm (tostercx) +7ba81f0 add thumbs (tostercx) +4865cdb rename libs correctly as soon as they're copied (tostercx) +bf51c4e fix tbsd_*_built flags not being set (tostercx) +f3deb6b add basic msvc thumbs (tostercx) +39fd5ce Exposed all missing format-independent members in the C++ wrapper. (Dimitar Dobrev) +2d74b00 update lib switching macros (tostercx) +d5527e7 push config.h (tostercx) +5828f7e Use ifdefs around keyword redefinitions (Nathanael Jones) +d3fb9c3 update appveyor project url (tostercx) +6db34b7 Merged in nathanaeljones/gd-libgd/test-message-improvements (pull request #22) (Nathanael Jones) +d1a6768 Merged in nathanaeljones/gd-libgd/add-osx-boostrap-support (pull request #21) - bootstrap.sh now offers build tips on OS X and defaults to glibtoolize (Nathanael Jones) +31619ab Merged in nathanaeljones/gd-libgd/shut-up-automake (pull request #23) Silence automake 1.14 warnings (Nathanael Jones) +7eb9462 Merged in nathanaeljones/gd-libgd/cmake-iconv (pull request #24) (Nathanael Jones) +dedf03f Merged in nathanaeljones/gd-libgd/msvc-fix-keyword-macros (pull request #25) (Nathanael Jones) +c4809ae Changed two functions of the C++ wrapper to return values when the underlying C calls do. (Dimitar Dobrev) +433b04a set msvc output to minimal (tostercx) +daa7613 move drone build script to file (tostercx) +82550ca add drone badge (tostercx) +6ea31fb reset build type (tostercx) +47eaee1 test CMAKE_BULD_TYPE (tostercx) +e4fbb28 test CMAKE_BULD_TYPE (tostercx) +8e18552 push uncompressed dlls as artifacts (tostercx) +0bcb5e3 push uncompressed dlls as artifacts (tostercx) +5d09526 test dgn w64 (tostercx) +e3fe7e4 warn inline (tostercx) +adc3b7c test w64-32 (tostercx) +55f9066 inline test 3 (tostercx) +12898fe inline test 2 (tostercx) +8864390 inline test (tostercx) +0cd926f Exported all classes from the C++ binding of libgd. (Nathanael Jones) +c8711e7 fetch binding gen from master (tostercx) +23b5f11 test 32bit msvc bindings (tostercx) +98d1a1a update binding artifact handling (tostercx) +6be49c8 test msvc x64 bindings 4 (tostercx) +97c2846 test msvc x64 bindings 3 (tostercx) +eee663c test msvc x64 bindings 2 (tostercx) +a7ce8bb test msvc x64 bindings (tostercx) +12a6fbc scrap ramdisks (tostercx) +1f07497 ramdisk test 3 (tostercx) +398a82c ramdisk test 2 (tostercx) +c6cd0d8 ramdisk test (tostercx) +ae8a7e5 imdisk test 7 (tostercx) +3a178fd imdisk test 6 (tostercx) +5d5eb2a imdisk test 6 (tostercx) +bfdc673 imdisk test 5 (tostercx) +1855563 imdisk test 5 (tostercx) +084e2e2 imdisk test 4 (tostercx) +bbad6a7 imdisk test 3 (tostercx) +9d3bd38 imdisk test 2 (tostercx) +ff7ace5 Merge branch 'master' of https://github.com/imazen/gd-libgd (tostercx) +e78df6a imdisk test (tostercx) +f15ea0e Msbuild logging: Fix block scope error (Nathanael Jones) +3a7334c Msbuild now logs to file and uploads as artifact (Nathanael Jones) +c0ce1fa Enable verbose msbuild output temporarily (Nathanael Jones) +b70fd99 fix unix static name (tostercx) +b217d22 update nuget package names; add version # (tostercx) +724869d update test macro usage (tostercx) +560aa9b fix ps syntax errors (tostercx) +dce1809 configure files only if building bindings (tostercx) +e023800 test min=1 (tostercx) +668ef42 test min=0 (tostercx) +c28d572 quote function (tostercx) +cd9ae09 test test switching macros (tostercx) +c9b0fec add gdsharp .cs files to artifact (tostercx) +c19f2e0 remove SET spaces (tostercx) +3e88692 fix if spacing (tostercx) +9208848 test min flag (tostercx) +fef130e mingw test - noft; wtiff (tostercx) +8fae7df test mingw no tiff (tostercx) +bef860f mingw test build (tostercx) +841f3cd fix msvc static lib name; test mingw no-rtti (tostercx) +31552f5 build all (tostercx) +071963b fix if block (tostercx) +71f8aaf remove original dll on pack (tostercx) +b7ac813 minimal build (tostercx) +487ee4c re-enable packing (tostercx) +8e4ea0e test ps spacing (tostercx) +3ef2235 disable upx (tostercx) +918d603 update library names (tostercx) +bfff81d update library names (tostercx) +daa782e upx test 3 (tostercx) +5fc0ca3 upx test 2 (tostercx) +4fba094 add upx; fix cmake_cmd (tostercx) +015be62 spring cleaning (tostercx) +09daf1d re-fix if block (tostercx) +338c39b fix mingw freetype static link (tostercx) +335fd04 fix tiff static link (tostercx) +397029a fix if block (tostercx) +c16ccd1 fix freetype static links (tostercx) +6c3617a add appveyor badge (tostercx) +b6b0249 push nunit result xml as artifact (tostercx) +d87b394 disable iconv (tostercx) +fb10cf1 fix dll dir for bindings (tostercx) +61e8d53 simplify build script (tostercx) +b6a6ba6 fix static link to iconv for mingw builds (tostercx) +f8d2a36 fix mingw static links (tostercx) +ff2eb8a fix msvc link to static jpeg (tostercx) +1d75d52 remove inline flags; fetch deps from subbuilds (tostercx) +b0167e9 keep inline functions (tostercx) +6d3ab8d fix mingw dir; build only mingw (tostercx) +4d88ae7 scrap .vhd mount; update compiler blob location (tostercx) +1f7d33b test mounted mingww64 (tostercx) +bd4cebd fix bloated freetype (tostercx) +ade007d Support MSVC++ 2013 and higher: define _ALLOW_KEYWORD_MACROS, inline, strcasecmp, snprintf. (Nathanael Jones) +f82b371 Add libiconv support to CMake files (Nathanael Jones) +10ffb33 Silence automake 1.14 warnings ("source file is in a subdirectory, but option subdir-objects is disabled"). (Nathanael Jones) +90c3799 Add gdTestAssertMsg(condition, formatmessage, variables) to support detailed failure messages. Improve error reporting and diagnostics in gdimagefile test. Fix 'max' definition conflict on some compilers. (Nathanael Jones) +7f1d183 bootstrap.sh now offers build tips on OS X and defaults to glibtoolize (Nathanael Jones) +444c760 update mingw crt static link command (tostercx) +0b10bb8 exclude failing binding test; build all (tostercx) +f05791c static link msvc runtime (tostercx) +4f8e411 fix elseif block (tostercx) +7dc864c static link mingw compiler deps (tostercx) +c38ad3c update repositories (tostercx) +64b843b Merge pull request #5 from tostercx/master (tostercx) +292124c squash everything (tostercx) +8d63a96 Merge pull request #4 from tostercx/master (Nathanael Jones) +344267f fix testing env detection and directory (tostercx) +9664951 fix tests not executing (tostercx) +701507b fix x64 cross compiles (tostercx) +33dff1f not needed anymore (tostercx) +c1bcfcd not needed anymore (tostercx) +9546428 fix platform letter case (tostercx) +4d74480 fix gdtest not rebuilding (tostercx) +4fac5f7 remove mkdir error messages (tostercx) +6e7128a Prevent CppSharp parsing error (Nathanael Jones) +8e8c0f9 Get gdnametest passing on windows (Nathanael Jones) +300b6ff Fix gdnametest on *nix (Nathanael Jones) +6c4ffe7 Improve error messages in gdnametest. (Nathanael Jones) +ddbf021 Drop strcasecmp implementation. Only define 'inline' on msvc builds. (Nathanael Jones) +42e5fa7 Merge remote-tracking branch 'origin/master' (Nathanael Jones) +e30293d Add a readme for building on windows. (Nathanael Jones) +681992a Remove src/config.h and src/gd.h from .gitignore. Sheesh. (Nathanael Jones) +235c5b0 Merge pull request #3 from tostercx/master (Nathanael Jones) +0eb3b05 fix rebuilds failing (tostercx) +dab8734 fix mkdir failing on appveyor (tostercx) +0356ea9 fix mkdir failing on appveyor (tostercx) +96408de fix mkdir (tostercx) +073197d fix dir making (tostercx) +2e1d22e fix makefile always rebuilding (tostercx) +25b31be add cleanup, .gitnore build directories and deps, partially fix always rebuilding (tostercx) +7f735f6 Merged in nathanaeljones/gd-libgd/nathanaeljones/restore-support-for-alphablendingflag-va-1409782287517 (pull request #20) (Pierre Joye) +08eb6ee Restore support for alphaBlendingFlag value gdEffectAlphaBlend (Nathanael Jones) +e3ff6ec C89 compat (tostercx) +e52ed5e Merge pull request #2 from tostercx/master (Nathanael Jones) +6cc63f2 fix platorm reports in test (tostercx) +68a8dc0 updated windows makefile and test execution (tostercx) +8e7df78 Fix syntax error in Makefile.vc (missing line continuations) (Nathanael Jones) +71ab3d8 Fix space/tab mix in Makefile.vc; enable vectorization reporting. (Nathanael Jones) +911046d Comment out unused compilation vars; ensure (_)WIN32 is set, enable speed optimizations via /O2 (Nathanael Jones) +749b33e Improve error reporting in gdimagefile test. Add gdTestAssertMsg(condition, message, variables) to support detailed failure messages. (Nathanael Jones) +db88704 Restore support for alphaBlendingFlag value gdEffectAlphaBlend. (9 unit tests pass again). (Nathanael Jones) +dc8bb49 Only omit the 'max' macro if it is already present (this may break windows, let's see) (Nathanael Jones) +b0b140f Drop 7zip installation step, should already be installed on AppVeyor by default. (Nathanael Jones) +bcf7cb4 Switch dependency repository back, and use a named branch now for compatibility. (Nathanael Jones) +043dfa8 Merge pull request #1 from tostercx/master (Nathanael Jones) +12ab27b add notes (tostercx) +b710274 remove old makefiles (tostercx) +dd870dc consolidate makefiles to windows/makefile.vc (tostercx) +c114d89 consolidate makefiles to windows/makefile.vc (tostercx) +720f82b add static lib to artifacts, generate test config in makefile (tostercx) +c088f28 add static lib to artifacts, generate test config in makefile (tostercx) +0db988e add static lib to artifacts, generate test config in kaefile (tostercx) +1ce2b19 fix overwriting LIB env var (tostercx) +e0475cc debug iconv tmp fix (tostercx) +a3ee395 re-fix mkdir (tostercx) +5abb901 fix mkdir (tostercx) +35888c5 added making static libgd (tostercx) +701bc63 switch to libjpeg-turbo (tostercx) +d74fa37 fetch deps from imazen/gd-win-dependencies (tostercx) +23cbea2 Add AppVeyor files provided by TosterCx (Nathanael Jones) +af9ca1d Simplify makefile and add static lib generation. (Nathanael Jones) +ce5f060 Simplify Makefile.vc (Nathanael Jones) +ab31a6d Build inside Release_GD (Nathanael Jones) +ee308e1 Rename Makefile.gd and add some notes (Nathanael Jones) +d8987f5 Added strcasecmp implementation, now creates a .dll (Nathanael Jones) +09006c4 Get makefile almost working (Nathanael Jones) +2fdf3ad Start work on nmake makefile (Nathanael Jones) +0eb8429 Changed path to libiconv in msys Makefile. (Nathanael Jones) +5aee678 Merged from the upstream. (Nathanael Jones) +31ff666 Merged in ttoohey/gd-libgd/layout-effect (pull request #18) (Ondřej Surý) +33c05c1 Merged in ttoohey/gd-libgd/bugfix/font_path_overrun (pull request #19) (Ondřej Surý) +463c3bd CVE-2014-2497, NULL pointer dereference, fix #126 (Remi Collet) +f01ade7 Remove wrong license headers. Based on http://www.paulbourke.net/dataformats/tga/ (Pierre Joye) +354409b Fix buffer overrun from long font search path (Tim Toohey) +01dccbd add tests for layer effects (Tim Toohey) +b39f92b Add overlay and multiply effects to gdImageSetPixel (Tim Toohey) +4b86e06 Fix artefact in gdImageScale using GD_BILINEAR_FIXED (Remi Collet) +1de3b80 new example "resize" (Remi Collet) +5b42b11 Fix gdImageSetInterpolationMethod with GD_DEFAULT (Remi Collet) +2d5dc2e MSys Makefile now statically links libgd.dll to libiconv. (Chris Reuter) +01104a2 MSys Makefile fix (Chris Reuter) +7a8e8b2 Bug fix: GD DLL rename hadn't been propagated everywhere. (Chris Reuter) +6b94f66 Minor enhancements to the MinGW+Msys build scripts. (Chris Reuter) +339b17a Updated the MSys build files. (Chris Reuter) +0cb34fd Got gd_filename.c to work correctly under Windows. (Chris Reuter) +74ad18c Updated .gitignore. (Chris Reuter) +0da2258 Added TIFF to the list of skipped image formats in gdnametest.c (Chris Reuter) +0afe34d Merge branch 'master' of https://bitbucket.org/libgd/gd-libgd (Chris Reuter) +275ac17 Started importing the old manual into Naturaldocs comments. (Chris Reuter) +3b2caf6 Added function 'gdImageGetInterpolationMethod()'. (Chris Reuter) +592e232 Merge branch 'master' of https://bitbucket.org/libgd/gd-libgd (Chris Reuter) +00cd958 Added gdnametest and gdCopyBlurred to .gitignore. (Chris Reuter) +4761a7e Added gdnametest and gdCopyBlurred to .gitignore. (Chris Reuter) +c9d2f89 Added gdImageFile(), gdImageCreateFromFile() and gdSupportsFileType(). (Chris Reuter) +9eb3951 Added gdImageFile(), gdImageCreateFromFile() and gdSupportsFileType(). (Chris Reuter) +e054be7 Small code cleanup. (Chris Reuter) +3cb508f Small code cleanup. (Chris Reuter) +9933000 Merge branch 'master' of https://bitbucket.org/libgd/gd-libgd (Chris Reuter) +b20cdef Added a test case for gdImageCopyGaussianBlurred(). (Chris Reuter) +6febd90 Added a new Gaussian blur function. (Chris Reuter) +3c43f07 Merge branch 'master' of https://bitbucket.org/libgd/gd-libgd (Chris Reuter) +d525680 Bug fix: gdImageScale() was sometimes messing up transparency. (Chris Reuter) +b505465 Merge remote-tracking branch 'upstream/master' (Chris Reuter) +549addc Added .gitignore lines to exclude naturaldocs by-products. (Chris Reuter) +bb1d4a0 Added documention for gdImageCreate() and type gdImage. (Chris Reuter) +3c1202e Added beginnings of an updated manual (Chris Reuter) +7060f5e Added another Makefile. (Chris Reuter) +769fb15 Added another Makefile. (Chris Reuter) +3f8931d Bug fix: tests didn't (always) return a valid status. (Chris Reuter) +0dfd45c Bug fix: tests didn't (always) return a valid status. (Chris Reuter) +f316c8a Removed bash-ism from bootstrap.sh. (Not /bin/sh are bash, even these days.) (Chris Reuter) +6cb7f9f Merge branch 'master' of github.com:imazen-discovery/gd-libgd (Chris Reuter) +0adaf8a Merge branch 'master' of https://bitbucket.org/libgd/gd-libgd (Chris Reuter) +d21db28 Merge remote-tracking branch 'refs/remotes/origin/master' (Nathanael Jones) +68d38a8 bootstrap.sh now offers build tips on OS X and defaults to glibtoolize (Nathanael Jones) +9812cc4 Merge branch 'master' of https://bitbucket.org/suetanvil/gd-libgd. (Chris Reuter) +506e57a Merged libgd/gd-libgd into master (Chris Reuter) +16ccce6 Fixed a comment. (Chris Reuter) +e82b084 Added new files to CMakeLists.txt. (Chris Reuter) +8cdb109 Updated Netware makefile (Chris Reuter) +784ffdd Test case for new version code. (Chris Reuter) +4378b8d gd.h now holds the canonical version number. (Chris Reuter) +3c96ad1 Keep automake from complaining "automake: but option 'subdir-objects' is disabled" (Nathanael Jones) +5b7f746 Merged libgd/gd-libgd into master (Chris Reuter) +3766620 Merge branch 'master' of https://bitbucket.org/libgd/gd-libgd (Chris Reuter) +3884557 Merged in suetanvil/gd-libgd/scale-palette-image-bug (pull request #16) (Chris Reuter) +1a92b2e Merged in suetanvil/gd-libgd/interp-precision (pull request #15) (Chris Reuter) +723ea52 Fix for Issue #97: segfaults when scaling a non-truecolor image (Chris Reuter) +f321961 Added test case to exercise all of the gdImageScale() modes. (Chris Reuter) +5586a1e Merged libgd/gd-libgd into master (Chris Reuter) +948bb0a Higher precision in scaling. (Chris Reuter) +3f713da Higher precision in scaling. (Chris Reuter) +1c6ee56 More dead code removal. (Chris Reuter) +241ada6 Removed some dead code. (Chris Reuter) +916d00c Merged in suetanvil/gd-libgd/suetanvil-scale-code-cleanup (pull request #14) (Pierre Joye) +0510b4f Merged in suetanvil/gd-libgd/suetanvil-dead-code-removal (pull request #13) (Pierre Joye) +2ade818 Merge branch 'private-scale-axis-merge-rebased' (Chris Reuter) +546b274 Bug fix: #92: Bicubic scaling leaves the rightmost and bottom rows black (Chris Reuter) +16ed1a9 Added a test case for gdImageScaleTwoPass(). (Chris Reuter) +65fce84 Improved testing code (Chris Reuter) +be3c8cb Cleaned up floating-point rescaling code. (Chris Reuter) +0d13658 More dead code removal. (Chris Reuter) +5ce14ef Removed some dead code. (Chris Reuter) +70a4070 Merge branch 'master' of https://bitbucket.org/suetanvil/gd-libgd (Chris Reuter) +08fdff6 Merged libgd/gd-libgd into master (Chris Reuter) +6db2828 Merge remote-tracking branch 'remotes/bitbucket-repo/suetanvil' (Chris Reuter) +3c5c639 Merged in suetanvil/gd-libgd/suetanvil (pull request #12) (Pierre Joye) +4f65a3e Fixed memory overrun bug in gdImageScaleTwoPass (Chris Reuter) +3e76d30 Merged libgd/gd-libgd into master (Chris Reuter) +de7acbf Merged in suetanvil/gd-libgd (pull request #11) (Pierre Joye) +4c70f57 Fix #86: gdImageScale segfaults with most interpolation types (Chris Reuter) +6d1275d Fix bug #86 (segfaults on gdImageScale with most interpolation modes). (Chris Reuter) +2a862b2 Undo previous change to make a cleaner changeset. (Chris Reuter) +4a90e3f Fixed bug #86. https://bitbucket.org/libgd/gd-libgd/issue/86/gdimagescale-segfaults-with-most (Chris Reuter) +d47c718 Merge branch '2.1.0-stable' into bicubic-fixed-perf (Chris Reuter) +fda0b29 Added a function to retrieve the interpolation mode ID. (Chris Reuter) +fb93646 Added the latest manual I could find. (Chris Reuter) +a0be11f Added new README.md prior to importing into GitHub. (Chris Reuter) +a0f58c6 fix #81, cmake_minimum_required must be the 1st line in 2.8+ (Pierre Joye) +54f8019 GD_EXTRA_VERSION and GD_VERSION_STRING needs quotes (Courtesy of Marc Deslauriers) (Ondřej Surý) +dfea094 Add INSTALL notes for Solaris conflicting iconv.h headers (fixes #76) (Ondřej Surý) +37689ef ignore generated gd.h header (Ondřej Surý) +5b917b4 Merged in fix-version-in-gd.h (pull request #9) (Ondřej Surý) +f597bd4 Don't append dash when GDLIB_EXTRA is empty (Ondřej Surý) +f47a1df Create gd.h from gd.h.in to properly include current library version (Ondřej Surý)
\ No newline at end of file diff --git a/Build/source/libs/gd/libgd-2.1.0/Makefile.am b/Build/source/libs/gd/libgd-2.1.1/Makefile.am index e8697dec587..17c5b0537e7 100644 --- a/Build/source/libs/gd/libgd-2.1.0/Makefile.am +++ b/Build/source/libs/gd/libgd-2.1.1/Makefile.am @@ -1,3 +1,3 @@ ACLOCAL_AMFLAGS = -I m4 SUBDIRS = src config tests -EXTRA_DIST = test docs examples windows VMS cmake netware bootstrap.sh CMakeLists.txt +EXTRA_DIST = test docs examples windows VMS cmake netware bootstrap.sh CMakeLists.txt thumbs.bat thumbs.sh CONTRIBUTORS README diff --git a/Build/source/libs/gd/libgd-2.1.0/NEWS b/Build/source/libs/gd/libgd-2.1.1/NEWS index 8bf38434add..8bf38434add 100644 --- a/Build/source/libs/gd/libgd-2.1.0/NEWS +++ b/Build/source/libs/gd/libgd-2.1.1/NEWS diff --git a/Build/source/libs/gd/libgd-2.1.1/README b/Build/source/libs/gd/libgd-2.1.1/README new file mode 100644 index 00000000000..457b9c1f027 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/README @@ -0,0 +1,10 @@ +GD is an open source code library for the dynamic creation of images by programmers. + +GD is written in C, and "wrappers" are available for Perl, PHP and other languages. GD creates PNG, +JPEG, GIF, WebP, XPM, BMP images, among other formats. GD is commonly used to generate charts, +graphics, thumbnails, and most anything else, on the fly. While not restricted to use on the web. + +The most common applications of GD involve website development. + +The library was originally developped by Thomas Boutell and is now maintained by many contributors (see the CONTRIBUTORS file) +under the umbrella of PHP.net. diff --git a/Build/source/libs/gd/libgd-2.1.0/VMS/CONFIGURE.COM b/Build/source/libs/gd/libgd-2.1.1/VMS/CONFIGURE.COM index a2e42c5b223..a2e42c5b223 100644 --- a/Build/source/libs/gd/libgd-2.1.0/VMS/CONFIGURE.COM +++ b/Build/source/libs/gd/libgd-2.1.1/VMS/CONFIGURE.COM diff --git a/Build/source/libs/gd/libgd-2.1.0/VMS/README.VMS b/Build/source/libs/gd/libgd-2.1.1/VMS/README.VMS index cdeee561654..cdeee561654 100644 --- a/Build/source/libs/gd/libgd-2.1.0/VMS/README.VMS +++ b/Build/source/libs/gd/libgd-2.1.1/VMS/README.VMS diff --git a/Build/source/libs/gd/libgd-2.1.0/bootstrap.sh b/Build/source/libs/gd/libgd-2.1.1/bootstrap.sh index 3092064cfcf..dac639eeaa4 100755 --- a/Build/source/libs/gd/libgd-2.1.0/bootstrap.sh +++ b/Build/source/libs/gd/libgd-2.1.1/bootstrap.sh @@ -2,8 +2,24 @@ # $Id$ # Small shell script to build gd from source +# Generate the manual (unless naturaldocs isn't installed). Source +# dists should include the docs so that end users don't need to +# install naturaldocs. At the same time, we tolerate it being missing +# so that random hackers don't need it just to build the code. +if which naturaldocs > /dev/null; then + echo "Generation user docs:" + (cd docs/naturaldocs; bash run_docs.sh) +else + echo "Can't find naturaldocs; not generating user manual." +fi + + # allow importing from the environment, e.g. # "AUTOCONF=autoconf259 ... ./bootstrap.sh" +if echo $OSTYPE | grep -q '^darwin' ; then + echo Having trouble on OS X? Try brew install autoconf libtool automake gettext apple-gcc42 pkg-config cmake + LIBTOOLIZE=${LIBTOOLIZE:-glibtoolize} +fi ACLOCAL=${ACLOCAL:-aclocal} AUTOCONF=${AUTOCONF:-autoconf} AUTOHEADER=${AUTOHEADER:-autoheader} diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/AC_HEADER_STDC.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/AC_HEADER_STDC.cmake index cf4fff83ba5..cf4fff83ba5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/AC_HEADER_STDC.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/AC_HEADER_STDC.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/CMakeParseArguments.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/CMakeParseArguments.cmake index b57b0296d3f..b57b0296d3f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/CMakeParseArguments.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/CMakeParseArguments.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/CheckDIRSymbolExists.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/CheckDIRSymbolExists.cmake index dde6c7f3af8..dde6c7f3af8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/CheckDIRSymbolExists.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/CheckDIRSymbolExists.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/CheckPrototypeExists.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/CheckPrototypeExists.cmake index 85a171758bc..85a171758bc 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/CheckPrototypeExists.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/CheckPrototypeExists.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindFontConfig.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindFontConfig.cmake index 23d0020c52e..23d0020c52e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindFontConfig.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindFontConfig.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindFreetype.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindFreetype.cmake index 3d2a8a48088..3d2a8a48088 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindFreetype.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindFreetype.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindGD.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindGD.cmake index 2860d6cc77f..2860d6cc77f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindGD.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindGD.cmake diff --git a/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindICONV.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindICONV.cmake new file mode 100644 index 00000000000..49d5f6b95a0 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindICONV.cmake @@ -0,0 +1,64 @@ +# - Try to find Iconv +# Once done this will define +# +# ICONV_FOUND - system has Iconv +# ICONV_INCLUDE_DIR - the Iconv include directory +# ICONV_LIBRARIES - Link these to use Iconv +# ICONV_SECOND_ARGUMENT_IS_CONST - the second argument for iconv() is const +# +include(CheckCCompilerFlag) +include(CheckCSourceCompiles) + +IF (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES) + # Already in cache, be silent + SET(ICONV_FIND_QUIETLY TRUE) +ENDIF (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES) + +FIND_PATH(ICONV_INCLUDE_DIR iconv.h HINTS /sw/include/ PATHS /opt/local) + +FIND_LIBRARY(ICONV_LIBRARIES NAMES libiconv_a iconv libiconv c PATHS /opt/local) + +IF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES) + SET(ICONV_FOUND TRUE) +ENDIF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES) + +set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR}) +set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARIES}) +IF(ICONV_FOUND) + check_c_compiler_flag("-Werror" ICONV_HAVE_WERROR) + set (CMAKE_C_FLAGS_BACKUP "${CMAKE_C_FLAGS}") + if(ICONV_HAVE_WERROR) + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror") + endif(ICONV_HAVE_WERROR) + check_c_source_compiles(" + #include <iconv.h> + int main(){ + iconv_t conv = 0; + const char* in = 0; + size_t ilen = 0; + char* out = 0; + size_t olen = 0; + iconv(conv, &in, &ilen, &out, &olen); + return 0; + } +" ICONV_SECOND_ARGUMENT_IS_CONST ) + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS_BACKUP}") +ENDIF(ICONV_FOUND) +set(CMAKE_REQUIRED_INCLUDES) +set(CMAKE_REQUIRED_LIBRARIES) + +IF(ICONV_FOUND) + IF(NOT ICONV_FIND_QUIETLY) + MESSAGE(STATUS "Found Iconv: ${ICONV_LIBRARIES}") + ENDIF(NOT ICONV_FIND_QUIETLY) +ELSE(ICONV_FOUND) + IF(Iconv_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find Iconv") + ENDIF(Iconv_FIND_REQUIRED) +ENDIF(ICONV_FOUND) + +MARK_AS_ADVANCED( + ICONV_INCLUDE_DIR + ICONV_LIBRARIES + ICONV_SECOND_ARGUMENT_IS_CONST +)
\ No newline at end of file diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindJPEG.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindJPEG.cmake index bb310d65dcb..bb310d65dcb 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindJPEG.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindJPEG.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindLIQ.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindLIQ.cmake index 08713f51704..08713f51704 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindLIQ.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindLIQ.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPNG.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPNG.cmake index a44affcfcc0..a44affcfcc0 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPNG.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPNG.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPTHREAD.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPTHREAD.cmake index 0627c6d0a44..0627c6d0a44 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPTHREAD.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPTHREAD.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPackageHandleStandardArgs.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPackageHandleStandardArgs.cmake index de124acce43..de124acce43 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindPackageHandleStandardArgs.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindPackageHandleStandardArgs.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindVPX.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindVPX.cmake index 3a8c45ed196..3a8c45ed196 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindVPX.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindVPX.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindXPM.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindXPM.cmake index 9b59feaa10e..9b59feaa10e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/FindXPM.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/FindXPM.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForHighBitCharacters.c b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForHighBitCharacters.c index 2be51745ac8..2be51745ac8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForHighBitCharacters.c +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForHighBitCharacters.c diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForHighBitCharacters.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForHighBitCharacters.cmake index b1a1b908223..b1a1b908223 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForHighBitCharacters.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForHighBitCharacters.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForStandardHeaderwait.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForStandardHeaderwait.cmake index d3df427f9c8..d3df427f9c8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/TestForStandardHeaderwait.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/TestForStandardHeaderwait.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/gd.cmake b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/gd.cmake index 1e846dd855d..1e846dd855d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/cmake/modules/gd.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/cmake/modules/gd.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/config/Makefile.am b/Build/source/libs/gd/libgd-2.1.1/config/Makefile.am index 7ec5849fb68..7ec5849fb68 100644 --- a/Build/source/libs/gd/libgd-2.1.0/config/Makefile.am +++ b/Build/source/libs/gd/libgd-2.1.1/config/Makefile.am diff --git a/Build/source/libs/gd/libgd-2.1.0/config/gdlib-config.in b/Build/source/libs/gd/libgd-2.1.1/config/gdlib-config.in index 70af36b5359..70af36b5359 100644 --- a/Build/source/libs/gd/libgd-2.1.0/config/gdlib-config.in +++ b/Build/source/libs/gd/libgd-2.1.1/config/gdlib-config.in diff --git a/Build/source/libs/gd/libgd-2.1.0/config/gdlib.pc.in b/Build/source/libs/gd/libgd-2.1.1/config/gdlib.pc.in index b980a606902..b980a606902 100644 --- a/Build/source/libs/gd/libgd-2.1.0/config/gdlib.pc.in +++ b/Build/source/libs/gd/libgd-2.1.1/config/gdlib.pc.in diff --git a/Build/source/libs/gd/libgd-2.1.0/configure.ac b/Build/source/libs/gd/libgd-2.1.1/configure.ac index 2f9f744df71..1024a3a5ad6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/configure.ac +++ b/Build/source/libs/gd/libgd-2.1.1/configure.ac @@ -3,16 +3,14 @@ AC_PREREQ(2.54) -# Some m4 magic to have correct version number everywhere -m4_define([gd_MAJOR],[2])dnl -m4_define([gd_MINOR],[1])dnl -m4_define([gd_REVISION],[0])dnl -dnl m4_define([gd_EXTRA],[rc2]) +# We extract version numbers from src/versions.h +define([gv],[perl config/getver.pl ]$1) -m4_ifdef([gd_EXTRA], - [m4_define([gd_PKG_VERSION],[gd_MAJOR.gd_MINOR.gd_REVISION-gd_EXTRA])], - [m4_define([gd_PKG_VERSION],[gd_MAJOR.gd_MINOR.gd_REVISION])] -)dnl +m4_define([gd_MAJOR],esyscmd(gv(MAJOR)))dnl +m4_define([gd_MINOR],esyscmd(gv(MINOR)))dnl +m4_define([gd_REVISION],esyscmd(gv(RELEASE)))dnl +m4_define([gd_EXTRA],esyscmd(gv(EXTRA)))dnl +m4_define([gd_PKG_VERSION],[gd_MAJOR.gd_MINOR.gd_REVISION]gd_EXTRA)]dnl AC_INIT([GD], gd_PKG_VERSION, [https://bitbucket.org/libgd/gd-libgd/issues], [libgd], [http://lib.gd]) AC_CONFIG_SRCDIR([src/gd.c]) @@ -20,18 +18,19 @@ AC_CONFIG_AUX_DIR(config) AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_HOST -# This is not used anywhere +# This is not used anywhere. However, Makefile.netware searches +# through configure for these definitions to find the version numbers. +# (Assuming anyone still uses Netware, that should be changed to use +# gd.h via getver.pl instead.) GDLIB_MAJOR=gd_MAJOR GDLIB_MINOR=gd_MINOR GDLIB_REVISION=gd_REVISION GDLIB_EXTRA=gd_EXTRA -AC_SUBST(GDLIB_MAJOR) -AC_SUBST(GDLIB_MINOR) -AC_SUBST(GDLIB_REVISION) -AC_SUBST(GDLIB_EXTRA) +GDLIB_VERSION=gd_PKG_VERSION # Dynamic library version information # See http://www.gnu.org/software/libtool/manual/libtool.html#Updating-version-info + GDLIB_CURRENT=3 GDLIB_REVISION=0 GDLIB_AGE=0 @@ -45,7 +44,7 @@ AC_SUBST(GDLIB_AGE) FEATURES="GD_GIF GD_GIFANIM GD_OPENPOLYGON" AC_SUBST(FEATURES) -AM_INIT_AUTOMAKE([foreign dist-bzip2 dist-xz -Wall -Werror]) +AM_INIT_AUTOMAKE([foreign dist-bzip2 dist-xz -Wall -Werror subdir-objects]) AC_CONFIG_HEADERS([src/config.h:src/config.hin]) dnl newer automake wants this, but we still want to work with older @@ -455,10 +454,10 @@ AC_MSG_RESULT([ AC_CONFIG_FILES([Makefile src/Makefile - tests/Makefile - tests/test_config.h + tests/Makefile + tests/test_config.h config/Makefile config/gdlib-config - config/gdlib.pc]) + config/gdlib.pc]) AC_OUTPUT diff --git a/Build/source/libs/gd/libgd-2.1.0/docs/INSTALL b/Build/source/libs/gd/libgd-2.1.1/docs/INSTALL index a1e89e18ad2..a1e89e18ad2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/docs/INSTALL +++ b/Build/source/libs/gd/libgd-2.1.1/docs/INSTALL diff --git a/Build/source/libs/gd/libgd-2.1.1/docs/INSTALL.Solaris b/Build/source/libs/gd/libgd-2.1.1/docs/INSTALL.Solaris new file mode 100644 index 00000000000..d6b5bd1adac --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/docs/INSTALL.Solaris @@ -0,0 +1,16 @@ +Solaris CAVEATS +=============== + +If you are using GNU iconv library installed in f.e. /opt, you will +need to add the header location to CMAKE= in configure invokation to +ensure that the system iconv.h header is not used when searching for +iconv library. + +The resulting ./configure invokation would look something like this: + +MAKE=gmake CC="gcc -m64" ./configure --prefix=/opt/local \ +CFLAGS="-I/opt/local/include -DHAVE_ICONV -O2 -fomit-frame-pointer -pipe -m64" \ +--with-png=/usr --with-freetype=/opt/local + +For more information and discussion see: +https://bitbucket.org/libgd/gd-libgd/issue/76 diff --git a/Build/source/libs/gd/libgd-2.1.0/docs/README.CMAKE b/Build/source/libs/gd/libgd-2.1.1/docs/README.CMAKE index baf583c3ba6..baf583c3ba6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/docs/README.CMAKE +++ b/Build/source/libs/gd/libgd-2.1.1/docs/README.CMAKE diff --git a/Build/source/libs/gd/libgd-2.1.0/docs/README.JPN b/Build/source/libs/gd/libgd-2.1.1/docs/README.JPN index 65db00b5534..65db00b5534 100644 --- a/Build/source/libs/gd/libgd-2.1.0/docs/README.JPN +++ b/Build/source/libs/gd/libgd-2.1.1/docs/README.JPN diff --git a/Build/source/libs/gd/libgd-2.1.0/docs/README.TESTING b/Build/source/libs/gd/libgd-2.1.1/docs/README.TESTING index a4c50efe3e6..a4c50efe3e6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/docs/README.TESTING +++ b/Build/source/libs/gd/libgd-2.1.1/docs/README.TESTING diff --git a/Build/source/libs/gd/libgd-2.1.0/docs/README.TXT b/Build/source/libs/gd/libgd-2.1.1/docs/README.TXT index 39725dd62c1..39725dd62c1 100644 --- a/Build/source/libs/gd/libgd-2.1.0/docs/README.TXT +++ b/Build/source/libs/gd/libgd-2.1.1/docs/README.TXT diff --git a/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/license.txt b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/license.txt new file mode 100644 index 00000000000..4164bce4bc7 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/license.txt @@ -0,0 +1,74 @@ +Title: License + +Credits and license terms: + +> In order to resolve any possible confusion regarding the authorship of +> gd, the following copyright statement covers all of the authors who +> have required such a statement. If you are aware of any oversights in +> this copyright notice, please contact Pierre-A. Joye who will be +> pleased to correct them. +> +> Portions copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +> 2002, 2003, 2004 by Cold Spring Harbor Laboratory. Funded under +> Grant P41-RR02188 by the National Institutes of Health. +> +> Portions copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, +> 2004 by Boutell.Com, Inc. +> +> Portions relating to GD2 format copyright 1999, 2000, 2001, 2002, +> 2003, 2004 Philip Warner. +> +> Portions relating to PNG copyright 1999, 2000, 2001, 2002, 2003, +> 2004 Greg Roelofs. +> +> Portions relating to gdttf.c copyright 1999, 2000, 2001, 2002, +> 2003, 2004 John Ellson (ellson@graphviz.org). +> +> Portions relating to gdft.c copyright 2001, 2002, 2003, 2004 John +> Ellson (ellson@graphviz.org). +> +> Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 +> Pierre-Alain Joye (pierre@libgd.org). +> +> Portions relating to JPEG and to color quantization copyright +> 2000, 2001, 2002, 2003, 2004, Doug Becker and copyright (C) 1994, +> 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Thomas +> G. Lane. This software is based in part on the work of the +> Independent JPEG Group. See the file README-JPEG.TXT for more +> information. +> +> Portions relating to GIF compression copyright 1989 by Jef +> Poskanzer and David Rowley, with modifications for thread safety +> by Thomas Boutell. +> +> Portions relating to GIF decompression copyright 1990, 1991, 1993 +> by David Koblas, with modifications for thread safety by Thomas +> Boutell. +> +> Portions relating to WBMP copyright 2000, 2001, 2002, 2003, 2004 +> Maurice Szmurlo and Johan Van den Brande. +> +> Portions relating to GIF animations copyright 2004 Jaakko Hyvätti +> (jaakko.hyvatti@iki.fi) +> +> Permission has been granted to copy, distribute and modify gd in +> any context without fee, including a commercial application, +> provided that this notice is present in user-accessible supporting +> documentation. +> +> This does not affect your ownership of the derived work itself, +> and the intent is to assure proper credit for the authors of gd, +> not to interfere with your productive use of gd. If you have +> questions, ask. "Derived works" includes all programs that utilize +> the library. Credit must be given in user-accessible +> documentation. +> +> This software is provided "AS IS." The copyright holders disclaim +> all warranties, either express or implied, including but not +> limited to implied warranties of merchantability and fitness for a +> particular purpose, with respect to this code and accompanying +> documentation. +> +> Although their code does not appear in the current release, the +> authors also wish to thank Hutchison Avenue Software Corporation +> for their prior contributions. diff --git a/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/nobgd.pl b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/nobgd.pl new file mode 100644 index 00000000000..e1c34624a81 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/nobgd.pl @@ -0,0 +1,58 @@ +#!/usr/bin/env perl + +# Copy C source files (i.e. *.[ch]) from $src to $dest, first +# stripping out uses of the macro BGD_DECLARE(<type>). A line must +# begin with 'BGD_DECLARE' for it to be considered a use. + +use strict; +use warnings; + +use File::Basename; + +my ($src, $dest) = @ARGV; + +die "Invalid arguments: nobgd.pl <src-dir> <dest-dir>\n" + unless ($src && $dest && -d $src && -d $dest); + +for my $file (glob("$src/*.c"), glob("$src/*.h")) { + do {local $| = 1; print "."}; + fixup($file, $dest); +} +print "\n"; + +sub fixup { + my ($src, $destDir) = @_; + my $dest = $destDir . "/" . basename($src); + + my $content = slurp($src); + $content =~ s{^ BGD_DECLARE \( ([^)]+) \)}{$1}gmx; + unslurp($dest, $content); +} + + +sub slurp { + my ($filename) = @_; + local $/; # no file separator + my $data; + + open my $fh, "<", $filename + or die "Unable to read file '$filename'.\n"; + $data = <$fh>; + close($fh); + + return $data; +} + + +sub unslurp { + my ($filename, $data) = @_; + + die "Refusing to overwrite file '$filename'\n" if -f $filename; + + open my $fh, ">", $filename + or die "Unable to open '$filename' for writing.\n"; + print {$fh} $data + or die "Error writing file '$filename'\n"; + close ($fh); +} + diff --git a/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/preamble.txt b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/preamble.txt new file mode 100644 index 00000000000..ca2e43f9db1 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/preamble.txt @@ -0,0 +1,95 @@ +Title: About LibGD @VERSION@ + +What is gd?: + +gd is a graphics library. It allows your code to quickly draw images +complete with lines, arcs, text, multiple colors, cut and paste from +other images, and flood fills, and write out the result as a PNG or +JPEG file. This is particularly useful in World Wide Web applications, +where PNG and JPEG are two of the formats accepted for inline images +by most browsers. + +gd is not a paint program. If you are looking for a paint program, you +are looking in the wrong place. If you are not a programmer, you are +looking in the wrong place, unless you are installing a required +library in order to run an application. + +gd does not provide for every possible desirable graphics +operation. It is not necessary or desirable for gd to become a +kitchen-sink graphics package, but version 2.0 does include most +frequently requested features, including both truecolor and palette +images, resampling (smooth resizing of truecolor images) and so forth. + +gd basics: using gd in your program: + +gd lets you create PNG or JPEG images on the fly. To use gd in your +program, include the file gd.h, and link with the gd library and the +other required libraries; the syntax for most Unix flavors is: + +> -lgd -lpng -lz -ljpeg -lfreetype -lm + +Assuming that all of these libraries are available. + +If you want to use the provided simple fonts, include gdfontt.h, +gdfonts.h, gdfontmb.h, gdfontl.h and/or gdfontg.h. For more impressive +results, install FreeType 2.x and use the gdImageStringFT function. If +you are not using the provided Makefile and/or a library-based +approach, be sure to include the source modules as well in your +project. + +Here is a short example program. (For a more advanced example, see +gddemo.c, included in the distribution. gddemo.c is NOT the same +program; it demonstrates additional features!) + +>/* Bring in gd library functions */ +>#include "gd.h" +> +>/* Bring in standard I/O so we can output the PNG to a file */ +>#include <stdio.h> +> +>int main() { +> /* Declare the image */ +> gdImagePtr im; +> /* Declare output files */ +> FILE *pngout, *jpegout; +> /* Declare color indexes */ +> int black; +> int white; +> +> /* Allocate the image: 64 pixels across by 64 pixels tall */ +> im = gdImageCreate(64, 64); +> +> /* Allocate the color black (red, green and blue all minimum). +> Since this is the first color in a new image, it will +> be the background color. */ +> black = gdImageColorAllocate(im, 0, 0, 0); +> +> /* Allocate the color white (red, green and blue all maximum). */ +> white = gdImageColorAllocate(im, 255, 255, 255); +> +> /* Draw a line from the upper left to the lower right, +> using white color index. */ +> gdImageLine(im, 0, 0, 63, 63, white); +> +> /* Open a file for writing. "wb" means "write binary", important +> under MSDOS, harmless under Unix. */ +> pngout = fopen("test.png", "wb"); +> +> /* Do the same for a JPEG-format file. */ +> jpegout = fopen("test.jpg", "wb"); +> +> /* Output the image to the disk file in PNG format. */ +> gdImagePng(im, pngout); +> +> /* Output the same image in JPEG format, using the default +> JPEG quality setting. */ +> gdImageJpeg(im, jpegout, -1); +> +> /* Close the files. */ +> fclose(pngout); +> fclose(jpegout); +> +> /* Destroy the image in memory. */ +> gdImageDestroy(im); +>} +> diff --git a/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Languages.txt b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Languages.txt new file mode 100644 index 00000000000..85d5fde477b --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Languages.txt @@ -0,0 +1,113 @@ +Format: 1.51 + +# This is the Natural Docs languages file for this project. If you change +# anything here, it will apply to THIS PROJECT ONLY. If you'd like to change +# something for all your projects, edit the Languages.txt in Natural Docs' +# Config directory instead. + + +# You can prevent certain file extensions from being scanned like this: +# Ignore Extensions: [extension] [extension] ... + + +#------------------------------------------------------------------------------- +# SYNTAX: +# +# Unlike other Natural Docs configuration files, in this file all comments +# MUST be alone on a line. Some languages deal with the # character, so you +# cannot put comments on the same line as content. +# +# Also, all lists are separated with spaces, not commas, again because some +# languages may need to use them. +# +# Language: [name] +# Alter Language: [name] +# Defines a new language or alters an existing one. Its name can use any +# characters. If any of the properties below have an add/replace form, you +# must use that when using Alter Language. +# +# The language Shebang Script is special. It's entry is only used for +# extensions, and files with those extensions have their shebang (#!) lines +# read to determine the real language of the file. Extensionless files are +# always treated this way. +# +# The language Text File is also special. It's treated as one big comment +# so you can put Natural Docs content in them without special symbols. Also, +# if you don't specify a package separator, ignored prefixes, or enum value +# behavior, it will copy those settings from the language that is used most +# in the source tree. +# +# Extensions: [extension] [extension] ... +# [Add/Replace] Extensions: [extension] [extension] ... +# Defines the file extensions of the language's source files. You can +# redefine extensions found in the main languages file. You can use * to +# mean any undefined extension. +# +# Shebang Strings: [string] [string] ... +# [Add/Replace] Shebang Strings: [string] [string] ... +# Defines a list of strings that can appear in the shebang (#!) line to +# designate that it's part of the language. You can redefine strings found +# in the main languages file. +# +# Ignore Prefixes in Index: [prefix] [prefix] ... +# [Add/Replace] Ignored Prefixes in Index: [prefix] [prefix] ... +# +# Ignore [Topic Type] Prefixes in Index: [prefix] [prefix] ... +# [Add/Replace] Ignored [Topic Type] Prefixes in Index: [prefix] [prefix] ... +# Specifies prefixes that should be ignored when sorting symbols in an +# index. Can be specified in general or for a specific topic type. +# +#------------------------------------------------------------------------------ +# For basic language support only: +# +# Line Comments: [symbol] [symbol] ... +# Defines a space-separated list of symbols that are used for line comments, +# if any. +# +# Block Comments: [opening sym] [closing sym] [opening sym] [closing sym] ... +# Defines a space-separated list of symbol pairs that are used for block +# comments, if any. +# +# Package Separator: [symbol] +# Defines the default package separator symbol. The default is a dot. +# +# [Topic Type] Prototype Enders: [symbol] [symbol] ... +# When defined, Natural Docs will attempt to get a prototype from the code +# immediately following the topic type. It stops when it reaches one of +# these symbols. Use \n for line breaks. +# +# Line Extender: [symbol] +# Defines the symbol that allows a prototype to span multiple lines if +# normally a line break would end it. +# +# Enum Values: [global|under type|under parent] +# Defines how enum values are referenced. The default is global. +# global - Values are always global, referenced as 'value'. +# under type - Values are under the enum type, referenced as +# 'package.enum.value'. +# under parent - Values are under the enum's parent, referenced as +# 'package.value'. +# +# Perl Package: [perl package] +# Specifies the Perl package used to fine-tune the language behavior in ways +# too complex to do in this file. +# +#------------------------------------------------------------------------------ +# For full language support only: +# +# Full Language Support: [perl package] +# Specifies the Perl package that has the parsing routines necessary for full +# language support. +# +#------------------------------------------------------------------------------- + +# The following languages are defined in the main file, if you'd like to alter +# them: +# +# Text File, Shebang Script, C/C++, C#, Java, JavaScript, Perl, Python, +# PHP, SQL, Visual Basic, Pascal, Assembly, Ada, Tcl, Ruby, Makefile, +# ActionScript, ColdFusion, R, Fortran + +# If you add a language that you think would be useful to other developers +# and should be included in Natural Docs by default, please e-mail it to +# languages [at] naturaldocs [dot] org. diff --git a/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Topics.txt b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Topics.txt new file mode 100644 index 00000000000..21530908d76 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/project/Topics.txt @@ -0,0 +1,81 @@ +Format: 1.51 + +# This is the Natural Docs topics file for this project. If you change anything +# here, it will apply to THIS PROJECT ONLY. If you'd like to change something +# for all your projects, edit the Topics.txt in Natural Docs' Config directory +# instead. + + +# If you'd like to prevent keywords from being recognized by Natural Docs, you +# can do it like this: +# Ignore Keywords: [keyword], [keyword], ... +# +# Or you can use the list syntax like how they are defined: +# Ignore Keywords: +# [keyword] +# [keyword], [plural keyword] +# ... + + +#------------------------------------------------------------------------------- +# SYNTAX: +# +# Topic Type: [name] +# Alter Topic Type: [name] +# Creates a new topic type or alters one from the main file. Each type gets +# its own index and behavior settings. Its name can have letters, numbers, +# spaces, and these charaters: - / . ' +# +# Plural: [name] +# Sets the plural name of the topic type, if different. +# +# Keywords: +# [keyword] +# [keyword], [plural keyword] +# ... +# Defines or adds to the list of keywords for the topic type. They may only +# contain letters, numbers, and spaces and are not case sensitive. Plural +# keywords are used for list topics. You can redefine keywords found in the +# main topics file. +# +# Index: [yes|no] +# Whether the topics get their own index. Defaults to yes. Everything is +# included in the general index regardless of this setting. +# +# Scope: [normal|start|end|always global] +# How the topics affects scope. Defaults to normal. +# normal - Topics stay within the current scope. +# start - Topics start a new scope for all the topics beneath it, +# like class topics. +# end - Topics reset the scope back to global for all the topics +# beneath it. +# always global - Topics are defined as global, but do not change the scope +# for any other topics. +# +# Class Hierarchy: [yes|no] +# Whether the topics are part of the class hierarchy. Defaults to no. +# +# Page Title If First: [yes|no] +# Whether the topic's title becomes the page title if it's the first one in +# a file. Defaults to no. +# +# Break Lists: [yes|no] +# Whether list topics should be broken into individual topics in the output. +# Defaults to no. +# +# Can Group With: [type], [type], ... +# Defines a list of topic types that this one can possibly be grouped with. +# Defaults to none. +#------------------------------------------------------------------------------- + +# The following topics are defined in the main file, if you'd like to alter +# their behavior or add keywords: +# +# Generic, Class, Interface, Section, File, Group, Function, Variable, +# Property, Type, Constant, Enumeration, Event, Delegate, Macro, +# Database, Database Table, Database View, Database Index, Database +# Cursor, Database Trigger, Cookie, Build Target + +# If you add something that you think would be useful to other developers +# and should be included in Natural Docs by default, please e-mail it to +# topics [at] naturaldocs [dot] org. diff --git a/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/run_docs.sh b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/run_docs.sh new file mode 100755 index 00000000000..dfe1e62ebf8 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/docs/naturaldocs/run_docs.sh @@ -0,0 +1,33 @@ +#!/bin/bash + +set -e + +# Version number +VERSION=`(cd ../../; perl config/getver.pl)` + +# Clear away old docs and ensure the doc dir. is present. +[ -d html ] && rm -rf html +mkdir html + +# Create a lightly-processed copy of the source to use as input. This +# file skips all non-C code in src/ and removes the BGD_DECLARE() +# macro from definitions so they don't show up in the docs. +[ -d tmp ] && rm -rf tmp +mkdir tmp +perl nobgd.pl ../../src/ tmp/ + +# Add the external docs. +cp license.txt tmp/ +sed -e "s/@VERSION@/$VERSION/g" preamble.txt > tmp/preamble.txt +# ^^^ hack to get the version number in the docs. + +# Run naturaldocs to create the manual. +naturaldocs --rebuild --rebuild-output --documented-only \ + -i tmp/ \ + -o html html \ + --project project/ + +# And cleanup the temp files. +rm -rf Data tmp + + diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/examples/CMakeLists.txt index e31e67d408a..e31e67d408a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/examples/CMakeLists.txt diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/arc.c b/Build/source/libs/gd/libgd-2.1.1/examples/arc.c index 8e862833855..8e862833855 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/arc.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/arc.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/copyrotated.c b/Build/source/libs/gd/libgd-2.1.1/examples/copyrotated.c index 03e493d0ce0..03e493d0ce0 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/copyrotated.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/copyrotated.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/crop.c b/Build/source/libs/gd/libgd-2.1.1/examples/crop.c index bafb6df849c..bafb6df849c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/crop.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/crop.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/flip.c b/Build/source/libs/gd/libgd-2.1.1/examples/flip.c index 2399457b81b..2399457b81b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/flip.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/flip.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/gif.c b/Build/source/libs/gd/libgd-2.1.1/examples/gif.c index d5103f086b3..d5103f086b3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/gif.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/gif.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/nnquant.c b/Build/source/libs/gd/libgd-2.1.1/examples/nnquant.c index 33ed523266e..33ed523266e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/nnquant.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/nnquant.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/noIcon.pic b/Build/source/libs/gd/libgd-2.1.1/examples/noIcon.pic Binary files differindex 8335d3a2a28..8335d3a2a28 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/noIcon.pic +++ b/Build/source/libs/gd/libgd-2.1.1/examples/noIcon.pic diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/noIcon.sgi b/Build/source/libs/gd/libgd-2.1.1/examples/noIcon.sgi Binary files differindex 98aac523c10..98aac523c10 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/noIcon.sgi +++ b/Build/source/libs/gd/libgd-2.1.1/examples/noIcon.sgi diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/noIcon.tga b/Build/source/libs/gd/libgd-2.1.1/examples/noIcon.tga Binary files differindex 7063fac97bf..7063fac97bf 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/noIcon.tga +++ b/Build/source/libs/gd/libgd-2.1.1/examples/noIcon.tga diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/noIconAlpha.tga b/Build/source/libs/gd/libgd-2.1.1/examples/noIconAlpha.tga Binary files differindex 3af87b47b67..3af87b47b67 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/noIconAlpha.tga +++ b/Build/source/libs/gd/libgd-2.1.1/examples/noIconAlpha.tga diff --git a/Build/source/libs/gd/libgd-2.1.1/examples/resize.c b/Build/source/libs/gd/libgd-2.1.1/examples/resize.c new file mode 100644 index 00000000000..84543cd434b --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/examples/resize.c @@ -0,0 +1,59 @@ +#include "gd.h" +#include <stdio.h> +#include <stdlib.h> + +int main (int argc, char *argv[]) { + FILE *fp; + gdImagePtr in, out; + int w, h; + + /* Help */ + if (argc<=4) { + printf("%s input.jpg output.jpg width height\n", argv[0]); + return 1; + } + + /* Size */ + w = atoi(argv[3]); + h = atoi(argv[4]); + if (w<=0 || h<=0) { + fprintf(stderr, "Bad size %dx%d\n", h, w); + return 2; + } + + /* Input */ + fp = fopen(argv[1], "rb"); + if (!fp) { + fprintf(stderr, "Can't read image %s\n", argv[1]); + return 3; + } + in = gdImageCreateFromJpeg(fp); + fclose(fp); + if (!in) { + fprintf(stderr, "Can't create image from %s\n", argv[1]); + return 4; + } + + /* Resize */ + gdImageSetInterpolationMethod(in, GD_BILINEAR_FIXED); + out = gdImageScale(in, w, h); + if (!out) { + fprintf(stderr, "gdImageScale fails\n"); + return 5; + } + + /* Output */ + fp = fopen(argv[2], "wb"); + if (!fp) { + fprintf(stderr, "Can't save image %s\n", argv[2]); + return 6; + } + gdImageJpeg(out, fp, 90); + fclose(fp); + + /* Cleanups */ + gdImageDestroy(in); + gdImageDestroy(out); + + return 0; +}
\ No newline at end of file diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/test_crop_threshold.png b/Build/source/libs/gd/libgd-2.1.1/examples/test_crop_threshold.png Binary files differindex 4a9dff1a815..4a9dff1a815 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/test_crop_threshold.png +++ b/Build/source/libs/gd/libgd-2.1.1/examples/test_crop_threshold.png diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/tgaread.c b/Build/source/libs/gd/libgd-2.1.1/examples/tgaread.c index a8e080782b2..a8e080782b2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/tgaread.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/tgaread.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/tiffread.c b/Build/source/libs/gd/libgd-2.1.1/examples/tiffread.c index fe63ce00b2c..fe63ce00b2c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/tiffread.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/tiffread.c diff --git a/Build/source/libs/gd/libgd-2.1.0/examples/windows.c b/Build/source/libs/gd/libgd-2.1.1/examples/windows.c index 55976386f4e..55976386f4e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/examples/windows.c +++ b/Build/source/libs/gd/libgd-2.1.1/examples/windows.c diff --git a/Build/source/libs/gd/libgd-2.1.0/m4/ax_pthread.m4 b/Build/source/libs/gd/libgd-2.1.1/m4/ax_pthread.m4 index 6d400ed4e8e..6d400ed4e8e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/m4/ax_pthread.m4 +++ b/Build/source/libs/gd/libgd-2.1.1/m4/ax_pthread.m4 diff --git a/Build/source/libs/gd/libgd-2.1.0/m4/visibility.m4 b/Build/source/libs/gd/libgd-2.1.1/m4/visibility.m4 index 2ff6330aa42..2ff6330aa42 100644 --- a/Build/source/libs/gd/libgd-2.1.0/m4/visibility.m4 +++ b/Build/source/libs/gd/libgd-2.1.1/m4/visibility.m4 diff --git a/Build/source/libs/gd/libgd-2.1.0/m4/w32.m4 b/Build/source/libs/gd/libgd-2.1.1/m4/w32.m4 index fbcc541d969..fbcc541d969 100644 --- a/Build/source/libs/gd/libgd-2.1.0/m4/w32.m4 +++ b/Build/source/libs/gd/libgd-2.1.1/m4/w32.m4 diff --git a/Build/source/libs/gd/libgd-2.1.0/netware/Makefile.netware b/Build/source/libs/gd/libgd-2.1.1/netware/Makefile.netware index 0e82afd30ce..3da624349f5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/netware/Makefile.netware +++ b/Build/source/libs/gd/libgd-2.1.1/netware/Makefile.netware @@ -350,9 +350,9 @@ $(OBJDIR)/%.o: %.c # @echo Compiling $< $(CC) $(CFLAGS) -c $< -o $@ -$(OBJDIR)/version.inc: ../configure.ac $(OBJDIR) +$(OBJDIR)/version.inc: ../configure $(OBJDIR) @echo Creating $@ - @$(AWK) -f get_ver.awk $< > $@ + @$(AWK) -f get_ver.awk $< > $@ # TODO: get version info from src/gd.h dist: all -$(RM) -r $(OBJDIR)* diff --git a/Build/source/libs/gd/libgd-2.1.0/netware/get_exp.awk b/Build/source/libs/gd/libgd-2.1.1/netware/get_exp.awk index 5428bf63ca7..5428bf63ca7 100644 --- a/Build/source/libs/gd/libgd-2.1.0/netware/get_exp.awk +++ b/Build/source/libs/gd/libgd-2.1.1/netware/get_exp.awk diff --git a/Build/source/libs/gd/libgd-2.1.0/netware/get_ver.awk b/Build/source/libs/gd/libgd-2.1.1/netware/get_ver.awk index 8747a338a57..8747a338a57 100644 --- a/Build/source/libs/gd/libgd-2.1.0/netware/get_ver.awk +++ b/Build/source/libs/gd/libgd-2.1.1/netware/get_ver.awk diff --git a/Build/source/libs/gd/libgd-2.1.0/netware/keepscreen.c b/Build/source/libs/gd/libgd-2.1.1/netware/keepscreen.c index 0ff85628524..0ff85628524 100644 --- a/Build/source/libs/gd/libgd-2.1.0/netware/keepscreen.c +++ b/Build/source/libs/gd/libgd-2.1.1/netware/keepscreen.c diff --git a/Build/source/libs/gd/libgd-2.1.0/netware/nwlibc.c b/Build/source/libs/gd/libgd-2.1.1/netware/nwlibc.c index b981a554773..b981a554773 100644 --- a/Build/source/libs/gd/libgd-2.1.0/netware/nwlibc.c +++ b/Build/source/libs/gd/libgd-2.1.1/netware/nwlibc.c diff --git a/Build/source/libs/gd/libgd-2.1.0/netware/tests/Makefile.netware b/Build/source/libs/gd/libgd-2.1.1/netware/tests/Makefile.netware index 74cc234cba7..74cc234cba7 100644 --- a/Build/source/libs/gd/libgd-2.1.0/netware/tests/Makefile.netware +++ b/Build/source/libs/gd/libgd-2.1.1/netware/tests/Makefile.netware diff --git a/Build/source/libs/gd/libgd-2.1.0/src/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/src/CMakeLists.txt index daeaa26e774..e27467dba0d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/src/CMakeLists.txt @@ -64,24 +64,30 @@ SET (LIBGD_SRC_FILES gd_webp.c webpimg.c gd_xbm.c + gd_version.c ) add_library(${GD_LIB} ${LIBGD_SRC_FILES}) add_library(${GD_LIB_STATIC} STATIC ${LIBGD_SRC_FILES}) if (WIN32 AND NOT MINGW AND NOT MSYS) -# SET_TARGET_PROPERTIES(${GD_LIB} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:msvcrt.lib") -SET_PROPERTY(TARGET ${GD_LIB_STATIC} APPEND PROPERTY COMPILE_DEFINITIONS NONDLL=1) + # SET_TARGET_PROPERTIES(${GD_LIB} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:msvcrt.lib") + SET_PROPERTY(TARGET ${GD_LIB_STATIC} APPEND PROPERTY COMPILE_DEFINITIONS NONDLL=1) ENDIF(WIN32 AND NOT MINGW AND NOT MSYS) +if(UNIX) + set_target_properties(${GD_LIB_STATIC} PROPERTIES OUTPUT_NAME ${GD_LIB}) +endif() + if (MINGW OR MSYS) ADD_DEFINITIONS("-mms-bitfields") + set_target_properties(${GD_LIB_STATIC} PROPERTIES OUTPUT_NAME ${GD_LIB}) endif (MINGW OR MSYS) INCLUDE_DIRECTORIES(BEFORE "${PROJECT_BINARY_DIR}" "${CMAKE_BINARY_DIR}" "${GD_SOURCE_DIR}/src") -target_link_libraries(${GD_LIB} ${ZLIB_LIBRARIES} ${FREETYPE_LIBRARIES} ${PNG_LIBRARIES} ${LIQ_LIBRARIES} ${JPEG_LIBRARIES} ${TIFF_LIBRARIES} ${XPM_LIBRARIES} ${FONTCONFIG_LIBRARY} ${VPX_LIBRARIES}) -target_link_libraries(${GD_LIB_STATIC} ${ZLIB_LIBRARIES} ${FREETYPE_LIBRARIES} ${PNG_LIBRARIES} ${LIQ_LIBRARIES} ${JPEG_LIBRARIES} ${TIFF_LIBRARIES} ${XPM_LIBRARIES} ${FONTCONFIG_LIBRARY} ${VPX_LIBRARIES} ) +target_link_libraries(${GD_LIB} ${ZLIB_LIBRARIES} ${FREETYPE_LIBRARIES} ${PNG_LIBRARIES} ${ICONV_LIBRARIES} ${LIQ_LIBRARIES} ${JPEG_LIBRARIES} ${TIFF_LIBRARIES} ${XPM_LIBRARIES} ${FONTCONFIG_LIBRARY} ${VPX_LIBRARIES}) +target_link_libraries(${GD_LIB_STATIC} ${ZLIB_LIBRARIES} ${FREETYPE_LIBRARIES} ${PNG_LIBRARIES} ${ICONV_LIBRARIES} ${LIQ_LIBRARIES} ${JPEG_LIBRARIES} ${TIFF_LIBRARIES} ${XPM_LIBRARIES} ${FONTCONFIG_LIBRARY} ${VPX_LIBRARIES} ) set(GD_PROGRAMS annotate gdparttopng gdtopng gd2copypal gd2topng pngtogd pngtogd2 webpng gd2togif gdcmpgif giftogd2) foreach(program ${GD_PROGRAMS}) diff --git a/Build/source/libs/gd/libgd-2.1.0/src/COPYING b/Build/source/libs/gd/libgd-2.1.1/src/COPYING index 90ef1c867ef..90ef1c867ef 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/COPYING +++ b/Build/source/libs/gd/libgd-2.1.1/src/COPYING diff --git a/Build/source/libs/gd/libgd-2.1.0/src/Makefile.am b/Build/source/libs/gd/libgd-2.1.1/src/Makefile.am index a0f2cd16665..ac66c79e082 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/Makefile.am +++ b/Build/source/libs/gd/libgd-2.1.1/src/Makefile.am @@ -48,7 +48,7 @@ libgd_la_SOURCES = gd.c gd_color.c gd_color_map.c gd_transform.c gdfx.c gd_secur gdfontmb.c gdfonts.c gdfontt.c gdft.c gdhelpers.c gdhelpers.h gdkanji.c gdtables.c gdxpm.c jisx0208.h wbmp.c wbmp.h \ gd_filter.c gd_nnquant.c gd_rotate.c gd_matrix.c gd_interpolation.c gd_crop.c webpimg.c webpimg.h gd_webp.c gd_tiff.c \ gd_tga.c gd_tga.h gd_bmp.c bmp.h gd_color.h gd_nnquant.h gd_tga.h gd_intern.h gd_io_stream.h gd_xbm.c \ - gd_color_match.c + gd_color_match.c gd_version.c gd_filename.c libgd_la_LDFLAGS = -version-info $(GDLIB_CURRENT):$(GDLIB_REVISION):$(GDLIB_AGE) -no-undefined diff --git a/Build/source/libs/gd/libgd-2.1.0/src/annotate.c b/Build/source/libs/gd/libgd-2.1.1/src/annotate.c index c66e3311306..c66e3311306 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/annotate.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/annotate.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/bdftogd b/Build/source/libs/gd/libgd-2.1.1/src/bdftogd index 66ffcc9ae88..66ffcc9ae88 100755 --- a/Build/source/libs/gd/libgd-2.1.0/src/bdftogd +++ b/Build/source/libs/gd/libgd-2.1.1/src/bdftogd diff --git a/Build/source/libs/gd/libgd-2.1.0/src/bmp.h b/Build/source/libs/gd/libgd-2.1.1/src/bmp.h index cecde0383f5..cecde0383f5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/bmp.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/bmp.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/circletexttest.c b/Build/source/libs/gd/libgd-2.1.1/src/circletexttest.c index 55e0970c1a3..55e0970c1a3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/circletexttest.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/circletexttest.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/config.h.cmake b/Build/source/libs/gd/libgd-2.1.1/src/config.h.cmake index a8e6f00b64d..a8e6f00b64d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/config.h.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/src/config.h.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/src/config.hin b/Build/source/libs/gd/libgd-2.1.1/src/config.hin index 54aeb524284..54aeb524284 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/config.hin +++ b/Build/source/libs/gd/libgd-2.1.1/src/config.hin diff --git a/Build/source/libs/gd/libgd-2.1.0/src/demoin.png b/Build/source/libs/gd/libgd-2.1.1/src/demoin.png Binary files differindex c3e57b2081e..c3e57b2081e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/demoin.png +++ b/Build/source/libs/gd/libgd-2.1.1/src/demoin.png diff --git a/Build/source/libs/gd/libgd-2.1.0/src/entities.h b/Build/source/libs/gd/libgd-2.1.1/src/entities.h index cf24cb63e3d..cf24cb63e3d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/entities.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/entities.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/entities.html b/Build/source/libs/gd/libgd-2.1.1/src/entities.html index 5c5d7b65a32..5c5d7b65a32 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/entities.html +++ b/Build/source/libs/gd/libgd-2.1.1/src/entities.html diff --git a/Build/source/libs/gd/libgd-2.1.0/src/entities.tcl b/Build/source/libs/gd/libgd-2.1.1/src/entities.tcl index 1f7c9e7e4af..1f7c9e7e4af 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/entities.tcl +++ b/Build/source/libs/gd/libgd-2.1.1/src/entities.tcl diff --git a/Build/source/libs/gd/libgd-2.1.0/src/fontconfigtest.c b/Build/source/libs/gd/libgd-2.1.1/src/fontconfigtest.c index 47c484922db..47c484922db 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/fontconfigtest.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/fontconfigtest.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/fontsizetest.c b/Build/source/libs/gd/libgd-2.1.1/src/fontsizetest.c index 55b9209d051..55b9209d051 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/fontsizetest.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/fontsizetest.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/fontwheeltest.c b/Build/source/libs/gd/libgd-2.1.1/src/fontwheeltest.c index b2bb258fdad..b2bb258fdad 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/fontwheeltest.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/fontwheeltest.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd.c b/Build/source/libs/gd/libgd-2.1.1/src/gd.c index 8c364d9e5fc..cc698a0923f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd.c @@ -129,6 +129,35 @@ static void gdImageBrushApply (gdImagePtr im, int x, int y); static void gdImageTileApply (gdImagePtr im, int x, int y); BGD_DECLARE(int) gdImageGetTrueColorPixel (gdImagePtr im, int x, int y); + +/* + Function: gdImageCreate + + gdImageCreate is called to create palette-based images, with no + more than 256 colors. The image must eventually be destroyed using + gdImageDestroy(). + + Parameters: + + sx - The image width. + sy - The image height. + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > im = gdImageCreate(64, 64); + > // ... Use the image ... + > gdImageDestroy(im); + + See Also: + + <gdImageCreateTrueColor> + + */ BGD_DECLARE(gdImagePtr) gdImageCreate (int sx, int sy) { int i; @@ -194,6 +223,42 @@ BGD_DECLARE(gdImagePtr) gdImageCreate (int sx, int sy) return im; } + + +/* + Function: gdImageCreateTrueColor + + <gdImageCreateTrueColor> is called to create truecolor images, + with an essentially unlimited number of colors. Invoke + <gdImageCreateTrueColor> with the x and y dimensions of the + desired image. <gdImageCreateTrueColor> returns a <gdImagePtr> + to the new image, or NULL if unable to allocate the image. The + image must eventually be destroyed using <gdImageDestroy>(). + + Truecolor images are always filled with black at creation + time. There is no concept of a "background" color index. + + Parameters: + + sx - The image width. + sy - The image height. + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > im = gdImageCreateTrueColor(64, 64); + > // ... Use the image ... + > gdImageDestroy(im); + + See Also: + + <gdImageCreateTrueColor> + +*/ BGD_DECLARE(gdImagePtr) gdImageCreateTrueColor (int sx, int sy) { int i; @@ -266,6 +331,31 @@ BGD_DECLARE(gdImagePtr) gdImageCreateTrueColor (int sx, int sy) return im; } +/* + Function: gdImageDestroy + + <gdImageDestroy> is used to free the memory associated with an + image. It is important to invoke <gdImageDestroy> before exiting + your program or assigning a new image to a <gdImagePtr> variable. + + Parameters: + + im - Pointer to the gdImage to delete. + + Returns: + + Nothing. + + Example: + + > gdImagePtr im; + > im = gdImageCreate(10, 10); + > // ... Use the image ... + > // Now destroy it + > gdImageDestroy(im); + +*/ + BGD_DECLARE(void) gdImageDestroy (gdImagePtr im) { int i; @@ -971,10 +1061,21 @@ BGD_DECLARE(void) gdImageSetPixel (gdImagePtr im, int x, int y, int color) default: if (gdImageBoundsSafeMacro (im, x, y)) { if (im->trueColor) { - if (im->alphaBlendingFlag) { - im->tpixels[y][x] = gdAlphaBlend (im->tpixels[y][x], color); - } else { - im->tpixels[y][x] = color; + switch (im->alphaBlendingFlag) { + default: + case gdEffectReplace: + im->tpixels[y][x] = color; + break; + case gdEffectAlphaBlend: + case gdEffectNormal: + im->tpixels[y][x] = gdAlphaBlend(im->tpixels[y][x], color); + break; + case gdEffectOverlay : + im->tpixels[y][x] = gdLayerOverlay(im->tpixels[y][x], color); + break; + case gdEffectMultiply : + im->tpixels[y][x] = gdLayerMultiply(im->tpixels[y][x], color); + break; } } else { im->pixels[y][x] = color; @@ -3240,6 +3341,55 @@ BGD_DECLARE(int) gdAlphaBlend (int dst, int src) return ((alpha << 24) + (red << 16) + (green << 8) + blue); } +static int gdAlphaOverlayColor (int src, int dst, int max ); +BGD_DECLARE(int) gdLayerOverlay (int dst, int src) +{ + int a1, a2; + a1 = gdAlphaMax - gdTrueColorGetAlpha(dst); + a2 = gdAlphaMax - gdTrueColorGetAlpha(src); + return ( ((gdAlphaMax - a1*a2/gdAlphaMax) << 24) + + (gdAlphaOverlayColor( gdTrueColorGetRed(src), gdTrueColorGetRed(dst), gdRedMax ) << 16) + + (gdAlphaOverlayColor( gdTrueColorGetGreen(src), gdTrueColorGetGreen(dst), gdGreenMax ) << 8) + + (gdAlphaOverlayColor( gdTrueColorGetBlue(src), gdTrueColorGetBlue(dst), gdBlueMax )) + ); +} + +/* Apply 'overlay' effect - background pixels are colourised by the foreground colour */ +static int gdAlphaOverlayColor (int src, int dst, int max ) +{ + dst = dst << 1; + if( dst > max ) { + /* in the "light" zone */ + return dst + (src << 1) - (dst * src / max) - max; + } else { + /* in the "dark" zone */ + return dst * src / max; + } +} + +/* Apply 'multiply' effect */ +BGD_DECLARE(int) gdLayerMultiply (int dst, int src) +{ + int a1, a2, r1, r2, g1, g2, b1, b2; + a1 = gdAlphaMax - gdTrueColorGetAlpha(src); + a2 = gdAlphaMax - gdTrueColorGetAlpha(dst); + + r1 = gdRedMax - (a1 * (gdRedMax - gdTrueColorGetRed(src))) / gdAlphaMax; + r2 = gdRedMax - (a2 * (gdRedMax - gdTrueColorGetRed(dst))) / gdAlphaMax; + g1 = gdGreenMax - (a1 * (gdGreenMax - gdTrueColorGetGreen(src))) / gdAlphaMax; + g2 = gdGreenMax - (a2 * (gdGreenMax - gdTrueColorGetGreen(dst))) / gdAlphaMax; + b1 = gdBlueMax - (a1 * (gdBlueMax - gdTrueColorGetBlue(src))) / gdAlphaMax; + b2 = gdBlueMax - (a2 * (gdBlueMax - gdTrueColorGetBlue(dst))) / gdAlphaMax ; + + a1 = gdAlphaMax - a1; + a2 = gdAlphaMax - a2; + return ( ((a1*a2/gdAlphaMax) << 24) + + ((r1*r2/gdRedMax) << 16) + + ((g1*g2/gdGreenMax) << 8) + + ((b1*b2/gdBlueMax)) + ); +} + BGD_DECLARE(void) gdImageAlphaBlending (gdImagePtr im, int alphaBlendingArg) { im->alphaBlendingFlag = alphaBlendingArg; @@ -3489,8 +3639,8 @@ BGD_DECLARE(int) gdImagePaletteToTrueColor(gdImagePtr src) } } - /* free old palette buffer */ - for (yy = y - 1; yy >= yy - 1; yy--) { + /* free old palette buffer (y is sy) */ + for (yy = 0; yy < y; yy++) { gdFree(src->pixels[yy]); } gdFree(src->pixels); @@ -3501,12 +3651,10 @@ BGD_DECLARE(int) gdImagePaletteToTrueColor(gdImagePtr src) return 1; clean_on_error: - if (y > 0) { - - for (yy = y; yy >= yy - 1; y--) { - gdFree(src->tpixels[y]); - } - gdFree(src->tpixels); + /* free new true color buffer (y is not allocated, have failed) */ + for (yy = 0; yy < y; yy++) { + gdFree(src->tpixels[yy]); } + gdFree(src->tpixels); return 0; } diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd.h b/Build/source/libs/gd/libgd-2.1.1/src/gd.h index d8b7807d65f..bdc479c9275 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd.h @@ -2,15 +2,33 @@ extern "C" { #endif + #ifndef GD_H #define GD_H 1 -#define GD_MAJOR_VERSION 2 -#define GD_MINOR_VERSION 1 -#define GD_RELEASE_VERSION 0 -#define GD_EXTRA_VERSION "alpha" -#define GD_VERSION_STRING "2.1.0-alpha" - +/* Version information. This gets parsed by build scripts as well as + * gcc so each #define line in this group must also be splittable on + * whitespace, take the form GD_*_VERSION and contain the magical + * trailing comment. */ +#define GD_MAJOR_VERSION 2 /*version605b5d1778*/ +#define GD_MINOR_VERSION 1 /*version605b5d1778*/ +#define GD_RELEASE_VERSION 1 /*version605b5d1778*/ +#define GD_EXTRA_VERSION "" /*version605b5d1778*/ +/* End parsable section. */ + +/* The version string. This is constructed from the version number + * parts above via macro abuse^Wtrickery. */ +#define GDXXX_VERSION_STR(mjr, mnr, rev, ext) mjr "." mnr "." rev ext +#define GDXXX_STR(s) GDXXX_SSTR(s) /* Two levels needed to expand args. */ +#define GDXXX_SSTR(s) #s + +#define GD_VERSION_STRING \ + GDXXX_VERSION_STR(GDXXX_STR(GD_MAJOR_VERSION), \ + GDXXX_STR(GD_MINOR_VERSION), \ + GDXXX_STR(GD_RELEASE_VERSION), \ + GD_EXTRA_VERSION) + + /* Do the DLL dance: dllexport when building the DLL, dllimport when importing from it, nothing when not on Silly Silly Windows (tm Aardman Productions). */ @@ -59,6 +77,22 @@ extern "C" { #define BGD_DECLARE(rt) BGD_EXPORT_DATA_PROT rt BGD_STDCALL +/* VS2012+ disable keyword macroizing unless _ALLOW_KEYWORD_MACROS is set + We define inline, snprintf, and strcasecmp if they're missing +*/ +#ifdef _MSC_VER +# define _ALLOW_KEYWORD_MACROS +# ifndef inline +# define inline __inline +# endif +# ifndef strcasecmp +# define strcasecmp _stricmp +# endif +# ifndef snprintf +# define snprintf _snprintf +# endif +#endif + #ifdef __cplusplus extern "C" { @@ -121,6 +155,7 @@ extern "C" { #define gdEffectAlphaBlend 1 #define gdEffectNormal 2 #define gdEffectOverlay 3 +#define gdEffectMultiply 4 #define GD_TRUE 1 #define GD_FALSE 0 @@ -136,7 +171,9 @@ extern "C" { The resulting color is opaque. */ BGD_DECLARE(int) gdAlphaBlend (int dest, int src); - +BGD_DECLARE(int) gdLayerOverlay (int dest, int src); +BGD_DECLARE(int) gdLayerMultiply (int dest, int src); + enum gdPaletteQuantizationMethod { GD_QUANT_DEFAULT = 0, GD_QUANT_JQUANT = 1, /* libjpeg's old median cut. Fast, but only uses 16-bit color. */ @@ -148,7 +185,7 @@ enum gdPaletteQuantizationMethod { * Group: Transform * * Constants: gdInterpolationMethod - + * * GD_BELL - Bell * GD_BESSEL - Bessel * GD_BILINEAR_FIXED - fixed point bilinear @@ -205,6 +242,27 @@ typedef enum { /* Interpolation function ptr */ typedef double (* interpolation_method )(double); + +/* + Group: Types + + typedef: gdImage + + typedef: gdImagePtr + + The data structure in which gd stores images. <gdImageCreate>, + <gdImageCreateTrueColor> and the various image file-loading functions + return a pointer to this type, and the other functions expect to + receive a pointer to this type as their first argument. + + *gdImagePtr* is a pointer to *gdImage*. + + (Previous versions of this library encouraged directly manipulating + the contents ofthe struct but we are attempting to move away from + this practice so the fields are no longer documented here. If you + need to poke at the internals of this struct, feel free to look at + *gd.h*.) +*/ typedef struct gdImageStruct { /* Palette-based image pixels */ unsigned char **pixels; @@ -329,6 +387,47 @@ typedef struct } gdPointF, *gdPointFPtr; + +/* + Group: Types + + typedef: gdFont + + typedef: gdFontPtr + + A font structure, containing the bitmaps of all characters in a + font. Used to declare the characteristics of a font. Text-output + functions expect these as their second argument, following the + <gdImagePtr> argument. <gdFontSmall> and <gdFontGetLarge> both + return one. + + You can provide your own font data by providing such a structure and + the associated pixel array. You can determine the width and height + of a single character in a font by examining the w and h members of + the structure. If you will not be creating your own fonts, you will + not need to concern yourself with the rest of the components of this + structure. + + Please see the files gdfontl.c and gdfontl.h for an example of + the proper declaration of this structure. + + > typedef struct { + > // # of characters in font + > int nchars; + > // First character is numbered... (usually 32 = space) + > int offset; + > // Character width and height + > int w; + > int h; + > // Font data; array of characters, one row after another. + > // Easily included in code, also easily loaded from + > // data files. + > char *data; + > } gdFont; + + gdFontPtr is a pointer to gdFont. + +*/ typedef struct { /* # of characters in font */ int nchars; @@ -418,12 +517,36 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromTgaPtr(int size, void *data); BGD_DECLARE(gdImagePtr) gdImageCreateFromBmp (FILE * inFile); BGD_DECLARE(gdImagePtr) gdImageCreateFromBmpPtr (int size, void *data); BGD_DECLARE(gdImagePtr) gdImageCreateFromBmpCtx (gdIOCtxPtr infile); +BGD_DECLARE(gdImagePtr) gdImageCreateFromFile(const char *filename); + + +/* + Group: Types + + typedef: gdSource + + typedef: gdSourcePtr + + *Note:* This interface is *obsolete* and kept only for + *compatibility. Use <gdIOCtx> instead. + + Represents a source from which a PNG can be read. Programmers who + do not wish to read PNGs from a file can provide their own + alternate input mechanism, using the <gdImageCreateFromPngSource> + function. See the documentation of that function for an example of + the proper use of this type. + + > typedef struct { + > int (*source) (void *context, char *buffer, int len); + > void *context; + > } gdSource, *gdSourcePtr; -/* A custom data source. */ -/* The source function must return -1 on error, otherwise the number - of bytes fetched. 0 is EOF, not an error! */ -/* context will be passed to your source function. */ + The source function must return -1 on error, otherwise the number + of bytes fetched. 0 is EOF, not an error! + 'context' will be passed to your source function. + +*/ typedef struct { int (*source) (void *context, char *buffer, int len); void *context; @@ -461,7 +584,9 @@ BGD_DECLARE(void) gdImageDestroy (gdImagePtr im); alpha channel value of 'color'; default is to overwrite. Tiling and line styling are also implemented here. All other gd drawing functions pass through this call, - allowing for many useful effects. */ + allowing for many useful effects. + Overlay and multiply effects are used when gdImageAlphaBlending + is passed gdEffectOverlay and gdEffectMultiply */ BGD_DECLARE(void) gdImageSetPixel (gdImagePtr im, int x, int y, int color); /* FreeType 2 text output with hook to extra flags */ @@ -526,9 +651,23 @@ BGD_DECLARE(char *) gdImageStringFT (gdImage * im, int *brect, int fg, char *fon double ptsize, double angle, int x, int y, char *string); + +/* + Group: Types + + typedef: gdFTStringExtra + + typedef: gdFTStringExtraPtr + + A structure and associated pointer type used to pass additional + parameters to the <gdImageStringFTEx> function. See + <gdImageStringFTEx> for the structure definition. + + Thanks to Wez Furlong. +*/ + /* 2.0.5: provides an extensible way to pass additional parameters. Thanks to Wez Furlong, sorry for the delay. */ - typedef struct { int flags; /* Logical OR of gdFTEX_ values */ double linespacing; /* fine tune line spacing for '\n' */ @@ -596,7 +735,23 @@ BGD_DECLARE(char *) gdImageStringFTEx (gdImage * im, int *brect, int fg, char *f double ptsize, double angle, int x, int y, char *string, gdFTStringExtraPtr strex); -/* Point type for use in polygon drawing. */ + +/* + Group: Types + + typedef: gdPoint + + typedef: gdPointPtr + + Represents a point in the coordinate space of the image; used by + <gdImagePolygon>, <gdImageOpenPolygon> and <gdImageFilledPolygon> + for polygon drawing. + + > typedef struct { + > int x, y; + > } gdPoint, *gdPointPtr; + +*/ typedef struct { int x, y; } @@ -751,6 +906,10 @@ BGD_DECLARE(void) gdImagePngCtxEx (gdImagePtr im, gdIOCtx * out, int level); BGD_DECLARE(void) gdImageWBMP (gdImagePtr image, int fg, FILE * out); BGD_DECLARE(void) gdImageWBMPCtx (gdImagePtr image, int fg, gdIOCtx * out); +BGD_DECLARE(int) gdImageFile(gdImagePtr im, const char *filename); +BGD_DECLARE(int) gdSupportsFileType(const char *filename, int writing); + + /* Guaranteed to correctly free memory returned by the gdImage*Ptr functions */ BGD_DECLARE(void) gdFree (void *m); @@ -772,9 +931,22 @@ BGD_DECLARE(void *) gdImageWebpPtr (gdImagePtr im, int *size); BGD_DECLARE(void *) gdImageWebpPtrEx (gdImagePtr im, int *size, int quantization); BGD_DECLARE(void) gdImageWebpCtx (gdImagePtr im, gdIOCtx * outfile, int quantization); -/* Legal values for Disposal. gdDisposalNone is always used by - the built-in optimizer if previm is passed. */ +/** + * Group: GifAnim + * + * Legal values for Disposal. gdDisposalNone is always used by + * the built-in optimizer if previm is passed. + * + * Constants: gdImageGifAnim + * + * gdDisposalUnknown - Not recommended + * gdDisposalNone - Preserve previous frame + * gdDisposalRestoreBackground - First allocated color of palette + * gdDisposalRestorePrevious - Restore to before start of frame + * + * See also: <gdImageGifAnimAdd> + */ enum { gdDisposalUnknown, gdDisposalNone, @@ -792,11 +964,36 @@ BGD_DECLARE(void *) gdImageGifAnimBeginPtr(gdImagePtr im, int *size, int GlobalC BGD_DECLARE(void *) gdImageGifAnimAddPtr(gdImagePtr im, int *size, int LocalCM, int LeftOfs, int TopOfs, int Delay, int Disposal, gdImagePtr previm); BGD_DECLARE(void *) gdImageGifAnimEndPtr(int *size); -/* A custom data sink. For backwards compatibility. Use gdIOCtx - instead. The sink function must return -1 on error, otherwise the - number of bytes written, which must be equal to len. Context will - be passed to your sink function. + + +/* + Group: Types + + typedef: gdSink + + typedef: gdSinkPtr + + *Note:* This interface is *obsolete* and kept only for + *compatibility. Use <gdIOCtx> instead. + + Represents a "sink" (destination) to which a PNG can be + written. Programmers who do not wish to write PNGs to a file can + provide their own alternate output mechanism, using the + <gdImagePngToSink> function. See the documentation of that + function for an example of the proper use of this type. + + > typedef struct { + > int (*sink) (void *context, char *buffer, int len); + > void *context; + > } gdSink, *gdSinkPtr; + + The _sink_ function must return -1 on error, otherwise the number of + bytes written, which must be equal to len. + + _context_ will be passed to your sink function. + */ + typedef struct { int (*sink) (void *context, const char *buffer, int len); void *context; @@ -937,6 +1134,10 @@ BGD_DECLARE(int) gdImageBrightness(gdImagePtr src, int brightness); BGD_DECLARE(int) gdImageGrayScale(gdImagePtr src); BGD_DECLARE(int) gdImageNegate(gdImagePtr src); +BGD_DECLARE(gdImagePtr) gdImageCopyGaussianBlurred(gdImagePtr src, int radius, + double sigma); + + /* Macros to access information about images. */ /* Returns nonzero if the image is a truecolor image, @@ -1038,21 +1239,10 @@ BGD_DECLARE(gdImagePtr) gdImageCropAuto(gdImagePtr im, const unsigned int mode); BGD_DECLARE(gdImagePtr) gdImageCropThreshold(gdImagePtr im, const unsigned int color, const float threshold); BGD_DECLARE(int) gdImageSetInterpolationMethod(gdImagePtr im, gdInterpolationMethod id); +BGD_DECLARE(gdInterpolationMethod) gdImageGetInterpolationMethod(gdImagePtr im); -gdImagePtr gdImageScaleBilinear(gdImagePtr im, const unsigned int new_width, const unsigned int new_height); -gdImagePtr gdImageScaleBicubic(gdImagePtr src_img, const unsigned int new_width, const unsigned int new_height); -gdImagePtr gdImageScaleBicubicFixed(gdImagePtr src, const unsigned int width, const unsigned int height); -gdImagePtr gdImageScaleNearestNeighbour(gdImagePtr im, const unsigned int width, const unsigned int height); -gdImagePtr gdImageScaleTwoPass(const gdImagePtr pOrigImage, const unsigned int uOrigWidth, const unsigned int uOrigHeight, const unsigned int uNewWidth, const unsigned int uNewHeight); BGD_DECLARE(gdImagePtr) gdImageScale(const gdImagePtr src, const unsigned int new_width, const unsigned int new_height); -gdImagePtr gdImageRotate90(gdImagePtr src, int ignoretransparent); -gdImagePtr gdImageRotate180(gdImagePtr src, int ignoretransparent); -gdImagePtr gdImageRotate270(gdImagePtr src, int ignoretransparent); -gdImagePtr gdImageRotateNearestNeighbour(gdImagePtr src, const float degrees, const int bgColor); -gdImagePtr gdImageRotateBilinear(gdImagePtr src, const float degrees, const int bgColor); -gdImagePtr gdImageRotateBicubicFixed(gdImagePtr src, const float degrees, const int bgColor); -gdImagePtr gdImageRotateGeneric(gdImagePtr src, const float degrees, const int bgColor); BGD_DECLARE(gdImagePtr) gdImageRotateInterpolated(const gdImagePtr src, const float angle, int bgcolor); typedef enum { @@ -1099,6 +1289,15 @@ BGD_DECLARE(int) gdTransformAffineBoundingBox(gdRectPtr src, const double affine /* resolution affects ttf font rendering, particularly hinting */ #define GD_RESOLUTION 96 /* pixels per inch */ + +/* Version information functions */ +BGD_DECLARE(int) gdMajorVersion(void); +BGD_DECLARE(int) gdMinorVersion(void); +BGD_DECLARE(int) gdReleaseVersion(void); +BGD_DECLARE(const char *) gdExtraVersion(void); +BGD_DECLARE(const char *) gdVersionString(void); + + #ifdef __cplusplus } #endif diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd2copypal.c b/Build/source/libs/gd/libgd-2.1.1/src/gd2copypal.c index eaa67b55e6f..eaa67b55e6f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd2copypal.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd2copypal.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd2time.c b/Build/source/libs/gd/libgd-2.1.1/src/gd2time.c index 3c9e8af2c7b..3c9e8af2c7b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd2time.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd2time.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd2togif.c b/Build/source/libs/gd/libgd-2.1.1/src/gd2togif.c index 5a0be19b378..5a0be19b378 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd2togif.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd2togif.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd2topng.c b/Build/source/libs/gd/libgd-2.1.1/src/gd2topng.c index 6c0626f3b30..6c0626f3b30 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd2topng.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd2topng.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_bmp.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_bmp.c index 5f39b67c3e4..5f39b67c3e4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_bmp.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_bmp.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_color.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_color.c index 6d8a8466b8a..6d8a8466b8a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_color.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_color.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_color.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_color.h index 08b06cee09b..08b06cee09b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_color.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_color.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_map.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_map.c index ff48399a982..ff48399a982 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_map.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_map.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_map.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_map.h index 6d2275e5647..6d2275e5647 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_map.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_map.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_map_test.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_map_test.c index 26e08bd8516..26e08bd8516 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_map_test.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_map_test.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_match.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_match.c index 5f0fd0a86c2..5f0fd0a86c2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_color_match.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_color_match.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_crop.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_crop.c index 02966336d18..02966336d18 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_crop.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_crop.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_errors.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_errors.h index 4ecee94b386..4ecee94b386 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_errors.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_errors.h diff --git a/Build/source/libs/gd/libgd-2.1.1/src/gd_filename.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_filename.c new file mode 100644 index 00000000000..ba636cfe0e7 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_filename.c @@ -0,0 +1,254 @@ +/* Convenience functions to read or write images from or to disk, + * determining file type from the filename extension. */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include <stdio.h> +#include <string.h> + +#include "gd.h" + +typedef gdImagePtr (BGD_STDCALL *ReadFn)(FILE *in); +typedef void (BGD_STDCALL *WriteFn)(gdImagePtr im, FILE *out); +typedef gdImagePtr (BGD_STDCALL *LoadFn)(char *filename); + +#ifdef HAVE_LIBZ +static void BGD_STDCALL writegd2(gdImagePtr im, FILE *out) { + gdImageGd2(im, out, 0, GD2_FMT_COMPRESSED); +}/* writegd*/ +#endif + +#ifdef HAVE_LIBJPEG +static void BGD_STDCALL writejpeg(gdImagePtr im, FILE *out) { + gdImageJpeg(im, out, -1); +}/* writejpeg*/ +#endif + +static void BGD_STDCALL writewbmp(gdImagePtr im, FILE *out) { + int fg = gdImageColorClosest(im, 0, 0, 0); + + gdImageWBMP(im, fg, out); +}/* writejpeg*/ + +static void BGD_STDCALL writebmp(gdImagePtr im, FILE *out) { + gdImageBmp(im, out, GD_TRUE); +}/* writejpeg*/ + + +enum FType {UNKNOWN, PNG, JPG, GIF, TIFF, GD, GD2, WEBP}; +static struct FileType { + const char *ext; + ReadFn reader; + WriteFn writer; + LoadFn loader; +} Types[] = { + {".gif", gdImageCreateFromGif, gdImageGif, NULL}, + {".gd", gdImageCreateFromGd, gdImageGd, NULL}, + {".wbmp", gdImageCreateFromWBMP, writewbmp, NULL}, + {".bmp", gdImageCreateFromBmp, writebmp, NULL}, + + {".xbm", gdImageCreateFromXbm, NULL, NULL}, + {".tga", gdImageCreateFromTga, NULL, NULL}, + +#ifdef HAVE_LIBPNG + {".png", gdImageCreateFromPng, gdImagePng, NULL}, +#endif + +#ifdef HAVE_LIBJPEG + {".jpg", gdImageCreateFromJpeg, writejpeg, NULL}, + {".jpeg", gdImageCreateFromJpeg, writejpeg, NULL}, +#endif + +#ifdef HAVE_LIBTIFF + {".tiff", gdImageCreateFromTiff, gdImageTiff, NULL}, + {".tif" , gdImageCreateFromTiff, gdImageTiff, NULL}, +#endif + +#ifdef HAVE_LIBZ + {".gd2", gdImageCreateFromGd2, writegd2, NULL}, +#endif + +#ifdef HAVE_LIBVPX + {".webp", gdImageCreateFromWebp, gdImageWebp, NULL}, +#endif + +#ifdef HAVE_LIBXPM + {".xpm", NULL, NULL, gdImageCreateFromXpm}, +#endif + + {NULL, NULL, NULL} +}; + + +struct FileType * +ftype(const char *filename) { + int n; + char *ext; + + /* Find the file extension (i.e. the last period in the string. */ + ext = strrchr(filename, '.'); + if (!ext) return NULL; + + for (n = 0; Types[n].ext; n++) { + if (strcasecmp(ext, Types[n].ext) == 0) { + return &Types[n]; + }/* if */ + }/* for */ + + return NULL; +}/* ftype*/ + + +/* + Function: gdSupportsFileType + + Tests if a given file type is supported by GD. + + Given the name of an image file (which does not have to exist), + returns 1 (i.e. TRUE) if <gdImageCreateFromFile> can read a file + of that type. This is useful if you do not know which image types + were enabled at compile time. + + If _writing_ is true, the result will be true only if + <gdImageFile> can write a file of this type. + + Note that filename parsing is done exactly the same as is done by + <gdImageCreateFromFile> and <gdImageFile> and is subject to the + same limitations. + + Assuming LibGD is compiled with support for these image types, the + following extensions are supported: + + - .gif + - .gd, .gd2 + - .wbmp + - .bmp + - .xbm + - .tga + - .png + - .jpg, .jpeg + - .tiff, .tif + - .webp + - .xpm + + Names are parsed case-insenstively. + + Parameters: + + filename - Filename with tested extension. + writing - Flag: true tests if writing works + + Returns: + + GD_TRUE (1) if the file type is supported, GD_FALSE (0) if not. + +*/ +BGD_DECLARE(int) +gdSupportsFileType(const char *filename, int writing) { + struct FileType *entry = ftype(filename); + return !!entry && (!writing || !!entry->writer); +}/* gdSupportsFileType*/ + + +/* + Function: gdImageCreateFromFile + + Read an image file of any supported. + + Given the path to a file, <gdImageCreateFromFile> will open the + file, read its contents with the appropriate _gdImageCreateFrom*_ + function and return it. + + File type is determined by the filename extension, so having an + incorrect extension will probably not work. For example, renaming + PNG image "foo.png" to "foo.gif" and then attempting to load it + will fail even if GD supports both formats. See + <gdSupportsFiletype> for more details. + + NULL is returned on error. + + Parameters: + + filename - the input file name + + Returns: + + A pointer to the new image or NULL if an error occurred. + +*/ + +BGD_DECLARE(gdImagePtr) +gdImageCreateFromFile(const char *filename) { + struct FileType *entry = ftype(filename); + FILE *fh; + gdImagePtr result; + + if (!entry) return NULL; + if (entry->loader) return entry->loader((char *)filename); + if (!entry->reader) return NULL; + + fh = fopen(filename, "rb"); + if (!fh) return NULL; + + result = entry->reader(fh); + + fclose(fh); + + return result; +}/* gdImageCreateFromFile*/ + + + +/* + Function: gdImageFile + + Writes an image to a file in the format indicated by the filename. + + File type is determined by the extension of the file name. See + <gdSupportsFiletype> for an overview of the parsing. + + For file types that require extra arguments, <gdImageFile> + attempts to use sane defaults: + + <gdImageGd2> - chunk size = 0, compression is enabled. + <gdImageJpeg> - quality = -1 (i.e. the reasonable default) + <gdImageWBMP> - foreground is the darkest available color + + Everything else is called with the two-argument function and so + will use the default values. + + <gdImageFile> has some rudimentary error detection and will return + GD_FALSE (0) if a detectable error occurred. However, the image + loaders do not normally return their error status so a result of + GD_TRUE (1) does **not** mean the file was saved successfully. + + Parameters: + + im - The image to save. + filename - The path to the file to which the image is saved. + + Returns: + + GD_FALSE (0) if an error was detected, GD_TRUE (1) if not. + +*/ + +BGD_DECLARE(int) +gdImageFile(gdImagePtr im, const char *filename) { + struct FileType *entry = ftype(filename); + FILE *fh; + + if (!entry || !entry->writer) return GD_FALSE; + + fh = fopen(filename, "wb"); + if (!fh) return GD_FALSE; + + entry->writer(im, fh); + + fclose(fh); + + return GD_TRUE; +}/* gdImageFile*/ + diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_filter.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_filter.c index 6735aabfe5b..a3119f77f80 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_filter.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_filter.c @@ -3,6 +3,8 @@ #endif #include "gd.h" +#include "gdhelpers.h" +#include "gd_intern.h" #ifdef _WIN32 # include <windows.h> @@ -11,6 +13,10 @@ #endif #include <stdlib.h> #include <time.h> +#include <math.h> + +#define NDEBUG /* Uncomment to enable assertions. */ +#include <assert.h> typedef int (BGD_STDCALL *FuncPtr)(gdImagePtr, int, int); @@ -562,11 +568,33 @@ BGD_DECLARE(int) gdImageEdgeDetectQuick(gdImagePtr src) return gdImageConvolution(src, filter, 1, 127); } +/* + Function: gdImageGaussianBlur + + <gdImageGaussianBlur> performs a Gaussian blur of radius 1 on the + image. The image is modified in place. + + *NOTE:* You will almost certain want to use + <gdImageCopyGaussianBlurred> instead, as it allows you to change + your kernel size and sigma value. Future versions of this + function may fall back to calling it instead of + <gdImageConvolution>, causing subtle changes so be warned. + + Parameters: + im - The image to blur + + Returns: + GD_TRUE (1) on success, GD_FALSE (0) on failure. + +*/ + BGD_DECLARE(int) gdImageGaussianBlur(gdImagePtr im) { - float filter[3][3] = {{1.0,2.0,1.0}, - {2.0,4.0,2.0}, - {1.0,2.0,1.0}}; + float filter[3][3] = { + {1.0, 2.0, 1.0}, + {2.0, 4.0, 2.0}, + {1.0, 2.0, 1.0} + }; return gdImageConvolution(im, filter, 16, 0); } @@ -604,3 +632,232 @@ BGD_DECLARE(int) gdImageSmooth(gdImagePtr im, float weight) return gdImageConvolution(im, filter, weight+8, 0); } + + +/* ======================== Gaussian Blur Code ======================== */ + +/* Return an array of coefficients for 'radius' and 'sigma' (sigma >= + * 0 means compute it). Result length is 2*radius+1. */ +static double * +gaussian_coeffs(int radius, double sigmaArg) { + const double sigma = (sigmaArg <= 0.0) ? (2.0/3.0)*radius : sigmaArg; + const double s = 2.0 * sigma * sigma; + double *result; + double sum = 0; + int x, n, count; + + count = 2*radius + 1; + + result = gdMalloc(sizeof(double) * count); + if (!result) { + return NULL; + }/* if */ + + for (x = -radius; x <= radius; x++) { + double coeff = exp(-(x*x)/s); + + sum += coeff; + result[x + radius] = coeff; + }/* for */ + + for (n = 0; n < count; n++) { + result[n] /= sum; + }/* for */ + + return result; +}/* gaussian_coeffs*/ + + + +static inline int +reflect(int max, int x) +{ + assert(x > -max && x < 2*max); + + if(x < 0) return -x; + if(x >= max) return max - (x - max) - 1; + return x; +}/* reflect*/ + + + +static inline void +applyCoeffsLine(gdImagePtr src, gdImagePtr dst, int line, int linelen, + double *coeffs, int radius, gdAxis axis) +{ + int ndx; + + for (ndx = 0; ndx < linelen; ndx++) { + double r = 0, g = 0, b = 0, a = 0; + int cndx; + int *dest = (axis == HORIZONTAL) ? + &dst->tpixels[line][ndx] : + &dst->tpixels[ndx][line]; + + for (cndx = -radius; cndx <= radius; cndx++) { + const double coeff = coeffs[cndx + radius]; + const int rndx = reflect(linelen, ndx + cndx); + + const int srcpx = (axis == HORIZONTAL) ? + src->tpixels[line][rndx] : + src->tpixels[rndx][line]; + + r += coeff * (double)gdTrueColorGetRed(srcpx); + g += coeff * (double)gdTrueColorGetGreen(srcpx); + b += coeff * (double)gdTrueColorGetBlue(srcpx); + a += coeff * (double)gdTrueColorGetAlpha(srcpx); + }/* for */ + + *dest = gdTrueColorAlpha(uchar_clamp(r, 0xFF), uchar_clamp(g, 0xFF), + uchar_clamp(b, 0xFF), uchar_clamp(a, 0x7F)); + }/* for */ +}/* applyCoeffsLine*/ + + +static void +applyCoeffs(gdImagePtr src, gdImagePtr dst, double *coeffs, int radius, + gdAxis axis) +{ + int line, numlines, linelen; + + if (axis == HORIZONTAL) { + numlines = src->sy; + linelen = src->sx; + } else { + numlines = src->sx; + linelen = src->sy; + }/* if .. else*/ + + for (line = 0; line < numlines; line++) { + applyCoeffsLine(src, dst, line, linelen, coeffs, radius, axis); + }/* for */ +}/* applyCoeffs*/ + +/* + Function: gdImageCopyGaussianBlurred + + Return a copy of the source image _src_ blurred according to the + parameters using the Gaussian Blur algorithm. + + _radius_ is a radius, not a diameter so a radius of 2 (for + example) will blur across a region 5 pixels across (2 to the + center, 1 for the center itself and another 2 to the other edge). + + _sigma_ represents the "fatness" of the curve (lower == fatter). + If _sigma_ is less than or equal to 0, + <gdImageCopyGaussianBlurred> ignores it and instead computes an + "optimal" value. Be warned that future versions of this function + may compute sigma differently. + + The resulting image is always truecolor. + + More Details: + + A Gaussian Blur is generated by replacing each pixel's color + values with the average of the surrounding pixels' colors. This + region is a circle whose radius is given by argument _radius_. + Thus, a larger radius will yield a blurrier image. + + This average is not a simple mean of the values. Instead, values + are weighted using the Gaussian function (roughly a bell curve + centered around the destination pixel) giving it much more + influence on the result than its neighbours. Thus, a fatter curve + will give the center pixel more weight and make the image less + blurry; lower _sigma_ values will yield flatter curves. + + Currently, <gdImageCopyGaussianBlurred> computes the default sigma + as + + (2/3)*radius + + Note, however that we reserve the right to change this if we find + a better ratio. If you absolutely need the current sigma value, + you should set it yourself. + + Parameters: + + src - the source image + radius - the blur radius (*not* diameter--range is 2*radius + 1) + sigma - the sigma value or a value <= 0.0 to use the computed default + + Returns: + + The new image or NULL if an error occurred. The result is always + truecolor. + + Example: + + > FILE *in; + > gdImagePtr result, src; + > + > in = fopen("foo.png", "rb"); + > src = gdImageCreateFromPng(in); + > + > result = gdImageCopyGaussianBlurred(im, src->sx / 10, -1.0); + +*/ + +/* TODO: Look into turning this into a generic seperable filter + * function with Gaussian Blur being one special case. (At the + * moment, I can't find any other useful separable filter so for not, + * it's just blur.) */ +BGD_DECLARE(gdImagePtr) +gdImageCopyGaussianBlurred(gdImagePtr src, int radius, double sigma) +{ + gdImagePtr tmp = NULL, result = NULL; + double *coeffs; + int freeSrc = 0; + + if (radius < 1) { + return NULL; + }/* if */ + + /* Compute the coefficients. */ + coeffs = gaussian_coeffs(radius, sigma); + if (!coeffs) { + return NULL; + }/* if */ + + /* If the image is not truecolor, we first make a truecolor + * scratch copy. */ + if (!src->trueColor) { + int tcstat; + + src = gdImageClone(src); + if (!src) { + gdFree(coeffs); + return NULL; + } + + tcstat = gdImagePaletteToTrueColor(src); + if (!tcstat) { + gdImageDestroy(src); + gdFree(coeffs); + return NULL; + }/* if */ + + freeSrc = 1; + }/* if */ + + /* Apply the filter horizontally. */ + tmp = gdImageCreateTrueColor(src->sx, src->sy); + if (!tmp) { + gdFree(coeffs); + return NULL; + } + applyCoeffs(src, tmp, coeffs, radius, HORIZONTAL); + + /* Apply the filter vertically. */ + result = gdImageCreateTrueColor(src->sx, src->sy); + if (result) { + applyCoeffs(tmp, result, coeffs, radius, VERTICAL); + }/* if */ + + gdImageDestroy(tmp); + gdFree(coeffs); + + if (freeSrc) gdImageDestroy(src); + + return result; +}/* gdImageCopyGaussianBlurred*/ + diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_gd.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_gd.c index 3cdfd58f461..f8d39cb00ce 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_gd.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_gd.c @@ -139,6 +139,49 @@ fail1: return 0; } +/* + Function: gdImageCreateFromGd + + <gdImageCreateFromGd> is called to load images from gd format + files. Invoke <gdImageCreateFromGd> with an already opened pointer + to a file containing the desired image in the gd file format, + which is specific to gd and intended for very fast loading. (It is + not intended for compression; for compression, use PNG or JPEG.) + + <gdImageCreateFromGd> returns a <gdImagePtr> to the new image, or + NULL if unable to load the image (most often because the file is + corrupt or does not contain a gd format + image). <gdImageCreateFromGd> does not close the file. You can + inspect the sx and sy members of the image to determine its + size. The image must eventually be destroyed using + <gdImageDestroy>. + + Variants: + + <gdImageCreateFromGdPtr> creates an image from GD data (i.e. the + contents of a GD file) already in memory. + + <gdImageCreateFromGdCtx> reads in an image using the functions in + a <gdIOCtx> struct. + + Parameters: + + infile - The input FILE pointer + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > FILE *in; + > in = fopen("mygd.gd", "rb"); + > im = gdImageCreateFromGd(in); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd (FILE * inFile) { gdImagePtr im; @@ -153,6 +196,16 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd (FILE * inFile) return im; } +/* + Function: gdImageCreateFromGdPtr + + Parameters: + + size - size of GD data in bytes. + data - GD data (i.e. contents of a GIF file). + + Reads in GD data from memory. See <gdImageCreateFromGd>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGdPtr (int size, void *data) { gdImagePtr im; @@ -164,6 +217,12 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGdPtr (int size, void *data) return im; } +/* + Function: gdImageCreateFromGdCtx + + Reads in a GD image via a <gdIOCtx> struct. See + <gdImageCreateFromGd>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGdCtx (gdIOCtxPtr in) { int sx, sy; diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_gd2.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_gd2.c index e7207f9ac6e..3e70bfac673 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_gd2.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_gd2.c @@ -250,6 +250,52 @@ _gd2ReadChunk (int offset, char *compBuf, int compSize, char *chunkBuf, return TRUE; } + +/* + Function: gdImageCreateFromGd2 + + <gdImageCreateFromGd2> is called to load images from gd2 format + files. Invoke <gdImageCreateFromGd2> with an already opened + pointer to a file containing the desired image in the gd2 file + format, which is specific to gd2 and intended for fast loading of + parts of large images. (It is a compressed format, but generally + not as good as maximum compression of the entire image would be.) + + <gdImageCreateFromGd2> returns a <gdImagePtr> to the new image, or + NULL if unable to load the image (most often because the file is + corrupt or does not contain a gd format + image). <gdImageCreateFromGd2> does not close the file. You can + inspect the sx and sy members of the image to determine its + size. The image must eventually be destroyed using + <gdImageDestroy>. + + + Variants: + + <gdImageCreateFromGd2Ptr> creates an image from GD data (i.e. the + contents of a GD2 file) already in memory. + + <gdImageCreateFromGd2Ctx> reads in an image using the functions in + a <gdIOCtx> struct. + + Parameters: + + infile - The input FILE pointer + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > FILE *in; + > in = fopen("mygd.gd2", "rb"); + > im = gdImageCreateFromGd2(in); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2 (FILE * inFile) { gdIOCtx *in = gdNewFileCtx (inFile); @@ -263,6 +309,16 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2 (FILE * inFile) return im; } +/* + Function: gdImageCreateFromGd2Ptr + + Parameters: + + size - size of GD2 data in bytes. + data - GD2 data (i.e. contents of a GIF file). + + See <gdImageCreateFromGd2>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2Ptr (int size, void *data) { gdImagePtr im; @@ -274,6 +330,12 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2Ptr (int size, void *data) return im; } +/* + Function: gdImageCreateFromGd2Ctx + + Reads in a GD2 image via a <gdIOCtx> struct. See + <gdImageCreateFromGd2>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2Ctx (gdIOCtxPtr in) { int sx, sy; @@ -438,6 +500,37 @@ fail: return 0; } + +/* + Function: gdImageCreateFromGd2Part + + <gdImageCreateFromGd2Part> is called to load parts of images from + gd2 format files. Invoked in the same way as <gdImageCreateFromGd2>, + but with extra parameters indicating the source (x, y) and + width/height of the desired image. <gdImageCreateFromGd2Part> + returns a <gdImagePtr> to the new image, or NULL if unable to load + the image. The image must eventually be destroyed using + <gdImageDestroy>. + + Variants: + + <gdImageCreateFromGd2PartPtr> creates an image from GD2 data + (i.e. the contents of a GD2 file) already in memory. + + <gdImageCreateFromGd2Ctx> reads in an image using the functions in + a <gdIOCtx> struct. + + Parameters: + + infile - The input FILE pointer + srcx, srcy - The source X and Y coordinates + w, h - The resulting image's width and height + + Returns: + + A pointer to the new image or NULL if an error occurred. + +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2Part (FILE * inFile, int srcx, int srcy, int w, int h) { gdImagePtr im; @@ -451,6 +544,19 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2Part (FILE * inFile, int srcx, int s return im; } +/* + Function: gdImageCreateFromGd2PartPtr + + Parameters: + + size - size of GD data in bytes. + data - GD data (i.e. contents of a GIF file). + srcx, srcy - The source X and Y coordinates + w, h - The resulting image's width and height + + Reads in part of a GD2 image file stored from memory. See + <gdImageCreateFromGd2Part>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2PartPtr (int size, void *data, int srcx, int srcy, int w, int h) { @@ -463,6 +569,19 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2PartPtr (int size, void *data, int s return im; } + +/* + Function: gdImageCreateFromGd2PartCtx + + Parameters: + + in - The data source. + srcx, srcy - The source X and Y coordinates + w, h - The resulting image's width and height + + Reads in part of a GD2 data image file via a <gdIOCtx> struct. See + <gdImageCreateFromGd2Part>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2PartCtx (gdIOCtx * in, int srcx, int srcy, int w, int h) { int scx, scy, ecx, ecy, fsx, fsy; diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_gif_in.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_gif_in.c index 68cdd3209e9..3ae74dea523 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_gif_in.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_gif_in.c @@ -75,8 +75,10 @@ static struct { #define STACK_SIZE ((1<<(MAX_LWZ_BITS))*2) +#define CSD_BUF_SIZE 280 + typedef struct { - unsigned char buf[280]; + unsigned char buf[CSD_BUF_SIZE]; int curbit; int lastbit; int done; @@ -102,6 +104,49 @@ static int LWZReadByte (gdIOCtx *fd, LZW_STATIC_DATA *sd, char flag, int input_c static void ReadImage (gdImagePtr im, gdIOCtx *fd, int len, int height, unsigned char (*cmap)[256], int interlace, int *ZeroDataBlockP); /*1.4//, int ignore); */ +/* + Function: gdImageCreateFromGif + + <gdImageCreateFromGif> is called to load images from GIF format + files. Invoke <gdImageCreateFromGif> with an already opened + pointer to a file containing the desired + image. + + <gdImageCreateFromGif> returns a <gdImagePtr> to the new image, or + NULL if unable to load the image (most often because the file is + corrupt or does not contain a GIF image). <gdImageCreateFromGif> + does not close the file. You can inspect the sx and sy members of + the image to determine its size. The image must eventually be + destroyed using <gdImageDestroy>. + + Variants: + + <gdImageCreateFromGifPtr> creates an image from GIF data (i.e. the + contents of a GIF file) already in memory. + + <gdImageCreateFromGifCtx> reads in an image using the functions in + a <gdIOCtx> struct. + + Parameters: + + infile - The input FILE pointer + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > ... inside a function ... + > FILE *in; + > in = fopen("mygif.gif", "rb"); + > im = gdImageCreateFromGif(in); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); + +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGif(FILE *fdFile) { gdIOCtx *fd = gdNewFileCtx(fdFile); @@ -115,6 +160,16 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGif(FILE *fdFile) return im; } +/* + Function: gdImageCreateFromGifPtr + + Parameters: + + size - size of GIF data in bytes. + data - GIF data (i.e. contents of a GIF file). + + See <gdImageCreateFromGif>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGifPtr (int size, void *data) { gdImagePtr im; @@ -127,6 +182,11 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGifPtr (int size, void *data) return im; } +/* + Function: gdImageCreateFromGifCtx + + See <gdImageCreateFromGif>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromGifCtx(gdIOCtxPtr fd) { int BitPixel; @@ -408,9 +468,13 @@ GetCode_(gdIOCtx *fd, CODE_STATIC_DATA *scd, int code_size, int flag, int *ZeroD scd->lastbit = (2 + count) * 8; } - ret = 0; - for (i = scd->curbit, j = 0; j < code_size; ++i, ++j) { - ret |= ((scd->buf[i / 8] & (1 << (i % 8))) != 0) << j; + if ((scd->curbit + code_size - 1) >= (CSD_BUF_SIZE * 8)) { + ret = -1; + } else { + ret = 0; + for (i = scd->curbit, j = 0; j < code_size; ++i, ++j) { + ret |= ((scd->buf[i / 8] & (1 << (i % 8))) != 0) << j; + } } scd->curbit += code_size; diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_gif_out.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_gif_out.c index c863172d64d..51ceb753855 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_gif_out.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_gif_out.c @@ -93,6 +93,33 @@ static void char_init(GifCtx *ctx); static void char_out(int c, GifCtx *ctx); static void flush_char(GifCtx *ctx); + + + +/* + Function: gdImageGifPtr + + Identical to <gdImageGif> except that it returns a pointer to a + memory area with the GIF data. This memory must be freed by the + caller when it is no longer needed. + + The caller *must* invoke <gdFree>, not _free()_. This is because + it is not guaranteed that libgd will use the same implementation + of malloc, free, etc. as your proggram. + + The 'size' parameter receives the total size of the block of + memory. + + Parameters: + + im - The image to write + size - Output: the size of the resulting image. + + Returns: + + A pointer to the GIF data or NULL if an error occurred. + +*/ BGD_DECLARE(void *) gdImageGifPtr(gdImagePtr im, int *size) { void *rv; @@ -104,6 +131,65 @@ BGD_DECLARE(void *) gdImageGifPtr(gdImagePtr im, int *size) return rv; } +/* + Function: gdImageGif + + <gdImageGif> outputs the specified image to the specified file in + GIF format. The file must be open for binary writing. (Under MSDOS + and all versions of Windows, it is important to use "wb" as + opposed to simply "w" as the mode when opening the file; under + Unix there is no penalty for doing so). <gdImageGif> does not close + the file; your code must do so. + + GIF does not support true color; GIF images can contain a maximum + of 256 colors. If the image to be written is a truecolor image, + such as those created with gdImageCreateTrueColor or loaded from a + JPEG or a truecolor PNG image file, a palette-based temporary + image will automatically be created internally using the + <gdImageCreatePaletteFromTrueColor> function. The original image + pixels are not modified. This conversion produces high quality + palettes but does require some CPU time. If you are regularly + converting truecolor to palette in this way, you should consider + creating your image as a palette-based image in the first place. + + Variants: + + <gdImageGifCtx> outputs the image via a <gdIOCtx> struct. + + <gdImageGifPtr> stores the image in a large array of bytes. + + Parameters: + + im - The image to write + outFile - The FILE pointer to write the image to. + + Returns: + + Nothing + + Example: + + > gdImagePtr im; + > int black, white; + > FILE *out; + > // Create the image + > im = gdImageCreate(100, 100); + > // Allocate background + > white = gdImageColorAllocate(im, 255, 255, 255); + > // Allocate drawing color + > black = gdImageColorAllocate(im, 0, 0, 0); + > // Draw rectangle + > gdImageRectangle(im, 0, 0, 99, 99, black); + > // Open output file in binary mode + > out = fopen("rect.gif", "wb"); + > // Write GIF + > gdImageGif(im, out); + > // Close file + > fclose(out); + > // Destroy image + > gdImageDestroy(im); + +*/ BGD_DECLARE(void) gdImageGif(gdImagePtr im, FILE *outFile) { gdIOCtx *out = gdNewFileCtx(outFile); @@ -112,6 +198,21 @@ BGD_DECLARE(void) gdImageGif(gdImagePtr im, FILE *outFile) out->gd_free(out); } +/* + Function: gdImageGifCtx + + Writes a GIF image via a <gdIOCtx>. See <gdImageGif>. + + Parameters: + + im - The image to write + out - The <gdIOCtx> struct used to do the writing. + + Returns: + + Nothing. + +*/ BGD_DECLARE(void) gdImageGifCtx(gdImagePtr im, gdIOCtxPtr out) { gdImagePtr pim = 0, tim = im; @@ -142,6 +243,37 @@ BGD_DECLARE(void) gdImageGifCtx(gdImagePtr im, gdIOCtxPtr out) } } + +/* + Function: gdImageGifAnimBeginPtr + + Like <gdImageGifAnimBegin> except that it outputs to a memory + buffer. See <gdImageGifAnimBegin>. + + The returned memory must be freed by the caller when it is no + longer needed. **The caller must invoke <gdFree>(), not free()**, + unless the caller is absolutely certain that the same + implementations of malloc, free, etc. are used both at library + build time and at application build time (but don't; it could + always change). + + The 'size' parameter receives the total size of the block of + memory. + + Parameters: + + im - The reference image + size - Output: the size in bytes of the result. + GlobalCM - Global colormap flag: 1 -> yes, 0 -> no, -1 -> do default + Loops - Loop count; 0 -> infinite, -1 means no loop + + Returns: + + A pointer to the resulting data (the contents of the start of the + GIF) or NULL if an error occurred. + +*/ + BGD_DECLARE(void *) gdImageGifAnimBeginPtr(gdImagePtr im, int *size, int GlobalCM, int Loops) { void *rv; @@ -153,6 +285,57 @@ BGD_DECLARE(void *) gdImageGifAnimBeginPtr(gdImagePtr im, int *size, int GlobalC return rv; } + +/* + Function: gdImageGifAnimBegin + + This function must be called as the first function when creating a + GIF animation. It writes the correct GIF file headers to selected + file output, and prepares for frames to be added for the + animation. The image argument is not used to produce an image + frame to the file, it is only used to establish the GIF animation + frame size, interlacing options and the color + palette. <gdImageGifAnimAdd> is used to add the first and + subsequent frames to the animation, and the animation must be + terminated by writing a semicolon character (;) to it or by using + gdImageGifAnimEnd to do that. + + The GlobalCM flag indicates if a global color map (or palette) is + used in the GIF89A header. A nonzero value specifies that a global + color map should be used to reduce the size of the animation. Of + course, if the color maps of individual frames differ greatly, a + global color map may not be a good idea. GlobalCM=1 means write + global color map, GlobalCM=0 means do not, and GlobalCM=-1 means + to do the default, which currently is to use a global color map. + + If Loops is 0 or greater, the Netscape 2.0 extension for animation + loop count is written. 0 means infinite loop count. -1 means that + the extension is not added which results in no looping. -1 is the + default. + + Variants: + + <gdImageGifAnimBeginCtx> outputs the image via a <gdIOCtx> struct. + + <gdImageGifAnimBeginPtr> stores the image in a large array of bytes. + + Parameters: + + im - The reference image + outfile - The output FILE*. + GlobalCM - Global colormap flag: 1 -> yes, 0 -> no, -1 -> do default + Loops - Loop count; 0 -> infinite, -1 means no loop + + Returns: + + Nothing. + + Example: + + See <gdImageGifAnimBegin>. + +*/ + BGD_DECLARE(void) gdImageGifAnimBegin(gdImagePtr im, FILE *outFile, int GlobalCM, int Loops) { gdIOCtx *out = gdNewFileCtx(outFile); @@ -161,6 +344,26 @@ BGD_DECLARE(void) gdImageGifAnimBegin(gdImagePtr im, FILE *outFile, int GlobalCM out->gd_free(out); } + + +/* + Function: gdImageGifAnimBeginCtx + + Like <gdImageGifAnimBegin> except that it outputs to <gdIOCtx>. + See <gdImageGifAnimBegin>. + + Parameters: + + im - The reference image + out - Pointer to the output <gdIOCtx>. + GlobalCM - Global colormap flag: 1 -> yes, 0 -> no, -1 -> do default + Loops - Loop count; 0 -> infinite, -1 means no loop + + Returns: + + Nothing. + +*/ BGD_DECLARE(void) gdImageGifAnimBeginCtx(gdImagePtr im, gdIOCtxPtr out, int GlobalCM, int Loops) { int B; @@ -225,7 +428,43 @@ BGD_DECLARE(void) gdImageGifAnimBeginCtx(gdImagePtr im, gdIOCtxPtr out, int Glob } } -BGD_DECLARE(void *) gdImageGifAnimAddPtr(gdImagePtr im, int *size, int LocalCM, int LeftOfs, int TopOfs, int Delay, int Disposal, gdImagePtr previm) + + +/* + Function: gdImageGifAnimAddPtr + + Like <gdImageGifAnimAdd> (which contains more information) except + that it stores the data to write into memory and returns a pointer + to it. + + This memory must be freed by the caller when it is no longer + needed. **The caller must invoke <gdFree>(), not free(),** unless + the caller is absolutely certain that the same implementations of + malloc, free, etc. are used both at library build time and at + application build time (but don't; it could always change). + + The 'size' parameter receives the total size of the block of + memory. + + Parameters: + + im - The image to add. + size - Output: the size of the resulting buffer. + LocalCM - Flag. If 1, use a local color map for this frame. + LeftOfs - Left offset of image in frame. + TopOfs - Top offset of image in frame. + Delay - Delay before next frame (in 1/100 seconds) + Disposal - MODE: How to treat this frame when the next one loads. + previm - NULL or a pointer to the previous image written. + + Returns: + + Pointer to the resulting data or NULL if an error occurred. + +*/ +BGD_DECLARE(void *) gdImageGifAnimAddPtr(gdImagePtr im, int *size, int LocalCM, + int LeftOfs, int TopOfs, int Delay, + int Disposal, gdImagePtr previm) { void *rv; gdIOCtx *out = gdNewDynamicCtx(2048, NULL); @@ -236,7 +475,114 @@ BGD_DECLARE(void *) gdImageGifAnimAddPtr(gdImagePtr im, int *size, int LocalCM, return rv; } -BGD_DECLARE(void) gdImageGifAnimAdd(gdImagePtr im, FILE *outFile, int LocalCM, int LeftOfs, int TopOfs, int Delay, int Disposal, gdImagePtr previm) + +/* + Function: gdImageGifAnimAdd + + This function writes GIF animation frames to GIF animation, which + was initialized with <gdImageGifAnimBegin>. With _LeftOfs_ and + _TopOfs_ you can place this frame in different offset than (0,0) + inside the image screen as defined in <gdImageGifAnimBegin>. Delay + between the previous frame and this frame is in 1/100s + units. _Disposal_ is usually <gdDisposalNone>, meaning that the + pixels changed by this frame should remain on the display when the + next frame begins to render, but can also be <gdDisposalUnknown> + (not recommended), <gdDisposalRestoreBackground> (restores the + first allocated color of the global palette), or + <gdDisposalRestorePrevious> (restores the appearance of the + affected area before the frame was rendered). Only + <gdDisposalNone> is a sensible choice for the first frame. If + _previm_ is passed, the built-in GIF optimizer will always use + <gdDisposalNone> regardless of the Disposal parameter. + + Setting the _LocalCM_ flag to 1 adds a local palette for this + image to the animation. Otherwise the global palette is assumed + and the user must make sure the palettes match. Use + <gdImagePaletteCopy> to do that. + + Automatic optimization is activated by giving the previous image + as a parameter. This function then compares the images and only + writes the changed pixels to the new frame in animation. The + _Disposal_ parameter for optimized animations must be set to 1, + also for the first frame. _LeftOfs_ and _TopOfs_ parameters are + ignored for optimized frames. To achieve good optimization, it is + usually best to use a single global color map. To allow + <gdImageGifAnimAdd> to compress unchanged pixels via the use of a + transparent color, the image must include a transparent color. + + + Variants: + + <gdImageGifAnimAddCtx> outputs its data via a <gdIOCtx> struct. + + <gdImageGifAnimAddPtr> outputs its data to a memory buffer which + it returns. + + Parameters: + + im - The image to add. + outfile - The output FILE* being written. + LocalCM - Flag. If 1, use a local color map for this frame. + LeftOfs - Left offset of image in frame. + TopOfs - Top offset of image in frame. + Delay - Delay before next frame (in 1/100 seconds) + Disposal - MODE: How to treat this frame when the next one loads. + previm - NULL or a pointer to the previous image written. + + Returns: + + Nothing. + + Example: + + > { + > gdImagePtr im, im2, im3; + > int black, white, trans; + > FILE *out; + > + > im = gdImageCreate(100, 100); // Create the image + > white = gdImageColorAllocate(im, 255, 255, 255); // Allocate background + > black = gdImageColorAllocate(im, 0, 0, 0); // Allocate drawing color + > trans = gdImageColorAllocate(im, 1, 1, 1); // trans clr for compression + > gdImageRectangle(im, 0, 0, 10, 10, black); // Draw rectangle + > + > out = fopen("anim.gif", "wb");// Open output file in binary mode + > gdImageGifAnimBegin(im, out, 1, 3);// Write GIF hdr, global clr map,loops + > // Write the first frame. No local color map. Delay = 1s + > gdImageGifAnimAdd(im, out, 0, 0, 0, 100, 1, NULL); + > + > // construct the second frame + > im2 = gdImageCreate(100, 100); + > (void)gdImageColorAllocate(im2, 255, 255, 255); // White background + > gdImagePaletteCopy (im2, im); // Make sure the palette is identical + > gdImageRectangle(im2, 0, 0, 15, 15, black); // Draw something + > // Allow animation compression with transparent pixels + > gdImageColorTransparent (im2, trans); + > gdImageGifAnimAdd(im2, out, 0, 0, 0, 100, 1, im); // Add second frame + > + > // construct the third frame + > im3 = gdImageCreate(100, 100); + > (void)gdImageColorAllocate(im3, 255, 255, 255); // white background + > gdImagePaletteCopy (im3, im); // Make sure the palette is identical + > gdImageRectangle(im3, 0, 0, 15, 20, black); // Draw something + > // Allow animation compression with transparent pixels + > gdImageColorTransparent (im3, trans); + > // Add the third frame, compressing against the second one + > gdImageGifAnimAdd(im3, out, 0, 0, 0, 100, 1, im2); + > gdImageGifAnimEnd(out); // End marker, same as putc(';', out); + > fclose(out); // Close file + > + > // Destroy images + > gdImageDestroy(im); + > gdImageDestroy(im2); + > gdImageDestroy(im3); + > } + +*/ + +BGD_DECLARE(void) gdImageGifAnimAdd(gdImagePtr im, FILE *outFile, int LocalCM, + int LeftOfs, int TopOfs, int Delay, + int Disposal, gdImagePtr previm) { gdIOCtx *out = gdNewFileCtx(outFile); if (out == NULL) return; @@ -257,7 +603,31 @@ static int comparewithmap(gdImagePtr im1, gdImagePtr im2, int c1, int c2, int *c return (colorMap[c1] = gdImageColorExactAlpha(im2, im1->red[c1], im1->green[c1], im1->blue[c1], im1->alpha[c1])) == c2; } -BGD_DECLARE(void) gdImageGifAnimAddCtx(gdImagePtr im, gdIOCtxPtr out, int LocalCM, int LeftOfs, int TopOfs, int Delay, int Disposal, gdImagePtr previm) +/* + Function: gdImageGifAnimAddCtx + + Adds an animation frame via a <gdIOCtxPtr>. See gdImageGifAnimAdd>. + + Parameters: + + im - The image to add. + out - The output <gdIOCtxPtr>. + LocalCM - Flag. If 1, use a local color map for this frame. + LeftOfs - Left offset of image in frame. + TopOfs - Top offset of image in frame. + Delay - Delay before next frame (in 1/100 seconds) + Disposal - MODE: How to treat this frame when the next one loads. + previm - NULL or a pointer to the previous image written. + + Returns: + + Nothing. + +*/ +BGD_DECLARE(void) gdImageGifAnimAddCtx(gdImagePtr im, gdIOCtxPtr out, + int LocalCM, int LeftOfs, int TopOfs, + int Delay, int Disposal, + gdImagePtr previm) { gdImagePtr pim = NULL, tim = im; int interlace, transparent, BitsPerPixel; @@ -456,6 +826,37 @@ fail_end: } } + + +/* + Function: gdImageGifAnimEnd + + Terminates the GIF file properly. + + (Previous versions of this function's documentation suggested just + manually writing a semicolon (';') instead since that is all this + function does. While that has no longer changed, we now suggest + that you do not do this and instead always call + <gdImageGifAnimEnd> (or equivalent) since later versions could + possibly do more or different things.) + + Variants: + + <gdImageGifAnimEndCtx> outputs its data via a <gdIOCtx> struct. + + <gdImageGifAnimEndPtr> outputs its data to a memory buffer which + it returns. + + Parameters: + + outfile - the destination FILE*. + + Returns: + + Nothing. + +*/ + BGD_DECLARE(void) gdImageGifAnimEnd(FILE *outFile) { #if 1 @@ -468,6 +869,32 @@ BGD_DECLARE(void) gdImageGifAnimEnd(FILE *outFile) #endif } +/* + Function: gdImageGifAnimEndPtr + + Like <gdImageGifAnimEnd> (which contains more information) except + that it stores the data to write into memory and returns a pointer + to it. + + This memory must be freed by the caller when it is no longer + needed. **The caller must invoke <gdFree>(), not free(),** unless + the caller is absolutely certain that the same implementations of + malloc, free, etc. are used both at library build time and at + application build time (but don't; it could always change). + + The 'size' parameter receives the total size of the block of + memory. + + Parameters: + + size - Output: the size of the resulting buffer. + + Returns: + + Pointer to the resulting data or NULL if an error occurred. + +*/ + BGD_DECLARE(void *) gdImageGifAnimEndPtr(int *size) { char *rv = (char *) gdMalloc(1); @@ -479,6 +906,21 @@ BGD_DECLARE(void *) gdImageGifAnimEndPtr(int *size) return (void *)rv; } +/* + Function: gdImageGifAnimEndCtx + + Like <gdImageGifAnimEnd>, but writes its data via a <gdIOCtx>. + + Parameters: + + out - the destination <gdIOCtx>. + + Returns: + + Nothing. + +*/ + BGD_DECLARE(void) gdImageGifAnimEndCtx(gdIOCtx *out) { /* diff --git a/Build/source/libs/gd/libgd-2.1.1/src/gd_intern.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_intern.h new file mode 100644 index 00000000000..a30062b11f8 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_intern.h @@ -0,0 +1,90 @@ +#ifndef GD_INTERN_H +#define GD_INTERN_H + +#if HAVE_LIMITS_H +#include <limits.h> +#endif + + +#ifndef MAXPATHLEN +# ifdef PATH_MAX +# define MAXPATHLEN PATH_MAX +# elif defined(MAX_PATH) +# define MAXPATHLEN MAX_PATH +# else +# if defined(__GNU__) +# define MAXPATHLEN 4096 +# else +# define MAXPATHLEN 256 /* Should be safe for any weird systems that do not define it */ +# endif +# endif +#endif + +#ifdef HAVE_STDINT_H +# include <stdint.h> +#else +# if defined(HAVE_INTTYPES_H) +# include <inttypes.h> +# else +# include "msinttypes/inttypes.h" +# endif +#endif + +#include "gd.h" + +#ifndef MIN +#define MIN(a,b) ((a)<(b)?(a):(b)) +#endif +#define MIN3(a,b,c) ((a)<(b)?(MIN(a,c)):(MIN(b,c))) +#ifndef MAX +#define MAX(a,b) ((a)<(b)?(b):(a)) +#endif +#define MAX3(a,b,c) ((a)<(b)?(MAX(b,c)):(MAX(a,c))) + + +typedef enum { + HORIZONTAL, + VERTICAL, +} gdAxis; + +/* Convert a double to an unsigned char, rounding to the nearest + * integer and clamping the result between 0 and max. The absolute + * value of clr must be less than the maximum value of an unsigned + * short. */ +static inline unsigned char +uchar_clamp(double clr, unsigned char max) { + unsigned short result; + + //assert(fabs(clr) <= SHRT_MAX); + + /* Casting a negative float to an unsigned short is undefined. + * However, casting a float to a signed truncates toward zero and + * casting a negative signed value to an unsigned of the same size + * results in a bit-identical value (assuming twos-complement + * arithmetic). This is what we want: all legal negative values + * for clr will be greater than 255. */ + + /* Convert and clamp. */ + result = (unsigned short)(short)(clr + 0.5); + if (result > max) { + result = (clr < 0) ? 0 : max; + }/* if */ + + return result; +}/* uchar_clamp*/ + + +/* Internal prototypes: */ + +/* gd_rotate.c */ +gdImagePtr gdImageRotate90(gdImagePtr src, int ignoretransparent); +gdImagePtr gdImageRotate180(gdImagePtr src, int ignoretransparent); +gdImagePtr gdImageRotate270(gdImagePtr src, int ignoretransparent); + + + + + + +#endif + diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_interpolation.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_interpolation.c index 88dca85cc44..a829d4f2d9e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_interpolation.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_interpolation.c @@ -61,23 +61,39 @@ TODO: #include <stdlib.h> #include <string.h> #include <math.h> +#include <assert.h> + +#define NDEBUG 1 /* TODO: disable/enable assertions in configure. */ +#include <assert.h> #include "gd.h" #include "gdhelpers.h" +#include "gd_intern.h" #ifdef _MSC_VER # pragma optimize("t", on) # include <emmintrin.h> #endif -#ifndef MIN -#define MIN(a,b) ((a)<(b)?(a):(b)) -#endif -#define MIN3(a,b,c) ((a)<(b)?(MIN(a,c)):(MIN(b,c))) -#ifndef MAX -#define MAX(a,b) ((a)<(b)?(b):(a)) -#endif -#define MAX3(a,b,c) ((a)<(b)?(MAX(b,c)):(MAX(a,c))) +static gdImagePtr gdImageScaleBilinear(gdImagePtr im, + const unsigned int new_width, + const unsigned int new_height); +static gdImagePtr gdImageScaleBicubicFixed(gdImagePtr src, + const unsigned int width, + const unsigned int height); +static gdImagePtr gdImageScaleNearestNeighbour(gdImagePtr im, + const unsigned int width, + const unsigned int height); +static gdImagePtr gdImageRotateNearestNeighbour(gdImagePtr src, + const float degrees, + const int bgColor); +static gdImagePtr gdImageRotateBilinear(gdImagePtr src, const float degrees, + const int bgColor); +static gdImagePtr gdImageRotateBicubicFixed(gdImagePtr src, const float degrees, + const int bgColor); +static gdImagePtr gdImageRotateGeneric(gdImagePtr src, const float degrees, + const int bgColor); + #define CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x))) @@ -145,35 +161,6 @@ typedef struct #define DEFAULT_SINC_RADIUS 1.0 #define DEFAULT_WELSH_RADIUS 1.0 -enum GD_RESIZE_FILTER_TYPE{ - FILTER_DEFAULT = 0, - FILTER_BELL, - FILTER_BESSEL, - FILTER_BLACKMAN, - FILTER_BOX, - FILTER_BSPLINE, - FILTER_CATMULLROM, - FILTER_COSINE, - FILTER_CUBICCONVOLUTION, - FILTER_CUBICSPLINE, - FILTER_HERMITE, - FILTER_LANCZOS3, - FILTER_LANCZOS8, - FILTER_MITCHELL, - FILTER_QUADRATIC, - FILTER_QUADRATICBSPLINE, - FILTER_TRIANGLE, - FILTER_GAUSSIAN, - FILTER_HANNING, - FILTER_HAMMING, - FILTER_SINC, - FILTER_WELSH, - - FILTER_CALLBACK = 999 -}; - -typedef enum GD_RESIZE_FILTER_TYPE gdResizeFilterType; - static double KernelBessel_J1(const double x) { double p, q; @@ -808,7 +795,7 @@ static int getPixelInterpolateWeight(gdImagePtr im, const double x, const double } /** - * Function: getPixelInterpolated + * InternalFunction: getPixelInterpolated * Returns the interpolated color value using the default interpolation * method. The returned color is always in the ARGB format (truecolor). * @@ -953,9 +940,6 @@ static inline LineContribType *_gdContributionsCalc(unsigned int line_size, unsi double dTotalWeight = 0.0; int iSrc; - res->ContribRow[u].Left = iLeft; - res->ContribRow[u].Right = iRight; - /* Cut edge points to fit in filter window in case of spill-off */ if (iRight - iLeft + 1 > windows_size) { if (iLeft < ((int)src_size - 1 / 2)) { @@ -965,6 +949,9 @@ static inline LineContribType *_gdContributionsCalc(unsigned int line_size, unsi } } + res->ContribRow[u].Left = iLeft; + res->ContribRow[u].Right = iRight; + for (iSrc = iLeft; iSrc <= iRight; iSrc++) { dTotalWeight += (res->ContribRow[u].Weights[iSrc-iLeft] = scale_f_d * (*pFilter)(scale_f_d * (dCenter - (double)iSrc))); } @@ -983,142 +970,142 @@ static inline LineContribType *_gdContributionsCalc(unsigned int line_size, unsi return res; } -static inline void _gdScaleRow(gdImagePtr pSrc, unsigned int src_width, gdImagePtr dst, unsigned int dst_width, unsigned int row, LineContribType *contrib) + +static inline void +_gdScaleOneAxis(gdImagePtr pSrc, gdImagePtr dst, + unsigned int dst_len, unsigned int row, LineContribType *contrib, + gdAxis axis) { - int *p_src_row = pSrc->tpixels[row]; - int *p_dst_row = dst->tpixels[row]; - unsigned int x; - - for (x = 0; x < dst_width - 1; x++) { - register unsigned char r = 0, g = 0, b = 0, a = 0; - const int left = contrib->ContribRow[x].Left; - const int right = contrib->ContribRow[x].Right; + unsigned int ndx; + + for (ndx = 0; ndx < dst_len; ndx++) { + double r = 0, g = 0, b = 0, a = 0; + const int left = contrib->ContribRow[ndx].Left; + const int right = contrib->ContribRow[ndx].Right; + int *dest = (axis == HORIZONTAL) ? + &dst->tpixels[row][ndx] : + &dst->tpixels[ndx][row]; + int i; /* Accumulate each channel */ for (i = left; i <= right; i++) { const int left_channel = i - left; - r += (unsigned char)(contrib->ContribRow[x].Weights[left_channel] * (double)(gdTrueColorGetRed(p_src_row[i]))); - g += (unsigned char)(contrib->ContribRow[x].Weights[left_channel] * (double)(gdTrueColorGetGreen(p_src_row[i]))); - b += (unsigned char)(contrib->ContribRow[x].Weights[left_channel] * (double)(gdTrueColorGetBlue(p_src_row[i]))); - a += (unsigned char)(contrib->ContribRow[x].Weights[left_channel] * (double)(gdTrueColorGetAlpha(p_src_row[i]))); - } - p_dst_row[x] = gdTrueColorAlpha(r, g, b, a); - } -} - -static inline void _gdScaleHoriz(gdImagePtr pSrc, unsigned int src_width, unsigned int src_height, gdImagePtr pDst, unsigned int dst_width, unsigned int dst_height) + const int srcpx = (axis == HORIZONTAL) ? + pSrc->tpixels[row][i] : + pSrc->tpixels[i][row]; + + r += contrib->ContribRow[ndx].Weights[left_channel] + * (double)(gdTrueColorGetRed(srcpx)); + g += contrib->ContribRow[ndx].Weights[left_channel] + * (double)(gdTrueColorGetGreen(srcpx)); + b += contrib->ContribRow[ndx].Weights[left_channel] + * (double)(gdTrueColorGetBlue(srcpx)); + a += contrib->ContribRow[ndx].Weights[left_channel] + * (double)(gdTrueColorGetAlpha(srcpx)); + }/* for */ + + *dest = gdTrueColorAlpha(uchar_clamp(r, 0xFF), uchar_clamp(g, 0xFF), + uchar_clamp(b, 0xFF), + uchar_clamp(a, 0x7F)); /* alpha is 0..127 */ + }/* for */ +}/* _gdScaleOneAxis*/ + + +static inline int +_gdScalePass(const gdImagePtr pSrc, const unsigned int src_len, + const gdImagePtr pDst, const unsigned int dst_len, + const unsigned int num_lines, + const gdAxis axis) { - unsigned int u; + unsigned int line_ndx; LineContribType * contrib; - /* same width, just copy it */ - if (dst_width == src_width) { - unsigned int y; - for (y = 0; y < src_height - 1; ++y) { - memcpy(pDst->tpixels[y], pSrc->tpixels[y], src_width); - } - } + /* Same dim, just copy it. */ + assert(dst_len != src_len); // TODO: caller should handle this. - contrib = _gdContributionsCalc(dst_width, src_width, (double)dst_width / (double)src_width, pSrc->interpolation); + contrib = _gdContributionsCalc(dst_len, src_len, + (double)dst_len / (double)src_len, + pSrc->interpolation); if (contrib == NULL) { - return; - } - /* Scale each row */ - for (u = 0; u < dst_height - 1; u++) { - _gdScaleRow(pSrc, src_width, pDst, dst_width, u, contrib); + return 0; } - _gdContributionsFree (contrib); -} - -static inline void _gdScaleCol (gdImagePtr pSrc, unsigned int src_width, gdImagePtr pRes, unsigned int dst_width, unsigned int dst_height, unsigned int uCol, LineContribType *contrib) -{ - unsigned int y; - for (y = 0; y < dst_height - 1; y++) { - register unsigned char r = 0, g = 0, b = 0, a = 0; - const int iLeft = contrib->ContribRow[y].Left; - const int iRight = contrib->ContribRow[y].Right; - int i; - /* Accumulate each channel */ - for (i = iLeft; i <= iRight; i++) { - const int pCurSrc = pSrc->tpixels[i][uCol]; - const int i_iLeft = i - iLeft; - r += (unsigned char)(contrib->ContribRow[y].Weights[i_iLeft] * (double)(gdTrueColorGetRed(pCurSrc))); - g += (unsigned char)(contrib->ContribRow[y].Weights[i_iLeft] * (double)(gdTrueColorGetGreen(pCurSrc))); - b += (unsigned char)(contrib->ContribRow[y].Weights[i_iLeft] * (double)(gdTrueColorGetBlue(pCurSrc))); - a += (unsigned char)(contrib->ContribRow[y].Weights[i_iLeft] * (double)(gdTrueColorGetAlpha(pCurSrc))); - } - pRes->tpixels[y][uCol] = gdTrueColorAlpha(r, g, b, a); + /* Scale each line */ + for (line_ndx = 0; line_ndx < num_lines; line_ndx++) { + _gdScaleOneAxis(pSrc, pDst, dst_len, line_ndx, contrib, axis); } -} - -static inline void _gdScaleVert (const gdImagePtr pSrc, const unsigned int src_width, const unsigned int src_height, const gdImagePtr pDst, const unsigned int dst_width, const unsigned int dst_height) -{ - unsigned int u; - LineContribType * contrib; + _gdContributionsFree (contrib); - /* same height, copy it */ - if (src_height == dst_height) { - unsigned int y; - for (y = 0; y < src_height - 1; ++y) { - memcpy(pDst->tpixels[y], pSrc->tpixels[y], src_width); - } - } + return 1; +}/* _gdScalePass*/ - contrib = _gdContributionsCalc(dst_height, src_height, (double)(dst_height) / (double)(src_height), pSrc->interpolation); - /* scale each column */ - for (u = 0; u < dst_width - 1; u++) { - _gdScaleCol(pSrc, src_width, pDst, dst_width, dst_height, u, contrib); - } - _gdContributionsFree(contrib); -} -gdImagePtr gdImageScaleTwoPass(const gdImagePtr src, const unsigned int src_width, const unsigned int src_height, const unsigned int new_width, const unsigned int new_height) +static gdImagePtr +gdImageScaleTwoPass(const gdImagePtr src, const unsigned int new_width, + const unsigned int new_height) { - gdImagePtr tmp_im; - gdImagePtr dst; + const unsigned int src_width = src->sx; + const unsigned int src_height = src->sy; + gdImagePtr tmp_im = NULL;; + gdImagePtr dst = NULL; - tmp_im = gdImageCreateTrueColor(new_width, src_height); - if (tmp_im == NULL) { - return NULL; - } - _gdScaleHoriz(src, src_width, src_height, tmp_im, new_width, src_height); + /* First, handle the trivial case. */ + if (src_width == new_width && src_height == new_height) { + return gdImageClone(src); + }/* if */ + /* Convert to truecolor if it isn't; this code requires it. */ + if (!src->trueColor) { + gdImagePaletteToTrueColor(src); + }/* if */ + + /* Scale horizontally unless sizes are the same. */ + if (src_width == new_width) { + tmp_im = src; + } else { + tmp_im = gdImageCreateTrueColor(new_width, src_height); + if (tmp_im == NULL) { + return NULL; + } + gdImageSetInterpolationMethod(tmp_im, src->interpolation_id); + + _gdScalePass(src, src_width, tmp_im, new_width, src_height, HORIZONTAL); + }/* if .. else*/ + + /* If vertical sizes match, we're done. */ + if (src_height == new_height) { + assert(tmp_im != src); + return tmp_im; + }/* if */ + + /* Otherwise, we need to scale vertically. */ dst = gdImageCreateTrueColor(new_width, new_height); - if (dst == NULL) { - gdFree(tmp_im); - return NULL; - } - _gdScaleVert(tmp_im, new_width, src_height, dst, new_width, new_height); - gdFree(tmp_im); - - return dst; -} - -gdImagePtr Scale(const gdImagePtr src, const unsigned int src_width, const unsigned int src_height, const gdImagePtr dst, const unsigned int new_width, const unsigned int new_height) -{ - gdImagePtr tmp_im; - - tmp_im = gdImageCreateTrueColor(new_width, src_height); - if (tmp_im == NULL) { - return NULL; - } - _gdScaleHoriz(src, src_width, src_height, tmp_im, new_width, src_height); + if (dst != NULL) { + gdImageSetInterpolationMethod(dst, src->interpolation_id); + _gdScalePass(tmp_im, src_height, dst, new_height, new_width, VERTICAL); + }/* if */ - _gdScaleVert(tmp_im, new_width, src_height, dst, new_width, new_height); + if (src != tmp_im) { + gdFree(tmp_im); + }/* if */ - gdFree(tmp_im); return dst; -} +}/* gdImageScaleTwoPass*/ + /* - BilinearFixed, BicubicFixed and nearest implementations are rewamped versions of the implementation in CBitmapEx + BilinearFixed, BicubicFixed and nearest implementations are + rewamped versions of the implementation in CBitmapEx + http://www.codeproject.com/Articles/29121/CBitmapEx-Free-C-Bitmap-Manipulation-Class - Integer only implementation, good to have for common usages like pre scale very large - images before using another interpolation methods for the last step. + + Integer only implementation, good to have for common usages like + pre scale very large images before using another interpolation + methods for the last step. */ -gdImagePtr gdImageScaleNearestNeighbour(gdImagePtr im, const unsigned int width, const unsigned int height) +static gdImagePtr +gdImageScaleNearestNeighbour(gdImagePtr im, const unsigned int width, const unsigned int height) { const unsigned long new_width = MAX(1, width); const unsigned long new_height = MAX(1, height); @@ -1338,8 +1325,8 @@ static gdImagePtr gdImageScaleBilinearTC(gdImagePtr im, const unsigned int new_w gdFixed f_j = gd_itofx(j); gdFixed f_a = gd_mulfx(f_i, f_dy); gdFixed f_b = gd_mulfx(f_j, f_dx); - const long m = gd_fxtoi(f_a); - const long n = gd_fxtoi(f_b); + const gdFixed m = gd_fxtoi(f_a); + const gdFixed n = gd_fxtoi(f_b); gdFixed f_f = f_a - gd_itofx(m); gdFixed f_g = f_b - gd_itofx(n); @@ -1378,10 +1365,10 @@ static gdImagePtr gdImageScaleBilinearTC(gdImagePtr im, const unsigned int new_w f_a3 = gd_itofx(gdTrueColorGetAlpha(pixel3)); f_a4 = gd_itofx(gdTrueColorGetAlpha(pixel4)); { - const char red = (char) gd_fxtoi(gd_mulfx(f_w1, f_r1) + gd_mulfx(f_w2, f_r2) + gd_mulfx(f_w3, f_r3) + gd_mulfx(f_w4, f_r4)); - const char green = (char) gd_fxtoi(gd_mulfx(f_w1, f_g1) + gd_mulfx(f_w2, f_g2) + gd_mulfx(f_w3, f_g3) + gd_mulfx(f_w4, f_g4)); - const char blue = (char) gd_fxtoi(gd_mulfx(f_w1, f_b1) + gd_mulfx(f_w2, f_b2) + gd_mulfx(f_w3, f_b3) + gd_mulfx(f_w4, f_b4)); - const char alpha = (char) gd_fxtoi(gd_mulfx(f_w1, f_a1) + gd_mulfx(f_w2, f_a2) + gd_mulfx(f_w3, f_a3) + gd_mulfx(f_w4, f_a4)); + const unsigned char red = (unsigned char) gd_fxtoi(gd_mulfx(f_w1, f_r1) + gd_mulfx(f_w2, f_r2) + gd_mulfx(f_w3, f_r3) + gd_mulfx(f_w4, f_r4)); + const unsigned char green = (unsigned char) gd_fxtoi(gd_mulfx(f_w1, f_g1) + gd_mulfx(f_w2, f_g2) + gd_mulfx(f_w3, f_g3) + gd_mulfx(f_w4, f_g4)); + const unsigned char blue = (unsigned char) gd_fxtoi(gd_mulfx(f_w1, f_b1) + gd_mulfx(f_w2, f_b2) + gd_mulfx(f_w3, f_b3) + gd_mulfx(f_w4, f_b4)); + const unsigned char alpha = (unsigned char) gd_fxtoi(gd_mulfx(f_w1, f_a1) + gd_mulfx(f_w2, f_a2) + gd_mulfx(f_w3, f_a3) + gd_mulfx(f_w4, f_a4)); new_img->tpixels[dst_offset_v][dst_offset_h] = gdTrueColorAlpha(red, green, blue, alpha); } @@ -1394,7 +1381,9 @@ static gdImagePtr gdImageScaleBilinearTC(gdImagePtr im, const unsigned int new_w return new_img; } -gdImagePtr gdImageScaleBilinear(gdImagePtr im, const unsigned int new_width, const unsigned int new_height) +static gdImagePtr +gdImageScaleBilinear(gdImagePtr im, const unsigned int new_width, + const unsigned int new_height) { if (im->trueColor) { return gdImageScaleBilinearTC(im, new_width, new_height); @@ -1403,7 +1392,9 @@ gdImagePtr gdImageScaleBilinear(gdImagePtr im, const unsigned int new_width, con } } -gdImagePtr gdImageScaleBicubicFixed(gdImagePtr src, const unsigned int width, const unsigned int height) +static gdImagePtr +gdImageScaleBicubicFixed(gdImagePtr src, const unsigned int width, + const unsigned int height) { const long new_width = MAX(1, width); const long new_height = MAX(1, height); @@ -1666,13 +1657,16 @@ BGD_DECLARE(gdImagePtr) gdImageScale(const gdImagePtr src, const unsigned int ne if (src->interpolation == NULL) { return NULL; } - im_scaled = gdImageScaleTwoPass(src, src->sx, src->sy, new_width, new_height); + im_scaled = gdImageScaleTwoPass(src, new_width, new_height); break; } + return im_scaled; } -gdImagePtr gdImageRotateNearestNeighbour(gdImagePtr src, const float degrees, const int bgColor) +static gdImagePtr +gdImageRotateNearestNeighbour(gdImagePtr src, const float degrees, + const int bgColor) { float _angle = ((float) (-degrees / 180.0f) * (float)M_PI); const int src_w = gdImageSX(src); @@ -1728,7 +1722,8 @@ gdImagePtr gdImageRotateNearestNeighbour(gdImagePtr src, const float degrees, co return dst; } -gdImagePtr gdImageRotateGeneric(gdImagePtr src, const float degrees, const int bgColor) +static gdImagePtr +gdImageRotateGeneric(gdImagePtr src, const float degrees, const int bgColor) { float _angle = ((float) (-degrees / 180.0f) * (float)M_PI); const int src_w = gdImageSX(src); @@ -1796,7 +1791,8 @@ gdImagePtr gdImageRotateGeneric(gdImagePtr src, const float degrees, const int b return dst; } -gdImagePtr gdImageRotateBilinear(gdImagePtr src, const float degrees, const int bgColor) +static gdImagePtr +gdImageRotateBilinear(gdImagePtr src, const float degrees, const int bgColor) { float _angle = (float)((- degrees / 180.0f) * M_PI); const unsigned int src_w = gdImageSX(src); @@ -1918,7 +1914,8 @@ gdImagePtr gdImageRotateBilinear(gdImagePtr src, const float degrees, const int return dst; } -gdImagePtr gdImageRotateBicubicFixed(gdImagePtr src, const float degrees, const int bgColor) +static gdImagePtr +gdImageRotateBicubicFixed(gdImagePtr src, const float degrees,const int bgColor) { const float _angle = (float)((- degrees / 180.0f) * M_PI); const int src_w = gdImageSX(src); @@ -2524,10 +2521,7 @@ BGD_DECLARE(int) gdImageSetInterpolationMethod(gdImagePtr im, gdInterpolationMet switch (id) { case GD_DEFAULT: - im->interpolation_id = GD_BILINEAR_FIXED; - im->interpolation = NULL; - break; - + id = GD_BILINEAR_FIXED; /* Optimized versions */ case GD_BILINEAR_FIXED: case GD_BICUBIC_FIXED: @@ -2597,6 +2591,15 @@ BGD_DECLARE(int) gdImageSetInterpolationMethod(gdImagePtr im, gdInterpolationMet return 1; } + +/* Return the interpolation mode set in 'im'. This is here so that + * the value can be read via a language or VM with an FFI but no + * (portable) way to extract the value from the struct. */ +BGD_DECLARE(gdInterpolationMethod) gdImageGetInterpolationMethod(gdImagePtr im) +{ + return im->interpolation_id; +} + #ifdef _MSC_VER # pragma optimize("", on) #endif diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_io.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_io.c index 03b83472120..03b83472120 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_io.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_io.c diff --git a/Build/source/libs/gd/libgd-2.1.1/src/gd_io.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_io.h new file mode 100644 index 00000000000..1039d597dc8 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_io.h @@ -0,0 +1,100 @@ +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef GD_IO_H +#define GD_IO_H 1 + +#include <stdio.h> + +#ifdef VMS +# define Putchar gdPutchar +#endif + +/* + Group: Types + + typedef: gdIOCtx + + gdIOCtx structures hold function pointers for doing image IO. + + Most of the gd functions that read and write files, such as + <gdImagePng> also have variants that accept a <gdIOCtx> structure; + see <gdImagePngCtx> and <gdImageCreateFromJpegCtx>. + + Those who wish to provide their own custom routines to read and + write images can populate a gdIOCtx structure with functions of + their own devising to to read and write data. For image reading, the + only mandatory functions are getC and getBuf, which must return the + number of characters actually read, or a negative value on error or + EOF. These functions must read the number of characters requested + unless at the end of the file. + + For image writing, the only mandatory functions are putC and putBuf, + which return the number of characters written; these functions must + write the number of characters requested except in the event of an + error. The seek and tell functions are only required in conjunction + with the gd2 file format, which supports quick loading of partial + images. The gd_free function will not be invoked when calling the + standard Ctx functions; it is an implementation convenience when + adding new data types to gd. For examples, see gd_png.c, gd_gd2.c, + gd_jpeg.c, etc., all of which rely on gdIOCtx to implement the + standard image read and write functions. + + > typedef struct gdIOCtx + > { + > int (*getC) (struct gdIOCtx *); + > int (*getBuf) (struct gdIOCtx *, void *, int wanted); + > + > void (*putC) (struct gdIOCtx *, int); + > int (*putBuf) (struct gdIOCtx *, const void *, int wanted); + > + > // seek must return 1 on SUCCESS, 0 on FAILURE. Unlike fseek! + > int (*seek) (struct gdIOCtx *, const int); + > long (*tell) (struct gdIOCtx *); + > + > void (*gd_free) (struct gdIOCtx *); + > } gdIOCtx; + + + + + */ +typedef struct gdIOCtx { + int (*getC)(struct gdIOCtx *); + int (*getBuf)(struct gdIOCtx *, void *, int); + void (*putC)(struct gdIOCtx *, int); + int (*putBuf)(struct gdIOCtx *, const void *, int); + /* seek must return 1 on SUCCESS, 0 on FAILURE. Unlike fseek! */ + int (*seek)(struct gdIOCtx *, const int); + long (*tell)(struct gdIOCtx *); + void (*gd_free)(struct gdIOCtx *); + void *data; +} gdIOCtx; + +typedef struct gdIOCtx *gdIOCtxPtr; + +void Putword(int w, gdIOCtx *ctx); +void Putchar(int c, gdIOCtx *ctx); + +void gdPutC(const unsigned char c, gdIOCtx *ctx); +int gdPutBuf(const void *, int, gdIOCtx *); +void gdPutWord(int w, gdIOCtx *ctx); +void gdPutInt(int w, gdIOCtx *ctx); + +int gdGetC(gdIOCtx *ctx); +int gdGetBuf(void *, int, gdIOCtx *); +int gdGetByte(int *result, gdIOCtx *ctx); +int gdGetWord(int *result, gdIOCtx *ctx); +int gdGetWordLSB(signed short int *result, gdIOCtx *ctx); +int gdGetInt(int *result, gdIOCtx *ctx); +int gdGetIntLSB(signed int *result, gdIOCtx *ctx); + +int gdSeek(gdIOCtx *ctx, const int offset); +long gdTell(gdIOCtx *ctx); + +#endif + +#ifdef __cplusplus +} +#endif diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_dp.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_dp.c index 8dbcc62e2aa..8dbcc62e2aa 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_dp.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_dp.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_file.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_file.c index d3893e4cea2..d3893e4cea2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_file.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_file.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_ss.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_ss.c index a0cf3918f91..a0cf3918f91 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_ss.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_ss.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_stream.cxx b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_stream.cxx index 28021afc1ae..28021afc1ae 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_stream.cxx +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_stream.cxx diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_stream.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_stream.h index 703548fec26..703548fec26 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_io_stream.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_io_stream.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_jpeg.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_jpeg.c index 73a38126192..925b417fac3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_jpeg.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_jpeg.c @@ -127,6 +127,71 @@ static void fatal_jpeg_error(j_common_ptr cinfo) * library documentation for more details. */ + +/* + Function: gdImageJpeg + + <gdImageJpeg> outputs the specified image to the specified file in + JPEG format. The file must be open for writing. Under MSDOS and + all versions of Windows, it is important to use "wb" as opposed to + simply "w" as the mode when opening the file, and under Unix there + is no penalty for doing so. <gdImageJpeg> does not close the file; + your code must do so. + + If _quality_ is negative, the default IJG JPEG quality value (which + should yield a good general quality / size tradeoff for most + situations) is used. Otherwise, for practical purposes, _quality_ + should be a value in the range 0-95, higher quality values usually + implying both higher quality and larger image sizes. + + If you have set image interlacing using <gdImageInterlace>, this + function will interpret that to mean you wish to output a + progressive JPEG. Some programs (e.g., Web browsers) can display + progressive JPEGs incrementally; this can be useful when browsing + over a relatively slow communications link, for + example. Progressive JPEGs can also be slightly smaller than + sequential (non-progressive) JPEGs. + + Variants: + + <gdImageJpegCtx> stores the image using a <gdIOCtx> struct. + + <gdImageJpegPtr> stores the image to RAM. + + Parameters: + + im - The image to save + outFile - The FILE pointer to write to. + quality - Compression quality (0-95, 0 means use the default). + + Returns: + + Nothing. + + Example: + + > gdImagePtr im; + > int black, white; + > FILE *out; + > // Create the image + > im = gdImageCreate(100, 100); + > // Allocate background + > white = gdImageColorAllocate(im, 255, 255, 255); + > // Allocate drawing color + > black = gdImageColorAllocate(im, 0, 0, 0); + > // Draw rectangle + > gdImageRectangle(im, 0, 0, 99, 99, black); + > // Open output file in binary mode + > out = fopen("rect.jpg", "wb"); + > // Write JPEG using default quality + > gdImageJpeg(im, out, -1); + > // Close file + > fclose(out); + > // Destroy image + > gdImageDestroy(im); + +*/ + BGD_DECLARE(void) gdImageJpeg(gdImagePtr im, FILE *outFile, int quality) { gdIOCtx *out = gdNewFileCtx(outFile); @@ -135,6 +200,31 @@ BGD_DECLARE(void) gdImageJpeg(gdImagePtr im, FILE *outFile, int quality) out->gd_free(out); } +/* + Function: gdImageJpegPtr + + Identical to <gdImageJpeg> except that it returns a pointer to a + memory area with the JPEG data. This memory must be freed by the + caller when it is no longer needed. + + The caller *must* invoke <gdFree>, not free(). This is because it + is not guaranteed that libgd will use the same implementation of + malloc, free, etc. as your proggram. + + The 'size' parameter receives the total size of the block of + memory. + + Parameters: + + im - The image to write + size - Output: the size of the resulting image. + quality - Compression quality. + + Returns: + + A pointer to the JPEG data or NULL if an error occurred. + +*/ BGD_DECLARE(void *) gdImageJpegPtr(gdImagePtr im, int *size, int quality) { void *rv; @@ -148,6 +238,19 @@ BGD_DECLARE(void *) gdImageJpegPtr(gdImagePtr im, int *size, int quality) void jpeg_gdIOCtx_dest(j_compress_ptr cinfo, gdIOCtx *outfile); +/* + Function: gdImageJpegCtx + + Write the image as JPEG data via a <gdIOCtx>. See <gdImageJpeg> + for more details. + + Parameters: + + im - The image to write. + outfile - The output sink. + quality - Image quality. + +*/ BGD_DECLARE(void) gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) { struct jpeg_compress_struct cinfo; @@ -299,10 +402,73 @@ BGD_DECLARE(void) gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) gdFree(row); } + + + +/* + Function: gdImageCreateFromJpeg + + See <gdImageCreateFromJpegEx>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromJpeg(FILE *inFile) { return gdImageCreateFromJpegEx(inFile, 1); } + + +/* + Function: gdImageCreateFromJpegEx + + <gdImageCreateFromJpegEx> is called to load truecolor images from + JPEG format files. Invoke <gdImageCreateFromJpegEx> with an + already opened pointer to a file containing the desired + image. <gdImageCreateFromJpegEx> returns a <gdImagePtr> to the new + truecolor image, or NULL if unable to load the image (most often + because the file is corrupt or does not contain a JPEG + image). <gdImageCreateFromJpegEx> does not close the file. + + You can inspect the sx and sy members of the image to determine + its size. The image must eventually be destroyed using + <gdImageDestroy>. + + *The returned image is always a truecolor image.* + + Variants: + + <gdImageCreateFromJpegPtrEx> creates an image from JPEG data + already in memory. + + <gdImageCreateFromJpegCtxEx> reads its data via the function + pointers in a <gdIOCtx> structure. + + <gdImageCreateFromJpeg>, <gdImageCreateFromJpegPtr> and + <gdImageCreateFromJpegCtx> are equivalent to calling their + _Ex_-named counterparts with an ignore_warning set to 1 + (i.e. TRUE). + + Parameters: + + infile - The input FILE pointer. + ignore_warning - Flag. If true, ignores recoverable warnings. + + Returns: + + A pointer to the new *truecolor* image. This will need to be + destroyed with <gdImageDestroy> once it is no longer needed. + + On error, returns NULL. + + Example: + + > gdImagePtr im; + > FILE *in; + > in = fopen("myjpeg.jpg", "rb"); + > im = gdImageCreateFromJpegEx(in, GD_TRUE); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); + +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromJpegEx(FILE *inFile, int ignore_warning) { gdImagePtr im; @@ -313,10 +479,32 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromJpegEx(FILE *inFile, int ignore_warning return im; } +/* + Function: gdImageCreateFromJpegPtr + + Parameters: + + size - size of JPEG data in bytes. + data - pointer to JPEG data. + + See <gdImageCreateFromJpegEx>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromJpegPtr(int size, void *data) { return gdImageCreateFromJpegPtrEx(size, data, 1); } + +/* + Function: gdImageCreateFromJpegPtrEx + + Parameters: + + size - size of JPEG data in bytes. + data - pointer to JPEG data. + ignore_warning - if true, ignore recoverable warnings + + See <gdImageCreateFromJpegEx>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromJpegPtrEx(int size, void *data, int ignore_warning) { gdImagePtr im; @@ -334,13 +522,20 @@ void jpeg_gdIOCtx_src(j_decompress_ptr cinfo, gdIOCtx *infile); static int CMYKToRGB(int c, int m, int y, int k, int inverted); /* - * Create a gd-format image from the JPEG-format INFILE. Returns the - * image, or NULL upon error. - */ + Function: gdImageCreateFromJpegCtx + + See <gdImageCreateFromJpeg>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromJpegCtx(gdIOCtx *infile) { return gdImageCreateFromJpegCtxEx(infile, 1); } + +/* + Function: gdImageCreateFromJpegCtxEx + + See <gdImageCreateFromJpeg>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromJpegCtxEx(gdIOCtx *infile, int ignore_warning) { struct jpeg_decompress_struct cinfo; diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_matrix.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_matrix.c index 3147dea0fcd..182ea35b546 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_matrix.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_matrix.c @@ -92,7 +92,7 @@ BGD_DECLARE(int) gdAffineInvert (double dst[6], const double src[6]) * flip_v - Whether or not to flip vertically * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineFlip (double dst[6], const double src[6], const int flip_h, const int flip_v) { @@ -120,7 +120,7 @@ BGD_DECLARE(int) gdAffineFlip (double dst[6], const double src[6], const int fli * m2 - Second affine matrix * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineConcat (double dst[6], const double m1[6], const double m2[6]) { @@ -149,7 +149,7 @@ BGD_DECLARE(int) gdAffineConcat (double dst[6], const double m1[6], const double * dst - Where to store the resulting affine transform * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineIdentity (double dst[6]) { @@ -171,7 +171,7 @@ BGD_DECLARE(int) gdAffineIdentity (double dst[6]) * scale_y - Y scale factor * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineScale (double dst[6], const double scale_x, const double scale_y) { @@ -196,7 +196,7 @@ BGD_DECLARE(int) gdAffineScale (double dst[6], const double scale_x, const doubl * angle - Rotation angle in degrees * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineRotate (double dst[6], const double angle) { @@ -221,7 +221,7 @@ BGD_DECLARE(int) gdAffineRotate (double dst[6], const double angle) * angle - Shear angle in degrees * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineShearHorizontal(double dst[6], const double angle) { @@ -243,7 +243,7 @@ BGD_DECLARE(int) gdAffineShearHorizontal(double dst[6], const double angle) * angle - Shear angle in degrees * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineShearVertical(double dst[6], const double angle) { @@ -266,7 +266,7 @@ BGD_DECLARE(int) gdAffineShearVertical(double dst[6], const double angle) * offset_y - Vertical translation amount * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineTranslate (double dst[6], const double offset_x, const double offset_y) { @@ -288,7 +288,7 @@ BGD_DECLARE(int) gdAffineTranslate (double dst[6], const double offset_x, const * composed of scaling, rotation, shearing, and translation, returns * the amount of scaling. * - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE **/ BGD_DECLARE(double) gdAffineExpansion (const double src[6]) { @@ -322,7 +322,7 @@ BGD_DECLARE(int) gdAffineRectilinear (const double m[6]) * m2 - The first affine transformation * * Returns: - * GD_SUCCESS on success or GD_FAILURE + * GD_TRUE on success or GD_FALSE */ BGD_DECLARE(int) gdAffineEqual (const double m1[6], const double m2[6]) { diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_nnquant.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_nnquant.c index c4b43d6ea35..c4b43d6ea35 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_nnquant.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_nnquant.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_nnquant.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_nnquant.h index b054fb1da44..b054fb1da44 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_nnquant.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_nnquant.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_png.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_png.c index 3d381e9b3bd..95139e8b8b5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_png.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_png.c @@ -96,6 +96,64 @@ gdPngFlushData (png_structp png_ptr) (void)png_ptr; } +/* + Function: gdImageCreateFromPng + + <gdImageCreateFromPng> is called to load images from PNG format + files. Invoke <gdImageCreateFromPng> with an already opened + pointer to a FILE containing the desired + image. <gdImageCreateFromPng> returns a <gdImagePtr> to the new + image, or NULL if unable to load the image (most often because the + file is corrupt or does not contain a PNG + image). <gdImageCreateFromPng> does not close the file. You can + inspect the sx and sy members of the image to determine its + size. The image must eventually be destroyed using + gdImageDestroy(). + + If the PNG image being loaded is a truecolor image, the resulting + gdImagePtr will refer to a truecolor image. If the PNG image being + loaded is a palette or grayscale image, the resulting gdImagePtr + will refer to a palette image. gd retains only 8 bits of + resolution for each of the red, green and blue channels, and only + 7 bits of resolution for the alpha channel. The former restriction + affects only a handful of very rare 48-bit color and 16-bit + grayscale PNG images. The second restriction affects all + semitransparent PNG images, but the difference is essentially + invisible to the eye. 7 bits of alpha channel resolution is, in + practice, quite a lot. + + Variants: + + <gdImageCreateFromPngPtr> creates an image from PNG data (i.e. the + contents of a PNG file) already in memory. + + <gdImageCreateFromPngCtx> reads in an image using the functions in + a <gdIOCtx> struct. + + <gdImageCreateFromPngSource> is similar to + <gdImageCreateFromPngCtx> but uses the old <gdSource> interface. + It is *obsolete*. + + Parameters: + + infile - The input FILE pointer. + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > ... inside a function ... + > FILE *in; + > in = fopen("mypng.png", "rb"); + > im = gdImageCreateFromPng(in); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); + + */ BGD_DECLARE(gdImagePtr) gdImageCreateFromPng (FILE * inFile) { gdImagePtr im; @@ -106,6 +164,11 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPng (FILE * inFile) return im; } +/* + Function: gdImageCreateFromPngPtr + + See <gdImageCreateFromPng>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngPtr (int size, void *data) { gdImagePtr im; @@ -117,9 +180,17 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngPtr (int size, void *data) return im; } + + /* This routine is based in part on the Chapter 13 demo code in * "PNG: The Definitive Guide" (http://www.libpng.org/pub/png/book/). */ + +/* + Function: gdImageCreateFromPngCtx + + See <gdImageCreateFromPng>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) { png_byte sig[8]; @@ -130,7 +201,7 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) png_infop info_ptr; png_uint_32 width, height, rowbytes, w, h, res_x, res_y; int bit_depth, color_type, interlace_type, unit_type; - int num_palette, num_trans; + int num_palette = 0, num_trans; png_colorp palette; png_color_16p trans_gray_rgb; png_color_16p trans_color_rgb; @@ -276,6 +347,7 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) if ((palette = (png_colorp) gdMalloc (256 * sizeof (png_color))) == NULL) { gd_error("gd-png error: cannot allocate gray palette\n"); png_destroy_read_struct (&png_ptr, &info_ptr, NULL); + gdImageDestroy(im); return NULL; } palette_allocated = TRUE; @@ -350,6 +422,9 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) rowbytes = png_get_rowbytes (png_ptr, info_ptr); if (overflow2(rowbytes, height)) { png_destroy_read_struct (&png_ptr, &info_ptr, NULL); + if (im) { + gdImageDestroy(im); + } return NULL; } image_data = (png_bytep) gdMalloc (rowbytes * height); @@ -359,6 +434,9 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) if (im) { gdImageDestroy(im); } + if (palette_allocated) { + gdFree (palette); + } return NULL; } if (overflow2(height, sizeof (png_bytep))) { @@ -367,6 +445,9 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) if (im) { gdImageDestroy(im); } + if (palette_allocated) { + gdFree (palette); + } return NULL; } @@ -378,6 +459,9 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) gdImageDestroy(im); } gdFree (image_data); + if (palette_allocated) { + gdFree (palette); + } return NULL; } @@ -474,6 +558,61 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngCtx (gdIOCtx * infile) } +/* + Function: gdImagePngEx + + <gdImagePngEx> outputs the specified image to the specified file in + PNG format. The file must be open for writing. Under MSDOS and all + versions of Windows, it is important to use "wb" as opposed to + simply "w" as the mode when opening the file, and under Unix there + is no penalty for doing so. <gdImagePngEx> does not close the file; + your code must do so. + + In addition, <gdImagePngEx> allows the level of compression to be + specified. A compression level of 0 means "no compression." A + compression level of 1 means "compressed, but as quickly as + possible." A compression level of 9 means "compressed as much as + possible to produce the smallest possible file." A compression level + of -1 will use the default compression level at the time zlib was + compiled on your system. + + Variants: + + <gdImagePng> is equivalent to calling <gdImagePngEx> with + compression of -1. + + <gdImagePngCtx> and <gdImagePngCtxEx> write via a <gdIOCtx> + instead of a file handle. + + <gdImagePngPtr> and <gdImagePngPtrEx> store the image file to + memory. + + Parameters: + + im - the image to write + outFile - the output FILE* object. + level - compression level: 0 -> none, 1-9 -> level, -1 -> default + + Returns: + + Nothing. + + Example: + + > gdImagePtr im; + > int black, white; + > FILE *out; + > + > im = gdImageCreate(100, 100); // Create the image + > white = gdImageColorAllocate(im, 255, 255, 255); // Alloc background + > black = gdImageColorAllocate(im, 0, 0, 0); // Allocate drawing color + > gdImageRectangle(im, 0, 0, 99, 99, black); // Draw rectangle + > out = fopen("rect.png", "wb"); // Open output file (binary) + > gdImagePngEx(im, out, 9); // Write PNG, max compression + > fclose(out); // Close file + > gdImageDestroy(im); // Destroy image + +*/ BGD_DECLARE(void) gdImagePngEx (gdImagePtr im, FILE * outFile, int level) { gdIOCtx *out = gdNewFileCtx (outFile); @@ -482,6 +621,20 @@ BGD_DECLARE(void) gdImagePngEx (gdImagePtr im, FILE * outFile, int level) out->gd_free (out); } +/* + Function: gdImagePng + + Equivalent to calling <gdImagePngEx> with compression of -1. + + Parameters: + + im - the image to save. + outFile - the output FILE*. + + Returns: + + Nothing. +*/ BGD_DECLARE(void) gdImagePng (gdImagePtr im, FILE * outFile) { gdIOCtx *out = gdNewFileCtx (outFile); @@ -490,6 +643,24 @@ BGD_DECLARE(void) gdImagePng (gdImagePtr im, FILE * outFile) out->gd_free (out); } + +/* + Function: gdImagePngPtr + + Equivalent to calling <gdImagePngPtrEx> with compression of -1. + + See <gdImagePngEx> for more information. + + Parameters: + + im - the image to save. + size - Output: size in bytes of the result. + + Returns: + + A pointer to memory containing the image data or NULL on error. + +*/ BGD_DECLARE(void *) gdImagePngPtr (gdImagePtr im, int *size) { void *rv; @@ -501,6 +672,30 @@ BGD_DECLARE(void *) gdImagePngPtr (gdImagePtr im, int *size) return rv; } +/* + Function: gdImagePngPtrEx + + Identical to <gdImagePngEx> except that it returns a pointer to a + memory area with the PNG data. This memory must be freed by the + caller when it is no longer needed. **The caller must invoke + gdFree(), not free()** + + The 'size' parameter receives the total size of the block of + memory. + + See <gdImagePngEx> for more information. + + Parameters: + + im - the image to save. + size - Output: size in bytes of the result. + level - compression level: 0 -> none, 1-9 -> level, -1 -> default + + Returns: + + A pointer to memory containing the image data or NULL on error. + +*/ BGD_DECLARE(void *) gdImagePngPtrEx (gdImagePtr im, int *size, int level) { void *rv; @@ -512,12 +707,51 @@ BGD_DECLARE(void *) gdImagePngPtrEx (gdImagePtr im, int *size, int level) return rv; } + + +/* + Function: gdImagePngCtx + + Equivalent to calling <gdImagePngCtxEx> with compression of -1. + See <gdImagePngEx> for more information. + + Parameters: + + im - the image to save. + outfile - the <gdIOCtx> to write to. + + Returns: + + Nothing. + +*/ BGD_DECLARE(void) gdImagePngCtx (gdImagePtr im, gdIOCtx * outfile) { /* 2.0.13: 'return' here was an error, thanks to Kevin Smith */ gdImagePngCtxEx (im, outfile, -1); } + + + +/* + Function: gdImagePngCtxEx + + Outputs the given image as PNG data, but using a <gdIOCtx> instead + of a file. See <gdIamgePnEx>. + + Parameters: + + im - the image to save. + outfile - the <gdIOCtx> to write to. + level - compression level: 0 -> none, 1-9 -> level, -1 -> default + + Returns: + + Nothing. + +*/ + /* This routine is based in part on code from Dale Lutz (Safe Software Inc.) * and in part on demo code from Chapter 15 of "PNG: The Definitive Guide" * (http://www.libpng.org/pub/png/book/). diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_rotate.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_rotate.c index eb057e1148e..eb057e1148e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_rotate.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_rotate.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_security.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_security.c index 0051ebf4559..0051ebf4559 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_security.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_security.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_ss.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_ss.c index 702a917e91d..9098c9bc91c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_ss.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_ss.c @@ -25,6 +25,12 @@ BGD_DECLARE(void) gdImagePngToSink (gdImagePtr im, gdSinkPtr outSink) out->gd_free (out); } +/* + Function: gdImageCreateFromPngSource + + See <gdImageCreateFromPng> for documentation. This is obsolete; use + <gdImageCreateFromPngCtx> instead. + */ BGD_DECLARE(gdImagePtr) gdImageCreateFromPngSource (gdSourcePtr inSource) { gdIOCtx *in = gdNewSSCtx (inSource, NULL); diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_tga.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_tga.c index 756248afcea..756248afcea 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_tga.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_tga.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_tga.h b/Build/source/libs/gd/libgd-2.1.1/src/gd_tga.h index 5c535fd8c31..297f3dc99d6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_tga.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_tga.h @@ -1,23 +1,3 @@ -/* - * TGA Image read support - * Copyright (C) 2005 Andrew Ireland, Jon Keto, Michael Beal - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - #ifndef __TGA_H #define __TGA_H 1 diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_tiff.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_tiff.c index ec6dd113074..ec6dd113074 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_tiff.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_tiff.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_topal.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_topal.c index 28b6503d063..28b6503d063 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_topal.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_topal.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_transform.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_transform.c index 68013ef9319..68013ef9319 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_transform.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_transform.c diff --git a/Build/source/libs/gd/libgd-2.1.1/src/gd_version.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_version.c new file mode 100644 index 00000000000..222d428ce7b --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_version.c @@ -0,0 +1,33 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif /* HAVE_CONFIG_H */ + +#include "gd.h" + + +/* These functions return the version information. We use functions + * so that changes in the shared library will automatically be + * reflected in executables using it without recompiling them. */ + +BGD_DECLARE(int) gdMajorVersion() +{ + return GD_MAJOR_VERSION; +} + +BGD_DECLARE(int) gdMinorVersion() +{ + return GD_MINOR_VERSION; +} + +BGD_DECLARE(int) gdReleaseVersion() +{ + return GD_RELEASE_VERSION; +} + +BGD_DECLARE(const char *) gdExtraVersion() { + return GD_EXTRA_VERSION; +} + +BGD_DECLARE(const char *) gdVersionString() { + return GD_VERSION_STRING; +} diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_wbmp.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_wbmp.c index ef1541863d7..53fbdc2d1a8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_wbmp.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_wbmp.c @@ -32,7 +32,7 @@ * *-------------------------------------------------------------------------- * - * Parts od this code are inspired by 'pbmtowbmp.c' and 'wbmptopbm.c' by + * Parts of this code are inspired by 'pbmtowbmp.c' and 'wbmptopbm.c' by * Terje Sannum <terje@looplab.com>. * ** Permission to use, copy, modify, and distribute this software and its @@ -122,10 +122,12 @@ BGD_DECLARE(void) gdImageWBMPCtx(gdImagePtr image, int fg, gdIOCtx *out) freewbmp(wbmp); } -/* gdImageCreateFromWBMPCtx - * ------------------------ - * Create a gdImage from a WBMP file input from an gdIOCtx - */ +/* + Function: gdImageCreateFromWBMPCtx + + Reads in a WBMP image via a <gdIOCtx> struct. See + <gdImageCreateFromWBMP>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromWBMPCtx(gdIOCtx *infile) { Wbmp *wbmp; @@ -165,8 +167,48 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromWBMPCtx(gdIOCtx *infile) } -/* gdImageCreateFromWBMP - */ +/* + Function: gdImageCreateFromWBMP + + <gdImageCreateFromWBMP> is called to load images from WBMP format + files. Invoke <gdImageCreateFromWBMP> with an already opened + pointer to a file containing the desired + image. <gdImageCreateFromWBMP> returns a gdImagePtr to the new + image, or NULL if unable to load the image (most often because the + file is corrupt or does not contain a WBMP + image). <gdImageCreateFromWBMP> does not close the file. You can + inspect the sx and sy members of the image to determine its + size. The image must eventually be destroyed using + <gdImageDestroy>. + + Variants: + + <gdImageCreateFromWBMPPtr> creates an image from WBMP data (i.e. the + contents of a WBMP file) already in memory. + + <gdImageCreateFromWBMPCtx> reads in an image using the functions in + a <gdIOCtx> struct. + + Parameters: + + infile - The input FILE pointer + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > FILE *in; + > in = fopen("mywbmp.wbmp", "rb"); + > im = gdImageCreateFromWBMP(in); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); + +*/ + BGD_DECLARE(gdImagePtr) gdImageCreateFromWBMP(FILE *inFile) { gdImagePtr im; @@ -177,6 +219,17 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromWBMP(FILE *inFile) return im; } + +/* + Function: gdImageCreateFromWBMPPtr + + Parameters: + + size - size of WBMP data in bytes. + data - WBMP data (i.e. contents of a WBMP file). + + See <gdImageCreateFromWBMP>. +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromWBMPPtr(int size, void *data) { gdImagePtr im; diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_webp.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_webp.c index fae38610999..fae38610999 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_webp.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_webp.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gd_xbm.c b/Build/source/libs/gd/libgd-2.1.1/src/gd_xbm.c index 612be47cc49..74d839b2667 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gd_xbm.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gd_xbm.c @@ -18,7 +18,40 @@ #define MAX_XBM_LINE_SIZE 255 -/* {{{ gdImagePtr gdImageCreateFromXbm */ + +/* + Function: gdImageCreateFromXbm + + <gdImageCreateFromXbm> is called to load images from X bitmap + format files. Invoke <gdImageCreateFromXbm> with an already opened + pointer to a file containing the desired + image. <gdImageCreateFromXbm> returns a <gdImagePtr> to the new + image, or NULL if unable to load the image (most often because the + file is corrupt or does not contain an X bitmap format + image). <gdImageCreateFromXbm> does not close the file. + + You can inspect the sx and sy members of the image to determine + its size. The image must eventually be destroyed using + <gdImageDestroy>. + + Parameters: + + fd - The input FILE pointer + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > FILE *in; + > in = fopen("myxbm.xbm", "rb"); + > im = gdImageCreateFromXbm(in); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromXbm(FILE * fd) { char fline[MAX_XBM_LINE_SIZE]; @@ -142,7 +175,7 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromXbm(FILE * fd) gdImageDestroy(im); return 0; } -/* }}} */ + /* {{{ gdCtxPrintf */ static void gdCtxPrintf(gdIOCtx * out, const char *format, ...) diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdcache.c b/Build/source/libs/gd/libgd-2.1.1/src/gdcache.c index b264d6ef859..b264d6ef859 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdcache.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdcache.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdcache.h b/Build/source/libs/gd/libgd-2.1.1/src/gdcache.h index bf451dc6cc3..bf451dc6cc3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdcache.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdcache.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdcmpgif.c b/Build/source/libs/gd/libgd-2.1.1/src/gdcmpgif.c index 737f7ba90b8..737f7ba90b8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdcmpgif.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdcmpgif.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gddemo.c b/Build/source/libs/gd/libgd-2.1.1/src/gddemo.c index 28afd3c1d12..28afd3c1d12 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gddemo.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gddemo.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontg.c b/Build/source/libs/gd/libgd-2.1.1/src/gdfontg.c index 37178602695..37178602695 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontg.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontg.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontg.h b/Build/source/libs/gd/libgd-2.1.1/src/gdfontg.h index 5d85812cf42..5d85812cf42 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontg.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontg.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontl.c b/Build/source/libs/gd/libgd-2.1.1/src/gdfontl.c index a987407aeca..a987407aeca 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontl.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontl.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontl.h b/Build/source/libs/gd/libgd-2.1.1/src/gdfontl.h index 2fc91ca6bff..2fc91ca6bff 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontl.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontl.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontmb.c b/Build/source/libs/gd/libgd-2.1.1/src/gdfontmb.c index 349b2dbde28..349b2dbde28 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontmb.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontmb.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontmb.h b/Build/source/libs/gd/libgd-2.1.1/src/gdfontmb.h index e6807db4eb8..e6807db4eb8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontmb.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontmb.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfonts.c b/Build/source/libs/gd/libgd-2.1.1/src/gdfonts.c index f7c27250362..f7c27250362 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfonts.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfonts.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfonts.h b/Build/source/libs/gd/libgd-2.1.1/src/gdfonts.h index b5127e971a6..b5127e971a6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfonts.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfonts.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontt.c b/Build/source/libs/gd/libgd-2.1.1/src/gdfontt.c index c9c6f4a31da..c9c6f4a31da 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontt.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontt.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfontt.h b/Build/source/libs/gd/libgd-2.1.1/src/gdfontt.h index d61b01ff4a0..d61b01ff4a0 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfontt.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfontt.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdft.c b/Build/source/libs/gd/libgd-2.1.1/src/gdft.c index cf3eafe0526..03a01593660 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdft.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdft.c @@ -817,6 +817,130 @@ BGD_DECLARE(int) gdFontCacheSetup (void) return 0; } +/* + Function: gdImageStringFTEx + + gdImageStringFTEx extends the capabilities of gdImageStringFT by + providing a way to pass additional parameters. + + If the strex parameter is not null, it must point to a + gdFTStringExtra structure. As of gd 2.0.5, this structure is defined + as follows: + + > typedef struct { + > // logical OR of gdFTEX_ values + > int flags; + > + > // fine tune line spacing for '\n' + > double linespacing; + > + > // Preferred character mapping + > int charmap; + > + > // Rendering resolution + > int hdpi; + > int vdpi; + > char *xshow; + > char *fontpath; + > } gdFTStringExtra, *gdFTStringExtraPtr; + + To output multiline text with a specific line spacing, include + gdFTEX_LINESPACE in the setting of flags: + + > flags |= gdFTEX_LINESPACE; + + And also set linespacing to the desired spacing, expressed as a + multiple of the font height. Thus a line spacing of 1.0 is the + minimum to guarantee that lines of text do not collide. + + If gdFTEX_LINESPACE is not present, or strex is null, or + gdImageStringFT is called, linespacing defaults to 1.05. + + To specify a preference for Unicode, Shift_JIS Big5 character + encoding, set or To output multiline text with a specific line + spacing, include gdFTEX_CHARMAP in the setting of flags: + + > flags |= gdFTEX_CHARMAP; + + And set charmap to the desired value, which can be any of + gdFTEX_Unicode, gdFTEX_Shift_JIS, gdFTEX_Big5, or + gdFTEX_Adobe_Custom. If you do not specify a preference, Unicode + will be tried first. If the preferred character mapping is not found + in the font, other character mappings are attempted. + + GD operates on the assumption that the output image will be rendered + to a computer screen. By default, gd passes a resolution of 96 dpi + to the freetype text rendering engine. This influences the "hinting" + decisions made by the renderer. To specify a different resolution, + set hdpi and vdpi accordingly (in dots per inch) and add + gdFTEX_RESOLUTION to flags: + + > flags | gdFTEX_RESOLUTION; + + GD 2.0.29 and later will normally attempt to apply kerning tables, + if fontconfig is available, to adjust the relative positions of + consecutive characters more ideally for that pair of + characters. This can be turn off by specifying the + gdFTEX_DISABLE_KERNING flag: + + > flags | gdFTEX_DISABLE_KERNING; + + GD 2.0.29 and later can return a vector of individual character + position advances, occasionally useful in applications that must + know exactly where each character begins. This is returned in the + xshow element of the gdFTStringExtra structure if the gdFTEX_XSHOW + flag is set: + + > flags | gdFTEX_XSHOW; + + The caller is responsible for calling gdFree() on the xshow element + after the call if gdFTEX_XSHOW is set. + + GD 2.0.29 and later can also return the path to the actual font file + used if the gdFTEX_RETURNFONTPATHNAME flag is set. This is useful + because GD 2.0.29 and above are capable of selecting a font + automatically based on a fontconfig font pattern when fontconfig is + available. This information is returned in the fontpath element of + the gdFTStringExtra structure. + + > flags | gdFTEX_RETURNFONTPATHNAME; + + The caller is responsible for calling gdFree() on the fontpath + element after the call if gdFTEX_RETURNFONTPATHNAME is set. + + GD 2.0.29 and later can use fontconfig to resolve font names, + including fontconfig patterns, if the gdFTEX_FONTCONFIG flag is + set. As a convenience, this behavior can be made the default by + calling gdFTUseFontConfig with a nonzero value. In that situation it + is not necessary to set the gdFTEX_FONTCONFIG flag on every call; + however explicit font path names can still be used if the + gdFTEX_FONTPATHNAME flag is set: + + > flags | gdFTEX_FONTPATHNAME; + + Unless gdFTUseFontConfig has been called with a nonzero value, GD + 2.0.29 and later will still expect the fontlist argument to the + freetype text output functions to be a font file name or list + thereof as in previous versions. If you do not wish to make + fontconfig the default, it is still possible to force the use of + fontconfig for a single call to the freetype text output functions + by setting the gdFTEX_FONTCONFIG flag: + + > flags | gdFTEX_FONTCONFIG; + + GD 2.0.29 and above can use fontconfig to resolve font names, + including fontconfig patterns, if the gdFTEX_FONTCONFIG flag is + set. As a convenience, this behavior can be made the default by + calling gdFTUseFontConfig with a nonzero value. In that situation it + is not necessary to set the gdFTEX_FONTCONFIG flag on every call; + however explicit font path names can still be used if the + gdFTEX_FONTPATHNAME flag is set: + + > flags | gdFTEX_FONTPATHNAME; + + For more information, see <gdImageStringFT>. +*/ + /* the platform-independent resolution used for size and position calculations */ /* the size of the error introduced by rounding is affected by this number */ #define METRIC_RES 300 @@ -928,6 +1052,8 @@ BGD_DECLARE(char *) gdImageStringFTEx (gdImage * im, int *brect, int fg, char *f strex->fontpath = (char *) gdMalloc(fontpath_len + 1); if (strex->fontpath == NULL) { + gdCacheDelete(tc_cache); + gdMutexUnlock(gdFontCacheMutex); return "could not alloc full list of fonts"; } strncpy(strex->fontpath, font->fontpath, fontpath_len); @@ -1503,7 +1629,7 @@ static char * font_path(char **fontpath, char *name_list) char *fontsearchpath, *fontlist; char *fullname = NULL; char *name, *dir; - char path[MAXPATHLEN]; + char *path; char *strtok_ptr = NULL; const unsigned int name_list_len = strlen(name_list); @@ -1524,9 +1650,15 @@ static char * font_path(char **fontpath, char *name_list) #endif if (!fontsearchpath) fontsearchpath = DEFAULT_FONTPATH; + path = (char *) gdMalloc(sizeof(char) * strlen(fontsearchpath) + 1); + if( path == NULL ) { + return "could not alloc full list of fonts"; + } + path[0] = 0; fontlist = (char *) gdMalloc(name_list_len + 1); if (fontlist == NULL) { + gdFree(path); return "could not alloc full list of fonts"; } strncpy(fontlist, name_list, name_list_len); @@ -1550,6 +1682,7 @@ static char * font_path(char **fontpath, char *name_list) strlen (fontsearchpath) + strlen (name) + 8); if (!fullname) { gdFree(fontlist); + gdFree(path); return "could not alloc full path of font"; } /* if name is an absolute or relative pathname then test directly */ @@ -1604,6 +1737,7 @@ static char * font_path(char **fontpath, char *name_list) if (font_found) break; } + gdFree (path); if (fontlist != NULL) { gdFree (fontlist); fontlist = NULL; diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfx.c b/Build/source/libs/gd/libgd-2.1.1/src/gdfx.c index 13b32fe1c06..13b32fe1c06 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfx.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfx.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdfx.h b/Build/source/libs/gd/libgd-2.1.1/src/gdfx.h index cf83d3eb46e..cf83d3eb46e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdfx.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdfx.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdhelpers.c b/Build/source/libs/gd/libgd-2.1.1/src/gdhelpers.c index 33126cb77f9..3c063d95523 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdhelpers.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdhelpers.c @@ -7,6 +7,9 @@ #include <stdlib.h> #include <string.h> +#include <sys/types.h> +#include <ctype.h> + /* TBB: gd_strtok_r is not portable; provide an implementation */ #define SEP_TEST (separators[*((unsigned char *) s)]) @@ -91,3 +94,5 @@ BGD_DECLARE(void) gdFree (void *ptr) { free (ptr); } + + diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdhelpers.h b/Build/source/libs/gd/libgd-2.1.1/src/gdhelpers.h index 0a5df08dc9f..2a96b8b4e55 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdhelpers.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdhelpers.h @@ -35,8 +35,13 @@ extern "C" { int overflow2(int a, int b); /* 2.0.16: portable mutex support for thread safety. */ - -#if defined(_WIN32) +#if defined(CPP_SHARP) +# define gdMutexDeclare(x) +# define gdMutexSetup(x) +# define gdMutexShutdown(x) +# define gdMutexLock(x) +# define gdMutexUnlock(x) +#elif defined(_WIN32) /* 2.0.18: must include windows.h to get CRITICAL_SECTION. */ # include <windows.h> # define gdMutexDeclare(x) CRITICAL_SECTION x diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdkanji.c b/Build/source/libs/gd/libgd-2.1.1/src/gdkanji.c index ab8c0df82df..ab8c0df82df 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdkanji.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdkanji.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdparttopng.c b/Build/source/libs/gd/libgd-2.1.1/src/gdparttopng.c index 42d6df20368..42d6df20368 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdparttopng.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdparttopng.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdpp.cxx b/Build/source/libs/gd/libgd-2.1.1/src/gdpp.cxx index 83bd73f6353..a8101fca29f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdpp.cxx +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdpp.cxx @@ -40,7 +40,7 @@ namespace GD 0x89 0x50 0x4E 0x47 0x0D 0x0A 0x1A 0x0A == .PNG\r\n.\n */ -#if HAVE_PNG +#ifdef HAVE_LIBPNG case 0x89: // PNG rtn = CreateFromPng(in); break; @@ -51,7 +51,7 @@ namespace GD case 0x47: // GIF rtn = CreateFromGif(in); break; -#if HAVE_JPEG +#ifdef HAVE_LIBJPEG /* JPEG A JFIF-standard file will start with the four bytes (hex) FF D8 FF E0, followed by two variable bytes (often hex 00 10), followed by 'JFIF'. @@ -122,7 +122,7 @@ namespace GD bool rtn; switch (in.peek()) { -#if HAVE_PNG +#ifdef HAVE_LIBPNG /* PNG The first eight bytes of a PNG file always contain the following (decimal) values: 0x89 0x50 0x4E 0x47 0x0D 0x0A 0x1A 0x0A @@ -140,7 +140,7 @@ namespace GD rtn = CreateFromGif(in); break; -#if HAVE_JPEG +#ifdef HAVE_LIBJPEG /* JPEG A JFIF-standard file will start with the four bytes (hex) FF D8 FF E0, followed by two variable bytes (often hex 00 10), followed by 'JFIF'. @@ -193,7 +193,7 @@ namespace GD switch (((unsigned char * )data)[0]) { -#if HAVE_PNG +#ifdef HAVE_LIBPNG /* PNG The first eight bytes of a PNG file always contain the following (decimal) values: 0x89 0x50 0x4E 0x47 0x0D 0x0A 0x1A 0x0A @@ -210,7 +210,7 @@ namespace GD rtn = CreateFromGif(size, data); break; -#if HAVE_JPEG +#ifdef HAVE_LIBJPEG /* JPEG A JFIF-standard file will start with the four bytes (hex) FF D8 FF E0, followed by two variable bytes (often hex 00 10), followed by 'JFIF'. diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdpp.h b/Build/source/libs/gd/libgd-2.1.1/src/gdpp.h index 31e30468844..2ebda162e1c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdpp.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdpp.h @@ -24,6 +24,10 @@ #ifndef _gdpp_h #define _gdpp_h +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include "gd_io_stream.h" #include <string> @@ -43,7 +47,7 @@ namespace GD /** This class GD::Point stores a point in two dimensions, somewhere on the plane of an image. */ -class Point +class BGD_EXPORT_DATA_PROT Point { public: // Constructors @@ -93,7 +97,7 @@ typedef Point * PointPtr; /** This class GD::Size stores length in two dimensions. Giving the size of an area as width and height. */ -class Size +class BGD_EXPORT_DATA_PROT Size { public: // Constructors @@ -140,7 +144,7 @@ typedef Size * SizePtr; /** This class GD::TrueColor stores a colour as an RGBA quadruplet. It can also be read as an integer, and in other colour formats. */ -class TrueColor +class BGD_EXPORT_DATA_PROT TrueColor { public: union as_types { @@ -206,19 +210,19 @@ protected: to tell the compiler which constructor we want when we know the image file format. */ -struct Png_tag {}; -struct Gif_tag {}; -struct WBMP_tag {}; -struct Jpeg_tag {}; -struct Gd_tag {}; -struct Gd2_tag {}; -struct Xbm_tag {}; +struct BGD_EXPORT_DATA_PROT Png_tag {}; +struct BGD_EXPORT_DATA_PROT Gif_tag {}; +struct BGD_EXPORT_DATA_PROT WBMP_tag {}; +struct BGD_EXPORT_DATA_PROT Jpeg_tag {}; +struct BGD_EXPORT_DATA_PROT Gd_tag {}; +struct BGD_EXPORT_DATA_PROT Gd2_tag {}; +struct BGD_EXPORT_DATA_PROT Xbm_tag {}; /** This class GD::Image wraps all of the 'C' libgd functionality for the convenience of C++ users. An instance of this class corresponds to a single image. */ -class BGD_EXPORT_DATA_IMPL Image +class BGD_EXPORT_DATA_PROT Image { public: /** Construct a null image @@ -288,7 +292,7 @@ public: :im(0) { CreateFrom(size, data); } -#if HAVE_PNG +#ifdef HAVE_LIBPNG /** Construct an image by reading from \p in. The tag is an empty struct which simply tells the compiler which image read function to use. e.g. GD::Image img(input, GD::Png_tag()); // read a png file from input @@ -404,7 +408,7 @@ public: CreateFromWBMP(size, data); } -#if HAVE_JPEG +#ifdef HAVE_LIBJPEG /** Construct an image by reading from \p in. The tag is an empty struct which simply tells the compiler which image read function to use. e.g. GD::Image img(input, GD::Jpeg_tag()); // read a jpeg file from input @@ -604,7 +608,7 @@ public: /// Read an image from a memory block, after determining the image format bool CreateFrom(int size, void * data); -#if HAVE_PNG +#ifdef HAVE_LIBPNG // Png bool CreateFromPng(FILE * in) { clear(); @@ -662,7 +666,7 @@ public: return ((im = gdImageCreateFromWBMPCtx( & _in_ctx)) != 0); } -#if HAVE_JPEG +#ifdef HAVE_LIBJPEG // Jpeg /** Load a truecolor image from a JPEG format file. @@ -1085,7 +1089,7 @@ public: gdImageGifCtx(im, & _out_ctx); } -#if HAVE_PNG +#ifdef HAVE_LIBPNG /** Write out this image in PNG file format to \p out. \param out A FILE * handle @@ -1187,7 +1191,7 @@ public: gdImageWBMPCtx(im, fg, & _out_ctx); } -#if HAVE_JPEG +#ifdef HAVE_LIBJPEG /** Write out this image in JPEG file format to \p out. \param out A FILE * handle @@ -1264,14 +1268,14 @@ public: void Gd(FILE * out) const { gdImageGd(im, out); } - void Gd(int * size) const { - gdImageGdPtr(im, size); + void* Gd(int * size) const { + return gdImageGdPtr(im, size); } void Gd2(FILE * out, int cs, int fmt) const { gdImageGd2(im, out, cs, fmt); } - void Gd2(int cs, int fmt, int * size) const { - gdImageGd2Ptr(im, cs, fmt, size); + void* Gd2(int cs, int fmt, int * size) const { + return gdImageGd2Ptr(im, cs, fmt, size); } void Ellipse(int cx, int cy, int w, int h, int color) { @@ -1335,6 +1339,10 @@ public: gdImageCopyRotated(im, src, dstX, dstY, srcX, srcY, srcWidth, srcHeight, angle); } + Image * CopyGaussianBlurred(int radius, double sigma) { + return new Image(gdImageCopyGaussianBlurred(im, radius, sigma)); + } + void Copy(const gdImagePtr src, const Point & dstP, const Point & srcP, const Size & s) { Copy(src, dstP.X(), dstP.Y(), srcP.X(), srcP.Y(), s.W(), s.H()); } @@ -1395,6 +1403,10 @@ public: CopyRotated(src.im, dstX, dstY, srcP.X(), srcP.Y(), srcS.W(), srcS.H(), angle); } + Image * Clone() { + return new Image(gdImageClone(im)); + } + void SetBrush(gdImagePtr brush) { gdImageSetBrush(im, brush); } @@ -1419,6 +1431,16 @@ public: void SetThickness(int thickness) { gdImageSetThickness(im, thickness); } + void SetResolution(int res_x, int res_y) { + gdImageSetResolution(im, res_x, res_y); + } + void SetInterpolationMethod(gdInterpolationMethod interpolation_method) { + gdImageSetInterpolationMethod(im, interpolation_method); + } + + Image * RotateInterpolated(const float angle, int bgcolor) { + return new Image(gdImageRotateInterpolated(im, angle, bgcolor)); + } void Interlace(bool interlaceArg) { gdImageInterlace(im, interlaceArg?1:0); @@ -1430,6 +1452,27 @@ public: gdImageSaveAlpha(im, saveAlphaArg?1:0); } + int ColorReplace(int src, int dst) { + return gdImageColorReplace(im, src, dst); + } + int ColorReplaceArray(int len, int * src, int * dst) { + return gdImageColorReplaceArray(im, len, src, dst); + } + int ColorReplaceCallback(gdCallbackImageColor callback) { + return gdImageColorReplaceCallback(im, callback); + } + int ColorReplaceThreshold(int src, int dst, float threshold) { + return gdImageColorReplaceThreshold(im, src, dst, threshold); + } + + bool Pixelate(int block_size, gdPixelateMode mode) { + return gdImagePixelate(im, block_size, mode) == 0 ? false : true; + } + + Image * Scale(int new_width, int new_height) { + return new Image(gdImageScale(im, new_width, new_height)); + } + bool IsTrueColor() const { return (gdImageTrueColor(im)?true:false); } @@ -1445,6 +1488,12 @@ public: int Height() const { return SY(); } + int ResX() const { + return gdImageResolutionX(im); + } + int ResY() const { + return gdImageResolutionY(im); + } void GetSize(Size & s) const { s.set(SX(), SY()); } diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdtables.c b/Build/source/libs/gd/libgd-2.1.1/src/gdtables.c index 7753b21a4b3..7753b21a4b3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdtables.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdtables.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdtest.c b/Build/source/libs/gd/libgd-2.1.1/src/gdtest.c index 17dfc1bc521..17dfc1bc521 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdtest.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdtest.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdtestft.c b/Build/source/libs/gd/libgd-2.1.1/src/gdtestft.c index e72165bdb56..e72165bdb56 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdtestft.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdtestft.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdtopng.c b/Build/source/libs/gd/libgd-2.1.1/src/gdtopng.c index d3341b43cad..d3341b43cad 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdtopng.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdtopng.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gdxpm.c b/Build/source/libs/gd/libgd-2.1.1/src/gdxpm.c index bad4be345b2..15603a6bd84 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gdxpm.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gdxpm.c @@ -28,6 +28,40 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromXpm(char *filename) #include <X11/xpm.h> +/* + Function: gdImageCreateFromXpm + + <gdImageCreateFromXbm> is called to load images from XPM X Window + System color bitmap format files. This function is available only + if HAVE_XPM is selected in the Makefile and the Xpm library is + linked with the application. Unlike most gd file functions, the + Xpm functions *require filenames*, not file + pointers. <gdImageCreateFromXpm> returns a <gdImagePtr> to the new + image, or NULL if unable to load the image (most often because the + file is corrupt or does not contain an XPM bitmap format + image). You can inspect the sx and sy members of the image to + determine its size. The image must eventually be destroyed using + <gdImageDestroy>. + + Parameters: + + filename - The input filename (*not* FILE pointer) + + Returns: + + A pointer to the new image or NULL if an error occurred. + + Example: + + > gdImagePtr im; + > FILE *in; + > in = fopen("myxpm.xpm", "rb"); + > im = gdImageCreateFromXpm(in); + > fclose(in); + > // ... Use the image ... + > gdImageDestroy(im); + +*/ BGD_DECLARE(gdImagePtr) gdImageCreateFromXpm(char *filename) { XpmInfo info; @@ -49,6 +83,16 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromXpm(char *filename) if(overflow2(sizeof(int), number)) { goto done; } + for(i = 0; i < number; i++) { + /* + avoid NULL pointer dereference + TODO better fix need to manage monochrome/monovisual + see m_color or g4_color or g_color + */ + if (!image.colorTable[i].c_color) { + goto done; + } + } colors = (int *)gdMalloc(sizeof(int) * number); if(colors == NULL) { diff --git a/Build/source/libs/gd/libgd-2.1.0/src/gifanimtest.c b/Build/source/libs/gd/libgd-2.1.1/src/gifanimtest.c index da17b9e24f5..da17b9e24f5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/gifanimtest.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/gifanimtest.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/giftogd2.c b/Build/source/libs/gd/libgd-2.1.1/src/giftogd2.c index e7d0c6b8250..e7d0c6b8250 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/giftogd2.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/giftogd2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/jisx0208.h b/Build/source/libs/gd/libgd-2.1.1/src/jisx0208.h index d49dddc010a..d49dddc010a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/jisx0208.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/jisx0208.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/msinttypes/inttypes.h b/Build/source/libs/gd/libgd-2.1.1/src/msinttypes/inttypes.h index 4b3828a2162..4b3828a2162 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/msinttypes/inttypes.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/msinttypes/inttypes.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/msinttypes/stdint.h b/Build/source/libs/gd/libgd-2.1.1/src/msinttypes/stdint.h index d02608a5972..d02608a5972 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/msinttypes/stdint.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/msinttypes/stdint.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/pngtogd.c b/Build/source/libs/gd/libgd-2.1.1/src/pngtogd.c index f00fe8f7ac9..f00fe8f7ac9 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/pngtogd.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/pngtogd.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/pngtogd2.c b/Build/source/libs/gd/libgd-2.1.1/src/pngtogd2.c index e474afb6612..e474afb6612 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/pngtogd2.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/pngtogd2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/testac.c b/Build/source/libs/gd/libgd-2.1.1/src/testac.c index 0d200f0630c..0d200f0630c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/testac.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/testac.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/testtr.c b/Build/source/libs/gd/libgd-2.1.1/src/testtr.c index b7b419f96c0..b7b419f96c0 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/testtr.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/testtr.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/wbmp.c b/Build/source/libs/gd/libgd-2.1.1/src/wbmp.c index 6be39410c55..6be39410c55 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/wbmp.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/wbmp.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/wbmp.h b/Build/source/libs/gd/libgd-2.1.1/src/wbmp.h index f163b4be410..f163b4be410 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/wbmp.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/wbmp.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/webpimg.c b/Build/source/libs/gd/libgd-2.1.1/src/webpimg.c index cf73d642b65..cf73d642b65 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/webpimg.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/webpimg.c diff --git a/Build/source/libs/gd/libgd-2.1.0/src/webpimg.h b/Build/source/libs/gd/libgd-2.1.1/src/webpimg.h index 8a05429a73c..8a05429a73c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/webpimg.h +++ b/Build/source/libs/gd/libgd-2.1.1/src/webpimg.h diff --git a/Build/source/libs/gd/libgd-2.1.0/src/webpng.c b/Build/source/libs/gd/libgd-2.1.1/src/webpng.c index 74231795d10..74231795d10 100644 --- a/Build/source/libs/gd/libgd-2.1.0/src/webpng.c +++ b/Build/source/libs/gd/libgd-2.1.1/src/webpng.c diff --git a/Build/source/libs/gd/libgd-2.1.0/test/gdtest.gd2 b/Build/source/libs/gd/libgd-2.1.1/test/gdtest.gd2 Binary files differindex aaa124f567c..aaa124f567c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/test/gdtest.gd2 +++ b/Build/source/libs/gd/libgd-2.1.1/test/gdtest.gd2 diff --git a/Build/source/libs/gd/libgd-2.1.0/test/gdtest.png b/Build/source/libs/gd/libgd-2.1.1/test/gdtest.png Binary files differindex 1d480c6a4f4..1d480c6a4f4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/test/gdtest.png +++ b/Build/source/libs/gd/libgd-2.1.1/test/gdtest.png diff --git a/Build/source/libs/gd/libgd-2.1.0/test/gdtest_200_300_150_100.png b/Build/source/libs/gd/libgd-2.1.1/test/gdtest_200_300_150_100.png Binary files differindex 535474e474a..535474e474a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/test/gdtest_200_300_150_100.png +++ b/Build/source/libs/gd/libgd-2.1.1/test/gdtest_200_300_150_100.png diff --git a/Build/source/libs/gd/libgd-2.1.0/test/gdtest_merge.png b/Build/source/libs/gd/libgd-2.1.1/test/gdtest_merge.png Binary files differindex 4381bbfe2fc..4381bbfe2fc 100644 --- a/Build/source/libs/gd/libgd-2.1.0/test/gdtest_merge.png +++ b/Build/source/libs/gd/libgd-2.1.1/test/gdtest_merge.png diff --git a/Build/source/libs/gd/libgd-2.1.0/test/gdtest_wbmp_to_png.png b/Build/source/libs/gd/libgd-2.1.1/test/gdtest_wbmp_to_png.png Binary files differindex d6baf5491fe..d6baf5491fe 100644 --- a/Build/source/libs/gd/libgd-2.1.0/test/gdtest_wbmp_to_png.png +++ b/Build/source/libs/gd/libgd-2.1.1/test/gdtest_wbmp_to_png.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/CMakeLists.txt index 5f8706fdb02..5f8706fdb02 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/CMakeLists.txt diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/Makefile.am b/Build/source/libs/gd/libgd-2.1.1/tests/Makefile.am index de63743c850..d5ae473748c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/Makefile.am +++ b/Build/source/libs/gd/libgd-2.1.1/tests/Makefile.am @@ -28,7 +28,12 @@ check_PROGRAMS = \ gif/gif_null \ gif/bug00181 \ gif/bug00227 \ - bmp/bmp_null + bmp/bmp_null \ + gdinterpolatedscale/gdTrivialResize \ + gdinterpolatedscale/gdModesAndPalettes \ + gd/gd_versiontest \ + gdimagefilter/gdCopyBlurred \ + gdimagefile/gdnametest EXTRA_PROGRAMS = \ gdimagestringft/gdimagestringft_bbox \ @@ -200,7 +205,7 @@ check_PROGRAMS += freetype/bug00132 endif -LDADD = ../src/libgd.la libgdtest.a +LDADD = libgdtest.a ../src/libgd.la AM_CPPFLAGS = -I$(top_srcdir)/src -I $(top_srcdir)/tests/gdtest TESTS = $(check_PROGRAMS) @@ -326,6 +331,9 @@ EXTRA_DIST = \ gdimagerotate/bug00067_150_exp.png \ gdimagerotate/bug00067_165_exp.png \ gdimagerotate/bug00067_180_exp.png \ + gdimagefile/img-ref.tga \ + gdimagefile/img-ref.xbm \ + gdimagefile/img-ref.xpm \ gdimageline/gdImageAALine_thickness_exp.png CLEANFILES = \ diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/bmp/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/bmp/CMakeLists.txt index 3e456f7ea02..751c303a756 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/bmp/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/bmp/CMakeLists.txt @@ -7,6 +7,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest ${GD_LIB}) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/bmp/bmp_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/bmp/bmp_im2im.c index 2beb2db4206..2beb2db4206 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/bmp/bmp_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/bmp/bmp_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/bmp/bmp_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/bmp/bmp_null.c index 08ed8377736..08ed8377736 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/bmp/bmp_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/bmp/bmp_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/CMakeLists.txt index dbc580e140a..201d19a5575 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/CMakeLists.txt @@ -1,10 +1,9 @@ SET(TESTS_FILES - bug00132 +# bug00132 ) FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/DejaVuSans.ttf b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/DejaVuSans.ttf Binary files differindex 3299ee5572f..3299ee5572f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/DejaVuSans.ttf +++ b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/DejaVuSans.ttf diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/bug00132.c b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/bug00132.c index 88cdfc695a3..88cdfc695a3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/bug00132.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/bug00132.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/bug00132_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/bug00132_exp.png Binary files differindex c45495e618f..c45495e618f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/freetype/bug00132_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/freetype/bug00132_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gd/CMakeLists.txt index a744f6619ac..c5327171ba0 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd/CMakeLists.txt @@ -3,11 +3,11 @@ SET(TESTS_FILES gd_im2im gd_null gd_num_colors + gd_versiontest ) FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd/crafted_num_colors.gd b/Build/source/libs/gd/libgd-2.1.1/tests/gd/crafted_num_colors.gd Binary files differindex 45c944cc29f..45c944cc29f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd/crafted_num_colors.gd +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd/crafted_num_colors.gd diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_im2im.c index a7a2226e719..a7a2226e719 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_null.c index c0594662f1c..c0594662f1c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_num_colors.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_num_colors.c index 7d919361925..7d919361925 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd/gd_num_colors.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_num_colors.c diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_versiontest.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_versiontest.c new file mode 100644 index 00000000000..1aa1a67b3d9 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd/gd_versiontest.c @@ -0,0 +1,21 @@ +#include <string.h> + +#include "gd.h" +#include "gdtest.h" + + +int main() +{ + char buffer[100]; + + gdTestAssert(GD_MAJOR_VERSION == gdMajorVersion()); + gdTestAssert(GD_MINOR_VERSION == gdMinorVersion()); + gdTestAssert(GD_RELEASE_VERSION == gdReleaseVersion()); + gdTestAssert(strcmp(GD_EXTRA_VERSION, gdExtraVersion()) == 0); + + sprintf(buffer, "%d.%d.%d%s", GD_MAJOR_VERSION, GD_MINOR_VERSION, + GD_RELEASE_VERSION, GD_EXTRA_VERSION); + gdTestAssert(strcmp(GD_VERSION_STRING, gdVersionString()) == 0); + + return gdNumFailures(); +} diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/CMakeLists.txt index c9bd5e5876e..68a064c0fbd 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/CMakeLists.txt @@ -9,6 +9,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_gd2_exp.gd2 b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_gd2_exp.gd2 index e69de29bb2d..e69de29bb2d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_gd2_exp.gd2 +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_gd2_exp.gd2 diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_test.gd2 b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_test.gd2 Binary files differindex 1c64b46d9ae..1c64b46d9ae 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_test.gd2 +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_test.gd2 diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_test_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_test_exp.png Binary files differindex b4bc3fad9f4..b4bc3fad9f4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/conv_test_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/conv_test_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/empty.gd2 b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/empty.gd2 index e69de29bb2d..e69de29bb2d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/empty.gd2 +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/empty.gd2 diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_empty_file.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_empty_file.c index 289debc541e..289debc541e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_empty_file.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_empty_file.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_im2im.c index 7745fa5973e..7745fa5973e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_null.c index 6c8fc96caae..6c8fc96caae 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_read.c b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_read.c index 2e78e9a6d23..2e78e9a6d23 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gd2/gd2_read.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gd2/gd2_read.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/CMakeLists.txt index 82cc9b8e1c1..4725daea2cc 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/bug00079.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/bug00079.c index b2843a74873..b2843a74873 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/bug00079.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/bug00079.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/bug00079_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/bug00079_exp.png Binary files differindex 1abfbbfbc51..1abfbbfbc51 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagearc/bug00079_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagearc/bug00079_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorclosest/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorclosest/CMakeLists.txt index 1b2f83edc8c..30a47c0b800 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorclosest/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorclosest/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorclosest/gdimagecolorclosest.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorclosest/gdimagecolorclosest.c index 4754a2c28be..4754a2c28be 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorclosest/gdimagecolorclosest.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorclosest/gdimagecolorclosest.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolordeallocate/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolordeallocate/CMakeLists.txt index 996bd24ca9e..7958cd6cce4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolordeallocate/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolordeallocate/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolordeallocate/gdimagecolordeallocate.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolordeallocate/gdimagecolordeallocate.c index c671bd323de..c671bd323de 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolordeallocate/gdimagecolordeallocate.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolordeallocate/gdimagecolordeallocate.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorexact/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorexact/CMakeLists.txt index a724d130891..f62bc26bbe3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorexact/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorexact/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorexact/gdimagecolorexact.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorexact/gdimagecolorexact.c index 9d754ca9614..9d754ca9614 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorexact/gdimagecolorexact.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorexact/gdimagecolorexact.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorreplace/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorreplace/CMakeLists.txt index f88a8a07b37..915d9d49873 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorreplace/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorreplace/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorreplace/gdimagecolorreplace.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorreplace/gdimagecolorreplace.c index 9694bd4ae5a..9694bd4ae5a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorreplace/gdimagecolorreplace.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorreplace/gdimagecolorreplace.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorresolve/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorresolve/CMakeLists.txt index 2ab9444a6ce..4b918251655 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorresolve/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorresolve/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorresolve/gdimagecolorresolve.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorresolve/gdimagecolorresolve.c index 1a0d6884e7e..1a0d6884e7e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolorresolve/gdimagecolorresolve.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolorresolve/gdimagecolorresolve.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolortransparent/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolortransparent/CMakeLists.txt index 9e6c82f0a09..5f580f7f174 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolortransparent/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolortransparent/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolortransparent/gdimagecolortransparent.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolortransparent/gdimagecolortransparent.c index aca380b2c6f..aca380b2c6f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecolortransparent/gdimagecolortransparent.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecolortransparent/gdimagecolortransparent.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/CMakeLists.txt index 209257aab63..0b0ccdd77b5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/CMakeLists.txt @@ -6,6 +6,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00007.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00007.c index f3106f3a2f4..f3106f3a2f4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00007.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00007.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00081.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00081.c index 0e28f4ca409..0e28f4ca409 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00081.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00081.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00081_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00081_exp.png Binary files differindex c5587f78a40..c5587f78a40 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopy/bug00081_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopy/bug00081_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/CMakeLists.txt index 4a0e08346d9..7f75aa7c572 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/CMakeLists.txt @@ -6,6 +6,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/bug00020.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/bug00020.c index f1c2467fc47..f1c2467fc47 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/bug00020.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/bug00020.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/bug00020_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/bug00020_exp.png Binary files differindex f0a9c161b14..f0a9c161b14 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagecopyrotated/bug00020_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagecopyrotated/bug00020_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/gdnametest.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/gdnametest.c new file mode 100644 index 00000000000..dd8f0196a59 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/gdnametest.c @@ -0,0 +1,169 @@ +#include <stdio.h> +#include <stdlib.h> + +#include "gd.h" +#include "gdtest.h" +#include "../test_config.h" + +#define WIDTH 60 +#define HEIGHT 50 +#define LX (WIDTH/2) // Line X +#define LY (HEIGHT/2) // Line Y +#define HT 2 // Half of line-thickness + + +gdImagePtr mkwhite(int x, int y) +{ + gdImagePtr im; + + im = gdImageCreateTrueColor(x, y); + gdImageFilledRectangle(im, 0, 0, x-1, y-1, + gdImageColorExactAlpha(im, 255, 255, 255, 0)); + + gdTestAssert(im != NULL); + + gdImageSetInterpolationMethod(im, GD_BICUBIC); // FP interp'n + + return im; +}/* mkwhite*/ + + +gdImagePtr mkcross() { + gdImagePtr im; + int fg, n; + + im = mkwhite(WIDTH, HEIGHT); + fg = gdImageColorAllocate(im, 0, 0, 0); + + for (n = -HT; n < HT; n++) { + gdImageLine(im, LX-n, 0, LX-n, HEIGHT-1, fg); + gdImageLine(im, 0, LY-n, WIDTH-1, LY-n, fg); + }/* for */ + + return im; +}/* mkcross*/ + + + + +void +do_test() { + + gdTestAssertMsg(strchr("123",'2') != 0, "strchr() is not functional.\n",1); + gdTestAssertMsg(strcasecmp("123abC","123Abc") == 0, "strcasecmp() is not functional.\n",1); + + int n; + struct { + const char *nm; // Filename + unsigned maxdiff; // Maximum total pixel diff + int required; // 1 -> image type always supported, -1 -> skip it + int readonly; // 1 -> gd can only read this type + } names[] = { + {"img.png", 0, 0, 0}, + {"img.gif", 5, 1, 0}, // This seems to come from tc<->palette + {"img.GIF", 5, 1, 0}, // Test for case insensitivity + {"img.gd", 0, 1, 0}, + {"img.gd2", 0, 0, 0}, + {"img.jpg", 25, 0, 0}, + {"img.jpeg", 25, 0, 0}, + {"img.wbmp", 0, 1, 0}, + {"img.bmp", 0, 1, 0}, + {"img-ref.xpm", 0, 0, 1}, + + // These break the test so I'm skipping them since the point + // of this test is not those loaders. + {"img-ref.xbm", 0, -1, 1}, + {"img-ref.tga", 0, -1, 1}, + {"img.webp", 0, -1, 0}, + {"img.tiff", 0, -1, 0}, + + {NULL, 0} + }; + + for (n = 0; names[n].nm; n++) { + gdImagePtr orig, copy; + int status; + char full_filename[255]; + + /* Some image readers are buggy and crash the program so we + * skip them. Bug fixers should remove these from the list of + * skipped items as bugs are fixed. */ + if (names[n].required < 0) { + printf("Skipping test for '%s'. FIX THIS!\n", names[n].nm); + continue; + }/* if */ + + /* Skip this file if the current library build doesn't support + * it. (If it's one of the built-in types, *that* a different + * problem; we assert that here.) */ + if (!gdSupportsFileType(names[n].nm, 0)) { + gdTestAssertMsg(!names[n].required, "GD doesn't support required file type: %s\n", full_filename); + continue; + }/* if */ + + orig = mkcross(); + + + #ifdef GDTEST_TOP_DIR + + snprintf(full_filename, sizeof(full_filename), GDTEST_TOP_DIR"/gdimagefile/%s", + names[n].nm); + + #else + /* Prepend the test directory; this is expected to be run in + * the parent dir. */ + snprintf(full_filename, sizeof(full_filename), "gdimagefile/%s", + names[n].nm); + #endif + + + /* Write the image unless writing is not supported. */ + if (!names[n].readonly) { + status = gdImageFile(orig, full_filename); + gdTestAssertMsg(status == GD_TRUE, "Failed to create %s\n", full_filename); + }/* if */ + + copy = gdImageCreateFromFile(full_filename); + gdTestAssertMsg(!!copy, "Failed to load %s\n", full_filename); + if (!copy) continue; + + /* Debug printf. */ + //printf("%s -> %d\n", full_filename, gdMaxPixelDiff(orig, copy)); + + gdTestAssertMsg(gdMaxPixelDiff(orig, copy) <= names[n].maxdiff,"Pixels different on %s\n", full_filename, full_filename); + + if (!names[n].readonly) { + status = remove(full_filename); + gdTestAssertMsg(status == 0, "Failed to delete %s\n", full_filename); + }/* if */ + + gdImageDestroy(orig); + gdImageDestroy(copy); + }/* for */ + +}/* do_test*/ + + +void +do_errortest() { + gdImagePtr im; + + im = mkcross(); + + gdTestAssert(!gdImageFile(im, "img.xpng")); + gdTestAssert(!gdImageFile(im, "bobo")); + gdTestAssert(!gdImageFile(im, "png")); + gdTestAssert(!gdImageFile(im, "")); + + gdImageDestroy(im); +}/* do_errortest*/ + + +int main(int argc, char **argv) +{ + + do_test(); + do_errortest(); + + return gdNumFailures(); +} diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.tga b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.tga Binary files differnew file mode 100644 index 00000000000..201e1450760 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.tga diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xbm b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xbm new file mode 100644 index 00000000000..bb7ebb72c40 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xbm @@ -0,0 +1,37 @@ +#define foo-ref_width 60 +#define foo-ref_height 50 +static char foo-ref_bits[] = { + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, + 0x01, 0x00, 0x00, 0x00, }; diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xpm b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xpm new file mode 100644 index 00000000000..574d3d95d2d --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefile/img-ref.xpm @@ -0,0 +1,58 @@ +/* XPM */ +static char *img_ref[] = { +/* columns rows colors chars-per-pixel */ +"60 50 2 1 ", +" c gray100", +". c black", +/* pixels */ +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +"............................................................", +"............................................................", +"............................................................", +"............................................................", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... ", +" .... " +}; diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/CMakeLists.txt index c0fe79914b6..ef85f1cf7ef 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/CMakeLists.txt @@ -8,6 +8,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_1.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_1.c index 2a440f20ede..2a440f20ede 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_1.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_1.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_1_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_1_exp.png Binary files differindex a5435f278bc..a5435f278bc 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_1_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_1_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_2.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_2.c index 06cf8311195..06cf8311195 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_2.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_2_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_2_exp.png Binary files differindex 2a3f0fb2c65..2a3f0fb2c65 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_2_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_2_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_3.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_3.c index 454d5be3612..454d5be3612 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_3.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_3.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_3_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_3_exp.png Binary files differindex b8b7a2b319d..b8b7a2b319d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_3_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_3_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_4.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_4.c index 4b11d84bdc9..4b11d84bdc9 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_4.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_4.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_4_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_4_exp.png Binary files differindex d751a74d7a0..d751a74d7a0 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefill/bug00002_4_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefill/bug00002_4_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/CMakeLists.txt index 8d047e787d7..fb1ed6ca1ac 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/CMakeLists.txt @@ -7,6 +7,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00010.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00010.c index df0c66dbc64..df0c66dbc64 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00010.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00010.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00010_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00010_exp.png Binary files differindex 871ca671987..871ca671987 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00010_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00010_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00191.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00191.c index 7db64151726..7db64151726 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00191.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00191.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00191.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00191.png Binary files differindex dbb7439e2b5..dbb7439e2b5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledellipse/bug00191.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledellipse/bug00191.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/CMakeLists.txt index be8ab7c4aa3..2ca4bf51f99 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/CMakeLists.txt @@ -9,6 +9,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/bug00100.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/bug00100.c index ae2e084fe41..ae2e084fe41 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/bug00100.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/bug00100.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/bug00100.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/bug00100.png Binary files differindex 439224e2334..439224e2334 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/bug00100.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/bug00100.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon0.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon0.c index 5ca877c630c..5ca877c630c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon0.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon0.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon0.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon0.png Binary files differindex 14c7090a415..14c7090a415 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon0.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon0.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon1.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon1.c index 950035e2b4b..950035e2b4b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon1.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon1.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon1.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon1.png Binary files differindex 14c7090a415..14c7090a415 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon1.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon1.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon2.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon2.c index 628665a1919..628665a1919 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon2.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon2.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon2.png Binary files differindex 80f91a2814b..80f91a2814b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon2.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon2.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon3.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon3.c index 0db5c8519e1..0db5c8519e1 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon3.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon3.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon3.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon3.png Binary files differindex 72311d83a29..72311d83a29 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledpolygon/gdimagefilledpolygon3.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledpolygon/gdimagefilledpolygon3.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/CMakeLists.txt index 9a82b99ea01..73920709bb5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/CMakeLists.txt @@ -7,6 +7,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00004.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00004.c index 594e29637d7..594e29637d7 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00004.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00004.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00078.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00078.c index adf244ebca2..adf244ebca2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00078.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00078.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00106_gdimagefilledrectangle.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00106_gdimagefilledrectangle.c index 24f5ceb9327..24f5ceb9327 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilledrectangle/bug00106_gdimagefilledrectangle.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilledrectangle/bug00106_gdimagefilledrectangle.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilltoborder/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilltoborder/CMakeLists.txt index 966bff0657b..e24a69a1452 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilltoborder/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilltoborder/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilltoborder/bug00037.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilltoborder/bug00037.c index 646adbd0f79..646adbd0f79 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagefilltoborder/bug00037.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilltoborder/bug00037.c diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilter/gdCopyBlurred.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilter/gdCopyBlurred.c new file mode 100644 index 00000000000..69ca06133bc --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagefilter/gdCopyBlurred.c @@ -0,0 +1,198 @@ +#include <stdio.h> +#include <stdlib.h> + +#include "gd.h" +#include "gdtest.h" + +#define WIDTH 300 +#define HEIGHT 200 +#define LX (WIDTH/2) // Line X +#define LY (HEIGHT/2) // Line Y +#define HT 3 // Half of line-thickness + +#define CLOSE_ENOUGH 0 +#define PIXEL_CLOSE_ENOUGH 0 + + +void +save(gdImagePtr im, const char *filename) { +#if 0 // set TRUE to write out some intermediate images + FILE *out; + + out = fopen(filename, "wb"); + gdImagePng(im, out); + fclose(out); +#else + im, filename; +#endif +}/* save*/ + + +/* Test gdImageScale() with bicubic interpolation on a simple + * all-white image. */ + +gdImagePtr mkwhite(int x, int y) +{ + gdImagePtr im; + + im = gdImageCreateTrueColor(x, y); + gdImageFilledRectangle(im, 0, 0, x-1, y-1, + gdImageColorExactAlpha(im, 255, 255, 255, 0)); + + gdTestAssert(im != NULL); + + gdImageSetInterpolationMethod(im, GD_BICUBIC); // FP interp'n + + return im; +}/* mkwhite*/ + + +/* Fill with almost-black. */ +void mkblack(gdImagePtr ptr) +{ + gdImageFilledRectangle(ptr, 0, 0, ptr->sx - 1, ptr->sy - 1, + gdImageColorExactAlpha(ptr, 2, 2, 2, 0)); +}/* mkblack*/ + + +gdImagePtr mkcross() { + gdImagePtr im; + int fg, n; + + im = mkwhite(WIDTH, HEIGHT); + fg = gdImageColorAllocate(im, 0, 0, 0); + + for (n = -HT; n < HT; n++) { + gdImageLine(im, LX-n, 0, LX-n, HEIGHT-1, fg); + gdImageLine(im, 0, LY-n, WIDTH-1, LY-n, fg); + }/* for */ + + return im; +}/* mkcross*/ + + + +void blurblank(gdImagePtr im, int radius, double sigma) { + gdImagePtr result; + + result = gdImageCopyGaussianBlurred(im, radius, sigma); + gdTestAssert(!!result); + if (!result) return; + + gdTestAssert(gdMaxPixelDiff(im, result) <= CLOSE_ENOUGH); + + gdImageDestroy(result); +}/* blurblank*/ + + +void do_test() +{ + gdImagePtr im, imref, tmp; + gdImagePtr same, same2; + + im = mkwhite(WIDTH, HEIGHT); + imref = mkwhite(WIDTH, HEIGHT); + + /* Blur a plain white image to various radii and ensure they're + * still similar enough. */ + blurblank(im, 1, 0.0); + blurblank(im, 2, 0.0); + blurblank(im, 4, 0.0); + blurblank(im, 8, 0.0); + blurblank(im, 16, 0.0); + + /* Ditto a black image. */ + mkblack(im); + gdTestAssert(gdMaxPixelDiff(im, imref) >= 240); /* Leaves a little wiggle room */ + + blurblank(im, 1, 0.0); + blurblank(im, 2, 0.0); + blurblank(im, 4, 0.0); + blurblank(im, 8, 0.0); + blurblank(im, 16, 0.0); +}/* do_test*/ + +/* Ensure that RGB values are equal, then return r (which is therefore + * the whiteness.) */ +int getwhite(gdImagePtr im, int x, int y) +{ + int px, r, g, b; + + px = gdImageGetPixel(im, x, y); + r = gdImageRed(im, px); + g = gdImageGreen(im, px); + b = gdImageBlue(im, px); + + gdTestAssert(r == g && r == b); + + return r; +}/* getrgb*/ + +int whitecmp(gdImagePtr im1, gdImagePtr im2, int x, int y) { + int w1, w2; + + w1 = getwhite(im1, x, y); + w2 = getwhite(im2, x, y); + + return abs(w1 - w2); +}/* whitediff*/ + +void do_crosstest() +{ + gdImagePtr im = mkcross(); + gdImagePtr blurred; + const int RADIUS = 16; + + gdTestAssert(!!im); + + save(im, "cross.png"); + + blurred = gdImageCopyGaussianBlurred(im, RADIUS, 0.0); + gdTestAssert(blurred != NULL); + save(blurred, "blurredcross.png"); + + /* These spots shouldn't be affected. */ + gdTestAssert(whitecmp(im, blurred, 5, 5) <= PIXEL_CLOSE_ENOUGH); + gdTestAssert(whitecmp(im, blurred, WIDTH-5, 5) <= PIXEL_CLOSE_ENOUGH); + gdTestAssert(whitecmp(im, blurred, 5, HEIGHT-5) <= PIXEL_CLOSE_ENOUGH); + gdTestAssert(whitecmp(im, blurred, WIDTH-5, HEIGHT-5) <= PIXEL_CLOSE_ENOUGH); + +// printf("%d %d %d %d\n", whitecmp(im, blurred, 0, 0), whitecmp(im, blurred, WIDTH-1, 0), +// whitecmp(im, blurred, 0, HEIGHT-1), whitecmp(im, blurred, WIDTH-1, HEIGHT-1)); + + /* Ditto these, right in the corners */ + gdTestAssert(whitecmp(im, blurred, 0, 0) <= PIXEL_CLOSE_ENOUGH); + gdTestAssert(whitecmp(im, blurred, WIDTH-1, 0) <= PIXEL_CLOSE_ENOUGH); + gdTestAssert(whitecmp(im, blurred, 0, HEIGHT-1) <= PIXEL_CLOSE_ENOUGH); + gdTestAssert(whitecmp(im, blurred, WIDTH-1, HEIGHT-1) <= PIXEL_CLOSE_ENOUGH); + + /* Now, poking let's poke around the blurred lines. */ + + /* Vertical line gets darker when approached from the left. */ + gdTestAssert(getwhite(blurred, 1, 1) > getwhite(blurred, LX - (HT - 1), 1)); + gdTestAssert(getwhite(blurred, LX - 2, 1) > getwhite(blurred, LX - 1, 1)); + + /* ...and lighter when moving away to the right. */ + gdTestAssert(getwhite(blurred, LX + 2, 1) >= getwhite(blurred, LX + 1, 1)); + gdTestAssert(getwhite(blurred, LX + 3, 1) >= getwhite(blurred, LX + 2, 1)); + gdTestAssert(getwhite(blurred, WIDTH - 1, 1) > getwhite(blurred, LX + 1, 1)); + + /* And the same way, vertically */ + gdTestAssert(getwhite(blurred, 1, 1) > getwhite(blurred, 1, LY - (HT - 1))); + gdTestAssert(getwhite(blurred, 1, LY - (HT - 1)) > getwhite(blurred, 1, LY - (HT - 2))); + + gdTestAssert(getwhite(blurred, 1, LY) <= getwhite(blurred, 1, LY + 1)); + gdTestAssert(getwhite(blurred, 1, LY + 1) < getwhite(blurred, 1, LY + 3)); + gdTestAssert(getwhite(blurred, 1, LY + 3) < getwhite(blurred, 1, HEIGHT-1)); + gdImageDestroy(blurred); +}/* do_crosstest*/ + + +int main(int argc, char **argv) +{ + + do_test(); + do_crosstest(); + + return gdNumFailures(); +} diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/CMakeLists.txt index fb3212eba71..78f11d424fb 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/CMakeLists.txt @@ -9,6 +9,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00072.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00072.c index c3a3137e539..c3a3137e539 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00072.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00072.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00072_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00072_exp.png Binary files differindex 6439e061f1d..6439e061f1d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00072_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00072_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00077.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00077.c index d69e88177f2..d69e88177f2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00077.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00077.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00077_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00077_exp.png Binary files differindex bfa097a5c56..bfa097a5c56 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00077_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00077_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00111.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00111.c index 4277534874d..4277534874d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00111.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00111.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00111_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00111_exp.png Binary files differindex ecd44b25d66..ecd44b25d66 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/bug00111_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/bug00111_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdImageAALine_thickness.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdImageAALine_thickness.c index 6db2c72f57c..954e055b6fb 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdImageAALine_thickness.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdImageAALine_thickness.c @@ -25,4 +25,6 @@ int main(int argc, char **argv) } gdImageDestroy(im); + + return 0; } diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdImageAALine_thickness_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdImageAALine_thickness_exp.png Binary files differindex 26e02bc3661..26e02bc3661 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdImageAALine_thickness_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdImageAALine_thickness_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa.c index b0bea3a4d5c..b0bea3a4d5c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_a_0_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_a_0_exp.png Binary files differindex 83f893453ed..83f893453ed 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_a_0_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_a_0_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_a_1_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_a_1_exp.png Binary files differindex c4edcfa36ec..c4edcfa36ec 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_a_1_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_a_1_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_b_0_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_b_0_exp.png Binary files differindex 130d6c36cc7..130d6c36cc7 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_b_0_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_b_0_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_b_1_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_b_1_exp.png Binary files differindex 678800658d3..678800658d3 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_b_1_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_b_1_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_c_0_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_c_0_exp.png Binary files differindex 6d03ae6652e..6d03ae6652e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_c_0_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_c_0_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_c_1_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_c_1_exp.png Binary files differindex 6e1a38aa7e1..6e1a38aa7e1 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_c_1_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_c_1_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_d_0_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_d_0_exp.png Binary files differindex c6f9e27e4fc..c6f9e27e4fc 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_d_0_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_d_0_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_d_1_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_d_1_exp.png Binary files differindex 709c186c26a..709c186c26a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_d_1_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_d_1_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_outofrange.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_outofrange.c index 5c1ed05ab03..5c1ed05ab03 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_aa_outofrange.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_aa_outofrange.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_bug5.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_bug5.c index ef57f6c1cb2..44adc8eaf86 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageline/gdimageline_bug5.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageline/gdimageline_bug5.c @@ -4,7 +4,7 @@ int main() { /* Declare the image */ - gdImagePtr im; + gdImagePtr im, ref; /* Declare output files */ /* FILE *pngout; */ @@ -20,20 +20,35 @@ int main() { /* white background */ gdImageFill(im, 1, 1, white); + /* Make a reference copy. */ + ref = gdImageClone(im); + gdImageSetAntiAliased(im, black); - /* This line fails! */ + /* This line used to fail. */ gdImageLine(im, 28562, 631, 34266, 750, gdAntiAliased); - /* Open a file for writing. "wb" means "write binary", important under MSDOS, harmless under Unix. */ - /* pngout = fopen("test.png", "wb"); */ + gdTestAssert(gdMaxPixelDiff(im, ref) > 0); + +#if 0 + { + FILE *pngout; - /* Output the image to the disk file in PNG format. */ - /* gdImagePng(im, pngout); */ + /* Open a file for writing. "wb" means "write binary", + * important under MSDOS, harmless under Unix. */ + pngout = fopen("test.png", "wb"); - /* Close the files. */ - /* fclose(pngout); */ + /* Output the image to the disk file in PNG format. */ + gdImagePng(im, pngout); + + /* Close the files. */ + fclose(pngout); + } +#endif /* Destroy the image in memory. */ gdImageDestroy(im); + gdImageDestroy(ref); + + return gdNumFailures(); } diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/CMakeLists.txt index 09a22678077..4e54fffb143 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/CMakeLists.txt @@ -8,6 +8,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon0.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon0.c index d9bf1bd962a..d9bf1bd962a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon0.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon0.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon0.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon0.png Binary files differindex 14c7090a415..14c7090a415 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon0.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon0.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon1.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon1.c index 07ee29dff49..07ee29dff49 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon1.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon1.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon1.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon1.png Binary files differindex 14c7090a415..14c7090a415 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon1.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon1.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon2.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon2.c index ab097d83cad..ab097d83cad 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon2.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon2.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon2.png Binary files differindex 80f91a2814b..80f91a2814b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon2.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon2.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon3.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon3.c index 027bfacd20b..027bfacd20b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon3.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon3.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon3.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon3.png Binary files differindex 9d63d6ac9ba..9d63d6ac9ba 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimageopenpolygon/gdimageopenpolygon3.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimageopenpolygon/gdimageopenpolygon3.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepixelate/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepixelate/CMakeLists.txt index 1f1182581eb..2d10b21ed94 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepixelate/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepixelate/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepixelate/gdimagepixelate.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepixelate/gdimagepixelate.c index 2a0a4692269..2a0a4692269 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepixelate/gdimagepixelate.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepixelate/gdimagepixelate.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/CMakeLists.txt index 92802ec6253..679e93986be 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/CMakeLists.txt @@ -8,6 +8,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon0.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon0.c index 20fa423c056..20fa423c056 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon0.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon0.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon0.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon0.png Binary files differindex 14c7090a415..14c7090a415 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon0.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon0.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon1.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon1.c index 6f2ad57dfcc..6f2ad57dfcc 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon1.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon1.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon1.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon1.png Binary files differindex 845c5f6930b..845c5f6930b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon1.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon1.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon2.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon2.c index 8142c3ba873..8142c3ba873 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon2.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon2.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon2.png Binary files differindex 80f91a2814b..80f91a2814b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon2.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon2.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon3.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon3.c index 55d71f27a9c..55d71f27a9c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon3.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon3.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon3.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon3.png Binary files differindex aaff882a8fb..aaff882a8fb 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagepolygon/gdimagepolygon3.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagepolygon/gdimagepolygon3.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/CMakeLists.txt index 223b381128b..2c73ef9b77a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/CMakeLists.txt @@ -6,6 +6,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/bug00003.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/bug00003.c index 4ee4ddbcb5d..4ee4ddbcb5d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/bug00003.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/bug00003.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/bug00106_gdimagerectangle.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/bug00106_gdimagerectangle.c index 21bf88b7440..21bf88b7440 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerectangle/bug00106_gdimagerectangle.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerectangle/bug00106_gdimagerectangle.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067.c index 4a6595988b9..4a6595988b9 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_000_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_000_exp.png Binary files differindex d06b5fe58fb..d06b5fe58fb 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_000_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_000_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_015_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_015_exp.png Binary files differindex a0f8ce2efae..a0f8ce2efae 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_015_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_015_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_030_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_030_exp.png Binary files differindex aad7f4ccb67..aad7f4ccb67 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_030_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_030_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_045_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_045_exp.png Binary files differindex 75916a51649..75916a51649 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_045_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_045_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_060_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_060_exp.png Binary files differindex f24364a062f..f24364a062f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_060_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_060_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_075_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_075_exp.png Binary files differindex f8dcf449086..f8dcf449086 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_075_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_075_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_090_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_090_exp.png Binary files differindex a971447c7b2..a971447c7b2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_090_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_090_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_105_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_105_exp.png Binary files differindex 2cf641d85a8..2cf641d85a8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_105_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_105_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_120_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_120_exp.png Binary files differindex 1890f92545c..1890f92545c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_120_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_120_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_135_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_135_exp.png Binary files differindex 34ccb0aa054..34ccb0aa054 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_135_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_135_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_150_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_150_exp.png Binary files differindex 330d030a7fa..330d030a7fa 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_150_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_150_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_165_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_165_exp.png Binary files differindex df5b6400bc2..df5b6400bc2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_165_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_165_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_180_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_180_exp.png Binary files differindex d4f65983615..d4f65983615 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/bug00067_180_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/bug00067_180_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898.c index 9bbd98b5313..9bbd98b5313 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898.png Binary files differindex 089680a248c..089680a248c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898_exp.png Binary files differindex a03bdb8e9d6..a03bdb8e9d6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/php_bug_64898_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/php_bug_64898_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/remirh128.jpg b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/remirh128.jpg Binary files differindex bd5e3c77e3c..bd5e3c77e3c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagerotate/remirh128.jpg +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagerotate/remirh128.jpg diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/CMakeLists.txt index 3e51d344065..13de90a4ff6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/CMakeLists.txt @@ -6,6 +6,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208.png Binary files differindex eac854aeaeb..eac854aeaeb 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_1.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_1.c index 4dc8b63e737..4dc8b63e737 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_1.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_1.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_1.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_1.png Binary files differindex 21ef1240db4..21ef1240db4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_1.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_1.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_2.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_2.c index 90361569df2..90361569df2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_2.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_2.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_2.png Binary files differindex feb1ede3594..feb1ede3594 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagescatterex/bug00208_2.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagescatterex/bug00208_2.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagesetpixel/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagesetpixel/CMakeLists.txt index e5b9b2a0dd3..1fb1f38bb36 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagesetpixel/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagesetpixel/CMakeLists.txt @@ -1,10 +1,11 @@ SET(TESTS_FILES bug00186 + gdeffectoverlay + gdeffectmultiply ) FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagesetpixel/bug00186.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagesetpixel/bug00186.c index efa07b27ec8..efa07b27ec8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagesetpixel/bug00186.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagesetpixel/bug00186.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringft/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringft/CMakeLists.txt index 7ff29cb7662..c3338c0dc92 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringft/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringft/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringft/gdimagestringft_bbox.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringft/gdimagestringft_bbox.c index 01fd73a33c1..01fd73a33c1 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringft/gdimagestringft_bbox.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringft/gdimagestringft_bbox.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringftex/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringftex/CMakeLists.txt index 7252bd24c92..5d2666883d8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringftex/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringftex/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringftex/gdimagestringftex_returnfontpathname.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringftex/gdimagestringftex_returnfontpathname.c index f91485b7717..f91485b7717 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdimagestringftex/gdimagestringftex_returnfontpathname.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdimagestringftex/gdimagestringftex_returnfontpathname.c diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdModesAndPalettes.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdModesAndPalettes.c new file mode 100644 index 00000000000..a6ed14d92f3 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdModesAndPalettes.c @@ -0,0 +1,48 @@ +/* Exercise all scaling with all interpolation modes and ensure that + * at least, something comes back. */ + +#include <stdio.h> + +#include "gd.h" +#include "gdtest.h" + +#define X 100 +#define Y 100 + +#define NX 20 +#define NY 20 + +int main() { + int method, i; + + for(method = GD_BELL; method <= GD_TRIANGLE; method++) { /* GD_WEIGHTED4 is unsupported. */ + gdImagePtr im[2]; + + // printf("Method = %d\n", method); + im[0] = gdImageCreateTrueColor(X, Y); + im[1] = gdImageCreatePalette(X, Y); + + for (i = 0; i < 2; i++) { + gdImagePtr result; + + // printf(" %s\n", i == 0 ? "truecolor" : "palette"); + + gdImageFilledRectangle(im[i], 0, 0, X-1, Y-1, + gdImageColorExactAlpha(im[i], 255, 255, 255, 0)); + + gdImageSetInterpolationMethod(im[i], method); + gdTestAssert(im[i]->interpolation_id == method); /* No getter yet. */ + + result = gdImageScale(im[i], NX, NY); + gdTestAssert(result != NULL); + gdTestAssert(result != im[i]); + gdTestAssert(result->sx == NX && result->sy == NY); + + gdImageDestroy(result); + gdImageDestroy(im[i]); + }/* for */ + }/* for*/ + + + return gdNumFailures(); +}/* main*/ diff --git a/Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdTrivialResize.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdTrivialResize.c new file mode 100644 index 00000000000..f11b5059fbf --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdinterpolatedscale/gdTrivialResize.c @@ -0,0 +1,94 @@ +#include <stdio.h> + +#include "gd.h" +#include "gdtest.h" + +/* Test gdImageScale() with bicubic interpolation on a simple + * all-white image. */ + +gdImagePtr mkwhite(int x, int y) +{ + gdImagePtr im; + + im = gdImageCreateTrueColor(x, y); + gdImageFilledRectangle(im, 0, 0, x-1, y-1, + gdImageColorExactAlpha(im, 255, 255, 255, 0)); + + gdTestAssert(im != NULL); + + gdImageSetInterpolationMethod(im, GD_BICUBIC); // FP interp'n + + return im; +}/* mkwhite*/ + + +/* Fill with almost-black. */ +void mkblack(gdImagePtr ptr) +{ + gdImageFilledRectangle(ptr, 0, 0, ptr->sx - 1, ptr->sy - 1, + gdImageColorExactAlpha(ptr, 2, 2, 2, 0)); +}/* mkblack*/ + + +#define CLOSE_ENOUGH 15 + +void scaletest(int x, int y, int nx, int ny) +{ + gdImagePtr im, imref, tmp, same; + + imref = mkwhite(x, y); + im = mkwhite(x, y); + tmp = gdImageScale(im, nx, ny); + same = gdImageScale(tmp, x, y); + + /* Test the result to insure that it's close enough to the + * original. */ + gdTestAssert(gdMaxPixelDiff(im, same) < CLOSE_ENOUGH); + + /* Modify the original and test for a change again. (I.e. test + * for accidentally shared memory.) */ + mkblack(tmp); + gdTestAssert(gdMaxPixelDiff(imref, same) < CLOSE_ENOUGH); + + gdImageDestroy(im); + gdImageDestroy(tmp); + gdImageDestroy(same); +}/* scaletest*/ + +void do_test(int x, int y, int nx, int ny) +{ + gdImagePtr im, imref, tmp; + gdImagePtr same, same2; + + im = mkwhite(x, y); + imref = mkwhite(x, y); + + same = gdImageScale(im, x, y); + + /* Trivial resize should be a straight copy. */ + gdTestAssert(im != same); + gdTestAssert(gdMaxPixelDiff(im, same) == 0); + gdTestAssert(gdMaxPixelDiff(imref, same) == 0); + + /* Ensure that modifying im doesn't modify same (i.e. see if we + * can catch them accidentally sharing the same pixel buffer.) */ + mkblack(im); + gdTestAssert(gdMaxPixelDiff(imref, same) == 0); + + gdImageDestroy(same); + gdImageDestroy(im); + + /* Scale horizontally, vertically and both. */ + scaletest(x, y, nx, y); + scaletest(x, y, x, ny); + scaletest(x, y, nx, ny); +} + +int main(int argc, char **argv) +{ + + do_test(300, 300, 600, 600); + do_test(3200, 2133, 640, 427); + + return gdNumFailures(); +} diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdnewfilectx/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdnewfilectx/CMakeLists.txt index 75de828d94a..9fd4caf3797 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdnewfilectx/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdnewfilectx/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdnewfilectx/gdnewfilectx_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdnewfilectx/gdnewfilectx_null.c index 0da8295ab5c..0da8295ab5c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdnewfilectx/gdnewfilectx_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdnewfilectx/gdnewfilectx_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/CMakeLists.txt index 5f89bc91b75..5f89bc91b75 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/CMakeLists.txt diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/gdtest.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/gdtest.c index d84b7896d7a..83aba01d77f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/gdtest.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/gdtest.c @@ -4,11 +4,17 @@ #include <stdio.h> #include <string.h> #include <math.h> +#include <limits.h> #include "gd.h" #include "gdtest.h" #include "test_config.h" +/* max is already defined in windows/msvc */ +#ifndef max + static inline int max(int a, int b) {return a > b ? a : b;} +#endif + void gdSilence(int priority, const char *format, va_list args) { (void)priority; @@ -44,6 +50,7 @@ void gdTestImageDiff(gdImagePtr buf_a, gdImagePtr buf_b, { int x, y; int c1, c2; +# define UP_DIFF(var) result_ret->max_diff = max((var), result_ret->max_diff) for (y = 0; y < gdImageSY(buf_a); y++) { for (x = 0; x < gdImageSX(buf_a); x++) { @@ -81,6 +88,7 @@ void gdTestImageDiff(gdImagePtr buf_a, gdImagePtr buf_b, g1 = gdTrueColorGetGreen(c1); g2 = gdTrueColorGetGreen(c2); diff_g = abs (g1 - g2); + diff_g *= 4; /* emphasize */ if (diff_g) { diff_g += gdGreenMax/2; /* make sure it's visible */ @@ -107,8 +115,39 @@ void gdTestImageDiff(gdImagePtr buf_a, gdImagePtr buf_b, } } } +# undef UP_DIFF +} + + +/* Return the largest difference between two corresponding pixels and + * channels. */ +unsigned int gdMaxPixelDiff(gdImagePtr a, gdImagePtr b) +{ + int diff = 0; + int x, y; + + if (a == NULL || b == NULL || a->sx != b->sx || a->sy != b->sy) + return UINT_MAX; + + for (x = 0; x < a->sx; x++) { + for (y = 0; y < a->sy; y++) { + int c1, c2; + + c1 = gdImageGetTrueColorPixel(a, x, y); + c2 = gdImageGetTrueColorPixel(b, x, y); + if (c1 == c2) continue; + + diff = max(diff, abs(gdTrueColorGetAlpha(c1) - gdTrueColorGetAlpha(c2))); + diff = max(diff, abs(gdTrueColorGetRed(c1) - gdTrueColorGetRed(c2))); + diff = max(diff, abs(gdTrueColorGetGreen(c1) - gdTrueColorGetGreen(c2))); + diff = max(diff, abs(gdTrueColorGetBlue(c1) - gdTrueColorGetBlue(c2))); + }/* for */ + }/* for */ + + return diff; } + int gdTestImageCompareToImage(const char* file, unsigned int line, const char* message, gdImagePtr expected, gdImagePtr actual) { @@ -205,10 +244,38 @@ int gdTestImageCompareToFile(const char* file, unsigned int line, const char* me return res; } + +static int failureCount = 0; + +int gdNumFailures() { + return failureCount; +} + int _gdTestAssert(const char* file, unsigned int line, const char* message, int condition) { if (condition) return 1; _gdTestErrorMsg(file, line, "%s", message); + + ++failureCount; + + return 0; +} + +int _gdTestAssertMsg(const char* file, unsigned int line, int condition, const char* message, ...) +{ + va_list args; + char output_buf[GDTEST_STRING_MAX]; + + if (condition) return 1; + + va_start(args, message); + vsnprintf(output_buf, sizeof(output_buf), message, args); + va_end(args); + fprintf(stderr, "%s:%u: %s", file, line, output_buf); + fflush(stderr); + + ++failureCount; + return 0; } @@ -222,6 +289,9 @@ int _gdTestErrorMsg(const char* file, unsigned int line, const char* format, ... va_end(args); fprintf(stderr, "%s:%u: %s", file, line, output_buf); fflush(stderr); + + ++failureCount; + return 0; } /* }}} */ diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/gdtest.h b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/gdtest.h index 81bded5a0f6..8f332b39bbb 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/gdtest.h +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/gdtest.h @@ -24,8 +24,13 @@ int gdTestImageCompareToImage(const char* file, unsigned int line, const char* m int gdTestImageCompareToFile(const char* file, unsigned int line, const char* message, const char *expected_file, gdImagePtr actual); +unsigned int gdMaxPixelDiff(gdImagePtr a, gdImagePtr b); + int _gdTestAssert(const char* file, unsigned int line, const char* message, int condition); +int _gdTestAssertMsg(const char* file, unsigned int line, int condition, const char* message, ...); + + int _gdTestErrorMsg(const char* file, unsigned int line, const char* string, ...); /* public assert functions */ @@ -37,8 +42,13 @@ int _gdTestErrorMsg(const char* file, unsigned int line, const char* string, ... #define gdTestAssert(cond) _gdTestAssert(__FILE__, __LINE__, "assert failed in <%s:%i>\n", (cond)) +#define gdTestAssertMsg(cond, message, ...) _gdTestAssertMsg(__FILE__, __LINE__, (cond),(message),__VA_ARGS__) + + #define gdTestErrorMsg(...) _gdTestErrorMsg(__FILE__, __LINE__, __VA_ARGS__) void gdSilence(int priority, const char *format, va_list args); +int gdNumFailures(void); + #endif /* GD_TEST_H */ diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/test_config.h.cmake b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/test_config.h.cmake index 59d2f0cf7ed..59d2f0cf7ed 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdtest/test_config.h.cmake +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdtest/test_config.h.cmake diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/CMakeLists.txt index 90e15da34ea..cc47150c832 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/CMakeLists.txt @@ -5,6 +5,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/bug00032.c b/Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/bug00032.c index 0e711533f10..0e711533f10 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/bug00032.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/bug00032.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/bug00032_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/bug00032_exp.png Binary files differindex 2bee38eebad..2bee38eebad 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gdtiled/bug00032_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gdtiled/bug00032_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/gif/CMakeLists.txt index a155559cc12..a64f785d8e8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/CMakeLists.txt @@ -14,6 +14,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005.c index 1911e6a17a9..1911e6a17a9 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_0.gif b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_0.gif Binary files differindex 753156014d4..753156014d4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_0.gif +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_0.gif diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_1.gif b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_1.gif index 76ce1e398ec..76ce1e398ec 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_1.gif +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_1.gif diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2.c index de7d3d17f97..de7d3d17f97 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2.gif b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2.gif Binary files differindex 3f9e6c5e400..3f9e6c5e400 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2.gif +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2.gif diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2_exp.png Binary files differindex 708b8adf00d..708b8adf00d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_2_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_2_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_3.gif b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_3.gif Binary files differindex 178d27e3574..178d27e3574 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00005_3.gif +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00005_3.gif diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00006.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00006.c index 57d7ad01611..57d7ad01611 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00006.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00006.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00060.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00060.c index 721d3bc401d..721d3bc401d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00060.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00060.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00060.gif b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00060.gif Binary files differindex c8821748057..c8821748057 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00060.gif +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00060.gif diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066.c index be24066ca2e..be24066ca2e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066.gif b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066.gif Binary files differindex cdf5f29a82e..cdf5f29a82e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066.gif +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066.gif diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066_exp.png Binary files differindex 9f535adc168..9f535adc168 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00066_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00066_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00181.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00181.c index 27d6481175e..27d6481175e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00181.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00181.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00227.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00227.c index 861006e7447..861006e7447 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/bug00227.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/bug00227.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/gif_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/gif_im2im.c index a5b0adbdb85..a5b0adbdb85 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/gif_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/gif_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/gif/gif_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/gif/gif_null.c index 463d31ebaf6..463d31ebaf6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/gif/gif_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/gif/gif_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/CMakeLists.txt index d68028b2d94..9151f609173 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/CMakeLists.txt @@ -10,6 +10,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/conv_test.jpeg b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/conv_test.jpeg Binary files differindex 7283d1a4754..7283d1a4754 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/conv_test.jpeg +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/conv_test.jpeg diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/conv_test_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/conv_test_exp.png Binary files differindex 1210f479aa6..1210f479aa6 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/conv_test_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/conv_test_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/empty.jpeg b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/empty.jpeg index e69de29bb2d..e69de29bb2d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/empty.jpeg +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/empty.jpeg diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_empty_file.c b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_empty_file.c index 844dbf43d3e..844dbf43d3e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_empty_file.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_empty_file.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_im2im.c index 89a72be7ffd..89a72be7ffd 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_null.c index 3b2caa68744..3b2caa68744 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_read.c b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_read.c index 64130ce125a..64130ce125a 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_read.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_read.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_resolution.c b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_resolution.c index 386f5f3fee4..386f5f3fee4 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/jpeg/jpeg_resolution.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/jpeg/jpeg_resolution.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/png/CMakeLists.txt index dd0b4c4145e..128b51df0ce 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/CMakeLists.txt @@ -13,6 +13,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00011.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00011.c index 865c87ea5cd..865c87ea5cd 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00011.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00011.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00033.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00033.c index f7e90f0824c..f7e90f0824c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00033.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00033.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00033.png b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00033.png Binary files differindex 73a7d6a3e77..73a7d6a3e77 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00033.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00033.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00086.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00086.c index ef9d43b2b56..ef9d43b2b56 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00086.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00086.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088.c index 78495aa4410..78495aa4410 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_1.png b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_1.png Binary files differindex 3f9a5c7d408..3f9a5c7d408 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_1.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_1.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_1_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_1_exp.png Binary files differindex 25ee05a93c9..25ee05a93c9 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_1_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_1_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_2.png b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_2.png Binary files differindex fa58ffe61c9..fa58ffe61c9 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_2.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_2.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_2_exp.png b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_2_exp.png Binary files differindex a21c8408679..a21c8408679 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00088_2_exp.png +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00088_2_exp.png diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00193.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00193.c index 67acf545f67..67acf545f67 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/bug00193.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/bug00193.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/emptyfile b/Build/source/libs/gd/libgd-2.1.1/tests/png/emptyfile index e69de29bb2d..e69de29bb2d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/emptyfile +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/emptyfile diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/png_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/png_im2im.c index bac5e13aeb7..bac5e13aeb7 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/png_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/png_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/png_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/png_null.c index d3b5e6a963b..d3b5e6a963b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/png_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/png_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/png/png_resolution.c b/Build/source/libs/gd/libgd-2.1.1/tests/png/png_resolution.c index aed7545ba51..aed7545ba51 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/png/png_resolution.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/png/png_resolution.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/test_config.h.in b/Build/source/libs/gd/libgd-2.1.1/tests/test_config.h.in index bfa8127889f..bfa8127889f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/test_config.h.in +++ b/Build/source/libs/gd/libgd-2.1.1/tests/test_config.h.in diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/tga/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/tga/CMakeLists.txt index a88872a2c6d..48f9412fb09 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/tga/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/tga/CMakeLists.txt @@ -6,6 +6,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/tga/tga_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/tga/tga_null.c index f61078c32f5..f61078c32f5 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/tga/tga_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/tga/tga_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/tiff/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/tiff/CMakeLists.txt index aefdaf7e032..da49800542e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/tiff/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/tiff/CMakeLists.txt @@ -7,6 +7,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/tiff/tiff_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/tiff/tiff_im2im.c index 4b6136d4b92..4b6136d4b92 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/tiff/tiff_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/tiff/tiff_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/tiff/tiff_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/tiff/tiff_null.c index ccaade7498f..ccaade7498f 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/tiff/tiff_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/tiff/tiff_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/wbmp/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/wbmp/CMakeLists.txt index aac4f69ad44..531933a8558 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/wbmp/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/wbmp/CMakeLists.txt @@ -7,6 +7,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/wbmp/wbmp_im2im.c b/Build/source/libs/gd/libgd-2.1.1/tests/wbmp/wbmp_im2im.c index 826c7fa953c..826c7fa953c 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/wbmp/wbmp_im2im.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/wbmp/wbmp_im2im.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/wbmp/wbmp_null.c b/Build/source/libs/gd/libgd-2.1.1/tests/wbmp/wbmp_null.c index d70f38d01bf..d70f38d01bf 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/wbmp/wbmp_null.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/wbmp/wbmp_null.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/CMakeLists.txt b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/CMakeLists.txt index f90d3c6caec..e0a789c807b 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/CMakeLists.txt +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/CMakeLists.txt @@ -8,6 +8,5 @@ SET(TESTS_FILES FOREACH(test_name ${TESTS_FILES}) add_executable(${test_name} "${test_name}.c") target_link_libraries (${test_name} gdTest) - get_target_property(test_path ${test_name} LOCATION) - ADD_TEST(${test_name} ${test_path}) + add_test(NAME ${test_name} COMMAND ${test_name}) ENDFOREACH(test_name) diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00166.c b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00166.c index 2ffd6af25a2..2ffd6af25a2 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00166.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00166.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00166.xpm b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00166.xpm index 90c6cd387e7..90c6cd387e7 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00166.xpm +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00166.xpm diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185.c b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185.c index 2dda809cc96..2dda809cc96 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185.xpm b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185.xpm index bb7cd7975a8..bb7cd7975a8 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185.xpm +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185.xpm diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185_damaged.xpm b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185_damaged.xpm index b0c7d61be5e..b0c7d61be5e 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/bug00185_damaged.xpm +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/bug00185_damaged.xpm diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/color_name.c b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/color_name.c index 22481785a83..22481785a83 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/color_name.c +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/color_name.c diff --git a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/color_name.xpm b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/color_name.xpm index 4733789245d..4733789245d 100644 --- a/Build/source/libs/gd/libgd-2.1.0/tests/xpm/color_name.xpm +++ b/Build/source/libs/gd/libgd-2.1.1/tests/xpm/color_name.xpm diff --git a/Build/source/libs/gd/libgd-2.1.1/thumbs.bat b/Build/source/libs/gd/libgd-2.1.1/thumbs.bat new file mode 100755 index 00000000000..6e94aa42a50 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/thumbs.bat @@ -0,0 +1,37 @@ +@echo off
+rem thumbs wrapper for windows; see main file for details
+
+
+rem find bash from git
+rem assumes git is in [gitdir]\cmd
+rem and msys in [gitdir]\bin
+
+for %%i in (git.exe) do set gitexe=%%~$PATH:i
+pushd "%gitexe%\..\..\bin"
+set bashdir=%cd%
+popd
+set path=%bashdir%;%path%
+
+
+rem copy all known env vars to bash
+
+setlocal enableDelayedExpansion
+set exports=
+
+for %%i in (tbs_conf tbs_arch tbs_tools tbs_static_runtime) do (
+ if not [!%%i!]==[] (
+ set exports=!exports!export %%i=!%%i!;
+ )
+)
+
+rem copy dep settings
+
+for %%i in (zlib libjpeg_turbo libpng libtiff freetype libiconv) do (
+ for %%j in (repo incdir libdir built) do (
+ if not [!tbsd_%%i_%%j!]==[] (
+ set exports=!exports!export tbsd_%%i_%%j=!tbsd_%%i_%%j!;
+ )
+ )
+)
+
+bash -c "%exports%./thumbs.sh %*"
diff --git a/Build/source/libs/gd/libgd-2.1.1/thumbs.sh b/Build/source/libs/gd/libgd-2.1.1/thumbs.sh new file mode 100755 index 00000000000..f898ef50f74 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/thumbs.sh @@ -0,0 +1,320 @@ +#!/bin/bash + +# THe Ultimate Make Bash Script +# Used to wrap build scripts for easy dep +# handling and multiplatform support + + +# Basic usage on *nix: +# export tbs_arch=x86 +# ./thumbs.sh make + + +# On Win (msvc 2013): +# C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall x86_amd64 +# SET tbs_tools=msvc12 +# thumbs make + +# On Win (mingw32): +# SET path=C:\mingw32\bin;%path% +# SET tbs_tools=mingw +# SET tbs_arch=x86 +# thumbs make + + +# Global settings are stored in env vars +# Should be inherited + +[ $tbs_conf ] || export tbs_conf=Release +[ $tbs_arch ] || export tbs_arch=x64 +[ $tbs_tools ] || export tbs_tools=gnu +[ $tbs_static_runtime ] || export tbs_static_runtime=0 + +[ $tbs_gd_png ] || export tbs_gd_png=1 +[ $tbs_gd_jpeg ] || export tbs_gd_jpeg=1 +[ $tbs_gd_freetype ] || export tbs_gd_freetype=1 +[ $tbs_gd_tiff ] || export tbs_gd_tiff=1 + + +# tbsd_* contains dep related settings +# tbsd_[name]_* contains settings specific to the dep +# name should match the repo name + +# deps contains a map of what should be built/used +# keep the keys in sync ... no assoc arrays on msys :/ +# targ contains a target for each dep (default=empty str) +# post is executed after each thumbs dep build +# ^ used for copying/renaming any libs you need - uses eval + +zname=zlib.lib +jname=jpeg.lib +pname=png.lib +tname=tiff.lib +fname=freetype.lib + +if [ $tbs_tools = gnu -o $tbs_tools = mingw ] +then + zname=libz.a + jname=libjpeg.a + pname=libpng.a + tname=libtiff.a + fname=libfreetype.a +fi + +deps=() +targ=() +post=() + +[ $tbsd_zlib_repo ] || export tbsd_zlib_repo="https://github.com/imazen/zlib" +[ $tbsd_libpng_repo ] || export tbsd_libpng_repo="https://github.com/imazen/libpng" +[ $tbsd_libjpeg_turbo_repo ] || export tbsd_libjpeg_turbo_repo="https://github.com/imazen/libjpeg-turbo libjpeg_turbo" +[ $tbsd_libtiff_repo ] || export tbsd_libtiff_repo="https://github.com/imazen/libtiff" +[ $tbsd_freetype_repo ] || export tbsd_freetype_repo="https://github.com/imazen/freetype" + +if [[ "$OSTYPE" == "darwin"* ]]; then cp="rsync" +else cp="cp" +fi + +deps+=(zlib); targ+=(zlibstatic) +post+=("$cp -u \$(./thumbs.sh list_slib) ../../deps/$zname") + +if [ $tbs_gd_png -gt 0 ]; then + deps+=(libpng); targ+=(png16_static) + post+=("$cp -u \$(./scripts/thumbs.sh list_slib) ../../deps/$pname") +fi + +if [ $tbs_gd_jpeg -gt 0 ]; then + deps+=(libjpeg_turbo); targ+=(jpeg_static) + post+=("for lib in \$(./thumbs.sh list_slib); do [ -f \$lib ] && $cp -u \$lib ../../deps/$jname; done") +fi + +if [ $tbs_gd_tiff -gt 0 ]; then + ttarg="libtiff/tiff_static" + [ $tbs_tools = gnu -o $tbs_tools = mingw ] && ttarg=tiff_static + deps+=(libtiff); targ+=($ttarg) + post+=("$cp -u \$(./thumbs.sh list_slib) ../../deps/$tname") +fi + +if [ $tbs_gd_freetype -gt 0 ]; then + deps+=(freetype); targ+=("freetype_static") + post+=("$cp -u \$(./thumbs.sh list_slib) ../../deps/$fname") +fi + + + +# ----------- +# dep processor + +process_deps() +{ + mkdir build_deps + mkdir deps + cd build_deps + + for key in "${!deps[@]}" + do + dep=${deps[$key]} + i_dep_repo="tbsd_${dep}_repo" + i_dep_incdir="tbsd_${dep}_incdir" + i_dep_libdir="tbsd_${dep}_libdir" + i_dep_built="tbsd_${dep}_built" + + [ ${!i_dep_built} ] || export "${i_dep_built}=0" + + if [ ${!i_dep_built} -eq 0 ] + then + git clone ${!i_dep_repo} --depth 1 + cd $dep || exit 1 + + thumbs="./thumbs.sh" + [ ! -f $thumbs ] && thumbs=$(find . -name thumbs.sh -maxdepth 2) + + $thumbs make ${targ[$key]} || exit 1 + + # copy any includes and do poststep + $cp -u -r $($thumbs list_inc) ../../deps + eval ${post[$key]} + + # look in both local and parent dep dirs + export "${i_dep_incdir}=../../deps;deps" + export "${i_dep_libdir}=../../deps;deps" + export "${i_dep_built}=1" + + cd .. + fi + done + + export "${i_dep_incdir}=../../deps/freetype;deps/freetype" + + cd .. +} + +# ----------- +# constructs dep dirs for cmake + +postproc_deps() +{ + cm_inc= + cm_lib= + + for dep in "${deps[@]}" + do + i_dep_incdir="tbsd_${dep}_incdir" + i_dep_libdir="tbsd_${dep}_libdir" + + cm_inc="${!i_dep_incdir};$cm_inc" + cm_lib="${!i_dep_libdir};$cm_lib" + done + + cm_args+=(-DCMAKE_LIBRARY_PATH=$cm_lib) + cm_args+=(-DCMAKE_INCLUDE_PATH=$cm_inc) +} + +# ----------- + +if [ $# -lt 1 ] +then + echo "" + echo " Usage : ./thumbs [command]" + echo "" + echo " Commands:" + echo " make - builds everything" + echo " check - runs tests" + echo " clean - removes build files" + echo " list - echo paths to any interesting files" + echo " space separated; relative" + echo " list_bin - echo binary paths" + echo " list_inc - echo lib include files" + echo " list_slib - echo static lib path" + echo " list_dlib - echo dynamic lib path" + echo "" + exit +fi + +# ----------- + +upper() +{ + echo $1 | tr [:lower:] [:upper:] +} + +# Local settings + +l_inc="./src/gd.h ./src/gd_io.h ./src/gdfx.h" +l_slib= +l_dlib= +l_bin= +list= + +make= +c_flags= +cm_tools= +cm_args=(-DCMAKE_BUILD_TYPE=$tbs_conf) +cm_args+=(-DBUILD_TEST=1) +cm_args+=(-DENABLE_PNG=$tbs_gd_png) +cm_args+=(-DENABLE_JPEG=$tbs_gd_jpeg) +cm_args+=(-DENABLE_FREETYPE=$tbs_gd_freetype) +cm_args+=(-DENABLE_TIFF=$tbs_gd_tiff) + +target= +[ $2 ] && target=$2 + +# ----------- + +case "$tbs_tools" in +msvc12) + cm_tools="Visual Studio 12" + [ "$target" = "" ] && mstrg="GD.sln" || mstrg="$target.vcxproj" + make="msbuild.exe $mstrg //p:Configuration=$tbs_conf //v:m" + + l_slib="./build/Bin/$tbs_conf/libgd_static.lib" + l_dlib="./build/Bin/$tbs_conf/libgd.lib" + l_bin="./build/Bin/$tbs_conf/libgd.dll" + list="$l_bin $l_slib $l_dlib $l_inc" ;; +gnu) + cm_tools="Unix Makefiles" + c_flags+=" -fPIC" + make="make $target" + l_slib="./build/Bin/libgd.a" + l_dlib="./build/Bin/libgd.so" + l_bin="$l_dlib" + list="$l_slib $l_dlib $l_inc" ;; +mingw) + cm_tools="MinGW Makefiles" + make="mingw32-make $target" + c_flags+=" -fkeep-inline-functions" + + # allow sh in path; some old cmake/mingw bug? + cm_args+=(-DCMAKE_SH=) + + l_slib="./build/Bin/liblibgd.a" + l_dlib="./build/Bin/liblibgd.dll.a" + l_bin="./build/Bin/liblibgd.dll" + list="$l_bin $l_slib $l_dlib $l_inc" ;; + +*) echo "Tool config not found for $tbs_tools" + exit 1 ;; +esac + +# ----------- + +case "$tbs_arch" in +x64) + [ $tbs_tools = msvc12 ] && cm_tools="$cm_tools Win64" + [ $tbs_tools = gnu -o $tbs_tools = mingw ] && c_flags+=" -m64" ;; +x86) + [ $tbs_tools = gnu -o $tbs_tools = mingw ] && c_flags+=" -m32" ;; + +*) echo "Arch config not found for $tbs_arch" + exit 1 ;; +esac + +# ----------- + +if [ $tbs_static_runtime -gt 0 ] +then + [ $tbs_tools = msvc12 ] && c_flags+=" /MT" + [ $tbs_tools = gnu ] && cm_args+=(-DCMAKE_SHARED_LINKER_FLAGS="-static-libgcc -static-libstdc++") + [ $tbs_tools = mingw ] && cm_args+=(-DCMAKE_SHARED_LINKER_FLAGS="-static") +fi + +# ----------- + +case "$1" in +make) + process_deps + postproc_deps + + mkdir build + cd build + + cm_args+=(-DCMAKE_C_FLAGS_$(upper $tbs_conf)="$c_flags") + cm_args+=(-DCMAKE_CXX_FLAGS_$(upper $tbs_conf)="$c_flags") + + cmake -G "$cm_tools" "${cm_args[@]}" .. || exit 1 + $make || exit 1 + + cd .. + ;; + +check) + cd build + ctest -C $tbs_conf . || exit 1 + cd .. + ;; + +clean) + rm -rf deps + rm -rf build_deps + rm -rf build + ;; + +list) echo $list;; +list_bin) echo $l_bin;; +list_inc) echo $l_inc;; +list_slib) echo $l_slib;; +list_dlib) echo $l_dlib;; + +*) echo "Unknown command $1" + exit 1;; +esac diff --git a/Build/source/libs/gd/libgd-2.1.1/windows/Makefile.vc b/Build/source/libs/gd/libgd-2.1.1/windows/Makefile.vc new file mode 100644 index 00000000000..f17c50d1bd1 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/windows/Makefile.vc @@ -0,0 +1,183 @@ +# To build locally get a copy of the dependancies (https://github.com/imazen/gd-win-dependencies) +# Then run 'nmake /f windows\Makefile.vc' in MS dev console +# To build tests as well 'nmake /f windows\Makefile.vc all' +# To build tests and execute them 'nmake /f windows\Makefile.vc check' + +CC=cl +LD=link +LB=lib + + +!IFNDEF PLATFORM +PLATFORM=x86 +!ENDIF +# detect x64 cross-compiler env +!IF "$(PREFERREDTOOLARCHITECTURE)" == "x64" +PLATFORM=x64 +!ENDIF +PLATFORM=$(PLATFORM:X=x) + + +BUILD_DIR=build_msvc12_$(PLATFORM) +GD_DLL=libgd.dll +GD_LIB=libgd_a.lib + +SDR=$(BUILD_DIR)\obj^\ +TDR=$(BUILD_DIR)\tests^\ +TARGETDLL=$(BUILD_DIR)\$(GD_DLL) +TARGETLIB=$(BUILD_DIR)\$(GD_LIB) + +OBJECTS=$(SDR)gd.obj $(SDR)gd_color.obj $(SDR)gd_color_map.obj $(SDR)gd_transform.obj $(SDR)gdfx.obj $(SDR)gd_security.obj $(SDR)gd_gd.obj $(SDR)gd_gd2.obj $(SDR)gd_io.obj $(SDR)gd_io_dp.obj $(SDR)gd_gif_in.obj $(SDR)gd_gif_out.obj $(SDR)gd_io_file.obj $(SDR)gd_io_ss.obj $(SDR)gd_jpeg.obj $(SDR)gd_png.obj $(SDR)gd_ss.obj $(SDR)gd_topal.obj $(SDR)gd_wbmp.obj $(SDR)gdcache.obj $(SDR)gdfontg.obj $(SDR)gdfontl.obj $(SDR)gdfontmb.obj $(SDR)gdfonts.obj $(SDR)gdfontt.obj $(SDR)gdft.obj $(SDR)gdhelpers.obj $(SDR)gdkanji.obj $(SDR)gdtables.obj $(SDR)gdxpm.obj $(SDR)wbmp.obj $(SDR)gd_filter.obj $(SDR)gd_nnquant.obj $(SDR)gd_rotate.obj $(SDR)gd_matrix.obj $(SDR)gd_interpolation.obj $(SDR)gd_crop.obj $(SDR)webpimg.obj $(SDR)gd_webp.obj $(SDR)gd_tiff.obj $(SDR)gd_tga.obj $(SDR)gd_bmp.obj $(SDR)gd_xbm.obj $(SDR)gd_color_match.obj $(SDR)gd_version.obj $(SDR)gd_filename.obj +TESTS=bmp\bmp_im2im bmp\bmp_null freetype\bug00132 gd\gd_im2im gd\gd_null gd\gd_num_colors gd\gd_versiontest gd2\gd2_empty_file gd2\gd2_im2im gd2\gd2_null gd2\gd2_read gdimagearc\bug00079 gdimagecolorclosest\gdimagecolorclosest gdimagecolordeallocate\gdimagecolordeallocate gdimagecolorexact\gdimagecolorexact gdimagecolorreplace\gdimagecolorreplace gdimagecolorresolve\gdimagecolorresolve gdimagecolortransparent\gdimagecolortransparent gdimagecopy\bug00007 gdimagecopy\bug00081 gdimagecopyrotated\bug00020 gdimagefile\gdnametest gdimagefill\bug00002_1 gdimagefill\bug00002_2 gdimagefill\bug00002_3 gdimagefill\bug00002_4 gdimagefilledellipse\bug00010 gdimagefilledellipse\bug00191 gdimagefilledpolygon\bug00100 gdimagefilledpolygon\gdimagefilledpolygon0 gdimagefilledpolygon\gdimagefilledpolygon1 gdimagefilledpolygon\gdimagefilledpolygon2 gdimagefilledpolygon\gdimagefilledpolygon3 gdimagefilledrectangle\bug00004 gdimagefilledrectangle\bug00078 gdimagefilledrectangle\bug00106_gdimagefilledrectangle gdimagefilltoborder\bug00037 gdimagefilter\gdCopyBlurred gdimageline\bug00072 gdimageline\bug00077 gdimageline\bug00111 gdimageline\gdImageAALine_thickness gdimageline\gdimageline_aa gdimageline\gdimageline_aa_outofrange gdimageline\gdimageline_bug5 gdimageopenpolygon\gdimageopenpolygon0 gdimageopenpolygon\gdimageopenpolygon1 gdimageopenpolygon\gdimageopenpolygon2 gdimageopenpolygon\gdimageopenpolygon3 gdimagepixelate\gdimagepixelate gdimagepolygon\gdimagepolygon0 gdimagepolygon\gdimagepolygon1 gdimagepolygon\gdimagepolygon2 gdimagepolygon\gdimagepolygon3 gdimagerectangle\bug00003 gdimagerectangle\bug00106_gdimagerectangle gdimagerotate\bug00067 gdimagerotate\php_bug_64898 gdimagescatterex\bug00208_1 gdimagescatterex\bug00208_2 gdimagesetpixel\bug00186 gdimagesetpixel\gdeffectmultiply gdimagesetpixel\gdeffectoverlay gdimagestringft\gdimagestringft_bbox gdimagestringftex\gdimagestringftex_returnfontpathname gdinterpolatedscale\gdModesAndPalettes gdinterpolatedscale\gdTrivialResize gdnewfilectx\gdnewfilectx_null gdtiled\bug00032 gif\bug00005 gif\bug00005_2 gif\bug00006 gif\bug00060 gif\bug00066 gif\bug00181 gif\bug00227 gif\gif_im2im gif\gif_null jpeg\jpeg_empty_file jpeg\jpeg_im2im jpeg\jpeg_null jpeg\jpeg_read jpeg\jpeg_resolution png\bug00011 png\bug00033 png\bug00086 png\bug00088 png\bug00193 png\png_im2im png\png_null png\png_resolution tga\tga_null +#tiff\tiff_im2im tiff\tiff_null wbmp\wbmp_im2im wbmp\wbmp_null xpm\bug00166 xpm\bug00185 xpm\color_name + +LIBS=kernel32.lib ole32.lib user32.lib advapi32.lib shell32.lib ws2_32.lib Dnsapi.lib Gdi32.Lib +LIBS_GD=turbojpeg-static.lib freetype_a.lib libpng_a.lib libiconv_a.lib zlib_a.lib + +INCLUDES=/Isrc /Igd-win-dependencies\$(PLATFORM)\include -Igd-win-dependencies\$(PLATFORM)\include\libjpeg-turbo -Igd-win-dependencies\$(PLATFORM)\include\libpng15 -Igd-win-dependencies\$(PLATFORM)\include\freetype /Itests /Itests\gdtest + +LDFLAGS=/nologo /nodefaultlib:libcmt /libpath:gd-win-dependencies\$(PLATFORM)\lib /MACHINE:$(PLATFORM) + +CFLAGS=/nologo /O2 /Qvec-report:1 /MD /TC\ + /DWIN32=1\ + /D_WIN32=1\ + /DMSWIN32=1\ + /DBGDWIN32=1\ + /DHAVE_FT2BUILD_H=1\ + /DHAVE_GD_H=1\ + /DHAVE_PNG_H=1\ + /DHAVE_ICONV_H=1\ + /DHAVE_GD_BUNDLED=1\ + /DHAVE_LIBFREETYPE=1\ + /DHAVE_LIBJPEG=1\ + /DHAVE_LIBPNG=1\ + /DHAVE_LIBZ=1\ + $(INCLUDES) + +# /DHAVE_LIBXPM + +# These flags are not present in this fork of libgd (they may be used in php's): +# /DHAVE_GD_WBMP +# /DHAVE_GD_GIF_READ=1\ +# /DHAVE_GD_GIF_CREATE=1\ +# /DHAVE_GD_GD2=1\ +# /DHAVE_GDIMAGECOLORRESOLVE=1\ +# /DHAVE_GD_IMAGESETBRUSH=1\ +# /DHAVE_GD_IMAGESETTILE=1\ +# /DHAVE_GD_FONTCACHESHUTDOWN=1\ +# /DHAVE_GD_FONTMUTEX=1\ +# /DHAVE_GD_STRINGFTEX=1\ +# /DHAVE_GD_STRINGTTF=1\ +# /DHAVE_GD_FREETYPE=1\ +# /DHAVE_LIBGD13=1\ +# /DHAVE_LIBGD15=1\ +# /DHAVE_LIBGD20=1\ +# /DHAVE_LIBGD204=1\ +# /DHAVE_COLORCLOSESTHWB\ +# /DUSE_GD_IMGSTRTTF\ +# /DUSE_GD_IOCTX\ +# /DHAVE_GD_JPG\ +# /DHAVE_GD_PNG\ +# /DHAVE_GD_DYNAMIC_CTX_EX=1\ +# /DHAVE_XPM\ +# /DHAVE_GD_XBM\ +# /DHAVE_GD_XPM\ +# /DHAVE_XPM_H=1\ + +# These flags may be set wrong; not sure of precise purpose +# HAVE_GD_BUNDLED +# NDEBUG + + + + + +TEST_CFLAGS=$(CFLAGS) /FItest_config.h +TEST_LDFLAGS=$(LDFLAGS) $(SDR)gdtest.obj $(BUILD_DIR)\libgd.lib +TEST_CONFIG=tests\test_config.h +TEST_LIST=$(TDR)testlist.txt +TEST_MK=$(TDR)Maketests.vc + + + +# generate test makefile from TESTS macro + +!IF [if not exist $(BUILD_DIR) mkdir $(BUILD_DIR)] +!ENDIF +!IF [if not exist $(TDR) mkdir $(TDR)] +!ENDIF +!IF [@copy NUL $(TEST_MK) > nul] +!ENDIF +!IF [@for %F in ($(TESTS)) do @echo TEST_EXES=$(TDR)%~nF.exe ^$(TEST_EXES) >> $(TEST_MK)] +!ENDIF +!IF [@for %F in ($(TESTS)) do @echo $(SDR)%~nF.obj: tests\%F.c; @^$(CC) ^$(TEST_CFLAGS) /c ^$** /Fo:^$@ >> $(TEST_MK)] +!ENDIF +!IF [@for %F in ($(TESTS)) do @echo $(TDR)%~nF.exe: $(SDR)%~nF.obj; @$(LD) $(TEST_LDFLAGS) ^$** /out:^$@ >> $(TEST_MK)] +!ENDIF +TEST_OBJS=$(TEST_EXES:tests=obj) +TEST_OBJS=$(TEST_OBJS:exe=obj) + + + + + + +# pseudotargets + +build_libs: make_dirs $(TARGETDLL) $(TARGETLIB) +all: build_libs build_tests +check: all run_tests + +clean: + @if exist $(SDR) rd $(SDR) /s /q + @if exist $(TDR) rd $(TDR) /s /q + @if exist $(BUILD_DIR)\*.exe del $(BUILD_DIR)\*.exe /q + @if exist tests\test_config.h del tests\test_config.h /q + + + + +# helpers + +make_dirs: + @if not exist $(BUILD_DIR) mkdir $(BUILD_DIR) + @if not exist $(SDR) mkdir $(SDR) + +run_tests: + @windows\run_tests + + + + +# libgd + +$(TARGETDLL): $(OBJECTS) + @$(LD) /DLL /OUT:$@ $(OBJECTS) $(LIBS_GD) $(LIBS) $(LDFLAGS) + +$(TARGETLIB): $(OBJECTS) + @$(LB) /OUT:$@ $(OBJECTS) $(LDFLAGS) + +{src\}.c{$(SDR)}.obj:: + @$(CC) $(CFLAGS) /c $< /Fo$(SDR) + + + + +# tests + +!INCLUDE $(TEST_MK) + +build_tests: $(TEST_LIST) $(SDR)gdtest.obj $(TEST_EXES) + +$(SDR)gdtest.obj: $(TARGETDLL) $(TEST_CONFIG) tests\gdtest\gdtest.c + @$(CC) $(CFLAGS) /c tests\gdtest\gdtest.c /Fo$(SDR)gdtest.obj + +$(TEST_CONFIG): + @echo #define GDTEST_TOP_DIR "$(MAKEDIR:\=\\)\\tests" > tests\test_config.h + @echo #define snprintf _snprintf >> tests\test_config.h + +$(TEST_LIST): $(TARGETDLL) + @if not exist $(TDR) mkdir $(TDR) + @copy $(TARGETDLL) $(TDR)$(GD_DLL) + @copy NUL $(TDR)testlist.txt + @for %%F in ($(TESTS)) do @echo %%F >> $(TDR)testlist.txt
\ No newline at end of file diff --git a/Build/source/libs/gd/libgd-2.1.0/windows/libgd.rc b/Build/source/libs/gd/libgd-2.1.1/windows/libgd.rc index dfe6ff0aa78..dfe6ff0aa78 100644 --- a/Build/source/libs/gd/libgd-2.1.0/windows/libgd.rc +++ b/Build/source/libs/gd/libgd-2.1.1/windows/libgd.rc diff --git a/Build/source/libs/gd/libgd-2.1.1/windows/msys/Makefile b/Build/source/libs/gd/libgd-2.1.1/windows/msys/Makefile new file mode 100644 index 00000000000..7e7f155885e --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/windows/msys/Makefile @@ -0,0 +1,143 @@ + +# Simple makefile for building and testing libgd under MSYS/MinGW on +# Windows + + +# The version +LIBVER=3.0.1 + +# Misc. config flags. +CDEFS=-DHAVE_ERRNO_H -DHAVE_ICONV -DHAVE_ICONV_H \ +-DHAVE_ICONV_T_DEF -DHAVE_INTTYPES_H -DHAVE_LIMITS_H -DHAVE_STDDEF_H \ +-DHAVE_STDINT_H -DHAVE_STDLIB_H -DHAVE_VISIBILITY -DICONV_CONST + +# GnuWin32 libs should all be installed in one place. +GNUDIR=/c/tools/GnuWin32 +GNUINC=-I$(GNUDIR)/include +GNULIB=-L$(GNUDIR)/lib +GNUDLL=$(GNUDIR)/bin/ + +# Various optional components. Comment-out the ones you don't have +# and edit the paths and options as needed if you do. The default +# assumes GnuWin32 packages installed in /c/Program Files/GnuWin32. +JPEG_D=-DHAVE_LIBJPEG +JPEG_L=-ljpeg +JPEG_I=$(GNUINC) +JPEG_LIBDIR=$(GNULIB) +JPEG_DLLDIR=$(GNUDLL) + +PNG_D=-DHAVE_LIBPNG +PNG_L=-lpng +PNG_I= #$(GNUINC) +PNG_LIBDIR= #$(GNULIB) +PNG_DLLDIR= #$(GNUDLL) + +TIFF_D=-DHAVE_LIBTIFF +TIFF_L=-ltiff +TIFF_I= #$(GNUINC) +TIFF_LIBDIR= #$(GNULIB) +TIFF_DLLDIR= #$(GNUDLL) + +LIBZ_D=-DHAVE_LIBZ +LIBZ_L=-lz +LIBZ_I= #$(GNUINC) +LIBZ_LIBDIR= #$(GNULIB) +LIBZ_DLLDIR= #$(GNUDLL) + +# LIBXPM_D=-DHAVE_LIBXPM +# LIBXPM_L=-lxpm +# LIBXPM_I= #$(GNUINC) +# LIBXPM_LIBDIR= #$(GNULIB) + +FREETYPE_D=-DHAVE_LIBFREETYPE -DHAVE_FT2BUILD_H +FREETYPE_L=-lfreetype +FREETYPE_I=$(GNUINC)/freetype2/ +FREETYPE_LIBDIR= #$(GNULIB) +FREETYPE_DLLDIR= #$(GNUDLL) + +# FONTCONFIG_D=-DHAVE_LIBFONTCONFIG +# FONTCONFIG_L= +# FONTCONFIG_I= +# FONTCONFIG_LIBDIR= + +ALL_D=$(FREETYPE_D) $(JPEG_D) $(PNG_D) $(TIFF_D) $(LIBZ_D) $(LIBXPM_D) +ALL_L=$(FREETYPE_L) $(JPEG_L) $(PNG_L) $(TIFF_L) $(LIBZ_L) $(LIBXPM_L) +ALL_I=$(FREETYPE_I) $(JPEG_I) $(PNG_I) $(TIFF_I) $(LIBZ_I) $(LIBXPM_I) +ALL_LIBDIR=$(FREETYPE_LIBDIR) $(JPEG_LIBDIR) $(PNG_LIBDIR) $(TIFF_LIBDIR) \ + $(LIBZ_LIBDIR) $(LIBXPM_LIBDIR) +ALL_DLLDIR=$(FREETYPE_DLLDIR) $(JPEG_DLLDIR) $(PNG_DLLDIR) $(TIFF_DLLDIR) \ + $(LIBZ_DLLDIR) $(LIBXPM_DLLDIR) + +# We need libiconv for internationalization. We default to static +# linking because that reduces the number of dependencies. However, +# libiconv is released under the GNU GPL which may impose extra +# restrictions on redistribution. +LIBICONV=/c/MinGW/lib/libiconv.a +#LIBICONV=-liconv + + +DEFS=$(CDEFS) $(ALL_D) +INCLUDES=$(ALL_I) + +CC=gcc +CFLAGS=-g -O2 -I. -std=gnu99 -fvisibility=hidden -static-libgcc \ + -D_WIN32 -DBGDWIN32 $(DEFS) $(INCLUDES) + +LD=gcc +LDFLAGS=-g -O2 -fvisibility=hidden -static-libgcc $(ALL_LIBDIR) +LIBS=$(ALL_L) $(LIBICONV) + +ZIP=zip -j9 +DIST=libgd-win.zip + +# Get this list from c files in libgd_la_SOURCES in Makefile.mk +SRC=gd.c gd_color.c gd_color_map.c gd_transform.c gdfx.c \ +gd_security.c gd_gd.c gd_gd2.c gd_io.c gd_io_dp.c gd_gif_in.c \ +gd_gif_out.c gd_io_file.c gd_io_ss.c gd_jpeg.c gd_png.c gd_ss.c \ +gd_topal.c gd_wbmp.c gdcache.c gdfontg.c gdfontl.c gdfontmb.c \ +gdfonts.c gdfontt.c gdft.c gdhelpers.c gdkanji.c gdtables.c gdxpm.c \ +wbmp.c gd_filter.c gd_nnquant.c gd_rotate.c gd_matrix.c \ +gd_interpolation.c gd_crop.c webpimg.c gd_webp.c gd_tiff.c gd_tga.c \ +gd_bmp.c gd_xbm.c gd_color_match.c gd_version.c gd_filename.c + +OBJ=$(SRC:.c=.o) + +TARGETBASE=libgd +TARGET=$(TARGETBASE).dll +TARGET_A=$(TARGETBASE).a + +all: + (cd ../../src; make -f ../windows/msys/Makefile $(TARGET)) + +# BUG: this sucks in all the DLLs in the lib installation directory, +# including those you may not need. +dist: all + (cd ../..; $(ZIP) $(DIST) src/*.dll src/*.a $$(for d in $(ALL_DLLDIR); do echo $$d/*.dll; done | sort -u) ) + + +clean: + -rm ../../$(DIST) + (cd ../../src; rm -f *.dll *.a $(OBJ) deps.mk; true) + +check: all + bash run_tests.sh "$(GNUDIR)/bin" "$(INCLUDES)" + +deps.mk: + [ -f gd.h ] # Sanity check: we're in src/, right? + gcc -MM $(DEFS) $(INCLUDES) $(SRC) > deps.mk + +$(TARGET): $(OBJ) + gcc -shared -o $(TARGET) $(LDFLAGS) -Wl,--out-implib,$(TARGET_A) \ + $(OBJ) $(LIBS) + +include deps.mk + + + + + + + + + + diff --git a/Build/source/libs/gd/libgd-2.1.1/windows/msys/README.MSYS.md b/Build/source/libs/gd/libgd-2.1.1/windows/msys/README.MSYS.md new file mode 100644 index 00000000000..601802dd8e0 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/windows/msys/README.MSYS.md @@ -0,0 +1,65 @@ + +# MSYS Fallback Makefile + +This is a simple, straightforward Makefile for building LibGD with +MinGW on MSYS (or possibly Cygwin). It is here for anyone who doesn't +want to deal with autotools or CMake on Windows or who can't get +either of them working on their particular setup. + +Note that this Makefile only builds the library and test cases; the +standalone utilities are ignored. If you need those, you'll need to +use one of the other build systems (or add them yourself.) + +## To build LibGD: + +1. Install MinGW and MSYS (see <http://www.mingw.org/wiki/Getting_Started>). + You will need to install zip and unzip as well as the 32-bit C compiler + and related tools. + +2. Install LibJpeg, LibPng, LibTiff, Zlib and FreeType from + <http://gnuwin32.sourceforge.net> and install them all in + `c:/tools/GnuWin32/`. (You can get these libraries from other + places and/or install them in different locations, but you'll need to + edit the Makefile accordingly if you do.) + +3. Skip ahead to the next step. If that doesn't work, edit the + Makefile to fix what went wrong. Things to try include: + * Ensure SRC contains an up-to-date list of source files. (Take a + look at libgd_la_SOURCES src/Makefile.am for a reference.) + * Ensure that the paths and #defines for unsupported libraries + are commented out. They're nicely grouped into clusters to + simplify that. + +4. `cd` to this directory and type: + + make + make check + + If both commands succeed, you're done. (Note that some of the + testcases will fail, just because they test features not enabled + here. This is fine. As long as most tests pass, you're probably + okay.) + +5. Type + + make dist + + This will create libgd-win.zip, a zip file containing the new + library and its dependants. Note that this step may pick up extra + DLLs; it sweeps up all of the DLLs in the directories pointed to + by *_DLLDIR Makefile variables. + + Alternately, you can copy the lib (in src/) to wherever it needs + to go. + + +## Stuff that Doesn't Work + +* LibXpm: It's probably nothing serious, just more trouble than it's + worth. +* LibFontconfig: I couldn't find Windows binaries for it anywhere + reputable. + + + + diff --git a/Build/source/libs/gd/libgd-2.1.1/windows/msys/deps.mk b/Build/source/libs/gd/libgd-2.1.1/windows/msys/deps.mk new file mode 100644 index 00000000000..9b531b3103d --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/windows/msys/deps.mk @@ -0,0 +1 @@ +# Nothing to see here. (But it shuts up make.) diff --git a/Build/source/libs/gd/libgd-2.1.1/windows/msys/run_tests.sh b/Build/source/libs/gd/libgd-2.1.1/windows/msys/run_tests.sh new file mode 100755 index 00000000000..22de13c4036 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/windows/msys/run_tests.sh @@ -0,0 +1,67 @@ +#!/bin/bash + +set -e + +# Parameters +DLLPATH_EXTRA=$1 # Path to supporting DLLs +CFLAGS_EXTRA=$2 # Extra C flags + + +LOG=run_tests.log + +CFLAGS="-g -Igdtest/ -I. -I../src/ -D_WIN32 $CFLAGS_EXTRA" +LDFLAGS='-L../src -llibgd' +DLLPATH=../src:$DLLPATH_EXTRA + +function run_gcc { + if msg=`gcc $* 2>&1`; then + true + else + echo "COMMAND: gcc $*" >> $LOG + echo $msg >> $LOG + false + fi +} + +# Switch to the working directory +export PATH=$PATH:$DLLPATH +cd ../../tests + +# Initial setup +echo "Setting up..." +[ -f $LOG ] && rm -f $LOG +[ -f test_config.h ] || echo '#define GDTEST_TOP_DIR "."' > test_config.h +run_gcc -c $CFLAGS gdtest/gdtest.c + + +echo "Running tests:" +count=0 +failures=0 +compile_failures=0 +for test in `find . -name \*.c | grep -v '^./gdtest'`; do + count=`expr $count + 1` + + exe=${test%.c}.exe + if run_gcc -o $exe $CFLAGS $LDFLAGS $test gdtest.o; then + true; + else + echo "COMPILE_FAIL: $test" + compile_failures=`expr $compile_failures + 1` + continue + fi + + echo "Running $exe:" >> $LOG + if $exe 2>&1 >> $LOG; then + echo "PASS: $test" + else + failures=`expr $failures + 1` + echo "FAIL: $test" + fi + echo >> $LOG +done + +echo "$failures failures and $compile_failures compile failures out of $count tests." +echo "Error messages in $LOG" + + + diff --git a/Build/source/libs/gd/libgd-2.1.1/windows/readme.md b/Build/source/libs/gd/libgd-2.1.1/windows/readme.md new file mode 100644 index 00000000000..8753b704723 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/windows/readme.md @@ -0,0 +1,11 @@ +# Building on Windows with Visual Studio 2013 + +Open the VS2013 x64 Native Tools Command Prompt. 2012 will *not* work. +Change to the gd-libgd folder. +git clone https://github.com/imazen/gd-win-dependencies into the folder. +Run +nmake /f windows/Makefile.vc all +nmake /f windows/Makefile.vc check + +Before rebuilding, run: +nmake /f windows/Makefile.vc clean
\ No newline at end of file diff --git a/Build/source/libs/gd/libgd-2.1.1/windows/run_tests.bat b/Build/source/libs/gd/libgd-2.1.1/windows/run_tests.bat new file mode 100755 index 00000000000..5dadb059407 --- /dev/null +++ b/Build/source/libs/gd/libgd-2.1.1/windows/run_tests.bat @@ -0,0 +1,38 @@ +@echo off +setlocal EnableDelayedExpansion +if [%PLATFORM%]==[] set PLATFORM=x86 +if [%PREFERREDTOOLARCHITECTURE%]==[x64] set PLATFORM=x64 +set PLATFORM=%PLATFORM:X=x% + +if exist build_msvc12_%PLATFORM%\tests (cd build_msvc12_%PLATFORM%\tests) else ( + if exist ..\build_%PLATFORM%\tests (cd ..\build_msvc12_%PLATFORM%\tests) else ( + echo unable to find test dir + exit /b 1 + ) +) + + + +for /f %%T in (testlist.txt) do ( + set test=%%T + set output=test: !test!.................................................................... + + set target=%%~nT.exe + if not exist !target! SET result=NotFound + call !target! && (SET result=Passed) || (SET result=Failed) + + rem > last_test.out 2> last_test.err + rem set /p testerr=<last_test.err + rem set /p testout=<last_test.out + + echo !output:~0,70!!result! + + rem if defined testerr echo error: !testerr! + rem if defined testout echo msg: !testout! + + if defined APPVEYOR ( + appveyor AddTest "!test! %PLATFORM%" -Outcome !result! -Framework Custom -Filename %%~nT.exe -Duration 0 + ) +) + +exit /b 0
\ No newline at end of file diff --git a/Build/source/libs/gd/libgd.test b/Build/source/libs/gd/libgd.test new file mode 100755 index 00000000000..fa6023398bc --- /dev/null +++ b/Build/source/libs/gd/libgd.test @@ -0,0 +1,7 @@ +#! /bin/sh + +# Copyright (C) 2015 Peter Breitenlohner <tex-live@tug.org> +# You may freely use, modify and/or distribute this file. + +./gdtest || exit 1 + diff --git a/Build/source/libs/gd/version.ac b/Build/source/libs/gd/version.ac index 6319c59b114..fedc5f08096 100644 --- a/Build/source/libs/gd/version.ac +++ b/Build/source/libs/gd/version.ac @@ -1,5 +1,5 @@ dnl -dnl Copyright (C) 2013 Peter Breitenlohner <tex-live@tug.org> +dnl Copyright (C) 2013-2015 Peter Breitenlohner <tex-live@tug.org> dnl dnl This file is free software; the copyright holder dnl gives unlimited permission to copy and/or distribute it, @@ -8,4 +8,4 @@ dnl dnl -------------------------------------------------------- dnl dnl m4-include this file to define the current gd version -m4_define([gd_version], [2.1.0]) +m4_define([gd_version], [2.1.1]) |