blob: 5d855ea9679d010c84959921a277bc5403942fc6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
output_name = assert arg[1], "please specify the output directory"
escape = (str) -> string.format '%q', str
with io.open output_name, 'w'
\write "local p = package.preload\n"
for i=2, #arg
file_name = arg[i]
file = io.open file_name, 'r'
code = file\read '*all'
file\close!
module = file_name\gsub '/', '.'
module = module\gsub '%.lua$', ''
module = module\gsub '%.init$', ''
module = module\match '^dist%.(.*)'
file_name = escape file_name
code = escape code
module = escape module
\write "if not p[#{module}] then p[#{module}] = load(#{code}, #{file_name}) end\n"
|