--- blocks-of-the-undead-1.0.orig/debian/compat +++ blocks-of-the-undead-1.0/debian/compat @@ -0,0 +1 @@ +7 --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead-data.dirs +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead-data.dirs @@ -0,0 +1,2 @@ +usr/share/games/BlocksOfTheUndead/assets +usr/share/games/BlocksOfTheUndead/assets/fonts --- blocks-of-the-undead-1.0.orig/debian/control +++ blocks-of-the-undead-1.0/debian/control @@ -0,0 +1,30 @@ +Source: blocks-of-the-undead +Section: games +Priority: optional +Maintainer: Debian Games Team +Uploaders: Evgeni Golov +Build-Depends: debhelper (>= 7.0.50~), autotools-dev, quilt (>= 0.40), + libsdl1.2-dev, libsdl-gfx1.2-dev, libsdl-image1.2-dev, libsdl-mixer1.2-dev, libsdl-ttf2.0-dev +Standards-Version: 3.9.3 +Homepage: http://www.gamecreation.org/game/blocksundead +Vcs-Browser: http://svn.debian.org/wsvn/pkg-games/packages/trunk/blocks-of-the-undead/?op=log +Vcs-Svn: svn://svn.debian.org/svn/pkg-games/packages/trunk/blocks-of-the-undead/ + +Package: blocks-of-the-undead +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, blocks-of-the-undead-data (= ${source:Version}) +Description: Tetris Attack clone with spooky undertones + Blocks of the Undead is a puzzle game. + You have to remove all the blocks on the field by swapping these + around. + +Package: blocks-of-the-undead-data +Depends: ${misc:Depends}, ttf-dejavu-core +Architecture: all +Description: Tetris Attack clone with spooky undertones - data files + Blocks of the Undead is a puzzle game. + You have to remove all the blocks on the field by swapping these + around. + . + This package provides the needed data (images, sounds, levels) for + blocks-of-the-undead. --- blocks-of-the-undead-1.0.orig/debian/changelog +++ blocks-of-the-undead-1.0/debian/changelog @@ -0,0 +1,76 @@ +blocks-of-the-undead (1.0-5) unstable; urgency=low + + * Fix FTBFS with GCC 4.7 + Closes: #667119 + Thanks to Matthias Klose for spotting the issue and Cyril Brulebois + for providing the initial patch. + * Add patch from Ubuntu to fix FTBFS when CPPFLAGS contains more than + one value. + * Use dh tiny.rules. + * Update debian/copyright. + * Standards-Version: 3.9.3 + * Update 02_accept_mousepress_as_anykey.patch to accept a mousepress + also in the "Loading" screen between the stages. + + -- Evgeni Golov Tue, 01 May 2012 20:15:41 +0200 + +blocks-of-the-undead (1.0-4) unstable; urgency=low + + [ Paul Wise ] + * Fix Homepage (Closes: #611121) + + [ Evgeni Golov ] + * Don't fail if there is no sound available. + Closes: #603440 + * debian/source/format: + + Set 1.0 for now. + * debian/control: + + Standards-Version: 3.9.1 + + -- Evgeni Golov Mon, 28 Mar 2011 14:43:33 +0200 + +blocks-of-the-undead (1.0-3) unstable; urgency=low + + * debian/patches/02_accept_mousepress_as_anykey.patch: + + Update the patch to accept a mousepress during the splashscreen too. + * debian/control: + + Update my e-mail address. + + Standards-Version: 3.8.3 + + Add ${misc:Depends} to -data Depends as suggested by lintian. + * debian/rules: + + Update config.{sub,guess} to prevent FTBFS on avr32. + Closes: #550111 + * debian/README.source: + + Add README.source for quilt. + * debian/patches/*: + + Add descriptions to the patches according to DEP3. + + -- Evgeni Golov Sun, 25 Oct 2009 10:11:31 +0100 + +blocks-of-the-undead (1.0-2) unstable; urgency=low + + [ Evgeni Golov ] + * debian/control: + + Set Maintainer to the Debian Games Team. + + Add quilt to Build-Dep. + + Build-Depend on debhelper (>= 7.0.13) or it will FTBFS. + See #487938. + * debian/rules: + + Adjust the targets according to debhelpers rules.simple. + + Force disable building of the AnimView binary, we don't ship it + anyways and it leads to a FTBFS on PowerPC. + * debian/patches/01-sleep_a_bit.patch: + + Add two usleep()-calls so we don't use 100% CPU. + * debian/patches/02_accept_mousepress_as_anykey.patch: + + Accept a mousepress as anykey when game over. + + [ Ansgar Burchardt ] + * debian/control: Add Vcs-Browser, Vcs-Svn fields + + -- Evgeni Golov Sat, 25 Oct 2008 21:10:11 +0200 + +blocks-of-the-undead (1.0-1) unstable; urgency=low + + * Initial release (Closes: #496321) + + -- Evgeni Golov Sun, 24 Aug 2008 19:05:55 +0200 --- blocks-of-the-undead-1.0.orig/debian/copyright +++ blocks-of-the-undead-1.0/debian/copyright @@ -0,0 +1,66 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Blocks Of The Undead +Source: http://stage.gamecreation.org/blocksundead/ + +Files: * +Copyright: © 2004-2005 Jared Luxenberg +Copyright: © 2004-2005 Justin Lokey +Copyright: © 2004-2005 Korina Loumidi +Copyright: © 2004-2005 Keith Bare +License: GPL-2+ + +Files: TetrisAttack/assets/fonts/Vera.ttf +Copyright: © 2003 Bitstream, Inc. +License: other + All Rights Reserved. Bitstream Vera is a trademark of Bitstream, Inc. + . + Permission is hereby granted, free of charge, to any person obtaining a + copy of the fonts accompanying this license ("Fonts") and associated + documentation files (the "Font Software"), to reproduce and distribute + the Font Software, including without limitation the rights to use, copy, + merge, publish, distribute, and/or sell copies of the Font Software, and + to permit persons to whom the Font Software is furnished to do so, + subject to the following conditions: + . + The above copyright and trademark notices and this permission notice + shall be included in all copies of one or more of the Font Software + typefaces. + . + The Font Software may be modified, altered, or added to, and in + particular the designs of glyphs or characters in the Fonts may be + modified and additional glyphs or characters may be added to the Fonts, + only if the fonts are renamed to names not containing either the words + "Bitstream" or the word "Vera". + . + This License becomes null and void to the extent applicable to Fonts or + Font Software that has been modified and is distributed under the + "Bitstream Vera" names. + . + The Font Software may be sold as part of a larger software package but + no copy of one or more of the Font Software typefaces may be sold by + itself. + . + THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF + COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL + BITSTREAM OR THE GNOME FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR + OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, + OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR + OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT + SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. + . + Except as contained in this notice, the names of Gnome, the Gnome + Foundation, and Bitstream Inc., shall not be used in advertising or + otherwise to promote the sale, use or other dealings in this Font + Software without prior written authorization from the Gnome Foundation + or Bitstream Inc., respectively. For further information, contact: + . + +Files: debian/* +Copyright: © 2008-2012 Evgeni Golov +License: GPL-2+ + +License: GPL-2+ + On Debian systems, the complete text of the GNU General + Public License can be found in `/usr/share/common-licenses/GPL'. --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead.install +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead.install @@ -0,0 +1,2 @@ +usr/games/BlocksOfTheUndead +debian/blocks-of-the-undead.desktop usr/share/applications --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead-data.install +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead-data.install @@ -0,0 +1,3 @@ +usr/share/games/BlocksOfTheUndead/assets/img +usr/share/games/BlocksOfTheUndead/assets/lvls +usr/share/games/BlocksOfTheUndead/assets/snd --- blocks-of-the-undead-1.0.orig/debian/BlocksOfTheUndead.6 +++ blocks-of-the-undead-1.0/debian/BlocksOfTheUndead.6 @@ -0,0 +1,16 @@ +.TH BLOCKSOFTHEUNDEAD 6 "August 24, 2008" +.SH NAME +BlocksOfTheUndead \- Tetris Attack clone with spooky undertones +.SH SYNOPSIS +.B BlocksOfTheUndead +.SH DESCRIPTION +The aim of the game is to remove all the blocks from the field. +.br +Blocks are removed when you place three or more of them in a row by +swapping them. Move the cursor and swap the two blocks under the +cursor by clicking on them. +.SH AUTHOR +Blocks Of The Undead was written by Jared Luxenberg, Justin Lokey, Korina Loumidi and Keith Bare. +.PP +This manual page was written by Evgeni Golov , +for the Debian project (but may be used by others). --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead.menu +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead.menu @@ -0,0 +1,2 @@ +?package(blocks-of-the-undead):needs="X11" section="Games/Puzzles" \ + title="Blocks Of The Undead" command="/usr/games/BlocksOfTheUndead" --- blocks-of-the-undead-1.0.orig/debian/rules +++ blocks-of-the-undead-1.0/debian/rules @@ -0,0 +1,13 @@ +#!/usr/bin/make -f + +%: + dh $@ --with quilt + +override_dh_auto_configure: + # update config.{sub,guess} to fix FTBFS on avr32 (#550111) + cp /usr/share/misc/config.sub . + cp /usr/share/misc/config.guess . + dh_auto_configure -- --datadir=/usr/share/games --bindir=/usr/games --disable-animview + +override_dh_clean: + dh_clean config.guess config.sub --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead-data.links +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead-data.links @@ -0,0 +1 @@ +/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf /usr/share/games/BlocksOfTheUndead/assets/fonts/Vera.ttf --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead.links +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead.links @@ -0,0 +1,2 @@ +/usr/games/BlocksOfTheUndead /usr/games/blocks-of-the-undead +/usr/share/man/man6/BlocksOfTheUndead.6.gz /usr/share/man/man6/blocks-of-the-undead.6.gz --- blocks-of-the-undead-1.0.orig/debian/README.source +++ blocks-of-the-undead-1.0/debian/README.source @@ -0,0 +1,2 @@ +This package uses quilt for patch handling. +Please read /usr/share/doc/quilt/README.source for further information. --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead.desktop +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead.desktop @@ -0,0 +1,7 @@ +[Desktop Entry] +Name=Blocks Of The Undead +Exec=BlocksOfTheUndead +Comment=Tetris Attack clone with spooky undertones +Terminal=false +Type=Application +Categories=Game;LogicGame; --- blocks-of-the-undead-1.0.orig/debian/watch +++ blocks-of-the-undead-1.0/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://stage.gamecreation.org/blocksundead/blocks-of-the-undead-(.*)\.src\.tar\.gz --- blocks-of-the-undead-1.0.orig/debian/blocks-of-the-undead.manpages +++ blocks-of-the-undead-1.0/debian/blocks-of-the-undead.manpages @@ -0,0 +1 @@ +debian/BlocksOfTheUndead.6 --- blocks-of-the-undead-1.0.orig/debian/patches/02_accept_mousepress_as_anykey.patch +++ blocks-of-the-undead-1.0/debian/patches/02_accept_mousepress_as_anykey.patch @@ -0,0 +1,137 @@ +Description: a mousepress is also an anykey + When the use is asked to "press any key", accept a mousepress to, + so the user does not have touse the keyboard in a mouse-driven game. +Forwarded: no +Author: Evgeni Golov +Last-Update: 2008-10-26 + +Index: blocks-of-the-undead-1.0/TetrisAttack/src/CTetrisGame.cpp +=================================================================== +--- blocks-of-the-undead-1.0.orig/TetrisAttack/src/CTetrisGame.cpp 2012-05-01 20:13:20.321936666 +0200 ++++ blocks-of-the-undead-1.0/TetrisAttack/src/CTetrisGame.cpp 2012-05-01 20:13:26.317980862 +0200 +@@ -363,42 +363,7 @@ + + case Splash: + { +- state = SinglePlayerPuzzle; +- int a = 1, b = 1; +- +- string file; +-#if defined(WIN32) || defined(_WIN32) +- file = CImgLoader::getPath() + "/progress.txt"; +-#else +- char *homedir = getenv("HOME"); +- if (homedir != NULL) +- { +- file = string(homedir) + "/.blocks-progress"; +- } +- else +- { +- file = "blocks-progress"; +- } +-#endif +- +- ifstream data( file.c_str() ); +- if (data) +- { +- data >> a; +- data >> b; +- } +- +- if (a != 1) +- { +- CTetrisTheme* tmptheme = new CTetrisTheme( stringify(a) ); +- CVector pos = fields[0]->getPos(); +- delete fields[0]; +- fields.clear(); +- fields.push_back(new CPlayingField(pos, *(tmptheme->getBlockSet()), tmptheme, 100) ); +- delete theme; +- theme = tmptheme; +- } +- fields[0]->load(a,b); ++ startGame(); + }break; + + default: +@@ -440,12 +405,68 @@ + case SinglePlayerPuzzle: + case SinglePlayer: + { ++ if (fields[0]->isGameOver()) ++ { ++ fields[0]->reLoadLevel(); ++ break; ++ } ++ + int x, y; + bool cords; + /*if ( (cords = fields[0]->boardCords(mouseloc, x, y)) && (fields[0]->blockExists(x, y) || fields[0]->blockExists(x+1, y))) + {*/ + fields[0]->swap(); + //} +- } ++ } break; ++ ++ case Loading: ++ { ++ state = SinglePlayerPuzzle; ++ } break; ++ ++ case Splash: ++ { ++ startGame(); ++ }break; + } + } ++ ++void CTetrisGame::startGame() ++{ ++ state = SinglePlayerPuzzle; ++ int a = 1, b = 1; ++ ++ string file; ++#if defined(WIN32) || defined(_WIN32) ++ file = CImgLoader::getPath() + "/progress.txt"; ++#else ++ char *homedir = getenv("HOME"); ++ if (homedir != NULL) ++ { ++ file = string(homedir) + "/.blocks-progress"; ++ } ++ else ++ { ++ file = "blocks-progress"; ++ } ++#endif ++ ++ ifstream data( file.c_str() ); ++ if (data) ++ { ++ data >> a; ++ data >> b; ++ } ++ ++ if (a != 1) ++ { ++ CTetrisTheme* tmptheme = new CTetrisTheme( stringify(a) ); ++ CVector pos = fields[0]->getPos(); ++ delete fields[0]; ++ fields.clear(); ++ fields.push_back(new CPlayingField(pos, *(tmptheme->getBlockSet()), tmptheme, 100) ); ++ delete theme; ++ theme = tmptheme; ++ } ++ fields[0]->load(a,b); ++} +Index: blocks-of-the-undead-1.0/TetrisAttack/src/CTetrisGame.h +=================================================================== +--- blocks-of-the-undead-1.0.orig/TetrisAttack/src/CTetrisGame.h 2005-01-17 05:49:02.000000000 +0100 ++++ blocks-of-the-undead-1.0/TetrisAttack/src/CTetrisGame.h 2012-05-01 20:13:26.317980862 +0200 +@@ -37,6 +37,7 @@ + void handleKeypress(const SDL_KeyboardEvent &e); + void handleMouseMotion(const SDL_MouseMotionEvent &e); + void handleMouseButton(const SDL_MouseButtonEvent &e); ++ void startGame(); + + vector fields; + list sprites; --- blocks-of-the-undead-1.0.orig/debian/patches/series +++ blocks-of-the-undead-1.0/debian/patches/series @@ -0,0 +1,4 @@ +01-sleep_a_bit.patch +02_accept_mousepress_as_anykey.patch +03_dont_fail_if_no_sound_available.patch +04_configure_vars.patch --- blocks-of-the-undead-1.0.orig/debian/patches/04_configure_vars.patch +++ blocks-of-the-undead-1.0/debian/patches/04_configure_vars.patch @@ -0,0 +1,16 @@ +Description: correct variable assignment to fix FTBFS +Author: Ilya Barygin + +Index: blocks-of-the-undead-1.0/configure +=================================================================== +--- blocks-of-the-undead-1.0.orig/configure 2005-06-24 06:17:13.000000000 +0200 ++++ blocks-of-the-undead-1.0/configure 2012-05-01 20:13:38.182068309 +0200 +@@ -3860,7 +3860,7 @@ + if test "x$no_sdl" = x ; then + echo "$as_me:$LINENO: result: yes" >&5 + echo "${ECHO_T}yes" >&6 +- CPPFLAGS=$SDL_CFLAGS $CPPFLAGS ++ CPPFLAGS="$SDL_CFLAGS $CPPFLAGS" + LIBS=$SDL_LIBS $LIBS + else + echo "$as_me:$LINENO: result: no" >&5 --- blocks-of-the-undead-1.0.orig/debian/patches/03_dont_fail_if_no_sound_available.patch +++ blocks-of-the-undead-1.0/debian/patches/03_dont_fail_if_no_sound_available.patch @@ -0,0 +1,91 @@ +From: Evgeni Golov +Subject: Don't fail if there is no sound available + This can happen when the user does not have enough rights to use the + soundcard or there is no soundcard at all in the machine. +Bug-Debian: http://bugs.debian.org/603440 + +Index: blocks-of-the-undead-1.0/Oodle/src/CSound.cpp +=================================================================== +--- blocks-of-the-undead-1.0.orig/Oodle/src/CSound.cpp 2005-01-16 21:20:00.000000000 +0100 ++++ blocks-of-the-undead-1.0/Oodle/src/CSound.cpp 2012-05-01 20:13:34.038037764 +0200 +@@ -6,13 +6,16 @@ + const char* f2 = file.c_str(); + data = Mix_LoadWAV( f2 ); + +- if (!data) +- _THROWEX(ex_sdl, "Failed to load sound", "CSound", "CSound", "snd = " << snd); ++ if (!data) { ++ LOG("Failed to load sound " << snd << ".", 1, LOG_INFO); ++ LOG("This is normal if \"CSoundSystem\" failed to load above.", 1, LOG_INFO); ++ } + } + + CSound::~CSound() + { +- Mix_FreeChunk(data); ++ if (data) ++ Mix_FreeChunk(data); + } + + void CSound::setChannel(int c) +@@ -28,4 +31,4 @@ + Mix_Chunk* CSound::getChunk() const + { + return data; +-} +\ No newline at end of file ++} +Index: blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.cpp +=================================================================== +--- blocks-of-the-undead-1.0.orig/Oodle/src/CSoundSystem.cpp 2005-01-16 21:20:00.000000000 +0100 ++++ blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.cpp 2012-05-01 20:13:34.038037764 +0200 +@@ -3,24 +3,28 @@ + CSoundSystem::CSoundSystem(int chunksize, int frequency, int channels, Uint16 format) + { + SDL_InitSubSystem(SDL_INIT_AUDIO); ++ soundAvailable = true; + if (Mix_OpenAudio(frequency, format, channels, chunksize)) + { +- _THROWEX(ex_sdl, "Failed to load sound subsystem", "CSoundSystem", "CSoundSystem", +- "frequency = " << frequency << ", chunksize = " << chunksize << ", " << +- "channels = " << channels << ", format = " << format); ++ soundAvailable = false; ++ LOG("Failed to load sound subsystem \"CSoundSystem\".", 1, LOG_ERROR); ++ LOG("You will not have any sound during the game.", 1, LOG_INFO); + } + } + + void CSoundSystem::playSound(CSound &snd) const + { +- snd.setChannel( Mix_PlayChannel(-1, snd.getChunk(), 0) ); ++ if (soundAvailable) ++ snd.setChannel( Mix_PlayChannel(-1, snd.getChunk(), 0) ); + } + void CSoundSystem::stopSound(const CSound &snd) const + { +- Mix_HaltChannel(snd.getChannel()); ++ if (soundAvailable) ++ Mix_HaltChannel(snd.getChannel()); + } + + CSoundSystem::~CSoundSystem() + { +- Mix_CloseAudio(); +-} +\ No newline at end of file ++ if (soundAvailable) ++ Mix_CloseAudio(); ++} +Index: blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.h +=================================================================== +--- blocks-of-the-undead-1.0.orig/Oodle/src/CSoundSystem.h 2005-01-17 05:48:19.000000000 +0100 ++++ blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.h 2012-05-01 20:13:34.038037764 +0200 +@@ -13,7 +13,7 @@ + void playSound(CSound &snd) const; + void stopSound(const CSound &snd) const; + private: +- ++ bool soundAvailable; + }; + + #endif --- blocks-of-the-undead-1.0.orig/debian/patches/01-sleep_a_bit.patch +++ blocks-of-the-undead-1.0/debian/patches/01-sleep_a_bit.patch @@ -0,0 +1,31 @@ +Description: Sleep between handling events + These can't accour that often and without a sleep we use way too much CPU. +Forwarded: no +Author: Evgeni Golov +Last-Update: 2012-05-01 + +Index: blocks-of-the-undead-1.0/TetrisAttack/src/CTetrisGame.cpp +=================================================================== +--- blocks-of-the-undead-1.0.orig/TetrisAttack/src/CTetrisGame.cpp 2005-01-17 05:49:02.000000000 +0100 ++++ blocks-of-the-undead-1.0/TetrisAttack/src/CTetrisGame.cpp 2012-05-01 20:13:20.321936666 +0200 +@@ -1,3 +1,4 @@ ++#include + #include "tetris.h" + + CTetrisGame::CTetrisGame(int screenX, int screenY, int bitDepth, bool fullscreen, CTetrisTheme *theme, const list &fieldOffsets) +@@ -159,6 +160,7 @@ + while (!done && SDL_PollEvent(&event)) + { + handleEvent(event); ++ usleep(200); + } + + switch(state) +@@ -281,6 +283,7 @@ + ct = 0; + (static_cast (*(sprites.begin())))->setText(ss.str()); + }*/ ++ usleep(3000); + } + + return true; --- blocks-of-the-undead-1.0.orig/debian/source/format +++ blocks-of-the-undead-1.0/debian/source/format @@ -0,0 +1 @@ +1.0