1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-02-07 11:49:40 +00:00

[NEW PORT] games/quantumminigolf: A computer game visualizing quantum mechanics

The game quantum minigolf is nearly the same as the game minigolf
	- except that the ball obeys the laws of quantum mechanics.

	Such a ball can be at several places at once. It can diffract around
	obstacles and interfere with itself. Apart from that, the rules are
	the same: You can play on various tracks involving various obstacles.
	You hit the ball with a club and try to kick it into a hole on the
	other side of the track.

	WWW: http://quantumminigolf.sourceforge.net

PR:		ports/116501
Submitted by:	Dmitry Marakasov <amdmi3@amdmi3.ru>
This commit is contained in:
Edwin Groothuis 2007-09-23 06:54:54 +00:00
parent a783654994
commit 212716d09a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=199958
7 changed files with 192 additions and 0 deletions

View File

@ -654,6 +654,7 @@
SUBDIR += quake3
SUBDIR += quake3-data
SUBDIR += quakeforge
SUBDIR += quantumminigolf
SUBDIR += quaqut
SUBDIR += qudos
SUBDIR += quetoo

View File

@ -0,0 +1,56 @@
# New ports collection makefile for: quantumminigolf
# Date created: 13 Sep 2007
# Whom: Dmitry Marakasov <amdmi3@amdmi3.ru>
#
# $FreeBSD$
#
PORTNAME= quantumminigolf
PORTVERSION= 1.1.0
CATEGORIES= games
MASTER_SITES= SF
DISTNAME= ${PORTNAME}-${PORTVERSION}.src
MAINTAINER= amdmi3@amdmi3.ru
COMMENT= A computer game visualizing quantum mechanics
LIB_DEPENDS= fftw3f:${PORTSDIR}/math/fftw3-float \
fftw3:${PORTSDIR}/math/fftw3
USE_GMAKE= yes
USE_SDL= sdl ttf
MAKE_ARGS= CXX=${CXX}
PORTDOCS= README THANKS
OPTIONS= OCFLAGS "Use optimized compiler flags" on
.include <bsd.port.pre.mk>
.if !defined(WITHOUT_OCFLAGS)
CXXFLAGS+= -O3 -fomit-frame-pointer -finline-functions -malign-double -funroll-all-loops
.endif
post-patch:
@${REINPLACE_CMD} -e 's|gfx/|${DATADIR}/&|' ${WRKSRC}/Renderer.cpp
@${REINPLACE_CMD} -e 's|fonts/|${DATADIR}/&|' ${WRKSRC}/Renderer.cpp
@${REINPLACE_CMD} -e 's|tracks/|${DATADIR}/&|' ${WRKSRC}/TrackSelector.cpp
@${REINPLACE_CMD} -e 's|malloc.h|stdlib.h|' ${WRKSRC}/QuantumSimulator.h
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/quantumminigolf ${PREFIX}/bin
${MKDIR} ${DATADIR}/gfx ${DATADIR}/fonts ${DATADIR}/tracks
${INSTALL_DATA} ${WRKSRC}/gfx/*.bmp ${DATADIR}/gfx
${INSTALL_DATA} ${WRKSRC}/fonts/*.ttf ${DATADIR}/fonts
${INSTALL_DATA} ${WRKSRC}/tracks/*.bmp ${WRKSRC}/tracks/*.cfg \
${DATADIR}/tracks
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
.for f in ${PORTDOCS}
${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
.endfor
.endif
.include <bsd.port.post.mk>
# DO NOT DELETE

View File

@ -0,0 +1,55 @@
# New ports collection makefile for: quantumminigolf
# Date created: 13 Sep 2007
# Whom: Dmitry Marakasov <amdmi3@amdmi3.ru>
#
# $FreeBSD$
#
PORTNAME= quantumminigolf
PORTVERSION= 1.1.0
CATEGORIES= games
MASTER_SITES= SF
DISTNAME= ${PORTNAME}-${PORTVERSION}.src
MAINTAINER= amdmi3@amdmi3.ru
COMMENT= A computer game visualizing quantum mechanics
LIB_DEPENDS= fftw3f:${PORTSDIR}/math/fftw3-float \
fftw3:${PORTSDIR}/math/fftw3
USE_GMAKE= yes
USE_SDL= sdl ttf
MAKE_ARGS= CXX=${CXX}
PORTDOCS= README THANKS
OPTIONS= OCFLAGS "Use optimized compiler flags" on
.include <bsd.port.pre.mk>
.if !defined(WITHOUT_OCFLAGS)
CXXFLAGS+= -O3 -fomit-frame-pointer -finline-functions -malign-double -funroll-all-loops
.endif
post-patch:
@${REINPLACE_CMD} -e 's|gfx/|${DATADIR}/&|' ${WRKSRC}/Renderer.cpp
@${REINPLACE_CMD} -e 's|fonts/|${DATADIR}/&|' ${WRKSRC}/Renderer.cpp
@${REINPLACE_CMD} -e 's|tracks/|${DATADIR}/&|' ${WRKSRC}/TrackSelector.cpp
@${REINPLACE_CMD} -e 's|malloc.h|stdlib.h|' ${WRKSRC}/QuantumSimulator.h
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/quantumminigolf ${PREFIX}/bin
${MKDIR} ${DATADIR}/gfx ${DATADIR}/fonts ${DATADIR}/tracks
${INSTALL_DATA} ${WRKSRC}/gfx/*.bmp ${DATADIR}/gfx
${INSTALL_DATA} ${WRKSRC}/fonts/*.ttf ${DATADIR}/fonts
${INSTALL_DATA} ${WRKSRC}/tracks/*.bmp ${WRKSRC}/tracks/*.cfg \
${DATADIR}/tracks
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
.for f in ${PORTDOCS}
${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
.endfor
.endif
.include <bsd.port.post.mk>

View File

@ -0,0 +1,3 @@
MD5 (quantumminigolf-1.1.0.src.tar.gz) = 96689f94b4519bc8487c26c9941bf225
SHA256 (quantumminigolf-1.1.0.src.tar.gz) = 31cbf1a4a024986b99fe928d0fd95e4e774e127cd4ba285438add7df03f6cc68
SIZE (quantumminigolf-1.1.0.src.tar.gz) = 465432

View File

@ -0,0 +1,30 @@
--- Makefile.orig Mon Aug 6 22:54:58 2007
+++ Makefile Thu Sep 13 20:51:10 2007
@@ -7,9 +7,9 @@
SRCDIR = .
CC = cc
-LDFLAGS = -L/usr/lib -L/usr/local/lib -lm -lSDL -lSDL_ttf -lfftw3f
-INCFLAGS = -I/usr/include/SDL
-CFLAGS = -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-unused -malign-double -funroll-all-loops -DLINUX
+LDFLAGS = -L${LOCALBASE}/lib -lm `${SDL_CONFIG} --libs` -lSDL_ttf -lfftw3f
+INCFLAGS = -I${LOCALBASE}/include -I${LOCALBASE}/include/SDL
+CXXFLAGS += -Wall -Wno-unused -DLINUX
LDSOFLAGS = -Wl
OBJS = quantumminigolf.o Renderer.o ClassicSimulator.o QuantumSimulator.o SoftwareTracker.o Tracker.o TrackSelector.o
@@ -18,12 +18,12 @@
# pattern rule to compile object files from C files
# might not work with make programs other than GNU make
%.o : %.cpp Makefile
- $(CC) $(INCFLAGS) $(CFLAGS) -c $< -o $@
+ $(CXX) $(INCFLAGS) $(CXXFLAGS) -c $< -o $@
all: $(EXE)
$(EXE): $(OBJS) Makefile
- $(CC) -o $(EXE) $(OBJS) $(LDFLAGS) $(CFLAGS)
+ $(CXX) -o $(EXE) $(OBJS) $(LDFLAGS) $(CXXFLAGS)
.PHONY : clean
clean:

View File

@ -0,0 +1,10 @@
The game quantum minigolf is nearly the same as the game minigolf
- except that the ball obeys the laws of quantum mechanics.
Such a ball can be at several places at once. It can diffract around
obstacles and interfere with itself. Apart from that, the rules are
the same: You can play on various tracks involving various obstacles.
You hit the ball with a club and try to kick it into a hole on the
other side of the track.
WWW: http://quantumminigolf.sourceforge.net

View File

@ -0,0 +1,37 @@
bin/quantumminigolf
%%DATADIR%%/fonts/default.ttf
%%DATADIR%%/gfx/cmap.bmp
%%DATADIR%%/gfx/cmap_mono.bmp
%%DATADIR%%/gfx/icon.bmp
%%DATADIR%%/gfx/lose.bmp
%%DATADIR%%/gfx/win.bmp
%%DATADIR%%/tracks/babinet.bmp
%%DATADIR%%/tracks/babinet_hard.bmp
%%DATADIR%%/tracks/babinet_soft.bmp
%%DATADIR%%/tracks/bragg.bmp
%%DATADIR%%/tracks/bump.bmp
%%DATADIR%%/tracks/bump_hard.bmp
%%DATADIR%%/tracks/bump_soft.bmp
%%DATADIR%%/tracks/crystal.bmp
%%DATADIR%%/tracks/crystal_hard.bmp
%%DATADIR%%/tracks/crystal_soft.bmp
%%DATADIR%%/tracks/doubleslit.bmp
%%DATADIR%%/tracks/doubleslit_hard.bmp
%%DATADIR%%/tracks/doubleslit_soft.bmp
%%DATADIR%%/tracks/empty.bmp
%%DATADIR%%/tracks/empty_hard.bmp
%%DATADIR%%/tracks/empty_soft.bmp
%%DATADIR%%/tracks/hill.bmp
%%DATADIR%%/tracks/hill_hard.bmp
%%DATADIR%%/tracks/hill_soft.bmp
%%DATADIR%%/tracks/stadium.bmp
%%DATADIR%%/tracks/stadium_hard.bmp
%%DATADIR%%/tracks/stadium_soft.bmp
%%DATADIR%%/tracks/tracks.cfg
%%DATADIR%%/tracks/tunnel.bmp
%%DATADIR%%/tracks/tunnel_hard.bmp
%%DATADIR%%/tracks/tunnel_soft.bmp
@dirrm %%DATADIR%%/tracks
@dirrm %%DATADIR%%/gfx
@dirrm %%DATADIR%%/fonts
@dirrm %%DATADIR%%