diff --git a/media-libs/libjpeg-turbo/libjpeg_turbo-1.5.3.recipe b/media-libs/libjpeg-turbo/libjpeg_turbo-1.5.3.recipe new file mode 100644 index 000000000..6b5d29382 --- /dev/null +++ b/media-libs/libjpeg-turbo/libjpeg_turbo-1.5.3.recipe @@ -0,0 +1,139 @@ +SUMMARY="MMX, SSE, and SSE2 SIMD accelerated JPEG library" +DESCRIPTION="libjpeg-turbo is a JPEG image codec that uses SIMD instructions \ +(MMX, SSE2, AVX2, NEON, AltiVec) to accelerate baseline JPEG compression and \ +decompression on x86, x86-64, ARM, and PowerPC systems. On such systems, \ +libjpeg-turbo is generally 2-6x as fast as libjpeg, all else being equal. On \ +other types of systems, libjpeg-turbo can still outperform libjpeg by a \ +significant amount, by virtue of its highly-optimized Huffman coding routines. +In many cases, the performance of libjpeg-turbo rivals that of proprietary \ +high-speed JPEG codecs. +libjpeg-turbo implements both the traditional libjpeg API as well as the less \ +powerful but more straightforward TurboJPEG API. libjpeg-turbo also features \ +colorspace extensions that allow it to compress from/decompress to 32-bit and \ +big-endian pixel buffers (RGBX, XBGR, etc.), as well as a full-featured Java \ +interface. +libjpeg-turbo was originally based on libjpeg/SIMD, an MMX-accelerated \ +derivative of libjpeg v6b developed by Miyasaka Masaru. The TigerVNC and \ +VirtualGL projects made numerous enhancements to the codec in 2009, and in \ +early 2010, libjpeg-turbo spun off into an independent project, with the goal \ +of making high-speed JPEG compression/decompression technology available to \ +a broader range of users and developers." +HOMEPAGE="https://www.libjpeg-turbo.org/" +COPYRIGHT="1991-2018 Thomas G. Lane, Guido Vollbeding + 1997-2010 Guido Vollbeding + 2000-2017 D. R. Commander + 2009 Bill Allombert + 1999-2006 MIYASAKA Masaru + 2011 Siarhei Siamashka + 2013 Linaro Limited + 2014 MIPS Technologies, Inc. + 2015 Google, Inc. + 2015 Matthieu Darbois" +LICENSE="BSD (3-clause) + IJG + Zlib" +REVISION="1" +SOURCE_URI="https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-$portVersion.tar.gz" +CHECKSUM_SHA256="b24890e2bb46e12e72a79f7e965f409f4e16466d00e1dd15d93d73ee6b592523" +SOURCE_DIR="libjpeg-turbo-$portVersion" +PATCHES="libjpeg_turbo-$portVersion.patchset" + +ARCHITECTURES="?x86_gcc2 ?x86 ?x86_64 ?arm" +SECONDARY_ARCHITECTURES="?x86" + +libjpegVersion="62.2.0" +libjpegVersionCompat="$libjpegVersion compat >= ${libjpegVersion%%.*}" +libturbojpegVersion="0.1.0" +libturbojpegVersionCompat="$libturbojpegVersion compat >= ${libturbojpegVersion%%.*}" + +PROVIDES=" + jpeg_turbo$secondaryArchSuffix = $portVersion + lib:libjpeg$secondaryArchSuffix = $libjpegVersion + lib:libturbojpeg$secondaryArchSuffix = $libturbojpegVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + " +CONFLICTS=" + jpeg$secondaryArchSuffix + " + +PROVIDES_devel=" + jpeg_turbo${secondaryArchSuffix}_devel = $portVersion + devel:libjpeg$secondaryArchSuffix = $libjpegVersion + devel:libturbojpeg$secondaryArchSuffix = $libturbojpegVersion + " +REQUIRES_devel=" + jpeg_turbo$secondaryArchSuffix == $portVersion base + " +CONFLICTS_devel=" + jpeg${secondaryArchSuffix}_devel + " + +PROVIDES_tools=" + jpeg_turbo${secondaryArchSuffix}_tools = $portVersion + cmd:cjpeg$secondaryArchSuffix = $portVersion + cmd:djpeg$secondaryArchSuffix = $portVersion + cmd:jpegtran$secondaryArchSuffix = $portVersion + cmd:rdjpgcom$secondaryArchSuffix = $portVersion + cmd:tjbench$secondaryArchSuffix = $portVersion + cmd:wrjpgcom$secondaryArchSuffix = $portVersion + " +REQUIRES_tools=" + haiku$secondaryArchSuffix + jpeg_turbo$secondaryArchSuffix == $portVersion base + " +CONFLICTS_tools=" + jpeg${secondaryArchSuffix}_tools + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + " +BUILD_PREREQUIRES=" + cmd:aclocal + cmd:automake + cmd:autoreconf + cmd:awk + cmd:gcc$secondaryArchSuffix + cmd:grep + cmd:ld$secondaryArchSuffix + cmd:libtoolize$secondaryArchSuffix + cmd:make + cmd:nasm + cmd:pkg_config$secondaryArchSuffix + " + +defineDebugInfoPackage jpeg_turbo$secondaryArchSuffix \ + $libDir/libjpeg.so.$libjpegVersion \ + $libDir/libturbojpeg.so.$libturbojpegVersion + +BUILD() +{ + autoreconf -fi + runConfigure ./configure + make $jobArgs +} + +INSTALL() +{ + make install + + rm -f "$libDir"/lib*jpeg.la + + prepareInstalledDevelLibs libjpeg libturbojpeg + + # devel package + packageEntries devel \ + $developDir + + # tools package + packageEntries tools \ + $binDir \ + $documentationDir +} + +TEST() +{ + make test +} diff --git a/media-libs/libjpeg-turbo/licenses/IJG b/media-libs/libjpeg-turbo/licenses/IJG new file mode 100644 index 000000000..5ca57958d --- /dev/null +++ b/media-libs/libjpeg-turbo/licenses/IJG @@ -0,0 +1,73 @@ +In plain English: + +1. We don't promise that this software works. (But if you find any bugs, + please let us know!) +2. You can use this software for whatever you want. You don't have to pay us. +3. You may not pretend that you wrote this software. If you use it in a + program, you must acknowledge somewhere in your documentation that + you've used the IJG code. + +In legalese: + +The authors make NO WARRANTY or representation, either express or implied, +with respect to this software, its quality, accuracy, merchantability, or +fitness for a particular purpose. This software is provided "AS IS", and you, +its user, assume the entire risk as to its quality and accuracy. + +This software is copyright (C) 1991-2012, Thomas G. Lane, Guido Vollbeding. +All Rights Reserved except as specified below. + +Permission is hereby granted to use, copy, modify, and distribute this +software (or portions thereof) for any purpose, without fee, subject to these +conditions: +(1) If any part of the source code for this software is distributed, then this +README file must be included, with this copyright and no-warranty notice +unaltered; and any additions, deletions, or changes to the original files +must be clearly indicated in accompanying documentation. +(2) If only executable code is distributed, then the accompanying +documentation must state that "this software is based in part on the work of +the Independent JPEG Group". +(3) Permission for use of this software is granted only if the user accepts +full responsibility for any undesirable consequences; the authors accept +NO LIABILITY for damages of any kind. + +These conditions apply to any software derived from or based on the IJG code, +not just to the unmodified library. If you use our work, you ought to +acknowledge us. + +Permission is NOT granted for the use of any IJG author's name or company name +in advertising or publicity relating to this software or products derived from +it. This software may be referred to only as "the Independent JPEG Group's +software". + +We specifically permit and encourage the use of this software as the basis of +commercial products, provided that all warranty or liability claims are +assumed by the product vendor. + + +ansi2knr.c is included in this distribution by permission of L. Peter Deutsch, +sole proprietor of its copyright holder, Aladdin Enterprises of Menlo Park, CA. +ansi2knr.c is NOT covered by the above copyright and conditions, but instead +by the usual distribution terms of the Free Software Foundation; principally, +that you must include source code if you redistribute it. (See the file +ansi2knr.c for full details.) However, since ansi2knr.c is not needed as part +of any program generated from the IJG code, this does not limit you more than +the foregoing paragraphs do. + +The Unix configuration script "configure" was produced with GNU Autoconf. +It is copyright by the Free Software Foundation but is freely distributable. +The same holds for its supporting scripts (config.guess, config.sub, +ltmain.sh). Another support script, install-sh, is copyright by X Consortium +but is also freely distributable. + +The IJG distribution formerly included code to read and write GIF files. +To avoid entanglement with the Unisys LZW patent, GIF reading support has +been removed altogether, and the GIF writer has been simplified to produce +"uncompressed GIFs". This technique does not use the LZW algorithm; the +resulting GIF files are larger than usual, but are readable by all standard +GIF decoders. + +We are required to state that + "The Graphics Interchange Format(c) is the Copyright property of + CompuServe Incorporated. GIF(sm) is a Service Mark property of + CompuServe Incorporated." diff --git a/media-libs/libjpeg-turbo/patches/libjpeg_turbo-1.5.3.patchset b/media-libs/libjpeg-turbo/patches/libjpeg_turbo-1.5.3.patchset new file mode 100644 index 000000000..f06da29f7 --- /dev/null +++ b/media-libs/libjpeg-turbo/patches/libjpeg_turbo-1.5.3.patchset @@ -0,0 +1,30 @@ +From bf7be1f0e2f9c6758e0f5f4f5ae2c21dc4e3ab12 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= +Date: Fri, 16 Mar 2018 18:34:16 +0100 +Subject: Basi Haiku arch support + + +diff --git a/acinclude.m4 b/acinclude.m4 +index 113169f..fce8884 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -77,6 +77,16 @@ case "$host_os" in + ;; + esac + ;; ++ haiku*) ++ case "$host_cpu" in ++ x86_64) ++ objfmt='ELF64' ++ ;; ++ *) ++ objfmt='ELF' ++ ;; ++ esac ++ ;; + *) + objfmt='ELF ?' + ;; +-- +2.16.2 +