From 5f79cb38e4a90e4fc11c73bb1f87152f7da8204d Mon Sep 17 00:00:00 2001 From: Elliot Saba Date: Fri, 21 Jan 2022 04:01:49 -0800 Subject: [PATCH] [LinearAlgebra] Bump libblastrampoline to v4.0.0 (#43877) This version allows loading of dual-interface libraries, such as MKL v2022+. It enables both providing a suffix hint when loading a library (to force detection of ILP64 or LP64 symbols) as well as being able to load the same library for multiple interfaces. --- deps/Versions.make | 2 +- deps/checksums/blastrampoline | 66 +++++++++++------------ stdlib/LinearAlgebra/src/lbt.jl | 4 +- stdlib/libblastrampoline_jll/Project.toml | 4 +- 4 files changed, 37 insertions(+), 39 deletions(-) diff --git a/deps/Versions.make b/deps/Versions.make index 356c869278c14..abfa7f175d1d2 100644 --- a/deps/Versions.make +++ b/deps/Versions.make @@ -75,7 +75,7 @@ OBJCONV_JLL_NAME := Objconv OBJCONV_JLL_VER := 2.49.1+0 # blastrampoline -BLASTRAMPOLINE_VER := 3.0.4 +BLASTRAMPOLINE_VER := 4.0.0 BLASTRAMPOLINE_JLL_NAME := libblastrampoline # OpenBLAS diff --git a/deps/checksums/blastrampoline b/deps/checksums/blastrampoline index 5b3a5d01c051c..24e58247de867 100644 --- a/deps/checksums/blastrampoline +++ b/deps/checksums/blastrampoline @@ -1,34 +1,32 @@ -blastrampoline-23de7a09bf354fe6f655c457bab5bf47fdd2486d.tar.gz/md5/b81efa951fd909591339189f5909ff6b -blastrampoline-23de7a09bf354fe6f655c457bab5bf47fdd2486d.tar.gz/sha512/1c2558bab0aeaa76e7094d8a6a9798c95f2cf4efe2960640b70f1fd752f3dfb73813d9de93b539426376571febaab22ac22c2f903ccdf3296c7b067af92fecdc -libblastrampoline.v3.1.0+0.aarch64-apple-darwin.tar.gz/md5/9a72574c810323ebe7b496266a5b3d90 -libblastrampoline.v3.1.0+0.aarch64-apple-darwin.tar.gz/sha512/559c91374882a137ce8b9f008e9d815dfebc175f65ac07bf784d590e31a07f60302de3d498e5dcc3f409f59fc2c7fbd1fb32623d25ed65bcc31c35a74c11f260 -libblastrampoline.v3.1.0+0.aarch64-linux-gnu.tar.gz/md5/95802755d3b6205c88163ba313662fac -libblastrampoline.v3.1.0+0.aarch64-linux-gnu.tar.gz/sha512/7e3198429602fdd1196a45007e08a9b4fef2d303f8c7d7ff423fd19dfa970519d7402e95ea9acb32e7cd236b2c2f162e864a08f6062a8990cf9cbf75271a4074 -libblastrampoline.v3.1.0+0.aarch64-linux-musl.tar.gz/md5/f1251167736acfcbe7a3fe0398796702 -libblastrampoline.v3.1.0+0.aarch64-linux-musl.tar.gz/sha512/0564e79d44f2a53604a3941b9b638865e8f3f5b2945e43c08643a6fd13e3162c8c6ed156bc7f9f6fc69d0b6b23a8abd493ce4dc847b78f4cfe4a0bf5583fe4f0 -libblastrampoline.v3.1.0+0.armv6l-linux-gnueabihf.tar.gz/md5/fe48bd1c1c0db93db72ded0df968ff40 -libblastrampoline.v3.1.0+0.armv6l-linux-gnueabihf.tar.gz/sha512/6958a727a25668ecdbc9b38e1562239df64900ac426b13b1949a68cfb6c481b7431a70764343a9c3e65c683b5083d15881e7c6d2adc9bc3450d0816f54fcf224 -libblastrampoline.v3.1.0+0.armv6l-linux-musleabihf.tar.gz/md5/28be9a338c9ea2f5c1b82a6230ff8324 -libblastrampoline.v3.1.0+0.armv6l-linux-musleabihf.tar.gz/sha512/53d4e5ba559872c9aac60cb995df6d9711617f728a22b1b8f8dfb3f7286c8bd62f24dcedf428b457e1062799e31b9a68a17b653daae2f01131aa86d0801bbb32 -libblastrampoline.v3.1.0+0.armv7l-linux-gnueabihf.tar.gz/md5/c1f1dcd14e110b1723557b9c0932637d -libblastrampoline.v3.1.0+0.armv7l-linux-gnueabihf.tar.gz/sha512/b573de04784dfd7803616a968675ce314af2ca4429029d57186619bf1b10d83d32801bcb74dd82430cb33d53d97117b9dd6d5cd64bb5c3850148a2414a0499f3 -libblastrampoline.v3.1.0+0.armv7l-linux-musleabihf.tar.gz/md5/f00cc93db3543dce1492314fd8670c20 -libblastrampoline.v3.1.0+0.armv7l-linux-musleabihf.tar.gz/sha512/13569d8aed844c1fb48a4e125bc822588fb795707e247f14e1b25dcd4622204f5b7bb976e50cb0fe9d49f1a327a37c2da43ebf0d2b4aac4d5e911e7c49046847 -libblastrampoline.v3.1.0+0.i686-linux-gnu.tar.gz/md5/867876ae938dff24a73f0f2f3ffc0544 -libblastrampoline.v3.1.0+0.i686-linux-gnu.tar.gz/sha512/cd7426ccc7eb59c7367ec5f23813d2cc19aac62eb0c43a2f769270f16da8daaece7dbde78e1487dd9ab624eb6389683400ee5a0654e45d6ba4f13496b9330cb5 -libblastrampoline.v3.1.0+0.i686-linux-musl.tar.gz/md5/57d1942e23432b6a99365170473be723 -libblastrampoline.v3.1.0+0.i686-linux-musl.tar.gz/sha512/775eb115df4554a04cc13c407915287a3917307c97f5e04618315478a862cc2d75597ac391d05e7ccbeb901a9bebc89e1ebb9e608b4737229eef253204d6f058 -libblastrampoline.v3.1.0+0.i686-w64-mingw32.tar.gz/md5/8548d8ffacfcf5708b8df80d3ec81ad9 -libblastrampoline.v3.1.0+0.i686-w64-mingw32.tar.gz/sha512/2397a03aae3794b8376606b88f33e3dd4ee4801a2f8e0cff5f28fd16a24024acb4babe6c5e041c1b04ac3dca025160d78c85b37a8ae8948d5969b2f618ea9053 -libblastrampoline.v3.1.0+0.powerpc64le-linux-gnu.tar.gz/md5/a6dad5de86fab27cbe80eee54d5ce995 -libblastrampoline.v3.1.0+0.powerpc64le-linux-gnu.tar.gz/sha512/5b9a0632c89c5b6e2660a88212293cbfe707cfc4b6d86abd1887068843c42da6513f65ca9601fa78baef508877c9e682cbbddc88a513692373c3c373c6b2d939 -libblastrampoline.v3.1.0+0.x86_64-apple-darwin.tar.gz/md5/03e1a3ee1647d5056cd459c49ab46e73 -libblastrampoline.v3.1.0+0.x86_64-apple-darwin.tar.gz/sha512/de5e772876b4ebcdd2981d382c613849c79206adfcc1eeac03e7b4d146fb33cbffe2b66791b9a02ad216d1959aaa56cbd36e9a8fc3f633216141280a27ff5b92 -libblastrampoline.v3.1.0+0.x86_64-linux-gnu.tar.gz/md5/d731c29b90a26b70a2d65d15a213be33 -libblastrampoline.v3.1.0+0.x86_64-linux-gnu.tar.gz/sha512/558aac3893e1d4e15dfd48b8be0567774560b6cd063d46ab935dd20f62a1abfb6e89d549cb010aa1b9c30fdc86bbea43bc16921819a7e5446cc6a9f3c6c293ad -libblastrampoline.v3.1.0+0.x86_64-linux-musl.tar.gz/md5/9023d6dc4822e523cbd6071ca0f39557 -libblastrampoline.v3.1.0+0.x86_64-linux-musl.tar.gz/sha512/34d13ddaded44c2bf48f61489650c638d51bc52e4cfee3bfd89dbdcd3895d3e5a862c88c05fa76a1bf29e410125209fde717ffede9b4f4a39705d1866848df62 -libblastrampoline.v3.1.0+0.x86_64-unknown-freebsd.tar.gz/md5/b68495b29ad8b31e4a4888cbbbe15ec1 -libblastrampoline.v3.1.0+0.x86_64-unknown-freebsd.tar.gz/sha512/8783ba5a2b8f9391d0429045cf369889dd99b7253bf6a259bc613dedd038722a0f556c13a9c9c38da7ffd1050ee768d3d614944726629c7aa9b16f56e5b4a9e1 -libblastrampoline.v3.1.0+0.x86_64-w64-mingw32.tar.gz/md5/0a0a31950022a56de76698bf5b14bb08 -libblastrampoline.v3.1.0+0.x86_64-w64-mingw32.tar.gz/sha512/dfc1797cfe64b09381227508d16872421af99f416ffe5c3703f0fed4a88f8d52b2dd7f811388442264fe3060012b7df55f6f2a2b08887b0a36307804a978a6da +libblastrampoline.v4.0.0+0.aarch64-apple-darwin.tar.gz/md5/7d816200f4a97199996a67af0ba2acd5 +libblastrampoline.v4.0.0+0.aarch64-apple-darwin.tar.gz/sha512/fd3037ba25b9e874cc99bcacddb4a7a7777a493cc2c6323ad34e2dc927c2934d8f2092b6fa0058f3bdd3f2c3bf9b99387ce23590d11b0b7ef06ff9908f051979 +libblastrampoline.v4.0.0+0.aarch64-linux-gnu.tar.gz/md5/5b43a9709a478fe481b55a70b828e951 +libblastrampoline.v4.0.0+0.aarch64-linux-gnu.tar.gz/sha512/6096877375ce430239e7e074c688349669cefd24e3bd677453620ad06fb17b4a6addcca10f8c4d929c24bbf6a80c54b3f922a9db0ad4023cff1e7da7fa82adf7 +libblastrampoline.v4.0.0+0.aarch64-linux-musl.tar.gz/md5/50a474f71ebfc02d70bf2810d4dc460b +libblastrampoline.v4.0.0+0.aarch64-linux-musl.tar.gz/sha512/99293784a634286b44e5aaaf196d88f9bc607cfda24f833c30373f3d35a44fafbbd2203ea9c002826d55208a47f4de6c73dec02b56023f15293f69f7712411ab +libblastrampoline.v4.0.0+0.armv6l-linux-gnueabihf.tar.gz/md5/f68256af2059ac4d64c07529380500ac +libblastrampoline.v4.0.0+0.armv6l-linux-gnueabihf.tar.gz/sha512/804a79c8fcea320e67976b49747a41d5227c7680e0adf3c1c3e925853773418b2240f7a34de34f0fce933234479ef5e33e297cc29749f6187adf9bc15da76382 +libblastrampoline.v4.0.0+0.armv6l-linux-musleabihf.tar.gz/md5/c15fb498f38e2beb983611d505a40924 +libblastrampoline.v4.0.0+0.armv6l-linux-musleabihf.tar.gz/sha512/647454fab5a8600827aea7c5d73b5f6350bd52f4efe8cb452cb0007d7d523caa90912653e0358c58aa6c36488445882e25a212d345c743913a5402fc2db92e73 +libblastrampoline.v4.0.0+0.armv7l-linux-gnueabihf.tar.gz/md5/584366bb093ca3c60fbbde94bb63c18b +libblastrampoline.v4.0.0+0.armv7l-linux-gnueabihf.tar.gz/sha512/e9e1d04a483845b3b62a0270d1ff2ed34b583f21788118cc1fc51ef9047c69cc2633608edefffe629d101736cdb08f87071a233e3bec3ea961d6b7ad27fd55b2 +libblastrampoline.v4.0.0+0.armv7l-linux-musleabihf.tar.gz/md5/3dd37977f077a1ebb07c8cbd7052b906 +libblastrampoline.v4.0.0+0.armv7l-linux-musleabihf.tar.gz/sha512/ef18543df02d643a83b8a68264fa739a3568da624b5a40d16ba22a6ecd9acf3a85a62bb1979dca98574126a0cdd51732795a50665607580f95b8ae08eb5880f1 +libblastrampoline.v4.0.0+0.i686-linux-gnu.tar.gz/md5/e1c7d1d9046a15e0446fd826f17038d0 +libblastrampoline.v4.0.0+0.i686-linux-gnu.tar.gz/sha512/482ee1fbe2a183c11f20b4ebbcd10a053fa6d3bd68190339a39dfbaa768bf5baac0f24b68087b92c5f7489b277ca35f0a84e766d0f23c623f3fcd0cc4bbeb67d +libblastrampoline.v4.0.0+0.i686-linux-musl.tar.gz/md5/34ea6a4e3ec73e842aca69930342bbb7 +libblastrampoline.v4.0.0+0.i686-linux-musl.tar.gz/sha512/97cfcd3659d700a915f0b9ffcd4039bed0dd0bccf786bf2b037304c3cd2f9c033c58ecb5268f2a7a3d43de1f59f85f562e9fd71fd05b2b5e2cba73331fa009e2 +libblastrampoline.v4.0.0+0.i686-w64-mingw32.tar.gz/md5/713fb54fd7373847b314002dc90b0c8e +libblastrampoline.v4.0.0+0.i686-w64-mingw32.tar.gz/sha512/6535266ff16e7487bf3971b29a6662781beb38b385a6a07d1581702f19aa44ba7ab8c02d6d5934304c38cb918ba5ecfc0a05a2af6dd1ac07ea71084d879a0fc3 +libblastrampoline.v4.0.0+0.powerpc64le-linux-gnu.tar.gz/md5/70c5629d1c50fe8d7d036dd272bd38fe +libblastrampoline.v4.0.0+0.powerpc64le-linux-gnu.tar.gz/sha512/69ed2ba821a278f0545df798f084c8a3912966b8831ffadb9a1262ee9212ded65dfcfa9282e3982c02c54d0121f29d6d66bf7d68866c93f34724f87f898a93b1 +libblastrampoline.v4.0.0+0.x86_64-apple-darwin.tar.gz/md5/daf5d34cadbc15912d67b584f59e220e +libblastrampoline.v4.0.0+0.x86_64-apple-darwin.tar.gz/sha512/becfc35ffe9d0db8569b74ff6056dc6e0c685c93f3cb24104e0ae5f8232262fea1ad1507d06a389d95ec761ffd60ee094bcf4cd000a89c959b812bc0271d781e +libblastrampoline.v4.0.0+0.x86_64-linux-gnu.tar.gz/md5/333b89ae831b9b3479542da44a850e44 +libblastrampoline.v4.0.0+0.x86_64-linux-gnu.tar.gz/sha512/27179020499e378fe62217832ef47af6b57fd1abe6eda9cf31432f435157d5c6da025200b827ecf7508141e515cb21192366aba3d60658b7e8ab36e2e3bd7adc +libblastrampoline.v4.0.0+0.x86_64-linux-musl.tar.gz/md5/cf0219c4f8901a961cab5bf1043892d7 +libblastrampoline.v4.0.0+0.x86_64-linux-musl.tar.gz/sha512/b18d1e2d215060e95484e53cc56a7a8dea46d0c58c2b9c6664e3783cbabed7a2838a67f5aeed418c4a4304ecb2419f0f1e362c3161b29967b7d2274b3bb5b960 +libblastrampoline.v4.0.0+0.x86_64-unknown-freebsd.tar.gz/md5/e46abe31f535f8e639ac16900afc8d9d +libblastrampoline.v4.0.0+0.x86_64-unknown-freebsd.tar.gz/sha512/a9ecedc78451ebce290b7ae6ccfd3ee6ba1ab53e73c36f5f22925c9e9520452fd9948954e7f3e1a970a03ec592acf4336227c080cde43a7c89cd049eace502b1 +libblastrampoline.v4.0.0+0.x86_64-w64-mingw32.tar.gz/md5/4f1dfd23d177ba44322a643bf2bd69a4 +libblastrampoline.v4.0.0+0.x86_64-w64-mingw32.tar.gz/sha512/29cf3ab251e521207b1c9ce7bb73495fb33c549ed7f28e08e6b10d299b9aa6a1d4dc41ed63ffbc21ab8df22d983339050e2cd6cda92c84fb4c3fd3d5e1f21631 diff --git a/stdlib/LinearAlgebra/src/lbt.jl b/stdlib/LinearAlgebra/src/lbt.jl index 26b3a1210a3f9..ea1ab25c9e1a8 100644 --- a/stdlib/LinearAlgebra/src/lbt.jl +++ b/stdlib/LinearAlgebra/src/lbt.jl @@ -156,8 +156,8 @@ function lbt_set_num_threads(nthreads) return ccall((:lbt_set_num_threads, libblastrampoline), Cvoid, (Int32,), nthreads) end -function lbt_forward(path; clear::Bool = false, verbose::Bool = false) - ccall((:lbt_forward, libblastrampoline), Int32, (Cstring, Int32, Int32), path, clear ? 1 : 0, verbose ? 1 : 0) +function lbt_forward(path; clear::Bool = false, verbose::Bool = false, suffix_hint::Union{String,Nothing} = nothing) + ccall((:lbt_forward, libblastrampoline), Int32, (Cstring, Int32, Int32, Cstring), path, clear ? 1 : 0, verbose ? 1 : 0, something(suffix_hint, C_NULL)) end function lbt_set_default_func(addr) diff --git a/stdlib/libblastrampoline_jll/Project.toml b/stdlib/libblastrampoline_jll/Project.toml index b8d84b80b527f..57801bbb7274b 100644 --- a/stdlib/libblastrampoline_jll/Project.toml +++ b/stdlib/libblastrampoline_jll/Project.toml @@ -1,6 +1,6 @@ name = "libblastrampoline_jll" uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" -version = "3.1.0+0" +version = "4.0.0+0" [deps] Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb" @@ -8,7 +8,7 @@ Artifacts = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" OpenBLAS_jll = "4536629a-c528-5b80-bd46-f80d51c5b363" [compat] -julia = "1.7" +julia = "1.8" [extras] Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"