summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Mrozowski <reavertm@gentoo.org>2017-10-30 07:05:30 +0100
committerMaciej Mrozowski <reavertm@gentoo.org>2017-10-30 07:05:45 +0100
commitac489776e5c17f2e6a91b0ee7603caa7ad797a4e (patch)
tree440b8838c6136db595d3dcbf27beee82f2d7b999 /dev-libs
parentdev-ruby/ox: add 2.8.1 (diff)
downloadgentoo-ac489776e5c17f2e6a91b0ee7603caa7ad797a4e.tar.gz
gentoo-ac489776e5c17f2e6a91b0ee7603caa7ad797a4e.tar.bz2
gentoo-ac489776e5c17f2e6a91b0ee7603caa7ad797a4e.zip
dev-libs/libmspack: Fix tests, bug #635776
Package-Manager: Portage-2.3.8, Repoman-2.3.4
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/libmspack/files/libmspack-0.6_alpha-fix-tests.patch96
-rw-r--r--dev-libs/libmspack/libmspack-0.6_alpha.ebuild4
2 files changed, 100 insertions, 0 deletions
diff --git a/dev-libs/libmspack/files/libmspack-0.6_alpha-fix-tests.patch b/dev-libs/libmspack/files/libmspack-0.6_alpha-fix-tests.patch
new file mode 100644
index 000000000000..2f010d87a376
--- /dev/null
+++ b/dev-libs/libmspack/files/libmspack-0.6_alpha-fix-tests.patch
@@ -0,0 +1,96 @@
+From deb65056f436a4ce06946c4dde270f533e3cab4d Mon Sep 17 00:00:00 2001
+From: Stuart Caie <kyzer@cabextract.org.uk>
+Date: Mon, 16 Oct 2017 13:59:05 +0100
+Subject: [PATCH] Fix cabd_test.c test and msdecompile_md5 script
+
+---
+ libmspack/ChangeLog | 10 +++++++++
+ libmspack/test/cabd_test.c | 3 ++-
+ libmspack/test/msdecompile_md5 | 47 +++++++++++++++++++++---------------------
+ 3 files changed, 36 insertions(+), 24 deletions(-)
+
+diff --git a/libmspack/ChangeLog b/libmspack/ChangeLog
+index 6861b19..4aef85f 100644
+--- a/libmspack/ChangeLog
++++ b/libmspack/ChangeLog
+@@ -1,3 +1,13 @@
++2017-10-16 Stuart Caie <kyzer@cabextract.org.uk>
++
++ * test/cabd_test.c: update the short string tests to expect not only
++ MSPACK_ERR_DATAFORMAT but also MSPACK_ERR_READ, because of the recent
++ change to cabd_read_string(). Thanks to maitreyee43 for spotting this.
++
++ * test/msdecompile_md5: update the setup instructions for this script,
++ and also change the script so it works with current Wine. Again, thanks
++ to maitreyee43 for trying to use it and finding it not working.
++
+ 2017-08-13 Stuart Caie <kyzer@cabextract.org.uk>
+
+ * src/chmextract.c: support MinGW one-arg mkdir(). Thanks to AntumDeluge
+diff --git a/libmspack/test/cabd_test.c b/libmspack/test/cabd_test.c
+index 5e8851c..abed65c 100644
+--- a/libmspack/test/cabd_test.c
++++ b/libmspack/test/cabd_test.c
+@@ -186,7 +186,8 @@ void cabd_open_test_05() {
+ for (i = 0; i < (sizeof(str_files)/sizeof(char *)); i++) {
+ cab = cabd->open(cabd, str_files[i]);
+ TEST(cab == NULL);
+- TEST(cabd->last_error(cabd) == MSPACK_ERR_DATAFORMAT);
++ TEST(cabd->last_error(cabd) == MSPACK_ERR_DATAFORMAT ||
++ cabd->last_error(cabd) == MSPACK_ERR_READ);
+ }
+
+ /* lack of data blocks should NOT be a problem for merely reading */
+diff --git a/libmspack/test/msdecompile_md5 b/libmspack/test/msdecompile_md5
+index a1d3b4b..9efbfac 100755
+--- a/libmspack/test/msdecompile_md5
++++ b/libmspack/test/msdecompile_md5
+@@ -1,24 +1,25 @@
+-#!/usr/bin/perl -w
+-# put hh.exe, hhctrl.ocx and itss.dll into this directory
+-# for this script to work. You can get them by downloading
+-# the HTML Help Workshop from Microsoft and then doing:
+-# $ cabextract -F 'hh*' htmlhelp.exe
+-# $ cabextract -F itircl.dll hhupd.exe
+-# $ cabextract -F itss.dll hhupd.exe
+-# $ cp -a itircl.dll ~/.wine/drive_c/windows/system32/
+-# $ cp -a itss.dll ~/.wine/drive_c/windows/system32/
+-# $ wine regsvr32 /s 'C:\WINDOWS\SYSTEM32\itircl.dll'
+-# $ wine regsvr32 /s 'C:\WINDOWS\SYSTEM32\itss.dll'
++#!/bin/sh
++# This script needs the following setup to work:
++# - hh.exe and hhctrl.ocx copied to Wine's system32
++# - itss.dll and itircl.dll installed as Wine DLLs
++#
++# Download the HTML Help Workshop (htmlhelp.exe) from Microsoft:
++#
++# https://msdn.microsoft.com/en-us/library/windows/desktop/ms669985(v=vs.85).aspx
++#
++# and then run these commands:
++#
++# cabextract htmlhelp.exe -F hhupd.exe
++# cabextract hhupd.exe -F hh.exe
++# cabextract hhupd.exe -F hhctrl.ocx
++# cabextract hhupd.exe -F itircl.dll
++# cabextract hhupd.exe -F itss.dll
++# mv hh.exe hhctrl.ocx itircl.dll itss.dll ~/.wine/drive_c/windows/system32/
++# wine regsvr32 /s 'c:\windows\system32\itircl.dll'
++# wine regsvr32 /s 'c:\windows\system32\itss.dll'
+
+-use strict;
+-use File::Temp qw(tempdir);
+-
+-die "Usage: $0 <file.chm>\n" unless @ARGV == 1;
+-my $hh = $0; $hh =~ s{[^/]+$}{hh.exe};
+-my $dir = tempdir("./.tempXXXX", CLEANUP => 1);
+-
+-$ENV{LANG} = 'C';
+-$ENV{WINEDLLOVERRIDES}='hhctrl.ocx,itss=n';
+-print "*** $ARGV[0]\n";
+-system("wine $hh -decompile $dir $ARGV[0] 1>&2 && " .
+- "cd $dir && find * -type f -print0 | xargs -0 md5sum");
++dir=`mktemp -d`
++echo "*** $1"
++LANG=C WINEDLLOVERRIDES='hhctrl.ocx=n' wine hh -decompile $dir "$1"
++cd $dir && find * -type f -exec md5sum {} +
++rm -rf $dir
diff --git a/dev-libs/libmspack/libmspack-0.6_alpha.ebuild b/dev-libs/libmspack/libmspack-0.6_alpha.ebuild
index b8c96e78ed03..6a40351178f2 100644
--- a/dev-libs/libmspack/libmspack-0.6_alpha.ebuild
+++ b/dev-libs/libmspack/libmspack-0.6_alpha.ebuild
@@ -20,6 +20,10 @@ IUSE="debug doc static-libs"
DEPEND=""
RDEPEND=""
+PATCHES=(
+ "${FILESDIR}/${P}-fix-tests.patch"
+)
+
S="${WORKDIR}/${MY_P}"
multilib_src_configure() {