summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/libmng/makefiles
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-08 12:31:36 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-08 12:31:36 -0600
commitd796c9dd933ab96ec83b9a634feedd5d32e1ba3f (patch)
tree6e3dcca4f77e20ec8966c666aac7c35bd4704053 /src/3rdparty/libmng/makefiles
downloadtqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.tar.gz
tqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.zip
Test conversion to TQt3 from Qt3 8c6fc1f8e35fd264dd01c582ca5e7549b32ab731
Diffstat (limited to 'src/3rdparty/libmng/makefiles')
-rw-r--r--src/3rdparty/libmng/makefiles/Makefile.am27
-rw-r--r--src/3rdparty/libmng/makefiles/README25
-rw-r--r--src/3rdparty/libmng/makefiles/acinclude.m474
-rw-r--r--src/3rdparty/libmng/makefiles/configure.in177
-rw-r--r--src/3rdparty/libmng/makefiles/makefile.bcb3105
-rw-r--r--src/3rdparty/libmng/makefiles/makefile.dj151
-rw-r--r--src/3rdparty/libmng/makefiles/makefile.linux176
-rw-r--r--src/3rdparty/libmng/makefiles/makefile.mingw160
-rw-r--r--src/3rdparty/libmng/makefiles/makefile.unix66
-rw-r--r--src/3rdparty/libmng/makefiles/makefile.vcwin3296
10 files changed, 1057 insertions, 0 deletions
diff --git a/src/3rdparty/libmng/makefiles/Makefile.am b/src/3rdparty/libmng/makefiles/Makefile.am
new file mode 100644
index 000000000..2bdd30c1d
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/Makefile.am
@@ -0,0 +1,27 @@
+## Process this file with automake to produce Makefile.in
+
+AUTOMAKE_OPTIONS = 1.3 foreign no-dependencies
+
+# include the app subdirectories in the distribution
+EXTRA_DIST = makefiles doc contrib Unix
+
+
+# libmng release @VERSION@
+libmng_la_LDFLAGS = -version-info 1:0:0
+
+lib_LTLIBRARIES = libmng.la
+
+include_HEADERS = libmng.h libmng_conf.h libmng_types.h
+noinst_HEADERS = libmng_chunk_io.h libmng_chunk_prc.h libmng_chunks.h \
+ libmng_cms.h libmng_data.h libmng_display.h libmng_dither.h \
+ libmng_error.h libmng_filter.h libmng_jpeg.h libmng_memory.h \
+ libmng_object_prc.h libmng_objects.h libmng_pixels.h \
+ libmng_read.h libmng_trace.h libmng_write.h libmng_zlib.h
+
+libmng_la_SOURCES = libmng_callback_xs.c libmng_chunk_io.c \
+ libmng_chunk_prc.c libmng_chunk_xs.c libmng_cms.c \
+ libmng_display.c libmng_dither.c libmng_error.c \
+ libmng_filter.c libmng_hlapi.c libmng_jpeg.c \
+ libmng_object_prc.c libmng_pixels.c libmng_prop_xs.c \
+ libmng_read.c libmng_trace.c libmng_write.c libmng_zlib.c
+
diff --git a/src/3rdparty/libmng/makefiles/README b/src/3rdparty/libmng/makefiles/README
new file mode 100644
index 000000000..366100293
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/README
@@ -0,0 +1,25 @@
+For conditions of distribution and use, see copyright notice in libmng.h
+or the file LICENSE in the top-level directory of the source distribution.
+
+This directory hosts the makefiles for all currently supported platforms.
+
+If you're using a system with POSIX shell capabilities, you can use the
+'configure' script in the top-level directory, or generate it by running
+'autogen.sh' if you have the necessary tools installed.
+
+Otherwise, copy the module for your environment (or the closest thing)
+into the libmng source-directory and change it to your needs. If you
+create a new file for a platform not on the list send it to me (gerard @
+libmng.com) and I'll be happy to include it in the next release!
+
+
+Current files:
+
+makefile.bcb3 - Borland C++ Builder
+makefile.vcwin32 - Microsoft Visual C++
+makefile.unix - generic Unix
+makefile.linux - Linux ELF (builds shared library)
+makefile.mingw - builds a static library for mingw32
+
+
+Makefile.am, aclocal.m4 and configure.in - automake/autoconf source
diff --git a/src/3rdparty/libmng/makefiles/acinclude.m4 b/src/3rdparty/libmng/makefiles/acinclude.m4
new file mode 100644
index 000000000..60506df31
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/acinclude.m4
@@ -0,0 +1,74 @@
+#serial 12
+
+dnl By default, many hosts won't let programs access large files;
+dnl one must use special compiler options to get large-file access to work.
+dnl For more details about this brain damage please see:
+dnl http://www.sas.com/standards/large.file/x_open.20Mar96.html
+
+dnl Written by Paul Eggert <eggert@twinsun.com>.
+
+dnl Internal subroutine of AC_SYS_LARGEFILE.
+dnl AC_SYS_LARGEFILE_TEST_INCLUDES
+AC_DEFUN(AC_SYS_LARGEFILE_TEST_INCLUDES,
+ [[#include <sys/types.h>
+ int a[(off_t) 9223372036854775807 == 9223372036854775807 ? 1 : -1];
+ ]])
+
+dnl Internal subroutine of AC_SYS_LARGEFILE.
+dnl AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE, CACHE-VAR, COMMENT, INCLUDES, FUNCTION-BODY)
+AC_DEFUN(AC_SYS_LARGEFILE_MACRO_VALUE,
+ [AC_CACHE_CHECK([for $1 value needed for large files], $3,
+ [$3=no
+ AC_TRY_COMPILE(AC_SYS_LARGEFILE_TEST_INCLUDES
+$5
+ ,
+ [$6],
+ ,
+ [AC_TRY_COMPILE([#define $1 $2]
+AC_SYS_LARGEFILE_TEST_INCLUDES
+$5
+ ,
+ [$6],
+ [$3=$2])])])
+ if test "[$]$3" != no; then
+ AC_DEFINE_UNQUOTED([$1], [$]$3, [$4])
+ fi])
+
+AC_DEFUN(AC_SYS_LARGEFILE,
+ [AC_ARG_ENABLE(largefile,
+ [ --disable-largefile omit support for large files])
+ if test "$enable_largefile" != no; then
+
+ AC_CACHE_CHECK([for special C compiler options needed for large files],
+ ac_cv_sys_largefile_CC,
+ [ac_cv_sys_largefile_CC=no
+ if test "$GCC" != yes; then
+ # IRIX 6.2 and later do not support large files by default,
+ # so use the C compiler's -n32 option if that helps.
+ AC_TRY_COMPILE(AC_SYS_LARGEFILE_TEST_INCLUDES, , ,
+ [ac_save_CC="$CC"
+ CC="$CC -n32"
+ AC_TRY_COMPILE(AC_SYS_LARGEFILE_TEST_INCLUDES, ,
+ ac_cv_sys_largefile_CC=' -n32')
+ CC="$ac_save_CC"])
+ fi])
+ if test "$ac_cv_sys_largefile_CC" != no; then
+ CC="$CC$ac_cv_sys_largefile_CC"
+ fi
+
+ AC_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS, 64,
+ ac_cv_sys_file_offset_bits,
+ [Number of bits in a file offset, on hosts where this is settable.])
+ AC_SYS_LARGEFILE_MACRO_VALUE(_LARGEFILE_SOURCE, 1,
+ ac_cv_sys_largefile_source,
+ [Define to make ftello visible on some hosts (e.g. HP-UX 10.20).],
+ [#include <stdio.h>], [return !ftello;])
+ AC_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES, 1,
+ ac_cv_sys_large_files,
+ [Define for large files, on AIX-style hosts.])
+ AC_SYS_LARGEFILE_MACRO_VALUE(_XOPEN_SOURCE, 500,
+ ac_cv_sys_xopen_source,
+ [Define to make ftello visible on some hosts (e.g. glibc 2.1.3).],
+ [#include <stdio.h>], [return !ftello;])
+ fi
+ ])
diff --git a/src/3rdparty/libmng/makefiles/configure.in b/src/3rdparty/libmng/makefiles/configure.in
new file mode 100644
index 000000000..4b0c85c3b
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/configure.in
@@ -0,0 +1,177 @@
+dnl Process this file with autoconf to produce a configure script.
+
+AC_INIT(libmng.h)
+
+dnl this call will define PACKAGE and VERSION
+dnl please use this as the primary reference for the version number
+AM_INIT_AUTOMAKE(libmng, 1.0.4)
+
+dnl pass the version string on the the makefiles
+AC_SUBST(PACKAGE)
+AC_SUBST(VERSION)
+
+dnl Checks for programs.
+AC_PROG_CC
+AC_ISC_POSIX
+AM_C_PROTOTYPES
+if test "x$U" != "x"; then
+ AC_MSG_ERROR(Compiler not ANSI compliant)
+fi
+AM_PROG_LIBTOOL
+AC_PROG_INSTALL
+
+dnl support for files >2GB
+AC_SYS_LARGEFILE
+
+dnl Check for retquired header files
+AC_HEADER_STDC
+
+dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+
+dnl need pow and fabs
+AC_CHECK_FUNC(pow, , AC_CHECK_LIB(m, pow, LIBS="$LIBS -lm"))
+
+
+dnl what functionality we want to add (read, write, display).
+dnl all on by default. see libmng_conf.h for full descriptions
+
+dnl we only support the full mng spec for not (no LC or VLC)
+AC_DEFINE(MNG_SUPPORT_FULL)
+
+dnl remove support in library to read images?
+AC_ARG_ENABLE(read,
+[ --disable-read remove read support from library])
+if test "x$enable_read" != "xno"; then
+ AC_DEFINE(MNG_SUPPORT_READ)
+fi
+
+dnl remove support in library to write images?
+AC_ARG_ENABLE(write,
+[ --disable-write remove write support from library])
+if test "x$enable_write" != "xno"; then
+ AC_DEFINE(MNG_SUPPORT_WRITE)
+fi
+
+dnl remove support in library to display images?
+AC_ARG_ENABLE(display,
+[ --disable-display remove display support from library])
+if test "x$enable_display" != "xno"; then
+ AC_DEFINE(MNG_SUPPORT_DISPLAY)
+fi
+
+dnl remove support in library to access chunks?
+AC_ARG_ENABLE(chunks,
+[ --disable-chunks remove support for chunk access])
+if test "x$enable_chunks" != "xno"; then
+ AC_DEFINE(MNG_ACCESS_CHUNKS)
+fi
+
+dnl disable support for accessing chunks that have been previously read?
+AC_ARG_ENABLE(storechunks,
+[ --disable-storechunks remove support for access of previous chunks],[
+if test "x$enable_storechunks" != "xno"; then
+ AC_DEFINE(MNG_STORE_CHUNKS)
+fi
+])
+
+dnl enable support for debug tracing callbacks and messages?
+AC_ARG_ENABLE(trace,
+[ --enable-trace include support for debug tracing callbacks],[
+if test "x$enable_trace" = "xyes"; then
+ AC_DEFINE(MNG_SUPPORT_TRACE)
+ AC_DEFINE(MNG_TRACE_TELLTALE)
+fi
+])
+
+dnl verbose error text
+dnl this should always be on
+AC_DEFINE(MNG_ERROR_TELLTALE)
+
+
+dnl libz is retquired.
+AC_ARG_WITH(zlib,
+[ --with-zlib[=DIR] use zlib include/library files in DIR],[
+ if test -d "$withval"; then
+ CPPFLAGS="$CPPFLAGS -I$withval/include"
+ LDFLAGS="$LDFLAGS -L$withval/lib"
+ fi
+])
+AC_CHECK_HEADER(zlib.h,
+ AC_CHECK_LIB(z, gzread, , AC_MSG_ERROR(zlib library not found)),
+ AC_MSG_ERROR(zlib header not found)
+)
+
+dnl check for jpeg library
+AC_ARG_WITH(jpeg,
+[ --with-jpeg[=DIR] use jpeg include/library files in DIR],
+[with_jpeg=$withval],[with_jpeg=_auto])
+
+ if test "x$with_jpeg" != "xno" -a "x$with_jpeg" != "xyes" -a \
+ "x$with_jpeg" != "x_auto"; then
+ # Save in case test with directory specified fails
+ _cppflags=${CPPFLAGS}
+ _ldflags=${LDFLAGS}
+ _restore=1
+
+ CPPFLAGS="${CPPFLAGS} -I$withval/include"
+ LDFLAGS="${LDFLAGS} -L$withval/lib"
+ else
+ _restore=0
+ fi
+
+ if test "x$with_jpeg" != "xno"; then
+ AC_CHECK_HEADER(jpeglib.h,
+ AC_CHECK_LIB(jpeg, jpeg_read_header, [
+ LIBS="$LIBS -ljpeg"
+ AC_DEFINE(HAVE_LIBJPEG)
+ _restore=0
+ ],
+ AC_MSG_WARN(jpeg library not found)),
+ AC_MSG_WARN(jpeg header not found)
+ )
+ fi
+
+ test $_restore -eq 1 && CPPFLAGS=$_cppflags LDFLAGS=$_ldflags
+
+dnl check for lcms library
+AC_ARG_WITH(lcms,
+[ --with-lcms[=DIR] use lcms include/library files in DIR],
+[with_lcms=$withval],[with_lcms=_auto])
+
+ if test "x$with_lcms" != "xno" -a "x$with_lcms" != "xyes" -a \
+ "x$with_lcms" != "x_auto"; then
+ # Save in case test with directory specified fails
+ _cppflags=$CPPFLAGS
+ _ldflags=$LDFLAGS
+ _restore=1
+
+ CPPFLAGS="$CPPFLAGS -I$withval/include"
+ LDFLAGS="$LDFLAGS -L$withval/lib"
+ else
+ _restore=0
+ fi
+
+ if test "x$with_lcms" != "xno"; then
+ AC_CHECK_HEADER(lcms.h, [
+ have_lcms=yes
+ AC_CHECK_LIB(lcms, cmsCreateRGBProfile, [
+ LIBS="$LIBS -llcms"
+ AC_DEFINE(HAVE_LIBLCMS)
+ dnl for now this implies MNG_INCLUDE_LCMS in the headers:
+ AC_DEFINE(MNG_FULL_CMS)
+ _restore=0
+ have_lcms=yes
+ ],[
+ have_lcms=no
+ ])
+ ])
+ dnl give feedback only if the user asked specifically for lcms
+ if test "x$with_lcms" != "x_auto" -a "x$have_lcms" != "xyes"; then
+ AC_MSG_WARN([lcms not found... disabling CMS support])
+ fi
+ fi
+
+ test $_restore -eq 1 && CPPFLAGS=$_cppflags LDFLAGS=$_ldflags
+
+AC_OUTPUT(Makefile)
diff --git a/src/3rdparty/libmng/makefiles/makefile.bcb3 b/src/3rdparty/libmng/makefiles/makefile.bcb3
new file mode 100644
index 000000000..5c4e43477
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/makefile.bcb3
@@ -0,0 +1,105 @@
+#
+# For conditions of distribution and use, see copyright notice in libmng.h
+#
+# makefile for libmng - THE MNG library
+# this makefile is suitable for Borland C++ Builder.
+# it works (at least) with Borland C++ Builder v3
+
+# Configuration options are now in mng_conf.h
+# this option forces dll compatibility
+MNGOPT = -DMNG_BUILD_DLL
+
+# The name of your C compiler:
+CC= bcc32
+
+# compiler options:
+CFLAGS= -WD -O2 -Hc -w-par -k -y -v -vi -c -tWD \
+ -wuse -wucp -wstv -wstu -wsig -wpin -wnod -wnak -wdef -wcln -wbbf -wasm -wamp \
+ -wamb -Tkh30000 -ff -5 -I.;..\zlib;..\jpgsrc6b;..\lcms\include $(MNGOPT)
+
+# source files
+SOURCES= libmng_hlapi.c libmng_callback_xs.c libmng_prop_xs.c libmng_chunk_xs.c \
+ libmng_read.c libmng_write.c libmng_display.c \
+ libmng_object_prc.c libmng_chunk_prc.c libmng_chunk_io.c libmng_error.c \
+ libmng_trace.c libmng_pixels.c libmng_filter.c libmng_dither.c \
+ libmng_zlib.c libmng_jpeg.c libmng_cms.c
+
+# object files
+OBJECTS= libmng_hlapi.obj libmng_callback_xs.obj libmng_prop_xs.obj libmng_chunk_xs.obj \
+ libmng_read.obj libmng_write.obj libmng_display.obj \
+ libmng_object_prc.obj libmng_chunk_prc.obj libmng_chunk_io.obj libmng_error.obj \
+ libmng_trace.obj libmng_pixels.obj libmng_filter.obj libmng_dither.obj \
+ libmng_zlib.obj libmng_jpeg.obj libmng_cms.obj
+
+# type dependancies
+.c.obj:
+ $(CC) $(CFLAGS) -c{ $<}
+
+# make options
+all: libmng.lib
+
+clean:
+ - del *.obj
+ - del libmng.lib
+
+# file dependancies
+libmng.lib: $(OBJECTS)
+ - del libmng.lib
+ tlib libmng.lib /E /C @&&|
++libmng_hlapi.obj +libmng_callback_xs.obj +libmng_prop_xs.obj +libmng_chunk_xs.obj &
++libmng_read.obj +libmng_write.obj +libmng_display.obj &
++libmng_object_prc.obj +libmng_chunk_prc.obj +libmng_chunk_io.obj +libmng_error.obj &
++libmng_trace.obj +libmng_pixels.obj +libmng_filter.obj +libmng_dither.obj &
++libmng_zlib.obj +libmng_jpeg.obj +libmng_cms.obj
+|
+
+libmng_hlapi.obj: libmng_hlapi.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_memory.h libmng_error.h libmng_trace.h libmng_read.h \
+ libmng_write.h libmng_display.h libmng_zlib.h libmng_cms.h libmng_zlib.h
+libmng_callback_xs.obj: libmng_callback_xs.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_prop_xs.obj: libmng_prop_xs.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_cms.h
+libmng_chunk_xs.obj: libmng_chunk_xs.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_chunks.h libmng_chunk_prc.h libmng_error.h libmng_trace.h
+libmng_read.obj: libmng_read.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_chunk_prc.h libmng_chunk_io.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_read.h libmng_display.h
+libmng_write.obj: libmng_write.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_write.h
+libmng_display.obj: libmng_display.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_zlib.h libmng_cms.h \
+ libmng_pixels.h libmng_display.h
+libmng_object_prc.obj: libmng_object_prc.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_display.h libmng_pixels.h
+libmng_chunk_prc.obj: libmng_chunk_prc.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_chunks.h libmng_chunk_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h
+libmng_chunk_io.obj: libmng_chunk_io.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h libmng_chunks.h \
+ libmng_chunk_io.h libmng_chunk_prc libmng_memory.h libmng_error.h \
+ libmng_trace.h libmng_display.h libmng_zlib.h libmng_pixels.h
+libmng_error.obj: libmng_error.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_trace.obj: libmng_trace.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_pixels.obj: libmng_pixels.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_memory.h libmng_error.h libmng_trace.h \
+ libmng_cms.h libmng_filter.h libmng_pixels.h
+libmng_filter.obj: libmng_filter.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_filter.h
+libmng_dither.obj: libmng_dither.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_dither.h
+libmng_zlib.obj: libmng_zlib.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h \
+ libmng_filter.h libmng_zlib.h
+libmng_jpeg.obj: libmng_jpeg.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h \
+ libmng_pixels.h libmng_jpeg.h
+libmng_cms.obj: libmng_cms.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_error.h libmng_trace.h libmng_cms.h
+
diff --git a/src/3rdparty/libmng/makefiles/makefile.dj b/src/3rdparty/libmng/makefiles/makefile.dj
new file mode 100644
index 000000000..b50c886c7
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/makefile.dj
@@ -0,0 +1,151 @@
+#
+# For conditions of distribution and use, see copyright notice in libmng.h
+#
+# makefile for libmng - THE MNG library
+# This makefile have been tested on DJGPP v2
+# (Based on makefile.linux since both are GNU compilers)
+#
+# By Silvio Fonseca - gissi@sti.com.br
+
+#compiler
+CC=gcc
+
+#default build options
+OPTIONS=
+
+#DJGPP directory
+prefix=C:/DJGPP
+installprefix=C:\DJGPP
+
+#ZLIB Library and includes
+ZLIBLIB=$(prefix)/lib
+#ZLIBLIB=../zlib
+ZLIBINC=$(prefix)/include
+#ZLIBINC=../zlib
+
+#Jpeg library and includes
+JPEGLIB=$(prefix)/lib
+#JPEGLIB=../jpgsrc
+JPEGINC=$(prefix)/include
+#JPEGINC=../jpgsrc
+
+#Lcms library and includes
+LCMSLIB=$(prefix)/lib
+#LCMSLIB=../lcms
+LCMSINC=$(prefix)/include
+#LCMSINC=../lcms
+
+ALIGN=
+# for i386:
+#ALIGN=-malign-loops=2 -malign-functions=2
+
+WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
+ -Wmissing-declarations -Wtraditional -Wcast-align \
+ -Wstrict-prototypes -Wmissing-prototypes #-Wconversion
+
+CFLAGS=-I$(ZLIBINC) -I$(JPEGINC) -I$(LCMSINC) -Wall -O3 -funroll-loops \
+ $(OPTIONS) $(ALIGN) # $(WARNMORE) -g
+LDFLAGS=-L. -Wl,-rpath,. \
+ -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) \
+ -L$(JPEGLIB) -Wl,-rpath,$(JPEGLIB) \
+ -L$(LCMSLIB) -Wl,-rpath,$(LCMSLIB) \
+ -lmng -lz -ljpeg -llcms -lm
+INCPATH=$(prefix)/include
+LIBPATH=$(prefix)/lib
+
+OBJS = \
+ libmng_callback_xs.o \
+ libmng_chunk_io.o \
+ libmng_chunk_prc.o \
+ libmng_chunk_xs.o \
+ libmng_cms.o \
+ libmng_display.o \
+ libmng_dither.o \
+ libmng_error.o \
+ libmng_filter.o \
+ libmng_hlapi.o \
+ libmng_jpeg.o \
+ libmng_object_prc.o \
+ libmng_pixels.o \
+ libmng_prop_xs.o \
+ libmng_read.o \
+ libmng_trace.o \
+ libmng_write.o \
+ libmng_zlib.o
+
+OBJSDLL = $(OBJS:.0=.pic.o)
+
+.SUFFIXES: .c .o .pic.o
+
+.c.pic.o:
+ $(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
+
+all: libmng.a
+
+libmng.a: $(OBJS)
+ ar rc $@ $(OBJS)
+ ranlib $@
+
+install: libmng.a
+ -@md $(installprefix)\include $(installprefix)\lib
+ copy libmng.h $(installprefix)\include
+ copy libmng_conf.h $(installprefix)\include
+ copy libmng_types.h $(installprefix)\include
+ copy libmng.a $(installprefix)\lib
+
+clean:
+ del *.o
+ del libmng.a
+
+# DO NOT DELETE THIS LINE -- make depend depends on it.
+
+libmng_hlapi.o libmng_hlapi.pic.o: libmng_hlapi.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_memory.h libmng_error.h libmng_trace.h libmng_read.h \
+ libmng_write.h libmng_display.h libmng_zlib.h libmng_cms.h libmng_zlib.h
+libmng_callback_xs.o libmng_callback_xs.pic.o: libmng_callback_xs.c libmng.h \
+ libmng_conf.h libmng_types.h libmng_data.h libmng_error.h libmng_trace.h
+libmng_prop_xs.o libmng_prop_xs.pic.o: libmng_prop_xs.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_error.h libmng_trace.h libmng_cms.h
+libmng_chunk_xs.o libmng_chunk_xs.pic.o: libmng_chunk_xs.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h \
+ libmng_error.h libmng_trace.h
+libmng_read.o libmng_read.pic.o: libmng_read.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_chunk_prc.h libmng_chunk_io.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_read.h libmng_display.h
+libmng_write.o libmng_write.pic.o: libmng_write.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_write.h
+libmng_display.o libmng_display.pic.o: libmng_display.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_zlib.h libmng_cms.h libmng_pixels.h \
+ libmng_display.h
+libmng_object_prc.o libmng_object_prc.pic.o: libmng_object_prc.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_display.h libmng_pixels.h
+libmng_chunk_prc.o libmng_chunk_prc.pic.o: libmng_chunk_prc.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h
+libmng_chunk_io.o libmng_chunk_io.pic.o: libmng_chunk_io.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_chunk_io.h libmng_chunk_prc.h libmng_memory.h libmng_error.h \
+ libmng_trace.h libmng_display.h libmng_zlib.h libmng_pixels.h
+libmng_error.o libmng_error.pic.o: libmng_error.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_trace.o libmng_trace.pic.o: libmng_trace.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_pixels.o libmng_pixels.pic.o: libmng_pixels.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_memory.h libmng_error.h libmng_trace.h \
+ libmng_cms.h libmng_filter.h libmng_pixels.h
+libmng_filter.o libmng_filter.pic.o: libmng_filter.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_filter.h
+libmng_dither.o libmng_dither.pic.o: libmng_dither.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_dither.h
+libmng_zlib.o libmng_zlib.pic.o: libmng_zlib.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h \
+ libmng_filter.h libmng_zlib.h
+libmng_jpeg.o libmng_jpeg.pic.o: libmng_jpeg.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h libmng_jpeg.h
+libmng_cms.o libmng_cms.pic.o: libmng_cms.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_error.h libmng_trace.h libmng_cms.h
+
diff --git a/src/3rdparty/libmng/makefiles/makefile.linux b/src/3rdparty/libmng/makefiles/makefile.linux
new file mode 100644
index 000000000..ddaeb39a3
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/makefile.linux
@@ -0,0 +1,176 @@
+#
+# For conditions of distribution and use, see copyright notice in libmng.h
+#
+# makefile for libmng - THE MNG library
+# this makefile is suitable for Linux ELF with gcc
+#
+# (this file is heavily copied from makefile.linux in the libpng package)
+
+# compiler
+CC=gcc
+
+# default build options (this forces shared library compatibility!!)
+#OPTIONS = -DMNG_BUILD_SO
+OPTIONS = -DMNG_BUILD_SO -DMNG_FULL_CMS
+
+# where "make install" puts libmng.a,libmng.so*,libmng.h,libmng_conf.h,libmng_types.h
+prefix=/usr/local
+
+# Where the zlib library and include files are located
+#ZLIBLIB=../zlib
+#ZLIBINC=../zlib
+ZLIBLIB=/usr/local/lib
+ZLIBINC=/usr/local/include
+
+# Where the jpeg library and include files are located
+#JPEGLIB=../jpgsrc
+#JPEGINC=../jpgsrc
+JPEGLIB=/usr/local/lib
+JPEGINC=/usr/local/include
+
+# Where the lcms library and include files are located
+#LCMSLIB=../lcms/lib
+#LCMSINC=../lcms/source
+LCMSLIB=/usr/local/lib
+LCMSINC=/usr/local/include
+
+ALIGN=
+# for i386:
+#ALIGN=-malign-loops=2 -malign-functions=2
+
+WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
+ -Wmissing-declarations -Wtraditional -Wcast-align \
+ -Wstrict-prototypes -Wmissing-prototypes #-Wconversion
+
+# for pgcc version 2.95.1, -O3 is buggy; don't use it.
+
+CFLAGS=-I$(ZLIBINC) -I$(JPEGINC) -I$(LCMSINC) -Wall -O3 -funroll-loops \
+ $(OPTIONS) $(ALIGN) # $(WARNMORE) -g
+LDFLAGS=-L. -Wl,-rpath,. \
+ -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) \
+ -L$(JPEGLIB) -Wl,-rpath,$(JPEGLIB) \
+ -L$(LCMSLIB) -Wl,-rpath,$(LCMSLIB) \
+ -lmng -lz -ljpeg -llcms -lm
+
+RANLIB=ranlib
+#RANLIB=echo
+
+# current version numbers
+MNGMAJ = 1
+MNGMIN = 1.0.4
+MNGVER = $(MNGMAJ).$(MNGMIN)
+
+INCPATH=$(prefix)/include
+LIBPATH=$(prefix)/lib
+
+OBJS = \
+ libmng_callback_xs.o \
+ libmng_chunk_io.o \
+ libmng_chunk_prc.o \
+ libmng_chunk_xs.o \
+ libmng_cms.o \
+ libmng_display.o \
+ libmng_dither.o \
+ libmng_error.o \
+ libmng_filter.o \
+ libmng_hlapi.o \
+ libmng_jpeg.o \
+ libmng_object_prc.o \
+ libmng_pixels.o \
+ libmng_prop_xs.o \
+ libmng_read.o \
+ libmng_trace.o \
+ libmng_write.o \
+ libmng_zlib.o
+
+OBJSDLL = $(OBJS:.0=.pic.o)
+
+.SUFFIXES: .c .o .pic.o
+
+.c.pic.o:
+ $(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
+
+all: libmng.a libmng.so
+
+libmng.a: $(OBJS)
+ ar rc $@ $(OBJS)
+ $(RANLIB) $@
+
+libmng.so: libmng.so.$(MNGMAJ)
+ ln -sf libmng.so.$(MNGMAJ) libmng.so
+
+libmng.so.$(MNGMAJ): libmng.so.$(MNGVER)
+ ln -sf libmng.so.$(MNGVER) libmng.so.$(MNGMAJ)
+
+libmng.so.$(MNGVER): $(OBJSDLL)
+# $(CC) -shared -Wl,-soname,libmng.so.$(MNGMAJ) -o libmng.so.$(MNGVER) \
+# $(OBJSDLL) -L$(ZLIBLIB) -L$(JPEGLIB) -L$(LCMSLIB) -lz -lm -lc
+ $(CC) -shared -Wl,-soname,libmng.so.$(MNGMAJ) -o libmng.so.$(MNGVER) \
+ $(OBJSDLL) -L$(ZLIBLIB) -L$(JPEGLIB) -ljpeg -L$(LCMSLIB) -llcms \
+ -lz -lm -lc
+
+install: libmng.a libmng.so.$(MNGVER)
+ -@mkdir $(INCPATH) $(LIBPATH)
+ cp libmng.h libmng_conf.h libmng_types.h $(INCPATH)
+ chmod 644 $(INCPATH)/libmng.h $(INCPATH)/libmng_conf.h $(INCPATH)/libmng_types.h
+ cp libmng.a libmng.so.$(MNGVER) $(LIBPATH)
+ chmod 755 $(LIBPATH)/libmng.so.$(MNGVER)
+ -@/bin/rm -f $(LIBPATH)/libmng.so.$(MNGMAJ) $(LIBPATH)/libmng.so
+ (cd $(LIBPATH); ln -sf libmng.so.$(MNGVER) libmng.so.$(MNGMAJ); \
+ ln -sf libmng.so.$(MNGMAJ) libmng.so)
+
+clean:
+ /bin/rm -f *.o libmng.a libmng.so*
+
+# DO NOT DELETE THIS LINE -- make depend depends on it.
+
+libmng_hlapi.o libmng_hlapi.pic.o: libmng_hlapi.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_memory.h libmng_error.h libmng_trace.h libmng_read.h \
+ libmng_write.h libmng_display.h libmng_zlib.h libmng_cms.h libmng_zlib.h
+libmng_callback_xs.o libmng_callback_xs.pic.o: libmng_callback_xs.c libmng.h \
+ libmng_conf.h libmng_types.h libmng_data.h libmng_error.h libmng_trace.h
+libmng_prop_xs.o libmng_prop_xs.pic.o: libmng_prop_xs.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_error.h libmng_trace.h libmng_cms.h
+libmng_chunk_xs.o libmng_chunk_xs.pic.o: libmng_chunk_xs.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h \
+ libmng_error.h libmng_trace.h
+libmng_read.o libmng_read.pic.o: libmng_read.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_chunk_prc.h libmng_chunk_io.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_read.h libmng_display.h
+libmng_write.o libmng_write.pic.o: libmng_write.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_write.h
+libmng_display.o libmng_display.pic.o: libmng_display.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_zlib.h libmng_cms.h libmng_pixels.h \
+ libmng_display.h
+libmng_object_prc.o libmng_object_prc.pic.o: libmng_object_prc.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_display.h libmng_pixels.h
+libmng_chunk_prc.o libmng_chunk_prc.pic.o: libmng_chunk_prc.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h
+libmng_chunk_io.o libmng_chunk_io.pic.o: libmng_chunk_io.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_chunk_io.h libmng_chunk_prc.h libmng_memory.h libmng_error.h \
+ libmng_trace.h libmng_display.h libmng_zlib.h libmng_pixels.h
+libmng_error.o libmng_error.pic.o: libmng_error.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_trace.o libmng_trace.pic.o: libmng_trace.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_pixels.o libmng_pixels.pic.o: libmng_pixels.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_memory.h libmng_error.h libmng_trace.h \
+ libmng_cms.h libmng_filter.h libmng_pixels.h
+libmng_filter.o libmng_filter.pic.o: libmng_filter.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_filter.h
+libmng_dither.o libmng_dither.pic.o: libmng_dither.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_dither.h
+libmng_zlib.o libmng_zlib.pic.o: libmng_zlib.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h \
+ libmng_filter.h libmng_zlib.h
+libmng_jpeg.o libmng_jpeg.pic.o: libmng_jpeg.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h libmng_jpeg.h
+libmng_cms.o libmng_cms.pic.o: libmng_cms.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_error.h libmng_trace.h libmng_cms.h
+
diff --git a/src/3rdparty/libmng/makefiles/makefile.mingw b/src/3rdparty/libmng/makefiles/makefile.mingw
new file mode 100644
index 000000000..a07366c71
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/makefile.mingw
@@ -0,0 +1,160 @@
+#
+# For conditions of distribution and use, see copyright notice in libmng.h
+#
+# makefile for libmng - THE MNG library
+# this makefile is for MinGW32, it have been tested with gcc 2.95.3,
+# binutils 2.11.90 and mingw-runtime 1.0
+#
+# By Benoit Blanchon - benoit.blanchon@laposte.net
+#
+# Note : this makefile builds a static library; although it's seems to be
+# possible to build working DLL and import lib, I didn't manage do to it.
+# If you do, please let me know.
+
+# outputs
+LIBMNG_A = libmng.a
+INSTALL_PREFIX = C:/MinGW/
+# maybe you sould replace with anti-slashes
+
+# default build options
+OPTIONS = -DMNG_NO_CMS -DMNG_ACCESS_CHUNKS -DMNG_STORE_CHUNKS
+
+# Where the zlib library and include files are located
+ZLIBLIB=-lz
+#ZLIBLIB=-L../zlib -lz
+#ZLIBINC=-I../zlib
+
+# Where the jpeg library and include files are located
+JPEGLIB=-ljpeg
+#JPEGLIB=-L../jpgsrc -ljpeg
+#JPEGINC=-I../jpgsrc
+
+# Where the lcms library and include files are located
+#LCMSLIB=-llcms
+#LCMSLIB=-L../lcms/lib -llcms
+#LCMSINC=-I../lcms/source
+
+# file deletion command
+RM=rm -f
+#RM=del
+
+# directory creation command
+MKDIR=mkdir -p
+
+# file copy command
+COPY=cp
+#COPY=copy
+
+# compiler
+CC=gcc
+
+ALIGN=
+# for i386:
+#ALIGN=-malign-loops=2 -malign-functions=2
+
+CFLAGS=$(ZLIBINC) $(JPEGINC) $(LCMSINC) -Wall -O3 -funroll-loops $(OPTIONS) $(ALIGN)
+LDFLAGS=-L. -lmng $(ZLIBLIB) $(JPEGLIB) $(LCMSLIB) -lm
+
+# library (.a) file creation command
+AR= ar rc
+# second step in .a creation (use "touch" if not needed)
+AR2= ranlib
+
+INCPATH=$(prefix)/include
+LIBPATH=$(prefix)/lib
+
+OBJS = \
+ libmng_callback_xs.o \
+ libmng_chunk_io.o \
+ libmng_chunk_prc.o \
+ libmng_chunk_xs.o \
+ libmng_cms.o \
+ libmng_display.o \
+ libmng_dither.o \
+ libmng_error.o \
+ libmng_filter.o \
+ libmng_hlapi.o \
+ libmng_jpeg.o \
+ libmng_object_prc.o \
+ libmng_pixels.o \
+ libmng_prop_xs.o \
+ libmng_read.o \
+ libmng_trace.o \
+ libmng_write.o \
+ libmng_zlib.o
+
+.SUFFIXES: .c .o
+
+.c.o:
+ $(CC) -c $(CFLAGS) -o $@ $*.c
+
+all: $(LIBMNG_A)
+
+$(LIBMNG_A) : $(OBJS)
+ $(RM) $@
+ $(AR) $@ $(OBJS)
+ $(AR2) $@
+
+install : $(LIBMNG_A)
+ $(MKDIR) $(INSTALL_PREFIX)include
+ $(COPY) libmng.h $(INSTALL_PREFIX)include
+ $(COPY) libmng_conf.h $(INSTALL_PREFIX)include
+ $(COPY) libmng_types.h $(INSTALL_PREFIX)include
+ $(MKDIR) $(INSTALL_PREFIX)lib
+ $(COPY) $(LIBMNG_A) $(INSTALL_PREFIX)lib
+
+clean:
+ $(RM) *.o
+
+# DO NOT DELETE THIS LINE -- make depend depends on it.
+
+libmng_hlapi.o : libmng_hlapi.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_memory.h libmng_error.h libmng_trace.h libmng_read.h \
+ libmng_write.h libmng_display.h libmng_zlib.h libmng_cms.h libmng_zlib.h
+libmng_callback_xs.o : libmng_callback_xs.c libmng.h \
+ libmng_conf.h libmng_types.h libmng_data.h libmng_error.h libmng_trace.h
+libmng_prop_xs.o : libmng_prop_xs.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_error.h libmng_trace.h libmng_cms.h
+libmng_chunk_xs.o : libmng_chunk_xs.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h \
+ libmng_error.h libmng_trace.h
+libmng_read.o : libmng_read.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_chunk_prc.h libmng_chunk_io.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_read.h libmng_display.h
+libmng_write.o : libmng_write.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_write.h
+libmng_display.o : libmng_display.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_zlib.h libmng_cms.h libmng_pixels.h \
+ libmng_display.h
+libmng_object_prc.o : libmng_object_prc.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h libmng_display.h libmng_pixels.h
+libmng_chunk_prc.o : libmng_chunk_prc.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_chunks.h libmng_chunk_prc.h libmng_memory.h \
+ libmng_error.h libmng_trace.h
+libmng_chunk_io.o : libmng_chunk_io.c libmng.h libmng_conf.h \
+ libmng_types.h libmng_data.h libmng_objects.h libmng_object_prc.h \
+ libmng_chunks.h libmng_chunk_io.h libmng_chunk_prc.h libmng_memory.h libmng_error.h \
+ libmng_trace.h libmng_display.h libmng_zlib.h libmng_pixels.h
+libmng_error.o : libmng_error.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_trace.o : libmng_trace.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h
+libmng_pixels.o : libmng_pixels.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_memory.h libmng_error.h libmng_trace.h \
+ libmng_cms.h libmng_filter.h libmng_pixels.h
+libmng_filter.o : libmng_filter.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_filter.h
+libmng_dither.o : libmng_dither.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_error.h libmng_trace.h libmng_dither.h
+libmng_zlib.o : libmng_zlib.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h \
+ libmng_filter.h libmng_zlib.h
+libmng_jpeg.o : libmng_jpeg.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_memory.h libmng_error.h libmng_trace.h libmng_pixels.h libmng_jpeg.h
+libmng_cms.o : libmng_cms.c libmng.h libmng_conf.h libmng_types.h \
+ libmng_data.h libmng_objects.h libmng_error.h libmng_trace.h libmng_cms.h
+
diff --git a/src/3rdparty/libmng/makefiles/makefile.unix b/src/3rdparty/libmng/makefiles/makefile.unix
new file mode 100644
index 000000000..d09261f09
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/makefile.unix
@@ -0,0 +1,66 @@
+#
+# For conditions of distribution and use, see copyright notice in libmng.h
+#
+# makefile for libmng - THE MNG library
+# this makefile is suitable for generic unix
+
+# Configuration options are now in libmng_conf.h
+
+# The name of your C compiler:
+CC= cc
+
+# Location of jpeg header files
+JPEG_INC= /cs/include/jpeg
+
+# Location of zlib header files
+ZLIB_INC= /cs/include
+
+# Location of lcms header files
+# (switch on MNG_FULL_CMS in libmng_conf.h if you want to use this)
+LCMS_INC= /ltmp/lcms-1.06/source
+
+# compiler options:
+CFLAGS= -O -I. -I$(ZLIB_INC) -I$(JPEG_INC) -I$(LCMS_INC)
+
+# source files
+SOURCES= \
+ libmng_callback_xs.c \
+ libmng_chunk_io.c \
+ libmng_chunk_prc.c \
+ libmng_chunk_xs.c \
+ libmng_cms.c \
+ libmng_display.c \
+ libmng_dither.c \
+ libmng_error.c \
+ libmng_filter.c \
+ libmng_hlapi.c \
+ libmng_jpeg.c \
+ libmng_object_prc.c \
+ libmng_pixels.c \
+ libmng_prop_xs.c \
+ libmng_read.c \
+ libmng_trace.c \
+ libmng_write.c \
+ libmng_zlib.c
+
+# object files
+OBJECTS= $(SOURCES:%.c=%.o)
+
+# type dependancies
+.c.o:
+ $(CC) $(CFLAGS) -c $<
+
+all: libmng.a
+
+clean:
+ /bin/rm -f $(OBJECTS)
+ /bin/rm -f libmng.a
+ /bin/rm -f *~ core
+
+libmng.a: $(OBJECTS)
+ ar r libmng.a $(OBJECTS)
+
+depend:
+ makedepend -- $(CFLAGS) $(IFLAGS) -- *.c
+
+# DO NOT DELETE
diff --git a/src/3rdparty/libmng/makefiles/makefile.vcwin32 b/src/3rdparty/libmng/makefiles/makefile.vcwin32
new file mode 100644
index 000000000..51ae1ccab
--- /dev/null
+++ b/src/3rdparty/libmng/makefiles/makefile.vcwin32
@@ -0,0 +1,96 @@
+# makefile for libmng
+# Copyright (C) 2000 AM(s98t269@stmail.eng.kagawa-u.ac.jp)
+# For conditions of distribution and use, see copyright notice in libmng.h
+# Assumes that zlib.lib, zconf.h, and zlib.h have been copied to ..\zlib
+# Assumes that libjpeg.lib, *.h have been copied to ..\jpgsrc6b
+# Assumes that lcmsdll.lib and lcmsstat.lib have been copied to ..\lcms\lib\msvc
+# To use, do "nmake /f makefiles\makefile.vcwin32"
+
+# -------- Microsoft Visual C++ 4.0 and later, no assembler code --------
+
+CFLAGS= -Ox -GA3s -nologo -W3 -I..\zlib -I..\jpgsrc6b -I..\lcms\include
+
+CC=cl
+LD=link
+LDFLAGS=
+O=.obj
+
+#uncomment next to put error messages in a file
+#ERRFILE= >> mngerrs
+
+# variables
+OBJS1 = libmng_callback_xs$(O) libmng_chunk_io$(O) libmng_chunk_prc$(O)
+OBJS2 = libmng_chunk_xs$(O) libmng_cms$(O) libmng_display$(O) libmng_dither$(O)
+OBJS3 = libmng_error$(O) libmng_filter$(O) libmng_hlapi$(O) libmng_jpeg$(O)
+OBJS4 = libmng_object_prc$(O) libmng_pixels$(O) libmng_prop_xs$(O)
+OBJS5 = libmng_read$(O) libmng_trace$(O) libmng_write$(O) libmng_zlib$(O)
+
+all: libmng.lib
+
+libmng_callback_xs$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_chunk_io$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_chunk_prc$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_chunk_xs$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_cms$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_display$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_dither$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_error$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_filter$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_hlapi$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_jpeg$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_object_prc$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_pixels$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_prop_xs$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_read$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_trace$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_write$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng_zlib$(O): libmng.h libmng_data.h libmng_error.h libmng_trace.h
+ $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
+
+libmng.lib: $(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4) $(OBJS5)
+ echo something to del > libmng.lib
+ del libmng.lib
+ lib /OUT:libmng.lib $(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4) $(OBJS5)
+
+mngtest.exe: mngtest.obj libmng.lib
+ $(LD) $(LDFLAGS) mngtest.obj libmng.lib ..\zlib\zlib.lib /OUT:mngtest.exe /SUBSYSTEM:CONSOLE
+
+test: mngtest.exe
+ mngtest
+
+# End of makefile for libmng
+