summaryrefslogtreecommitdiff
path: root/Build/source/libs/gd/libgd-src/docs
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2016-02-16 01:04:51 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2016-02-16 01:04:51 +0000
commiteacd1b8f5c8024296c6fa4b19b3b99bd24de91a1 (patch)
treec0350d7eba85bcb5c01342bfef2f21d34b83c8bd /Build/source/libs/gd/libgd-src/docs
parent08bed0cad41932663940d45d7fcc96986c2cca3c (diff)
libs/gd: new convention
git-svn-id: svn://tug.org/texlive/trunk@39737 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/gd/libgd-src/docs')
-rw-r--r--Build/source/libs/gd/libgd-src/docs/INSTALL370
-rw-r--r--Build/source/libs/gd/libgd-src/docs/INSTALL.Solaris16
-rw-r--r--Build/source/libs/gd/libgd-src/docs/README.CMAKE39
-rw-r--r--Build/source/libs/gd/libgd-src/docs/README.JPN39
-rw-r--r--Build/source/libs/gd/libgd-src/docs/README.TESTING62
-rw-r--r--Build/source/libs/gd/libgd-src/docs/README.TXT61
-rw-r--r--Build/source/libs/gd/libgd-src/docs/naturaldocs/license.txt74
-rw-r--r--Build/source/libs/gd/libgd-src/docs/naturaldocs/nobgd.pl58
-rw-r--r--Build/source/libs/gd/libgd-src/docs/naturaldocs/preamble.txt95
-rw-r--r--Build/source/libs/gd/libgd-src/docs/naturaldocs/project/Languages.txt113
-rw-r--r--Build/source/libs/gd/libgd-src/docs/naturaldocs/project/Topics.txt81
-rwxr-xr-xBuild/source/libs/gd/libgd-src/docs/naturaldocs/run_docs.sh33
12 files changed, 1041 insertions, 0 deletions
diff --git a/Build/source/libs/gd/libgd-src/docs/INSTALL b/Build/source/libs/gd/libgd-src/docs/INSTALL
new file mode 100644
index 00000000000..a1e89e18ad2
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/docs/INSTALL
@@ -0,0 +1,370 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
+Inc.
+
+ Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved. This file is offered as-is,
+without warranty of any kind.
+
+Basic Installation
+==================
+
+ Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package. The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package. Some packages provide this
+`INSTALL' file but do not implement all of the features documented
+below. The lack of an optional feature in a given package is not
+necessarily a bug. More recommendations for GNU packages can be found
+in *note Makefile Conventions: (standards)Makefile Conventions.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
+
+ The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system.
+
+ Running `configure' might take a while. While running, it prints
+ some messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package, generally using the just-built uninstalled binaries.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation. When installing into a prefix owned by root, it is
+ recommended that the package be configured and built as a regular
+ user, and only the `make install' phase executed with root
+ privileges.
+
+ 5. Optionally, type `make installcheck' to repeat any self-tests, but
+ this time using the binaries in their final installed location.
+ This target does not install anything. Running this target as a
+ regular user, particularly if the prior `make install' required
+ root privileges, verifies that the installation completed
+ correctly.
+
+ 6. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+ 7. Often, you can also type `make uninstall' to remove the installed
+ files again. In practice, not all packages have tested that
+ uninstallation works correctly, even though it is required by the
+ GNU Coding Standards.
+
+ 8. Some packages, particularly those that use Automake, provide `make
+ distcheck', which can by used by developers to test that all other
+ targets like `make install' and `make uninstall' work correctly.
+ This target is generally not run by end users.
+
+Compilers and Options
+=====================
+
+ Some systems require unusual options for compilation or linking that
+the `configure' script does not know about. Run `./configure --help'
+for details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+ You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you can use GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'. This
+is known as a "VPATH" build.
+
+ With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory. After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
+
+ On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple `-arch' options to the
+compiler but only a single `-arch' option to the preprocessor. Like
+this:
+
+ ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CPP="gcc -E" CXXCPP="g++ -E"
+
+ This is not guaranteed to produce working output in all cases, you
+may have to build one architecture at a time and combine the results
+using the `lipo' tool if you have problems.
+
+Installation Names
+==================
+
+ By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX', where PREFIX must be an
+absolute file name.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them. In general, the
+default for these options is expressed in terms of `${prefix}', so that
+specifying just `--prefix' will affect all of the other directory
+specifications that were not explicitly provided.
+
+ The most portable way to affect installation locations is to pass the
+correct locations to `configure'; however, many packages provide one or
+both of the following shortcuts of passing variable assignments to the
+`make install' command line to change installation locations without
+having to reconfigure or recompile.
+
+ The first method involves providing an override variable for each
+affected directory. For example, `make install
+prefix=/alternate/directory' will choose an alternate location for all
+directory configuration variables that were expressed in terms of
+`${prefix}'. Any directories that were specified during `configure',
+but not in terms of `${prefix}', must each be overridden at install
+time for the entire installation to be relocated. The approach of
+makefile variable overrides for each directory variable is required by
+the GNU Coding Standards, and ideally causes no recompilation.
+However, some platforms have known limitations with the semantics of
+shared libraries that end up requiring recompilation when using this
+method, particularly noticeable in packages that use GNU Libtool.
+
+ The second method involves providing the `DESTDIR' variable. For
+example, `make install DESTDIR=/alternate/directory' will prepend
+`/alternate/directory' before all installation names. The approach of
+`DESTDIR' overrides is not required by the GNU Coding Standards, and
+does not work on platforms that have drive letters. On the other hand,
+it does better at avoiding recompilation issues, and works well even
+when some directory options were not specified in terms of `${prefix}'
+at `configure' time.
+
+Optional Features
+=================
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+ Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+ Some packages offer the ability to configure how verbose the
+execution of `make' will be. For these packages, running `./configure
+--enable-silent-rules' sets the default to minimal output, which can be
+overridden with `make V=1'; while running `./configure
+--disable-silent-rules' sets the default to verbose, which can be
+overridden with `make V=0'.
+
+Particular systems
+==================
+
+ On HP-UX, the default C compiler is not ANSI C compatible. If GNU
+CC is not installed, it is recommended to use the following options in
+order to use an ANSI C compiler:
+
+ ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+
+ HP-UX `make' updates targets which have the same time stamps as
+their prerequisites, which makes it generally unusable when shipped
+generated files such as `configure' are involved. Use GNU `make'
+instead.
+
+ On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its `<wchar.h>' header file. The option `-nodtk' can be used as
+a workaround. If GNU CC is not installed, it is therefore recommended
+to try
+
+ ./configure CC="cc"
+
+and if that doesn't work, try
+
+ ./configure CC="cc -nodtk"
+
+ On Solaris, don't put `/usr/ucb' early in your `PATH'. This
+directory contains several dysfunctional programs; working variants of
+these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
+in your `PATH', put it _after_ `/usr/bin'.
+
+ On Haiku, software installed for all users goes in `/boot/common',
+not `/usr/local'. It is recommended to use the following options:
+
+ ./configure --prefix=/boot/common
+
+Specifying the System Type
+==========================
+
+ There may be some features `configure' cannot figure out
+automatically, but needs to determine by the type of machine the package
+will run on. Usually, assuming the package is built to be run on the
+_same_ architectures, `configure' can figure that out, but if it prints
+a message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS
+ KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the option `--target=TYPE' to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+ If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+ Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script).
+
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug. Until the bug is fixed you can use this workaround:
+
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+`configure' Invocation
+======================
+
+ `configure' recognizes the following options to control how it
+operates.
+
+`--help'
+`-h'
+ Print a summary of all of the options to `configure', and exit.
+
+`--help=short'
+`--help=recursive'
+ Print a summary of the options unique to this package's
+ `configure', and exit. The `short' variant lists options used
+ only in the top level, while the `recursive' variant lists options
+ also present in any nested packages.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`--prefix=DIR'
+ Use DIR as the installation prefix. *note Installation Names::
+ for more details, including other options available for fine-tuning
+ the installation locations.
+
+`--no-create'
+`-n'
+ Run the configure checks, but stop before creating any output
+ files.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
diff --git a/Build/source/libs/gd/libgd-src/docs/INSTALL.Solaris b/Build/source/libs/gd/libgd-src/docs/INSTALL.Solaris
new file mode 100644
index 00000000000..d6b5bd1adac
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/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-src/docs/README.CMAKE b/Build/source/libs/gd/libgd-src/docs/README.CMAKE
new file mode 100644
index 00000000000..884f6b2bf1b
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/docs/README.CMAKE
@@ -0,0 +1,39 @@
+|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+$Id$
+Tobuild GD using CMake, all you need is (add the cmake options if you need any
+or if the default libs and include paths are not the default) :
+
+In a sub directory:
+$ mkdir bld
+$ cd bld
+$ cmake -DBUILD_TEST=1 <options>
+
+The available options are:
+ENABLE_PNG=1
+ENABLE_JPEG=1
+ENABLE_TIFF=1
+ENABLE_FREETYPE=1
+ENABLE_FONTCONFIG=1
+ENABLE_XPM=1
+
+You can optionnally run our tests suite using:
+$ ctest .
+
+Or if you like to build in the source tree:
+$ cmake -DBUILD_TEST=1 .
+$ ctest .
+
+Add "-DCMAKE_BUILD_TYPE=DEBUG" if you like to have a debug version.
+
+
+Typical usage with only PNG enabled:
+
+This command generates VS7 project files and add some custom libraries and includes directories (libpng in this case):
+
+cmake -DCMAKE_GENERATOR="Visual Studio 7 .NET 2003" -DENABLE_PNG=1 -DCMAKE_LIBRARY_PATH=c:\gd_build\gd_deps\lib -DCMAKE_INCLUDE_PATH=c:\gd_build\gd_deps\include c:\libgd_src
+
+A typical CMake call to build using the MinGW tools:
+
+cmake -G"MinGW Makefiles" -DCMAKE_LIBRARY_PATH=c:\mingw\lib -DCMAKE_INCLUDE_PATH=c:\MinGW\include -DENABLE_JPEG=On -DBUILD_TEST=On -DCMAKE_RELEASE_TYPE=DEBUG ..\libgd_head
+
+Given that your MinGW install is under c:\mingw and that you install all libraries using the /usr prefix
diff --git a/Build/source/libs/gd/libgd-src/docs/README.JPN b/Build/source/libs/gd/libgd-src/docs/README.JPN
new file mode 100644
index 00000000000..ed7a2a8285c
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/docs/README.JPN
@@ -0,0 +1,39 @@
+ gd $B%i%$%V%i%j$GF|K\8lJ8;zNs$r;H$&>e$G$NCm0U;v9`(B
+
+ $B;32l@5?M(B (ma@yama-ga.com)
+
+
+gd-1.7.0 $B$+$i$O$=$N$^$^$G(B gdImageStringTTF() $B$KBP$7$F(B
+SJIS encoding $B$N%U%)%s%H$,;HMQ$G$-$^$9!#(B
+
+ $B"((B Unicode encoding $B$N%U%)%s%H$KBP$7$F$OF|K\8lJ8;zNs$r(B UTF-8 $B$G(B
+ $B;XDj$9$l$PF|K\8l$,I=<($G$-$^$9!#(B
+
+$B$D$^$j(B gdImageStringTTF() $B$G(B SJIS encoding $B$N%U%)%s%H$r;XDj$9$k$H(B
+$BJ8;zNs$OL5>r7o$KF|K\8l$G$"$k$H2r<a$5$l!"4A;z%3!<%I(B (EUC, SJIS, 7bit JIS)
+$B$,<+F0H=JL$5$l$FE,@Z$K=hM}$5$l$^$9!#(B
+
+$B99$K(B UNICODE encoding $B$N%U%)%s%H$KBP$7$F$b(B JIS $B7O$NF|K\8l(B (EUC, SJIS, 7bit JIS)
+$B$r;HMQ$9$k>l9g$O!"%3%s%Q%$%k;~$K(B -DJISX0208 $B$rIU$1$F%3%s%Q%$%k$7$F$/$@$5$$!#(B
+$B$3$&$9$k$H(B gdImageStringTTF() $B$G;XDj$5$l$?J8;zNs$K(B ASCII $B0J30$NJ8;z$,$"$k$H(B
+$BL5>r7o$KF|K\8lJ8;zNs$G$"$k$H2r<a$5$l!"4A;z%3!<%I$r<+F0H=JL8e$K(B
+$BE,@Z$K=hM}$5$l$^$9!#(B
+
+$B$?$@$7$3$N>l9g$O(B UTF-8 $B$NF|K\8lJ8;zNs$r07$($J$/$J$j$^$9$N$G!"(B
+$B$4MxMQ$N4D6-Ey$K1~$8$F(B -DJISX0208 $B$rIU$1$k$+H]$+$r7h$a$F$/$@$5$$!#(B
+
+$B4A;z%3!<%I$NJQ49$K(B OS $BIUB0$N(B iconv() $B$r;H$&>l9g$O(B
+CFLAGS $B$K(B -DHAVE_ICONV $B$rIU$1$F%3%s%Q%$%k$7$F$/$@$5$$!#(B
+$B$3$N>l9g$K(B -DHAVE_STDARG_H $B$H(B -DHAVE_ERRNO_H $B$bIU$1$F$*$/$H(B
+$B4A;z%3!<%IJQ49$N:]$K%(%i!<$,H/@8$7$?>l9g$KE,@Z$J%a%C%;!<%8$r(B
+$BI=<($9$k$h$&$K$J$j$^$9!#(B
+
+
+$B!y(B EUC $B$+(B SJIS $B$+H=JL$G$-$J$+$C$?>l9g$N4A;z%3!<%I$NH=JLJ}K!(B
+
+ (1) $B4D6-JQ?t(B LC_ALL, LC_CTYPE, LANG $B$r$3$N=gHV$G%A%'%C%/$9$k(B
+ (2) $B4D6-JQ?t$+$i$bH=JL$G$-$J$+$C$?>l9g$O(B UNIX $B$J$i$P(B EUC$B!"(B
+ Win32 $B$J$i$P(B SJIS $B$H8+$J$9(B
+
+$B%3%s%Q%$%k;~$K(B -DSJISPRE $B$rIU$1$F%3%s%Q%$%k$9$l$P!"(BUNIX $B$G$"$C$F$b(B
+SJIS $B$rM%@h$9$k$h$&$K$J$j$^$9!#(B
diff --git a/Build/source/libs/gd/libgd-src/docs/README.TESTING b/Build/source/libs/gd/libgd-src/docs/README.TESTING
new file mode 100644
index 00000000000..506ea4249ea
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/docs/README.TESTING
@@ -0,0 +1,62 @@
+|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+To run the tests suite, all you need is (add the cmake options if you need any
+or if the default libs and include paths are not the default) :
+
+In a sub directory:
+$ mkdir bld
+$ cd bld
+$ cmake -DBUILD_TEST=1 ..
+$ ctest .
+
+Or if you like to build in the source tree:
+$ cmake -DBUILD_TEST=1 .
+$ ctest .
+
+Add "-DCMAKE_BUILD_TYPE=DEBUG" if you like to have a debug version.
+
+If you like to run the tests against a installed GD library, set the following
+environment variables:
+
+export CMAKE_INCLUDE_PATH=/path/to/the/gd/include
+export CMAKE_LIBRARY_PATH=/path/to/the/gd/lib
+
+then call cmake using:
+
+$ cmake -DUSE_EXT_GD=1 -DBUILD_TEST=1
+$ make
+and finally:
+
+$ ctest .
+
+I will certainly add a nice CMake option to give prefix later.
+
+What to do if tests fail on your platform and you use the last GD release?
+either from your favourite distributions or from http://www.libgd.org or git?
+
+If you use a packaged version of the GD Library (installed from RPM, deb or
+ports, gentoo packages or any other packages format or distribution), please try
+to run the tests using the source releases available at:
+
+http://www.libgd.org/Downloads
+
+If the tests fail using our source release, please report a bug here:
+
+http://bugs.libgd.org
+
+You can attach the two files available in:
+
+./Testing/Temporary
+
+Later versions will have an automatic post mode.
+
+If the tests run successfully, please report a bug to the maintainer of the
+packages (debian, bsd, ubuntu or whoever is responsible for the packages).
+
+Reasons of failures:
+Exception: SegFault: self explaining
+Failed test failed, check the log to know where
+timeout the default timeout is 5 seconds. Some test may
+ have infinite loops when compiled against old versions
+ of the GD library (esp. 2.0.33 or earlier)
+
diff --git a/Build/source/libs/gd/libgd-src/docs/README.TXT b/Build/source/libs/gd/libgd-src/docs/README.TXT
new file mode 100644
index 00000000000..39725dd62c1
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/docs/README.TXT
@@ -0,0 +1,61 @@
+For documentation, browse index.html.
+
+Quick install guide:
+
+If the sources have been fetched from git, run bootstrap.sh [options].
+
+From a released source, use:
+1. Type './configure'
+2. Type 'make install'
+
+Generic configuration instructions are in the file INSTALL.
+
+The following 3rd-party libraries will be used by gd if found by configure.
+While gd will compile and install even without these, we suggest that at
+least zlib and libpng are installed, and recommend that freetype and jpeg
+are installed as well:
+
+1. zlib, available from http://www.gzip.org/zlib/
+ Data compression library
+
+2. libpng, available from http://www.libpng.org/pub/png/
+ Portable Network Graphics library; requires zlib
+
+3. FreeType 2.x, available from http://www.freetype.org/
+ Free, high-quality, and portable font engine
+
+4. JPEG library, available from http://www.ijg.org/
+ Portable JPEG compression/decompression library
+
+5. XPM, available from http://koala.ilog.fr/lehors/xpm.html
+ X Pixmap library
+
+If any of these libraries are installed, but not detected by configure,
+you can use the following command line options:
+
+--with-png=DIR
+
+ Without the DIR argument, configure will check for png header files and
+ libraries in a default location. To switch off png support, use
+ --without-png, or --with-png=no.
+
+ If the DIR argument is specified, configure tries to find the png header
+ files in DIR/include, and the libraries in DIR/lib. To accommodate
+ OpenBSD ports, DIR/include/libpng is also checked if necessary.
+
+--with-freetype=DIR
+
+ Dto. for freetype 2.x library. The search path for include files is
+ DIR/include/freetype2.
+
+--with-jpeg=DIR
+
+ Dto. for jpeg library.
+
+--with-xpm=DIR
+
+ Dto. for xpm library.
+
+ --with-tiff=DIR
+
+Dto. for TIFF library.
diff --git a/Build/source/libs/gd/libgd-src/docs/naturaldocs/license.txt b/Build/source/libs/gd/libgd-src/docs/naturaldocs/license.txt
new file mode 100644
index 00000000000..4164bce4bc7
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/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-src/docs/naturaldocs/nobgd.pl b/Build/source/libs/gd/libgd-src/docs/naturaldocs/nobgd.pl
new file mode 100644
index 00000000000..bcccabe8929
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/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-src/docs/naturaldocs/preamble.txt b/Build/source/libs/gd/libgd-src/docs/naturaldocs/preamble.txt
new file mode 100644
index 00000000000..ca2e43f9db1
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/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-src/docs/naturaldocs/project/Languages.txt b/Build/source/libs/gd/libgd-src/docs/naturaldocs/project/Languages.txt
new file mode 100644
index 00000000000..85d5fde477b
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/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-src/docs/naturaldocs/project/Topics.txt b/Build/source/libs/gd/libgd-src/docs/naturaldocs/project/Topics.txt
new file mode 100644
index 00000000000..21530908d76
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/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-src/docs/naturaldocs/run_docs.sh b/Build/source/libs/gd/libgd-src/docs/naturaldocs/run_docs.sh
new file mode 100755
index 00000000000..dfe1e62ebf8
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/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
+
+