-
Notifications
You must be signed in to change notification settings - Fork 6.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[libimobiledevice/*] Use original upstream #33246
Conversation
59ecaa9
to
9539e3c
Compare
@Adela0814 @LilyWangL @dg0yt And the win32 fork's version is great than the original, which make we can not use the originial upstrem's version. That sucks. |
I appreciate these port being changed to use the original upstream. You shouldn't move the CMakeLists.txt into patches. It make things more difficult.
True, this was one of the show-stoppers for me when I looked at these ports in the past.
Did you consider using a DEF file instead? |
@dg0yt BTW, there are some tool only ports, |
Removal is more sensitive than addition. |
3387f1b
to
e0594b8
Compare
@BillyONeal @dan-shaw @dg0yt |
@BillyONeal @dan-shaw @dg0yt |
baa885b
to
f740ebe
Compare
The problem is that for all existing customers of these ports, these changes break them. The fork is suboptimal, absolutely. We would not add ports using the fork today. However, as long as there is no platform support intersection between upstream and the fork, they can both be in the curated registry, and I think we owe not breaking everyone using these bits. However I'd really like other maintainers to weigh in here. |
You mean split |
I think so but before spending a bunch of time doing that let's see what other maintainers think tomorrow. |
@ras0219-msft @JavierMatosD @dan-shaw and I discussed this today. We believe the following:
Other observations:
Agreed upon outcome:
===================== Other things we discussed and discarded:
|
This is the right thing to do. My oldest patches for adding Visual Studio support to libimobiledevice date back to 2015 (libimobiledevice/libplist#76, libimobiledevice/libusbmuxd#28, libimobiledevice/libimobiledevice#196), when CMake was relatively new, Visual Studio had no editor support for it, and the clang front-end for the msvc compiler wasn't a thing yet. I've been wanting to redo libimobiledevice-win32 as a CMake project for a long time, and it's great to that someone else finally got round to doing this. Thanks, @xiaozhuai! Getting usbmuxd to work on Windows is non-trivial; the only way I found to make it work is to use libusb-win32 and use a libusb driver for your iOS device. In virtually all cases, it's easier to use the Apple Mobile Device service instead. |
@qmfrederik Thanks for confirming! |
@xiaozhuai Thanks for the PR! |
./vcpkg x-add-version --all
and committing the result.There are more work to be done:
getopt-win32
use original upstream [getopt-win32] Bump to 1.1.0.20220925 #33893imobiledevice
feature forkf5solid
[kf5solid] Add imobile feature #33888libplist
[libplist] Add tools feature #33837libusbmuxd
[libusbmuxd] Add tools feature #33838libimobiledevice
[libimobiledevice] Add tools feature #33872libirecovery
[libirecovery] Add tools feature #33868libideviceactivation
[libideviceactivation] Add tools feature #33871PatchNot Plannedidevicerestore
to support windowsideviceinstaller
to support windowsPatchNot Plannedusbmuxd
to support windowsSince this pr is too big enough, I decide to open other PRs to solve them once this pr get merged.
These lines are added into ci.baseline.txtidevicerestore
,ideviceinstaller
andusbmuxd
are tool only port.Before this pr, they only supports windows.But as the upstream said, it should support other platforms.Now it supports!uwp & !android & !ios & !xbox
, but more patch needed to get windows work, and I would like to leave this job to others who are interested. This is why I add these lines into ci baseline.Also tested the following triplet: