summaryrefslogtreecommitdiff
path: root/games-fps/sauerbraten
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-04-28 20:21:43 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-04-28 20:21:43 +0100
commit40aaaa64e86ba6710bbeb31c4615a6ce80e75e11 (patch)
tree758c221bad35c9288d0bd6df9c7dfc226728e52c /games-fps/sauerbraten
parent8d5dbd847cbc704a6a06405856e94b461011afe3 (diff)
gentoo resync : 28.04.2021
Diffstat (limited to 'games-fps/sauerbraten')
-rw-r--r--games-fps/sauerbraten/Manifest11
-rw-r--r--games-fps/sauerbraten/files/sauerbraten-2020.12.27-respect-FLAGS-don-t-strip-symbols.patch146
-rw-r--r--games-fps/sauerbraten/files/sauerbraten-2020.12.27-unbundle-enet.patch113
-rw-r--r--games-fps/sauerbraten/files/sauerbraten-2020.12.27-use-pkg-config-for-freetype2.patch28
-rw-r--r--games-fps/sauerbraten/files/sauerbraten.conf8
-rw-r--r--games-fps/sauerbraten/files/sauerbraten.init8
-rw-r--r--games-fps/sauerbraten/sauerbraten-2013.02.03-r2.ebuild (renamed from games-fps/sauerbraten/sauerbraten-2013.02.03.ebuild)61
-rw-r--r--games-fps/sauerbraten/sauerbraten-2020.12.27.ebuild137
8 files changed, 476 insertions, 36 deletions
diff --git a/games-fps/sauerbraten/Manifest b/games-fps/sauerbraten/Manifest
index 1a0d4d489e99..1a5be4b7d301 100644
--- a/games-fps/sauerbraten/Manifest
+++ b/games-fps/sauerbraten/Manifest
@@ -1,7 +1,12 @@
AUX sauerbraten-2013.02.03-QA.patch 2037 BLAKE2B e9311a8bb64dcd67355767f57261fd5ef11955ce899dedfcb97cf863f7a9b35617169c24286d5ce3074c233a453364efb56477c6de48009bb8106a73c7e50daf SHA512 1725945f0373f03e5ae81b8e9eee4e2a9260d9362ad424e4198bb71af2e69055439268197f784d2acbd9e17ff977e8b1a7f5193d378a036488ff758d0ead4b5a
AUX sauerbraten-2013.02.03-system-enet.patch 1880 BLAKE2B 57c35e0d15344fdb226f829460d1c15cb163a103911b4d63d544c786f8cb4fe10a0624749e0d3b6fce5a643d2c8285001a8a63f3c700441971a9597f11deb776 SHA512 b53e7db4e6b7ce012ee292a24cbf6e84e1c6bce01cde1a41985d0b471a68c1d2978f8272bc359a81beb317b5ab2ff88a13a1e73aaeb7f5c643e778ffe9861c7a
-AUX sauerbraten.conf 605 BLAKE2B 454045423be96b14debca64e6f65fc3c335f3428affae889727f9bd598b7d3c4084f2d50b48a26f8571f8774f79a99705479ed73b68058c527f7d44bf5ad8a18 SHA512 685b7358ad7267b1b19ac00f879a82205f346b32fda8cb460c4f8c50e9f20263c102b0fca62ab437dabe67ebbdd281f130f28f3b8ef2bcf064ae45fbd23cce67
-AUX sauerbraten.init 1951 BLAKE2B 48402bfcc32caf16491886c6ccb7395628b2c067a5126d59908fe676311bfc781b9aec89aceda8920cedbd3c2c5477e9b404c29a0f6f7c64fd29263432076d1c SHA512 9a96557cb2822f30693900b1dc9ecad9f1eab9e8a3d75432667bfba784ee86754649cf08ccab5f9cbff6be7ab584f3325b9c40c947005cdee425716a888d5c40
+AUX sauerbraten-2020.12.27-respect-FLAGS-don-t-strip-symbols.patch 5648 BLAKE2B 0515107fdeb0a441cc772c747f98068f4819b8ac4999ffd67a68bef96a59b754c3d6e9602a378dfb51984283867b82f1a855c5fdb8d9dacc392d67b57ba9dfdc SHA512 658325bc184792b776eb1a698eb28efdd451aed2f37c1e2182e7ca4703e5ea38eb0e5a5b4742738c94281f829f14eb394972449c43818805b7fb21f259b2c473
+AUX sauerbraten-2020.12.27-unbundle-enet.patch 3893 BLAKE2B ee866466fc13977c62750ee63c669f4815c4a5c42c14ab34b19fb4b6b356201042eddbab48c768ef173e26bfc883b47fc7f92d82f4b7660ec25efede0ea82679 SHA512 65206ebfed702fc165eef57a922fd85d2bf0251a8e3f6a7b7fa3b7b3ceee207466c8ac846b1303a1de4e9857b5bff61a01688700e6d3a0286c60c567071f2633
+AUX sauerbraten-2020.12.27-use-pkg-config-for-freetype2.patch 1028 BLAKE2B b628050655e112e7002f2aa2680d55b7d56dc2034bcf445802c594ac7386aa1ebb8301493df4a981b5595b8e6bdc29bd6851be53733a77ebde1058c0eb48d590 SHA512 85d26c201ac55b746a77755a82e9a055ac3ff8cb374a398e98cf50f373388e9b5183f1b316d5b73af91bba5c9815bfa391f43d1621febd9bd7b8afb3c25ba209
+AUX sauerbraten.conf 614 BLAKE2B 7fcd75fbc0be5ab445ddc5c5f5256529ab52d8f036687f2835b6e2996f0d832d42ecad75b857a4dc5b88db7ea2ff5bd0be30c60bd0462a20b8995b793adef348 SHA512 6731950c3f5309f7155ca71804f01d88562dcc82a7089499c076941b0283f42b0a7a4293859079d20a40b41e57f22f80c8e25f7670b17a64313055e9d1051000
+AUX sauerbraten.init 1903 BLAKE2B a7917ba65edf17c2ed3b0a3026a7f305978e34a15ea28dcf78f9de3ff55b3391a8fb3550f615ea4890c186d2348957ce0cda6354fdaf5b02e811383243efe04f SHA512 d4d95e1917d8324589b682112957f95de4033711e67a0303753978de57cb030ad28d59f350373014c791755f4225f5ec2b914a2fe73ca68e5f94fdb3d6998ae9
DIST sauerbraten_2013_02_03_collect_edition_linux.tar.bz2 589941180 BLAKE2B b8a1c929dcf7a32bc289262fffcbcd4e7bbab3a9030c12bce7d086d63aaddee0c573c5d38f9ac845b3080aeac38d1b548aa9d243b462c3c682b158a379fe8cc2 SHA512 7864e346cc2bc86d78973db1b341fd8256cc2e1953be51263ef91a5374f9ec00276ba2940850e6d5bba7a57c71190b670dc7ba97021be2935c31f8694fed4897
-EBUILD sauerbraten-2013.02.03.ebuild 3209 BLAKE2B c9029e5ac368e86cb2a30cff279493d7a0f3e5c85838a7b2ed0c9b34cb9e19490211b16d458179f2e5cdc009dc8bff124732e489ba199931572d136178b236b1 SHA512 1be06fad350ab300c5820b5d3370aed9a798c967781513be608797281a5781f715119b763c3e0e36360d6420f08f79ab3ba243aacca7d258bb91ca04ac95e275
+DIST sauerbraten_2020_12_27_linux.tar.bz2 985815649 BLAKE2B 4ec9caf705766aed76153a8631b1990c6432db8c816d579e891263b36adf0e7ed4831d2fee010b7692f6457989c0acea552f72c95e0924e97182d2a03dc947f2 SHA512 60487e0493478b9dd8940a9239834d8f3f6b6ca529f3c5b718f91caf5116073942ca6908d7fff26ab37b7ec590114ab07f24cdcea5c355288d3c2706d626ea28
+EBUILD sauerbraten-2013.02.03-r2.ebuild 3212 BLAKE2B f7dc4702e3b6a3fc0bdb6595168cc607d6fc0443e987b5e443baddb3f20e29eb592fee63e678cfd319dee1069a0330a146cafd3f8454df835ab56cd2c8fd7dde SHA512 7c5523d5d0d029099c2e3fb2223dbb26cf91a0424345153124d02a89ff8beb2c3756fe2c4b2e729acd192ff4842657e0ac31c1fb899d5a92ed9bdb88afadaa05
+EBUILD sauerbraten-2020.12.27.ebuild 3279 BLAKE2B a0166d1afe9237b3104be63276f76f9c0bdfb9c4accff9b92feab6e5850e72854c939840591898c501e85eb2a2bb250f120738833f747cf931fe27088a9e30bf SHA512 975a52d27b6c593d0c3c989522fec621edef9a5bb13c31766aebc808f244ff1075ddcbf8c8e28fcbe39600a46927fb423d78a264cbcd8dd5ceba736ecb7afb42
MISC metadata.xml 401 BLAKE2B 0447e0bdea4cbb8ea99d24ac4f854ff4aefd0e62c4fb1e349485a5ec8429239c95299f5f26736e5458525787d6ef54bda400441ac5b6de920a2ddf949d2cab20 SHA512 1087c8ed886c5066a8bd600cbc9878e6bf21c41f163939daf22c503ce1e9095aff13b8986959aadaaaaf04cd2f314bb664042829deb30196b88a8c2608ce8266
diff --git a/games-fps/sauerbraten/files/sauerbraten-2020.12.27-respect-FLAGS-don-t-strip-symbols.patch b/games-fps/sauerbraten/files/sauerbraten-2020.12.27-respect-FLAGS-don-t-strip-symbols.patch
new file mode 100644
index 000000000000..6d0dc3b1f082
--- /dev/null
+++ b/games-fps/sauerbraten/files/sauerbraten-2020.12.27-respect-FLAGS-don-t-strip-symbols.patch
@@ -0,0 +1,146 @@
+From: Sam James <sam@gentoo.org>
+Date: Thu, 22 Apr 2021 13:47:33 +0000
+Subject: Respect *FLAGS, don't strip symbols
+
+--- a/src/enet/Makefile
++++ b/src/enet/Makefile
+@@ -1,4 +1,3 @@
+-CFLAGS=-O3 -fomit-frame-pointer
+ override CFLAGS:= $(CFLAGS) -Iinclude $(shell ./check_cflags.sh $(CC) $(CFLAGS))
+
+ OBJS= \
+--- a/src/rpggame/Makefile
++++ b/src/rpggame/Makefile
+@@ -1,4 +1,3 @@
+-CXXFLAGS= -Os
+ override CXXFLAGS+= -Wall -fsigned-char -fno-exceptions -fno-rtti
+
+ PLATFORM= $(shell uname -s)
+@@ -7,11 +6,6 @@ PLATFORM_PREFIX= native
+ INCLUDES= -I../shared -I../engine -I../rpggame -I../enet/include
+
+ STRIP=
+-ifeq (,$(findstring -g,$(CXXFLAGS)))
+-ifeq (,$(findstring -pg,$(CXXFLAGS)))
+- STRIP=strip
+-endif
+-endif
+
+ MV=mv
+
+@@ -118,7 +112,7 @@ clean:
+ $(filter-out shared/%,$(CLIENT_PCH)): $(filter shared/%,$(CLIENT_PCH))
+
+ %.h.gch: %.h
+- $(CXX) $(CXXFLAGS) -x c++-header -o $@.tmp $<
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -x c++-header -o $@.tmp $<
+ $(MV) $@.tmp $@
+
+ $(CLIENT_OBJS): CXXFLAGS += $(CLIENT_INCLUDES)
+@@ -129,13 +123,13 @@ $(filter ../rpggame/%,$(CLIENT_OBJS)): $(filter ../rpggame/%,$(CLIENT_PCH))
+ ifneq (,$(findstring MINGW,$(PLATFORM)))
+ client: $(CLIENT_OBJS)
+ $(WINDRES) -I ../vcpp -i ../vcpp/mingw.rc -J rc -o ../vcpp/mingw.res -O coff
+- $(CXX) $(CXXFLAGS) -o ../$(WINBIN)/rpg.exe ../vcpp/mingw.res $(CLIENT_OBJS) $(CLIENT_LIBS)
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o ../$(WINBIN)/rpg.exe ../vcpp/mingw.res $(CLIENT_OBJS) $(CLIENT_LIBS)
+ ifneq (,$(STRIP))
+ $(STRIP) ../../bin/rpg.exe
+ endif
+ else
+ client: libenet $(CLIENT_OBJS)
+- $(CXX) $(CXXFLAGS) -o rpg_client $(CLIENT_OBJS) $(CLIENT_LIBS)
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o rpg_client $(CLIENT_OBJS) $(CLIENT_LIBS)
+ endif
+
+ depend:
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -1,4 +1,3 @@
+-CXXFLAGS= -O3 -fomit-frame-pointer -ffast-math
+ override CXXFLAGS+= -Wall -fsigned-char -fno-exceptions -fno-rtti
+
+ PLATFORM= $(shell uname -s | tr '[:lower:]' '[:upper:]')
+@@ -7,12 +6,6 @@ PLATFORM_PREFIX= native
+ INCLUDES= -Ishared -Iengine -Ifpsgame -Ienet/include
+
+ STRIP=
+-ifeq (,$(findstring -g,$(CXXFLAGS)))
+-ifeq (,$(findstring -pg,$(CXXFLAGS)))
+- STRIP=strip
+-endif
+-endif
+-
+ MV=mv
+
+ ifneq (,$(findstring MINGW,$(PLATFORM)))
+@@ -65,8 +58,8 @@ CLIENT_LIBS= -F../sauerbraten.app/Contents/Frameworks/ -framework SDL2 -framewor
+ CLIENT_LIBS+= -framework SDL2_mixer -framework CoreAudio -framework AudioToolbox
+ CLIENT_LIBS+= -framework AudioUnit -framework OpenGL -framework Cocoa -lz -Lenet -lenet
+ 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= -Lenet -lenet -lX11 `sdl2-config --libs` -lSDL2_image -lSDL2_mixer -lz -lGL
+ endif
+ endif
+ ifeq ($(PLATFORM),LINUX)
+@@ -173,11 +166,11 @@ clean:
+ $(filter-out shared/%,$(CLIENT_PCH)): $(filter shared/%,$(CLIENT_PCH))
+
+ %.h.gch: %.h
+- $(CXX) $(CXXFLAGS) -x c++-header -o $@.tmp $<
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -x c++-header -o $@.tmp $<
+ $(MV) $@.tmp $@
+
+ %-standalone.o: %.cpp
+- $(CXX) $(CXXFLAGS) -c -o $@ $<
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
+
+ $(CLIENT_OBJS): CXXFLAGS += $(CLIENT_INCLUDES)
+ $(filter shared/%,$(CLIENT_OBJS)): $(filter shared/%,$(CLIENT_PCH))
+@@ -188,35 +181,35 @@ $(SERVER_MASTER_OBJS): CXXFLAGS += $(SERVER_INCLUDES)
+
+ ifneq (,$(findstring MINGW,$(PLATFORM)))
+ client: $(CLIENT_OBJS)
+- $(WINDRES) -I vcpp -i vcpp/mingw.rc -J rc -o vcpp/mingw.res -O coff
+- $(CXX) $(CXXFLAGS) -o $(WINBIN)/sauerbraten.exe vcpp/mingw.res $(CLIENT_OBJS) $(CLIENT_LIBS)
++ $(WINDRES) -I vcpp -i vcpp/mingw.rc -J rc $(LDFLAGS) -o vcpp/mingw.res $(LDFLAGS) -o coff
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $(WINBIN)/sauerbraten.exe vcpp/mingw.res $(CLIENT_OBJS) $(CLIENT_LIBS)
+
+ server: $(SERVER_OBJS)
+- $(WINDRES) -I vcpp -i vcpp/mingw.rc -J rc -o vcpp/mingw.res -O coff
+- $(CXX) $(CXXFLAGS) -o $(WINBIN)/sauer_server.exe vcpp/mingw.res $(SERVER_OBJS) $(SERVER_LIBS)
++ $(WINDRES) -I vcpp -i vcpp/mingw.rc -J rc $(LDFLAGS) -o vcpp/mingw.res $(LDFLAGS) -o coff
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $(WINBIN)/sauer_server.exe vcpp/mingw.res $(SERVER_OBJS) $(SERVER_LIBS)
+
+ master: $(MASTER_OBJS)
+- $(CXX) $(CXXFLAGS) -o $(WINBIN)/sauer_master.exe $(MASTER_OBJS) $(MASTER_LIBS)
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $(WINBIN)/sauer_master.exe $(MASTER_OBJS) $(MASTER_LIBS)
+
+ install: all
+ else
+ client: libenet $(CLIENT_OBJS)
+- $(CXX) $(CXXFLAGS) -o sauer_client $(CLIENT_OBJS) $(CLIENT_LIBS)
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o sauer_client $(CLIENT_OBJS) $(CLIENT_LIBS)
+ ifneq (,$(findstring DARWIN,$(PLATFORM)))
+ install_name_tool -add_rpath @executable_path/../Frameworks sauer_client
+ endif
+
+ server: libenet $(SERVER_OBJS)
+- $(CXX) $(CXXFLAGS) -o sauer_server $(SERVER_OBJS) $(SERVER_LIBS)
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o sauer_server $(SERVER_OBJS) $(SERVER_LIBS)
+
+ master: libenet $(MASTER_OBJS)
+- $(CXX) $(CXXFLAGS) -o sauer_master $(MASTER_OBJS) $(MASTER_LIBS)
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o sauer_master $(MASTER_OBJS) $(MASTER_LIBS)
+
+ shared/cube2font.o: shared/cube2font.c
+- $(CXX) $(CXXFLAGS) -c -o $@ $< `freetype-config --cflags`
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -c -o $@ $< `freetype-config --cflags`
+
+ cube2font: shared/cube2font.o
+- $(CXX) $(CXXFLAGS) -o cube2font shared/cube2font.o `freetype-config --libs` -lz
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o cube2font shared/cube2font.o `freetype-config --libs` -lz
+
+ ifneq (,$(findstring DARWIN,$(PLATFORM)))
+ install: client
diff --git a/games-fps/sauerbraten/files/sauerbraten-2020.12.27-unbundle-enet.patch b/games-fps/sauerbraten/files/sauerbraten-2020.12.27-unbundle-enet.patch
new file mode 100644
index 000000000000..ad7494b55385
--- /dev/null
+++ b/games-fps/sauerbraten/files/sauerbraten-2020.12.27-unbundle-enet.patch
@@ -0,0 +1,113 @@
+From f269af0dc953ee79d95beabd2679e4c91992ac8d Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Thu, 22 Apr 2021 14:06:00 +0000
+Subject: [PATCH] Unbundle enet
+
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -4,7 +4,7 @@ override CXXFLAGS+= -Wall -fsigned-char -fno-exceptions -fno-rtti
+ PLATFORM= $(shell uname -s | tr '[:lower:]' '[:upper:]')
+ PLATFORM_PREFIX= native
+
+-INCLUDES= -Ishared -Iengine -Ifpsgame -Ienet/include
++INCLUDES= -Ishared -Iengine -Ifpsgame
+
+ STRIP=
+ MV=mv
+@@ -57,10 +57,10 @@ override CXX+= -arch x86_64 -mmacosx-version-min=$(OSXMIN)
+ CLIENT_INCLUDES= $(INCLUDES) -Iinclude
+ CLIENT_LIBS= -F../sauerbraten.app/Contents/Frameworks/ -framework SDL2 -framework SDL2_image
+ CLIENT_LIBS+= -framework SDL2_mixer -framework CoreAudio -framework AudioToolbox
+-CLIENT_LIBS+= -framework AudioUnit -framework OpenGL -framework Cocoa -lz -Lenet -lenet
++CLIENT_LIBS+= -framework AudioUnit -framework OpenGL -framework Cocoa -lz -lenet
+ else
+-CLIENT_INCLUDES= $(INCLUDES) `sdl2-config --cflags`
+-CLIENT_LIBS= -Lenet -lenet -lX11 `sdl2-config --libs` -lSDL2_image -lSDL2_mixer -lz -lGL
++CLIENT_INCLUDES= $(INCLUDES) `sdl2-config --cflags`
++CLIENT_LIBS= -lenet -lX11 `sdl2-config --libs` -lSDL2_image -lSDL2_mixer -lz -lGL
+ endif
+ endif
+ ifeq ($(PLATFORM),LINUX)
+@@ -135,7 +135,7 @@ SERVER_LIBS= -mwindows $(STD_LIBS) -L$(WINBIN) -L$(WINLIB) -lzlib1 -lenet -lws2_
+ MASTER_LIBS= $(STD_LIBS) -L$(WINBIN) -L$(WINLIB) -lzlib1 -lenet -lws2_32 -lwinmm
+ else
+ SERVER_INCLUDES= -DSTANDALONE $(INCLUDES)
+-SERVER_LIBS= -Lenet -lenet -lz
++SERVER_LIBS= -lenet -lz
+ MASTER_LIBS= $(SERVER_LIBS)
+ endif
+ SERVER_OBJS= \
+@@ -226,10 +226,6 @@ endif
+ endif
+ endif
+
+-enet/libenet.a:
+- $(MAKE) -C enet CC='$(CC)' AR='$(AR)'
+-libenet: enet/libenet.a
+-
+ depend:
+ makedepend -Y -Ishared -Iengine -Ifpsgame $(CLIENT_OBJS:.o=.cpp)
+ makedepend -a -o.h.gch -Y -Ishared -Iengine -Ifpsgame $(CLIENT_PCH:.h.gch=.h)
+
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -193,16 +193,16 @@ master: $(MASTER_OBJS)
+
+ install: all
+ else
+-client: libenet $(CLIENT_OBJS)
++client: $(CLIENT_OBJS)
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o sauer_client $(CLIENT_OBJS) $(CLIENT_LIBS)
+ ifneq (,$(findstring DARWIN,$(PLATFORM)))
+ install_name_tool -add_rpath @executable_path/../Frameworks sauer_client
+ endif
+
+-server: libenet $(SERVER_OBJS)
++server: $(SERVER_OBJS)
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o sauer_server $(SERVER_OBJS) $(SERVER_LIBS)
+
+-master: libenet $(MASTER_OBJS)
++master: $(MASTER_OBJS)
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o sauer_master $(MASTER_OBJS) $(MASTER_LIBS)
+
+ shared/cube2font.o: shared/cube2font.c
+--- a/src/rpggame/Makefile
++++ b/src/rpggame/Makefile
+@@ -3,7 +3,7 @@ override CXXFLAGS+= -Wall -fsigned-char -fno-exceptions -fno-rtti
+ PLATFORM= $(shell uname -s)
+ PLATFORM_PREFIX= native
+
+-INCLUDES= -I../shared -I../engine -I../rpggame -I../enet/include
++INCLUDES= -I../shared -I../engine -I../rpggame
+
+ STRIP=
+
+@@ -41,7 +41,7 @@ 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
+ else
+ CLIENT_INCLUDES= $(INCLUDES) -I/usr/X11R6/include `sdl2-config --cflags`
+-CLIENT_LIBS= -L../enet -lenet -L/usr/X11R6/lib -lX11 `sdl2-config --libs` -lSDL2_image -lSDL2_mixer -lz -lGL
++CLIENT_LIBS= -lenet -L/usr/X11R6/lib -lX11 `sdl2-config --libs` -lSDL2_image -lSDL2_mixer -lz -lGL
+ endif
+ ifeq ($(PLATFORM),Linux)
+ CLIENT_LIBS+= -lrt
+@@ -102,10 +102,6 @@ default: all
+
+ all: client
+
+-enet/libenet.a:
+- $(MAKE) -C ../enet/
+-libenet: enet/libenet.a
+-
+ clean:
+ -$(RM) $(CLIENT_PCH) $(CLIENT_OBJS) rpg_client
+
+@@ -128,7 +124,7 @@ ifneq (,$(STRIP))
+ $(STRIP) ../../bin/rpg.exe
+ endif
+ else
+-client: libenet $(CLIENT_OBJS)
++client: $(CLIENT_OBJS)
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o rpg_client $(CLIENT_OBJS) $(CLIENT_LIBS)
+ endif
+
diff --git a/games-fps/sauerbraten/files/sauerbraten-2020.12.27-use-pkg-config-for-freetype2.patch b/games-fps/sauerbraten/files/sauerbraten-2020.12.27-use-pkg-config-for-freetype2.patch
new file mode 100644
index 000000000000..ae4a43b43f98
--- /dev/null
+++ b/games-fps/sauerbraten/files/sauerbraten-2020.12.27-use-pkg-config-for-freetype2.patch
@@ -0,0 +1,28 @@
+From: Sam James <sam@gentoo.org>
+Date: Thu, 22 Apr 2021 14:33:15 +0000
+Subject: [PATCH] Use pkg-config for freetype2
+
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -1,5 +1,7 @@
+ override CXXFLAGS+= -Wall -fsigned-char -fno-exceptions -fno-rtti
+
++PKG_CONFIG?=pkg-config
++
+ PLATFORM= $(shell uname -s | tr '[:lower:]' '[:upper:]')
+ PLATFORM_PREFIX= native
+
+@@ -206,10 +208,10 @@ master: libenet $(MASTER_OBJS)
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o sauer_master $(MASTER_OBJS) $(MASTER_LIBS)
+
+ shared/cube2font.o: shared/cube2font.c
+- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -c -o $@ $< `freetype-config --cflags`
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -c -o $@ $< `${PKG_CONFIG} --cflags freetype2`
+
+ cube2font: shared/cube2font.o
+- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o cube2font shared/cube2font.o `freetype-config --libs` -lz
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o cube2font shared/cube2font.o `${PKG_CONFIG} --libs freetype2` -lz
+
+ ifneq (,$(findstring DARWIN,$(PLATFORM)))
+ install: client
+--
diff --git a/games-fps/sauerbraten/files/sauerbraten.conf b/games-fps/sauerbraten/files/sauerbraten.conf
index 8d93bf62b788..f0c2896b2bea 100644
--- a/games-fps/sauerbraten/files/sauerbraten.conf
+++ b/games-fps/sauerbraten/files/sauerbraten.conf
@@ -1,15 +1,15 @@
# Config file for /etc/init.d/sauerbraten
# Owner of Sauerbraten server processes (must be existing)
-USER="%GAMES_USER_DED%"
-GROUP="%GAMES_GROUP%"
+USER="sauerbraten"
+GROUP="sauerbraten"
# Whether to run the dedicated server
RUNSERVER="Yes"
# Location of the dedicated server config directory
-SERVERCONFIG="%SYSCONFDIR%"
+SERVERCONFIG="/var/lib/sauerbraten"
# Additional command line arguments to the dedicated server
SERVERARGS=""
@@ -19,7 +19,7 @@ SERVERARGS=""
RUNMASTER="No"
# Location of the master server config directory
-MASTERCONFIG="%SYSCONFDIR%"
+MASTERCONFIG="/var/lib/sauerbraten"
# What port should the masterserver use
MASTERPORT="28787"
diff --git a/games-fps/sauerbraten/files/sauerbraten.init b/games-fps/sauerbraten/files/sauerbraten.init
index a5a7bb32966d..14248bc88959 100644
--- a/games-fps/sauerbraten/files/sauerbraten.init
+++ b/games-fps/sauerbraten/files/sauerbraten.init
@@ -24,7 +24,7 @@ start_server() {
start-stop-daemon \
--quiet --start --user ${USER}:${GROUP} --chdir ${SERVERCONFIG} \
- --make-pidfile --pidfile %GAMES_STATEDIR%/run/sauerbraten/server.pid \
+ --make-pidfile --pidfile /var/run/sauerbraten/server.pid \
--background --exec %LIBEXECDIR%/sauer_server -- ${SERVERARGS}
eend $?
}
@@ -45,7 +45,7 @@ start_master() {
start-stop-daemon \
--quiet --start --user ${USER}:${GROUP} \
- --make-pidfile --pidfile %GAMES_STATEDIR%/run/sauerbraten/master.pid \
+ --make-pidfile --pidfile /var/run/sauerbraten/master.pid \
--background --exec %LIBEXECDIR%/sauer_master -- ${MASTERARGS}
eend $?
}
@@ -58,13 +58,13 @@ stop() {
stop_server() {
ebegin "Stopping Sauerbraten dedicated server"
- start-stop-daemon --stop --retry 3 --pidfile %GAMES_STATEDIR%/run/sauerbraten/server.pid
+ start-stop-daemon --stop --retry 3 --pidfile /var/run/sauerbraten/server.pid
eend $?
}
stop_master() {
ebegin "Stopping Sauerbraten master server"
- start-stop-daemon --stop --retry 3 --pidfile %GAMES_STATEDIR%/run/sauerbraten/master.pid
+ start-stop-daemon --stop --retry 3 --pidfile /var/run/sauerbraten/master.pid
eend $?
}
diff --git a/games-fps/sauerbraten/sauerbraten-2013.02.03.ebuild b/games-fps/sauerbraten/sauerbraten-2013.02.03-r2.ebuild
index 6671f8f3e87c..c2efbc863d58 100644
--- a/games-fps/sauerbraten/sauerbraten-2013.02.03.ebuild
+++ b/games-fps/sauerbraten/sauerbraten-2013.02.03-r2.ebuild
@@ -1,20 +1,22 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-inherit eutils flag-o-matic gnome2-utils games vcs-clean
+EAPI=7
+
+inherit desktop flag-o-matic gnome2-utils toolchain-funcs vcs-clean wrapper
EDITION="collect_edition"
DESCRIPTION="Sauerbraten is a FOSS game engine (Cube 2) with freeware game data (Sauerbraten)"
HOMEPAGE="http://sauerbraten.org/"
SRC_URI="mirror://sourceforge/sauerbraten/sauerbraten/2013_02_03/sauerbraten_${PV//./_}_${EDITION}_linux.tar.bz2"
+S="${WORKDIR}"/${PN}
LICENSE="ZLIB freedist"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug dedicated server"
-RDEPEND="
+DEPEND="
sys-libs/zlib
>=net-libs/enet-1.3.6:1.3
!dedicated? (
@@ -23,32 +25,42 @@ RDEPEND="
media-libs/sdl-image[png,jpeg]
virtual/opengl
virtual/glu
- x11-libs/libX11 )"
-DEPEND="${RDEPEND}"
+ x11-libs/libX11
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ acct-group/sauerbraten
+ dedicated? ( acct-user/sauerbraten )
+"
-S=${WORKDIR}/${PN}
+PATCHES=(
+ # Patch makefile to use system enet instead of bundled
+ # respect CXXFLAGS, LDFLAGS
+ "${FILESDIR}"/${P}-{system-enet,QA}.patch
+)
src_prepare() {
ecvs_clean
- rm -rf sauerbraten_unix bin_unix src/{include,lib,vcpp}
+ rm -rf sauerbraten_unix bin_unix src/{include,lib,vcpp} || die
- # Patch makefile to use system enet instead of bundled
- # respect CXXFLAGS, LDFLAGS
- epatch "${FILESDIR}"/${P}-{system-enet,QA}.patch
+ default
# Fix links so they point to the correct directory
sed -i -e 's:docs/::' README.html || die
}
src_compile() {
+ tc-export CXX
+
use debug && append-cppflags -D_DEBUG
emake -C src master $(usex dedicated "server" "$(usex server "server client" "client")")
}
src_install() {
- local LIBEXECDIR="${GAMES_PREFIX}/lib"
- local DATADIR="${GAMES_DATADIR}/${PN}"
- local STATEDIR="${GAMES_STATEDIR}/${PN}"
+ local LIBEXECDIR="/usr/lib"
+ local DATADIR="/usr/share/${PN}"
+ local STATEDIR="/var/lib/${PN}"
if ! use dedicated ; then
# Install the game data
@@ -60,7 +72,7 @@ src_install() {
doexe src/sauer_client
# Install the client wrapper
- games_make_wrapper "${PN}-client" "${LIBEXECDIR}/sauer_client -q\$HOME/.${PN} -r" "${DATADIR}"
+ make_wrapper "${PN}-client" "${LIBEXECDIR}/sauer_client -q\$HOME/.${PN} -r" "${DATADIR}"
# Create menu entry
newicon -s 256 data/cube.png ${PN}.png
@@ -76,42 +88,41 @@ src_install() {
doexe src/sauer_master
use dedicated || use server && doexe src/sauer_server
- games_make_wrapper "${PN}-server" \
+ make_wrapper "${PN}-server" \
"${LIBEXECDIR}/sauer_server -k${DATADIR} -q${STATEDIR}"
- games_make_wrapper "${PN}-master" \
+ make_wrapper "${PN}-master" \
"${LIBEXECDIR}/sauer_master ${STATEDIR}"
# Install the server init script
- keepdir "${GAMES_STATEDIR}/run/${PN}"
+ keepdir /var/run/${PN}
cp "${FILESDIR}"/${PN}.init "${T}" || die
sed -i \
-e "s:%SYSCONFDIR%:${STATEDIR}:g" \
-e "s:%LIBEXECDIR%:${LIBEXECDIR}:g" \
- -e "s:%GAMES_STATEDIR%:${GAMES_STATEDIR}:g" \
+ -e "s:%/var/lib/%:/var/run:g" \
"${T}"/${PN}.init || die
+
newinitd "${T}"/${PN}.init ${PN}
cp "${FILESDIR}"/${PN}.conf "${T}" || die
sed -i \
-e "s:%SYSCONFDIR%:${STATEDIR}:g" \
-e "s:%LIBEXECDIR%:${LIBEXECDIR}:g" \
- -e "s:%GAMES_USER_DED%:${GAMES_USER_DED}:g" \
- -e "s:%GAMES_GROUP%:${GAMES_GROUP}:g" \
+ -e "s:%GAMES_USER_DED%:sauerbraten:g" \
+ -e "s:%GAMES_GROUP%:sauerbraten:g" \
"${T}"/${PN}.conf || die
newconfd "${T}"/${PN}.conf ${PN}
dodoc src/*.txt docs/dev/*.txt
- dohtml -r README.html docs/*
- prepgamesdirs
+ docinto html
+ dodoc -r README.html docs/*
}
pkg_preinst() {
- games_pkg_preinst
gnome2_icon_savelist
}
pkg_postinst() {
- games_pkg_postinst
gnome2_icon_cache_update
elog "If you plan to use map editor feature copy all map data from ${DATADIR}"
diff --git a/games-fps/sauerbraten/sauerbraten-2020.12.27.ebuild b/games-fps/sauerbraten/sauerbraten-2020.12.27.ebuild
new file mode 100644
index 000000000000..8b66fceccde3
--- /dev/null
+++ b/games-fps/sauerbraten/sauerbraten-2020.12.27.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop flag-o-matic toolchain-funcs wrapper xdg
+
+DESCRIPTION="Sauerbraten is a FOSS game engine (Cube 2) with freeware game data (Sauerbraten)"
+HOMEPAGE="http://sauerbraten.org/"
+SRC_URI="mirror://sourceforge/sauerbraten/sauerbraten/2020_11_29/sauerbraten_${PV//./_}_linux.tar.bz2"
+S="${WORKDIR}"/${PN}
+
+LICENSE="ZLIB freedist"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug dedicated server"
+
+DEPEND="
+ >=net-libs/enet-1.3.6:1.3
+ sys-libs/zlib
+ !dedicated? (
+ media-libs/libsdl2[X,opengl]
+ media-libs/sdl2-image
+ media-libs/sdl2-mixer
+ virtual/opengl
+ virtual/glu
+ x11-libs/libX11
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ acct-group/sauerbraten
+ dedicated? ( acct-user/sauerbraten )
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ # Respect CXXFLAGS, LDFLAGS
+ "${FILESDIR}"/${PN}-2020.12.27-respect-FLAGS-don-t-strip-symbols.patch
+
+ # Patch Makefile to use system enet instead of bundled
+ "${FILESDIR}"/${PN}-2020.12.27-unbundle-enet.patch
+
+ # Don't use freetype-config, it's obsolete
+ "${FILESDIR}"/${PN}-2020.12.27-use-pkg-config-for-freetype2.patch
+)
+
+src_prepare() {
+ rm -rf sauerbraten_unix bin_unix src/{include,lib,vcpp} || die
+
+ default
+
+ # Fix links so they point to the correct directory
+ sed -i -e 's:docs/::' README.html || die
+}
+
+src_compile() {
+ tc-export CXX PKG_CONFIG
+
+ if use debug ; then
+ append-cppflags -D_DEBUG
+ fi
+
+ emake -C src \
+ master \
+ $(usex dedicated "server" "$(usex server "server client" "client")")
+}
+
+src_install() {
+ local LIBEXECDIR="/usr/lib"
+ local DATADIR="/usr/share/${PN}"
+ local STATEDIR="/var/lib/${PN}"
+
+ if ! use dedicated ; then
+ # Install the game data
+ insinto "${DATADIR}"
+ doins -r data packages
+
+ # Install the client executable
+ exeinto "${LIBEXECDIR}"
+ doexe src/sauer_client
+
+ # Install the client wrapper
+ make_wrapper "${PN}-client" "${LIBEXECDIR}/sauer_client -q\$HOME/.${PN} -r" "${DATADIR}"
+
+ # Create menu entry
+ newicon -s 256 data/cube.png ${PN}.png
+ make_desktop_entry "${PN}-client" "Cube 2: Sauerbraten"
+ fi
+
+ # Install the server config files
+ insinto "${STATEDIR}"
+ doins server-init.cfg
+
+ # Install the server executables
+ exeinto "${LIBEXECDIR}"
+ doexe src/sauer_master
+
+ if use dedicated || use server ; then
+ doexe src/sauer_server
+ fi
+
+ make_wrapper "${PN}-server" \
+ "${LIBEXECDIR}/sauer_server -k${DATADIR} -q${STATEDIR}"
+ make_wrapper "${PN}-master" \
+ "${LIBEXECDIR}/sauer_master ${STATEDIR}"
+
+ # Install the server init script
+ cp "${FILESDIR}"/${PN}.init "${T}" || die
+ sed -i \
+ -e "s:%SYSCONFDIR%:${STATEDIR}:g" \
+ -e "s:%LIBEXECDIR%:${LIBEXECDIR}:g" \
+ -e "s:%/var/lib/%:/var/run:g" \
+ "${T}"/${PN}.init || die
+
+ newinitd "${T}"/${PN}.init ${PN}
+ cp "${FILESDIR}"/${PN}.conf "${T}" || die
+ sed -i \
+ -e "s:%SYSCONFDIR%:${STATEDIR}:g" \
+ -e "s:%LIBEXECDIR%:${LIBEXECDIR}:g" \
+ -e "s:%GAMES_USER_DED%:sauerbraten:g" \
+ -e "s:%GAMES_GROUP%:sauerbraten:g" \
+ "${T}"/${PN}.conf || die
+ newconfd "${T}"/${PN}.conf ${PN}
+
+ dodoc src/*.txt docs/dev/*.txt
+
+ docinto html
+ dodoc -r README.html docs/*
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ elog "If you plan to use map editor feature copy all map data from ${DATADIR}"
+ elog "to corresponding folder in your HOME/.${PN}"
+}