• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2// This file is derived (manually) from the CMake targets.
3// We only consider the targets that dEQP depends on (including transitive
4// dependencies). Search for "GLSLANG_LIBRARIES" in dEQP.
5//
6// dEQP depends on:
7// - glslang
8//   - OGLCompiler
9//   - OSDependent
10//   - MachineIndependent
11//     - OGLCompiler
12//     - OSDependent
13//     - GenericCodeGen
14// - SPIRV (does not depend on SPIRV-Tools-opt because ENABLE_OPT=0)
15//   - MachineIndependent
16//     - ...
17// - SPVRemapper
18
19package {
20    default_applicable_licenses: ["external_deqp-deps_glslang_license"],
21}
22
23// Added automatically by a large-scale-change that took the approach of
24// 'apply every license found to every target'. While this makes sure we respect
25// every license restriction, it may not be entirely correct.
26//
27// e.g. GPL in an MIT project might only apply to the contrib/ directory.
28//
29// Please consider splitting the single license below into multiple licenses,
30// taking care not to lose any license_kind information, and overriding the
31// default license using the 'licenses: [...]' property on targets as needed.
32//
33// For unused files, consider creating a 'fileGroup' with "//visibility:private"
34// to attach the license to, and including a comment whether the files may be
35// used in the current project.
36//
37// large-scale-change included anything that looked like it might be a license
38// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
39//
40// Please consider removing redundant or irrelevant files from 'license_text:'.
41//
42// large-scale-change filtered out the below license kinds as false-positives:
43//   SPDX-license-identifier-GPL
44//   SPDX-license-identifier-GPL-3.0
45// See: http://go/android-license-faq
46license {
47    name: "external_deqp-deps_glslang_license",
48    visibility: [":__subpackages__"],
49    license_kinds: [
50        "SPDX-license-identifier-Apache-2.0",
51        "SPDX-license-identifier-BSD",
52        "SPDX-license-identifier-MIT",
53    ],
54    license_text: [
55        "LICENSE",
56        "LICENSE.txt",
57    ],
58}
59
60genrule {
61    name: "deqp_glslang_gen_build_info_h",
62    srcs: ["CHANGES.md", "build_info.h.tmpl"],
63    out: ["glslang/build_info.h"],
64    cmd: "$(location) $$(dirname $(location CHANGES.md)) -i $(location build_info.h.tmpl) -o $(location glslang/build_info.h)",
65    tool_files: ["build_info.py"],
66}
67
68cc_defaults {
69    name: "deqp_glslang_defaults",
70    defaults: ["deqp_and_deps_defaults"],
71    cppflags: [
72        "-Wno-enum-enum-conversion",
73        "-Wno-implicit-fallthrough",
74        "-Wno-missing-field-initializers",
75        "-Wno-unused-variable",
76        "-Wno-implicit-int-conversion",
77        "-Wno-sign-conversion",
78        "-Wno-unused-parameter",
79        "-Wno-unused-but-set-variable",
80    ],
81    export_include_dirs: [
82        ".",
83    ],
84    generated_headers: [
85        "deqp_glslang_gen_build_info_h",
86    ],
87}
88
89cc_library_static {
90    name: "deqp_glslang_OSDependent",
91    defaults: [
92        "deqp_glslang_defaults",
93    ],
94    export_include_dirs: [
95        "glslang/OSDependent",
96    ],
97    srcs: [
98        "glslang/OSDependent/Unix/ossource.cpp",
99    ],
100}
101
102cc_library_static {
103    name: "deqp_glslang_OGLCompiler",
104    defaults: [
105        "deqp_glslang_defaults",
106    ],
107    export_include_dirs: [
108        "OGLCompilersDLL",
109    ],
110    srcs: [
111        "OGLCompilersDLL/InitializeDll.cpp",
112    ],
113}
114
115cc_library_static {
116    name: "deqp_glslang_MachineIndependent",
117    defaults: [
118        "deqp_glslang_defaults",
119    ],
120    export_include_dirs: [
121        "glslang/MachineIndependent",
122        "glslang/HLSL",
123    ],
124    srcs: [
125//        "glslang/MachineIndependent/glslang.m4",
126//        "glslang/MachineIndependent/glslang.y",
127        "glslang/MachineIndependent/glslang_tab.cpp",
128        "glslang/MachineIndependent/attribute.cpp",
129        "glslang/MachineIndependent/Constant.cpp",
130        "glslang/MachineIndependent/iomapper.cpp",
131        "glslang/MachineIndependent/InfoSink.cpp",
132        "glslang/MachineIndependent/Initialize.cpp",
133        "glslang/MachineIndependent/IntermTraverse.cpp",
134        "glslang/MachineIndependent/Intermediate.cpp",
135        "glslang/MachineIndependent/ParseContextBase.cpp",
136        "glslang/MachineIndependent/ParseHelper.cpp",
137        "glslang/MachineIndependent/PoolAlloc.cpp",
138        "glslang/MachineIndependent/RemoveTree.cpp",
139        "glslang/MachineIndependent/Scan.cpp",
140        "glslang/MachineIndependent/ShaderLang.cpp",
141        "glslang/MachineIndependent/SpirvIntrinsics.cpp",
142        "glslang/MachineIndependent/SymbolTable.cpp",
143        "glslang/MachineIndependent/Versions.cpp",
144        "glslang/MachineIndependent/intermOut.cpp",
145        "glslang/MachineIndependent/limits.cpp",
146        "glslang/MachineIndependent/linkValidate.cpp",
147        "glslang/MachineIndependent/parseConst.cpp",
148        "glslang/MachineIndependent/reflection.cpp",
149        "glslang/MachineIndependent/preprocessor/Pp.cpp",
150        "glslang/MachineIndependent/preprocessor/PpAtom.cpp",
151        "glslang/MachineIndependent/preprocessor/PpContext.cpp",
152        "glslang/MachineIndependent/preprocessor/PpScanner.cpp",
153        "glslang/MachineIndependent/preprocessor/PpTokens.cpp",
154        "glslang/MachineIndependent/propagateNoContraction.cpp",
155
156        "glslang/HLSL/hlslAttributes.cpp",
157        "glslang/HLSL/hlslParseHelper.cpp",
158        "glslang/HLSL/hlslScanContext.cpp",
159        "glslang/HLSL/hlslOpMap.cpp",
160        "glslang/HLSL/hlslTokenStream.cpp",
161        "glslang/HLSL/hlslGrammar.cpp",
162        "glslang/HLSL/hlslParseables.cpp",
163    ],
164    static_libs: [
165        "deqp_glslang_OGLCompiler",
166        "deqp_glslang_OSDependent",
167        "deqp_glslang_GenericCodeGen",
168    ],
169}
170
171cc_library_static {
172    name: "deqp_glslang_glslang",
173    defaults: [
174        "deqp_glslang_defaults",
175    ],
176    export_include_dirs: [
177        "glslang",
178    ],
179    srcs: [
180        "glslang/CInterface/glslang_c_interface.cpp"
181    ],
182    static_libs: [
183        "deqp_glslang_OGLCompiler",
184        "deqp_glslang_OSDependent",
185        "deqp_glslang_MachineIndependent",
186    ],
187}
188
189cc_library_static {
190    name: "deqp_glslang_SPIRV",
191    defaults: [
192        "deqp_glslang_defaults",
193    ],
194    export_include_dirs: [
195        "SPIRV",
196    ],
197    srcs: [
198        "SPIRV/GlslangToSpv.cpp",
199        "SPIRV/InReadableOrder.cpp",
200        "SPIRV/Logger.cpp",
201        "SPIRV/SpvBuilder.cpp",
202        "SPIRV/SpvPostProcess.cpp",
203        "SPIRV/doc.cpp",
204        "SPIRV/SpvTools.cpp",
205        "SPIRV/disassemble.cpp",
206        "SPIRV/CInterface/spirv_c_interface.cpp",
207    ],
208    static_libs: [
209        "deqp_glslang_MachineIndependent",
210    ],
211}
212
213cc_library_static {
214    name: "deqp_glslang_SPVRemapper",
215    defaults: [
216        "deqp_glslang_defaults",
217    ],
218    export_include_dirs: [
219        "SPIRV",
220    ],
221    srcs: [
222        "SPIRV/SPVRemapper.cpp",
223        "SPIRV/doc.cpp",
224    ],
225}
226
227cc_library_static {
228    name: "deqp_glslang_GenericCodeGen",
229    defaults: [
230        "deqp_glslang_defaults",
231    ],
232    export_include_dirs: [
233        "glslang/GenericCodeGen",
234    ],
235    srcs: [
236        "glslang/GenericCodeGen/CodeGen.cpp",
237        "glslang/GenericCodeGen/Link.cpp",
238    ],
239}
240