2018-10-26 13:25:51 +00:00
|
|
|
# Copyright 2018 Google Inc.
|
|
|
|
#
|
|
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
|
|
# found in the LICENSE file.
|
|
|
|
|
|
|
|
import("../third_party.gni")
|
|
|
|
|
|
|
|
third_party("wuffs") {
|
|
|
|
public_include_dirs = [ "../externals/wuffs/release/c" ]
|
2019-01-07 02:41:53 +00:00
|
|
|
|
|
|
|
defines = [
|
|
|
|
# Copy/pasting from "../externals/wuffs/release/c/wuffs-*.c":
|
|
|
|
#
|
|
|
|
# ----
|
|
|
|
#
|
|
|
|
# Wuffs ships as a "single file C library" or "header file library" as per
|
|
|
|
# https://github.com/nothings/stb/blob/master/docs/stb_howto.txt
|
|
|
|
#
|
|
|
|
# To use that single file as a "foo.c"-like implementation, instead of a
|
|
|
|
# "foo.h"-like header, #define WUFFS_IMPLEMENTATION before #include'ing or
|
|
|
|
# compiling it.
|
|
|
|
#
|
|
|
|
# ----
|
|
|
|
"WUFFS_IMPLEMENTATION",
|
|
|
|
|
|
|
|
# Continuing to copy/paste:
|
|
|
|
#
|
|
|
|
# ----
|
|
|
|
#
|
|
|
|
# Defining the WUFFS_CONFIG__MODULE* macros are optional, but it lets users
|
2020-07-23 11:55:59 +00:00
|
|
|
# of Wuffs' .c file specify which parts of Wuffs to build. That file
|
2019-01-07 02:41:53 +00:00
|
|
|
# contains the entire Wuffs standard library, implementing a variety of
|
|
|
|
# codecs and file formats. Without this macro definition, an optimizing
|
|
|
|
# compiler or linker may very well discard Wuffs code for unused codecs,
|
|
|
|
# but listing the Wuffs modules we use makes that process explicit.
|
|
|
|
# Preprocessing means that such code simply isn't compiled.
|
|
|
|
#
|
|
|
|
# ----
|
|
|
|
#
|
|
|
|
# For Skia, we're only interested in particular image codes (e.g. GIF) and
|
|
|
|
# their dependencies (e.g. BASE, LZW).
|
|
|
|
"WUFFS_CONFIG__MODULES",
|
|
|
|
"WUFFS_CONFIG__MODULE__BASE",
|
|
|
|
"WUFFS_CONFIG__MODULE__GIF",
|
|
|
|
"WUFFS_CONFIG__MODULE__LZW",
|
|
|
|
]
|
|
|
|
|
2020-07-10 03:02:06 +00:00
|
|
|
sources = [ "../externals/wuffs/release/c/wuffs-v0.3.c" ]
|
2018-10-26 13:25:51 +00:00
|
|
|
}
|