Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP1:GA
libplist.4095
libplist.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libplist.spec of Package libplist.4095
# # spec file for package libplist # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: libplist Version: 1.8 Release: 0 Summary: Library for handling Apple Binary and XML Property Lists License: LGPL-2.1+ Group: System/Libraries Url: http://cgit.sukimashita.com/libplist.git Source: http://cgit.sukimashita.com/libplist.git/snapshot/%{name}-%{version}.tar.bz2 #remove when pkgconfig is fixed to handle Requires.private correctly Patch0: libplist-1.8-pkgconfig.patch Patch1: A0001-fix-compiler-warnings.patch Patch2: A0002-fix-invalid-memory-access-in-copy_plist_data.patch Patch3: A0003-implemented-handling-of-UID-keyed-encoding-type.patch Patch4: A0004-use-__FLOAT_WORD_ORDER__-instead-of-__VFP_FP__-for-floating-point-endianness-detection.patch Patch5: A0005-prevent-segmentation-fault-in-plist_from_bin.patch Patch6: A0006-Fix-timezone-bound-date-time-conversion.patch Patch7: A0007-Fix-memory-leaking-caused-by-unused-nodes-in-plist_from_bin.patch Patch8: A0008-Silence-compiler-warnings-about-shadowing-global-declarations.patch Patch9: A0009-Fix-PLIST_DATE-parsing-in-xml_to_node.patch Patch10: A0010-Fix-PLIST_DATE-handling-to-respect-the-Mac-epoch.patch Patch11: A0011-Handle-signed-vs-unsigned-integer-values-correctly.patch Patch12: A0012-Silence-compiler-warning-about-always-true-comparison-due-to-type-mismatch.patch Patch13: A0013-Prevent-crash-in-plist_from_bin-when-parsing-unusually-structured-binary-plist.patch Patch14: A0014-Drop-src-common.h-and-use-byte-order-macros-from-config.h-directly.patch Patch15: A0015-Fix-plist_from_bin-changing-value-nodes-to-key-nodes-in-dictionaries.patch Patch16: drop-common.h.patch Patch101: 0001-Fix-possible-crash-in-plist_from_bin-caused-by-access-to-already-freed-memory.patch Patch102: 0002-Plug-memory-leaks-caused-by-unused-and-unfreed-buffer.patch Patch103: 0003-Refactor-binary-plist-parsing-in-a-recursive-way.patch Patch104: 0004-Make-sure-to-compare-the-node-sizes-for-integer-nodes.patch Patch105: 0005-Change-internal-storage-of-PLIST_DATE-values-from-struct-timeval-to-double.patch Patch106: 0006-Fix-possible-out-of-bounds-read-in-parse_dict_node-with-proper-bounds-checking.patch Patch107: 0007-Fix-possible-out-of-bounds-reads-in-parse_bin_node.patch Patch108: 0008-Make-sure-the-index-in-parse_bin_node_at_index-is-actually-within-the-offset-table.patch Patch109: 0009-Prevent-out-of-bounds-read-in-plist_from_bin-when-parsing-offset_table.patch Patch110: 0010-Make-sure-to-error-out-if-allocation-of-used_indexes-buffer-in-plist_from_bin-fails.patch Patch111: 0011-Disallow-key-nodes-with-non-string-node-types.patch Patch112: 0012-Prevent-OOB-heap-buffer-read-by-checking-input-size.patch Patch113: 0013-Improve-UINT_TO_HOST-macro-remove-uint24_from_be-function.patch Patch114: 0014-Check-for-invalid-offset_size-in-bplist-trailer.patch Patch115: 0015-Use-proper-struct-for-binary-plist-trailer.patch Patch116: 0016-Mass-rename-dict_size-and-param_dict_size-to-more-appropiate-ref_size.patch Patch117: 0017-Fix-possible-out-of-bounds-read-in-parse_array_node-with-proper-bounds-checking.patch Patch118: 0018-Avoid-heap-buffer-allocation-when-parsing-array-dict-string-data-node-sizes-14.patch Patch119: 0019-Unify-size-node-parsing-for-data-string-array-dict-nodes.patch Patch120: 0020-Prevent-OOB-read-when-parsing-data-string-array-dict-size-nodes.patch Patch121: 0021-Fix-OOB-write-on-heap-buffer-and-improve-recursion-check.patch Patch122: 0022-Make-sure-node-index-is-smaller-than-number-of-objects.patch Patch123: 0023-Make-sure-the-offset-table-is-in-the-correct-range.patch Patch124: 0024-Plug-memory-leak-in-case-parsing-a-dictionary-key-fails.patch Patch125: 0025-Fixed-memory-leaks-in-new_xml_plist-and-parse_real_node.patch Patch126: 0026-bplist-Improve-real-date-node-de-serialization.patch Patch127: 0027-bplist-Improve-parsing-unicode-nodes.patch Patch128: 0028-UTF-16-surrogate-pair-fix.patch Patch129: 0029-bplist-Make-sure-to-bail-out-if-malloc-fails-in-pars.patch Patch130: 0030-bplist-Make-sure-to-bail-out-if-malloc-fails-in-pars.patch Patch131: 0031-bplist-Make-sure-to-bail-out-if-malloc-fails-in-pars.patch Patch132: 0032-bplist-Properly-handle-some-more-malloc-failure-situ.patch Patch133: 0033-plist-Fix-assert-to-allow-16-or-8-byte-integer-sizes.patch Patch134: C0001-Plug-memory-leak-when-converting-PLIST_UID-nodes-to-XML.patch Patch135: C0002-Improve-writing-of-array-and-dictionary-nodes.patch Patch136: C0003-Improve-writing-of-integer-nodes.patch Patch137: C0004-Fix-UID-node-parsing-to-match-Apples-parser.patch Patch138: C0005-Improve-writing-of-UID-nodes.patch Patch139: C0006-Improve-writing-of-data-string-and-unicode-nodes.patch Patch140: C0007-Improve-writing-of-offset-table.patch Patch202: B0002-base64-use-strtok_r-instead-of-strtok-to-make-sure-were-thread-safe.patch Patch203: B0003-base64-get-rid-of-strtok_r-and-use-strspn-strcspn-instead.patch Patch204: B0004-silence-compiler-warning-by-using-correct-type.patch Patch205: B0005-base64-Prevent-buffer-overflow-by-not-decoding-blocks-with-less-than-4-chrs.patch Patch206: B0006-Prevent-use-strlen-in-base64decode-when-input-buffer-size-is-known.patch Patch207: B0007-base64-Rework-base64decode-to-handle-split-encoded-data.patch # PATCH-FIX-UPSTREAM libplist-boo1035312-overflow-fixes.patch boo#1035312 mgorse@suse.com -- add some overflow checks (boo#1035312 CVE-2017-7982). Patch300: libplist-boo1035312-overflow-fixes.patch # PATCH-FIX-UPSTREAM libplist-boo1029631-32bit.patch boo#1029631 mgorse@suse.com -- make sure sanity checks work on 32-bit platforms (CVE-2017-6440). Patch301: libplist-boo1029631-32bit.patch BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: libxml2-devel BuildRequires: pkg-config %if %{?suse_version} > 1140 BuildRequires: python-cython BuildRequires: python-devel %endif BuildRoot: %{_tmppath}/%{name}-%{version}-build %description libplist is a library for handling Apple Binary and XML Property Lists. %package -n libplist1 Summary: Library for handling Apple Binary and XML Property Lists Group: System/Libraries Provides: libplist = %{version} Obsoletes: libplist < %{version} %description -n libplist1 libplist is a library for handling Apple Binary and XML Property Lists. %package -n libplist++1 Summary: Library for handling Apple Binary and XML Property Lists Group: System/Libraries Provides: libplist++ = %{version} Obsoletes: libplist++ < %{version} %description -n libplist++1 libplist is a library for handling Apple Binary and XML Property Lists. %package -n plutil Summary: Library for handling Apple Binary and XML Property Lists Group: System/Libraries Requires: libplist1 = %{version} %description -n plutil libplist is a library for handling Apple Binary and XML Property Lists. This package contains an utility to convert PList files from binary to XML and from XML to binary. %package devel Summary: Library for handling Apple Binary and XML Property Lists -- Development Files Group: Development/Libraries/C and C++ Requires: glibc-devel Requires: libplist1 = %{version} %description devel libplist is a library for handling Apple Binary and XML Property Lists. This package contains the development files for C. %package -n libplist++-devel Summary: Library for handling Apple Binary and XML Property Lists -- Development Files Group: Development/Libraries/C and C++ Requires: libplist++1 = %{version} Requires: libplist-devel Requires: libstdc++-devel %description -n libplist++-devel libplist is a library for handling Apple Binary and XML Property Lists. This package contains the development files for C++. %if %{?suse_version} > 1140 %package -n python-plist Summary: Library for handling Apple Binary and XML Property Lists -- Python Bindings Group: Development/Languages/Python Requires: libplist1 = %{version} Requires: python-cython >= 0.13 %{py_requires} %description -n python-plist libplist is a library for handling Apple Binary and XML Property Lists. This package contains the python bindings. %endif %prep %setup -q %patch0 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %patch15 -p1 %patch16 -p1 %patch101 -p1 %patch102 -p1 %patch103 -p1 %patch104 -p1 %patch105 -p1 %patch106 -p1 %patch107 -p1 %patch108 -p1 %patch109 -p1 %patch110 -p1 %patch111 -p1 %patch112 -p1 %patch113 -p1 %patch114 -p1 %patch115 -p1 %patch116 -p1 %patch117 -p1 %patch118 -p1 %patch119 -p1 %patch120 -p1 %patch121 -p1 %patch122 -p1 %patch123 -p1 %patch124 -p1 %patch125 -p1 %patch126 -p1 %patch127 -p1 %patch128 -p1 %patch129 -p1 %patch130 -p1 %patch131 -p1 %patch132 -p1 %patch133 -p1 %patch134 -p1 %patch135 -p1 %patch136 -p1 %patch137 -p1 %patch138 -p1 %patch139 -p1 %patch140 -p1 %patch202 -p1 %patch203 -p1 %patch204 -p1 %patch205 -p1 %patch206 -p1 %patch207 -p1 %patch300 -p1 %patch301 -p1 %build export CFLAGS="%{optflags} -fno-strict-aliasing" %configure || true cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_INSTALL_LIBDIR=%{_lib} \ -DCMAKE_VERBOSE_MAKEFILE=TRUE \ -DPYTHON_VERSION=%{py_ver} \ -DPYTHON_SITEDIR=%{py_sitedir} \ -DCMAKE_FIND_ROOT_PATH=/%{?_sysroot} \ -DPYTHON_LIBRARY=%_libdir/python%{py_ver} \ -DENABLE_SWIG=OFF \ -DPYTHON_INCLUDE_DIR=%{?_sysroot}/usr/include/python \ . # Workaround in order to make parallel build pass cd libcnary make %{?_smp_mflags} cd .. make %{?_smp_mflags} %install %makeinstall rm %{buildroot}%{_bindir}/plutil mv %{buildroot}%{_bindir}/plutil-%{version} %{buildroot}%{_bindir}/plutil %if 0%{?_crossbuild} cp -a %{buildroot}%{?_sysroot}/* %{buildroot}/ rm -fr %{buildroot}%{?_sysroot} %endif %post -n libplist1 -p /sbin/ldconfig %postun -n libplist1 -p /sbin/ldconfig %post -n libplist++1 -p /sbin/ldconfig %postun -n libplist++1 -p /sbin/ldconfig %files -n libplist1 %defattr(-,root,root) %doc AUTHORS COPYING.LESSER README NEWS %{_libdir}/libplist.so.* %files -n libplist++1 %defattr(-,root,root) %doc AUTHORS COPYING.LESSER README NEWS %{_libdir}/libplist++.so.* %files -n plutil %defattr(-,root,root) %{_bindir}/plutil %files devel %defattr(-,root,root,-) %dir %{_includedir}/plist %{_includedir}/plist/plist.h %{_libdir}/libplist.so %{_libdir}/pkgconfig/libplist.pc %files -n libplist++-devel %defattr(-,root,root,-) %dir %{_includedir}/plist %{_includedir}/plist/plist++.h %{_includedir}/plist/Array.h %{_includedir}/plist/Boolean.h %{_includedir}/plist/Data.h %{_includedir}/plist/Date.h %{_includedir}/plist/Dictionary.h %{_includedir}/plist/Integer.h %{_includedir}/plist/Node.h %{_includedir}/plist/Real.h %{_includedir}/plist/String.h %{_includedir}/plist/Structure.h %{_libdir}/libplist++.so %{_libdir}/pkgconfig/libplist++.pc %if %{?suse_version} > 1140 %files -n python-plist %defattr(-,root,root,-) %{py_sitedir}/plist.so %dir %{_includedir}/plist %dir %{_includedir}/plist/cython %{_includedir}/plist/cython/plist.pxd %endif %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor