diff options
-rw-r--r-- | src/Makefile.am | 5 | ||||
-rw-r--r-- | src/google/protobuf/compiler/java/java_lite_main.cc | 34 |
2 files changed, 38 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index b75b6f74..eac19b10 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -472,9 +472,11 @@ libprotoc_la_SOURCES = \ google/protobuf/compiler/csharp/csharp_wrapper_field.cc \ google/protobuf/compiler/csharp/csharp_wrapper_field.h -bin_PROGRAMS = protoc +bin_PROGRAMS = protoc protoc-gen-javalite protoc_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la protoc_SOURCES = google/protobuf/compiler/main.cc +protoc_gen_javalite_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la +protoc_gen_javalite_SOURCES = google/protobuf/compiler/java/java_lite_main.cc # Tests ============================================================== @@ -677,6 +679,7 @@ COMMON_TEST_SOURCES = \ check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \ protobuf-lite-test test_plugin protobuf-lite-arena-test \ + protoc-gen-javalite \ $(GZCHECKPROGRAMS) protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \ ../gmock/gtest/lib/libgtest.la \ diff --git a/src/google/protobuf/compiler/java/java_lite_main.cc b/src/google/protobuf/compiler/java/java_lite_main.cc new file mode 100644 index 00000000..ffb4c2d5 --- /dev/null +++ b/src/google/protobuf/compiler/java/java_lite_main.cc @@ -0,0 +1,34 @@ +#include <google/protobuf/compiler/code_generator.h> +#include <google/protobuf/compiler/java/java_generator.h> +#include <google/protobuf/compiler/plugin.h> + +namespace google { +namespace protobuf { +namespace compiler { +namespace java { + +class JavaLiteGenerator : public CodeGenerator { + public: + JavaLiteGenerator() {} + ~JavaLiteGenerator() {} + bool Generate(const FileDescriptor* file, + const string& parameter, + GeneratorContext* context, + string* error) const { + // Only pass 'lite' as the generator parameter. + return generator_.Generate(file, "lite", context, error); + } + private: + JavaGenerator generator_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(JavaLiteGenerator); +}; + +} // namespace java +} // namespace compiler +} // namespace protobuf +} // namespace google + +int main(int argc, char* argv[]) { + google::protobuf::compiler::java::JavaLiteGenerator generator; + return google::protobuf::compiler::PluginMain(argc, argv, &generator); +} |