Skip to content

Patch m4 lib for zetasql to the 1.4.19 #210

@BON4

Description

@BON4

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions