Package: libfreeimage3
Source: libfreeimage
Version: 3.17.0+ds1-3

The patch 'Disable-vendored-dependencies.patch' removes the G3
plug-in but this has unintended consequences on other
plug-ins. J2K and WEBP images (but I believe that all images formats
declared after FIF_FAXG3 in the FREE_IMAGE_FORMAT enum are
impacted) are improperly recognized by FreeImage: their
associated format returned by FreeImage_GetFileType() is
wrong. In fact they are offset by -1.

Internally, the PluginList::AddNode function uses the size of the
plug-in list to assign identifiers to plug-ins, when all plug-ins
are added in the correct order, all is good since the list size
matches exactly the FREE_IMAGE_FORMAT enum value. Unfortunately,
removing the call to PluginList::AddNode(InitG3) in Plugin.cpp
messes with this indexing. You'll find in attachment a
modification of the Disable-vendored-dependencies.patch that
fixes this. It includes two source modifications:

- allows to add a NULL plug-in to keep the numbering of image
  formats consistent (I've added NULL checks here and there but
  that code may need review).
- where the G3 plug-in was added, replace it with a NULL plug-in.

Also attached is the code for a simple test case with a Jpeg2000
test image (which produces this bug since FIF_J2K = 30 >=
FIF_FAXG3 = 27).  The test shows that the J2K file is wrongly
recognized as an EXR image. Due to the nature of the fix I
believe (in the absence of suitable test images) that all formats
whose FREE_IMAGE_TYPE >= FIF_FAXG3 are improperly recognized.

