Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Mar 2008 21:27:02 GMT
From:      Ganael Laplanche <ganael.laplanche@martymac.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/121844: [new port] games/openalchemist
Message-ID:  <200803182127.m2ILR2q5016133@www.freebsd.org>
Resent-Message-ID: <200803182130.m2ILU1Zi016160@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         121844
>Category:       ports
>Synopsis:       [new port] games/openalchemist
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Tue Mar 18 21:30:00 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator:     Ganael Laplanche
>Release:        7.0-STABLE
>Organization:
http://contribs.martymac.com
>Environment:
FreeBSD home.martymac.com 7.0-STABLE FreeBSD 7.0-STABLE #10: Wed Mar 12 14:04:40 CET 2008     root@home.martymac.com:/usr/obj/usr/src/sys/MYKERNEL  amd64
>Description:
As suggested on the Wiki (http://wiki.freebsd.org/AndrewPantyukhin/Ports), here is a port of Openalchemist, a nice Tetris-like game developped using Clanlib.
>How-To-Repeat:

>Fix:


Patch attached with submission follows:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	openalchemist
#	openalchemist/pkg-plist
#	openalchemist/files
#	openalchemist/files/patch-game.h
#	openalchemist/files/patch-piece.h
#	openalchemist/files/patch-Makefile
#	openalchemist/files/patch-KeyboardKey.h
#	openalchemist/pkg-descr
#	openalchemist/distinfo
#	openalchemist/Makefile
#
echo c - openalchemist
mkdir -p openalchemist > /dev/null 2>&1
echo x - openalchemist/pkg-plist
sed 's/^X//' >openalchemist/pkg-plist << 'END-of-openalchemist/pkg-plist'
Xbin/openalchemist
Xshare/games/openalchemist/skins/aqua.zip
Xshare/games/openalchemist/skins/brushed.zip
X@dirrmtry share/games/openalchemist/skins
X@dirrmtry share/games/openalchemist
END-of-openalchemist/pkg-plist
echo c - openalchemist/files
mkdir -p openalchemist/files > /dev/null 2>&1
echo x - openalchemist/files/patch-game.h
sed 's/^X//' >openalchemist/files/patch-game.h << 'END-of-openalchemist/files/patch-game.h'
X--- includes/game.h.orig	2008-03-18 17:50:34.816043102 +0100
X+++ includes/game.h	2008-03-18 17:50:57.531984095 +0100
X@@ -219,47 +219,47 @@
X   public:
X 
X   //Constructor
X-  Game::Game(CL_DisplayWindow *window, bool opengl);
X+  Game(CL_DisplayWindow *window, bool opengl);
X   //Destructor
X-  Game::~Game();
X+  ~Game();
X 
X   // Some methods
X-  void Game::choose_skin();
X-  void Game::load_gfx();
X-  void Game::unload_gfx();
X-  void Game::toggle_screen();
X-  void Game::main_loop();
X+  void choose_skin();
X+  void load_gfx();
X+  void unload_gfx();
X+  void toggle_screen();
X+  void main_loop();
X 
X   // Methods to draw the game
X-  void Game::draw_game();  
X-  void Game::draw_playing();
X-  void Game::draw_falling();
X-  void Game::draw_destroying();
X-  void Game::draw_to_playing();
X-  void Game::draw_game_over();
X-  void Game::draw_new_hightscore();
X-  void Game::draw_pause();
X+  void draw_game();  
X+  void draw_playing();
X+  void draw_falling();
X+  void draw_destroying();
X+  void draw_to_playing();
X+  void draw_game_over();
X+  void draw_new_hightscore();
X+  void draw_pause();
X   
X-  void Game::draw_progress_bar();
X-  void Game::draw_skins_selector();
X+  void draw_progress_bar();
X+  void draw_skins_selector();
X 
X-  void Game::calc_score();
X+  void calc_score();
X  
X-  void Game::load_preferences();
X-  void Game::save_preferences();
X-  void Game::read_scores();
X-  void Game::save_scores();
X-  void Game::key_events();
X-  void Game::key_events_playing();
X-  void Game::key_events_pause();
X-  void Game::key_events_skins_selector();
X-  void Game::undo_last();
X-  void Game::new_game(short difficulty);
X-  void Game::fall();
X-  void Game::detect_to_destroy();
X-  void Game::detect_to_fall();
X+  void load_preferences();
X+  void save_preferences();
X+  void read_scores();
X+  void save_scores();
X+  void key_events();
X+  void key_events_playing();
X+  void key_events_pause();
X+  void key_events_skins_selector();
X+  void undo_last();
X+  void new_game(short difficulty);
X+  void fall();
X+  void detect_to_destroy();
X+  void detect_to_fall();
X 
X-  void Game::stop();
X+  void stop();
X 
X };
X 
END-of-openalchemist/files/patch-game.h
echo x - openalchemist/files/patch-piece.h
sed 's/^X//' >openalchemist/files/patch-piece.h << 'END-of-openalchemist/files/patch-piece.h'
X--- includes/piece.h.orig	2008-03-18 17:51:15.254937990 +0100
X+++ includes/piece.h	2008-03-18 17:51:38.315878696 +0100
X@@ -81,12 +81,12 @@
X   }
X  
X   // Methods to display - be carefull, if current_prite is not initialized
X-  void Piece::draw(CL_GraphicContext* context = 0)
X+  void draw(CL_GraphicContext* context = 0)
X     {
X       current_sprite -> draw(x, y, context);
X     }
X 
X-  void Piece::draw_mini(CL_GraphicContext* context = 0)
X+  void draw_mini(CL_GraphicContext* context = 0)
X     {
X       mini_sprite -> draw(x, y, context); 
X     }
END-of-openalchemist/files/patch-piece.h
echo x - openalchemist/files/patch-Makefile
sed 's/^X//' >openalchemist/files/patch-Makefile << 'END-of-openalchemist/files/patch-Makefile'
X--- Makefile.orig	2006-08-13 19:18:16.000000000 +0200
X+++ Makefile	2008-03-18 21:34:00.509266961 +0100
X@@ -1,15 +1,13 @@
X PACKAGES = clanCore-0.8 clanDisplay-0.8 clanApp-0.8 clanGL-0.8 clanSDL-0.8
X LIBS = `pkg-config --libs $(PACKAGES)`
X-OPTIONS =  -Iincludes -Wall -g
X+OPTIONS =  -Iincludes -I/usr/local/include -Wall -g
X LINKER_OPTIONS =  #-u malloc -lefence
X STATIC_LIBS = `pkg-config --libs $(PACKAGES) --static`
X CFLAGS = `pkg-config --cflags $(PACKAGES)`
X 
X-INSTALL_DIR = /usr/local/games/openalchemist
X-
X all: openalchemist
X 	@echo "OK"
X-	
X+
X test: 
X 	@echo "Test dependances installation"
X 	pkg-config --exists $(PACKAGES)
X@@ -60,20 +58,13 @@
X 	-rm openalchemist
X 	-rm skins/aqua.zip
X 	-rm skins/brushed.zip
X-	
X+
X install: openalchemist
X-	mkdir $(INSTALL_DIR)
X-	mkdir $(INSTALL_DIR)/skins
X-	cp openalchemist $(INSTALL_DIR)/
X-	cp skins/aqua.zip $(INSTALL_DIR)/skins/aqua.zip
X-	cp skins/brushed.zip $(INSTALL_DIR)/skins/brushed.zip
X-	ln -s $(INSTALL_DIR)/openalchemist /usr/local/bin/openalchemist
X-
X-uninstall: $(INSTALL_DIR)
X-	rm $(INSTALL_DIR)/* -R
X-	rmdir $(INSTALL_DIR)
X-	rm /usr/local/bin/openalchemist
X-	
X+	mkdir -p $(PREFIX)/bin
X+	mkdir -p $(PREFIX)/share/games/openalchemist/skins
X+	cp openalchemist $(PREFIX)/bin/
X+	cp skins/aqua.zip $(PREFIX)/share/games/openalchemist/skins/aqua.zip
X+	cp skins/brushed.zip $(PREFIX)/share/games/openalchemist/skins/brushed.zip
X 
X static: includes/*.h bin/main.o bin/game.o bin/key_events.o bin/detect_to_destroy.o bin/detect_to_fall.o bin/drawing.o bin/hightscores.o bin/pause.o bin/preferences.o bin/skins-selector.o skins/aqua.zip skins/brushed.zip
X 	@echo "On assemble le fichier final"
END-of-openalchemist/files/patch-Makefile
echo x - openalchemist/files/patch-KeyboardKey.h
sed 's/^X//' >openalchemist/files/patch-KeyboardKey.h << 'END-of-openalchemist/files/patch-KeyboardKey.h'
X--- includes/KeyboardKey.h.orig	2008-03-18 17:51:54.744835728 +0100
X+++ includes/KeyboardKey.h	2008-03-18 17:52:13.290787518 +0100
X@@ -38,7 +38,7 @@
X   /**
X    * Constructor
X    */
X-  KeyboardKey::KeyboardKey(int key, bool repeat = false)
X+  KeyboardKey(int key, bool repeat = false)
X   {
X     this->key = key;
X     this->repeat = repeat;
END-of-openalchemist/files/patch-KeyboardKey.h
echo x - openalchemist/pkg-descr
sed 's/^X//' >openalchemist/pkg-descr << 'END-of-openalchemist/pkg-descr'
XOpenAlchemist is a Tetris-like game developped with
Xthe Clanlib framework. Its goal is to reimplement the
Xgame www.naturalchimie.com with free software and
Xfree licenses.
X
XWWW: http://openalchemist.sourceforge.net
END-of-openalchemist/pkg-descr
echo x - openalchemist/distinfo
sed 's/^X//' >openalchemist/distinfo << 'END-of-openalchemist/distinfo'
XMD5 (openalchemist-0.2-src.tar.gz) = fc2ddfa6b37a6573fb262363804f0c84
XSHA256 (openalchemist-0.2-src.tar.gz) = 5b81dead3532394683a3cec3f5164543ba9fd191ad54f5c1d8329442cea89b29
XSIZE (openalchemist-0.2-src.tar.gz) = 2468509
END-of-openalchemist/distinfo
echo x - openalchemist/Makefile
sed 's/^X//' >openalchemist/Makefile << 'END-of-openalchemist/Makefile'
X# New ports collection makefile for:    openalchemist
X# Date created:     Sat Oct 01 09:30:00 UTC 2003
X# Whom:         Ganael LAPLANCHE <ganael.laplanche@martymac.com>
X#
X# $FreeBSD:$
X#
X
XPORTNAME=	openalchemist
XPORTVERSION=	0.2
XCATEGORIES=	games
XMASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR=	openalchemist
XDISTNAME=	${PORTNAME}-${PORTVERSION}-src
X
XMAINTAINER=	ganael.laplanche@martymac.com
XCOMMENT=	Tetris-like game
X
XBUILD_DEPENDS=	pkg-config:${PORTSDIR}/devel/pkg-config
XLIB_DEPENDS=	clanCore-0.8:${PORTSDIR}/devel/clanlib
X
X# Allow relocation of skins (by default, must be in the skins/ sub-dir)
Xpost-patch:
X	@${REINPLACE_CMD} -E -e 's|CL_System::get_exe_path\(\) \+ "skins/|"${PREFIX}/share/games/${PORTNAME}/skins/|g' ${WRKSRC}/src/*.cpp
X
X.include <bsd.port.mk>
END-of-openalchemist/Makefile
exit



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803182127.m2ILR2q5016133>