Commits

pierre  committed c01e3e8

- sync to 2.0.26

  • Participants
  • Parent commits d88fae2

Comments (0)

Files changed (7)

File src/Makefile.am

 
 bin_PROGRAMS = annotate gdparttopng gdtopng gd2copypal gd2topng pngtogd pngtogd2 webpng
 
-bin_SCRIPTS = bdftogd
+bin_SCRIPTS = bdftogd config/gdlib-config
 
-noinst_PROGRAMS = fontsizetest fontwheeltest gdtest gddemo gd2time gdtestft testac circletexttest
+noinst_PROGRAMS = fontsizetest fontwheeltest gdtest gddemo gd2time gdtestft testac circletexttest testtr
 
-EXTRA_DIST = README-JPEG.TXT README.TXT configure.pl bdftogd demoin.png err.out index.html install-item makefile.sample readme.jpn
+EXTRA_DIST = README-JPEG.TXT README.TXT configure.pl bdftogd demoin.png err.out index.html install-item makefile.sample readme.jpn entities.html entities.tcl
 
-include_HEADERS = gd.h gdfx.h gd_io.h gdcache.h gdfontg.h gdfontl.h gdfontmb.h gdfonts.h gdfontt.h
+include_HEADERS = gd.h gdfx.h gd_io.h gdcache.h gdfontg.h gdfontl.h gdfontmb.h gdfonts.h gdfontt.h entities.h
 
 lib_LTLIBRARIES = libgd.la
 

File src/Makefile.in

 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
+FEATURES = @FEATURES@
 FREETYPE_CONFIG = @FREETYPE_CONFIG@
 GDLIBNAME = @GDLIBNAME@
 GDLIB_MAJOR = @GDLIB_MAJOR@
 
 bin_PROGRAMS = annotate gdparttopng gdtopng gd2copypal gd2topng pngtogd pngtogd2 webpng
 
-bin_SCRIPTS = bdftogd
+bin_SCRIPTS = bdftogd config/gdlib-config
 
-noinst_PROGRAMS = fontsizetest fontwheeltest gdtest gddemo gd2time gdtestft testac circletexttest
+noinst_PROGRAMS = fontsizetest fontwheeltest gdtest gddemo gd2time gdtestft testac circletexttest testtr
 
-EXTRA_DIST = README-JPEG.TXT README.TXT configure.pl bdftogd demoin.png err.out index.html install-item makefile.sample readme.jpn
+EXTRA_DIST = README-JPEG.TXT README.TXT configure.pl bdftogd demoin.png err.out index.html install-item makefile.sample readme.jpn entities.html entities.tcl
 
-include_HEADERS = gd.h gdfx.h gd_io.h gdcache.h gdfontg.h gdfontl.h gdfontmb.h gdfonts.h gdfontt.h
+include_HEADERS = gd.h gdfx.h gd_io.h gdcache.h gdfontg.h gdfontl.h gdfontmb.h gdfonts.h gdfontt.h entities.h
 
 lib_LTLIBRARIES = libgd.la
 
 	pngtogd2$(EXEEXT) webpng$(EXEEXT)
 noinst_PROGRAMS = fontsizetest$(EXEEXT) fontwheeltest$(EXEEXT) \
 	gdtest$(EXEEXT) gddemo$(EXEEXT) gd2time$(EXEEXT) \
-	gdtestft$(EXEEXT) testac$(EXEEXT) circletexttest$(EXEEXT)
+	gdtestft$(EXEEXT) testac$(EXEEXT) circletexttest$(EXEEXT) \
+	testtr$(EXEEXT)
 PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
 
 annotate_SOURCES = annotate.c
 testac_LDADD = $(LDADD)
 testac_DEPENDENCIES = ./libgd.la
 testac_LDFLAGS =
+testtr_SOURCES = testtr.c
+testtr_OBJECTS = testtr.$(OBJEXT)
+testtr_LDADD = $(LDADD)
+testtr_DEPENDENCIES = ./libgd.la
+testtr_LDFLAGS =
 webpng_SOURCES = webpng.c
 webpng_OBJECTS = webpng.$(OBJEXT)
 webpng_LDADD = $(LDADD)
 @AMDEP_TRUE@	./$(DEPDIR)/gdtestft.Po ./$(DEPDIR)/gdtopng.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/gdxpm.Plo ./$(DEPDIR)/pngtogd.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/pngtogd2.Po ./$(DEPDIR)/testac.Po \
-@AMDEP_TRUE@	./$(DEPDIR)/wbmp.Plo ./$(DEPDIR)/webpng.Po
+@AMDEP_TRUE@	./$(DEPDIR)/testtr.Po ./$(DEPDIR)/wbmp.Plo \
+@AMDEP_TRUE@	./$(DEPDIR)/webpng.Po
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
 DIST_SOURCES = $(libgd_la_SOURCES) annotate.c circletexttest.c \
 	fontsizetest.c fontwheeltest.c gd2copypal.c gd2time.c \
 	gd2topng.c gddemo.c gdparttopng.c gdtest.c gdtestft.c gdtopng.c \
