blob: 41766125ff2552a8923b8dca6cb3858e2e4c312d [file] [log] [blame]
diff --git a/BUILD.bazel b/BUILD.bazel
new file mode 100644
index 0000000..721fad9
--- /dev/null
+++ b/BUILD.bazel
@@ -0,0 +1,50 @@
+load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library")
+
+cc_library(
+ name = "liblua",
+ srcs = glob(
+ [
+ "src/*.c",
+ "src/*.h",
+ ],
+ exclude = [
+ "src/lua.c",
+ "src/luac.c",
+ "src/onelua.c",
+ ],
+ ),
+ hdrs = [
+ "src/lauxlib.h",
+ "src/lua.h",
+ "src/lua.hpp",
+ "src/luaconf.h",
+ "src/lualib.h",
+ ],
+ linkopts = select({
+ "@platforms//os:linux": ["-ldl"],
+ "//conditions:default": [],
+ }),
+ local_defines = select({
+ "@platforms//os:linux": ["LUA_USE_LINUX"],
+ "@platforms//os:macos": ["LUA_USE_MACOSX"],
+ "@platforms//os:windows": ["LUA_USE_WINDOWS"],
+ "@platforms//os:ios": ["LUA_USE_IOS"],
+ "//conditions:default": [],
+ }),
+ strip_include_prefix = "src",
+ visibility = ["//visibility:public"],
+)
+
+cc_binary(
+ name = "lua",
+ srcs = ["src/lua.c"],
+ visibility = ["//visibility:public"],
+ deps = [":liblua"],
+)
+
+cc_binary(
+ name = "luac",
+ srcs = ["src/luac.c"],
+ visibility = ["//visibility:public"],
+ deps = [":liblua"],
+)