# --- T2-COPYRIGHT-BEGIN --- # t2/package/*/libgpod/hotfix-libplist.patch # Copyright (C) 2026 The T2 SDE Project # SPDX-License-Identifier: GPL-2.0 or patched project license # --- T2-COPYRIGHT-END --- Support libplist 2.x: the pkg-config name and the dict API changed. diff -urp a/configure.ac b/configure.ac --- a/configure.ac 2013-07-10 13:42:04.000000000 +0200 +++ b/configure.ac 2026-09-26 17:05:59.795485443 +0200 @@ -42,7 +42,7 @@ AC_CHECK_FUNCS([localtime_r]) AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[#include ]) dnl sqlite3 is needed for newer ipod models (nano5g), and libplist is needed dnl by libgpod sqlite code -PKG_CHECK_MODULES(LIBGPOD, glib-2.0 >= 2.16.0 gobject-2.0 sqlite3 libplist >= 1.0 gmodule-2.0) +PKG_CHECK_MODULES([LIBGPOD], [glib-2.0 >= 2.16.0 gobject-2.0 sqlite3 libplist >= 1.0 gmodule-2.0], [], [PKG_CHECK_MODULES([LIBGPOD], [glib-2.0 >= 2.16.0 gobject-2.0 sqlite3 libplist-2.0 >= 1.0 gmodule-2.0], [], [AC_MSG_ERROR([Needed libraries not found.])])]) dnl *************************************************** dnl The following functions are only available starting diff -urp a/tools/ipod-lockdown.c b/tools/ipod-lockdown.c --- a/tools/ipod-lockdown.c 2013-07-10 15:57:39.000000000 +0200 +++ b/tools/ipod-lockdown.c 2026-09-26 17:05:59.228109989 +0200 @@ -100,7 +100,7 @@ read_sysinfo_extended_by_uuid (const cha plist_get_string_val(ptr, &str); if (str != NULL) { ptr = plist_new_string(str); - plist_dict_insert_item(value, "SerialNumber", ptr); + plist_dict_set_item(value, "SerialNumber", ptr); free(str); } @@ -112,15 +112,15 @@ read_sysinfo_extended_by_uuid (const cha plist_get_string_val(ptr, &str); if (str != NULL) { ptr = plist_new_string(str); - plist_dict_insert_item(value, "VisibleBuildID", ptr); + plist_dict_set_item(value, "VisibleBuildID", ptr); free(str); } ptr = plist_new_string(uuid); - plist_dict_insert_item(value, "FireWireGUID", ptr); + plist_dict_set_item(value, "FireWireGUID", ptr); ptr = plist_new_string(uuid); - plist_dict_insert_item(value, "UniqueDeviceID", ptr); + plist_dict_set_item(value, "UniqueDeviceID", ptr); plist_to_xml(value, &xml, &xml_length);