59 lines
1.9 KiB
Bash
59 lines
1.9 KiB
Bash
pkgname=protobuf
|
|
pkgver=31.1
|
|
pkgdesc="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
|
|
homepage="https://protobuf.dev/"
|
|
license=("BSD")
|
|
depends=(abseil-cpp zlib)
|
|
_patches=("${pkgname}-30.0-findJsonCpp.patch")
|
|
_patch_sums=("e3212111ada7f0a9dba717c70a9257b366a9cb6dfecfbcb67cf76645dcecf653cfb23b99ac394be16fa9c3baa8439be59ef5fa64631f31263da6c82c875665a5")
|
|
sources=("${pkgname}-${pkgver}.tar.gz"
|
|
"FindJsonCpp.cmake"
|
|
"${_patches[@]}"
|
|
)
|
|
urls=("https://github.com/protocolbuffers/protobuf/releases/download/v${pkgver}/${sources[0]}"
|
|
"FindJsonCpp.cmake"
|
|
"${_patches[@]}"
|
|
)
|
|
sha512sums=("5bf730e37183defcb29cf4831128f536ad8bcdce2b2b46b297d95f3de4a037b9ff3b6c57df66a039256dcefd828ba9d43c32b01a7a82aa5c881a9ae12cadb643"
|
|
"4a824ac0a73eebf622f999c4a78add515fea92eb44e6a1bc754343567e747f5258ca0d1c600644c67691583779a9cad814a6daf983e666c389fcaa90a2ec0aa6"
|
|
"${_patch_sums[@]}"
|
|
)
|
|
|
|
src_prepare() {
|
|
tar -xf ${distdir}/${sources[0]} --strip-components=1
|
|
for _patch in ${_patches[@]}; do
|
|
patch -p1 -i ${filedir}/${_patch}
|
|
done
|
|
cp "${filedir}/FindJsonCpp.cmake" cmake
|
|
}
|
|
|
|
src_build() {
|
|
local cmake_args=(
|
|
-D CMAKE_BUILD_TYPE=release
|
|
-D CMAKE_INSTALL_PREFIX=/usr
|
|
-D protobuf_BUILD_CONFORMANCE=no
|
|
-D protobuf_BUILD_LIBPROTOC=yes
|
|
-D protobuf_BUILD_LIBUPB=yes
|
|
-D protobuf_BUILD_PROTOBUF_BINARIES=yes
|
|
-D protobuf_BUILD_PROTOC_BINARIES=yes
|
|
-D protobuf_BUILD_SHARED_LIBS="yes"
|
|
-D protobuf_BUILD_TESTS=no
|
|
-D protobuf_DISABLE_RTTI="no"
|
|
-D protobuf_INSTALL="yes"
|
|
-D protobuf_TEST_XML_OUTDIR=no
|
|
-D protobuf_WITH_ZLIB=yes
|
|
-D protobuf_VERBOSE=no
|
|
-D CMAKE_MODULE_PATH="cmake"
|
|
-D protobuf_LOCAL_DEPENDENCIES_ONLY="yes"
|
|
)
|
|
cmake -B build "${cmake_args[@]}"
|
|
cmake --build build
|
|
}
|
|
|
|
src_install() {
|
|
DESTDIR="$pkgdir" cmake --install build
|
|
install -vDm644 editors/proto.vim -t "${pkgdir}"/usr/share/vim/vimfiles/syntax
|
|
}
|
|
|
|
# vim:ft=sh syn=sh et sw=2:
|