Add tesseract-game-svn.

This commit is contained in:
nia 2019-05-27 12:48:04 +01:00
parent 7c85c55148
commit 440eb77d4d
9 changed files with 1545 additions and 4 deletions

View File

@ -4658,6 +4658,7 @@ SUBDIR+= termbox
SUBDIR+= terminology
SUBDIR+= termit
SUBDIR+= tesseract-game
SUBDIR+= tesseract-game-svn
SUBDIR+= testssl
SUBDIR+= tetrinet
SUBDIR+= tex-arabxtex

10
tesseract-game-svn/DESCR Normal file
View File

@ -0,0 +1,10 @@
Tesseract is a first-person shooter game focused on instagib
deathmatch and capture-the-flag gameplay as well as cooperative
in-game map editing.
Tesseract provides a unique open-source engine derived from Cube
2: Sauerbraten technology but with upgraded modern rendering
techniques. The new rendering features include fully dynamic
omnidirectional shadows, global illumination, HDR lighting, deferred
shading, morphological/temporal/multisample anti-aliasing, and much
more.

View File

@ -0,0 +1,55 @@
# $NetBSD$
PKGNAME= tesseract-game-0
CATEGORIES= games
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://tesseract.gg/
COMMENT= First-person shooter game based on Cube 2
SVN_REPO= svn://svn.tuxfamily.org/svnroot/tesseract/main
SVN_EXTRACTDIR= tesseract
USE_TOOLS+= gmake pkg-config
USE_LANGUAGES= c c++03
WRKSRC= ${WRKDIR}/tesseract
BUILD_DIRS+= src
# compares `this` against null
CXXFLAGS+= -fno-delete-null-pointer-checks
INSTALLATION_DIRS+= bin
INSTALLATION_DIRS+= libexec
INSTALLATION_DIRS+= share/tesseract/config
INSTALLATION_DIRS+= share/tesseract/media
pre-configure:
${SED} -e 's,@PREFIX@,${PREFIX},g' \
< ${FILESDIR}/tess_wrapper.sh.in > \
${WRKDIR}/tess_client
${SED} -e 's,@PREFIX@,${PREFIX},g' \
< ${FILESDIR}/tess_wrapper.sh.in > \
${WRKDIR}/tess_server
do-install:
${INSTALL_SCRIPT} ${WRKDIR}/tess_client \
${DESTDIR}${PREFIX}/bin
${INSTALL_SCRIPT} ${WRKDIR}/tess_server \
${DESTDIR}${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC}/src/tess_client \
${DESTDIR}${PREFIX}/libexec
${INSTALL_PROGRAM} ${WRKSRC}/src/tess_server \
${DESTDIR}${PREFIX}/libexec
cd ${WRKSRC}/config && ${PAX} -rw -pp . ${DESTDIR}${PREFIX}/share/tesseract/config
cd ${WRKSRC}/media && ${PAX} -rw -pp . ${DESTDIR}${PREFIX}/share/tesseract/media
.include "../../audio/SDL2_mixer/buildlink3.mk"
.include "../../graphics/MesaLib/buildlink3.mk"
.include "../../graphics/SDL2_image/buildlink3.mk"
.include "../../devel/SDL2/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../net/enet/buildlink3.mk"
.include "../../x11/libX11/buildlink3.mk"
.include "../../wip/mk/svn-package.mk"
.include "../../mk/bsd.pkg.mk"

1368
tesseract-game-svn/PLIST Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
$NetBSD$
SHA1 (tesseract_2014_05_12_first_edition_linux.tar.xz) = 5cd0c8cc4dc77b0e0f97343da51c9a8eb47cab22
RMD160 (tesseract_2014_05_12_first_edition_linux.tar.xz) = cc57f201c46f7e0fd5eeda39f9d574ac756fd115
SHA512 (tesseract_2014_05_12_first_edition_linux.tar.xz) = a625775501b57c519c624bdd9b29d4f89d29c0caedbf6ad4143a65c1f9f9dc088d289953ce3d5043f3467cc8dd86ba9040e636a20a16d5114cf6e7434e089f96
Size (tesseract_2014_05_12_first_edition_linux.tar.xz) = 249009328 bytes
SHA1 (patch-src_Makefile) = 70b011d68e228f5676a58dfd0f0c3337cc267ec2
SHA1 (patch-src_enet_Makefile) = a02d7878abce0e89cf28238696da1e104e719407

View File

