diff options
author | Mike Frysinger <vapier@gentoo.org> | 2013-01-10 05:04:39 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2013-01-10 05:04:39 +0000 |
commit | 27c025a92c5d5a97ba0d00da2ca985fb86d00d4c (patch) | |
tree | eed76f9a8ca8bbdb873b2da25159dd74fe654be8 /media-libs/freeimage | |
parent | I am sure this is unimpressive but I need it for metasploit and it works so, ... (diff) | |
download | historical-27c025a92c5d5a97ba0d00da2ca985fb86d00d4c.tar.gz historical-27c025a92c5d5a97ba0d00da2ca985fb86d00d4c.tar.bz2 historical-27c025a92c5d5a97ba0d00da2ca985fb86d00d4c.zip |
Make all the graphics libs optional via USE flags.
Package-Manager: portage-2.2.0_alpha144/cvs/Linux x86_64
Manifest-Sign-Key: 0xFB7C4156
Diffstat (limited to 'media-libs/freeimage')
-rw-r--r-- | media-libs/freeimage/ChangeLog | 8 | ||||
-rw-r--r-- | media-libs/freeimage/Manifest | 30 | ||||
-rw-r--r-- | media-libs/freeimage/files/freeimage-3.15.3-r2-unbundling.patch | 639 | ||||
-rw-r--r-- | media-libs/freeimage/freeimage-3.15.3-r2.ebuild | 99 |
4 files changed, 761 insertions, 15 deletions
diff --git a/media-libs/freeimage/ChangeLog b/media-libs/freeimage/ChangeLog index 08f6a8320e96..082e45e0332f 100644 --- a/media-libs/freeimage/ChangeLog +++ b/media-libs/freeimage/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for media-libs/freeimage # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/freeimage/ChangeLog,v 1.20 2013/01/09 23:38:23 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/freeimage/ChangeLog,v 1.21 2013/01/10 05:04:34 vapier Exp $ + +*freeimage-3.15.3-r2 (10 Jan 2013) + + 10 Jan 2013; Mike Frysinger <vapier@gentoo.org> + +files/freeimage-3.15.3-r2-unbundling.patch, +freeimage-3.15.3-r2.ebuild: + Make all the graphics libs optional via USE flags. *freeimage-3.15.3-r1 (09 Jan 2013) diff --git a/media-libs/freeimage/Manifest b/media-libs/freeimage/Manifest index a533cb0a84a4..e145e3555dda 100644 --- a/media-libs/freeimage/Manifest +++ b/media-libs/freeimage/Manifest @@ -2,27 +2,29 @@ Hash: SHA256 AUX freeimage-3.15.3-r1-unbundling.patch 8855 SHA256 e4fcf7c853ffa8ad59f09e09c53c9eb23eb2589ce16e6facb423ac6c74b6eb71 SHA512 d8b69f8add6016ee0204b4916608d17888f6945e8c67cc89b3e5846bbf945443c58a3b096697e0d3018c993fb6b54f59e95db71619fc481c4f1f54da5c10adb1 WHIRLPOOL f7f916fae38ba5630132b67f343fa9e5b95940864bd2bb12340c0be0c3eaefa1a1c6f279f5e03c09f0add70a9ec949bab2ef10e88fcb5bc132d97814e7faf04e +AUX freeimage-3.15.3-r2-unbundling.patch 17182 SHA256 8fe72d50ca18b98041d70e8bd53dc681b6c59dbdf1ac142e01233009a5e6e452 SHA512 473d9ede61b1edeac78ff7b460949247f245cda67dc514c96f4bde957aa7f94cb4cad39dd7165719b58a956a1ec754204af5798b41ff0bd9379a06fd2b31a910 WHIRLPOOL f15e13ffefa477434970a3172b3c6a464f77ae390ccff9ae1e089721cf926a78ac17967b11c599d4d80ee31231b070f9e604803e956b4db8d565d46f985b015c AUX freeimage-3.15.3-unbundling.patch 9053 SHA256 b98d92187eb34518a6219a45f0a71e0cc7909df7583b886069392264d4cc2ff4 SHA512 02f6bfd62bb54370d65660249bf7fa7e27dea0aeeabea782a47748baad119f6635ac5954449989aa487deda27739ad6dd8db42e287e3e1e70b211495b0643650 WHIRLPOOL ed2b4e7c0208a2d8e1177f3ff09e8d2a108ab57721846ec06ee68546ca591929f8df4130b327d66e384b63eef201ee955eb2fe7a5309a9b302494c5ce0c6878e DIST FreeImage3153.pdf 1004540 SHA256 325767978f0208a6dd2d2f6cb1cc184cea6aec843d9948a051c41b6a16284546 SHA512 91775a5ec9227fc5a42431383157d82d2d2bd40b92e234518e4b347cfd20c873fb29ec84289d7bdee127b01c02b9eb5da24c386d6f78a7346684fccee158f939 WHIRLPOOL afdad90143a9ed3a62fa8dd0666355fdeaa3689e15873778b47927f6a6c170da88d7891f94f5889c94a5a54d608845c16a6c033a65afc9477d9deec9f12af5ee DIST FreeImage3153.zip 4681769 SHA256 4618d59f2d9a20583b0f5fec99dcf832ccc3f317897b10592b85e7648375c044 SHA512 2cc38218cf1e8d403faa71d2337009ff6c0c60e1833eea2e19ddaf2fedba001198f4bff9805c4e815653d7bee79bac6a9132a7c9af69f59d5ee1cae531ad2069 WHIRLPOOL 89f8ecd1152d303b7c5613314ab7f2b68d66fb5c1cccf214e58a8c031a6d22ad842a5b37240ab38d9f6eb035f6d6a688afe6591da9c22898e882b1baecac0e50 EBUILD freeimage-3.15.3-r1.ebuild 2257 SHA256 a241dc0d1105090ded70983d9a66aa0264d7f15ccc9f8566404bb3e88d2de775 SHA512 7b84a6dff47f9e4cfafc8ee3d5d0a64e33718a128042a4f8ced46bb813dff74ae714e33efa73c34d442420a2b6dae9dce8563a3f57208eb1f7a2d7273dc7826e WHIRLPOOL 805536059bfaf31187d55aa92f15c45081ac361f50894f742d982133206567721bf38c35b8d070015c80ae8dcc62a1e92f311c1a4b38537410c4bef907665c9a +EBUILD freeimage-3.15.3-r2.ebuild 2543 SHA256 9cb5d95f42133208f4ce3dd30fd0d06acd29a8b2a51fbd893521dd6b4e81bd69 SHA512 a4ae36c00d5baa59d90f9e1792148d1e3afb114aaee0f144ae4e52194af068da9e61c48d815da80ddb157262334fb162c43bdf4e2d1416c7cb5d2aeaf8cd71e2 WHIRLPOOL 817253453a9cf310271e5b2066113b1ab288abbda86faa35b9fac91ddb333420d44d8b43eb181da85516134a6a3faae2bf6164fc15a644167154b8d7691d41d2 EBUILD freeimage-3.15.3.ebuild 2549 SHA256 5d0449129a65c55f24a64376f206fb4297c85997fa00adbd1b7c2f7580a7f184 SHA512 ed445f56268bbfcdd861e75fabfe4bd48190f6a86be9fd54535d5466d836ba71333396e2c63185a3b1a3728a997550a7a8dc677608483420062940e28d5e7580 WHIRLPOOL 98436ceb9940f877e4436f15a3bfdd670981d8b4149b66fcd6af6362e70c9a16408e72086613f481220ae7508c8aef7b86209be78066e154372d1e513b098083 -MISC ChangeLog 3043 SHA256 4ec4a85199569e55e8f980f35a47071c45efe61f15635b7e92830d77e414ddee SHA512 05f3922181435fd320b1fe58100f1c254def9f4f5805611be8433a959bd444ba662d3dd68c623137cc885da913ca32368d243ef349a6556d09b032050f7efcd5 WHIRLPOOL bd897a3b542625de1262e743ab9c8d7415ee606cb38d2ba41accb6c9ebd77588c538861ffa1cb1b7811363aa37145fa8538e8159ece43b31c673e8feac42331d +MISC ChangeLog 3259 SHA256 2f83adb2ec9f4a9e2beddf0bc5aca5530d11c2ae1f9695d44d99c8fe2e505a26 SHA512 8f40ae1e74eae3e603aebcb838fbd7f3fecdecd20cda417a30c948dd8f3e7342e8c5147e18917fade16bbbef062bf74309ad3e7100e8ffad619e0a3a1e0b05d4 WHIRLPOOL b11236fd8a6ad63a266fe34ca38571aff129da462797354afdb6d814451ab80db416c4d6455679b196672c04835dae677a6a508749109bd7d11dc3d16af5ade9 MISC metadata.xml 158 SHA256 1423a4fdd4a79b1728a2056d9e300f7e1074253095d82726218d9e9b953888a3 SHA512 d954564236b67b6ab97846b73f74e715e8f1bec2dba6595e9a5046c2e8c3b93f4879c293f9d1d02d99a533bee56156dae3f31a485697128c51af14cdbfdada8a WHIRLPOOL d03e7293d09d794d61c095a423f945b3644355a247f270a73ca8d30b4dfe9c98244297536bfd1a4bd6c14794aa1152eca20fd83bfdf3e1e74d4f676152d35ada -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) -iQIcBAEBCAAGBQJQ7gALAAoJELEHsLL7fEFWq3YP/1M0hpbVrdgUAmfsXGs4YAgK -oisotd10+8OmEFhNjJI+23ZYmwuUxIX7ddTNefvFMxdjvst22lzcCGnS91Js/UZP -Y9RdUTYroaAj2nbqI70Rlw8MqeBon/i/gO9ZjZ7syC/yimRYm6flNnDeSMvxbb9U -v0EYDIPxxtbu9A3acOX+Mzas7WeJAoAObhRPedEeAqNgsARlYLIhw+Y5OTybEDN1 -mRM4/J1TvjrpnQ6hOmj5crDjuIJRWvY1WeFXcQPK/Omq10+WRZkLIbrA7rVfvp2o -5dCuIynlmZRTPC4tw4c00BrJdPxbJ4LCcg9Ahx7Ak1C3ZmtMOMoAmAfeSHG1H4X8 -rGV7fYbLluGac1sS9Dn0tur7m7/1912OdV9oynmEVgaQnvDmrtyZy1Xb694VEYnT -0pv+V/Mkj9jbnayIF43s4Djnsd9Yu7m919YYvcDUo/gjNftFk/FmMTHcMArSyTNl -D9wrjeWTqFuM9xPdDgcz3nFvO3nVB2S2S0ufxzqFJ++Nay15SJ00ke5mjCQjHkOx -lwPwY2x010g49DJc3CUFqoxpTusCU7TxJ4PXYFqnCdJQmHgXNQfst5dGOzI8gw3y -CU8wtKphGmT6SM+0A1W2fpBjdl1knNcj/90qkKY2nQbSZkWsYodfJW5912pAQNoh -yWjWZ+3RPZ4nFOAmXL8i -=yHvF +iQIcBAEBCAAGBQJQ7kx/AAoJELEHsLL7fEFW3QEP/Ais6z/6oUIHXf982/R06StT +wakfkqkcimGxYCYfQQuoWWKp4Z5p89ARZSf7+lgFFMM5oTXCwNpFqYPhzPviDKq/ +/eEz/T0cSaw8RRBdEvFjf2qUxjpXe8Goc/22iF9yAIS6LYK6Ttc5PucljCZHvgJZ +Zk5NTpP0qHV071oa3RuMtzqne2yKaJdafLdtd7FccgyHNtEdj+mk3LLz2J3kNdQc +JoCzYD+ORa25dee8XZQcore5eWTfWmwkyFC6dCLehn3OqoT60bBDuD/41h9IMTLv +v8ITDN10yzhnofalpy3h5w9yr8IGJsNDTSkfBo4i3MShleIxAV0XIZlPgvXUfibs +HwgSAHbgNFrDVtxCh/2lXNbosLfGAm0f+ZR+hkpA4W1zsv6QSBYYfI6KrZI+n1yR +rpse6IxTS8LBNPEvlfld/KuRLO2Y5D77oRkVuYSi0DuUm2SPXcdsi8YQnu/sxaTy +LaNHmbUmvVK4ccSuizFsEjdnYqqx2Xoq4HcbnPgVxkouLjus95L8WZVSurc7uMZf +V1MB2Uu4z4jvVa7Zi4XBWExyFetCZwXHKvcG/Q84CAJaqnNcxOWYV3cqldakCvnS +2Lmnq/4Sk67B/e/zcJt2HL+6/TAmMPqNKfmmMy4Wrq93y8O2ICU356qL76v6JEGO +/c1E9MmFVC/7sRtMXAfv +=dP7E -----END PGP SIGNATURE----- diff --git a/media-libs/freeimage/files/freeimage-3.15.3-r2-unbundling.patch b/media-libs/freeimage/files/freeimage-3.15.3-r2-unbundling.patch new file mode 100644 index 000000000000..f83d87f5ae51 --- /dev/null +++ b/media-libs/freeimage/files/freeimage-3.15.3-r2-unbundling.patch @@ -0,0 +1,639 @@ +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 + diff --git a/media-libs/freeimage/freeimage-3.15.3-r2.ebuild b/media-libs/freeimage/freeimage-3.15.3-r2.ebuild new file mode 100644 index 000000000000..c4eabb375f67 --- /dev/null +++ b/media-libs/freeimage/freeimage-3.15.3-r2.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/freeimage/freeimage-3.15.3-r2.ebuild,v 1.1 2013/01/10 05:04:34 vapier Exp $ + +EAPI="4" + +inherit toolchain-funcs eutils multilib + +MY_PN=FreeImage +MY_PV=${PV//.} +MY_P=${MY_PN}${MY_PV} + +DESCRIPTION="Image library supporting many formats" +HOMEPAGE="http://freeimage.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.zip + mirror://sourceforge/${PN}/${MY_P}.pdf" + +LICENSE="|| ( GPL-2 FIPL-1.0 )" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="jpeg jpeg2k mng openexr png raw static-libs tiff" + +# The tiff/ilmbase isn't a typo. The TIFF plugin cheats and +# uses code from it to handle 16bit<->float conversions. +RDEPEND="sys-libs/zlib + jpeg? ( virtual/jpeg ) + jpeg2k? ( media-libs/openjpeg ) + mng? ( media-libs/libmng ) + openexr? ( media-libs/openexr ) + png? ( media-libs/libpng ) + raw? ( media-libs/libraw ) + tiff? ( + media-libs/ilmbase + media-libs/tiff + )" +DEPEND="${RDEPEND} + virtual/pkgconfig + app-arch/unzip" + +S=${WORKDIR}/${MY_PN} + +src_prepare() { + cd Source + cp LibJPEG/{transupp.c,transupp.h,jinclude.h} . || die + cp LibTIFF4/{tiffiop,tif_dir}.h . || die + rm -rf LibPNG LibMNG LibOpenJPEG ZLib OpenEXR LibRawLite LibTIFF4 LibJPEG || die + cd .. + edos2unix Makefile.{gnu,fip,srcs} fipMakefile.srcs */*.h */*/*.cpp + sed -i \ + -e "s:/./:/:g" \ + -e "s: ./: :g" \ + -e 's: Source: \\\n\tSource:g' \ + -e 's: Wrapper: \\\n\tWrapper:g' \ + -e 's: Examples: \\\n\tExamples:g' \ + -e 's: TestAPI: \\\n\tTestAPI:g' \ + -e 's: -ISource: \\\n\t-ISource:g' \ + -e 's: -IWrapper: \\\n\t-IWrapper:g' \ + Makefile.srcs fipMakefile.srcs || die + sed -i \ + -e "/LibJPEG/d" \ + -e "/LibPNG/d" \ + -e "/LibTIFF/d" \ + -e "/Source\/ZLib/d" \ + -e "/LibOpenJPEG/d" \ + -e "/OpenEXR/d" \ + -e "/LibRawLite/d" \ + -e "/LibMNG/d" \ + Makefile.srcs fipMakefile.srcs || die + epatch "${FILESDIR}"/${PF}-unbundling.patch +} + +foreach_make() { + local m + for m in Makefile.{gnu,fip} ; do + emake -f ${m} \ + USE_EXR=$(usex openexr) \ + USE_JPEG=$(usex jpeg) \ + USE_JPEG2K=$(usex jpeg2k) \ + USE_MNG=$(usex mng) \ + USE_PNG=$(usex png) \ + USE_TIFF=$(usex tiff) \ + USE_RAW=$(usex raw) \ + $(usex static-libs '' STATICLIB=) \ + "$@" + done +} + +src_compile() { + tc-export AR PKG_CONFIG + foreach_make \ + CXX="$(tc-getCXX) -fPIC" \ + CC="$(tc-getCC) -fPIC" \ + ${MY_PN} +} + +src_install() { + foreach_make install DESTDIR="${ED}" INSTALLDIR="${ED}"/usr/$(get_libdir) + dodoc Whatsnew.txt "${DISTDIR}"/${MY_P}.pdf +} |