diff options
Diffstat (limited to '')
-rw-r--r-- | image/decoders/moz.build | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/image/decoders/moz.build b/image/decoders/moz.build new file mode 100644 index 0000000000..d7e062f843 --- /dev/null +++ b/image/decoders/moz.build @@ -0,0 +1,62 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +toolkit = CONFIG["MOZ_WIDGET_TOOLKIT"] + +# The Icon Channel stuff really shouldn't live in decoders/icon, but we'll +# fix that another time. +if toolkit == "gtk": + DIRS += ["icon/gtk", "icon"] + +if CONFIG["OS_ARCH"] == "WINNT": + DIRS += ["icon/win", "icon"] + +if toolkit == "cocoa": + DIRS += ["icon/mac", "icon"] +elif toolkit == "android": + DIRS += ["icon/android", "icon"] + +UNIFIED_SOURCES += [ + "EXIF.cpp", + "iccjpeg.c", + "nsBMPDecoder.cpp", + "nsGIFDecoder2.cpp", + "nsICODecoder.cpp", + "nsIconDecoder.cpp", + "nsJPEGDecoder.cpp", + "nsPNGDecoder.cpp", + "nsWebPDecoder.cpp", +] + +if CONFIG["MOZ_AV1"]: + UNIFIED_SOURCES += [ + "nsAVIFDecoder.cpp", + ] + +if CONFIG["MOZ_JXL"]: + UNIFIED_SOURCES += [ + "nsJXLDecoder.cpp", + ] + +include("/ipc/chromium/chromium-config.mozbuild") + +LOCAL_INCLUDES += [ + # Access to Skia headers for Downscaler. + "/gfx/2d", + # Decoders need ImageLib headers. + "/image", + # for libyuv::ARGBAttenuate and ::ARGBUnattenuate + "/media/libyuv/libyuv/include", +] + +LOCAL_INCLUDES += CONFIG["SKIA_INCLUDES"] + +FINAL_LIBRARY = "xul" + +CXXFLAGS += ["-Werror=switch"] + +# Add libFuzzer configuration directives +include("/tools/fuzzing/libfuzzer-config.mozbuild") |