This commit is contained in:
DubbleClick 2025-07-20 00:10:30 +07:00
parent 0d6453751d
commit ff092b4e9d
6 changed files with 73 additions and 2 deletions

View File

@ -240,7 +240,8 @@
"zstd",
"xz",
"libzip",
"libxml2"
"libxml2",
"libjxl"
]
},
"imap": {
@ -419,6 +420,20 @@
"zlib"
]
},
"libjxl": {
"source": "libjxl",
"static-libs-unix": [
"libjxl.a",
"libjxl_dec.a"
],
"lib-depends": [
"brotli",
"libgif",
"libjpeg",
"libpng",
"libwebp"
]
},
"liblz4": {
"source": "liblz4",
"static-libs-unix": [

View File

@ -553,6 +553,14 @@
"path": "LICENSE.md"
}
},
"libjxl": {
"type": "ghtar",
"repo": "libjxl/libjxl",
"license": {
"type": "file",
"path": "LICENSE"
}
},
"liblz4": {
"type": "ghrel",
"repo": "lz4/lz4",

View File

@ -0,0 +1,12 @@
<?php
declare(strict_types=1);
namespace SPC\builder\linux\library;
class libjxl extends LinuxLibraryBase
{
use \SPC\builder\unix\library\libjxl;
public const NAME = 'libjxl';
}

View File

@ -0,0 +1,12 @@
<?php
declare(strict_types=1);
namespace SPC\builder\macos\library;
class libjxl extends MacOSLibraryBase
{
use \SPC\builder\unix\library\libjxl;
public const NAME = 'libjxl';
}

View File

@ -32,9 +32,9 @@ trait imagemagick
->optionalLib('zstd', ...ac_with_args('zstd'))
->optionalLib('freetype', ...ac_with_args('freetype'))
->optionalLib('bzip2', ...ac_with_args('bzlib'))
->optionalLib('libjxl', ...ac_with_args('jxl'))
->addConfigureArgs(
'--disable-openmp',
'--without-jxl',
'--without-x',
);

View File

@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace SPC\builder\unix\library;
use SPC\util\executor\UnixCMakeExecutor;
trait libjxl
{
protected function build(): void
{
UnixCMakeExecutor::create($this)
->addConfigureArgs('-DJPEGXL_ENABLE_TOOLS=OFF')
->addConfigureArgs('-DJPEGXL_ENABLE_EXAMPLES=OFF')
->addConfigureArgs('-DJPEGXL_ENABLE_MANPAGES=OFF')
->addConfigureArgs('-DJPEGXL_ENABLE_BENCHMARK=OFF')
->addConfigureArgs('-DJPEGXL_ENABLE_PLUGINS=OFF')
->addConfigureArgs('-DJPEGXL_ENABLE_SJPEG=OFF')
->addConfigureArgs('-DJPEGXL_STATIC=ON')
->addConfigureArgs('-DBUILD_TESTING=OFF')
->build();
}
}