diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /games-action/maelstrom | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'games-action/maelstrom')
-rw-r--r-- | games-action/maelstrom/Manifest | 1 | ||||
-rw-r--r-- | games-action/maelstrom/files/maelstrom-3.0.6-64bits.patch | 15 | ||||
-rw-r--r-- | games-action/maelstrom/files/maelstrom-3.0.6-gcc34.patch | 30 | ||||
-rw-r--r-- | games-action/maelstrom/files/maelstrom-3.0.6-r1-security.patch | 380 | ||||
-rw-r--r-- | games-action/maelstrom/files/maelstrom-3.0.6-security.patch | 380 | ||||
-rw-r--r-- | games-action/maelstrom/files/maelstrom-3.0.6-warnings.patch | 20 | ||||
-rw-r--r-- | games-action/maelstrom/files/maelstrom-gcc34.patch | 30 | ||||
-rw-r--r-- | games-action/maelstrom/maelstrom-3.0.6-r2.ebuild | 60 | ||||
-rw-r--r-- | games-action/maelstrom/metadata.xml | 5 |
9 files changed, 921 insertions, 0 deletions
diff --git a/games-action/maelstrom/Manifest b/games-action/maelstrom/Manifest new file mode 100644 index 000000000000..06f2c6b0c30c --- /dev/null +++ b/games-action/maelstrom/Manifest @@ -0,0 +1 @@ +DIST Maelstrom-3.0.6.tar.gz 1007421 SHA256 bb6ca1952d1080e25f8716a2d08a4241614ee72d54f13c8a60eecadf7ea6198d SHA512 fecd2411f5d2109aa99e5a6c65702c74f9f79326fc9f074a53005238c846780f231776b9c170ceb54b0470894b856abaa4708c59afd912fa5b2868e6776893ca WHIRLPOOL 36e9266a246a9bd55923e81e89d6a59956d3f7c15d8231b2973c8b1c77280828b7508cbc1978ea069a7149a1b4e2ba2de2f8debd8da55c0c082f125039d60829 diff --git a/games-action/maelstrom/files/maelstrom-3.0.6-64bits.patch b/games-action/maelstrom/files/maelstrom-3.0.6-64bits.patch new file mode 100644 index 000000000000..bdf04d3ad30d --- /dev/null +++ b/games-action/maelstrom/files/maelstrom-3.0.6-64bits.patch @@ -0,0 +1,15 @@ +--- screenlib/SDL_FrameBuf.cpp.old 2006-10-25 22:37:21.000000000 +0200 ++++ screenlib/SDL_FrameBuf.cpp 2006-10-25 22:38:26.000000000 +0200 +@@ -847,10 +847,8 @@ + /* Update the dirty rectangle map with the new list */ + for ( i=0; i<dirtymaplen; ++i ) { + if ( dirtymap[i] != NULL ) { +- dirtymap[i] = (SDL_Rect *)( +- ((int)dirtymap[i]-(int)updatelist) + +- (int)newlist +- ); ++ dirtymap[i] = newlist ++ + (dirtymap[i]-updatelist); + } + } + delete[] updatelist; diff --git a/games-action/maelstrom/files/maelstrom-3.0.6-gcc34.patch b/games-action/maelstrom/files/maelstrom-3.0.6-gcc34.patch new file mode 100644 index 000000000000..6ceb421f16ba --- /dev/null +++ b/games-action/maelstrom/files/maelstrom-3.0.6-gcc34.patch @@ -0,0 +1,30 @@ +diff -ur Maelstrom-3.0.6-orig/buttonlist.h Maelstrom-3.0.6/buttonlist.h +--- Maelstrom-3.0.6-orig/buttonlist.h 2004-08-28 01:43:55.867378220 -0400 ++++ Maelstrom-3.0.6/buttonlist.h 2004-08-28 01:44:23.700062593 -0400 +@@ -16,7 +16,7 @@ + + void Add_Button(Uint16 x, Uint16 y, Uint16 width, Uint16 height, + void (*callback)(void)) { +- struct button *belem; ++ button *belem; + + for ( belem=&button_list; belem->next; belem=belem->next ); + belem->next = new button; +@@ -30,7 +30,7 @@ + } + + void Activate_Button(Uint16 x, Uint16 y) { +- struct button *belem; ++ button *belem; + + for ( belem=button_list.next; belem; belem=belem->next ) { + if ( (x >= belem->x1) && (x <= belem->x2) && +@@ -42,7 +42,7 @@ + } + + void Delete_Buttons(void) { +- struct button *belem, *btemp; ++ button *belem, *btemp; + + for ( belem=button_list.next; belem; ) { + btemp = belem; diff --git a/games-action/maelstrom/files/maelstrom-3.0.6-r1-security.patch b/games-action/maelstrom/files/maelstrom-3.0.6-r1-security.patch new file mode 100644 index 000000000000..ae22c0cdd11a --- /dev/null +++ b/games-action/maelstrom/files/maelstrom-3.0.6-r1-security.patch @@ -0,0 +1,380 @@ +diff -ur Maelstrom-3.0.6-orig/controls.cpp Maelstrom-3.0.6/controls.cpp +--- Maelstrom-3.0.6-orig/controls.cpp 2001-03-25 03:04:28 +0900 ++++ Maelstrom-3.0.6/controls.cpp 2003-05-21 11:25:53 +0900 +@@ -83,7 +83,7 @@ + if ( fname ) { + *fname = datafile; + } +- sprintf(datafile, "%s"DIR_SEP"%s", home, MAELSTROM_DATA); ++ snprintf(datafile, sizeof(datafile), "%s"DIR_SEP"%s", home, MAELSTROM_DATA); + if ( (data=fopen(datafile, mode)) == NULL ) + return(NULL); + return(data); +diff -ur Maelstrom-3.0.6-orig/dialog.h Maelstrom-3.0.6/dialog.h +--- Maelstrom-3.0.6-orig/dialog.h 2001-07-21 00:08:10 +0900 ++++ Maelstrom-3.0.6/dialog.h 2003-05-21 11:24:33 +0900 +@@ -92,7 +92,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +@@ -878,7 +878,7 @@ + if ( entry->text ) { + Fontserv->FreeText(entry->text); + } +- sprintf(buf, "%d", *entry->variable); ++ snprintf(buf, sizeof(buf), "%d", *entry->variable); + + if ( entry->hilite ) { + clear = Fg; +diff -ur Maelstrom-3.0.6-orig/load.cpp Maelstrom-3.0.6/load.cpp +--- Maelstrom-3.0.6-orig/load.cpp 2000-02-15 11:47:39 +0900 ++++ Maelstrom-3.0.6/load.cpp 2003-05-21 11:26:18 +0900 +@@ -81,7 +81,7 @@ + SDL_Surface *bmp, *title; + + /* Open the title file -- we know its colormap is our global one */ +- sprintf(file, "Images"DIR_SEP"Maelstrom_Titles#%d.bmp", title_id); ++ snprintf(file, sizeof(file), "Images"DIR_SEP"Maelstrom_Titles#%d.bmp", title_id); + bmp = SDL_LoadBMP(path.Path(file)); + if ( bmp == NULL ) { + return(NULL); +@@ -103,7 +103,7 @@ + Uint16 w, h; + + /* Open the cicn sprite file.. */ +- sprintf(file, "Images"DIR_SEP"Maelstrom_Icon#%hd.cicn", cicn_id); ++ snprintf(file, sizeof(file), "Images"DIR_SEP"Maelstrom_Icon#%hd.cicn", cicn_id); + if ( (cicn_src=SDL_RWFromFile(path.Path(file), "r")) == NULL ) { + error("GetCIcon(%hd): Can't open CICN %s: ", + cicn_id, path.Path(file)); +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_FontServ.h Maelstrom-3.0.6/maclib/Mac_FontServ.h +--- Maelstrom-3.0.6-orig/maclib/Mac_FontServ.h 1999-12-03 02:15:33 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_FontServ.h 2003-05-21 11:28:43 +0900 +@@ -135,7 +135,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_Resource.h Maelstrom-3.0.6/maclib/Mac_Resource.h +--- Maelstrom-3.0.6-orig/maclib/Mac_Resource.h 1999-12-04 03:01:47 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_Resource.h 2003-05-21 11:28:35 +0900 +@@ -96,7 +96,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_Sound.h Maelstrom-3.0.6/maclib/Mac_Sound.h +--- Maelstrom-3.0.6-orig/maclib/Mac_Sound.h 2002-10-20 11:53:34 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_Sound.h 2003-05-21 11:28:27 +0900 +@@ -199,7 +199,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_Wave.h Maelstrom-3.0.6/maclib/Mac_Wave.h +--- Maelstrom-3.0.6-orig/maclib/Mac_Wave.h 2000-01-26 01:44:10 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_Wave.h 2003-05-21 11:28:20 +0900 +@@ -108,7 +108,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/macres.cpp Maelstrom-3.0.6/maclib/macres.cpp +--- Maelstrom-3.0.6-orig/maclib/macres.cpp 2000-01-26 01:44:20 +0900 ++++ Maelstrom-3.0.6/maclib/macres.cpp 2003-05-21 11:30:01 +0900 +@@ -58,8 +58,8 @@ + ids[j], res->ResourceName(types[i], ids[j])); + if ( argv[2] ) { + char path[23]; +- sprintf(path,"%s/%s:%hu", argv[2], +- types[i], ids[j]); ++ snprintf(path, sizeof(path), "%s/%s:%hu", ++ argv[2], types[i], ids[j]); + FILE *output; + Mac_ResData *D; + if ( (output=fopen(path, "w")) != NULL ) { +diff -ur Maelstrom-3.0.6-orig/maclib/snd2wav.cpp Maelstrom-3.0.6/maclib/snd2wav.cpp +--- Maelstrom-3.0.6-orig/maclib/snd2wav.cpp 2001-03-28 12:54:50 +0900 ++++ Maelstrom-3.0.6/maclib/snd2wav.cpp 2003-05-21 11:29:23 +0900 +@@ -82,7 +82,7 @@ + continue; + } + wave.Load(snd, rate); +- sprintf(wavname, "snd_%d.wav", ids[i]); ++ snprintf(wavname, sizeof(wavname), "snd_%d.wav", ids[i]); + wave.Save(wavname); + } + delete macx; +diff -ur Maelstrom-3.0.6-orig/main.cpp Maelstrom-3.0.6/main.cpp +--- Maelstrom-3.0.6-orig/main.cpp 2002-10-20 11:53:32 +0900 ++++ Maelstrom-3.0.6/main.cpp 2003-05-21 11:27:02 +0900 +@@ -445,7 +445,7 @@ + DrawText(xOff+309-7, yOff+240-6, text, geneva, STYLE_BOLD, + 0x00, 0x00, 0x00); + } +- sprintf(text, "%d", gSoundLevel); ++ snprintf(text, sizeof(text), "%d", gSoundLevel); + DrawText(xOff+309-7, yOff+240-6, text, geneva, STYLE_BOLD, + 30000>>8, 30000>>8, 0xFF); + screen->Update(); +@@ -547,11 +547,11 @@ + } + DrawText(xOff+5, botDiv+42+(index*18), hScores[index].name, + font, STYLE_BOLD, R, G, B); +- sprintf(buffer, "%u", hScores[index].score); ++ snprintf(buffer, sizeof(buffer), "%u", hScores[index].score); + sw = fontserv->TextWidth(buffer, font, STYLE_BOLD); + DrawText(sRt-sw, botDiv+42+(index*18), buffer, + font, STYLE_BOLD, R, G, B); +- sprintf(buffer, "%u", hScores[index].wave); ++ snprintf(buffer, sizeof(buffer), "%u", hScores[index].wave); + sw = fontserv->TextWidth(buffer, font, STYLE_BOLD); + DrawText(wRt-sw, botDiv+42+(index*18), buffer, + font, STYLE_BOLD, R, G, B); +@@ -560,7 +560,7 @@ + + DrawText(xOff+5, botDiv+46+(10*18)+3, "Last Score: ", + bigfont, STYLE_NORM, 0xFF, 0xFF, 0xFF); +- sprintf(buffer, "%d", GetScore()); ++ snprintf(buffer, sizeof(buffer), "%d", GetScore()); + sw = fontserv->TextWidth("Last Score: ", bigfont, STYLE_NORM); + DrawText(xOff+5+sw, botDiv+46+(index*18)+3, buffer, + bigfont, STYLE_NORM, 0xFF, 0xFF, 0xFF); +diff -ur Maelstrom-3.0.6-orig/myerror.cpp Maelstrom-3.0.6/myerror.cpp +--- Maelstrom-3.0.6-orig/myerror.cpp 1998-07-14 10:50:17 +0900 ++++ Maelstrom-3.0.6/myerror.cpp 2003-05-21 11:23:33 +0900 +@@ -16,7 +16,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(mesg, fmt, ap); ++ vsnprintf(mesg, sizeof(mesg), fmt, ap); + fputs(mesg, stderr); + va_end(ap); + } +@@ -27,7 +27,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(mesg, fmt, ap); ++ vsnprintf(mesg, sizeof(mesg), fmt, ap); + fputs(mesg, stdout); + va_end(ap); + } +@@ -37,7 +37,7 @@ + char buffer[BUFSIZ]; + + if ( *msg ) { +- sprintf(buffer, "%s: %s\n", msg, strerror(errno)); ++ snprintf(buffer, sizeof(buffer), "%s: %s\n", msg, strerror(errno)); + error(buffer); + } else + error((char *)strerror(errno)); +diff -ur Maelstrom-3.0.6-orig/netlogic/game.cpp Maelstrom-3.0.6/netlogic/game.cpp +--- Maelstrom-3.0.6-orig/netlogic/game.cpp 2001-07-23 11:24:03 +0900 ++++ Maelstrom-3.0.6/netlogic/game.cpp 2003-05-21 11:33:19 +0900 +@@ -232,7 +232,7 @@ + + lastDisplayed = gDisplayed; + screen->FillRect(0, 0, SCREEN_WIDTH, 12, ourBlack); +- sprintf(caption, ++ snprintf(caption, sizeof(caption), + "You are player %d --- displaying player %d", + gOurPlayer+1, gDisplayed+1); + DrawText(SPRITES_WIDTH, 11, caption, geneva, +@@ -357,7 +357,7 @@ + /* -- Erase old and draw new score */ + screen->FillRect(45, gStatusLine+1, + score_width, text_height, ourBlack); +- sprintf(numbuf, "%d", Score); ++ snprintf(numbuf, sizeof(numbuf), "%d", Score); + score_width = DrawText(45, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -380,7 +380,7 @@ + if (lastWave != gWave) { + screen->FillRect(255, gStatusLine+1, + wave_width, text_height, ourBlack); +- sprintf(numbuf, "%d", gWave); ++ snprintf(numbuf, sizeof(numbuf), "%d", gWave); + wave_width = DrawText(255, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -391,7 +391,7 @@ + if (lastLives != Lives) { + screen->FillRect(319, gStatusLine+1, + lives_width, text_height, ourBlack); +- sprintf(numbuf, "%-3.1d", Lives); ++ snprintf(numbuf, sizeof(numbuf), "%-3.1d", Lives); + lives_width = DrawText(319, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -402,7 +402,7 @@ + if (lastBonus != Bonus) { + screen->FillRect(384, gStatusLine+1, + bonus_width, text_height, ourBlack); +- sprintf(numbuf, "%-7.1d", Bonus); ++ snprintf(numbuf, sizeof(numbuf), "%-7.1d", Bonus); + bonus_width = DrawText(384, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -414,7 +414,7 @@ + if (lastFrags != Frags) { + screen->FillRect(fragoff, gStatusLine+1, + frags_width, text_height, ourBlack); +- sprintf(numbuf, "%-3.1d", Frags); ++ snprintf(numbuf, sizeof(numbuf), "%-3.1d", Frags); + frags_width = DrawText(fragoff, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -747,10 +747,11 @@ + for ( i=0; i<gNumPlayers; ++i ) { + char buffer[BUFSIZ], num1[12], num2[12]; + +- sprintf(num1, "%7.1d", final[i].Score); +- sprintf(num2, "%3.1d", final[i].Frags); +- sprintf(buffer, "Player %d: %-.7s Points, %-.3s Frags", +- final[i].Player, num1, num2); ++ snprintf(num1, sizeof(num1), "%7.1d", final[i].Score); ++ snprintf(num2, sizeof(num2), "%3.1d", final[i].Frags); ++ snprintf(buffer, sizeof(buffer), ++ "Player %d: %-.7s Points, %-.3s Frags", ++ final[i].Player, num1, num2); + DrawText(160, 380+i*newyork_height, buffer, + newyork, STYLE_NORM, 30000>>8, 30000>>8, 0xFF); + } +@@ -898,7 +899,7 @@ + + + /* -- Draw the wave completed message */ +- sprintf(numbuf, "Wave %d completed.", gWave); ++ snprintf(numbuf, sizeof(numbuf), "Wave %d completed.", gWave); + sw = fontserv->TextWidth(numbuf, geneva, STYLE_BOLD); + x = (SCREEN_WIDTH - sw) / 2; + DrawText(x, 150, numbuf, geneva, STYLE_BOLD, 0xFF, 0xFF, 0x00); +@@ -935,7 +936,7 @@ + if (OurShip->GetBonusMult() != 1) { + SDL_Surface *sprite; + +- sprintf(numbuf, "%-5.1d", OurShip->GetBonus()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetBonus()); + DrawText(x, 200, numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); + x += 75; +@@ -951,10 +952,10 @@ + Delay(SOUND_DELAY); + sound->PlaySound(gFunk, 5); + +- sprintf(numbuf, "%-5.1d", OurShip->GetBonus()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetBonus()); + bonus_width = DrawText(x, 200, numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +- sprintf(numbuf, "%-5.1d", OurShip->GetScore()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetScore()); + score_width = DrawText(xt, 220, numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); + screen->Update(); +@@ -997,12 +998,12 @@ + + screen->FillRect(x, 200-text_height+2, + bonus_width, text_height, ourBlack); +- sprintf(numbuf, "%-5.1d", OurShip->GetBonus()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetBonus()); + bonus_width = DrawText(x, 200, numbuf, + geneva, STYLE_BOLD, 0xFF, 0xFF, 0xFF); + screen->FillRect(xt, 220-text_height+2, + score_width, text_height, ourBlack); +- sprintf(numbuf, "%-5.1d", OurShip->GetScore()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetScore()); + score_width = DrawText(xt, 220, numbuf, + geneva, STYLE_BOLD, 0xFF, 0xFF, 0xFF); + +@@ -1015,7 +1016,7 @@ + HandleEvents(10); + + /* -- Draw the "next wave" message */ +- sprintf(numbuf, "Prepare for Wave %d...", gWave+1); ++ snprintf(numbuf, sizeof(numbuf), "Prepare for Wave %d...", gWave+1); + sw = fontserv->TextWidth(numbuf, geneva, STYLE_BOLD); + x = (SCREEN_WIDTH - sw)/2; + DrawText(x, 259, numbuf, geneva, STYLE_BOLD, 0xFF, 0xFF, 0x00); +diff -ur Maelstrom-3.0.6-orig/netlogic/netplay.cpp Maelstrom-3.0.6/netlogic/netplay.cpp +--- Maelstrom-3.0.6-orig/netlogic/netplay.cpp 2002-10-20 13:11:52 +0900 ++++ Maelstrom-3.0.6/netlogic/netplay.cpp 2003-05-21 11:31:43 +0900 +@@ -670,7 +670,9 @@ + strcpy(message, "Waiting for players:"); + for ( i=0; i<gNumPlayers; ++i ) { + if ( ! acked[i] ) +- sprintf(&message[strlen(message)], " %d", i+1); ++ snprintf(&message[strlen(message)], ++ sizeof(message)-strlen(message), ++ " %d", i+1); + } + Message(message); + +@@ -725,7 +727,7 @@ + /* Check the player... */ + if ( (i != gOurPlayer) && (netbuf[1] == gOurPlayer) ) { + /* Print message, sleep 3 seconds absolutely */ +- sprintf(message, ++ snprintf(message, sizeof(message), + "Error: Another player (%d) thinks they are player 1!\r\n", i+1); + ErrorMessage(message); + /* Suck up retransmission packets */ +diff -ur Maelstrom-3.0.6-orig/netscore.cpp Maelstrom-3.0.6/netscore.cpp +--- Maelstrom-3.0.6-orig/netscore.cpp 2001-07-23 12:25:17 +0900 ++++ Maelstrom-3.0.6/netscore.cpp 2003-05-21 11:27:18 +0900 +@@ -59,7 +59,7 @@ + + /* Send the scores */ + crc = get_checksum(key, KEY_LEN); +- sprintf(netbuf, SCOREFMT, crc, high.name, high.score, high.wave); ++ snprintf(netbuf, sizeof(netbuf), SCOREFMT, crc, high.name, high.score, high.wave); + SDLNet_TCP_Send(remote, netbuf, strlen(netbuf)); + n = SDLNet_TCP_Recv(remote, netbuf, 1024); + if ( n > 0 ) { +diff -ur Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.cpp Maelstrom-3.0.6/screenlib/SDL_FrameBuf.cpp +--- Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.cpp 2001-07-23 06:03:13 +0900 ++++ Maelstrom-3.0.6/screenlib/SDL_FrameBuf.cpp 2003-05-21 11:31:01 +0900 +@@ -628,7 +628,7 @@ + + found = 0; + for ( which=0; !found; ++which ) { +- sprintf(file, "%s%d.bmp", prefix, which); ++ snprintf(file, sizeof(file), "%s%d.bmp", prefix, which); + if ( ((fp=fopen(file, "r")) == NULL) && + ((fp=fopen(file, "w")) != NULL) ) { + found = 1; +diff -ur Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.h Maelstrom-3.0.6/screenlib/SDL_FrameBuf.h +--- Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.h 2000-09-25 02:55:39 +0900 ++++ Maelstrom-3.0.6/screenlib/SDL_FrameBuf.h 2003-05-21 11:27:41 +0900 +@@ -165,7 +165,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } diff --git a/games-action/maelstrom/files/maelstrom-3.0.6-security.patch b/games-action/maelstrom/files/maelstrom-3.0.6-security.patch new file mode 100644 index 000000000000..ae22c0cdd11a --- /dev/null +++ b/games-action/maelstrom/files/maelstrom-3.0.6-security.patch @@ -0,0 +1,380 @@ +diff -ur Maelstrom-3.0.6-orig/controls.cpp Maelstrom-3.0.6/controls.cpp +--- Maelstrom-3.0.6-orig/controls.cpp 2001-03-25 03:04:28 +0900 ++++ Maelstrom-3.0.6/controls.cpp 2003-05-21 11:25:53 +0900 +@@ -83,7 +83,7 @@ + if ( fname ) { + *fname = datafile; + } +- sprintf(datafile, "%s"DIR_SEP"%s", home, MAELSTROM_DATA); ++ snprintf(datafile, sizeof(datafile), "%s"DIR_SEP"%s", home, MAELSTROM_DATA); + if ( (data=fopen(datafile, mode)) == NULL ) + return(NULL); + return(data); +diff -ur Maelstrom-3.0.6-orig/dialog.h Maelstrom-3.0.6/dialog.h +--- Maelstrom-3.0.6-orig/dialog.h 2001-07-21 00:08:10 +0900 ++++ Maelstrom-3.0.6/dialog.h 2003-05-21 11:24:33 +0900 +@@ -92,7 +92,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +@@ -878,7 +878,7 @@ + if ( entry->text ) { + Fontserv->FreeText(entry->text); + } +- sprintf(buf, "%d", *entry->variable); ++ snprintf(buf, sizeof(buf), "%d", *entry->variable); + + if ( entry->hilite ) { + clear = Fg; +diff -ur Maelstrom-3.0.6-orig/load.cpp Maelstrom-3.0.6/load.cpp +--- Maelstrom-3.0.6-orig/load.cpp 2000-02-15 11:47:39 +0900 ++++ Maelstrom-3.0.6/load.cpp 2003-05-21 11:26:18 +0900 +@@ -81,7 +81,7 @@ + SDL_Surface *bmp, *title; + + /* Open the title file -- we know its colormap is our global one */ +- sprintf(file, "Images"DIR_SEP"Maelstrom_Titles#%d.bmp", title_id); ++ snprintf(file, sizeof(file), "Images"DIR_SEP"Maelstrom_Titles#%d.bmp", title_id); + bmp = SDL_LoadBMP(path.Path(file)); + if ( bmp == NULL ) { + return(NULL); +@@ -103,7 +103,7 @@ + Uint16 w, h; + + /* Open the cicn sprite file.. */ +- sprintf(file, "Images"DIR_SEP"Maelstrom_Icon#%hd.cicn", cicn_id); ++ snprintf(file, sizeof(file), "Images"DIR_SEP"Maelstrom_Icon#%hd.cicn", cicn_id); + if ( (cicn_src=SDL_RWFromFile(path.Path(file), "r")) == NULL ) { + error("GetCIcon(%hd): Can't open CICN %s: ", + cicn_id, path.Path(file)); +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_FontServ.h Maelstrom-3.0.6/maclib/Mac_FontServ.h +--- Maelstrom-3.0.6-orig/maclib/Mac_FontServ.h 1999-12-03 02:15:33 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_FontServ.h 2003-05-21 11:28:43 +0900 +@@ -135,7 +135,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_Resource.h Maelstrom-3.0.6/maclib/Mac_Resource.h +--- Maelstrom-3.0.6-orig/maclib/Mac_Resource.h 1999-12-04 03:01:47 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_Resource.h 2003-05-21 11:28:35 +0900 +@@ -96,7 +96,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_Sound.h Maelstrom-3.0.6/maclib/Mac_Sound.h +--- Maelstrom-3.0.6-orig/maclib/Mac_Sound.h 2002-10-20 11:53:34 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_Sound.h 2003-05-21 11:28:27 +0900 +@@ -199,7 +199,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/Mac_Wave.h Maelstrom-3.0.6/maclib/Mac_Wave.h +--- Maelstrom-3.0.6-orig/maclib/Mac_Wave.h 2000-01-26 01:44:10 +0900 ++++ Maelstrom-3.0.6/maclib/Mac_Wave.h 2003-05-21 11:28:20 +0900 +@@ -108,7 +108,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } +diff -ur Maelstrom-3.0.6-orig/maclib/macres.cpp Maelstrom-3.0.6/maclib/macres.cpp +--- Maelstrom-3.0.6-orig/maclib/macres.cpp 2000-01-26 01:44:20 +0900 ++++ Maelstrom-3.0.6/maclib/macres.cpp 2003-05-21 11:30:01 +0900 +@@ -58,8 +58,8 @@ + ids[j], res->ResourceName(types[i], ids[j])); + if ( argv[2] ) { + char path[23]; +- sprintf(path,"%s/%s:%hu", argv[2], +- types[i], ids[j]); ++ snprintf(path, sizeof(path), "%s/%s:%hu", ++ argv[2], types[i], ids[j]); + FILE *output; + Mac_ResData *D; + if ( (output=fopen(path, "w")) != NULL ) { +diff -ur Maelstrom-3.0.6-orig/maclib/snd2wav.cpp Maelstrom-3.0.6/maclib/snd2wav.cpp +--- Maelstrom-3.0.6-orig/maclib/snd2wav.cpp 2001-03-28 12:54:50 +0900 ++++ Maelstrom-3.0.6/maclib/snd2wav.cpp 2003-05-21 11:29:23 +0900 +@@ -82,7 +82,7 @@ + continue; + } + wave.Load(snd, rate); +- sprintf(wavname, "snd_%d.wav", ids[i]); ++ snprintf(wavname, sizeof(wavname), "snd_%d.wav", ids[i]); + wave.Save(wavname); + } + delete macx; +diff -ur Maelstrom-3.0.6-orig/main.cpp Maelstrom-3.0.6/main.cpp +--- Maelstrom-3.0.6-orig/main.cpp 2002-10-20 11:53:32 +0900 ++++ Maelstrom-3.0.6/main.cpp 2003-05-21 11:27:02 +0900 +@@ -445,7 +445,7 @@ + DrawText(xOff+309-7, yOff+240-6, text, geneva, STYLE_BOLD, + 0x00, 0x00, 0x00); + } +- sprintf(text, "%d", gSoundLevel); ++ snprintf(text, sizeof(text), "%d", gSoundLevel); + DrawText(xOff+309-7, yOff+240-6, text, geneva, STYLE_BOLD, + 30000>>8, 30000>>8, 0xFF); + screen->Update(); +@@ -547,11 +547,11 @@ + } + DrawText(xOff+5, botDiv+42+(index*18), hScores[index].name, + font, STYLE_BOLD, R, G, B); +- sprintf(buffer, "%u", hScores[index].score); ++ snprintf(buffer, sizeof(buffer), "%u", hScores[index].score); + sw = fontserv->TextWidth(buffer, font, STYLE_BOLD); + DrawText(sRt-sw, botDiv+42+(index*18), buffer, + font, STYLE_BOLD, R, G, B); +- sprintf(buffer, "%u", hScores[index].wave); ++ snprintf(buffer, sizeof(buffer), "%u", hScores[index].wave); + sw = fontserv->TextWidth(buffer, font, STYLE_BOLD); + DrawText(wRt-sw, botDiv+42+(index*18), buffer, + font, STYLE_BOLD, R, G, B); +@@ -560,7 +560,7 @@ + + DrawText(xOff+5, botDiv+46+(10*18)+3, "Last Score: ", + bigfont, STYLE_NORM, 0xFF, 0xFF, 0xFF); +- sprintf(buffer, "%d", GetScore()); ++ snprintf(buffer, sizeof(buffer), "%d", GetScore()); + sw = fontserv->TextWidth("Last Score: ", bigfont, STYLE_NORM); + DrawText(xOff+5+sw, botDiv+46+(index*18)+3, buffer, + bigfont, STYLE_NORM, 0xFF, 0xFF, 0xFF); +diff -ur Maelstrom-3.0.6-orig/myerror.cpp Maelstrom-3.0.6/myerror.cpp +--- Maelstrom-3.0.6-orig/myerror.cpp 1998-07-14 10:50:17 +0900 ++++ Maelstrom-3.0.6/myerror.cpp 2003-05-21 11:23:33 +0900 +@@ -16,7 +16,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(mesg, fmt, ap); ++ vsnprintf(mesg, sizeof(mesg), fmt, ap); + fputs(mesg, stderr); + va_end(ap); + } +@@ -27,7 +27,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(mesg, fmt, ap); ++ vsnprintf(mesg, sizeof(mesg), fmt, ap); + fputs(mesg, stdout); + va_end(ap); + } +@@ -37,7 +37,7 @@ + char buffer[BUFSIZ]; + + if ( *msg ) { +- sprintf(buffer, "%s: %s\n", msg, strerror(errno)); ++ snprintf(buffer, sizeof(buffer), "%s: %s\n", msg, strerror(errno)); + error(buffer); + } else + error((char *)strerror(errno)); +diff -ur Maelstrom-3.0.6-orig/netlogic/game.cpp Maelstrom-3.0.6/netlogic/game.cpp +--- Maelstrom-3.0.6-orig/netlogic/game.cpp 2001-07-23 11:24:03 +0900 ++++ Maelstrom-3.0.6/netlogic/game.cpp 2003-05-21 11:33:19 +0900 +@@ -232,7 +232,7 @@ + + lastDisplayed = gDisplayed; + screen->FillRect(0, 0, SCREEN_WIDTH, 12, ourBlack); +- sprintf(caption, ++ snprintf(caption, sizeof(caption), + "You are player %d --- displaying player %d", + gOurPlayer+1, gDisplayed+1); + DrawText(SPRITES_WIDTH, 11, caption, geneva, +@@ -357,7 +357,7 @@ + /* -- Erase old and draw new score */ + screen->FillRect(45, gStatusLine+1, + score_width, text_height, ourBlack); +- sprintf(numbuf, "%d", Score); ++ snprintf(numbuf, sizeof(numbuf), "%d", Score); + score_width = DrawText(45, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -380,7 +380,7 @@ + if (lastWave != gWave) { + screen->FillRect(255, gStatusLine+1, + wave_width, text_height, ourBlack); +- sprintf(numbuf, "%d", gWave); ++ snprintf(numbuf, sizeof(numbuf), "%d", gWave); + wave_width = DrawText(255, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -391,7 +391,7 @@ + if (lastLives != Lives) { + screen->FillRect(319, gStatusLine+1, + lives_width, text_height, ourBlack); +- sprintf(numbuf, "%-3.1d", Lives); ++ snprintf(numbuf, sizeof(numbuf), "%-3.1d", Lives); + lives_width = DrawText(319, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -402,7 +402,7 @@ + if (lastBonus != Bonus) { + screen->FillRect(384, gStatusLine+1, + bonus_width, text_height, ourBlack); +- sprintf(numbuf, "%-7.1d", Bonus); ++ snprintf(numbuf, sizeof(numbuf), "%-7.1d", Bonus); + bonus_width = DrawText(384, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -414,7 +414,7 @@ + if (lastFrags != Frags) { + screen->FillRect(fragoff, gStatusLine+1, + frags_width, text_height, ourBlack); +- sprintf(numbuf, "%-3.1d", Frags); ++ snprintf(numbuf, sizeof(numbuf), "%-3.1d", Frags); + frags_width = DrawText(fragoff, gStatusLine+11, + numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +@@ -747,10 +747,11 @@ + for ( i=0; i<gNumPlayers; ++i ) { + char buffer[BUFSIZ], num1[12], num2[12]; + +- sprintf(num1, "%7.1d", final[i].Score); +- sprintf(num2, "%3.1d", final[i].Frags); +- sprintf(buffer, "Player %d: %-.7s Points, %-.3s Frags", +- final[i].Player, num1, num2); ++ snprintf(num1, sizeof(num1), "%7.1d", final[i].Score); ++ snprintf(num2, sizeof(num2), "%3.1d", final[i].Frags); ++ snprintf(buffer, sizeof(buffer), ++ "Player %d: %-.7s Points, %-.3s Frags", ++ final[i].Player, num1, num2); + DrawText(160, 380+i*newyork_height, buffer, + newyork, STYLE_NORM, 30000>>8, 30000>>8, 0xFF); + } +@@ -898,7 +899,7 @@ + + + /* -- Draw the wave completed message */ +- sprintf(numbuf, "Wave %d completed.", gWave); ++ snprintf(numbuf, sizeof(numbuf), "Wave %d completed.", gWave); + sw = fontserv->TextWidth(numbuf, geneva, STYLE_BOLD); + x = (SCREEN_WIDTH - sw) / 2; + DrawText(x, 150, numbuf, geneva, STYLE_BOLD, 0xFF, 0xFF, 0x00); +@@ -935,7 +936,7 @@ + if (OurShip->GetBonusMult() != 1) { + SDL_Surface *sprite; + +- sprintf(numbuf, "%-5.1d", OurShip->GetBonus()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetBonus()); + DrawText(x, 200, numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); + x += 75; +@@ -951,10 +952,10 @@ + Delay(SOUND_DELAY); + sound->PlaySound(gFunk, 5); + +- sprintf(numbuf, "%-5.1d", OurShip->GetBonus()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetBonus()); + bonus_width = DrawText(x, 200, numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); +- sprintf(numbuf, "%-5.1d", OurShip->GetScore()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetScore()); + score_width = DrawText(xt, 220, numbuf, geneva, STYLE_BOLD, + 0xFF, 0xFF, 0xFF); + screen->Update(); +@@ -997,12 +998,12 @@ + + screen->FillRect(x, 200-text_height+2, + bonus_width, text_height, ourBlack); +- sprintf(numbuf, "%-5.1d", OurShip->GetBonus()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetBonus()); + bonus_width = DrawText(x, 200, numbuf, + geneva, STYLE_BOLD, 0xFF, 0xFF, 0xFF); + screen->FillRect(xt, 220-text_height+2, + score_width, text_height, ourBlack); +- sprintf(numbuf, "%-5.1d", OurShip->GetScore()); ++ snprintf(numbuf, sizeof(numbuf), "%-5.1d", OurShip->GetScore()); + score_width = DrawText(xt, 220, numbuf, + geneva, STYLE_BOLD, 0xFF, 0xFF, 0xFF); + +@@ -1015,7 +1016,7 @@ + HandleEvents(10); + + /* -- Draw the "next wave" message */ +- sprintf(numbuf, "Prepare for Wave %d...", gWave+1); ++ snprintf(numbuf, sizeof(numbuf), "Prepare for Wave %d...", gWave+1); + sw = fontserv->TextWidth(numbuf, geneva, STYLE_BOLD); + x = (SCREEN_WIDTH - sw)/2; + DrawText(x, 259, numbuf, geneva, STYLE_BOLD, 0xFF, 0xFF, 0x00); +diff -ur Maelstrom-3.0.6-orig/netlogic/netplay.cpp Maelstrom-3.0.6/netlogic/netplay.cpp +--- Maelstrom-3.0.6-orig/netlogic/netplay.cpp 2002-10-20 13:11:52 +0900 ++++ Maelstrom-3.0.6/netlogic/netplay.cpp 2003-05-21 11:31:43 +0900 +@@ -670,7 +670,9 @@ + strcpy(message, "Waiting for players:"); + for ( i=0; i<gNumPlayers; ++i ) { + if ( ! acked[i] ) +- sprintf(&message[strlen(message)], " %d", i+1); ++ snprintf(&message[strlen(message)], ++ sizeof(message)-strlen(message), ++ " %d", i+1); + } + Message(message); + +@@ -725,7 +727,7 @@ + /* Check the player... */ + if ( (i != gOurPlayer) && (netbuf[1] == gOurPlayer) ) { + /* Print message, sleep 3 seconds absolutely */ +- sprintf(message, ++ snprintf(message, sizeof(message), + "Error: Another player (%d) thinks they are player 1!\r\n", i+1); + ErrorMessage(message); + /* Suck up retransmission packets */ +diff -ur Maelstrom-3.0.6-orig/netscore.cpp Maelstrom-3.0.6/netscore.cpp +--- Maelstrom-3.0.6-orig/netscore.cpp 2001-07-23 12:25:17 +0900 ++++ Maelstrom-3.0.6/netscore.cpp 2003-05-21 11:27:18 +0900 +@@ -59,7 +59,7 @@ + + /* Send the scores */ + crc = get_checksum(key, KEY_LEN); +- sprintf(netbuf, SCOREFMT, crc, high.name, high.score, high.wave); ++ snprintf(netbuf, sizeof(netbuf), SCOREFMT, crc, high.name, high.score, high.wave); + SDLNet_TCP_Send(remote, netbuf, strlen(netbuf)); + n = SDLNet_TCP_Recv(remote, netbuf, 1024); + if ( n > 0 ) { +diff -ur Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.cpp Maelstrom-3.0.6/screenlib/SDL_FrameBuf.cpp +--- Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.cpp 2001-07-23 06:03:13 +0900 ++++ Maelstrom-3.0.6/screenlib/SDL_FrameBuf.cpp 2003-05-21 11:31:01 +0900 +@@ -628,7 +628,7 @@ + + found = 0; + for ( which=0; !found; ++which ) { +- sprintf(file, "%s%d.bmp", prefix, which); ++ snprintf(file, sizeof(file), "%s%d.bmp", prefix, which); + if ( ((fp=fopen(file, "r")) == NULL) && + ((fp=fopen(file, "w")) != NULL) ) { + found = 1; +diff -ur Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.h Maelstrom-3.0.6/screenlib/SDL_FrameBuf.h +--- Maelstrom-3.0.6-orig/screenlib/SDL_FrameBuf.h 2000-09-25 02:55:39 +0900 ++++ Maelstrom-3.0.6/screenlib/SDL_FrameBuf.h 2003-05-21 11:27:41 +0900 +@@ -165,7 +165,7 @@ + va_list ap; + + va_start(ap, fmt); +- vsprintf(errbuf, fmt, ap); ++ vsnprintf(errbuf, sizeof(errbuf), fmt, ap); + va_end(ap); + errstr = errbuf; + } diff --git a/games-action/maelstrom/files/maelstrom-3.0.6-warnings.patch b/games-action/maelstrom/files/maelstrom-3.0.6-warnings.patch new file mode 100644 index 000000000000..aa374b096c32 --- /dev/null +++ b/games-action/maelstrom/files/maelstrom-3.0.6-warnings.patch @@ -0,0 +1,20 @@ +--- Maelstrom-netd.c.orig 2014-03-18 01:00:28.408099526 -0400 ++++ Maelstrom-netd.c 2014-03-18 01:01:29.892142782 -0400 +@@ -1,7 +1,9 @@ + + /* Here we go... */ + ++#include <stdlib.h> + #include <stdio.h> ++#include <time.h> + #include <string.h> + #include <signal.h> + #include <errno.h> +@@ -9,6 +11,7 @@ + #include <sys/time.h> + #include <sys/socket.h> + #include <netinet/in.h> ++#include <arpa/inet.h> + #include <netdb.h> + #include <unistd.h> + diff --git a/games-action/maelstrom/files/maelstrom-gcc34.patch b/games-action/maelstrom/files/maelstrom-gcc34.patch new file mode 100644 index 000000000000..6ceb421f16ba --- /dev/null +++ b/games-action/maelstrom/files/maelstrom-gcc34.patch @@ -0,0 +1,30 @@ +diff -ur Maelstrom-3.0.6-orig/buttonlist.h Maelstrom-3.0.6/buttonlist.h +--- Maelstrom-3.0.6-orig/buttonlist.h 2004-08-28 01:43:55.867378220 -0400 ++++ Maelstrom-3.0.6/buttonlist.h 2004-08-28 01:44:23.700062593 -0400 +@@ -16,7 +16,7 @@ + + void Add_Button(Uint16 x, Uint16 y, Uint16 width, Uint16 height, + void (*callback)(void)) { +- struct button *belem; ++ button *belem; + + for ( belem=&button_list; belem->next; belem=belem->next ); + belem->next = new button; +@@ -30,7 +30,7 @@ + } + + void Activate_Button(Uint16 x, Uint16 y) { +- struct button *belem; ++ button *belem; + + for ( belem=button_list.next; belem; belem=belem->next ) { + if ( (x >= belem->x1) && (x <= belem->x2) && +@@ -42,7 +42,7 @@ + } + + void Delete_Buttons(void) { +- struct button *belem, *btemp; ++ button *belem, *btemp; + + for ( belem=button_list.next; belem; ) { + btemp = belem; diff --git a/games-action/maelstrom/maelstrom-3.0.6-r2.ebuild b/games-action/maelstrom/maelstrom-3.0.6-r2.ebuild new file mode 100644 index 000000000000..32a05bce9e22 --- /dev/null +++ b/games-action/maelstrom/maelstrom-3.0.6-r2.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit autotools eutils games + +MY_P=Maelstrom-${PV} +DESCRIPTION="An asteroids battle game" +HOMEPAGE="http://www.libsdl.org/projects/Maelstrom/" +SRC_URI="http://www.libsdl.org/projects/Maelstrom/src/${MY_P}.tar.gz" + +KEYWORDS="~alpha amd64 ppc x86" +SLOT="0" +LICENSE="GPL-2" +IUSE="" + +DEPEND="media-libs/libsdl[sound,joystick,video] + media-libs/sdl-net" +RDEPEND="${DEPEND}" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch \ + "${FILESDIR}"/${P}-security.patch \ + "${FILESDIR}"/${P}-64bits.patch \ + "${FILESDIR}"/${P}-gcc34.patch \ + "${FILESDIR}"/${P}-warnings.patch + + # Install the data into $(datadir)/..., not $(prefix)/games/... + sed -i \ + -e "s:(prefix)/games/:(datadir)/:" configure.in || die + sed -i \ + -e '/make install_gamedata/ { s:=:=$(DESTDIR)/:; s/make/$(MAKE)/; s/install_gamedata/install-binPROGRAMS install_gamedata/; }' Makefile.am || die + # Install the high scores file in ${GAMES_STATEDIR} + sed -i \ + -e "s:path.Path(MAELSTROM_SCORES):\"${GAMES_STATEDIR}/\"MAELSTROM_SCORES:" scores.cpp || die + mv configure.{in,ac} + rm aclocal.m4 acinclude.m4 + eautoreconf +} + +src_install() { + emake DESTDIR="${D}" install + dodoc Changelog README* Docs/{Maelstrom-Announce,*FAQ,MaelstromGPL_press_release,*.Paper,Technical_Notes*} + newicon "${D}${GAMES_DATADIR}"/Maelstrom/icon.xpm maelstrom.xpm + make_desktop_entry Maelstrom "Maelstrom" maelstrom + + # Put the high scores file in the right place + insinto "${GAMES_STATEDIR}" + doins "${D}${GAMES_DATADIR}"/Maelstrom/Maelstrom-Scores + # clean up some cruft + rm -f \ + "${D}${GAMES_DATADIR}"/Maelstrom/Maelstrom-Scores \ + "${D}${GAMES_DATADIR}"/Maelstrom/Images/Makefile* + # make sure we can update the high scores + fperms 664 "${GAMES_STATEDIR}"/Maelstrom-Scores + prepgamesdirs +} diff --git a/games-action/maelstrom/metadata.xml b/games-action/maelstrom/metadata.xml new file mode 100644 index 000000000000..d3c2cc926f0b --- /dev/null +++ b/games-action/maelstrom/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>games</herd> +</pkgmetadata> |