git: ff78a16bf827 - main - devel/protobuf3: Add protobuf3 3.21.12 (copied from protobuf)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 14 Dec 2023 17:03:18 UTC
The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=ff78a16bf827b34df61bc3d37992fb7f9811bb75 commit ff78a16bf827b34df61bc3d37992fb7f9811bb75 Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> AuthorDate: 2023-12-14 16:08:17 +0000 Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> CommitDate: 2023-12-14 17:03:02 +0000 devel/protobuf3: Add protobuf3 3.21.12 (copied from protobuf) - Add PORTSCOUT --- devel/Makefile | 1 + devel/protobuf3/Makefile | 43 ++++++++ devel/protobuf3/distinfo | 3 + devel/protobuf3/files/patch-Makefile.in | 11 +++ devel/protobuf3/files/patch-i386 | 13 +++ devel/protobuf3/files/patch-src-Makefile.in | 124 +++++++++++++++++++++++ devel/protobuf3/pkg-descr | 3 + devel/protobuf3/pkg-plist | 146 ++++++++++++++++++++++++++++ 8 files changed, 344 insertions(+) diff --git a/devel/Makefile b/devel/Makefile index 49c526d70c4a..53c0f40c089b 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -4170,6 +4170,7 @@ SUBDIR += protobuf-c SUBDIR += protobuf-java SUBDIR += protobuf25 + SUBDIR += protobuf3 SUBDIR += prototool SUBDIR += protozero SUBDIR += pructl diff --git a/devel/protobuf3/Makefile b/devel/protobuf3/Makefile new file mode 100644 index 000000000000..c6eeb10d9efd --- /dev/null +++ b/devel/protobuf3/Makefile @@ -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> diff --git a/devel/protobuf3/distinfo b/devel/protobuf3/distinfo new file mode 100644 index 000000000000..b0b2e5326d8a --- /dev/null +++ b/devel/protobuf3/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1674589582 +SHA256 (protobuf-cpp-3.21.12.tar.gz) = 4eab9b524aa5913c6fffb20b2a8abf5ef7f95a80bc0701f3a6dbb4c607f73460 +SIZE (protobuf-cpp-3.21.12.tar.gz) = 4842303 diff --git a/devel/protobuf3/files/patch-Makefile.in b/devel/protobuf3/files/patch-Makefile.in new file mode 100644 index 000000000000..b93039e03270 --- /dev/null +++ b/devel/protobuf3/files/patch-Makefile.in @@ -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 diff --git a/devel/protobuf3/files/patch-i386 b/devel/protobuf3/files/patch-i386 new file mode 100644 index 000000000000..56efb9d86368 --- /dev/null +++ b/devel/protobuf3/files/patch-i386 @@ -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_; diff --git a/devel/protobuf3/files/patch-src-Makefile.in b/devel/protobuf3/files/patch-src-Makefile.in new file mode 100644 index 000000000000..0ffe912b69bf --- /dev/null +++ b/devel/protobuf3/files/patch-src-Makefile.in @@ -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 = \ diff --git a/devel/protobuf3/pkg-descr b/devel/protobuf3/pkg-descr new file mode 100644 index 000000000000..73df6ac90a21 --- /dev/null +++ b/devel/protobuf3/pkg-descr @@ -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. diff --git a/devel/protobuf3/pkg-plist b/devel/protobuf3/pkg-plist new file mode 100644 index 000000000000..d60b9a3c684c --- /dev/null +++ b/devel/protobuf3/pkg-plist @@ -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