-
Notifications
You must be signed in to change notification settings - Fork 16
/
compile.py
executable file
·98 lines (79 loc) · 2.85 KB
/
compile.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#!/usr/bin/python3
import sys
import os
import subprocess
versions = ["v1", "v2", "v3"]
def build(version):
srcdir = os.path.join(".", version)
libdir = "docs/lib"
if version == "v3":
entry_file = os.path.join(srcdir, "index.js")
rollup_config = os.path.join(".", "rollup.config.js")
# classic - unminified
out = os.path.join(libdir, f'timingsrc-{version}.js')
args = ["rollup", "-m", "-f", "iife", "--name", "TIMINGSRC", "-o", out, entry_file]
print(" ".join(args))
subprocess.call(args)
# classic - minified
out = os.path.join(libdir, f'timingsrc-min-{version}.js')
args = ["rollup",
"-f", "iife",
"--name", "TIMINGSRC",
"-m",
"--environment", "BUILD:production",
"-c", rollup_config,
"-o", out,
entry_file]
print(" ".join(args))
subprocess.call(args)
# module export - unminified
out = os.path.join(libdir, f'timingsrc-esm-{version}.js')
args = ["rollup", "-m", "-f", "es", "-o", out, entry_file]
print(" ".join(args))
subprocess.call(args)
# module export - minified
out = os.path.join(libdir, f'timingsrc-min-esm-{version}.js')
args = ["rollup",
"-f", "es",
"-m",
"--environment", "BUILD:production",
"-c", rollup_config,
"-o", out,
entry_file]
print(" ".join(args))
subprocess.call(args)
else:
builddir = "build"
baseUrl = "baseUrl={}".format(srcdir)
almond = os.path.join(builddir, "almond-build-{}.js".format(version))
rjs = os.path.join(builddir, "r.js")
# requirejs - unminified
out = "out={}/timingsrc-require-{}.js".format(libdir, version)
args = [
"node", rjs, "-o", baseUrl,
"optimize=none", "name=timingsrc", out
]
print(" ".join(args))
subprocess.call(args)
# requirejs - minified
out = "out={}/timingsrc-require-min-{}.js".format(libdir, version)
args = ["node", rjs, "-o", baseUrl, "name=timingsrc", out]
print(" ".join(args))
subprocess.call(args)
# plain - unminified
out = "out={}/timingsrc-{}.js".format(libdir, version)
args = ["node", rjs, "-o", almond, "optimize=none", out]
print(" ".join(args))
subprocess.call(args)
# plain - minified
out = "out={}/timingsrc-min-{}.js".format(libdir, version)
args = ["node", rjs, "-o", almond, out]
print(" ".join(args))
subprocess.call(args)
if __name__ == '__main__':
if len(sys.argv) > 1:
_versions = [sys.argv[1]]
else:
_versions = versions
for version in _versions:
build(version)