google-research

Форк
0
56 строк · 1.6 Кб
1
# Description:
2
#   Eigen is a C++ template library for linear algebra: vectors,
3
#   matrices, and related algorithms.
4

5
licenses([
6
    # Note: Eigen is an MPL2 library that includes GPL v3 and LGPL v2.1+ code.
7
    #       We've taken special care to not reference any restricted code.
8
    "reciprocal",  # MPL2
9
    "notice",  # Portions BSD
10
])
11

12
exports_files(["COPYING.MPL2"])
13

14
EIGEN_FILES = [
15
    "Eigen/**",
16
    "unsupported/Eigen/CXX11/**",
17
    "unsupported/Eigen/FFT",
18
    "unsupported/Eigen/KroneckerProduct",
19
    "unsupported/Eigen/src/FFT/**",
20
    "unsupported/Eigen/src/KroneckerProduct/**",
21
    "unsupported/Eigen/MatrixFunctions",
22
    "unsupported/Eigen/SpecialFunctions",
23
    "unsupported/Eigen/src/MatrixFunctions/**",
24
    "unsupported/Eigen/src/SpecialFunctions/**",
25
]
26

27
# Files known to be under MPL2 license.
28
EIGEN_MPL2_HEADER_FILES = glob(
29
    EIGEN_FILES,
30
    exclude = [
31
        # Guarantees that any non-MPL2 file added to the list above will fail to
32
        # compile.
33
        "Eigen/src/Core/util/NonMPL2.h",
34
        "Eigen/**/CMakeLists.txt",
35
    ],
36
)
37

38
cc_library(
39
    name = "eigen",
40
    hdrs = EIGEN_MPL2_HEADER_FILES,
41
    defines = [
42
        # This define (mostly) guarantees we don't link any problematic
43
        # code. We use it, but we do not rely on it, as evidenced above.
44
        "EIGEN_MPL2_ONLY",
45
        "EIGEN_MAX_ALIGN_BYTES=64",
46
        "EIGEN_HAS_TYPE_TRAITS=0",
47
    ],
48
    includes = ["."],
49
    visibility = ["//visibility:public"],
50
)
51

52
filegroup(
53
    name = "eigen_header_files",
54
    srcs = EIGEN_MPL2_HEADER_FILES,
55
    visibility = ["//visibility:public"],
56
)
57

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.