summaryrefslogtreecommitdiff
path: root/games-rpg
diff options
context:
space:
mode:
Diffstat (limited to 'games-rpg')
-rw-r--r--games-rpg/Manifest.gzbin8298 -> 8297 bytes
-rw-r--r--games-rpg/eternal-lands/Manifest6
-rw-r--r--games-rpg/eternal-lands/eternal-lands-1.9.6.1.ebuild75
-rw-r--r--games-rpg/eternal-lands/files/el-wrapper-1.9.6.153
-rw-r--r--games-rpg/eternal-lands/files/eternal-lands-1.9.6.1-build.patch45
-rw-r--r--games-rpg/eternal-lands/metadata.xml3
6 files changed, 181 insertions, 1 deletions
diff --git a/games-rpg/Manifest.gz b/games-rpg/Manifest.gz
index e0ef9b7de5f9..3aacaf5c9e5f 100644
--- a/games-rpg/Manifest.gz
+++ b/games-rpg/Manifest.gz
Binary files differ
diff --git a/games-rpg/eternal-lands/Manifest b/games-rpg/eternal-lands/Manifest
index aa2984e52132..e98b3c9a3ea2 100644
--- a/games-rpg/eternal-lands/Manifest
+++ b/games-rpg/eternal-lands/Manifest
@@ -1,6 +1,10 @@
AUX el-wrapper-1.9.5.8 1648 BLAKE2B c429dd1fcd969a12fe6f7dc9df5241608cde6beec2574552c7cdb635fc212c52f2f9e6cfece25727dc9c1d98093762d18426c697c193f78db2aaa0b83e0ef3d8 SHA512 69689617582a31bb2d2b3ea8511b49a55c33332526720f72ea2a82440ba9b2e5bd60586e973b893bcf6a76a85b84831c9cc63e91558790d7b0ce0da93baacc8b
+AUX el-wrapper-1.9.6.1 1694 BLAKE2B a43aaad33da5baafd025d28f3f6b2da4504e879c65441270840e26891036c04c4e69ae3597a60810954ad9ee79ee9cbb65b3ae64c471941818ce5ce33d8c1c07 SHA512 5854e7fcf6802941a73b7578e3392b81cea47fab2f80e4946a6ad8557afd7629cfd41ff19b5df580806065443709e747c7ac14dc6cfcada71936efe792956994
AUX eternal-lands-1.9.5.3-minizip.patch 2944 BLAKE2B be3ff1adb91681bbe826a409f2ec3c855c7dcb49d7aab076ab65c6c1145fa70e6cf98ae25a6d18b77fed63395c552047dae1407885758186ef7f3f9e737fd25a SHA512 feaf805e16bbbf33aaf15d6eb4e6303f1c80f135809952b59da2decdc8f1f2b65487031b7b9b29f969e631afa5bfc124741b385f4adff66d65cc1b0cf983f149
AUX eternal-lands-1.9.5.8-build.patch 2632 BLAKE2B c31b8b0ec050fb9fb9843f5cfc5db21d6a2c843724a4e6e4c683a011a11dc1b8bac4e73125d72f5d012062bbede3377eed7fd81032a8469bbd55b52d84b8d725 SHA512 1c2ee7c49bc703c5cb7a8078930ca1587606d06b7b7147e038e0598ce4c2cd205fc6aa07306544f622ed0c6ff3d4576c316780d1c2db799fd598b060335c346c
+AUX eternal-lands-1.9.6.1-build.patch 1707 BLAKE2B 95843dbfaf89a151cd03d8a8200efe5ae8350e613b99db80e4ff077e0c8f656fb9e431cb2b702750865782e68936fd7f2dd512578751270b19aad3de34ff3f2b SHA512 706f450cb30499017c85fc87ba3953068602cbcf277a30b7ff37e9cdaa93f8221b81654589d01057dc708202eb95cde08c7e7182d9a29c5e717bb803b00da293
DIST eternal-lands-1.9.5.8.tar.gz 2863932 BLAKE2B f8c4e88b96b4ee73773a2675e7cf2746e5efe6bf029f046a2ce63496b22c217a93eeea9464977710b95c4fe2d928edefd6aa11a712a8fb82d911ee7d1fd993d3 SHA512 e5e89ec6e7df2b1ac80722b6daf5bbb350d2f1bc4c70c819992b528f25c2ac11434d053ff844ff5873deea16c5bbe305834ffeae7b5ecb6daea5638625851ce0
+DIST eternal-lands-1.9.6.1.tar.gz 3877154 BLAKE2B 50914c96caf3a6bda4a3a853a4ab680bc9da98283e528d0d1626a38d55504321035356f60dea1a5e307e7c87e07a024627171f81cb6a85e3b63d8df3270e0bb6 SHA512 ac0704b22e8f7525f0319a454b5be695e1640fc1be9fa5c5bbb5a0e32fde634fecb5bf33c23dd58115464d3c26b945ffb1bfb323f057f1c454601a7416d95b66
EBUILD eternal-lands-1.9.5.8.ebuild 1597 BLAKE2B 28d9241f8ee3e01c2e51f87c651d634e88fa0fd5c0a0891c0f2f6ca23ca48f5e8f19b2476c96e10087e408e6ff1515dd5d51e8f197b898c49a0317b0ff79dfc3 SHA512 5555be6cee31781291b527120e35d3e5f6766a8c1810a9323c8da3b008a72d7ee6981fe9a6b40696e408d65da70730c407c638e9956e3f8a162002b67c6ace81
-MISC metadata.xml 254 BLAKE2B 4e6c8e1f126f76233a38aba6f5388488656795cb1d7d4767ccb1349772f5e78d59fc5663d4f1933dbe4633c2fbb90cd1d42d4b4d4f5ededc53653e7df13c7187 SHA512 2b82da849e3b0dec378f3fb497014f5d1dbc7aceb8a1f9d1638e83fe69448b1c5151eb4b1187154d828e4a296609ce5125b40977b2581d95b5588e353ca75135
+EBUILD eternal-lands-1.9.6.1.ebuild 1596 BLAKE2B 561ca140e87ed58a83b26fb799d73687ad4f9b1752bbf4e2ab8062c918d8895a6450c8e9c974e82beea7b17ffea598f98d29b483b4e11c6411d696d12b1bd6f5 SHA512 0d6aa8ab36a9e3e09f63c6666a6ceac3917cd2ec4154579e750f382ee58a8a6a6379ea37251c5993c79c2d4e00f10b9fa5c5bc288778239750914b117c97b9ca
+MISC metadata.xml 340 BLAKE2B 3910e77d305f03cd217055f2c3a4da795e963423ff25070ce2d7105f7caae50256276ebb484dbb8604472c4a0de494f8fd573e6427bc07fe97f2203d4f59f0d8 SHA512 49a5078af5f11aad0618025f388ec140a29fec893dd25db087a045ba99ddd7f44357efbd1e19a0b32d7365cd8c8f35c5e84a6bb556fe6f9325c4543ca85071e5
diff --git a/games-rpg/eternal-lands/eternal-lands-1.9.6.1.ebuild b/games-rpg/eternal-lands/eternal-lands-1.9.6.1.ebuild
new file mode 100644
index 000000000000..414835307acf
--- /dev/null
+++ b/games-rpg/eternal-lands/eternal-lands-1.9.6.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs xdg
+
+DESCRIPTION="3D fantasy MMORPG written in C and SDL"
+HOMEPAGE="https://www.eternal-lands.com"
+SRC_URI="https://github.com/raduprv/Eternal-Lands/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/Eternal-Lands-${PV}"
+
+LICENSE="eternal_lands"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND="app-arch/unzip
+ dev-libs/libxml2
+ media-libs/cal3d[-16bit-indices]
+ media-libs/freealut
+ media-libs/libpng:0=
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/libvorbis
+ media-libs/openal
+ media-libs/sdl2-image
+ media-libs/sdl2-net
+ sys-libs/zlib[minizip]
+ virtual/glu
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libXdmcp
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ media-libs/glew"
+BDEPEND="${DEPEND}
+ virtual/pkgconfig
+ doc? (
+ app-text/doxygen
+ media-gfx/graphviz
+ )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.9.6.1-build.patch"
+ "${FILESDIR}/${PN}-1.9.5.3-minizip.patch"
+)
+
+src_prepare() {
+ default
+
+ sed -i "s/FEATURES/EL_FEATURES/g" make.defaults || die
+ sed -i "s/FEATURES/EL_FEATURES/g" Makefile.linux || die
+
+ # Remove bundled minizip
+ rm io/{crypt,ioapi,unzip,zip}.h || die
+ rm io/{ioapi,unzip,zip}.c || die
+
+ cp Makefile.linux Makefile || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)"
+ use doc && emake docs
+}
+
+src_install() {
+ dobin el.linux.bin
+ newbin "${FILESDIR}"/el-wrapper-1.9.6.1 el
+ newicon -s 48 elc.png ${PN}.png
+ make_desktop_entry el "Eternal Lands"
+
+ dodoc CHANGES TODO
+ use doc && dodoc -r docs/html/
+}
diff --git a/games-rpg/eternal-lands/files/el-wrapper-1.9.6.1 b/games-rpg/eternal-lands/files/el-wrapper-1.9.6.1
new file mode 100644
index 000000000000..f475e001accb
--- /dev/null
+++ b/games-rpg/eternal-lands/files/el-wrapper-1.9.6.1
@@ -0,0 +1,53 @@
+#!/bin/bash -e
+
+elc=~/.elc
+datadir=$elc/el_data
+browser=xdg-open
+
+if [[ ! -e $elc ]] || [[ ! -e $datadir ]] || [[ ! -e $elc/servers.lst ]] ||
+ [[ ! -e $elc/el.ini ]]; then
+
+ [[ -e $elc ]] || mkdir -p $elc
+
+ if [[ ! -e $datadir ]]; then
+ echo
+ echo "The \"Eternal Lands\" launcher is downloading the game data..."
+ echo "It is only needed before the first start."
+ echo "The default data location is ~/.elc/el_data"
+ echo
+
+ tmpdir="`mktemp -d /tmp/eternal-lands.XXXXXXXXXX`"
+ trap "rm -r $tmpdir" EXIT
+ wget https://github.com/raduprv/Eternal-Lands/releases/download/1.9.6.1/eternallands-data_1.9.6.1.zip -P $tmpdir
+ unzip $tmpdir/eternallands-data_1.9.6.1.zip -d $elc
+
+ echo
+ echo "The game sound and music are optional, you can download \
+them now or any time later from the official website and unpack into \
+~/.elc/el_data/sound and ~/.elc/el_data/music"
+ while true; do
+ read -r -n 1 -p "Download the game sound and music now? (y/n) " yn
+ case $yn in
+ [Yy]) break;;
+ [Nn]) break;;
+ *) echo -e "\nPlease answer Yes or No.";;
+ esac
+ done
+ echo
+
+ if [[ $yn == [Yy] ]]; then
+ wget https://github.com/raduprv/Eternal-Lands/releases/download/1.9.6.1/eternallands-sound_1.9.6.1.zip -P $tmpdir
+ wget https://github.com/raduprv/Eternal-Lands/releases/download/1.9.6.1/eternallands-music_1.9.5.9.zip -P $tmpdir
+ unzip $tmpdir/eternallands-sound_1.9.6.1.zip -d $datadir
+ mkdir $datadir/music
+ unzip $tmpdir/eternallands-music_1.9.5.9.zip -d $datadir/music
+ fi
+
+ rm -r $tmpdir
+ fi
+
+ [[ -e $elc/servers.lst ]] || cp $datadir/servers.lst $elc/
+ [[ -e $elc/el.ini ]] || cp $datadir/el.ini $elc/
+fi
+
+exec /usr/bin/el.linux.bin -dir="$datadir" -b="$browser" "$@"
diff --git a/games-rpg/eternal-lands/files/eternal-lands-1.9.6.1-build.patch b/games-rpg/eternal-lands/files/eternal-lands-1.9.6.1-build.patch
new file mode 100644
index 000000000000..b818d9cb300e
--- /dev/null
+++ b/games-rpg/eternal-lands/files/eternal-lands-1.9.6.1-build.patch
@@ -0,0 +1,45 @@
+--- a/Makefile.linux
++++ b/Makefile.linux
+@@ -29,11 +29,11 @@
+ $(shell pkg-config zlib --cflags) \
+ $(foreach FEATURE, $(FEATURES), $($(FEATURE)_CFLAGS))
+
+-CFLAGS=$(PLATFORM) $(CWARN) -O1 -ggdb -pipe $(OPTIONS) -fno-strict-aliasing $(EXTRA_INCLUDES)
++CFLAGS += -pipe $(OPTIONS) -fno-strict-aliasing $(EXTRA_INCLUDES)
+
+-CXXFLAGS=$(PLATFORM) $(CXXWARN) -O1 -ggdb -pipe $(OPTIONS) -fno-strict-aliasing $(EXTRA_INCLUDES)
++CXXFLAGS += $(OPTIONS) -fno-strict-aliasing $(EXTRA_INCLUDES)
+
+-LDFLAGS=$(shell pkg-config sdl2 --libs) \
++LDFLAGS += $(shell pkg-config sdl2 --libs) \
+ $(shell pkg-config libxml-2.0 --libs) \
+ $(shell pkg-config SDL2_net --libs) \
+ $(shell pkg-config SDL2_image --libs) \
+@@ -140,8 +140,8 @@
+
+ # the compile targets
+ $(EXE): $(OBJS)
+- @echo " LINK $(EXE)"
+- @$(LINK) $(CFLAGS) -o $(EXE) $(OBJS) $(LDFLAGS)
++ @echo "$(CC) $(CFLAGS) -o $(EXE) $(OBJS) $(LDFLAGS)"
++ @$(CC) $(CFLAGS) -o $(EXE) $(OBJS) $(LDFLAGS)
+
+ #recompile on Makefile or conf change
+ #.depend $(OBJS): Makefile.linux make.conf
+@@ -152,14 +152,14 @@
+ DEPS_MAGIC := $(shell mkdir $(DEPS_DIRS) > /dev/null 2>&1 || :)
+
+ $(COBJS): %.o: %.c Makefile.linux make.conf
+- @echo " CC $@"
++ @echo "$(CC) $(CFLAGS) -MT '$@' -MD -MP -MF '.deps/$@.pp' -c $< -o $@"
+ @if $(CC) $(CFLAGS) -MT '$@' -MD -MP -MF '.deps/$@.pp' -c $< -o $@; then \
+ mv ".deps/$@.pp" ".deps/$@.P"; \
+ else rm -f ".deps/$@.pp"; exit 1; \
+ fi
+
+ $(CXXOBJS): %.o: %.cpp Makefile.linux make.conf
+- @echo " CXX $@"
++ @echo "$(CXX) $(CXXFLAGS) -MT '$@' -MD -MP -MF '.deps/$@.pp' -c $< -o $@"
+ @if $(CXX) $(CXXFLAGS) -MT '$@' -MD -MP -MF '.deps/$@.pp' -c $< -o $@; then \
+ mv ".deps/$@.pp" ".deps/$@.P"; \
+ else rm -f ".deps/$@.pp"; exit 1; \
diff --git a/games-rpg/eternal-lands/metadata.xml b/games-rpg/eternal-lands/metadata.xml
index 7c730d47817a..f4f4c563c1d0 100644
--- a/games-rpg/eternal-lands/metadata.xml
+++ b/games-rpg/eternal-lands/metadata.xml
@@ -5,4 +5,7 @@
<email>games@gentoo.org</email>
<name>Gentoo Games Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">raduprv/Eternal-Lands</remote-id>
+ </upstream>
</pkgmetadata>