# Copyright 2021 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/python/python_library.gni")

python_library("jinja2") {
  source_root = "jinja2"
  sources = [
    "__init__.py",
    "_compat.py",
    "_stringdefs.py",
    "bccache.py",
    "compiler.py",
    "constants.py",
    "debug.py",
    "defaults.py",
    "environment.py",
    "exceptions.py",
    "ext.py",
    "filters.py",
    "lexer.py",
    "loaders.py",
    "meta.py",
    "nodes.py",
    "optimizer.py",
    "parser.py",
    "runtime.py",
    "sandbox.py",
    "tests.py",
    "utils.py",
    "visitor.py",
  ]
}
