Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for M1 macs #143

Open
sandeshbhatjr opened this issue Jan 24, 2022 · 80 comments
Open

Add support for M1 macs #143

sandeshbhatjr opened this issue Jan 24, 2022 · 80 comments

Comments

@sandeshbhatjr
Copy link

sandeshbhatjr commented Jan 24, 2022

When trying to install tfx on a ARM-based M1 Mac, I run into problems with installing ml-metadata which is a dependency. The errors is as follows:

ERROR: Could not find a version that satisfies the requirement ml-metadata==1.6.0 (from versions: 0.12.0.dev0, 0.13.0.dev0, 0.13.1.dev0)
ERROR: No matching distribution found for ml-metadata==1.6.0

Using pip index versions ml-metadata shows no matching distribution. I guess this is because there are no wheels distributed for the ARM based Macs, so I decided to install it from source as suggested on the home page as follows: python setup.py bdist_wheel, with bazel version 5.0.0. This, however, leads to the following error:

INFO: Reading rc options for 'run' from /Users/jogisararamachandrasandeshbhat/Projects/ml-projects/ml-metadata/.bazelrc:
  Inherited 'build' options: --cxxopt=-std=c++17 --incompatible_restrict_string_escapes=false --incompatible_require_linker_input_cc_api=false
ERROR: --incompatible_restrict_string_escapes=false :: Unrecognized option: --incompatible_restrict_string_escapes=false

Is this a bazel version incompatibility?

--
System details:
Hardware: MacBook Pro (14-inch, 2021), Apple M1 Pro, 32 GB RAM
OS: macOS Moneterey 12.1
Bazel: 5.0.0
Python: 3.8.12
pip: 21.3.1

@paulelvers
Copy link

Havin just the same issue. I use miniforge conda.

@BrianSong
Copy link
Collaborator

Hi Sandesh,

The recommend bazel version for ml-metadata is 3.7.2. I wonder could you downgrade your bazel version and give it another try to see if the error persists?

@sandeshbhatjr
Copy link
Author

This is rather tricky cause bazel itself started supporting darwin-arm64 from v4.2.1. With bazelisk, trying the following USE_BAZEL_VERSION=3.7.2 python setup.py bdist_wheel fails because of the following issue: bazelbuild/bazelisk#245. Basically, there is no arm64 version of Bazel < 4.2.1.

There is a probably way to build bazel from source, but anyway- since the main error from last time was the missing option incompatible_restrict_string_escapes and I think this option is being deprecated in later versions of bazel, I tried using the oldest version of bazel I can, i.e, 4.2.1. Doing USE_BAZEL_VERSION=4.2.1 python setup.py bdist_wheel, the build still fails with a whole bunch of errors as follows:

