blob: 95b7f1fa765ba38c7ec691d92d88a03bbde387ab [file] [log] [blame]
Feng Xiao4333edb2015-05-31 02:28:34 -07001set(libprotobuf_lite_files
Yilun Chongd8c25012019-02-22 18:13:33 +08002 ${protobuf_source_dir}/src/google/protobuf/any_lite.cc
Feng Xiao4333edb2015-05-31 02:28:34 -07003 ${protobuf_source_dir}/src/google/protobuf/arena.cc
Joshua Haberman38d6de12020-09-28 11:54:54 -07004 ${protobuf_source_dir}/src/google/protobuf/arenastring.cc
Feng Xiao4333edb2015-05-31 02:28:34 -07005 ${protobuf_source_dir}/src/google/protobuf/extension_set.cc
Hao Nguyen1d4e9592019-05-03 14:33:43 -07006 ${protobuf_source_dir}/src/google/protobuf/generated_enum_util.cc
Jisi Liu12c186f2017-07-25 14:38:00 -07007 ${protobuf_source_dir}/src/google/protobuf/generated_message_table_driven_lite.cc
Joshua Habermane5c570b2021-09-09 08:21:42 -07008 ${protobuf_source_dir}/src/google/protobuf/generated_message_tctable_lite.cc
Feng Xiao4333edb2015-05-31 02:28:34 -07009 ${protobuf_source_dir}/src/google/protobuf/generated_message_util.cc
Adam Cozzette92a7e772017-12-01 10:05:10 -080010 ${protobuf_source_dir}/src/google/protobuf/implicit_weak_message.cc
Adam Cozzetted46abc12021-08-03 13:44:26 -070011 ${protobuf_source_dir}/src/google/protobuf/inlined_string_field.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070012 ${protobuf_source_dir}/src/google/protobuf/io/coded_stream.cc
Hao Nguyen176f7db2019-04-09 06:23:32 -070013 ${protobuf_source_dir}/src/google/protobuf/io/io_win32.cc
Aaron Bray42430822018-12-20 14:13:57 -050014 ${protobuf_source_dir}/src/google/protobuf/io/strtod.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070015 ${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream.cc
Yannic Bonenberger49794892019-07-20 12:49:03 +020016 ${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream_impl.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070017 ${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream_impl_lite.cc
Joshua Haberman95e6c5b2020-08-17 15:26:13 -070018 ${protobuf_source_dir}/src/google/protobuf/map.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070019 ${protobuf_source_dir}/src/google/protobuf/message_lite.cc
Phillipp Schoppmann8e5b2f12019-03-14 10:35:05 +000020 ${protobuf_source_dir}/src/google/protobuf/parse_context.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070021 ${protobuf_source_dir}/src/google/protobuf/repeated_field.cc
Feng Xiaoe96ff302015-06-15 18:21:48 -070022 ${protobuf_source_dir}/src/google/protobuf/stubs/bytestream.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070023 ${protobuf_source_dir}/src/google/protobuf/stubs/common.cc
Jisi Liub0f66112015-08-21 11:18:45 -070024 ${protobuf_source_dir}/src/google/protobuf/stubs/int128.cc
Feng Xiaoe96ff302015-06-15 18:21:48 -070025 ${protobuf_source_dir}/src/google/protobuf/stubs/status.cc
26 ${protobuf_source_dir}/src/google/protobuf/stubs/statusor.cc
27 ${protobuf_source_dir}/src/google/protobuf/stubs/stringpiece.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070028 ${protobuf_source_dir}/src/google/protobuf/stubs/stringprintf.cc
Jisi Liub90f9f82015-08-25 17:06:33 -070029 ${protobuf_source_dir}/src/google/protobuf/stubs/structurally_valid.cc
Feng Xiao818c5ee2015-06-15 21:42:57 -070030 ${protobuf_source_dir}/src/google/protobuf/stubs/strutil.cc
Feng Xiaoe96ff302015-06-15 18:21:48 -070031 ${protobuf_source_dir}/src/google/protobuf/stubs/time.cc
Feng Xiao4333edb2015-05-31 02:28:34 -070032 ${protobuf_source_dir}/src/google/protobuf/wire_format_lite.cc
33)
34
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020035set(libprotobuf_lite_includes
Joshua Habermane5c570b2021-09-09 08:21:42 -070036 ${protobuf_source_dir}/src/google/protobuf/any.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020037 ${protobuf_source_dir}/src/google/protobuf/arena.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070038 ${protobuf_source_dir}/src/google/protobuf/arena_impl.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020039 ${protobuf_source_dir}/src/google/protobuf/arenastring.h
40 ${protobuf_source_dir}/src/google/protobuf/extension_set.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070041 ${protobuf_source_dir}/src/google/protobuf/extension_set_inl.h
42 ${protobuf_source_dir}/src/google/protobuf/generated_enum_util.h
43 ${protobuf_source_dir}/src/google/protobuf/generated_message_table_driven.h
44 ${protobuf_source_dir}/src/google/protobuf/generated_message_table_driven_lite.h
45 ${protobuf_source_dir}/src/google/protobuf/generated_message_tctable_decl.h
46 ${protobuf_source_dir}/src/google/protobuf/generated_message_tctable_impl.h
47 ${protobuf_source_dir}/src/google/protobuf/generated_message_tctable_impl.inc
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020048 ${protobuf_source_dir}/src/google/protobuf/generated_message_util.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070049 ${protobuf_source_dir}/src/google/protobuf/has_bits.h
Adam Cozzette92a7e772017-12-01 10:05:10 -080050 ${protobuf_source_dir}/src/google/protobuf/implicit_weak_message.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070051 ${protobuf_source_dir}/src/google/protobuf/inlined_string_field.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020052 ${protobuf_source_dir}/src/google/protobuf/io/coded_stream.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070053 ${protobuf_source_dir}/src/google/protobuf/io/io_win32.h
Aaron Bray42430822018-12-20 14:13:57 -050054 ${protobuf_source_dir}/src/google/protobuf/io/strtod.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020055 ${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream.h
Hao Nguyen1d4e9592019-05-03 14:33:43 -070056 ${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream_impl.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020057 ${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream_impl_lite.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070058 ${protobuf_source_dir}/src/google/protobuf/map.h
59 ${protobuf_source_dir}/src/google/protobuf/map_entry_lite.h
60 ${protobuf_source_dir}/src/google/protobuf/map_field_lite.h
61 ${protobuf_source_dir}/src/google/protobuf/map_type_handler.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020062 ${protobuf_source_dir}/src/google/protobuf/message_lite.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070063 ${protobuf_source_dir}/src/google/protobuf/metadata_lite.h
Bo Yang509aee42021-08-17 17:26:34 -070064 ${protobuf_source_dir}/src/google/protobuf/parse_context.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070065 ${protobuf_source_dir}/src/google/protobuf/port.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020066 ${protobuf_source_dir}/src/google/protobuf/repeated_field.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020067 ${protobuf_source_dir}/src/google/protobuf/stubs/bytestream.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070068 ${protobuf_source_dir}/src/google/protobuf/stubs/callback.h
69 ${protobuf_source_dir}/src/google/protobuf/stubs/casts.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020070 ${protobuf_source_dir}/src/google/protobuf/stubs/common.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070071 ${protobuf_source_dir}/src/google/protobuf/stubs/hash.h
72 ${protobuf_source_dir}/src/google/protobuf/stubs/logging.h
73 ${protobuf_source_dir}/src/google/protobuf/stubs/macros.h
74 ${protobuf_source_dir}/src/google/protobuf/stubs/map_util.h
75 ${protobuf_source_dir}/src/google/protobuf/stubs/mutex.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020076 ${protobuf_source_dir}/src/google/protobuf/stubs/once.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070077 ${protobuf_source_dir}/src/google/protobuf/stubs/platform_macros.h
78 ${protobuf_source_dir}/src/google/protobuf/stubs/port.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020079 ${protobuf_source_dir}/src/google/protobuf/stubs/status.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070080 ${protobuf_source_dir}/src/google/protobuf/stubs/stl_util.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020081 ${protobuf_source_dir}/src/google/protobuf/stubs/stringpiece.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020082 ${protobuf_source_dir}/src/google/protobuf/stubs/strutil.h
Joshua Habermane5c570b2021-09-09 08:21:42 -070083 ${protobuf_source_dir}/src/google/protobuf/stubs/template_util.h
Dennis Cappendijk4eb02fe2017-05-29 17:34:08 +020084 ${protobuf_source_dir}/src/google/protobuf/wire_format_lite.h
85)
86
Jorge López Fueyo1ae531d2021-06-04 20:13:56 +020087if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
Jozef Izsob1fecd02018-04-28 00:12:38 +020088set(libprotobuf_lite_rc_files
89 ${CMAKE_CURRENT_BINARY_DIR}/version.rc
90)
Ivan Shynkarenka291d9a02018-05-15 23:19:58 +030091endif()
Jozef Izsob1fecd02018-04-28 00:12:38 +020092
Konstantin Podsvirovc3aa4c22015-10-15 02:56:48 +030093add_library(libprotobuf-lite ${protobuf_SHARED_OR_STATIC}
Jozef Izsob1fecd02018-04-28 00:12:38 +020094 ${libprotobuf_lite_files} ${libprotobuf_lite_includes} ${libprotobuf_lite_rc_files})
Feng Xiao4333edb2015-05-31 02:28:34 -070095target_link_libraries(libprotobuf-lite ${CMAKE_THREAD_LIBS_INIT})
boscosiu55ed1d42019-07-03 06:34:09 -070096if(protobuf_LINK_LIBATOMIC)
97 target_link_libraries(libprotobuf-lite atomic)
98endif()
RPG3D6eedd1a2020-03-08 19:33:02 +080099if(${CMAKE_SYSTEM_NAME} STREQUAL "Android")
100 target_link_libraries(libprotobuf-lite log)
101endif()
Tom Hughes6d72d122015-07-28 16:18:35 -0700102target_include_directories(libprotobuf-lite PUBLIC ${protobuf_source_dir}/src)
Konstantin Podsvirovc3aa4c22015-10-15 02:56:48 +0300103if(MSVC AND protobuf_BUILD_SHARED_LIBS)
104 target_compile_definitions(libprotobuf-lite
105 PUBLIC PROTOBUF_USE_DLLS
106 PRIVATE LIBPROTOBUF_EXPORTS)
107endif()
Feng Xiao4333edb2015-05-31 02:28:34 -0700108set_target_properties(libprotobuf-lite PROPERTIES
Corentin Le Molgat3bc02822018-01-29 15:11:59 +0100109 VERSION ${protobuf_VERSION}
Konstantin Podsvirovf397ede2015-09-17 13:00:12 +0300110 OUTPUT_NAME ${LIB_PREFIX}protobuf-lite
111 DEBUG_POSTFIX "${protobuf_DEBUG_POSTFIX}")
Corentin Le Molgatf7a05842018-01-29 15:13:23 +0100112add_library(protobuf::libprotobuf-lite ALIAS libprotobuf-lite)