commit
5aa665d5fe
@ -1,22 +1,42 @@
|
||||
{stdenv, fetchurl, SDL, libpng, zlib}:
|
||||
{stdenv, fetchurl, pkgconfig, SDL, libpng, zlib, xz, freetype, fontconfig}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "openttd-${version}";
|
||||
version = "0.6.0";
|
||||
version = "1.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sf/openttd/${name}-source.tar.bz2";
|
||||
md5 = "dcf63687c73ff56887049fedaf6c6019";
|
||||
url = "http://binaries.openttd.org/releases/${version}/${name}-source.tar.xz";
|
||||
sha256 = "158znfx389bhs9gd2hadnbc2a32z4ma1vz8704cmw9yh0fmhbcap";
|
||||
};
|
||||
|
||||
buildInputs = [SDL libpng];
|
||||
buildInputs = [SDL libpng pkgconfig xz zlib freetype fontconfig];
|
||||
prefixKey = "--prefix-dir=";
|
||||
configureFlags = "--with-zlib=${zlib}/lib/libz.a";
|
||||
|
||||
configureFlags = ''
|
||||
--with-zlib=${zlib}/lib/libz.a
|
||||
--without-liblzo2
|
||||
'';
|
||||
|
||||
makeFlags = "INSTALL_PERSONAL_DIR=";
|
||||
|
||||
postInstall = ''
|
||||
mv $out/games/ $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = ''OpenTTD is an open source clone of the Microprose game "Transport Tycoon Deluxe".'';
|
||||
longDescription = ''
|
||||
OpenTTD is a transportation economics simulator. In single player mode,
|
||||
players controll a transportation business, and use rail, road, sea, and air
|
||||
transport to move goods and people around the simulated world.
|
||||
|
||||
In multiplayer networked mode, players may:
|
||||
- play competitively as different businesses
|
||||
- play cooperatively controling the same business
|
||||
- observe as spectators
|
||||
'';
|
||||
homepage = http://www.openttd.org/;
|
||||
license = "GPLv2";
|
||||
maintainers = with stdenv.lib.maintainers; [ jcumming ];
|
||||
};
|
||||
}
|
||||
|
31
pkgs/games/rili/default.nix
Normal file
31
pkgs/games/rili/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{stdenv, fetchurl, SDL_mixer, SDL, autoconf, automake}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ri_li-2.0.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/ri-li/Ri-li-2.0.1.tar.bz2;
|
||||
sha256 = "f71ccc20c37c601358d963e087ac0d524de8c68e96df09c3aac1ae65edd38dbd";
|
||||
};
|
||||
|
||||
patches = [ ./moderinze_cpp.patch ];
|
||||
|
||||
preConfigure = ''
|
||||
export CPPFLAGS="-I${SDL}/include -I${SDL}/include/SDL -I${SDL_mixer}/include"
|
||||
autoreconf -i
|
||||
'';
|
||||
|
||||
buildInputs = [SDL SDL_mixer autoconf automake];
|
||||
|
||||
meta = {
|
||||
homepage = http://ri-li.sourceforge.net;
|
||||
license = "GPL2+";
|
||||
description = "A children's train game";
|
||||
longDescription = ''
|
||||
Ri-li is an arcade game licensed under the GPL (General Public License).
|
||||
You drive a toy wood engine in many levels and you must collect all the coaches
|
||||
to win.
|
||||
'';
|
||||
maintainers = with stdenv.lib.maintainers; [ jcumming ];
|
||||
};
|
||||
}
|
391
pkgs/games/rili/moderinze_cpp.patch
Normal file
391
pkgs/games/rili/moderinze_cpp.patch
Normal file
@ -0,0 +1,391 @@
|
||||
diff -r -u Ri-li-2.0.1.orig/src/audio.cc Ri-li-2.0.1/src/audio.cc
|
||||
--- Ri-li-2.0.1.orig/src/audio.cc 2012-01-22 00:40:56.928609371 -0800
|
||||
+++ Ri-li-2.0.1/src/audio.cc 2012-01-22 00:28:33.360636539 -0800
|
||||
@@ -22,8 +22,8 @@
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
#include <stdlib.h>
|
||||
-#include <iostream.h>
|
||||
-#include <string.h>
|
||||
+#include <iostream>
|
||||
+#include <string>
|
||||
|
||||
#include "audio.h"
|
||||
#include "utils.h"
|
||||
@@ -57,7 +57,7 @@
|
||||
char PathFile[512];
|
||||
|
||||
if(Mix_OpenAudio(22050,AUDIO_S16,1,1024)) {
|
||||
- cerr <<"Enable to init Sound card ! "<<SDL_GetError()<<endl;
|
||||
+ std::cerr <<"Enable to init Sound card ! "<<SDL_GetError()<<std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
diff -r -u Ri-li-2.0.1.orig/src/ecran.cc Ri-li-2.0.1/src/ecran.cc
|
||||
--- Ri-li-2.0.1.orig/src/ecran.cc 2007-11-02 04:48:16.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/ecran.cc 2012-01-22 00:13:54.422798653 -0800
|
||||
@@ -21,7 +21,7 @@
|
||||
// with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <math.h>
|
||||
diff -r -u Ri-li-2.0.1.orig/src/editeur.cc Ri-li-2.0.1/src/editeur.cc
|
||||
--- Ri-li-2.0.1.orig/src/editeur.cc 2007-11-02 04:48:17.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/editeur.cc 2012-01-22 00:28:59.632635579 -0800
|
||||
@@ -25,10 +25,10 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
-#include <string.h>
|
||||
+#include <string>
|
||||
#include <math.h>
|
||||
#include <SDL/SDL.h>
|
||||
|
||||
@@ -374,7 +374,7 @@
|
||||
|
||||
// Sauve le niveau
|
||||
if(Niveau.Save()==false) {
|
||||
- cerr <<"ERREUR Saving levels!"<<endl;
|
||||
+ std::cerr <<"ERREUR Saving levels!"<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
diff -r -u Ri-li-2.0.1.orig/src/jeux.cc Ri-li-2.0.1/src/jeux.cc
|
||||
--- Ri-li-2.0.1.orig/src/jeux.cc 2007-11-02 04:48:17.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/jeux.cc 2012-01-22 00:14:08.422798143 -0800
|
||||
@@ -25,10 +25,10 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
-#include <string.h>
|
||||
+#include <string>
|
||||
#include <math.h>
|
||||
#include <SDL/SDL.h>
|
||||
|
||||
diff -r -u Ri-li-2.0.1.orig/src/loco.cc Ri-li-2.0.1/src/loco.cc
|
||||
--- Ri-li-2.0.1.orig/src/loco.cc 2007-11-02 04:48:18.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/loco.cc 2012-01-22 00:14:17.878797797 -0800
|
||||
@@ -21,10 +21,10 @@
|
||||
// with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
-#include <string.h>
|
||||
+#include <string>
|
||||
#include <math.h>
|
||||
#include "preference.h"
|
||||
#include "loco.h"
|
||||
diff -r -u Ri-li-2.0.1.orig/src/main.cc Ri-li-2.0.1/src/main.cc
|
||||
--- Ri-li-2.0.1.orig/src/main.cc 2007-11-02 04:48:19.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/main.cc 2012-01-22 00:29:40.080634136 -0800
|
||||
@@ -23,8 +23,8 @@
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
-#include <iostream.h>
|
||||
-#include <string.h>
|
||||
+#include <iostream>
|
||||
+#include <string>
|
||||
#include <SDL/SDL.h>
|
||||
#include <SDL/SDL_mixer.h>
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
|
||||
// Initilise SDL
|
||||
if( SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER|SDL_INIT_AUDIO|SDL_INIT_NOPARACHUTE) < 0 ) {
|
||||
- cerr <<"Impossible d'initialiser SDL:"<<SDL_GetError()<<endl;
|
||||
+ std::cerr <<"Impossible d'initialiser SDL:"<<SDL_GetError()<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
// Ferme le programme correctement quant quit
|
||||
@@ -125,7 +125,7 @@
|
||||
sdlVideoInfo=(SDL_VideoInfo*)SDL_GetVideoInfo();
|
||||
|
||||
if(sdlVideoInfo->vfmt->BitsPerPixel==8) {
|
||||
- cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<endl;
|
||||
+ std::cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
@@ -145,7 +145,7 @@
|
||||
sdlVideo=SDL_SetVideoMode(800,600,sdlVideoInfo->vfmt->BitsPerPixel,vOption);
|
||||
|
||||
if(sdlVideo==NULL) {
|
||||
- cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<endl;
|
||||
+ std::cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
// Change le nom de la fenetre
|
||||
diff -r -u Ri-li-2.0.1.orig/src/menu.cc Ri-li-2.0.1/src/menu.cc
|
||||
--- Ri-li-2.0.1.orig/src/menu.cc 2007-11-02 04:48:19.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/menu.cc 2012-01-22 00:30:04.752633198 -0800
|
||||
@@ -21,10 +21,10 @@
|
||||
// with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
-#include <string.h>
|
||||
+#include <string>
|
||||
#include "preference.h"
|
||||
#include "menu.h"
|
||||
#include "sprite.h"
|
||||
@@ -92,7 +92,7 @@
|
||||
// Teste la resolution video
|
||||
sdlVideoInfo=(SDL_VideoInfo*)SDL_GetVideoInfo();
|
||||
if(sdlVideoInfo->vfmt->BitsPerPixel==8) {
|
||||
- cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<endl;
|
||||
+ std::cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
if(Pref.FullScreen) vOption|=SDL_FULLSCREEN;
|
||||
sdlVideo=SDL_SetVideoMode(800,600,sdlVideoInfo->vfmt->BitsPerPixel,vOption);
|
||||
if(sdlVideo==NULL) {
|
||||
- cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<endl;
|
||||
+ std::cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
diff -r -u Ri-li-2.0.1.orig/src/mouse.cc Ri-li-2.0.1/src/mouse.cc
|
||||
--- Ri-li-2.0.1.orig/src/mouse.cc 2007-11-02 04:48:20.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/mouse.cc 2012-01-22 00:14:36.438797120 -0800
|
||||
@@ -21,7 +21,7 @@
|
||||
// with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include "mouse.h"
|
||||
#include "preference.h"
|
||||
diff -r -u Ri-li-2.0.1.orig/src/sprite.cc Ri-li-2.0.1/src/sprite.cc
|
||||
--- Ri-li-2.0.1.orig/src/sprite.cc 2007-11-02 04:48:20.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/sprite.cc 2012-01-22 00:30:43.640631779 -0800
|
||||
@@ -21,10 +21,10 @@
|
||||
// with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
-#include <string.h>
|
||||
+#include <string>
|
||||
#include <math.h>
|
||||
#include "sprite.h"
|
||||
#include "preference.h"
|
||||
@@ -84,7 +84,7 @@
|
||||
strcpy(PathFile,Langue[Pref.Langue]);
|
||||
GetPath(PathFile);
|
||||
if(FileExiste(PathFile)==false) {
|
||||
- cerr <<"Impossible de trouver "<<Langue[Pref.Langue]<<endl;
|
||||
+ std::cerr <<"Impossible de trouver "<<Langue[Pref.Langue]<<std::endl;
|
||||
return false;
|
||||
}
|
||||
L=ChargeFichier(PathFile,Buf);
|
||||
@@ -128,7 +128,7 @@
|
||||
// *** Charge le fichier des langues ***
|
||||
// *************************************
|
||||
if(FileExiste(PathFile)==false) {
|
||||
- cerr <<"Impossible de trouver 'language.dat'"<<endl;
|
||||
+ std::cerr <<"Impossible de trouver 'language.dat'"<<std::endl;
|
||||
return false;
|
||||
}
|
||||
L=ChargeFichier(PathFile,Buf);
|
||||
@@ -163,7 +163,7 @@
|
||||
strcpy(PathFile,"sprites.dat");
|
||||
GetPath(PathFile);
|
||||
if(FileExiste(PathFile)==false) {
|
||||
- cerr <<"Impossible de trouver 'sprites.dat'"<<endl;
|
||||
+ std::cerr <<"Impossible de trouver 'sprites.dat'"<<std::endl;
|
||||
return false;
|
||||
}
|
||||
L=ChargeFichier(PathFile,Buf);
|
||||
@@ -352,7 +352,7 @@
|
||||
Image[i]=SDL_CreateRGBSurface((Dim[i].bpp-3)*SDL_SRCALPHA,Dim[i].L,Dim[i].H,Dim[i].bpp*8,
|
||||
0xff,0xff00,0xff0000,0xff000000*(Dim[i].bpp-3));
|
||||
if(Image[i]<=NULL) {
|
||||
- cerr <<"Impossible de créer une Surface SDL!"<<endl;
|
||||
+ std::cerr <<"Impossible de créer une Surface SDL!"<<std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -486,7 +486,7 @@
|
||||
Image[0]=SDL_CreateRGBSurface((Dim[0].bpp-3)*SDL_SRCALPHA,Dim[0].L,Dim[0].H,Dim[0].bpp*8,
|
||||
0xff,0xff00,0xff0000,0xff000000*(Dim[0].bpp-3));
|
||||
if(Image[0]<=NULL) {
|
||||
- cerr <<"Impossible de créer une Surface SDL!"<<endl;
|
||||
+ std::cerr <<"Impossible de créer une Surface SDL!"<<std::endl;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
diff -r -u Ri-li-2.0.1.orig/src/tableau.cc Ri-li-2.0.1/src/tableau.cc
|
||||
--- Ri-li-2.0.1.orig/src/tableau.cc 2007-11-02 04:48:21.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/tableau.cc 2012-01-22 00:14:50.710796598 -0800
|
||||
@@ -21,7 +21,7 @@
|
||||
// with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include "preference.h"
|
||||
diff -r -u Ri-li-2.0.1.orig/src/utils.cc Ri-li-2.0.1/src/utils.cc
|
||||
--- Ri-li-2.0.1.orig/src/utils.cc 2007-11-02 04:48:22.000000000 -0700
|
||||
+++ Ri-li-2.0.1/src/utils.cc 2012-01-22 00:31:30.944630051 -0800
|
||||
@@ -21,10 +21,10 @@
|
||||
// with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
-#include <iostream.h>
|
||||
+#include <iostream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
-#include <string.h>
|
||||
+#include <string>
|
||||
|
||||
#ifdef WINDOWS
|
||||
#include <windows.h>
|
||||
@@ -77,7 +77,7 @@
|
||||
|
||||
file=fopen(Path,"r");
|
||||
if(!file) {
|
||||
- cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<endl;
|
||||
+ std::cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<std::endl;
|
||||
perror("fopen");
|
||||
return -1;
|
||||
}
|
||||
@@ -93,7 +93,7 @@
|
||||
|
||||
Buf=new unsigned char [L+1];
|
||||
if(Buf==NULL) {
|
||||
- cerr <<"ERREUR: Memoire insuffisante!"<<endl;
|
||||
+ std::cerr <<"ERREUR: Memoire insuffisante!"<<std::endl;
|
||||
fclose(file);
|
||||
return -1;
|
||||
}
|
||||
@@ -104,7 +104,7 @@
|
||||
while(Compt>1024) {
|
||||
AfficheChargeur();
|
||||
if( fread(Po,1,1024,file) != 1024 ) {
|
||||
- cerr <<"ERREUR de lecture du fichier '"<<Path<<"'"<<endl;
|
||||
+ std::cerr <<"ERREUR de lecture du fichier '"<<Path<<"'"<<std::endl;
|
||||
perror("fread");
|
||||
fclose(file);
|
||||
delete [] Buf;
|
||||
@@ -131,13 +131,13 @@
|
||||
|
||||
file=_lopen(Path,OF_READ);
|
||||
if(file==-1) {
|
||||
- cerr <<"Impossible d'ouvrir "<<Path<<endl;
|
||||
+ std::cerr <<"Impossible d'ouvrir "<<Path<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
long L=(long)_llseek(file,0,SEEK_END);
|
||||
if(L==-1) {
|
||||
- cerr <<"Impossible de trouver la longueur du fichier"<<endl;
|
||||
+ std::cerr <<"Impossible de trouver la longueur du fichier"<<std::endl;
|
||||
perror("lseek");
|
||||
_lclose(file);
|
||||
return -1;
|
||||
@@ -146,7 +146,7 @@
|
||||
|
||||
Buf=new unsigned char [L+1];
|
||||
if(Buf==NULL) {
|
||||
- cerr <<"ERREUR: Memoire insuffisante!"<<endl;
|
||||
+ std::cerr <<"ERREUR: Memoire insuffisante!"<<std::endl;
|
||||
_lclose(file);
|
||||
return -1;
|
||||
}
|
||||
@@ -169,14 +169,14 @@
|
||||
|
||||
file=fopen(Path,"w");
|
||||
if(!file) {
|
||||
- cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<endl;
|
||||
+ std::cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<std::endl;
|
||||
perror("fopen");
|
||||
return false;
|
||||
}
|
||||
|
||||
while(L>512) {
|
||||
if( fwrite(Buf,1,512,file) != 512 ) {
|
||||
- cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<endl;
|
||||
+ std::cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<std::endl;
|
||||
perror("fwrite");
|
||||
fclose(file);
|
||||
return false;
|
||||
@@ -187,7 +187,7 @@
|
||||
|
||||
if(L>0) {
|
||||
if( fwrite(Buf,1,(size_t)L,file) != (size_t)L ) {
|
||||
- cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<endl;
|
||||
+ std::cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<std::endl;
|
||||
perror("fwrite");
|
||||
fclose(file);
|
||||
return false;
|
||||
@@ -208,7 +208,7 @@
|
||||
|
||||
file=_lcreat(Path,0);
|
||||
if(!file) {
|
||||
- cerr <<"ERREUR: Impossible de créer le fichier '"<<Path<<"'"<<endl;
|
||||
+ std::cerr <<"ERREUR: Impossible de créer le fichier '"<<Path<<"'"<<std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -216,7 +216,7 @@
|
||||
_lclose(file);
|
||||
|
||||
if(Lec!=L) {
|
||||
- cerr <<"Problème d'ecriture du fichier '"<<Path<<"' ecris="<<Lec<<" au lieux de ="<<L<<endl;
|
||||
+ std::cerr <<"Problème d'ecriture du fichier '"<<Path<<"' ecris="<<Lec<<" au lieux de ="<<L<<std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -250,7 +250,7 @@
|
||||
sprintf(Path,"/usr/share/games/Ri-li/%s",Provi);
|
||||
if(FileExiste(Path)) return;
|
||||
|
||||
- cerr <<"Impossible de trouver le fichier '"<<Provi<<endl;
|
||||
+ std::cerr <<"Impossible de trouver le fichier '"<<Provi<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
#endif
|
||||
@@ -266,7 +266,7 @@
|
||||
sprintf(Path,"PROGDIR:%s",Provi);
|
||||
if(FileExiste(Path)) return;
|
||||
|
||||
- cerr <<"Impossible de trouver le fichier '"<<Path<<endl;
|
||||
+ std::cerr <<"Impossible de trouver le fichier '"<<Path<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
#endif
|
||||
@@ -282,7 +282,7 @@
|
||||
sprintf(Path,"Ri-li.app/Contents/Resources/%s",Provi);
|
||||
if(FileExiste(Path)) return;
|
||||
|
||||
- cerr <<"Impossible de trouver le fichier '"<<Path<<endl;
|
||||
+ std::cerr <<"Impossible de trouver le fichier '"<<Path<<std::endl;
|
||||
exit(-1);
|
||||
}
|
||||
#endif
|
78
pkgs/games/uqm/default.nix
Normal file
78
pkgs/games/uqm/default.nix
Normal file
@ -0,0 +1,78 @@
|
||||
{stdenv, fetchurl
|
||||
, pkgconfig, mesa
|
||||
, SDL, SDL_image, libpng, zlib, libvorbis, libogg, libmikmod, unzip
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "uqm-${version}";
|
||||
version = "0.7.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sf/sc2/uqm-${version}-source.tgz";
|
||||
sha256 = "a3695c5f7f0be7ec9c0f80ec569907b382023a1fee6e635532bd53b7b53bb221";
|
||||
};
|
||||
|
||||
content = fetchurl {
|
||||
url = "mirror://sf/sc2/uqm-${version}-content.uqm";
|
||||
sha256 = "b8f6db8ba29f0628fb1d5c233830896b19f441aee3744bda671ea264b44da3bf";
|
||||
};
|
||||
|
||||
voice = fetchurl {
|
||||
url = "mirror://sf/sc2/uqm-${version}-voice.uqm";
|
||||
sha256 = "bcccf801b4ba37594ff6217b292744ea586ee2d447e927804842ccae8b73c979";
|
||||
};
|
||||
|
||||
music = fetchurl {
|
||||
url = "mirror://sf/sc2/uqm-${version}-3domusic.uqm";
|
||||
sha256 = "c57085e64dad4bddf8a679a9aa2adf63f2156d5f6cbabe63af80519033dbcb82";
|
||||
};
|
||||
|
||||
|
||||
/* uses pthread_cancel(), which requires libgcc_s.so.1 to be
|
||||
loadable at run-time. Adding the flag below ensures that the
|
||||
library can be found. Obviously, though, this is a hack. */
|
||||
NIX_LDFLAGS="-lgcc_s";
|
||||
|
||||
buildInputs = [SDL SDL_image libpng libvorbis libogg libmikmod unzip pkgconfig mesa];
|
||||
|
||||
postUnpack = ''
|
||||
mkdir -p uqm-${version}/content/packages
|
||||
mkdir -p uqm-${version}/content/addons
|
||||
cp $content uqm-${version}/content/packages/uqm-0.7.0-content.uqm
|
||||
cp $music uqm-${version}/content/addons/uqm-0.7.0-3domusic.uqm
|
||||
cp $voice uqm-${version}/content/addons/uqm-0.7.0-voice.uqm
|
||||
'';
|
||||
|
||||
/* uqm has a 'unique' build system with a root script incidentally called
|
||||
* 'build.sh'. */
|
||||
|
||||
configurePhase = ''
|
||||
echo "INPUT_install_prefix_VALUE='$out'" >> config.state
|
||||
echo "INPUT_install_bindir_VALUE='$out/bin'" >> config.state
|
||||
echo "INPUT_install_libdir_VALUE='$out/lib'" >> config.state
|
||||
echo "INPUT_install_sharedir_VALUE='$out/share'" >> config.state
|
||||
PREFIX=$out ./build.sh uqm config
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
./build.sh uqm
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
./build.sh uqm install
|
||||
sed -i $out/bin/uqm -e "s%/usr/local/games/%$out%g"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Remake of Star Control II";
|
||||
longDescription = ''
|
||||
The goals for the The Ur-Quan Masters project are:
|
||||
- to bring Star Control II to modern platforms, thereby making a lot of people happy
|
||||
- to make game translations easy, thereby making even more people happy
|
||||
- to adapt the code so that people can more easily make their own spin-offs, thereby making zillions more people happy!
|
||||
'';
|
||||
homepage = http://sc2.sourceforge.net/;
|
||||
license = "GPLv2";
|
||||
maintainers = with stdenv.lib.maintainers; [ jcumming ];
|
||||
};
|
||||
}
|
11
pkgs/games/widelands/boost_and_cmake_die_die_die.patch
Normal file
11
pkgs/games/widelands/boost_and_cmake_die_die_die.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- widelands-build17-src.old/CMakeLists.txt 2012-04-23 02:46:49.000000000 -0700
|
||||
+++ widelands-build17-src/CMakeLists.txt 2012-07-14 19:49:14.000000000 -0700
|
||||
@@ -140,8 +140,6 @@
|
||||
else (WL_UNIT_TESTS)
|
||||
message(STATUS "Disabled Unit Tests")
|
||||
set (Boost_FIND_COMPONENTS signals)
|
||||
- set (Boost_USE_STATIC_LIBS ON)
|
||||
- set (Boost_USE_MULTITHREADED ON)
|
||||
set (Boost_DETAILED_FAILURE_MSG ON)
|
||||
find_package(Boost 1.35.0 COMPONENTS signals REQUIRED)
|
||||
endif (WL_UNIT_TESTS)
|
@ -13,11 +13,11 @@ let
|
||||
(builtins.attrNames (builtins.removeAttrs x helperArgNames));
|
||||
sourceInfo = rec {
|
||||
baseName="widelands";
|
||||
version="build16";
|
||||
version="build17";
|
||||
name="${baseName}-${version}";
|
||||
project="${baseName}";
|
||||
url="http://launchpad.net/${project}/${version}/${version}/+download/${name}-src.tar.bz2";
|
||||
hash="0pb2d73c6hynhp1x54rcfbibrrri7lyxjybd1hicn503qcakrnyq";
|
||||
url="https://launchpadlibrarian.net/102893896/widelands-build17-src.tar.bz2";
|
||||
hash="be48b3b8f342a537b39a3aec2f7702250a6a47e427188ba3bece67d7d90f3cc5";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
@ -30,7 +30,9 @@ rec {
|
||||
inherit buildInputs;
|
||||
|
||||
/* doConfigure should be removed if not needed */
|
||||
phaseNames = ["killBuildDir" "doCmake" "doMakeInstall" "createScript"];
|
||||
phaseNames = ["killBuildDir" "doPatch" "doCmake" "doMakeInstall" "createScript"];
|
||||
|
||||
patches = [ ./boost_and_cmake_die_die_die.patch ];
|
||||
|
||||
killBuildDir = a.fullDepEntry ''
|
||||
rm -r build
|
||||
@ -38,6 +40,7 @@ rec {
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLUA_LIBRARIES=-llua"
|
||||
"-DWL_PORTABLE=true"
|
||||
];
|
||||
|
||||
createScript = a.fullDepEntry ''
|
||||
@ -50,9 +53,16 @@ rec {
|
||||
|
||||
meta = {
|
||||
description = "Widelands RTS with multiple-goods economy";
|
||||
longDescription = ''
|
||||
Widelands is a real time strategy game based on "The Settlers" and "The
|
||||
Settlers II". It has a single player campaign mode, as well as a networked
|
||||
multiplayer mode.
|
||||
'';
|
||||
|
||||
maintainers = with a.lib.maintainers;
|
||||
[
|
||||
raskin
|
||||
jcumming
|
||||
];
|
||||
platforms = with a.lib.platforms;
|
||||
linux;
|
||||
|
@ -18,6 +18,7 @@
|
||||
garbas = "Rok Garbas <rok@garbas.si>";
|
||||
goibhniu = "Cillian de Róiste <cillian.deroiste@gmail.com>";
|
||||
guibert = "David Guibert <david.guibert@gmail.com>";
|
||||
jcumming = "Jack Cummings <jack@mudshark.org>";
|
||||
kkallio = "Karn Kallio <tierpluspluslists@gmail.com>";
|
||||
ludo = "Ludovic Courtès <ludo@gnu.org>";
|
||||
marcweber = "Marc Weber <marco-oweber@gmx.de>";
|
||||
|
@ -8193,6 +8193,8 @@ let
|
||||
mygui = myguiSvn;
|
||||
};
|
||||
|
||||
rili = callPackage ../games/rili { };
|
||||
|
||||
rogue = callPackage ../games/rogue { };
|
||||
|
||||
sauerbraten = callPackage ../games/sauerbraten {};
|
||||
@ -8273,6 +8275,8 @@ let
|
||||
lua = lua5;
|
||||
};
|
||||
|
||||
uqm = callPackage ../games/uqm { };
|
||||
|
||||
urbanterror = callPackage ../games/urbanterror { };
|
||||
|
||||
ut2004demo = callPackage ../games/ut2004demo { };
|
||||
|
Loading…
Reference in New Issue
Block a user