diff options
author | Leon Scroggins <scroggo@google.com> | 2018-04-19 12:25:03 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-04-19 12:25:14 +0000 |
commit | 2ae45ae83a5778910a86afdbda5329a92bfef066 (patch) | |
tree | 88ea32bf11b57c916200012e519e427812f865e4 /tools/build_workaround_header.py | |
parent | dbc59ba23b5cb70cdf77cfdb6cbe372223a17832 (diff) |
Revert "Add stub gpu workaround generators"
This reverts commit 94d25b970b97c68ddd0b4ceb71f2233aac05e6b5.
Reason for revert: Breaking the Chromium roll
Original change's description:
> Add stub gpu workaround generators
>
> Like https://chromium-review.googlesource.com/c/chromium/src/+/1005362,
> this patch adds a way for Chrome and Skia to share a set of driver
> workaround names so that they can be turned on by Chrome (or Skia) as
> needed.
>
> To avoid weird cross-repository dependencies, the generator script is
> duplicated in Skia.
>
> This patch just adds a few dummy workaround names to make sure the build
> process is working. The followup to this is to add workaround init
> to GrContext/GrContextOptions and to start implementing individual
> workarounds.
>
> Implementing these workarounds is to support Chrome's "out of process
> raster" which will use Ganesh without a command buffer, and so will not
> have the workarounds that the command buffer provides.
>
> Bug: chromium:829614
> Change-Id: I40745a777a95805995991fedb81657ae418b52d9
> Reviewed-on: https://skia-review.googlesource.com/120608
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Adrienne Walker <enne@chromium.org>
TBR=bsalomon@google.com,enne@chromium.org
Change-Id: Ie0b69d7d028dabca1fd70813b6920386c8838247
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:829614
Reviewed-on: https://skia-review.googlesource.com/122240
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Diffstat (limited to 'tools/build_workaround_header.py')
-rwxr-xr-x | tools/build_workaround_header.py | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/tools/build_workaround_header.py b/tools/build_workaround_header.py deleted file mode 100755 index b8558326ad..0000000000 --- a/tools/build_workaround_header.py +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/env python -# Copyright (c) 2018 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. -"""code generator for gpu workaround definitions""" - -import os -import os.path -import sys -from optparse import OptionParser - -_LICENSE = """// Copyright 2018 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. - -""" - -_DO_NOT_EDIT_WARNING = ("// This file is auto-generated from\n" + - "// " + __file__ + "\n" + - "// DO NOT EDIT!\n\n") - -def merge_files_into_workarounds(files): - workarounds = set() - for filename in files: - with open(filename, 'r') as f: - workarounds.update([workaround.strip() for workaround in f]) - return sorted(list(workarounds)) - - -def write_header(filename, workarounds): - max_workaround_len = len(max(workarounds, key=len)) - - with open(filename, 'w') as f: - f.write(_LICENSE) - f.write(_DO_NOT_EDIT_WARNING) - - indent = ' ' - macro = 'GPU_OP' - - # length of max string passed to write + 1 - max_len = len(indent) + len(macro) + 1 + max_workaround_len + 1 + 1 - write = lambda line: f.write(line + ' ' * (max_len - len(line)) + '\\\n') - - write('#define GPU_DRIVER_BUG_WORKAROUNDS(GPU_OP)') - for w in workarounds: - write(indent + macro + '(' + w.upper() + ',') - write(indent + ' ' * (len(macro) + 1) + w + ')') - - # one extra line to consume the the last \ - f.write('// The End\n') - - -def main(argv): - usage = "usage: %prog [options] file1 file2 file3 etc" - parser = OptionParser(usage=usage) - parser.add_option( - "--output-file", - dest="output_file", - default="gpu_driver_bug_workaround_autogen.h", - help="the name of the header file to write") - - (options, _) = parser.parse_args(args=argv) - - workarounds = merge_files_into_workarounds(parser.largs) - write_header(options.output_file, workarounds) - - -if __name__ == '__main__': - sys.exit(main(sys.argv[1:])) |