diff --git a/recipes-graphics/devil/devil/Fix-GCC-5.2-erros.patch b/recipes-graphics/devil/devil/Fix-GCC-5.2-erros.patch deleted file mode 100644 index b99dfd9..0000000 --- a/recipes-graphics/devil/devil/Fix-GCC-5.2-erros.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur devil-1.7.8_org/include/IL/il.h devil-1.7.8/include/IL/il.h ---- devil-1.7.8_org/include/IL/il.h 2015-12-16 14:31:33.105076974 -0600 -+++ devil-1.7.8/include/IL/il.h 2015-12-16 14:33:47.000000000 -0600 -@@ -63,13 +63,13 @@ - #endif - #endif - --#ifdef RESTRICT_KEYWORD --#define RESTRICT restrict --#define CONST_RESTRICT const restrict -+#if defined(RESTRICT_KEYWORD) && !defined(__cplusplus) -+#define RESTRICT __restrict__ -+#define CONST_RESTRICT const __restrict__ - #else - #define RESTRICT - #define CONST_RESTRICT const --#endif -+#endif // RESTRICT keyword and not C++ - - #include - diff --git a/recipes-graphics/devil/devil/M4Patch.patch b/recipes-graphics/devil/devil/M4Patch.patch deleted file mode 100644 index ad67adf..0000000 --- a/recipes-graphics/devil/devil/M4Patch.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- devil-1.7.8/m4/devil-definitions.m4 -+++ devil-1.7.8/m4/devil-definitions.m4 -@@ -244,12 +244,12 @@ - - AC_DEFUN([SETTLE_PNG], - [DEVIL_IL_LIB([png.h], -- [png12]) -- AS_IF([test "x$have_png12" = "xno"], -+ [png]) -+ AS_IF([test "x$have_png" = "xno"], - [DEVIL_IL_LIB([png.h], - [png]) - lib_test_result="$have_png"], -- [lib_test_result="$have_png12"]) -+ [lib_test_result="$have_png"]) - AS_IF([test "x$lib_test_result" = "xyes"], - [MAYBE_OPTIONAL_DEPENDENCY([IL], - [libpng]) ]) ]) diff --git a/recipes-graphics/devil/devil/il_manip_c.patch b/recipes-graphics/devil/devil/il_manip_c.patch deleted file mode 100644 index 7bf852c..0000000 --- a/recipes-graphics/devil/devil/il_manip_c.patch +++ /dev/null @@ -1,211 +0,0 @@ ---- devil-1.7.8/src-IL/src/il_manip.c 2009-03-25 13:30:42.000000000 -0600 -+++ devil-1.7.8/src-IL/src/il_manip.c 2014-05-21 19:09:33.017902907 -0500 -@@ -13,6 +13,208 @@ - #include "il_internal.h" - #include "il_manip.h" - -+ILushort ILAPIENTRY ilFloatToHalf(ILuint i) { -+ // -+ // Our floating point number, f, is represented by the bit -+ // pattern in integer i. Disassemble that bit pattern into -+ // the sign, s, the exponent, e, and the significand, m. -+ // Shift s into the position where it will go in in the -+ // resulting half number. -+ // Adjust e, accounting for the different exponent bias -+ // of float and half (127 versus 15). -+ // -+ -+ register int s = (i >> 16) & 0x00008000; -+ register int e = ((i >> 23) & 0x000000ff) - (127 - 15); -+ register int m = i & 0x007fffff; -+ -+ // -+ // Now reassemble s, e and m into a half: -+ // -+ -+ if (e <= 0) -+ { -+ if (e < -10) -+ { -+ // -+ // E is less than -10. The absolute value of f is -+ // less than HALF_MIN (f may be a small normalized -+ // float, a denormalized float or a zero). -+ // -+ // We convert f to a half zero. -+ // -+ -+ return 0; -+ } -+ -+ // -+ // E is between -10 and 0. F is a normalized float, -+ // whose magnitude is less than HALF_NRM_MIN. -+ // -+ // We convert f to a denormalized half. -+ // -+ -+ m = (m | 0x00800000) >> (1 - e); -+ -+ // -+ // Round to nearest, round "0.5" up. -+ // -+ // Rounding may cause the significand to overflow and make -+ // our number normalized. Because of the way a half's bits -+ // are laid out, we don't have to treat this case separately; -+ // the code below will handle it correctly. -+ // -+ -+ if (m & 0x00001000) -+ m += 0x00002000; -+ -+ // -+ // Assemble the half from s, e (zero) and m. -+ // -+ -+ return s | (m >> 13); -+ } -+ else if (e == 0xff - (127 - 15)) -+ { -+ if (m == 0) -+ { -+ // -+ // F is an infinity; convert f to a half -+ // infinity with the same sign as f. -+ // -+ -+ return s | 0x7c00; -+ } -+ else -+ { -+ // -+ // F is a NAN; we produce a half NAN that preserves -+ // the sign bit and the 10 leftmost bits of the -+ // significand of f, with one exception: If the 10 -+ // leftmost bits are all zero, the NAN would turn -+ // into an infinity, so we have to set at least one -+ // bit in the significand. -+ // -+ -+ m >>= 13; -+ return s | 0x7c00 | m | (m == 0); -+ } -+ } -+ else -+ { -+ // -+ // E is greater than zero. F is a normalized float. -+ // We try to convert f to a normalized half. -+ // -+ -+ // -+ // Round to nearest, round "0.5" up -+ // -+ -+ if (m & 0x00001000) -+ { -+ m += 0x00002000; -+ -+ if (m & 0x00800000) -+ { -+ m = 0; // overflow in significand, -+ e += 1; // adjust exponent -+ } -+ } -+ -+ // -+ // Handle exponent overflow -+ // -+ -+ if (e > 30) -+ { -+ ilFloatToHalfOverflow(); // Cause a hardware floating point overflow; -+ return s | 0x7c00; // if this returns, the half becomes an -+ } // infinity with the same sign as f. -+ -+ // -+ // Assemble the half from s, e and m. -+ // -+ -+ return s | (e << 10) | (m >> 13); -+ } -+} -+ -+// Taken from OpenEXR -+ILuint ILAPIENTRY ilHalfToFloat (ILushort y) { -+ -+ int s = (y >> 15) & 0x00000001; -+ int e = (y >> 10) & 0x0000001f; -+ int m = y & 0x000003ff; -+ -+ if (e == 0) -+ { -+ if (m == 0) -+ { -+ // -+ // Plus or minus zero -+ // -+ -+ return s << 31; -+ } -+ else -+ { -+ // -+ // Denormalized number -- renormalize it -+ // -+ -+ while (!(m & 0x00000400)) -+ { -+ m <<= 1; -+ e -= 1; -+ } -+ -+ e += 1; -+ m &= ~0x00000400; -+ } -+ } -+ else if (e == 31) -+ { -+ if (m == 0) -+ { -+ // -+ // Positive or negative infinity -+ // -+ -+ return (s << 31) | 0x7f800000; -+ } -+ else -+ { -+ // -+ // Nan -- preserve sign and significand bits -+ // -+ -+ return (s << 31) | 0x7f800000 | (m << 13); -+ } -+ } -+ -+ // -+ // Normalized number -+ // -+ -+ e = e + (127 - 15); -+ m = m << 13; -+ -+ // -+ // Assemble s, e and m. -+ // -+ -+ return (s << 31) | (e << 23) | m; -+} -+ -+ILfloat /*ILAPIENTRY*/ ilFloatToHalfOverflow() { -+ ILfloat f = 1e10; -+ ILint j; -+ for (j = 0; j < 10; j++) -+ f *= f; // this will overflow before -+ // the for loop terminates -+ return f; -+} - - ILAPI void ILAPIENTRY iFlipBuffer(ILubyte *buff, ILuint depth, ILuint line_size, ILuint line_num) - { diff --git a/recipes-graphics/devil/devil/il_manip_h.patch b/recipes-graphics/devil/devil/il_manip_h.patch deleted file mode 100644 index 53ea091..0000000 --- a/recipes-graphics/devil/devil/il_manip_h.patch +++ /dev/null @@ -1,220 +0,0 @@ ---- devil-1.7.8/src-IL/include/il_manip.h 2009-03-25 13:30:42.000000000 -0600 -+++ devil-1.7.8/src-IL/include/il_manip.h 2014-05-21 19:09:33.013902907 -0500 -@@ -31,14 +31,7 @@ - #pragma warning(push) - #pragma warning(disable : 4756) // Disables 'named type definition in parentheses' warning - #endif --INLINE ILfloat /*ILAPIENTRY*/ ilFloatToHalfOverflow() { -- ILfloat f = 1e10; -- ILint j; -- for (j = 0; j < 10; j++) -- f *= f; // this will overflow before -- // the for loop terminates -- return f; --} -+ILfloat /*ILAPIENTRY*/ ilFloatToHalfOverflow(); - #if defined(_MSC_VER) - #pragma warning(pop) - #endif -@@ -47,199 +40,10 @@ - // Float-to-half conversion -- general case, including - // zeroes, denormalized numbers and exponent overflows. - //----------------------------------------------------- --INLINE ILushort ILAPIENTRY ilFloatToHalf(ILuint i) { -- // -- // Our floating point number, f, is represented by the bit -- // pattern in integer i. Disassemble that bit pattern into -- // the sign, s, the exponent, e, and the significand, m. -- // Shift s into the position where it will go in in the -- // resulting half number. -- // Adjust e, accounting for the different exponent bias -- // of float and half (127 versus 15). -- // -- -- register int s = (i >> 16) & 0x00008000; -- register int e = ((i >> 23) & 0x000000ff) - (127 - 15); -- register int m = i & 0x007fffff; -- -- // -- // Now reassemble s, e and m into a half: -- // -- -- if (e <= 0) -- { -- if (e < -10) -- { -- // -- // E is less than -10. The absolute value of f is -- // less than HALF_MIN (f may be a small normalized -- // float, a denormalized float or a zero). -- // -- // We convert f to a half zero. -- // -- -- return 0; -- } -- -- // -- // E is between -10 and 0. F is a normalized float, -- // whose magnitude is less than HALF_NRM_MIN. -- // -- // We convert f to a denormalized half. -- // -- -- m = (m | 0x00800000) >> (1 - e); -- -- // -- // Round to nearest, round "0.5" up. -- // -- // Rounding may cause the significand to overflow and make -- // our number normalized. Because of the way a half's bits -- // are laid out, we don't have to treat this case separately; -- // the code below will handle it correctly. -- // -- -- if (m & 0x00001000) -- m += 0x00002000; -- -- // -- // Assemble the half from s, e (zero) and m. -- // -- -- return s | (m >> 13); -- } -- else if (e == 0xff - (127 - 15)) -- { -- if (m == 0) -- { -- // -- // F is an infinity; convert f to a half -- // infinity with the same sign as f. -- // -- -- return s | 0x7c00; -- } -- else -- { -- // -- // F is a NAN; we produce a half NAN that preserves -- // the sign bit and the 10 leftmost bits of the -- // significand of f, with one exception: If the 10 -- // leftmost bits are all zero, the NAN would turn -- // into an infinity, so we have to set at least one -- // bit in the significand. -- // -- -- m >>= 13; -- return s | 0x7c00 | m | (m == 0); -- } -- } -- else -- { -- // -- // E is greater than zero. F is a normalized float. -- // We try to convert f to a normalized half. -- // -- -- // -- // Round to nearest, round "0.5" up -- // -- -- if (m & 0x00001000) -- { -- m += 0x00002000; -- -- if (m & 0x00800000) -- { -- m = 0; // overflow in significand, -- e += 1; // adjust exponent -- } -- } -- -- // -- // Handle exponent overflow -- // -- -- if (e > 30) -- { -- ilFloatToHalfOverflow(); // Cause a hardware floating point overflow; -- return s | 0x7c00; // if this returns, the half becomes an -- } // infinity with the same sign as f. -- -- // -- // Assemble the half from s, e and m. -- // -- -- return s | (e << 10) | (m >> 13); -- } --} -+ILushort ILAPIENTRY ilFloatToHalf(ILuint i); - - // Taken from OpenEXR --INLINE ILuint ILAPIENTRY ilHalfToFloat (ILushort y) { -- -- int s = (y >> 15) & 0x00000001; -- int e = (y >> 10) & 0x0000001f; -- int m = y & 0x000003ff; -- -- if (e == 0) -- { -- if (m == 0) -- { -- // -- // Plus or minus zero -- // -- -- return s << 31; -- } -- else -- { -- // -- // Denormalized number -- renormalize it -- // -- -- while (!(m & 0x00000400)) -- { -- m <<= 1; -- e -= 1; -- } -- -- e += 1; -- m &= ~0x00000400; -- } -- } -- else if (e == 31) -- { -- if (m == 0) -- { -- // -- // Positive or negative infinity -- // -- -- return (s << 31) | 0x7f800000; -- } -- else -- { -- // -- // Nan -- preserve sign and significand bits -- // -- -- return (s << 31) | 0x7f800000 | (m << 13); -- } -- } -- -- // -- // Normalized number -- // -- -- e = e + (127 - 15); -- m = m << 13; -- -- // -- // Assemble s, e and m. -- // -- -- return (s << 31) | (e << 23) | m; --} -+ILuint ILAPIENTRY ilHalfToFloat (ILushort y); - #endif //NOINLINE - - #ifdef _cplusplus diff --git a/recipes-graphics/devil/devil_1.7.8.bb b/recipes-graphics/devil/devil_1.7.8.bb deleted file mode 100644 index 4b7c856..0000000 --- a/recipes-graphics/devil/devil_1.7.8.bb +++ /dev/null @@ -1,22 +0,0 @@ -DESCRIPTION = "A full featured cross-platform image library" -SECTION = "libs" -LICENSE = "LGPL-2.1" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780" -PR = "r0" - -DEPENDS = "libpng jpeg tiff xz" - -SRC_URI = "http://sourceforge.net/projects/openil/files/DevIL/1.7.8/DevIL-${PV}.zip \ - file://il_manip_c.patch \ - file://il_manip_h.patch \ - file://M4Patch.patch \ - file://Fix-GCC-5.2-erros.patch" -SRC_URI[md5sum] = "312853ef9c85ad7b2100f9cd068b2a5b" -SRC_URI[sha256sum] = "4368d83b3016b5eafe8984f0d7f86ccee76b8993cf900d3a8cbd4901b52f64eb" - -PACKAGE_ARCH = "${MACHINE_ARCH}" -S = "${WORKDIR}/devil-${PV}" - -TARGET_CFLAGS += "-Dpng_set_gray_1_2_4_to_8=png_set_expand_gray_1_2_4_to_8" - -inherit autotools-brokensep diff --git a/recipes-graphics/devil/devil_1.8.0.bb b/recipes-graphics/devil/devil_1.8.0.bb new file mode 100644 index 0000000..03e60f6 --- /dev/null +++ b/recipes-graphics/devil/devil_1.8.0.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "A full featured cross-platform image library" +SECTION = "libs" +LICENSE = "LGPL-2.1" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780" +PR = "r0" + +DEPENDS = "libpng jpeg tiff xz" + +SRC_URI = "http://sourceforge.net/projects/openil/files/DevIL/${PV}/DevIL-${PV}.zip" +SRC_URI[md5sum] = "ba77c3cb2aadaacfd86e23c68fb6dc47" +SRC_URI[sha256sum] = "451337f392c65bfb83698a781370534dc63d7bafca21e9b37178df0518f7e895" + +S = "${WORKDIR}/DevIL/DevIL" + +inherit cmake + +TARGET_CFLAGS += "-Dpng_set_gray_1_2_4_to_8=png_set_expand_gray_1_2_4_to_8" + +SOLIBS = ".so" +FILES_SOLIBSDEV = "" + +PACKAGE_ARCH = "${MACHINE_ARCH}"