diff options
Diffstat (limited to 'vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project')
| -rw-r--r-- | vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/CMakeLists.txt | 12 | ||||
| -rw-r--r-- | vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/main.c | 21 |
2 files changed, 33 insertions, 0 deletions
diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/CMakeLists.txt b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/CMakeLists.txt new file mode 100644 index 0000000..9c5208a --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/CMakeLists.txt @@ -0,0 +1,12 @@ +cmake_minimum_required(VERSION 3.30) +project(tree-sitter-test C) + +find_package(PkgConfig REQUIRED) +pkg_check_modules(tree-sitter_pc tree-sitter REQUIRED IMPORTED_TARGET) +pkg_check_modules(tree-sitter-c_pc tree-sitter-c REQUIRED IMPORTED_TARGET) + +add_executable(main-pkconfig main.c) +target_link_libraries(main-pkconfig PRIVATE + PkgConfig::tree-sitter_pc + PkgConfig::tree-sitter-c_pc +) diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/main.c b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/main.c new file mode 100644 index 0000000..cab3ce6 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/project/main.c @@ -0,0 +1,21 @@ +#include <stdio.h> +#include <string.h> +#include <tree_sitter/api.h> +#include <tree_sitter/tree-sitter-c.h> + +int main() +{ + TSParser *parser = ts_parser_new(); + ts_parser_set_language(parser, tree_sitter_c()); + + const char *source_code = "int main() { return -1; }\n"; + TSTree *tree = ts_parser_parse_string(parser, NULL, source_code, strlen(source_code)); + TSNode root_node = ts_tree_root_node(tree); + char *string = ts_node_string(root_node); + printf("Syntax tree: %s\n", string); + + free(string); + ts_tree_delete(tree); + ts_parser_delete(parser); + return 0; +} |