running bdist_wheel
running build
running bazel_build
INFO: SHA256 (https://github.com/pybind/pybind11/archive/v2.4.3.tar.gz) = 1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d
DEBUG: Rule 'pybind11' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d"
DEBUG: Repository pybind11 instantiated at:
  /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/WORKSPACE:118:13: in <toplevel>
Repository rule http_archive defined at:
  /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/bazel_tools/tools/build_defs/repo/http.bzl:336:31: in <toplevel>
WARNING: /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/ml_metadata/proto/BUILD:21:26: in cc_library rule //ml_metadata/proto:metadata_store_proto: target '//ml_metadata/proto:metadata_store_proto' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/ml_metadata/util/BUILD:24:11: in cc_library rule //ml_metadata/util:struct_utils: target '//ml_metadata/util:struct_utils' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/public/BUILD:2020:11: in cc_library rule @com_google_zetasql//zetasql/public:language_options: target '@com_google_zetasql//zetasql/public:language_options' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/ml_metadata/metadata_store/BUILD:56:11: in cc_library rule //ml_metadata/metadata_store:rdbms_metadata_access_object: target '//ml_metadata/metadata_store:rdbms_metadata_access_object' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/common/BUILD:184:11: in cc_library rule @com_google_zetasql//zetasql/common:proto_helper: target '@com_google_zetasql//zetasql/common:proto_helper' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
DEBUG: Rule 'libmysqlclient' indicated that a canonical reproducible form can be obtained by modifying arguments commit = "34f8887af03d022416dd6593de91d0706e57f46b", shallow_since = "1545150882 +0100" and dropping ["tag"]
DEBUG: Repository libmysqlclient instantiated at:
  /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/WORKSPACE:248:22: in <toplevel>
  /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/ml_metadata/workspace.bzl:22:20: in ml_metadata_workspace
  /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/ml_metadata/mysql_configure.bzl:24:23: in mysql_configure
Repository rule new_git_repository defined at:
  /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/bazel_tools/tools/build_defs/repo/git.bzl:186:37: in <toplevel>
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/public/types/BUILD:19:11: in cc_library rule @com_google_zetasql//zetasql/public/types:types: target '@com_google_zetasql//zetasql/public/types:types' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/public/BUILD:65:11: in cc_library rule @com_google_zetasql//zetasql/public:type: target '@com_google_zetasql//zetasql/public:type' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/public/BUILD:1164:11: in cc_library rule @com_google_zetasql//zetasql/public:proto_value_conversion: target '@com_google_zetasql//zetasql/public:proto_value_conversion' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/common/BUILD:336:11: in cc_library rule @com_google_zetasql//zetasql/common:builtin_function_internal: target '@com_google_zetasql//zetasql/common:builtin_function_internal' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/public/BUILD:278:11: in cc_library rule @com_google_zetasql//zetasql/public:simple_catalog: target '@com_google_zetasql//zetasql/public:simple_catalog' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/zetasql/analyzer/BUILD:162:11: in cc_library rule @com_google_zetasql//zetasql/analyzer:resolver: target '@com_google_zetasql//zetasql/analyzer:resolver' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/ml_metadata/metadata_store/BUILD:111:11: in cc_library rule //ml_metadata/metadata_store:query_config_executor: target '//ml_metadata/metadata_store:query_config_executor' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
INFO: Analyzed target //ml_metadata:move_generated_files (95 packages loaded, 9578 targets configured).
INFO: Found 1 target...
ERROR: /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/external/com_google_zetasql/bazel/BUILD:40:15: CcConfigureMakeRule external/com_google_zetasql/bazel/m4/include [for host] failed: (Exit 1): bash failed: error executing command 
  (cd /private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/sandbox/darwin-sandbox/12/execroot/ml_metadata && \
  exec env - \
    PATH=/Users/jogisararamachandrasandeshbhat/Library/Caches/bazelisk/downloads/bazelbuild/bazel-4.2.1-darwin-arm64/bin:/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/bin:/Users/jogisararamachandrasandeshbhat/opt/anaconda3/bin:/Users/jogisararamachandrasandeshbhat/opt/anaconda3/condabin:/Applications/google-cloud-sdk/bin:/Users/jogisararamachandrasandeshbhat/.nvm/versions/node/v16.13.1/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin \
  /bin/bash -c 'function cleanup_function() {
local ecode=$?
if [ $ecode -eq 0 ]; then
cleanup_on_success
else
cleanup_on_failure
fi
}
set -e
function cleanup_on_success() {
printf "rules_foreign_cc: Cleaning temp directories"
  rm -rf $BUILD_TMPDIR $EXT_BUILD_DEPS
}
function cleanup_on_failure() {
printf "\nrules_foreign_cc: Build failed!\nrules_foreign_cc: Keeping temp build directory $BUILD_TMPDIR and dependencies directory $EXT_BUILD_DEPS for debug.\nrules_foreign_cc: Please note that the directories inside a sandbox are still cleaned unless you specify '\''--sandbox_debug'\'' Bazel command line flag.\n\nrules_foreign_cc: Printing build logs:\n\n_____ BEGIN BUILD LOGS _____\n"
cat "$BUILD_LOG"
printf "\n_____ END BUILD LOGS _____\n"
printf "rules_foreign_cc: Build script location: $BUILD_SCRIPT\n"
printf "rules_foreign_cc: Build log location: $BUILD_LOG\n\n"
}
trap "cleanup_function" EXIT
export BUILD_SCRIPT="bazel-out/host/bin/external/com_google_zetasql/bazel/m4/logs/Configure_script.sh"
export BUILD_LOG="bazel-out/host/bin/external/com_google_zetasql/bazel/m4/logs/Configure.log"
touch $BUILD_LOG
$BUILD_SCRIPT &> $BUILD_LOG')
Execution platform: @local_config_platform//:host

Use --sandbox_debug to see verbose messages from the sandbox

rules_foreign_cc: Build failed!
rules_foreign_cc: Keeping temp build directory  and dependencies directory  for debug.
rules_foreign_cc: Please note that the directories inside a sandbox are still cleaned unless you specify '--sandbox_debug' Bazel command line flag.

rules_foreign_cc: Printing build logs:

_____ BEGIN BUILD LOGS _____
Bazel external C/C++ Rules #0.0.8. Building library 'm4'
Environment:______________TMPDIR=/var/folders/z9/qn33rq1d7b9cvzxdsldn_y080000gn/T/
EXT_BUILD_ROOT=/private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/sandbox/darwin-sandbox/12/execroot/ml_metadata
XCODE_VERSION_OVERRIDE=13.2.1.13C100
INSTALLDIR=/private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/sandbox/darwin-sandbox/12/execroot/ml_metadata/bazel-out/host/bin/external/com_google_zetasql/bazel/m4
__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x2
PATH=/private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/sandbox/darwin-sandbox/12/execroot/ml_metadata:/Users/jogisararamachandrasandeshbhat/Library/Caches/bazelisk/downloads/bazelbuild/bazel-4.2.1-darwin-arm64/bin:/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/bin:/Users/jogisararamachandrasandeshbhat/opt/anaconda3/bin:/Users/jogisararamachandrasandeshbhat/opt/anaconda3/condabin:/Applications/google-cloud-sdk/bin:/Users/jogisararamachandrasandeshbhat/.nvm/versions/node/v16.13.1/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin
BUILD_TMPDIR=/var/folders/z9/qn33rq1d7b9cvzxdsldn_y080000gn/T/tmp.go2FcLzX
PWD=/private/var/tmp/_bazel_jogisararamachandrasandeshbhat/db807437c60e300e8932281d2dba72cf/sandbox/darwin-sandbox/12/execroot/ml_metadata
EXT_BUILD_DEPS=/var/folders/z9/qn33rq1d7b9cvzxdsldn_y080000gn/T/tmp.vpjLcQ4t
SHLVL=2
BUILD_LOG=bazel-out/host/bin/external/com_google_zetasql/bazel/m4/logs/Configure.log
BUILD_SCRIPT=bazel-out/host/bin/external/com_google_zetasql/bazel/m4/logs/Configure_script.sh
APPLE_SDK_PLATFORM=MacOSX
APPLE_SDK_VERSION_OVERRIDE=12.1
_=/usr/bin/env
__________________________ln: illegal option -- t
usage: ln [-Ffhinsv] source_file [link_name]
       ln [-Ffhinsv] source_file ... linkname_dir
       link source_file link_name

_____ END BUILD LOGS _____
rules_foreign_cc: Build script location: bazel-out/host/bin/external/com_google_zetasql/bazel/m4/logs/Configure_script.sh
rules_foreign_cc: Build log location: bazel-out/host/bin/external/com_google_zetasql/bazel/m4/logs/Configure.log

Target //ml_metadata:move_generated_files failed to build
INFO: Elapsed time: 12.859s, Critical Path: 0.34s
INFO: 333 processes: 320 internal, 13 darwin-sandbox.
FAILED: Build did NOT complete successfully
FAILED: Build did NOT complete successfully
Traceback (most recent call last):
  File "setup.py", line 120, in <module>
    setup(
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/__init__.py", line 155, in setup
    return distutils.core.setup(**attrs)
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 148, in setup
    return run_commands(dist)
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 163, in run_commands
    dist.run_commands()
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 967, in run_commands
    self.run_command(cmd)
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
    cmd_obj.run()
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 299, in run
    self.run_command('build')
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
    cmd_obj.run()
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/command/build.py", line 135, in run
    self.run_command(cmd_name)
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/Users/jogisararamachandrasandeshbhat/Projects/experimental/ml-metadata/.python_env_files/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
    cmd_obj.run()
  File "setup.py", line 98, in run
    subprocess.check_call(
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/Users/jogisararamachandrasandeshbhat/.nvm/versions/node/v16.13.1/bin/bazel', 'run', '--compilation_mode', 'opt', '--define', 'grpc_no_ares=true', '--verbose_failures', '--macos_minimum_os=10.14', '//ml_metadata:move_generated_files']' returned non-zero exit status 1

@sandeshbhatjr
Copy link
Author

Based on the error log above, I tried building zetasql from their repo and it fails. Perhaps that is the culprit? There's an issue for it here: google/zetasql#80

@BrianSong
Copy link
Collaborator

Thanks for the investigation, sandesh!

Internally, we are discussing about the priority for support M1 Mac. I will come back with more details.

@sandeshbhatjr
Copy link
Author

Thanks. If it helps, the main use case for me is to use with TFX to deploy pipelines on Vortex/AI platform.

copybara-service bot pushed a commit that referenced this issue Mar 3, 2022
Update Bazel settings to support both macos and macos_arm64.
Use the bazel_skylib library for config selects.
Reflect changes in setup.py.

PiperOrigin-RevId: 432116433
@nearKim
Copy link

nearKim commented Mar 5, 2022

Unfortunately, the problem persists after the last commit. The error messages does not appear to have chaged from what @sandeshbhatjr reported. I'm using bazel version 4.2.1.

@BrianSong
Copy link
Collaborator

The entire TF community is current working on support with M1 Mac.

This code change(719202b) is initial and we are currently reviewing it with Apple team. Will update this issue as long as we heard back from Apple team. Thanks!

@stfines-clgx
Copy link

Is there a status update for this?

@BrianSong
Copy link
Collaborator

The POC internally would contact with Apple in June 17. After receiving his updates, I would update here.

@safoinme
Copy link

@BrianSong Any update on this, please?

@htahir1
Copy link

htahir1 commented Jul 11, 2022

Would be awesome to get an update on this @BrianSong :-)

@BrianSong
Copy link
Collaborator

Thanks for following this up! @safoinme @htahir1

I reached out to the POC in late June for his updates regarding the interaction with Apple team. Unfortunately, he said this specific topic was not mentioned/addressed as he planned. This issue is now reassigned to a new TPM who is currently out of office until next week. I will reach out to her as soon as she is back and update any progress I have.

Thanks for being patient with me.

@dvaldivia
Copy link

problem persist with Bazel 5.2.0

➜ bazel --version
bazel 5.2.0

@BrianSong
Copy link
Collaborator

BrianSong commented Aug 5, 2022

I am back with some updates.

Our new TPM is working closely with Apple team and the TensorFlow community is working together for the M1 Mac support. In terms of prioritization, it seems that TensorFlow would be landed first and then it would be MLMD/TFX. But our TPM is scheduling a possible working session with Apple team for answering questions and review code change like 719202b.

Will update this thread if we have any new progress. Thanks for being patient!

@htahir1
Copy link

htahir1 commented Sep 24, 2022

I am wondering whether there has been an update on this issue. So struggling with Mac M1 here

@amerberg
Copy link

amerberg commented Sep 26, 2022

I've also been trying to make this work. I was able to work around the error in #143 (comment) by rewriting the calls to ln without -t (which isn't supported by MacOS). However, doing so gives me this error:

ERROR: /private/var/tmp/_bazel_equilibrium/30c23ea65bc29cf1417ebea094fdb8f6/external/zlib/BUILD.bazel:31:11: Compiling adler32.c failed: undeclared inclusion(s) in rule '@zlib//:zlib':
this rule is missing dependency declarations for the following files included by 'adler32.c':
  '/Library/Developer/CommandLineTools/usr/lib/clang/14.0.0/include/stddef.h'
  '/Library/Developer/CommandLineTools/usr/lib/clang/14.0.0/include/__stddef_max_align_t.h'
  '/Library/Developer/CommandLineTools/usr/lib/clang/14.0.0/include/limits.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/OSByteOrder.h'
  '/Library/Developer/CommandLineTools/usr/lib/clang/14.0.0/include/stdint.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/arch.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_char.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_short.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_caddr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_blkcnt_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_blksize_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_gid_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_in_addr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_in_port_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ino_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ino64_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_key_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_nlink_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_clock_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_time_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_useconds_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_suseconds_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_def.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_setsize.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_set.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_clr.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_zero.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_isset.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_copy.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_cond_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_condattr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_mutex_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_mutexattr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_once_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_rwlock_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_rwlockattr_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_key_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fsblkcnt_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fsfilcnt_t.h'
  '/Library/Developer/CommandLineTools/usr/lib/clang/14.0.0/include/stdarg.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/strings.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h'
  '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h'
Target //ml_metadata:move_generated_files failed to build

@BrianSong
Copy link
Collaborator

Hi, our TPM is still working on scheduling the working session with Apple team regarding the M1 Mac support for MLMD. I have reached out to her again and will update the thread as long as I hear any update from her.

@dvaldivia
Copy link

@BrianSong what is missing and what can be contributed?

@htahir1
Copy link

htahir1 commented Oct 2, 2022

I'd also be interested to contribute. @BrianSong would be happy to hear whats missing

@BrianSong
Copy link
Collaborator

Thanks for the offering! The missing part is the review and testing for the code change: 719202b. This code change mimics the Apple team patch for supporting M1 Mac in tfx-bsl

However, since the internal team now does not have M1 Mac to test and verify it, we are replying on the Apple team's help.

@htahir1
Copy link

htahir1 commented Oct 8, 2022

@BrianSong I'm not quite sure I understand - that commit seems already to be merged in, so what is there to test?

At ZenML, we have many a few Mac M1s you could use to test and verify this, and scheduling a working session with us would be easier. If you're interested please let me know at hamza@zenml.io and we can schedule it :-). We are very keen to get this supported asap

@BrianSong
Copy link
Collaborator

Hi @htahir1, thanks for offering this! The review, or I should say, the guidance for how to add M1 Mac Support under current infrastructure is what we need from the Apple team. I have followed up with our TPM again and hope she could push this to happen soon.

@nicholasjng
Copy link

Just my two cents: I have (unsuccessfully) tried building ml_metadata with a contemporary Bazel (5.2/3), and the various failures that I saw there indicate to me that:

  • Dependencies are too old: Specifically the pinned protobuf version is from a time before Apple Silicon, and therefore might not build correctly. Bumping to a newer one (I tried 3.20.3 IIRC) leads to API mismatches, so this is the first major blocker already.
  • As a consequence of these old deps, some other libs (e.g. bazel-skylib) being pulled in do not have the necessary definitions for M1 Bazel support due to their age. This can be mitigated by explicitly importing newer pins of those build defs into the WORKSPACE.
  • Last but not least, the bazelrc contains flags that are not supported anymore in latest Bazel. Removing (or commenting) these might help too.

Bazel fully supports M1 with the latest build defs, so maybe it's time to migrate some of those dependencies (most of them are 16-18 months old) to newer versions if you want to support M1.

@htahir1
Copy link

htahir1 commented Oct 21, 2022

@BrianSong Happy to test out @nicholasjng 's suggestions on our mac m1's ;-)! If you would be willing to schedule a meeting

@nicholasjng
Copy link

Good news - I have successfully built M1 wheels locally for both Python 3.9 and 3.10 on my machine, using Bazel 5.3.2. (Shoutout to @aliabbasjaffri for help with debugging.)

The changes needed to accomplish this are mostly portable - I did have to modify a few build files in the process to build a valid metadata_store_extension.so object, and also patch out TLS1.3 cipher suites from the mariadb-connector-c repo.

The wheels are untested, but imports in the Python interpreter are working properly, which is a good first sign. I bumped the following dependencies in the process:

absl lts_20210324.2 -> lts_20220623.1
grpc 1.33.2 -> 1.50.0
pybind11 2.4.3 -> 2.10.0
pybind11_bazel -> current HEAD
zetasql -> current HEAD
mariadb-c-connector v3.0.8-release -> v3.3.2

I eliminated protobuf and zlib from the main workspace, as grpc pulls them in transitively. So these deps implicitly get pinned to their respective values in the chosen grpc version, which made sense to me.

I will write up the process here soonish when I get the time, and PR my changes if there's interest.

@BrianSong
Copy link
Collaborator

Thanks @nicholasjng, this sounds great! Please feel free to send out PR for review. I will also meet with Apple team next week to get recommendations on build & test configuration, bazelrc config / setup.py settings and "future proofing" of requirements for compatibility.

@tangm
Copy link

tangm commented Dec 14, 2023

