Date: Thu, 17 Mar 2022 17:46:18 GMT From: Dmitry Marakasov <amdmi3@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 51968412ce2d - main - =?utf-8?Q?graphics/devil: update 1.7.8 =E2=86=92 1.8.0?= Message-ID: <202203171746.22HHkIa5013261@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by amdmi3: URL: https://cgit.FreeBSD.org/ports/commit/?id=51968412ce2dd65db6142c2ab6853b3b1b07b572 commit 51968412ce2dd65db6142c2ab6853b3b1b07b572 Author: Dmitry Marakasov <amdmi3@FreeBSD.org> AuthorDate: 2022-03-17 15:56:03 +0000 Commit: Dmitry Marakasov <amdmi3@FreeBSD.org> CommitDate: 2022-03-17 17:44:49 +0000 graphics/devil: update 1.7.8 → 1.8.0 --- graphics/devil/Makefile | 127 +++---- graphics/devil/distinfo | 5 +- graphics/devil/files/patch-41 | 103 ------ graphics/devil/files/patch-42 | 46 --- graphics/devil/files/patch-43 | 26 -- graphics/devil/files/patch-46 | 81 ----- graphics/devil/files/patch-47 | 44 --- graphics/devil/files/patch-49 | 14 - graphics/devil/files/patch-50 | 14 - graphics/devil/files/patch-51 | 52 --- graphics/devil/files/patch-52 | 47 --- .../files/patch-DevIL_cmake_Modules_FindMNG.cmake | 11 + .../files/patch-DevIL_src-ILUT_CMakeLists.txt | 11 + .../devil/files/patch-DevIL_src-ILU_CMakeLists.txt | 11 + .../devil/files/patch-DevIL_src-IL_CMakeLists.txt | 11 + .../files/patch-DevIL_src-IL_src_il__dds-save.cpp | 11 + .../devil/files/patch-DevIL_src-IL_src_il__jp2.cpp | 18 + graphics/devil/files/patch-clang | 376 --------------------- graphics/devil/files/patch-configure.ac | 19 -- graphics/devil/files/patch-src-IL-src-il__icon.c | 11 - .../devil/files/patch-src-IL-src-il__nvidia.cpp | 10 - graphics/devil/files/patch-src-IL-src-il__png.c | 20 -- .../devil/files/patch-src-ILUT-src-ilut__opengl.c | 47 --- graphics/devil/files/patch-src-IL__src__il_alloc.c | 11 - graphics/devil/files/patch-src-IL_src_il__jp2.c | 11 - graphics/devil/files/patch-testing | 28 -- graphics/devil/pkg-plist | 6 - 27 files changed, 126 insertions(+), 1045 deletions(-) diff --git a/graphics/devil/Makefile b/graphics/devil/Makefile index 9749b2903f7e..e128496b4369 100644 --- a/graphics/devil/Makefile +++ b/graphics/devil/Makefile @@ -1,97 +1,70 @@ -# Created by: Andreas Kohn <andreas@syndrom23.de> - PORTNAME= devil -PORTVERSION= 1.7.8 -PORTREVISION= 29 +DISTVERSIONPREFIX= v +DISTVERSION= 1.8.0 PORTEPOCH= 1 CATEGORIES= graphics -MASTER_SITES= SF/openil/DevIL/${PORTVERSION} -DISTNAME= DevIL-${PORTVERSION} MAINTAINER= amdmi3@FreeBSD.org -COMMENT= Full featured cross-platform image library +COMMENT= Cross-platform image library -LICENSE= LGPL21 +LICENSE= LGPL21+ +LICENSE_FILE= ${WRKSRC}/LICENSE -USES= alias autoreconf gmake libtool localbase pkgconfig -GNU_CONFIGURE= yes -CONFIGURE_ARGS= --enable-ILU --enable-ILUT \ - --disable-allegro --disable-directx8 --disable-directx9 \ - --without-libsquish -INSTALL_TARGET= install-strip +USES= cmake pkgconfig +USE_GITHUB= yes +GH_ACCOUNT= DentonW +GH_PROJECT= DevIL USE_LDCONFIG= yes -WRKSRC= ${WRKDIR}/${DISTNAME:tl} - PORTDOCS= * +PORTEXAMPLES= * + +CMAKE_SOURCE_PATH= ${WRKSRC}/DevIL -# With EXR the library is not usable from plain C (instant segfault) -OPTIONS_DEFINE= JPEG JASPER LCMS MNG PNG TIFF EXR X11 SDL NVTT SIMD DOCS -OPTIONS_DEFAULT=JPEG JASPER LCMS MNG PNG TIFF X11 SDL NVTT -OPTIONS_DEFAULT_amd64=SIMD - -JPEG_DESC= Enable JPEG support -JASPER_DESC= Enable JPEG2000 support -LCMS_DESC= Enable LCMS support -MNG_DESC= Enable MNG support -PNG_DESC= Enable PNG support -TIFF_DESC= Enable TIFF support -EXR_DESC= Enable EXR support -X11_DESC= Enable X11 support -SDL_DESC= Enable SDL support -SQUISH_DESC= Enable DXT compression via libsquish -NVTT_DESC= Enable NVidia texture tools support -SIMD_DESC= Enable SIMD autodetection (AltiVec, SSE3,...) +OPTIONS_DEFINE= JPEG JASPER LCMS2 LIBMNG PNG TIFF SQUISH DOCS EXAMPLES +OPTIONS_DEFAULT=JPEG JASPER LCMS2 LIBMNG PNG TIFF SQUISH JPEG_USES= jpeg -JPEG_CONFIGURE_ENABLE= jpeg +JPEG_CMAKE_OFF= -DIL_NO_JPG=1 + JASPER_LIB_DEPENDS= libjasper.so:graphics/jasper -JASPER_CONFIGURE_ENABLE=jp2 -LCMS_LIB_DEPENDS= liblcms.so:graphics/lcms -LCMS_CONFIGURE_ENABLE= lcms -MNG_LIB_DEPENDS= libmng.so:graphics/libmng -MNG_CONFIGURE_ENABLE= mng +JASPER_CMAKE_OFF= -DIL_NO_JP2=1 + +LCMS2_LIB_DEPENDS= liblcms2.so:graphics/lcms2 +LCMS2_CMAKE_OFF= -DIL_NO_LCMS=1 + +LIBMNG_LIB_DEPENDS= libmng.so:graphics/libmng +LIBMNG_CMAKE_OFF= -DIL_NO_MNG=1 + PNG_LIB_DEPENDS= libpng.so:graphics/png -PNG_CONFIGURE_ENABLE= png -PNG_CONFIGURE_OFF= libpng_app=no +PNG_CMAKE_OFF= -DIL_NO_PNG=1 + TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff -TIFF_CONFIGURE_ENABLE= tiff -EXR_LIB_DEPENDS= libOpenEXR.so:graphics/openexr libImath.so:math/Imath -EXR_CONFIGURE_ENABLE= exr -#SQUISH_BUILD_DEPENDS= ${LOCALBASE}/lib/libsquish.a:graphics/squish -#SQUISH_CONFIGURE_WITH= libsquish -NVTT_LIB_DEPENDS= libnvtt.so:graphics/nvidia-texture-tools -NVTT_CONFIGURE_WITH= nvtt -X11_USES= gl xorg -X11_USE= GL=gl,glu,glut XORG=x11,xext,xmu,xi,xrender,sm,ice -X11_CONFIGURE_OFF= --disable-opengl --disable-x11 --disable-xpm --disable-shm --disable-render -SDL_USES= sdl -SDL_USE= SDL=sdl -SDL_CONFIGURE_OFF= --disable-sdl -SIMD_CONFIGURE_OFF= --disable-altivec --disable-sse --disable-sse2 --disable-sse3 - -post-patch: - @${REINPLACE_CMD} -e '/^SUBDIRS/s|docs||g' ${WRKSRC}/Makefile.am - @${REINPLACE_CMD} -e '/^pkgdir=/s|$$(libdir)/|$$(prefix)/libdata/|g' \ - ${WRKSRC}/data/Makefile.am - @${REINPLACE_CMD} -e 's|<malloc\.h>|<stdlib.h>|g' \ - ${WRKSRC}/src-ILU/ilur/ilur.c - ${REINPLACE_CMD} -e 's/Imf::Int64/uint64_t/g' \ - ${WRKSRC}/src-IL/src/il_exr.cpp \ - ${WRKSRC}/src-IL/include/il_exr.h - -post-install: - @${RMDIR} ${STAGEDIR}${DATADIR}/examples - @${RMDIR} ${STAGEDIR}${DATADIR} +TIFF_CMAKE_OFF= -DIL_NO_TIF=1 + +# With OPENEXR the library is not usable from plain C (instant segfault) +# (but need to recheck with 1.8.0), also the detection is broken +#OPENEXR_LIB_DEPENDS= libOpenEXR.so:graphics/openexr +#OPENEXR_CMAKE_OFF= -DIL_NO_EXR=1 +CMAKE_ARGS+= -DIL_NO_EXR=1 + +SQUISH_DESC= Enable DXT compression via libsquish +SQUISH_LIB_DEPENDS= libsquish.so:graphics/squish +SQUISH_CMAKE_BOOL= IL_USE_DXTC_SQUISH + +# Fails to build with NVTT, uses not installed header +# (and NVTT is deprecated anyway) +#NVTT_DESC= Enable NVidia texture tools support +#NVTT_BROKEN= does not build +#NVTT_LIB_DEPENDS= libnvtt.so:graphics/nvidia-texture-tools +#NVTT_CMAKE_BOOL= IL_USE_DXTC_NVIDIA +CMAKE_ARGS+= -DIL_USE_DXTC_NVIDIA=0 post-install-DOCS-on: - @${MKDIR} ${STAGEDIR}${DOCSDIR} -.for file in AUTHORS CREDITS ChangeLog Libraries.txt README TODO - ${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${DOCSDIR} -.endfor - -do-test: - cd ${WRKSRC}/test && ${MAKE_CMD} testil - cd ${WRKSRC}/test && ${SH} format_test/format_checks.sh + cd ${WRKSRC}/DevIL-docs && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}/ + cd ${WRKSRC}/DevIL && ${INSTALL_DATA} CREDITS NEWS README.md TODO ${STAGEDIR}${DOCSDIR}/ + +post-install-EXAMPLES-on: + cd ${WRKSRC}/DevIL/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}/ .include <bsd.port.mk> diff --git a/graphics/devil/distinfo b/graphics/devil/distinfo index fb054179f999..2f3bca59d09b 100644 --- a/graphics/devil/distinfo +++ b/graphics/devil/distinfo @@ -1,2 +1,3 @@ -SHA256 (DevIL-1.7.8.tar.gz) = 682ffa3fc894686156337b8ce473c954bf3f4fb0f3ecac159c73db632d28a8fd -SIZE (DevIL-1.7.8.tar.gz) = 2051993 +TIMESTAMP = 1647527149 +SHA256 (DentonW-DevIL-v1.8.0_GH0.tar.gz) = 52129f247b26fcb5554643c9e6bbee75c4b9717735fdbf3c6ebff08cee38ad37 +SIZE (DentonW-DevIL-v1.8.0_GH0.tar.gz) = 2949100 diff --git a/graphics/devil/files/patch-41 b/graphics/devil/files/patch-41 deleted file mode 100644 index e5d6b0d31437..000000000000 --- a/graphics/devil/files/patch-41 +++ /dev/null @@ -1,103 +0,0 @@ -See https://sourceforge.net/p/openil/patches/41/ - -This patch improves alpha-compositing in DevIL. - ---- src-IL/src/il_devil.c (revision 1654) -+++ src-IL/src/il_devil.c (working copy) -@@ -665,10 +665,10 @@ - ILuint c; - ILuint StartX, StartY, StartZ; - ILboolean DestFlipped = IL_FALSE; -+ ILboolean DoAlphaBlend = IL_FALSE; - ILubyte *SrcTemp; -- ILfloat Back; -- -- // Check if the desiination image really exists -+ ILfloat ResultAlpha; -+ // Check if the destination image really exists - if (DestName == 0 || iCurImage == NULL) { - ilSetError(IL_ILLEGAL_OPERATION); - return IL_FALSE; -@@ -680,6 +680,9 @@ - DestFlipped = IL_TRUE; - ilFlipImage(); - } -+ //determining destination alpha support -+ DoAlphaBlend = ilIsEnabled(IL_BLIT_BLEND); -+ - //DestOrigin = Dest->Origin; - ilBindImage(Source); - -@@ -688,7 +691,9 @@ - ilSetError(IL_INVALID_PARAM); - return IL_FALSE; - } -- -+ //determining source alpha support -+ DoAlphaBlend &= ilIsEnabled(IL_BLIT_BLEND); -+ - Src = iCurImage; - - //@TODO test if coordinates are inside the images (hard limit for source) -@@ -737,38 +742,49 @@ - const ILuint SrcIndex = (z+SrcZ)*ConvSizePlane + (y+SrcY)*ConvBps + (x+SrcX)*Dest->Bpp; - const ILuint DestIndex = (z+DestZ)*Dest->SizeOfPlane + (y+DestY)*Dest->Bps + (x+DestX)*Dest->Bpp; - const ILuint AlphaIdx = SrcIndex + bpp_without_alpha; -- ILfloat Front = 0; -+ ILfloat FrontAlpha = 0; // foreground opacity -+ ILfloat BackAlpha = 0; // background opacity - - switch (Dest->Type) - { - case IL_BYTE: - case IL_UNSIGNED_BYTE: -- Front = Converted[AlphaIdx]/((float)IL_MAX_UNSIGNED_BYTE); -+ FrontAlpha = Converted[AlphaIdx]/((float)IL_MAX_UNSIGNED_BYTE); -+ BackAlpha = Dest->Data[AlphaIdx]/((float)IL_MAX_UNSIGNED_BYTE); - break; - case IL_SHORT: - case IL_UNSIGNED_SHORT: -- Front = ((ILshort*)Converted)[AlphaIdx]/((float)IL_MAX_UNSIGNED_SHORT); -+ FrontAlpha = ((ILshort*)Converted)[AlphaIdx]/((float)IL_MAX_UNSIGNED_SHORT); -+ BackAlpha = ((ILshort*)Dest->Data)[AlphaIdx]/((float)IL_MAX_UNSIGNED_SHORT); - break; - case IL_INT: - case IL_UNSIGNED_INT: -- Front = ((ILint*)Converted)[AlphaIdx]/((float)IL_MAX_UNSIGNED_INT); -+ FrontAlpha = ((ILint*)Converted)[AlphaIdx]/((float)IL_MAX_UNSIGNED_INT); -+ BackAlpha = ((ILint*)Dest->Data)[AlphaIdx]/((float)IL_MAX_UNSIGNED_INT); - break; - case IL_FLOAT: -- Front = ((ILfloat*)Converted)[AlphaIdx]; -+ FrontAlpha = ((ILfloat*)Converted)[AlphaIdx]; -+ BackAlpha = ((ILfloat*)Dest->Data)[AlphaIdx]; - break; - case IL_DOUBLE: -- Front = (ILfloat)(((ILdouble*)Converted)[AlphaIdx]); -+ FrontAlpha = (ILfloat)(((ILdouble*)Converted)[AlphaIdx]); -+ BackAlpha = (ILfloat)(((ILdouble*)Dest->Data)[AlphaIdx]); - break; - } -- Back = 1.0f - Front; -- // In case of Alpha channel, the data is blended. Keeps the original alpha. -- if (ilIsEnabled(IL_BLIT_BLEND)) { -+ -+ // In case of Alpha channel, the data is blended. -+ // Computes composite Alpha -+ if (DoAlphaBlend) -+ { -+ ResultAlpha = FrontAlpha + (1.0f - FrontAlpha) * BackAlpha; - for (c = 0; c < bpp_without_alpha; c++) - { -- Dest->Data[DestIndex + c] = -- (ILubyte)(Converted[SrcIndex + c] * Front -- + Dest->Data[DestIndex + c] * Back); -+ Dest->Data[DestIndex + c] = (ILubyte)( 0.5f + -+ (Converted[SrcIndex + c] * FrontAlpha + -+ (1.0f - FrontAlpha) * Dest->Data[DestIndex + c] * BackAlpha) -+ / ResultAlpha); - } -+ Dest->Data[AlphaIdx] = (ILubyte)(0.5f + ResultAlpha * (float)IL_MAX_UNSIGNED_BYTE); - } - else { - for (c = 0; c < Dest->Bpp; c++) diff --git a/graphics/devil/files/patch-42 b/graphics/devil/files/patch-42 deleted file mode 100644 index d31bad6506ae..000000000000 --- a/graphics/devil/files/patch-42 +++ /dev/null @@ -1,46 +0,0 @@ -See https://sourceforge.net/p/openil/patches/42/ - -This patch allows luminance BMPs to be saved as straight grayscale, saving -lots of space for colorless images. ---- src-IL/src/il_bmp.c (revision 1662) -+++ src-IL/src/il_bmp.c (working copy) -@@ -928,6 +928,28 @@ - } - } - -+ if((iCurImage->Format == IL_LUMINANCE) && (iCurImage->Pal.Palette == NULL)) -+ { -+ // For luminance images it is necessary to generate a grayscale BGR32 -+ // color palette. Could call iConvertImage(..., IL_COLOR_INDEX, ...) -+ // to generate an RGB24 palette, followed by iConvertPal(..., IL_PAL_BGR32), -+ // to convert the palette to BGR32, but it seemed faster to just -+ // explicitely generate the correct palette. -+ -+ iCurImage->Pal.PalSize = 256*4; -+ iCurImage->Pal.PalType = IL_PAL_BGR32; -+ iCurImage->Pal.Palette = (ILubyte*)ialloc(iCurImage->Pal.PalSize); -+ -+ // Generate grayscale palette -+ for (i = 0; i < 256; i++) -+ { -+ iCurImage->Pal.Palette[i * 4] = i; -+ iCurImage->Pal.Palette[i * 4 + 1] = i; -+ iCurImage->Pal.Palette[i * 4 + 2] = i; -+ iCurImage->Pal.Palette[i * 4 + 3] = 0; -+ } -+ } -+ - // If the current image has a palette, take care of it - TempPal = &iCurImage->Pal; - if( iCurImage->Pal.PalSize && iCurImage->Pal.Palette && iCurImage->Pal.PalType != IL_PAL_NONE ) { -@@ -948,8 +970,8 @@ - //BITMAPINFOHEADER, so that the written header refers to - //TempImage instead of the original image - -- // @TODO LUMINANCE converted to BGR insteaf of beign saved to luminance -- if (iCurImage->Format != IL_BGR && iCurImage->Format != IL_BGRA && iCurImage->Format != IL_COLOUR_INDEX) { -+ if ((iCurImage->Format != IL_BGR) && (iCurImage->Format != IL_BGRA) && -+ (iCurImage->Format != IL_COLOUR_INDEX) && (iCurImage->Format != IL_LUMINANCE)) { - if (iCurImage->Format == IL_RGBA) { - TempImage = iConvertImage(iCurImage, IL_BGRA, IL_UNSIGNED_BYTE); - } else { diff --git a/graphics/devil/files/patch-43 b/graphics/devil/files/patch-43 deleted file mode 100644 index 7a508447212e..000000000000 --- a/graphics/devil/files/patch-43 +++ /dev/null @@ -1,26 +0,0 @@ -See https://sourceforge.net/p/openil/patches/43/ - -This patch will cause TIFFs with only a single color channel to be -saved as such, rather than as RGB. - ---- src-IL/src/il_tiff.c (revision 1663) -+++ src-IL/src/il_tiff.c (working copy) -@@ -987,11 +987,15 @@ - TIFFSetField(File, TIFFTAG_IMAGEWIDTH, TempImage->Width); - TIFFSetField(File, TIFFTAG_IMAGELENGTH, TempImage->Height); - TIFFSetField(File, TIFFTAG_COMPRESSION, Compression); -- TIFFSetField(File, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_RGB); -+ if((TempImage->Format == IL_LUMINANCE) || (TempImage->Format == IL_LUMINANCE_ALPHA)) -+ TIFFSetField(File, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_MINISBLACK); -+ else -+ TIFFSetField(File, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_RGB); - TIFFSetField(File, TIFFTAG_BITSPERSAMPLE, TempImage->Bpc << 3); - TIFFSetField(File, TIFFTAG_SAMPLESPERPIXEL, TempImage->Bpp); -- if (TempImage->Bpp == 4) //TODO: LUMINANCE, LUMINANCE_ALPHA -- TIFFSetField(File, TIFFTAG_MATTEING, 1); -+ if ((TempImage->Bpp == ilGetBppFormat(IL_RGBA)) || -+ (TempImage->Bpp == ilGetBppFormat(IL_LUMINANCE_ALPHA))) -+ TIFFSetField(File, TIFFTAG_EXTRASAMPLES, EXTRASAMPLE_ASSOCALPHA); - TIFFSetField(File, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG); - TIFFSetField(File, TIFFTAG_ROWSPERSTRIP, 1); - TIFFSetField(File, TIFFTAG_SOFTWARE, ilGetString(IL_VERSION_NUM)); diff --git a/graphics/devil/files/patch-46 b/graphics/devil/files/patch-46 deleted file mode 100644 index ab16eccd9aa4..000000000000 --- a/graphics/devil/files/patch-46 +++ /dev/null @@ -1,81 +0,0 @@ -See: https://sourceforge.net/p/openil/patches/46/ - -Add the ability to alter the PNG-compression. - ---- include/IL/il.h (revision 1677) -+++ include/IL/il.h (working copy) -@@ -377,6 +377,7 @@ - #define IL_PNG_ALPHA_INDEX 0x0724 //XIX : ILint : the color in the palette at this index value (0-255) is considered transparent, -1 for no trasparent color - #define IL_JPG_PROGRESSIVE 0x0725 - #define IL_VTF_COMP 0x0726 -+#define IL_PNG_COMPRESSION 0x0727 - - - // DXTC definitions ---- src-IL/include/il_states.h (revision 1677) -+++ src-IL/include/il_states.h (working copy) -@@ -76,6 +76,7 @@ - ILboolean ilJpgProgressive; - ILenum ilDxtcFormat; - ILenum ilPcdPicNum; -+ ILuint ilPngCompression; - - ILint ilPngAlphaIndex; // this index should be treated as an alpha key (most formats use this rather than having alpha in the palette), -1 for none - // currently only used when writing out .png files and should obviously be set to -1 most of the time ---- src-IL/src/il_png.c (revision 1677) -+++ src-IL/src/il_png.c (working copy) -@@ -538,6 +538,8 @@ - // png_init_io(png_ptr, PngFile); - png_set_write_fn(png_ptr, NULL, png_write, flush_data); - -+ png_set_compression_level(png_ptr, iGetInt(IL_PNG_COMPRESSION)); -+ - switch (iCurImage->Type) - { - case IL_BYTE: ---- src-IL/src/il_states.c (revision 1677) -+++ src-IL/src/il_states.c (working copy) -@@ -70,6 +70,10 @@ - ilStates[ilCurrentPos].ilPngAlphaIndex = -1; - ilStates[ilCurrentPos].ilVtfCompression = IL_DXT_NO_COMP; - -+ // Default PNG compression setting as defined in libpng manual: -+ // http://www.libpng.org/pub/png/libpng-1.2.5-manual.html#section-5.8 -+ ilStates[ilCurrentPos].ilPngCompression = 6; -+ - ilStates[ilCurrentPos].ilTgaId = NULL; - ilStates[ilCurrentPos].ilTgaAuthName = NULL; - ilStates[ilCurrentPos].ilTgaAuthComment = NULL; -@@ -500,6 +504,9 @@ - case IL_VTF_COMP: - *Param = ilStates[ilCurrentPos].ilVtfCompression; - break; -+ case IL_PNG_COMPRESSION: -+ *Param = ilStates[ilCurrentPos].ilPngCompression; -+ break; - - // Boolean values - case IL_CONV_PAL: -@@ -815,6 +822,7 @@ - ilStates[ilCurrentPos].ilPcdPicNum = ilStates[ilCurrentPos-1].ilPcdPicNum; - - ilStates[ilCurrentPos].ilPngAlphaIndex = ilStates[ilCurrentPos-1].ilPngAlphaIndex; -+ ilStates[ilCurrentPos].ilPngCompression = ilStates[ilCurrentPos-1].ilPngCompression; - - // Strings - if (ilStates[ilCurrentPos].ilTgaId) -@@ -1159,6 +1167,14 @@ - return; - } - break; -+ case IL_PNG_COMPRESSION: -+ // Valid PNG compression settings as defined in libpng manual: -+ // http://www.libpng.org/pub/png/libpng-1.2.5-manual.html#section-5.8 -+ if (Param >= 0 && Param <= 9) { -+ ilStates[ilCurrentPos].ilPngCompression = Param; -+ return; -+ } -+ break; - - default: - ilSetError(IL_INVALID_ENUM); diff --git a/graphics/devil/files/patch-47 b/graphics/devil/files/patch-47 deleted file mode 100644 index 56744d6f98a8..000000000000 --- a/graphics/devil/files/patch-47 +++ /dev/null @@ -1,44 +0,0 @@ -See https://sourceforge.net/p/openil/patches/47/ - -From 5ab2eae2939463aba7fd7bf9a37cc43b9d8cdc43 Mon Sep 17 00:00:00 2001 -From: Jeff Epler <jepler@unpythonic.net> -Date: Thu, 3 Jun 2010 16:38:46 -0500 -Subject: [PATCH] PR20713: fix out of bounds access in iluGaussian - -the 'rightmost pixel' case in iluBlurGaussian was the same as the -'leftmost pixel' case, which makes it refer to pixels that are off the -right-hand side of the image by 1 or 2 pixels. In the final row they -are beyond the end of the image, and if the bytes just beyond the end of -the image are in an unmapped page, the program can segfault. - -change the 'rightmost' case to use the pixels to the left of the pixel -being filtered instead. - -Signed-off-by: Jeff Epler <jepler@unpythonic.net> - ---- src-ILU/src/ilu_filter.c -+++ src-ILU/src/ilu_filter.c -@@ -378,14 +378,14 @@ ILubyte *Filter(ILimage *Image, const ILint *matrix, ILint scale, ILint bias) - } - for (c = 0; c < Image->Bpp; c++) { - Num = Image->Data[y - Image->Bps + c] * matrix[0] + -- Image->Data[y - Image->Bps + Image->Bpp + c] * matrix[1]+ -- Image->Data[y - Image->Bps + 2 * Image->Bpp + c] * matrix[2]+ -+ Image->Data[y - Image->Bps - Image->Bpp + c] * matrix[1]+ -+ Image->Data[y - Image->Bps - 2 * Image->Bpp + c] * matrix[2]+ - Image->Data[y + c] * matrix[3]+ -- Image->Data[y + Image->Bpp + c] * matrix[4]+ -- Image->Data[y + 2 * Image->Bpp + c] * matrix[5]+ -+ Image->Data[y - Image->Bpp + c] * matrix[4]+ -+ Image->Data[y - 2 * Image->Bpp + c] * matrix[5]+ - Image->Data[y + Image->Bps + c] * matrix[6]+ -- Image->Data[y + Image->Bps + Image->Bpp + c] * matrix[7]+ -- Image->Data[y + Image->Bps + 2 * Image->Bpp + c] * matrix[8]; -+ Image->Data[y + Image->Bps - Image->Bpp + c] * matrix[7]+ -+ Image->Data[y + Image->Bps - 2 * Image->Bpp + c] * matrix[8]; - - Temp = (ILuint)fabs((Num / (ILdouble)scale) + bias); - if (Temp > 255) --- -1.7.1 - diff --git a/graphics/devil/files/patch-49 b/graphics/devil/files/patch-49 deleted file mode 100644 index 384227561539..000000000000 --- a/graphics/devil/files/patch-49 +++ /dev/null @@ -1,14 +0,0 @@ -See https://sourceforge.net/p/openil/patches/49/ -- this patch allows -DevIL to be configured with ILUT, but without X11: - ---- m4/devil-api_checks.m4 2009-03-08 10:10:05.000000000 +0300 -+++ m4/devil-api_checks.m4 2012-01-31 17:05:07.163553444 +0400 -@@ -137,7 +137,7 @@ - [main], - [dnl The use_x11 var is either "yes" already, or we don't want "no" to be overwritten - ILUT_LIBS="-lX11 $ILUT_LIBS"], -- [use_x11="no"]) ]) -+ [use_x11="no"]) ], [use_x11="no"]) - TEST_API([shm]) - AS_IF([test "x$enable_shm" = "xyes"], - [AC_CHECK_HEADER([X11/extensions/XShm.h], diff --git a/graphics/devil/files/patch-50 b/graphics/devil/files/patch-50 deleted file mode 100644 index 47a23359d544..000000000000 --- a/graphics/devil/files/patch-50 +++ /dev/null @@ -1,14 +0,0 @@ -See https://sourceforge.net/p/openil/patches/50/ - ---- src-IL/src/il_targa.c (revision 1678) -+++ src-IL/src/il_targa.c (working copy) -@@ -219,6 +219,9 @@ - ilSetError(IL_ILLEGAL_FILE_VALUE); - return IL_FALSE; - } -+ -+ if (bTarga==IL_FALSE) -+ return IL_FALSE; - - // @JASON Extra Code to manipulate the image depending on - // the Image Descriptor's origin bits. diff --git a/graphics/devil/files/patch-51 b/graphics/devil/files/patch-51 deleted file mode 100644 index d4ea5ca26323..000000000000 --- a/graphics/devil/files/patch-51 +++ /dev/null @@ -1,52 +0,0 @@ -See https://sourceforge.net/p/openil/patches/51/ - -*** src-ILU/src/ilu_scale2d.c Wed Oct 28 16:51:50 2009 ---- src-ILU/src/ilu_scale2d.c Tue Dec 18 12:11:08 2012 -*************** -*** 204,209 **** ---- 204,217 ---- - ILfloat SrcX, SrcY; - ILuint iSrcX, iSrcY, iSrcXPlus1, iSrcYPlus1, ulOff, llOff, urOff, lrOff; - -+ // only downscale is allowed -+ assert(ScaleX>0 && ScaleX<=1.0f); -+ assert(ScaleY>0 && ScaleY<=1.0f); -+ -+ // scale factors should match images size -+ assert( ((ILfloat)Width -0.5f) / ScaleX < Image->Width ); -+ assert( ((ILfloat)Height-0.5f) / ScaleY < Image->Height ); -+ - ImgBps = Image->Bps / Image->Bpc; - SclBps = Scaled->Bps / Scaled->Bpc; - -*************** -*** 213,226 **** - for (y = 0; y < Height; y++) { - for (x = 0; x < Width; x++) { - // Calculate where we want to choose pixels from in our source image. -! SrcX = (ILfloat)x / (ILfloat)ScaleX; -! SrcY = (ILfloat)y / (ILfloat)ScaleY; -! // Integer part of SrcX and SrcY -! iSrcX = (ILuint)floor(SrcX); -! iSrcY = (ILuint)floor(SrcY); -! // Fractional part of SrcX and SrcY -! FracX = SrcX - (ILfloat)(iSrcX); -! FracY = SrcY - (ILfloat)(iSrcY); - - // We do not want to go past the right edge of the image or past the last line in the image, - // so this takes care of that. Normally, iSrcXPlus1 is iSrcX + 1, but if this is past the ---- 221,234 ---- - for (y = 0; y < Height; y++) { - for (x = 0; x < Width; x++) { - // Calculate where we want to choose pixels from in our source image. -! SrcX = (ILfloat)(x+0.5f) / (ILfloat)ScaleX; -! SrcY = (ILfloat)(y+0.5f) / (ILfloat)ScaleY; -! // indices of upper-left pixel -! iSrcX = (ILuint)(SrcX-0.5f); -! iSrcY = (ILuint)(SrcY-0.5f); -! // how far SrcX and SrcY are from upper-left pixel center -! FracX = SrcX - (ILfloat)(iSrcX) - 0.5f; -! FracY = SrcY - (ILfloat)(iSrcY) - 0.5f; - - // We do not want to go past the right edge of the image or past the last line in the image, - // so this takes care of that. Normally, iSrcXPlus1 is iSrcX + 1, but if this is past the diff --git a/graphics/devil/files/patch-52 b/graphics/devil/files/patch-52 deleted file mode 100644 index ff94644a86b1..000000000000 --- a/graphics/devil/files/patch-52 +++ /dev/null @@ -1,47 +0,0 @@ -See https://sourceforge.net/p/openil/patches/52/ - ---- src-IL/src/il_pcx.c (revision 1678) -+++ src-IL/src/il_pcx.c (working copy) -@@ -375,20 +375,26 @@ - if (Header->NumPlanes == 1 && Header->Bpp == 1) { - for (j = 0; j < iCurImage->Height; j++) { - i = 0; //number of written pixels -- while (i < iCurImage->Width) { -+ Bps = 0; -+ while (Bps<Header->Bps) { - if (iread(&HeadByte, 1, 1) != 1) - return IL_FALSE; -+ ++Bps; -+ // Check if we got duplicates with RLE compression - if (HeadByte >= 192) { - HeadByte -= 192; - if (iread(&Data, 1, 1) != 1) - return IL_FALSE; - -+ --Bps; -+ // duplicate next byte - for (c = 0; c < HeadByte; c++) { - k = 128; - for (d = 0; d < 8 && i < iCurImage->Width; d++) { - iCurImage->Data[j * iCurImage->Width + i++] = ((Data & k) != 0 ? 255 : 0); - k >>= 1; - } -+ ++Bps; - } - } - else { -@@ -408,8 +414,12 @@ - //If Width/8 is even no padding is needed, - //one pad byte has to be read otherwise. - //(let's hope the above is true ;-)) -- if(!((iCurImage->Width >> 3) & 0x1)) -- igetc(); // Skip pad byte -+ -+ // changed 2012-05-06 -+ // Not the good size - don't need it, padding inside data already ! -+ -+ // if(!((iCurImage->Width >> 3) & 0x1)) -+ // igetc(); // Skip pad byte - } - } - else if (Header->NumPlanes == 4 && Header->Bpp == 1){ // 4-bit images diff --git a/graphics/devil/files/patch-DevIL_cmake_Modules_FindMNG.cmake b/graphics/devil/files/patch-DevIL_cmake_Modules_FindMNG.cmake new file mode 100644 index 000000000000..3ef57ffba957 --- /dev/null +++ b/graphics/devil/files/patch-DevIL_cmake_Modules_FindMNG.cmake @@ -0,0 +1,11 @@ +--- DevIL/cmake/Modules/FindMNG.cmake.orig 2017-01-01 23:37:37 UTC ++++ DevIL/cmake/Modules/FindMNG.cmake +@@ -1,6 +1,6 @@ + # Denton: Modified from the libsquish one +-FIND_PATH(MNG_INCLUDE_DIR mng.h PATHS . mng .. ../mng DOC "Directory containing libmng headers") +-FIND_LIBRARY(MNG_LIBRARY NAMES mng libmng PATHS . mng .. ../mng PATH_SUFFIXES lib lib64 release minsizerel relwithdebinfo DOC "Path to libmng library") ++FIND_PATH(MNG_INCLUDE_DIR libmng.h) ++FIND_LIBRARY(MNG_LIBRARY NAMES mng) + + SET(MNG_LIBRARIES ${MNG_LIBRARY}) + diff --git a/graphics/devil/files/patch-DevIL_src-ILUT_CMakeLists.txt b/graphics/devil/files/patch-DevIL_src-ILUT_CMakeLists.txt new file mode 100644 index 000000000000..37c2ea41d36a --- /dev/null +++ b/graphics/devil/files/patch-DevIL_src-ILUT_CMakeLists.txt @@ -0,0 +1,11 @@ +--- DevIL/src-ILUT/CMakeLists.txt.orig 2017-01-01 23:37:37 UTC ++++ DevIL/src-ILUT/CMakeLists.txt +@@ -44,6 +44,8 @@ source_group("Resource Files" FILES ${ILUT_RSRC} ) + + # Remove SHARED to create a static library + add_library(ILUT SHARED ${ILUT_SRCS} ${ILUT_INC} ${ILUT_RSRC}) ++set_target_properties(ILUT PROPERTIES SOVERSION 1) ++set_target_properties(ILUT PROPERTIES VERSION 1.1.0) + + ## add link sub library info + target_link_libraries(ILUT diff --git a/graphics/devil/files/patch-DevIL_src-ILU_CMakeLists.txt b/graphics/devil/files/patch-DevIL_src-ILU_CMakeLists.txt new file mode 100644 index 000000000000..b8f32c54cd54 --- /dev/null +++ b/graphics/devil/files/patch-DevIL_src-ILU_CMakeLists.txt @@ -0,0 +1,11 @@ +--- DevIL/src-ILU/CMakeLists.txt.orig 2017-01-01 23:37:37 UTC ++++ DevIL/src-ILU/CMakeLists.txt +@@ -44,6 +44,8 @@ source_group("Resource Files" FILES ${ILU_RSRC} ) + + # Remove SHARED to create a static library + add_library(ILU SHARED ${ILU_SRCS} ${ILU_INC} ${ILU_RSRC}) ++set_target_properties(ILU PROPERTIES SOVERSION 1) ++set_target_properties(ILU PROPERTIES VERSION 1.1.0) + + + ## ILU requires IL diff --git a/graphics/devil/files/patch-DevIL_src-IL_CMakeLists.txt b/graphics/devil/files/patch-DevIL_src-IL_CMakeLists.txt new file mode 100644 index 000000000000..3dc87ff0acac --- /dev/null +++ b/graphics/devil/files/patch-DevIL_src-IL_CMakeLists.txt @@ -0,0 +1,11 @@ +--- DevIL/src-IL/CMakeLists.txt.orig 2017-01-01 23:37:37 UTC ++++ DevIL/src-IL/CMakeLists.txt +@@ -58,6 +58,8 @@ source_group("Text Files" FILES ${DevIL_TXT} ) + + if(BUILD_SHARED_LIBS) + add_library(IL SHARED ${DevIL_SRCS} ${DevIL_INC} ${DevIL_RSRC} ${DevIL_TXT}) ++ set_target_properties(IL PROPERTIES SOVERSION 1) ++ set_target_properties(IL PROPERTIES VERSION 1.1.0) + else(BUILD_SHARED_LIBS) + add_library(IL ${DevIL_SRCS} ${DevIL_INC} ${DevIL_RSRC} ${DevIL_TXT}) + endif(BUILD_SHARED_LIBS) diff --git a/graphics/devil/files/patch-DevIL_src-IL_src_il__dds-save.cpp b/graphics/devil/files/patch-DevIL_src-IL_src_il__dds-save.cpp new file mode 100644 index 000000000000..637a4ab95a36 --- /dev/null +++ b/graphics/devil/files/patch-DevIL_src-IL_src_il__dds-save.cpp @@ -0,0 +1,11 @@ +--- DevIL/src-IL/src/il_dds-save.cpp.orig 2017-01-01 23:37:37 UTC ++++ DevIL/src-IL/src/il_dds-save.cpp +@@ -708,7 +708,7 @@ ILuint Compress(ILimage *Image, ILenum DXTCFormat) + if (DXTCFormat == IL_DXT1 || DXTCFormat == IL_DXT1A || DXTCFormat == IL_DXT3 || DXTCFormat == IL_DXT5) { + // NVTT needs data as BGRA 32-bit. + if (Image->Format != IL_BGRA || Image->Type != IL_UNSIGNED_BYTE) { // No need to convert if already this format/type. +- ByteData = ilConvertBuffer(Image->SizeOfData, Image->Format, IL_BGRA, Image->Type, IL_UNSIGNED_BYTE, NULL, Image->Data); ++ ByteData = (ILubyte*)ilConvertBuffer(Image->SizeOfData, Image->Format, IL_BGRA, Image->Type, IL_UNSIGNED_BYTE, NULL, Image->Data); + if (ByteData == NULL) + return 0; + } diff --git a/graphics/devil/files/patch-DevIL_src-IL_src_il__jp2.cpp b/graphics/devil/files/patch-DevIL_src-IL_src_il__jp2.cpp new file mode 100644 index 000000000000..664d07fdff1a --- /dev/null +++ b/graphics/devil/files/patch-DevIL_src-IL_src_il__jp2.cpp @@ -0,0 +1,18 @@ +--- DevIL/src-IL/src/il_jp2.cpp.orig 2017-01-01 23:37:37 UTC ++++ DevIL/src-IL/src/il_jp2.cpp +@@ -314,13 +314,13 @@ ILboolean iLoadJp2Internal(jas_stream_t *Stream, ILima + + + +-static int iJp2_file_read(jas_stream_obj_t *obj, char *buf, int cnt) ++static int iJp2_file_read(jas_stream_obj_t *obj, char *buf, unsigned int cnt) + { + obj; + return iread(buf, 1, cnt); + } + +-static int iJp2_file_write(jas_stream_obj_t *obj, char *buf, int cnt) ++static int iJp2_file_write(jas_stream_obj_t *obj, const char *buf, unsigned int cnt) + { + obj; + return iwrite(buf, 1, cnt); diff --git a/graphics/devil/files/patch-clang b/graphics/devil/files/patch-clang deleted file mode 100644 index c77f80e99995..000000000000 --- a/graphics/devil/files/patch-clang +++ /dev/null @@ -1,376 +0,0 @@ -Submitted upstream as: - - https://sourceforge.net/p/openil/bugs/212/ - ---- lib/Makefile.am.orig 2009-03-08 20:45:36 UTC -+++ lib/Makefile.am -@@ -41,5 +41,5 @@ endif #BUILD_ILUT - - libIL_la_CPPFLAGS = -I $(il_include) -I $(all_include) - libIL_la_CFLAGS = $(AM_CFLAGS) @IL_CFLAGS@ --libIL_la_CXXFLAGS = $(AM_CFLAGS) @IL_CFLAGS@ -+libIL_la_CXXFLAGS = $(filter-out -std=% -fgnu89-inline,$(AM_CFLAGS)) @IL_CFLAGS@ - ---- src-IL/include/il_internal.h 2009-03-08 03:10:08.000000000 -0400 -+++ src-IL/include/il_internal.h 2014-12-20 01:11:39.000000000 -0500 -@@ -228,5 +228,5 @@ - ILboolean ilLoadBlpF(ILHANDLE File); - ILboolean ilLoadBlpL(const void *Lump, ILuint Size); --ILboolean ilIsValidBmp(ILconst_string CONST_RESTRICT FileName); -+ILboolean ilIsValidBmp(ILconst_string FileName); - ILboolean ilIsValidBmpF(ILHANDLE File); - ILboolean ilIsValidBmpL(const void *Lump, ILuint Size); ---- src-IL/src/il_exr.cpp 2009-03-08 03:10:09.000000000 -0400 -+++ src-IL/src/il_exr.cpp 2014-12-20 01:15:55.000000000 -0500 -@@ -11,5 +11,5 @@ - //----------------------------------------------------------------------------- - -- -+#include <machine/endian.h> - #include "il_internal.h" - #ifndef IL_NO_EXR -@@ -246,5 +246,5 @@ - in.readPixels (dataWindow.min.y, dataWindow.max.y); - } -- catch (const exception &e) -+ catch (const exception) - { - // If some of the pixels in the file cannot be read, -@@ -252,5 +252,4 @@ - // to the caller. - ilSetError(IL_LIB_EXR_ERROR); // Could I use something a bit more descriptive based on e? -- e; // Prevent the compiler from yelling at us about this being unused. - return IL_FALSE; - } ---- src-IL/include/il_endian.h 2009-03-08 03:10:08.000000000 -0400 -+++ src-IL/include/il_endian.h 2014-12-20 01:28:47.000000000 -0500 -@@ -15,14 +15,7 @@ - - #include "il_internal.h" -+#include <machine/endian.h> - --#ifdef WORDS_BIGENDIAN // This is defined by ./configure. -- #ifndef __BIG_ENDIAN__ -- #define __BIG_ENDIAN__ 1 -- #endif --#endif -- --#if (defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __BIG_ENDIAN__) \ -- || (defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__)) -- #undef __LITTLE_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - #define Short(s) iSwapShort(s) - #define UShort(s) iSwapUShort(s) -@@ -39,7 +32,4 @@ - #define BigDouble(d) - #else -- #undef __BIG_ENDIAN__ -- #undef __LITTLE_ENDIAN__ // Not sure if it's defined by any compiler... -- #define __LITTLE_ENDIAN__ - #define Short(s) - #define UShort(s) -@@ -168,5 +158,5 @@ - ILushort s; - iread(&s, sizeof(ILushort), 1); --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapUShort(&s); - #endif -@@ -177,5 +167,5 @@ - ILshort s; - iread(&s, sizeof(ILshort), 1); --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapShort(&s); - #endif -@@ -186,5 +176,5 @@ - ILuint i; - iread(&i, sizeof(ILuint), 1); --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapUInt(&i); - #endif -@@ -195,5 +185,5 @@ - ILint i; - iread(&i, sizeof(ILint), 1); --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapInt(&i); - #endif -@@ -204,5 +194,5 @@ - ILfloat f; - iread(&f, sizeof(ILfloat), 1); --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapFloat(&f); - #endif -@@ -213,5 +203,5 @@ - ILdouble d; - iread(&d, sizeof(ILdouble), 1); --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapDouble(&d); - #endif -@@ -223,5 +213,5 @@ - ILushort s; - iread(&s, sizeof(ILushort), 1); --#ifdef __LITTLE_ENDIAN__ -+#if BYTE_ORDER == LITTLE_ENDIAN - iSwapUShort(&s); - #endif -@@ -233,5 +223,5 @@ - ILshort s; - iread(&s, sizeof(ILshort), 1); --#ifdef __LITTLE_ENDIAN__ -+#if BYTE_ORDER == LITTLE_ENDIAN - iSwapShort(&s); - #endif -@@ -243,5 +233,5 @@ - ILuint i; - iread(&i, sizeof(ILuint), 1); --#ifdef __LITTLE_ENDIAN__ -+#if BYTE_ORDER == LITTLE_ENDIAN - iSwapUInt(&i); - #endif -@@ -253,5 +243,5 @@ - ILint i; - iread(&i, sizeof(ILint), 1); --#ifdef __LITTLE_ENDIAN__ -+#if BYTE_ORDER == LITTLE_ENDIAN - iSwapInt(&i); - #endif -@@ -263,5 +253,5 @@ - ILfloat f; - iread(&f, sizeof(ILfloat), 1); --#ifdef __LITTLE_ENDIAN__ -+#if BYTE_ORDER == LITTLE_ENDIAN - iSwapFloat(&f); - #endif -@@ -273,5 +263,5 @@ - ILdouble d; - iread(&d, sizeof(ILdouble), 1); --#ifdef __LITTLE_ENDIAN__ -+#if BYTE_ORDER == LITTLE_ENDIAN - iSwapDouble(&d); - #endif -@@ -280,5 +270,5 @@ - - INLINE ILubyte SaveLittleUShort(ILushort s) { --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapUShort(&s); - #endif -@@ -287,5 +277,5 @@ - - INLINE ILubyte SaveLittleShort(ILshort s) { --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapShort(&s); - #endif -@@ -295,5 +285,5 @@ - - INLINE ILubyte SaveLittleUInt(ILuint i) { --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapUInt(&i); - #endif -@@ -303,5 +293,5 @@ - - INLINE ILubyte SaveLittleInt(ILint i) { --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN - iSwapInt(&i); - #endif -@@ -310,5 +300,5 @@ - - INLINE ILubyte SaveLittleFloat(ILfloat f) { --#ifdef __BIG_ENDIAN__ -+#if BYTE_ORDER == BIG_ENDIAN *** 416 LINES SKIPPED ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202203171746.22HHkIa5013261>