From 06e025388339fe727ece608f1a8b4eb34734fde6 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Tue, 10 Feb 2015 01:48:34 +0000 Subject: [PATCH] extra/p7zip to 9.38-1 --- extra/p7zip/PKGBUILD | 36 ++++++++++++++++++------------------ extra/p7zip/osversion.patch | 28 ++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 18 deletions(-) create mode 100644 extra/p7zip/osversion.patch diff --git a/extra/p7zip/PKGBUILD b/extra/p7zip/PKGBUILD index 470ea1312..ed90bfca0 100644 --- a/extra/p7zip/PKGBUILD +++ b/extra/p7zip/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 143960 2011-11-30 22:27:20Z andrea $ +# $Id$ # Contributor: Thayer Williams # Contributor: Hugo Doria # Contributor: TuxSpirit 2007/11/17 21:22:36 UTC @@ -6,36 +6,35 @@ # Maintainer: Gaetan Bisson # ALARM: Kevin Mihelich -# - change optimization to O0 to fix ICE # - use makefile.linux_any_cpu pkgname=p7zip -pkgver=9.20.1 -pkgrel=9 +pkgver=9.38 +pkgrel=1 pkgdesc='Command-line version of the 7zip compressed file archiver' url='http://p7zip.sourceforge.net/' license=('GPL' 'custom') arch=('i686' 'x86_64') depends=('gcc-libs' 'bash') -optdepends=('wxgtk2.8: GUI' +optdepends=('wxgtk: GUI' 'desktop-file-utils: desktop entries') -makedepends=('wxgtk2.8') -options=('!makeflags') +makedepends=('yasm' 'nasm' 'wxgtk') source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}_${pkgver}_src_all.tar.bz2" + 'osversion.patch' '7zFM.desktop') -sha1sums=('1cd567e043ee054bf08244ce15f32cb3258306b7' +sha1sums=('693bc2a1426df7a12762b4542a8327add23f0dc3' + '8c086db1c7be0d52d2ac971f44adbdccf6dd82de' 'f2c370d6f1b286b7ce9a2804e22541b755616a40') +options=('!makeflags') install=install prepare() { cd "${srcdir}/${pkgname}_${pkgver}" - rm GUI/kde4/p7zip_compress.desktop - CFLAGS=`echo $CFLAGS | sed -e 's/-O2/-O0/'` && CXXFLAGS="$CFLAGS" - cp makefile.linux_any_cpu makefile.machine + cp makefile.linux_any_cpu_gcc_4.X makefile.machine - sed -i 's/wx-config/wx-config-2.8/g' CPP/7zip/TEST/TestUI/makefile \ - CPP/7zip/UI/{FileManager,GUI,P7ZIP}/makefile + patch -p1 -i ../osversion.patch + sed -i 's/x86_64-linux-gnu//g' CPP/7zip/*/*/*.depend } build() { @@ -50,14 +49,15 @@ package() { DEST_HOME="/usr" \ DEST_MAN="/usr/share/man" - # Licenses + # Doc and licenses + cp -a DOC/* "${pkgdir}"/usr/share/doc/p7zip install -d "${pkgdir}"/usr/share/licenses/p7zip ln -s -t "${pkgdir}"/usr/share/licenses/p7zip \ - /usr/share/doc/p7zip/DOCS/License.txt \ - /usr/share/doc/p7zip/DOCS/unRarLicense.txt + /usr/share/doc/p7zip/License.txt \ + /usr/share/doc/p7zip/unRarLicense.txt # Integration with stuff... - install -D GUI/p7zip_32.png "${pkgdir}"/usr/share/icons/hicolor/32x32/apps/p7zip.png + install -Dm644 GUI/p7zip_32.png "${pkgdir}"/usr/share/icons/hicolor/32x32/apps/p7zip.png install -d "${pkgdir}"/usr/share/{applications,kde4/services/ServiceMenus} cp GUI/kde4/* "${pkgdir}"/usr/share/kde4/services/ServiceMenus/ cp ../7zFM.desktop "${pkgdir}"/usr/share/applications/ @@ -66,5 +66,5 @@ package() { find GUI/help -type d -exec chmod 755 {} \; cp -r GUI/help "${pkgdir}"/usr/lib/p7zip/ - chmod -R u+w "${pkgdir}/usr" + chmod -R u+w,o+r "${pkgdir}/usr" } diff --git a/extra/p7zip/osversion.patch b/extra/p7zip/osversion.patch new file mode 100644 index 000000000..49e0653e4 --- /dev/null +++ b/extra/p7zip/osversion.patch @@ -0,0 +1,28 @@ +diff -Naur old/CPP/7zip/UI/FileManager/FM.cpp new/CPP/7zip/UI/FileManager/FM.cpp +--- old/CPP/7zip/UI/FileManager/FM.cpp 2015-01-18 08:59:09.000000000 -1000 ++++ new/CPP/7zip/UI/FileManager/FM.cpp 2015-02-09 11:39:55.575712452 -1000 +@@ -348,24 +348,7 @@ + + bool IsLargePageSupported() + { +- #ifdef _WIN64 + return true; +- #else +- OSVERSIONINFO versionInfo; +- versionInfo.dwOSVersionInfoSize = sizeof(versionInfo); +- if (!::GetVersionEx(&versionInfo)) +- return false; +- if (versionInfo.dwPlatformId != VER_PLATFORM_WIN32_NT || versionInfo.dwMajorVersion < 5) +- return false; +- if (versionInfo.dwMajorVersion > 5) +- return true; +- if (versionInfo.dwMinorVersion < 1) +- return false; +- if (versionInfo.dwMinorVersion > 1) +- return true; +- // return IsWow64(); +- return false; +- #endif + } + + #if 0 //#ifndef UNDER_CE