mirror of
https://github.com/ivabus/pantry
synced 2024-11-10 10:35:17 +03:00
b8aea925e0
closes #5393
50 lines
1.4 KiB
YAML
50 lines
1.4 KiB
YAML
distributable:
|
|
url: https://github.com/protocolbuffers/protobuf/archive/refs/tags/v{{version.raw}}.tar.gz
|
|
strip-components: 1
|
|
|
|
versions:
|
|
github: protocolbuffers/protobuf
|
|
|
|
dependencies:
|
|
zlib.net: ^1
|
|
abseil.io: '>=20230800<20230900' # FIXME: how? it links to e.g. libabsl_bad_any_cast_impl.so.2308.0.0
|
|
|
|
build:
|
|
dependencies:
|
|
cmake.org: ^3
|
|
working-directory: build
|
|
script: |
|
|
cmake .. $ARGS
|
|
make --jobs {{ hw.concurrency }} install
|
|
env:
|
|
linux:
|
|
# likely needs bumping to an unreleased abseil.io version
|
|
# ld.lld: error: undefined reference due to --no-allow-shlib-undefined: absl::lts_20240116::log_internal::LogMessage& absl::lts_20240116::log_internal::LogMessage::operator<<<int, 0>(int const&)
|
|
LDFLAGS: $LDFLAGS -Wl,--allow-shlib-undefined
|
|
ARGS:
|
|
- -Dprotobuf_BUILD_LIBPROTOC=ON
|
|
- -Dprotobuf_BUILD_SHARED_LIBS=ON
|
|
- -Dprotobuf_INSTALL_EXAMPLES=OFF
|
|
- -Dprotobuf_BUILD_TESTS=OFF
|
|
- -DCMAKE_INSTALL_PREFIX={{prefix}}
|
|
- -DCMAKE_BUILD_TYPE=Release
|
|
- -Dprotobuf_ABSL_PROVIDER=package
|
|
- -DCMAKE_PREFIX_PATH={{deps.abseil.io.prefix}}
|
|
|
|
provides:
|
|
- bin/protoc
|
|
|
|
test:
|
|
script: |
|
|
mv $FIXTURE test.proto
|
|
protoc test.proto --cpp_out=.
|
|
fixture: |
|
|
syntax = "proto3";
|
|
package test;
|
|
message TestCase {
|
|
string name = 4;
|
|
}
|
|
message Test {
|
|
repeated TestCase case = 1;
|
|
}
|