1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

devel/protobuf3: Add protobuf3 3.21.12 (copied from protobuf)

- Add PORTSCOUT
This commit is contained in:
Po-Chuan Hsieh 2023-12-15 00:08:17 +08:00
parent db1151007c
commit ff78a16bf8
No known key found for this signature in database
GPG Key ID: 9A4BD10F002DD04B
8 changed files with 344 additions and 0 deletions

View File

@ -4170,6 +4170,7 @@
SUBDIR += protobuf-c
SUBDIR += protobuf-java
SUBDIR += protobuf25
SUBDIR += protobuf3
SUBDIR += prototool
SUBDIR += protozero
SUBDIR += pructl

43
devel/protobuf3/Makefile Normal file
View File

@ -0,0 +1,43 @@
PORTNAME= protobuf
PORTVERSION= 3.21.12
DISTVERSIONPREFIX= cpp-
CATEGORIES= devel
MASTER_SITES= https://github.com/protocolbuffers/protobuf/releases/download/v${PORTVERSION:R:E}.${PORTVERSION:E}/
PKGNAMESUFFIX= 3
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= Data interchange format library
WWW= https://protobuf.dev/ \
https://github.com/protocolbuffers/protobuf
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN_sparc64= fails to compile: no atomic ops available
TEST_DEPENDS= googletest>=0:devel/googletest
USES= compiler:c++11-lang cpe libtool localbase pathfix pkgconfig
CFLAGS+= -D_THREAD_SAFE -DGOOGLE_PROTOBUF_NO_RTTI -I${WRKSRC}/src
CONFIGURE_ENV= CC_FOR_BUILD="${CC}" \
CFLAGS_FOR_BUILD="${CFLAGS}" \
CPPFLAGS_FOR_BUILD="${CPPFLAGS}" \
CXX_FOR_BUILD="${CXX}" \
CXXFLAGS_FOR_BUILD="${CXXFLAGS}" \
LDFLAGS_FOR_BUILD="${LDFLAGS}"
GNU_CONFIGURE= yes
INSTALL_TARGET= install-strip
TEST_ARGS= ${MAKE_ARGS} ${_MAKE_JOBS}
TEST_TARGET= check
USE_CXXSTD= c++11
USE_LDCONFIG= yes
PLIST_SUB= PATCH_VERSION=${PORTVERSION:E}
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
CPE_VENDOR= google
PORTSCOUT= limit:^3\.
.include <bsd.port.mk>

3
devel/protobuf3/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1674589582
SHA256 (protobuf-cpp-3.21.12.tar.gz) = 4eab9b524aa5913c6fffb20b2a8abf5ef7f95a80bc0701f3a6dbb4c607f73460
SIZE (protobuf-cpp-3.21.12.tar.gz) = 4842303

View File

@ -0,0 +1,11 @@
--- Makefile.in.orig 2022-12-14 14:21:49 UTC
+++ Makefile.in
@@ -2188,7 +2188,7 @@ uninstall-am: uninstall-pkgconfigDATA
# which takes a lot of time and is generally not useful to us. Also, we don't
# want "make install" to recurse into gmock since we don't want to overwrite
# the installed version of gmock if there is one.
-check-local:
+disabled-check-local:
@echo "Making lib/libgmock.a lib/libgmock_main.a in gmock"
@cd third_party/googletest/googletest && $(MAKE) $(AM_MAKEFLAGS) lib/libgtest.la lib/libgtest_main.la
@cd third_party/googletest/googlemock && $(MAKE) $(AM_MAKEFLAGS) lib/libgmock.la lib/libgmock_main.la

View File

