diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-07-26 02:57:39 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-07-26 02:57:39 +0100 |
commit | 24162508832f37f873ab12dfdfb191cf99318055 (patch) | |
tree | 3f9d1bac9025c4a823e0d7f948110aa74857baf8 /app-pda/libplist | |
parent | 26262b314fa723a2e86f4a9b8b344a72eb9c0393 (diff) |
gentoo auto-resync : 26:07:2022 - 02:57:39
Diffstat (limited to 'app-pda/libplist')
-rw-r--r-- | app-pda/libplist/Manifest | 4 | ||||
-rw-r--r-- | app-pda/libplist/files/libplist-2.2.0-strict-aliasing.patch | 32 | ||||
-rw-r--r-- | app-pda/libplist/libplist-2.2.0-r4.ebuild | 114 | ||||
-rw-r--r-- | app-pda/libplist/metadata.xml | 5 |
4 files changed, 153 insertions, 2 deletions
diff --git a/app-pda/libplist/Manifest b/app-pda/libplist/Manifest index d2fef6a08ac7..245be16f422e 100644 --- a/app-pda/libplist/Manifest +++ b/app-pda/libplist/Manifest @@ -1,5 +1,7 @@ AUX libplist-2.2.0-fmin.patch 1102 BLAKE2B ce8c76a369ae1ddc54016bbc941efeafa96d093bce14c0cdaf1da17fe7d201673bd0565669dc12209ee1230b66f56750ba64e8431d72f0d118ea5880b0764a0e SHA512 683203116ffdae053c4da35704aaf2b707b804a19316286f890df4bb6a9ae8dd6b6a4ee0f6db6164f124887e8a602db709d985496b0734899826f04e19846d78 AUX libplist-2.2.0-pkgconfig-lib.patch 305 BLAKE2B 67da57f080454e8b01408872ab76b66703e0339052f64c3738964b02e6a389b03aac65d7d6ca30bfd78b1366c4a7fec843b039b32269db0a4e7e95850638e34d SHA512 1c2c628f178ed64a8f7e1dd84657d7d365e980a2b2d8af9dd6bbe55d245997cf51974d9ed451eafb715299097029886f7ec0a863f199a72bf15f50281c9bfab7 +AUX libplist-2.2.0-strict-aliasing.patch 1128 BLAKE2B d38552a76f0e098c6df6eb8a4d71c7bf0fe4a41aeff87730d691497203c7057ffd84356ec671041dc02ef3762bbe2cd0cfa27d465a5be0a15ebf86e3ca91d789 SHA512 e00ab3cf2f0d0829c16e1d4b1fd4bce1265a740d872aee4d0112fb45c2919413c493ad70753a7186b27fbfe154f9826ac2024e142e9410c51a69d7e1ea782245 DIST libplist-2.2.0.tar.bz2 126808 BLAKE2B 7c3ec04aaa52eca33ae28851a6524c9ea531df939feef0f10827c8c2de78a6ccd856ea4d8a568b146ccb5de96f70dd5accec34aa2fdd61f9e6eba01256c0b518 SHA512 641bfd3ec0565f104d3a2d1ebdf6137bc9252b67ce90550e24ab0deeee4e820e119ba4f8f1ba04a0358d995d196fa61e35f2f0ee8ba37fc0270752ae842ab1f5 EBUILD libplist-2.2.0-r3.ebuild 2659 BLAKE2B dc5c90aa4770d424f161cfcb67a2c0e9da7e0956489d0e60ea593891f01494bd8e196ae4c795a40700c17982896eb0db958afe82cef3edd448aa83d775b44eb0 SHA512 e44f5ed00b475d6c1deb94a97b51b6c9944107c1b7fdaab7ed4293a0e28d5d48bf270f42868bea2ae8b67128538988aa60f26497c9b3a9e75f46e536fd94fdc3 -MISC metadata.xml 330 BLAKE2B 23eb7febbdb22588ff674779fde51e4174153723207d80fb49fa3a0954a5335206b9be12e8993e40ae37a1b9136ed516f341153cd055a38307e9c2ceb8b1f3ae SHA512 43786efdbf6de2083880ebb84ebcaa15a5dbf833de6f38a8940400bddb585b827f8c0f115e19495bfe99ffbc6850adac39d92671b24df730a4795f5743bb0a25 +EBUILD libplist-2.2.0-r4.ebuild 2721 BLAKE2B ed9c587960db4d24c9e9c1739b253777a2a85c37e123870adb8d73d06e3659650ebc75c3677a060205bbe057fb0d36ed9c6a6a171e59197227eadb8e6c6a0b19 SHA512 d65cb2abd979ba1d60067ceeda82dab8915f478ff781c798e34fb8e5fba59fb34aeb370ff39aa04c37f73371bd44f90724343934e010f7dd0a11904bf5fd266e +MISC metadata.xml 411 BLAKE2B 739995675d95e408b7ddd6092af57e2cd39a9aa129271de40119350926a75200962ccc35c463d304cfd3fc396f4a4e04ecdef752a506bbc576365c9b689a8d1b SHA512 82db103987ba57112cd18557114d82be89a1c3cc6da43334b16a1b22023fc5961be3c2abc3213be046ee370d3285717cf9c267ae97309065fe888f39fd75355c diff --git a/app-pda/libplist/files/libplist-2.2.0-strict-aliasing.patch b/app-pda/libplist/files/libplist-2.2.0-strict-aliasing.patch new file mode 100644 index 000000000000..2771a9f08a69 --- /dev/null +++ b/app-pda/libplist/files/libplist-2.2.0-strict-aliasing.patch @@ -0,0 +1,32 @@ +https://bugs.gentoo.org/854837 +https://github.com/libimobiledevice/libplist/pull/212 +--- a/src/bplist.c ++++ b/src/bplist.c +@@ -998,18 +998,24 @@ static void write_real(bytearray_t * bplist, double val) + buff[7] = BPLIST_REAL | Log2(size); + if (size == sizeof(float)) { + float floatval = (float)val; +- *(uint32_t*)(buff+8) = float_bswap32(*(uint32_t*)&floatval); ++ uint32_t intval; ++ memcpy(&intval, &floatval, sizeof(float)); ++ *(uint32_t*)(buff+8) = float_bswap32(intval); + } else { +- *(uint64_t*)(buff+8) = float_bswap64(*(uint64_t*)&val); ++ uint64_t intval; ++ memcpy(&intval, &val, sizeof(double)); ++ *(uint64_t*)(buff+8) = float_bswap64(intval); + } + byte_array_append(bplist, buff+7, size+1); + } + + static void write_date(bytearray_t * bplist, double val) + { ++ uint64_t intval; ++ memcpy(&intval, &val, sizeof(double)); + uint8_t buff[16]; + buff[7] = BPLIST_DATE | 3; +- *(uint64_t*)(buff+8) = float_bswap64(*(uint64_t*)&val); ++ *(uint64_t*)(buff+8) = float_bswap64(intval); + byte_array_append(bplist, buff+7, 9); + } + diff --git a/app-pda/libplist/libplist-2.2.0-r4.ebuild b/app-pda/libplist/libplist-2.2.0-r4.ebuild new file mode 100644 index 000000000000..23ac7bf3d03d --- /dev/null +++ b/app-pda/libplist/libplist-2.2.0-r4.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8,9,10} ) +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" + +LICENSE="GPL-2+ LGPL-2.1+" +SLOT="0/2.0-3" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="python" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND="python? ( ${PYTHON_DEPS} )" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + python? ( >=dev-python/cython-0.17[${PYTHON_USEDEP}] ) +" + +DOCS=( AUTHORS NEWS README.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-2.2.0-fmin.patch + "${FILESDIR}"/${PN}-2.2.0-pkgconfig-lib.patch + "${FILESDIR}"/${PN}-2.2.0-strict-aliasing.patch # bug 854837 +) + +BUILD_DIR="${S}_build" + +src_prepare() { + default + eautoreconf +} + +src_configure() { + local ECONF_SOURCE="${S}" + + do_configure() { + mkdir -p "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + econf --disable-static "${@}" + popd >/dev/null || die + } + + do_configure_python() { + local -x PYTHON_LDFLAGS="$(python_get_LIBS)" + do_configure "$@" + } + + # Don't prefer clang. + tc-export CC CXX + + do_configure --without-cython + use python && python_foreach_impl do_configure_python +} + +src_compile() { + local native_builddir=${BUILD_DIR} + ln -s "${native_builddir}/src/libplist-2.0.la" \ + "${native_builddir}/src/libplist.la" || die + + python_compile() { + emake -C "${BUILD_DIR}"/cython \ + VPATH="${S}/cython:${native_builddir}/cython" \ + plist_la_LIBADD="${native_builddir}/src/libplist-2.0.la" + } + + pushd "${BUILD_DIR}" >/dev/null || die + emake + use python && python_foreach_impl python_compile + popd >/dev/null || die +} + +src_test() { + emake -C "${BUILD_DIR}" check +} + +src_install() { + python_install() { + emake -C "${BUILD_DIR}/cython" \ + VPATH="${S}/cython:${native_builddir}/cython" \ + DESTDIR="${D}" install + } + + local native_builddir=${BUILD_DIR} + pushd "${BUILD_DIR}" >/dev/null || die + emake DESTDIR="${D}" install + use python && python_foreach_impl python_install + popd >/dev/null || die + + einstalldocs + + if use python ; then + insinto /usr/include/plist/cython + doins cython/plist.pxd + fi + + find "${ED}" -name '*.la' -delete || die + + # temporary fix for 2.2.0 release: + # bug #733082, + # https://github.com/libimobiledevice/libplist/issues/163 + # upstream commit 137716df3f197a7184c1fba88fcb30480dafd6e0 + dosym ./libplist-2.0.pc /usr/$(get_libdir)/pkgconfig/libplist.pc + dosym ./libplist++-2.0.so.3.3.0 /usr/$(get_libdir)/libplist++.so + dosym ./libplist-2.0.so.3.3.0 /usr/$(get_libdir)/libplist.so +} diff --git a/app-pda/libplist/metadata.xml b/app-pda/libplist/metadata.xml index cf956930c00d..613a0433b959 100644 --- a/app-pda/libplist/metadata.xml +++ b/app-pda/libplist/metadata.xml @@ -1,7 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<!-- maintainer-needed --> + <maintainer type="person"> + <email>matthew@gentoo.org</email> + <name>Matthew Smith</name> + </maintainer> <upstream> <bugs-to>https://github.com/libimobiledevice/libplist/issues</bugs-to> <remote-id type="github">libimobiledevice/libplist</remote-id> |