@gerilya This might be cold comfort but I managed to get access to a cloud, bare M2 Pro machine and successfully built the wheel. The machine was on ventura 13.5, xcode-select 2397, xcode 14.3.1 and python 3.9.6, so I don't think it's an issue with the m2 chip or mac build tools.

The minimum steps were:

  • Install homebrew
  • Install bazelisk from brew
  • Clone nicholasjng's repo and m1fix branch
  • Create venv and activate, upgrade pip and install wheel
  • Install cmake dmg from https://cmake.org/download/ , and add it to the shell with sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install
  • export BAZEL_USE_VERSION=5.3.2
  • python setup.py bdist

I thought it might be cmake and installed using brew too after unlinking, but that also built successfully

FWIW I checked the logs in the bazel tmp on that box, and it looks like eaccess shouldn't be detected.

(.venv) m1@e74a1d8e-9e0c-46e8-8e32-d03fa5610b5a _bazel_m1 % grep eaccess -R *
f91627a07770bbae192d6e3a8b3e74fa/execroot/ml_metadata/bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/rules_foreign_cc/toolchains/make_tool_foreign_cc/BootstrapGNUMake.log:checking for eaccess... no
f91627a07770bbae192d6e3a8b3e74fa/execroot/ml_metadata/bazel-out/host/bin/external/rules_foreign_cc/toolchains/make_tool_foreign_cc/BootstrapGNUMake.log:checking for eaccess... no

I can only guess that there's something in your existing build setup 😞

@gerilya
Copy link

gerilya commented Dec 14, 2023

Thank you very much, @tangm!
I am on Sonoma 14.1, which I suspect is the main problem, but I will try installing cmake and building with BAZEL_USE_VERSION=5.3.2. Can't blame a guy for trying, right?
All in all, I am happy everyone can build it but me :) Hopefully, it will speed up the release of official package.
I just need to have ml-metadata installed one way or another since it's a dependency for TFX.

@tangm
Copy link

tangm commented Dec 14, 2023

@gerilya Happy to help! I had another crack at it on the m2 pro machine and managed to make the build fail after upgrading from ventura 13.5 to sonoma 14.2, though it failed when building icu with some mysterious ar error. However, I did manage to make it work after upgrading Xcode, which affects the version of clang, so that could be something to try. For ref, after upgrading Xcode, the versions were:

(.venv2) m1@e74a1d8e-9e0c-46e8-8e32-d03fa5610b5a ~ % clang --version         
Apple clang version 15.0.0 (clang-1500.0.40.1)

when it was previously 14.0.3 on xcode 14.3.1

@gerilya
Copy link

gerilya commented Dec 14, 2023

@tangm well, guess what? I did not have Xcode installed at all:

xcodebuild --v
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

I have installed XCode from the App Store and the build (my branch) has completed successfully.
Thank you very much for all of your help!

@rcrowe-google
Copy link
Collaborator

I just want to say thank you for working on this! I think there are many folks in the community that will benefit from the progress that you're making.

@gerilya
Copy link

gerilya commented Dec 17, 2023

Just in case you guys want to upgrade

platforms from 0.0.6 to 0.0.8
rules_foreign_cc from 0.9.0 to 0.10.1
com_google_absl from lts_20230125.3 to LTS 20230802.1

I've cleaned up my previous PR to include just that.
This builds fine (albeit with warnings) on my M2-based Mac.

@tarilabs
Copy link
Contributor

Hi @gerilya , if that helps, I'm on M2 mac too (Ventura 13.6.3)

I've used commands:

bazel clean --expunge
export USE_BAZEL_VERSION=6.4.0
python setup.py bdist_wheel

while checking out your PR branch at 09bc9e92927387b05d76288fb50be7365f0c7ae7

but the build fails with errors:

HEAD is now at 09bc9e9 cleanup3
ml-metadata % bazel clean --expunge
export USE_BAZEL_VERSION=6.4.0
python setup.py bdist_wheel
2023/12/17 18:29:17 Downloading https://releases.bazel.build/7.0.0/release/bazel-7.0.0-darwin-arm64...
Downloading: 51 MB out of 51 MB (100%) 
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
INFO: Starting clean (this may take a while). Consider using --async if the clean takes more than several minutes.
/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/dist.py:314: InformationOnly: Normalizing '1.15.0.dev' to '1.15.0.dev0'
  self.metadata.version = self._normalize_version(self.metadata.version)
running bdist_wheel
running build
running bazel_build
2023/12/17 18:29:36 Downloading https://releases.bazel.build/6.4.0/release/bazel-6.4.0-darwin-arm64...
Downloading: 48 MB out of 48 MB (100%) 
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
DEBUG: Rule 'pybind11' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "111014b516b625083bef701df7880f78c2243835abdb263065b6b59b960b6bad"
DEBUG: Repository pybind11 instantiated at:
  /Users/mmortari/git/ml-metadata/WORKSPACE:115:13: in <toplevel>
Repository rule http_archive defined at:
  /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/bazel_tools/tools/build_defs/repo/http.bzl:372:31: in <toplevel>
DEBUG: Rule 'com_google_absl' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "0320586856674d16b0b7a4d4afb22151bdc798490bb7f295eddd8f6a62b46fea"
DEBUG: Repository com_google_absl instantiated at:
  /Users/mmortari/git/ml-metadata/WORKSPACE:40:13: in <toplevel>
Repository rule http_archive defined at:
  /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/bazel_tools/tools/build_defs/repo/http.bzl:372:31: in <toplevel>
DEBUG: Rule 'libmysqlclient' indicated that a canonical reproducible form can be obtained by modifying arguments commit = "1bd8c8bf39c259a1b1713974684e24d168a09d13" and dropping ["tag"]
DEBUG: Repository libmysqlclient instantiated at:
  /Users/mmortari/git/ml-metadata/WORKSPACE:226:22: in <toplevel>
  /Users/mmortari/git/ml-metadata/ml_metadata/workspace.bzl:22:20: in ml_metadata_workspace
  /Users/mmortari/git/ml-metadata/ml_metadata/mysql_configure.bzl:24:23: in mysql_configure
Repository rule git_repository defined at:
  /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/bazel_tools/tools/build_defs/repo/git.bzl:181:33: in <toplevel>
WARNING: /Users/mmortari/git/ml-metadata/ml_metadata/util/BUILD:24:11: in cc_library rule //ml_metadata/util:struct_utils: target '//ml_metadata/util:struct_utils' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/mmortari/git/ml-metadata/ml_metadata/proto/BUILD:21:26: in cc_library rule //ml_metadata/proto:metadata_store_proto: target '//ml_metadata/proto:metadata_store_proto' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/mmortari/git/ml-metadata/ml_metadata/proto/BUILD:70:26: in cc_library rule //ml_metadata/proto:metadata_source_proto: target '//ml_metadata/proto:metadata_source_proto' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/mmortari/git/ml-metadata/ml_metadata/metadata_store/BUILD:60:11: in cc_library rule //ml_metadata/metadata_store:rdbms_metadata_access_object: target '//ml_metadata/metadata_store:rdbms_metadata_access_object' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: Download from http://mirror.bazel.build/pypi.python.org/packages/source/s/six/six-1.16.0.tar.gz failed: class java.io.FileNotFoundException GET returned 404 Not Found
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/common/BUILD:182:11: in cc_library rule @com_google_zetasql//zetasql/common:proto_helper: target '@com_google_zetasql//zetasql/common:proto_helper' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/public/BUILD:1622:11: in cc_library rule @com_google_zetasql//zetasql/public:language_options: target '@com_google_zetasql//zetasql/public:language_options' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/public/types/BUILD:19:11: in cc_library rule @com_google_zetasql//zetasql/public/types:types: target '@com_google_zetasql//zetasql/public/types:types' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/public/BUILD:51:11: in cc_library rule @com_google_zetasql//zetasql/public:type: target '@com_google_zetasql//zetasql/public:type' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/public/BUILD:972:11: in cc_library rule @com_google_zetasql//zetasql/public:proto_value_conversion: target '@com_google_zetasql//zetasql/public:proto_value_conversion' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/common/BUILD:316:11: in cc_library rule @com_google_zetasql//zetasql/common:builtin_function_internal: target '@com_google_zetasql//zetasql/common:builtin_function_internal' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/public/BUILD:194:11: in cc_library rule @com_google_zetasql//zetasql/public:simple_catalog: target '@com_google_zetasql//zetasql/public:simple_catalog' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/com_google_zetasql/zetasql/analyzer/BUILD:144:11: in cc_library rule @com_google_zetasql//zetasql/analyzer:resolver: target '@com_google_zetasql//zetasql/analyzer:resolver' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/mmortari/git/ml-metadata/ml_metadata/metadata_store/BUILD:255:11: in cc_library rule //ml_metadata/metadata_store:query_config_executor: target '//ml_metadata/metadata_store:query_config_executor' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
WARNING: /Users/mmortari/git/ml-metadata/ml_metadata/metadata_store/BUILD:988:11: in cc_library rule //ml_metadata/metadata_store:postgresql_query_executor: target '//ml_metadata/metadata_store:postgresql_query_executor' depends on deprecated target '@com_google_protobuf//:cc_wkt_protos': Only for backward compatibility. Do not use.
INFO: Analyzed target //ml_metadata:move_generated_files (178 packages loaded, 12286 targets configured).
INFO: Found 1 target...
INFO: From Compiling uncompr.c [for tool]:
external/zlib/uncompr.c:27:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT uncompress2 (dest, destLen, source, sourceLen)
            ^
external/zlib/uncompr.c:86:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT uncompress (dest, destLen, source, sourceLen)
            ^
2 warnings generated.
INFO: From Compiling zutil.c:
external/zlib/zutil.c:133:22: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
const char * ZEXPORT zError(err)
                     ^
external/zlib/zutil.c:305:22: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
voidpf ZLIB_INTERNAL zcalloc (opaque, items, size)
                     ^
external/zlib/zutil.c:315:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL zcfree (opaque, ptr)
                   ^
3 warnings generated.
INFO: From Compiling zutil.c [for tool]:
external/zlib/zutil.c:133:22: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
const char * ZEXPORT zError(err)
                     ^
external/zlib/zutil.c:305:22: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
voidpf ZLIB_INTERNAL zcalloc (opaque, items, size)
                     ^
external/zlib/zutil.c:315:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL zcfree (opaque, ptr)
                   ^
3 warnings generated.
INFO: From Compiling adler32.c:
external/zlib/adler32.c:63:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32_z(adler, buf, len)
              ^
