|
5 | 5 | tree-sitter-ref:
|
6 | 6 | description: A tree-sitter commit, tag, or branch
|
7 | 7 | default: latest
|
| 8 | + wasmtime: |
| 9 | + description: Enable wasmtime |
| 10 | + default: "false" |
8 | 11 |
|
9 | 12 | runs:
|
10 | 13 | using: composite
|
@@ -34,18 +37,39 @@ runs:
|
34 | 37 | working-directory: ${{runner.temp}}
|
35 | 38 | shell: bash
|
36 | 39 | run: |-
|
37 |
| - printf '::group::Installing the tree-sitter library\n' |
| 40 | + printf '::group::Cloning tree-sitter\n' |
| 41 | +
|
38 | 42 | git clone "$TREE_SITTER_REPO" tree-sitter -q --filter=blob:none
|
39 | 43 | cd tree-sitter && git checkout "$TREE_SITTER_REF"
|
40 |
| - make PREFIX="$RUNNER_TOOL_CACHE/tree-sitter/lib" |
41 |
| - make PREFIX="$RUNNER_TOOL_CACHE/tree-sitter/lib" install |
| 44 | +
|
| 45 | + cmake -S lib -B build -G Ninja \ |
| 46 | + -DBUILD_SHARED_LIBS=OFF \ |
| 47 | + -DCMAKE_INSTALL_PREFIX="$TREE_SITTER_LIB" |
| 48 | + cmake --build build && cmake --install build |
| 49 | +
|
| 50 | + cmake -S lib -B build -G Ninja \ |
| 51 | + -DBUILD_SHARED_LIBS=ON \ |
| 52 | + -DCMAKE_INSTALL_PREFIX="$RUNNER_TOOL_CACHE/tree-sitter/lib" |
| 53 | + cmake --build build && cmake --install build |
| 54 | +
|
42 | 55 | printf '::endgroup::\n'
|
43 | 56 | - name: Set up library paths
|
44 | 57 | shell: sh
|
45 | 58 | run: |-
|
46 |
| - printf '%s\n' >> "$GITHUB_ENV" \ |
47 |
| - "LD_LIBRARY_PATH=$RUNNER_TOOL_CACHE/tree-sitter/lib/lib" \ |
48 |
| - "PKG_CONFIG_PATH=$RUNNER_TOOL_CACHE/tree-sitter/lib/lib/pkgconfig" |
| 59 | + PREFIX="$RUNNER_TOOL_CACHE/tree-sitter/lib" |
| 60 | + printf 'PKG_CONFIG_PATH=%s/lib/pkgconfig\n' >> "$GITHUB_ENV" \ |
| 61 | + "${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}${PREFIX}" |
| 62 | + if [[ $RUNNER_OS == Linux ]]; then |
| 63 | + printf 'LD_LIBRARY_PATH=%s/lib\n' >> "$GITHUB_ENV" \ |
| 64 | + "${LD_LIBRARY_PATH}${LD_LIBRARY_PATH+:}${PREFIX}" |
| 65 | + else if [[ $RUNNER_OS == macOS ]]; then |
| 66 | + printf 'DYLD_LIBRARY_PATH=%s/lib\n' >> "$GITHUB_ENV" \ |
| 67 | + "${DYLD_LIBRARY_PATH}${DYLD_LIBRARY_PATH+:}${PREFIX}" |
| 68 | + else |
| 69 | + printf '%s/lib\n' "$PREFIX" >> "$GITHUB_PATH" |
| 70 | + fi |
| 71 | + env: |
| 72 | + PATH_SEP: ${{runner.os != 'Windows' && ':' || ';'}} |
49 | 73 | - name: Save tree-sitter library to cache
|
50 | 74 | uses: actions/cache/save@v4
|
51 | 75 | if: >-
|
|
0 commit comments