commit 8a34d9f425fa67a68c94d9074bb4580e150e262b Author: zyppe <210hcl@gmail.com> Date: Wed Feb 28 21:14:03 2024 +0800 Initialize for lzo diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b4cd4b2 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +lzo-2.10.tar.gz diff --git a/.lzo.metadata b/.lzo.metadata new file mode 100644 index 0000000..afe9c92 --- /dev/null +++ b/.lzo.metadata @@ -0,0 +1 @@ +7ff1e73460926eae1b8909947cc848594ff1b83234272615b4a48616e42997b1 lzo-2.10.tar.gz diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..bb5831c --- /dev/null +++ b/baselibs.conf @@ -0,0 +1,6 @@ +liblzo2-2 + provides "lzo- = " + obsoletes "lzo- < " +lzo-devel + requires -lzo- + requires "liblzo2-2- = " diff --git a/lzo.changes b/lzo.changes new file mode 100644 index 0000000..d00c18c --- /dev/null +++ b/lzo.changes @@ -0,0 +1,104 @@ +* Tue Nov 14 2017 dimstar@opensuse.org +- Add pkgconfig BuildRequires: allow the rpm dep generator to + inspect the shipped .pc file and produce requires/provides. +* Wed Mar 29 2017 dsterba@suse.cz +- Update to 2.10 + * Improve CMake build support. + * Add support for pkg-config. + * Do not redefine "snprintf" so that the examples build with MSVC 2015. + * Assorted cleanups. +* Tue Feb 24 2015 mpluskal@suse.com +- Cleanup spec file with spec-cleaner +- Update to 2.09 + * Work around gcc bug #64516 that could affect architectures like + armv4, armv5 and sparc. +* Thu Jul 24 2014 dsterba@suse.cz +- enable lzo-devel-static package build +* Wed Jul 2 2014 mrueckert@suse.de +- update to 2.08 (bnc#883947) CVE-2014-4607 + - Updated the Autoconf scripts to fix some reported build + problems. + - Added CMake build support. + - Fixed lzo_init() on big-endian architectures like Sparc. +- additional changes in 2.07 + * Fixed a potential integer overflow condition in the "safe" + decompressor variants which could result in a possible buffer + overrun when processing maliciously crafted compressed input + data. + Fortunately this issue only affects 32-bit systems and also can + only happen if you use uncommonly huge buffer sizes where you + have to decompress more than 16 MiB (> 2^24 bytes) untrusted + compressed bytes within a single function call, so the + practical implications are limited. + POTENTIAL SECURITY ISSUE. CVE-2014-4607. + * Removed support for ancient configurations like 16-bit "huge" + pointers - LZO now requires a flat 32-bit or 64-bit memory + model. + * Assorted cleanups. +* Tue Apr 16 2013 mmeister@suse.com +- Added url as source. + Please see http://en.opensuse.org/SourceUrls +* Mon Aug 27 2012 cfarrell@suse.com +- license update: GPL-2.0+ + No GPL-2.0 "only" licenses found in the package +* Sat Feb 11 2012 crrodriguez@opensuse.org +- move libraries back to %%{_libdir}, /usr merge project +* Sun Sep 25 2011 crrodriguez@opensuse.org +- Update to version 2.06 + * Some minor optimizations for big-endian architectures. + * Fixed overly strict malloc() misalignment check in examples. +* Fri May 6 2011 crrodriguez@opensuse.org +- Update to version 2.05 + * Converted the configure system to non-recursive Automake. + * Applied some overdue speed optimizations for modern x86/x64 architectures + and current compilers like gcc 4.6 and MSVC 2010. +* Wed Dec 22 2010 aj@suse.de +- Fix specfile (remove deleted lzo-2.03-alias.patch). +* Fri Nov 12 2010 mrueckert@suse.de +- update to 2.0.4 + * Fixed a gcc-4.5 aliasing issue in lzo_init(). + * Updated the configure system. + * Assorted cleanups. +- dropped lzo-2.03-alias.patch: + solved differently upstream +- dropped debug_package_requires define +* Sat Oct 30 2010 cristian.rodriguez@opensuse.org +- Use GCC visibility. +* Thu Feb 11 2010 rguenther@suse.de +- fix aliasing problems +* Sat Dec 19 2009 jengelh@medozas.de +- add baselibs.conf as a source +- enable parallel build +* Wed Jan 7 2009 olh@suse.de +- obsolete old -XXbit packages (bnc#437293) +* Fri Aug 22 2008 mrueckert@suse.de +- update to 2.03 + featuring major speedups for 64-bit architectures like AMD64, + minor overall speedups, portability enhancements for LLP64 + programming models, and lots of other small improvements +- dropped lzo-noexec.patch: fix included upstream +- split out liblzo2-2 +- move the lib to /%%_lib +* Thu Apr 10 2008 ro@suse.de +- added baselibs.conf file to build xxbit packages + for multilib support +* Mon Feb 25 2008 crrodriguez@suse.de +- run ldconfig +* Mon Feb 12 2007 meissner@suse.de +- added marker for nonexec stack/heap to i386 assembler. +* Wed Sep 27 2006 poeml@suse.de +- add BuildRequires: gcc-c++ for building on Fedora +* Wed Jan 25 2006 mls@suse.de +- converted neededforbuild to BuildRequires +* Mon Jan 16 2006 mrueckert@suse.de +- update to version 2.02 +* Mon Sep 26 2005 mls@suse.de +- make devel package require base package +* Tue Jun 28 2005 cthiel@suse.de +- update to version 2.01 +* Thu Jun 2 2005 hvogel@suse.de +- update to version 2.0 +* Fri Jan 9 2004 adrian@suse.de +- move devel files to -devel package +* Wed Aug 20 2003 cwh@suse.de +- initial release diff --git a/lzo.spec b/lzo.spec new file mode 100644 index 0000000..3928940 --- /dev/null +++ b/lzo.spec @@ -0,0 +1,129 @@ +# +# spec file for package lzo +# +# Copyright (c) 2022-2023 ZhuningOS +# + + +Name: lzo +Version: 2.10 +Release: 2.22 +Summary: A Real-Time Data Compression Library +License: GPL-2.0+ +Group: Development/Libraries/C and C++ +Url: http://www.oberhumer.com/opensource/lzo/ +Source: http://www.oberhumer.com/opensource/%{name}/download/%{name}-%{version}.tar.gz +Source2: baselibs.conf +BuildRequires: gcc-c++ +BuildRequires: pkgconfig +BuildRoot: %{_tmppath}/%{name}-%{version}-build +# bug437293 +%ifarch ppc64 +Obsoletes: lzo-64bit +%endif + +%description +LZO is a portable lossless data compression library written in ANSI C. +It offers pretty fast compression and very fast decompression. +Decompression requires no memory. LZO is suitable for data compression +and decompression in real-time. This means it favors speed over +compression ratio. + +%define library_package liblzo2-2 + +%package -n liblzo2-2 +Summary: A Real-Time Data Compression Library +Group: Development/Libraries/C and C++ +Provides: lzo = %{version}-%{release} +Obsoletes: lzo < %{version} +# bug437293 +%ifarch ppc64 +Obsoletes: lzo-64bit +%endif +# + +%description -n liblzo2-2 +LZO is a portable lossless data compression library written in ANSI C. +It offers pretty fast compression and very fast decompression. +Decompression requires no memory. LZO is suitable for data compression +and decompression in real-time. This means it favors speed over +compression ratio. + +%package devel +Summary: Development files for lzo +Group: Development/Languages/C and C++ +Requires: %{library_package} = %{version} +# bug437293 +%ifarch ppc64 +Obsoletes: lzo-devel-64bit +%endif +# + +%description devel +LZO is a portable lossless data compression library written in ANSI C. +It offers pretty fast compression and very fast decompression. +Decompression requires no memory. LZO is suitable for data +de-/compression in real-time. This means it favours speed over +compression ratio. + +%package devel-static +Summary: Development files for lzo +Group: Development/Languages/C and C++ +Requires: lzo-devel = %{version} +Provides: lzo-devel:%{_libdir}/liblzo.a + +%description devel-static +LZO is a portable lossless data compression library written in ANSI C. +It offers pretty fast compression and very fast decompression. +Decompression requires no memory. LZO is suitable for data +de-/compression in real-time. This means it favours speed over +compression ratio. + +%prep +%setup -q + +%build +export CFLAGS="%{optflags} -fvisibility=hidden" +%configure --enable-shared \ + --enable-static \ + --disable-silent-rules \ + --docdir=%{_docdir}/%{name}-devel + +#On windows, the build system defines __LZO_EXPORT1 to +# __attribute__((dllexport))) which we can abuse to make +#use of GCC visibility. ;-) +#see http://gcc.gnu.org/wiki/Visibility +#If you remove this, you must disable -fvisibility=hidden in CFLAGS! + +echo '#define __LZO_EXPORT1 __attribute__ ((visibility ("default")))' >> config.h + +make %{?_smp_mflags} + +%check +make %{?_smp_mflags} check test + +%install +make DESTDIR=%{buildroot} install %{?_smp_mflags} +rm -v %{buildroot}%{_libdir}/liblzo2.la + +%post -n %{library_package} -p /sbin/ldconfig + +%postun -n %{library_package} -p /sbin/ldconfig + +%files -n %{library_package} +%defattr(-,root,root) +%{_libdir}/liblzo2.so.* + +%files devel +%defattr (-,root,root) +%doc AUTHORS BUGS COPYING NEWS README THANKS +%doc doc/* util/* +%{_libdir}/liblzo2.so +%{_includedir}/lzo +%{_libdir}/pkgconfig/lzo2.pc + +%files devel-static +%defattr (-,root,root) +%{_libdir}/liblzo2.a + +%changelog