external/zlib/adler32.c:134:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32(adler, buf, len)
              ^
external/zlib/adler32.c:143:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local uLong adler32_combine_(adler1, adler2, len2)
            ^
external/zlib/adler32.c:172:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32_combine(adler1, adler2, len2)
              ^
external/zlib/adler32.c:180:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32_combine64(adler1, adler2, len2)
              ^
5 warnings generated.
INFO: From Compiling uncompr.c:
external/zlib/uncompr.c:27:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT uncompress2 (dest, destLen, source, sourceLen)
            ^
external/zlib/uncompr.c:86:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT uncompress (dest, destLen, source, sourceLen)
            ^
2 warnings generated.
INFO: From Compiling compress.c:
external/zlib/compress.c:22:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT compress2 (dest, destLen, source, sourceLen, level)
            ^
external/zlib/compress.c:68:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT compress (dest, destLen, source, sourceLen)
            ^
external/zlib/compress.c:81:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT compressBound (sourceLen)
              ^
3 warnings generated.
INFO: From Compiling trees.c [for tool]:
external/zlib/trees.c:379:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_init(s)
                   ^
external/zlib/trees.c:407:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void init_block(s)
           ^
external/zlib/trees.c:451:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void pqdownheap(s, tree, k)
           ^
external/zlib/trees.c:486:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void gen_bitlen(s, desc)
           ^
external/zlib/trees.c:572:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void gen_codes (tree, max_code, bl_count)
           ^
external/zlib/trees.c:615:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void build_tree(s, desc)
           ^
external/zlib/trees.c:703:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void scan_tree (s, tree, max_code)
           ^
external/zlib/trees.c:748:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void send_tree (s, tree, max_code)
           ^
external/zlib/trees.c:799:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int build_bl_tree(s)
          ^
external/zlib/trees.c:834:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void send_all_trees(s, lcodes, dcodes, blcodes)
           ^
external/zlib/trees.c:863:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_stored_block(s, buf, stored_len, last)
                   ^
external/zlib/trees.c:887:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_flush_bits(s)
                   ^
external/zlib/trees.c:897:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_align(s)
                   ^
external/zlib/trees.c:912:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
                   ^
external/zlib/trees.c:1015:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZLIB_INTERNAL _tr_tally (s, dist, lc)
                  ^
external/zlib/trees.c:1043:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void compress_block(s, ltree, dtree)
           ^
external/zlib/trees.c:1103:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int detect_data_type(s)
          ^
external/zlib/trees.c:1137:16: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local unsigned bi_reverse(code, len)
               ^
external/zlib/trees.c:1152:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void bi_flush(s)
           ^
external/zlib/trees.c:1169:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void bi_windup(s)
           ^
20 warnings generated.
INFO: From Compiling trees.c:
external/zlib/trees.c:379:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_init(s)
                   ^
external/zlib/trees.c:407:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void init_block(s)
           ^
external/zlib/trees.c:451:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void pqdownheap(s, tree, k)
           ^
external/zlib/trees.c:486:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void gen_bitlen(s, desc)
           ^
external/zlib/trees.c:572:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void gen_codes (tree, max_code, bl_count)
           ^
external/zlib/trees.c:615:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void build_tree(s, desc)
           ^
external/zlib/trees.c:703:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void scan_tree (s, tree, max_code)
           ^
external/zlib/trees.c:748:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void send_tree (s, tree, max_code)
           ^
external/zlib/trees.c:799:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int build_bl_tree(s)
          ^
external/zlib/trees.c:834:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void send_all_trees(s, lcodes, dcodes, blcodes)
           ^
external/zlib/trees.c:863:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_stored_block(s, buf, stored_len, last)
                   ^
external/zlib/trees.c:887:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_flush_bits(s)
                   ^
external/zlib/trees.c:897:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_align(s)
                   ^
external/zlib/trees.c:912:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
                   ^
external/zlib/trees.c:1015:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZLIB_INTERNAL _tr_tally (s, dist, lc)
                  ^
external/zlib/trees.c:1043:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void compress_block(s, ltree, dtree)
           ^
external/zlib/trees.c:1103:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int detect_data_type(s)
          ^
external/zlib/trees.c:1137:16: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local unsigned bi_reverse(code, len)
               ^
external/zlib/trees.c:1152:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void bi_flush(s)
           ^
external/zlib/trees.c:1169:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void bi_windup(s)
           ^
20 warnings generated.
INFO: From Compiling inftrees.c:
external/zlib/inftrees.c:32:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZLIB_INTERNAL inflate_table(type, lens, codes, table, bits, work)
                  ^
1 warning generated.
INFO: From Compiling crc32.c:
external/zlib/crc32.c:542:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local z_crc_t multmodp(a, b)
              ^
external/zlib/crc32.c:566:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local z_crc_t x2nmodp(n, k)
              ^
external/zlib/crc32.c:613:23: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
unsigned long ZEXPORT crc32_z(crc, buf, len)
                      ^
external/zlib/crc32.c:1063:23: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
unsigned long ZEXPORT crc32(crc, buf, len)
                      ^
external/zlib/crc32.c:1072:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine64(crc1, crc2, len2)
              ^
external/zlib/crc32.c:1084:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine(crc1, crc2, len2)
              ^
external/zlib/crc32.c:1093:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine_gen64(len2)
              ^
external/zlib/crc32.c:1103:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine_gen(len2)
              ^
external/zlib/crc32.c:1110:7: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong crc32_combine_op(crc1, crc2, op)
      ^
9 warnings generated.
INFO: From Compiling inftrees.c [for tool]:
external/zlib/inftrees.c:32:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZLIB_INTERNAL inflate_table(type, lens, codes, table, bits, work)
                  ^
1 warning generated.
INFO: From Compiling inffast.c:
external/zlib/inffast.c:50:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL inflate_fast(strm, start)
                   ^
1 warning generated.
INFO: From Compiling inflate.c:
external/zlib/inflate.c:105:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int inflateStateCheck(strm)
          ^
external/zlib/inflate.c:119:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateResetKeep(strm)
            ^
external/zlib/inflate.c:145:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateReset(strm)
            ^
external/zlib/inflate.c:158:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateReset2(strm, windowBits)
            ^
external/zlib/inflate.c:196:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateInit2_(strm, windowBits, version, stream_size)
            ^
external/zlib/inflate.c:240:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateInit_(strm, version, stream_size)
            ^
external/zlib/inflate.c:248:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflatePrime(strm, bits, value)
            ^
external/zlib/inflate.c:279:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void fixedtables(state)
           ^
external/zlib/inflate.c:397:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int updatewindow(strm, end, copy)
          ^
external/zlib/inflate.c:623:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflate(strm, flush)
            ^
external/zlib/inflate.c:1301:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateEnd(strm)
            ^
external/zlib/inflate.c:1315:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateGetDictionary(strm, dictionary, dictLength)
            ^
external/zlib/inflate.c:1338:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateSetDictionary(strm, dictionary, dictLength)
            ^
external/zlib/inflate.c:1373:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateGetHeader(strm, head)
            ^
external/zlib/inflate.c:1401:16: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local unsigned syncsearch(have, buf, len)
               ^
external/zlib/inflate.c:1424:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateSync(strm)
            ^
external/zlib/inflate.c:1482:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateSyncPoint(strm)
            ^
external/zlib/inflate.c:1492:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateCopy(dest, source)
            ^
external/zlib/inflate.c:1539:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateUndermine(strm, subvert)
            ^
external/zlib/inflate.c:1557:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateValidate(strm, check)
            ^
external/zlib/inflate.c:1572:14: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
long ZEXPORT inflateMark(strm)
             ^
external/zlib/inflate.c:1585:23: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
unsigned long ZEXPORT inflateCodesUsed(strm)
                      ^
22 warnings generated.
INFO: From Compiling deflate.c:
external/zlib/deflate.c:204:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void slide_hash(s)
           ^
external/zlib/deflate.c:231:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateInit_(strm, level, version, stream_size)
            ^
external/zlib/deflate.c:243:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateInit2_(strm, level, method, windowBits, memLevel, strategy,
            ^
external/zlib/deflate.c:393:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int deflateStateCheck (strm)
          ^
external/zlib/deflate.c:416:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength)
            ^
external/zlib/deflate.c:485:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateGetDictionary (strm, dictionary, dictLength)
            ^
external/zlib/deflate.c:507:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateResetKeep (strm)
            ^
external/zlib/deflate.c:545:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateReset (strm)
            ^
external/zlib/deflate.c:557:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateSetHeader (strm, head)
            ^
external/zlib/deflate.c:568:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflatePending (strm, pending, bits)
            ^
external/zlib/deflate.c:582:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflatePrime (strm, bits, value)
            ^
external/zlib/deflate.c:609:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateParams(strm, level, strategy)
            ^
external/zlib/deflate.c:658:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateTune(strm, good_length, max_lazy, nice_length, max_chain)
            ^
external/zlib/deflate.c:693:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT deflateBound(strm, sourceLen)
              ^
external/zlib/deflate.c:757:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void putShortMSB (s, b)
           ^
external/zlib/deflate.c:771:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void flush_pending(strm)
           ^
external/zlib/deflate.c:804:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflate (strm, flush)
            ^
external/zlib/deflate.c:1119:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateEnd (strm)
            ^
external/zlib/deflate.c:1145:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateCopy (dest, source)
            ^
external/zlib/deflate.c:1204:16: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local unsigned read_buf(strm, buf, size)
               ^
external/zlib/deflate.c:1234:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void lm_init (s)
           ^
external/zlib/deflate.c:1276:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local uInt longest_match(s, cur_match)
           ^
external/zlib/deflate.c:1522:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void fill_window(s)
           ^
external/zlib/deflate.c:1685:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_stored(s, flush)
                  ^
external/zlib/deflate.c:1872:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_fast(s, flush)
                  ^
external/zlib/deflate.c:1974:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_slow(s, flush)
                  ^
external/zlib/deflate.c:2105:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_rle(s, flush)
                  ^
external/zlib/deflate.c:2178:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_huff(s, flush)
                  ^
28 warnings generated.
INFO: From Compiling inflate.c [for tool]:
external/zlib/inflate.c:105:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int inflateStateCheck(strm)
          ^
external/zlib/inflate.c:119:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateResetKeep(strm)
            ^
