Patch m4 lib for zetasql to the 1.4.19
- Dominant language
- C++
- Stars
- 685
- Forks
- 185
- PR merge metrics
- No merged PRs in 30d
Description
### Description
The current version of `m4` (v1.4.17) is not compatible with the `ubuntu:22.04` base Docker image. When Bazel attempts to build `ml_metadata_store_server`, it fails with the following error:
```
/root/.cache/bazel/_bazel_root/2b5e54baa61e12f7face76121c87337a/sandbox/processwrapper-sandbox/1/execroot/ml_metadata/external/m4/lib/c-stack.c:55:26: error: missing binary operator before token "("
55 | #elif HAVE_LIBSIGSEGV && SIGSTKSZ < 16384
| ^~~~~~~~
```
The issue appears to stem from Bazel using `m4` version **1.4.17** for `zetasql`, which is incompatible with `ubuntu:22.04`. A newer version of `m4` (v1.4.19) patch for `zetasql` may resolve this issue.
---
### Commands to Reproduce
```
bazel build -c opt --verbose_failures --jobs=6 --action_env=PATH \
--define=grpc_no_ares=true \
//ml_metadata/metadata_store:metadata_store_server \
--cxxopt="-std=c++17" --copt="-w"
```
---
### Environment
* Docker Image: `ubuntu:22.04`
* Bazel Version: `v5.3.0`
* ml-metadata Version: `v1.14.0`
* GCC Versions Tested: `11, 9, 8, 7`
Contributor guide
Assessment
This issue has not been assessed yet.