-	pngtogd.c pngtogd2.c testac.c webpng.c
+	pngtogd.c pngtogd2.c testac.c testtr.c webpng.c
 HEADERS = $(include_HEADERS)
 
 
 	Makefile.in aclocal.m4 config.hin configure configure.ac \
 	depcomp install-sh missing mkinstalldirs
 DIST_SUBDIRS = $(SUBDIRS)
-SOURCES = $(libgd_la_SOURCES) annotate.c circletexttest.c fontsizetest.c fontwheeltest.c gd2copypal.c gd2time.c gd2topng.c gddemo.c gdparttopng.c gdtest.c gdtestft.c gdtopng.c pngtogd.c pngtogd2.c testac.c webpng.c
+SOURCES = $(libgd_la_SOURCES) annotate.c circletexttest.c fontsizetest.c fontwheeltest.c gd2copypal.c gd2time.c gd2topng.c gddemo.c gdparttopng.c gdtest.c gdtestft.c gdtopng.c pngtogd.c pngtogd2.c testac.c testtr.c webpng.c
 
 all: config.h
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
 testac$(EXEEXT): $(testac_OBJECTS) $(testac_DEPENDENCIES) 
 	@rm -f testac$(EXEEXT)
 	$(LINK) $(testac_LDFLAGS) $(testac_OBJECTS) $(testac_LDADD) $(LIBS)
+testtr$(EXEEXT): $(testtr_OBJECTS) $(testtr_DEPENDENCIES) 
+	@rm -f testtr$(EXEEXT)
+	$(LINK) $(testtr_LDFLAGS) $(testtr_OBJECTS) $(testtr_LDADD) $(LIBS)
 webpng$(EXEEXT): $(webpng_OBJECTS) $(webpng_DEPENDENCIES) 
 	@rm -f webpng$(EXEEXT)
 	$(LINK) $(webpng_LDFLAGS) $(webpng_OBJECTS) $(webpng_LDADD) $(LIBS)
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pngtogd.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pngtogd2.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testac.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testtr.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wbmp.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/webpng.Po@am__quote@
 

File src/config.hin

 /* Define to 1 if you have the <errno.h> header file. */
 #undef HAVE_ERRNO_H
 
-/* Define to 1 if you have the <freetype/freetype.h> header file. */
-#undef HAVE_FREETYPE_FREETYPE_H
+/* Define to 1 if you have the <ft2build.h> header file. */
+#undef HAVE_FT2BUILD_H
 
 /* Define if you have the iconv() function. */
 #undef HAVE_ICONV
 /* Define to 1 if you have the <inttypes.h> header file. */
 #undef HAVE_INTTYPES_H
 
-/* Define to 1 if you have the `freetype' library (-lfreetype). */
+/* Define if you have the freetype library. */
 #undef HAVE_LIBFREETYPE
 
-/* Define to 1 if you have the `jpeg' library (-ljpeg). */
+/* Define if you have the freetype library. */
 #undef HAVE_LIBJPEG
 
 /* Define to 1 if you have the `m' library (-lm). */
 #undef HAVE_LIBM
 
-/* Define to 1 if you have the `png' library (-lpng). */
+/* Define if you have the png library. */
 #undef HAVE_LIBPNG
 
 /* Define to 1 if you have the <libpng/png.h> header file. */

File src/configure

 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.57 for GD 2.0.25.
+# Generated by GNU Autoconf 2.57 for GD 2.0.26.
 #
 # Report bugs to <gd@boutell.com>.
 #
 # Identity of this package.
 PACKAGE_NAME='GD'
 PACKAGE_TARNAME='gd'
-PACKAGE_VERSION='2.0.25'
-PACKAGE_STRING='GD 2.0.25'
+PACKAGE_VERSION='2.0.26'
+PACKAGE_STRING='GD 2.0.26'
 PACKAGE_BUGREPORT='gd@boutell.com'
 
 ac_unique_file="gd.c"
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS GDLIB_MAJOR GDLIB_MINOR GDLIB_REVISION GDLIBNAME INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os LN_S ECHO RANLIB ac_ct_RANLIB CPP EGREP LIBTOOL LIBICONV LTLIBICONV LIBPNG12_CONFIG LIBPNG_CONFIG FREETYPE_CONFIG PTHREAD_CC PTHREAD_LIBS PTHREAD_CFLAGS LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS FEATURES GDLIB_MAJOR GDLIB_MINOR GDLIB_REVISION GDLIBNAME INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os LN_S ECHO RANLIB ac_ct_RANLIB CPP EGREP LIBTOOL LIBICONV LTLIBICONV LIBPNG12_CONFIG LIBPNG_CONFIG FREETYPE_CONFIG PTHREAD_CC PTHREAD_LIBS PTHREAD_CFLAGS LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 
 # Initialize some variables set by options.
   # 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 2.0.25 to adapt to many kinds of systems.
