This is an automated email from the git hooks/post-receive script.

skitt pushed a commit to branch master
in repository scummvm-tools.

commit 99d572b6f48a1db72d0117da2a19abf70fcf5377
Author: Stephen Kitt <st...@sk2.org>
Date:   Sun Feb 7 23:20:52 2016 +0100

    Initial packaging.
---
 debian/changelog                        |   5 +
 debian/clean                            |   5 +
 debian/compat                           |   1 +
 debian/control                          |  41 +++
 debian/copyright                        |  94 +++++++
 debian/docs                             |   3 +
 debian/patches/compilation-fixes.patch  |  14 +
 debian/patches/series                   |   4 +
 debian/patches/spelling-fixes.patch     |  38 +++
 debian/patches/tests-broken.patch       |  29 +++
 debian/patches/tests-missing-data.patch | 442 ++++++++++++++++++++++++++++++++
 debian/rules                            |  21 ++
 debian/source/format                    |   1 +
 debian/watch                            |   4 +
 14 files changed, 702 insertions(+)

diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..0f4a595
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,5 @@
+scummvm-tools (1.7.0-1) unstable; urgency=low
+
+  * Initial release. Closes: #653617.
+
+ -- Stephen Kitt <sk...@debian.org>  Sun, 07 Feb 2016 23:20:38 +0100
diff --git a/debian/clean b/debian/clean
new file mode 100644
index 0000000..b486091
--- /dev/null
+++ b/debian/clean
@@ -0,0 +1,5 @@
+config.log
+decompiler/test/disassembler/*.o
+config.h
+config.mk
+scummvm-tools-conf.cpp
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..d0980e6
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,41 @@
+Source: scummvm-tools
+Section: games
+Priority: optional
+Maintainer: Debian Games Team <pkg-games-de...@lists.alioth.debian.org>
+Uploaders:
+ Stephen Kitt <sk...@debian.org>
+Build-Depends:
+ autotools-dev,
+ debhelper (>=9),
+ libboost-program-options-dev,
+ libflac-dev,
+ libfreetype6-dev,
+ libmad0-dev,
+ libpng-dev,
+ libvorbis-dev,
+ libwxgtk3.0-dev,
+ python,
+ zlib1g-dev
+Standards-Version: 3.9.6
+Homepage: http://wiki.scummvm.org/index.php/User_Manual/Appendix:_Tools
+Vcs-Git: https://anonscm.debian.org/git/pkg-games/scummvm-tools.git
+Vcs-Browser: https://anonscm.debian.org/cgit/pkg-games/scummvm-tools.git
+
+Package: scummvm-tools
+Architecture: any
+Multi-Arch: foreign
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends}
+Description: collection of tools for ScummVM
+ This package contains various tools which may be useful in
+ conjunction with ScummVM.
+ .
+ The tools include:
+  * compression tools to re-compress ScummVM games' assets;
+  * extraction tools, either to extract resources from game assets, or
+    to convert assets from one format to another (e.g. PC Engine or
+    Macintosh releases);
+  * game script analysis tools.
+ .
+ A GUI is provided alongside the command-line tools.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..73bf8b0
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,94 @@
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: scummvm-tools
+Source: http://www.scummvm.org
+
+Files: *
+Copyright: 2001-2014 ScummVM Team
+License: GPL-2.0+
+
+Files:
+ config.guess
+ config.sub
+Copyright: 1992-2009 Free Software Foundation, Inc.
+License: permissive
+ Auto-generated file under the permissive license.
+
+Files: convert_dxa.bat
+Copyright: 2006 oduverne
+           2006-2012 ScummVM Team
+           2008 NoiZe
+License: GPL-2.0+
+
+Files: convert_dxa.sh
+Copyright: 2006 crowley
+          2006-2012 ScummVM Team
+License: GPL-2.0+
+
+Files:
+ sci/sfx/lists/gm_patches.c
+ sci/sfx/lists/mt32_timbres.c
+ sci/sfx/mt32_GM_mapping/gm_patches.c
+ sci/sfx/mt32_GM_mapping/main.c
+ sci/sfx/mt32_GM_mapping/mt32_timbres.c
+Copyright: 2000 Rickard Lind
+License: GPL-1.0
+
+Files: decompiler/test/cxxtest/*
+Copyright: 2008 Sandia Corporation
+License: LGPL-3.0
+
+Files: debian/*
+Copyright: 2016 Stephen Kitt
+License: GPL-2.0+
+
+License: GPL-2.0+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation; either version 2
+ of the License, or (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ .
+ On Debian systems, the complete text of the GNU General Public License
+ Version 2 can be found in `/usr/share/common-licenses/GPL-2'.
+
+License: GPL-1.0
+ This program may be modified and copied freely according to the terms of
+ the GNU general public license (GPL), as long as the above copyright
+ notice and the licensing information contained herein are preserved.
+ .
+ Please refer to www.gnu.org for licensing details.
+ .
+ This work is provided AS IS, without warranty of any kind, expressed or
+ implied, including but not limited to the warranties of merchantibility,
+ noninfringement, and fitness for a specific purpose. The author will not
+ be held liable for any damage caused by this work or derivatives of it.
+ .
+ By using this source code, you agree to the licensing terms as stated
+ above.
+ .
+ On Debian systems, the complete text of the GNU General Public License
+ Version 1 can be found in `/usr/share/common-licenses/GPL-1'.
+
+License: LGPL-3.0
+ This package is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License version 3 as published by the Free Software Foundation.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the complete text of the GNU Lesser General
+ Public License can be found in "/usr/share/common-licenses/LGPL-3".
diff --git a/debian/docs b/debian/docs
new file mode 100644
index 0000000..c6eab75
--- /dev/null
+++ b/debian/docs
@@ -0,0 +1,3 @@
+COPYRIGHT
+README
+TODO
diff --git a/debian/patches/compilation-fixes.patch 
b/debian/patches/compilation-fixes.patch
new file mode 100644
index 0000000..59111bb
--- /dev/null
+++ b/debian/patches/compilation-fixes.patch
@@ -0,0 +1,14 @@
+Description: Compilation fixes for GCC 5
+Author: Stephen Kitt <sk...@debian.org>
+
+--- a/decompiler/test/codegen.h
++++ b/decompiler/test/codegen.h
+@@ -51,7 +51,7 @@
+       std::basic_ios<cT, traits>(&m_sbuf),
+       std::basic_ostream<cT, traits>(&m_sbuf)
+       {
+-              init(&m_sbuf);
++              this->init(&m_sbuf);
+       }
+ 
+ private:
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..883dd81
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,4 @@
+spelling-fixes.patch
+compilation-fixes.patch
+tests-missing-data.patch
+tests-broken.patch
diff --git a/debian/patches/spelling-fixes.patch 
b/debian/patches/spelling-fixes.patch
new file mode 100644
index 0000000..c3d6e67
--- /dev/null
+++ b/debian/patches/spelling-fixes.patch
@@ -0,0 +1,38 @@
+Description: Spelling fixes
+Author: Stephen Kitt <sk...@debian.org>
+
+As suggested by Lintian:
+* excutable -> executable
+* occured -> occurred
+
+--- a/gui/pages.cpp
++++ b/gui/pages.cpp
+@@ -888,7 +888,7 @@
+ 
+       /*
+       "\nMP3 mode params:\n"
+-      " --lame-path <path> Path to the lame excutable to use (default: 
lame)\n"
++      " --lame-path <path> Path to the lame executable to use (default: 
lame)\n"
+       " -b <rate>    <rate> is the target bitrate(ABR)/minimal bitrate(VBR) 
(default:" minBitrDef_str "%d)\n"
+       " -B <rate>    <rate> is the maximum VBR/ABR bitrate (default:%" 
maxBitrDef_str ")\n"
+       " --vbr        LAME uses the VBR mode (default)\n"
+@@ -1522,7 +1522,7 @@
+               _success = true;
+       } catch (ToolException &err) {
+               wxMutexLocker lock(_output.mutex);
+-              _output.buffer = _output.buffer + "\nFatal Error Occured: " + 
err.what() + "\n";
++              _output.buffer = _output.buffer + "\nFatal Error Occurred: " + 
err.what() + "\n";
+       }
+       _finished = true;
+       return NULL;
+--- a/compress.cpp
++++ b/compress.cpp
+@@ -1163,7 +1163,7 @@
+ 
+       if (_supportedFormats & AUDIO_MP3) {
+               os << "\nMP3 mode params:\n";
+-              os << " --lame-path <path> Path to the lame excutable to use 
(default:lame)\n";
++              os << " --lame-path <path> Path to the lame executable to use 
(default:lame)\n";
+               os << " -b <rate>    <rate> is the minimal bitrate 
(default:unset)\n";
+               os << " -B <rate>    <rate> is the maximum bitrate 
(default:unset)\n";
+               os << " --vbr        LAME uses the VBR mode (default)\n";
diff --git a/debian/patches/tests-broken.patch 
b/debian/patches/tests-broken.patch
new file mode 100644
index 0000000..8380d39
--- /dev/null
+++ b/debian/patches/tests-broken.patch
@@ -0,0 +1,29 @@
+Description: Disable broken test
+Author: Stephen Kitt <sk...@debian.org>
+
+This test is broken currently; disable it for the time being.
+
+--- a/decompiler/test/cfg_test.h
++++ b/decompiler/test/cfg_test.h
+@@ -134,21 +134,6 @@
+               delete engine;
+       }
+ 
+-      void testShortCircuitDetection() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Engine *engine = new 
Scumm::v6::Scummv6Engine();
+-              Disassembler *d = engine->getDisassembler(insts);
+-              d->open("decompiler/test/short-circuit.dmp");
+-              d->disassemble();
+-              delete d;
+-              ControlFlow *c = new ControlFlow(insts, engine);
+-              c->createGroups();
+-              Graph g = c->getGraph();
+-              TS_ASSERT(boost::num_vertices(g) == 3);
+-              delete c;
+-              delete engine;
+-      }
+-
+       void testWhileDetection() {
+               InstVec insts;
+               Scumm::v6::Scummv6Engine *engine = new 
Scumm::v6::Scummv6Engine();
diff --git a/debian/patches/tests-missing-data.patch 
b/debian/patches/tests-missing-data.patch
new file mode 100644
index 0000000..b8b2a54
--- /dev/null
+++ b/debian/patches/tests-missing-data.patch
@@ -0,0 +1,442 @@
+Description: Disable tests for which data isn't available
+Author: Stephen Kitt <sk...@debian.org>
+
+A number of tests require data from games; this data isn't available
+for the buildds and can't be included in the package. Because of the
+way the tests work, disabling them involves removing the code
+entirely.
+
+--- a/decompiler/test/disassembler_test.h
++++ b/decompiler/test/disassembler_test.h
+@@ -70,181 +70,4 @@
+               }
+       }
+ 
+-      // This test requires script-15.dmp from Sam & Max: Hit The Road.
+-      // 1ab08298c9c8fb4c77953756989c7449 *script-15.dmp
+-      void testScummv6DisassemblerScript15() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Disassembler s(insts);
+-              s.open("decompiler/test/script-15.dmp");
+-              s.disassemble();
+-              TS_ASSERT(insts.size() == 11);
+-              TS_ASSERT(insts[0]->_address == 0);
+-              TS_ASSERT(insts[0]->_opcode == 0x03);
+-              TS_ASSERT(insts[0]->_name == "pushWordVar");
+-              TS_ASSERT(insts[0]->_params[0]->getUnsigned() == 16384);
+-              TS_ASSERT(insts[1]->_address == 3);
+-              TS_ASSERT(insts[1]->_opcode == 0x43);
+-              TS_ASSERT(insts[1]->_name == "writeWordVar");
+-              TS_ASSERT(insts[1]->_params[0]->getUnsigned() == 197);
+-              TS_ASSERT(insts[2]->_address == 6);
+-              TS_ASSERT(insts[2]->_opcode == 0x01);
+-              TS_ASSERT(insts[2]->_name == "pushWord");
+-              TS_ASSERT(insts[2]->_params[0]->getSigned() == 0);
+-              TS_ASSERT(insts[3]->_address == 9);
+-              TS_ASSERT(insts[3]->_opcode == 0x01);
+-              TS_ASSERT(insts[3]->_name == "pushWord");
+-              TS_ASSERT(insts[3]->_params[0]->getSigned() == 11);
+-              TS_ASSERT(insts[4]->_address == 12);
+-              TS_ASSERT(insts[4]->_opcode == 0x01);
+-              TS_ASSERT(insts[4]->_name == "pushWord");
+-              TS_ASSERT(insts[4]->_params[0]->getSigned() == 0);
+-              TS_ASSERT(insts[5]->_address == 15);
+-              TS_ASSERT(insts[5]->_opcode == 0x5E);
+-              TS_ASSERT(insts[5]->_name == "startScript");
+-              TS_ASSERT(insts[6]->_address == 16);
+-              TS_ASSERT(insts[6]->_opcode == 0x01);
+-              TS_ASSERT(insts[6]->_name == "pushWord");
+-              TS_ASSERT(insts[6]->_params[0]->getSigned() == 0);
+-              TS_ASSERT(insts[7]->_address == 19);
+-              TS_ASSERT(insts[7]->_opcode == 0x01);
+-              TS_ASSERT(insts[7]->_name == "pushWord");
+-              TS_ASSERT(insts[7]->_params[0]->getSigned() == 14);
+-              TS_ASSERT(insts[8]->_address == 22);
+-              TS_ASSERT(insts[8]->_opcode == 0x01);
+-              TS_ASSERT(insts[8]->_name == "pushWord");
+-              TS_ASSERT(insts[8]->_params[0]->getSigned() == 0);
+-              TS_ASSERT(insts[9]->_address == 25);
+-              TS_ASSERT(insts[9]->_opcode == 0x5E);
+-              TS_ASSERT(insts[9]->_name == "startScript");
+-              TS_ASSERT(insts[10]->_address == 26);
+-              TS_ASSERT(insts[10]->_opcode == 0x66);
+-              TS_ASSERT(insts[10]->_name == "stopObjectCodeB");
+-      }
+-
+-      // This test requires script-31.dmp from Sam & Max: Hit The Road.
+-      // f75f7ce110f378735d449f8eeb4a68e5 *script-31.dmp
+-      void testScummv6DisassemblerScript31() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Disassembler s(insts);
+-              s.open("decompiler/test/script-31.dmp");
+-              s.disassemble();
+-              TS_ASSERT(insts.size() == 5);
+-              TS_ASSERT(insts[0]->_address == 0);
+-              TS_ASSERT(insts[0]->_opcode == 0x01);
+-              TS_ASSERT(insts[0]->_name == "pushWord");
+-              TS_ASSERT(insts[0]->_params[0]->getSigned() == 0);
+-              TS_ASSERT(insts[1]->_address == 3);
+-              TS_ASSERT(insts[1]->_opcode == 0x43);
+-              TS_ASSERT(insts[1]->_name == "writeWordVar");
+-              TS_ASSERT(insts[1]->_params[0]->getUnsigned() == 180);
+-              TS_ASSERT(insts[2]->_address == 6);
+-              TS_ASSERT(insts[2]->_opcode == 0x01);
+-              TS_ASSERT(insts[2]->_name == "pushWord");
+-              TS_ASSERT(insts[2]->_params[0]->getSigned() == 0);
+-              TS_ASSERT(insts[3]->_address == 9);
+-              TS_ASSERT(insts[3]->_opcode == 0x43);
+-              TS_ASSERT(insts[3]->_name == "writeWordVar");
+-              TS_ASSERT(insts[3]->_params[0]->getUnsigned() == 181);
+-              TS_ASSERT(insts[4]->_address == 12);
+-              TS_ASSERT(insts[4]->_opcode == 0x66);
+-              TS_ASSERT(insts[4]->_name == "stopObjectCodeB");
+-      }
+-
+-      // This test requires script-33.dmp from Sam & Max: Hit The Road.
+-      // 9f09418bf34abbdec0ec54f388d8dca4 *script-33.dmp
+-      void testScummv6DisassemblerScript33() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Disassembler s(insts);
+-              s.open("decompiler/test/script-33.dmp");
+-              s.disassemble();
+-              TS_ASSERT(insts.size() == 10);
+-              TS_ASSERT(insts[0]->_address == 0);
+-              TS_ASSERT(insts[0]->_opcode == 0x01);
+-              TS_ASSERT(insts[0]->_name == "pushWord");
+-              TS_ASSERT(insts[0]->_params[0]->getSigned() == 0);
+-              TS_ASSERT(insts[1]->_address == 3);
+-              TS_ASSERT(insts[1]->_opcode == 0x43);
+-              TS_ASSERT(insts[1]->_name == "writeWordVar");
+-              TS_ASSERT(insts[1]->_params[0]->getUnsigned() == 71);
+-              TS_ASSERT(insts[2]->_address == 6);
+-              TS_ASSERT(insts[2]->_opcode == 0x03);
+-              TS_ASSERT(insts[2]->_name == "pushWordVar");
+-              TS_ASSERT(insts[2]->_params[0]->getUnsigned() == 177);
+-              TS_ASSERT(insts[3]->_address == 9);
+-              TS_ASSERT(insts[3]->_opcode == 0x43);
+-              TS_ASSERT(insts[3]->_name == "writeWordVar");
+-              TS_ASSERT(insts[3]->_params[0]->getUnsigned() == 173);
+-              TS_ASSERT(insts[4]->_address == 12);
+-              TS_ASSERT(insts[4]->_opcode == 0x01);
+-              TS_ASSERT(insts[4]->_name == "pushWord");
+-              TS_ASSERT(insts[4]->_params[0]->getSigned() == 874);
+-              TS_ASSERT(insts[5]->_address == 15);
+-              TS_ASSERT(insts[5]->_opcode == 0x43);
+-              TS_ASSERT(insts[5]->_name == "writeWordVar");
+-              TS_ASSERT(insts[5]->_params[0]->getUnsigned() == 177);
+-              TS_ASSERT(insts[6]->_address == 18);
+-              TS_ASSERT(insts[6]->_opcode == 0x03);
+-              TS_ASSERT(insts[6]->_name == "pushWordVar");
+-              TS_ASSERT(insts[6]->_params[0]->getUnsigned() == 177);
+-              TS_ASSERT(insts[7]->_address == 21);
+-              TS_ASSERT(insts[7]->_opcode == 0x01);
+-              TS_ASSERT(insts[7]->_name == "pushWord");
+-              TS_ASSERT(insts[7]->_params[0]->getSigned() == 93);
+-              TS_ASSERT(insts[8]->_address == 24);
+-              TS_ASSERT(insts[8]->_opcode == 0x6B99);
+-              TS_ASSERT(insts[8]->_name == "cursorCommand.setCursorImg");
+-              TS_ASSERT(insts[9]->_address == 26);
+-              TS_ASSERT(insts[9]->_opcode == 0x66);
+-              TS_ASSERT(insts[9]->_name == "stopObjectCodeB");
+-      }
+-
+-      // This test requires room-9-202.dmp from Sam & Max: Hit The Road.
+-      // f010dc659264674a2b6da298acd0b88b *room-9-202.dmp
+-      void testScummv6StackChangeFixRoom9202() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Disassembler s(insts);
+-              s.open("decompiler/test/room-9-202.dmp");
+-              s.disassemble();
+-              InstIterator it = insts.end();
+-              it -= 8;
+-              TS_ASSERT((*it)->_stackChange == -3);
+-      }
+-
+-      // This test requires script-30.dmp from Sam & Max: Hit The Road.
+-      // 6e48faca13e1f6df9341567608962744 *script-30.dmp
+-      void testScummv6StackChangeFixScript30() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Disassembler s(insts);
+-              s.open("decompiler/test/script-30.dmp");
+-              s.disassemble();
+-              InstIterator it = insts.end();
+-              it -= 3;
+-              TS_ASSERT((*it)->_stackChange == -6);
+-      }
+-
+-      // This test requires _START04.EMC from the CD demo of
+-      // Legend of Kyrandia: Hand of Fate, found in MISC_EMC.PAK.
+-      // Extract using extract_kyra from the scummvm-tools-cli bundle.
+-      // ba2821ac6da96394ce0af75a3cbe48eb *_START04.EMC
+-      void testKyra2Start04() {
+-              InstVec insts;
+-              Kyra::Kyra2Engine engine;
+-              Disassembler* s = engine.getDisassembler(insts);
+-              s->open("decompiler/test/_START04.EMC");
+-              s->disassemble();
+-
+-              TS_ASSERT(insts.size() == 481);
+-
+-              //These scripts are far too big to check all instructions, so 
we just check a few different ones
+-              TS_ASSERT(insts[16]->_address == 0x20);
+-              TS_ASSERT(insts[16]->_opcode == 15);
+-              TS_ASSERT(insts[16]->_name == "ifNotJmp");
+-              TS_ASSERT(insts[16]->_stackChange == -1);
+-              TS_ASSERT(insts[38]->_address == 0x54);
+-              TS_ASSERT(insts[38]->_opcode == 14);
+-              TS_ASSERT(insts[38]->_name == "o1_setHandItem");
+-              TS_ASSERT(insts[38]->_stackChange == 0);
+-
+-              delete s;
+-      }
+ };
+--- a/decompiler/test/cfg_test.h
++++ b/decompiler/test/cfg_test.h
+@@ -559,112 +559,4 @@
+               delete engine;
+       }
+ 
+-      // This test requires script-30.dmp from Sam & Max: Hit The Road.
+-      // 6e48faca13e1f6df9341567608962744 *script-30.dmp
+-      void testSamAndMaxScript30() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Engine *engine = new 
Scumm::v6::Scummv6Engine();
+-              Disassembler *d = engine->getDisassembler(insts);
+-              d->open("decompiler/test/script-30.dmp");
+-              d->disassemble();
+-              delete d;
+-              ControlFlow *c = new ControlFlow(insts, engine);
+-              c->createGroups();
+-              Graph g = c->analyze();
+-              VertexRange range = boost::vertices(g);
+-              for (VertexIterator it = range.first; it != range.second; ++it) 
{
+-                      GroupPtr gr = GET(*it);
+-                      switch ((*gr->_start)->_address) {
+-                      case 0x6:
+-                              TS_ASSERT(gr->_type == kWhileCondGroupType);
+-                              TS_ASSERT(!gr->_startElse);
+-                              TS_ASSERT(gr->_endElse.empty());
+-                              break;
+-                      case 0x19:
+-                      case 0x3A:
+-                      case 0x4F:
+-                      case 0x68:
+-                      case 0x74: // Allow inclusion of the pop instruction 
immediately before
+-                      case 0x75:
+-                      case 0x92:
+-                              TS_ASSERT(gr->_type == kIfCondGroupType);
+-                              TS_ASSERT(!gr->_startElse);
+-                              TS_ASSERT(gr->_endElse.empty());
+-                              break;
+-                      case 0x8B:
+-                              TS_ASSERT(gr->_type == kNormalGroupType);
+-                              TS_ASSERT(gr->_startElse);
+-                              TS_ASSERT(gr->_endElse.size() == 1 && 
(*gr->_endElse[0]->_start)->_address == 0x8B);
+-                              break;
+-                      case 0x91:
+-                              TS_ASSERT(gr->_type == kNormalGroupType || 
gr->_type == kIfCondGroupType); // Allow inclusion of the pop instruction 
immediately before
+-                              TS_ASSERT(gr->_startElse);
+-                              TS_ASSERT(gr->_endElse.empty());
+-                              break;
+-                      case 0xA6:
+-                              TS_ASSERT(gr->_type == kNormalGroupType);
+-                              TS_ASSERT(!gr->_startElse);
+-                              TS_ASSERT(gr->_endElse.size() == 1 && 
(*gr->_endElse[0]->_start)->_address == 0x91);
+-                              break;
+-                      default:
+-                              TS_ASSERT(gr->_type == kNormalGroupType);
+-                              TS_ASSERT(!gr->_startElse);
+-                              TS_ASSERT(gr->_endElse.empty());
+-                              break;
+-                      }
+-              }
+-              delete c;
+-              delete engine;
+-      }
+-
+-      // This test requires _START04.EMC from the CD demo of
+-      // Legend of Kyrandia: Hand of Fate, found in MISC_EMC.PAK.
+-      // Extract using extract_kyra from the scummvm-tools-cli bundle.
+-      // ba2821ac6da96394ce0af75a3cbe48eb *_START04.EMC
+-      void testFunctionDetection() {
+-              InstVec insts;
+-              Kyra::Kyra2Engine *engine = new Kyra::Kyra2Engine();
+-              Disassembler *d = engine->getDisassembler(insts);
+-              d->open("decompiler/test/_START04.EMC");
+-              d->disassemble();
+-              delete d;
+-              ControlFlow *c = new ControlFlow(insts, engine);
+-              c->createGroups();
+-              Graph g = c->analyze();
+-              TS_ASSERT(engine->_functions.size() == 15);
+-              FuncMap::iterator it = engine->_functions.begin();
+-              TS_ASSERT(it->first == 0x0);
+-              ++it;
+-              TS_ASSERT(it->first == 0x7E);
+-              ++it;
+-              TS_ASSERT(it->first == 0xFC);
+-              ++it;
+-              TS_ASSERT(it->first == 0x100);
+-              ++it;
+-              TS_ASSERT(it->first == 0x1F4);
+-              ++it;
+-              TS_ASSERT(it->first == 0x1F8);
+-              ++it;
+-              TS_ASSERT(it->first == 0x276);
+-              ++it;
+-              TS_ASSERT(it->first == 0x278);
+-              ++it;
+-              TS_ASSERT(it->first == 0x2DE);
+-              ++it;
+-              TS_ASSERT(it->first == 0x2E0);
+-              ++it;
+-              TS_ASSERT(it->first == 0x30C);
+-              ++it;
+-              TS_ASSERT(it->first == 0x30E);
+-              ++it;
+-              TS_ASSERT(it->first == 0x33A);
+-              ++it;
+-              TS_ASSERT(it->first == 0x33C);
+-              ++it;
+-              TS_ASSERT(it->first == 0x33E);
+-              ++it;
+-
+-              delete c;
+-              delete engine;
+-      }
+ };
+--- a/decompiler/test/codegen.h
++++ b/decompiler/test/codegen.h
+@@ -202,132 +202,4 @@
+               delete engine;
+       }
+ 
+-      // This test requires script-30 and script-48.dmp from Sam & Max: Hit 
The Road.
+-      // 6e48faca13e1f6df9341567608962744 *script-30.dmp
+-      // afd7dc5d377894b3b9d0504927adf1b1 *script-48.dmp
+-      void testCoalescing() {
+-              InstVec insts;
+-              Scumm::v6::Scummv6Engine *engine = new 
Scumm::v6::Scummv6Engine();
+-              Disassembler *d = engine->getDisassembler(insts);
+-              d->open("decompiler/test/script-30.dmp");
+-              d->disassemble();
+-              delete d;
+-              ControlFlow *c = new ControlFlow(insts, engine);
+-              c->createGroups();
+-              Graph g = c->analyze();
+-              onullstream ns;
+-              CodeGenerator *cg = engine->getCodeGenerator(ns);
+-              cg->generate(g);
+-
+-              VertexIterator v = boost::vertices(g).first;
+-              GroupPtr gr = GET(*v);
+-              // Find first node
+-              while (gr->_prev != NULL)
+-                      gr = gr->_prev;
+-              // Find vertex to test
+-              while ((*gr->_start)->_address != 0x91)
+-                      gr = gr->_next;
+-
+-              TS_ASSERT(gr->_code.size() == 2);
+-              TS_ASSERT(removeSpaces(gr->_code[0]._line).compare("}else{") == 
0);
+-              TS_ASSERT(removeSpaces(gr->_code[1]._line).substr(0, 
2).compare("if") == 0);
+-
+-              delete cg;
+-              delete c;
+-              delete engine;
+-
+-              insts.clear();
+-              engine = new Scumm::v6::Scummv6Engine();
+-              d = engine->getDisassembler(insts);
+-              d->open("decompiler/test/script-48.dmp");
+-              d->disassemble();
+-              delete d;
+-              c = new ControlFlow(insts, engine);
+-              c->createGroups();
+-              g = c->analyze();
+-              cg = engine->getCodeGenerator(ns);
+-              cg->generate(g);
+-
+-              v = boost::vertices(g).first;
+-              gr = GET(*v);
+-              // Find first node
+-              while (gr->_prev != NULL)
+-                      gr = gr->_prev;
+-              // Find vertex to test
+-              while ((*gr->_start)->_address != 0x191)
+-                      gr = gr->_next;
+-
+-              TS_ASSERT(gr->_code.size() == 1);
+-              TS_ASSERT(removeSpaces(gr->_code[0]._line).substr(0, 
7).compare("}elseif") == 0);
+-
+-              delete cg;
+-              delete c;
+-              delete engine;
+-      }
+-
+-      // This test requires _START04.EMC from the CD demo of
+-      // Legend of Kyrandia: Hand of Fate, found in MISC_EMC.PAK.
+-      // Extract using extract_kyra from the scummvm-tools-cli bundle.
+-      // ba2821ac6da96394ce0af75a3cbe48eb *_START04.EMC
+-      void testKyra2Start04CodeGen() {
+-              InstVec insts;
+-              Kyra::Kyra2Engine *engine = new Kyra::Kyra2Engine();
+-              Disassembler *d = engine->getDisassembler(insts);
+-              d->open("decompiler/test/_START04.EMC");
+-              d->disassemble();
+-              delete d;
+-              ControlFlow *c = new ControlFlow(insts, engine);
+-              c->createGroups();
+-              Graph g = c->analyze();
+-              engine->postCFG(insts, g);
+-              onullstream ns;
+-              CodeGenerator *cg = engine->getCodeGenerator(ns);
+-              cg->generate(g);
+-
+-              VertexIterator v = boost::vertices(g).first;
+-              std::vector<std::string> output, expected;
+-              expected.push_back("auto_sub0x278(param1, param2, param3, 
param4) {");
+-              expected.push_back("if (var1 > param1 && var1 < param3 && var2 
> param2 && var2 < param4) {");
+-              expected.push_back("retval = o1_queryGameFlag(3);");
+-              expected.push_back("if (retval) {");
+-              expected.push_back("retval = o2_drawBox(param1, param2, param3, 
param4, 199);");
+-              expected.push_back("}");
+-              expected.push_back("retval = 1;");
+-              expected.push_back("return;");
+-              expected.push_back("}");
+-              expected.push_back("retval = o1_queryGameFlag(3);");
+-              expected.push_back("if (retval) {");
+-              expected.push_back("retval = o2_drawBox(param1, param2, param3, 
param4, 132);");
+-              expected.push_back("}");
+-              expected.push_back("retval = 0;");
+-              expected.push_back("return;");
+-              expected.push_back("}");
+-
+-              GroupPtr gr = GET(*v);
+-              // Find first node
+-              while (gr->_prev != NULL)
+-                      gr = gr->_prev;
+-
+-              // Find right starting node
+-              while ((*gr->_start)->_address != 0x278)
+-                      gr = gr->_next;
+-
+-              // Copy out all lines of code from function
+-              while ((*gr->_start)->_address <= 0x2DC) {
+-                      for (std::vector<CodeLine>::iterator it = 
gr->_code.begin(); it != gr->_code.end(); ++it) {
+-                              if (it->_line.compare("") != 0)
+-                                      output.push_back(it->_line);
+-                      }
+-                      gr = gr->_next;
+-              }
+-              TS_ASSERT(output.size() == expected.size());
+-              CodeIterator it, it2;
+-              for (it = output.begin(), it2 = expected.begin(); it != 
output.end() && it2 != expected.end(); ++it, ++it2) {
+-                      TS_ASSERT(removeSpaces(*it).compare(removeSpaces(*it2)) 
== 0);
+-              }
+-
+-              delete cg;
+-              delete c;
+-              delete engine;
+-      }
+ };
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..94d8f3e
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,21 @@
+#!/usr/bin/make -f
+
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+
+%:
+       dh $@ --with autotools_dev
+
+override_dh_auto_clean:
+       [ ! -f config.mk ] || dh_auto_clean
+
+override_dh_auto_configure:
+       ./configure \
+               --prefix=/usr \
+               --bindir=/usr/games \
+               --datadir=/usr/share/games \
+               --mandir=/usr/share/man \
+               --libdir=/usr/lib/x86_64-linux-gnu \
+               --enable-verbose-build
+
+override_dh_installchangelogs:
+       dh_installchangelogs NEWS
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..39731d4
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,4 @@
+version=4
+opts="dirversionmangle=s/rc/~rc/" \
+  http://www.scummvm.org/frs/scummvm-tools/([\d+\.]+)/ \
+  @PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@ debian uupdate

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-games/scummvm-tools.git

_______________________________________________
Pkg-games-commits mailing list
Pkg-games-commits@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

Reply via email to