diff options
Diffstat (limited to 'vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter')
4 files changed, 58 insertions, 0 deletions
diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/portfile.cmake b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/portfile.cmake new file mode 100644 index 0000000..dd25706 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/portfile.cmake @@ -0,0 +1,10 @@ +set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + +vcpkg_find_acquire_program(PKGCONFIG) + +vcpkg_cmake_configure( + SOURCE_PATH "${CURRENT_PORT_DIR}/project" + OPTIONS + "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}" +) +vcpkg_cmake_build() 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; +} diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/vcpkg.json b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/vcpkg.json new file mode 100644 index 0000000..b418ddd --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-tree-sitter/vcpkg.json @@ -0,0 +1,15 @@ +{ + "name": "vcpkg-ci-tree-sitter", + "version-string": "ci", + "description": "Port to test the tree-sitter group of port in CI", + "homepage": "https://github.com/microsoft/vcpkg", + "license": "MIT", + "dependencies": [ + "tree-sitter", + "tree-sitter-c", + { + "name": "vcpkg-cmake", + "host": true + } + ] +} |