mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-27 10:21:07 +08:00
[liburing] create a new port (#17623)
* [liburing] create a new port * [liburing] patch datadir * [liburing] add port usage * with CMake module: FindPkgConfig * Update ports/liburing/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * [liburing] comments for BUILD_SHARED * update git-tree SHA * [liburing] fix portfile * [liburing] configure with ENABLE_SHARED * update git-tree SHA * Update ports/liburing/usage * [liburing] fix mistype in usage * update git-tree SHA Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com> Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
This commit is contained in:
parent
588b1e66f9
commit
bbe9763f62
35
ports/liburing/fix-configure.patch
Normal file
35
ports/liburing/fix-configure.patch
Normal file
@ -0,0 +1,35 @@
|
||||
diff --git a/configure b/configure
|
||||
index 3b96cde..56d5cb0 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18,16 +18,18 @@ for opt do
|
||||
;;
|
||||
--mandir=*) mandir="$optarg"
|
||||
;;
|
||||
- --datadir=*) datadir="$optarg"
|
||||
+ --datarootdir=*) datadir="$optarg"
|
||||
;;
|
||||
--cc=*) cc="$optarg"
|
||||
;;
|
||||
--cxx=*) cxx="$optarg"
|
||||
;;
|
||||
+ --enable-shared) ENABLE_SHARED=1
|
||||
+ ;;
|
||||
+ --enable-static) ENABLE_SHARED=0
|
||||
+ ;;
|
||||
*)
|
||||
- echo "ERROR: unknown option $opt"
|
||||
- echo "Try '$0 --help' for more information"
|
||||
- exit 1
|
||||
+ echo "WARNING: unknown option $opt"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
@@ -119,6 +121,7 @@ echo "# Automatically generated by configure - do not modify" > $config_host_mak
|
||||
printf "# Configured with:" >> $config_host_mak
|
||||
printf " '%s'" "$0" "$@" >> $config_host_mak
|
||||
echo >> $config_host_mak
|
||||
+echo "ENABLE_SHARED=${ENABLE_SHARED}" >> $config_host_mak
|
||||
|
||||
do_cxx() {
|
||||
# Run the compiler, capturing its output to the log.
|
11
ports/liburing/fix-spec-version.patch
Normal file
11
ports/liburing/fix-spec-version.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff --git a/liburing.spec b/liburing.spec
|
||||
index fa4d970..8607074 100644
|
||||
--- a/liburing.spec
|
||||
+++ b/liburing.spec
|
||||
@@ -1,5 +1,5 @@
|
||||
Name: liburing
|
||||
-Version: 0.7
|
||||
+Version: 2.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Linux-native io_uring I/O access library
|
||||
License: (GPLv2 with exceptions and LGPLv2+) or MIT
|
35
ports/liburing/portfile.cmake
Normal file
35
ports/liburing/portfile.cmake
Normal file
@ -0,0 +1,35 @@
|
||||
vcpkg_fail_port_install(ON_TARGET "windows" "uwp" "osx" "ios" "android")
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO axboe/liburing
|
||||
REF liburing-2.0
|
||||
SHA512 8a7b37600246d44a94d3fed1ca4bb60e76f9ddc60bd3c237e600b60e77961a1125c8a1f230cb7569f959acf10b68b91aafb4935c1c2fd13d5df7373b374e47f5
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-spec-version.patch # update version value for pkgconfig(.pc) files
|
||||
fix-configure.patch # ignore unsupported options, handle ENABLE_SHARED
|
||||
)
|
||||
|
||||
# note: check ${SOURCE_PATH}/liburing.spec before updating configure options
|
||||
vcpkg_configure_make(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
COPY_SOURCE
|
||||
NO_DEBUG
|
||||
)
|
||||
vcpkg_install_make()
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
||||
file(INSTALL ${CURRENT_PORT_DIR}/usage
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
|
||||
|
||||
# note: {SOURCE_PATH}/src/Makefile makes liburing.so from liburing.a.
|
||||
# For dynamic, remove intermediate file liburing.a when install is finished.
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/liburing.a
|
||||
${CURRENT_PACKAGES_DIR}/lib/liburing.a
|
||||
)
|
||||
endif()
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/man)
|
6
ports/liburing/usage
Normal file
6
ports/liburing/usage
Normal file
@ -0,0 +1,6 @@
|
||||
The package liburing can be imported via CMake FindPkgConfig module:
|
||||
|
||||
include(FindPkgConfig)
|
||||
pkg_check_modules(liburing REQUIRED IMPORTED_TARGET GLOBAL liburing>=2.0)
|
||||
|
||||
target_link_libraries(main PRIVATE PkgConfig::liburing)
|
7
ports/liburing/vcpkg.json
Normal file
7
ports/liburing/vcpkg.json
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"name": "liburing",
|
||||
"version": "2.0",
|
||||
"description": "Linux-native io_uring I/O access library",
|
||||
"homepage": "https://github.com/axboe/liburing",
|
||||
"supports": "linux"
|
||||
}
|
@ -3668,6 +3668,10 @@
|
||||
"baseline": "4.3-0",
|
||||
"port-version": 0
|
||||
},
|
||||
"liburing": {
|
||||
"baseline": "2.0",
|
||||
"port-version": 0
|
||||
},
|
||||
"libusb": {
|
||||
"baseline": "1.0.24",
|
||||
"port-version": 4
|
||||
|
9
versions/l-/liburing.json
Normal file
9
versions/l-/liburing.json
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "b4d90242721d15d6dc5287690c3b8d42c2e8d0f0",
|
||||
"version": "2.0",
|
||||
"port-version": 0
|
||||
}
|
||||
]
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user