xref: /aosp_15_r20/external/tensorflow/third_party/mkl/BUILD (revision b6fb3261f9314811a0f4371741dbb8839866f948)
1*b6fb3261SAndroid Build Coastguard Workerlicenses(["notice"])  # 3-Clause BSD
2*b6fb3261SAndroid Build Coastguard Worker
3*b6fb3261SAndroid Build Coastguard Workerload("@bazel_skylib//:bzl_library.bzl", "bzl_library")
4*b6fb3261SAndroid Build Coastguard Worker
5*b6fb3261SAndroid Build Coastguard Workerconfig_setting(
6*b6fb3261SAndroid Build Coastguard Worker    name = "build_with_mkl",
7*b6fb3261SAndroid Build Coastguard Worker    define_values = {
8*b6fb3261SAndroid Build Coastguard Worker        "build_with_mkl": "true",
9*b6fb3261SAndroid Build Coastguard Worker    },
10*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
11*b6fb3261SAndroid Build Coastguard Worker)
12*b6fb3261SAndroid Build Coastguard Worker
13*b6fb3261SAndroid Build Coastguard Workerconfig_setting(
14*b6fb3261SAndroid Build Coastguard Worker    name = "build_with_mkl_lnx_x64",
15*b6fb3261SAndroid Build Coastguard Worker    define_values = {
16*b6fb3261SAndroid Build Coastguard Worker        "build_with_mkl": "true",
17*b6fb3261SAndroid Build Coastguard Worker    },
18*b6fb3261SAndroid Build Coastguard Worker    values = {
19*b6fb3261SAndroid Build Coastguard Worker        "cpu": "k8",
20*b6fb3261SAndroid Build Coastguard Worker    },
21*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
22*b6fb3261SAndroid Build Coastguard Worker)
23*b6fb3261SAndroid Build Coastguard Worker
24*b6fb3261SAndroid Build Coastguard Workerconfig_setting(
25*b6fb3261SAndroid Build Coastguard Worker    name = "build_with_mkl_lnx_openmp",
26*b6fb3261SAndroid Build Coastguard Worker    constraint_values = [
27*b6fb3261SAndroid Build Coastguard Worker        "@platforms//os:linux",
28*b6fb3261SAndroid Build Coastguard Worker    ],
29*b6fb3261SAndroid Build Coastguard Worker    define_values = {
30*b6fb3261SAndroid Build Coastguard Worker        "build_with_mkl": "true",
31*b6fb3261SAndroid Build Coastguard Worker        "build_with_openmp": "true",
32*b6fb3261SAndroid Build Coastguard Worker    },
33*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
34*b6fb3261SAndroid Build Coastguard Worker)
35*b6fb3261SAndroid Build Coastguard Worker
36*b6fb3261SAndroid Build Coastguard Workerconfig_setting(
37*b6fb3261SAndroid Build Coastguard Worker    name = "build_with_mkl_windows_openmp",
38*b6fb3261SAndroid Build Coastguard Worker    constraint_values = [
39*b6fb3261SAndroid Build Coastguard Worker        "@platforms//os:windows",
40*b6fb3261SAndroid Build Coastguard Worker    ],
41*b6fb3261SAndroid Build Coastguard Worker    define_values = {
42*b6fb3261SAndroid Build Coastguard Worker        "build_with_mkl": "true",
43*b6fb3261SAndroid Build Coastguard Worker        "build_with_openmp": "true",
44*b6fb3261SAndroid Build Coastguard Worker    },
45*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
46*b6fb3261SAndroid Build Coastguard Worker)
47*b6fb3261SAndroid Build Coastguard Worker
48*b6fb3261SAndroid Build Coastguard Workerconfig_setting(
49*b6fb3261SAndroid Build Coastguard Worker    name = "build_with_mkl_aarch64",
50*b6fb3261SAndroid Build Coastguard Worker    define_values = {
51*b6fb3261SAndroid Build Coastguard Worker        "build_with_mkl_aarch64": "true",
52*b6fb3261SAndroid Build Coastguard Worker    },
53*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
54*b6fb3261SAndroid Build Coastguard Worker)
55*b6fb3261SAndroid Build Coastguard Worker
56*b6fb3261SAndroid Build Coastguard Workerconfig_setting(
57*b6fb3261SAndroid Build Coastguard Worker    name = "enable_mkl",
58*b6fb3261SAndroid Build Coastguard Worker    define_values = {
59*b6fb3261SAndroid Build Coastguard Worker        "enable_mkl": "true",
60*b6fb3261SAndroid Build Coastguard Worker        "build_with_mkl": "true",
61*b6fb3261SAndroid Build Coastguard Worker    },
62*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
63*b6fb3261SAndroid Build Coastguard Worker)
64*b6fb3261SAndroid Build Coastguard Worker
65*b6fb3261SAndroid Build Coastguard Workerfilegroup(
66*b6fb3261SAndroid Build Coastguard Worker    name = "LICENSE",
67*b6fb3261SAndroid Build Coastguard Worker    srcs = [
68*b6fb3261SAndroid Build Coastguard Worker        "MKL_LICENSE",
69*b6fb3261SAndroid Build Coastguard Worker        "@llvm_openmp//:LICENSE.txt",
70*b6fb3261SAndroid Build Coastguard Worker    ],
71*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
72*b6fb3261SAndroid Build Coastguard Worker)
73*b6fb3261SAndroid Build Coastguard Worker
74*b6fb3261SAndroid Build Coastguard Worker# TODO(Intel-tf) Remove the following 3 calls to cc_library and replace all uses
75*b6fb3261SAndroid Build Coastguard Worker# of mkl_libs_* with @llvm_openmp//:libiomp5.* directly.
76*b6fb3261SAndroid Build Coastguard Worker
77*b6fb3261SAndroid Build Coastguard Workercc_library(
78*b6fb3261SAndroid Build Coastguard Worker    name = "mkl_libs_linux",
79*b6fb3261SAndroid Build Coastguard Worker    srcs = [
80*b6fb3261SAndroid Build Coastguard Worker        "@llvm_openmp//:libiomp5.so",
81*b6fb3261SAndroid Build Coastguard Worker    ],
82*b6fb3261SAndroid Build Coastguard Worker    hdrs = ["@llvm_openmp//:config_omp"],
83*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
84*b6fb3261SAndroid Build Coastguard Worker)
85*b6fb3261SAndroid Build Coastguard Worker
86*b6fb3261SAndroid Build Coastguard Worker# MacOS build configuration is provided for completness, it has not been tested
87*b6fb3261SAndroid Build Coastguard Workercc_library(
88*b6fb3261SAndroid Build Coastguard Worker    name = "mkl_libs_darwin",
89*b6fb3261SAndroid Build Coastguard Worker    srcs = [
90*b6fb3261SAndroid Build Coastguard Worker        "@llvm_openmp//:libiomp5.dylib",
91*b6fb3261SAndroid Build Coastguard Worker    ],
92*b6fb3261SAndroid Build Coastguard Worker    hdrs = ["@llvm_openmp//:config_omp"],
93*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
94*b6fb3261SAndroid Build Coastguard Worker)
95*b6fb3261SAndroid Build Coastguard Worker
96*b6fb3261SAndroid Build Coastguard Workercc_library(
97*b6fb3261SAndroid Build Coastguard Worker    name = "mkl_libs_windows",
98*b6fb3261SAndroid Build Coastguard Worker    srcs = [
99*b6fb3261SAndroid Build Coastguard Worker        "@llvm_openmp//:libiomp5md.dll",
100*b6fb3261SAndroid Build Coastguard Worker    ],
101*b6fb3261SAndroid Build Coastguard Worker    hdrs = ["@llvm_openmp//:config_omp"],
102*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
103*b6fb3261SAndroid Build Coastguard Worker)
104*b6fb3261SAndroid Build Coastguard Worker
105*b6fb3261SAndroid Build Coastguard Workercc_library(
106*b6fb3261SAndroid Build Coastguard Worker    name = "intel_binary_blob",
107*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
108*b6fb3261SAndroid Build Coastguard Worker    deps = select({
109*b6fb3261SAndroid Build Coastguard Worker        "@org_tensorflow//tensorflow:linux_x86_64": [
110*b6fb3261SAndroid Build Coastguard Worker            ":mkl_libs_linux",
111*b6fb3261SAndroid Build Coastguard Worker        ],
112*b6fb3261SAndroid Build Coastguard Worker        "@org_tensorflow//tensorflow:macos": [
113*b6fb3261SAndroid Build Coastguard Worker            ":mkl_libs_darwin",
114*b6fb3261SAndroid Build Coastguard Worker        ],
115*b6fb3261SAndroid Build Coastguard Worker        "@org_tensorflow//tensorflow:windows": [
116*b6fb3261SAndroid Build Coastguard Worker            ":mkl_libs_windows",
117*b6fb3261SAndroid Build Coastguard Worker        ],
118*b6fb3261SAndroid Build Coastguard Worker        "//conditions:default": [],
119*b6fb3261SAndroid Build Coastguard Worker    }),
120*b6fb3261SAndroid Build Coastguard Worker)
121*b6fb3261SAndroid Build Coastguard Worker
122*b6fb3261SAndroid Build Coastguard Workerbzl_library(
123*b6fb3261SAndroid Build Coastguard Worker    name = "build_defs_bzl",
124*b6fb3261SAndroid Build Coastguard Worker    srcs = ["build_defs.bzl"],
125*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
126*b6fb3261SAndroid Build Coastguard Worker)
127