Makefile.am 55 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945
  1. ## Process this file with automake to produce Makefile.in
  2. if HAVE_ZLIB
  3. GZCHECKPROGRAMS = zcgzip zcgunzip
  4. GZHEADERS = google/protobuf/io/gzip_stream.h
  5. GZTESTS = google/protobuf/io/gzip_stream_unittest.sh
  6. ZLIB_DEF = -DHAVE_ZLIB=1
  7. else
  8. GZCHECKPROGRAMS =
  9. GZHEADERS =
  10. GZTESTS =
  11. ZLIB_DEF =
  12. endif
  13. if HAVE_PTHREAD
  14. PTHREAD_DEF = -DHAVE_PTHREAD=1
  15. else
  16. PTHREAD_DEF =
  17. endif
  18. if GCC
  19. # Turn on all warnings except for sign comparison (we ignore sign comparison
  20. # in Google so our code base have tons of such warnings).
  21. NO_OPT_CXXFLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_DEF) $(ZLIB_DEF) -Wall -Wno-sign-compare
  22. else
  23. NO_OPT_CXXFLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_DEF) $(ZLIB_DEF)
  24. endif
  25. AM_CXXFLAGS = $(NO_OPT_CXXFLAGS) $(PROTOBUF_OPT_FLAG)
  26. AM_LDFLAGS = $(PTHREAD_CFLAGS)
  27. # If I say "dist_include_DATA", automake complains that $(includedir) is not
  28. # a "legitimate" directory for DATA. Screw you, automake.
  29. protodir = $(includedir)
  30. # If you are adding new files here, also remember to change the build files for
  31. # all other languages, //protoc-artifacts/build-zip.sh and run
  32. # //update_file_list.sh for bazel.
  33. nobase_dist_proto_DATA = google/protobuf/descriptor.proto \
  34. google/protobuf/any.proto \
  35. google/protobuf/api.proto \
  36. google/protobuf/duration.proto \
  37. google/protobuf/empty.proto \
  38. google/protobuf/field_mask.proto \
  39. google/protobuf/source_context.proto \
  40. google/protobuf/struct.proto \
  41. google/protobuf/timestamp.proto \
  42. google/protobuf/type.proto \
  43. google/protobuf/wrappers.proto \
  44. google/protobuf/compiler/plugin.proto
  45. # Not sure why these don't get cleaned automatically.
  46. clean-local:
  47. rm -f *.loT
  48. CLEANFILES = $(protoc_outputs) unittest_proto_middleman \
  49. testzip.jar testzip.list testzip.proto testzip.zip \
  50. no_warning_test.cc \
  51. google/protobuf/compiler/js/well_known_types_embed.cc \
  52. js_embed$(EXEEXT)
  53. MAINTAINERCLEANFILES = \
  54. Makefile.in
  55. nobase_include_HEADERS = \
  56. google/protobuf/stubs/atomic_sequence_num.h \
  57. google/protobuf/stubs/atomicops.h \
  58. google/protobuf/stubs/atomicops_internals_power.h \
  59. google/protobuf/stubs/atomicops_internals_ppc_gcc.h \
  60. google/protobuf/stubs/atomicops_internals_arm64_gcc.h \
  61. google/protobuf/stubs/atomicops_internals_arm_gcc.h \
  62. google/protobuf/stubs/atomicops_internals_arm_qnx.h \
  63. google/protobuf/stubs/atomicops_internals_generic_c11_atomic.h \
  64. google/protobuf/stubs/atomicops_internals_generic_gcc.h \
  65. google/protobuf/stubs/atomicops_internals_mips_gcc.h \
  66. google/protobuf/stubs/atomicops_internals_solaris.h \
  67. google/protobuf/stubs/atomicops_internals_tsan.h \
  68. google/protobuf/stubs/atomicops_internals_x86_gcc.h \
  69. google/protobuf/stubs/atomicops_internals_x86_msvc.h \
  70. google/protobuf/stubs/callback.h \
  71. google/protobuf/stubs/bytestream.h \
  72. google/protobuf/stubs/casts.h \
  73. google/protobuf/stubs/common.h \
  74. google/protobuf/stubs/fastmem.h \
  75. google/protobuf/stubs/hash.h \
  76. google/protobuf/stubs/logging.h \
  77. google/protobuf/stubs/macros.h \
  78. google/protobuf/stubs/mutex.h \
  79. google/protobuf/stubs/once.h \
  80. google/protobuf/stubs/platform_macros.h \
  81. google/protobuf/stubs/port.h \
  82. google/protobuf/stubs/scoped_ptr.h \
  83. google/protobuf/stubs/shared_ptr.h \
  84. google/protobuf/stubs/singleton.h \
  85. google/protobuf/stubs/status.h \
  86. google/protobuf/stubs/stl_util.h \
  87. google/protobuf/stubs/stringpiece.h \
  88. google/protobuf/stubs/template_util.h \
  89. google/protobuf/stubs/type_traits.h \
  90. google/protobuf/any.pb.h \
  91. google/protobuf/api.pb.h \
  92. google/protobuf/any.h \
  93. google/protobuf/arena.h \
  94. google/protobuf/arena_impl.h \
  95. google/protobuf/arenastring.h \
  96. google/protobuf/descriptor_database.h \
  97. google/protobuf/descriptor.h \
  98. google/protobuf/descriptor.pb.h \
  99. google/protobuf/duration.pb.h \
  100. google/protobuf/dynamic_message.h \
  101. google/protobuf/empty.pb.h \
  102. google/protobuf/extension_set.h \
  103. google/protobuf/field_mask.pb.h \
  104. google/protobuf/generated_enum_reflection.h \
  105. google/protobuf/generated_enum_util.h \
  106. google/protobuf/generated_message_reflection.h \
  107. google/protobuf/generated_message_table_driven.h \
  108. google/protobuf/generated_message_util.h \
  109. google/protobuf/has_bits.h \
  110. google/protobuf/map_entry.h \
  111. google/protobuf/map_entry_lite.h \
  112. google/protobuf/map_field.h \
  113. google/protobuf/map_field_inl.h \
  114. google/protobuf/map_field_lite.h \
  115. google/protobuf/map.h \
  116. google/protobuf/map_type_handler.h \
  117. google/protobuf/message.h \
  118. google/protobuf/message_lite.h \
  119. google/protobuf/metadata.h \
  120. google/protobuf/metadata_lite.h \
  121. google/protobuf/reflection.h \
  122. google/protobuf/reflection_ops.h \
  123. google/protobuf/repeated_field.h \
  124. google/protobuf/service.h \
  125. google/protobuf/source_context.pb.h \
  126. google/protobuf/struct.pb.h \
  127. google/protobuf/text_format.h \
  128. google/protobuf/timestamp.pb.h \
  129. google/protobuf/type.pb.h \
  130. google/protobuf/unknown_field_set.h \
  131. google/protobuf/wire_format.h \
  132. google/protobuf/wire_format_lite.h \
  133. google/protobuf/wire_format_lite_inl.h \
  134. google/protobuf/wrappers.pb.h \
  135. google/protobuf/io/coded_stream.h \
  136. $(GZHEADERS) \
  137. google/protobuf/io/printer.h \
  138. google/protobuf/io/strtod.h \
  139. google/protobuf/io/tokenizer.h \
  140. google/protobuf/io/zero_copy_stream.h \
  141. google/protobuf/io/zero_copy_stream_impl.h \
  142. google/protobuf/io/zero_copy_stream_impl_lite.h \
  143. google/protobuf/compiler/code_generator.h \
  144. google/protobuf/compiler/command_line_interface.h \
  145. google/protobuf/compiler/importer.h \
  146. google/protobuf/compiler/parser.h \
  147. google/protobuf/compiler/plugin.h \
  148. google/protobuf/compiler/plugin.pb.h \
  149. google/protobuf/compiler/cpp/cpp_generator.h \
  150. google/protobuf/compiler/csharp/csharp_generator.h \
  151. google/protobuf/compiler/csharp/csharp_names.h \
  152. google/protobuf/compiler/java/java_generator.h \
  153. google/protobuf/compiler/java/java_names.h \
  154. google/protobuf/compiler/javanano/javanano_generator.h \
  155. google/protobuf/compiler/js/js_generator.h \
  156. google/protobuf/compiler/js/well_known_types_embed.h \
  157. 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 \
  163. google/protobuf/util/delimited_message_util.h \
  164. 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 \
  169. google/protobuf/util/message_differencer.h
  170. lib_LTLIBRARIES = libprotobuf-lite.la libprotobuf.la libprotoc.la
  171. libprotobuf_lite_la_LIBADD = $(PTHREAD_LIBS)
  172. libprotobuf_lite_la_LDFLAGS = -version-info 15:1:0 -export-dynamic -no-undefined
  173. if HAVE_LD_VERSION_SCRIPT
  174. libprotobuf_lite_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotobuf-lite.map
  175. EXTRA_libprotobuf_lite_la_DEPENDENCIES = libprotobuf-lite.map
  176. endif
  177. libprotobuf_lite_la_SOURCES = \
  178. google/protobuf/stubs/atomicops_internals_x86_gcc.cc \
  179. google/protobuf/stubs/atomicops_internals_x86_msvc.cc \
  180. google/protobuf/stubs/bytestream.cc \
  181. google/protobuf/stubs/bytestream.h \
  182. google/protobuf/stubs/common.cc \
  183. google/protobuf/stubs/hash.h \
  184. google/protobuf/stubs/int128.cc \
  185. google/protobuf/stubs/int128.h \
  186. google/protobuf/stubs/io_win32.cc \
  187. google/protobuf/stubs/io_win32.h \
  188. google/protobuf/stubs/map_util.h \
  189. google/protobuf/stubs/mathutil.h \
  190. google/protobuf/stubs/once.cc \
  191. google/protobuf/stubs/shared_ptr.h \
  192. google/protobuf/stubs/status.cc \
  193. google/protobuf/stubs/status.h \
  194. google/protobuf/stubs/status_macros.h \
  195. google/protobuf/stubs/statusor.cc \
  196. google/protobuf/stubs/statusor.h \
  197. google/protobuf/stubs/stringpiece.cc \
  198. google/protobuf/stubs/stringpiece.h \
  199. google/protobuf/stubs/stringprintf.cc \
  200. google/protobuf/stubs/stringprintf.h \
  201. google/protobuf/stubs/structurally_valid.cc \
  202. google/protobuf/stubs/strutil.cc \
  203. google/protobuf/stubs/strutil.h \
  204. google/protobuf/stubs/time.cc \
  205. google/protobuf/stubs/time.h \
  206. google/protobuf/arena.cc \
  207. google/protobuf/arenastring.cc \
  208. google/protobuf/extension_set.cc \
  209. google/protobuf/generated_message_util.cc \
  210. google/protobuf/generated_message_table_driven_lite.h \
  211. google/protobuf/generated_message_table_driven_lite.cc \
  212. google/protobuf/message_lite.cc \
  213. google/protobuf/repeated_field.cc \
  214. google/protobuf/wire_format_lite.cc \
  215. google/protobuf/io/coded_stream.cc \
  216. google/protobuf/io/coded_stream_inl.h \
  217. google/protobuf/io/zero_copy_stream.cc \
  218. google/protobuf/io/zero_copy_stream_impl_lite.cc
  219. libprotobuf_la_LIBADD = $(PTHREAD_LIBS)
  220. libprotobuf_la_LDFLAGS = -version-info 15:1:0 -export-dynamic -no-undefined
  221. if HAVE_LD_VERSION_SCRIPT
  222. libprotobuf_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotobuf.map
  223. EXTRA_libprotobuf_la_DEPENDENCIES = libprotobuf.map
  224. endif
  225. libprotobuf_la_SOURCES = \
  226. $(libprotobuf_lite_la_SOURCES) \
  227. google/protobuf/any.pb.cc \
  228. google/protobuf/api.pb.cc \
  229. google/protobuf/stubs/mathlimits.cc \
  230. google/protobuf/stubs/mathlimits.h \
  231. google/protobuf/any.cc \
  232. google/protobuf/descriptor.cc \
  233. google/protobuf/descriptor_database.cc \
  234. google/protobuf/descriptor.pb.cc \
  235. google/protobuf/duration.pb.cc \
  236. google/protobuf/dynamic_message.cc \
  237. google/protobuf/empty.pb.cc \
  238. google/protobuf/extension_set_heavy.cc \
  239. google/protobuf/field_mask.pb.cc \
  240. google/protobuf/generated_message_reflection.cc \
  241. google/protobuf/generated_message_table_driven_lite.h \
  242. google/protobuf/generated_message_table_driven.cc \
  243. google/protobuf/map_field.cc \
  244. google/protobuf/message.cc \
  245. google/protobuf/reflection_internal.h \
  246. google/protobuf/reflection_ops.cc \
  247. google/protobuf/service.cc \
  248. google/protobuf/source_context.pb.cc \
  249. google/protobuf/struct.pb.cc \
  250. google/protobuf/stubs/substitute.cc \
  251. google/protobuf/stubs/substitute.h \
  252. google/protobuf/text_format.cc \
  253. google/protobuf/timestamp.pb.cc \
  254. google/protobuf/type.pb.cc \
  255. google/protobuf/unknown_field_set.cc \
  256. google/protobuf/wire_format.cc \
  257. google/protobuf/wrappers.pb.cc \
  258. google/protobuf/io/gzip_stream.cc \
  259. google/protobuf/io/printer.cc \
  260. google/protobuf/io/strtod.cc \
  261. google/protobuf/io/tokenizer.cc \
  262. google/protobuf/io/zero_copy_stream_impl.cc \
  263. google/protobuf/compiler/importer.cc \
  264. google/protobuf/compiler/parser.cc \
  265. google/protobuf/util/delimited_message_util.cc \
  266. google/protobuf/util/field_comparator.cc \
  267. google/protobuf/util/field_mask_util.cc \
  268. google/protobuf/util/internal/constants.h \
  269. google/protobuf/util/internal/datapiece.cc \
  270. google/protobuf/util/internal/datapiece.h \
  271. google/protobuf/util/internal/default_value_objectwriter.cc \
  272. google/protobuf/util/internal/default_value_objectwriter.h \
  273. google/protobuf/util/internal/error_listener.cc \
  274. google/protobuf/util/internal/error_listener.h \
  275. google/protobuf/util/internal/expecting_objectwriter.h \
  276. google/protobuf/util/internal/field_mask_utility.cc \
  277. google/protobuf/util/internal/field_mask_utility.h \
  278. google/protobuf/util/internal/json_escaping.cc \
  279. google/protobuf/util/internal/json_escaping.h \
  280. google/protobuf/util/internal/json_objectwriter.cc \
  281. google/protobuf/util/internal/json_objectwriter.h \
  282. google/protobuf/util/internal/json_stream_parser.cc \
  283. google/protobuf/util/internal/json_stream_parser.h \
  284. google/protobuf/util/internal/location_tracker.h \
  285. google/protobuf/util/internal/mock_error_listener.h \
  286. google/protobuf/util/internal/object_location_tracker.h \
  287. google/protobuf/util/internal/object_source.h \
  288. google/protobuf/util/internal/object_writer.cc \
  289. google/protobuf/util/internal/object_writer.h \
  290. google/protobuf/util/internal/protostream_objectsource.cc \
  291. google/protobuf/util/internal/protostream_objectsource.h \
  292. google/protobuf/util/internal/protostream_objectwriter.cc \
  293. google/protobuf/util/internal/protostream_objectwriter.h \
  294. google/protobuf/util/internal/proto_writer.cc \
  295. google/protobuf/util/internal/proto_writer.h \
  296. google/protobuf/util/internal/structured_objectwriter.h \
  297. google/protobuf/util/internal/type_info.cc \
  298. google/protobuf/util/internal/type_info.h \
  299. google/protobuf/util/internal/type_info_test_helper.cc \
  300. google/protobuf/util/internal/type_info_test_helper.h \
  301. google/protobuf/util/internal/utility.cc \
  302. google/protobuf/util/internal/utility.h \
  303. google/protobuf/util/json_util.cc \
  304. google/protobuf/util/message_differencer.cc \
  305. google/protobuf/util/time_util.cc \
  306. google/protobuf/util/type_resolver_util.cc
  307. nodist_libprotobuf_la_SOURCES = $(nodist_libprotobuf_lite_la_SOURCES)
  308. libprotoc_la_LIBADD = $(PTHREAD_LIBS) libprotobuf.la
  309. libprotoc_la_LDFLAGS = -version-info 15:1:0 -export-dynamic -no-undefined
  310. if HAVE_LD_VERSION_SCRIPT
  311. libprotoc_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotoc.map
  312. EXTRA_libprotoc_la_DEPENDENCIES = libprotoc.map
  313. endif
  314. libprotoc_la_SOURCES = \
  315. google/protobuf/compiler/code_generator.cc \
  316. google/protobuf/compiler/command_line_interface.cc \
  317. google/protobuf/compiler/plugin.cc \
  318. google/protobuf/compiler/plugin.pb.cc \
  319. google/protobuf/compiler/subprocess.cc \
  320. google/protobuf/compiler/subprocess.h \
  321. google/protobuf/compiler/zip_writer.cc \
  322. google/protobuf/compiler/zip_writer.h \
  323. google/protobuf/compiler/cpp/cpp_enum.cc \
  324. google/protobuf/compiler/cpp/cpp_enum.h \
  325. google/protobuf/compiler/cpp/cpp_enum_field.cc \
  326. google/protobuf/compiler/cpp/cpp_enum_field.h \
  327. google/protobuf/compiler/cpp/cpp_extension.cc \
  328. google/protobuf/compiler/cpp/cpp_extension.h \
  329. google/protobuf/compiler/cpp/cpp_field.cc \
  330. google/protobuf/compiler/cpp/cpp_field.h \
  331. google/protobuf/compiler/cpp/cpp_file.cc \
  332. google/protobuf/compiler/cpp/cpp_file.h \
  333. google/protobuf/compiler/cpp/cpp_generator.cc \
  334. google/protobuf/compiler/cpp/cpp_helpers.cc \
  335. google/protobuf/compiler/cpp/cpp_helpers.h \
  336. google/protobuf/compiler/cpp/cpp_map_field.cc \
  337. google/protobuf/compiler/cpp/cpp_map_field.h \
  338. google/protobuf/compiler/cpp/cpp_message.cc \
  339. google/protobuf/compiler/cpp/cpp_message.h \
  340. google/protobuf/compiler/cpp/cpp_message_field.cc \
  341. google/protobuf/compiler/cpp/cpp_message_field.h \
  342. google/protobuf/compiler/cpp/cpp_message_layout_helper.h \
  343. google/protobuf/compiler/cpp/cpp_options.h \
  344. google/protobuf/compiler/cpp/cpp_padding_optimizer.cc \
  345. google/protobuf/compiler/cpp/cpp_padding_optimizer.h \
  346. google/protobuf/compiler/cpp/cpp_primitive_field.cc \
  347. google/protobuf/compiler/cpp/cpp_primitive_field.h \
  348. google/protobuf/compiler/cpp/cpp_service.cc \
  349. google/protobuf/compiler/cpp/cpp_service.h \
  350. google/protobuf/compiler/cpp/cpp_string_field.cc \
  351. google/protobuf/compiler/cpp/cpp_string_field.h \
  352. google/protobuf/compiler/java/java_context.cc \
  353. google/protobuf/compiler/java/java_context.h \
  354. google/protobuf/compiler/java/java_enum.cc \
  355. google/protobuf/compiler/java/java_enum_lite.cc \
  356. google/protobuf/compiler/java/java_enum_field.cc \
  357. google/protobuf/compiler/java/java_enum_field.h \
  358. google/protobuf/compiler/java/java_enum_field_lite.cc \
  359. google/protobuf/compiler/java/java_enum_field_lite.h \
  360. google/protobuf/compiler/java/java_enum.h \
  361. google/protobuf/compiler/java/java_enum_lite.h \
  362. google/protobuf/compiler/java/java_extension.cc \
  363. google/protobuf/compiler/java/java_extension.h \
  364. google/protobuf/compiler/java/java_extension_lite.cc \
  365. google/protobuf/compiler/java/java_extension_lite.h \
  366. google/protobuf/compiler/java/java_field.cc \
  367. google/protobuf/compiler/java/java_field.h \
  368. google/protobuf/compiler/java/java_file.cc \
  369. google/protobuf/compiler/java/java_file.h \
  370. google/protobuf/compiler/java/java_generator.cc \
  371. google/protobuf/compiler/java/java_generator_factory.cc \
  372. google/protobuf/compiler/java/java_generator_factory.h \
  373. google/protobuf/compiler/java/java_helpers.cc \
  374. google/protobuf/compiler/java/java_helpers.h \
  375. google/protobuf/compiler/java/java_lazy_message_field.cc \
  376. google/protobuf/compiler/java/java_lazy_message_field.h \
  377. google/protobuf/compiler/java/java_lazy_message_field_lite.cc\
  378. google/protobuf/compiler/java/java_lazy_message_field_lite.h \
  379. google/protobuf/compiler/java/java_map_field.cc \
  380. google/protobuf/compiler/java/java_map_field.h \
  381. google/protobuf/compiler/java/java_map_field_lite.cc \
  382. google/protobuf/compiler/java/java_map_field_lite.h \
  383. google/protobuf/compiler/java/java_message.cc \
  384. google/protobuf/compiler/java/java_message_lite.cc \
  385. google/protobuf/compiler/java/java_message_builder.cc \
  386. google/protobuf/compiler/java/java_message_builder_lite.cc \
  387. google/protobuf/compiler/java/java_message_field.cc \
  388. google/protobuf/compiler/java/java_message_field.h \
  389. google/protobuf/compiler/java/java_message_field_lite.cc \
  390. google/protobuf/compiler/java/java_message_field_lite.h \
  391. google/protobuf/compiler/java/java_message.h \
  392. google/protobuf/compiler/java/java_message_lite.h \
  393. google/protobuf/compiler/java/java_message_builder.h \
  394. google/protobuf/compiler/java/java_message_builder_lite.h \
  395. google/protobuf/compiler/java/java_name_resolver.cc \
  396. google/protobuf/compiler/java/java_name_resolver.h \
  397. google/protobuf/compiler/java/java_options.h \
  398. google/protobuf/compiler/java/java_primitive_field.cc \
  399. google/protobuf/compiler/java/java_primitive_field.h \
  400. google/protobuf/compiler/java/java_primitive_field_lite.cc \
  401. google/protobuf/compiler/java/java_primitive_field_lite.h \
  402. google/protobuf/compiler/java/java_shared_code_generator.cc \
  403. google/protobuf/compiler/java/java_shared_code_generator.h \
  404. google/protobuf/compiler/java/java_service.cc \
  405. google/protobuf/compiler/java/java_service.h \
  406. google/protobuf/compiler/java/java_string_field.cc \
  407. google/protobuf/compiler/java/java_string_field.h \
  408. google/protobuf/compiler/java/java_string_field_lite.cc \
  409. google/protobuf/compiler/java/java_string_field_lite.h \
  410. google/protobuf/compiler/java/java_doc_comment.cc \
  411. google/protobuf/compiler/java/java_doc_comment.h \
  412. google/protobuf/compiler/js/js_generator.cc \
  413. google/protobuf/compiler/js/well_known_types_embed.cc \
  414. google/protobuf/compiler/javanano/javanano_enum.cc \
  415. google/protobuf/compiler/javanano/javanano_enum.h \
  416. google/protobuf/compiler/javanano/javanano_enum_field.cc \
  417. google/protobuf/compiler/javanano/javanano_enum_field.h \
  418. google/protobuf/compiler/javanano/javanano_extension.cc \
  419. google/protobuf/compiler/javanano/javanano_extension.h \
  420. google/protobuf/compiler/javanano/javanano_field.cc \
  421. google/protobuf/compiler/javanano/javanano_field.h \
  422. google/protobuf/compiler/javanano/javanano_file.cc \
  423. google/protobuf/compiler/javanano/javanano_file.h \
  424. google/protobuf/compiler/javanano/javanano_generator.cc \
  425. google/protobuf/compiler/javanano/javanano_generator.h \
  426. google/protobuf/compiler/javanano/javanano_helpers.cc \
  427. google/protobuf/compiler/javanano/javanano_helpers.h \
  428. google/protobuf/compiler/javanano/javanano_map_field.cc \
  429. google/protobuf/compiler/javanano/javanano_map_field.h \
  430. google/protobuf/compiler/javanano/javanano_message.cc \
  431. google/protobuf/compiler/javanano/javanano_message.h \
  432. google/protobuf/compiler/javanano/javanano_message_field.cc \
  433. google/protobuf/compiler/javanano/javanano_message_field.h \
  434. google/protobuf/compiler/javanano/javanano_params.h \
  435. google/protobuf/compiler/javanano/javanano_primitive_field.cc \
  436. google/protobuf/compiler/javanano/javanano_primitive_field.h \
  437. google/protobuf/compiler/objectivec/objectivec_enum.cc \
  438. google/protobuf/compiler/objectivec/objectivec_enum.h \
  439. google/protobuf/compiler/objectivec/objectivec_enum_field.cc \
  440. google/protobuf/compiler/objectivec/objectivec_enum_field.h \
  441. google/protobuf/compiler/objectivec/objectivec_extension.cc \
  442. google/protobuf/compiler/objectivec/objectivec_extension.h \
  443. google/protobuf/compiler/objectivec/objectivec_field.cc \
  444. google/protobuf/compiler/objectivec/objectivec_field.h \
  445. google/protobuf/compiler/objectivec/objectivec_file.cc \
  446. google/protobuf/compiler/objectivec/objectivec_file.h \
  447. google/protobuf/compiler/objectivec/objectivec_generator.cc \
  448. google/protobuf/compiler/objectivec/objectivec_helpers.cc \
  449. google/protobuf/compiler/objectivec/objectivec_helpers.h \
  450. google/protobuf/compiler/objectivec/objectivec_map_field.cc \
  451. google/protobuf/compiler/objectivec/objectivec_map_field.h \
  452. google/protobuf/compiler/objectivec/objectivec_message.cc \
  453. google/protobuf/compiler/objectivec/objectivec_message.h \
  454. google/protobuf/compiler/objectivec/objectivec_message_field.cc \
  455. google/protobuf/compiler/objectivec/objectivec_message_field.h \
  456. google/protobuf/compiler/objectivec/objectivec_oneof.cc \
  457. google/protobuf/compiler/objectivec/objectivec_oneof.h \
  458. google/protobuf/compiler/objectivec/objectivec_primitive_field.cc \
  459. google/protobuf/compiler/objectivec/objectivec_primitive_field.h \
  460. google/protobuf/compiler/php/php_generator.cc \
  461. google/protobuf/compiler/python/python_generator.cc \
  462. google/protobuf/compiler/ruby/ruby_generator.cc \
  463. google/protobuf/compiler/csharp/csharp_doc_comment.cc \
  464. google/protobuf/compiler/csharp/csharp_doc_comment.h \
  465. google/protobuf/compiler/csharp/csharp_enum.cc \
  466. google/protobuf/compiler/csharp/csharp_enum.h \
  467. google/protobuf/compiler/csharp/csharp_enum_field.cc \
  468. google/protobuf/compiler/csharp/csharp_enum_field.h \
  469. google/protobuf/compiler/csharp/csharp_field_base.cc \
  470. google/protobuf/compiler/csharp/csharp_field_base.h \
  471. google/protobuf/compiler/csharp/csharp_generator.cc \
  472. google/protobuf/compiler/csharp/csharp_helpers.cc \
  473. google/protobuf/compiler/csharp/csharp_helpers.h \
  474. google/protobuf/compiler/csharp/csharp_map_field.cc \
  475. google/protobuf/compiler/csharp/csharp_map_field.h \
  476. google/protobuf/compiler/csharp/csharp_message.cc \
  477. google/protobuf/compiler/csharp/csharp_message.h \
  478. google/protobuf/compiler/csharp/csharp_message_field.cc \
  479. google/protobuf/compiler/csharp/csharp_message_field.h \
  480. google/protobuf/compiler/csharp/csharp_options.h \
  481. google/protobuf/compiler/csharp/csharp_primitive_field.cc \
  482. google/protobuf/compiler/csharp/csharp_primitive_field.h \
  483. google/protobuf/compiler/csharp/csharp_reflection_class.cc \
  484. google/protobuf/compiler/csharp/csharp_reflection_class.h \
  485. google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc \
  486. google/protobuf/compiler/csharp/csharp_repeated_enum_field.h \
  487. google/protobuf/compiler/csharp/csharp_repeated_message_field.cc \
  488. google/protobuf/compiler/csharp/csharp_repeated_message_field.h \
  489. google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc \
  490. google/protobuf/compiler/csharp/csharp_repeated_primitive_field.h \
  491. google/protobuf/compiler/csharp/csharp_source_generator_base.cc \
  492. google/protobuf/compiler/csharp/csharp_source_generator_base.h \
  493. google/protobuf/compiler/csharp/csharp_wrapper_field.cc \
  494. google/protobuf/compiler/csharp/csharp_wrapper_field.h
  495. bin_PROGRAMS = protoc
  496. protoc_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la
  497. protoc_SOURCES = google/protobuf/compiler/main.cc
  498. # The special JS code for the well-known types is linked into the compiler via
  499. # well_known_types_embed.cc, which is generated from .js source files. We have
  500. # to build the js_embed binary using $(CXX_FOR_BUILD) so that it is executable
  501. # on the build machine in a cross-compilation setup.
  502. js_embed$(EXEEXT): $(srcdir)/google/protobuf/compiler/js/embed.cc
  503. $(CXX_FOR_BUILD) -o $@ $<
  504. js_well_known_types_sources = \
  505. google/protobuf/compiler/js/well_known_types/any.js \
  506. google/protobuf/compiler/js/well_known_types/struct.js \
  507. google/protobuf/compiler/js/well_known_types/timestamp.js
  508. # We have to cd to $(srcdir) so that out-of-tree builds work properly.
  509. google/protobuf/compiler/js/well_known_types_embed.cc: js_embed$(EXEEXT) $(js_well_known_types_sources)
  510. mkdir -p `dirname $@` && \
  511. oldpwd=`pwd` && cd $(srcdir) && \
  512. $$oldpwd/js_embed$(EXEEXT) $(js_well_known_types_sources) > $$oldpwd/$@
  513. # Tests ==============================================================
  514. protoc_inputs = \
  515. google/protobuf/any_test.proto \
  516. google/protobuf/compiler/cpp/cpp_test_bad_identifiers.proto \
  517. google/protobuf/map_lite_unittest.proto \
  518. google/protobuf/map_proto2_unittest.proto \
  519. google/protobuf/map_unittest.proto \
  520. google/protobuf/unittest_arena.proto \
  521. google/protobuf/unittest_custom_options.proto \
  522. google/protobuf/unittest_drop_unknown_fields.proto \
  523. google/protobuf/unittest_embed_optimize_for.proto \
  524. google/protobuf/unittest_empty.proto \
  525. google/protobuf/unittest_enormous_descriptor.proto \
  526. google/protobuf/unittest_import_lite.proto \
  527. google/protobuf/unittest_import.proto \
  528. google/protobuf/unittest_import_public_lite.proto \
  529. google/protobuf/unittest_import_public.proto \
  530. google/protobuf/unittest_lazy_dependencies.proto \
  531. google/protobuf/unittest_lazy_dependencies_custom_option.proto \
  532. google/protobuf/unittest_lazy_dependencies_enum.proto \
  533. google/protobuf/unittest_lite_imports_nonlite.proto \
  534. google/protobuf/unittest_lite.proto \
  535. google/protobuf/unittest_mset.proto \
  536. google/protobuf/unittest_mset_wire_format.proto \
  537. google/protobuf/unittest_no_arena_lite.proto \
  538. google/protobuf/unittest_no_arena_import.proto \
  539. google/protobuf/unittest_no_arena.proto \
  540. google/protobuf/unittest_no_field_presence.proto \
  541. google/protobuf/unittest_no_generic_services.proto \
  542. google/protobuf/unittest_optimize_for.proto \
  543. google/protobuf/unittest_preserve_unknown_enum2.proto \
  544. google/protobuf/unittest_preserve_unknown_enum.proto \
  545. google/protobuf/unittest.proto \
  546. google/protobuf/unittest_proto3_arena.proto \
  547. google/protobuf/unittest_proto3_arena_lite.proto \
  548. google/protobuf/unittest_proto3_lite.proto \
  549. google/protobuf/unittest_well_known_types.proto \
  550. google/protobuf/util/internal/testdata/anys.proto \
  551. google/protobuf/util/internal/testdata/books.proto \
  552. google/protobuf/util/internal/testdata/default_value.proto \
  553. google/protobuf/util/internal/testdata/default_value_test.proto \
  554. google/protobuf/util/internal/testdata/field_mask.proto \
  555. google/protobuf/util/internal/testdata/maps.proto \
  556. google/protobuf/util/internal/testdata/oneofs.proto \
  557. google/protobuf/util/internal/testdata/proto3.proto \
  558. google/protobuf/util/internal/testdata/struct.proto \
  559. google/protobuf/util/internal/testdata/timestamp_duration.proto \
  560. google/protobuf/util/internal/testdata/wrappers.proto \
  561. google/protobuf/util/json_format_proto3.proto \
  562. google/protobuf/util/message_differencer_unittest.proto \
  563. google/protobuf/compiler/cpp/cpp_test_large_enum_value.proto
  564. EXTRA_DIST = \
  565. $(protoc_inputs) \
  566. $(js_well_known_types_sources) \
  567. solaris/libstdc++.la \
  568. google/protobuf/unittest_proto3.proto \
  569. google/protobuf/unittest_import_public_proto3.proto \
  570. google/protobuf/unittest_import_proto3.proto \
  571. google/protobuf/test_messages_proto3.proto \
  572. google/protobuf/test_messages_proto2.proto \
  573. google/protobuf/map_unittest_proto3.proto \
  574. google/protobuf/io/gzip_stream.h \
  575. google/protobuf/io/gzip_stream_unittest.sh \
  576. google/protobuf/testdata/golden_message \
  577. google/protobuf/testdata/golden_message_maps \
  578. google/protobuf/testdata/golden_message_oneof_implemented \
  579. google/protobuf/testdata/golden_message_proto3 \
  580. google/protobuf/testdata/golden_packed_fields_message \
  581. google/protobuf/testdata/bad_utf8_string \
  582. google/protobuf/testdata/map_test_data.txt \
  583. google/protobuf/testdata/text_format_unittest_data.txt \
  584. google/protobuf/testdata/text_format_unittest_data_oneof_implemented.txt \
  585. google/protobuf/testdata/text_format_unittest_data_pointy.txt \
  586. google/protobuf/testdata/text_format_unittest_data_pointy_oneof.txt \
  587. google/protobuf/testdata/text_format_unittest_extensions_data.txt \
  588. google/protobuf/testdata/text_format_unittest_extensions_data_pointy.txt \
  589. google/protobuf/package_info.h \
  590. google/protobuf/io/package_info.h \
  591. google/protobuf/util/package_info.h \
  592. google/protobuf/compiler/js/embed.cc \
  593. google/protobuf/compiler/ruby/ruby_generated_code.proto \
  594. google/protobuf/compiler/ruby/ruby_generated_code_pb.rb \
  595. google/protobuf/compiler/package_info.h \
  596. google/protobuf/compiler/zip_output_unittest.sh \
  597. libprotobuf-lite.map \
  598. libprotobuf.map \
  599. libprotoc.map \
  600. README.md
  601. protoc_lite_outputs = \
  602. google/protobuf/map_lite_unittest.pb.cc \
  603. google/protobuf/map_lite_unittest.pb.h \
  604. google/protobuf/unittest_lite.pb.cc \
  605. google/protobuf/unittest_lite.pb.h \
  606. google/protobuf/unittest_no_arena_lite.pb.cc \
  607. google/protobuf/unittest_no_arena_lite.pb.h \
  608. google/protobuf/unittest_import_lite.pb.cc \
  609. google/protobuf/unittest_import_lite.pb.h \
  610. google/protobuf/unittest_import_public_lite.pb.cc \
  611. google/protobuf/unittest_import_public_lite.pb.h
  612. protoc_outputs = \
  613. $(protoc_lite_outputs) \
  614. google/protobuf/any_test.pb.cc \
  615. google/protobuf/any_test.pb.h \
  616. google/protobuf/compiler/cpp/cpp_test_bad_identifiers.pb.cc \
  617. google/protobuf/compiler/cpp/cpp_test_bad_identifiers.pb.h \
  618. google/protobuf/compiler/cpp/cpp_test_large_enum_value.pb.cc \
  619. google/protobuf/compiler/cpp/cpp_test_large_enum_value.pb.h \
  620. google/protobuf/map_proto2_unittest.pb.cc \
  621. google/protobuf/map_proto2_unittest.pb.h \
  622. google/protobuf/map_unittest.pb.cc \
  623. google/protobuf/map_unittest.pb.h \
  624. google/protobuf/unittest_arena.pb.cc \
  625. google/protobuf/unittest_arena.pb.h \
  626. google/protobuf/unittest_custom_options.pb.cc \
  627. google/protobuf/unittest_custom_options.pb.h \
  628. google/protobuf/unittest_drop_unknown_fields.pb.cc \
  629. google/protobuf/unittest_drop_unknown_fields.pb.h \
  630. google/protobuf/unittest_embed_optimize_for.pb.cc \
  631. google/protobuf/unittest_embed_optimize_for.pb.h \
  632. google/protobuf/unittest_empty.pb.cc \
  633. google/protobuf/unittest_empty.pb.h \
  634. google/protobuf/unittest_enormous_descriptor.pb.cc \
  635. google/protobuf/unittest_enormous_descriptor.pb.h \
  636. google/protobuf/unittest_import.pb.cc \
  637. google/protobuf/unittest_import.pb.h \
  638. google/protobuf/unittest_import_public.pb.cc \
  639. google/protobuf/unittest_import_public.pb.h \
  640. google/protobuf/unittest_lazy_dependencies.pb.cc \
  641. google/protobuf/unittest_lazy_dependencies.pb.h \
  642. google/protobuf/unittest_lazy_dependencies_custom_option.pb.cc \
  643. google/protobuf/unittest_lazy_dependencies_custom_option.pb.h \
  644. google/protobuf/unittest_lazy_dependencies_enum.pb.cc \
  645. google/protobuf/unittest_lazy_dependencies_enum.pb.h \
  646. google/protobuf/unittest_lite_imports_nonlite.pb.cc \
  647. google/protobuf/unittest_lite_imports_nonlite.pb.h \
  648. google/protobuf/unittest_mset.pb.cc \
  649. google/protobuf/unittest_mset.pb.h \
  650. google/protobuf/unittest_mset_wire_format.pb.cc \
  651. google/protobuf/unittest_mset_wire_format.pb.h \
  652. google/protobuf/unittest_no_arena_import.pb.cc \
  653. google/protobuf/unittest_no_arena_import.pb.h \
  654. google/protobuf/unittest_no_arena.pb.cc \
  655. google/protobuf/unittest_no_arena.pb.h \
  656. google/protobuf/unittest_no_field_presence.pb.cc \
  657. google/protobuf/unittest_no_field_presence.pb.h \
  658. google/protobuf/unittest_no_generic_services.pb.cc \
  659. google/protobuf/unittest_no_generic_services.pb.h \
  660. google/protobuf/unittest_optimize_for.pb.cc \
  661. google/protobuf/unittest_optimize_for.pb.h \
  662. google/protobuf/unittest.pb.cc \
  663. google/protobuf/unittest.pb.h \
  664. google/protobuf/unittest_preserve_unknown_enum2.pb.cc \
  665. google/protobuf/unittest_preserve_unknown_enum2.pb.h \
  666. google/protobuf/unittest_preserve_unknown_enum.pb.cc \
  667. google/protobuf/unittest_preserve_unknown_enum.pb.h \
  668. google/protobuf/unittest_proto3_arena.pb.cc \
  669. google/protobuf/unittest_proto3_arena.pb.h \
  670. google/protobuf/unittest_proto3_arena_lite.pb.cc \
  671. google/protobuf/unittest_proto3_arena_lite.pb.h \
  672. google/protobuf/unittest_proto3_lite.pb.cc \
  673. google/protobuf/unittest_proto3_lite.pb.h \
  674. google/protobuf/unittest_well_known_types.pb.cc \
  675. google/protobuf/unittest_well_known_types.pb.h \
  676. google/protobuf/util/internal/testdata/anys.pb.cc \
  677. google/protobuf/util/internal/testdata/anys.pb.h \
  678. google/protobuf/util/internal/testdata/books.pb.cc \
  679. google/protobuf/util/internal/testdata/books.pb.h \
  680. google/protobuf/util/internal/testdata/default_value.pb.cc \
  681. google/protobuf/util/internal/testdata/default_value.pb.h \
  682. google/protobuf/util/internal/testdata/default_value_test.pb.cc \
  683. google/protobuf/util/internal/testdata/default_value_test.pb.h \
  684. google/protobuf/util/internal/testdata/field_mask.pb.cc \
  685. google/protobuf/util/internal/testdata/field_mask.pb.h \
  686. google/protobuf/util/internal/testdata/maps.pb.cc \
  687. google/protobuf/util/internal/testdata/maps.pb.h \
  688. google/protobuf/util/internal/testdata/oneofs.pb.cc \
  689. google/protobuf/util/internal/testdata/oneofs.pb.h \
  690. google/protobuf/util/internal/testdata/proto3.pb.cc \
  691. google/protobuf/util/internal/testdata/proto3.pb.h \
  692. google/protobuf/util/internal/testdata/struct.pb.cc \
  693. google/protobuf/util/internal/testdata/struct.pb.h \
  694. google/protobuf/util/internal/testdata/timestamp_duration.pb.cc \
  695. google/protobuf/util/internal/testdata/timestamp_duration.pb.h \
  696. google/protobuf/util/internal/testdata/wrappers.pb.cc \
  697. google/protobuf/util/internal/testdata/wrappers.pb.h \
  698. google/protobuf/util/json_format_proto3.pb.cc \
  699. google/protobuf/util/json_format_proto3.pb.h \
  700. google/protobuf/util/message_differencer_unittest.pb.cc \
  701. google/protobuf/util/message_differencer_unittest.pb.h
  702. BUILT_SOURCES = $(protoc_outputs) google/protobuf/compiler/js/well_known_types_embed.cc
  703. if USE_EXTERNAL_PROTOC
  704. unittest_proto_middleman: $(protoc_inputs)
  705. $(PROTOC) -I$(srcdir) --cpp_out=. $^
  706. touch unittest_proto_middleman
  707. else
  708. # We have to cd to $(srcdir) before executing protoc because $(protoc_inputs) is
  709. # relative to srcdir, which may not be the same as the current directory when
  710. # building out-of-tree.
  711. unittest_proto_middleman: protoc$(EXEEXT) $(protoc_inputs)
  712. oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/protoc$(EXEEXT) -I. --cpp_out=$$oldpwd $(protoc_inputs) )
  713. touch unittest_proto_middleman
  714. endif
  715. $(protoc_outputs): unittest_proto_middleman
  716. COMMON_TEST_SOURCES = \
  717. google/protobuf/arena_test_util.cc \
  718. google/protobuf/arena_test_util.h \
  719. google/protobuf/map_test_util.cc \
  720. google/protobuf/map_test_util.h \
  721. google/protobuf/map_test_util_impl.h \
  722. google/protobuf/test_util.cc \
  723. google/protobuf/test_util.h \
  724. google/protobuf/testing/googletest.cc \
  725. google/protobuf/testing/googletest.h \
  726. google/protobuf/testing/file.cc \
  727. google/protobuf/testing/file.h
  728. check_PROGRAMS = protoc protobuf-test protobuf-lazy-descriptor-test \
  729. protobuf-lite-test test_plugin protobuf-lite-arena-test \
  730. no-warning-test $(GZCHECKPROGRAMS)
  731. protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
  732. ../gmock/gtest/lib/libgtest.la \
  733. ../gmock/lib/libgmock.la \
  734. ../gmock/lib/libgmock_main.la
  735. protobuf_test_CPPFLAGS = -I$(srcdir)/../gmock/gtest/include \
  736. -I$(srcdir)/../gmock/include
  737. # Disable optimization for tests unless the user explicitly asked for it,
  738. # since test_util.cc takes forever to compile with optimization (with GCC).
  739. # See configure.ac for more info.
  740. protobuf_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
  741. protobuf_test_SOURCES = \
  742. google/protobuf/stubs/bytestream_unittest.cc \
  743. google/protobuf/stubs/common_unittest.cc \
  744. google/protobuf/stubs/int128_unittest.cc \
  745. google/protobuf/stubs/io_win32_unittest.cc \
  746. google/protobuf/stubs/once_unittest.cc \
  747. google/protobuf/stubs/statusor_test.cc \
  748. google/protobuf/stubs/status_test.cc \
  749. google/protobuf/stubs/stringpiece_unittest.cc \
  750. google/protobuf/stubs/stringprintf_unittest.cc \
  751. google/protobuf/stubs/structurally_valid_unittest.cc \
  752. google/protobuf/stubs/strutil_unittest.cc \
  753. google/protobuf/stubs/template_util_unittest.cc \
  754. google/protobuf/stubs/time_test.cc \
  755. google/protobuf/stubs/type_traits_unittest.cc \
  756. google/protobuf/any_test.cc \
  757. google/protobuf/arenastring_unittest.cc \
  758. google/protobuf/arena_unittest.cc \
  759. google/protobuf/descriptor_database_unittest.cc \
  760. google/protobuf/descriptor_unittest.cc \
  761. google/protobuf/drop_unknown_fields_test.cc \
  762. google/protobuf/dynamic_message_unittest.cc \
  763. google/protobuf/extension_set_unittest.cc \
  764. google/protobuf/generated_message_reflection_unittest.cc \
  765. google/protobuf/map_field_test.cc \
  766. google/protobuf/map_test.cc \
  767. google/protobuf/message_unittest.cc \
  768. google/protobuf/no_field_presence_test.cc \
  769. google/protobuf/preserve_unknown_enum_test.cc \
  770. google/protobuf/proto3_arena_unittest.cc \
  771. google/protobuf/proto3_arena_lite_unittest.cc \
  772. google/protobuf/proto3_lite_unittest.cc \
  773. google/protobuf/reflection_ops_unittest.cc \
  774. google/protobuf/repeated_field_reflection_unittest.cc \
  775. google/protobuf/repeated_field_unittest.cc \
  776. google/protobuf/text_format_unittest.cc \
  777. google/protobuf/unknown_field_set_unittest.cc \
  778. google/protobuf/well_known_types_unittest.cc \
  779. google/protobuf/wire_format_unittest.cc \
  780. google/protobuf/io/coded_stream_unittest.cc \
  781. google/protobuf/io/printer_unittest.cc \
  782. google/protobuf/io/tokenizer_unittest.cc \
  783. google/protobuf/io/zero_copy_stream_unittest.cc \
  784. google/protobuf/compiler/annotation_test_util.h \
  785. google/protobuf/compiler/annotation_test_util.cc \
  786. google/protobuf/compiler/command_line_interface_unittest.cc \
  787. google/protobuf/compiler/importer_unittest.cc \
  788. google/protobuf/compiler/mock_code_generator.cc \
  789. google/protobuf/compiler/mock_code_generator.h \
  790. google/protobuf/compiler/parser_unittest.cc \
  791. google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc \
  792. google/protobuf/compiler/cpp/cpp_move_unittest.cc \
  793. google/protobuf/compiler/cpp/cpp_unittest.h \
  794. google/protobuf/compiler/cpp/cpp_unittest.cc \
  795. google/protobuf/compiler/cpp/cpp_plugin_unittest.cc \
  796. google/protobuf/compiler/cpp/metadata_test.cc \
  797. google/protobuf/compiler/java/java_plugin_unittest.cc \
  798. google/protobuf/compiler/java/java_doc_comment_unittest.cc \
  799. google/protobuf/compiler/objectivec/objectivec_helpers_unittest.cc \
  800. google/protobuf/compiler/python/python_plugin_unittest.cc \
  801. google/protobuf/compiler/ruby/ruby_generator_unittest.cc \
  802. google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc \
  803. google/protobuf/compiler/csharp/csharp_generator_unittest.cc \
  804. google/protobuf/util/delimited_message_util_test.cc \
  805. google/protobuf/util/field_comparator_test.cc \
  806. google/protobuf/util/field_mask_util_test.cc \
  807. google/protobuf/util/internal/default_value_objectwriter_test.cc \
  808. google/protobuf/util/internal/json_objectwriter_test.cc \
  809. google/protobuf/util/internal/json_stream_parser_test.cc \
  810. google/protobuf/util/internal/protostream_objectsource_test.cc \
  811. google/protobuf/util/internal/protostream_objectwriter_test.cc \
  812. google/protobuf/util/internal/type_info_test_helper.cc \
  813. google/protobuf/util/json_util_test.cc \
  814. google/protobuf/util/message_differencer_unittest.cc \
  815. google/protobuf/util/time_util_test.cc \
  816. google/protobuf/util/type_resolver_util_test.cc \
  817. $(COMMON_TEST_SOURCES)
  818. nodist_protobuf_test_SOURCES = $(protoc_outputs)
  819. # Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
  820. protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
  821. libprotoc.la \
  822. ../gmock/gtest/lib/libgtest.la \
  823. ../gmock/lib/libgmock.la \
  824. ../gmock/lib/libgmock_main.la
  825. protobuf_lazy_descriptor_test_CPPFLAGS = -I$(srcdir)/../gmock/include \
  826. -I$(srcdir)/../gmock/gtest/include \
  827. -DPROTOBUF_TEST_NO_DESCRIPTORS
  828. protobuf_lazy_descriptor_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
  829. protobuf_lazy_descriptor_test_SOURCES = \
  830. google/protobuf/compiler/cpp/cpp_unittest.cc \
  831. $(COMMON_TEST_SOURCES)
  832. nodist_protobuf_lazy_descriptor_test_SOURCES = $(protoc_outputs)
  833. COMMON_LITE_TEST_SOURCES = \
  834. google/protobuf/arena_test_util.cc \
  835. google/protobuf/arena_test_util.h \
  836. google/protobuf/map_lite_test_util.cc \
  837. google/protobuf/map_lite_test_util.h \
  838. google/protobuf/test_util_lite.cc \
  839. google/protobuf/test_util_lite.h
  840. # Build lite_unittest separately, since it doesn't use gtest. It can't
  841. # depend on gtest because our internal version of gtest depend on proto
  842. # full runtime and we want to make sure this test builds without full
  843. # runtime.
  844. protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
  845. ../gmock/gtest/lib/libgtest.la \
  846. ../gmock/lib/libgmock.la \
  847. ../gmock/lib/libgmock_main.la
  848. protobuf_lite_test_CPPFLAGS= -I$(srcdir)/../gmock/include \
  849. -I$(srcdir)/../gmock/gtest/include
  850. protobuf_lite_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
  851. protobuf_lite_test_SOURCES = \
  852. google/protobuf/lite_unittest.cc \
  853. $(COMMON_LITE_TEST_SOURCES)
  854. nodist_protobuf_lite_test_SOURCES = $(protoc_lite_outputs)
  855. # lite_arena_unittest depends on gtest because teboring@ found that without
  856. # gtest when building the test internally our memory sanitizer doesn't detect
  857. # memory leaks (don't know why).
  858. protobuf_lite_arena_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
  859. ../gmock/gtest/lib/libgtest.la \
  860. ../gmock/lib/libgmock.la \
  861. ../gmock/lib/libgmock_main.la
  862. protobuf_lite_arena_test_CPPFLAGS = -I$(srcdir)/../gmock/include \
  863. -I$(srcdir)/../gmock/gtest/include
  864. protobuf_lite_arena_test_CXXFLAGS = $(NO_OPT_CXXFLAGS)
  865. protobuf_lite_arena_test_SOURCES = \
  866. google/protobuf/lite_arena_unittest.cc \
  867. $(COMMON_LITE_TEST_SOURCES)
  868. nodist_protobuf_lite_arena_test_SOURCES = $(protoc_lite_outputs)
  869. # Test plugin binary.
  870. test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
  871. ../gmock/gtest/lib/libgtest.la
  872. test_plugin_CPPFLAGS = -I$(srcdir)/../gmock/gtest/include
  873. test_plugin_SOURCES = \
  874. google/protobuf/compiler/mock_code_generator.cc \
  875. google/protobuf/testing/file.cc \
  876. google/protobuf/testing/file.h \
  877. google/protobuf/compiler/test_plugin.cc
  878. if HAVE_ZLIB
  879. zcgzip_LDADD = $(PTHREAD_LIBS) libprotobuf.la
  880. zcgzip_SOURCES = google/protobuf/testing/zcgzip.cc
  881. zcgunzip_LDADD = $(PTHREAD_LIBS) libprotobuf.la
  882. zcgunzip_SOURCES = google/protobuf/testing/zcgunzip.cc
  883. endif
  884. # This test target is to ensure all our public header files and generated
  885. # code is free from warnings. We have to be more pedantic about these
  886. # files because they are compiled by users with different compiler flags.
  887. no_warning_test.cc:
  888. echo "// Generated from Makefile.am" > no_warning_test.cc
  889. for FILE in $(nobase_include_HEADERS); do \
  890. if ! echo $${FILE} | grep "atomicops"; then \
  891. echo "#include <$${FILE}>" >> no_warning_test.cc; \
  892. fi \
  893. done
  894. echo "int main(int, char**) { return 0; }" >> no_warning_test.cc
  895. no_warning_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la
  896. no_warning_test_CXXFLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_DEF) $(ZLIB_DEF) \
  897. -Wall -Wextra -Werror -Wno-unused-parameter
  898. nodist_no_warning_test_SOURCES = no_warning_test.cc $(protoc_outputs)
  899. TESTS = protobuf-test protobuf-lazy-descriptor-test protobuf-lite-test \
  900. google/protobuf/compiler/zip_output_unittest.sh $(GZTESTS) \
  901. protobuf-lite-arena-test no-warning-test