diff --git a/graphics/tiff/Makefile b/graphics/tiff/Makefile index 63744a0a6554..1b038a6b6930 100644 --- a/graphics/tiff/Makefile +++ b/graphics/tiff/Makefile @@ -1,120 +1,121 @@ PORTNAME= tiff DISTVERSION= 4.4.0 +PORTREVISION= 1 CATEGORIES= graphics MASTER_SITES= https://download.osgeo.org/libtiff/ MAINTAINER= desktop@FreeBSD.org COMMENT= Tools and library routines for working with TIFF images WWW= http://www.simplesystems.org/libtiff/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/COPYRIGHT LIB_DEPENDS= libdeflate.so:archivers/libdeflate \ libjbig.so:graphics/jbigkit \ libzstd.so:archivers/zstd USES= cpe jpeg libtool localbase pathfix tar:xz CPE_PRODUCT= libtiff CPE_VERSION= ${DISTVERSION:C/[a-z]+//} CPE_UPDATE= ${DISTVERSION:C/[0-9.]+//} USE_LDCONFIG= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --without-x \ --disable-webp \ INSTALL_TARGET= install-strip TEST_TARGET= check MLNKS= TIFFError.3tiff TIFFSetErrorHandler.3tiff \ TIFFFlush.3tiff TIFFFlushData.3tiff \ TIFFGetField.3tiff TIFFGetFieldDefaulted.3tiff \ TIFFGetField.3tiff TIFFVGetField.3tiff \ TIFFGetField.3tiff TIFFVGetFieldDefaulted.3tiff \ TIFFOpen.3tiff TIFFFdOpen.3tiff \ TIFFOpen.3tiff TIFFClientOpen.3tiff \ TIFFRGBAImage.3tiff TIFFRGBAImageOK.3tiff \ TIFFRGBAImage.3tiff TIFFRGBAImageBegin.3tiff \ TIFFRGBAImage.3tiff TIFFRGBAImageGet.3tiff \ TIFFRGBAImage.3tiff TIFFRGBAImageEnd.3tiff \ TIFFRGBAImage.3tiff TIFFReadRGBAImageOriented.3tiff \ TIFFSetDirectory.3tiff TIFFSetSubDirectory.3tiff \ TIFFSetField.3tiff TIFFVSetField.3tiff \ TIFFWarning.3tiff TIFFSetWarningHandler.3tiff \ TIFFWriteDirectory.3tiff TIFFRewriteDirectory.3tiff \ TIFFbuffer.3tiff TIFFReadBufferSetup.3tiff \ TIFFbuffer.3tiff TIFFWriteBufferSetup.3tiff \ TIFFcodec.3tiff TIFFFindCODEC.3tiff \ TIFFcodec.3tiff TIFFRegisterCODEC.3tiff \ TIFFcodec.3tiff TIFFUnRegisterCODEC.3tiff \ TIFFmemory.3tiff TIFFfree.3tiff \ TIFFmemory.3tiff TIFFmalloc.3tiff \ TIFFmemory.3tiff TIFFmemcmp.3tiff \ TIFFmemory.3tiff TIFFmemcpy.3tiff \ TIFFmemory.3tiff TIFFmemset.3tiff \ TIFFmemory.3tiff TIFFrealloc.3tiff \ TIFFquery.3tiff TIFFCurrentDirectory.3tiff \ TIFFquery.3tiff TIFFCurrentRow.3tiff \ TIFFquery.3tiff TIFFCurrentStrip.3tiff \ TIFFquery.3tiff TIFFCurrentTile.3tiff \ TIFFquery.3tiff TIFFFileName.3tiff \ TIFFquery.3tiff TIFFFileno.3tiff \ TIFFquery.3tiff TIFFGetMode.3tiff \ TIFFquery.3tiff TIFFIsTiled.3tiff \ TIFFquery.3tiff TIFFIsByteSwapped.3tiff \ TIFFquery.3tiff TIFFIsUpSampled.3tiff \ TIFFquery.3tiff TIFFIsMSB2LSB.3tiff \ TIFFquery.3tiff TIFFLastDirectory.3tiff \ TIFFsize.3tiff TIFFScanlineSize.3tiff \ TIFFstrip.3tiff TIFFComputeStrip.3tiff \ TIFFstrip.3tiff TIFFDefaultStripSize.3tiff \ TIFFstrip.3tiff TIFFNumberOfStrips.3tiff \ TIFFstrip.3tiff TIFFStripSize.3tiff \ TIFFstrip.3tiff TIFFVStripSize.3tiff \ TIFFswab.3tiff TIFFReverseBits.3tiff \ TIFFswab.3tiff TIFFSwabArrayOfLong.3tiff \ TIFFswab.3tiff TIFFSwabArrayOfShort.3tiff \ TIFFswab.3tiff TIFFSwabLong.3tiff \ TIFFswab.3tiff TIFFSwabShort.3tiff \ TIFFtile.3tiff TIFFCheckTile.3tiff \ TIFFtile.3tiff TIFFComputeTile.3tiff \ TIFFtile.3tiff TIFFDefaultTileSize.3tiff \ TIFFtile.3tiff TIFFNumberOfTiles.3tiff \ TIFFtile.3tiff TIFFTileSize.3tiff \ TIFFtile.3tiff TIFFTileRowSize.3tiff \ TIFFtile.3tiff TIFFVTileSize.3tiff OPTIONS_DEFINE= DOCS .include .if !defined(BUILDING_INDEX) __pmlinks3!= ${ECHO_CMD} '${MLNKS:S/ / /}' | ${AWK} \ '{ if (NF % 2 != 0) { print "broken"; exit; } \ for (i=1; i<=NF; i++) { \ if ( i % 2 == 0) { print " " $$i " ;"; } \ else { print "${LN} -s " $$i " "; } \ } }' .endif post-patch: @${REINPLACE_CMD} "/\.po 0/d" ${WRKSRC}/man/* pre-configure: ${REINPLACE_CMD} \ -e 's|tiffgt.1 ||' \ ${WRKSRC}/man/Makefile.in ${REINPLACE_CMD} -e 's|^docfiles|no-docfiles|' \ -e 's|man html|man|' ${WRKSRC}/Makefile.in post-install: ( cd ${STAGEDIR}${PREFIX}/man/man3 && ${__pmlinks3} ) .if ${PORT_OPTIONS:MDOCS} ${MKDIR} ${STAGEDIR}${DOCSDIR}/images ${STAGEDIR}${DOCSDIR}/man ${INSTALL_DATA} ${WRKSRC}/html/*.html ${STAGEDIR}${DOCSDIR}/ ${INSTALL_DATA} ${WRKSRC}/html/images/*.jpg ${STAGEDIR}${DOCSDIR}/images/ ${INSTALL_DATA} ${WRKSRC}/html/images/*.gif ${STAGEDIR}${DOCSDIR}/images/ ${INSTALL_DATA} ${WRKSRC}/html/man/*.html ${STAGEDIR}${DOCSDIR}/man/ .endif .include diff --git a/graphics/tiff/files/patch-libtiff_tif_getimage.c b/graphics/tiff/files/patch-libtiff_tif_getimage.c new file mode 100644 index 000000000000..d3235c58968f --- /dev/null +++ b/graphics/tiff/files/patch-libtiff_tif_getimage.c @@ -0,0 +1,22 @@ +--- libtiff/tif_getimage.c.orig 2022-02-19 07:33:54.000000000 -0800 ++++ libtiff/tif_getimage.c 2022-11-23 11:36:14.192628000 -0800 +@@ -3058,15 +3058,15 @@ + return( ok ); + + for( i_row = 0; i_row < read_ysize; i_row++ ) { +- memmove( raster + (tile_ysize - i_row - 1) * tile_xsize, +- raster + (read_ysize - i_row - 1) * read_xsize, ++ memmove( raster + (size_t)(tile_ysize - i_row - 1) * tile_xsize, ++ raster + (size_t)(read_ysize - i_row - 1) * read_xsize, + read_xsize * sizeof(uint32_t) ); +- _TIFFmemset( raster + (tile_ysize - i_row - 1) * tile_xsize+read_xsize, ++ _TIFFmemset( raster + (size_t)(tile_ysize - i_row - 1) * tile_xsize+read_xsize, + 0, sizeof(uint32_t) * (tile_xsize - read_xsize) ); + } + + for( i_row = read_ysize; i_row < tile_ysize; i_row++ ) { +- _TIFFmemset( raster + (tile_ysize - i_row - 1) * tile_xsize, ++ _TIFFmemset( raster + (size_t)(tile_ysize - i_row - 1) * tile_xsize, + 0, sizeof(uint32_t) * tile_xsize ); + } +