aboutsummaryrefslogtreecommitdiff
path: root/ports/libimobiledevice
diff options
context:
space:
mode:
authorJack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>2020-10-19 19:23:57 -0700
committerGitHub <noreply@github.com>2020-10-19 19:23:57 -0700
commit334aec69e408d1ea52b7af125eda0a2066424922 (patch)
treecac050e50ff8df78634131c8936f7100d138d916 /ports/libimobiledevice
parent46a2a004b62e307b51c4dfbf05db61e95d1371b2 (diff)
downloadvcpkg-334aec69e408d1ea52b7af125eda0a2066424922.tar.gz
vcpkg-334aec69e408d1ea52b7af125eda0a2066424922.zip
[libplist/libusbmuxd/libimobiledevice/libideviceactivation/usbmuxd] Update version (#13811)
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
Diffstat (limited to 'ports/libimobiledevice')
-rw-r--r--ports/libimobiledevice/CMakeLists.txt14
-rw-r--r--ports/libimobiledevice/CONTROL2
-rw-r--r--ports/libimobiledevice/fix-functions-declaration.patch112
-rw-r--r--ports/libimobiledevice/portfile.cmake7
4 files changed, 130 insertions, 5 deletions
diff --git a/ports/libimobiledevice/CMakeLists.txt b/ports/libimobiledevice/CMakeLists.txt
index 2e71ec0cd..176eb8933 100644
--- a/ports/libimobiledevice/CMakeLists.txt
+++ b/ports/libimobiledevice/CMakeLists.txt
@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.0)
project(libimobiledevice C)
# find dependencies
-find_library(libplist plist REQUIRED)
+find_library(libplist NAMES plist plist-2.0 libplist libplist-2.0 REQUIRED)
find_library(libusbmuxd libusbmuxd REQUIRED)
find_package(OpenSSL REQUIRED)
find_path(dirent_INCLUDE_DIR dirent.h)
@@ -20,6 +20,7 @@ file(GLOB_RECURSE IMOBDEV_PRIVATE_HDR src/*.h)
file(GLOB_RECURSE IMOBDEV_SRC src/*.c)
add_library(libimobiledevice ${IMOBDEV_SRC} ${IMOBDEV_PUBLIC_HDR} ${IMOBDEV_PUBLIC_SUB_HDR} ${IMOBDEV_PRIVATE_HDR} ${IMOBDEV_COMMON_HDR} ${IMOBDEV_COMMON_SRC})
+set_target_properties(libimobiledevice PROPERTIES OUTPUT_NAME libimobiledevice-1.0)
target_include_directories(libimobiledevice PRIVATE ${dirent_INCLUDE_DIR} include .)
target_compile_definitions(libimobiledevice PRIVATE -DHAVE_OPENSSL)
target_link_libraries(libimobiledevice PRIVATE ${libplist} ${libusbmuxd} ${getopt} OpenSSL::SSL OpenSSL::Crypto)
@@ -35,6 +36,15 @@ install(
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
)
+
+set(LIBPLIST_VERSION 2.0)
+set(LIBUSBMUXD_VERSION 2.0)
+set(PACKAGE_NAME libimobiledevice)
+set(PACKAGE_VERSION 1.0)
+set(prefix ${CMAKE_INSTALL_PREFIX})
+set(exec_prefix \${prefix})
+set(libdir \${prefix}/lib)
+set(includedir \${prefix}/../include)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/src/libimobiledevice-1.0.pc.in
${CMAKE_CURRENT_BINARY_DIR}/libimobiledevice-1.0.pc
@@ -42,7 +52,7 @@ configure_file(
)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/libimobiledevice-1.0.pc
- DESTINATION lib/libimobiledevice
+ DESTINATION lib/pkgconfig
)
install(FILES ${IMOBDEV_PUBLIC_HDR} DESTINATION include)
diff --git a/ports/libimobiledevice/CONTROL b/ports/libimobiledevice/CONTROL
index 8a517ec22..8f84a4eb4 100644
--- a/ports/libimobiledevice/CONTROL
+++ b/ports/libimobiledevice/CONTROL
@@ -1,5 +1,5 @@
Source: libimobiledevice
-Version: 1.2.185
+Version: 1.3.6
Homepage: http://www.libimobiledevice.org
Description: A cross-platform protocol library to communicate with iOS devices
Build-Depends: libplist, libusbmuxd, openssl, dirent, getopt \ No newline at end of file
diff --git a/ports/libimobiledevice/fix-functions-declaration.patch b/ports/libimobiledevice/fix-functions-declaration.patch
new file mode 100644
index 000000000..704df70bb
--- /dev/null
+++ b/ports/libimobiledevice/fix-functions-declaration.patch
@@ -0,0 +1,112 @@
+From dd35fb7fcad54c5ba465bf252e22a82c721fd825 Mon Sep 17 00:00:00 2001
+From: Billy Robert O'Neal III <bion@microsoft.com>
+Date: Mon, 19 Oct 2020 18:22:47 -0700
+Subject: [PATCH] Add dllexports missing from connection_proxy.h functions.
+
+---
+ include/libimobiledevice/companion_proxy.h | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/include/libimobiledevice/companion_proxy.h b/include/libimobiledevice/companion_proxy.h
+index 19c88ebb..29b8e96d 100644
+--- a/include/libimobiledevice/companion_proxy.h
++++ b/include/libimobiledevice/companion_proxy.h
+@@ -65,7 +65,7 @@ typedef void (*companion_proxy_device_event_cb_t) (plist_t event, void* userdata
+ * @return COMPANION_PROXY_E_SUCCESS on success, COMPANION_PROXY_E_INVALID_ARG when
+ * the arguments are invalid, or an COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_client_new(idevice_t device, lockdownd_service_descriptor_t service, companion_proxy_client_t* client);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_client_new(idevice_t device, lockdownd_service_descriptor_t service, companion_proxy_client_t* client);
+
+ /**
+ * Starts a new companion_proxy service on the specified device and connects to it.
+@@ -80,7 +80,7 @@ companion_proxy_error_t companion_proxy_client_new(idevice_t device, lockdownd_s
+ * @return COMPANION_PROXY_E_SUCCESS on success, or an COMPANION_PROXY_E_* error
+ * code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_client_start_service(idevice_t device, companion_proxy_client_t* client, const char* label);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_client_start_service(idevice_t device, companion_proxy_client_t* client, const char* label);
+
+ /**
+ * Disconnects a companion_proxy client from the device and frees up the
+@@ -91,7 +91,7 @@ companion_proxy_error_t companion_proxy_client_start_service(idevice_t device, c
+ * @return COMPANION_PROXY_E_SUCCESS on success, COMPANION_PROXY_E_INVALID_ARG when
+ * client is NULL, or an COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_client_free(companion_proxy_client_t client);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_client_free(companion_proxy_client_t client);
+
+ /**
+ * Sends a plist to the service.
+@@ -102,7 +102,7 @@ companion_proxy_error_t companion_proxy_client_free(companion_proxy_client_t cli
+ * @return COMPANION_PROXY_E_SUCCESS on success,
+ * COMPANION_PROXY_E_INVALID_ARG when client or plist is NULL
+ */
+-companion_proxy_error_t companion_proxy_send(companion_proxy_client_t client, plist_t plist);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_send(companion_proxy_client_t client, plist_t plist);
+
+ /**
+ * Receives a plist from the service.
+@@ -113,7 +113,7 @@ companion_proxy_error_t companion_proxy_send(companion_proxy_client_t client, pl
+ * @return COMPANION_PROXY_E_SUCCESS on success,
+ * COMPANION_PROXY_E_INVALID_ARG when client or plist is NULL
+ */
+-companion_proxy_error_t companion_proxy_receive(companion_proxy_client_t client, plist_t * plist);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_receive(companion_proxy_client_t client, plist_t * plist);
+
+ /**
+ * Retrieves a list of paired devices.
+@@ -127,7 +127,7 @@ companion_proxy_error_t companion_proxy_receive(companion_proxy_client_t client,
+ * COMPANION_PROXY_E_NO_DEVICES if no devices are paired,
+ * or a COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_get_device_registry(companion_proxy_client_t client, plist_t* paired_devices);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_get_device_registry(companion_proxy_client_t client, plist_t* paired_devices);
+
+ /**
+ * Starts listening for paired devices.
+@@ -143,7 +143,7 @@ companion_proxy_error_t companion_proxy_get_device_registry(companion_proxy_clie
+ * @return COMPANION_PROXY_E_SUCCESS on success,
+ * or a COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_start_listening_for_devices(companion_proxy_client_t client, companion_proxy_device_event_cb_t callback, void* userdata);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_start_listening_for_devices(companion_proxy_client_t client, companion_proxy_device_event_cb_t callback, void* userdata);
+
+ /**
+ * Stops listening for paired devices
+@@ -153,7 +153,7 @@ companion_proxy_error_t companion_proxy_start_listening_for_devices(companion_pr
+ * @return COMPANION_PROXY_E_SUCCESS on success,
+ * or a COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_stop_listening_for_devices(companion_proxy_client_t client);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_stop_listening_for_devices(companion_proxy_client_t client);
+
+ /**
+ * Returns a value for the given key.
+@@ -169,7 +169,7 @@ companion_proxy_error_t companion_proxy_stop_listening_for_devices(companion_pro
+ * COMPANION_PROXY_E_UNSUPPORTED_KEY if the companion device doesn't support the given key,
+ * or a COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_get_value_from_registry(companion_proxy_client_t client, const char* companion_udid, const char* key, plist_t* value);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_get_value_from_registry(companion_proxy_client_t client, const char* companion_udid, const char* key, plist_t* value);
+
+ /**
+ * Start forwarding a service port on the companion device to a port on the idevice.
+@@ -186,7 +186,7 @@ companion_proxy_error_t companion_proxy_get_value_from_registry(companion_proxy_
+ * @return COMPANION_PROXY_E_SUCCESS on success,
+ * or a COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_start_forwarding_service_port(companion_proxy_client_t client, uint16_t remote_port, const char* service_name, uint16_t* forward_port, plist_t options);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_start_forwarding_service_port(companion_proxy_client_t client, uint16_t remote_port, const char* service_name, uint16_t* forward_port, plist_t options);
+
+ /**
+ * Stop forwarding a service port between companion device and idevice.
+@@ -199,7 +199,7 @@ companion_proxy_error_t companion_proxy_start_forwarding_service_port(companion_
+ * @return COMPANION_PROXY_E_SUCCESS on success,
+ * or a COMPANION_PROXY_E_* error code otherwise.
+ */
+-companion_proxy_error_t companion_proxy_stop_forwarding_service_port(companion_proxy_client_t client, uint16_t remote_port);
++LIBIMOBILEDEVICE_API_MSC companion_proxy_error_t companion_proxy_stop_forwarding_service_port(companion_proxy_client_t client, uint16_t remote_port);
+
+ #ifdef __cplusplus
+ }
diff --git a/ports/libimobiledevice/portfile.cmake b/ports/libimobiledevice/portfile.cmake
index 3e6dca5ad..4453de357 100644
--- a/ports/libimobiledevice/portfile.cmake
+++ b/ports/libimobiledevice/portfile.cmake
@@ -1,9 +1,11 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO libimobiledevice-win32/libimobiledevice
- REF 37cb65f04249705eb5844821fd925b9edee8866c # v1.2.185
- SHA512 00a44de9552d3cf3daf3d490ad700188e20c72b24b8a6e9ca32d1d9fa53572479a5cbe85d130cd24fb1a2528c5e2cb238ab4caab35c5d93033c53b5c4c189bc6
+ REF b30267ac1fb46f2b1d2d5e585aaa73c0f4ce8ad8 # v1.3.6
+ SHA512 47912571726c38fe3c306a5e7c76b4042994b53a30794432a5af7eae5a30855d39828c52048b1a90b837306e6d5c447fc11d8521669258e76231cfdd6aef17d9
HEAD_REF msvc-master
+ PATCHES
+ fix-functions-declaration.patch
)
configure_file(${CURRENT_PORT_DIR}/CMakeLists.txt ${SOURCE_PATH}/CMakeLists.txt COPYONLY)
@@ -15,6 +17,7 @@ vcpkg_configure_cmake(
vcpkg_install_cmake()
vcpkg_copy_pdbs()
+vcpkg_fixup_pkgconfig()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)