# Copyright 2017 The Chromium 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/buildflag_header.gni")
import("//components/offline_pages/buildflags/features.gni")

# This file is in a separate directory so all targets in the build can refer to
# the buildflag header to get the necessary preprocessor defines without
# bringing in all of offline_pages. Other targets can depend on this target
# regardless of whether extensions are enabled.

buildflag_header("buildflags") {
  header = "buildflags.h"
  flags = [
    "ENABLE_OFFLINE_PAGES=$enable_offline_pages",
    "ENABLE_OFFLINE_PAGES_HARNESS=$enable_offline_pages_harness",
  ]
}
