comparison third_party/emsdk/bazel/emscripten_build_file.bzl @ 179:8d17f6e6e290

[ThirdParty] Added emsdk bazel rules that can be supported by bazel 9.0.0
author MrJuneJune <me@mrjunejune.com>
date Thu, 22 Jan 2026 21:23:17 -0800
parents
children
comparison
equal deleted inserted replaced
178:94705b5986b3 179:8d17f6e6e290
1 """A templated build file for emscripten repositories"""
2
3 EMSCRIPTEN_BUILD_FILE_CONTENT_TEMPLATE = """
4 package(default_visibility = ['//visibility:public'])
5
6 filegroup(
7 name = "all",
8 srcs = glob(["**"]),
9 )
10
11 filegroup(
12 name = "includes",
13 srcs = glob([
14 "emscripten/cache/sysroot/include/c++/v1/**",
15 "emscripten/cache/sysroot/include/compat/**",
16 "emscripten/cache/sysroot/include/**",
17 "lib/clang/**/include/**",
18 ]),
19 )
20
21 filegroup(
22 name = "emcc_common",
23 srcs = [
24 "emscripten/emcc.py",
25 "emscripten/embuilder.py",
26 "emscripten/emscripten-version.txt",
27 "emscripten/cache/sysroot_install.stamp",
28 "emscripten/src/settings.js",
29 "emscripten/src/settings_internal.js",
30 ] + glob(
31 include = [
32 "emscripten/third_party/**",
33 "emscripten/tools/**",
34 ],
35 exclude = [
36 "**/__pycache__/**",
37 ],
38 ),
39 )
40
41 filegroup(
42 name = "compiler_files",
43 srcs = [
44 "bin/clang{bin_extension}",
45 "bin/clang++{bin_extension}",
46 ":emcc_common",
47 ":includes",
48 ],
49 )
50
51 filegroup(
52 name = "linker_files",
53 srcs = [
54 "bin/clang{bin_extension}",
55 "bin/llvm-ar{bin_extension}",
56 "bin/llvm-dwarfdump{bin_extension}",
57 "bin/llvm-nm{bin_extension}",
58 "bin/llvm-objcopy{bin_extension}",
59 "bin/wasm-ctor-eval{bin_extension}",
60 "bin/wasm-emscripten-finalize{bin_extension}",
61 "bin/wasm-ld{bin_extension}",
62 "bin/wasm-metadce{bin_extension}",
63 "bin/wasm-opt{bin_extension}",
64 "bin/wasm-split{bin_extension}",
65 "bin/wasm2js{bin_extension}",
66 ":emcc_common",
67 ] + glob(
68 include = [
69 "emscripten/cache/sysroot/lib/**",
70 "emscripten/node_modules/**",
71 "emscripten/src/**",
72 ],
73 ),
74 )
75
76 filegroup(
77 name = "ar_files",
78 srcs = [
79 "bin/llvm-ar{bin_extension}",
80 "emscripten/emar.py",
81 "emscripten/emscripten-version.txt",
82 "emscripten/src/settings.js",
83 "emscripten/src/settings_internal.js",
84 ] + glob(
85 include = [
86 "emscripten/tools/**",
87 ],
88 exclude = [
89 "**/__pycache__/**",
90 ],
91 ),
92 )
93 """