From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 07 Nov 2025 09:53:48 +0100 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vHIE8-00GF5M-0f for lore@lore.pengutronix.de; Fri, 07 Nov 2025 09:53:48 +0100 Received: from localhost ([127.0.0.1] helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1vHIE7-0004ib-P3; Fri, 07 Nov 2025 09:53:47 +0100 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1vHIDl-00040M-9D; Fri, 07 Nov 2025 09:53:25 +0100 Received: from dude05.red.stw.pengutronix.de ([2a0a:edc0:0:1101:1d::54]) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vHIDl-007V6B-0C; Fri, 07 Nov 2025 09:53:25 +0100 Received: from mol by dude05.red.stw.pengutronix.de with local (Exim 4.98.2) (envelope-from ) id 1vHIDl-00000009GbK-037O; Fri, 07 Nov 2025 09:53:25 +0100 From: Michael Olbrich To: ptxdist@pengutronix.de Date: Fri, 7 Nov 2025 09:53:24 +0100 Message-ID: <20251107085324.2208759-1-m.olbrich@pengutronix.de> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251028143921.512916-2-s.pueschel@pengutronix.de> References: <20251028143921.512916-2-s.pueschel@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: Re: [ptxdist] [APPLIED] protobuf: version bump 3.7.1 -> 33.0 X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: =?UTF-8?q?Sven=20P=C3=BCschel?= Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false Thanks, applied as 6077d64c4396ed6466d662553f61dc519ad4cd08. Michael [sent from post-receive hook] On Fri, 07 Nov 2025 09:53:24 +0100, Sven Püschel wrote: > protobuf now uses bazel as it's primary build system, but also provides > a CMake build system. As PTXdist doesn't support bazel, use CMake. > > Also protobuf now depends on the abseil-cpp library. But it doesn't > depend on the host protoc executable anymore, as it's only required > when tests or examples are built [1]. > > Compiling the protoc binary also needs libupb to be enabled, as the > compilation otherwise fails. Therefore it is enabled on the host side. > > Protobuf now also depends on a UTF-8 Range library. This previously had > it's own repository, but is now developed inside of the protobuf > repository [2]. As the library is probably only used by protobuf and > has to keep in sync with the protobuf sources, avoid the effort of > separating it into a separate rule. > > [1] https://github.com/protocolbuffers/protobuf/blob/a79f2d2e9fadd75e94f3fe40a0399bf0a5d90551/CMakeLists.txt#L317-L320 > [2] https://github.com/protocolbuffers/utf8_range/blob/1d1ea7e3fedf482d4a12b473c1ed25fe0f371a45/README.md?plain=1#L1-L4 > > Signed-off-by: Sven Püschel > Message-Id: <20251028143921.512916-2-s.pueschel@pengutronix.de> > [mol: keep HOST_PROTOBUF so that users will find protoc] > Signed-off-by: Michael Olbrich > > diff --git a/patches/protobuf-all-3.7.1/autogen.sh b/patches/protobuf-all-3.7.1/autogen.sh > deleted file mode 120000 > index 9f8a4cb7ddcb..000000000000 > --- a/patches/protobuf-all-3.7.1/autogen.sh > +++ /dev/null > @@ -1 +0,0 @@ > -../autogen.sh > \ No newline at end of file > diff --git a/rules/host-protobuf.in b/rules/host-protobuf.in > index 00de2ad253a8..6c48438c7ad0 100644 > --- a/rules/host-protobuf.in > +++ b/rules/host-protobuf.in > @@ -2,4 +2,6 @@ > > config HOST_PROTOBUF > tristate > + select HOST_ABSEIL_CPP > + select HOST_CMAKE > default y if ALLYES > diff --git a/rules/host-protobuf.make b/rules/host-protobuf.make > index 862aa4c7a033..7a205018f1ad 100644 > --- a/rules/host-protobuf.make > +++ b/rules/host-protobuf.make > @@ -15,14 +15,23 @@ HOST_PACKAGES-$(PTXCONF_HOST_PROTOBUF) += host-protobuf > # Prepare > # ---------------------------------------------------------------------------- > > -# > -# autoconf > -# > -HOST_PROTOBUF_CONF_TOOL := autoconf > +HOST_PROTOBUF_CONF_TOOL := cmake > HOST_PROTOBUF_CONF_OPT := \ > - $(HOST_AUTOCONF) \ > - --disable-64bit-solaris \ > - --disable-static \ > - --without-zlib > + $(HOST_CMAKE_OPT) \ > + -Dprotobuf_BUILD_CONFORMANCE=OFF \ > + -Dprotobuf_BUILD_EXAMPLES=OFF \ > + -Dprotobuf_BUILD_LIBPROTOC=OFF \ > + -Dprotobuf_BUILD_LIBUPB=ON \ > + -Dprotobuf_BUILD_PROTOBUF_BINARIES=ON \ > + -Dprotobuf_BUILD_PROTOC_BINARIES=ON \ > + -Dprotobuf_BUILD_SHARED_LIBS=OFF \ > + -Dprotobuf_BUILD_TESTS=OFF \ > + -Dprotobuf_DISABLE_RTTI=OFF \ > + -Dprotobuf_FORCE_FETCH_DEPENDENCIES=OFF \ > + -Dprotobuf_INSTALL=ON \ > + -Dprotobuf_LOCAL_DEPENDENCIES_ONLY=ON \ > + -Dprotobuf_WITH_ZLIB=OFF \ > + -Dutf8_range_ENABLE_INSTALL=ON \ > + -Dutf8_range_ENABLE_TESTS=OFF > > # vim: syntax=make > diff --git a/rules/protobuf.in b/rules/protobuf.in > index 667c6404db24..050324e8379c 100644 > --- a/rules/protobuf.in > +++ b/rules/protobuf.in > @@ -2,11 +2,14 @@ > > menuconfig PROTOBUF > tristate > + select ABSEIL_CPP > select LIBC_M > select LIBC_PTHREAD > select GCCLIBS_CXX > select GCCLIBS_GCC_S > + # needed to provide protoc > select HOST_PROTOBUF > + select HOST_CMAKE > select ZLIB if PROTOBUF_ZLIB > prompt "protobuf " > help > diff --git a/rules/protobuf.make b/rules/protobuf.make > index f66811b26ed3..b99943141cd7 100644 > --- a/rules/protobuf.make > +++ b/rules/protobuf.make > @@ -14,29 +14,39 @@ PACKAGES-$(PTXCONF_PROTOBUF) += protobuf > # > # Paths and names > # > -PROTOBUF_VERSION := 3.7.1 > -PROTOBUF_MD5 := cda6ae370a5df941f8aa837c8a0292ba > -PROTOBUF := protobuf-all-$(PROTOBUF_VERSION) > +PROTOBUF_VERSION := 33.0 > +PROTOBUF_MD5 := 936b48fdf816b0341c74ba73a42348c0 > +PROTOBUF := protobuf-$(PROTOBUF_VERSION) > PROTOBUF_SUFFIX := tar.gz > PROTOBUF_URL := https://github.com/google/protobuf/releases/download/v$(PROTOBUF_VERSION)/$(PROTOBUF).$(PROTOBUF_SUFFIX) > PROTOBUF_SOURCE := $(SRCDIR)/$(PROTOBUF).$(PROTOBUF_SUFFIX) > PROTOBUF_DIR := $(BUILDDIR)/$(PROTOBUF) > PROTOBUF_LICENSE := BSD-3-Clause > +PROTOBUF_LICENSE_FILES := \ > + file://LICENSE;md5=37b5762e07f0af8c74ce80a8bda4266b > > # ---------------------------------------------------------------------------- > # Prepare > # ---------------------------------------------------------------------------- > > -# > -# autoconf > -# > -PROTOBUF_CONF_TOOL := autoconf > +PROTOBUF_CONF_TOOL := cmake > PROTOBUF_CONF_OPT := \ > - $(CROSS_AUTOCONF_USR) \ > - --disable-64bit-solaris \ > - --disable-static \ > - --$(call ptx/wwo, PTXCONF_PROTOBUF_ZLIB)-zlib \ > - --with-protoc=$(PTXDIST_SYSROOT_HOST)/usr/bin/protoc > + $(CROSS_CMAKE_USR) \ > + -Dprotobuf_BUILD_CONFORMANCE=OFF \ > + -Dprotobuf_BUILD_EXAMPLES=OFF \ > + -Dprotobuf_BUILD_LIBPROTOC=OFF \ > + -Dprotobuf_BUILD_LIBUPB=OFF \ > + -Dprotobuf_BUILD_PROTOBUF_BINARIES=ON \ > + -Dprotobuf_BUILD_PROTOC_BINARIES=OFF \ > + -Dprotobuf_BUILD_SHARED_LIBS=ON \ > + -Dprotobuf_BUILD_TESTS=OFF \ > + -Dprotobuf_DISABLE_RTTI=OFF \ > + -Dprotobuf_FORCE_FETCH_DEPENDENCIES=OFF \ > + -Dprotobuf_INSTALL=ON \ > + -Dprotobuf_LOCAL_DEPENDENCIES_ONLY=ON \ > + -Dprotobuf_WITH_ZLIB=$(call ptx/onoff, PTXCONF_PROTOBUF_ZLIB) \ > + -Dutf8_range_ENABLE_INSTALL=ON \ > + -Dutf8_range_ENABLE_TESTS=OFF > > # ---------------------------------------------------------------------------- > # Target-Install > @@ -51,6 +61,7 @@ $(STATEDIR)/protobuf.targetinstall: > @$(call install_fixup, protobuf,AUTHOR,"Adrian Baumgarth ") > @$(call install_fixup, protobuf,DESCRIPTION,missing) > > + @$(call install_lib, protobuf, 0, 0, 0644, libutf8_validity) > @$(call install_lib, protobuf, 0, 0, 0644, libprotobuf-lite) > @$(call install_lib, protobuf, 0, 0, 0644, libprotobuf) >