Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions ports/usbipdcpp/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO yunsmall/usbipdcpp
REF "v${VERSION}"
SHA512 43497a0cd5d083b3a25b69f88a3be850fdf893121f69f90c9b5784a19b2cec0c1a6efff35b3af7e03305bf9a41b7835b51176ae4cdc1616ab9db195f3eac03fc
HEAD_REF main
)

vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
coroutine USBIPDCPP_USE_COROUTINE
libusb USBIPDCPP_BUILD_LIBUSB_COMPONENTS
busywait USBIPDCPP_ENABLE_BUSY_WAIT
)

vcpkg_find_acquire_program(PKGCONFIG)

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
"-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}"
-DUSBIPDCPP_BUILD_EXAMPLES=OFF
-DUSBIPDCPP_BUILD_TESTS=OFF
${FEATURE_OPTIONS}
)

vcpkg_cmake_install()

vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/usbipdcpp)

file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")

vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")

file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
4 changes: 4 additions & 0 deletions ports/usbipdcpp/usage
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
usbipdcpp provides CMake targets:

find_package(usbipdcpp CONFIG REQUIRED)
target_link_libraries(main PRIVATE usbipdcpp::usbipdcpp usbipdcpp::libusb)
33 changes: 33 additions & 0 deletions ports/usbipdcpp/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"name": "usbipdcpp",
"version": "0.0.1",
"description": "A C++ library for creating usbip servers",
"homepage": "https://github.com/yunsmall/usbipdcpp",
"license": "Apache-2.0",
"dependencies": [
"asio",
"spdlog",
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"features": {
"coroutine": {
"description": "Use C++20 coroutine-based implementation"
},
Comment on lines +20 to +22
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this an alternative (see our docs)?

"libusb": {
"description": "Build libusb-based server components for physical USB device forwarding",
"dependencies": [
"libusb"
]
},
"busywait": {
"description": "Enable busy-wait mode for lower latency (incompatible with coroutine)"
}
}
}
Loading