@ -0,0 +1,9 @@
#!/bin/sh
cd @PREFIX@/share/tesseract
if [ ${XDG_DATA_HOME} ]; then
mkdir -p ${XDG_DATA_HOME}/tesseract
exec @PREFIX@/libexec/${0##*/} "-u${XDG_DATA_HOME}/tesseract" "$@"
else
mkdir -p ~/.local/share/tesseract
exec @PREFIX@/libexec/${0##*/} '-u~/.local/share/tesseract' "$@"
fi

View File

@ -0,0 +1,81 @@
$NetBSD$
Do not override CFLAGS/CXXFLAGS.
Use libenet from pkgsrc.
--- src/Makefile.orig 2014-05-11 18:42:17.000000000 +0000
+++ src/Makefile
@@ -1,11 +1,10 @@
-CXXFLAGS= -O3 -fomit-frame-pointer -ffast-math
override CXXFLAGS+= -Wall -fsigned-char -fno-exceptions -fno-rtti
PLATFORM= $(shell uname -s)
PLATFORM_ARCH= $(shell uname -m)
PLATFORM_PREFIX= native
-INCLUDES= -Ishared -Iengine -Igame -Ienet/include
+INCLUDES= -Ishared -Iengine -Igame `pkg-config --cflags libenet`
STRIP=
ifeq (,$(findstring -g,$(CXXFLAGS)))
@@ -45,10 +44,10 @@ override WINDRES+= -F pe-i386
endif
CLIENT_INCLUDES= $(INCLUDES) -Iinclude
STD_LIBS= -static-libgcc -static-libstdc++
-CLIENT_LIBS= -mwindows $(STD_LIBS) -L$(WINBIN) -L$(WINLIB) -lSDL2 -lSDL2_image -lSDL2_mixer -lzlib1 -lopengl32 -lenet -lws2_32 -lwinmm
+CLIENT_LIBS= -mwindows $(STD_LIBS) -L$(WINBIN) -L$(WINLIB) -lSDL2 -lSDL2_image -lSDL2_mixer -lzlib1 -lopengl32 `pkg-config --libs libenet` -lws2_32 -lwinmm
else
-CLIENT_INCLUDES= $(INCLUDES) -I/usr/X11R6/include `sdl2-config --cflags`
-CLIENT_LIBS= -Lenet -lenet -L/usr/X11R6/lib -lX11 `sdl2-config --libs` -lSDL2_image -lSDL2_mixer -lz -lGL
+CLIENT_INCLUDES= $(INCLUDES) `sdl2-config --cflags`
+CLIENT_LIBS= `pkg-config --libs libenet` -lX11 `sdl2-config --libs` -lSDL2_image -lSDL2_mixer -lz -lGL
endif
ifeq ($(PLATFORM),Linux)
CLIENT_LIBS+= -lrt
@@ -128,7 +127,7 @@ SERVER_INCLUDES+= -Iinclude
SERVER_LIBS= -mwindows $(STD_LIBS) -L$(WINBIN) -L$(WINLIB) -lzlib1 -lenet -lws2_32 -lwinmm
MASTER_LIBS= $(STD_LIBS) -L$(WINBIN) -L$(WINLIB) -lzlib1 -lenet -lws2_32 -lwinmm
else
-SERVER_LIBS= -Lenet -lenet -lz
+SERVER_LIBS= -Wl,-R${PREFIX}/lib `pkg-config --libs libenet` -lz
MASTER_LIBS= $(SERVER_LIBS)
endif
@@ -169,9 +168,6 @@ $(CLIENT_PCH): %.h.gch: %.h
$(MV) $@.tmp $@
$(CLIENT_OBJS): CXXFLAGS += $(CLIENT_INCLUDES)
-$(filter shared/%,$(CLIENT_OBJS)): $(filter shared/%,$(CLIENT_PCH))
-$(filter engine/%,$(CLIENT_OBJS)): $(filter engine/%,$(CLIENT_PCH))
-$(filter game/%,$(CLIENT_OBJS)): $(filter game/%,$(CLIENT_PCH))
$(filter-out standalone/shared/%,$(SERVER_PCH)): $(filter standalone/shared/%,$(SERVER_PCH))
$(SERVER_PCH): standalone/%.h.gch: %.h
@@ -179,9 +175,6 @@ $(SERVER_PCH): standalone/%.h.gch: %.h
$(MV) $@.tmp $@
$(SERVER_MASTER_OBJS): CXXFLAGS += $(SERVER_INCLUDES)
-$(filter standalone/shared/%,$(SERVER_MASTER_OBJS)): $(filter standalone/shared/%,$(SERVER_PCH))
-$(filter standalone/engine/%,$(SERVER_MASTER_OBJS)): $(filter standalone/engine/%,$(SERVER_PCH))
-$(filter standalone/game/%,$(SERVER_MASTER_OBJS)): $(filter standalone/game/%,$(SERVER_PCH))
$(SERVER_MASTER_OBJS): standalone/%.o: %.cpp
$(CXX) $(CXXFLAGS) -c -o $@ $<
@@ -200,13 +193,13 @@ master: $(MASTER_OBJS)
install: all
else
-client: libenet $(CLIENT_OBJS)
+client: $(CLIENT_OBJS)
$(CXX) $(CXXFLAGS) -o tess_client $(CLIENT_OBJS) $(CLIENT_LIBS)
-server: libenet $(SERVER_OBJS)
+server: $(SERVER_OBJS)
$(CXX) $(CXXFLAGS) -o tess_server $(SERVER_OBJS) $(SERVER_LIBS)
-master: libenet $(MASTER_OBJS)
+master: $(MASTER_OBJS)
$(CXX) $(CXXFLAGS) -o tess_master $(MASTER_OBJS) $(MASTER_LIBS)
shared/tessfont.o: shared/tessfont.c

View File

@ -0,0 +1,11 @@
$NetBSD$
Do not override CFLAGS.
--- src/enet/Makefile.orig 2014-05-11 18:42:17.000000000 +0000
+++ src/enet/Makefile
@@ -1,4 +1,3 @@
-CFLAGS=-O3 -fomit-frame-pointer
override CFLAGS:= $(CFLAGS) -Iinclude $(shell ./check_cflags.sh $(CC) $(CFLAGS))
OBJS= \

View File

@ -40,10 +40,8 @@ do-install:
${DESTDIR}${PREFIX}/libexec
${INSTALL_PROGRAM} ${WRKSRC}/src/tess_server \
${DESTDIR}${PREFIX}/libexec
${CP} -R ${WRKSRC}/config \
${DESTDIR}${PREFIX}/share/tesseract
${CP} -R ${WRKSRC}/media \
${DESTDIR}${PREFIX}/share/tesseract
cd ${WRKSRC}/config && ${PAX} -rw -pp . ${DESTDIR}${PREFIX}/share/tesseract/config
cd ${WRKSRC}/media && ${PAX} -rw -pp . ${DESTDIR}${PREFIX}/share/tesseract/media
.include "../../audio/SDL2_mixer/buildlink3.mk"
.include "../../graphics/MesaLib/buildlink3.mk"