Compare commits

..

No commits in common. "rawhide" and "f17" have entirely different histories.

5 changed files with 136 additions and 231 deletions

24
.gitignore vendored
View file

@ -3,27 +3,3 @@ lzma465.tar.bz2
/upx-3.07-src.tar.bz2
/lzma465.tar.bz2
/upx-3.08-src.tar.bz2
/upx-3.09-src.tar.bz2
/upx-3.91-src.tar.bz2
/upx-3.93-src.tar.xz
/upx-3.94-src.tar.xz
/upx-3.95.tar.gz
/upx-lzma-sdk-3.95.tar.gz
/upx-3.96-src.tar.xz
/upx-lzma-sdk-3.96.tar.gz
/upx-4.0.0-src.tar.xz
/upx-4.0.1-src.tar.xz
/upx-4.0.2-src.tar.xz
/upx-4.1.0-src.tar.xz
/upx-4.2.0-src.tar.xz
/upx-4.2.1-src.tar.xz
/upx-4.2.2-src.tar.xz
/upx-4.2.3-src.tar.xz
/upx-4.2.4-src.tar.xz
/upx-5.0.0-src.tar.xz
/upx-5.0.1-src.tar.xz
/upx-5.0.2-src.tar.xz
/upx-5.1.0-src.tar.xz
/upx-5.1.1-src.tar.xz
/upx-5.2.0-src.tar.xz
/upx-5.2.1-src.tar.xz

View file

@ -1 +1 @@
SHA512 (upx-5.2.1-src.tar.xz) = 38fa0aa9940d9518df5bf07725ed65391d1a965cac4feace190819e7bd8125e4ed23a3795cf0fb7d4df09fbca66158265ae5774a3c48f5b55e3905fc7b962bc4
54c76fa52cad578ff23ef98aee91e3f5 upx-3.08-src.tar.bz2

View file

@ -0,0 +1,7 @@
--- src/pefile.cpp.orig 2009-02-27 10:01:44.000000000 -0600
+++ src/pefile.cpp 2009-02-27 10:01:44.000000000 -0600
@@ -1352,2 +1352,2 @@
- char *delim1 = strchr(keep, '/');
- char *delim2 = strchr(keep, ',');
+ const char *delim1 = strchr(keep, '/');
+ const char *delim2 = strchr(keep, ',');

View file

