[packages/python-plist] - last version of python-plist module, taken from libplist.spec for 2.4.0
qboosh
qboosh at pld-linux.org
Sat Mar 28 21:19:38 CET 2026
commit e28093b528969d1fda431db278521b738003e964
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Mar 28 21:19:50 2026 +0100
- last version of python-plist module, taken from libplist.spec for 2.4.0
libplist-link.patch | 13 ++++++
libplist-sh.patch | 106 ++++++++++++++++++++++++++++++++++++++++++
libplist-system-library.patch | 20 ++++++++
python-plist.spec | 71 ++++++++++++++++++++++++++++
4 files changed, 210 insertions(+)
---
diff --git a/python-plist.spec b/python-plist.spec
new file mode 100644
index 0000000..05d7da0
--- /dev/null
+++ b/python-plist.spec
@@ -0,0 +1,71 @@
+Summary: Python 2 bindings for libplist
+Summary(pl.UTF-8): Wiązania libplist dla Pythona 2
+Name: python-plist
+Version: 2.4.0
+Release: 1
+License: LGPL v2.1+
+Group: Development/Languages/Python
+# Source0Download: https://libimobiledevice.org/
+Source0: https://github.com/libimobiledevice/libplist/releases/download/%{version}/libplist-%{version}.tar.bz2
+# Source0-md5: 56b7892151b72ea0cfbf3ef785ffbc82
+Patch0: libplist-sh.patch
+Patch1: libplist-link.patch
+Patch2: libplist-system-library.patch
+URL: https://libimobiledevice.org/
+BuildRequires: autoconf >= 2.68
+BuildRequires: automake
+BuildRequires: libplist-devel >= 2.4.0
+BuildRequires: libtool >= 2:2
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.600
+BuildRequires: python-Cython >= 0.17.0
+BuildRequires: python-devel >= 1:2.3
+BuildRequires: python-modules >= 1:2.3
+BuildRequires: rpm-pythonprov
+Requires: libplist >= 2.4.0
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+Python 2 bindings for libplist.
+
+%description -l pl.UTF-8
+Wiązania libplist dla Pythona 2.
+
+%prep
+%setup -q -n libplist-%{version}
+%patch -P0 -p1
+%patch -P1 -p1
+%patch -P2 -p1
+
+touch cython/*.py[xh]
+
+%build
+%{__libtoolize}
+%{__aclocal} -I m4
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+%configure \
+ ac_cv_path_CYTHON=/usr/bin/cython2 \
+ --disable-silent-rules \
+ --disable-static \
+ --without-tests
+
+%{__make} -C cython
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C cython install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/plist.la
+%{__rm} -r $RPM_BUILD_ROOT%{_includedir}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(644,root,root,755)
+%doc AUTHORS NEWS README.md
+%attr(755,root,root) %{py_sitedir}/plist.so
diff --git a/libplist-link.patch b/libplist-link.patch
new file mode 100644
index 0000000..fd8d1b0
--- /dev/null
+++ b/libplist-link.patch
@@ -0,0 +1,13 @@
+--- libplist-2.3.0/cython/Makefile.am.orig 2022-02-07 12:20:41.000000000 +0100
++++ libplist-2.3.0/cython/Makefile.am 2023-11-26 09:11:13.719041230 +0100
+@@ -39,8 +39,8 @@ plist_la_CFLAGS = \
+ -Wno-implicit-function-declaration \
+ -fvisibility=default
+
+-plist_la_LDFLAGS = -module -avoid-version $(PYTHON_LIBS) $(AM_LDFLAGS) -shared -export-dynamic
+-plist_la_LIBADD = $(top_builddir)/src/libplist-2.0.la
++plist_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS) -shared -export-dynamic
++plist_la_LIBADD = $(top_builddir)/src/libplist-2.0.la $(PYTHON_LIBS)
+
+ if WIN32
+ plist_la_LDFLAGS += -no-undefined
diff --git a/libplist-sh.patch b/libplist-sh.patch
new file mode 100644
index 0000000..c8e953d
--- /dev/null
+++ b/libplist-sh.patch
@@ -0,0 +1,106 @@
+--- libplist-2.4.0/configure.ac.orig 2024-02-21 01:49:54.000000000 +0100
++++ libplist-2.4.0/configure.ac 2024-02-25 08:40:35.228846020 +0100
+@@ -189,16 +189,16 @@ esac],
+
+ if (test "x$debug" = "xyes"); then
+ AC_DEFINE(DEBUG, 1, [Define if debug message output code should be built.])
+- GLOBAL_CFLAGS+=" -g"
++ GLOBAL_CFLAGS="$GLOBAL_CFLAGS -g"
+ fi
+
+ if test "x$enable_static" = "xyes" -a "x$enable_shared" = "xno"; then
+- GLOBAL_CFLAGS+=" -DLIBPLIST_STATIC"
++ GLOBAL_CFLAGS="$GLOBAL_CFLAGS -DLIBPLIST_STATIC"
+ fi
+
+ GLOBAL_CXXFLAGS=$GLOBAL_CFLAGS
+ AS_COMPILER_FLAG([-fvisibility=hidden], [
+- GLOBAL_CFLAGS+=" -fvisibility=hidden"
++ GLOBAL_CFLAGS="$GLOBAL_CFLAGS -fvisibility=hidden"
+ ], [])
+
+ AC_SUBST(GLOBAL_CFLAGS)
+@@ -237,23 +237,23 @@ fi
+
+ if test "x$build_sanitizers" = "xyes"; then
+ AS_COMPILER_FLAG([-fsanitize=address], [
+- SANITIZER_FLAGS+=" -fsanitize=address"
++ SANITIZER_FLAGS="$SANITIZER_FLAGS -fsanitize=address"
+ ASAN_AVAILABLE=yes
+ ], [])
+ if test "$ASAN_AVAILABLE" = "yes"; then
+ AS_COMPILER_FLAG([-fsanitize=address -fsanitize-address-use-after-scope], [
+- SANITIZER_FLAGS+=" -fsanitize-address-use-after-scope"
++ SANITIZER_FLAGS="$SANITIZER_FLAGS -fsanitize-address-use-after-scope"
+ ], [])
+- SANITIZERS+="ASAN "
++ SANITIZERS="${SANITIZERS}ASAN "
+ fi
+
+ AS_COMPILER_FLAG([-fsanitize=undefined], [
+- SANITIZER_FLAGS+=" -fsanitize=undefined"
++ SANITIZER_FLAGS="$SANITIZER_FLAGS -fsanitize=undefined"
+ UBSAN_AVAILABLE=yes
+ ], [])
+
+ if test "$UBSAN_AVAILABLE" = "yes"; then
+- SANITIZERS+="UBSAN "
++ SANITIZERS="${SANITIZERS}UBSAN "
+ fi
+
+ if test -z "$SANITIZER_FLAGS"; then
+@@ -266,13 +266,13 @@ if test "x$build_sanitizers" = "xyes"; t
+ if test -z "$SAN_COV_FLAGS"; then
+ SAN_COV_FLAGS="$COV_CHECK"
+ else
+- SAN_COV_FLAGS+=",$COV_CHECK"
++ SAN_COV_FLAGS="${SAN_COV_FLAGS},$COV_CHECK"
+ fi
+ ], [])
+ done
+ if test -n "$SAN_COV_FLAGS"; then
+- SANITIZER_FLAGS+=" -fsanitize-coverage=$SAN_COV_FLAGS"
+- SANITIZERS+="+coverage "
++ SANITIZER_FLAGS="$SANITIZER_FLAGS -fsanitize-coverage=$SAN_COV_FLAGS"
++ SANITIZERS="${SANITIZERS}+coverage "
+ else
+ AC_MSG_WARN([No sanitizer coverage supported by compiler])
+ fi
+@@ -280,20 +280,20 @@ if test "x$build_sanitizers" = "xyes"; t
+ CFLAGS="-O1"
+
+ AS_COMPILER_FLAG([-fno-omit-frame-pointer], [
+- CFLAGS+=" -fno-omit-frame-pointer"
++ CFLAGS="$CFLAGS -fno-omit-frame-pointer"
+ ], [])
+
+ AS_COMPILER_FLAG([-gline-tables-only], [
+- CFLAGS+=" -gline-tables-only"
++ CFLAGS="$CFLAGS -gline-tables-only"
+ ],
+ [
+- CFLAGS+=" -g"
++ CFLAGS="$CFLAGS -g"
+ ])
+
+- EXTRA_CONF+=" Enabled sanitizers ......: $SANITIZERS
++ EXTRA_CONF="$EXTRA_CONF Enabled sanitizers ......: $SANITIZERS
+ "
+
+- CFLAGS+=" $SANITIZER_FLAGS"
++ CFLAGS="$CFLAGS $SANITIZER_FLAGS"
+ CXXFLAGS="$CFLAGS -std=c++11"
+ fi
+
+@@ -307,9 +307,9 @@ if test "x$build_fuzzers" = "xyes"; then
+ ;;
+ esac
+
+- CFLAGS+=" -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION"
++ CFLAGS="$CFLAGS -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION"
+
+- EXTRA_CONF+=" Build fuzzers ...........: yes
++ EXTRA_CONF="$EXTRA_CONF Build fuzzers ...........: yes
+ "
+ fi
+
diff --git a/libplist-system-library.patch b/libplist-system-library.patch
new file mode 100644
index 0000000..82c13aa
--- /dev/null
+++ b/libplist-system-library.patch
@@ -0,0 +1,20 @@
+--- libplist-2.4.0/cython/Makefile.am.orig 2026-03-28 20:30:18.029939001 +0100
++++ libplist-2.4.0/cython/Makefile.am 2026-03-28 20:48:09.660800145 +0100
+@@ -28,8 +28,6 @@ plist_la_SOURCES = \
+ plist.pyx
+
+ plist_la_CFLAGS = \
+- -I$(top_srcdir)/include \
+- -I$(top_srcdir)/src \
+ $(PYTHON_CPPFLAGS) \
+ $(AM_CFLAGS) \
+ -Wno-shadow \
+@@ -38,7 +38,7 @@ plist_la_CFLAGS = \
+ -fvisibility=default
+
+ plist_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS) -shared -export-dynamic
+-plist_la_LIBADD = $(top_builddir)/src/libplist-2.0.la $(PYTHON_LIBS)
++plist_la_LIBADD = -lplist-2.0 $(PYTHON_LIBS)
+
+ if WIN32
+ plist_la_LDFLAGS += -no-undefined
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/python-plist.git/commitdiff/e28093b528969d1fda431db278521b738003e964
More information about the pld-cvs-commit
mailing list