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

View File

@ -553,6 +553,14 @@
"path": "LICENSE.md" "path": "LICENSE.md"
} }
}, },
"libjxl": {
"type": "ghtar",
"repo": "libjxl/libjxl",
"license": {
"type": "file",
"path": "LICENSE"
}
},
"liblz4": { "liblz4": {
"type": "ghrel", "type": "ghrel",
"repo": "lz4/lz4", "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('zstd', ...ac_with_args('zstd'))
->optionalLib('freetype', ...ac_with_args('freetype')) ->optionalLib('freetype', ...ac_with_args('freetype'))
->optionalLib('bzip2', ...ac_with_args('bzlib')) ->optionalLib('bzip2', ...ac_with_args('bzlib'))
->optionalLib('libjxl', ...ac_with_args('jxl'))
->addConfigureArgs( ->addConfigureArgs(
'--disable-openmp', '--disable-openmp',
'--without-jxl',
'--without-x', '--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();
}
}