@ -0,0 +1,100 @@
diff -up upx-3.07-src/src/compress_lzma.cpp.use-lib upx-3.07-src/src/compress_lzma.cpp
--- upx-3.07-src/src/compress_lzma.cpp.use-lib 2010-09-08 11:07:00.000000000 -0400
+++ upx-3.07-src/src/compress_lzma.cpp 2011-08-09 14:43:45.097077927 -0400
@@ -232,8 +232,6 @@ error:
#if (WITH_LZMA >= 0x461)
#define kLiteralNextStates kLiteralNextStates_enc
#include "C/LzmaEnc.h"
-#include "C/LzmaEnc.c"
-#include "C/LzFind.c"
#undef kLiteralNextStates
#undef kNumFullDistances
@@ -340,11 +338,9 @@ error:
#undef _NO_EXCEPTIONS
#if (WITH_LZMA >= 0x449)
# define INITGUID 1
-//# include "CPP/7zip/Compress/LZMA/LZMADecoder.h"
# include "CPP/7zip/Compress/LZMA/LZMAEncoder.h"
#else
# include "C/Common/MyInitGuid.h"
-//# include "C/7zip/Compress/LZMA/LZMADecoder.h"
# include "C/7zip/Compress/LZMA/LZMAEncoder.h"
#endif
@@ -416,29 +412,6 @@ STDMETHODIMP ProgressInfo::SetRatioInfo(
# pragma warning(disable: 424) // #424: extra ";" ignored
#endif
-#if (WITH_LZMA >= 0x449)
-# include "C/Alloc.c"
-# include "C/7zCrc.c"
-# include "C/Compress/Lz/MatchFinder.c"
-//# include "CPP/7zip/Common/InBuffer.cpp"
-# include "CPP/7zip/Common/OutBuffer.cpp"
-# include "CPP/7zip/Common/StreamUtils.cpp"
-//# include "CPP/7zip/Compress/LZ/LZOutWindow.cpp"
-//# include "CPP/7zip/Compress/LZMA/LZMADecoder.cpp"
-# include "CPP/7zip/Compress/LZMA/LZMAEncoder.cpp"
-# include "CPP/7zip/Compress/RangeCoder/RangeCoderBit.cpp"
-#else
-# include "C/Common/Alloc.cpp"
-# include "C/Common/CRC.cpp"
-//# include "C/7zip/Common/InBuffer.cpp"
-# include "C/7zip/Common/OutBuffer.cpp"
-# include "C/7zip/Common/StreamUtils.cpp"
-# include "C/7zip/Compress/LZ/LZInWindow.cpp"
-//# include "C/7zip/Compress/LZ/LZOutWindow.cpp"
-//# include "C/7zip/Compress/LZMA/LZMADecoder.cpp"
-# include "C/7zip/Compress/LZMA/LZMAEncoder.cpp"
-# include "C/7zip/Compress/RangeCoder/RangeCoderBit.cpp"
-#endif
#undef RC_NORMALIZE
@@ -563,7 +536,6 @@ error:
#undef _LZMA_PROB32
#include "C/LzmaDec.h"
-#include "C/LzmaDec.c"
int upx_lzma_decompress ( const upx_bytep src, unsigned src_len,
@@ -662,10 +634,8 @@ error:
#undef _LZMA_LOC_OPT
#if (WITH_LZMA >= 0x449)
# include "C/Compress/Lzma/LzmaDecode.h"
-# include "C/Compress/Lzma/LzmaDecode.c"
#else
# include "C/7zip/Compress/LZMA_C/LzmaDecode.h"
-# include "C/7zip/Compress/LZMA_C/LzmaDecode.c"
#endif
int upx_lzma_decompress ( const upx_bytep src, unsigned src_len,
diff -up upx-3.07-src/src/Makefile.use-lib upx-3.07-src/src/Makefile
--- upx-3.07-src/src/Makefile.use-lib 2011-08-09 14:44:35.619476678 -0400
+++ upx-3.07-src/src/Makefile 2011-08-09 14:44:10.731772723 -0400
@@ -57,7 +57,7 @@ ifneq ($(wildcard $(UPX_UCLDIR)/include/
INCLUDES += -I$(UPX_UCLDIR)/include
LIBS += $(addprefix -L,$(dir $(wildcard $(UPX_UCLDIR)/libucl$(libext) $(UPX_UCLDIR)/src/.libs/libucl$(libext))))
endif
-LIBS += -lucl -lz
+LIBS += -lucl -lz -llzmasdk
# you should set envvar UPX_LZMADIR to point to your unpacked LZMA SDK
include $(top_srcdir)/src/stub/src/c/Makevars.lzma
ifneq ($(UPX_LZMA_VERSION),)
diff -up upx-3.07-src/src/stub/src/c/lzma_d_c.c.use-lib upx-3.07-src/src/stub/src/c/lzma_d_c.c
--- upx-3.07-src/src/stub/src/c/lzma_d_c.c.use-lib 2010-09-08 11:07:00.000000000 -0400
+++ upx-3.07-src/src/stub/src/c/lzma_d_c.c 2011-08-09 14:43:45.098077915 -0400
@@ -100,11 +100,6 @@ int LzmaDecode(CLzmaDecoderState *, cons
#if (ACC_CC_BORLANDC)
#include "LzmaDecode.c"
#else
-#if (WITH_LZMA >= 0x449)
-# include "C/Compress/Lzma/LzmaDecode.c"
-#else
-# include "C/7zip/Compress/LZMA_C/LzmaDecode.c"
-#endif
#endif
#undef char
#undef CLzmaDecoderState

234
upx.spec
View file

@ -1,19 +1,20 @@
Name: upx
Version: 5.2.1
Version: 3.08
Release: 1%{?dist}
Summary: Ultimate Packer for eXecutables
License: GPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain
URL: https://github.com/upx/upx
Source0: %{url}/releases/download/v%{version}/%{name}-%{version}-src.tar.xz
Group: Applications/Archiving
License: GPLv2+ and Public Domain
URL: http://upx.sourceforge.net/
Source0: http://upx.sourceforge.net/download/%{name}-%{version}-src.tar.bz2
#Patch0: upx-3.03-pefile-strictproto.patch
Patch1: upx-3.07-use-lzma-sdk-lib.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: make
BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: ucl-devel >= 1.01
BuildRequires: zlib-devel
BuildRequires: perl-podlators
Provides: bundled(lzma-sdk) = 4.43
BuildRequires: lzma-sdk-devel
%description
UPX is a free, portable, extendable, high-performance executable
@ -23,215 +24,36 @@ executables suffer no memory overhead or other drawbacks.
%prep
%setup -qn %{name}-%{version}-src
%setup -q -n %{name}-%{version}-src
sed -i -e 's/ -O2/ /' -e 's/ -Werror//' src/Makefile
#%patch0 -p0
%patch1 -p1 -b .use-lib
%build
%cmake
%cmake_build
export CXXFLAGS="$RPM_OPT_FLAGS" # export, not to make so it won't trump all
UPX_LZMA_VERSION=0x465 UPX_LZMADIR=%{_includedir}/lzma465 make %{?_smp_mflags} -C src
make -C doc
%install
%cmake_install
mv %{buildroot}%{_datadir}/doc/upx/upx-doc.* .
rm -f %{buildroot}%{_datadir}/doc/upx/*
rm -rf $RPM_BUILD_ROOT
install -Dpm 644 doc/upx.1 $RPM_BUILD_ROOT%{_mandir}/man1/upx.1
install -Dpm 755 src/upx.out $RPM_BUILD_ROOT%{_bindir}/upx
%clean
rm -rf $RPM_BUILD_ROOT
%files
%license COPYING LICENSE
%doc NEWS README README.SRC doc/THANKS.txt upx-doc.*
%defattr(-,root,root,-)
%doc BUGS COPYING LICENSE NEWS PROJECTS README README.1ST THANKS TODO doc/*.txt
%{_bindir}/upx
%{_mandir}/man1/upx.1*
%changelog
* Thu Aug 27 2026 Gwyn Ciesla <gwync@protonmail.com> - 5.2.1-1
- 5.2.1
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Thu Jun 11 2026 Gwyn Ciesla <gwync@protonmail.com> - 5.2.0-1
- 5.2.0
* Thu Mar 05 2026 Gwyn Ciesla <gwync@protonmail.com> - 5.1.1-1
- 5.1.1
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 5.1.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Jan 07 2026 Gwyn Ciesla <gwync@protonmail.com> - 5.1.0-1
- 5.1.0
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jul 21 2025 Gwyn Ciesla <gwync@protonmail.com> - 5.0.2-1
- 5.0.2
* Tue May 06 2025 Gwyn Ciesla <gwync@protonmail.com> - 5.0.1-1
- 5.0.1
* Thu Feb 20 2025 Gwyn Ciesla <gwync@protonmail.com> - 5.0.0-1
- 5.0.0
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Dec 18 2024 Gwyn Ciesla <gwync@protonmail.com> - 4.2.4-3
- Provide bundled lzma-sdk
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue May 21 2024 Gwyn Ciesla <gwync@protonmail.com> - 4.2.4-1
- 4.2.4
* Thu Mar 28 2024 Gwyn Ciesla <gwync@protonmail.com> - 4.2.3-1
- 4.2.3
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jan 04 2024 Gwyn Ciesla <gwync@protonmail.com> - 4.2.2-1
- 4.2.2
* Thu Nov 02 2023 Gwyn Ciesla <gwync@protonmail.com> - 4.2.1-1
- 4.2.1
* Fri Oct 27 2023 Gwyn Ciesla <gwync@protonmail.com> - 4.2.0-1
- 4.2.0
* Wed Aug 09 2023 Gwyn Ciesla <gwync@protonmail.com> - 4.1.0-1
- 4.1.0
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sun Mar 05 2023 Gwyn Ciesla <gwync@protonmail.com> - 4.0.2-2
- migrated to SPDX license
* Wed Feb 01 2023 Gwyn Ciesla <gwync@protonmail.com> - 4.0.2-1
- 4.0.2
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jan 12 2023 Gwyn Ciesla <gwync@protonmail.com> - 4.0.1-2
- Patches for CVE-2023-23456, CVE-2023-23457
* Thu Nov 17 2022 Gwyn Ciesla <gwync@protonmail.com> - 4.0.1-1
- 4.0.1
* Fri Nov 04 2022 Gwyn Ciesla <gwync@protonmail.com> - 4.0.0-1
- 4.0.0
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.96-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.96-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.96-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue May 18 2021 Gwyn Ciesla <gwync@protonmail.com> - 3.96-9
- Patch for CVE-2020-24119
* Thu Mar 11 2021 Gwyn Ciesla <gwync@protonmail.com> - 3.96-8
- Patch for CVE-2021-20285
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.96-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Aug 10 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.96-6
- Make PE load config directory address dword aligned
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.96-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Apr 20 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.96-4
- Patch for segfault using preserve-build-id.
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.96-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jan 24 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.96-2
- EVR bump for koji issue.
* Fri Jan 24 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.96-1
- 3.96
* Fri Jan 17 2020 Gwyn Ciesla <gwync@protonmail.com> - 3.95-5
- Upstream patch for CVE-2019-20021
* Thu Aug 01 2019 Gwyn Ciesla <gwync@protonmail.com> - 3.95-4
- Upstream patches for CVE-2019-14295 and CVE-2019-14296.
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.95-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.95-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Aug 27 2018 Gwyn Ciesla <limburgher@gmail> - 3.95-1
- 3.95.
- Switch to upstream's lzma fork.
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.94-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.94-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Oct 10 2017 Gwyn Ciesla <limburgher@gmail.com> - 3.94-1
- 3.94, plus patch for CVE-2017-15056.
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.93-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.93-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Thu Mar 30 2017 Gwyn Ciesla <limburgher@gmail.com> - 3.93-1
- Latest upstream, fix for BZ 1429197.
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.91-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.91-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.91-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 3.91-5
- Rebuilt for GCC 5 C++11 ABI change
* Thu Oct 16 2014 Jon Ciesla <limburgher@gmail.com> - 3.91-4
- Fix FTBFS.
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.91-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.91-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Oct 28 2013 Jon Ciesla <limburgher@gmail.com> - 3.91-1
- New upstream, BZ 1023719.
- Fix bad changelog date.
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.09-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Mon Mar 18 2013 Jon Ciesla <limburgher@gmail.com> - 3.09-1
- New upstream.
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.08-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.08-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Fri Jan 27 2012 Jon Ciesla <limburgher@gmail.com> - 3.08-1
- New upstream.
@ -299,7 +121,7 @@ rm -f %{buildroot}%{_datadir}/doc/upx/*
* Thu May 19 2005 Ville Skyttä <ville.skytta at iki.fi> - 1.25-4
- Rebuild.
* Fri Apr 8 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.25-3
* Fri Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.25-3
- rebuilt
* Fri Dec 17 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:1.25-2