# 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" ] 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 # of Wuffs' .c file whitelist which parts of Wuffs to build. That file # 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", ] sources = [ "../externals/wuffs/release/c/wuffs-v0.2.c", ] }