summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorRĂ©mi Lacroix <remi.lacroix@idris.fr>2023-04-21 01:28:07 +0200
committerGitHub <noreply@github.com>2023-04-20 19:28:07 -0400
commitc348776096c80de5b869dd75dcfcc52bd7c950c7 (patch)
tree1697493fcf58c247bfb5bf625d6c7b4da288349f /var
parent683b933f68dd27598155ed1f1bbad0c18a603eb7 (diff)
downloadspack-c348776096c80de5b869dd75dcfcc52bd7c950c7.tar.gz
spack-c348776096c80de5b869dd75dcfcc52bd7c950c7.tar.bz2
spack-c348776096c80de5b869dd75dcfcc52bd7c950c7.tar.xz
spack-c348776096c80de5b869dd75dcfcc52bd7c950c7.zip
Add new package MozJPEG (#37052)
* Add new package MozJPEG MozJPEG is a patched version of libjpeg-turbo which improves JPEG compression efficiency achieving higher visual quality and smaller file sizes at the same time. * MozJPEG: Add myself as a maintainer and fix style
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/mozjpeg/package.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/mozjpeg/package.py b/var/spack/repos/builtin/packages/mozjpeg/package.py
new file mode 100644
index 0000000000..bc3e64d85b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mozjpeg/package.py
@@ -0,0 +1,48 @@
+# Copyright 2013-2023 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 Mozjpeg(CMakePackage):
+ """MozJPEG is a patched version of libjpeg-turbo which improves
+ JPEG compression efficiency achieving higher visual quality and
+ smaller file sizes at the same time"""
+
+ homepage = "https://github.com/mozilla/mozjpeg"
+ url = "https://github.com/mozilla/mozjpeg/archive/refs/tags/v4.1.1.tar.gz"
+
+ maintainers("RemiLacroix-IDRIS")
+
+ version("4.1.1", sha256="66b1b8d6b55d263f35f27f55acaaa3234df2a401232de99b6d099e2bb0a9d196")
+
+ provides("jpeg")
+
+ variant("shared", default=True, description="Build shared libs")
+ variant("static", default=True, description="Build static libs")
+ variant("jpeg8", default=False, description="Emulate libjpeg v8 API/ABI")
+ variant("png", default=False, description="Enable PNG support")
+
+ # Can use either of these. But in the current version of the package
+ # only nasm is used. In order to use yasm an environmental variable
+ # NASM must be set.
+ # TODO: Implement the selection between two supported assemblers.
+ # depends_on("yasm", type="build")
+ depends_on("nasm", type="build")
+ depends_on("libpng@1.6:", when="+png")
+
+ @property
+ def libs(self):
+ return find_libraries("libjpeg*", root=self.prefix, recursive=True)
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant("ENABLE_SHARED", "shared"),
+ self.define_from_variant("ENABLE_STATIC", "static"),
+ self.define_from_variant("WITH_JPEG8", "jpeg8"),
+ self.define_from_variant("PNG_SUPPORTED", "png"),
+ ]
+
+ return args