[vcpkg-ci-leveldb] New ci port (#52330)

This commit is contained in:
Weihang Ding 2026-06-12 05:15:59 +08:00 committed by GitHub
parent 71a95ccfb4
commit 5d2abe27e2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 58 additions and 0 deletions

View File

@ -0,0 +1,6 @@
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
vcpkg_cmake_configure(
SOURCE_PATH "${CURRENT_PORT_DIR}/project"
)
vcpkg_cmake_build()

View File

@ -0,0 +1,11 @@
cmake_minimum_required(VERSION 3.16)
project(vcpkg-ci-leveldb)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
find_package(leveldb CONFIG REQUIRED)
add_executable(main main.cpp)
target_link_libraries(main PRIVATE leveldb::leveldb)

View File

@ -0,0 +1,23 @@
#include <leveldb/db.h>
#include <cassert>
#include <string>
#include <filesystem>
int main() {
std::filesystem::path tmp = std::filesystem::temp_directory_path() / "vcpkg-ci-leveldb-test";
std::filesystem::remove_all(tmp);
leveldb::DB* db = nullptr;
leveldb::Options options;
options.create_if_missing = true;
leveldb::Status status = leveldb::DB::Open(options, tmp.string(), &db);
assert(status.ok());
status = db->Put(leveldb::WriteOptions(), "hello", "leveldb");
assert(status.ok());
std::string value;
status = db->Get(leveldb::ReadOptions(), "hello", &value);
assert(status.ok());
assert(value == "leveldb");
delete db;
std::filesystem::remove_all(tmp);
return 0;
}

View File

@ -0,0 +1,18 @@
{
"name": "vcpkg-ci-leveldb",
"version-string": "ci",
"description": "Validates leveldb",
"dependencies": [
{
"name": "leveldb",
"features": [
"crc32c",
"snappy"
]
},
{
"name": "vcpkg-cmake",
"host": true
}
]
}