diff --git a/.gitignore b/.gitignore index 834fd20f..91423969 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,5 @@ docs/assets/js/tree-sitter.js *.obj *.exp *.lib -*.wasm \ No newline at end of file +*.wasm +.swiftpm \ No newline at end of file diff --git a/Package.swift b/Package.swift new file mode 100644 index 00000000..7966e529 --- /dev/null +++ b/Package.swift @@ -0,0 +1,39 @@ +// swift-tools-version: 5.8 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "TreeSitter", + products: [ + // Products define the executables and libraries a package produces, and make them visible to other packages. + .library( + name: "TreeSitter", + targets: ["TreeSitter"]), + ], + targets: [ + .target(name: "TreeSitter", + path: "lib", + exclude: [ + "binding_rust", + "binding_web", + "Cargo.toml", + "README.md", + "src/unicode/README.md", + "src/unicode/LICENSE", + "src/unicode/ICU_SHA", + "src/get_changed_ranges.c", + "src/tree_cursor.c", + "src/stack.c", + "src/node.c", + "src/lexer.c", + "src/parser.c", + "src/language.c", + "src/alloc.c", + "src/subtree.c", + "src/tree.c", + "src/query.c" + ], + sources: ["src/lib.c"]), + ] +)