[upstream_utils] Update to latest Eigen HEAD (#5996)

There hasn't been a release in 2.5 years.

There's performance improvements for some NEON instructions, UB fixes, a lot of internal cleanup with the jump from C++11 to C++14, and more constexpr.
This commit is contained in:
Tyler Veness
2023-12-03 16:18:19 -08:00
committed by GitHub
parent 890992a849
commit e8f8c0ceb0
284 changed files with 67270 additions and 61437 deletions

View File

@@ -95,7 +95,12 @@ def unsupported_inclusions(dp, f):
def main():
upstream_root = clone_repo("https://gitlab.com/libeigen/eigen.git", "3.4.0")
upstream_root = clone_repo(
"https://gitlab.com/libeigen/eigen.git",
# master on 2023-12-01
"96880810295b65d77057f4a7fb83a99a590122ad",
shallow=False,
)
wpilib_root = get_repo_root()
wpimath = os.path.join(wpilib_root, "wpimath")
@@ -104,15 +109,11 @@ def main():
for f in [
"0001-Disable-warnings.patch",
"0002-Intellisense-fix.patch",
"0003-Eigen-Sparse-fix-warnings-Wunused-but-set-variable.patch",
]:
git_am(os.path.join(wpilib_root, "upstream_utils/eigen_patches", f))
# Delete old install
for d in [
"src/main/native/thirdparty/eigen/include/Eigen",
"src/main/native/thirdparty/eigen/include/unsupported",
]:
for d in ["src/main/native/thirdparty/eigen/include"]:
shutil.rmtree(os.path.join(wpimath, d), ignore_errors=True)
# Copy Eigen headers into allwpilib
@@ -136,6 +137,11 @@ def main():
f, [os.path.join(wpimath, "src/main/native/thirdparty/eigen/include")]
)
shutil.copyfile(
os.path.join(upstream_root, ".clang-format"),
os.path.join(wpimath, "src/main/native/thirdparty/eigen/include/.clang-format"),
)
if __name__ == "__main__":
main()