a74ebc9bac
The tools in genrules [1] correspond to the HOST's version, which is a problem if we are doing cross-platform builds. In this case, when I was using my M1 Mac to run on a Linux RBE platform, the Mac's python binaries (e.g. python3_9_aarch64-apple-darwin/bin/python3) were being uploaded to RBE and attempted to be used, which resulted in OSError: [Errno 8] Exec format error because the won't run on the Linux RBE machine. Thanks to tjgq@, I learned about exec_tools [2], which will use the version of the tools for the EXECUTION platform, which is exactly what we want. While debugging this, I added a minimal reproduction case in //experimental/bazel_test and updated the py_tools version in an effort to diagnose the issue further. We will need to contribute similar fixes to @spirv_tools [1] https://bazel.build/reference/be/general#genrule.tools [2] https://bazel.build/reference/be/general#genrule.exec_tools Bug: skia:12541 Change-Id: Ib14deb4e326d3103fd08c21e93afe342d751c17a Reviewed-on: https://skia-review.googlesource.com/c/skia/+/554518 Reviewed-by: Jorge Betancourt <jmbetancourt@google.com> |
||
---|---|---|
.. | ||
dawn | ||
dng_sdk | ||
expat | ||
libjpeg_turbo | ||
libpng | ||
libwebp | ||
perfetto | ||
piex | ||
vulkan_headers | ||
vulkan_tools | ||
vulkanmemoryallocator | ||
wuffs | ||
zlib | ||
README.md |
This folder is where we put BUILD.bazel files for external (e.g. third party) dependencies.
If a dependency supports Bazel, we should use those rules, but if the dependency does not, we need to create our own rules in a subdirectory.
These BUILD.bazel files are used in WORKSPACE.bazel (e.g. new_local_repository or new_git_repository).