Files
termux-packages/packages/protobuf-static/build.sh
2025-05-03 16:40:37 +00:00

42 lines
1.5 KiB
Bash

TERMUX_PKG_HOMEPAGE=https://github.com/protocolbuffers/protobuf
TERMUX_PKG_DESCRIPTION="Protocol buffers C++ library (static)"
# utf8_range is licensed under MIT
TERMUX_PKG_LICENSE="BSD 3-Clause, MIT"
TERMUX_PKG_LICENSE_FILE="
LICENSE
third_party/utf8_range/LICENSE
"
TERMUX_PKG_MAINTAINER="@termux"
# Please align the version and revision with `libprotobuf` package.
TERMUX_PKG_VERSION=30.0
TERMUX_PKG_REVISION=3
TERMUX_PKG_SRCURL=https://github.com/protocolbuffers/protobuf/archive/v${TERMUX_PKG_VERSION}.tar.gz
TERMUX_PKG_SHA256=9df0e9e8ebe39f4fbbb9cf7db3d811287fe3616b2f191eb2bf5eaa12539c881f
TERMUX_PKG_AUTO_UPDATE=false
TERMUX_PKG_DEPENDS="abseil-cpp, libc++, zlib"
TERMUX_PKG_BREAKS="libprotobuf"
TERMUX_PKG_CONFLICTS="libprotobuf, protobuf-dev"
TERMUX_PKG_NO_STATICSPLIT=true
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
-Dprotobuf_ABSL_PROVIDER=package
-Dprotobuf_BUILD_TESTS=OFF
-DBUILD_SHARED_LIBS=OFF
-DCMAKE_INSTALL_LIBDIR=lib
"
termux_step_post_get_source() {
# Version guard
local ver_e=${TERMUX_PKG_VERSION#*:}
local ver_x=$(. $TERMUX_SCRIPTDIR/packages/libprotobuf/build.sh; echo ${TERMUX_PKG_VERSION#*:})
if [ "${ver_e}" != "${ver_x}" ]; then
termux_error_exit "Version mismatch between libprotobuf and protobuf-static."
fi
}
termux_step_post_make_install() {
# Copy lib/*.cmake to opt/protobuf-cmake/static for future use
mkdir -p $TERMUX_PREFIX/opt/protobuf-cmake/static
cp $TERMUX_PREFIX/lib/cmake/protobuf/protobuf-targets{,-release}.cmake \
$TERMUX_PREFIX/opt/protobuf-cmake/static/
}