@ -0,0 +1,13 @@
Obtained from: https://cgit.freebsd.org/ports/commit/?id=c212fb9fcceacf49ac4f236c7944aaec5d3cfa57
--- src/google/protobuf/arena_impl.h.orig 2022-09-29 19:05:00 UTC
+++ src/google/protobuf/arena_impl.h
@@ -640,7 +640,7 @@ class PROTOBUF_EXPORT ThreadSafeArena {
#ifdef _MSC_VER
#pragma warning(disable : 4324)
#endif
- struct alignas(kCacheAlignment) CacheAlignedLifecycleIdGenerator {
+ struct alignas(alignof(std::atomic<LifecycleIdAtomic>)) CacheAlignedLifecycleIdGenerator {
std::atomic<LifecycleIdAtomic> id;
};
static CacheAlignedLifecycleIdGenerator lifecycle_id_generator_;

View File

@ -0,0 +1,124 @@
--- src/Makefile.in.orig 2022-12-14 14:21:49 UTC
+++ src/Makefile.in
@@ -492,9 +492,9 @@ protobuf_lazy_descriptor_test_OBJECTS = \
$(nodist_protobuf_lazy_descriptor_test_OBJECTS)
protobuf_lazy_descriptor_test_DEPENDENCIES = $(am__DEPENDENCIES_1) \
libprotobuf.la libprotoc.la \
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_lazy_descriptor_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
$(protobuf_lazy_descriptor_test_CXXFLAGS) $(CXXFLAGS) \
@@ -513,9 +513,9 @@ protobuf_lite_arena_test_OBJECTS = \
$(am_protobuf_lite_arena_test_OBJECTS) \
$(nodist_protobuf_lite_arena_test_OBJECTS)
protobuf_lite_arena_test_DEPENDENCIES = $(am__DEPENDENCIES_1) \
- libprotobuf-lite.la $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ libprotobuf-lite.la -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_lite_arena_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
$(protobuf_lite_arena_test_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
@@ -535,9 +535,9 @@ nodist_protobuf_lite_test_OBJECTS = $(am__objects_11)
protobuf_lite_test_OBJECTS = $(am_protobuf_lite_test_OBJECTS) \
$(nodist_protobuf_lite_test_OBJECTS)
protobuf_lite_test_DEPENDENCIES = $(am__DEPENDENCIES_1) \
- libprotobuf-lite.la $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ libprotobuf-lite.la -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_lite_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
$(protobuf_lite_test_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
@@ -681,9 +681,9 @@ nodist_protobuf_test_OBJECTS = $(am__objects_15)
protobuf_test_OBJECTS = $(am_protobuf_test_OBJECTS) \
$(nodist_protobuf_test_OBJECTS)
protobuf_test_DEPENDENCIES = $(am__DEPENDENCIES_1) libprotobuf.la \
- libprotoc.la $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ libprotoc.la -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
$(protobuf_test_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
@@ -697,7 +697,7 @@ am_test_plugin_OBJECTS = google/protobuf/compiler/test
google/protobuf/testing/test_plugin-file.$(OBJEXT)
test_plugin_OBJECTS = $(am_test_plugin_OBJECTS)
test_plugin_DEPENDENCIES = $(am__DEPENDENCIES_1) libprotobuf.la \
- libprotoc.la $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la
+ libprotoc.la -lgtest
am__zcgunzip_SOURCES_DIST = google/protobuf/testing/zcgunzip.cc
@HAVE_ZLIB_TRUE@am_zcgunzip_OBJECTS = \
@HAVE_ZLIB_TRUE@ google/protobuf/testing/zcgunzip.$(OBJEXT)
@@ -2346,9 +2346,9 @@ GOOGLEMOCK_BUILD_DIR = ../third_party/googletest/googl
GOOGLETEST_SRC_DIR = $(srcdir)/../third_party/googletest/googletest
GOOGLEMOCK_SRC_DIR = $(srcdir)/../third_party/googletest/googlemock
protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_test_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include \
-I$(GOOGLEMOCK_SRC_DIR)/include
@@ -2446,9 +2446,9 @@ nodist_protobuf_test_SOURCES = $(protoc_outputs)
# Run cpp_unittest again with PROTOBUF_TEST_NO_DESCRIPTORS defined.
protobuf_lazy_descriptor_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la \
libprotoc.la \
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_lazy_descriptor_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
-I$(GOOGLETEST_SRC_DIR)/include \
@@ -2475,9 +2475,9 @@ COMMON_LITE_TEST_SOURCES = \
# full runtime and we want to make sure this test builds without full
# runtime.
protobuf_lite_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_lite_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
-I$(GOOGLETEST_SRC_DIR)/include
@@ -2493,9 +2493,9 @@ nodist_protobuf_lite_test_SOURCES = $(protoc_lite_outp
# gtest when building the test internally our memory sanitizer doesn't detect
# memory leaks (don't know why).
protobuf_lite_arena_test_LDADD = $(PTHREAD_LIBS) libprotobuf-lite.la \
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock.la \
- $(GOOGLEMOCK_BUILD_DIR)/lib/libgmock_main.la
+ -lgtest \
+ -lgmock \
+ -lgmock_main
protobuf_lite_arena_test_CPPFLAGS = -I$(GOOGLEMOCK_SRC_DIR)/include \
-I$(GOOGLETEST_SRC_DIR)/include
@@ -2509,7 +2509,7 @@ nodist_protobuf_lite_arena_test_SOURCES = $(protoc_lit
# Test plugin binary.
test_plugin_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la \
- $(GOOGLETEST_BUILD_DIR)/lib/libgtest.la
+ -lgtest
test_plugin_CPPFLAGS = -I$(GOOGLETEST_SRC_DIR)/include
test_plugin_SOURCES = \

View File

@ -0,0 +1,3 @@
Protocol Buffers are a way of encoding structured data in an efficient yet
extensible format. Google uses Protocol Buffers for almost all of its internal
RPC protocols and file formats.

146
devel/protobuf3/pkg-plist Normal file
View File

@ -0,0 +1,146 @@
bin/protoc
include/google/protobuf/any.h
include/google/protobuf/any.pb.h
include/google/protobuf/any.proto
include/google/protobuf/api.pb.h
include/google/protobuf/api.proto
include/google/protobuf/arena.h
include/google/protobuf/arena_impl.h
include/google/protobuf/arenastring.h
include/google/protobuf/arenaz_sampler.h
include/google/protobuf/compiler/code_generator.h
include/google/protobuf/compiler/command_line_interface.h
include/google/protobuf/compiler/cpp/cpp_generator.h
include/google/protobuf/compiler/cpp/file.h
include/google/protobuf/compiler/cpp/generator.h
include/google/protobuf/compiler/cpp/helpers.h
include/google/protobuf/compiler/cpp/names.h
include/google/protobuf/compiler/csharp/csharp_doc_comment.h
include/google/protobuf/compiler/csharp/csharp_generator.h
include/google/protobuf/compiler/csharp/csharp_names.h
include/google/protobuf/compiler/csharp/csharp_options.h
include/google/protobuf/compiler/importer.h
include/google/protobuf/compiler/java/generator.h
include/google/protobuf/compiler/java/java_generator.h
include/google/protobuf/compiler/java/kotlin_generator.h
include/google/protobuf/compiler/java/names.h
include/google/protobuf/compiler/objectivec/objectivec_generator.h
include/google/protobuf/compiler/objectivec/objectivec_helpers.h
include/google/protobuf/compiler/parser.h
include/google/protobuf/compiler/php/php_generator.h
include/google/protobuf/compiler/plugin.h
include/google/protobuf/compiler/plugin.pb.h
include/google/protobuf/compiler/plugin.proto
include/google/protobuf/compiler/python/generator.h
include/google/protobuf/compiler/python/pyi_generator.h
include/google/protobuf/compiler/python/python_generator.h
include/google/protobuf/compiler/ruby/ruby_generator.h
include/google/protobuf/descriptor.h
include/google/protobuf/descriptor.pb.h
include/google/protobuf/descriptor.proto
include/google/protobuf/descriptor_database.h
include/google/protobuf/duration.pb.h
include/google/protobuf/duration.proto
include/google/protobuf/dynamic_message.h
include/google/protobuf/empty.pb.h
include/google/protobuf/empty.proto
include/google/protobuf/endian.h
include/google/protobuf/explicitly_constructed.h
include/google/protobuf/extension_set.h
include/google/protobuf/extension_set_inl.h
include/google/protobuf/field_access_listener.h
include/google/protobuf/field_mask.pb.h
include/google/protobuf/field_mask.proto
include/google/protobuf/generated_enum_reflection.h
include/google/protobuf/generated_enum_util.h
include/google/protobuf/generated_message_bases.h
include/google/protobuf/generated_message_reflection.h
include/google/protobuf/generated_message_tctable_decl.h
include/google/protobuf/generated_message_tctable_impl.h
include/google/protobuf/generated_message_util.h
include/google/protobuf/has_bits.h
include/google/protobuf/implicit_weak_message.h
include/google/protobuf/inlined_string_field.h
include/google/protobuf/io/coded_stream.h
include/google/protobuf/io/gzip_stream.h
include/google/protobuf/io/io_win32.h
include/google/protobuf/io/printer.h
include/google/protobuf/io/strtod.h
include/google/protobuf/io/tokenizer.h
include/google/protobuf/io/zero_copy_stream.h
include/google/protobuf/io/zero_copy_stream_impl.h
include/google/protobuf/io/zero_copy_stream_impl_lite.h
include/google/protobuf/map.h
include/google/protobuf/map_entry.h
include/google/protobuf/map_entry_lite.h
include/google/protobuf/map_field.h
include/google/protobuf/map_field_inl.h
include/google/protobuf/map_field_lite.h
include/google/protobuf/map_type_handler.h
include/google/protobuf/message.h
include/google/protobuf/message_lite.h
include/google/protobuf/metadata.h
include/google/protobuf/metadata_lite.h
include/google/protobuf/parse_context.h
include/google/protobuf/port.h
include/google/protobuf/port_def.inc
include/google/protobuf/port_undef.inc
include/google/protobuf/reflection.h
include/google/protobuf/reflection_internal.h
include/google/protobuf/reflection_ops.h
include/google/protobuf/repeated_field.h
include/google/protobuf/repeated_ptr_field.h
include/google/protobuf/service.h
include/google/protobuf/source_context.pb.h
include/google/protobuf/source_context.proto
include/google/protobuf/struct.pb.h
include/google/protobuf/struct.proto
include/google/protobuf/stubs/bytestream.h
include/google/protobuf/stubs/callback.h
include/google/protobuf/stubs/casts.h
include/google/protobuf/stubs/common.h
include/google/protobuf/stubs/hash.h
include/google/protobuf/stubs/logging.h
include/google/protobuf/stubs/macros.h
include/google/protobuf/stubs/map_util.h
include/google/protobuf/stubs/mutex.h
include/google/protobuf/stubs/once.h
include/google/protobuf/stubs/platform_macros.h
include/google/protobuf/stubs/port.h
include/google/protobuf/stubs/status.h
include/google/protobuf/stubs/stl_util.h
include/google/protobuf/stubs/stringpiece.h
include/google/protobuf/stubs/strutil.h
include/google/protobuf/stubs/template_util.h
include/google/protobuf/text_format.h
include/google/protobuf/timestamp.pb.h
include/google/protobuf/timestamp.proto
include/google/protobuf/type.pb.h
include/google/protobuf/type.proto
include/google/protobuf/unknown_field_set.h
include/google/protobuf/util/delimited_message_util.h
include/google/protobuf/util/field_comparator.h
include/google/protobuf/util/field_mask_util.h
include/google/protobuf/util/json_util.h
include/google/protobuf/util/message_differencer.h
include/google/protobuf/util/time_util.h
include/google/protobuf/util/type_resolver.h
include/google/protobuf/util/type_resolver_util.h
include/google/protobuf/wire_format.h
include/google/protobuf/wire_format_lite.h
include/google/protobuf/wrappers.pb.h
include/google/protobuf/wrappers.proto
lib/libprotobuf-lite.a
lib/libprotobuf-lite.so
lib/libprotobuf-lite.so.32
lib/libprotobuf-lite.so.32.0.%%PATCH_VERSION%%
lib/libprotobuf.a
lib/libprotobuf.so
lib/libprotobuf.so.32
lib/libprotobuf.so.32.0.%%PATCH_VERSION%%
lib/libprotoc.a
lib/libprotoc.so
lib/libprotoc.so.32
lib/libprotoc.so.32.0.%%PATCH_VERSION%%
libdata/pkgconfig/protobuf-lite.pc
libdata/pkgconfig/protobuf.pc