+\`configure' configures GD 2.0.26 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GD 2.0.25:";;
+     short | recursive ) echo "Configuration of GD 2.0.26:";;
    esac
   cat <<\_ACEOF
 
 test -n "$ac_init_help" && exit 0
 if $ac_init_version; then
   cat <<\_ACEOF
-GD configure 2.0.25
+GD configure 2.0.26
 generated by GNU Autoconf 2.57
 
 Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by GD $as_me 2.0.25, which was
+It was created by GD $as_me 2.0.26, which was
 generated by GNU Autoconf 2.57.  Invocation command line was
 
   $ $0 $@
 
 GDLIB_MAJOR=2
 GDLIB_MINOR=0
-GDLIB_REVISION=25
+GDLIB_REVISION=26
 GDLIBNAME=gd
+#Expanded by tests later in this file. TBB 2.0.26
+FEATURES=
+
 
 
 
 
 # Define the identity of the package.
  PACKAGE=gd
- VERSION=2.0.25
+ VERSION=2.0.26
 
 
 cat >>confdefs.h <<_ACEOF
 case $host in
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 4775 "configure"' > conftest.$ac_ext
+  echo '#line 4778 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
 save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
 compiler_c_o=no
-if { (eval echo configure:5304: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
+if { (eval echo configure:5307: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
   # The compiler can only warn and ignore the option if not recognized
   # So say no if there are warnings
   if test -s out/conftest.err; then
     lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 7136 "configure"
+#line 7139 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
     lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 7234 "configure"
+#line 7237 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
 done
 
 
+  _ldflags="$LDFLAGS"
+  LDFLAGS="$libpng_LDFLAGS $LDFLAGS"
+
   if test -n "$LIBPNG12_CONFIG"; then
     echo "$as_me:$LINENO: checking for png_create_read_struct in -lpng12" >&5
 echo $ECHO_N "checking for png_create_read_struct in -lpng12... $ECHO_C" >&6
 echo "${ECHO_T}$ac_cv_lib_png12_png_create_read_struct" >&6
 if test $ac_cv_lib_png12_png_create_read_struct = yes; then
   LIBS="-lpng12 $LIBS"
+       FEATURES="GD_PNG $FEATURES"
 
 cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBPNG 1
 fi
 
   elif test -n "$LIBPNG_CONFIG"; then
-
-echo "$as_me:$LINENO: checking for png_create_read_struct in -lpng" >&5
+    echo "$as_me:$LINENO: checking for png_create_read_struct in -lpng" >&5
 echo $ECHO_N "checking for png_create_read_struct in -lpng... $ECHO_C" >&6
 if test "${ac_cv_lib_png_png_create_read_struct+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 echo "$as_me:$LINENO: result: $ac_cv_lib_png_png_create_read_struct" >&5
 echo "${ECHO_T}$ac_cv_lib_png_png_create_read_struct" >&6
 if test $ac_cv_lib_png_png_create_read_struct = yes; then
-  cat >>confdefs.h <<_ACEOF
+  LIBS="-lpng $LIBS"
+       FEATURES="GD_PNG $FEATURES"
+
+cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBPNG 1
 _ACEOF
 
-  LIBS="-lpng $LIBS"
-
 else
   LDFLAGS="$_ldflags"
        { echo "$as_me:$LINENO: WARNING: libpng is required - see http://www.libpng.org/pub/png/" >&5
 fi
 
   else
-
-echo "$as_me:$LINENO: checking for png_create_read_struct in -lpng" >&5
+    echo "$as_me:$LINENO: checking for png_create_read_struct in -lpng" >&5
 echo $ECHO_N "checking for png_create_read_struct in -lpng... $ECHO_C" >&6
 if test "${ac_cv_lib_png_png_create_read_struct+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 echo "$as_me:$LINENO: result: $ac_cv_lib_png_png_create_read_struct" >&5
 echo "${ECHO_T}$ac_cv_lib_png_png_create_read_struct" >&6
 if test $ac_cv_lib_png_png_create_read_struct = yes; then
-  cat >>confdefs.h <<_ACEOF
+  LIBS="-lpng $LIBS"
+       FEATURES="GD_PNG $FEATURES"
+
+cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBPNG 1
 _ACEOF
 
-  LIBS="-lpng $LIBS"
-
 else
   LDFLAGS="$_ldflags"
        { echo "$as_me:$LINENO: WARNING: libpng is required - see http://www.libpng.org/pub/png/" >&5
   _ldflags="$LDFLAGS"
   CPPFLAGS="$libft_INCLUDES $CPPFLAGS"
   LDFLAGS="$libft_LDFLAGS $LDFLAGS"
-
-
-echo "$as_me:$LINENO: checking for FT_Init_FreeType in -lfreetype" >&5
+  SAVE_FEATURES=$FEATURES
+  echo "$as_me:$LINENO: checking for FT_Init_FreeType in -lfreetype" >&5
 echo $ECHO_N "checking for FT_Init_FreeType in -lfreetype... $ECHO_C" >&6
 if test "${ac_cv_lib_freetype_FT_Init_FreeType+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 echo "$as_me:$LINENO: result: $ac_cv_lib_freetype_FT_Init_FreeType" >&5
 echo "${ECHO_T}$ac_cv_lib_freetype_FT_Init_FreeType" >&6
 if test $ac_cv_lib_freetype_FT_Init_FreeType = yes; then
-  cat >>confdefs.h <<_ACEOF
+  LIBS="-lfreetype $LIBS"
+     FEATURES="GD_FREETYPE $FEATURES"
+
+cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBFREETYPE 1
 _ACEOF
 
-  LIBS="-lfreetype $LIBS"
-
 else
   LDFLAGS="$_ldflags"
      { echo "$as_me:$LINENO: WARNING: not found - disabling freetype support" >&5
 echo "$as_me: WARNING: not found - disabling freetype support" >&2;}
+     FEATURES=$SAVE_FEATURES
 fi
 
 
+  #TBB: 2.0.26: newer gd versions require ft2build.h
 
-for ac_header in freetype/freetype.h
+for ac_header in ft2build.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   cat >>confdefs.h <<_ACEOF
 #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
 _ACEOF
- echo "$as_me:$LINENO: checking whether it's freetype 2" >&5
-echo $ECHO_N "checking whether it's freetype 2... $ECHO_C" >&6
-     cat >conftest.$ac_ext <<_ACEOF
-#line $LINENO "configure"
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <freetype/freetype.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "FT_Library" >/dev/null 2>&1; then
-  echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
 
 else
   echo "$as_me:$LINENO: result: no" >&5
 echo "${ECHO_T}no" >&6
-        CPPFLAGS="$_cppflags"
-
-fi
-rm -f conftest*
-
-
+      FEATURES=$SAVE_FEATURES
+      ac_cv_lib_freetype_FT_Init_FreeType=no
+      CPPFLAGS="$_cppflags"
 fi
 
 done
 fi;
 
 if test "$withval" != no; then
-
-echo "$as_me:$LINENO: checking for jpeg_set_defaults in -ljpeg" >&5
+  echo "$as_me:$LINENO: checking for jpeg_set_defaults in -ljpeg" >&5
 echo $ECHO_N "checking for jpeg_set_defaults in -ljpeg... $ECHO_C" >&6
 if test "${ac_cv_lib_jpeg_jpeg_set_defaults+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 echo "$as_me:$LINENO: result: $ac_cv_lib_jpeg_jpeg_set_defaults" >&5
 echo "${ECHO_T}$ac_cv_lib_jpeg_jpeg_set_defaults" >&6
 if test $ac_cv_lib_jpeg_jpeg_set_defaults = yes; then
-  cat >>confdefs.h <<_ACEOF
+  LIBS="-ljpeg $LIBS"
+     FEATURES="GD_JPEG $FEATURES"
+
+cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBJPEG 1
 _ACEOF
 
-  LIBS="-ljpeg $LIBS"
-
 fi
 
 else
 echo "${ECHO_T}$ac_cv_lib_Xpm_XpmReadFileToXpmImage" >&6
 if test $ac_cv_lib_Xpm_XpmReadFileToXpmImage = yes; then
   LIBS="-lXpm -lX11 $LIBS"
+     FEATURES="GD_XPM $FEATURES"
 
 cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBXPM 1
 } >&5
 cat >&5 <<_CSEOF
 
-This file was extended by GD $as_me 2.0.25, which was
+This file was extended by GD $as_me 2.0.26, which was
 generated by GNU Autoconf 2.57.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
 
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-GD config.status 2.0.25
+GD config.status 2.0.26
 configured by $0, generated by GNU Autoconf 2.57,
   with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
 
 s,@ECHO_N@,$ECHO_N,;t t
 s,@ECHO_T@,$ECHO_T,;t t
 s,@LIBS@,$LIBS,;t t
+s,@FEATURES@,$FEATURES,;t t
 s,@GDLIB_MAJOR@,$GDLIB_MAJOR,;t t
 s,@GDLIB_MINOR@,$GDLIB_MINOR,;t t
 s,@GDLIB_REVISION@,$GDLIB_REVISION,;t t

File src/configure.ac

 AC_PREREQ(2.54)
 
 #HEY! Change BOTH the vesion number and the GDLIB_REVISION setting!
-AC_INIT([GD], [2.0.25], [gd@boutell.com])
+AC_INIT([GD], [2.0.26], [gd@boutell.com])
 AC_CONFIG_SRCDIR([gd.c])
 AC_CONFIG_AUX_DIR(config)
 
 GDLIB_MAJOR=2
 GDLIB_MINOR=0
-GDLIB_REVISION=25
+GDLIB_REVISION=26
 GDLIBNAME=gd
+#Expanded by tests later in this file. TBB 2.0.26
+FEATURES=
+AC_SUBST(FEATURES)
 
 AC_SUBST(GDLIB_MAJOR)
 AC_SUBST(GDLIB_MINOR)
        [CPPFLAGS="$CPPFLAGS $libpng_CPPFLAGS/libpng"],
        [CPPFLAGS="$_cppflags"])])
 
+  _ldflags="$LDFLAGS"
+  LDFLAGS="$libpng_LDFLAGS $LDFLAGS"
+
   if test -n "$LIBPNG12_CONFIG"; then
     AC_CHECK_LIB(png12,png_create_read_struct,
       [LIBS="-lpng12 $LIBS"
+       FEATURES="GD_PNG $FEATURES"
        AC_DEFINE(HAVE_LIBPNG, 1, [ Define if you have the png library. ])],
       [LDFLAGS="$_ldflags"  
        AC_MSG_WARN([libpng is required - see http://www.libpng.org/pub/png/])])
   elif test -n "$LIBPNG_CONFIG"; then
-    AC_CHECK_LIB(png,png_create_read_struct,,
+    AC_CHECK_LIB(png,png_create_read_struct,
+      [LIBS="-lpng $LIBS" 
+       FEATURES="GD_PNG $FEATURES"
+       AC_DEFINE(HAVE_LIBPNG, 1, [ Define if you have the png library. ])],
       [LDFLAGS="$_ldflags"  
        AC_MSG_WARN([libpng is required - see http://www.libpng.org/pub/png/])])
   else
-    AC_CHECK_LIB(png,png_create_read_struct,,
+    AC_CHECK_LIB(png,png_create_read_struct,
+      [LIBS="-lpng $LIBS" 
+       FEATURES="GD_PNG $FEATURES"
+       AC_DEFINE(HAVE_LIBPNG, 1, [ Define if you have the png library. ])],
       [LDFLAGS="$_ldflags"  
        AC_MSG_WARN([libpng is required - see http://www.libpng.org/pub/png/])])
   fi
   _ldflags="$LDFLAGS"
   CPPFLAGS="$libft_INCLUDES $CPPFLAGS"
   LDFLAGS="$libft_LDFLAGS $LDFLAGS"
-
-  AC_CHECK_LIB(freetype,FT_Init_FreeType,,
+  SAVE_FEATURES=$FEATURES
+  AC_CHECK_LIB(freetype,FT_Init_FreeType,
+    [LIBS="-lfreetype $LIBS" 
+     FEATURES="GD_FREETYPE $FEATURES"
+     AC_DEFINE(HAVE_LIBFREETYPE, 1, [ Define if you have the freetype library. ])],
     [LDFLAGS="$_ldflags"
-     AC_MSG_WARN([not found - disabling freetype support])])
-
-  AC_CHECK_HEADERS(freetype/freetype.h,
-    [AC_MSG_CHECKING([whether it's freetype 2])
-     AC_EGREP_HEADER(FT_Library,freetype/freetype.h,
-       [AC_MSG_RESULT([yes])
-       ],
-       [AC_MSG_RESULT([no])
-        CPPFLAGS="$_cppflags"
-       ])
-    ])
+     AC_MSG_WARN([not found - disabling freetype support])
+     FEATURES=$SAVE_FEATURES])
+
+  #TBB: 2.0.26: newer gd versions require ft2build.h
+  AC_CHECK_HEADERS(ft2build.h,,
+      [AC_MSG_RESULT([no])
+      FEATURES=$SAVE_FEATURES
+      ac_cv_lib_freetype_FT_Init_FreeType=no
+      CPPFLAGS="$_cppflags"])
 
 else
   ac_cv_lib_freetype_FT_Init_FreeType=no
   withval=yes)
 
 if test "$withval" != no; then
-  AC_CHECK_LIB(jpeg,jpeg_set_defaults)
+  AC_CHECK_LIB(jpeg,jpeg_set_defaults,
+    [LIBS="-ljpeg $LIBS" 
+     FEATURES="GD_JPEG $FEATURES"
+     AC_DEFINE(HAVE_LIBJPEG, 1, [ Define if you have the freetype library. ])])
 else
   ac_cv_lib_jpeg_jpeg_set_defaults=no
 fi
 if test "$withval" != no; then
   AC_CHECK_LIB(Xpm,XpmReadFileToXpmImage,
     [LIBS="-lXpm -lX11 $LIBS"
+     FEATURES="GD_XPM $FEATURES"
      AC_DEFINE(HAVE_LIBXPM, 1, [ Define if you have the Xpm library. ])],,
     [-lX11])
 else

File src/entities.h

+/*
+ * Generated file - do not edit directly.
+ *
+ * This file was generated from:
+ *       http://www.w3.org/TR/REC-html40/sgml/entities.html
+ * by means of the script:
+ *       entities.tcl
+ */
+
+struct entities_s {
+	char	*name;
+	int	value;
+} entities[] = {
+	{"AElig", 198},
+	{"Aacute", 193},
+	{"Acirc", 194},
+	{"Agrave", 192},
+	{"Alpha", 913},
+	{"Aring", 197},
+	{"Atilde", 195},
+	{"Auml", 196},
+	{"Beta", 914},
+	{"Ccedil", 199},
+	{"Chi", 935},
+	{"Dagger", 8225},
+	{"Delta", 916},
+	{"ETH", 208},
+	{"Eacute", 201},
+	{"Ecirc", 202},
+	{"Egrave", 200},
+	{"Epsilon", 917},
+	{"Eta", 919},
+	{"Euml", 203},
+	{"Gamma", 915},
+	{"Iacute", 205},
+	{"Icirc", 206},
+	{"Igrave", 204},
+	{"Iota", 921},
+	{"Iuml", 207},
+	{"Kappa", 922},
+	{"Lambda", 923},
+	{"Mu", 924},
+	{"Ntilde", 209},
+	{"Nu", 925},
+	{"OElig", 338},
+	{"Oacute", 211},
+	{"Ocirc", 212},
+	{"Ograve", 210},
+	{"Omega", 937},
+	{"Omicron", 927},
+	{"Oslash", 216},
+	{"Otilde", 213},
+	{"Ouml", 214},
+	{"Phi", 934},
+	{"Pi", 928},
+	{"Prime", 8243},
+	{"Psi", 936},
+	{"Rho", 929},
+	{"Scaron", 352},
+	{"Sigma", 931},
+	{"THORN", 222},
+	{"Tau", 932},
+	{"Theta", 920},
+	{"Uacute", 218},
+	{"Ucirc", 219},
+	{"Ugrave", 217},
+	{"Upsilon", 933},
+	{"Uuml", 220},
+	{"Xi", 926},
+	{"Yacute", 221},
+	{"Yuml", 376},
+	{"Zeta", 918},
+	{"aacute", 225},
+	{"acirc", 226},
+	{"acute", 180},
+	{"aelig", 230},
+	{"agrave", 224},
+	{"alefsym", 8501},
+	{"alpha", 945},
+	{"amp", 38},
+	{"and", 8743},
+	{"ang", 8736},
+	{"aring", 229},
+	{"asymp", 8776},
+	{"atilde", 227},
+	{"auml", 228},
+	{"bdquo", 8222},
+	{"beta", 946},
+	{"brvbar", 166},
+	{"bull", 8226},
+	{"cap", 8745},
+	{"ccedil", 231},
+	{"cedil", 184},
+	{"cent", 162},
+	{"chi", 967},
+	{"circ", 710},
+	{"clubs", 9827},
+	{"cong", 8773},
+	{"copy", 169},
+	{"crarr", 8629},
+	{"cup", 8746},
+	{"curren", 164},
+	{"dArr", 8659},
+	{"dagger", 8224},
+	{"darr", 8595},
+	{"deg", 176},
+	{"delta", 948},
+	{"diams", 9830},
+	{"divide", 247},
+	{"eacute", 233},
+	{"ecirc", 234},
+	{"egrave", 232},
+	{"empty", 8709},
+	{"emsp", 8195},
+	{"ensp", 8194},
+	{"epsilon", 949},
+	{"equiv", 8801},
+	{"eta", 951},
+	{"eth", 240},
+	{"euml", 235},
+	{"euro", 8364},
+	{"exist", 8707},
+	{"fnof", 402},
+	{"forall", 8704},
+	{"frac12", 189},
+	{"frac14", 188},
+	{"frac34", 190},
+	{"frasl", 8260},
+	{"gamma", 947},
+	{"ge", 8805},
+	{"gt", 62},
+	{"hArr", 8660},
+	{"harr", 8596},
+	{"hearts", 9829},
+	{"hellip", 8230},
+	{"iacute", 237},
+	{"icirc", 238},
+	{"iexcl", 161},
+	{"igrave", 236},
+	{"image", 8465},
+	{"infin", 8734},
+	{"int", 8747},
+	{"iota", 953},
+	{"iquest", 191},
+	{"isin", 8712},
+	{"iuml", 239},
+	{"kappa", 954},
+	{"lArr", 8656},
+	{"lambda", 955},
+	{"lang", 9001},
+	{"laquo", 171},
+	{"larr", 8592},
+	{"lceil", 8968},
+	{"ldquo", 8220},
+	{"le", 8804},
+	{"lfloor", 8970},
+	{"lowast", 8727},
+	{"loz", 9674},
+	{"lrm", 8206},
+	{"lsaquo", 8249},
+	{"lsquo", 8216},
+	{"lt", 60},
+	{"macr", 175},
+	{"mdash", 8212},
+	{"micro", 181},
+	{"middot", 183},
+	{"minus", 8722},
+	{"mu", 956},
+	{"nabla", 8711},
+	{"nbsp", 160},
+	{"ndash", 8211},
+	{"ne", 8800},
+	{"ni", 8715},
+	{"not", 172},
+	{"notin", 8713},
+	{"nsub", 8836},
+	{"ntilde", 241},
+	{"nu", 957},
+	{"oacute", 243},
+	{"ocirc", 244},
+	{"oelig", 339},
+	{"ograve", 242},
+	{"oline", 8254},
+	{"omega", 969},
+	{"omicron", 959},
+	{"oplus", 8853},
+	{"or", 8744},
+	{"ordf", 170},
+	{"ordm", 186},
+	{"oslash", 248},
+	{"otilde", 245},
+	{"otimes", 8855},
+	{"ouml", 246},
+	{"para", 182},
+	{"part", 8706},
+	{"permil", 8240},
+	{"perp", 8869},
+	{"phi", 966},
+	{"pi", 960},
+	{"piv", 982},
+	{"plusmn", 177},
+	{"pound", 163},
+	{"prime", 8242},
+	{"prod", 8719},
+	{"prop", 8733},
+	{"psi", 968},
+	{"quot", 34},
+	{"rArr", 8658},
+	{"radic", 8730},
+	{"rang", 9002},
+	{"raquo", 187},
+	{"rarr", 8594},
+	{"rceil", 8969},
+	{"rdquo", 8221},
+	{"real", 8476},
+	{"reg", 174},
+	{"rfloor", 8971},
+	{"rho", 961},
+	{"rlm", 8207},
+	{"rsaquo", 8250},
+	{"rsquo", 8217},
+	{"sbquo", 8218},
+	{"scaron", 353},
+	{"sdot", 8901},
+	{"sect", 167},
+	{"shy", 173},
+	{"sigma", 963},
+	{"sigmaf", 962},
+	{"sim", 8764},
+	{"spades", 9824},
+	{"sub", 8834},
+	{"sube", 8838},
+	{"sum", 8721},
+	{"sup", 8835},
+	{"sup1", 185},
+	{"sup2", 178},
+	{"sup3", 179},
+	{"supe", 8839},
+	{"szlig", 223},
+	{"tau", 964},
+	{"there4", 8756},
+	{"theta", 952},
+	{"thetasym", 977},
+	{"thinsp", 8201},
+	{"thorn", 254},
+	{"tilde", 732},
+	{"times", 215},
+	{"trade", 8482},
+	{"uArr", 8657},
+	{"uacute", 250},
+	{"uarr", 8593},
+	{"ucirc", 251},
+	{"ugrave", 249},
+	{"uml", 168},
+	{"upsih", 978},
+	{"upsilon", 965},
+	{"uuml", 252},
+	{"weierp", 8472},
+	{"xi", 958},
+	{"yacute", 253},
+	{"yen", 165},
+	{"yuml", 255},
+	{"zeta", 950},
+	{"zwj", 8205},
+	{"zwnj", 8204},
+};
+
+#define ENTITY_NAME_LENGTH_MAX 8
+#define NR_OF_ENTITIES 252

File src/index.html

 <!-- REMEMBER TO EDIT index.html.source -->
 <head>
-<TITLE>gd 2.0.25</TITLE>
+<TITLE>gd 2.0.26</TITLE>
 </head>
 <body bgcolor="#FFFFFF">
 <!-- BANNER HERE -->
-<H2>gd 2.0.25</H2>
+<H2>gd 2.0.26</H2>
 <H3>A graphics library for fast image creation</H3>
 <H3>Follow this link to the
 <A HREF="http://www.boutell.com/gd/">latest version
 new installation overwrites the old.
 <p>
 <strong>ABOUT GD AND GIF:</strong>
-gd 2.0.25 creates PNG, JPEG and WBMP images, not GIF images. This is a 
+gd 2.0.26 creates PNG, JPEG and WBMP images, not GIF images. This is a 
 good thing.  PNG is a more compact format, and full compression is
 available.  JPEG works best with photographic images, and is still
 more compatible with the major Web browsers than even PNG is. WBMP is
 modern image formats such as PNG and JPEG as soon as possible.
 
 <p>
-When building from soruce, gd 2.0.25 <strong>requires</strong> that the 
+When building from soruce, gd 2.0.26 <strong>requires</strong> that the 
 following libraries also be installed, in order to produce the related 
 image formats. The win32 binary release (bgd) already contains the
 appropriate libraries.
 <H3>Table of Contents</H3>
 <UL>
 <LI><A HREF="#notice">Credits and license terms</A>
-<LI><A HREF="#whatsnew2.0.25">What's new in version "XYZ" of GD?</A>
+<LI><A HREF="#whatsnew2.0.26">What's new in version "XYZ" of GD?</A>
 <LI><A HREF="#whatis">What is gd?</A>
 <LI><A HREF="#gdother">What if I want to use another programming language?</A>
 <LI><A HREF="#required">What else do I need to use gd?</A>
 <A NAME="gdother"><H3>What if I want to use another programming
 language?</h3></A>
 Not all of these tools are necessarily up to date and fully compatible
-with 2.0.25.
+with 2.0.26.
 <h4>PHP</h4>
 A variant of gd 2.x is included in PHP 4.3.0. It is also possible
-to patch PHP 4.2.3 for use with gd 2.0.25; see the
+to patch PHP 4.2.3 for use with gd 2.0.26; see the
 <a href="http://www.boutell.com/gd/">gd home page</a> for a link to
 that information. It would be a Good Idea to merge all of the things
 that are better in mainstream gd and all of the things that are
 <li><a href="http://martin.gleeson.com/fly/">fly</a>, by Martin Gleeson
 </ul>
 <P>
+<A NAME="whatsnew2.0.26"><H3>What's new in version 2.0.26?</H3></A>
+<P>
+The following enhancements and fixes:
+<ul>
+<li>Drastically faster, less memory-intensive antialiased drawing, thanks to
+Pierre-Alain Joye. This code was imported from the PHP "fork"
+of gd. The API for antialiased drawing has not changed, however the
+implementation has been completely replaced.
+Antialiased line drawing does not support widths other
+than 1, however this did not work properly with the other
+implementation of antialiasing either. Support has been included
+for the "non-blending color" option introduced by the previous
+implementation of antialiased drawing.
+<li><code>gdlib-config</code>, which has been installed by 
+<code>make install</code> for some time now, has gained
+a <code>--features</code> option. This option produces a space-separated
+list of optional features with which the gd library was compiled.
+Typical usage looks like this:
+<pre>
+% gdlib-config --features
+GD_XPM GD_JPEG GD_FREETYPE GD_PNG
+</pre>
+Other <code>configure</code> scripts can conveniently define
+preprocessor symbols based on this list in order to conditionally
+compile code. For instance, if
+GD_PNG is not reported by --features, then gdImagePng is not
+included in the library.
+<p>
+Thanks to Lars Hecking and Lincoln Stein for their advice on
+implementing this feature. Any blame for the actual implementation
+is entirely due to me (TBB).
+<li>Fixes to the behavior of the bounding rectangle returned by
+gdImageStringFT and relatives when the string is rotated.
+See fontwheeltest.c. Thanks to John Ellson.
+<li>Previously, gdImageStringFT and friends accepted either 
+a full path to a font file, or the name of a font with no
+extension, in which case the GDFONTPATH environment variable
+and then the compiled-in DEFAULT_FONTPATH was searched. In addition,
+a font filename with an extension but no full path can now be
+automatically searched for in the same fashion. Thanks to John Ellson.
+
+<li>Fixes to freetype antialiased text against a transparent 
+background. See testtr.c. Thanks to John Ellson.
+
+<li>Support for named entities like &amp;amp; and hex-coded 
+entities such as &amp;#x6C34; in text 
+strings passed to gdImageStringFT and relatives, adding to the 
+previous support for decimal-coded entities like &amp;#197;. 
+These were extracted from entities.html (from the W3C) via
+the script entities.tcl, which is included for the curious and
+those with other entities they need support for.  Thanks to John Ellson.
+
+<li>Optimization: gdImageSetPixel no longer calls gdImageAlphaBlend 
+when either the source or the destination pixel is 100% transparent. 
+Thanks to John Ellson.
+
+<li>Optimization: gdImageLine is potentially faster now in the most 
+common cases.
+Thanks to John Ellson.
+<li>Documentation of the entities feature of gdImageStringFT.
+<li>autoconf/configure fixes. Thanks to many who pointed out an oversight
+in handling libpng flags.
+</ul>
+<P>
 <A NAME="whatsnew2.0.25"><H3>What's new in version 2.0.25?</H3></A>
 <P>
 Owing to an oversight while making changes to better accommodate the use
 </ul>
 <h4>Source Code:</h4>
 <ul>
-<li><a href="http://www.boutell.com/gd/http/gd-2.0.25.tar.gz">Gzipped Tar File (Unix)</a>
-<li><a href="http://www.boutell.com/gd/http/gd-2.0.25.zip">.ZIP File of SOURCE CODE (Windows)</a>
+<li><a href="http://www.boutell.com/gd/http/gd-2.0.26.tar.gz">Gzipped Tar File (Unix)</a>
+<li><a href="http://www.boutell.com/gd/http/gd-2.0.26.zip">.ZIP File of SOURCE CODE (Windows)</a>
 </ul>
 <P>
 <A NAME="buildgd"><H3>How do I build gd?</H3></A>
 consult with an experienced user of your system. Sorry, we cannot
 answer questions about basic Internet skills.
 <p>
-Unpacking the archive will produce a directory called "gd-2.0.25".
+Unpacking the archive will produce a directory called "gd-2.0.26".
 <p>
 <h4>For Unix</h4>
-<code>cd</code> to the 2.0.25 directory and type:
+<code>cd</code> to the 2.0.26 directory and type:
 <p>
 <code>./configure</code>
 <P>
 you.</strong> The string is anti-aliased, meaning that there should be 
 fewer "jaggies" visible. The fontname is the full pathname to a TrueType 
 font file, or a font face name if the GDFONTPATH environment variable
-or FreeType's DEFAULT_FONTPATH variable have been set intelligently. 
+or the compiled-in DEFAULT_FONTPATH macro of gdft.c have been set intelligently. In the absence of a full path, the font face name may be presented with or without extension (2.0.26).
+<p>
+The null-terminated <b>string</b> argument is considered to be encoded via the UTF_8
+standard; also, HTML entities are supported, including decimal,
+hexadecimal, and named entities (2.0.26). Those who are passing 
+ordinary ASCII strings may have difficulty with the &amp; 
+character unless encoded correctly as &amp; but should have no 
+other difficulties.
+<p>
 The string may be arbitrarily scaled (ptsize) and rotated (angle in radians).
 The direction of rotation is counter-clockwise, with 0 radians (0 degrees)
 at 3 o'clock and PI/2 radians (90 degrees) at 12 o'clock. 
 <p>
 The user-supplied int brect[8] array is filled on return from gdImageStringFT
 with the 8 elements representing the 4 corner coordinates of the
-bounding rectangle.
+bounding rectangle (the smallest rectangle that completely surrounds the 
+rendered string and does not intersect any pixel of the rendered string).
+
 <TABLE BORDER="1">
 <TR><TD ALIGN="LEFT" VALIGN="TOP">0</TD><TD ALIGN="LEFT" VALIGN="TOP">
 lower left corner, X position</TD></TR>