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

flutter_defines = [
  # Flutter always wants this https://github.com/flutter/flutter/issues/11402
  "SK_ENABLE_DUMP_GPU",

  # Remove software rasterizers to save some code size.
  "SK_FORCE_AAA",

  # Staging
  "SK_LEGACY_IGNORE_DRAW_VERTICES_BLEND_WITH_NO_SHADER",
  "SK_DISABLE_LEGACY_GRDIRECTCONTEXT_BOOLS",
  "SK_DISABLE_LEGACY_GRDIRECTCONTEXT_FLUSH",
  "SK_RESOLVE_FILTERS_BEFORE_RESTORE",

  # Fast low-precision software rendering isn't a priority for Flutter.
  "SK_DISABLE_LEGACY_SHADERCONTEXT",
  "SK_DISABLE_LOWP_RASTER_PIPELINE",
  "SK_FORCE_RASTER_PIPELINE_BLITTER",

  # When running Metal, ensure that command buffers are scheduled before
  # returning from submit.
  "SK_METAL_WAIT_UNTIL_SCHEDULED",

  # Staging for b/305780908
  "SK_DEFAULT_TYPEFACE_IS_EMPTY",
  "SK_DISABLE_LEGACY_DEFAULT_TYPEFACE",
  "SK_DISABLE_LEGACY_FONTMGR_FACTORY",
  "SK_DISABLE_LEGACY_FONTMGR_REFDEFAULT",
]

if (!is_fuchsia) {
  flutter_defines += [ "SK_DISABLE_EFFECT_DESERIALIZATION" ]
}
