blob: 2d7e4f0371551d31e53328e21b92058f4a1e65db [file] [log] [blame]
temporal40ee5512008-07-10 02:12:20 +00001## Process this file with automake to produce Makefile.in
2
kenton@google.come59427a2009-04-16 22:30:56 +00003if HAVE_ZLIB
4GZCHECKPROGRAMS = zcgzip zcgunzip
5GZHEADERS = google/protobuf/io/gzip_stream.h
6GZTESTS = google/protobuf/io/gzip_stream_unittest.sh
Jisi Liu78d470c2015-06-12 15:49:21 -07007ZLIB_DEF = -DHAVE_ZLIB=1
kenton@google.come59427a2009-04-16 22:30:56 +00008else
9GZCHECKPROGRAMS =
10GZHEADERS =
11GZTESTS =
Jisi Liu78d470c2015-06-12 15:49:21 -070012ZLIB_DEF =
13endif
14
15if HAVE_PTHREAD
16PTHREAD_DEF = -DHAVE_PTHREAD=1
17else
18PTHREAD_DEF =
kenton@google.come59427a2009-04-16 22:30:56 +000019endif
20
Hao Nguyen15c30d72018-12-12 15:38:14 -080021PROTOBUF_VERSION = 17:0:0
22
temporal40ee5512008-07-10 02:12:20 +000023if GCC
Feng Xiao16adea32016-07-22 14:15:19 -070024# Turn on all warnings except for sign comparison (we ignore sign comparison
25# in Google so our code base have tons of such warnings).
26NO_OPT_CXXFLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_DEF) $(ZLIB_DEF) -Wall -Wno-sign-compare
temporal40ee5512008-07-10 02:12:20 +000027else
Jisi Liu78d470c2015-06-12 15:49:21 -070028NO_OPT_CXXFLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_DEF) $(ZLIB_DEF)
temporal40ee5512008-07-10 02:12:20 +000029endif
30
kenton@google.com42c81e12009-05-06 01:15:06 +000031AM_CXXFLAGS = $(NO_OPT_CXXFLAGS) $(PROTOBUF_OPT_FLAG)
32
temporal40ee5512008-07-10 02:12:20 +000033AM_LDFLAGS = $(PTHREAD_CFLAGS)
34
35# If I say "dist_include_DATA", automake complains that $(includedir) is not
36# a "legitimate" directory for DATA. Screw you, automake.
37protodir = $(includedir)
Jisi Liue3fac652016-07-28 14:24:05 -070038
39# If you are adding new files here, also remember to change the build files for
40# all other languages, //protoc-artifacts/build-zip.sh and run
41# //update_file_list.sh for bazel.
Feng Xiaod36c0c52017-03-29 14:32:48 -070042nobase_dist_proto_DATA = google/protobuf/descriptor.proto \
43 google/protobuf/any.proto \
44 google/protobuf/api.proto \
45 google/protobuf/duration.proto \
46 google/protobuf/empty.proto \
47 google/protobuf/field_mask.proto \
48 google/protobuf/source_context.proto \
49 google/protobuf/struct.proto \
50 google/protobuf/timestamp.proto \
51 google/protobuf/type.proto \
52 google/protobuf/wrappers.proto \
Jisi Liu09354db2017-07-18 15:38:30 -070053 google/protobuf/compiler/plugin.proto
temporal40ee5512008-07-10 02:12:20 +000054
55# Not sure why these don't get cleaned automatically.
56clean-local:
57 rm -f *.loT
58
Jisi Liuf48dca52015-06-12 15:49:21 -070059CLEANFILES = $(protoc_outputs) unittest_proto_middleman \
Feng Xiao16adea32016-07-22 14:15:19 -070060 testzip.jar testzip.list testzip.proto testzip.zip \
Feng Xiao143851e2018-06-01 11:00:04 -070061 no_warning_test.cc
temporal40ee5512008-07-10 02:12:20 +000062
63MAINTAINERCLEANFILES = \
64 Makefile.in
65
Sergio Campamae75cf402016-11-10 10:20:07 -050066nobase_include_HEADERS = \
Sergio Campamae75cf402016-11-10 10:20:07 -050067 google/protobuf/stubs/callback.h \
68 google/protobuf/stubs/bytestream.h \
69 google/protobuf/stubs/casts.h \
70 google/protobuf/stubs/common.h \
71 google/protobuf/stubs/fastmem.h \
72 google/protobuf/stubs/hash.h \
73 google/protobuf/stubs/logging.h \
74 google/protobuf/stubs/macros.h \
75 google/protobuf/stubs/mutex.h \
76 google/protobuf/stubs/once.h \
77 google/protobuf/stubs/platform_macros.h \
78 google/protobuf/stubs/port.h \
Sergio Campamae75cf402016-11-10 10:20:07 -050079 google/protobuf/stubs/status.h \
80 google/protobuf/stubs/stl_util.h \
81 google/protobuf/stubs/stringpiece.h \
Adam Cozzette034dbf82018-11-14 14:50:50 -080082 google/protobuf/stubs/strutil.h \
Sergio Campamae75cf402016-11-10 10:20:07 -050083 google/protobuf/stubs/template_util.h \
Sergio Campamae75cf402016-11-10 10:20:07 -050084 google/protobuf/any.pb.h \
85 google/protobuf/api.pb.h \
86 google/protobuf/any.h \
87 google/protobuf/arena.h \
Jisi Liue45214e2017-07-19 13:07:19 -070088 google/protobuf/arena_impl.h \
Sergio Campamae75cf402016-11-10 10:20:07 -050089 google/protobuf/arenastring.h \
90 google/protobuf/descriptor_database.h \
91 google/protobuf/descriptor.h \
92 google/protobuf/descriptor.pb.h \
93 google/protobuf/duration.pb.h \
94 google/protobuf/dynamic_message.h \
95 google/protobuf/empty.pb.h \
96 google/protobuf/extension_set.h \
Adam Cozzettefbd69fa2018-11-08 08:41:12 -080097 google/protobuf/extension_set_inl.h \
Sergio Campamae75cf402016-11-10 10:20:07 -050098 google/protobuf/field_mask.pb.h \
99 google/protobuf/generated_enum_reflection.h \
100 google/protobuf/generated_enum_util.h \
101 google/protobuf/generated_message_reflection.h \
Feng Xiaod5827782017-03-30 17:43:45 -0700102 google/protobuf/generated_message_table_driven.h \
Sergio Campamae75cf402016-11-10 10:20:07 -0500103 google/protobuf/generated_message_util.h \
104 google/protobuf/has_bits.h \
Adam Cozzette92a7e772017-12-01 10:05:10 -0800105 google/protobuf/implicit_weak_message.h \
Adam Cozzette00b1c142018-03-14 14:06:18 -0700106 google/protobuf/inlined_string_field.h \
Sergio Campamae75cf402016-11-10 10:20:07 -0500107 google/protobuf/map_entry.h \
108 google/protobuf/map_entry_lite.h \
109 google/protobuf/map_field.h \
110 google/protobuf/map_field_inl.h \
111 google/protobuf/map_field_lite.h \
112 google/protobuf/map.h \
113 google/protobuf/map_type_handler.h \
114 google/protobuf/message.h \
115 google/protobuf/message_lite.h \
116 google/protobuf/metadata.h \
Feng Xiaod5827782017-03-30 17:43:45 -0700117 google/protobuf/metadata_lite.h \
Adam Cozzettefbd69fa2018-11-08 08:41:12 -0800118 google/protobuf/parse_context.h \
Feng Xiaoacd5b052018-08-09 21:21:01 -0700119 google/protobuf/port.h \
120 google/protobuf/port_def.inc \
121 google/protobuf/port_undef.inc \
Sergio Campamae75cf402016-11-10 10:20:07 -0500122 google/protobuf/reflection.h \
123 google/protobuf/reflection_ops.h \
124 google/protobuf/repeated_field.h \
125 google/protobuf/service.h \
126 google/protobuf/source_context.pb.h \
127 google/protobuf/struct.pb.h \
128 google/protobuf/text_format.h \
129 google/protobuf/timestamp.pb.h \
130 google/protobuf/type.pb.h \
131 google/protobuf/unknown_field_set.h \
132 google/protobuf/wire_format.h \
133 google/protobuf/wire_format_lite.h \
134 google/protobuf/wire_format_lite_inl.h \
135 google/protobuf/wrappers.pb.h \
136 google/protobuf/io/coded_stream.h \
137 $(GZHEADERS) \
138 google/protobuf/io/printer.h \
139 google/protobuf/io/strtod.h \
140 google/protobuf/io/tokenizer.h \
141 google/protobuf/io/zero_copy_stream.h \
142 google/protobuf/io/zero_copy_stream_impl.h \
143 google/protobuf/io/zero_copy_stream_impl_lite.h \
144 google/protobuf/compiler/code_generator.h \
145 google/protobuf/compiler/command_line_interface.h \
146 google/protobuf/compiler/importer.h \
147 google/protobuf/compiler/parser.h \
148 google/protobuf/compiler/plugin.h \
149 google/protobuf/compiler/plugin.pb.h \
150 google/protobuf/compiler/cpp/cpp_generator.h \
151 google/protobuf/compiler/csharp/csharp_generator.h \
152 google/protobuf/compiler/csharp/csharp_names.h \
153 google/protobuf/compiler/java/java_generator.h \
154 google/protobuf/compiler/java/java_names.h \
Sergio Campamae75cf402016-11-10 10:20:07 -0500155 google/protobuf/compiler/js/js_generator.h \
Adam Cozzette5d630972016-11-17 17:04:30 -0800156 google/protobuf/compiler/js/well_known_types_embed.h \
Sergio Campamae75cf402016-11-10 10:20:07 -0500157 google/protobuf/compiler/objectivec/objectivec_generator.h \
158 google/protobuf/compiler/objectivec/objectivec_helpers.h \
159 google/protobuf/compiler/php/php_generator.h \
160 google/protobuf/compiler/python/python_generator.h \
161 google/protobuf/compiler/ruby/ruby_generator.h \
162 google/protobuf/util/type_resolver.h \
Byron Yicb3e84b2017-03-16 20:01:22 +0800163 google/protobuf/util/delimited_message_util.h \
Sergio Campamae75cf402016-11-10 10:20:07 -0500164 google/protobuf/util/field_comparator.h \
165 google/protobuf/util/field_mask_util.h \
166 google/protobuf/util/json_util.h \
167 google/protobuf/util/time_util.h \
168 google/protobuf/util/type_resolver_util.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700169 google/protobuf/util/message_differencer.h
temporal40ee5512008-07-10 02:12:20 +0000170
kenton@google.com858a22b2009-07-29 02:21:47 +0000171lib_LTLIBRARIES = libprotobuf-lite.la libprotobuf.la libprotoc.la
temporal40ee5512008-07-10 02:12:20 +0000172
Ben Wolsieffer56b40a82018-10-04 20:25:10 -0400173libprotobuf_lite_la_LIBADD = $(PTHREAD_LIBS) $(LIBATOMIC_LIBS)
Hao Nguyen15c30d72018-12-12 15:38:14 -0800174libprotobuf_lite_la_LDFLAGS = -version-info $(PROTOBUF_VERSION) -export-dynamic -no-undefined
Alexandros Frantzis13d165d2017-03-10 14:25:27 +0200175if HAVE_LD_VERSION_SCRIPT
176libprotobuf_lite_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotobuf-lite.map
177EXTRA_libprotobuf_lite_la_DEPENDENCIES = libprotobuf-lite.map
178endif
kenton@google.com858a22b2009-07-29 02:21:47 +0000179libprotobuf_lite_la_SOURCES = \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700180 google/protobuf/stubs/bytestream.cc \
181 google/protobuf/stubs/bytestream.h \
temporal40ee5512008-07-10 02:12:20 +0000182 google/protobuf/stubs/common.cc \
temporal40ee5512008-07-10 02:12:20 +0000183 google/protobuf/stubs/hash.h \
Jisi Liub0f66112015-08-21 11:18:45 -0700184 google/protobuf/stubs/int128.cc \
185 google/protobuf/stubs/int128.h \
Jisi Liue1777392017-07-25 14:37:19 -0700186 google/protobuf/stubs/io_win32.cc \
187 google/protobuf/stubs/io_win32.h \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000188 google/protobuf/stubs/map_util.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700189 google/protobuf/stubs/mathutil.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700190 google/protobuf/stubs/status.cc \
191 google/protobuf/stubs/status.h \
192 google/protobuf/stubs/status_macros.h \
193 google/protobuf/stubs/statusor.cc \
194 google/protobuf/stubs/statusor.h \
195 google/protobuf/stubs/stringpiece.cc \
196 google/protobuf/stubs/stringpiece.h \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000197 google/protobuf/stubs/stringprintf.cc \
198 google/protobuf/stubs/stringprintf.h \
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700199 google/protobuf/stubs/structurally_valid.cc \
Feng Xiao818c5ee2015-06-15 21:42:57 -0700200 google/protobuf/stubs/strutil.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700201 google/protobuf/stubs/time.cc \
202 google/protobuf/stubs/time.h \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800203 google/protobuf/arena.cc \
204 google/protobuf/arenastring.cc \
kenton@google.com858a22b2009-07-29 02:21:47 +0000205 google/protobuf/extension_set.cc \
206 google/protobuf/generated_message_util.cc \
Jisi Liu12c186f2017-07-25 14:38:00 -0700207 google/protobuf/generated_message_table_driven_lite.h \
208 google/protobuf/generated_message_table_driven_lite.cc \
Adam Cozzette92a7e772017-12-01 10:05:10 -0800209 google/protobuf/implicit_weak_message.cc \
kenton@google.com858a22b2009-07-29 02:21:47 +0000210 google/protobuf/message_lite.cc \
211 google/protobuf/repeated_field.cc \
212 google/protobuf/wire_format_lite.cc \
213 google/protobuf/io/coded_stream.cc \
kenton@google.comfccb1462009-12-18 02:11:36 +0000214 google/protobuf/io/coded_stream_inl.h \
kenton@google.com858a22b2009-07-29 02:21:47 +0000215 google/protobuf/io/zero_copy_stream.cc \
Jisi Liua86baaa2015-02-25 20:39:13 -0800216 google/protobuf/io/zero_copy_stream_impl_lite.cc
kenton@google.com858a22b2009-07-29 02:21:47 +0000217
Ben Wolsieffer56b40a82018-10-04 20:25:10 -0400218libprotobuf_la_LIBADD = $(PTHREAD_LIBS) $(LIBATOMIC_LIBS)
Hao Nguyen15c30d72018-12-12 15:38:14 -0800219libprotobuf_la_LDFLAGS = -version-info $(PROTOBUF_VERSION) -export-dynamic -no-undefined
Alexandros Frantzis13d165d2017-03-10 14:25:27 +0200220if HAVE_LD_VERSION_SCRIPT
221libprotobuf_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotobuf.map
222EXTRA_libprotobuf_la_DEPENDENCIES = libprotobuf.map
223endif
kenton@google.com858a22b2009-07-29 02:21:47 +0000224libprotobuf_la_SOURCES = \
225 $(libprotobuf_lite_la_SOURCES) \
Feng Xiao33c92802015-05-11 13:47:41 -0700226 google/protobuf/any.pb.cc \
227 google/protobuf/api.pb.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700228 google/protobuf/stubs/mathlimits.cc \
Jisi Liub0f66112015-08-21 11:18:45 -0700229 google/protobuf/stubs/mathlimits.h \
Bo Yang5db21732015-05-21 14:28:59 -0700230 google/protobuf/any.cc \
temporal40ee5512008-07-10 02:12:20 +0000231 google/protobuf/descriptor.cc \
temporal40ee5512008-07-10 02:12:20 +0000232 google/protobuf/descriptor_database.cc \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800233 google/protobuf/descriptor.pb.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700234 google/protobuf/duration.pb.cc \
temporal40ee5512008-07-10 02:12:20 +0000235 google/protobuf/dynamic_message.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700236 google/protobuf/empty.pb.cc \
kenton@google.com80b1d622009-07-29 01:13:20 +0000237 google/protobuf/extension_set_heavy.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700238 google/protobuf/field_mask.pb.cc \
temporal40ee5512008-07-10 02:12:20 +0000239 google/protobuf/generated_message_reflection.cc \
Jisi Liu12c186f2017-07-25 14:38:00 -0700240 google/protobuf/generated_message_table_driven_lite.h \
Jisi Liue1777392017-07-25 14:37:19 -0700241 google/protobuf/generated_message_table_driven.cc \
Feng Xiao496d47c2014-12-09 15:47:25 -0800242 google/protobuf/map_field.cc \
temporal40ee5512008-07-10 02:12:20 +0000243 google/protobuf/message.cc \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800244 google/protobuf/reflection_internal.h \
temporal40ee5512008-07-10 02:12:20 +0000245 google/protobuf/reflection_ops.cc \
temporal40ee5512008-07-10 02:12:20 +0000246 google/protobuf/service.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700247 google/protobuf/source_context.pb.cc \
248 google/protobuf/struct.pb.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700249 google/protobuf/stubs/substitute.cc \
250 google/protobuf/stubs/substitute.h \
temporal40ee5512008-07-10 02:12:20 +0000251 google/protobuf/text_format.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700252 google/protobuf/timestamp.pb.cc \
253 google/protobuf/type.pb.cc \
temporal40ee5512008-07-10 02:12:20 +0000254 google/protobuf/unknown_field_set.cc \
255 google/protobuf/wire_format.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700256 google/protobuf/wrappers.pb.cc \
kenton@google.come59427a2009-04-16 22:30:56 +0000257 google/protobuf/io/gzip_stream.cc \
temporal40ee5512008-07-10 02:12:20 +0000258 google/protobuf/io/printer.cc \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000259 google/protobuf/io/strtod.cc \
temporal40ee5512008-07-10 02:12:20 +0000260 google/protobuf/io/tokenizer.cc \
temporal40ee5512008-07-10 02:12:20 +0000261 google/protobuf/io/zero_copy_stream_impl.cc \
262 google/protobuf/compiler/importer.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700263 google/protobuf/compiler/parser.cc \
Byron Yicb3e84b2017-03-16 20:01:22 +0800264 google/protobuf/util/delimited_message_util.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700265 google/protobuf/util/field_comparator.cc \
Jisi Liub0f66112015-08-21 11:18:45 -0700266 google/protobuf/util/field_mask_util.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700267 google/protobuf/util/internal/constants.h \
268 google/protobuf/util/internal/datapiece.cc \
269 google/protobuf/util/internal/datapiece.h \
270 google/protobuf/util/internal/default_value_objectwriter.cc \
271 google/protobuf/util/internal/default_value_objectwriter.h \
272 google/protobuf/util/internal/error_listener.cc \
273 google/protobuf/util/internal/error_listener.h \
Feng Xiao818c5ee2015-06-15 21:42:57 -0700274 google/protobuf/util/internal/expecting_objectwriter.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700275 google/protobuf/util/internal/field_mask_utility.cc \
276 google/protobuf/util/internal/field_mask_utility.h \
277 google/protobuf/util/internal/json_escaping.cc \
278 google/protobuf/util/internal/json_escaping.h \
279 google/protobuf/util/internal/json_objectwriter.cc \
280 google/protobuf/util/internal/json_objectwriter.h \
281 google/protobuf/util/internal/json_stream_parser.cc \
282 google/protobuf/util/internal/json_stream_parser.h \
283 google/protobuf/util/internal/location_tracker.h \
Feng Xiao818c5ee2015-06-15 21:42:57 -0700284 google/protobuf/util/internal/mock_error_listener.h \
285 google/protobuf/util/internal/object_location_tracker.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700286 google/protobuf/util/internal/object_source.h \
287 google/protobuf/util/internal/object_writer.cc \
288 google/protobuf/util/internal/object_writer.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700289 google/protobuf/util/internal/protostream_objectsource.cc \
290 google/protobuf/util/internal/protostream_objectsource.h \
291 google/protobuf/util/internal/protostream_objectwriter.cc \
292 google/protobuf/util/internal/protostream_objectwriter.h \
Feng Xiaoe841bac2015-12-11 17:09:20 -0800293 google/protobuf/util/internal/proto_writer.cc \
294 google/protobuf/util/internal/proto_writer.h \
Feng Xiao818c5ee2015-06-15 21:42:57 -0700295 google/protobuf/util/internal/structured_objectwriter.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700296 google/protobuf/util/internal/type_info.cc \
297 google/protobuf/util/internal/type_info.h \
Feng Xiao818c5ee2015-06-15 21:42:57 -0700298 google/protobuf/util/internal/type_info_test_helper.cc \
299 google/protobuf/util/internal/type_info_test_helper.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700300 google/protobuf/util/internal/utility.cc \
301 google/protobuf/util/internal/utility.h \
302 google/protobuf/util/json_util.cc \
Jisi Liub0f66112015-08-21 11:18:45 -0700303 google/protobuf/util/message_differencer.cc \
304 google/protobuf/util/time_util.cc \
305 google/protobuf/util/type_resolver_util.cc
306
Jisi Liua86baaa2015-02-25 20:39:13 -0800307nodist_libprotobuf_la_SOURCES = $(nodist_libprotobuf_lite_la_SOURCES)
temporal40ee5512008-07-10 02:12:20 +0000308
309libprotoc_la_LIBADD = $(PTHREAD_LIBS) libprotobuf.la
Hao Nguyen15c30d72018-12-12 15:38:14 -0800310libprotoc_la_LDFLAGS = -version-info $(PROTOBUF_VERSION) -export-dynamic -no-undefined
Alexandros Frantzis13d165d2017-03-10 14:25:27 +0200311if HAVE_LD_VERSION_SCRIPT
312libprotoc_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotoc.map
313EXTRA_libprotoc_la_DEPENDENCIES = libprotoc.map
314endif
temporal40ee5512008-07-10 02:12:20 +0000315libprotoc_la_SOURCES = \
316 google/protobuf/compiler/code_generator.cc \
317 google/protobuf/compiler/command_line_interface.cc \
kenton@google.comfccb1462009-12-18 02:11:36 +0000318 google/protobuf/compiler/plugin.cc \
319 google/protobuf/compiler/plugin.pb.cc \
Feng Xiao6bbe1972018-08-08 17:00:41 -0700320 google/protobuf/compiler/scc.h \
kenton@google.comfccb1462009-12-18 02:11:36 +0000321 google/protobuf/compiler/subprocess.cc \
322 google/protobuf/compiler/subprocess.h \
kenton@google.com50663222009-12-24 02:12:15 +0000323 google/protobuf/compiler/zip_writer.cc \
324 google/protobuf/compiler/zip_writer.h \
temporal40ee5512008-07-10 02:12:20 +0000325 google/protobuf/compiler/cpp/cpp_enum.cc \
326 google/protobuf/compiler/cpp/cpp_enum.h \
327 google/protobuf/compiler/cpp/cpp_enum_field.cc \
328 google/protobuf/compiler/cpp/cpp_enum_field.h \
329 google/protobuf/compiler/cpp/cpp_extension.cc \
330 google/protobuf/compiler/cpp/cpp_extension.h \
331 google/protobuf/compiler/cpp/cpp_field.cc \
332 google/protobuf/compiler/cpp/cpp_field.h \
333 google/protobuf/compiler/cpp/cpp_file.cc \
334 google/protobuf/compiler/cpp/cpp_file.h \
335 google/protobuf/compiler/cpp/cpp_generator.cc \
336 google/protobuf/compiler/cpp/cpp_helpers.cc \
337 google/protobuf/compiler/cpp/cpp_helpers.h \
Feng Xiaof157a562014-11-14 11:50:31 -0800338 google/protobuf/compiler/cpp/cpp_map_field.cc \
339 google/protobuf/compiler/cpp/cpp_map_field.h \
temporal40ee5512008-07-10 02:12:20 +0000340 google/protobuf/compiler/cpp/cpp_message.cc \
341 google/protobuf/compiler/cpp/cpp_message.h \
342 google/protobuf/compiler/cpp/cpp_message_field.cc \
343 google/protobuf/compiler/cpp/cpp_message_field.h \
Adam Cozzette13fd0452017-09-12 10:32:01 -0700344 google/protobuf/compiler/cpp/cpp_message_layout_helper.h \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000345 google/protobuf/compiler/cpp/cpp_options.h \
Adam Cozzette13fd0452017-09-12 10:32:01 -0700346 google/protobuf/compiler/cpp/cpp_padding_optimizer.cc \
347 google/protobuf/compiler/cpp/cpp_padding_optimizer.h \
temporal40ee5512008-07-10 02:12:20 +0000348 google/protobuf/compiler/cpp/cpp_primitive_field.cc \
349 google/protobuf/compiler/cpp/cpp_primitive_field.h \
350 google/protobuf/compiler/cpp/cpp_service.cc \
351 google/protobuf/compiler/cpp/cpp_service.h \
352 google/protobuf/compiler/cpp/cpp_string_field.cc \
353 google/protobuf/compiler/cpp/cpp_string_field.h \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000354 google/protobuf/compiler/java/java_context.cc \
355 google/protobuf/compiler/java/java_context.h \
temporal40ee5512008-07-10 02:12:20 +0000356 google/protobuf/compiler/java/java_enum.cc \
Jisi Liub0f66112015-08-21 11:18:45 -0700357 google/protobuf/compiler/java/java_enum_lite.cc \
temporal40ee5512008-07-10 02:12:20 +0000358 google/protobuf/compiler/java/java_enum_field.cc \
359 google/protobuf/compiler/java/java_enum_field.h \
Bo Yang5db21732015-05-21 14:28:59 -0700360 google/protobuf/compiler/java/java_enum_field_lite.cc \
361 google/protobuf/compiler/java/java_enum_field_lite.h \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800362 google/protobuf/compiler/java/java_enum.h \
Jisi Liub0f66112015-08-21 11:18:45 -0700363 google/protobuf/compiler/java/java_enum_lite.h \
temporal40ee5512008-07-10 02:12:20 +0000364 google/protobuf/compiler/java/java_extension.cc \
365 google/protobuf/compiler/java/java_extension.h \
Jisi Liu5221dcb2016-01-29 13:51:05 -0800366 google/protobuf/compiler/java/java_extension_lite.cc \
367 google/protobuf/compiler/java/java_extension_lite.h \
temporal40ee5512008-07-10 02:12:20 +0000368 google/protobuf/compiler/java/java_field.cc \
369 google/protobuf/compiler/java/java_field.h \
370 google/protobuf/compiler/java/java_file.cc \
371 google/protobuf/compiler/java/java_file.h \
372 google/protobuf/compiler/java/java_generator.cc \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000373 google/protobuf/compiler/java/java_generator_factory.cc \
374 google/protobuf/compiler/java/java_generator_factory.h \
temporal40ee5512008-07-10 02:12:20 +0000375 google/protobuf/compiler/java/java_helpers.cc \
376 google/protobuf/compiler/java/java_helpers.h \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800377 google/protobuf/compiler/java/java_map_field.cc \
378 google/protobuf/compiler/java/java_map_field.h \
Bo Yang5db21732015-05-21 14:28:59 -0700379 google/protobuf/compiler/java/java_map_field_lite.cc \
380 google/protobuf/compiler/java/java_map_field_lite.h \
temporal40ee5512008-07-10 02:12:20 +0000381 google/protobuf/compiler/java/java_message.cc \
Bo Yang5db21732015-05-21 14:28:59 -0700382 google/protobuf/compiler/java/java_message_lite.cc \
383 google/protobuf/compiler/java/java_message_builder.cc \
384 google/protobuf/compiler/java/java_message_builder_lite.cc \
temporal40ee5512008-07-10 02:12:20 +0000385 google/protobuf/compiler/java/java_message_field.cc \
386 google/protobuf/compiler/java/java_message_field.h \
Bo Yang5db21732015-05-21 14:28:59 -0700387 google/protobuf/compiler/java/java_message_field_lite.cc \
388 google/protobuf/compiler/java/java_message_field_lite.h \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800389 google/protobuf/compiler/java/java_message.h \
Bo Yang5db21732015-05-21 14:28:59 -0700390 google/protobuf/compiler/java/java_message_lite.h \
391 google/protobuf/compiler/java/java_message_builder.h \
392 google/protobuf/compiler/java/java_message_builder_lite.h \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000393 google/protobuf/compiler/java/java_name_resolver.cc \
394 google/protobuf/compiler/java/java_name_resolver.h \
Feng Xiaoe102db12016-07-01 11:02:04 -0700395 google/protobuf/compiler/java/java_options.h \
temporal40ee5512008-07-10 02:12:20 +0000396 google/protobuf/compiler/java/java_primitive_field.cc \
397 google/protobuf/compiler/java/java_primitive_field.h \
Bo Yang5db21732015-05-21 14:28:59 -0700398 google/protobuf/compiler/java/java_primitive_field_lite.cc \
399 google/protobuf/compiler/java/java_primitive_field_lite.h \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000400 google/protobuf/compiler/java/java_shared_code_generator.cc \
401 google/protobuf/compiler/java/java_shared_code_generator.h \
temporal40ee5512008-07-10 02:12:20 +0000402 google/protobuf/compiler/java/java_service.cc \
403 google/protobuf/compiler/java/java_service.h \
liujisi@google.com33165fe2010-11-02 13:14:58 +0000404 google/protobuf/compiler/java/java_string_field.cc \
405 google/protobuf/compiler/java/java_string_field.h \
Bo Yang5db21732015-05-21 14:28:59 -0700406 google/protobuf/compiler/java/java_string_field_lite.cc \
407 google/protobuf/compiler/java/java_string_field_lite.h \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000408 google/protobuf/compiler/java/java_doc_comment.cc \
409 google/protobuf/compiler/java/java_doc_comment.h \
Feng Xiaoe841bac2015-12-11 17:09:20 -0800410 google/protobuf/compiler/js/js_generator.cc \
Adam Cozzette5a76e632016-11-17 16:48:38 -0800411 google/protobuf/compiler/js/well_known_types_embed.cc \
Thomas Van Lenten30650d82015-05-01 08:57:16 -0400412 google/protobuf/compiler/objectivec/objectivec_enum.cc \
413 google/protobuf/compiler/objectivec/objectivec_enum.h \
414 google/protobuf/compiler/objectivec/objectivec_enum_field.cc \
415 google/protobuf/compiler/objectivec/objectivec_enum_field.h \
416 google/protobuf/compiler/objectivec/objectivec_extension.cc \
417 google/protobuf/compiler/objectivec/objectivec_extension.h \
418 google/protobuf/compiler/objectivec/objectivec_field.cc \
419 google/protobuf/compiler/objectivec/objectivec_field.h \
420 google/protobuf/compiler/objectivec/objectivec_file.cc \
421 google/protobuf/compiler/objectivec/objectivec_file.h \
422 google/protobuf/compiler/objectivec/objectivec_generator.cc \
423 google/protobuf/compiler/objectivec/objectivec_helpers.cc \
424 google/protobuf/compiler/objectivec/objectivec_helpers.h \
425 google/protobuf/compiler/objectivec/objectivec_map_field.cc \
426 google/protobuf/compiler/objectivec/objectivec_map_field.h \
427 google/protobuf/compiler/objectivec/objectivec_message.cc \
428 google/protobuf/compiler/objectivec/objectivec_message.h \
429 google/protobuf/compiler/objectivec/objectivec_message_field.cc \
430 google/protobuf/compiler/objectivec/objectivec_message_field.h \
Dave MacLachlanbe83b292018-10-25 12:35:20 -0700431 google/protobuf/compiler/objectivec/objectivec_nsobject_methods.h \
Thomas Van Lenten30650d82015-05-01 08:57:16 -0400432 google/protobuf/compiler/objectivec/objectivec_oneof.cc \
433 google/protobuf/compiler/objectivec/objectivec_oneof.h \
434 google/protobuf/compiler/objectivec/objectivec_primitive_field.cc \
435 google/protobuf/compiler/objectivec/objectivec_primitive_field.h \
Paul Yange0e54662016-09-15 11:09:01 -0700436 google/protobuf/compiler/php/php_generator.cc \
Chris Fallin973f4252014-11-18 14:19:58 -0800437 google/protobuf/compiler/python/python_generator.cc \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700438 google/protobuf/compiler/ruby/ruby_generator.cc \
Jon Skeet67dd42c2015-10-01 10:36:58 +0100439 google/protobuf/compiler/csharp/csharp_doc_comment.cc \
440 google/protobuf/compiler/csharp/csharp_doc_comment.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700441 google/protobuf/compiler/csharp/csharp_enum.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700442 google/protobuf/compiler/csharp/csharp_enum.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700443 google/protobuf/compiler/csharp/csharp_enum_field.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700444 google/protobuf/compiler/csharp/csharp_enum_field.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700445 google/protobuf/compiler/csharp/csharp_field_base.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700446 google/protobuf/compiler/csharp/csharp_field_base.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700447 google/protobuf/compiler/csharp/csharp_generator.cc \
448 google/protobuf/compiler/csharp/csharp_helpers.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700449 google/protobuf/compiler/csharp/csharp_helpers.h \
Jon Skeet0d684d32015-06-24 17:21:55 +0100450 google/protobuf/compiler/csharp/csharp_map_field.cc \
451 google/protobuf/compiler/csharp/csharp_map_field.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700452 google/protobuf/compiler/csharp/csharp_message.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700453 google/protobuf/compiler/csharp/csharp_message.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700454 google/protobuf/compiler/csharp/csharp_message_field.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700455 google/protobuf/compiler/csharp/csharp_message_field.h \
Gaurav Vaish74d8b0b2016-03-24 11:44:56 -0700456 google/protobuf/compiler/csharp/csharp_options.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700457 google/protobuf/compiler/csharp/csharp_primitive_field.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700458 google/protobuf/compiler/csharp/csharp_primitive_field.h \
Jon Skeeta6361a12015-11-19 13:05:17 +0000459 google/protobuf/compiler/csharp/csharp_reflection_class.cc \
460 google/protobuf/compiler/csharp/csharp_reflection_class.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700461 google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700462 google/protobuf/compiler/csharp/csharp_repeated_enum_field.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700463 google/protobuf/compiler/csharp/csharp_repeated_message_field.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700464 google/protobuf/compiler/csharp/csharp_repeated_message_field.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700465 google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700466 google/protobuf/compiler/csharp/csharp_repeated_primitive_field.h \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700467 google/protobuf/compiler/csharp/csharp_source_generator_base.cc \
Jan Tattermusch7eaf4382015-04-17 16:51:43 -0700468 google/protobuf/compiler/csharp/csharp_source_generator_base.h \
Jon Skeetb2ac8682015-07-15 13:17:42 +0100469 google/protobuf/compiler/csharp/csharp_wrapper_field.cc \
470 google/protobuf/compiler/csharp/csharp_wrapper_field.h
temporal40ee5512008-07-10 02:12:20 +0000471
Adam Cozzetteb40d3182017-01-03 13:07:21 -0800472bin_PROGRAMS = protoc
temporal40ee5512008-07-10 02:12:20 +0000473protoc_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la
474protoc_SOURCES = google/protobuf/compiler/main.cc
475
476# Tests ==============================================================
477
Feng Xiaoe96ff302015-06-15 18:21:48 -0700478protoc_inputs = \
479 google/protobuf/any_test.proto \
480 google/protobuf/compiler/cpp/cpp_test_bad_identifiers.proto \
481 google/protobuf/map_lite_unittest.proto \
482 google/protobuf/map_proto2_unittest.proto \
483 google/protobuf/map_unittest.proto \
484 google/protobuf/unittest_arena.proto \
485 google/protobuf/unittest_custom_options.proto \
486 google/protobuf/unittest_drop_unknown_fields.proto \
487 google/protobuf/unittest_embed_optimize_for.proto \
488 google/protobuf/unittest_empty.proto \
489 google/protobuf/unittest_enormous_descriptor.proto \
490 google/protobuf/unittest_import_lite.proto \
491 google/protobuf/unittest_import.proto \
492 google/protobuf/unittest_import_public_lite.proto \
493 google/protobuf/unittest_import_public.proto \
Feng Xiaod36c0c52017-03-29 14:32:48 -0700494 google/protobuf/unittest_lazy_dependencies.proto \
495 google/protobuf/unittest_lazy_dependencies_custom_option.proto \
496 google/protobuf/unittest_lazy_dependencies_enum.proto \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700497 google/protobuf/unittest_lite_imports_nonlite.proto \
498 google/protobuf/unittest_lite.proto \
499 google/protobuf/unittest_mset.proto \
Jisi Liub0f66112015-08-21 11:18:45 -0700500 google/protobuf/unittest_mset_wire_format.proto \
501 google/protobuf/unittest_no_arena_lite.proto \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700502 google/protobuf/unittest_no_arena_import.proto \
503 google/protobuf/unittest_no_arena.proto \
504 google/protobuf/unittest_no_field_presence.proto \
505 google/protobuf/unittest_no_generic_services.proto \
506 google/protobuf/unittest_optimize_for.proto \
507 google/protobuf/unittest_preserve_unknown_enum2.proto \
508 google/protobuf/unittest_preserve_unknown_enum.proto \
509 google/protobuf/unittest.proto \
Feng Xiao6bbe1972018-08-08 17:00:41 -0700510 google/protobuf/unittest_proto3.proto \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700511 google/protobuf/unittest_proto3_arena.proto \
Jisi Liu55fdbe52017-08-23 11:35:48 -0700512 google/protobuf/unittest_proto3_arena_lite.proto \
513 google/protobuf/unittest_proto3_lite.proto \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700514 google/protobuf/unittest_well_known_types.proto \
515 google/protobuf/util/internal/testdata/anys.proto \
516 google/protobuf/util/internal/testdata/books.proto \
517 google/protobuf/util/internal/testdata/default_value.proto \
518 google/protobuf/util/internal/testdata/default_value_test.proto \
519 google/protobuf/util/internal/testdata/field_mask.proto \
520 google/protobuf/util/internal/testdata/maps.proto \
Jisi Liub0f66112015-08-21 11:18:45 -0700521 google/protobuf/util/internal/testdata/oneofs.proto \
Bo Yangcc8ca5b2016-09-19 13:45:07 -0700522 google/protobuf/util/internal/testdata/proto3.proto \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700523 google/protobuf/util/internal/testdata/struct.proto \
524 google/protobuf/util/internal/testdata/timestamp_duration.proto \
Bo Yangcc8ca5b2016-09-19 13:45:07 -0700525 google/protobuf/util/internal/testdata/wrappers.proto \
Feng Xiao6bbe1972018-08-08 17:00:41 -0700526 google/protobuf/util/json_format.proto \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700527 google/protobuf/util/json_format_proto3.proto \
Feng Xiaob7610f12015-12-22 14:36:04 -0800528 google/protobuf/util/message_differencer_unittest.proto \
Tamir Duberstein53bee662015-03-31 10:19:05 -0700529 google/protobuf/compiler/cpp/cpp_test_large_enum_value.proto
temporal40ee5512008-07-10 02:12:20 +0000530
531EXTRA_DIST = \
532 $(protoc_inputs) \
533 solaris/libstdc++.la \
Jisi Liu55fdbe52017-08-23 11:35:48 -0700534 google/protobuf/test_messages_proto3.proto \
535 google/protobuf/test_messages_proto2.proto \
kenton@google.come59427a2009-04-16 22:30:56 +0000536 google/protobuf/io/gzip_stream.h \
537 google/protobuf/io/gzip_stream_unittest.sh \
temporal40ee5512008-07-10 02:12:20 +0000538 google/protobuf/testdata/golden_message \
Feng Xiao0b682552016-07-14 15:21:10 -0700539 google/protobuf/testdata/golden_message_maps \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000540 google/protobuf/testdata/golden_message_oneof_implemented \
Josh Haberman0b70a432015-02-25 20:17:32 -0800541 google/protobuf/testdata/golden_message_proto3 \
kenton@google.com2d6daa72009-01-22 01:27:00 +0000542 google/protobuf/testdata/golden_packed_fields_message \
jieluo@google.come61b5132014-08-14 21:51:48 +0000543 google/protobuf/testdata/bad_utf8_string \
Bo Yang5db21732015-05-21 14:28:59 -0700544 google/protobuf/testdata/map_test_data.txt \
jieluo@google.come61b5132014-08-14 21:51:48 +0000545 google/protobuf/testdata/text_format_unittest_data.txt \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000546 google/protobuf/testdata/text_format_unittest_data_oneof_implemented.txt \
jieluo@google.combde4a322014-08-12 21:10:30 +0000547 google/protobuf/testdata/text_format_unittest_data_pointy.txt \
jieluo@google.come61b5132014-08-14 21:51:48 +0000548 google/protobuf/testdata/text_format_unittest_data_pointy_oneof.txt \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000549 google/protobuf/testdata/text_format_unittest_extensions_data.txt \
jieluo@google.combde4a322014-08-12 21:10:30 +0000550 google/protobuf/testdata/text_format_unittest_extensions_data_pointy.txt \
temporal40ee5512008-07-10 02:12:20 +0000551 google/protobuf/package_info.h \
552 google/protobuf/io/package_info.h \
Jisi Liu3916a0a2016-08-01 18:47:45 -0700553 google/protobuf/util/package_info.h \
Bo Yanga9332e22015-05-25 16:04:36 -0700554 google/protobuf/compiler/ruby/ruby_generated_code.proto \
Josh Haberman43b36dd2016-07-26 10:28:18 -0700555 google/protobuf/compiler/ruby/ruby_generated_code_pb.rb \
Paul Yang011f6702018-10-04 10:29:21 -0700556 google/protobuf/compiler/ruby/ruby_generated_code_proto2.proto \
557 google/protobuf/compiler/ruby/ruby_generated_code_proto2_pb.rb \
kenton@google.com8aae2a22009-08-11 00:23:25 +0000558 google/protobuf/compiler/package_info.h \
Feng Xiao60cb0942016-07-19 16:15:42 -0700559 google/protobuf/compiler/zip_output_unittest.sh \
Alexandros Frantzis13d165d2017-03-10 14:25:27 +0200560 libprotobuf-lite.map \
561 libprotobuf.map \
562 libprotoc.map \
Feng Xiao60cb0942016-07-19 16:15:42 -0700563 README.md
temporal40ee5512008-07-10 02:12:20 +0000564
kenton@google.com80b1d622009-07-29 01:13:20 +0000565protoc_lite_outputs = \
Jisi Liu885b6122015-02-28 14:51:22 -0800566 google/protobuf/map_lite_unittest.pb.cc \
567 google/protobuf/map_lite_unittest.pb.h \
kenton@google.com80b1d622009-07-29 01:13:20 +0000568 google/protobuf/unittest_lite.pb.cc \
569 google/protobuf/unittest_lite.pb.h \
Jisi Liub0f66112015-08-21 11:18:45 -0700570 google/protobuf/unittest_no_arena_lite.pb.cc \
571 google/protobuf/unittest_no_arena_lite.pb.h \
kenton@google.com80b1d622009-07-29 01:13:20 +0000572 google/protobuf/unittest_import_lite.pb.cc \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000573 google/protobuf/unittest_import_lite.pb.h \
574 google/protobuf/unittest_import_public_lite.pb.cc \
575 google/protobuf/unittest_import_public_lite.pb.h
kenton@google.com80b1d622009-07-29 01:13:20 +0000576
Feng Xiaoe96ff302015-06-15 18:21:48 -0700577protoc_outputs = \
578 $(protoc_lite_outputs) \
579 google/protobuf/any_test.pb.cc \
580 google/protobuf/any_test.pb.h \
581 google/protobuf/compiler/cpp/cpp_test_bad_identifiers.pb.cc \
582 google/protobuf/compiler/cpp/cpp_test_bad_identifiers.pb.h \
583 google/protobuf/compiler/cpp/cpp_test_large_enum_value.pb.cc \
584 google/protobuf/compiler/cpp/cpp_test_large_enum_value.pb.h \
585 google/protobuf/map_proto2_unittest.pb.cc \
586 google/protobuf/map_proto2_unittest.pb.h \
587 google/protobuf/map_unittest.pb.cc \
588 google/protobuf/map_unittest.pb.h \
589 google/protobuf/unittest_arena.pb.cc \
590 google/protobuf/unittest_arena.pb.h \
591 google/protobuf/unittest_custom_options.pb.cc \
592 google/protobuf/unittest_custom_options.pb.h \
593 google/protobuf/unittest_drop_unknown_fields.pb.cc \
594 google/protobuf/unittest_drop_unknown_fields.pb.h \
595 google/protobuf/unittest_embed_optimize_for.pb.cc \
596 google/protobuf/unittest_embed_optimize_for.pb.h \
597 google/protobuf/unittest_empty.pb.cc \
598 google/protobuf/unittest_empty.pb.h \
599 google/protobuf/unittest_enormous_descriptor.pb.cc \
600 google/protobuf/unittest_enormous_descriptor.pb.h \
601 google/protobuf/unittest_import.pb.cc \
602 google/protobuf/unittest_import.pb.h \
603 google/protobuf/unittest_import_public.pb.cc \
604 google/protobuf/unittest_import_public.pb.h \
Feng Xiaod36c0c52017-03-29 14:32:48 -0700605 google/protobuf/unittest_lazy_dependencies.pb.cc \
606 google/protobuf/unittest_lazy_dependencies.pb.h \
607 google/protobuf/unittest_lazy_dependencies_custom_option.pb.cc \
608 google/protobuf/unittest_lazy_dependencies_custom_option.pb.h \
609 google/protobuf/unittest_lazy_dependencies_enum.pb.cc \
610 google/protobuf/unittest_lazy_dependencies_enum.pb.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700611 google/protobuf/unittest_lite_imports_nonlite.pb.cc \
612 google/protobuf/unittest_lite_imports_nonlite.pb.h \
613 google/protobuf/unittest_mset.pb.cc \
614 google/protobuf/unittest_mset.pb.h \
Jisi Liub0f66112015-08-21 11:18:45 -0700615 google/protobuf/unittest_mset_wire_format.pb.cc \
616 google/protobuf/unittest_mset_wire_format.pb.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700617 google/protobuf/unittest_no_arena_import.pb.cc \
618 google/protobuf/unittest_no_arena_import.pb.h \
619 google/protobuf/unittest_no_arena.pb.cc \
620 google/protobuf/unittest_no_arena.pb.h \
621 google/protobuf/unittest_no_field_presence.pb.cc \
622 google/protobuf/unittest_no_field_presence.pb.h \
623 google/protobuf/unittest_no_generic_services.pb.cc \
624 google/protobuf/unittest_no_generic_services.pb.h \
625 google/protobuf/unittest_optimize_for.pb.cc \
626 google/protobuf/unittest_optimize_for.pb.h \
627 google/protobuf/unittest.pb.cc \
628 google/protobuf/unittest.pb.h \
629 google/protobuf/unittest_preserve_unknown_enum2.pb.cc \
630 google/protobuf/unittest_preserve_unknown_enum2.pb.h \
631 google/protobuf/unittest_preserve_unknown_enum.pb.cc \
632 google/protobuf/unittest_preserve_unknown_enum.pb.h \
Feng Xiao6bbe1972018-08-08 17:00:41 -0700633 google/protobuf/unittest_proto3.pb.cc \
634 google/protobuf/unittest_proto3.pb.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700635 google/protobuf/unittest_proto3_arena.pb.cc \
636 google/protobuf/unittest_proto3_arena.pb.h \
Jisi Liue8fc0662017-08-10 10:47:06 -0700637 google/protobuf/unittest_proto3_arena_lite.pb.cc \
638 google/protobuf/unittest_proto3_arena_lite.pb.h \
639 google/protobuf/unittest_proto3_lite.pb.cc \
640 google/protobuf/unittest_proto3_lite.pb.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700641 google/protobuf/unittest_well_known_types.pb.cc \
642 google/protobuf/unittest_well_known_types.pb.h \
643 google/protobuf/util/internal/testdata/anys.pb.cc \
644 google/protobuf/util/internal/testdata/anys.pb.h \
645 google/protobuf/util/internal/testdata/books.pb.cc \
646 google/protobuf/util/internal/testdata/books.pb.h \
647 google/protobuf/util/internal/testdata/default_value.pb.cc \
648 google/protobuf/util/internal/testdata/default_value.pb.h \
649 google/protobuf/util/internal/testdata/default_value_test.pb.cc \
650 google/protobuf/util/internal/testdata/default_value_test.pb.h \
651 google/protobuf/util/internal/testdata/field_mask.pb.cc \
652 google/protobuf/util/internal/testdata/field_mask.pb.h \
653 google/protobuf/util/internal/testdata/maps.pb.cc \
654 google/protobuf/util/internal/testdata/maps.pb.h \
Jisi Liub0f66112015-08-21 11:18:45 -0700655 google/protobuf/util/internal/testdata/oneofs.pb.cc \
656 google/protobuf/util/internal/testdata/oneofs.pb.h \
Bo Yangcc8ca5b2016-09-19 13:45:07 -0700657 google/protobuf/util/internal/testdata/proto3.pb.cc \
658 google/protobuf/util/internal/testdata/proto3.pb.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700659 google/protobuf/util/internal/testdata/struct.pb.cc \
660 google/protobuf/util/internal/testdata/struct.pb.h \
661 google/protobuf/util/internal/testdata/timestamp_duration.pb.cc \
662 google/protobuf/util/internal/testdata/timestamp_duration.pb.h \
Bo Yangcc8ca5b2016-09-19 13:45:07 -0700663 google/protobuf/util/internal/testdata/wrappers.pb.cc \
664 google/protobuf/util/internal/testdata/wrappers.pb.h \
Feng Xiao6bbe1972018-08-08 17:00:41 -0700665 google/protobuf/util/json_format.pb.cc \
666 google/protobuf/util/json_format.pb.h \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700667 google/protobuf/util/json_format_proto3.pb.cc \
Feng Xiaob7610f12015-12-22 14:36:04 -0800668 google/protobuf/util/json_format_proto3.pb.h \
669 google/protobuf/util/message_differencer_unittest.pb.cc \
670 google/protobuf/util/message_differencer_unittest.pb.h
temporal40ee5512008-07-10 02:12:20 +0000671
kenton@google.com9824eda2009-05-06 17:49:37 +0000672if USE_EXTERNAL_PROTOC
673
674unittest_proto_middleman: $(protoc_inputs)
kenton@google.com721995d2009-09-11 22:08:40 +0000675 $(PROTOC) -I$(srcdir) --cpp_out=. $^
kenton@google.com9824eda2009-05-06 17:49:37 +0000676 touch unittest_proto_middleman
677
678else
679
kenton@google.com38fcd392010-01-08 04:48:19 +0000680# We have to cd to $(srcdir) before executing protoc because $(protoc_inputs) is
681# relative to srcdir, which may not be the same as the current directory when
682# building out-of-tree.
temporal40ee5512008-07-10 02:12:20 +0000683unittest_proto_middleman: protoc$(EXEEXT) $(protoc_inputs)
kenton@google.com38fcd392010-01-08 04:48:19 +0000684 oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/protoc$(EXEEXT) -I. --cpp_out=$$oldpwd $(protoc_inputs) )
temporal40ee5512008-07-10 02:12:20 +0000685 touch unittest_proto_middleman
686
kenton@google.com9824eda2009-05-06 17:49:37 +0000687endif
688
temporal40ee5512008-07-10 02:12:20 +0000689$(protoc_outputs): unittest_proto_middleman
690
kenton@google.comc5ff06c2009-04-28 03:06:41 +0000691COMMON_TEST_SOURCES = \
Jisi Liu885b6122015-02-28 14:51:22 -0800692 google/protobuf/arena_test_util.cc \
693 google/protobuf/arena_test_util.h \
Feng Xiaof157a562014-11-14 11:50:31 -0800694 google/protobuf/map_test_util.cc \
695 google/protobuf/map_test_util.h \
Jisi Liu885b6122015-02-28 14:51:22 -0800696 google/protobuf/map_test_util_impl.h \
kenton@google.comc5ff06c2009-04-28 03:06:41 +0000697 google/protobuf/test_util.cc \
698 google/protobuf/test_util.h \
Adam Cozzette00b1c142018-03-14 14:06:18 -0700699 google/protobuf/test_util.inc \
Feng Xiaoacd5b052018-08-09 21:21:01 -0700700 google/protobuf/test_util2.h \
kenton@google.comc5ff06c2009-04-28 03:06:41 +0000701 google/protobuf/testing/googletest.cc \
702 google/protobuf/testing/googletest.h \
703 google/protobuf/testing/file.cc \
704 google/protobuf/testing/file.h
705
Carlos O'Ryan3c5442a2018-03-26 16:54:32 -0400706GOOGLETEST_BUILD_DIR=../third_party/googletest/googletest
707GOOGLEMOCK_BUILD_DIR=../third_party/googletest/googlemock
708GOOGLETEST_SRC_DIR=$(srcdir)/../third_party/googletest/googletest
709GOOGLEMOCK_SRC_DIR=$(srcdir)/../third_party/googletest/googlemock
kenton@google.comd2fcbba2010-01-04 19:47:18 +0000710check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700711 protobuf-lite-test test_plugin protobuf-lite-arena-test \
Feng Xiao16adea32016-07-22 14:15:19 -0700712 no-warning-test $(GZCHECKPROGRAMS)
kenton@google.com37ad00d2009-04-21 21:00:39 +0000713protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
Carlos O'Ryan3c5442a2018-03-26 16:54:32 -0400714 $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
715 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
716 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
717protobuf_test_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include \
718 -I$(GOOGLEMOCK_SRC_DIR)/include
kenton@google.com42c81e12009-05-06 01:15:06 +0000719# Disable optimization for tests unless the user explicitly asked for it,
720# since test_util.cc takes forever to compile with optimization (with GCC).
721# See configure.ac for more info.
722protobuf_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
temporal40ee5512008-07-10 02:12:20 +0000723protobuf_test_SOURCES = \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700724 google/protobuf/stubs/bytestream_unittest.cc \
temporal40ee5512008-07-10 02:12:20 +0000725 google/protobuf/stubs/common_unittest.cc \
Jisi Liub0f66112015-08-21 11:18:45 -0700726 google/protobuf/stubs/int128_unittest.cc \
Jisi Liu759245a2017-07-25 11:52:33 -0700727 google/protobuf/stubs/io_win32_unittest.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700728 google/protobuf/stubs/statusor_test.cc \
729 google/protobuf/stubs/status_test.cc \
730 google/protobuf/stubs/stringpiece_unittest.cc \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000731 google/protobuf/stubs/stringprintf_unittest.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700732 google/protobuf/stubs/structurally_valid_unittest.cc \
733 google/protobuf/stubs/strutil_unittest.cc \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000734 google/protobuf/stubs/template_util_unittest.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700735 google/protobuf/stubs/time_test.cc \
Bo Yang5db21732015-05-21 14:28:59 -0700736 google/protobuf/any_test.cc \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800737 google/protobuf/arenastring_unittest.cc \
738 google/protobuf/arena_unittest.cc \
temporal40ee5512008-07-10 02:12:20 +0000739 google/protobuf/descriptor_database_unittest.cc \
740 google/protobuf/descriptor_unittest.cc \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800741 google/protobuf/drop_unknown_fields_test.cc \
temporal40ee5512008-07-10 02:12:20 +0000742 google/protobuf/dynamic_message_unittest.cc \
743 google/protobuf/extension_set_unittest.cc \
744 google/protobuf/generated_message_reflection_unittest.cc \
Feng Xiaof157a562014-11-14 11:50:31 -0800745 google/protobuf/map_field_test.cc \
746 google/protobuf/map_test.cc \
temporal40ee5512008-07-10 02:12:20 +0000747 google/protobuf/message_unittest.cc \
Adam Cozzette00b1c142018-03-14 14:06:18 -0700748 google/protobuf/message_unittest.inc \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800749 google/protobuf/no_field_presence_test.cc \
750 google/protobuf/preserve_unknown_enum_test.cc \
Jisi Liu09354db2017-07-18 15:38:30 -0700751 google/protobuf/proto3_arena_lite_unittest.cc \
Adam Cozzette0400cca2018-03-13 16:37:29 -0700752 google/protobuf/proto3_arena_unittest.cc \
Jisi Liu09354db2017-07-18 15:38:30 -0700753 google/protobuf/proto3_lite_unittest.cc \
Feng Xiaoacd5b052018-08-09 21:21:01 -0700754 google/protobuf/proto3_lite_unittest.inc \
temporal40ee5512008-07-10 02:12:20 +0000755 google/protobuf/reflection_ops_unittest.cc \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000756 google/protobuf/repeated_field_reflection_unittest.cc \
Feng Xiao6ef984a2014-11-10 17:34:54 -0800757 google/protobuf/repeated_field_unittest.cc \
temporal40ee5512008-07-10 02:12:20 +0000758 google/protobuf/text_format_unittest.cc \
759 google/protobuf/unknown_field_set_unittest.cc \
Feng Xiao33c92802015-05-11 13:47:41 -0700760 google/protobuf/well_known_types_unittest.cc \
temporal40ee5512008-07-10 02:12:20 +0000761 google/protobuf/wire_format_unittest.cc \
762 google/protobuf/io/coded_stream_unittest.cc \
763 google/protobuf/io/printer_unittest.cc \
764 google/protobuf/io/tokenizer_unittest.cc \
765 google/protobuf/io/zero_copy_stream_unittest.cc \
Jisi Liu1a7a7fc2017-10-18 12:22:18 -0700766 google/protobuf/compiler/annotation_test_util.h \
767 google/protobuf/compiler/annotation_test_util.cc \
temporal40ee5512008-07-10 02:12:20 +0000768 google/protobuf/compiler/command_line_interface_unittest.cc \
769 google/protobuf/compiler/importer_unittest.cc \
kenton@google.comfccb1462009-12-18 02:11:36 +0000770 google/protobuf/compiler/mock_code_generator.cc \
771 google/protobuf/compiler/mock_code_generator.h \
temporal40ee5512008-07-10 02:12:20 +0000772 google/protobuf/compiler/parser_unittest.cc \
773 google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc \
Jisi Liu09354db2017-07-18 15:38:30 -0700774 google/protobuf/compiler/cpp/cpp_move_unittest.cc \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000775 google/protobuf/compiler/cpp/cpp_unittest.h \
temporal40ee5512008-07-10 02:12:20 +0000776 google/protobuf/compiler/cpp/cpp_unittest.cc \
Adam Cozzette00b1c142018-03-14 14:06:18 -0700777 google/protobuf/compiler/cpp/cpp_unittest.inc \
kenton@google.comfccb1462009-12-18 02:11:36 +0000778 google/protobuf/compiler/cpp/cpp_plugin_unittest.cc \
Jisi Liu5221dcb2016-01-29 13:51:05 -0800779 google/protobuf/compiler/cpp/metadata_test.cc \
kenton@google.comfccb1462009-12-18 02:11:36 +0000780 google/protobuf/compiler/java/java_plugin_unittest.cc \
xiaofeng@google.comb55a20f2012-09-22 02:40:50 +0000781 google/protobuf/compiler/java/java_doc_comment_unittest.cc \
Thomas Van Lenten30650d82015-05-01 08:57:16 -0400782 google/protobuf/compiler/objectivec/objectivec_helpers_unittest.cc \
kenton@google.comfccb1462009-12-18 02:11:36 +0000783 google/protobuf/compiler/python/python_plugin_unittest.cc \
Chris Fallin3f3820d2015-01-14 15:44:46 -0800784 google/protobuf/compiler/ruby/ruby_generator_unittest.cc \
Jie Luoaf13bff2017-03-02 17:15:58 -0800785 google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc \
Jan Tattermusch685ae362015-03-16 19:07:16 -0700786 google/protobuf/compiler/csharp/csharp_generator_unittest.cc \
Byron Yicb3e84b2017-03-16 20:01:22 +0800787 google/protobuf/util/delimited_message_util_test.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700788 google/protobuf/util/field_comparator_test.cc \
Jisi Liub0f66112015-08-21 11:18:45 -0700789 google/protobuf/util/field_mask_util_test.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700790 google/protobuf/util/internal/default_value_objectwriter_test.cc \
791 google/protobuf/util/internal/json_objectwriter_test.cc \
792 google/protobuf/util/internal/json_stream_parser_test.cc \
793 google/protobuf/util/internal/protostream_objectsource_test.cc \
794 google/protobuf/util/internal/protostream_objectwriter_test.cc \
795 google/protobuf/util/internal/type_info_test_helper.cc \
796 google/protobuf/util/json_util_test.cc \
Feng Xiaob7610f12015-12-22 14:36:04 -0800797 google/protobuf/util/message_differencer_unittest.cc \
Jisi Liub0f66112015-08-21 11:18:45 -0700798 google/protobuf/util/time_util_test.cc \
Feng Xiaoe96ff302015-06-15 18:21:48 -0700799 google/protobuf/util/type_resolver_util_test.cc \
kenton@google.comc5ff06c2009-04-28 03:06:41 +0000800 $(COMMON_TEST_SOURCES)
801nodist_protobuf_test_SOURCES = $(protoc_outputs)
Feng Xiaoc337d9f2017-11-21 13:19:45 -0800802$(am_protobuf_test_OBJECTS): unittest_proto_middleman
kenton@google.comc5ff06c2009-04-28 03:06:41 +0000803
804# Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
805protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
jieluo@google.com4de8f552014-07-18 00:47:59 +0000806 libprotoc.la \
Carlos O'Ryan3c5442a2018-03-26 16:54:32 -0400807 $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
808 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
809 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
810protobuf_lazy_descriptor_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
811 -I$(GOOGLETEST_SRC_DIR)/include \
kenton@google.comc5ff06c2009-04-28 03:06:41 +0000812 -DPROTOBUF_TEST_NO_DESCRIPTORS
kenton@google.com4f3491e2009-07-29 21:33:08 +0000813protobuf_lazy_descriptor_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
kenton@google.comc5ff06c2009-04-28 03:06:41 +0000814protobuf_lazy_descriptor_test_SOURCES = \
815 google/protobuf/compiler/cpp/cpp_unittest.cc \
816 $(COMMON_TEST_SOURCES)
817nodist_protobuf_lazy_descriptor_test_SOURCES = $(protoc_outputs)
Feng Xiaoc337d9f2017-11-21 13:19:45 -0800818$(am_protobuf_lazy_descriptor_test_OBJECTS): unittest_proto_middleman
temporal40ee5512008-07-10 02:12:20 +0000819
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700820COMMON_LITE_TEST_SOURCES = \
Bo Yang5db21732015-05-21 14:28:59 -0700821 google/protobuf/arena_test_util.cc \
822 google/protobuf/arena_test_util.h \
Jisi Liu885b6122015-02-28 14:51:22 -0800823 google/protobuf/map_lite_test_util.cc \
824 google/protobuf/map_lite_test_util.h \
kenton@google.com80b1d622009-07-29 01:13:20 +0000825 google/protobuf/test_util_lite.cc \
826 google/protobuf/test_util_lite.h
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700827
828# Build lite_unittest separately, since it doesn't use gtest. It can't
829# depend on gtest because our internal version of gtest depend on proto
830# full runtime and we want to make sure this test builds without full
831# runtime.
Carlos O'Ryan3c5442a2018-03-26 16:54:32 -0400832protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
833 $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
834 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
835 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
836protobuf_lite_test_CPPFLAGS= -I$(GOOGLEMOCK_SRC_DIR)/include \
837 -I$(GOOGLETEST_SRC_DIR)/include
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700838protobuf_lite_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
839protobuf_lite_test_SOURCES = \
840 google/protobuf/lite_unittest.cc \
841 $(COMMON_LITE_TEST_SOURCES)
kenton@google.com80b1d622009-07-29 01:13:20 +0000842nodist_protobuf_lite_test_SOURCES = $(protoc_lite_outputs)
Feng Xiaoc337d9f2017-11-21 13:19:45 -0800843$(am_protobuf_lite_test_OBJECTS): unittest_proto_middleman
kenton@google.com80b1d622009-07-29 01:13:20 +0000844
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700845# lite_arena_unittest depends on gtest because teboring@ found that without
846# gtest when building the test internally our memory sanitizer doesn't detect
847# memory leaks (don't know why).
848protobuf_lite_arena_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
Carlos O'Ryan3c5442a2018-03-26 16:54:32 -0400849 $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
850 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
851 $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
852protobuf_lite_arena_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
853 -I$(GOOGLETEST_SRC_DIR)/include
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700854protobuf_lite_arena_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
855protobuf_lite_arena_test_SOURCES = \
856 google/protobuf/lite_arena_unittest.cc \
857 $(COMMON_LITE_TEST_SOURCES)
858nodist_protobuf_lite_arena_test_SOURCES = $(protoc_lite_outputs)
Feng Xiaoc337d9f2017-11-21 13:19:45 -0800859$(am_protobuf_lite_arena_test_OBJECTS): unittest_proto_middleman
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700860
kenton@google.comfccb1462009-12-18 02:11:36 +0000861# Test plugin binary.
862test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
Carlos O'Ryan3c5442a2018-03-26 16:54:32 -0400863 $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la
864test_plugin_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include
kenton@google.comfccb1462009-12-18 02:11:36 +0000865test_plugin_SOURCES = \
866 google/protobuf/compiler/mock_code_generator.cc \
867 google/protobuf/testing/file.cc \
868 google/protobuf/testing/file.h \
869 google/protobuf/compiler/test_plugin.cc
870
kenton@google.come59427a2009-04-16 22:30:56 +0000871if HAVE_ZLIB
872zcgzip_LDADD = $(PTHREAD_LIBS) libprotobuf.la
873zcgzip_SOURCES = google/protobuf/testing/zcgzip.cc
874
875zcgunzip_LDADD = $(PTHREAD_LIBS) libprotobuf.la
876zcgunzip_SOURCES = google/protobuf/testing/zcgunzip.cc
877endif
878
Feng Xiao16adea32016-07-22 14:15:19 -0700879# This test target is to ensure all our public header files and generated
880# code is free from warnings. We have to be more pedantic about these
881# files because they are compiled by users with different compiler flags.
882no_warning_test.cc:
883 echo "// Generated from Makefile.am" > no_warning_test.cc
884 for FILE in $(nobase_include_HEADERS); do \
Adam Cozzette0400cca2018-03-13 16:37:29 -0700885 echo "#include <$${FILE}>" >> no_warning_test.cc; \
Feng Xiao16adea32016-07-22 14:15:19 -0700886 done
Jisi Liue8fc0662017-08-10 10:47:06 -0700887 echo "int main(int, char**) { return 0; }" >> no_warning_test.cc
Feng Xiao16adea32016-07-22 14:15:19 -0700888
Jisi Liue8fc0662017-08-10 10:47:06 -0700889no_warning_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la
Feng Xiao16adea32016-07-22 14:15:19 -0700890no_warning_test_CXXFLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_DEF) $(ZLIB_DEF) \
Paul Yangf25e7ed2018-06-28 13:48:06 -0700891 -Wall -Wextra -Werror -Wno-unused-parameter -Og
Feng Xiao16adea32016-07-22 14:15:19 -0700892nodist_no_warning_test_SOURCES = no_warning_test.cc $(protoc_outputs)
893
kenton@google.comd2fcbba2010-01-04 19:47:18 +0000894TESTS = protobuf-test protobuf-lazy-descriptor-test protobuf-lite-test \
Feng Xiaob17ec3c2015-08-23 17:50:38 -0700895 google/protobuf/compiler/zip_output_unittest.sh $(GZTESTS) \
Feng Xiao16adea32016-07-22 14:15:19 -0700896 protobuf-lite-arena-test no-warning-test