1SUMMARY="MMX, SSE, and SSE2 SIMD accelerated JPEG library" 2DESCRIPTION="libjpeg-turbo is a JPEG image codec that uses SIMD instructions \ 3(MMX, SSE2, AVX2, NEON, AltiVec) to accelerate baseline JPEG compression and \ 4decompression on x86, x86-64, ARM, and PowerPC systems. On such systems, \ 5libjpeg-turbo is generally 2-6x as fast as libjpeg, all else being equal. On \ 6other types of systems, libjpeg-turbo can still outperform libjpeg by a \ 7significant amount, by virtue of its highly-optimized Huffman coding routines. 8In many cases, the performance of libjpeg-turbo rivals that of proprietary \ 9high-speed JPEG codecs. 10libjpeg-turbo implements both the traditional libjpeg API as well as the less \ 11powerful but more straightforward TurboJPEG API. libjpeg-turbo also features \ 12colorspace extensions that allow it to compress from/decompress to 32-bit and \ 13big-endian pixel buffers (RGBX, XBGR, etc.), as well as a full-featured Java \ 14interface. 15libjpeg-turbo was originally based on libjpeg/SIMD, an MMX-accelerated \ 16derivative of libjpeg v6b developed by Miyasaka Masaru. The TigerVNC and \ 17VirtualGL projects made numerous enhancements to the codec in 2009, and in \ 18early 2010, libjpeg-turbo spun off into an independent project, with the goal \ 19of making high-speed JPEG compression/decompression technology available to \ 20a broader range of users and developers." 21HOMEPAGE="https://www.libjpeg-turbo.org/" 22COPYRIGHT="1991-2019 Thomas G. Lane, Guido Vollbeding 23 1997-2010 Guido Vollbeding 24 2000-2022 D. R. Commander 25 2009 Bill Allombert 26 1999-2006 MIYASAKA Masaru 27 2011 Siarhei Siamashka 28 2013 Linaro Limited 29 2014 MIPS Technologies, Inc. 30 2015 Google, Inc. 31 2015 Matthieu Darbois 32 2015 Viktor Szathm��ry" 33LICENSE="BSD (3-clause) 34 IJG 35 Zlib" 36REVISION="2" 37SOURCE_URI="https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-$portVersion.tar.gz" 38CHECKSUM_SHA256="d3ed26a1131a13686dfca4935e520eb7c90ae76fbc45d98bb50a8dc86230342b" 39SOURCE_DIR="libjpeg-turbo-$portVersion" 40 41ARCHITECTURES="all" 42SECONDARY_ARCHITECTURES="x86" 43 44libjpegVersion="62.3.0" 45libjpegVersionCompat="$libjpegVersion compat >= ${libjpegVersion%%.*}" 46libturbojpegVersion="0.2.0" 47libturbojpegVersionCompat="$libturbojpegVersion compat >= ${libturbojpegVersion%%.*}" 48 49PROVIDES=" 50 libjpeg_turbo$secondaryArchSuffix = $portVersion 51 lib:libjpeg$secondaryArchSuffix = $libjpegVersionCompat 52 lib:libturbojpeg$secondaryArchSuffix = $libturbojpegVersionCompat 53 " 54REQUIRES=" 55 haiku$secondaryArchSuffix 56 " 57 58PROVIDES_devel=" 59 libjpeg_turbo${secondaryArchSuffix}_devel = $portVersion 60 devel:libjpeg$secondaryArchSuffix = $libjpegVersionCompat 61 devel:libturbojpeg$secondaryArchSuffix = $libturbojpegVersionCompat 62 " 63REQUIRES_devel=" 64 libjpeg_turbo$secondaryArchSuffix == $portVersion base 65 " 66CONFLICTS_devel=" 67 jpeg${secondaryArchSuffix}_devel 68 " 69 70PROVIDES_tools=" 71 libjpeg_turbo${secondaryArchSuffix}_tools = $portVersion 72 cmd:cjpeg$secondaryArchSuffix = $portVersion 73 cmd:djpeg$secondaryArchSuffix = $portVersion 74 cmd:jpegtran$secondaryArchSuffix = $portVersion 75 cmd:rdjpgcom$secondaryArchSuffix = $portVersion 76 cmd:tjbench$secondaryArchSuffix = $portVersion 77 cmd:wrjpgcom$secondaryArchSuffix = $portVersion 78 " 79REQUIRES_tools=" 80 haiku$secondaryArchSuffix 81 libjpeg_turbo$secondaryArchSuffix == $portVersion base 82 " 83CONFLICTS_tools=" 84 jpeg${secondaryArchSuffix}_tools 85 " 86 87BUILD_REQUIRES=" 88 haiku${secondaryArchSuffix}_devel 89 " 90BUILD_PREREQUIRES=" 91 cmd:cmake 92 cmd:gcc$secondaryArchSuffix 93 cmd:ld$secondaryArchSuffix 94 cmd:libtoolize$secondaryArchSuffix 95 cmd:make 96 cmd:nasm 97 cmd:pkg_config$secondaryArchSuffix 98 " 99 100defineDebugInfoPackage libjpeg_turbo$secondaryArchSuffix \ 101 $libDir/libjpeg.so.$libjpegVersion \ 102 $libDir/libturbojpeg.so.$libturbojpegVersion 103 104BUILD() 105{ 106 cmake -S. -Bbuild \ 107 $cmakeDirArgs \ 108 -DCMAKE_BUILD_TYPE=RelWithDebInfo \ 109 -DENABLE_STATIC=OFF 110 make -C build $jobArgs 111} 112 113INSTALL() 114{ 115 make -C build install 116 117 prepareInstalledDevelLibs libjpeg libturbojpeg 118 fixPkgconfig 119 120 # devel package 121 packageEntries devel \ 122 $developDir \ 123 $libDir/cmake 124 125 # tools package 126 packageEntries tools \ 127 $binDir \ 128 $documentationDir 129} 130 131TEST() 132{ 133 make -C build test 134} 135