external/zlib/inflate.c:145:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateReset(strm)
            ^
external/zlib/inflate.c:158:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateReset2(strm, windowBits)
            ^
external/zlib/inflate.c:196:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateInit2_(strm, windowBits, version, stream_size)
            ^
external/zlib/inflate.c:240:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateInit_(strm, version, stream_size)
            ^
external/zlib/inflate.c:248:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflatePrime(strm, bits, value)
            ^
external/zlib/inflate.c:279:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void fixedtables(state)
           ^
external/zlib/inflate.c:397:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int updatewindow(strm, end, copy)
          ^
external/zlib/inflate.c:623:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflate(strm, flush)
            ^
external/zlib/inflate.c:1301:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateEnd(strm)
            ^
external/zlib/inflate.c:1315:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateGetDictionary(strm, dictionary, dictLength)
            ^
external/zlib/inflate.c:1338:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateSetDictionary(strm, dictionary, dictLength)
            ^
external/zlib/inflate.c:1373:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateGetHeader(strm, head)
            ^
external/zlib/inflate.c:1401:16: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local unsigned syncsearch(have, buf, len)
               ^
external/zlib/inflate.c:1424:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateSync(strm)
            ^
external/zlib/inflate.c:1482:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateSyncPoint(strm)
            ^
external/zlib/inflate.c:1492:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateCopy(dest, source)
            ^
external/zlib/inflate.c:1539:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateUndermine(strm, subvert)
            ^
external/zlib/inflate.c:1557:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateValidate(strm, check)
            ^
external/zlib/inflate.c:1572:14: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
long ZEXPORT inflateMark(strm)
             ^
external/zlib/inflate.c:1585:23: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
unsigned long ZEXPORT inflateCodesUsed(strm)
                      ^
22 warnings generated.
INFO: From Compiling infback.c:
external/zlib/infback.c:28:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateBackInit_(strm, windowBits, window, version, stream_size)
            ^
external/zlib/infback.c:82:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void fixedtables(state)
           ^
external/zlib/infback.c:250:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateBack(strm, in, in_desc, out, out_desc)
            ^
external/zlib/infback.c:632:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateBackEnd(strm)
            ^
4 warnings generated.
INFO: From Compiling inffast.c [for tool]:
external/zlib/inffast.c:50:20: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void ZLIB_INTERNAL inflate_fast(strm, start)
                   ^
1 warning generated.
INFO: From Compiling infback.c [for tool]:
external/zlib/infback.c:28:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateBackInit_(strm, windowBits, window, version, stream_size)
            ^
external/zlib/infback.c:82:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void fixedtables(state)
           ^
external/zlib/infback.c:250:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateBack(strm, in, in_desc, out, out_desc)
            ^
external/zlib/infback.c:632:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT inflateBackEnd(strm)
            ^
4 warnings generated.
INFO: From Compiling deflate.c [for tool]:
external/zlib/deflate.c:204:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void slide_hash(s)
           ^
external/zlib/deflate.c:231:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateInit_(strm, level, version, stream_size)
            ^
external/zlib/deflate.c:243:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateInit2_(strm, level, method, windowBits, memLevel, strategy,
            ^
external/zlib/deflate.c:393:11: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local int deflateStateCheck (strm)
          ^
external/zlib/deflate.c:416:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength)
            ^
external/zlib/deflate.c:485:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateGetDictionary (strm, dictionary, dictLength)
            ^
external/zlib/deflate.c:507:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateResetKeep (strm)
            ^
external/zlib/deflate.c:545:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateReset (strm)
            ^
external/zlib/deflate.c:557:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateSetHeader (strm, head)
            ^
external/zlib/deflate.c:568:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflatePending (strm, pending, bits)
            ^
external/zlib/deflate.c:582:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflatePrime (strm, bits, value)
            ^
external/zlib/deflate.c:609:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateParams(strm, level, strategy)
            ^
external/zlib/deflate.c:658:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateTune(strm, good_length, max_lazy, nice_length, max_chain)
            ^
external/zlib/deflate.c:693:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT deflateBound(strm, sourceLen)
              ^
external/zlib/deflate.c:757:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void putShortMSB (s, b)
           ^
external/zlib/deflate.c:771:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void flush_pending(strm)
           ^
external/zlib/deflate.c:804:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflate (strm, flush)
            ^
external/zlib/deflate.c:1119:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateEnd (strm)
            ^
external/zlib/deflate.c:1145:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT deflateCopy (dest, source)
            ^
external/zlib/deflate.c:1204:16: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local unsigned read_buf(strm, buf, size)
               ^
external/zlib/deflate.c:1234:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void lm_init (s)
           ^
external/zlib/deflate.c:1276:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local uInt longest_match(s, cur_match)
           ^
external/zlib/deflate.c:1522:12: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local void fill_window(s)
           ^
external/zlib/deflate.c:1685:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_stored(s, flush)
                  ^
external/zlib/deflate.c:1872:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_fast(s, flush)
                  ^
external/zlib/deflate.c:1974:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_slow(s, flush)
                  ^
external/zlib/deflate.c:2105:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_rle(s, flush)
                  ^
external/zlib/deflate.c:2178:19: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local block_state deflate_huff(s, flush)
                  ^
