diff options
author | yoz@chromium.org <yoz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-20 21:44:29 +0000 |
---|---|---|
committer | yoz@chromium.org <yoz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-20 21:44:29 +0000 |
commit | 26e1e9ec1024d46ded366f04d5d62194b46e26b7 (patch) | |
tree | 7b667346905e25ad92221c32e35630555ea96bbc /tools/json_schema_compiler | |
parent | d21a37bdfcd1fececb6bd8fe7783ae9d485650f9 (diff) | |
download | chromium_src-26e1e9ec1024d46ded366f04d5d62194b46e26b7.zip chromium_src-26e1e9ec1024d46ded366f04d5d62194b46e26b7.tar.gz chromium_src-26e1e9ec1024d46ded366f04d5d62194b46e26b7.tar.bz2 |
JSON schema compiler: remove SOURCE_BASE_PATH hack from bundle generator.
Review URL: https://codereview.chromium.org/77063004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236308 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/json_schema_compiler')
-rwxr-xr-x | tools/json_schema_compiler/compiler.py | 3 | ||||
-rw-r--r-- | tools/json_schema_compiler/cpp_bundle_generator.py | 19 |
2 files changed, 14 insertions, 8 deletions
diff --git a/tools/json_schema_compiler/compiler.py b/tools/json_schema_compiler/compiler.py index edd183d..3759b0a 100755 --- a/tools/json_schema_compiler/compiler.py +++ b/tools/json_schema_compiler/compiler.py @@ -87,7 +87,8 @@ def GenerateSchema(generator, api_model, api_defs, type_generator, - root_namespace) + root_namespace, + namespace.source_file_dir) generators = [ ('generated_api.cc', cpp_bundle_generator.api_cc_generator), ('generated_api.h', cpp_bundle_generator.api_h_generator), diff --git a/tools/json_schema_compiler/cpp_bundle_generator.py b/tools/json_schema_compiler/cpp_bundle_generator.py index c713d55..d47f57f1 100644 --- a/tools/json_schema_compiler/cpp_bundle_generator.py +++ b/tools/json_schema_compiler/cpp_bundle_generator.py @@ -12,8 +12,6 @@ import json import os import re -# TODO(miket/asargent) - parameterize this. -SOURCE_BASE_PATH = 'chrome/common/extensions/api' def _RemoveDescriptions(node): """Returns a copy of |schema| with "description" fields removed. @@ -36,12 +34,19 @@ class CppBundleGenerator(object): """This class contains methods to generate code based on multiple schemas. """ - def __init__(self, root, model, api_defs, cpp_type_generator, cpp_namespace): + def __init__(self, + root, + model, + api_defs, + cpp_type_generator, + cpp_namespace, + source_file_dir): self._root = root self._model = model self._api_defs = api_defs self._cpp_type_generator = cpp_type_generator self._cpp_namespace = cpp_namespace + self._source_file_dir = source_file_dir self.api_cc_generator = _APICCGenerator(self) self.api_h_generator = _APIHGenerator(self) @@ -57,8 +62,8 @@ class CppBundleGenerator(object): c = code.Code() c.Append(cpp_util.CHROMIUM_LICENSE) c.Append() - c.Append(cpp_util.GENERATED_BUNDLE_FILE_MESSAGE % SOURCE_BASE_PATH) - ifndef_name = cpp_util.GenerateIfndefName(SOURCE_BASE_PATH, file_base) + c.Append(cpp_util.GENERATED_BUNDLE_FILE_MESSAGE % self._source_file_dir) + ifndef_name = cpp_util.GenerateIfndefName(self._source_file_dir, file_base) c.Append() c.Append('#ifndef %s' % ifndef_name) c.Append('#define %s' % ifndef_name) @@ -165,7 +170,7 @@ class _APICCGenerator(object): c = code.Code() c.Append(cpp_util.CHROMIUM_LICENSE) c.Append() - c.Append('#include "%s"' % (os.path.join(SOURCE_BASE_PATH, + c.Append('#include "%s"' % (os.path.join(self._bundle._source_file_dir, 'generated_api.h'))) c.Append() for namespace in self._bundle._model.namespaces.values(): @@ -248,7 +253,7 @@ class _SchemasCCGenerator(object): c = code.Code() c.Append(cpp_util.CHROMIUM_LICENSE) c.Append() - c.Append('#include "%s"' % (os.path.join(SOURCE_BASE_PATH, + c.Append('#include "%s"' % (os.path.join(self._bundle._source_file_dir, 'generated_schemas.h'))) c.Append() c.Append('#include "base/lazy_instance.h"') |