1SUMMARY="JPEG XL reference encoder/decoder" 2DESCRIPTION="The JPEG XL Image Coding System (ISO/IEC 18181) has a rich \ 3feature set and is particularly optimised for responsive web environments, so \ 4that content renders well on a wide range of devices. Moreover, it includes \ 5several features that help transition from the legacy JPEG format." 6HOMEPAGE="https://jpeg.org/jpegxl/" 7COPYRIGHT="2021 the JPEG XL Project 8 2005-2021 Lode Vandevenne 9 2018-2021 Google Inc. 10 2021 Google LLC" 11LICENSE="BSD (3-clause) 12 Apache v2 13 MIT 14 Zlib" 15REVISION="4" 16SOURCE_URI="https://gitlab.com/wg1/jpeg-xl/-/archive/v$portVersion/jpeg-xl-v$portVersion.tar.bz2" 17CHECKSUM_SHA256="2eccd29d3454fc3f4612185d9f90546b20e3cfedc8420447f6effc5ff6aae25b" 18srcGitRev_2="48e5364ef48ec2408f44c727657ac1b6703185f8" 19SOURCE_URI_2="https://github.com/lvandeve/lodepng/archive/$srcGitRev_2.tar.gz" 20CHECKSUM_SHA256_2="c47c48c77a205f1af484b7b5a847290af65de3ea6f15817aa27c5ec7cc5208fd" 21SOURCE_FILENAME_2="lodepng-$srcGitRev_2.tar.gz" 22srcGitRev_3="64374756e03700d649f897dbd98c95e78c30c7da" 23SOURCE_URI_3="https://github.com/workerVA/skcms/archive/$srcGitRev_3.tar.gz" 24CHECKSUM_SHA256_3="d28ff68c49a4946b29d76d03d75414895f4dd897ca42be6d304ec24b9f539fe1" 25SOURCE_FILENAME_3="ckcms-$srcGitRev_3.tar.gz" 26srcGitRev_4="868ab558fad70fcbe8863ba4e85179eeb81cc840" 27SOURCE_URI_4="https://github.com/webmproject/sjpeg/archive/$srcGitRev_4.tar.gz" 28CHECKSUM_SHA256_4="72279cd6d4089b62a49cb127353bf875cb35844eda42d90901dd32f08992060e" 29SOURCE_FILENAME_4="sjpeg-$srcGitRev_4.tar.gz" 30SOURCE_DIR="jpeg-xl-v$portVersion" 31 32ARCHITECTURES="all !x86_gcc2" 33SECONDARY_ARCHITECTURES="x86" 34 35PROVIDES=" 36 libjxl$secondaryArchSuffix = $portVersion 37 lib:libjxl$secondaryArchSuffix = $portVersion 38 lib:libjxl_dec$secondaryArchSuffix = $portVersion 39 lib:libjxl_threads$secondaryArchSuffix = $portVersion 40 " 41REQUIRES=" 42 haiku$secondaryArchSuffix 43 lib:libavif$secondaryArchSuffix 44 lib:libbrotlicommon$secondaryArchSuffix 45 lib:libbrotlidec$secondaryArchSuffix 46 lib:libbrotlienc$secondaryArchSuffix 47 lib:libgif$secondaryArchSuffix 48 lib:libGL$secondaryArchSuffix 49 lib:libIex_3_0$secondaryArchSuffix 50 lib:libIlmThread_3_0$secondaryArchSuffix 51 lib:libImath_3_0$secondaryArchSuffix 52 lib:libOpenEXR_3_0$secondaryArchSuffix 53 lib:libOpenEXRUtil_3_0$secondaryArchSuffix 54 lib:libjpeg$secondaryArchSuffix 55 lib:libpng16$secondaryArchSuffix 56 lib:libstdc++$secondaryArchSuffix 57 lib:libwebp$secondaryArchSuffix 58 lib:libz$secondaryArchSuffix 59 " 60 61PROVIDES_devel=" 62 libjxl${secondaryArchSuffix}_devel = $portVersion 63 devel:libjxl$secondaryArchSuffix = $portVersion 64 devel:libjxl_dec$secondaryArchSuffix = $portVersion 65 devel:libjxl_threads$secondaryArchSuffix = $portVersion 66 " 67REQUIRES_devel=" 68 libjxl$secondaryArchSuffix == $portVersion base 69 " 70 71PROVIDES_tools=" 72 libjxl${secondaryArchSuffix}_tools = $portVersion 73 cmd:benchmark_xl$secondaryArchSuffix 74 cmd:cjxl$secondaryArchSuffix 75 cmd:djxl$secondaryArchSuffix 76 " 77REQUIRES_tools=" 78 $REQUIRES 79 libjxl$secondaryArchSuffix == $portVersion base 80 lib:libstdc++$secondaryArchSuffix 81 " 82 83BUILD_REQUIRES=" 84 haiku${secondaryArchSuffix}_devel 85 devel:libavif$secondaryArchSuffix 86 devel:libbrotlicommon$secondaryArchSuffix 87 devel:libbrotlidec$secondaryArchSuffix 88 devel:libbrotlienc$secondaryArchSuffix 89 devel:libgif$secondaryArchSuffix >= 7.2.0 90 devel:libGL$secondaryArchSuffix 91 devel:libhwy$secondaryArchSuffix 92 devel:libhwy_contrib$secondaryArchSuffix 93 devel:libIex_3_0$secondaryArchSuffix 94 devel:libIlmThread_3_0$secondaryArchSuffix 95 devel:libImath_3_0$secondaryArchSuffix 96 devel:libOpenEXR_3_0$secondaryArchSuffix 97 devel:libOpenEXRUtil_3_0$secondaryArchSuffix 98 devel:libjpeg$secondaryArchSuffix 99 devel:libpng16$secondaryArchSuffix 100 devel:libwebp$secondaryArchSuffix 101 devel:libz$secondaryArchSuffix 102 " 103BUILD_PREREQUIRES=" 104 cmd:cmake 105 cmd:gcc$secondaryArchSuffix 106 cmd:git 107 cmd:make 108 cmd:pkg_config$secondaryArchSuffix 109 cmd:python3 110 " 111 112BUILD() 113{ 114 cp -r $sourceDir2/lodepng-$srcGitRev_2/* third_party/lodepng 115 cp -r $sourceDir3/skcms-$srcGitRev_3/* third_party/skcms 116 cp -r $sourceDir4/sjpeg-$srcGitRev_4/* third_party/sjpeg 117 cmake -B build -S . $cmakeDirArgs \ 118 -DCMAKE_BUILD_TYPE=Release \ 119 -DBUILD_TESTING=OFF \ 120 -DJPEGXL_FORCE_SYSTEM_BROTLI=true \ 121 -DJPEGXL_FORCE_SYSTEM_HWY=true \ 122 -DJPEGXL_WARNINGS_AS_ERRORS=false \ 123 -DJPEGXL_ENABLE_OPENEXR=true 124 make -C build $jobArgs 125} 126 127INSTALL() 128{ 129 make -C build install 130 131 # remove static libraries 132 rm -f $libDir/{libjxl.a,libjxl_threads.a} 133 134 prepareInstalledDevelLibs \ 135 libjxl libjxl_dec libjxl_threads 136 fixPkgconfig 137 138 packageEntries devel \ 139 $developDir 140 packageEntries tools \ 141 $binDir 142} 143 144TEST() 145{ 146 make -C build test 147} 148