28 warnings generated.
INFO: From Compiling src/google/protobuf/stubs/strutil.cc:
external/com_google_protobuf/src/google/protobuf/stubs/strutil.cc:506:11: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
          sprintf(dest + used, (use_hex ? "\\x%02x" : "\\%03o"),
          ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:180:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
INFO: From Compiling crc32.c [for tool]:
external/zlib/crc32.c:542:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local z_crc_t multmodp(a, b)
              ^
external/zlib/crc32.c:566:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local z_crc_t x2nmodp(n, k)
              ^
external/zlib/crc32.c:613:23: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
unsigned long ZEXPORT crc32_z(crc, buf, len)
                      ^
external/zlib/crc32.c:1063:23: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
unsigned long ZEXPORT crc32(crc, buf, len)
                      ^
external/zlib/crc32.c:1072:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine64(crc1, crc2, len2)
              ^
external/zlib/crc32.c:1084:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine(crc1, crc2, len2)
              ^
external/zlib/crc32.c:1093:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine_gen64(len2)
              ^
external/zlib/crc32.c:1103:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT crc32_combine_gen(len2)
              ^
external/zlib/crc32.c:1110:7: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong crc32_combine_op(crc1, crc2, op)
      ^
9 warnings generated.
INFO: From Compiling compress.c [for tool]:
external/zlib/compress.c:22:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT compress2 (dest, destLen, source, sourceLen, level)
            ^
external/zlib/compress.c:68:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ZEXPORT compress (dest, destLen, source, sourceLen)
            ^
external/zlib/compress.c:81:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT compressBound (sourceLen)
              ^
3 warnings generated.
INFO: From Compiling adler32.c [for tool]:
external/zlib/adler32.c:63:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32_z(adler, buf, len)
              ^
external/zlib/adler32.c:134:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32(adler, buf, len)
              ^
external/zlib/adler32.c:143:13: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
local uLong adler32_combine_(adler1, adler2, len2)
            ^
external/zlib/adler32.c:172:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32_combine(adler1, adler2, len2)
              ^
external/zlib/adler32.c:180:15: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
uLong ZEXPORT adler32_combine64(adler1, adler2, len2)
              ^
5 warnings generated.
INFO: From Linking external/com_google_absl/absl/strings/libstring_view.a [for tool]:
warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/com_google_absl/absl/strings/libstring_view.a the table of contents is empty (no object file members in the library define global symbols)
INFO: From Linking external/com_google_absl/absl/strings/libstring_view.pic.a:
warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: bazel-out/darwin_arm64-opt/bin/external/com_google_absl/absl/strings/libstring_view.pic.a the table of contents is empty (no object file members in the library define global symbols)
INFO: From Compiling src/google/protobuf/generated_message_tctable_lite.cc:
external/com_google_protobuf/src/google/protobuf/generated_message_tctable_lite.cc:347:14: warning: unused function 'Offset' [-Wunused-function]
inline void* Offset(void* base, uint32_t offset) {
             ^
1 warning generated.
INFO: From Compiling src/google/protobuf/generated_message_tctable_lite.cc [for tool]:
external/com_google_protobuf/src/google/protobuf/generated_message_tctable_lite.cc:347:14: warning: unused function 'Offset' [-Wunused-function]
inline void* Offset(void* base, uint32_t offset) {
             ^
1 warning generated.
INFO: From Compiling src/google/protobuf/stubs/strutil.cc [for tool]:
external/com_google_protobuf/src/google/protobuf/stubs/strutil.cc:506:11: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
          sprintf(dest + used, (use_hex ? "\\x%02x" : "\\%03o"),
          ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:180:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
INFO: From Compiling src/google/protobuf/compiler/cpp/helpers.cc [for tool]:
external/com_google_protobuf/src/google/protobuf/compiler/cpp/helpers.cc:197:25: warning: unused function 'VerifyInt32TypeToVerifyCustom' [-Wunused-function]
inline VerifySimpleType VerifyInt32TypeToVerifyCustom(VerifyInt32Type t) {
                        ^
1 warning generated.
INFO: From Linking external/com_google_absl/absl/types/libbad_variant_access.a [for tool]:
warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/com_google_absl/absl/types/libbad_variant_access.a the table of contents is empty (no object file members in the library define global symbols)
INFO: From Linking external/com_google_absl/absl/types/libbad_optional_access.a [for tool]:
warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/com_google_absl/absl/types/libbad_optional_access.a the table of contents is empty (no object file members in the library define global symbols)
INFO: From Linking external/com_google_absl/absl/types/libbad_optional_access.pic.a:
warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: bazel-out/darwin_arm64-opt/bin/external/com_google_absl/absl/types/libbad_optional_access.pic.a the table of contents is empty (no object file members in the library define global symbols)
INFO: From Executing genrule @libmysqlclient//:configure:
CMake Deprecation Warning at CMakeLists.txt:5 (CMAKE_MINIMUM_REQUIRED):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


CMake Deprecation Warning at external/zlib/CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


CMake Warning (dev):
  Policy CMP0042 is not set: MACOSX_RPATH is enabled by default.  Run "cmake
  --help-policy CMP0042" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

  MACOSX_RPATH is not specified for the following targets:

   libmariadb

This warning is for project developers.  Use -Wno-dev to suppress it.

-- The C compiler identification is AppleClang 15.0.0.15000100
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found CURL: /Library/Developer/CommandLineTools/SDKs/MacOSX14.2.sdk/usr/lib/libcurl.tbd (found version "8.4.0")  
-- Found Git: /usr/bin/git (found version "2.39.3 (Apple Git-145)") 
-- MariaDB Connector C: INSTALL_BINDIR=bin
-- MariaDB Connector C: INSTALL_LIBDIR=lib/mariadb
-- MariaDB Connector C: INSTALL_PCDIR=lib/pkgconfig
-- MariaDB Connector C: INSTALL_INCLUDEDIR=include/mariadb
-- MariaDB Connector C: INSTALL_DOCSDIR=
-- MariaDB Connector C: INSTALL_PLUGINDIR=lib/mariadb/plugin
-- MariaDB Connector C: INSTALL_MANDIR=man
-- MariaDB Connector C: LIBMARIADB_STATIC_NAME mariadbclient
-- Found ZSTD: /opt/homebrew/lib/libzstd.dylib  
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of off64_t
-- Check size of off64_t - failed
-- Looking for fseeko
-- Looking for fseeko - found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Looking for include file alloca.h
-- Looking for include file alloca.h - found
-- Looking for include file dlfcn.h
-- Looking for include file dlfcn.h - found
-- Looking for include file fcntl.h
-- Looking for include file fcntl.h - found
-- Looking for include file float.h
-- Looking for include file float.h - found
-- Looking for include file limits.h
-- Looking for include file limits.h - found
-- Looking for include file linux/limits.h
-- Looking for include file linux/limits.h - not found
-- Looking for include file pwd.h
-- Looking for include file pwd.h - found
-- Looking for include file select.h
-- Looking for include file select.h - not found
-- Looking for include file signal.h
-- Looking for include file signal.h - found
-- Looking for include file stdlib.h
-- Looking for include file stdlib.h - found
-- Looking for include file string.h
-- Looking for include file string.h - found
-- Looking for include file sys/ioctl.h
-- Looking for include file sys/ioctl.h - found
-- Looking for include file sys/select.h
-- Looking for include file sys/select.h - found
-- Looking for include file sys/socket.h
-- Looking for include file sys/socket.h - found
-- Looking for include file sys/stat.h
-- Looking for include file sys/stat.h - found
-- Looking for include file sys/un.h
-- Looking for include file sys/un.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Looking for include file ucontext.h
-- Looking for include file ucontext.h - found
-- Looking for alloca
-- Looking for alloca - not found
-- Looking for dlerror
-- Looking for dlerror - found
-- Looking for dlopen
-- Looking for dlopen - found
-- Looking for fcntl
-- Looking for fcntl - found
-- Looking for memcpy
-- Looking for memcpy - found
-- Looking for nl_langinfo
-- Looking for nl_langinfo - found
-- Looking for setlocale
-- Looking for setlocale - found
-- Looking for poll
-- Looking for poll - found
-- Looking for getpwuid
-- Looking for getpwuid - found
-- Looking for makecontext
-- Looking for makecontext - found
-- Looking for cuserid
-- Looking for cuserid - not found
-- Check size of char *
-- Check size of char * - done
-- Check size of int
-- Check size of int - done
-- Check size of long
-- Check size of long - done
-- Check size of long long
-- Check size of long long - done
-- Check size of size_t
-- Check size of size_t - done
-- Check size of uint
-- Check size of uint - failed
-- Check size of uint
-- Check size of uint - failed
-- Check size of ulong
-- Check size of ulong - failed
-- Check size of int8
-- Check size of int8 - failed
-- Check size of uint8
-- Check size of uint8 - failed
-- Check size of int16
-- Check size of int16 - failed
-- Check size of uint16
-- Check size of uint16 - failed
-- Check size of int32
-- Check size of int32 - failed
-- Check size of uint32
-- Check size of uint32 - failed
-- Check size of int64
-- Check size of int64 - failed
-- Check size of uint64
-- Check size of uint64 - failed
-- Check size of socklen_t
-- Check size of socklen_t - failed
-- Performing Test SOCKET_SIZE_FOUND_socklen_t
-- Performing Test SOCKET_SIZE_FOUND_socklen_t - Success
-- Looking for floor
-- Looking for floor - found
-- Looking for pthread_getspecific
-- Looking for pthread_getspecific - found
-- Looking for gethostbyname_r
-- Looking for gethostbyname_r - not found
-- Looking for gethostbyname_r in nsl_r
-- Looking for gethostbyname_r in nsl_r - not found
-- Looking for gethostbyname_r in nsl
-- Looking for gethostbyname_r in nsl - not found
-- Looking for setsockopt
-- Looking for setsockopt - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- Found OpenSSL: /opt/homebrew/Cellar/openssl@3/3.2.0_1/lib/libcrypto.dylib (found version "3.2.0")  
-- TLS library/version: OpenSSL 3.2.0
-- SYSTEM_LIBS /opt/homebrew/Cellar/openssl@3/3.2.0_1/lib/libssl.dylib;/opt/homebrew/Cellar/openssl@3/3.2.0_1/lib/libcrypto.dylib
-- Found GSSAPI: -dynamic -Wl,-search_paths_first -lkrb5
-- SYSTEM_LIBS: /opt/homebrew/Cellar/openssl@3/3.2.0_1/lib/libssl.dylib;/opt/homebrew/Cellar/openssl@3/3.2.0_1/lib/libcrypto.dylib
-- Dynamic column API support: ON
-- SYSTEM processor: arm64
-- MariaDB Connector/c configuration:
-- Static PLUGINS mysql_native_password;mysql_old_password;zlib;pvio_socket
-- Dynamic PLUGINS dialog;client_ed25519;caching_sha2_password;sha256_password;auth_gssapi_client;mysql_clear_password;zstd;remote_io
-- CPack generation: TGZ
-- SSL support: OPENSSL Libs: /opt/homebrew/Cellar/openssl@3/3.2.0_1/lib/libssl.dylib;/opt/homebrew/Cellar/openssl@3/3.2.0_1/lib/libcrypto.dylib
-- Zlib support: yes (using bundled zlib)
-- ZStd support: TRUE
-- Installation layout: DEFAULT
-- Include files will be installed in include/mariadb
-- Libraries will be installed in lib/mariadb
-- Binaries will be installed in bin
-- Documentation included from 
-- Required: 
-- Configuring done (12.5s)
-- Generating done (0.2s)
-- Build files have been written to: /var/folders/n0/3c71vqs570b8l21fmnvb5k640000gn/T/build.XXXXXX.6VqORyFi/build
INFO: From Linking external/upb/libfastdecode.pic.a:
warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: bazel-out/darwin_arm64-opt/bin/external/upb/libfastdecode.pic.a the table of contents is empty (no object file members in the library define global symbols)
INFO: From Compiling libmariadb/ma_context.c:
external/libmysqlclient/libmariadb/ma_context.c:63:8: warning: 'setcontext' is deprecated: first deprecated in macOS 10.6 - No longer supported [-Wdeprecated-declarations]
  err= setcontext(&c->base_context);
       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ucontext.h:44:6: note: 'setcontext' has been explicitly marked deprecated here
int  setcontext(const ucontext_t *);
     ^
external/libmysqlclient/libmariadb/ma_context.c:50:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
my_context_spawn_internal(i0, i1)
^
external/libmysqlclient/libmariadb/ma_context.c:76:8: warning: 'swapcontext' is deprecated: first deprecated in macOS 10.6 - No longer supported [-Wdeprecated-declarations]
  err= swapcontext(&c->base_context, &c->spawned_context);
       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ucontext.h:47:6: note: 'swapcontext' has been explicitly marked deprecated here
int  swapcontext(ucontext_t * __restrict, const ucontext_t * __restrict);
     ^
external/libmysqlclient/libmariadb/ma_context.c:94:8: warning: 'getcontext' is deprecated: first deprecated in macOS 10.6 - No longer supported [-Wdeprecated-declarations]
  err= getcontext(&c->spawned_context);
       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ucontext.h:38:6: note: 'getcontext' has been explicitly marked deprecated here
int  getcontext(ucontext_t *);
     ^
external/libmysqlclient/libmariadb/ma_context.c:104:3: warning: 'makecontext' is deprecated: first deprecated in macOS 10.6 - No longer supported [-Wdeprecated-declarations]
  makecontext(&c->spawned_context, my_context_spawn_internal, 2,
  ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ucontext.h:41:6: note: 'makecontext' has been explicitly marked deprecated here
void makecontext(ucontext_t *, void (*)(), int, ...);
     ^
external/libmysqlclient/libmariadb/ma_context.c:119:8: warning: 'swapcontext' is deprecated: first deprecated in macOS 10.6 - No longer supported [-Wdeprecated-declarations]
  err= swapcontext(&c->spawned_context, &c->base_context);
       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ucontext.h:47:6: note: 'swapcontext' has been explicitly marked deprecated here
int  swapcontext(ucontext_t * __restrict, const ucontext_t * __restrict);
     ^
6 warnings generated.
INFO: From Linking external/com_google_absl/absl/types/libbad_variant_access.pic.a:
warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: bazel-out/darwin_arm64-opt/bin/external/com_google_absl/absl/types/libbad_variant_access.pic.a the table of contents is empty (no object file members in the library define global symbols)
INFO: From Compiling src/utilities.cc:
external/com_google_glog/src/utilities.cc:262:17: warning: 'syscall' is deprecated: first deprecated in macOS 10.12 - syscall(2) is unsupported; please switch to a supported interface. For SYS_kdebug_trace use kdebug_signpost(). [-Wdeprecated-declarations]
    pid_t tid = syscall(__NR_gettid);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/unistd.h:748:6: note: 'syscall' has been explicitly marked deprecated here
int      syscall(int, ...);
         ^
1 warning generated.
INFO: From Compiling src/raw_logging.cc:
external/com_google_glog/src/raw_logging.cc:139:3: warning: 'syscall' is deprecated: first deprecated in macOS 10.12 - syscall(2) is unsupported; please switch to a supported interface. For SYS_kdebug_trace use kdebug_signpost(). [-Wdeprecated-declarations]
  safe_write(STDERR_FILENO, buffer, strlen(buffer));
  ^
external/com_google_glog/src/raw_logging.cc:63:34: note: expanded from macro 'safe_write'
# define safe_write(fd, s, len)  syscall(SYS_write, fd, s, len)
                                 ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/unistd.h:748:6: note: 'syscall' has been explicitly marked deprecated here
int      syscall(int, ...);
         ^
1 warning generated.
ERROR: /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/external/rules_foreign_cc/toolchains/BUILD.bazel:152:10: BootstrapGNUMake external/rules_foreign_cc/toolchains/make [for tool] failed: (Exit 1): bash failed: error executing command (from target @rules_foreign_cc//toolchains:make_tool) 
  (cd /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata && \
  exec env - \
    PATH=/Users/mmortari/Library/Caches/bazelisk/downloads/sha256/574d54bfb7e84adf3fe29bc2a0d13214048c1b5e295f826fced3fb94fba282ee/bin:/Users/mmortari/.pyenv/versions/3.11.6/bin:/opt/homebrew/Cellar/pyenv/2.3.33/libexec:/opt/homebrew/Cellar/pyenv/2.3.33/plugins/python-build/bin:/Users/mmortari/.pyenv/shims:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/MacGPG2/bin:/usr/local/munki:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/mmortari/Library/Python/3.9/bin:/Users/mmortari/go/bin \
  /bin/bash -c bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/rules_foreign_cc/toolchains/make_tool_foreign_cc/wrapper_build_script.sh)
# Configuration: 2c27fb3c76ce23569653752137cb59fbe91df8b3f0717bc04d0f6be5cbaef63d
# Execution platform: @local_config_platform//:host

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
rules_foreign_cc: Build failed!
rules_foreign_cc: Keeping temp build directory and dependencies directory for debug.
rules_foreign_cc: Please note that the directories inside a sandbox are still cleaned unless you specify --sandbox_debug Bazel command line flag.
rules_foreign_cc: Printing build logs:
_____ BEGIN BUILD LOGS _____
+ AR=/usr/bin/libtool
+ ARFLAGS='-static -s -o'
+ CC=/private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh
+ CFLAGS='-U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics -fno-omit-frame-pointer -g0 -O2 -D_FORTIFY_SOURCE=1 -DNDEBUG -ffunction-sections -fdata-sections -no-canonical-prefixes -Wno-builtin-macro-redefined -D__DATE__=redacted -D__TIMESTAMP__=redacted -D__TIME__=redacted'
+ LD=/private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh
+ LDFLAGS='-Wl,-S -undefined dynamic_lookup -headerpad_max_install_names -lc++ -lm -undefined error'
+ ./configure --without-guile --with-guile=no --disable-dependency-tracking --prefix=/private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/rules_foreign_cc/toolchains/make
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... ./build-aux/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports the include directive... yes (GNU style)
checking for gcc... /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh accepts -g... yes
checking for /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh option to enable C11 features... none needed
checking whether /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh understands -c and -o together... yes
checking whether the compiler is clang... yes
checking for compiler option needed when checking for declarations... -Werror=implicit-function-declaration
checking dependency style of /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh... none
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
checking for minix/config.h... no
checking for sys/param.h... yes
checking for vfork.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for gcc... (cached) /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh
checking whether the compiler supports GNU C... (cached) yes
checking whether /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh accepts -g... (cached) yes
checking for /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh option to enable C11 features... (cached) none needed
checking whether /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh understands -c and -o together... (cached) yes
checking whether the compiler is clang... (cached) yes
checking for compiler option needed when checking for declarations... (cached) -Werror=implicit-function-declaration
checking dependency style of /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh... (cached) none
checking build system type... aarch64-apple-darwin22.6.0
checking host system type... aarch64-apple-darwin22.6.0
checking how to run the C preprocessor... /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for Minix Amsterdam compiler... no
checking for ar... /usr/bin/libtool
checking for ranlib... ranlib
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for eaccess... yes
checking for /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh options needed to detect all undeclared functions... none needed
checking host CPU and C ABI... arm64
checking for _Bool... yes
checking for stdbool.h that conforms to C99 or later... no
checking for C compiler option to allow warnings... -Wno-error
checking for alloca as a compiler built-in... yes
checking for getloadavg... yes
checking for sys/loadavg.h... no
checking whether getloadavg is declared... yes
checking if system libc has GNU glob... no
checking whether system uses MSDOS-style paths... no
checking for ranlib... (cached) ranlib
checking how to run the C preprocessor... /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh -E
checking for ar... /usr/bin/libtool
checking for perl... perl
checking whether byte ordering is bigendian... no
checking for a sed that does not truncate output... /usr/bin/sed
checking whether NLS is requested... yes
checking for msgfmt... /opt/homebrew/bin/msgfmt
checking for gmsgfmt... /opt/homebrew/bin/msgfmt
checking for xgettext... /opt/homebrew/bin/xgettext
checking for msgmerge... /opt/homebrew/bin/msgmerge
checking for ld used by /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh... /private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh
checking if the linker (/private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh) is GNU ld... no
checking for shared library run path origin... done
checking for CFPreferencesCopyAppValue... yes
checking for CFLocaleCopyCurrent... yes
checking for GNU gettext in libc... no
checking for iconv... yes
checking for working iconv... no
checking for GNU gettext in libintl... no
checking whether to use NLS... no
checking for library containing strerror... none required
checking for library containing getpwnam... none required
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking whether stat file-mode macros are broken... no
checking for stdlib.h... (cached) yes
checking for locale.h... yes
checking for unistd.h... (cached) yes
checking for limits.h... yes
checking for fcntl.h... yes
checking for string.h... (cached) yes
checking for memory.h... yes
checking for sys/param.h... (cached) yes
checking for sys/resource.h... yes
checking for sys/timeb.h... yes
checking for sys/time.h... yes
checking for sys/select.h... yes
checking for sys/file.h... yes
checking for spawn.h... yes
checking for an ANSI C-conforming const... yes
checking for uid_t in sys/types.h... yes
checking for pid_t... yes
checking for off_t... yes
checking for size_t... (cached) yes
checking for ssize_t... yes
checking for unsigned long long int... yes
checking for long long int... yes
checking for intmax_t... yes
checking for uintmax_t... yes
checking for sig_atomic_t... yes
checking for nanoseconds field of struct stat... st_mtimespec.tv_nsec
checking whether to use high resolution file timestamps... yes
checking for library containing clock_gettime... none required
checking for standard gettimeofday... yes
checking for strtoll... yes
checking for strdup... yes
checking for strndup... yes
checking for stpcpy... yes
checking for memrchr... yes
checking for mempcpy... yes
checking for umask... yes
checking for mkstemp... yes
checking for mktemp... yes
checking for fdopen... yes
checking for dup... yes
checking for dup2... yes
checking for getcwd... yes
checking for realpath... yes
checking for sigsetmask... yes
checking for sigaction... yes
checking for getgroups... yes
checking for seteuid... yes
checking for setegid... yes
checking for setlinebuf... yes
checking for setreuid... yes
checking for setregid... yes
checking for mkfifo... yes
checking for getrlimit... yes
checking for setrlimit... yes
checking for setvbuf... yes
checking for pipe... yes
checking for strerror... yes
checking for strsignal... yes
checking for lstat... yes
checking for readlink... yes
checking for atexit... yes
checking for isatty... yes
checking for ttyname... yes
checking for pselect... yes
checking for posix_spawn... yes
checking for posix_spawnattr_setsigmask... yes
checking whether bsd_signal is declared... yes
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for strcasecmp... yes
checking for strncasecmp... yes
checking for strcmpi... yes
checking for strncmpi... yes
checking for stricmp... yes
checking for strnicmp... yes
checking for working strcoll... yes
checking whether closedir returns void... no
checking for struct dirent.d_type... yes
checking for pkg-config... /opt/homebrew/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking whether sys_siglist is declared... yes
checking whether _sys_siglist is declared... no
checking whether __sys_siglist is declared... no
checking for sys/wait.h... yes
checking for waitpid... yes
checking for wait3... yes
checking for union wait... no
checking for SA_RESTART... yes
checking whether dlopen is declared... yes
checking whether dlsym is declared... yes
checking whether dlerror is declared... yes
checking for library containing dlopen... none required
checking If the linker accepts -Wl,--export-dynamic... no
checking If the linker accepts -rdynamic... yes
checking for posix_spawn that fails synchronously... yes
checking for location of SCCS get command... get
checking if malloc debugging is wanted... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating build.cfg
config.status: creating tests/config-flags.pm
config.status: creating Makefile
config.status: creating lib/Makefile
config.status: creating doc/Makefile
config.status: creating po/Makefile.in
config.status: creating src/config.h
config.status: executing depfiles commands
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
+ cat build.cfg
# Configuration for building GNU Make in the absence of any 'make' program.
# build.cfg.  Generated from build.cfg.in by configure.

# Copyright (C) 1993-2022 Free Software Foundation, Inc.
# This file is part of GNU Make.
#
# GNU Make is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation; either version 3 of the License, or (at your option) any later
# version.
#
# GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along with
# this program.  If not, see <https://www.gnu.org/licenses/>.

# See Makefile.in for comments describing these variables.

top_srcdir='.'

prefix='/private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/rules_foreign_cc/toolchains/make'
exec_prefix=`eval echo ${prefix}`

CC='/private/var/tmp/_bazel_mmortari/6bae78146d01b887b7109f5e74ef2d88/sandbox/darwin-sandbox/54/execroot/ml_metadata/external/local_config_cc/cc_wrapper.sh'
AR='/usr/bin/libtool'
CFLAGS='-U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics -fno-omit-frame-pointer -g0 -O2 -D_FORTIFY_SOURCE=1 -DNDEBUG -ffunction-sections -fdata-sections -no-canonical-prefixes -Wno-builtin-macro-redefined -D__DATE__=redacted -D__TIMESTAMP__=redacted -D__TIME__=redacted '
CPPFLAGS=''
DEFS='-DHAVE_CONFIG_H'
ARFLAGS='-static -s -o'
LDFLAGS='-rdynamic -Wl,-S -undefined dynamic_lookup -headerpad_max_install_names -lc++ -lm -undefined error'
ALLOCA=''
LOADLIBES='  '
REMOTE='stub'
OBJEXT='o'
EXEEXT=''
+ ./build.sh
config.status: creating ./lib/alloca.h__
config.status: creating ./lib/fnmatch.h__
config.status: creating ./lib/glob.h__
config.status: creating ./lib/stdbool.h__
compiling lib/concat-filename.c...
compiling lib/findprog-in.c...
./lib/findprog-in.c:149:25: error: call to undeclared function 'eaccess'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
                    if (eaccess (progpathname, X_OK) == 0)
                        ^
./lib/findprog-in.c:149:25: note: did you mean 'access'?
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/unistd.h:431:6: note: 'access' declared here
int      access(const char *, int);
         ^
./lib/findprog-in.c:301:21: error: call to undeclared function 'eaccess'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
                if (eaccess (progpathname, X_OK) == 0)
                    ^
2 errors generated.
Compilation failed.
_____ END BUILD LOGS _____
rules_foreign_cc: Build wrapper script location: bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/rules_foreign_cc/toolchains/make_tool_foreign_cc/wrapper_build_script.sh
rules_foreign_cc: Build script location: bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/rules_foreign_cc/toolchains/make_tool_foreign_cc/build_script.sh
rules_foreign_cc: Build log location: bazel-out/darwin_arm64-opt-exec-2B5CBBC6/bin/external/rules_foreign_cc/toolchains/make_tool_foreign_cc/BootstrapGNUMake.log

Target //ml_metadata:move_generated_files failed to build
INFO: Elapsed time: 67.413s, Critical Path: 31.27s
INFO: 2118 processes: 1381 internal, 736 darwin-sandbox, 1 local.
FAILED: Build did NOT complete successfully
ERROR: Build failed. Not running target
Traceback (most recent call last):
  File "/Users/mmortari/git/ml-metadata/setup.py", line 131, in <module>
    setup(
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/__init__.py", line 103, in setup
    return distutils.core.setup(**attrs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup
    return run_commands(dist)
           ^^^^^^^^^^^^^^^^^^
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
    dist.run_commands()
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
    self.run_command(cmd)
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/dist.py", line 963, in run_command
    super().run_command(command)
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    cmd_obj.run()
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/wheel/bdist_wheel.py", line 368, in run
    self.run_command("build")
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
    self.distribution.run_command(command)
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/dist.py", line 963, in run_command
    super().run_command(command)
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    cmd_obj.run()
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 131, in run
    self.run_command(cmd_name)
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
    self.distribution.run_command(command)
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/dist.py", line 963, in run_command
    super().run_command(command)
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    cmd_obj.run()
  File "/Users/mmortari/git/ml-metadata/setup.py", line 107, in run
    subprocess.check_call(
  File "/Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/opt/homebrew/bin/bazel', 'run', '--compilation_mode', 'opt', '--define', 'grpc_no_ares=true', '--verbose_failures', '--macos_minimum_os=11.0', '--config=macos_arm64', '//ml_metadata:move_generated_files']' returned non-zero exit status 1.

I'm following this thread with interest and as Robert mentioned I'm thankful as a community user there is work ongoing to make the complete wheel buildable on Mac OSX.
So I thought about reporting back my attempt, in the hope this helps, somehow? I'm happy to try out other changes if guided, I'm not familiar with Bazel 😅

@gerilya
Copy link

gerilya commented Dec 17, 2023

@tarilabs It looks like you are trying to build it with bazel v7.
Are you using bazelisk? If not, try

brew install bazelisk

@tarilabs
Copy link
Contributor

@tarilabs It looks like you are trying to build it with bazel v7. Are you using bazelisk? If not, try

@gerilya I am indeed using bazelisk and I originally thought the same, but if you notice a further down in the top of the logs, there is:

2023/12/17 18:29:36 Downloading https://releases.bazel.build/6.4.0/release/bazel-6.4.0-darwin-arm64...
Downloading: 48 MB out of 48 MB (100%) 
Extracting Bazel installation...
Starting local Bazel server and connecting to it...

So seems to me it's using the pinned Bazel specified.

Is there a different way I should operate it which you want me to try out?

@gerilya
Copy link

gerilya commented Dec 17, 2023

Is there a different way I should operate it which you want me to try out?

@tarilabs what does xcodebuild -version show?
Try updating Xcode to the latest maybe?

@tarilabs
Copy link
Contributor

what does xcodebuild -version show?

I have XCode Command Line Tools CLI so according to this answer, I issue:

ml-metadata % pkgutil --pkg-info=com.apple.pkg.CLTools_Executables | grep version

version: 15.1.0.0.1.1700200546

also:

ml-metadata % softwareupdate --history                                           

Display Name                                       Version    Date                  
------------                                       -------    ----                  
...
Command Line Tools for Xcode                       15.1       17/12/2023, 14:40:49  
...

ml-metadata % xcode-select --version                                             
xcode-select version 2397.

Try updating Xcode to the latest maybe?

Still according to other answer my understanding to check for updates is:

ml-metadata % softwareupdate --list --verbose                         
Software Update Tool

Finding available software
Software Update found the following new or updated software:
* Label: macOS Sonoma 14.2-23C64
	Title: macOS Sonoma 14.2, Version: 14.2, Size: 6779629KiB, Recommended: YES, Action: restart, 

but it only shows MacOS Sonoma for available updates.

Out of curiosity, on which version are you on?
Happy to try out other attempts if that helps

(again, thank you all again for these efforts 🙏 )

@tangm
Copy link

tangm commented Dec 17, 2023

@tarilabs You actually do need Xcode to be upgraded, not just the command line tools. Not familiar enough with macs to know why, but it seems the clang version is tied to the Xcode version and not the command line tools. To verify:

  • Get clang version with clang --version
  • Get xcode version with xcodebuild -version
    For me the build succeeded when they were both 15.0. I suspect your clang might still be 14.x, even though your command line tools is on 15.1. If you upgrade xcode, clang should also be upgraded.

@tarilabs
Copy link
Contributor

Thanks @tangm , looks like I'm already on clang 15.0:

% clang --version
Apple clang version 15.0.0 (clang-1500.1.0.2.5)
Target: arm64-apple-darwin22.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

but I will try to see if fiddling with Xcode more solves...

@tangm
Copy link

tangm commented Dec 18, 2023

@tarilabs I see, that's good to know. So much for clang version being the culprit 😆 And what version do you get with xcodebuild -version ?
Interestingly enough, my clang's installeddir is InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin so maybe the Xcode version could still be a possibility

@tarilabs
Copy link
Contributor

Thank you so much @tangm and @gerilya

using Xcode (not commandlinetools) and 09bc9e92927387b05d76288fb50be7365f0c7ae7 build completes fine

Despite being the same clang version (Apple clang version 15.0.0 (clang-1500.1.0.2.5)), using Xcode instead of commandlinetools, seems to have done the trick and the build is successful:

screenshot

Screenshot 2023-12-18 at 11 16 38

To recap, the above screenshot is with:

  • 09bc9e92927387b05d76288fb50be7365f0c7ae7 checked out from this PR as noted in @gerilya 's comment
  • Xcode, not command line tools, installed (despite was same clang version)
  • bazelisk installed via homebrew
  • commands as noted in PR:
bazel clean --expunge
export USE_BAZEL_VERSION=6.4.0
python setup.py bdist_wheel

This is super helpful, thank you so much!

workarounds I've applied locally

I believe the approach proposed in this thread is way better than a workaround I was experimenting with personally, as I have the need of using the Python MLMD lib/wheel on my Mac to connect to a remote MLMD server via gRPC; I was experimenting with a variant that strips away any binaries inside the wheel (since I always connect to the remote gRPC of the MLMD server running in Docker or remotely) in two flavours:

  • starting with the MLMD python wheel file .whl, remove the binaries, and repackaging (example here)
  • starting with this MLMD google upstream repo, and making a python wheel which does not include the local server binary (example here)

.

Thank you for all the people who are making these efforts to make this works with ARM/Apple-silicon natively 🙏

@tangm
Copy link

tangm commented Dec 18, 2023

In case anyone came here trying to make tfx work, I've written up what worked for me to get tfx==1.14.0 working on apple silicon here.

EDIT: Instructions for building against master here as well.

@xixici
Copy link

xixici commented Dec 19, 2023

@tangm Can you share your wheels in some ways? 😃

@tangm
Copy link

tangm commented Dec 28, 2023

@tangm Can you share your wheels in some ways? 😃

Apologies for the late reply @xixici , the wheels seem to be python version specific, so it may be more relevant if you can actually build them locally for your environment. What specific errors are you running into trying to build them?

@tangm
Copy link

tangm commented Dec 28, 2023

@rcrowe-google @ryanpeters-google Is there anything we can do to help move #166 through to get support for apple silicon in? Happy to put in more work, but it would really help if there were some signs of progress or updates at some level.

Also, tensorflow/tfx-bsl#73 and tensorflow/data-validation#251 seems like all that are needed to make tfx runnable on apple silicon, happy to @ the appropriate people to move it along

@xixici
Copy link

xixici commented Dec 29, 2023

@tangm Can you share your wheels in some ways? 😃

Apologies for the late reply @xixici , the wheels seem to be python version specific, so it may be more relevant if you can actually build them locally for your environment. What specific errors are you running into trying to build them?

I have found one wheel from others. Anyway, Thanks for your reply.

@rcrowe-google
Copy link
Collaborator

@rcrowe-google @ryanpeters-google Is there anything we can do to help move #166 through to get support for apple silicon in? Happy to put in more work, but it would really help if there were some signs of progress or updates at some level.

Also, tensorflow/tfx-bsl#73 and tensorflow/data-validation#251 seems like all that are needed to make tfx runnable on apple silicon, happy to @ the appropriate people to move it along

Hi @tangm - Just a quick note that we are actively looking at all three PRs (166, 73, and 251). We have some system issues with testing that we're trying to work out, but we have a dependency on another team.

@tangm
Copy link

tangm commented Jan 4, 2024

Hi @tangm - Just a quick note that we are actively looking at all three PRs (166, 73, and 251). We have some system issues with testing that we're trying to work out, but we have a dependency on another team.

@rcrowe-google Thank you for following up on this, it's heartening to hear 🙇🏻‍♂️🙏

@thesuperzapper
Copy link

@rcrowe-google should I bother rebasing #188, will there be any possibility of merging it?

Because that PR at least makes the container build process work for gcr.io/tfx-oss-public/ml_metadata_store_server on ARM systems.

@rcrowe-google
Copy link
Collaborator

@rcrowe-google should I bother rebasing #188, will there be any possibility of merging it?

Because that PR at least makes the container build process work for gcr.io/tfx-oss-public/ml_metadata_store_server on ARM systems.

Yes, although there will be a delay in merging it. We are actively looking at a process change that is designed to make it easier to accept PRs like that. I know that it's frustrating, and that PRs wait far too long to be merged, so we want to fix that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests