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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions