diff --git a/games-puzzle/zaz/patches/zaz-1.0.0.patchset b/games-puzzle/zaz/patches/zaz-1.0.0.patchset new file mode 100644 index 000000000..45b08abe8 --- /dev/null +++ b/games-puzzle/zaz/patches/zaz-1.0.0.patchset @@ -0,0 +1,223 @@ +From 51dd25b58ac5d4d82363d24707087f68e97505c8 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Thu, 12 Nov 2015 22:10:00 +0100 +Subject: Fix detection of freetype. + + +diff --git a/configure.ac b/configure.ac +index c1fa529..93ed5de 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -12,6 +12,7 @@ AC_PROG_RANLIB + + PKG_CHECK_MODULES(ZAZ, [sdl vorbisfile theoraenc theoradec]) + PKG_CHECK_MODULES(FTGL, ftgl >= 2.1.3) ++PKG_CHECK_MODULES(FREETYPE, freetype2) + + AC_CHECK_LIB(SDL_image, IMG_Load, [], AC_MSG_ERROR(no SDL_image found)) + AC_CHECK_LIB(vorbisenc, vorbis_encode_init, [], AC_MSG_ERROR(no vorbisenc found)) +diff --git a/src/Makefile.am b/src/Makefile.am +index 0028693..83e4dd6 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -2,9 +2,7 @@ AM_CPPFLAGS = \ + -DPACKAGE_LOCALE_DIR=\""$(localedir)"\" \ + -DPACKAGE_SRC_DIR=\""$(srcdir)"\" \ + -DPACKAGE_DATA_DIR=\""$(datadir)"\"\ +- -I/usr/include/freetype2\ +- -DENABLE_SPLASH=$(enable_splash) +- $(FTGL_CFLAGS) ++ -DENABLE_SPLASH=$(enable_splash) $(FTGL_CFLAGS) $(FREETYPE_FLAGS) + + AM_CFLAGS =\ + -Wall\ +@@ -75,5 +73,5 @@ zaz_SOURCES = \ + + zaz_LDFLAGS = + +-zaz_LDADD = $(ZAZ_LIBS) $(FTGL_LIBS) $(GL_LIBS) @LIBINTL@ ++zaz_LDADD = $(ZAZ_LIBS) $(FTGL_LIBS) $(FREETYPE_LIBS) $(GL_LIBS) @LIBINTL@ + +-- +2.7.0 + + +From ba691e12784d6fbb2d3bdafdb2c49ee48a1c66a9 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Thu, 12 Nov 2015 22:10:15 +0100 +Subject: Fix line endings. + + +diff --git a/src/settings.cpp b/src/settings.cpp +index ff1c002..9334aa3 100755 +--- a/src/settings.cpp ++++ b/src/settings.cpp +@@ -27,10 +27,11 @@ + + #ifdef WIN32 + #include +-#include #endif ++#include ++#endif + + #ifndef WIN32 +-#include ++#include + #endif + + using namespace std; +@@ -38,7 +39,8 @@ using namespace std; + struct langlist_tag + { + const char *name; +- const char *description; Uint16 lid; ++ const char *description; ++ Uint16 lid; + }; + + struct langlist_tag langlist[] = +@@ -162,7 +164,8 @@ string Settings::getHighscoreFileName(void) + { + return getDefaultDirectory() + SEPARATOR + HIGHSCORE_FILENAME; + } +- Settings::Settings(string fileName) ++ ++Settings::Settings(string fileName) + : fileNameInUse(fileName) + { + forcedDir = NULL; +@@ -220,8 +223,10 @@ string Settings::getHighscoreFileName(void) + languageFromEnv = lng; + } + } +- #ifdef WIN32 +- LANGID lid = GetUserDefaultUILanguage(); for (int l =0; langlist[l].name != NULL; l++) { if (langlist[l].lid == (0xFF & lid)) languageFromEnv = langlist[l].name; } #endif //WIN32 if (!languageFromEnv.size()) languageFromEnv = "en"; setLanguage(get("language", languageFromEnv)); ++#ifdef WIN32 ++ LANGID lid = GetUserDefaultUILanguage(); for (int l =0; langlist[l].name != NULL; l++) { if (langlist[l].lid == (0xFF & lid)) languageFromEnv = langlist[l].name; } ++#endif //WIN32 ++ if (!languageFromEnv.size()) languageFromEnv = "en"; setLanguage(get("language", languageFromEnv)); + #endif //ENABLE_NLS + } + +@@ -262,7 +267,7 @@ string Settings::W32_GetFileName(string phname) + wchar_t wfn[MAX_PATH]; + wchar_t pthname[MAX_PATH]; + char shrt[MAX_PATH]; +- MultiByteToWideChar(CP_UTF8, 0, phname.c_str(), -1, wfn, MAX_PATH); ++ MultiByteToWideChar(CP_UTF8, 0, phname.c_str(), -1, wfn, MAX_PATH); + if (GetShortPathNameW(wfn, pthname, MAX_PATH) > 0) + { + WideCharToMultiByte(CP_UTF8, 0, pthname, -1, shrt, MAX_PATH, NULL, NULL); +-- +2.7.0 + + +From 4a7da1976fcaf80687dce6350046dd9c4c13a4a8 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 24 Jan 2016 17:23:59 +0100 +Subject: gcc2 hacks. + + +diff --git a/src/hiscores.cpp b/src/hiscores.cpp +index 17c1663..f1efb36 100644 +--- a/src/hiscores.cpp ++++ b/src/hiscores.cpp +@@ -364,7 +364,7 @@ vector HiScores::GenerateReport(int entriesPerPage) + stringstream ln; + ln.clear(); + ln << setw(7) << s->score; +- ln << " " << setw(12) << left << trimUtf8(s->name, 12) << " " << _(s->level.c_str()); ++ ln << " " << setw(12) << trimUtf8(s->name, 12) << " " << _(s->level.c_str()); + pag.lines.push_back(ln.str()); + lines++; + +@@ -388,7 +388,7 @@ vector HiScores::GenerateReport(int entriesPerPage) + ln.clear(); + sprintf(tm, "%02d:%02d", s->score / 60, s->score%60); + ln << setw(7) << tm; +- ln << " " << setw(12) << left << trimUtf8(s->name, 12) << " " << _(s->level.c_str()); ++ ln << " " << setw(12) << trimUtf8(s->name, 12) << " " << _(s->level.c_str()); + pag.lines.push_back(ln.str()); + lines++; + +@@ -410,7 +410,7 @@ vector HiScores::GenerateReport(int entriesPerPage) + stringstream ln; + ln.clear(); + ln << setw(7) << s->score; +- ln << " " << setw(12) << left << trimUtf8(s->name, 12) << " " << _(s->level.c_str()); ++ ln << " " << setw(12) << trimUtf8(s->name, 12) << " " << _(s->level.c_str()); + pag.lines.push_back(ln.str()); + lines++; + +diff --git a/src/level.cpp b/src/level.cpp +index 9cce170..78ab94b 100644 +--- a/src/level.cpp ++++ b/src/level.cpp +@@ -256,16 +256,17 @@ void Level::LoadData(const char *philename) + } + + // loop ++ int tmp; + getline(in, l); + sl.clear(); + sl.str(l); +- sl >> loop; ++ sl >> tmp; loop = tmp; + + // invert + getline(in, l); + sl.clear(); + sl.str(l); +- sl >> invert; ++ sl >> tmp; invert = tmp; + + FixData(); + +@@ -417,7 +418,7 @@ void Level::LoadData(const char *philename) + { + sl.clear(); + sl.str(l); +- sl >> kidsMode; ++ sl >> tmp; kidsMode = tmp; + } + + // ballsizes +diff --git a/src/settings.cpp b/src/settings.cpp +index 9334aa3..016c029 100755 +--- a/src/settings.cpp ++++ b/src/settings.cpp +@@ -219,7 +219,7 @@ Settings::Settings(string fileName) + { + string lng = iter->first; + if (l >= lng.size()) +- if (lng.compare(0, lng.size(), envLang, 0, lng.size()) == 0) ++ if (lng.compare(0, lng.size(), envLang) == 0) + languageFromEnv = lng; + } + } +-- +2.7.0 + + +From daf0cab3fbd760a3a379523ab8d770bb41608b1d Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sun, 24 Jan 2016 17:38:11 +0100 +Subject: Look for libvorbis. + + +diff --git a/configure.ac b/configure.ac +index 93ed5de..89f85c2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -10,7 +10,7 @@ AM_PROG_CC_STDC + AC_HEADER_STDC + AC_PROG_RANLIB + +-PKG_CHECK_MODULES(ZAZ, [sdl vorbisfile theoraenc theoradec]) ++PKG_CHECK_MODULES(ZAZ, [sdl vorbis vorbisfile theoraenc theoradec]) + PKG_CHECK_MODULES(FTGL, ftgl >= 2.1.3) + PKG_CHECK_MODULES(FREETYPE, freetype2) + +-- +2.7.0 + diff --git a/games-puzzle/zaz/zaz-1.0.0.recipe b/games-puzzle/zaz/zaz-1.0.0.recipe new file mode 100644 index 000000000..cd58fb773 --- /dev/null +++ b/games-puzzle/zaz/zaz-1.0.0.recipe @@ -0,0 +1,89 @@ +SUMMARY="Beacuse hackers too need to play with balls" +DESCRIPTION="Zaz is a game where the player has to get rid of incoming balls \ +by arranging them in triplets. The idea of the game is loosely based on games \ +like Luxor, Zuma and Puzzle Bobble. The twists that make Zaz stand out from \ +other games of this type are that the balls have to be picked from the path \ +(insted of being randomly assigned for the player) and that the player's +\"vehicle\" is also attached to a path which is different from level to level. + +But one thing makes this game stand out most from it's predecessors - it's \ +free as in freedom ! You are free to download it, free to play it, free to \ +modify, love and hate it." +HOMEPAGE="http://zaz.sourceforge.net" +SOURCE_URI="http://sourceforge.net/projects/zaz/files/zaz-$portVersion.tar.bz2" +CHECKSUM_SHA256="e332cc1a6559e18a2b632940c53d20e2f2d2b583ba9dc1fd02a586437f9f0397" +PATCHES="zaz$portVersion.patchset" +REVISION="1" + +ARCHITECTURES="x86_gcc2" + +PROVIDES=" + zaz = $portVersion + cmd:zaz +" + +REQUIRES=" + haiku + lib:libSDL_1.2 + lib:libvorbis + lib:libvorbisfile + lib:libtheoraenc + lib:libtheoradec + lib:libogg + lib:libftgl + lib:libfreetype + lib:libintl + lib:libGL + lib:libvorbisenc + lib:libSDL_image_1.2 +" + +BUILD_REQUIRES=" + haiku_devel + devel:libftgl + devel:libintl + devel:libsdl + devel:libsdl_image + devel:libogg + devel:libtheoradec + devel:libtheoraenc + devel:libvorbisfile +" + +BUILD_PREREQUIRES=" + cmd:aclocal + cmd:autoconf + cmd:automake + cmd:awk + cmd:find + cmd:gcc + cmd:make + cmd:pkg_config +" + +DEPEND=" + media-libs/sdl-image >= 1.2.10 +" + +BUILD() { + # Gettextize wants the user to press enter after running it, remove that + # "feature" from it... + grep -v '/dev/tty' < /bin/gettextize > gettextize + chmod +x gettextize + +#libtoolize --force --copy --install + automake --add-missing + aclocal + ./gettextize -f + autoconf + automake + runConfigure ./configure + make $jobArgs +} + +INSTALL() { + make install +} + +COPYRIGHT="2009-2010 Remigiusz Dybka, Leonard Ritter and Kinga Dybka" +LICENSE="GNU GPL v3"