aboutsummaryrefslogtreecommitdiffstats
path: root/games
diff options
context:
space:
mode:
authorpav <pav@FreeBSD.org>2005-07-23 06:34:47 +0800
committerpav <pav@FreeBSD.org>2005-07-23 06:34:47 +0800
commit429a30e579e8521b14d4320bc010ad13dc5f777b (patch)
tree3bbd69193c4ef31bcb75b397b7f808d67312db4e /games
parente6f3cdf9dcb824b3c87c83c9e7da767d1efb4c55 (diff)
downloadfreebsd-ports-gnome-429a30e579e8521b14d4320bc010ad13dc5f777b.tar.gz
freebsd-ports-gnome-429a30e579e8521b14d4320bc010ad13dc5f777b.tar.zst
freebsd-ports-gnome-429a30e579e8521b14d4320bc010ad13dc5f777b.zip
fmars is Fast Memory Array Redcode Simulator
A specialized simulator for the game of Corewars. It's designed to be of particular use in automated redcode optimizers and evolvers. fmars borrows the idea from Martin Ankerl's qmars and pushes it to the extreme. PR: ports/83577 Submitted by: Alejandro Pulver <alejandro@varnet.biz>
Diffstat (limited to 'games')
-rw-r--r--games/Makefile1
-rw-r--r--games/fmars/Makefile63
-rw-r--r--games/fmars/distinfo2
-rw-r--r--games/fmars/files/patch-Makefile18
-rw-r--r--games/fmars/pkg-descr17
-rw-r--r--games/fmars/pkg-plist240
6 files changed, 341 insertions, 0 deletions
diff --git a/games/Makefile b/games/Makefile
index c3f832c941fa..3ef15555e19b 100644
--- a/games/Makefile
+++ b/games/Makefile
@@ -141,6 +141,7 @@
SUBDIR += fkiss
SUBDIR += flightgear
SUBDIR += flying
+ SUBDIR += fmars
SUBDIR += foobillard
SUBDIR += fotaq
SUBDIR += frabs
diff --git a/games/fmars/Makefile b/games/fmars/Makefile
new file mode 100644
index 000000000000..063c9f79fac3
--- /dev/null
+++ b/games/fmars/Makefile
@@ -0,0 +1,63 @@
+# New ports collection makefile for: fmars
+# Date created: 16 Jul 2005
+# Whom: Alejandro Pulver <alejandro@varnet.biz>
+#
+# $FreeBSD$
+#
+
+PORTNAME= fmars
+PORTVERSION= 0.0.207
+CATEGORIES= games
+MASTER_SITES= http://www.v-lo.krakow.pl/~michal/
+
+MAINTAINER= alejandro@varnet.biz
+COMMENT= Fast Memory Array Redcode Simulator
+
+BUILD_DEPENDS= guile:${PORTSDIR}/lang/guile
+
+USE_BZIP2= yes
+USE_GMAKE= yes
+USE_REINPLACE= yes
+
+ALL_TARGET= x${PORTNAME}
+
+OPTIONS= OPTIMIZED_CFLAGS "Enable compilation optimizations" off
+
+do-install:
+# Program
+ @${INSTALL_PROGRAM} ${WRKSRC}/x${PORTNAME} ${PREFIX}/bin/${PORTNAME}
+
+# Data
+ @${MKDIR} ${DATADIR}
+.for d in rc rc-test
+ @${CP} -R ${WRKSRC}/${d} ${DATADIR}
+.endfor
+
+# Documentation (optional)
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}
+.endif
+
+post-install:
+# Fix permissions
+ @${CHOWN} -R ${BINOWN}:${BINGRP} ${DATADIR}
+ @${FIND} ${DATADIR} -type f -print0 | \
+ ${XARGS} -0 ${CHMOD} 644
+ @${FIND} ${DATADIR} -type d -print0 | \
+ ${XARGS} -0 ${CHMOD} 755
+
+.include <bsd.port.pre.mk>
+
+post-patch:
+# Fix Makefile
+ @${REINPLACE_CMD} -e 's|\($$(OPT)\)|${CFLAGS} \1| ; \
+ s|gcc|${CC}|g' \
+ ${WRKSRC}/${MAKEFILE}
+
+# Enable/disable compilation optimizations
+.if !defined(WITH_OPTIMIZED_CFLAGS)
+ @${REINPLACE_CMD} -e 's|$$(OPT)||' ${WRKSRC}/${MAKEFILE}
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/games/fmars/distinfo b/games/fmars/distinfo
new file mode 100644
index 000000000000..5b008aeb5600
--- /dev/null
+++ b/games/fmars/distinfo
@@ -0,0 +1,2 @@
+MD5 (fmars-0.0.207.tar.bz2) = 2d42d187dab2edf2e51e6ed0e7484eec
+SIZE (fmars-0.0.207.tar.bz2) = 87057
diff --git a/games/fmars/files/patch-Makefile b/games/fmars/files/patch-Makefile
new file mode 100644
index 000000000000..b718230a3c8b
--- /dev/null
+++ b/games/fmars/files/patch-Makefile
@@ -0,0 +1,18 @@
+--- Makefile.orig Sun May 15 12:54:02 2005
++++ Makefile Thu Jul 7 19:26:25 2005
+@@ -5,13 +5,12 @@
+ #INDENT = indent
+
+
+-CC = gcc
+-CFLAGS = -O2 -fomit-frame-pointer -fpic -fno-strict-aliasing #-march=athlon-xp
++CFLAGS = $(OPT)
++OPT = -O2 -fomit-frame-pointer
+ #DEBUG = -g -fno-omit-frame-pointer -O0
+
+ #options for fm_sim.c only:
+ #no-crossjumping - gcc 3.3 breaks computed gotos, this seems to help a little
+-OPTS = -fno-cse-follow-jumps -fno-crossjumping
+ #OPTS += -fno-strict-aliasing
+
+ #CFLAGS = $(CFLAGS_OPT) -fverbose-asm -W -Wimplicit -Wparentheses -Wpointer-arith \
diff --git a/games/fmars/pkg-descr b/games/fmars/pkg-descr
new file mode 100644
index 000000000000..804d4be011e8
--- /dev/null
+++ b/games/fmars/pkg-descr
@@ -0,0 +1,17 @@
+fmars is Fast Memory Array Redcode Simulator
+
+A specialized simulator for the game of Corewars. It's designed to be of
+particular use in automated redcode optimizers and evolvers. fmars borrows the
+idea from Martin Ankerl's qmars and pushes it to the extreme.
+
+It generates source code with special case for every possible opcode/addressing
+mode combination. This allows some optimizations that aren't possible in other
+simulators.
+
+fmars is compatible with pMARS with an exception for p-space, which is not yet
+implemented.
+
+WWW: http://www.v-lo.krakow.pl/~michal/fmars.html
+
+- Alejandro Pulver
+alejandro@varnet.biz
diff --git a/games/fmars/pkg-plist b/games/fmars/pkg-plist
new file mode 100644
index 000000000000..bd0aaca3ac7f
--- /dev/null
+++ b/games/fmars/pkg-plist
@@ -0,0 +1,240 @@
+bin/fmars
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%DATADIR%%/rc-test/defaults.rc
+%%DATADIR%%/rc-test/defaults.red
+%%DATADIR%%/rc-test/e.txt
+%%DATADIR%%/rc-test/modes.rc
+%%DATADIR%%/rc-test/modes.red
+%%DATADIR%%/rc-test/modfs.rc
+%%DATADIR%%/rc-test/modfs.red
+%%DATADIR%%/rc-test/opcodes.rc
+%%DATADIR%%/rc-test/opcodes.red
+%%DATADIR%%/rc-test/p.txt
+%%DATADIR%%/rc-test/pin1a.rc
+%%DATADIR%%/rc-test/pin1a.red
+%%DATADIR%%/rc-test/pin1b.rc
+%%DATADIR%%/rc-test/pin1b.red
+%%DATADIR%%/rc-test/pin2a.rc
+%%DATADIR%%/rc-test/pin2a.red
+%%DATADIR%%/rc-test/pin2b.rc
+%%DATADIR%%/rc-test/pin2b.red
+%%DATADIR%%/rc-test/ptest1.rc
+%%DATADIR%%/rc-test/ptest1.red
+%%DATADIR%%/rc-test/ptest2.rc
+%%DATADIR%%/rc-test/ptest2.red
+%%DATADIR%%/rc-test/ptest3.rc
+%%DATADIR%%/rc-test/ptest3.red
+%%DATADIR%%/rc-test/ptest4.rc
+%%DATADIR%%/rc-test/ptest4.red
+%%DATADIR%%/rc-test/ptest5.rc
+%%DATADIR%%/rc-test/ptest5.red
+%%DATADIR%%/rc-test/ptest6.rc
+%%DATADIR%%/rc-test/ptest6.red
+%%DATADIR%%/rc-test/validate.rc
+%%DATADIR%%/rc-test/validate.red
+%%DATADIR%%/rc/0test/jmn-f-sk1.rc
+%%DATADIR%%/rc/0test/jmn-f-sk2.rc
+%%DATADIR%%/rc/0test/jmn-f.rc
+%%DATADIR%%/rc/0test/jmz-f.rc
+%%DATADIR%%/rc/blur/Blade.rc
+%%DATADIR%%/rc/blur/Ikarus.rc
+%%DATADIR%%/rc/blur/boys.rc
+%%DATADIR%%/rc/blur/herbal.rc
+%%DATADIR%%/rc/blur/jinx2.rc
+%%DATADIR%%/rc/blur/macabres.rc
+%%DATADIR%%/rc/blur/miniblur.rc
+%%DATADIR%%/rc/blur/myblur2.rc
+%%DATADIR%%/rc/blur/pre75.rc
+%%DATADIR%%/rc/blur/srage.rc
+%%DATADIR%%/rc/blur/stalker.rc
+%%DATADIR%%/rc/blur/zooom.rc
+%%DATADIR%%/rc/bomber/DMan.rc
+%%DATADIR%%/rc/bomber/Fuse.rc
+%%DATADIR%%/rc/bomber/behemot.rc
+%%DATADIR%%/rc/bomber/damage2.rc
+%%DATADIR%%/rc/bomber/draken.rc
+%%DATADIR%%/rc/bomber/myvamp54.rc
+%%DATADIR%%/rc/bomber/pdown.rc
+%%DATADIR%%/rc/bomber/preserv.rc
+%%DATADIR%%/rc/bomber/rfrenzy2.rc
+%%DATADIR%%/rc/bomber/torcht18.rc
+%%DATADIR%%/rc/bomber/tornado4.rc
+%%DATADIR%%/rc/bomber/vamp02b.rc
+%%DATADIR%%/rc/clear/D2003.rc
+%%DATADIR%%/rc/clear/Myth.rc
+%%DATADIR%%/rc/clear/cereal.rc
+%%DATADIR%%/rc/clear/cshot2.rc
+%%DATADIR%%/rc/clear/fscan.rc
+%%DATADIR%%/rc/clear/g2.rc
+%%DATADIR%%/rc/clear/geist.rc
+%%DATADIR%%/rc/clear/giants.rc
+%%DATADIR%%/rc/clear/goonie.rc
+%%DATADIR%%/rc/clear/luke.rc
+%%DATADIR%%/rc/clear/theblood.rc
+%%DATADIR%%/rc/clear/twinshot.rc
+%%DATADIR%%/rc/nso/g2.rc
+%%DATADIR%%/rc/nso/herbal.rc
+%%DATADIR%%/rc/nso/npaper2.rc
+%%DATADIR%%/rc/nso/qsilver.rc
+%%DATADIR%%/rc/nso/rcheep.rc
+%%DATADIR%%/rc/nso/recon2.rc
+%%DATADIR%%/rc/nso/rotfcopy.rc
+%%DATADIR%%/rc/nso/sovain.rc
+%%DATADIR%%/rc/nso/willow.rc
+%%DATADIR%%/rc/paper-imp/blowrag.rc
+%%DATADIR%%/rc/paper-imp/dawn2.rc
+%%DATADIR%%/rc/paper-imp/decoys.rc
+%%DATADIR%%/rc/paper-imp/defensiv.rc
+%%DATADIR%%/rc/paper-imp/fstorm.rc
+%%DATADIR%%/rc/paper-imp/lordimp.rc
+%%DATADIR%%/rc/paper-imp/minijedi.rc
+%%DATADIR%%/rc/paper-imp/netpap.rc
+%%DATADIR%%/rc/paper-imp/rotfcopy.rc
+%%DATADIR%%/rc/paper-imp/safetyin.rc
+%%DATADIR%%/rc/paper-imp/silking.rc
+%%DATADIR%%/rc/paper-imp/unheard.rc
+%%DATADIR%%/rc/paper-stone/Metal.rc
+%%DATADIR%%/rc/paper-stone/faction4.rc
+%%DATADIR%%/rc/paper-stone/numb.rc
+%%DATADIR%%/rc/paper-stone/pglum.rc
+%%DATADIR%%/rc/paper-stone/purifier.rc
+%%DATADIR%%/rc/paper-stone/rcheep.rc
+%%DATADIR%%/rc/paper-stone/recovery.rc
+%%DATADIR%%/rc/paper-stone/wpaper.rc
+%%DATADIR%%/rc/paper/SOS.rc
+%%DATADIR%%/rc/paper/Tyrant.rc
+%%DATADIR%%/rc/paper/disinc.rc
+%%DATADIR%%/rc/paper/first.rc
+%%DATADIR%%/rc/paper/fixed.rc
+%%DATADIR%%/rc/paper/npaper2.rc
+%%DATADIR%%/rc/paper/revenge.rc
+%%DATADIR%%/rc/paper/skin.rc
+%%DATADIR%%/rc/paper/stylized.rc
+%%DATADIR%%/rc/paper/venom.rc
+%%DATADIR%%/rc/paper/wuncle.rc
+%%DATADIR%%/rc/paper/yorba.rc
+%%DATADIR%%/rc/scanner/agonyII.rc
+%%DATADIR%%/rc/scanner/cwork.rc
+%%DATADIR%%/rc/scanner/hsa.rc
+%%DATADIR%%/rc/scanner/mischief.rc
+%%DATADIR%%/rc/scanner/mlion.rc
+%%DATADIR%%/rc/scanner/oos.rc
+%%DATADIR%%/rc/scanner/razor.rc
+%%DATADIR%%/rc/scanner/recon2.rc
+%%DATADIR%%/rc/scanner/solo3.rc
+%%DATADIR%%/rc/scanner/tnames.rc
+%%DATADIR%%/rc/scanner/willow.rc
+%%DATADIR%%/rc/scanner/win.rc
+%%DATADIR%%/rc/stone-a-imp/976.rc
+%%DATADIR%%/rc/stone-a-imp/Stormkeeper.rc
+%%DATADIR%%/rc/stone-a-imp/airbag.rc
+%%DATADIR%%/rc/stone-a-imp/candy2.rc
+%%DATADIR%%/rc/stone-a-imp/cascade.rc
+%%DATADIR%%/rc/stone-a-imp/gigolo.rc
+%%DATADIR%%/rc/stone-a-imp/ironicimps.rc
+%%DATADIR%%/rc/stone-a-imp/rosebud.rc
+%%DATADIR%%/rc/stone-a-imp/rotp.rc
+%%DATADIR%%/rc/stone-a-imp/rotp2.rc
+%%DATADIR%%/rc/stone-b-imp/blinedl.rc
+%%DATADIR%%/rc/stone-b-imp/devilish.rc
+%%DATADIR%%/rc/stone-b-imp/hhead.rc
+%%DATADIR%%/rc/stone-b-imp/olivia.rc
+%%DATADIR%%/rc/stone-b-imp/pixie.rc
+%%DATADIR%%/rc/stone-b-imp/qsilver.rc
+%%DATADIR%%/rc/stone-b-imp/revival.rc
+%%DATADIR%%/rc/stone-b-imp/sovain.rc
+%%DATADIR%%/rc/stone-b-imp/uvited.rc
+%%DATADIR%%/rc/stone-b-imp/vain.rc
+%%DATADIR%%/rc/top50/behemot.rc
+%%DATADIR%%/rc/top50/blade.rc
+%%DATADIR%%/rc/top50/boysareback.rc
+%%DATADIR%%/rc/top50/candy.rc
+%%DATADIR%%/rc/top50/candy2.rc
+%%DATADIR%%/rc/top50/cascade.rc
+%%DATADIR%%/rc/top50/cereal.rc
+%%DATADIR%%/rc/top50/cheephalfoff.rc
+%%DATADIR%%/rc/top50/crazyshot2.rc
+%%DATADIR%%/rc/top50/dat0.rc
+%%DATADIR%%/rc/top50/dawn.rc
+%%DATADIR%%/rc/top50/dawn2.rc
+%%DATADIR%%/rc/top50/dclear.rc
+%%DATADIR%%/rc/top50/dclear2.rc
+%%DATADIR%%/rc/top50/deepfreezex.rc
+%%DATADIR%%/rc/top50/defensive.rc
+%%DATADIR%%/rc/top50/devilish.rc
+%%DATADIR%%/rc/top50/devilstick.rc
+%%DATADIR%%/rc/top50/disincentive.rc
+%%DATADIR%%/rc/top50/fastaction4.rc
+%%DATADIR%%/rc/top50/firestorm.rc
+%%DATADIR%%/rc/top50/freighttrainv02.rc
+%%DATADIR%%/rc/top50/g2.rc
+%%DATADIR%%/rc/top50/geist.rc
+%%DATADIR%%/rc/top50/hammerhead.rc
+%%DATADIR%%/rc/top50/harmonysnoot.rc
+%%DATADIR%%/rc/top50/hazylazy.rc
+%%DATADIR%%/rc/top50/herbalavenger.rc
+%%DATADIR%%/rc/top50/hescansalone.rc
+%%DATADIR%%/rc/top50/idioteque.rc
+%%DATADIR%%/rc/top50/imp.rc
+%%DATADIR%%/rc/top50/ironicimps.rc
+%%DATADIR%%/rc/top50/jinx.rc
+%%DATADIR%%/rc/top50/jinx2.rc
+%%DATADIR%%/rc/top50/machine.rc
+%%DATADIR%%/rc/top50/marsupiallion.rc
+%%DATADIR%%/rc/top50/myblur2.rc
+%%DATADIR%%/rc/top50/newt.rc
+%%DATADIR%%/rc/top50/npaper2.rc
+%%DATADIR%%/rc/top50/numb.rc
+%%DATADIR%%/rc/top50/olivia.rc
+%%DATADIR%%/rc/top50/pixie.rc
+%%DATADIR%%/rc/top50/pre75_z47a.rc
+%%DATADIR%%/rc/top50/preserver.rc
+%%DATADIR%%/rc/top50/procoptodon.rc
+%%DATADIR%%/rc/top50/purifier.rc
+%%DATADIR%%/rc/top50/quicksilver.rc
+%%DATADIR%%/rc/top50/razor.rc
+%%DATADIR%%/rc/top50/recon2.rc
+%%DATADIR%%/rc/top50/recovery.rc
+%%DATADIR%%/rc/top50/reep-noq.rc
+%%DATADIR%%/rc/top50/reepicheep.rc
+%%DATADIR%%/rc/top50/revengepaper.rc
+%%DATADIR%%/rc/top50/ring_a.rc
+%%DATADIR%%/rc/top50/ring_b.rc
+%%DATADIR%%/rc/top50/rotf-noq.rc
+%%DATADIR%%/rc/top50/rotfcopy.rc
+%%DATADIR%%/rc/top50/rotpendragon.rc
+%%DATADIR%%/rc/top50/rotpendragon2.rc
+%%DATADIR%%/rc/top50/rov.rc
+%%DATADIR%%/rc/top50/scanman.rc
+%%DATADIR%%/rc/top50/sevenbrothers.rc
+%%DATADIR%%/rc/top50/seveneleven11gi.rc
+%%DATADIR%%/rc/top50/silking.rc
+%%DATADIR%%/rc/top50/silvertalon12.rc
+%%DATADIR%%/rc/top50/soldierofsilk.rc
+%%DATADIR%%/rc/top50/sonofvain.rc
+%%DATADIR%%/rc/top50/stormkeeper.rc
+%%DATADIR%%/rc/top50/tangletrap3.rc
+%%DATADIR%%/rc/top50/thunderstrike.rc
+%%DATADIR%%/rc/top50/unheardof.rc
+%%DATADIR%%/rc/top50/uninvited.rc
+%%DATADIR%%/rc/top50/vanquisher2.rc
+%%DATADIR%%/rc/top50/wallpaper.rc
+%%DATADIR%%/rc/top50/willow.rc
+%%DATADIR%%/rc/top50/wipeuncle.rc
+%%DATADIR%%/rc/top50/zooom.rc
+@dirrm %%DATADIR%%/rc/top50
+@dirrm %%DATADIR%%/rc/stone-b-imp
+@dirrm %%DATADIR%%/rc/stone-a-imp
+@dirrm %%DATADIR%%/rc/scanner
+@dirrm %%DATADIR%%/rc/paper-stone
+@dirrm %%DATADIR%%/rc/paper-imp
+@dirrm %%DATADIR%%/rc/paper
+@dirrm %%DATADIR%%/rc/nso
+@dirrm %%DATADIR%%/rc/clear
+@dirrm %%DATADIR%%/rc/bomber
+@dirrm %%DATADIR%%/rc/blur
+@dirrm %%DATADIR%%/rc/0test
+@dirrm %%DATADIR%%/rc-test
+@dirrm %%DATADIR%%/rc
+@dirrm %%DATADIR%%
+%%PORTDOCS%%@dirrm %%DOCSDIR%%