Skip to content

Commit

Permalink
[libusbmuxd]Upgrade to 1.2.137. Fix pkgconfig path.
Browse files Browse the repository at this point in the history
  • Loading branch information
JackBoosY committed Nov 5, 2019
1 parent 98f1a95 commit c920ad4
Show file tree
Hide file tree
Showing 6 changed files with 78 additions and 21 deletions.
2 changes: 1 addition & 1 deletion ports/libideviceactivation/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ configure_file(
)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/libideviceactivation-1.0.pc
DESTINATION lib/libideviceactivation
DESTINATION lib/pkgconfig
)

install(FILES ${IDVCACTV_PUBLIC_HDR} DESTINATION include)
2 changes: 1 addition & 1 deletion ports/libimobiledevice/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,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)
Expand Down
42 changes: 42 additions & 0 deletions ports/libusbmuxd/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
cmake_minimum_required(VERSION 3.0)
project(libusbmuxd C)

# find dependencies
find_path(libplist_INCLUDES plist.h PATH_SUFFIXES plist)
set(libplist_INCLUDES ${libplist_INCLUDES}/../)
find_library(libplist plist REQUIRED)

# ready to create library
file(GLOB_RECURSE IDVCACTV_TOOLS_HDR common/*.h)
file(GLOB_RECURSE IDVCACTV_TOOLS_SRC common/*.c)

file(GLOB_RECURSE IDVCACTV_PUBLIC_HDR include/*.h)
file(GLOB_RECURSE IDVCACTV_SRC src/*.c)

add_library(libusbmuxd ${IDVCACTV_TOOLS_HDR} ${IDVCACTV_TOOLS_SRC} ${IDVCACTV_SRC} ${IDVCACTV_PUBLIC_HDR})
target_include_directories(libusbmuxd PRIVATE ${libplist_INCLUDES} include common)
target_compile_definitions(libusbmuxd PRIVATE -DPACKAGE_STRING="1.2.77")
if (WIN32)
target_compile_definitions(libusbmuxd PRIVATE -DWIN32)
target_link_libraries(libusbmuxd PRIVATE Ws2_32)
endif()
target_link_libraries(libusbmuxd PRIVATE ${libplist})

# install
install(
TARGETS libusbmuxd
RUNTIME DESTINATION bin
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/libusbmuxd.pc.in
${CMAKE_CURRENT_BINARY_DIR}/libusbmuxd.pc
@ONLY
)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/libusbmuxd.pc
DESTINATION lib/pkgconfig
)

install(FILES ${IDVCACTV_PUBLIC_HDR} DESTINATION include)
2 changes: 1 addition & 1 deletion ports/libusbmuxd/CONTROL
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Source: libusbmuxd
Version: 1.2.77-1
Version: 1.2.137
Description: A client library to multiplex connections from and to iOS devices
Build-Depends: libplist
20 changes: 20 additions & 0 deletions ports/libusbmuxd/fix-win-build.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
diff --git a/src/libusbmuxd.c b/src/libusbmuxd.c
index e85cf4a..35ed1b5 100644
--- a/src/libusbmuxd.c
+++ b/src/libusbmuxd.c
@@ -86,6 +86,15 @@ static char* stpncpy(char *dst, const char *src, size_t len)
}
#endif

+#ifdef WIN32
+int strcasecmp(char *s1, char *s2)
+{
+ while (toupper((unsigned char)*s1) == toupper((unsigned char)*s2++))
+ if (*s1++ == '\0') return 0;
+ return(toupper((unsigned char)*s1) - toupper((unsigned char)*--s2));
+}
+#endif
+
#include <plist/plist.h>
#define PLIST_CLIENT_VERSION_STRING PACKAGE_STRING
#define PLIST_LIBUSBMUX_VERSION 3
31 changes: 13 additions & 18 deletions ports/libusbmuxd/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,28 +1,23 @@
include(vcpkg_common_functions)

vcpkg_check_linkage(ONLY_DYNAMIC_CRT ONLY_DYNAMIC_LIBRARY)

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO libimobiledevice-win32/libusbmuxd
REF a4422aa65f3635d99c3b80fad18f093ef3c5f653
SHA512 9446bbcd6b901e6183f6e86d7fe7301c01182ae5b9330182fbca529bb1db54250cd6012256a420d457a7243388811c94bb2ecf5a0747238714d00b3850e60e8e
REF b9643ca81b8274fbb2411d3c66c4edf103f6a711 # v1.2.137
SHA512 f4c9537349bfac2140c809be24cc573d92087a57f20d90e2abd46d0a2098e31ccd283ab776302b61470fb08d45f8dc2cfb8bd8678cba7db5b2a9b51c270a3cc8
HEAD_REF msvc-master
PATCHES fix-win-build.patch
)

set(ENV{_CL_} "$ENV{_CL_} /GL-")
set(ENV{_LINK_} "$ENV{_LINK_} /LTCG:OFF")
configure_file(${CURRENT_PORT_DIR}/CMakeLists.txt ${SOURCE_PATH}/CMakeLists.txt COPYONLY)

vcpkg_install_msbuild(
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PROJECT_SUBPATH libusbmuxd.sln
INCLUDES_SUBPATH include
LICENSE_SUBPATH COPYING
USE_VCPKG_INTEGRATION
ALLOW_ROOT_INCLUDES
PREFER_NINJA
)

file(REMOVE "${CURRENT_PACKAGES_DIR}/include/Makefile.am")
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
vcpkg_install_cmake()
vcpkg_copy_pdbs()

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

# Handle copyright
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

0 comments on commit c920ad4

Please sign in to comment.