diff options
Diffstat (limited to 'games-rpg')
-rw-r--r-- | games-rpg/comi/comi-1-r1.ebuild (renamed from games-rpg/comi/comi-1.ebuild) | 8 | ||||
-rw-r--r-- | games-rpg/queen/queen-1-r2.ebuild (renamed from games-rpg/queen/queen-1-r1.ebuild) | 6 | ||||
-rw-r--r-- | games-rpg/xu4/Manifest | 4 | ||||
-rw-r--r-- | games-rpg/xu4/files/0.9-savegame.patch | 76 | ||||
-rw-r--r-- | games-rpg/xu4/files/1.4-system-minizip.patch | 82 | ||||
-rw-r--r-- | games-rpg/xu4/files/xu4-0.9-ldflags.patch | 35 | ||||
-rw-r--r-- | games-rpg/xu4/files/xu4-0.9-warnings.patch | 26 | ||||
-rw-r--r-- | games-rpg/xu4/files/xu4-0.9-zip.patch | 144 | ||||
-rw-r--r-- | games-rpg/xu4/metadata.xml | 1 | ||||
-rw-r--r-- | games-rpg/xu4/xu4-0.9-r1.ebuild | 76 | ||||
-rw-r--r-- | games-rpg/xu4/xu4-1.4.ebuild | 61 |
11 files changed, 151 insertions, 368 deletions
diff --git a/games-rpg/comi/comi-1.ebuild b/games-rpg/comi/comi-1-r1.ebuild index 010c9faf988d..bd971f07ce5d 100644 --- a/games-rpg/comi/comi-1.ebuild +++ b/games-rpg/comi/comi-1-r1.ebuild @@ -1,14 +1,14 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=8 inherit cdrom estack desktop wrapper xdg DESCRIPTION="The Curse of Monkey Island, the third game in the series" HOMEPAGE="https://en.wikipedia.org/wiki/The_Curse_of_Monkey_Island" SRC_URI="https://dev.gentoo.org/~chewi/distfiles/${PN}.jpg" - +S="${WORKDIR}" LICENSE="comi" SLOT="0" KEYWORDS="~amd64 ~x86" @@ -17,8 +17,6 @@ RESTRICT="bindist" RDEPEND=">=games-engines/scummvm-0.4.0" -S="${WORKDIR}" - dotar() { cd "${CDROM_ABSMATCH%/*}" || die eshopts_push -s nocaseglob nullglob diff --git a/games-rpg/queen/queen-1-r1.ebuild b/games-rpg/queen/queen-1-r2.ebuild index f30eb3407a26..a434b74e7a33 100644 --- a/games-rpg/queen/queen-1-r1.ebuild +++ b/games-rpg/queen/queen-1-r2.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=8 inherit desktop wrapper @@ -34,7 +34,7 @@ SRC_URI=" l10n_it? ( ${SF_BASE_URL}${FILE_IT} ) http://www.scummvm.org/images/cat-queen.png " - +S="${WORKDIR}" LICENSE="queen" SLOT="0" KEYWORDS="~amd64 ~ppc64 ~x86" @@ -56,8 +56,6 @@ DEPEND="${RDEPEND} l10n_it? ( app-arch/unzip ) " -S=${WORKDIR} - src_unpack() { if use l10n_de ; then mkdir de diff --git a/games-rpg/xu4/Manifest b/games-rpg/xu4/Manifest index 9ee8e5493222..41735b7c63e1 100644 --- a/games-rpg/xu4/Manifest +++ b/games-rpg/xu4/Manifest @@ -1,3 +1,3 @@ DIST u4upgrad.zip 632072 BLAKE2B 3691f1cbac940021ef6043dd5e2ee26dcee5f8d7181ed525179211a6984f5ab498b84533d28146129c3e747f0af8946f7d691b7cb817a5a4ecb39e71e2df7b9a SHA512 4832d8cfd266d3ccc5eab5184bd2b6b9acd4c0203478873fb5e11704d95104dd9285a7752bad77f873d4f8603673184ae9421964509b948ec69944a4ceadd083 -DIST ultima4-1.01.zip 537487 BLAKE2B 9af5c934e57d3b0151a575efc3ed34fa25f81ed2c43e2cb95ee200afb1b2f49365634199e066787de3d20c4c97903f918de2a4d4f2e9aeeb361ee585e59fbbc1 SHA512 c86c29d51e21b93992316552fbaaec948e7e8048fea484f003f43ac82211f82fa587fb15db991cddf744f2c3ff0fc4d411cd51cc7650e13a5b520c4dc620518c -DIST xu4-0.9.tar.gz 320090 BLAKE2B 298a97edd2c42edcc2f63ec99656e76f3c541fce13f01a0767f02f63223e0d842a33ee1012742b7cd5bdefa7c66cddba6799130f539a8bb306c87ece8585ea62 SHA512 6c0b27472074d96a5f76e024c800bed89c57c29dbd760278c819ad8b024362480bda5f1584eb9fe64fd6f6cae0b3b8d8571c8cf533f25b842471803acd7cea8d +DIST ultima4.zip 529099 BLAKE2B 62a7e6e05344d0c3496ee3240d6cd98c61f1ff8b8f5d869a8cecec8f786b76c8a42e1bef40fa63861d5652352c00ba67708e49b5e6c9ddfdebbb3ae47ae01e2e SHA512 efc65a53492c0f68c9e2f1507afed4da925992cdfec7a699095e6369725af8156331000c575778121e04ef6ca252af2eef97f8f7183b8378f22a4e7e509fb9a5 +DIST xu4-1.4.gh.tar.gz 8053080 BLAKE2B 3d098c426bce5b9e6c7665007388be9f189d2fc780b575fa586418e77196027f23092201bc566d41b1d9725180b85f1a7fcbb811a274c19f94d907adb6df4f43 SHA512 2061db91727fe372007c7a79c9f23f9bc78fcc6e1359e2e14ed2e7277e745e3e2a9a8fd7a16e7b42f8bd85ca692115ef22ba95122f8fbfe67c72c2cbed39c95b diff --git a/games-rpg/xu4/files/0.9-savegame.patch b/games-rpg/xu4/files/0.9-savegame.patch deleted file mode 100644 index 96d16360f37c..000000000000 --- a/games-rpg/xu4/files/0.9-savegame.patch +++ /dev/null @@ -1,76 +0,0 @@ ---- a/src/savegame.c. -+++ b/src/savegame.c -@@ -21,23 +21,24 @@ - char *partySavFilename() { - char *fname; - --#if defined(MACOSX) - char *home; - - home = getenv("HOME"); - if (home && home[0]) { - fname = (char *) malloc(strlen(home) + -+#if defined(MACOSX) - strlen(MACOSX_USER_FILES_PATH) + -+#endif -+strlen("/.u4/") + - strlen(PARTY_SAV_BASE_FILENAME) + 2); - strcpy(fname, home); -+#if defined(MACOSX) - strcat(fname, MACOSX_USER_FILES_PATH); -- strcat(fname, "/"); -+#endif -+ strcat(fname, "/.u4/"); - strcat(fname, PARTY_SAV_BASE_FILENAME); - } else - fname = strdup(PARTY_SAV_BASE_FILENAME); --#else -- fname = strdup(PARTY_SAV_BASE_FILENAME); --#endif - - return fname; - } -@@ -45,24 +45,24 @@ - char *monstersSavFilename() { - char *fname; - --#if defined(MACOSX) - char *home; - - home = getenv("HOME"); - if (home && home[0]) { - fname = (char *) malloc(strlen(home) + -+#if defined(MACOSX) - strlen(MACOSX_USER_FILES_PATH) + -+#endif -+strlen("/.u4/") + - strlen(MONSTERS_SAV_BASE_FILENAME) + 2); - strcpy(fname, home); -+#if defined(MACOSX) - strcat(fname, MACOSX_USER_FILES_PATH); -- strcat(fname, "/"); -+#endif -+ strcat(fname, "/.u4/"); - strcat(fname, MONSTERS_SAV_BASE_FILENAME); - } else - fname = strdup(MONSTERS_SAV_BASE_FILENAME); --#else -- fname = strdup(MONSTERS_SAV_BASE_FILENAME); --#endif -- - return fname; - } - ---- a/src/u4.c -+++ b/src/u4.c -@@ -38,6 +38,10 @@ - osxInit(argv[0]); - #endif - -+ if (getenv("HOME")) { -+ chdir(getenv("HOME")); -+ mkdir(".u4", 0777); -+ } - settingsRead(); - - for (i = 1; i < (unsigned int)argc; i++) { diff --git a/games-rpg/xu4/files/1.4-system-minizip.patch b/games-rpg/xu4/files/1.4-system-minizip.patch new file mode 100644 index 000000000000..ed30687e7b4c --- /dev/null +++ b/games-rpg/xu4/files/1.4-system-minizip.patch @@ -0,0 +1,82 @@ +From bce27acd4063d43da601e0a7a85b35fab69cf4bd Mon Sep 17 00:00:00 2001 +From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com> +Date: Fri, 28 Apr 2023 16:30:40 +0300 +Subject: [PATCH] Switch to external zlib minizip library + +Bundled unzip.[ch] uses deprecated zlib macros and fails to compile. +Additionaly added pkg-config calls to use system libraries and includes. + +https://github.com/xu4-engine/u4/pull/16 +--- a/src/Makefile ++++ b/src/Makefile +@@ -8,11 +8,13 @@ UI ?= glv + GPU ?= scale + SOUND=faun + ++PKG_CONFIG ?= pkg-config ++ + ifeq ($(UI), allegro) + ifeq ($(SOUND),allegro) +- UILIBS=-lallegro_acodec -lallegro_audio -lallegro ++ UILIBS=$(shell ${PKG_CONFIG} --libs allegro-5 allegro_acodec-5 allegro_audio-5) + else +- UILIBS=-lallegro ++ UILIBS=$(shell ${PKG_CONFIG} --libs allegro-5) + endif + endif + +@@ -37,23 +39,25 @@ endif + UILIBS+=-lboron + #endif + +-CXXFLAGS=-Wall -I. -Isupport $(UIFLAGS) -DVERSION=\"$(VERSION)\" ++CXXFLAGS+=-Wall -I. -Isupport $(UIFLAGS) -DVERSION=\"$(VERSION)\" + #CXXFLAGS+=-rdynamic -DHAVE_BACKTRACE=1 -DHAVE_VARIADIC_MACROS=1 + + # Choose one of these for debug/release mode. + #CXXFLAGS+=-g -DDEBUG + CXXFLAGS+=-O3 -DNDEBUG + ++CXXFLAGS+=$(shell ${PKG_CONFIG} --cflags minizip) ++ + ifeq ($(UI), glv) + CXXFLAGS+=-Iglv/x11 + GLV_SRC=glv/x11/glv.c +-UILIBS+=-lXcursor -lX11 ++UILIBS+=$(shell ${PKG_CONFIG} --libs xcursor x11) + CFLAGS=$(CXXFLAGS) -DUSE_CURSORS + else + CFLAGS=$(CXXFLAGS) + endif + +-LIBS=$(UILIBS) -lGL -lpng -lz ++LIBS=$(UILIBS) $(shell ${PKG_CONFIG} --libs gl libpng minizip zlib) + + ifeq ($(STATIC_GCC_LIBS),true) + LDFLAGS+=-L. -static-libgcc +--- a/src/Makefile.common ++++ b/src/Makefile.common +@@ -9,7 +9,6 @@ CSRCS=\ + support/notify.c \ + support/stringTable.c \ + support/txf_draw.c \ +- support/unzip.c \ + $(NULL) + + CXXSRCS=\ +--- a/src/u4file.cpp ++++ b/src/u4file.cpp +@@ -6,9 +6,9 @@ + #include <cstring> + #include <cstdlib> + #include <map> ++#include <unzip.h> + + #include "u4file.h" +-#include "unzip.h" + #include "debug.h" + #include "xu4.h" + +-- +2.39.2 + diff --git a/games-rpg/xu4/files/xu4-0.9-ldflags.patch b/games-rpg/xu4/files/xu4-0.9-ldflags.patch deleted file mode 100644 index 7f1e5cd922d7..000000000000 --- a/games-rpg/xu4/files/xu4-0.9-ldflags.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- a/src/Makefile.common -+++ b/src/Makefile.common -@@ -68,25 +68,25 @@ - mkutils:: dumpsavegame$(EXEEXT) lzwenc$(EXEEXT) lzwdec$(EXEEXT) rleenc$(EXEEXT) rledec$(EXEEXT) tlkconv$(EXEEXT) - - $(MAIN): $(OBJS) -- $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS) -+ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(OBJS) $(LIBS) - - dumpsavegame$(EXEEXT) : util/dumpsavegame.o savegame.o io.o names.o -- $(CC) $(CFLAGS) -o dumpsavegame util/dumpsavegame.o savegame.o io.o names.o -+ $(CC) $(LDFLAGS) $(CFLAGS) -o dumpsavegame util/dumpsavegame.o savegame.o io.o names.o - - lzwenc$(EXEEXT) : util/lzwenc.o lzw/hash.o util/pngconv.o -- $(CC) $(CFLAGS) -o lzwenc util/lzwenc.o lzw/hash.o util/pngconv.o -lpng -lz -+ $(CC) $(LDFLAGS) $(CFLAGS) -o lzwenc util/lzwenc.o lzw/hash.o util/pngconv.o -lpng -lz - - lzwdec$(EXEEXT) : util/lzwdec.o lzw/lzw.o lzw/u4decode.o lzw/hash.o util/pngconv.o -- $(CC) $(CFLAGS) -o lzwdec util/lzwdec.o lzw/lzw.o lzw/u4decode.o lzw/hash.o util/pngconv.o -lpng -lz -+ $(CC) $(LDFLAGS) $(CFLAGS) -o lzwdec util/lzwdec.o lzw/lzw.o lzw/u4decode.o lzw/hash.o util/pngconv.o -lpng -lz - - rleenc$(EXEEXT) : util/rleenc.o util/pngconv.o -- $(CC) $(CFLAGS) -o rleenc util/rleenc.o util/pngconv.o -lpng -lz -+ $(CC) $(LDFLAGS) $(CFLAGS) -o rleenc util/rleenc.o util/pngconv.o -lpng -lz - - rledec$(EXEEXT) : util/rledec.o rle.o util/pngconv.o -- $(CC) $(CFLAGS) -o rledec util/rledec.o rle.o util/pngconv.o -lpng -lz -+ $(CC) $(LDFLAGS) $(CFLAGS) -o rledec util/rledec.o rle.o util/pngconv.o -lpng -lz - - tlkconv$(EXEEXT) : util/tlkconv.o -- $(CC) $(CFLAGS) -o tlkconv util/tlkconv.o $(shell xml2-config --libs) -+ $(CC) $(LDFLAGS) $(CFLAGS) -o tlkconv util/tlkconv.o $(shell xml2-config --libs) - - clean:: cleanutil - rm -rf *~ */*~ $(OBJS) $(MAIN) diff --git a/games-rpg/xu4/files/xu4-0.9-warnings.patch b/games-rpg/xu4/files/xu4-0.9-warnings.patch deleted file mode 100644 index e52b610e61d4..000000000000 --- a/games-rpg/xu4/files/xu4-0.9-warnings.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- a/src/u4.c -+++ b/src/u4.c -@@ -3,6 +3,8 @@ - */ - - #include <stdio.h> -+#include <sys/stat.h> -+#include <sys/types.h> - #include <stdlib.h> - #include <stdarg.h> - #include <string.h> ---- a/u4.desktop -+++ b/u4.desktop -@@ -1,9 +1,8 @@ - [Desktop Entry] --Encoding=UTF-8 - Name=Ultima 4 - Comment=Ultima 4 (xu4) - Exec=u4 --Icon=u4.png --Terminal=0 -+Icon=u4 -+Terminal=false - Type=Application --Categories=Application;Game;RolePlaying; -+Categories=Game;RolePlaying; diff --git a/games-rpg/xu4/files/xu4-0.9-zip.patch b/games-rpg/xu4/files/xu4-0.9-zip.patch deleted file mode 100644 index a8d2c58971c9..000000000000 --- a/games-rpg/xu4/files/xu4-0.9-zip.patch +++ /dev/null @@ -1,144 +0,0 @@ ---- a/src/unzip.c -+++ b/src/unzip.c -@@ -493,7 +493,7 @@ - /* - Get Info about the current file in the zipfile, with internal only info - */ --local int unzlocal_GetCurrentFileInfoInternal OF((unzFile file, -+local int unzlocal_GetCurrentFileInfoInternal _Z_OF((unzFile file, - unz_file_info *pfile_info, - unz_file_info_internal - *pfile_info_internal, ---- a/src/unzip.h -+++ b/src/unzip.h -@@ -8,7 +8,7 @@ - Encryption and multi volume ZipFile (span) are not supported. - Old compressions used by old PKZip 1.x are not supported - -- THIS IS AN ALPHA VERSION. AT THIS STAGE OF DEVELOPPEMENT, SOMES API OR STRUCTURE -+ THIS IS AN ALPHA VERSION. AT THIS STAGE _Z_OF DEVELOPPEMENT, SOMES API OR STRUCTURE - CAN CHANGE IN FUTURE VERSION !! - I WAIT FEEDBACK at mail info@winimage.com - Visit also http://www.winimage.com/zLibDll/unzip.htm for evolution -@@ -111,7 +111,7 @@ - tm_unz tmu_date; - } unz_file_info; - --extern int ZEXPORT unzStringFileNameCompare OF ((const char* fileName1, -+extern int ZEXPORT unzStringFileNameCompare _Z_OF ((const char* fileName1, - const char* fileName2, - int iCaseSensitivity)); - /* -@@ -124,7 +124,7 @@ - */ - - --extern unzFile ZEXPORT unzOpen OF((const char *path)); -+extern unzFile ZEXPORT unzOpen _Z_OF((const char *path)); - /* - Open a Zip file. path contain the full pathname (by example, - on a Windows NT computer "c:\\zlib\\zlib111.zip" or on an Unix computer -@@ -135,14 +135,14 @@ - of this unzip package. - */ - --extern int ZEXPORT unzClose OF((unzFile file)); -+extern int ZEXPORT unzClose _Z_OF((unzFile file)); - /* - Close a ZipFile opened with unzipOpen. - If there is files inside the .Zip opened with unzOpenCurrentFile (see later), - these files MUST be closed with unzipCloseCurrentFile before call unzipClose. - return UNZ_OK if there is no problem. */ - --extern int ZEXPORT unzGetGlobalInfo OF((unzFile file, -+extern int ZEXPORT unzGetGlobalInfo _Z_OF((unzFile file, - unz_global_info *pglobal_info)); - /* - Write info about the ZipFile in the *pglobal_info structure. -@@ -150,7 +150,7 @@ - return UNZ_OK if there is no problem. */ - - --extern int ZEXPORT unzGetGlobalComment OF((unzFile file, -+extern int ZEXPORT unzGetGlobalComment _Z_OF((unzFile file, - char *szComment, - uLong uSizeBuf)); - /* -@@ -163,20 +163,20 @@ - /***************************************************************************/ - /* Unzip package allow you browse the directory of the zipfile */ - --extern int ZEXPORT unzGoToFirstFile OF((unzFile file)); -+extern int ZEXPORT unzGoToFirstFile _Z_OF((unzFile file)); - /* - Set the current file of the zipfile to the first file. - return UNZ_OK if there is no problem - */ - --extern int ZEXPORT unzGoToNextFile OF((unzFile file)); -+extern int ZEXPORT unzGoToNextFile _Z_OF((unzFile file)); - /* - Set the current file of the zipfile to the next file. - return UNZ_OK if there is no problem - return UNZ_END_OF_LIST_OF_FILE if the actual file was the latest. - */ - --extern int ZEXPORT unzLocateFile OF((unzFile file, -+extern int ZEXPORT unzLocateFile _Z_OF((unzFile file, - const char *szFileName, - int iCaseSensitivity)); - /* -@@ -189,7 +189,7 @@ - */ - - --extern int ZEXPORT unzGetCurrentFileInfo OF((unzFile file, -+extern int ZEXPORT unzGetCurrentFileInfo _Z_OF((unzFile file, - unz_file_info *pfile_info, - char *szFileName, - uLong fileNameBufferSize, -@@ -215,20 +215,20 @@ - from it, and close it (you can close it before reading all the file) - */ - --extern int ZEXPORT unzOpenCurrentFile OF((unzFile file)); -+extern int ZEXPORT unzOpenCurrentFile _Z_OF((unzFile file)); - /* - Open for reading data the current file in the zipfile. - If there is no error, the return value is UNZ_OK. - */ - --extern int ZEXPORT unzCloseCurrentFile OF((unzFile file)); -+extern int ZEXPORT unzCloseCurrentFile _Z_OF((unzFile file)); - /* - Close the file in zip opened with unzOpenCurrentFile - Return UNZ_CRCERROR if all the file was read but the CRC is not good - */ - - --extern int ZEXPORT unzReadCurrentFile OF((unzFile file, -+extern int ZEXPORT unzReadCurrentFile _Z_OF((unzFile file, - voidp buf, - unsigned len)); - /* -@@ -242,17 +242,17 @@ - (UNZ_ERRNO for IO error, or zLib error for uncompress error) - */ - --extern z_off_t ZEXPORT unztell OF((unzFile file)); -+extern z_off_t ZEXPORT unztell _Z_OF((unzFile file)); - /* - Give the current position in uncompressed data - */ - --extern int ZEXPORT unzeof OF((unzFile file)); -+extern int ZEXPORT unzeof _Z_OF((unzFile file)); - /* - return 1 if the end of file was reached, 0 elsewhere - */ - --extern int ZEXPORT unzGetLocalExtrafield OF((unzFile file, -+extern int ZEXPORT unzGetLocalExtrafield _Z_OF((unzFile file, - voidp buf, - unsigned len)); - /* diff --git a/games-rpg/xu4/metadata.xml b/games-rpg/xu4/metadata.xml index f6c4eeb680aa..dfb64cd69633 100644 --- a/games-rpg/xu4/metadata.xml +++ b/games-rpg/xu4/metadata.xml @@ -6,6 +6,7 @@ <name>Gentoo Games Project</name> </maintainer> <upstream> + <remote-id type="github">xu4-engine/u4</remote-id> <remote-id type="sourceforge">xu4</remote-id> </upstream> </pkgmetadata> diff --git a/games-rpg/xu4/xu4-0.9-r1.ebuild b/games-rpg/xu4/xu4-0.9-r1.ebuild deleted file mode 100644 index ce71208f5d6c..000000000000 --- a/games-rpg/xu4/xu4-0.9-r1.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -DESCRIPTION="A remake of the computer game Ultima IV" -HOMEPAGE="http://xu4.sourceforge.net/" -SRC_URI="https://downloads.sourceforge.net/xu4/${P}.tar.gz - https://downloads.sourceforge.net/xu4/ultima4-1.01.zip - https://downloads.sourceforge.net/xu4/u4upgrad.zip" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="" - -RDEPEND="dev-libs/libxml2 - media-libs/libsdl[sound,video] - media-libs/sdl-mixer[timidity]" -DEPEND="${RDEPEND} - app-arch/unzip" - -S=${WORKDIR}/u4 - -PATCHES=( - "${FILESDIR}/${P}-ldflags.patch" - "${FILESDIR}/${PV}-savegame.patch" - "${FILESDIR}/${P}-warnings.patch" -) - -src_unpack() { - # xu4 will read the data files right out of the zip files - # but we want the docs from the original. - unpack ${P}.tar.gz - cp "${DISTDIR}"/{ultima4-1.01.zip,u4upgrad.zip} . || die - cd "${WORKDIR}" || die - mv ultima4-1.01.zip ultima4.zip || die - mkdir u4-dos || die - cd u4-dos || die - unzip -q ../ultima4.zip || die -} - -src_prepare() { - default - - sed -i \ - -e "s:/usr/local/lib/u4:/usr/$(get_libdir)/u4:" src/u4file.c \ - || die - sed -i \ - -e 's:-Wall:$(E_CFLAGS):' src/Makefile \ - || die - - has_version "<sys-libs/zlib-1.3" && eapply "${FILESDIR}/${P}-zip.patch" -} - -src_compile() { - emake -C src \ - DEBUGCFLAGS= \ - E_CFLAGS="${CFLAGS}" \ - bindir="/usr/bin" \ - datadir="/usr/share" \ - libdir="/usr/$(get_libdir)" -} - -src_install() { - emake -C src \ - DEBUGCFLAGS= \ - E_CFLAGS="${CFLAGS}" \ - bindir="${D}/usr/bin" \ - datadir="${D}/usr/share" \ - libdir="${D}/usr/$(get_libdir)" \ - install - dodoc AUTHORS README doc/*txt "${WORKDIR}/u4-dos/ULTIMA4/"*TXT - insinto "/usr/$(get_libdir)/u4" - doins "${WORKDIR}/"*zip -} diff --git a/games-rpg/xu4/xu4-1.4.ebuild b/games-rpg/xu4/xu4-1.4.ebuild new file mode 100644 index 000000000000..be0cd21ecb06 --- /dev/null +++ b/games-rpg/xu4/xu4-1.4.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="A remake of the computer game Ultima IV" +HOMEPAGE="https://xu4.sourceforge.net/" +SRC_URI="https://github.com/xu4-engine/u4/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz + https://ultima.thatfleminggent.com/ultima4.zip + https://downloads.sourceforge.net/xu4/u4upgrad.zip" +S="${WORKDIR}/u4-${PV}/" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + dev-libs/boron + media-libs/allegro:5[opengl] + media-libs/faun + media-libs/libglvnd + media-libs/libpng:= + sys-libs/zlib:=[minizip] +" +DEPEND="${RDEPEND}" +BDEPEND="app-arch/unzip" + +PATCHES=( + "${FILESDIR}/1.4-system-minizip.patch" +) + +src_unpack() { + # xu4 will read the data files right out of the zip files + # but we want the docs from the original. + unpack ${P}.gh.tar.gz + unpack ultima4.zip + # Place zips where make install expects them + cp "${DISTDIR}/ultima4.zip" "${DISTDIR}/u4upgrad.zip" "${S}" || die +} + +src_prepare() { + default + + # rm as part of using system minizip patch + rm -f src/unzip.{c,h} || die + sed -i -e '/CXXFLAGS+=-O3 -DNDEBUG/d' src/Makefile || die + # Don't strip executable + sed -i -e 's:-s src/xu4:src/xu4:g' Makefile || die +} + +src_configure() { + # custom configure + ./configure --allegro || die +} + +src_install() { + emake DESTDIR="${D}/usr" install + dodoc AUTHORS README.md doc/*.txt "${WORKDIR}"/*.txt + insinto "/usr/share/xu4" + doins "${DISTDIR}/ultima4.zip" +} |