diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project | |
Diffstat (limited to 'vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project')
| -rw-r--r-- | vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/CMakeLists.txt | 13 | ||||
| -rw-r--r-- | vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/main.c | 33 |
2 files changed, 46 insertions, 0 deletions
diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/CMakeLists.txt b/vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/CMakeLists.txt new file mode 100644 index 0000000..3c51fa2 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/CMakeLists.txt @@ -0,0 +1,13 @@ +cmake_minimum_required(VERSION 3.16) +project(duckdb-test C CXX) + +add_executable(main main.c) + +find_package(DuckDB CONFIG REQUIRED) +if(BUILD_SHARED_LIBS) + add_library(imported::duckdb ALIAS duckdb) +else() + add_library(imported::duckdb ALIAS duckdb_static) +endif() +target_link_libraries(main PRIVATE imported::duckdb) +install(TARGETS main RUNTIME DESTINATION bin/vcpkg-ci-duckdb) diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/main.c b/vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/main.c new file mode 100644 index 0000000..6dfa22b --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-duckdb/project/main.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include <duckdb.h> + +int main() +{ + duckdb_database db; + if (duckdb_open(NULL, &db) == DuckDBError) { + printf("open failed\n"); + return 1; + } + duckdb_connection con; + if (duckdb_connect(db, &con) == DuckDBError) { + printf("connect failed\n"); + return 2; + } + const char* query_icu = + "LOAD icu;" + "SELECT current_localtime();" + "PRAGMA collations;" + "SELECT list(collname) FROM pragma_collations();" + ; + duckdb_result result; + if (duckdb_query(con, query_icu, &result) == DuckDBError) { + printf("icu query failed: %s\n", duckdb_result_error(&result)); + return 3; + } + else { + printf("success\n"); + } + duckdb_disconnect(&con); + duckdb_close(&db); + return 0; +} |