Improve lua build process + folder structure
This commit is contained in:
29
lua/justfile
29
lua/justfile
@@ -1,30 +1,31 @@
|
||||
default:
|
||||
@just --list
|
||||
|
||||
lua_files := `find . -type f -name "*.lua" ! -path './out/*' ! -name tlconfig.lua ! -name minify.lua -printf "%p "`
|
||||
teal_files := `find . -type f -name "*.tl" ! -name '*.d.tl' -printf "%p "`
|
||||
|
||||
build:
|
||||
mkdir -p out
|
||||
for file in {{lua_files}}; do \
|
||||
lua minify.lua $file; \
|
||||
done
|
||||
for file in {{teal_files}}; do \
|
||||
tl gen $file; \
|
||||
lua minify.lua ${file%.tl}.lua; \
|
||||
rm ${file%.tl}.lua; \
|
||||
done
|
||||
build: && manifest
|
||||
tl build
|
||||
@mkdir -p out/vendor
|
||||
find src/vendor -name "*.lua" -exec cp -t out/vendor {} +
|
||||
|
||||
alias b := build
|
||||
|
||||
manifest_file := "out/manifest.txt"
|
||||
manifest:
|
||||
rm -f {{ manifest_file }}
|
||||
find out -name "*.lua" -exec realpath --relative-to=out {} >> {{ manifest_file }} \;
|
||||
|
||||
min-build: build
|
||||
find out -name "*.lua" -exec lua minify.lua {} \;
|
||||
|
||||
clean:
|
||||
rm -r out
|
||||
|
||||
alias c := clean
|
||||
|
||||
watch_recipe := env_var_or_default("WATCH_RECIPE", "build")
|
||||
|
||||
watch:
|
||||
while sleep 0.1; do \
|
||||
find . -type f ! -path './out/*' | entr -d just build; \
|
||||
find . -type f ! -path './out/*' | entr -d just {{ watch_recipe }}; \
|
||||
[ $? -eq 0 ] && exit 0; \
|
||||
done
|
||||
|
||||
|
||||
@@ -11,6 +11,6 @@ parser.minify(ast, true)
|
||||
|
||||
local output = parser.toLua(ast)
|
||||
|
||||
local f = io.open("out/"..filename, "w")
|
||||
local f = io.open(filename, "w")
|
||||
f:write(output)
|
||||
f:close()
|
||||
@@ -1,7 +1,7 @@
|
||||
local json = require("json")
|
||||
local Framebuffer = require("framebuffer")
|
||||
local Ringbuffer = require("ringbuffer")
|
||||
local Socket = require("socket")
|
||||
local json = require("vendor/json")
|
||||
local Framebuffer = require("lib/framebuffer")
|
||||
local Ringbuffer = require("lib/ringbuffer")
|
||||
local Socket = require("lib/socket")
|
||||
local auth = require("auth")
|
||||
local ENDPOINT <const> = auth.server:gsub("http", "ws", 1) .. "/ipmi/computer/" .. auth.id .. "/ws"
|
||||
local HEADERS <const> = { ["Authorization"] = "Bearer " .. auth.token }
|
||||
0
lua/json.lua → lua/src/vendor/json.lua
vendored
0
lua/json.lua → lua/src/vendor/json.lua
vendored
@@ -1,4 +1,7 @@
|
||||
return {
|
||||
source_dir = "src",
|
||||
include_dir = {"src"},
|
||||
build_dir = "out",
|
||||
global_env_def = "cc",
|
||||
gen_target = "5.1",
|
||||
}
|
||||
Reference in New Issue
Block a user