mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-05-13 22:04:37 +02:00
119 lines
2.9 KiB
Text
119 lines
2.9 KiB
Text
# Contributor: Sheila Aman <sheila@vulpine.house>
|
|
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
|
|
pkgname=protobuf
|
|
pkgver=29.4
|
|
pkgrel=0
|
|
pkgdesc="Library for extensible, efficient structure packing"
|
|
url="https://github.com/protocolbuffers/protobuf"
|
|
arch="all"
|
|
license="BSD-3-Clause"
|
|
depends="
|
|
protoc=$pkgver-r$pkgrel
|
|
libprotoc=$pkgver-r$pkgrel
|
|
libprotobuf=$pkgver-r$pkgrel
|
|
libprotobuf-lite=$pkgver-r$pkgrel
|
|
"
|
|
depends_dev="
|
|
protoc=$pkgver-r$pkgrel
|
|
zlib-dev
|
|
"
|
|
makedepends="
|
|
$depends_dev
|
|
abseil-cpp-dev
|
|
cmake
|
|
samurai
|
|
"
|
|
checkdepends="gtest-dev"
|
|
subpackages="
|
|
$pkgname-dev
|
|
$pkgname-vim::noarch
|
|
protoc
|
|
libprotoc
|
|
libprotobuf
|
|
libprotobuf-lite
|
|
"
|
|
source="$pkgname-$pkgver.tar.gz::https://github.com/protocolbuffers/protobuf/archive/refs/tags/v$pkgver.tar.gz
|
|
fix-tests.patch
|
|
fix-upb-linkarray.patch
|
|
soversion.patch
|
|
"
|
|
|
|
# fails some
|
|
case "$CARCH" in
|
|
armhf) options="$options !check" ;;
|
|
esac
|
|
|
|
build() {
|
|
export CFLAGS="$CFLAGS -DNDEBUG -O2 -flto=auto"
|
|
export CXXFLAGS="$CXXFLAGS -DNDEBUG -O2 -flto=auto -Wno-deprecated-declarations"
|
|
|
|
cmake -B build -G Ninja \
|
|
-DCMAKE_BUILD_TYPE=None \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DBUILD_SHARED_LIBS=ON \
|
|
-Dprotobuf_BUILD_TESTS="$(want_check && echo ON || echo OFF)" \
|
|
-Dprotobuf_BUILD_LIBPROTOC=ON \
|
|
-Dprotobuf_ABSL_PROVIDER="package" \
|
|
-Dprotobuf_ALLOW_CCACHE=ON \
|
|
-Dprotobuf_USE_EXTERNAL_GTEST=ON
|
|
cmake --build build
|
|
}
|
|
|
|
check() {
|
|
ctest --test-dir build
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" cmake --install build
|
|
|
|
sed -i \
|
|
-e "/Requires:/s|;| |g" \
|
|
-e "/Requires:/s|::|_|g" \
|
|
"$pkgdir"/usr/lib/pkgconfig/protobuf.pc
|
|
|
|
install -Dm644 editors/proto.vim \
|
|
"$pkgdir"/usr/share/vim/vimfiles/syntax/proto.vim
|
|
}
|
|
|
|
vim() {
|
|
pkgdesc="Vim syntax for $pkgname"
|
|
depends=""
|
|
install_if="$pkgname=$pkgver-r$pkgrel vim"
|
|
|
|
amove usr/share/vim/vimfiles/syntax/proto.vim
|
|
}
|
|
|
|
libprotoc() {
|
|
depends=""
|
|
pkgdesc="Runtime library for Protocol Buffer compiler"
|
|
|
|
amove usr/lib/libprotoc.so.*
|
|
}
|
|
|
|
protoc() {
|
|
depends=""
|
|
pkgdesc="Protocol buffer compiler binary and library"
|
|
|
|
amove usr/bin/protoc*
|
|
}
|
|
|
|
libprotobuf() {
|
|
depends=""
|
|
pkgdesc="Runtime library for C++ users of protocol buffers"
|
|
|
|
amove usr/lib/libprotobuf.so.*
|
|
}
|
|
|
|
lite() {
|
|
depends=""
|
|
pkgdesc="Runtime library for C++ users with 'lite runtime' setting of protocol buffers"
|
|
|
|
amove usr/lib/libprotobuf-lite.so.*
|
|
}
|
|
|
|
sha512sums="
|
|
c888cb9961d58b7fb11a3363ff4d2684605cdd79756712f407ffe5f275569bf69b4370f1d2a0e20775646745cddd41a9b510f1c1981be4e969c9acf0dc2ba734 protobuf-29.4.tar.gz
|
|
f35a076a33766253769fd6b3abdbe9deddfbf9f9f6743c6afb3f1f0d07ab8462c68e0a00549e0b2d5400208585cdab6cdb1ccb904d33cc69c458a06425505da0 fix-tests.patch
|
|
91487cf7f234cdb000b16406b338ce08930370a2bebf94a1552aeee0cd466d839fddeb15af24fde02c19b3904f2d97055f3c006ac1c5c4094dc2972cb8234e99 fix-upb-linkarray.patch
|
|
5ab37a77566a55f1a47287594899e07788afb939586b3249be024945af6cb28c22847b2af2b46a9bd8e497293b650c93d348514f562d271a1498b5e8ca7c612f soversion.patch
|
|
"
|