1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-24 04:33:24 +00:00

exMARS combines the latest advance in corewar simulation technology, with

proactive performance optimizations.

Actually exMARS is a redcode simulator, just like exhaust and pMARS. In fact,
I have shamelessly taken sourcecode from pMARS, exhaust, some ideas from
qMars, a shot of optimizations, shook everything well, and garnished
everything with a high level interface for Ruby.

PR:		ports/83576
Submitted by:	Alejandro Pulver <alejandro@varnet.biz>
This commit is contained in:
Pav Lucistnik 2005-07-18 21:12:39 +00:00
parent 5e015f9e53
commit 1c72a7109e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=139540
6 changed files with 138 additions and 0 deletions

View File

@ -129,6 +129,7 @@
SUBDIR += enigma
SUBDIR += euchre
SUBDIR += evilfinder
SUBDIR += exmars
SUBDIR += exult
SUBDIR += falconseye
SUBDIR += farblazer

45
games/exmars/Makefile Normal file
View File

@ -0,0 +1,45 @@
# New ports collection makefile for: exmars
# Date created: 16 Jul 2005
# Whom: Alejandro Pulver <alejandro@varnet.biz>
#
# $FreeBSD$
#
PORTNAME= exmars
PORTVERSION= 0.01
CATEGORIES= games
MASTER_SITES= http://martinus.geekisp.com/files/
MAINTAINER= alejandro@varnet.biz
COMMENT= Memory Array Redcode Simulator, just like exhaust and pMARS
USE_REINPLACE= yes
ALL_TARGET= ${PORTNAME}
OPTIONS= OPTIMIZED_CFLAGS "Enable compilation optimizations" off
do-install:
# Program
@${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin
# Data
@${MKDIR} ${DATADIR}
@${CP} -R ${WRKSRC}/warriors ${DATADIR}
@${INSTALL_SCRIPT} ${WRKSRC}/bench.sh ${DATADIR}
.include <bsd.port.pre.mk>
post-patch:
# Fix bench.sh
@${REINPLACE_CMD} -e 's|pmars|pmars-server| ; \
s|\./exmars|exmars|' \
${WRKSRC}/bench.sh
# Enable/disable compilation optimizations
@${REINPLACE_CMD} -e 's|\($${OPT}\)|${CFLAGS} \1|' ${WRKSRC}/${MAKEFILE}
.if !defined(WITH_OPTIMIZED_CFLAGS)
@${REINPLACE_CMD} -e 's|$${OPT}||' ${WRKSRC}/${MAKEFILE}
.endif
.include <bsd.port.post.mk>

2
games/exmars/distinfo Normal file
View File

@ -0,0 +1,2 @@
MD5 (exmars-0.01.tar.gz) = eccab4367bea768763e4a15cddbbe23f
SIZE (exmars-0.01.tar.gz) = 67047

View File

@ -0,0 +1,21 @@
--- Makefile.orig Thu Oct 16 04:59:17 2003
+++ Makefile Thu Jul 7 15:32:24 2005
@@ -1,9 +1,9 @@
# default flags
-CCFLAGS = -O3 -fomit-frame-pointer
+CCFLAGS = ${OPT}
# my own highly tuned settings
#CC = gcc-3.3.1
-#CCFLAGS = -O3 -fomit-frame-pointer -fforce-addr -funroll-all-loops -fstrict-aliasing -malign-double -fprefetch-loop-arrays -maccumulate-outgoing-args -minline-all-stringops -finline-functions -finline-limit=800 -ffast-math -mno-align-stringops
+OPT = -O3 -fomit-frame-pointer -fforce-addr -funroll-all-loops -fstrict-aliasing -malign-double -fprefetch-loop-arrays -maccumulate-outgoing-args -minline-all-stringops -finline-functions -finline-limit=800 -ffast-math -mno-align-stringops
#CCFLAGS += -mfpmath=sse,387 -mmmx -msse -march=pentium3
# develomental flags
@@ -21,4 +21,4 @@
rm -f exmars Mars.so *.o *~
distclean: clean
- rm -f *.da
\ No newline at end of file
+ rm -f *.da

24
games/exmars/pkg-descr Normal file
View File

@ -0,0 +1,24 @@
exMARS combines the latest advance in corewar simulation technology, with
proactive performance optimizations.
Actually exMARS is a redcode simulator, just like exhaust and pMARS. In fact,
I have shamelessly taken sourcecode from pMARS, exhaust, some ideas from
qMars, a shot of optimizations, shook everything well, and garnished
everything with a high level interface for Ruby.
The resulting program has the following main features:
* Uses the parser from pMARS, so no previous parsing is neccessary. At first
this was my main motivation for exMARS.
* Speed: 50% faster than pmars on a Pentium III, and often more than twice as
fast than pmars on a Pentium 4 (using gcc 3.3.1, and the same compiler
options).
* Rewritten the code in a more object oriented way, which allows different
Mars at the same time in the same program, it should also be thread save.
Author: Martin Ankerl
WWW: http://martinus.geekisp.com/rublog.cgi/Projects/CoreWar/exMARS
- Alejandro Pulver
alejandro@varnet.biz

45
games/exmars/pkg-plist Normal file
View File

@ -0,0 +1,45 @@
bin/exmars
%%DATADIR%%/bench.sh
%%DATADIR%%/warriors/94nop/Fixed.red
%%DATADIR%%/warriors/94nop/Jaguar.red
%%DATADIR%%/warriors/94nop/QuickSilver.red
%%DATADIR%%/warriors/94nop/Stalker.red
%%DATADIR%%/warriors/94nop/behemot.red
%%DATADIR%%/warriors/94nop/blade.red
%%DATADIR%%/warriors/94nop/candy.red
%%DATADIR%%/warriors/94nop/candy2.red
%%DATADIR%%/warriors/94nop/cheephalfoff.red
%%DATADIR%%/warriors/94nop/firestorm.red
%%DATADIR%%/warriors/94nop/harmonysnoot.red
%%DATADIR%%/warriors/94nop/hazylazy.red
%%DATADIR%%/warriors/94nop/herbalavenger.red
%%DATADIR%%/warriors/94nop/jinx.red
%%DATADIR%%/warriors/94nop/machine.red
%%DATADIR%%/warriors/94nop/nPaperII.red
%%DATADIR%%/warriors/94nop/numb.red
%%DATADIR%%/warriors/94nop/olivia.red
%%DATADIR%%/warriors/94nop/pixie.red
%%DATADIR%%/warriors/94nop/procoptodon.red
%%DATADIR%%/warriors/94nop/purifier.red
%%DATADIR%%/warriors/94nop/recon2.red
%%DATADIR%%/warriors/94nop/reepicheep.red
%%DATADIR%%/warriors/94nop/rotpendragon.red
%%DATADIR%%/warriors/94nop/rov.red
%%DATADIR%%/warriors/94nop/silvertalon12.red
%%DATADIR%%/warriors/94nop/sonofvain.red
%%DATADIR%%/warriors/94nop/thunderstrike.red
%%DATADIR%%/warriors/94nop/uninvited.red
%%DATADIR%%/warriors/94nop/vanquisher2.red
%%DATADIR%%/warriors/error/error.red
%%DATADIR%%/warriors/pspace/dawn2.red
%%DATADIR%%/warriors/pspace/devilish.red
%%DATADIR%%/warriors/pspace/hammerhead.red
%%DATADIR%%/warriors/pspace/preserver.red
%%DATADIR%%/warriors/pspace/rotpendragon2.red
%%DATADIR%%/warriors/pspace/sunset.red
%%DATADIR%%/warriors/pspace/unheardof.red
@dirrm %%DATADIR%%/warriors/pspace
@dirrm %%DATADIR%%/warriors/error
@dirrm %%DATADIR%%/warriors/94nop
@dirrm %%DATADIR%%/warriors
@dirrm %%DATADIR%%