diff options
Diffstat (limited to 'tools/gn/config_values_generator.h')
-rw-r--r-- | tools/gn/config_values_generator.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tools/gn/config_values_generator.h b/tools/gn/config_values_generator.h new file mode 100644 index 0000000..79d9067 --- /dev/null +++ b/tools/gn/config_values_generator.h @@ -0,0 +1,48 @@ +// Copyright (c) 2013 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. + +#ifndef TOOLS_GN_CONFIG_VALUES_GENERATOR_H_ +#define TOOLS_GN_CONFIG_VALUES_GENERATOR_H_ + +#include <string> +#include <vector> + +#include "base/basictypes.h" +#include "tools/gn/source_dir.h" + +class ConfigValues; +class Err; +class Scope; +class Token; + +class ConfigValuesGenerator { + public: + ConfigValuesGenerator(ConfigValues* dest_values, + const Scope* scope, + const Token& function_token, + const SourceDir& input_dir, + Err* err); + ~ConfigValuesGenerator(); + + // Sets the error passed to the constructor on failure. + void Run(); + + private: + void FillDefines(); + void FillIncludes(); + void FillCflags(); + void FillCflags_C(); + void FillCflags_CC(); + void FillLdflags(); + + ConfigValues* config_values_; + const Scope* scope_; + const Token& function_token_; + const SourceDir input_dir_; + Err* err_; + + DISALLOW_COPY_AND_ASSIGN(ConfigValuesGenerator); +}; + +#endif // TOOLS_GN_CONFIG_VALUES_GENERATOR_H_ |