Feng Xiao | 4333edb | 2015-05-31 02:28:34 -0700 | [diff] [blame] | 1 | set(libprotobuf_files |
| 2 | ${protobuf_source_dir}/src/google/protobuf/any.cc |
| 3 | ${protobuf_source_dir}/src/google/protobuf/any.pb.cc |
| 4 | ${protobuf_source_dir}/src/google/protobuf/api.pb.cc |
| 5 | ${protobuf_source_dir}/src/google/protobuf/compiler/importer.cc |
| 6 | ${protobuf_source_dir}/src/google/protobuf/compiler/parser.cc |
| 7 | ${protobuf_source_dir}/src/google/protobuf/descriptor.cc |
| 8 | ${protobuf_source_dir}/src/google/protobuf/descriptor.pb.cc |
| 9 | ${protobuf_source_dir}/src/google/protobuf/descriptor_database.cc |
| 10 | ${protobuf_source_dir}/src/google/protobuf/duration.pb.cc |
| 11 | ${protobuf_source_dir}/src/google/protobuf/dynamic_message.cc |
| 12 | ${protobuf_source_dir}/src/google/protobuf/empty.pb.cc |
| 13 | ${protobuf_source_dir}/src/google/protobuf/extension_set_heavy.cc |
| 14 | ${protobuf_source_dir}/src/google/protobuf/field_mask.pb.cc |
| 15 | ${protobuf_source_dir}/src/google/protobuf/generated_message_reflection.cc |
Feng Xiao | 8859c07 | 2017-05-04 15:11:11 -0700 | [diff] [blame] | 16 | ${protobuf_source_dir}/src/google/protobuf/generated_message_table_driven.cc |
Feng Xiao | 4333edb | 2015-05-31 02:28:34 -0700 | [diff] [blame] | 17 | ${protobuf_source_dir}/src/google/protobuf/io/gzip_stream.cc |
| 18 | ${protobuf_source_dir}/src/google/protobuf/io/printer.cc |
Feng Xiao | 4333edb | 2015-05-31 02:28:34 -0700 | [diff] [blame] | 19 | ${protobuf_source_dir}/src/google/protobuf/io/tokenizer.cc |
Feng Xiao | 4333edb | 2015-05-31 02:28:34 -0700 | [diff] [blame] | 20 | ${protobuf_source_dir}/src/google/protobuf/map_field.cc |
| 21 | ${protobuf_source_dir}/src/google/protobuf/message.cc |
| 22 | ${protobuf_source_dir}/src/google/protobuf/reflection_ops.cc |
| 23 | ${protobuf_source_dir}/src/google/protobuf/service.cc |
| 24 | ${protobuf_source_dir}/src/google/protobuf/source_context.pb.cc |
| 25 | ${protobuf_source_dir}/src/google/protobuf/struct.pb.cc |
Feng Xiao | 4333edb | 2015-05-31 02:28:34 -0700 | [diff] [blame] | 26 | ${protobuf_source_dir}/src/google/protobuf/stubs/substitute.cc |
| 27 | ${protobuf_source_dir}/src/google/protobuf/text_format.cc |
| 28 | ${protobuf_source_dir}/src/google/protobuf/timestamp.pb.cc |
| 29 | ${protobuf_source_dir}/src/google/protobuf/type.pb.cc |
| 30 | ${protobuf_source_dir}/src/google/protobuf/unknown_field_set.cc |
Byron Yi | acaa940 | 2017-03-16 20:52:58 +0800 | [diff] [blame] | 31 | ${protobuf_source_dir}/src/google/protobuf/util/delimited_message_util.cc |
Feng Xiao | e96ff30 | 2015-06-15 18:21:48 -0700 | [diff] [blame] | 32 | ${protobuf_source_dir}/src/google/protobuf/util/field_comparator.cc |
Jisi Liu | b0f6611 | 2015-08-21 11:18:45 -0700 | [diff] [blame] | 33 | ${protobuf_source_dir}/src/google/protobuf/util/field_mask_util.cc |
Feng Xiao | e96ff30 | 2015-06-15 18:21:48 -0700 | [diff] [blame] | 34 | ${protobuf_source_dir}/src/google/protobuf/util/internal/datapiece.cc |
| 35 | ${protobuf_source_dir}/src/google/protobuf/util/internal/default_value_objectwriter.cc |
| 36 | ${protobuf_source_dir}/src/google/protobuf/util/internal/error_listener.cc |
| 37 | ${protobuf_source_dir}/src/google/protobuf/util/internal/field_mask_utility.cc |
| 38 | ${protobuf_source_dir}/src/google/protobuf/util/internal/json_escaping.cc |
| 39 | ${protobuf_source_dir}/src/google/protobuf/util/internal/json_objectwriter.cc |
| 40 | ${protobuf_source_dir}/src/google/protobuf/util/internal/json_stream_parser.cc |
| 41 | ${protobuf_source_dir}/src/google/protobuf/util/internal/object_writer.cc |
Feng Xiao | e841bac | 2015-12-11 17:09:20 -0800 | [diff] [blame] | 42 | ${protobuf_source_dir}/src/google/protobuf/util/internal/proto_writer.cc |
Feng Xiao | e96ff30 | 2015-06-15 18:21:48 -0700 | [diff] [blame] | 43 | ${protobuf_source_dir}/src/google/protobuf/util/internal/protostream_objectsource.cc |
| 44 | ${protobuf_source_dir}/src/google/protobuf/util/internal/protostream_objectwriter.cc |
| 45 | ${protobuf_source_dir}/src/google/protobuf/util/internal/type_info.cc |
Feng Xiao | 818c5ee | 2015-06-15 21:42:57 -0700 | [diff] [blame] | 46 | ${protobuf_source_dir}/src/google/protobuf/util/internal/type_info_test_helper.cc |
Feng Xiao | e96ff30 | 2015-06-15 18:21:48 -0700 | [diff] [blame] | 47 | ${protobuf_source_dir}/src/google/protobuf/util/internal/utility.cc |
| 48 | ${protobuf_source_dir}/src/google/protobuf/util/json_util.cc |
| 49 | ${protobuf_source_dir}/src/google/protobuf/util/message_differencer.cc |
Jisi Liu | b0f6611 | 2015-08-21 11:18:45 -0700 | [diff] [blame] | 50 | ${protobuf_source_dir}/src/google/protobuf/util/time_util.cc |
Feng Xiao | e96ff30 | 2015-06-15 18:21:48 -0700 | [diff] [blame] | 51 | ${protobuf_source_dir}/src/google/protobuf/util/type_resolver_util.cc |
Feng Xiao | 4333edb | 2015-05-31 02:28:34 -0700 | [diff] [blame] | 52 | ${protobuf_source_dir}/src/google/protobuf/wire_format.cc |
| 53 | ${protobuf_source_dir}/src/google/protobuf/wrappers.pb.cc |
| 54 | ) |
| 55 | |
Dennis Cappendijk | 4eb02fe | 2017-05-29 17:34:08 +0200 | [diff] [blame] | 56 | set(libprotobuf_includes |
| 57 | ${protobuf_source_dir}/src/google/protobuf/any.h |
| 58 | ${protobuf_source_dir}/src/google/protobuf/any.pb.h |
| 59 | ${protobuf_source_dir}/src/google/protobuf/api.pb.h |
| 60 | ${protobuf_source_dir}/src/google/protobuf/compiler/importer.h |
| 61 | ${protobuf_source_dir}/src/google/protobuf/compiler/parser.h |
| 62 | ${protobuf_source_dir}/src/google/protobuf/descriptor.h |
| 63 | ${protobuf_source_dir}/src/google/protobuf/descriptor.pb.h |
| 64 | ${protobuf_source_dir}/src/google/protobuf/descriptor_database.h |
| 65 | ${protobuf_source_dir}/src/google/protobuf/duration.pb.h |
| 66 | ${protobuf_source_dir}/src/google/protobuf/dynamic_message.h |
| 67 | ${protobuf_source_dir}/src/google/protobuf/empty.pb.h |
| 68 | ${protobuf_source_dir}/src/google/protobuf/field_mask.pb.h |
| 69 | ${protobuf_source_dir}/src/google/protobuf/generated_message_reflection.h |
| 70 | ${protobuf_source_dir}/src/google/protobuf/io/gzip_stream.h |
| 71 | ${protobuf_source_dir}/src/google/protobuf/io/printer.h |
Dennis Cappendijk | 4eb02fe | 2017-05-29 17:34:08 +0200 | [diff] [blame] | 72 | ${protobuf_source_dir}/src/google/protobuf/io/tokenizer.h |
Dennis Cappendijk | 4eb02fe | 2017-05-29 17:34:08 +0200 | [diff] [blame] | 73 | ${protobuf_source_dir}/src/google/protobuf/map_field.h |
| 74 | ${protobuf_source_dir}/src/google/protobuf/message.h |
| 75 | ${protobuf_source_dir}/src/google/protobuf/reflection_ops.h |
| 76 | ${protobuf_source_dir}/src/google/protobuf/service.h |
| 77 | ${protobuf_source_dir}/src/google/protobuf/source_context.pb.h |
| 78 | ${protobuf_source_dir}/src/google/protobuf/struct.pb.h |
Dennis Cappendijk | 4eb02fe | 2017-05-29 17:34:08 +0200 | [diff] [blame] | 79 | ${protobuf_source_dir}/src/google/protobuf/stubs/substitute.h |
| 80 | ${protobuf_source_dir}/src/google/protobuf/text_format.h |
| 81 | ${protobuf_source_dir}/src/google/protobuf/timestamp.pb.h |
| 82 | ${protobuf_source_dir}/src/google/protobuf/type.pb.h |
| 83 | ${protobuf_source_dir}/src/google/protobuf/unknown_field_set.h |
| 84 | ${protobuf_source_dir}/src/google/protobuf/util/delimited_message_util.h |
| 85 | ${protobuf_source_dir}/src/google/protobuf/util/field_comparator.h |
| 86 | ${protobuf_source_dir}/src/google/protobuf/util/field_mask_util.h |
| 87 | ${protobuf_source_dir}/src/google/protobuf/util/internal/datapiece.h |
| 88 | ${protobuf_source_dir}/src/google/protobuf/util/internal/default_value_objectwriter.h |
| 89 | ${protobuf_source_dir}/src/google/protobuf/util/internal/error_listener.h |
| 90 | ${protobuf_source_dir}/src/google/protobuf/util/internal/field_mask_utility.h |
| 91 | ${protobuf_source_dir}/src/google/protobuf/util/internal/json_escaping.h |
| 92 | ${protobuf_source_dir}/src/google/protobuf/util/internal/json_objectwriter.h |
| 93 | ${protobuf_source_dir}/src/google/protobuf/util/internal/json_stream_parser.h |
| 94 | ${protobuf_source_dir}/src/google/protobuf/util/internal/object_writer.h |
| 95 | ${protobuf_source_dir}/src/google/protobuf/util/internal/proto_writer.h |
| 96 | ${protobuf_source_dir}/src/google/protobuf/util/internal/protostream_objectsource.h |
| 97 | ${protobuf_source_dir}/src/google/protobuf/util/internal/protostream_objectwriter.h |
| 98 | ${protobuf_source_dir}/src/google/protobuf/util/internal/type_info.h |
| 99 | ${protobuf_source_dir}/src/google/protobuf/util/internal/type_info_test_helper.h |
| 100 | ${protobuf_source_dir}/src/google/protobuf/util/internal/utility.h |
| 101 | ${protobuf_source_dir}/src/google/protobuf/util/json_util.h |
| 102 | ${protobuf_source_dir}/src/google/protobuf/util/message_differencer.h |
| 103 | ${protobuf_source_dir}/src/google/protobuf/util/time_util.h |
| 104 | ${protobuf_source_dir}/src/google/protobuf/util/type_resolver_util.h |
| 105 | ${protobuf_source_dir}/src/google/protobuf/wire_format.h |
| 106 | ${protobuf_source_dir}/src/google/protobuf/wrappers.pb.h |
| 107 | ) |
| 108 | |
Ivan Shynkarenka | 291d9a0 | 2018-05-15 23:19:58 +0300 | [diff] [blame] | 109 | if (MSVC) |
Jozef Izso | b1fecd0 | 2018-04-28 00:12:38 +0200 | [diff] [blame] | 110 | set(libprotobuf_rc_files |
| 111 | ${CMAKE_CURRENT_BINARY_DIR}/version.rc |
| 112 | ) |
Ivan Shynkarenka | 291d9a0 | 2018-05-15 23:19:58 +0300 | [diff] [blame] | 113 | endif() |
Jozef Izso | b1fecd0 | 2018-04-28 00:12:38 +0200 | [diff] [blame] | 114 | |
Konstantin Podsvirov | c3aa4c2 | 2015-10-15 02:56:48 +0300 | [diff] [blame] | 115 | add_library(libprotobuf ${protobuf_SHARED_OR_STATIC} |
Jozef Izso | b1fecd0 | 2018-04-28 00:12:38 +0200 | [diff] [blame] | 116 | ${libprotobuf_lite_files} ${libprotobuf_files} ${libprotobuf_includes} ${libprotobuf_rc_files}) |
Konstantin Podsvirov | 38c5f2f | 2016-07-28 01:28:49 +0300 | [diff] [blame] | 117 | target_link_libraries(libprotobuf ${CMAKE_THREAD_LIBS_INIT}) |
| 118 | if(protobuf_WITH_ZLIB) |
boscosiu | 55ed1d4 | 2019-07-03 06:34:09 -0700 | [diff] [blame] | 119 | target_link_libraries(libprotobuf ${ZLIB_LIBRARIES}) |
| 120 | endif() |
| 121 | if(protobuf_LINK_LIBATOMIC) |
| 122 | target_link_libraries(libprotobuf atomic) |
Konstantin Podsvirov | 38c5f2f | 2016-07-28 01:28:49 +0300 | [diff] [blame] | 123 | endif() |
RPG3D | 6aaa40f | 2020-03-08 19:35:07 +0800 | [diff] [blame] | 124 | if(${CMAKE_SYSTEM_NAME} STREQUAL "Android") |
RPG3D | ce66f60 | 2020-03-09 10:15:54 +0800 | [diff] [blame] | 125 | target_link_libraries(libprotobuf log) |
RPG3D | 6aaa40f | 2020-03-08 19:35:07 +0800 | [diff] [blame] | 126 | endif() |
Tom Hughes | 6d72d12 | 2015-07-28 16:18:35 -0700 | [diff] [blame] | 127 | target_include_directories(libprotobuf PUBLIC ${protobuf_source_dir}/src) |
Konstantin Podsvirov | c3aa4c2 | 2015-10-15 02:56:48 +0300 | [diff] [blame] | 128 | if(MSVC AND protobuf_BUILD_SHARED_LIBS) |
| 129 | target_compile_definitions(libprotobuf |
| 130 | PUBLIC PROTOBUF_USE_DLLS |
| 131 | PRIVATE LIBPROTOBUF_EXPORTS) |
| 132 | endif() |
Feng Xiao | 4333edb | 2015-05-31 02:28:34 -0700 | [diff] [blame] | 133 | set_target_properties(libprotobuf PROPERTIES |
Corentin Le Molgat | 3bc0282 | 2018-01-29 15:11:59 +0100 | [diff] [blame] | 134 | VERSION ${protobuf_VERSION} |
Konstantin Podsvirov | f397ede | 2015-09-17 13:00:12 +0300 | [diff] [blame] | 135 | OUTPUT_NAME ${LIB_PREFIX}protobuf |
| 136 | DEBUG_POSTFIX "${protobuf_DEBUG_POSTFIX}") |
Corentin Le Molgat | f7a0584 | 2018-01-29 15:13:23 +0100 | [diff] [blame] | 137 | add_library(protobuf::libprotobuf ALIAS libprotobuf) |