summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-pda')
-rw-r--r--app-pda/gtkpod/files/gtkpod-2.1.5-conformance.patch11
-rw-r--r--app-pda/gtkpod/gtkpod-2.1.5-r5.ebuild (renamed from app-pda/gtkpod/gtkpod-2.1.5-r4.ebuild)23
-rw-r--r--app-pda/ideviceinstaller/Manifest1
-rw-r--r--app-pda/ideviceinstaller/ideviceinstaller-1.1.1.ebuild23
-rw-r--r--app-pda/ifuse/ifuse-1.1.4.ebuild4
-rw-r--r--app-pda/iripdb/iripdb-0.1.3b.ebuild6
-rw-r--r--app-pda/jpilot/metadata.xml2
-rw-r--r--app-pda/libimobiledevice-glue/Manifest1
-rw-r--r--app-pda/libimobiledevice-glue/libimobiledevice-glue-1.1.0.ebuild21
-rw-r--r--app-pda/libimobiledevice-glue/metadata.xml11
-rw-r--r--app-pda/libimobiledevice/Manifest1
-rw-r--r--app-pda/libimobiledevice/files/libimobiledevice-1.3.0-cython3.patch48
-rw-r--r--app-pda/libimobiledevice/files/libimobiledevice-1.3.0-python.patch223
-rw-r--r--app-pda/libimobiledevice/files/libimobiledevice-1.3.0_p20240201_time_h.patch10
-rw-r--r--app-pda/libimobiledevice/libimobiledevice-1.3.0-r4.ebuild (renamed from app-pda/libimobiledevice/libimobiledevice-1.3.0-r1.ebuild)14
-rw-r--r--app-pda/libimobiledevice/libimobiledevice-1.3.0_p20240201.ebuild76
-rw-r--r--app-pda/libplist/Manifest3
-rw-r--r--app-pda/libplist/files/libplist-2.3.0-configure-c99.patch22
-rw-r--r--app-pda/libplist/files/libplist-2.3.0-test-rename.patch471
-rw-r--r--app-pda/libplist/libplist-2.2.0-r4.ebuild6
-rw-r--r--app-pda/libplist/libplist-2.3.0-r1.ebuild49
-rw-r--r--app-pda/libplist/libplist-2.3.0-r2.ebuild50
-rw-r--r--app-pda/libusbmuxd/Manifest2
-rw-r--r--app-pda/libusbmuxd/files/libusbmuxd-2.0.2-configure.patch32
-rw-r--r--app-pda/libusbmuxd/libusbmuxd-2.0.2-r1.ebuild4
-rw-r--r--app-pda/libusbmuxd/libusbmuxd-2.0.2-r2.ebuild40
-rw-r--r--app-pda/pilot-link/metadata.xml5
-rw-r--r--app-pda/pilot-link/pilot-link-0.12.5-r4.ebuild13
-rw-r--r--app-pda/usbmuxd/metadata.xml15
-rw-r--r--app-pda/usbmuxd/usbmuxd-1.1.1-r2.ebuild (renamed from app-pda/usbmuxd/usbmuxd-1.1.1.ebuild)36
30 files changed, 1173 insertions, 50 deletions
diff --git a/app-pda/gtkpod/files/gtkpod-2.1.5-conformance.patch b/app-pda/gtkpod/files/gtkpod-2.1.5-conformance.patch
new file mode 100644
index 000000000000..f0fadb31ea2d
--- /dev/null
+++ b/app-pda/gtkpod/files/gtkpod-2.1.5-conformance.patch
@@ -0,0 +1,11 @@
+diff -Naur a/libgtkpod/misc.c b/libgtkpod/misc.c
+--- a/libgtkpod/misc.c 2015-06-02 19:14:21.000000000 +0100
++++ b/libgtkpod/misc.c 2024-02-03 17:14:10.900114317 +0000
+@@ -39,6 +39,7 @@
+ #include <sys/wait.h>
+ #include <unistd.h>
+ #include <glib/gi18n-lib.h>
++#include <libxml/parser.h>
+ #include "charset.h"
+ #include "clientserver.h"
+ #include "misc.h"
diff --git a/app-pda/gtkpod/gtkpod-2.1.5-r4.ebuild b/app-pda/gtkpod/gtkpod-2.1.5-r5.ebuild
index 334dc29901ad..85783a6bb692 100644
--- a/app-pda/gtkpod/gtkpod-2.1.5-r4.ebuild
+++ b/app-pda/gtkpod/gtkpod-2.1.5-r5.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
# Not all modules needed by py script are packaged in Gentoo
#PYTHON_COMPAT=( python3_{6..9} )
@@ -9,7 +9,7 @@ EAPI=7
inherit autotools flag-o-matic gnome2-utils xdg #python-single-r1
DESCRIPTION="A graphical user interface to the Apple productline"
-HOMEPAGE="http://www.gtkpod.org/"
+HOMEPAGE="https://sourceforge.net/projects/gtkpod/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2 FDL-1.2"
@@ -56,18 +56,23 @@ RDEPEND="${COMMON_DEPEND}
# eautoreconf, bug #659748
DEPEND="${COMMON_DEPEND}
media-libs/gstreamer:1.0
+"
+
+BDEPEND="
dev-util/intltool
- sys-devel/flex
+ app-alternatives/lex
sys-devel/gettext
- virtual/os-headers
virtual/pkgconfig
"
-src_prepare() {
- xdg_src_prepare
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.1.3-gold.patch
+ "${FILESDIR}"/${PN}-2.1.5-m4a.patch
+ "${FILESDIR}"/${PN}-2.1.5-conformance.patch
+)
- eapply "${FILESDIR}"/${PN}-2.1.3-gold.patch
- eapply "${FILESDIR}"/${PN}-2.1.5-m4a.patch
+src_prepare() {
+ default
# python_fix_shebang scripts/
# 2to3 --no-diffs -w scripts/sync-palm-jppy.py || die
diff --git a/app-pda/ideviceinstaller/Manifest b/app-pda/ideviceinstaller/Manifest
index de74f2fb71eb..086a519e54a9 100644
--- a/app-pda/ideviceinstaller/Manifest
+++ b/app-pda/ideviceinstaller/Manifest
@@ -1 +1,2 @@
DIST ideviceinstaller-1.1.0.tar.bz2 272210 BLAKE2B da67c16d046e148d11bafcd1f33a8e5a5cba49c6f975ba038602eaf2444a76883d568e16583923c7303cce170e6718fc1cfcd0b2cffed5a1eaf895944043d785 SHA512 8bf5dc30b8fa2f0c171ec3705db8d8d143d2520b2875fc05d9d325bd4f1ffdf29230557e57f3e824654ab3bb71bbaf9019aa573d4b1cce29a9c75bf15024d623
+DIST ideviceinstaller-1.1.1.tar.bz2 274494 BLAKE2B e3aaccc225556f401f4b26b49bf19dd582425dfc7ea0dc1e4e523ce1ff60b643466d021d9d4c1205487551a4968ccafc410adb9e09248ab1a651c8d2a81a73ed SHA512 fd117a5745890746237f381c9fe0e01cf8ea06d9c2341da397c52e5ebc0e058c73797e349a0a81b2777f5333dafc32e5c32e9e2c99ee70a864be159fe73e9568
diff --git a/app-pda/ideviceinstaller/ideviceinstaller-1.1.1.ebuild b/app-pda/ideviceinstaller/ideviceinstaller-1.1.1.ebuild
new file mode 100644
index 000000000000..6d9a50718818
--- /dev/null
+++ b/app-pda/ideviceinstaller/ideviceinstaller-1.1.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="A tool to interact with the installation_proxy of an Apple's iDevice"
+HOMEPAGE="https://libimobiledevice.org"
+SRC_URI="https://github.com/libimobiledevice/ideviceinstaller/releases/download/${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=">=app-pda/libimobiledevice-1.3.0:=
+ >=app-pda/libplist-2.3.0:=
+ >=dev-libs/libzip-0.8"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+ sed -i -e 's:-Werror -g::' configure || die
+}
diff --git a/app-pda/ifuse/ifuse-1.1.4.ebuild b/app-pda/ifuse/ifuse-1.1.4.ebuild
index 11238d9ee955..f3e66f8690c3 100644
--- a/app-pda/ifuse/ifuse-1.1.4.ebuild
+++ b/app-pda/ifuse/ifuse-1.1.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/libimobiledevice/${PN}/releases/download/${PV}/${P}.
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~arm64 x86"
DEPEND="
>=app-pda/libimobiledevice-1.3.0:=
diff --git a/app-pda/iripdb/iripdb-0.1.3b.ebuild b/app-pda/iripdb/iripdb-0.1.3b.ebuild
index 959d4997dc63..57dd91079dcf 100644
--- a/app-pda/iripdb/iripdb-0.1.3b.ebuild
+++ b/app-pda/iripdb/iripdb-0.1.3b.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -27,9 +27,9 @@ S="${WORKDIR}/${PN}"
src_compile() {
echo "$(tc-getCXX) ${CXXFLAGS} -c -o main.o main.cpp"
- $(tc-getCXX) ${CXXFLAGS} -c -o main.o -I/usr/include/taglib main.cpp
+ $(tc-getCXX) ${CXXFLAGS} -c -o main.o -I/usr/include/taglib main.cpp || die
echo "$(tc-getCC) ${CFLAGS} ${LDFLAGS} -o iripdb main.o -lz -lm -ltag -lstdc++"
- $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o iripdb main.o -lz -lm -ltag -lstdc++
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o iripdb main.o -lz -lm -ltag -lstdc++ || die
}
src_install() {
diff --git a/app-pda/jpilot/metadata.xml b/app-pda/jpilot/metadata.xml
index ad136b080d72..b917188dc10a 100644
--- a/app-pda/jpilot/metadata.xml
+++ b/app-pda/jpilot/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <!-- maintainer-needed -->
<upstream>
<maintainer status="active">
<email>judd@engineer.com</email>
diff --git a/app-pda/libimobiledevice-glue/Manifest b/app-pda/libimobiledevice-glue/Manifest
new file mode 100644
index 000000000000..309afdf12745
--- /dev/null
+++ b/app-pda/libimobiledevice-glue/Manifest
@@ -0,0 +1 @@
+DIST libimobiledevice-glue-1.1.0.tar.bz2 324600 BLAKE2B 3fcd92de24884d73b83767ace135246c45b60b1221a9937b7d8d4e42f4ccc2105e1f88854682bcef3002af22913df76f61a40d0bece20a354def1b54e260d242 SHA512 5d3522f764bd33a847ec1773d6493a2671965f2432b569d7e2c98746dca7440188823e46a405893d936f725c6bc522bd273b16234e8780cf87b602fc395bdf75
diff --git a/app-pda/libimobiledevice-glue/libimobiledevice-glue-1.1.0.ebuild b/app-pda/libimobiledevice-glue/libimobiledevice-glue-1.1.0.ebuild
new file mode 100644
index 000000000000..927db3ddbb97
--- /dev/null
+++ b/app-pda/libimobiledevice-glue/libimobiledevice-glue-1.1.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Support library for libimobiledevice projects"
+HOMEPAGE="https://github.com/libimobiledevice/libimobiledevice-glue"
+SRC_URI="https://github.com/libimobiledevice/libimobiledevice-glue/releases/download/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/0.1.0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+
+RDEPEND=">=app-pda/libplist-2.3:="
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/app-pda/libimobiledevice-glue/metadata.xml b/app-pda/libimobiledevice-glue/metadata.xml
new file mode 100644
index 000000000000..4f1857e5d278
--- /dev/null
+++ b/app-pda/libimobiledevice-glue/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>matthew@gentoo.org</email>
+ <name>Matthew Smith</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">libimobiledevice/libimobiledevice-glue</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-pda/libimobiledevice/Manifest b/app-pda/libimobiledevice/Manifest
index 1a1995a017ee..c02e6d5bd5d7 100644
--- a/app-pda/libimobiledevice/Manifest
+++ b/app-pda/libimobiledevice/Manifest
@@ -1 +1,2 @@
DIST libimobiledevice-1.3.0.tar.bz2 733949 BLAKE2B 40717280bb3424c7431aa93d06d10de817e6761acf2b19948d80b691cfb4dd4ef0e31b81c8458eed29a43c8c8aa256da7baa3648fb785cfbdb7316daaba119a3 SHA512 7b22040552a6561729c79c0846f571b0e608abb7c297567d2ecfdd1718ce86df08a5e34ba51f209bdee96a1917da15e7ba3aaef1d289a951d1d3470b1f89e6a8
+DIST libimobiledevice-1.3.0_p20240201.tar.gz 405723 BLAKE2B 5f3672e6b3c180440c215d9411eb2f21fe9451d822707e5b11ffff6693dccabfb5d184ef35f36bce2af508cbdebb656923927558ef39669825679a8ebf3cc8ee SHA512 d3746b7e0803840489593c9a3d8c8b16f6d4be5e2cd5c947d05be31e49c095c6503ef9150c886a87c68f4694bc6c1bfba96c4578789adc8f165a6391d0e4918f
diff --git a/app-pda/libimobiledevice/files/libimobiledevice-1.3.0-cython3.patch b/app-pda/libimobiledevice/files/libimobiledevice-1.3.0-cython3.patch
new file mode 100644
index 000000000000..c7b8cf0dcc2f
--- /dev/null
+++ b/app-pda/libimobiledevice/files/libimobiledevice-1.3.0-cython3.patch
@@ -0,0 +1,48 @@
+https://bugs.gentoo.org/898666
+https://github.com/libimobiledevice/libimobiledevice/pull/1521
+
+--- a/cython/installation_proxy.pxi
++++ b/cython/installation_proxy.pxi
+@@ -27,7 +27,7 @@ cdef extern from "libimobiledevice/installation_proxy.h":
+ instproxy_error_t instproxy_restore(instproxy_client_t client, char *appid, plist.plist_t client_options, instproxy_status_cb_t status_cb, void *user_data)
+ instproxy_error_t instproxy_remove_archive(instproxy_client_t client, char *appid, plist.plist_t client_options, instproxy_status_cb_t status_cb, void *user_data)
+
+-cdef void instproxy_notify_cb(plist.plist_t command, plist.plist_t status, void *py_callback) with gil:
++cdef void instproxy_notify_cb(plist.plist_t command, plist.plist_t status, void *py_callback) noexcept:
+ (<object>py_callback)(plist.plist_t_to_node(command, False), plist.plist_t_to_node(status, False))
+
+ cdef class InstallationProxyError(BaseError):
+
+From deba42ba94c13517ebdbe7a4d8177ab47a9589a5 Mon Sep 17 00:00:00 2001
+From: IridiumXOR <oliveriandrea@gmail.com>
+Date: Thu, 11 Jan 2024 22:00:39 +0100
+Subject: [PATCH 2/3] Fix np_notify_cb for Cython 3 noexcept error
+
+--- a/cython/notification_proxy.pxi
++++ b/cython/notification_proxy.pxi
+@@ -70,7 +70,7 @@ NP_ITDBPREP_DID_END = C_NP_ITDBPREP_DID_END
+ NP_LANGUAGE_CHANGED = C_NP_LANGUAGE_CHANGED
+ NP_ADDRESS_BOOK_PREF_CHANGED = C_NP_ADDRESS_BOOK_PREF_CHANGED
+
+-cdef void np_notify_cb(const_char_ptr notification, void *py_callback):
++cdef void np_notify_cb(const_char_ptr notification, void *py_callback) noexcept:
+ (<object>py_callback)(notification)
+
+ cdef class NotificationProxyError(BaseError):
+
+From 7739a4bf61a0fa549646d6062978f126a1ff06fa Mon Sep 17 00:00:00 2001
+From: IridiumXOR <oliveriandrea@gmail.com>
+Date: Thu, 11 Jan 2024 22:03:07 +0100
+Subject: [PATCH 3/3] Fix idevice_event_cb for Cython 3 noexcept error
+
+--- a/cython/imobiledevice.pyx
++++ b/cython/imobiledevice.pyx
+@@ -94,7 +94,7 @@ cdef class iDeviceEvent:
+ def __get__(self):
+ return self._c_event.conn_type
+
+-cdef void idevice_event_cb(const_idevice_event_t c_event, void *user_data) with gil:
++cdef void idevice_event_cb(const_idevice_event_t c_event, void *user_data) noexcept:
+ cdef iDeviceEvent event = iDeviceEvent.__new__(iDeviceEvent)
+ event._c_event = c_event
+ (<object>user_data)(event)
diff --git a/app-pda/libimobiledevice/files/libimobiledevice-1.3.0-python.patch b/app-pda/libimobiledevice/files/libimobiledevice-1.3.0-python.patch
new file mode 100644
index 000000000000..28ca6da51ebd
--- /dev/null
+++ b/app-pda/libimobiledevice/files/libimobiledevice-1.3.0-python.patch
@@ -0,0 +1,223 @@
+https://github.com/libimobiledevice/libimobiledevice/pull/685
+
+From fb337f26c8e58ed0ce0750f7899ccbd5da203dee Mon Sep 17 00:00:00 2001
+From: wendyisgr33n <wendyisgr33n@gmail.com>
+Date: Mon, 30 Jul 2018 10:43:57 -0700
+Subject: [PATCH 1/5] Fixed AFC afc.pxi definitions for Python2/3
+ compatibility. Added missing public method 'remove_path_and_contents'
+
+--- a/cython/afc.pxi
++++ b/cython/afc.pxi
+@@ -52,6 +52,7 @@ cdef extern from "libimobiledevice/afc.h":
+ afc_error_t afc_read_directory(afc_client_t client, char *dir, char ***list)
+ afc_error_t afc_get_file_info(afc_client_t client, char *filename, char ***infolist)
+ afc_error_t afc_remove_path(afc_client_t client, char *path)
++ afc_error_t afc_remove_path_and_contents(afc_client_t client, char *path)
+ afc_error_t afc_rename_path(afc_client_t client, char *f, char *to)
+ afc_error_t afc_make_directory(afc_client_t client, char *dir)
+ afc_error_t afc_truncate(afc_client_t client, char *path, uint64_t newsize)
+@@ -235,17 +236,17 @@ cdef class AfcClient(BaseService):
+ afc_file_mode_t c_mode
+ uint64_t handle
+ AfcFile f
+- if mode == <bytes>'r':
++ if mode == b'r':
+ c_mode = AFC_FOPEN_RDONLY
+- elif mode == <bytes>'r+':
++ elif mode == b'r+':
+ c_mode = AFC_FOPEN_RW
+- elif mode == <bytes>'w':
++ elif mode == b'w':
+ c_mode = AFC_FOPEN_WRONLY
+- elif mode == <bytes>'w+':
++ elif mode == b'w+':
+ c_mode = AFC_FOPEN_WR
+- elif mode == <bytes>'a':
++ elif mode == b'a':
+ c_mode = AFC_FOPEN_APPEND
+- elif mode == <bytes>'a+':
++ elif mode == b'a+':
+ c_mode = AFC_FOPEN_RDAPPEND
+ else:
+ raise ValueError("mode string must be 'r', 'r+', 'w', 'w+', 'a', or 'a+'")
+@@ -282,6 +283,9 @@ cdef class AfcClient(BaseService):
+ cpdef remove_path(self, bytes path):
+ self.handle_error(afc_remove_path(self._c_client, path))
+
++ cpdef remove_path_and_contents(self, bytes path):
++ self.handle_error(afc_remove_path_and_contents(self._c_client, path))
++
+ cpdef rename_path(self, bytes f, bytes t):
+ self.handle_error(afc_rename_path(self._c_client, f, t))
+
+@@ -308,17 +312,17 @@ cdef class Afc2Client(AfcClient):
+ afc_file_mode_t c_mode
+ uint64_t handle
+ AfcFile f
+- if mode == <bytes>'r':
++ if mode == b'r':
+ c_mode = AFC_FOPEN_RDONLY
+- elif mode == <bytes>'r+':
++ elif mode == b'r+':
+ c_mode = AFC_FOPEN_RW
+- elif mode == <bytes>'w':
++ elif mode == b'w':
+ c_mode = AFC_FOPEN_WRONLY
+- elif mode == <bytes>'w+':
++ elif mode == b'w+':
+ c_mode = AFC_FOPEN_WR
+- elif mode == <bytes>'a':
++ elif mode == b'a':
+ c_mode = AFC_FOPEN_APPEND
+- elif mode == <bytes>'a+':
++ elif mode == b'a+':
+ c_mode = AFC_FOPEN_RDAPPEND
+ else:
+ raise ValueError("mode string must be 'r', 'r+', 'w', 'w+', 'a', or 'a+'")
+
+From b71e8935949a1d6f419a3f783d804809fb4c309b Mon Sep 17 00:00:00 2001
+From: wendyisgr33n <wendyisgr33n@gmail.com>
+Date: Mon, 30 Jul 2018 10:44:40 -0700
+Subject: [PATCH 2/5] Fixed debugserver.pxi PyString_AsString compatibility
+ with Python3
+
+--- a/cython/debugserver.pxi
++++ b/cython/debugserver.pxi
+@@ -44,7 +44,12 @@ cdef class DebugServerError(BaseError):
+
+
+ # from http://stackoverflow.com/a/17511714
+-from cpython.string cimport PyString_AsString
++# https://github.com/libimobiledevice/libimobiledevice/pull/198
++from cpython cimport PY_MAJOR_VERSION
++if PY_MAJOR_VERSION <= 2:
++ from cpython.string cimport PyString_AsString
++else:
++ from cpython.bytes cimport PyBytes_AsString as PyString_AsString
+ cdef char ** to_cstring_array(list_str):
+ if not list_str:
+ return NULL
+
+From 44f54cdc0ebb052e4a642023bbf96504e6139ec9 Mon Sep 17 00:00:00 2001
+From: wendyisgr33n <wendyisgr33n@gmail.com>
+Date: Mon, 30 Jul 2018 10:45:22 -0700
+Subject: [PATCH 3/5] Fixed bytes/strings check in imobiledevice.pyx for
+ compatibility with Python2/3
+
+--- a/cython/imobiledevice.pyx
++++ b/cython/imobiledevice.pyx
+@@ -171,7 +171,7 @@ from libc.stdlib cimport *
+ cdef class iDevice(Base):
+ def __cinit__(self, object udid=None, *args, **kwargs):
+ cdef char* c_udid = NULL
+- if isinstance(udid, basestring):
++ if isinstance(udid, (str, bytes)):
+ c_udid = <bytes>udid
+ elif udid is not None:
+ raise TypeError("iDevice's constructor takes a string or None as the udid argument")
+
+From 8908619973e751b778d3fb73dc309cd5cb7f4122 Mon Sep 17 00:00:00 2001
+From: wendyisgr33n <wendyisgr33n@gmail.com>
+Date: Mon, 30 Jul 2018 10:45:55 -0700
+Subject: [PATCH 4/5] Fixed bytes/strings checks in lockdown.pxi for
+ compatibility with Python2/3
+
+--- a/cython/lockdown.pxi
++++ b/cython/lockdown.pxi
+@@ -230,9 +230,9 @@ cdef class LockdownClient(PropertyListService):
+
+ if issubclass(service, BaseService) and \
+ service.__service_name__ is not None \
+- and isinstance(service.__service_name__, basestring):
++ and isinstance(service.__service_name__, (str, bytes)):
+ c_service_name = <bytes>service.__service_name__
+- elif isinstance(service, basestring):
++ elif isinstance(service, (str, bytes)):
+ c_service_name = <bytes>service
+ else:
+ raise TypeError("LockdownClient.start_service() takes a BaseService or string as its first argument")
+@@ -253,7 +253,7 @@ cdef class LockdownClient(PropertyListService):
+
+ if not hasattr(service_class, '__service_name__') and \
+ not service_class.__service_name__ is not None \
+- and not isinstance(service_class.__service_name__, basestring):
++ and not isinstance(service_class.__service_name__, (str, bytes)):
+ raise TypeError("LockdownClient.get_service_client() takes a BaseService as its first argument")
+
+ descriptor = self.start_service(service_class)
+
+From e59cbdbf4e7dba98ef57a54e314a89edfea0a3dc Mon Sep 17 00:00:00 2001
+From: wendyisgr33n <wendyisgr33n@gmail.com>
+Date: Mon, 30 Jul 2018 10:47:48 -0700
+Subject: [PATCH 5/5] Fixed method visibility in mobilebackup2.pxi API
+
+--- a/cython/mobilebackup2.pxi
++++ b/cython/mobilebackup2.pxi
+@@ -54,10 +54,10 @@ cdef class MobileBackup2Client(PropertyListService):
+ cdef inline BaseError _error(self, int16_t ret):
+ return MobileBackup2Error(ret)
+
+- cdef send_message(self, bytes message, plist.Node options):
++ cpdef send_message(self, bytes message, plist.Node options):
+ self.handle_error(mobilebackup2_send_message(self._c_client, message, options._c_node))
+
+- cdef tuple receive_message(self):
++ cpdef tuple receive_message(self):
+ cdef:
+ char* dlmessage = NULL
+ plist.plist_t c_node = NULL
+@@ -73,29 +73,34 @@ cdef class MobileBackup2Client(PropertyListService):
+ free(dlmessage)
+ raise
+
+- cdef int send_raw(self, bytes data, int length):
++ cpdef int send_raw(self, bytes data, int length):
+ cdef:
+- uint32_t bytes = 0
++ uint32_t bytes_recvd = 0
+ mobilebackup2_error_t err
+- err = mobilebackup2_send_raw(self._c_client, data, length, &bytes)
++ err = mobilebackup2_send_raw(self._c_client, data, length, &bytes_recvd)
+ try:
+ self.handle_error(err)
+- return <bint>bytes
++ return <bint>bytes_recvd
+ except BaseError, e:
+ raise
+
+- cdef int receive_raw(self, bytes data, int length):
++ cpdef int receive_raw(self, bytearray data, int length):
+ cdef:
+- uint32_t bytes = 0
++ uint32_t bytes_recvd = 0
+ mobilebackup2_error_t err
+- err = mobilebackup2_receive_raw(self._c_client, data, length, &bytes)
++ err = mobilebackup2_receive_raw(self._c_client, data, length, &bytes_recvd)
++
++ # Throwing an exception when we test if theres more data to read is excessive
++ if err == -1 and bytes_recvd == 0:
++ return 0
++
+ try:
+ self.handle_error(err)
+- return <bint>bytes
++ return <bint>bytes_recvd
+ except BaseError, e:
+ raise
+
+- cdef float version_exchange(self, double[::1] local_versions):
++ cpdef float version_exchange(self, double[::1] local_versions):
+ cdef:
+ double[::1] temp = None
+ double remote_version = 0.0
+@@ -107,8 +112,8 @@ cdef class MobileBackup2Client(PropertyListService):
+ except BaseError, e:
+ raise
+
+- cdef send_request(self, bytes request, bytes target_identifier, bytes source_identifier, plist.Node options):
++ cpdef send_request(self, bytes request, bytes target_identifier, bytes source_identifier, plist.Node options):
+ self.handle_error(mobilebackup2_send_request(self._c_client, request, target_identifier, source_identifier, options._c_node))
+
+- cdef send_status_response(self, int status_code, bytes status1, plist.Node status2):
++ cpdef send_status_response(self, int status_code, bytes status1, plist.Node status2):
+ self.handle_error(mobilebackup2_send_status_response(self._c_client, status_code, status1, status2._c_node))
diff --git a/app-pda/libimobiledevice/files/libimobiledevice-1.3.0_p20240201_time_h.patch b/app-pda/libimobiledevice/files/libimobiledevice-1.3.0_p20240201_time_h.patch
new file mode 100644
index 000000000000..b158c97164b1
--- /dev/null
+++ b/app-pda/libimobiledevice/files/libimobiledevice-1.3.0_p20240201_time_h.patch
@@ -0,0 +1,10 @@
+--- a/tools/afcclient.c
++++ b/tools/afcclient.c
+@@ -36,6 +36,7 @@
+ #include <signal.h>
+ #include <ctype.h>
+ #include <unistd.h>
++#include <time.h>
+
+ #ifdef WIN32
+ #include <windows.h>
diff --git a/app-pda/libimobiledevice/libimobiledevice-1.3.0-r1.ebuild b/app-pda/libimobiledevice/libimobiledevice-1.3.0-r4.ebuild
index d9ba5f372523..c7233fe43fc1 100644
--- a/app-pda/libimobiledevice/libimobiledevice-1.3.0-r1.ebuild
+++ b/app-pda/libimobiledevice/libimobiledevice-1.3.0-r4.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{9,10} )
+PYTHON_COMPAT=( python3_{9..11} )
inherit autotools python-r1
@@ -19,7 +19,7 @@ IUSE="doc gnutls python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
- >=app-pda/libplist-2.2.0:=
+ >=app-pda/libplist-2.2.0:= <app-pda/libplist-2.3
>=app-pda/libusbmuxd-2.0.2:=
gnutls? (
dev-libs/libgcrypt:0
@@ -39,8 +39,8 @@ DEPEND="
"
BDEPEND="
virtual/pkgconfig
- doc? ( app-doc/doxygen )
- python? ( >=dev-python/cython-0.17[${PYTHON_USEDEP}] )
+ doc? ( app-text/doxygen )
+ python? ( dev-python/cython[${PYTHON_USEDEP}] )
"
BUILD_DIR="${S}_build"
@@ -48,6 +48,8 @@ BUILD_DIR="${S}_build"
PATCHES=(
"${FILESDIR}/${P}-slibtool.patch"
"${FILESDIR}/${P}-missing_libflags.patch" #787962
+ "${FILESDIR}/${P}-python.patch"
+ "${FILESDIR}"/${P}-cython3.patch # Bug #898666
)
src_prepare() {
diff --git a/app-pda/libimobiledevice/libimobiledevice-1.3.0_p20240201.ebuild b/app-pda/libimobiledevice/libimobiledevice-1.3.0_p20240201.ebuild
new file mode 100644
index 000000000000..e230c072661e
--- /dev/null
+++ b/app-pda/libimobiledevice/libimobiledevice-1.3.0_p20240201.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+MY_COMMIT=73b6fd183872096f20e6d1007429546a317a7cb1
+
+DESCRIPTION="Support library to communicate with Apple iPhone/iPod Touch devices"
+HOMEPAGE="https://www.libimobiledevice.org/"
+SRC_URI="https://github.com/libimobiledevice/libimobiledevice/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}-${MY_COMMIT}
+
+# While COPYING* doesn't mention 'or any later version', all the headers do, hence use +
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0/1.0-6" # based on SONAME of libimobiledevice-1.0.so
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="doc gnutls readline static-libs"
+
+RDEPEND="
+ app-pda/libimobiledevice-glue:=
+ >=app-pda/libplist-2.3:=
+ >=app-pda/libusbmuxd-2.0.2:=
+ gnutls? (
+ dev-libs/libgcrypt:0
+ >=dev-libs/libtasn1-1.1
+ >=net-libs/gnutls-2.2.0
+ )
+ !gnutls? (
+ dev-libs/openssl:0=
+ )
+ readline? ( sys-libs/readline:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( app-text/doxygen )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.0_p20240201_time_h.patch
+)
+
+src_prepare() {
+ default
+ echo ${PV}-${MY_COMMIT} > .tarball-version
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --without-cython
+ $(use_enable static-libs static)
+ )
+ use gnutls && myeconfargs+=( --disable-openssl )
+ # --with-readline also causes readline to not be used
+ use readline || myeconfargs+=( --without-readline )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ emake
+
+ if use doc; then
+ doxygen doxygen.cfg || die
+ fi
+}
+
+src_install() {
+ emake install DESTDIR="${D}"
+
+ use doc && dodoc docs/html/*
+
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/app-pda/libplist/Manifest b/app-pda/libplist/Manifest
index 7a8c3d90462f..d9ffa60af239 100644
--- a/app-pda/libplist/Manifest
+++ b/app-pda/libplist/Manifest
@@ -1 +1,2 @@
-DIST libplist-2.2.0.tar.bz2 126808 BLAKE2B 7c3ec04aaa52eca33ae28851a6524c9ea531df939feef0f10827c8c2de78a6ccd856ea4d8a568b146ccb5de96f70dd5accec34aa2fdd61f9e6eba01256c0b518 SHA512 641bfd3ec0565f104d3a2d1ebdf6137bc9252b67ce90550e24ab0deeee4e820e119ba4f8f1ba04a0358d995d196fa61e35f2f0ee8ba37fc0270752ae842ab1f5
+DIST libplist-2.2.0.tar.xz 102932 BLAKE2B cca3099d5a2230feb67fd4d54777f2c3d0a083b811d2b7e3365399d2c2d2fff922a3c9f4924400810b71d92668779ede663c9ed2cebc8acd6f3b2c6e09285d90 SHA512 913a8d05239496d8e8e458e1cb974813d8b5ca013df9e0fddb97b1da6006c300f6ba2be2f3826fd157c0ae4ff2d003ecfdc55e2401884be26360ffe0ebdabd79
+DIST libplist-2.3.0.tar.xz 123876 BLAKE2B 2e5555eeeed5a7572fcdb98e537af842af1d056bb5fe42ae83b7e71e1a57535ee388fc263c9b7a495feccbe5d2d7c53c89987fb0a81573fe3f5ac9f884144cf7 SHA512 ce86f066ea03d86b3a6dcca5905044e93af46164ab55be167f7804926b7e28c3383a024903986fb273b8c40b07b749f5431048ce76e550674f83388d6cff7542
diff --git a/app-pda/libplist/files/libplist-2.3.0-configure-c99.patch b/app-pda/libplist/files/libplist-2.3.0-configure-c99.patch
new file mode 100644
index 000000000000..dfe3714c46e2
--- /dev/null
+++ b/app-pda/libplist/files/libplist-2.3.0-configure-c99.patch
@@ -0,0 +1,22 @@
+https://github.com/libimobiledevice/libplist/commit/b3cf5bec39de69bf06c7813689f03cbe58f45ca9
+
+From b3cf5bec39de69bf06c7813689f03cbe58f45ca9 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Mon, 18 Dec 2023 11:14:40 +0100
+Subject: [PATCH] configure: Use string for tm_zone assignment
+
+This matches what the actual sources do. Clang 16 and GCC 14
+no longer support converting ints to pointers implicitly, so the
+configure probe always fails with these compilers.
+--- a/configure.ac
++++ b/configure.ac
+@@ -129,7 +129,7 @@ AC_CACHE_CHECK(for tm_zone in struct tm, ac_cv_struct_tm_zone,
+ #include <time.h>
+ ], [
+ struct tm tm;
+- tm.tm_zone = 1;
++ tm.tm_zone = (char*)"UTC";
+ ])],
+ [ac_cv_struct_tm_zone=yes],
+ [ac_cv_struct_tm_zone=no]
+
diff --git a/app-pda/libplist/files/libplist-2.3.0-test-rename.patch b/app-pda/libplist/files/libplist-2.3.0-test-rename.patch
new file mode 100644
index 000000000000..ca1144870787
--- /dev/null
+++ b/app-pda/libplist/files/libplist-2.3.0-test-rename.patch
@@ -0,0 +1,471 @@
+From 2cd858c679d25633077ca78b67182a9b77653816 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyich@gmail.com>
+Date: Tue, 3 Oct 2023 10:41:32 +0100
+Subject: [PATCH] test: use unique output file names across tests
+
+Without the change tests ran in parallel occasionally clobber outputs of
+one another and fail as:
+
+ $ make check -j16 VERBOSE=y
+ ...
+ FAIL: huge
+ ==========
+ Converting
+ File ../test/data/5.plist is open
+ PList XML parsing succeeded
+ PList BIN writing succeeded
+ PList BIN parsing succeeded
+ PList XML writing succeeded
+ Size of input and output is different
+ Input size : 4292380
+ Output size : 4305301
+ Comparing
+ PList parsing failed
+ FAIL huge.test (exit status: 3)
+
+Closes: https://github.com/libimobiledevice/libplist/issues/234#issuecomment-1743820556
+--- a/test/amp.test
++++ b/test/amp.test
+@@ -3,7 +3,7 @@
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=amp.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.out
++DATAOUT0=$top_builddir/test/data/amp.test.out
+
+ rm -rf $DATAOUT0
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+--- a/test/bigarray++.test
++++ b/test/bigarray++.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/bigarray++.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/bigarray++.test.out
+--- a/test/bigarray.test
++++ b/test/bigarray.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/bigarray.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/bigarray.test.out
+--- a/test/cdata.test
++++ b/test/cdata.test
+@@ -5,7 +5,7 @@ set -e
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=cdata.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.bin
++DATAOUT0=$top_builddir/test/data/cdata.test.bin
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/dates.test
++++ b/test/dates.test
+@@ -5,8 +5,8 @@ set -e
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=7.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.bin
+-DATAOUT1=$top_builddir/test/data/$TESTFILE.xml
++DATAOUT0=$top_builddir/test/data/dates.test.bin
++DATAOUT1=$top_builddir/test/data/dates.test.xml
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+ $top_builddir/tools/plistutil -i $DATAOUT0 -o $DATAOUT1
+--- a/test/empty++.test
++++ b/test/empty++.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/empty++.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/empty++.test.out
+--- a/test/empty.test
++++ b/test/empty.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/empty.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/empty.test.out
+--- a/test/empty_keys.test
++++ b/test/empty_keys.test
+@@ -5,7 +5,7 @@ set -e
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=empty_keys.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.bin
++DATAOUT0=$top_builddir/test/data/empty_keys.test.bin
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/entities.test
++++ b/test/entities.test
+@@ -5,7 +5,7 @@ set -e
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=entities.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.bin
++DATAOUT0=$top_builddir/test/data/entities.test.bin
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/hex.test
++++ b/test/hex.test
+@@ -5,7 +5,7 @@ set -e
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=hex.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.bin
++DATAOUT0=$top_builddir/test/data/hex.test.bin
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/huge++.test
++++ b/test/huge++.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/huge++.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/huge++.test.out
+--- a/test/huge.test
++++ b/test/huge.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/huge.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/huge.test.out
+--- a/test/invalid_tag.test
++++ b/test/invalid_tag.test
+@@ -3,7 +3,7 @@
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=invalid_tag.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.out
++DATAOUT0=$top_builddir/test/data/invalid_tag.test.out
+
+ rm -rf $DATAOUT0
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+--- a/test/json-int64-min-max.test
++++ b/test/json-int64-min-max.test
+@@ -13,7 +13,7 @@ fi
+ export PLIST_JSON_DEBUG=1
+
+ echo "Converting"
+-$top_builddir/test/plist_jtest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_jtest $DATASRC/$TESTFILE $DATAOUT/json-int64-min-max.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/json-int64-min-max.test.out
+--- a/test/json1.test
++++ b/test/json1.test
+@@ -13,7 +13,7 @@ fi
+ export PLIST_JSON_DEBUG=1
+
+ echo "Converting"
+-$top_builddir/test/plist_jtest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_jtest $DATASRC/$TESTFILE $DATAOUT/json1.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/json1.test.out
+--- a/test/json2.test
++++ b/test/json2.test
+@@ -13,7 +13,7 @@ fi
+ export PLIST_JSON_DEBUG=1
+
+ echo "Converting"
+-$top_builddir/test/plist_jtest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_jtest $DATASRC/$TESTFILE $DATAOUT/json2.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/json2.test.out
+--- a/test/json3.test
++++ b/test/json3.test
+@@ -13,12 +13,12 @@ fi
+ export PLIST_JSON_DEBUG=1
+
+ echo "Converting input file to JSON"
+-$top_builddir/tools/plistutil -f json -i $DATASRC/$TESTFILE -o $DATAOUT/$TESTFILE.json
++$top_builddir/tools/plistutil -f json -i $DATASRC/$TESTFILE -o $DATAOUT/json3.test.json
+
+ echo "Converting to binary and back to JSON"
+-$top_builddir/test/plist_jtest $DATAOUT/$TESTFILE.json $DATAOUT/$TESTFILE.json.out
++$top_builddir/test/plist_jtest $DATAOUT/json3.test.json $DATAOUT/json3.test.json.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.json.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/json3.test.json.out
+
+-rm -f $DATAOUT/$TESTFILE.json
++rm -f $DATAOUT/json3.test.json
+--- a/test/large++.test
++++ b/test/large++.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/large++.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/large++.test.out
+--- a/test/large.test
++++ b/test/large.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/large.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/large.test.out
+--- a/test/malformed_dict.test
++++ b/test/malformed_dict.test
+@@ -3,7 +3,7 @@
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=malformed_dict.bplist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.out
++DATAOUT0=$top_builddir/test/data/malformed_dict.test.out
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/medium++.test
++++ b/test/medium++.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/medium++.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/medium++.test.out
+--- a/test/medium.test
++++ b/test/medium.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/medium.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/medium.test.out
+--- a/test/order.test
++++ b/test/order.test
+@@ -6,7 +6,7 @@ DATASRC=$top_srcdir/test/data
+ TESTFILE=order.bplist
+ DATAIN0=$DATASRC/$TESTFILE
+ DATAIN1=$DATASRC/order.plist
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.out
++DATAOUT0=$top_builddir/test/data/order.test.out
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/ostep-comments.test
++++ b/test/ostep-comments.test
+@@ -13,8 +13,8 @@ fi
+ export PLIST_OSTEP_DEBUG=1
+
+ echo "Converting"
+-$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/ostep-comments.test.out
+
+ echo "Comparing"
+ export PLIST_OSTEP_DEBUG=1
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/ostep-comments.test.out
+--- a/test/ostep-strings.test
++++ b/test/ostep-strings.test
+@@ -13,8 +13,8 @@ fi
+ export PLIST_OSTEP_DEBUG=1
+
+ echo "Converting"
+-$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/ostep-strings.test.out
+
+ echo "Comparing"
+ export PLIST_OSTEP_DEBUG=1
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/ostep-strings.test.out
+--- a/test/ostep1.test
++++ b/test/ostep1.test
+@@ -13,8 +13,8 @@ fi
+ export PLIST_OSTEP_DEBUG=1
+
+ echo "Converting"
+-$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/ostep1.test.out
+
+ echo "Comparing"
+ export PLIST_OSTEP_DEBUG=1
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/ostep1.test.out
+--- a/test/ostep2.test
++++ b/test/ostep2.test
+@@ -13,7 +13,7 @@ fi
+ export PLIST_OTEST_DEBUG=1
+
+ echo "Converting"
+-$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_otest $DATASRC/$TESTFILE $DATAOUT/ostep2.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/ostep2.test.out
+--- a/test/recursion.test
++++ b/test/recursion.test
+@@ -3,7 +3,7 @@
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=recursion.bplist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.out
++DATAOUT0=$top_builddir/test/data/recursion.test.out
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/signedunsigned1.test
++++ b/test/signedunsigned1.test
+@@ -13,8 +13,8 @@ CMPFILE1=unsigned.bplist
+ DATACMP0=$DATASRC/$CMPFILE0
+ DATACMP1=$DATASRC/$CMPFILE1
+
+-DATAOUT0=$top_builddir/test/data/$TESTFILE0.bin
+-DATAOUT1=$top_builddir/test/data/$TESTFILE1.bin
++DATAOUT0=$top_builddir/test/data/signedunsigned1.test.signed.bin
++DATAOUT1=$top_builddir/test/data/signedunsigned1.test.unsigned.bin
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+ $top_builddir/tools/plistutil -i $DATAIN1 -o $DATAOUT1
+--- a/test/signedunsigned2.test
++++ b/test/signedunsigned2.test
+@@ -13,8 +13,8 @@ CMPFILE1=unsigned.plist
+ DATACMP0=$DATASRC/$CMPFILE0
+ DATACMP1=$DATASRC/$CMPFILE1
+
+-DATAOUT0=$top_builddir/test/data/$TESTFILE0.bin
+-DATAOUT1=$top_builddir/test/data/$TESTFILE1.bin
++DATAOUT0=$top_builddir/test/data/signedunsigned2.test.signed.bin
++DATAOUT1=$top_builddir/test/data/signedunsigned2.test.unsigned.bin
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+ $top_builddir/tools/plistutil -i $DATAIN1 -o $DATAOUT1
+--- a/test/signedunsigned3.test
++++ b/test/signedunsigned3.test
+@@ -13,8 +13,8 @@ CMPFILE1=signedunsigned.plist
+ DATACMP0=$DATASRC/$CMPFILE0
+ DATACMP1=$DATASRC/$CMPFILE1
+
+-DATAOUT0=$top_builddir/test/data/$TESTFILE0.bin
+-DATAOUT1=$top_builddir/test/data/$TESTFILE1.xml
++DATAOUT0=$top_builddir/test/data/signedunsigned3.test.signed.bin
++DATAOUT1=$top_builddir/test/data/signedunsigned3.test.unsigned.xml
+
+ $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+ $top_builddir/tools/plistutil -i $DATAIN1 -o $DATAOUT1
+--- a/test/small++.test
++++ b/test/small++.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test++ $DATASRC/$TESTFILE $DATAOUT/small++.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/small++.test.out
+--- a/test/small.test
++++ b/test/small.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_test $DATASRC/$TESTFILE $DATAOUT/small.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/small.test.out
+--- a/test/timezone1.test
++++ b/test/timezone1.test
+@@ -5,9 +5,9 @@ set -e
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=7.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.tz0.bin
+-DATAOUT1=$top_builddir/test/data/$TESTFILE.tz1.bin
+-DATAOUT2=$top_builddir/test/data/$TESTFILE.tz2.bin
++DATAOUT0=$top_builddir/test/data/timezone1.test.tz0.bin
++DATAOUT1=$top_builddir/test/data/timezone1.test.tz1.bin
++DATAOUT2=$top_builddir/test/data/timezone1.test.tz2.bin
+
+ TZ=UTC $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+ TZ=Asia/Singapore $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT1
+--- a/test/timezone2.test
++++ b/test/timezone2.test
+@@ -5,10 +5,10 @@ set -e
+ DATASRC=$top_srcdir/test/data
+ TESTFILE=7.plist
+ DATAIN0=$DATASRC/$TESTFILE
+-DATAOUT0=$top_builddir/test/data/$TESTFILE.bin
+-DATAOUT1=$top_builddir/test/data/$TESTFILE.tz0.xml
+-DATAOUT2=$top_builddir/test/data/$TESTFILE.tz1.xml
+-DATAOUT3=$top_builddir/test/data/$TESTFILE.tz2.xml
++DATAOUT0=$top_builddir/test/data/timezone2.test.bin
++DATAOUT1=$top_builddir/test/data/timezone2.test.tz0.xml
++DATAOUT2=$top_builddir/test/data/timezone2.test.tz1.xml
++DATAOUT3=$top_builddir/test/data/timezone2.test.tz2.xml
+
+ TZ=UTC $top_builddir/tools/plistutil -i $DATAIN0 -o $DATAOUT0
+
+--- a/test/uid.test
++++ b/test/uid.test
+@@ -9,7 +9,7 @@ if ! test -d "$DATAOUT"; then
+ fi
+
+ echo "Converting"
+-$top_builddir/test/plist_btest $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_btest $DATASRC/$TESTFILE $DATAOUT/uid.test.out
+
+ echo "Comparing"
+-$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/$TESTFILE.out
++$top_builddir/test/plist_cmp $DATASRC/$TESTFILE $DATAOUT/uid.test.out
diff --git a/app-pda/libplist/libplist-2.2.0-r4.ebuild b/app-pda/libplist/libplist-2.2.0-r4.ebuild
index 2f8e6b323075..d1180010c230 100644
--- a/app-pda/libplist/libplist-2.2.0-r4.ebuild
+++ b/app-pda/libplist/libplist-2.2.0-r4.ebuild
@@ -1,14 +1,14 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{9,10} )
+PYTHON_COMPAT=( python3_{9..11} )
inherit autotools python-r1 toolchain-funcs
DESCRIPTION="Support library to deal with Apple Property Lists (Binary & XML)"
HOMEPAGE="https://www.libimobiledevice.org/"
-SRC_URI="https://cgit.libimobiledevice.org/${PN}.git/snapshot/${P}.tar.bz2"
+SRC_URI="https://cgit.libimobiledevice.org/${PN}.git/snapshot/${P}.tar.xz"
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0/2.0-3"
diff --git a/app-pda/libplist/libplist-2.3.0-r1.ebuild b/app-pda/libplist/libplist-2.3.0-r1.ebuild
new file mode 100644
index 000000000000..432e1904e74f
--- /dev/null
+++ b/app-pda/libplist/libplist-2.3.0-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Support library to deal with Apple Property Lists (Binary & XML)"
+HOMEPAGE="https://www.libimobiledevice.org/"
+SRC_URI="https://cgit.libimobiledevice.org/${PN}.git/snapshot/${P}.tar.xz"
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0/4"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+DOCS=( AUTHORS NEWS README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.2.0-pkgconfig-lib.patch
+ "${FILESDIR}"/${PN}-2.3.0-test-rename.patch
+)
+
+src_prepare() {
+ default
+ RELEASE_VERSION=${PV} eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-static
+ --without-cython
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ einstalldocs
+ find "${ED}" -name '*.la' -delete || die
+
+ # bugs #733082, #915375
+ dosym ./libplist-2.0.pc /usr/$(get_libdir)/pkgconfig/libplist.pc
+ dosym ./libplist++-2.0.pc /usr/$(get_libdir)/pkgconfig/libplist++.pc
+ dosym ./libplist++-2.0.so.4.3.0 /usr/$(get_libdir)/libplist++.so
+ dosym ./libplist-2.0.so.4.3.0 /usr/$(get_libdir)/libplist.so
+}
diff --git a/app-pda/libplist/libplist-2.3.0-r2.ebuild b/app-pda/libplist/libplist-2.3.0-r2.ebuild
new file mode 100644
index 000000000000..f5b231d63d4a
--- /dev/null
+++ b/app-pda/libplist/libplist-2.3.0-r2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Support library to deal with Apple Property Lists (Binary & XML)"
+HOMEPAGE="https://www.libimobiledevice.org/"
+SRC_URI="https://cgit.libimobiledevice.org/${PN}.git/snapshot/${P}.tar.xz"
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0/4"
+KEYWORDS="amd64 ~arm arm64 ~loong ppc ~ppc64 ~riscv ~s390 x86"
+
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+DOCS=( AUTHORS NEWS README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.2.0-pkgconfig-lib.patch
+ "${FILESDIR}"/${PN}-2.3.0-test-rename.patch
+ "${FILESDIR}"/${PN}-2.3.0-configure-c99.patch
+)
+
+src_prepare() {
+ default
+ RELEASE_VERSION=${PV} eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-static
+ --without-cython
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ einstalldocs
+ find "${ED}" -name '*.la' -delete || die
+
+ # bugs #733082, #915375
+ dosym ./libplist-2.0.pc /usr/$(get_libdir)/pkgconfig/libplist.pc
+ dosym ./libplist++-2.0.pc /usr/$(get_libdir)/pkgconfig/libplist++.pc
+ dosym ./libplist++-2.0.so.4.3.0 /usr/$(get_libdir)/libplist++.so
+ dosym ./libplist-2.0.so.4.3.0 /usr/$(get_libdir)/libplist.so
+}
diff --git a/app-pda/libusbmuxd/Manifest b/app-pda/libusbmuxd/Manifest
index a4f0c952f6dd..3867523c0108 100644
--- a/app-pda/libusbmuxd/Manifest
+++ b/app-pda/libusbmuxd/Manifest
@@ -1 +1 @@
-DIST libusbmuxd-2.0.2.tar.bz2 43162 BLAKE2B e3559583e691a5f87a61ffece0ebf944d4aed48d37f83a504ee4d7a245e05511c6620c4a82d29bea2a10686910a14f7a730afec0f2cfc9435f748499e35df433 SHA512 3086ce1a05026afeabcdb5364ec30f4a6a5c84fe6f09e15ef6ff438bd3dfdb262ebdff94e5e0d0828b6d946bc8bdf01760271ba0d1fbf98d743dce149764a519
+DIST libusbmuxd-2.0.2.tar.xz 41960 BLAKE2B 74a031ec595e40cf0532c753553cb2c35785410eba41a0a0abf45ed23dd6af7528238386ee9c0a4f8709cd447192969f15504fcbb58476441dc593ae28c388d9 SHA512 ce940fc6741973ed09ff0e5428aef78577449ca8e13766e9cbe121f3a2a26873ca164f10b441cc046653cc8550b68cc869ecb57a50fc999cebb55702642c4766
diff --git a/app-pda/libusbmuxd/files/libusbmuxd-2.0.2-configure.patch b/app-pda/libusbmuxd/files/libusbmuxd-2.0.2-configure.patch
new file mode 100644
index 000000000000..e8db338d65b7
--- /dev/null
+++ b/app-pda/libusbmuxd/files/libusbmuxd-2.0.2-configure.patch
@@ -0,0 +1,32 @@
+From 84fb81483703dfcc26e784256b6a19d75e8e58ee Mon Sep 17 00:00:00 2001
+From: Matthew Smith <matthew@gentoo.org>
+Date: Sun, 12 Feb 2023 10:18:02 +0000
+Subject: [PATCH] autoconf: Fix -Wint-conversion in test
+
+-Wint-conversion becomes an error by default in clang-16, causing the
+program_invocation_short_name test to fail.
+
+Bug: https://bugs.gentoo.org/893910
+--- a/configure.ac
++++ b/configure.ac
+@@ -87,7 +87,7 @@ case ${host_os} in
+ ])
+ AC_CHECK_FUNCS([pselect])
+ AC_CACHE_CHECK(for program_invocation_short_name, ac_cv_program_invocation_short_name,[
+- AC_TRY_LINK([extern char* program_invocation_short_name;],[return program_invocation_short_name;],
++ AC_TRY_LINK([extern char* program_invocation_short_name;],[return program_invocation_short_name[0];],
+ [ac_cv_program_invocation_short_name=yes],
+ [ac_cv_program_invocation_short_name=no]
+ )
+@@ -95,7 +95,7 @@ case ${host_os} in
+ if test "x$ac_cv_program_invocation_short_name" = "xyes"; then
+ AC_DEFINE(HAVE_PROGRAM_INVOCATION_SHORT_NAME, 1, [Define if you have program_invocation_short_name])
+ AC_CACHE_CHECK(if program_invocation_short_name is declared in errno.h, ac_cv_program_invocation_short_name_errno_h,[
+- AC_TRY_LINK([#include <errno.h>],[return program_invocation_short_name;],
++ AC_TRY_LINK([#include <errno.h>],[return program_invocation_short_name[0];],
+ [ac_cv_program_invocation_short_name_errno_h=yes],
+ [ac_cv_program_invocation_short_name_errno_h=no]
+ )
+--
+2.39.1
+
diff --git a/app-pda/libusbmuxd/libusbmuxd-2.0.2-r1.ebuild b/app-pda/libusbmuxd/libusbmuxd-2.0.2-r1.ebuild
index 61a69c70f91f..863023df28a5 100644
--- a/app-pda/libusbmuxd/libusbmuxd-2.0.2-r1.ebuild
+++ b/app-pda/libusbmuxd/libusbmuxd-2.0.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -7,7 +7,7 @@ inherit autotools
DESCRIPTION="USB multiplex daemon for use with Apple iPhone/iPod Touch devices"
HOMEPAGE="https://www.libimobiledevice.org/"
-SRC_URI="https://cgit.libimobiledevice.org/${PN}.git/snapshot/${P}.tar.bz2"
+SRC_URI="https://cgit.libimobiledevice.org/${PN}.git/snapshot/${P}.tar.xz"
LICENSE="GPL-2+ LGPL-2.1+" # tools/*.c is GPL-2+, rest is LGPL-2.1+
SLOT="0/2.0-6" # based on SONAME of libusbmuxd-2.0.so
KEYWORDS="amd64 ~arm ~arm64 ~loong ppc ~ppc64 ~riscv x86"
diff --git a/app-pda/libusbmuxd/libusbmuxd-2.0.2-r2.ebuild b/app-pda/libusbmuxd/libusbmuxd-2.0.2-r2.ebuild
new file mode 100644
index 000000000000..0fdadbb43c1c
--- /dev/null
+++ b/app-pda/libusbmuxd/libusbmuxd-2.0.2-r2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="USB multiplex daemon for use with Apple iPhone/iPod Touch devices"
+HOMEPAGE="https://www.libimobiledevice.org/"
+SRC_URI="https://cgit.libimobiledevice.org/${PN}.git/snapshot/${P}.tar.xz"
+LICENSE="GPL-2+ LGPL-2.1+" # tools/*.c is GPL-2+, rest is LGPL-2.1+
+SLOT="0/2.0-6" # based on SONAME of libusbmuxd-2.0.so
+KEYWORDS="amd64 ~arm ~arm64 ~loong ppc ~ppc64 ~riscv ~s390 x86"
+IUSE="static-libs"
+
+RDEPEND="
+ >=app-pda/libplist-2.2.0:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}"/libusbmuxd-2.0.2-configure.patch )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable static-libs static) \
+ $(usex kernel_linux '' --without-inotify)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -type f -delete || die
+}
diff --git a/app-pda/pilot-link/metadata.xml b/app-pda/pilot-link/metadata.xml
index 85e4ed814fa2..5cd473d53779 100644
--- a/app-pda/pilot-link/metadata.xml
+++ b/app-pda/pilot-link/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">jichu4n/pilot-link</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-pda/pilot-link/pilot-link-0.12.5-r4.ebuild b/app-pda/pilot-link/pilot-link-0.12.5-r4.ebuild
index 893b7b45b835..b8ad1bf67898 100644
--- a/app-pda/pilot-link/pilot-link-0.12.5-r4.ebuild
+++ b/app-pda/pilot-link/pilot-link-0.12.5-r4.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit autotools perl-module
+inherit autotools flag-o-matic perl-module
DESCRIPTION="Suite of tools for moving data between a Palm device and a desktop"
# this is a new mirror; the distfile has the same content inside the tarball,
@@ -42,6 +42,15 @@ src_prepare() {
}
src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/924480
+ #
+ # Upstream is abandoned since 2016, existing issue offering gentoo-patchset
+ # has been ignored. No bug filed.
+ #
+ # The issue is in the internal compat code for *not* using libusb.
+ use usb || filter-lto
+
# tcl/tk support is disabled as per upstream request.
# readline is not really optional, bug #626504
# Does not build with Java 8
diff --git a/app-pda/usbmuxd/metadata.xml b/app-pda/usbmuxd/metadata.xml
index 25c0004e30e0..d8e789b30263 100644
--- a/app-pda/usbmuxd/metadata.xml
+++ b/app-pda/usbmuxd/metadata.xml
@@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
-<upstream>
- <remote-id type="github">libimobiledevice/usbmuxd</remote-id>
-</upstream>
+ <maintainer type="person" proxied="yes">
+ <email>zurabid2016@gmail.com</email>
+ <name>Zurab Kvachadze</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">libimobiledevice/usbmuxd</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-pda/usbmuxd/usbmuxd-1.1.1.ebuild b/app-pda/usbmuxd/usbmuxd-1.1.1-r2.ebuild
index 3b9e4262a51e..59ac7d442a59 100644
--- a/app-pda/usbmuxd/usbmuxd-1.1.1.ebuild
+++ b/app-pda/usbmuxd/usbmuxd-1.1.1-r2.ebuild
@@ -1,43 +1,49 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit autotools systemd udev
+inherit systemd udev
DESCRIPTION="USB multiplex daemon for use with Apple iPhone/iPod Touch devices"
HOMEPAGE="https://libimobiledevice.org/"
SRC_URI="https://github.com/libimobiledevice/usbmuxd/releases/download/${PV}/${P}.tar.bz2"
# src/utils.h is LGPL-2.1+, rest is found in COPYING*
-LICENSE="GPL-2 GPL-3 LGPL-2.1+"
+LICENSE="|| ( GPL-2 GPL-3 ) LGPL-2.1+"
SLOT="0"
-KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86"
-IUSE="systemd"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+IUSE="selinux systemd"
DEPEND="
acct-user/usbmux
- >=app-pda/libimobiledevice-1.0:=
- >=app-pda/libplist-2.0:=
- virtual/libusb:1"
+ >=app-pda/libimobiledevice-1.3.0:=
+ >=app-pda/libplist-2.2:= <app-pda/libplist-2.3
+ virtual/libusb:1=
+"
RDEPEND="
${DEPEND}
virtual/udev
+ selinux? ( sec-policy/selinux-usbmuxd )
+ systemd? ( sys-apps/systemd )
"
BDEPEND="
virtual/pkgconfig
"
-src_prepare() {
- default
- eautoreconf
-}
-
src_configure() {
econf \
- $(use_with systemd) \
+ "$(use_with systemd)" \
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
--with-udevrulesdir="$(get_udevdir)"/rules.d
}
+
+pkg_postrm() {
+ udev_reload
+}
+
+pkg_postinst() {
+ udev_reload
+}