Compile and run the attached code with:
$ gcc test_j2k.c -o test-j2k -lfreeimage
$ ./test-j2k image.j2k
  test-j2k: test_j2k.c:6: main: Assertion `fif == FIF_J2K' failed.

I ran a similar test on a WEBP image and it fails the same.

Please note that the attached patch also include updated
fipMakefile.srcs and Makefile.srcs (generated with the
appropriate scripts) that where required to properly build the
package.

I've found this bug while backporting freeimage 3.17 to jessie.

Best regards,

    Boris Lesner
From: Ghislain Antony Vaillant <ghisv...@gmail.com>
Date: Tue, 3 Nov 2015 14:39:33 +0000
Subject: Disable vendored dependencies.

This commit disables usage of the embedded dependencies for building
FreeImage and FreeImagePlus. Functionalities which could not use the
packaged dependencies are delibarately disabled for security reasons.

This patch is based on Fedora's FreeImage-3.17.0_unbundle patch.
---
 Source/FreeImage.h                 | 15 ++++++-
 Source/FreeImage/J2KHelper.cpp     |  2 +-
 Source/FreeImage/Plugin.cpp        |  4 ++
 Source/FreeImage/PluginEXR.cpp     | 20 +++++-----
 Source/FreeImage/PluginJ2K.cpp     |  2 +-
 Source/FreeImage/PluginJP2.cpp     |  2 +-
 Source/FreeImage/PluginJPEG.cpp    |  6 +--
 Source/FreeImage/PluginJXR.cpp     |  2 +-
 Source/FreeImage/PluginPNG.cpp     |  4 +-
 Source/FreeImage/PluginRAW.cpp     |  2 +-
 Source/FreeImage/PluginTIFF.cpp    |  4 +-
 Source/FreeImage/PluginWebP.cpp    |  8 ++--
 Source/FreeImage/ZLibInterface.cpp |  5 +--
 Source/Metadata/XTIFF.cpp          | 80 +++++++++++++++++++-------------------
 genfipsrclist.sh                   |  9 +----
 gensrclist.sh                      | 11 ++----
 16 files changed, 89 insertions(+), 87 deletions(-)

Index: FreeImage/Source/FreeImage.h
===================================================================
--- FreeImage.orig/Source/FreeImage.h
+++ FreeImage/Source/FreeImage.h
@@ -410,7 +410,11 @@ FI_ENUM(FREE_IMAGE_FORMAT) {
 	FIF_DDS		= 24,
 	FIF_GIF     = 25,
 	FIF_HDR		= 26,
-	FIF_FAXG3	= 27,
+/* Debian: The G3 fax format plugin is deliberately disabled in our build of
+   FreeImage, since it requires usage of the vendored copy of libtiff. */
+#if 0
+ 	FIF_FAXG3	= 27,
+#endif
 	FIF_SGI		= 28,
 	FIF_EXR		= 29,
 	FIF_J2K		= 30,
@@ -473,6 +477,9 @@ FI_ENUM(FREE_IMAGE_DITHER) {
 	FID_BAYER16x16	= 6		//! Bayer ordered dispersed dot dithering (order 4 dithering matrix)
 };
 
+/* Debian: The JPEGTransform functions are deliberately disabled in our build
+   of FreeImage, since they require usage of the vendored copy of libjpeg. */
+#if 0
 /** Lossless JPEG transformations
 Constants used in FreeImage_JPEGTransform
 */
@@ -486,6 +493,7 @@ FI_ENUM(FREE_IMAGE_JPEG_OPERATION) {
 	FIJPEG_OP_ROTATE_180	= 6,	//! 180-degree rotation
 	FIJPEG_OP_ROTATE_270	= 7		//! 270-degree clockwise (or 90 ccw)
 };
+#endif
 
 /** Tone mapping operators.
 Constants used in FreeImage_ToneMapping.
@@ -1076,7 +1084,9 @@ DLL_API const char* DLL_CALLCONV FreeIma
 // --------------------------------------------------------------------------
 // JPEG lossless transformation routines
 // --------------------------------------------------------------------------
-
+/* Debian: The JPEGTransform functions are deliberately disabled in our build
+   of FreeImage, since they require usage of the vendored copy of libjpeg. */
+#if 0
 DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransform(const char *src_file, const char *dst_file, FREE_IMAGE_JPEG_OPERATION operation, BOOL perfect FI_DEFAULT(TRUE));
 DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransformU(const wchar_t *src_file, const wchar_t *dst_file, FREE_IMAGE_JPEG_OPERATION operation, BOOL perfect FI_DEFAULT(TRUE));
 DLL_API BOOL DLL_CALLCONV FreeImage_JPEGCrop(const char *src_file, const char *dst_file, int left, int top, int right, int bottom);
@@ -1085,6 +1095,7 @@ DLL_API BOOL DLL_CALLCONV FreeImage_JPEG
 DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransformCombined(const char *src_file, const char *dst_file, FREE_IMAGE_JPEG_OPERATION operation, int* left, int* top, int* right, int* bottom, BOOL perfect FI_DEFAULT(TRUE));
 DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransformCombinedU(const wchar_t *src_file, const wchar_t *dst_file, FREE_IMAGE_JPEG_OPERATION operation, int* left, int* top, int* right, int* bottom, BOOL perfect FI_DEFAULT(TRUE));
 DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransformCombinedFromMemory(FIMEMORY* src_stream, FIMEMORY* dst_stream, FREE_IMAGE_JPEG_OPERATION operation, int* left, int* top, int* right, int* bottom, BOOL perfect FI_DEFAULT(TRUE));
+#endif
 
 
 // --------------------------------------------------------------------------
Index: FreeImage/Source/FreeImage/J2KHelper.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/J2KHelper.cpp
+++ FreeImage/Source/FreeImage/J2KHelper.cpp
@@ -21,7 +21,7 @@
 
 #include "FreeImage.h"
 #include "Utilities.h"
-#include "../LibOpenJPEG/openjpeg.h"
+#include <openjpeg.h>
 #include "J2KHelper.h"
 
 // --------------------------------------------------------------------------
Index: FreeImage/Source/FreeImage/Plugin.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/Plugin.cpp
+++ FreeImage/Source/FreeImage/Plugin.cpp
@@ -134,7 +134,13 @@ PluginList::AddNode(FI_InitProc init_pro
 
 		delete plugin;
 		delete node;
-	}
+	} else {
+    //allows adding a NULL node in order to not mess up plugin
+    //numbering when some are disabled. Otherwise there will be a
+    //discrepancy between FREE_IMAGE_FORMAT enumerator values and the
+    //actual format.
+    m_plugin_map[(const int)m_plugin_map.size()] = 0;
+  }
 
 	return FIF_UNKNOWN;
 }
@@ -142,6 +148,9 @@ PluginList::AddNode(FI_InitProc init_pro
 PluginNode *
 PluginList::FindNodeFromFormat(const char *format) {
 	for (map<int, PluginNode *>::iterator i = m_plugin_map.begin(); i != m_plugin_map.end(); ++i) {
+    if (i->second == NULL) {
+      continue;
+    }
 		const char *the_format = ((*i).second->m_format != NULL) ? (*i).second->m_format : (*i).second->m_plugin->format_proc();
 
 		if ((*i).second->m_enabled) {
@@ -157,6 +166,9 @@ PluginList::FindNodeFromFormat(const cha
 PluginNode *
 PluginList::FindNodeFromMime(const char *mime) {
 	for (map<int, PluginNode *>::iterator i = m_plugin_map.begin(); i != m_plugin_map.end(); ++i) {
+    if (i->second == NULL) {
+      continue;
+    }
 		const char *the_mime = ((*i).second->m_plugin->mime_proc != NULL) ? (*i).second->m_plugin->mime_proc() : "";
 
 		if ((*i).second->m_enabled) {
@@ -192,6 +204,10 @@ PluginList::IsEmpty() const {
 
 PluginList::~PluginList() {
 	for (map<int, PluginNode *>::iterator i = m_plugin_map.begin(); i != m_plugin_map.end(); ++i) {
+    if (i->second == NULL) {
+      continue;
+    }
+
 #ifdef _WIN32
 		if ((*i).second->m_instance != NULL) {
 			FreeLibrary((HINSTANCE)(*i).second->m_instance);
@@ -263,7 +279,9 @@ FreeImage_Initialise(BOOL load_local_plu
 			s_plugins->AddNode(InitDDS);
 	        s_plugins->AddNode(InitGIF);
 	        s_plugins->AddNode(InitHDR);
-			s_plugins->AddNode(InitG3);
+/* The G3 fax format plugin is deliberately disabled in our build of FreeImage
+   since it requires usage of the vendored copy of libtiff. */
+			s_plugins->AddNode(NULL);
 			s_plugins->AddNode(InitSGI);
 			s_plugins->AddNode(InitEXR);
 			s_plugins->AddNode(InitJ2K);
@@ -358,7 +376,7 @@ FreeImage_DeInitialise() {
 
 void * DLL_CALLCONV
 FreeImage_Open(PluginNode *node, FreeImageIO *io, fi_handle handle, BOOL open_for_reading) {
-	if (node->m_plugin->open_proc != NULL) {
+	if (node && node->m_plugin->open_proc != NULL) {
        return node->m_plugin->open_proc(io, handle, open_for_reading);
 	}
 
@@ -367,7 +385,7 @@ FreeImage_Open(PluginNode *node, FreeIma
 
 void DLL_CALLCONV
 FreeImage_Close(PluginNode *node, FreeImageIO *io, fi_handle handle, void *data) {
-	if (node->m_plugin->close_proc != NULL) {
+	if (node && node->m_plugin->close_proc != NULL) {
 		node->m_plugin->close_proc(io, handle, data);
 	}
 }
Index: FreeImage/Source/FreeImage/PluginEXR.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginEXR.cpp
+++ FreeImage/Source/FreeImage/PluginEXR.cpp
@@ -28,16 +28,16 @@
 #pragma warning (disable : 4800) // ImfVersion.h - 'const int' : forcing value to bool 'true' or 'false' (performance warning)
 #endif 
 
-#include "../OpenEXR/IlmImf/ImfIO.h"
-#include "../OpenEXR/Iex/Iex.h"
-#include "../OpenEXR/IlmImf/ImfOutputFile.h"
-#include "../OpenEXR/IlmImf/ImfInputFile.h"
-#include "../OpenEXR/IlmImf/ImfRgbaFile.h"
-#include "../OpenEXR/IlmImf/ImfChannelList.h"
-#include "../OpenEXR/IlmImf/ImfRgba.h"
-#include "../OpenEXR/IlmImf/ImfArray.h"
-#include "../OpenEXR/IlmImf/ImfPreviewImage.h"
-#include "../OpenEXR/Half/half.h"
+#include <OpenEXR/ImfIO.h>
+#include <OpenEXR/Iex.h>
+#include <OpenEXR/ImfOutputFile.h>
+#include <OpenEXR/ImfInputFile.h>
+#include <OpenEXR/ImfRgbaFile.h>
+#include <OpenEXR/ImfChannelList.h>
+#include <OpenEXR/ImfRgba.h>
+#include <OpenEXR/ImfArray.h>
+#include <OpenEXR/ImfPreviewImage.h>
+#include <OpenEXR/half.h>
 
 
 // ==========================================================
Index: FreeImage/Source/FreeImage/PluginJ2K.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginJ2K.cpp
+++ FreeImage/Source/FreeImage/PluginJ2K.cpp
@@ -21,7 +21,7 @@
 
 #include "FreeImage.h"
 #include "Utilities.h"
-#include "../LibOpenJPEG/openjpeg.h"
+#include <openjpeg.h>
 #include "J2KHelper.h"
 
 // ==========================================================
Index: FreeImage/Source/FreeImage/PluginJP2.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginJP2.cpp
+++ FreeImage/Source/FreeImage/PluginJP2.cpp
@@ -21,7 +21,7 @@
 
 #include "FreeImage.h"
 #include "Utilities.h"
-#include "../LibOpenJPEG/openjpeg.h"
+#include <openjpeg.h>
 #include "J2KHelper.h"
 
 // ==========================================================
Index: FreeImage/Source/FreeImage/PluginJPEG.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginJPEG.cpp
+++ FreeImage/Source/FreeImage/PluginJPEG.cpp
@@ -35,9 +35,9 @@ extern "C" {
 #undef FAR
 #include <setjmp.h>
 
-#include "../LibJPEG/jinclude.h"
-#include "../LibJPEG/jpeglib.h"
-#include "../LibJPEG/jerror.h"
+#include <stdio.h>
+#include <jpeglib.h>
+#include <jerror.h>
 }
 
 #include "FreeImage.h"
Index: FreeImage/Source/FreeImage/PluginJXR.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginJXR.cpp
+++ FreeImage/Source/FreeImage/PluginJXR.cpp
@@ -23,7 +23,7 @@
 #include "Utilities.h"
 #include "../Metadata/FreeImageTag.h"
 
-#include "../LibJXR/jxrgluelib/JXRGlue.h"
+#include <JXRGlue.h>
 
 // ==========================================================
 // Plugin Interface
Index: FreeImage/Source/FreeImage/PluginPNG.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginPNG.cpp
+++ FreeImage/Source/FreeImage/PluginPNG.cpp
@@ -40,8 +40,8 @@
 
 // ----------------------------------------------------------
 
-#include "../ZLib/zlib.h"
-#include "../LibPNG/png.h"
+#include <zlib.h>
+#include <png.h>
 
 // ----------------------------------------------------------
 
Index: FreeImage/Source/FreeImage/PluginRAW.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginRAW.cpp
+++ FreeImage/Source/FreeImage/PluginRAW.cpp
@@ -19,7 +19,7 @@
 // Use at your own risk!
 // ==========================================================
 
-#include "../LibRawLite/libraw/libraw.h"
+#include <libraw/libraw.h>
 
 #include "FreeImage.h"
 #include "Utilities.h"
Index: FreeImage/Source/FreeImage/PluginTIFF.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginTIFF.cpp
+++ FreeImage/Source/FreeImage/PluginTIFF.cpp
@@ -37,9 +37,9 @@
 
 #include "FreeImage.h"
 #include "Utilities.h"
-#include "../LibTIFF4/tiffiop.h"
+#include <tiffio.h>
 #include "../Metadata/FreeImageTag.h"
-#include "../OpenEXR/Half/half.h"
+#include <OpenEXR/half.h>
 
 #include "FreeImageIO.h"
 #include "PSDParser.h"
Index: FreeImage/Source/FreeImage/PluginWebP.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/PluginWebP.cpp
+++ FreeImage/Source/FreeImage/PluginWebP.cpp
@@ -24,10 +24,10 @@
 
 #include "../Metadata/FreeImageTag.h"
 
-#include "../LibWebP/src/webp/decode.h"
-#include "../LibWebP/src/webp/encode.h"
-#include "../LibWebP/src/enc/vp8enci.h"
-#include "../LibWebP/src/webp/mux.h"
+#include <webp/decode.h>
+#include <webp/encode.h>
+// #include "../LibWebP/src/enc/vp8enci.h"
+#include <webp/mux.h>
 
 // ==========================================================
 // Plugin Interface
Index: FreeImage/Source/FreeImage/ZLibInterface.cpp
===================================================================
--- FreeImage.orig/Source/FreeImage/ZLibInterface.cpp
+++ FreeImage/Source/FreeImage/ZLibInterface.cpp
@@ -19,10 +19,9 @@
 // Use at your own risk!
 // ==========================================================
 
-#include "../ZLib/zlib.h"
+#include <zlib.h>
 #include "FreeImage.h"
 #include "Utilities.h"
-#include "../ZLib/zutil.h"	/* must be the last header because of error C3163 in VS2008 (_vsnprintf defined in stdio.h) */
 
 /**
 Compresses a source buffer into a target buffer, using the ZLib library. 
@@ -115,7 +114,7 @@ FreeImage_ZLibGZip(BYTE *target, DWORD t
 			return 0;
         case Z_OK: {
             // patch header, setup crc and length (stolen from mod_trace_output)
-            BYTE *p = target + 8; *p++ = 2; *p = OS_CODE; // xflags, os_code
+            BYTE *p = target + 8; *p++ = 2; *p = 0x03; // xflags, os_code (unix)
  	        crc = crc32(crc, source, source_size);
 	        memcpy(target + 4 + dest_len, &crc, 4);
 	        memcpy(target + 8 + dest_len, &source_size, 4);
Index: FreeImage/Source/Metadata/XTIFF.cpp
===================================================================
--- FreeImage.orig/Source/Metadata/XTIFF.cpp
+++ FreeImage/Source/Metadata/XTIFF.cpp
@@ -29,13 +29,18 @@
 #pragma warning (disable : 4786) // identifier was truncated to 'number' characters
 #endif
 
-#include "../LibTIFF4/tiffiop.h"
+#include <tiffio.h>
 
 #include "FreeImage.h"
 #include "Utilities.h"
 #include "FreeImageTag.h"
 #include "FIRational.h"
 
+extern "C"
+{
+    int _TIFFDataSize(TIFFDataType type);
+}
+
 // ----------------------------------------------------------
 //   Extended TIFF Directory GEO Tag Support
 // ----------------------------------------------------------
@@ -224,6 +229,33 @@ tiff_write_geotiff_profile(TIFF *tif, FI
 //   TIFF EXIF tag reading & writing
 // ----------------------------------------------------------
 
+static uint32 exif_tag_ids[] = {
+  EXIFTAG_EXPOSURETIME, EXIFTAG_FNUMBER, EXIFTAG_EXPOSUREPROGRAM,
+  EXIFTAG_SPECTRALSENSITIVITY, EXIFTAG_ISOSPEEDRATINGS, EXIFTAG_OECF,
+  EXIFTAG_EXIFVERSION, EXIFTAG_DATETIMEORIGINAL, EXIFTAG_DATETIMEDIGITIZED,
+  EXIFTAG_COMPONENTSCONFIGURATION, EXIFTAG_COMPRESSEDBITSPERPIXEL,
+  EXIFTAG_SHUTTERSPEEDVALUE, EXIFTAG_APERTUREVALUE,
+  EXIFTAG_BRIGHTNESSVALUE, EXIFTAG_EXPOSUREBIASVALUE,
+  EXIFTAG_MAXAPERTUREVALUE, EXIFTAG_SUBJECTDISTANCE, EXIFTAG_METERINGMODE,
+  EXIFTAG_LIGHTSOURCE, EXIFTAG_FLASH, EXIFTAG_FOCALLENGTH,
+  EXIFTAG_SUBJECTAREA, EXIFTAG_MAKERNOTE, EXIFTAG_USERCOMMENT,
+  EXIFTAG_SUBSECTIME, EXIFTAG_SUBSECTIMEORIGINAL,
+  EXIFTAG_SUBSECTIMEDIGITIZED, EXIFTAG_FLASHPIXVERSION, EXIFTAG_COLORSPACE,
+  EXIFTAG_PIXELXDIMENSION, EXIFTAG_PIXELYDIMENSION,
+  EXIFTAG_RELATEDSOUNDFILE, EXIFTAG_FLASHENERGY,
+  EXIFTAG_SPATIALFREQUENCYRESPONSE, EXIFTAG_FOCALPLANEXRESOLUTION,
+  EXIFTAG_FOCALPLANEYRESOLUTION, EXIFTAG_FOCALPLANERESOLUTIONUNIT,
+  EXIFTAG_SUBJECTLOCATION, EXIFTAG_EXPOSUREINDEX, EXIFTAG_SENSINGMETHOD,
+  EXIFTAG_FILESOURCE, EXIFTAG_SCENETYPE, EXIFTAG_CFAPATTERN,
+  EXIFTAG_CUSTOMRENDERED, EXIFTAG_EXPOSUREMODE, EXIFTAG_WHITEBALANCE,
+  EXIFTAG_DIGITALZOOMRATIO, EXIFTAG_FOCALLENGTHIN35MMFILM,
+  EXIFTAG_SCENECAPTURETYPE, EXIFTAG_GAINCONTROL, EXIFTAG_CONTRAST,
+  EXIFTAG_SATURATION, EXIFTAG_SHARPNESS, EXIFTAG_DEVICESETTINGDESCRIPTION,
+  EXIFTAG_SUBJECTDISTANCERANGE, EXIFTAG_GAINCONTROL, EXIFTAG_GAINCONTROL,
+  EXIFTAG_IMAGEUNIQUEID
+};
+static int nExifTags = sizeof(exif_tag_ids) / sizeof(exif_tag_ids[0]);
+
 /**
 Read a single Exif tag
 
@@ -575,43 +607,10 @@ tiff_read_exif_tags(TIFF *tif, TagLib::M
 
 	// loop over all Core Directory Tags
 	// ### uses private data, but there is no other way
+	// -> Fedora: Best we can do without private headers is to hard-code a list of known EXIF tags and read those
 	if(md_model == TagLib::EXIF_MAIN) {
-		const TIFFDirectory *td = &tif->tif_dir;
-
-		uint32 lastTag = 0;	//<- used to prevent reading some tags twice (as stored in tif_fieldinfo)
-
-		for (int fi = 0, nfi = (int)tif->tif_nfields; nfi > 0; nfi--, fi++) {
-			const TIFFField *fld = tif->tif_fields[fi];
-
-			const uint32 tag_id = TIFFFieldTag(fld);
-
-			if(tag_id == lastTag) {
-				continue;
-			}
-
-			// test if tag value is set
-			// (lifted directly from LibTiff _TIFFWriteDirectory)
-
-			if( fld->field_bit == FIELD_CUSTOM ) {
-				int is_set = FALSE;
-
-				for(int ci = 0; ci < td->td_customValueCount; ci++ ) {
-					is_set |= (td->td_customValues[ci].info == fld);
-				}
-
-				if( !is_set ) {
-					continue;
-				}
-
-			} else if(!TIFFFieldSet(tif, fld->field_bit)) {
-				continue;
-			}
-
-			// process *all* other tags (some will be ignored)
-
-			tiff_read_exif_tag(tif, tag_id, dib, md_model);
-
-			lastTag = tag_id;
+		for (int i = 0; i < nExifTags; ++i) {
+			tiff_read_exif_tag(tif, exif_tag_ids[i], dib, md_model);
 		}
 
 	}
@@ -723,10 +722,9 @@ tiff_write_exif_tags(TIFF *tif, TagLib::
 	
 	TagLib& tag_lib = TagLib::instance();
 	
-	for (int fi = 0, nfi = (int)tif->tif_nfields; nfi > 0; nfi--, fi++) {
-		const TIFFField *fld = tif->tif_fields[fi];
-		
-		const uint32 tag_id = TIFFFieldTag(fld);
+	for (int fi = 0, nfi = nExifTags; nfi > 0; nfi--, fi++) {
+		const uint32 tag_id = exif_tag_ids[fi];
+		const TIFFField *fld = TIFFFieldWithTag(tif, tag_id);
 
 		if(skip_write_field(tif, tag_id)) {
 			// skip tags that are already handled by the LibTIFF writing process
Index: FreeImage/genfipsrclist.sh
===================================================================
--- FreeImage.orig/genfipsrclist.sh
+++ FreeImage/genfipsrclist.sh
@@ -1,18 +1,13 @@
 #!/bin/sh
 
-DIRLIST=". Source Source/Metadata Source/FreeImageToolkit Source/LibJPEG Source/LibPNG Source/LibTIFF4 Source/ZLib Source/LibOpenJPEG Source/OpenEXR Source/OpenEXR/Half Source/OpenEXR/Iex Source/OpenEXR/IlmImf Source/OpenEXR/IlmThread Source/OpenEXR/Imath Source/OpenEXR/IexMath Source/LibRawLite Source/LibRawLite/dcraw Source/LibRawLite/internal Source/LibRawLite/libraw Source/LibRawLite/src Source/LibWebP Source/LibJXR Source/LibJXR/common/include Source/LibJXR/image/sys Source/LibJXR/jxrgluelib Wrapper/FreeImagePlus"
+DIRLIST="Wrapper/FreeImagePlus"
 
 
 echo "VER_MAJOR = 3" > fipMakefile.srcs
 echo "VER_MINOR = 17.0" >> fipMakefile.srcs
 
 echo -n "SRCS = " >> fipMakefile.srcs
-for DIR in $DIRLIST; do
-	VCPRJS=`echo $DIR/*.2008.vcproj`
-	if [ "$VCPRJS" != "$DIR/*.2008.vcproj" ]; then
-		egrep 'RelativePath=.*\.(c|cpp)' $DIR/*.2008.vcproj | cut -d'"' -f2 | tr '\\' '/' | awk '{print "'$DIR'/"$0}' | tr '\r\n' '  ' | tr -s ' ' >> fipMakefile.srcs
-	fi
-done
+find Wrapper/FreeImagePlus/src -name '*.cpp' -print | LC_ALL=C sort | xargs echo -n >> fipMakefile.srcs
 echo >> fipMakefile.srcs
 
 echo -n "INCLUDE =" >> fipMakefile.srcs
Index: FreeImage/gensrclist.sh
===================================================================
--- FreeImage.orig/gensrclist.sh
+++ FreeImage/gensrclist.sh
@@ -1,21 +1,16 @@
 #!/bin/sh
 
-DIRLIST=". Source Source/Metadata Source/FreeImageToolkit Source/LibJPEG Source/LibPNG Source/LibTIFF4 Source/ZLib Source/LibOpenJPEG Source/OpenEXR Source/OpenEXR/Half Source/OpenEXR/Iex Source/OpenEXR/IlmImf Source/OpenEXR/IlmThread Source/OpenEXR/Imath Source/OpenEXR/IexMath Source/LibRawLite Source/LibRawLite/dcraw Source/LibRawLite/internal Source/LibRawLite/libraw Source/LibRawLite/src Source/LibWebP Source/LibJXR Source/LibJXR/common/include Source/LibJXR/image/sys Source/LibJXR/jxrgluelib"
+DIRLIST=`find Source -type d | LC_ALL=C sort`
 
 echo "VER_MAJOR = 3" > Makefile.srcs
 echo "VER_MINOR = 17.0" >> Makefile.srcs
 
 echo -n "SRCS = " >> Makefile.srcs
-for DIR in $DIRLIST; do
-	VCPRJS=`echo $DIR/*.2008.vcproj`
-	if [ "$VCPRJS" != "$DIR/*.2008.vcproj" ]; then
-		egrep 'RelativePath=.*\.(c|cpp)' $DIR/*.2008.vcproj | cut -d'"' -f2 | tr '\\' '/' | awk '{print "'$DIR'/"$0}' | tr '\r\n' '  ' | tr -s ' ' >> Makefile.srcs
-	fi
-done
+find Source -name '*.c' -or -name '*.cpp' -not -name 'PluginG3.cpp' -not -name 'JPEGTransform.cpp' | LC_ALL=C sort | xargs echo -n >> Makefile.srcs
 echo >> Makefile.srcs
 
 echo -n "INCLS = " >> Makefile.srcs
-find . -name "*.h" -print | xargs echo >> Makefile.srcs
+find Source -name '*.h' | LC_ALL=C sort | xargs echo -n >> Makefile.srcs
 echo >> Makefile.srcs
 
 echo -n "INCLUDE =" >> Makefile.srcs
Index: FreeImage/Makefile.srcs
===================================================================
--- FreeImage.orig/Makefile.srcs
+++ FreeImage/Makefile.srcs
@@ -1,6 +1,5 @@
 VER_MAJOR = 3
 VER_MINOR = 17.0
-SRCS = ./Source/FreeImage/BitmapAccess.cpp ./Source/FreeImage/ColorLookup.cpp ./Source/FreeImage/FreeImage.cpp ./Source/FreeImage/FreeImageC.c ./Source/FreeImage/FreeImageIO.cpp ./Source/FreeImage/GetType.cpp ./Source/FreeImage/MemoryIO.cpp ./Source/FreeImage/PixelAccess.cpp ./Source/FreeImage/J2KHelper.cpp ././Source/FreeImage/MNGHelper.cpp ./Source/FreeImage/Plugin.cpp ./Source/FreeImage/PluginBMP.cpp ./Source/FreeImage/PluginCUT.cpp ./Source/FreeImage/PluginDDS.cpp ./Source/FreeImage/PluginEXR.cpp ./Source/FreeImage/PluginG3.cpp ./Source/FreeImage/PluginGIF.cpp ./Source/FreeImage/PluginHDR.cpp ./Source/FreeImage/PluginICO.cpp ./Source/FreeImage/PluginIFF.cpp ./Source/FreeImage/PluginJ2K.cpp ././Source/FreeImage/PluginJNG.cpp ./Source/FreeImage/PluginJP2.cpp ./Source/FreeImage/PluginJPEG.cpp ././Source/FreeImage/PluginJXR.cpp ./Source/FreeImage/PluginKOALA.cpp ./Source/FreeImage/PluginMNG.cpp ./Source/FreeImage/PluginPCD.cpp ./Source/FreeImage/PluginPCX.cpp ./Source/FreeImage/PluginPFM.cpp ./Source/FreeImage/PluginPICT.cpp ./Source/FreeImage/PluginPNG.cpp ./Source/FreeImage/PluginPNM.cpp ./Source/FreeImage/PluginPSD.cpp ./Source/FreeImage/PluginRAS.cpp ./Source/FreeImage/PluginRAW.cpp ./Source/FreeImage/PluginSGI.cpp ./Source/FreeImage/PluginTARGA.cpp ./Source/FreeImage/PluginTIFF.cpp ./Source/FreeImage/PluginWBMP.cpp ././Source/FreeImage/PluginWebP.cpp ./Source/FreeImage/PluginXBM.cpp ./Source/FreeImage/PluginXPM.cpp ./Source/FreeImage/PSDParser.cpp ./Source/FreeImage/TIFFLogLuv.cpp ./Source/FreeImage/Conversion.cpp ./Source/FreeImage/Conversion16_555.cpp ./Source/FreeImage/Conversion16_565.cpp ./Source/FreeImage/Conversion24.cpp ./Source/FreeImage/Conversion32.cpp ./Source/FreeImage/Conversion4.cpp ./Source/FreeImage/Conversion8.cpp ./Source/FreeImage/ConversionFloat.cpp ./Source/FreeImage/ConversionRGB16.cpp ././Source/FreeImage/ConversionRGBA16.cpp ././Source/FreeImage/ConversionRGBAF.cpp ./Source/FreeImage/ConversionRGBF.cpp ./Source/FreeImage/ConversionType.cpp ./Source/FreeImage/ConversionUINT16.cpp ./Source/FreeImage/Halftoning.cpp ./Source/FreeImage/tmoColorConvert.cpp ./Source/FreeImage/tmoDrago03.cpp ./Source/FreeImage/tmoFattal02.cpp ./Source/FreeImage/tmoReinhard05.cpp ./Source/FreeImage/ToneMapping.cpp ././Source/FreeImage/LFPQuantizer.cpp ./Source/FreeImage/NNQuantizer.cpp ./Source/FreeImage/WuQuantizer.cpp ./Source/DeprecationManager/Deprecated.cpp ./Source/DeprecationManager/DeprecationMgr.cpp ./Source/FreeImage/CacheFile.cpp ./Source/FreeImage/MultiPage.cpp ./Source/FreeImage/ZLibInterface.cpp ./Source/Metadata/Exif.cpp ./Source/Metadata/FIRational.cpp ./Source/Metadata/FreeImageTag.cpp ./Source/Metadata/IPTC.cpp ./Source/Metadata/TagConversion.cpp ./Source/Metadata/TagLib.cpp ./Source/Metadata/XTIFF.cpp ./Source/FreeImageToolkit/Background.cpp ./Source/FreeImageToolkit/BSplineRotate.cpp ./Source/FreeImageToolkit/Channels.cpp ./Source/FreeImageToolkit/ClassicRotate.cpp ./Source/FreeImageToolkit/Colors.cpp ./Source/FreeImageToolkit/CopyPaste.cpp ./Source/FreeImageToolkit/Display.cpp ./Source/FreeImageToolkit/Flip.cpp ./Source/FreeImageToolkit/JPEGTransform.cpp ./Source/FreeImageToolkit/MultigridPoissonSolver.cpp ./Source/FreeImageToolkit/Rescale.cpp ./Source/FreeImageToolkit/Resize.cpp Source/LibJPEG/./jaricom.c Source/LibJPEG/jcapimin.c Source/LibJPEG/jcapistd.c Source/LibJPEG/./jcarith.c Source/LibJPEG/jccoefct.c Source/LibJPEG/jccolor.c Source/LibJPEG/jcdctmgr.c Source/LibJPEG/jchuff.c Source/LibJPEG/jcinit.c Source/LibJPEG/jcmainct.c Source/LibJPEG/jcmarker.c Source/LibJPEG/jcmaster.c Source/LibJPEG/jcomapi.c Source/LibJPEG/jcparam.c Source/LibJPEG/jcprepct.c Source/LibJPEG/jcsample.c Source/LibJPEG/jctrans.c Source/LibJPEG/jdapimin.c Source/LibJPEG/jdapistd.c Source/LibJPEG/./jdarith.c Source/LibJPEG/jdatadst.c Source/LibJPEG/jdatasrc.c Source/LibJPEG/jdcoefct.c Source/LibJPEG/jdcolor.c Source/LibJPEG/jddctmgr.c Source/LibJPEG/jdhuff.c Source/LibJPEG/jdinput.c Source/LibJPEG/jdmainct.c Source/LibJPEG/jdmarker.c Source/LibJPEG/jdmaster.c Source/LibJPEG/jdmerge.c Source/LibJPEG/jdpostct.c Source/LibJPEG/jdsample.c Source/LibJPEG/jdtrans.c Source/LibJPEG/jerror.c Source/LibJPEG/jfdctflt.c Source/LibJPEG/jfdctfst.c Source/LibJPEG/jfdctint.c Source/LibJPEG/jidctflt.c Source/LibJPEG/jidctfst.c Source/LibJPEG/jidctint.c Source/LibJPEG/jmemmgr.c Source/LibJPEG/jmemnobs.c Source/LibJPEG/jquant1.c Source/LibJPEG/jquant2.c Source/LibJPEG/jutils.c Source/LibJPEG/transupp.c Source/LibPNG/./png.c Source/LibPNG/./pngerror.c Source/LibPNG/./pngget.c Source/LibPNG/./pngmem.c Source/LibPNG/./pngpread.c Source/LibPNG/./pngread.c Source/LibPNG/./pngrio.c Source/LibPNG/./pngrtran.c Source/LibPNG/./pngrutil.c Source/LibPNG/./pngset.c Source/LibPNG/./pngtrans.c Source/LibPNG/./pngwio.c Source/LibPNG/./pngwrite.c Source/LibPNG/./pngwtran.c Source/LibPNG/./pngwutil.c Source/LibTIFF4/./tif_aux.c Source/LibTIFF4/./tif_close.c Source/LibTIFF4/./tif_codec.c Source/LibTIFF4/./tif_color.c Source/LibTIFF4/./tif_compress.c Source/LibTIFF4/./tif_dir.c Source/LibTIFF4/./tif_dirinfo.c Source/LibTIFF4/./tif_dirread.c Source/LibTIFF4/./tif_dirwrite.c Source/LibTIFF4/./tif_dumpmode.c Source/LibTIFF4/./tif_error.c Source/LibTIFF4/./tif_extension.c Source/LibTIFF4/./tif_fax3.c Source/LibTIFF4/./tif_fax3sm.c Source/LibTIFF4/./tif_flush.c Source/LibTIFF4/./tif_getimage.c Source/LibTIFF4/./tif_jpeg.c Source/LibTIFF4/./tif_luv.c Source/LibTIFF4/./tif_lzma.c Source/LibTIFF4/./tif_lzw.c Source/LibTIFF4/./tif_next.c Source/LibTIFF4/./tif_ojpeg.c Source/LibTIFF4/./tif_open.c Source/LibTIFF4/./tif_packbits.c Source/LibTIFF4/./tif_pixarlog.c Source/LibTIFF4/./tif_predict.c Source/LibTIFF4/./tif_print.c Source/LibTIFF4/./tif_read.c Source/LibTIFF4/./tif_strip.c Source/LibTIFF4/./tif_swab.c Source/LibTIFF4/./tif_thunder.c Source/LibTIFF4/./tif_tile.c Source/LibTIFF4/./tif_version.c Source/LibTIFF4/./tif_warning.c Source/LibTIFF4/./tif_write.c Source/LibTIFF4/./tif_zip.c Source/ZLib/./adler32.c Source/ZLib/./compress.c Source/ZLib/./crc32.c Source/ZLib/./deflate.c Source/ZLib/./gzclose.c Source/ZLib/./gzlib.c Source/ZLib/./gzread.c Source/ZLib/./gzwrite.c Source/ZLib/./infback.c Source/ZLib/./inffast.c Source/ZLib/./inflate.c Source/ZLib/./inftrees.c Source/ZLib/./trees.c Source/ZLib/./uncompr.c Source/ZLib/./zutil.c Source/LibOpenJPEG/bio.c Source/LibOpenJPEG/cio.c Source/LibOpenJPEG/dwt.c Source/LibOpenJPEG/event.c Source/LibOpenJPEG/./function_list.c Source/LibOpenJPEG/image.c Source/LibOpenJPEG/./invert.c Source/LibOpenJPEG/j2k.c Source/LibOpenJPEG/jp2.c Source/LibOpenJPEG/mct.c Source/LibOpenJPEG/mqc.c Source/LibOpenJPEG/openjpeg.c Source/LibOpenJPEG/./opj_clock.c Source/LibOpenJPEG/pi.c Source/LibOpenJPEG/raw.c Source/LibOpenJPEG/t1.c Source/LibOpenJPEG/t2.c Source/LibOpenJPEG/tcd.c Source/LibOpenJPEG/tgt.c Source/OpenEXR/./IlmImf/b44ExpLogTable.cpp Source/OpenEXR/./IlmImf/ImfAcesFile.cpp Source/OpenEXR/./IlmImf/ImfAttribute.cpp Source/OpenEXR/./IlmImf/ImfB44Compressor.cpp Source/OpenEXR/./IlmImf/ImfBoxAttribute.cpp Source/OpenEXR/./IlmImf/ImfChannelList.cpp Source/OpenEXR/./IlmImf/ImfChannelListAttribute.cpp Source/OpenEXR/./IlmImf/ImfChromaticities.cpp Source/OpenEXR/./IlmImf/ImfChromaticitiesAttribute.cpp Source/OpenEXR/./IlmImf/ImfCompositeDeepScanLine.cpp Source/OpenEXR/./IlmImf/ImfCompressionAttribute.cpp Source/OpenEXR/./IlmImf/ImfCompressor.cpp Source/OpenEXR/./IlmImf/ImfConvert.cpp Source/OpenEXR/./IlmImf/ImfCRgbaFile.cpp Source/OpenEXR/./IlmImf/ImfDeepCompositing.cpp Source/OpenEXR/./IlmImf/ImfDeepFrameBuffer.cpp Source/OpenEXR/./IlmImf/ImfDeepImageStateAttribute.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineInputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineInputPart.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineOutputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineOutputPart.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledInputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledInputPart.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledOutputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledOutputPart.cpp Source/OpenEXR/./IlmImf/ImfDoubleAttribute.cpp Source/OpenEXR/./IlmImf/ImfDwaCompressor.cpp Source/OpenEXR/./IlmImf/ImfEnvmap.cpp Source/OpenEXR/./IlmImf/ImfEnvmapAttribute.cpp Source/OpenEXR/./IlmImf/ImfFastHuf.cpp Source/OpenEXR/./IlmImf/ImfFloatAttribute.cpp Source/OpenEXR/./IlmImf/ImfFloatVectorAttribute.cpp Source/OpenEXR/./IlmImf/ImfFrameBuffer.cpp Source/OpenEXR/./IlmImf/ImfFramesPerSecond.cpp Source/OpenEXR/./IlmImf/ImfGenericInputFile.cpp Source/OpenEXR/./IlmImf/ImfGenericOutputFile.cpp Source/OpenEXR/./IlmImf/ImfHeader.cpp Source/OpenEXR/./IlmImf/ImfHuf.cpp Source/OpenEXR/./IlmImf/ImfInputFile.cpp Source/OpenEXR/./IlmImf/ImfInputPart.cpp Source/OpenEXR/./IlmImf/ImfInputPartData.cpp Source/OpenEXR/./IlmImf/ImfIntAttribute.cpp Source/OpenEXR/./IlmImf/ImfIO.cpp Source/OpenEXR/./IlmImf/ImfKeyCode.cpp Source/OpenEXR/./IlmImf/ImfKeyCodeAttribute.cpp Source/OpenEXR/./IlmImf/ImfLineOrderAttribute.cpp Source/OpenEXR/./IlmImf/ImfLut.cpp Source/OpenEXR/./IlmImf/ImfMatrixAttribute.cpp Source/OpenEXR/./IlmImf/ImfMisc.cpp Source/OpenEXR/./IlmImf/ImfMultiPartInputFile.cpp Source/OpenEXR/./IlmImf/ImfMultiPartOutputFile.cpp Source/OpenEXR/./IlmImf/ImfMultiView.cpp Source/OpenEXR/./IlmImf/ImfOpaqueAttribute.cpp Source/OpenEXR/./IlmImf/ImfOutputFile.cpp Source/OpenEXR/./IlmImf/ImfOutputPart.cpp Source/OpenEXR/./IlmImf/ImfOutputPartData.cpp Source/OpenEXR/./IlmImf/ImfPartType.cpp Source/OpenEXR/./IlmImf/ImfPizCompressor.cpp Source/OpenEXR/./IlmImf/ImfPreviewImage.cpp Source/OpenEXR/./IlmImf/ImfPreviewImageAttribute.cpp Source/OpenEXR/./IlmImf/ImfPxr24Compressor.cpp Source/OpenEXR/./IlmImf/ImfRational.cpp Source/OpenEXR/./IlmImf/ImfRationalAttribute.cpp Source/OpenEXR/./IlmImf/ImfRgbaFile.cpp Source/OpenEXR/./IlmImf/ImfRgbaYca.cpp Source/OpenEXR/./IlmImf/ImfRle.cpp Source/OpenEXR/./IlmImf/ImfRleCompressor.cpp Source/OpenEXR/./IlmImf/ImfScanLineInputFile.cpp Source/OpenEXR/./IlmImf/ImfStandardAttributes.cpp Source/OpenEXR/./IlmImf/ImfStdIO.cpp Source/OpenEXR/./IlmImf/ImfStringAttribute.cpp Source/OpenEXR/./IlmImf/ImfStringVectorAttribute.cpp Source/OpenEXR/./IlmImf/ImfSystemSpecific.cpp Source/OpenEXR/./IlmImf/ImfTestFile.cpp Source/OpenEXR/./IlmImf/ImfThreading.cpp Source/OpenEXR/./IlmImf/ImfTileDescriptionAttribute.cpp Source/OpenEXR/./IlmImf/ImfTiledInputFile.cpp Source/OpenEXR/./IlmImf/ImfTiledInputPart.cpp Source/OpenEXR/./IlmImf/ImfTiledMisc.cpp Source/OpenEXR/./IlmImf/ImfTiledOutputFile.cpp Source/OpenEXR/./IlmImf/ImfTiledOutputPart.cpp Source/OpenEXR/./IlmImf/ImfTiledRgbaFile.cpp Source/OpenEXR/./IlmImf/ImfTileOffsets.cpp Source/OpenEXR/./IlmImf/ImfTimeCode.cpp Source/OpenEXR/./IlmImf/ImfTimeCodeAttribute.cpp Source/OpenEXR/./IlmImf/ImfVecAttribute.cpp Source/OpenEXR/./IlmImf/ImfVersion.cpp Source/OpenEXR/./IlmImf/ImfWav.cpp Source/OpenEXR/./IlmImf/ImfZip.cpp Source/OpenEXR/./IlmImf/ImfZipCompressor.cpp Source/OpenEXR/./Imath/ImathBox.cpp Source/OpenEXR/./Imath/ImathColorAlgo.cpp Source/OpenEXR/./Imath/ImathFun.cpp Source/OpenEXR/./Imath/ImathMatrixAlgo.cpp Source/OpenEXR/./Imath/ImathRandom.cpp Source/OpenEXR/./Imath/ImathShear.cpp Source/OpenEXR/./Imath/ImathVec.cpp Source/OpenEXR/./Iex/IexBaseExc.cpp Source/OpenEXR/./Iex/IexThrowErrnoExc.cpp Source/OpenEXR/./Half/half.cpp Source/OpenEXR/./IlmThread/IlmThread.cpp Source/OpenEXR/./IlmThread/IlmThreadMutex.cpp Source/OpenEXR/./IlmThread/IlmThreadPool.cpp Source/OpenEXR/./IlmThread/IlmThreadSemaphore.cpp Source/OpenEXR/./IexMath/IexMathFloatExc.cpp Source/OpenEXR/./IexMath/IexMathFpu.cpp Source/LibRawLite/./internal/dcraw_common.cpp Source/LibRawLite/./internal/dcraw_fileio.cpp Source/LibRawLite/./internal/demosaic_packs.cpp Source/LibRawLite/./src/libraw_c_api.cpp Source/LibRawLite/./src/libraw_cxx.cpp Source/LibRawLite/./src/libraw_datastream.cpp Source/LibWebP/./src/dec/dec.alpha.c Source/LibWebP/./src/dec/dec.buffer.c Source/LibWebP/./src/dec/dec.frame.c Source/LibWebP/./src/dec/dec.idec.c Source/LibWebP/./src/dec/dec.io.c Source/LibWebP/./src/dec/dec.quant.c Source/LibWebP/./src/dec/dec.tree.c Source/LibWebP/./src/dec/dec.vp8.c Source/LibWebP/./src/dec/dec.vp8l.c Source/LibWebP/./src/dec/dec.webp.c Source/LibWebP/./src/dsp/dsp.alpha_processing.c Source/LibWebP/./src/dsp/dsp.alpha_processing_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.alpha_processing_sse2.c Source/LibWebP/./src/dsp/dsp.argb.c Source/LibWebP/./src/dsp/dsp.argb_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.argb_sse2.c Source/LibWebP/./src/dsp/dsp.cost.c Source/LibWebP/./src/dsp/dsp.cost_mips32.c Source/LibWebP/./src/dsp/dsp.cost_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.cost_sse2.c Source/LibWebP/./src/dsp/dsp.cpu.c Source/LibWebP/./src/dsp/dsp.dec.c Source/LibWebP/./src/dsp/dsp.dec_clip_tables.c Source/LibWebP/./src/dsp/dsp.dec_mips32.c Source/LibWebP/./src/dsp/dsp.dec_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.dec_neon.c Source/LibWebP/./src/dsp/dsp.dec_sse2.c Source/LibWebP/./src/dsp/dsp.enc.c Source/LibWebP/./src/dsp/dsp.enc_avx2.c Source/LibWebP/./src/dsp/dsp.enc_mips32.c Source/LibWebP/./src/dsp/dsp.enc_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.enc_neon.c Source/LibWebP/./src/dsp/dsp.enc_sse2.c Source/LibWebP/./src/dsp/dsp.filters.c Source/LibWebP/./src/dsp/dsp.filters_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.filters_sse2.c Source/LibWebP/./src/dsp/dsp.lossless.c Source/LibWebP/./src/dsp/dsp.lossless_mips32.c Source/LibWebP/./src/dsp/dsp.lossless_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.lossless_neon.c Source/LibWebP/./src/dsp/dsp.lossless_sse2.c Source/LibWebP/./src/dsp/dsp.rescaler.c Source/LibWebP/./src/dsp/dsp.rescaler_mips32.c Source/LibWebP/./src/dsp/dsp.rescaler_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.upsampling.c Source/LibWebP/./src/dsp/dsp.upsampling_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.upsampling_neon.c Source/LibWebP/./src/dsp/dsp.upsampling_sse2.c Source/LibWebP/./src/dsp/dsp.yuv.c Source/LibWebP/./src/dsp/dsp.yuv_mips32.c Source/LibWebP/./src/dsp/dsp.yuv_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.yuv_sse2.c Source/LibWebP/./src/enc/enc.alpha.c Source/LibWebP/./src/enc/enc.analysis.c Source/LibWebP/./src/enc/enc.backward_references.c Source/LibWebP/./src/enc/enc.config.c Source/LibWebP/./src/enc/enc.cost.c Source/LibWebP/./src/enc/enc.filter.c Source/LibWebP/./src/enc/enc.frame.c Source/LibWebP/./src/enc/enc.histogram.c Source/LibWebP/./src/enc/enc.iterator.c Source/LibWebP/./src/enc/enc.near_lossless.c Source/LibWebP/./src/enc/enc.picture.c Source/LibWebP/./src/enc/enc.picture_csp.c Source/LibWebP/./src/enc/enc.picture_psnr.c Source/LibWebP/./src/enc/enc.picture_rescale.c Source/LibWebP/./src/enc/enc.picture_tools.c Source/LibWebP/./src/enc/enc.quant.c Source/LibWebP/./src/enc/enc.syntax.c Source/LibWebP/./src/enc/enc.token.c Source/LibWebP/./src/enc/enc.tree.c Source/LibWebP/./src/enc/enc.vp8l.c Source/LibWebP/./src/enc/enc.webpenc.c Source/LibWebP/./src/utils/utils.bit_reader.c Source/LibWebP/./src/utils/utils.bit_writer.c Source/LibWebP/./src/utils/utils.color_cache.c Source/LibWebP/./src/utils/utils.filters.c Source/LibWebP/./src/utils/utils.huffman.c Source/LibWebP/./src/utils/utils.huffman_encode.c Source/LibWebP/./src/utils/utils.quant_levels.c Source/LibWebP/./src/utils/utils.quant_levels_dec.c Source/LibWebP/./src/utils/utils.random.c Source/LibWebP/./src/utils/utils.rescaler.c Source/LibWebP/./src/utils/utils.thread.c Source/LibWebP/./src/utils/utils.utils.c Source/LibWebP/./src/mux/mux.anim_encode.c Source/LibWebP/./src/mux/mux.muxedit.c Source/LibWebP/./src/mux/mux.muxinternal.c Source/LibWebP/./src/mux/mux.muxread.c Source/LibWebP/./src/demux/demux.demux.c Source/LibJXR/./image/decode/decode.c Source/LibJXR/./image/decode/JXRTranscode.c Source/LibJXR/./image/decode/postprocess.c Source/LibJXR/./image/decode/segdec.c Source/LibJXR/./image/decode/strdec.c Source/LibJXR/./image/decode/strdec_x86.c Source/LibJXR/./image/decode/strInvTransform.c Source/LibJXR/./image/decode/strPredQuantDec.c Source/LibJXR/./image/encode/encode.c Source/LibJXR/./image/encode/segenc.c Source/LibJXR/./image/encode/strenc.c Source/LibJXR/./image/encode/strenc_x86.c Source/LibJXR/./image/encode/strFwdTransform.c Source/LibJXR/./image/encode/strPredQuantEnc.c Source/LibJXR/./image/sys/adapthuff.c Source/LibJXR/./image/sys/image.c Source/LibJXR/./image/sys/strcodec.c Source/LibJXR/./image/sys/strPredQuant.c Source/LibJXR/./image/sys/strTransform.c Source/LibJXR/./jxrgluelib/JXRGlue.c Source/LibJXR/./jxrgluelib/JXRGlueJxr.c Source/LibJXR/./jxrgluelib/JXRGluePFC.c Source/LibJXR/./jxrgluelib/JXRMeta.c 
-INCLS = ./Examples/OpenGL/TextureManager/TextureManager.h ./Examples/Plugin/PluginCradle.h ./Examples/Generic/FIIO_Mem.h ./Source/MapIntrospector.h ./Source/FreeImage - Copie.h ./Source/CacheFile.h ./Source/LibTIFF/tiffconf.vc.h ./Source/LibTIFF/tif_config.h ./Source/LibTIFF/tif_fax3.h ./Source/LibTIFF/tif_config.vc.h ./Source/LibTIFF/tiffvers.h ./Source/LibTIFF/tiffio.h ./Source/LibTIFF/tif_config.wince.h ./Source/LibTIFF/tiffconf.wince.h ./Source/LibTIFF/tiff.h ./Source/LibTIFF/uvcode.h ./Source/LibTIFF/tif_dir.h ./Source/LibTIFF/t4.h ./Source/LibTIFF/tif_predict.h ./Source/LibTIFF/tiffiop.h ./Source/LibJPEG/cderror.h ./Source/LibJPEG/jmorecfg.h ./Source/LibJPEG/transupp.h ./Source/LibJPEG/jpeglib.h ./Source/LibJPEG/jversion.h ./Source/LibJPEG/jinclude.h ./Source/LibJPEG/jerror.h ./Source/LibJPEG/jconfig.h ./Source/LibJPEG/jdct.h ./Source/LibJPEG/cdjpeg.h ./Source/LibJPEG/jmemsys.h ./Source/LibJPEG/jpegint.h ./Source/Plugin.h ./Source/Metadata/FreeImageTag.h ./Source/Metadata/FIRational.h ./Source/ToneMapping.h ./Source/LibTIFF4/tiffconf.vc.h ./Source/LibTIFF4/tif_config.h ./Source/LibTIFF4/tif_fax3.h ./Source/LibTIFF4/tif_config.vc.h ./Source/LibTIFF4/tiffvers.h ./Source/LibTIFF4/tiffio.h ./Source/LibTIFF4/tif_config.wince.h ./Source/LibTIFF4/tiffconf.wince.h ./Source/LibTIFF4/tiff.h ./Source/LibTIFF4/uvcode.h ./Source/LibTIFF4/tif_dir.h ./Source/LibTIFF4/t4.h ./Source/LibTIFF4/tif_predict.h ./Source/LibTIFF4/tiffiop.h ./Source/LibTIFF4/tiffconf.h ./Source/LibWebP/src/dec/alphai.h ./Source/LibWebP/src/dec/vp8li.h ./Source/LibWebP/src/dec/decode_vp8.h ./Source/LibWebP/src/dec/webpi.h ./Source/LibWebP/src/dec/vp8i.h ./Source/LibWebP/src/enc/vp8enci.h ./Source/LibWebP/src/enc/histogram.h ./Source/LibWebP/src/enc/vp8li.h ./Source/LibWebP/src/enc/backward_references.h ./Source/LibWebP/src/enc/cost.h ./Source/LibWebP/src/utils/huffman_encode.h ./Source/LibWebP/src/utils/rescaler.h ./Source/LibWebP/src/utils/bit_writer.h ./Source/LibWebP/src/utils/huffman.h ./Source/LibWebP/src/utils/quant_levels.h ./Source/LibWebP/src/utils/thread.h ./Source/LibWebP/src/utils/filters.h ./Source/LibWebP/src/utils/random.h ./Source/LibWebP/src/utils/quant_levels_dec.h ./Source/LibWebP/src/utils/bit_reader_inl.h ./Source/LibWebP/src/utils/color_cache.h ./Source/LibWebP/src/utils/bit_reader.h ./Source/LibWebP/src/utils/endian_inl.h ./Source/LibWebP/src/utils/utils.h ./Source/LibWebP/src/mux/muxi.h ./Source/LibWebP/src/webp/mux.h ./Source/LibWebP/src/webp/types.h ./Source/LibWebP/src/webp/format_constants.h ./Source/LibWebP/src/webp/demux.h ./Source/LibWebP/src/webp/encode.h ./Source/LibWebP/src/webp/decode.h ./Source/LibWebP/src/webp/mux_types.h ./Source/LibWebP/src/dsp/yuv.h ./Source/LibWebP/src/dsp/yuv_tables_sse2.h ./Source/LibWebP/src/dsp/neon.h ./Source/LibWebP/src/dsp/mips_macro.h ./Source/LibWebP/src/dsp/dsp.h ./Source/LibWebP/src/dsp/lossless.h ./Source/FreeImageIO.h ./Source/LibMNG/libmng_data.h ./Source/LibMNG/libmng_jpeg.h ./Source/LibMNG/libmng_conf.h ./Source/LibMNG/libmng.h ./Source/LibMNG/libmng_trace.h ./Source/LibMNG/libmng_zlib.h ./Source/LibMNG/libmng_read.h ./Source/LibMNG/libmng_chunk_io.h ./Source/LibMNG/libmng_filter.h ./Source/LibMNG/libmng_cms.h ./Source/LibMNG/libmng_chunks.h ./Source/LibMNG/libmng_write.h ./Source/LibMNG/libmng_error.h ./Source/LibMNG/libmng_types.h ./Source/LibMNG/libmng_objects.h ./Source/LibMNG/libmng_chunk_prc.h ./Source/LibMNG/libmng_chunk_descr.h ./Source/LibMNG/libmng_display.h ./Source/LibMNG/libmng_pixels.h ./Source/LibMNG/libmng_object_prc.h ./Source/LibMNG/libmng_memory.h ./Source/LibMNG/libmng_dither.h ./Source/FreeImage.h ./Source/FreeImage/PSDParser.h ./Source/FreeImage/J2KHelper.h ./Source/ZLib/trees.h ./Source/ZLib/inffixed.h ./Source/ZLib/inflate.h ./Source/ZLib/zlib.h ./Source/ZLib/zconf.h ./Source/ZLib/inftrees.h ./Source/ZLib/zutil.h ./Source/ZLib/inffast.h ./Source/ZLib/crc32.h ./Source/ZLib/gzguts.h ./Source/ZLib/deflate.h ./Source/Quantizers.h ./Source/LibOpenJPEG/cio.h ./Source/LibOpenJPEG/mqc.h ./Source/LibOpenJPEG/cidx_manager.h ./Source/LibOpenJPEG/function_list.h ./Source/LibOpenJPEG/indexbox_manager.h ./Source/LibOpenJPEG/opj_config.h ./Source/LibOpenJPEG/opj_clock.h ./Source/LibOpenJPEG/event.h ./Source/LibOpenJPEG/opj_codec.h ./Source/LibOpenJPEG/pi.h ./Source/LibOpenJPEG/dwt.h ./Source/LibOpenJPEG/tgt.h ./Source/LibOpenJPEG/invert.h ./Source/LibOpenJPEG/opj_malloc.h ./Source/LibOpenJPEG/raw.h ./Source/LibOpenJPEG/jp2.h ./Source/LibOpenJPEG/bio.h ./Source/LibOpenJPEG/t2.h ./Source/LibOpenJPEG/mct.h ./Source/LibOpenJPEG/t1.h ./Source/LibOpenJPEG/t1_luts.h ./Source/LibOpenJPEG/j2k.h ./Source/LibOpenJPEG/opj_stdint.h ./Source/LibOpenJPEG/opj_config_private.h ./Source/LibOpenJPEG/opj_includes.h ./Source/LibOpenJPEG/opj_intmath.h ./Source/LibOpenJPEG/image.h ./Source/LibOpenJPEG/opj_inttypes.h ./Source/LibOpenJPEG/openjpeg.h ./Source/LibOpenJPEG/tcd.h ./Source/LibRawLite/libraw/libraw_version.h ./Source/LibRawLite/libraw/libraw_const.h ./Source/LibRawLite/libraw/libraw.h ./Source/LibRawLite/libraw/libraw_types.h ./Source/LibRawLite/libraw/libraw_alloc.h ./Source/LibRawLite/libraw/libraw_datastream.h ./Source/LibRawLite/libraw/libraw_internal.h ./Source/LibRawLite/internal/var_defines.h ./Source/LibRawLite/internal/defines.h ./Source/LibRawLite/internal/libraw_internal_funcs.h ./Source/LibPNG/png.h ./Source/LibPNG/pngdebug.h ./Source/LibPNG/pnginfo.h ./Source/LibPNG/pnglibconf.h ./Source/LibPNG/pngstruct.h ./Source/LibPNG/pngpriv.h ./Source/LibPNG/pngconf.h ./Source/LibJXR/common/include/wmspecstrings_strict.h ./Source/LibJXR/common/include/wmspecstring.h ./Source/LibJXR/common/include/guiddef.h ./Source/LibJXR/common/include/wmsal.h ./Source/LibJXR/common/include/wmspecstrings_undef.h ./Source/LibJXR/common/include/wmspecstrings_adt.h ./Source/LibJXR/jxrgluelib/JXRGlue.h ./Source/LibJXR/jxrgluelib/JXRMeta.h ./Source/LibJXR/image/sys/xplatform_image.h ./Source/LibJXR/image/sys/strTransform.h ./Source/LibJXR/image/sys/windowsmediaphoto.h ./Source/LibJXR/image/sys/strcodec.h ./Source/LibJXR/image/sys/ansi.h ./Source/LibJXR/image/sys/perfTimer.h ./Source/LibJXR/image/sys/common.h ./Source/LibJXR/image/decode/decode.h ./Source/LibJXR/image/x86/x86.h ./Source/LibJXR/image/encode/encode.h ./Source/Utilities.h ./Source/FreeImageToolkit/Resize.h ./Source/FreeImageToolkit/Filters.h ./Source/OpenEXR/OpenEXRConfig.h ./Source/OpenEXR/IexMath/IexMathFloatExc.h ./Source/OpenEXR/IexMath/IexMathFpu.h ./Source/OpenEXR/IexMath/IexMathIeeeExc.h ./Source/OpenEXR/IlmThread/IlmThread.h ./Source/OpenEXR/IlmThread/IlmThreadMutex.h ./Source/OpenEXR/IlmThread/IlmThreadForward.h ./Source/OpenEXR/IlmThread/IlmThreadExport.h ./Source/OpenEXR/IlmThread/IlmThreadSemaphore.h ./Source/OpenEXR/IlmThread/IlmThreadPool.h ./Source/OpenEXR/IlmThread/IlmThreadNamespace.h ./Source/OpenEXR/Iex/IexErrnoExc.h ./Source/OpenEXR/Iex/IexMacros.h ./Source/OpenEXR/Iex/IexForward.h ./Source/OpenEXR/Iex/IexExport.h ./Source/OpenEXR/Iex/IexThrowErrnoExc.h ./Source/OpenEXR/Iex/IexNamespace.h ./Source/OpenEXR/Iex/IexMathExc.h ./Source/OpenEXR/Iex/IexBaseExc.h ./Source/OpenEXR/Iex/Iex.h ./Source/OpenEXR/Imath/ImathColorAlgo.h ./Source/OpenEXR/Imath/ImathNamespace.h ./Source/OpenEXR/Imath/ImathVec.h ./Source/OpenEXR/Imath/ImathGL.h ./Source/OpenEXR/Imath/ImathSphere.h ./Source/OpenEXR/Imath/ImathEuler.h ./Source/OpenEXR/Imath/ImathLimits.h ./Source/OpenEXR/Imath/ImathQuat.h ./Source/OpenEXR/Imath/ImathRoots.h ./Source/OpenEXR/Imath/ImathFun.h ./Source/OpenEXR/Imath/ImathExport.h ./Source/OpenEXR/Imath/ImathShear.h ./Source/OpenEXR/Imath/ImathPlane.h ./Source/OpenEXR/Imath/ImathForward.h ./Source/OpenEXR/Imath/ImathHalfLimits.h ./Source/OpenEXR/Imath/ImathFrustumTest.h ./Source/OpenEXR/Imath/ImathMatrixAlgo.h ./Source/OpenEXR/Imath/ImathVecAlgo.h ./Source/OpenEXR/Imath/ImathInterval.h ./Source/OpenEXR/Imath/ImathBox.h ./Source/OpenEXR/Imath/ImathFrame.h ./Source/OpenEXR/Imath/ImathColor.h ./Source/OpenEXR/Imath/ImathMath.h ./Source/OpenEXR/Imath/ImathLine.h ./Source/OpenEXR/Imath/ImathBoxAlgo.h ./Source/OpenEXR/Imath/ImathFrustum.h ./Source/OpenEXR/Imath/ImathExc.h ./Source/OpenEXR/Imath/ImathLineAlgo.h ./Source/OpenEXR/Imath/ImathRandom.h ./Source/OpenEXR/Imath/ImathInt64.h ./Source/OpenEXR/Imath/ImathGLU.h ./Source/OpenEXR/Imath/ImathPlatform.h ./Source/OpenEXR/Imath/ImathMatrix.h ./Source/OpenEXR/IlmImf/ImfDeepScanLineOutputPart.h ./Source/OpenEXR/IlmImf/ImfDeepScanLineInputFile.h ./Source/OpenEXR/IlmImf/ImfIO.h ./Source/OpenEXR/IlmImf/ImfStdIO.h ./Source/OpenEXR/IlmImf/ImfPreviewImage.h ./Source/OpenEXR/IlmImf/ImfAttribute.h ./Source/OpenEXR/IlmImf/ImfDwaCompressor.h ./Source/OpenEXR/IlmImf/ImfChannelList.h ./Source/OpenEXR/IlmImf/ImfInt64.h ./Source/OpenEXR/IlmImf/ImfGenericOutputFile.h ./Source/OpenEXR/IlmImf/ImfHuf.h ./Source/OpenEXR/IlmImf/ImfOptimizedPixelReading.h ./Source/OpenEXR/IlmImf/b44ExpLogTable.h ./Source/OpenEXR/IlmImf/ImfMultiPartOutputFile.h ./Source/OpenEXR/IlmImf/ImfTileDescriptionAttribute.h ./Source/OpenEXR/IlmImf/ImfFastHuf.h ./Source/OpenEXR/IlmImf/dwaLookups.h ./Source/OpenEXR/IlmImf/ImfCompositeDeepScanLine.h ./Source/OpenEXR/IlmImf/ImfDeepFrameBuffer.h ./Source/OpenEXR/IlmImf/ImfInputPartData.h ./Source/OpenEXR/IlmImf/ImfAcesFile.h ./Source/OpenEXR/IlmImf/ImfRgbaYca.h ./Source/OpenEXR/IlmImf/ImfThreading.h ./Source/OpenEXR/IlmImf/ImfWav.h ./Source/OpenEXR/IlmImf/ImfChromaticitiesAttribute.h ./Source/OpenEXR/IlmImf/ImfDwaCompressorSimd.h ./Source/OpenEXR/IlmImf/ImfNamespace.h ./Source/OpenEXR/IlmImf/ImfMatrixAttribute.h ./Source/OpenEXR/IlmImf/ImfTimeCodeAttribute.h ./Source/OpenEXR/IlmImf/ImfInputFile.h ./Source/OpenEXR/IlmImf/ImfDeepScanLineInputPart.h ./Source/OpenEXR/IlmImf/ImfFloatAttribute.h ./Source/OpenEXR/IlmImf/ImfPxr24Compressor.h ./Source/OpenEXR/IlmImf/ImfCompressor.h ./Source/OpenEXR/IlmImf/ImfCRgbaFile.h ./Source/OpenEXR/IlmImf/ImfOutputFile.h ./Source/OpenEXR/IlmImf/ImfTiledInputPart.h ./Source/OpenEXR/IlmImf/ImfRationalAttribute.h ./Source/OpenEXR/IlmImf/ImfTileOffsets.h ./Source/OpenEXR/IlmImf/ImfInputStreamMutex.h ./Source/OpenEXR/IlmImf/ImfIntAttribute.h ./Source/OpenEXR/IlmImf/ImfTiledOutputPart.h ./Source/OpenEXR/IlmImf/ImfPartType.h ./Source/OpenEXR/IlmImf/ImfTiledInputFile.h ./Source/OpenEXR/IlmImf/ImfStringAttribute.h ./Source/OpenEXR/IlmImf/ImfDeepTiledOutputPart.h ./Source/OpenEXR/IlmImf/ImfRleCompressor.h ./Source/OpenEXR/IlmImf/ImfChromaticities.h ./Source/OpenEXR/IlmImf/ImfTestFile.h ./Source/OpenEXR/IlmImf/ImfInputPart.h ./Source/OpenEXR/IlmImf/ImfXdr.h ./Source/OpenEXR/IlmImf/ImfOutputPart.h ./Source/OpenEXR/IlmImf/ImfExport.h ./Source/OpenEXR/IlmImf/ImfRgba.h ./Source/OpenEXR/IlmImf/ImfLineOrder.h ./Source/OpenEXR/IlmImf/ImfCompression.h ./Source/OpenEXR/IlmImf/ImfTiledMisc.h ./Source/OpenEXR/IlmImf/ImfFramesPerSecond.h ./Source/OpenEXR/IlmImf/ImfZipCompressor.h ./Source/OpenEXR/IlmImf/ImfKeyCodeAttribute.h ./Source/OpenEXR/IlmImf/ImfFloatVectorAttribute.h ./Source/OpenEXR/IlmImf/ImfMultiPartInputFile.h ./Source/OpenEXR/IlmImf/ImfDeepTiledOutputFile.h ./Source/OpenEXR/IlmImf/ImfDeepScanLineOutputFile.h ./Source/OpenEXR/IlmImf/ImfRational.h ./Source/OpenEXR/IlmImf/ImfDeepImageStateAttribute.h ./Source/OpenEXR/IlmImf/ImfChannelListAttribute.h ./Source/OpenEXR/IlmImf/ImfDeepCompositing.h ./Source/OpenEXR/IlmImf/ImfOutputPartData.h ./Source/OpenEXR/IlmImf/ImfDeepTiledInputPart.h ./Source/OpenEXR/IlmImf/ImfPreviewImageAttribute.h ./Source/OpenEXR/IlmImf/ImfFrameBuffer.h ./Source/OpenEXR/IlmImf/ImfDeepImageState.h ./Source/OpenEXR/IlmImf/ImfOpaqueAttribute.h ./Source/OpenEXR/IlmImf/ImfEnvmapAttribute.h ./Source/OpenEXR/IlmImf/ImfPizCompressor.h ./Source/OpenEXR/IlmImf/ImfStringVectorAttribute.h ./Source/OpenEXR/IlmImf/ImfMultiView.h ./Source/OpenEXR/IlmImf/ImfAutoArray.h ./Source/OpenEXR/IlmImf/ImfLut.h ./Source/OpenEXR/IlmImf/ImfTiledOutputFile.h ./Source/OpenEXR/IlmImf/ImfBoxAttribute.h ./Source/OpenEXR/IlmImf/ImfCheckedArithmetic.h ./Source/OpenEXR/IlmImf/ImfB44Compressor.h ./Source/OpenEXR/IlmImf/ImfSystemSpecific.h ./Source/OpenEXR/IlmImf/ImfRgbaFile.h ./Source/OpenEXR/IlmImf/ImfTimeCode.h ./Source/OpenEXR/IlmImf/ImfVecAttribute.h ./Source/OpenEXR/IlmImf/ImfDeepTiledInputFile.h ./Source/OpenEXR/IlmImf/ImfZip.h ./Source/OpenEXR/IlmImf/ImfConvert.h ./Source/OpenEXR/IlmImf/ImfMisc.h ./Source/OpenEXR/IlmImf/ImfHeader.h ./Source/OpenEXR/IlmImf/ImfForward.h ./Source/OpenEXR/IlmImf/ImfPartHelper.h ./Source/OpenEXR/IlmImf/ImfKeyCode.h ./Source/OpenEXR/IlmImf/ImfVersion.h ./Source/OpenEXR/IlmImf/ImfStandardAttributes.h ./Source/OpenEXR/IlmImf/ImfPixelType.h ./Source/OpenEXR/IlmImf/ImfName.h ./Source/OpenEXR/IlmImf/ImfSimd.h ./Source/OpenEXR/IlmImf/ImfArray.h ./Source/OpenEXR/IlmImf/ImfOutputStreamMutex.h ./Source/OpenEXR/IlmImf/ImfTiledRgbaFile.h ./Source/OpenEXR/IlmImf/ImfRle.h ./Source/OpenEXR/IlmImf/ImfScanLineInputFile.h ./Source/OpenEXR/IlmImf/ImfDoubleAttribute.h ./Source/OpenEXR/IlmImf/ImfGenericInputFile.h ./Source/OpenEXR/IlmImf/ImfEnvmap.h ./Source/OpenEXR/IlmImf/ImfLineOrderAttribute.h ./Source/OpenEXR/IlmImf/ImfTileDescription.h ./Source/OpenEXR/IlmImf/ImfCompressionAttribute.h ./Source/OpenEXR/IlmBaseConfig.h ./Source/OpenEXR/Half/halfFunction.h ./Source/OpenEXR/Half/halfExport.h ./Source/OpenEXR/Half/half.h ./Source/OpenEXR/Half/eLut.h ./Source/OpenEXR/Half/halfLimits.h ./Source/OpenEXR/Half/toFloat.h ./Source/DeprecationManager/DeprecationMgr.h ./Wrapper/FreeImage.NET/cpp/FreeImageIO/FreeImageIO.Net.h ./Wrapper/FreeImage.NET/cpp/FreeImageIO/Stdafx.h ./Wrapper/FreeImage.NET/cpp/FreeImageIO/resource.h ./Wrapper/FreeImagePlus/FreeImagePlus.h ./Wrapper/FreeImagePlus/test/fipTest.h ./TestAPI/TestSuite.h
-
-INCLUDE = -I. -ISource -ISource/Metadata -ISource/FreeImageToolkit -ISource/LibJPEG -ISource/LibPNG -ISource/LibTIFF4 -ISource/ZLib -ISource/LibOpenJPEG -ISource/OpenEXR -ISource/OpenEXR/Half -ISource/OpenEXR/Iex -ISource/OpenEXR/IlmImf -ISource/OpenEXR/IlmThread -ISource/OpenEXR/Imath -ISource/OpenEXR/IexMath -ISource/LibRawLite -ISource/LibRawLite/dcraw -ISource/LibRawLite/internal -ISource/LibRawLite/libraw -ISource/LibRawLite/src -ISource/LibWebP -ISource/LibJXR -ISource/LibJXR/common/include -ISource/LibJXR/image/sys -ISource/LibJXR/jxrgluelib
+SRCS = Source/DeprecationManager/Deprecated.cpp Source/DeprecationManager/DeprecationMgr.cpp Source/FreeImage/BitmapAccess.cpp Source/FreeImage/CacheFile.cpp Source/FreeImage/ColorLookup.cpp Source/FreeImage/Conversion.cpp Source/FreeImage/Conversion16_555.cpp Source/FreeImage/Conversion16_565.cpp Source/FreeImage/Conversion24.cpp Source/FreeImage/Conversion32.cpp Source/FreeImage/Conversion4.cpp Source/FreeImage/Conversion8.cpp Source/FreeImage/ConversionFloat.cpp Source/FreeImage/ConversionRGB16.cpp Source/FreeImage/ConversionRGBA16.cpp Source/FreeImage/ConversionRGBAF.cpp Source/FreeImage/ConversionRGBF.cpp Source/FreeImage/ConversionType.cpp Source/FreeImage/ConversionUINT16.cpp Source/FreeImage/FreeImage.cpp Source/FreeImage/FreeImageC.c Source/FreeImage/FreeImageIO.cpp Source/FreeImage/GetType.cpp Source/FreeImage/Halftoning.cpp Source/FreeImage/J2KHelper.cpp Source/FreeImage/LFPQuantizer.cpp Source/FreeImage/MNGHelper.cpp Source/FreeImage/MemoryIO.cpp Source/FreeImage/MultiPage.cpp Source/FreeImage/NNQuantizer.cpp Source/FreeImage/PSDParser.cpp Source/FreeImage/PixelAccess.cpp Source/FreeImage/Plugin.cpp Source/FreeImage/PluginBMP.cpp Source/FreeImage/PluginCUT.cpp Source/FreeImage/PluginDDS.cpp Source/FreeImage/PluginEXR.cpp Source/FreeImage/PluginGIF.cpp Source/FreeImage/PluginHDR.cpp Source/FreeImage/PluginICO.cpp Source/FreeImage/PluginIFF.cpp Source/FreeImage/PluginJ2K.cpp Source/FreeImage/PluginJNG.cpp Source/FreeImage/PluginJP2.cpp Source/FreeImage/PluginJPEG.cpp Source/FreeImage/PluginJXR.cpp Source/FreeImage/PluginKOALA.cpp Source/FreeImage/PluginMNG.cpp Source/FreeImage/PluginPCD.cpp Source/FreeImage/PluginPCX.cpp Source/FreeImage/PluginPFM.cpp Source/FreeImage/PluginPICT.cpp Source/FreeImage/PluginPNG.cpp Source/FreeImage/PluginPNM.cpp Source/FreeImage/PluginPSD.cpp Source/FreeImage/PluginRAS.cpp Source/FreeImage/PluginRAW.cpp Source/FreeImage/PluginSGI.cpp Source/FreeImage/PluginTARGA.cpp Source/FreeImage/PluginTIFF.cpp Source/FreeImage/PluginWBMP.cpp Source/FreeImage/PluginWebP.cpp Source/FreeImage/PluginXBM.cpp Source/FreeImage/PluginXPM.cpp Source/FreeImage/TIFFLogLuv.cpp Source/FreeImage/ToneMapping.cpp Source/FreeImage/WuQuantizer.cpp Source/FreeImage/ZLibInterface.cpp Source/FreeImage/tmoColorConvert.cpp Source/FreeImage/tmoDrago03.cpp Source/FreeImage/tmoFattal02.cpp Source/FreeImage/tmoReinhard05.cpp Source/FreeImageToolkit/BSplineRotate.cpp Source/FreeImageToolkit/Background.cpp Source/FreeImageToolkit/Channels.cpp Source/FreeImageToolkit/ClassicRotate.cpp Source/FreeImageToolkit/Colors.cpp Source/FreeImageToolkit/CopyPaste.cpp Source/FreeImageToolkit/Display.cpp Source/FreeImageToolkit/Flip.cpp Source/FreeImageToolkit/MultigridPoissonSolver.cpp Source/FreeImageToolkit/Rescale.cpp Source/FreeImageToolkit/Resize.cpp Source/Metadata/Exif.cpp Source/Metadata/FIRational.cpp Source/Metadata/FreeImageTag.cpp Source/Metadata/IPTC.cpp Source/Metadata/TagConversion.cpp Source/Metadata/TagLib.cpp Source/Metadata/XTIFF.cpp
+INCLS = Source/CacheFile.h Source/DeprecationManager/DeprecationMgr.h Source/FreeImage.h Source/FreeImage/J2KHelper.h Source/FreeImage/PSDParser.h Source/FreeImageIO.h Source/FreeImageToolkit/Filters.h Source/FreeImageToolkit/Resize.h Source/MapIntrospector.h Source/Metadata/FIRational.h Source/Metadata/FreeImageTag.h Source/Plugin.h Source/Quantizers.h Source/ToneMapping.h Source/Utilities.h
+INCLUDE = -ISource -ISource/DeprecationManager -ISource/FreeImage -ISource/FreeImageLib -ISource/FreeImageToolkit -ISource/Metadata
Index: FreeImage/fipMakefile.srcs
===================================================================
--- FreeImage.orig/fipMakefile.srcs
+++ FreeImage/fipMakefile.srcs
@@ -1,4 +1,4 @@
 VER_MAJOR = 3
 VER_MINOR = 17.0
-SRCS = ./Source/FreeImage/BitmapAccess.cpp ./Source/FreeImage/ColorLookup.cpp ./Source/FreeImage/FreeImage.cpp ./Source/FreeImage/FreeImageC.c ./Source/FreeImage/FreeImageIO.cpp ./Source/FreeImage/GetType.cpp ./Source/FreeImage/MemoryIO.cpp ./Source/FreeImage/PixelAccess.cpp ./Source/FreeImage/J2KHelper.cpp ././Source/FreeImage/MNGHelper.cpp ./Source/FreeImage/Plugin.cpp ./Source/FreeImage/PluginBMP.cpp ./Source/FreeImage/PluginCUT.cpp ./Source/FreeImage/PluginDDS.cpp ./Source/FreeImage/PluginEXR.cpp ./Source/FreeImage/PluginG3.cpp ./Source/FreeImage/PluginGIF.cpp ./Source/FreeImage/PluginHDR.cpp ./Source/FreeImage/PluginICO.cpp ./Source/FreeImage/PluginIFF.cpp ./Source/FreeImage/PluginJ2K.cpp ././Source/FreeImage/PluginJNG.cpp ./Source/FreeImage/PluginJP2.cpp ./Source/FreeImage/PluginJPEG.cpp ././Source/FreeImage/PluginJXR.cpp ./Source/FreeImage/PluginKOALA.cpp ./Source/FreeImage/PluginMNG.cpp ./Source/FreeImage/PluginPCD.cpp ./Source/FreeImage/PluginPCX.cpp ./Source/FreeImage/PluginPFM.cpp ./Source/FreeImage/PluginPICT.cpp ./Source/FreeImage/PluginPNG.cpp ./Source/FreeImage/PluginPNM.cpp ./Source/FreeImage/PluginPSD.cpp ./Source/FreeImage/PluginRAS.cpp ./Source/FreeImage/PluginRAW.cpp ./Source/FreeImage/PluginSGI.cpp ./Source/FreeImage/PluginTARGA.cpp ./Source/FreeImage/PluginTIFF.cpp ./Source/FreeImage/PluginWBMP.cpp ././Source/FreeImage/PluginWebP.cpp ./Source/FreeImage/PluginXBM.cpp ./Source/FreeImage/PluginXPM.cpp ./Source/FreeImage/PSDParser.cpp ./Source/FreeImage/TIFFLogLuv.cpp ./Source/FreeImage/Conversion.cpp ./Source/FreeImage/Conversion16_555.cpp ./Source/FreeImage/Conversion16_565.cpp ./Source/FreeImage/Conversion24.cpp ./Source/FreeImage/Conversion32.cpp ./Source/FreeImage/Conversion4.cpp ./Source/FreeImage/Conversion8.cpp ./Source/FreeImage/ConversionFloat.cpp ./Source/FreeImage/ConversionRGB16.cpp ././Source/FreeImage/ConversionRGBA16.cpp ././Source/FreeImage/ConversionRGBAF.cpp ./Source/FreeImage/ConversionRGBF.cpp ./Source/FreeImage/ConversionType.cpp ./Source/FreeImage/ConversionUINT16.cpp ./Source/FreeImage/Halftoning.cpp ./Source/FreeImage/tmoColorConvert.cpp ./Source/FreeImage/tmoDrago03.cpp ./Source/FreeImage/tmoFattal02.cpp ./Source/FreeImage/tmoReinhard05.cpp ./Source/FreeImage/ToneMapping.cpp ././Source/FreeImage/LFPQuantizer.cpp ./Source/FreeImage/NNQuantizer.cpp ./Source/FreeImage/WuQuantizer.cpp ./Source/DeprecationManager/Deprecated.cpp ./Source/DeprecationManager/DeprecationMgr.cpp ./Source/FreeImage/CacheFile.cpp ./Source/FreeImage/MultiPage.cpp ./Source/FreeImage/ZLibInterface.cpp ./Source/Metadata/Exif.cpp ./Source/Metadata/FIRational.cpp ./Source/Metadata/FreeImageTag.cpp ./Source/Metadata/IPTC.cpp ./Source/Metadata/TagConversion.cpp ./Source/Metadata/TagLib.cpp ./Source/Metadata/XTIFF.cpp ./Source/FreeImageToolkit/Background.cpp ./Source/FreeImageToolkit/BSplineRotate.cpp ./Source/FreeImageToolkit/Channels.cpp ./Source/FreeImageToolkit/ClassicRotate.cpp ./Source/FreeImageToolkit/Colors.cpp ./Source/FreeImageToolkit/CopyPaste.cpp ./Source/FreeImageToolkit/Display.cpp ./Source/FreeImageToolkit/Flip.cpp ./Source/FreeImageToolkit/JPEGTransform.cpp ./Source/FreeImageToolkit/MultigridPoissonSolver.cpp ./Source/FreeImageToolkit/Rescale.cpp ./Source/FreeImageToolkit/Resize.cpp Source/LibJPEG/./jaricom.c Source/LibJPEG/jcapimin.c Source/LibJPEG/jcapistd.c Source/LibJPEG/./jcarith.c Source/LibJPEG/jccoefct.c Source/LibJPEG/jccolor.c Source/LibJPEG/jcdctmgr.c Source/LibJPEG/jchuff.c Source/LibJPEG/jcinit.c Source/LibJPEG/jcmainct.c Source/LibJPEG/jcmarker.c Source/LibJPEG/jcmaster.c Source/LibJPEG/jcomapi.c Source/LibJPEG/jcparam.c Source/LibJPEG/jcprepct.c Source/LibJPEG/jcsample.c Source/LibJPEG/jctrans.c Source/LibJPEG/jdapimin.c Source/LibJPEG/jdapistd.c Source/LibJPEG/./jdarith.c Source/LibJPEG/jdatadst.c Source/LibJPEG/jdatasrc.c Source/LibJPEG/jdcoefct.c Source/LibJPEG/jdcolor.c Source/LibJPEG/jddctmgr.c Source/LibJPEG/jdhuff.c Source/LibJPEG/jdinput.c Source/LibJPEG/jdmainct.c Source/LibJPEG/jdmarker.c Source/LibJPEG/jdmaster.c Source/LibJPEG/jdmerge.c Source/LibJPEG/jdpostct.c Source/LibJPEG/jdsample.c Source/LibJPEG/jdtrans.c Source/LibJPEG/jerror.c Source/LibJPEG/jfdctflt.c Source/LibJPEG/jfdctfst.c Source/LibJPEG/jfdctint.c Source/LibJPEG/jidctflt.c Source/LibJPEG/jidctfst.c Source/LibJPEG/jidctint.c Source/LibJPEG/jmemmgr.c Source/LibJPEG/jmemnobs.c Source/LibJPEG/jquant1.c Source/LibJPEG/jquant2.c Source/LibJPEG/jutils.c Source/LibJPEG/transupp.c Source/LibPNG/./png.c Source/LibPNG/./pngerror.c Source/LibPNG/./pngget.c Source/LibPNG/./pngmem.c Source/LibPNG/./pngpread.c Source/LibPNG/./pngread.c Source/LibPNG/./pngrio.c Source/LibPNG/./pngrtran.c Source/LibPNG/./pngrutil.c Source/LibPNG/./pngset.c Source/LibPNG/./pngtrans.c Source/LibPNG/./pngwio.c Source/LibPNG/./pngwrite.c Source/LibPNG/./pngwtran.c Source/LibPNG/./pngwutil.c Source/LibTIFF4/./tif_aux.c Source/LibTIFF4/./tif_close.c Source/LibTIFF4/./tif_codec.c Source/LibTIFF4/./tif_color.c Source/LibTIFF4/./tif_compress.c Source/LibTIFF4/./tif_dir.c Source/LibTIFF4/./tif_dirinfo.c Source/LibTIFF4/./tif_dirread.c Source/LibTIFF4/./tif_dirwrite.c Source/LibTIFF4/./tif_dumpmode.c Source/LibTIFF4/./tif_error.c Source/LibTIFF4/./tif_extension.c Source/LibTIFF4/./tif_fax3.c Source/LibTIFF4/./tif_fax3sm.c Source/LibTIFF4/./tif_flush.c Source/LibTIFF4/./tif_getimage.c Source/LibTIFF4/./tif_jpeg.c Source/LibTIFF4/./tif_luv.c Source/LibTIFF4/./tif_lzma.c Source/LibTIFF4/./tif_lzw.c Source/LibTIFF4/./tif_next.c Source/LibTIFF4/./tif_ojpeg.c Source/LibTIFF4/./tif_open.c Source/LibTIFF4/./tif_packbits.c Source/LibTIFF4/./tif_pixarlog.c Source/LibTIFF4/./tif_predict.c Source/LibTIFF4/./tif_print.c Source/LibTIFF4/./tif_read.c Source/LibTIFF4/./tif_strip.c Source/LibTIFF4/./tif_swab.c Source/LibTIFF4/./tif_thunder.c Source/LibTIFF4/./tif_tile.c Source/LibTIFF4/./tif_version.c Source/LibTIFF4/./tif_warning.c Source/LibTIFF4/./tif_write.c Source/LibTIFF4/./tif_zip.c Source/ZLib/./adler32.c Source/ZLib/./compress.c Source/ZLib/./crc32.c Source/ZLib/./deflate.c Source/ZLib/./gzclose.c Source/ZLib/./gzlib.c Source/ZLib/./gzread.c Source/ZLib/./gzwrite.c Source/ZLib/./infback.c Source/ZLib/./inffast.c Source/ZLib/./inflate.c Source/ZLib/./inftrees.c Source/ZLib/./trees.c Source/ZLib/./uncompr.c Source/ZLib/./zutil.c Source/LibOpenJPEG/bio.c Source/LibOpenJPEG/cio.c Source/LibOpenJPEG/dwt.c Source/LibOpenJPEG/event.c Source/LibOpenJPEG/./function_list.c Source/LibOpenJPEG/image.c Source/LibOpenJPEG/./invert.c Source/LibOpenJPEG/j2k.c Source/LibOpenJPEG/jp2.c Source/LibOpenJPEG/mct.c Source/LibOpenJPEG/mqc.c Source/LibOpenJPEG/openjpeg.c Source/LibOpenJPEG/./opj_clock.c Source/LibOpenJPEG/pi.c Source/LibOpenJPEG/raw.c Source/LibOpenJPEG/t1.c Source/LibOpenJPEG/t2.c Source/LibOpenJPEG/tcd.c Source/LibOpenJPEG/tgt.c Source/OpenEXR/./IlmImf/b44ExpLogTable.cpp Source/OpenEXR/./IlmImf/ImfAcesFile.cpp Source/OpenEXR/./IlmImf/ImfAttribute.cpp Source/OpenEXR/./IlmImf/ImfB44Compressor.cpp Source/OpenEXR/./IlmImf/ImfBoxAttribute.cpp Source/OpenEXR/./IlmImf/ImfChannelList.cpp Source/OpenEXR/./IlmImf/ImfChannelListAttribute.cpp Source/OpenEXR/./IlmImf/ImfChromaticities.cpp Source/OpenEXR/./IlmImf/ImfChromaticitiesAttribute.cpp Source/OpenEXR/./IlmImf/ImfCompositeDeepScanLine.cpp Source/OpenEXR/./IlmImf/ImfCompressionAttribute.cpp Source/OpenEXR/./IlmImf/ImfCompressor.cpp Source/OpenEXR/./IlmImf/ImfConvert.cpp Source/OpenEXR/./IlmImf/ImfCRgbaFile.cpp Source/OpenEXR/./IlmImf/ImfDeepCompositing.cpp Source/OpenEXR/./IlmImf/ImfDeepFrameBuffer.cpp Source/OpenEXR/./IlmImf/ImfDeepImageStateAttribute.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineInputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineInputPart.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineOutputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepScanLineOutputPart.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledInputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledInputPart.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledOutputFile.cpp Source/OpenEXR/./IlmImf/ImfDeepTiledOutputPart.cpp Source/OpenEXR/./IlmImf/ImfDoubleAttribute.cpp Source/OpenEXR/./IlmImf/ImfDwaCompressor.cpp Source/OpenEXR/./IlmImf/ImfEnvmap.cpp Source/OpenEXR/./IlmImf/ImfEnvmapAttribute.cpp Source/OpenEXR/./IlmImf/ImfFastHuf.cpp Source/OpenEXR/./IlmImf/ImfFloatAttribute.cpp Source/OpenEXR/./IlmImf/ImfFloatVectorAttribute.cpp Source/OpenEXR/./IlmImf/ImfFrameBuffer.cpp Source/OpenEXR/./IlmImf/ImfFramesPerSecond.cpp Source/OpenEXR/./IlmImf/ImfGenericInputFile.cpp Source/OpenEXR/./IlmImf/ImfGenericOutputFile.cpp Source/OpenEXR/./IlmImf/ImfHeader.cpp Source/OpenEXR/./IlmImf/ImfHuf.cpp Source/OpenEXR/./IlmImf/ImfInputFile.cpp Source/OpenEXR/./IlmImf/ImfInputPart.cpp Source/OpenEXR/./IlmImf/ImfInputPartData.cpp Source/OpenEXR/./IlmImf/ImfIntAttribute.cpp Source/OpenEXR/./IlmImf/ImfIO.cpp Source/OpenEXR/./IlmImf/ImfKeyCode.cpp Source/OpenEXR/./IlmImf/ImfKeyCodeAttribute.cpp Source/OpenEXR/./IlmImf/ImfLineOrderAttribute.cpp Source/OpenEXR/./IlmImf/ImfLut.cpp Source/OpenEXR/./IlmImf/ImfMatrixAttribute.cpp Source/OpenEXR/./IlmImf/ImfMisc.cpp Source/OpenEXR/./IlmImf/ImfMultiPartInputFile.cpp Source/OpenEXR/./IlmImf/ImfMultiPartOutputFile.cpp Source/OpenEXR/./IlmImf/ImfMultiView.cpp Source/OpenEXR/./IlmImf/ImfOpaqueAttribute.cpp Source/OpenEXR/./IlmImf/ImfOutputFile.cpp Source/OpenEXR/./IlmImf/ImfOutputPart.cpp Source/OpenEXR/./IlmImf/ImfOutputPartData.cpp Source/OpenEXR/./IlmImf/ImfPartType.cpp Source/OpenEXR/./IlmImf/ImfPizCompressor.cpp Source/OpenEXR/./IlmImf/ImfPreviewImage.cpp Source/OpenEXR/./IlmImf/ImfPreviewImageAttribute.cpp Source/OpenEXR/./IlmImf/ImfPxr24Compressor.cpp Source/OpenEXR/./IlmImf/ImfRational.cpp Source/OpenEXR/./IlmImf/ImfRationalAttribute.cpp Source/OpenEXR/./IlmImf/ImfRgbaFile.cpp Source/OpenEXR/./IlmImf/ImfRgbaYca.cpp Source/OpenEXR/./IlmImf/ImfRle.cpp Source/OpenEXR/./IlmImf/ImfRleCompressor.cpp Source/OpenEXR/./IlmImf/ImfScanLineInputFile.cpp Source/OpenEXR/./IlmImf/ImfStandardAttributes.cpp Source/OpenEXR/./IlmImf/ImfStdIO.cpp Source/OpenEXR/./IlmImf/ImfStringAttribute.cpp Source/OpenEXR/./IlmImf/ImfStringVectorAttribute.cpp Source/OpenEXR/./IlmImf/ImfSystemSpecific.cpp Source/OpenEXR/./IlmImf/ImfTestFile.cpp Source/OpenEXR/./IlmImf/ImfThreading.cpp Source/OpenEXR/./IlmImf/ImfTileDescriptionAttribute.cpp Source/OpenEXR/./IlmImf/ImfTiledInputFile.cpp Source/OpenEXR/./IlmImf/ImfTiledInputPart.cpp Source/OpenEXR/./IlmImf/ImfTiledMisc.cpp Source/OpenEXR/./IlmImf/ImfTiledOutputFile.cpp Source/OpenEXR/./IlmImf/ImfTiledOutputPart.cpp Source/OpenEXR/./IlmImf/ImfTiledRgbaFile.cpp Source/OpenEXR/./IlmImf/ImfTileOffsets.cpp Source/OpenEXR/./IlmImf/ImfTimeCode.cpp Source/OpenEXR/./IlmImf/ImfTimeCodeAttribute.cpp Source/OpenEXR/./IlmImf/ImfVecAttribute.cpp Source/OpenEXR/./IlmImf/ImfVersion.cpp Source/OpenEXR/./IlmImf/ImfWav.cpp Source/OpenEXR/./IlmImf/ImfZip.cpp Source/OpenEXR/./IlmImf/ImfZipCompressor.cpp Source/OpenEXR/./Imath/ImathBox.cpp Source/OpenEXR/./Imath/ImathColorAlgo.cpp Source/OpenEXR/./Imath/ImathFun.cpp Source/OpenEXR/./Imath/ImathMatrixAlgo.cpp Source/OpenEXR/./Imath/ImathRandom.cpp Source/OpenEXR/./Imath/ImathShear.cpp Source/OpenEXR/./Imath/ImathVec.cpp Source/OpenEXR/./Iex/IexBaseExc.cpp Source/OpenEXR/./Iex/IexThrowErrnoExc.cpp Source/OpenEXR/./Half/half.cpp Source/OpenEXR/./IlmThread/IlmThread.cpp Source/OpenEXR/./IlmThread/IlmThreadMutex.cpp Source/OpenEXR/./IlmThread/IlmThreadPool.cpp Source/OpenEXR/./IlmThread/IlmThreadSemaphore.cpp Source/OpenEXR/./IexMath/IexMathFloatExc.cpp Source/OpenEXR/./IexMath/IexMathFpu.cpp Source/LibRawLite/./internal/dcraw_common.cpp Source/LibRawLite/./internal/dcraw_fileio.cpp Source/LibRawLite/./internal/demosaic_packs.cpp Source/LibRawLite/./src/libraw_c_api.cpp Source/LibRawLite/./src/libraw_cxx.cpp Source/LibRawLite/./src/libraw_datastream.cpp Source/LibWebP/./src/dec/dec.alpha.c Source/LibWebP/./src/dec/dec.buffer.c Source/LibWebP/./src/dec/dec.frame.c Source/LibWebP/./src/dec/dec.idec.c Source/LibWebP/./src/dec/dec.io.c Source/LibWebP/./src/dec/dec.quant.c Source/LibWebP/./src/dec/dec.tree.c Source/LibWebP/./src/dec/dec.vp8.c Source/LibWebP/./src/dec/dec.vp8l.c Source/LibWebP/./src/dec/dec.webp.c Source/LibWebP/./src/dsp/dsp.alpha_processing.c Source/LibWebP/./src/dsp/dsp.alpha_processing_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.alpha_processing_sse2.c Source/LibWebP/./src/dsp/dsp.argb.c Source/LibWebP/./src/dsp/dsp.argb_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.argb_sse2.c Source/LibWebP/./src/dsp/dsp.cost.c Source/LibWebP/./src/dsp/dsp.cost_mips32.c Source/LibWebP/./src/dsp/dsp.cost_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.cost_sse2.c Source/LibWebP/./src/dsp/dsp.cpu.c Source/LibWebP/./src/dsp/dsp.dec.c Source/LibWebP/./src/dsp/dsp.dec_clip_tables.c Source/LibWebP/./src/dsp/dsp.dec_mips32.c Source/LibWebP/./src/dsp/dsp.dec_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.dec_neon.c Source/LibWebP/./src/dsp/dsp.dec_sse2.c Source/LibWebP/./src/dsp/dsp.enc.c Source/LibWebP/./src/dsp/dsp.enc_avx2.c Source/LibWebP/./src/dsp/dsp.enc_mips32.c Source/LibWebP/./src/dsp/dsp.enc_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.enc_neon.c Source/LibWebP/./src/dsp/dsp.enc_sse2.c Source/LibWebP/./src/dsp/dsp.filters.c Source/LibWebP/./src/dsp/dsp.filters_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.filters_sse2.c Source/LibWebP/./src/dsp/dsp.lossless.c Source/LibWebP/./src/dsp/dsp.lossless_mips32.c Source/LibWebP/./src/dsp/dsp.lossless_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.lossless_neon.c Source/LibWebP/./src/dsp/dsp.lossless_sse2.c Source/LibWebP/./src/dsp/dsp.rescaler.c Source/LibWebP/./src/dsp/dsp.rescaler_mips32.c Source/LibWebP/./src/dsp/dsp.rescaler_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.upsampling.c Source/LibWebP/./src/dsp/dsp.upsampling_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.upsampling_neon.c Source/LibWebP/./src/dsp/dsp.upsampling_sse2.c Source/LibWebP/./src/dsp/dsp.yuv.c Source/LibWebP/./src/dsp/dsp.yuv_mips32.c Source/LibWebP/./src/dsp/dsp.yuv_mips_dsp_r2.c Source/LibWebP/./src/dsp/dsp.yuv_sse2.c Source/LibWebP/./src/enc/enc.alpha.c Source/LibWebP/./src/enc/enc.analysis.c Source/LibWebP/./src/enc/enc.backward_references.c Source/LibWebP/./src/enc/enc.config.c Source/LibWebP/./src/enc/enc.cost.c Source/LibWebP/./src/enc/enc.filter.c Source/LibWebP/./src/enc/enc.frame.c Source/LibWebP/./src/enc/enc.histogram.c Source/LibWebP/./src/enc/enc.iterator.c Source/LibWebP/./src/enc/enc.near_lossless.c Source/LibWebP/./src/enc/enc.picture.c Source/LibWebP/./src/enc/enc.picture_csp.c Source/LibWebP/./src/enc/enc.picture_psnr.c Source/LibWebP/./src/enc/enc.picture_rescale.c Source/LibWebP/./src/enc/enc.picture_tools.c Source/LibWebP/./src/enc/enc.quant.c Source/LibWebP/./src/enc/enc.syntax.c Source/LibWebP/./src/enc/enc.token.c Source/LibWebP/./src/enc/enc.tree.c Source/LibWebP/./src/enc/enc.vp8l.c Source/LibWebP/./src/enc/enc.webpenc.c Source/LibWebP/./src/utils/utils.bit_reader.c Source/LibWebP/./src/utils/utils.bit_writer.c Source/LibWebP/./src/utils/utils.color_cache.c Source/LibWebP/./src/utils/utils.filters.c Source/LibWebP/./src/utils/utils.huffman.c Source/LibWebP/./src/utils/utils.huffman_encode.c Source/LibWebP/./src/utils/utils.quant_levels.c Source/LibWebP/./src/utils/utils.quant_levels_dec.c Source/LibWebP/./src/utils/utils.random.c Source/LibWebP/./src/utils/utils.rescaler.c Source/LibWebP/./src/utils/utils.thread.c Source/LibWebP/./src/utils/utils.utils.c Source/LibWebP/./src/mux/mux.anim_encode.c Source/LibWebP/./src/mux/mux.muxedit.c Source/LibWebP/./src/mux/mux.muxinternal.c Source/LibWebP/./src/mux/mux.muxread.c Source/LibWebP/./src/demux/demux.demux.c Source/LibJXR/./image/decode/decode.c Source/LibJXR/./image/decode/JXRTranscode.c Source/LibJXR/./image/decode/postprocess.c Source/LibJXR/./image/decode/segdec.c Source/LibJXR/./image/decode/strdec.c Source/LibJXR/./image/decode/strdec_x86.c Source/LibJXR/./image/decode/strInvTransform.c Source/LibJXR/./image/decode/strPredQuantDec.c Source/LibJXR/./image/encode/encode.c Source/LibJXR/./image/encode/segenc.c Source/LibJXR/./image/encode/strenc.c Source/LibJXR/./image/encode/strenc_x86.c Source/LibJXR/./image/encode/strFwdTransform.c Source/LibJXR/./image/encode/strPredQuantEnc.c Source/LibJXR/./image/sys/adapthuff.c Source/LibJXR/./image/sys/image.c Source/LibJXR/./image/sys/strcodec.c Source/LibJXR/./image/sys/strPredQuant.c Source/LibJXR/./image/sys/strTransform.c Source/LibJXR/./jxrgluelib/JXRGlue.c Source/LibJXR/./jxrgluelib/JXRGlueJxr.c Source/LibJXR/./jxrgluelib/JXRGluePFC.c Source/LibJXR/./jxrgluelib/JXRMeta.c Wrapper/FreeImagePlus/src/fipImage.cpp Wrapper/FreeImagePlus/src/fipMemoryIO.cpp Wrapper/FreeImagePlus/src/fipMetadataFind.cpp Wrapper/FreeImagePlus/src/fipMultiPage.cpp Wrapper/FreeImagePlus/src/fipTag.cpp Wrapper/FreeImagePlus/src/fipWinImage.cpp Wrapper/FreeImagePlus/src/FreeImagePlus.cpp 
-INCLUDE = -I. -ISource -ISource/Metadata -ISource/FreeImageToolkit -ISource/LibJPEG -ISource/LibPNG -ISource/LibTIFF4 -ISource/ZLib -ISource/LibOpenJPEG -ISource/OpenEXR -ISource/OpenEXR/Half -ISource/OpenEXR/Iex -ISource/OpenEXR/IlmImf -ISource/OpenEXR/IlmThread -ISource/OpenEXR/Imath -ISource/OpenEXR/IexMath -ISource/LibRawLite -ISource/LibRawLite/dcraw -ISource/LibRawLite/internal -ISource/LibRawLite/libraw -ISource/LibRawLite/src -ISource/LibWebP -ISource/LibJXR -ISource/LibJXR/common/include -ISource/LibJXR/image/sys -ISource/LibJXR/jxrgluelib -IWrapper/FreeImagePlus
+SRCS = Wrapper/FreeImagePlus/src/FreeImagePlus.cpp Wrapper/FreeImagePlus/src/fipImage.cpp Wrapper/FreeImagePlus/src/fipMemoryIO.cpp Wrapper/FreeImagePlus/src/fipMetadataFind.cpp Wrapper/FreeImagePlus/src/fipMultiPage.cpp Wrapper/FreeImagePlus/src/fipTag.cpp Wrapper/FreeImagePlus/src/fipWinImage.cpp
+INCLUDE = -IWrapper/FreeImagePlus
#include "FreeImage.h"
#include <assert.h>

int main(int argc, char** argv) {
  FREE_IMAGE_FORMAT fif = FreeImage_GetFileType(argv[1], 0);
  assert(fif == FIF_RAW); //passes: BUG
  assert(fif == FIF_WEBP); //do not passes but was expected to
}

Attachment: image.j2k
Description: Binary data

Reply via email to