blob: f83d87f5ae515f11d25cdd12710eea8089ac5706 [file] [log] [blame]
lots of fixes here:
- use system graphics libraries
- make all of them optional
- drop root users from install (fix user installs)
- make static lib build optional
- link with CXX and CXXFLAGS (since this is C++ code)
--- Makefile.gnu
+++ Makefile.gnu
@@ -11,7 +11,24 @@
# Converts cr/lf to just lf
DOS2UNIX = dos2unix
-LIBRARIES = -lstdc++
+PKG_CONFIG ?= pkg-config
+
+USE_EXR ?= yes
+USE_JPEG ?= yes
+USE_JPEG2K ?= yes
+USE_MNG ?= yes
+USE_PNG ?= yes
+USE_TIFF ?= yes
+USE_RAW ?= yes
+
+LIBRARIES-yes = $(shell $(PKG_CONFIG) --libs zlib)
+LIBRARIES-$(USE_EXR) += $(shell $(PKG_CONFIG) --libs OpenEXR)
+LIBRARIES-$(USE_JPEG) += -ljpeg
+LIBRARIES-$(USE_JPEG2K) += $(shell $(PKG_CONFIG) --libs libopenjpeg)
+LIBRARIES-$(USE_MNG) += -lmng
+LIBRARIES-$(USE_PNG) += $(shell $(PKG_CONFIG) --libs libpng)
+LIBRARIES-$(USE_TIFF) += $(shell $(PKG_CONFIG) --libs libtiff-4 IlmBase)
+LIBRARIES-$(USE_RAW) += $(shell $(PKG_CONFIG) --libs libraw)
MODULES = $(SRCS:.c=.o)
MODULES := $(MODULES:.cpp=.o)
@@ -64,13 +81,15 @@
$(AR) r $@ $(MODULES)
$(SHAREDLIB): $(MODULES)
- $(CC) -s -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)
+ $(CXX) $(CXXFLAGS) -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES-yes)
install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
+ install -m 644 $(HEADER) $(INCDIR)
+ifneq ($(STATICLIB),)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
+endif
+ install -m 755 $(SHAREDLIB) $(INSTALLDIR)
ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)
# ldconfig
--- Source/FreeImage/J2KHelper.cpp
+++ Source/FreeImage/J2KHelper.cpp
@@ -21,7 +21,7 @@
#include "FreeImage.h"
#include "Utilities.h"
-#include "../LibOpenJPEG/openjpeg.h"
+#include <openjpeg.h>
/**
Divide an integer by a power of 2 and round upwards
--- Source/FreeImage/PluginEXR.cpp
+++ Source/FreeImage/PluginEXR.cpp
@@ -22,16 +22,16 @@
#include "FreeImage.h"
#include "Utilities.h"
-#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 <ImfIO.h>
+#include <Iex.h>
+#include <ImfOutputFile.h>
+#include <ImfInputFile.h>
+#include <ImfRgbaFile.h>
+#include <ImfChannelList.h>
+#include <ImfRgba.h>
+#include <ImfArray.h>
+#include <ImfPreviewImage.h>
+#include <half.h>
// ==========================================================
--- Source/FreeImage/PluginJ2K.cpp
+++ Source/FreeImage/PluginJ2K.cpp
@@ -21,7 +21,7 @@
#include "FreeImage.h"
#include "Utilities.h"
-#include "../LibOpenJPEG/openjpeg.h"
+#include <openjpeg.h>
// ==========================================================
// Plugin Interface
--- Source/FreeImage/PluginJP2.cpp
+++ Source/FreeImage/PluginJP2.cpp
@@ -21,7 +21,7 @@
#include "FreeImage.h"
#include "Utilities.h"
-#include "../LibOpenJPEG/openjpeg.h"
+#include <openjpeg.h>
// ==========================================================
// Plugin Interface
--- Source/FreeImage/PluginPNG.cpp
+++ Source/FreeImage/PluginPNG.cpp
@@ -37,8 +37,8 @@
// ----------------------------------------------------------
-#include "../ZLib/zlib.h"
-#include "../LibPNG/png.h"
+#include <zlib.h>
+#include <png.h>
// ----------------------------------------------------------
--- Source/transupp.c
+++ Source/transupp.c
@@ -15,8 +15,7 @@
/* Although this file really shouldn't have access to the library internals,
* it's helpful to let it call jround_up() and jcopy_block_row().
*/
-#define JPEG_INTERNALS
-
+#include <jerror.h>
#include "jinclude.h"
#include "jpeglib.h"
#include "transupp.h" /* My own external interface */
--- Source/FreeImage/ZLibInterface.cpp
+++ Source/FreeImage/ZLibInterface.cpp
@@ -19,10 +19,10 @@
// 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) */
+#define OS_CODE 0x03
/**
Compresses a source buffer into a target buffer, using the ZLib library.
--- Source/FreeImage/PluginG3.cpp
+++ Source/FreeImage/PluginG3.cpp
@@ -20,7 +20,7 @@
// Use at your own risk!
// ==========================================================
-#include "../LibTIFF4/tiffiop.h"
+#include "tiffiop.h"
#include "FreeImage.h"
#include "Utilities.h"
--- Source/FreeImage/PluginJPEG.cpp
+++ Source/FreeImage/PluginJPEG.cpp
@@ -35,11 +35,15 @@
#undef FAR
#include <setjmp.h>
-#include "../LibJPEG/jinclude.h"
-#include "../LibJPEG/jpeglib.h"
-#include "../LibJPEG/jerror.h"
+#include <string.h>
+#include <stdio.h>
+#include <jconfig.h>
+#include <jpeglib.h>
+#include <jerror.h>
}
+#define SIZEOF(object) ((size_t) sizeof(object))
+
#include "FreeImage.h"
#include "Utilities.h"
--- Source/FreeImageToolkit/JPEGTransform.cpp
+++ Source/FreeImageToolkit/JPEGTransform.cpp
@@ -25,10 +25,11 @@
#undef FAR
#include <setjmp.h>
-#include "../LibJPEG/jinclude.h"
-#include "../LibJPEG/jpeglib.h"
-#include "../LibJPEG/jerror.h"
-#include "../LibJPEG/transupp.h"
+#include <string.h>
+#include <stdio.h>
+#include <jpeglib.h>
+#include <jerror.h>
+#include "transupp.h"
}
#include "FreeImage.h"
--- Makefile.fip
+++ Makefile.fip
@@ -11,7 +11,24 @@
# Converts cr/lf to just lf
DOS2UNIX = dos2unix
-LIBRARIES = -lstdc++
+PKG_CONFIG ?= pkg-config
+
+USE_EXR ?= yes
+USE_JPEG ?= yes
+USE_JPEG2K ?= yes
+USE_MNG ?= yes
+USE_PNG ?= yes
+USE_TIFF ?= yes
+USE_RAW ?= yes
+
+LIBRARIES-yes = $(shell $(PKG_CONFIG) --libs zlib)
+LIBRARIES-$(USE_EXR) += $(shell $(PKG_CONFIG) --libs OpenEXR)
+LIBRARIES-$(USE_JPEG) += -ljpeg
+LIBRARIES-$(USE_JPEG2K) += $(shell $(PKG_CONFIG) --libs libopenjpeg)
+LIBRARIES-$(USE_MNG) += -lmng
+LIBRARIES-$(USE_PNG) += $(shell $(PKG_CONFIG) --libs libpng)
+LIBRARIES-$(USE_TIFF) += $(shell $(PKG_CONFIG) --libs libtiff-4 IlmBase)
+LIBRARIES-$(USE_RAW) += $(shell $(PKG_CONFIG) --libs libraw)
MODULES = $(SRCS:.c=.o)
MODULES := $(MODULES:.cpp=.o)
@@ -65,14 +82,18 @@
$(AR) r $@ $(MODULES)
$(SHAREDLIB): $(MODULES)
- $(CC) -s -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)
+ $(CXX) $(CXXFLAGS) -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES-yes)
install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(HEADERFIP) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
+ install -m 644 $(HEADER) $(INCDIR)
+ install -m 644 $(HEADERFIP) $(INCDIR)
+ifneq ($(STATICLIB),)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
+endif
+ install -m 755 $(SHAREDLIB) $(INSTALLDIR)
+ ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
+ ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)
clean:
rm -f core Dist/*.* u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB) $(LIBNAME)
--- Makefile.srcs
+++ Makefile.srcs
@@ -1,6 +1,14 @@
+USE_EXR ?= yes
+USE_JPEG ?= yes
+USE_JPEG2K ?= yes
+USE_MNG ?= yes
+USE_PNG ?= yes
+USE_TIFF ?= yes
+USE_RAW ?= yes
+
VER_MAJOR = 3
VER_MINOR = 15.3
-SRCS = \
+SRCS-yes = \
Source/FreeImage/BitmapAccess.cpp \
Source/FreeImage/ColorLookup.cpp \
Source/FreeImage/FreeImage.cpp \
@@ -17,36 +25,74 @@ SRCS = \
Source/FreeImage/GetType.cpp \
Source/FreeImage/MemoryIO.cpp \
Source/FreeImage/PixelAccess.cpp \
+
+SRCS-$(USE_JPEG2K) += \
Source/FreeImage/J2KHelper.cpp \
+
+SRCS-$(USE_MNG) += \
Source/FreeImage/MNGHelper.cpp \
+
+SRCS-yes += \
Source/FreeImage/Plugin.cpp \
Source/FreeImage/PluginBMP.cpp \
Source/FreeImage/PluginCUT.cpp \
Source/FreeImage/PluginDDS.cpp \
+
+SRCS-$(USE_EXR) += \
Source/FreeImage/PluginEXR.cpp \
+
+SRCS-$(USE_TIFF) += \
Source/FreeImage/PluginG3.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginGIF.cpp \
Source/FreeImage/PluginHDR.cpp \
Source/FreeImage/PluginICO.cpp \
Source/FreeImage/PluginIFF.cpp \
+
+SRCS-$(USE_JPEG2K) += \
Source/FreeImage/PluginJ2K.cpp \
+
+SRCS-$(USE_MNG) += \
Source/FreeImage/PluginJNG.cpp \
+
+SRCS-$(USE_JPEG2K) += \
Source/FreeImage/PluginJP2.cpp \
+
+SRCS-$(USE_JPEG) += \
Source/FreeImage/PluginJPEG.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginKOALA.cpp \
+
+SRCS-$(USE_MNG) += \
Source/FreeImage/PluginMNG.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginPCD.cpp \
Source/FreeImage/PluginPCX.cpp \
Source/FreeImage/PluginPFM.cpp \
Source/FreeImage/PluginPICT.cpp \
+
+SRCS-$(USE_PNG) += \
Source/FreeImage/PluginPNG.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginPNM.cpp \
Source/FreeImage/PluginPSD.cpp \
Source/FreeImage/PluginRAS.cpp \
+
+SRCS-$(USE_RAW) += \
Source/FreeImage/PluginRAW.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginSGI.cpp \
Source/FreeImage/PluginTARGA.cpp \
+
+SRCS-$(USE_TIFF) += \
Source/FreeImage/PluginTIFF.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginWBMP.cpp \
Source/FreeImage/PluginXBM.cpp \
Source/FreeImage/PluginXPM.cpp \
@@ -83,7 +129,11 @@ SRCS = \
Source/Metadata/IPTC.cpp \
Source/Metadata/TagConversion.cpp \
Source/Metadata/TagLib.cpp \
+
+SRCS-$(USE_TIFF) += \
Source/Metadata/XTIFF.cpp \
+
+SRCS-yes += \
Source/FreeImageToolkit/Background.cpp \
Source/FreeImageToolkit/BSplineRotate.cpp \
Source/FreeImageToolkit/Channels.cpp \
@@ -92,10 +142,18 @@ SRCS = \
Source/FreeImageToolkit/CopyPaste.cpp \
Source/FreeImageToolkit/Display.cpp \
Source/FreeImageToolkit/Flip.cpp \
+
+SRCS-$(USE_JPEG) += \
Source/FreeImageToolkit/JPEGTransform.cpp \
+
+SRCS-yes += \
Source/FreeImageToolkit/MultigridPoissonSolver.cpp \
Source/FreeImageToolkit/Rescale.cpp \
Source/FreeImageToolkit/Resize.cpp \
+
+SRCS-$(USE_JPEG) += \
+ Source/transupp.c
+SRCS = $(SRCS-yes)
INCLS = \
Examples/OpenGL/TextureManager/TextureManager.h \
Examples/Plugin/PluginCradle.h \
@@ -116,7 +174,17 @@
Wrapper/FreeImagePlus/test/fipTest.h \
TestAPI/TestSuite.h
-INCLUDE = -I. \
+INCLUDE-yes = -I. \
-ISource \
-ISource/Metadata \
-ISource/FreeImageToolkit \
+
+INCLUDE-yes += $(shell $(PKG_CONFIG) --cflags-only-I zlib)
+INCLUDE-$(USE_EXR) += -DUSE_EXR $(shell $(PKG_CONFIG) --cflags-only-I OpenEXR)
+INCLUDE-$(USE_JPEG) += -DUSE_JPEG
+INCLUDE-$(USE_JPEG2K) += -DUSE_JPEG2K $(shell $(PKG_CONFIG) --cflags-only-I libopenjpeg)
+INCLUDE-$(USE_MNG) += -DUSE_MNG
+INCLUDE-$(USE_PNG) += -DUSE_PNG $(shell $(PKG_CONFIG) --cflags-only-I libpng)
+INCLUDE-$(USE_TIFF) += -DUSE_TIFF $(shell $(PKG_CONFIG) --cflags-only-I libtiff-4 IlmBase)
+INCLUDE-$(USE_RAW) += -DUSE_RAW $(shell $(PKG_CONFIG) --cflags-only-I libraw)
+INCLUDE = $(INCLUDE-yes)
--- fipMakefile.srcs
+++ fipMakefile.srcs
@@ -1,6 +1,14 @@
+USE_EXR ?= yes
+USE_JPEG ?= yes
+USE_JPEG2K ?= yes
+USE_MNG ?= yes
+USE_PNG ?= yes
+USE_TIFF ?= yes
+USE_RAW ?= yes
+
VER_MAJOR = 3
VER_MINOR = 15.3
-SRCS = \
+SRCS-yes = \
Source/FreeImage/BitmapAccess.cpp \
Source/FreeImage/ColorLookup.cpp \
Source/FreeImage/FreeImage.cpp \
@@ -9,36 +17,74 @@
Source/FreeImage/GetType.cpp \
Source/FreeImage/MemoryIO.cpp \
Source/FreeImage/PixelAccess.cpp \
+
+SRCS-$(USE_JPEG2K) += \
Source/FreeImage/J2KHelper.cpp \
+
+SRCS-$(USE_MNG) += \
Source/FreeImage/MNGHelper.cpp \
+
+SRCS-yes += \
Source/FreeImage/Plugin.cpp \
Source/FreeImage/PluginBMP.cpp \
Source/FreeImage/PluginCUT.cpp \
Source/FreeImage/PluginDDS.cpp \
+
+SRCS-$(USE_EXR) += \
Source/FreeImage/PluginEXR.cpp \
+
+SRCS-$(USE_TIFF) += \
Source/FreeImage/PluginG3.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginGIF.cpp \
Source/FreeImage/PluginHDR.cpp \
Source/FreeImage/PluginICO.cpp \
Source/FreeImage/PluginIFF.cpp \
+
+SRCS-$(USE_JPEG2K) += \
Source/FreeImage/PluginJ2K.cpp \
+
+SRCS-$(USE_MNG) += \
Source/FreeImage/PluginJNG.cpp \
+
+SRCS-$(USE_JPEG2K) += \
Source/FreeImage/PluginJP2.cpp \
+
+SRCS-$(USE_JPEG) += \
Source/FreeImage/PluginJPEG.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginKOALA.cpp \
+
+SRCS-$(USE_MNG) += \
Source/FreeImage/PluginMNG.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginPCD.cpp \
Source/FreeImage/PluginPCX.cpp \
Source/FreeImage/PluginPFM.cpp \
Source/FreeImage/PluginPICT.cpp \
+
+SRCS-$(USE_PNG) += \
Source/FreeImage/PluginPNG.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginPNM.cpp \
Source/FreeImage/PluginPSD.cpp \
Source/FreeImage/PluginRAS.cpp \
+
+SRCS-$(USE_RAW) += \
Source/FreeImage/PluginRAW.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginSGI.cpp \
Source/FreeImage/PluginTARGA.cpp \
+
+SRCS-$(USE_TIFF) += \
Source/FreeImage/PluginTIFF.cpp \
+
+SRCS-yes += \
Source/FreeImage/PluginWBMP.cpp \
Source/FreeImage/PluginXBM.cpp \
Source/FreeImage/PluginXPM.cpp \
@@ -75,7 +121,11 @@
Source/Metadata/IPTC.cpp \
Source/Metadata/TagConversion.cpp \
Source/Metadata/TagLib.cpp \
+
+SRCS-$(USE_TIFF) += \
Source/Metadata/XTIFF.cpp \
+
+SRCS-yes += \
Source/FreeImageToolkit/Background.cpp \
Source/FreeImageToolkit/BSplineRotate.cpp \
Source/FreeImageToolkit/Channels.cpp \
@@ -84,7 +134,11 @@
Source/FreeImageToolkit/CopyPaste.cpp \
Source/FreeImageToolkit/Display.cpp \
Source/FreeImageToolkit/Flip.cpp \
+
+SRCS-$(USE_JPEG) += \
Source/FreeImageToolkit/JPEGTransform.cpp \
+
+SRCS-yes += \
Source/FreeImageToolkit/MultigridPoissonSolver.cpp \
Source/FreeImageToolkit/Rescale.cpp \
Source/FreeImageToolkit/Resize.cpp \
@@ -95,6 +149,11 @@
Wrapper/FreeImagePlus/src/fipTag.cpp \
Wrapper/FreeImagePlus/src/fipWinImage.cpp \
Wrapper/FreeImagePlus/src/FreeImagePlus.cpp
+
+SRCS-$(USE_JPEG) += \
+ Source/transupp.c
+
+SRCS = $(SRCS-yes)
INCLUDE = -I. \
-ISource \
-ISource/Metadata \
--- Source/FreeImage/PluginRAW.cpp
+++ Source/FreeImage/PluginRAW.cpp
@@ -19,7 +19,7 @@
// Use at your own risk!
// ==========================================================
-#include "../LibRawLite/libraw/libraw.h"
+#include <libraw.h>
#include "FreeImage.h"
#include "Utilities.h"
--- Source/Metadata/XTIFF.cpp
+++ Source/Metadata/XTIFF.cpp
@@ -29,7 +29,7 @@
#pragma warning (disable : 4786) // identifier was truncated to 'number' characters
#endif
-#include "../LibTIFF4/tiffiop.h"
+#include "tiffiop.h"
#include "FreeImage.h"
#include "Utilities.h"
--- Source/FreeImage/PluginTIFF.cpp
+++ Source/FreeImage/PluginTIFF.cpp
@@ -37,9 +37,9 @@
#include "FreeImage.h"
#include "Utilities.h"
-#include "../LibTIFF4/tiffiop.h"
+#include "tiffiop.h"
#include "../Metadata/FreeImageTag.h"
-#include "../OpenEXR/Half/half.h"
+#include <half.h>
#include "FreeImageIO.h"
#include "PSDParser.h"
--- Source/tiffiop.h
+++ Source/tiffiop.h
@@ -30,7 +30,9 @@
* ``Library-private'' definitions.
*/
-#include "tif_config.h"
+#include <tiffconf.h>
+#define HAVE_SEARCH_H
+#define HAVE_FCNTL_H
#ifdef HAVE_FCNTL_H
# include <fcntl.h>
--- Source/FreeImage/Plugin.cpp
+++ Source/FreeImage/Plugin.cpp
@@ -223,23 +223,33 @@
*/
s_plugins->AddNode(InitBMP);
s_plugins->AddNode(InitICO);
+#ifdef USE_JPEG
s_plugins->AddNode(InitJPEG);
+#endif
+#ifdef USE_MNG
s_plugins->AddNode(InitJNG);
+#endif
s_plugins->AddNode(InitKOALA);
s_plugins->AddNode(InitIFF);
+#ifdef USE_MNG
s_plugins->AddNode(InitMNG);
+#endif
s_plugins->AddNode(InitPNM, NULL, "PBM", "Portable Bitmap (ASCII)", "pbm", "^P1");
s_plugins->AddNode(InitPNM, NULL, "PBMRAW", "Portable Bitmap (RAW)", "pbm", "^P4");
s_plugins->AddNode(InitPCD);
s_plugins->AddNode(InitPCX);
s_plugins->AddNode(InitPNM, NULL, "PGM", "Portable Greymap (ASCII)", "pgm", "^P2");
s_plugins->AddNode(InitPNM, NULL, "PGMRAW", "Portable Greymap (RAW)", "pgm", "^P5");
+#ifdef USE_PNG
s_plugins->AddNode(InitPNG);
+#endif
s_plugins->AddNode(InitPNM, NULL, "PPM", "Portable Pixelmap (ASCII)", "ppm", "^P3");
s_plugins->AddNode(InitPNM, NULL, "PPMRAW", "Portable Pixelmap (RAW)", "ppm", "^P6");
s_plugins->AddNode(InitRAS);
s_plugins->AddNode(InitTARGA);
+#ifdef USE_TIFF
s_plugins->AddNode(InitTIFF);
+#endif
s_plugins->AddNode(InitWBMP);
s_plugins->AddNode(InitPSD);
s_plugins->AddNode(InitCUT);
@@ -248,14 +258,22 @@
s_plugins->AddNode(InitDDS);
s_plugins->AddNode(InitGIF);
s_plugins->AddNode(InitHDR);
+#ifdef USE_TIFF
s_plugins->AddNode(InitG3);
+#endif
s_plugins->AddNode(InitSGI);
+#ifdef USE_EXR
s_plugins->AddNode(InitEXR);
+#endif
+#ifdef USE_JPEG2K
s_plugins->AddNode(InitJ2K);
s_plugins->AddNode(InitJP2);
+#endif
s_plugins->AddNode(InitPFM);
s_plugins->AddNode(InitPICT);
+#ifdef USE_RAW
s_plugins->AddNode(InitRAW);
+#endif
// external plugin initialization