spack/var/spack/repos/builtin/packages/libjxl/package.py
Benjamin S. Kirk cec3da61d2
Add gimp & dependent packages (#34558)
* exiv2: add new versions

* babl: new package required to build GIMP

* gegl: new package required to build GIMP

* gexiv2: new package required to build GIMP

* libmypaint: new package required to build GIMP

* mypaint-brushes: new package required to build GIMP

* vala: new package required to build GIMP

* GIMP: new package definition for building GIMP-2.10 from source

* libjxl: update for 0.7.0

* libwmf: a library for reading vector images in Windows Metafile Format (WMF)

* libde265: an open source implementation of the h.265 video codec

* libwebp: add new versions

* GIMP: additional variants for building GIMP-2.10 from source

* libde265: remove boilerplate

* fixes for style precheck

* updates based on feedback

* fixes for style precheck
2022-12-17 03:52:56 -07:00

43 lines
1.4 KiB
Python

# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.package import *
class Libjxl(CMakePackage):
"""JPEG XL image format reference implementation."""
homepage = "https://github.com/libjxl/libjxl"
url = "https://github.com/libjxl/libjxl/archive/refs/tags/v0.6.1.tar.gz"
git = "https://github.com/libjxl/libjxl.git"
version("main", branch="main", submodules=True)
version("0.7.0", tag="v0.7.0", submodules=True)
version("0.6.1", tag="v0.6.1", submodules=True)
depends_on("cmake@3.10:", type="build")
depends_on("brotli")
depends_on("highway")
# Only needed at test time, but unfortunately "test" doesn't cause the dep to be added
# by Spack's compiler wrappers. Solution of adding "link" means that dependency is now
# always required...
depends_on("googletest+gmock", type=("link", "test"))
# https://github.com/libjxl/libjxl/pull/582
conflicts("%clang", when="@0.6")
conflicts("%apple-clang", when="@0.6")
def cmake_args(self):
args = [
self.define("JPEGXL_FORCE_SYSTEM_BROTLI", True),
self.define("JPEGXL_FORCE_SYSTEM_HWY", True),
]
if self.run_tests:
args.append(self.define("JPEGXL_FORCE_SYSTEM_GTEST", True))
return args