Commit
+39 -0 +/-3 browse
1 | diff --git a/README.md b/README.md |
2 | index 9e87b84..c516d09 100644 |
3 | --- a/README.md |
4 | +++ b/README.md |
5 | @@ -5,6 +5,22 @@ by downstream projects. Each parser is exposed as a shared module that can be |
6 | dynamically loaded in another application. Generated source code is also shipped |
7 | for use in build scripts. |
8 | |
9 | + ## Installation |
10 | + |
11 | + The best way to install this is via your package manager. |
12 | + |
13 | + ### Known Distribution Packages |
14 | + |
15 | + [aur](https://aur.archlinux.org/packages/tree-sitter-amalgamation) |
16 | + |
17 | + ### Manual Installation |
18 | + |
19 | + ```sh |
20 | + sudo ./install.sh |
21 | + # uninstall |
22 | + sudo ./uninstall.sh |
23 | + ``` |
24 | + |
25 | ## Compiling |
26 | |
27 | You need to install [ninja](https://ninja-build.org) to build the project |
28 | diff --git a/install.sh b/install.sh |
29 | new file mode 100755 |
30 | index 0000000..6e57778 |
31 | --- /dev/null |
32 | +++ b/install.sh |
33 | @@ -0,0 +1,19 @@ |
34 | + #!/bin/sh |
35 | + |
36 | + install -d /usr/lib/tree-sitter-amalgamation |
37 | + install -t /usr/lib/tree-sitter-amalgamation target/*/*.so |
38 | + install -d /usr/include/tree-sitter-amalgamation |
39 | + for name in `find target -maxdepth 1 -type d -printf '%f\n' | tail -n +2` ; do |
40 | + install -d "/usr/include/tree-sitter-amalgamation/$name" |
41 | + install -m 0444 -t "/usr/include/tree-sitter-amalgamation/$name" \ |
42 | + target/$name/*.c |
43 | + [[ -f target/$name/highlights.scm ]] && { |
44 | + install -m 0444 -t "/usr/include/tree-sitter-amalgamation/$name" \ |
45 | + "target/$name/highlights.scm" |
46 | + } |
47 | + [[ -f target/$name/common/scanner.h ]] && { |
48 | + install -d "/usr/include/tree-sitter-amalgamation/$name/common" |
49 | + install -m 0444 -t "/usr/include/tree-sitter-amalgamation/$name/common" \ |
50 | + "target/$name/common/scanner.h" |
51 | + } |
52 | + done |
53 | diff --git a/uninstall.sh b/uninstall.sh |
54 | new file mode 100755 |
55 | index 0000000..4b246f3 |
56 | --- /dev/null |
57 | +++ b/uninstall.sh |
58 | @@ -0,0 +1,4 @@ |
59 | + #!/bin/sh |
60 | + |
61 | + rm -r /usr/lib/tree-sitter-amalgamation |
62 | + rm -r /usr/include/tree-sitter-amalgamation |