blob: 9fbf82e0d794f11a06c340f763d7cec9676deda4 [file] [log] [blame]
Marat Dukhan08c4a432019-10-03 09:29:21 -07001workspace(name = "xnnpack")
2
3load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
4
Marat Dukhan79eda122020-04-11 17:02:41 -07005# Bazel rule definitions
6http_archive(
7 name = "rules_cc",
8 strip_prefix = "rules_cc-master",
9 urls = ["https://github.com/bazelbuild/rules_cc/archive/master.zip"],
10)
11
Marat Dukhan08c4a432019-10-03 09:29:21 -070012# Google Test framework, used by most unit-tests.
13http_archive(
Marat Dukhan79eda122020-04-11 17:02:41 -070014 name = "com_google_googletest",
15 strip_prefix = "googletest-master",
16 urls = ["https://github.com/google/googletest/archive/master.zip"],
Marat Dukhan08c4a432019-10-03 09:29:21 -070017)
18
19# Google Benchmark library, used in micro-benchmarks.
20http_archive(
21 name = "com_google_benchmark",
Marat Dukhan08c4a432019-10-03 09:29:21 -070022 strip_prefix = "benchmark-master",
Marat Dukhan79eda122020-04-11 17:02:41 -070023 urls = ["https://github.com/google/benchmark/archive/master.zip"],
Marat Dukhan08c4a432019-10-03 09:29:21 -070024)
25
26# FP16 library, used for half-precision conversions
27http_archive(
28 name = "FP16",
Marat Dukhan0952f412020-04-13 02:04:41 -070029 strip_prefix = "FP16-3c54eacb74f6f5e39077300c5564156c424d77ba",
30 sha256 = "0d56bb92f649ec294dbccb13e04865e3c82933b6f6735d1d7145de45da700156",
Marat Dukhan08c4a432019-10-03 09:29:21 -070031 urls = [
Marat Dukhan0952f412020-04-13 02:04:41 -070032 "https://github.com/Maratyszcza/FP16/archive/3c54eacb74f6f5e39077300c5564156c424d77ba.zip",
Marat Dukhan08c4a432019-10-03 09:29:21 -070033 ],
34 build_file = "@//third_party:FP16.BUILD",
35)
36
37# FXdiv library, used for repeated integer division by the same factor
38http_archive(
39 name = "FXdiv",
Marat Dukhan10a38082020-04-17 03:58:35 -070040 strip_prefix = "FXdiv-b408327ac2a15ec3e43352421954f5b1967701d1",
41 sha256 = "ab7dfb08829bee33dca38405d647868fb214ac685e379ec7ef2bebcd234cd44d",
42 urls = ["https://github.com/Maratyszcza/FXdiv/archive/b408327ac2a15ec3e43352421954f5b1967701d1.zip"],
Marat Dukhan08c4a432019-10-03 09:29:21 -070043)
44
45# pthreadpool library, used for parallelization
46http_archive(
47 name = "pthreadpool",
Marat Dukhan10a38082020-04-17 03:58:35 -070048 strip_prefix = "pthreadpool-e918b206d26b1f3b2100b0edabf445c18708d2b7",
49 sha256 = "c4b148fba41fc937fdf96bc195caadf0cf0be83f1c3e335ef5355934d4501f83",
50 urls = ["https://github.com/Maratyszcza/pthreadpool/archive/e918b206d26b1f3b2100b0edabf445c18708d2b7.zip"],
Marat Dukhan08c4a432019-10-03 09:29:21 -070051)
52
53# clog library, used for logging
54http_archive(
55 name = "clog",
56 strip_prefix = "cpuinfo-d5e37adf1406cf899d7d9ec1d317c47506ccb970",
57 sha256 = "3f2dc1970f397a0e59db72f9fca6ff144b216895c1d606f6c94a507c1e53a025",
58 urls = [
59 "https://github.com/pytorch/cpuinfo/archive/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz",
60 ],
61 build_file = "@//third_party:clog.BUILD",
62)
63
64# cpuinfo library, used for detecting processor characteristics
65http_archive(
66 name = "cpuinfo",
Marat Dukhanbd18b512020-03-25 15:29:30 -070067 strip_prefix = "cpuinfo-0cc563acb9baac39f2c1349bc42098c4a1da59e3",
68 sha256 = "80625d0b69a3d69b70c2236f30db2c542d0922ccf9bb51a61bc39c49fac91a35",
Marat Dukhan08c4a432019-10-03 09:29:21 -070069 urls = [
Marat Dukhanbd18b512020-03-25 15:29:30 -070070 "https://github.com/pytorch/cpuinfo/archive/0cc563acb9baac39f2c1349bc42098c4a1da59e3.tar.gz",
Marat Dukhan08c4a432019-10-03 09:29:21 -070071 ],
72 build_file = "@//third_party:cpuinfo.BUILD",
73)
74
75# psimd library, used for fallback 128-bit SIMD micro-kernels
76http_archive(
77 name = "psimd",
Marat Dukhan10a38082020-04-17 03:58:35 -070078 strip_prefix = "psimd-85427dd4c8521cc037a1ffa6fcd25c55fafc8a00",
79 sha256 = "db23c2bc4a58d6f40c181797e43103300edac7cf9d286ca81590543f66ab95d2",
80 urls = ["https://github.com/Maratyszcza/psimd/archive/85427dd4c8521cc037a1ffa6fcd25c55fafc8a00.zip"],
Marat Dukhan08c4a432019-10-03 09:29:21 -070081 build_file = "@//third_party:psimd.BUILD",
82)
83
Marat Dukhanbb0c2f82020-03-25 13:31:19 -070084# Ruy library, used to benchmark against
85http_archive(
Benoit Jacobb038fdc2020-03-25 12:14:20 -070086 name = "ruy",
Benoit Jacobb026e222020-04-16 12:30:03 -070087 strip_prefix = "ruy-9f53ba413e6fc879236dcaa3e008915973d67a4f",
88 sha256 = "fe8345f521bb378745ebdd0f8c5937414849936851d2ec2609774eb2d7098e54",
Benoit Jacobb038fdc2020-03-25 12:14:20 -070089 urls = [
Benoit Jacobb026e222020-04-16 12:30:03 -070090 "https://github.com/google/ruy/archive/9f53ba413e6fc879236dcaa3e008915973d67a4f.zip",
Benoit Jacobb038fdc2020-03-25 12:14:20 -070091 ],
92)
93
Marat Dukhan08c4a432019-10-03 09:29:21 -070094# Android NDK location and version is auto-detected from $ANDROID_NDK_HOME environment variable
95android_ndk_repository(name = "androidndk")
96
97# Android SDK location and API is auto-detected from $ANDROID_HOME environment variable
98android_sdk_repository(name = "androidsdk")