forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
games-roguelike/mangband: initial commit new package bug #139020
Package-Manager: portage-2.2.28
- Loading branch information
Showing
5 changed files
with
237 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
DIST mangband-1.1.3.tar.gz 1497078 SHA256 d4917c51fc84a0626db1b09f6cf8b0ebc4522dd8ab34334e56fba8275ede9069 SHA512 5efda352607953e94a433bf9aabb496419a22c984dc9e054cebc90623682da23a90fb6cb910fcc950010d469571f2af515bfa7740c921add44ac9ea95e723130 WHIRLPOOL 28bf625bf930dff87e66ef8f500043a061b5834e830b1f377f7115c824432fc8025ab687fb6bc3bf69e73c8316ece0f4707cf6550ba3f6560d1c2b456c510bd0 |
118 changes: 118 additions & 0 deletions
118
games-roguelike/mangband/files/mangband-1.1.3-paths.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,118 @@ | ||
diff --git a/src/config.h.in b/src/config.h.in | ||
index e8efdca..9a6290a 100644 | ||
--- a/config.h.in | ||
+++ a/config.h.in | ||
@@ -473,6 +473,9 @@ | ||
#ifndef DEFAULT_PATH | ||
# define DEFAULT_PATH "./lib/" | ||
#endif | ||
+#ifndef DEFAULT_PATH_W | ||
+# define DEFAULT_PATH_W DEFAULT_PATH | ||
+#endif | ||
|
||
|
||
/* | ||
diff --git a/src/server/externs.h b/src/server/externs.h | ||
index 249e41b..e1a5c4f 100644 | ||
--- a/server/externs.h | ||
+++ a/server/externs.h | ||
@@ -644,7 +644,7 @@ extern errr init_e_info_txt(FILE *fp, char *buf); | ||
extern errr init_r_info_txt(FILE *fp, char *buf); | ||
|
||
/* init.c */ | ||
-extern void init_file_paths(char *path); | ||
+extern void init_file_paths(char *path, char *path2); | ||
extern void init_some_arrays(void); | ||
extern void load_server_cfg(void); | ||
|
||
diff --git a/src/server/init2.c b/src/server/init2.c | ||
index 00d8a01..27fd2b7 100644 | ||
--- a/server/init2.c | ||
+++ a/server/init2.c | ||
@@ -63,10 +63,11 @@ | ||
* to succeed even if the strings have not been allocated yet, | ||
* as long as the variables start out as "NULL". | ||
*/ | ||
-void init_file_paths(char *path) | ||
+void init_file_paths(char *path, char *path2) | ||
{ | ||
char *tail; | ||
- | ||
+ char *tail2; | ||
+ char *tmp; | ||
|
||
/*** Free everything ***/ | ||
|
||
@@ -103,6 +104,10 @@ void init_file_paths(char *path) | ||
/* Prepare to append to the Base Path */ | ||
tail = path + strlen(path); | ||
|
||
+ tmp = string_make(path2); | ||
+ | ||
+ /* Prepare to append to the Base Path */ | ||
+ tail2 = path2 + strlen(path2); | ||
|
||
#ifdef VM | ||
|
||
@@ -123,8 +128,8 @@ void init_file_paths(char *path) | ||
/*** Build the sub-directory names ***/ | ||
|
||
/* Build a path name */ | ||
- strcpy(tail, "data"); | ||
- ANGBAND_DIR_DATA = string_make(path); | ||
+ strcpy(tail2, "data"); | ||
+ ANGBAND_DIR_DATA = string_make(path2); | ||
|
||
/* Build a path name */ | ||
strcpy(tail, "edit"); | ||
@@ -147,16 +152,16 @@ void init_file_paths(char *path) | ||
ANGBAND_DIR_PREF = string_make(path); | ||
#endif | ||
/* Build a path name */ | ||
- strcpy(tail, "save"); | ||
- ANGBAND_DIR_SAVE = string_make(path); | ||
+ strcpy(tail2, "save"); | ||
+ ANGBAND_DIR_SAVE = string_make(path2); | ||
|
||
/* Build a path name */ | ||
strcpy(tail, "text"); | ||
ANGBAND_DIR_TEXT = string_make(path); | ||
|
||
/* Build a path name */ | ||
- strcpy(tail, "user"); | ||
- ANGBAND_DIR_USER = string_make(path); | ||
+ strcpy(tail2, "user"); | ||
+ ANGBAND_DIR_USER = string_make(path2); | ||
#if 0 | ||
/* Build a path name */ | ||
strcpy(tail, "apex"); | ||
diff --git a/src/server/main.c b/src/server/main.c | ||
index 4260b8d..7884b2f 100644 | ||
--- a/server/main.c | ||
+++ a/server/main.c | ||
@@ -142,6 +142,7 @@ extern unsigned _ovrbuffer = 0x1500; | ||
static void init_stuff(void) | ||
{ | ||
char path[1024]; | ||
+ char path2[1024]; | ||
|
||
#if defined(AMIGA) || defined(VM) | ||
|
||
@@ -161,10 +162,16 @@ static void init_stuff(void) | ||
/* Hack -- Add a path separator (only if needed) */ | ||
if (!suffix(path, PATH_SEP)) strcat(path, PATH_SEP); | ||
|
||
+ /* Use the angband_path, or a default */ | ||
+ strcpy(path2, tail ? tail : DEFAULT_PATH_W); | ||
+ | ||
+ /* Hack -- Add a path separator (only if needed) */ | ||
+ if (!suffix(path2, PATH_SEP)) strcat(path2, PATH_SEP); | ||
+ | ||
#endif /* AMIGA / VM */ | ||
|
||
/* Initialize */ | ||
- init_file_paths(path); | ||
+ init_file_paths(path, path2); | ||
} | ||
|
||
/* |
22 changes: 22 additions & 0 deletions
22
games-roguelike/mangband/files/mangband-1.1.3-strchr.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
diff --git a/src/common/h-system.h b/src/common/h-system.h | ||
index f60bbc1..0294dd3 100644 | ||
--- a/common/h-system.h | ||
+++ a/common/h-system.h | ||
@@ -104,17 +104,6 @@ | ||
|
||
#ifdef SET_UID | ||
|
||
-# ifdef USG | ||
-# include <string.h> | ||
-# else | ||
-# include <strings.h> | ||
-extern char *strstr(); | ||
-extern char *strchr(); | ||
-extern char *strrchr(); | ||
-# endif | ||
- | ||
-#else | ||
- | ||
# include <string.h> | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
# Copyright 1999-2016 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=6 | ||
inherit eutils flag-o-matic user | ||
|
||
DESCRIPTION="Online multiplayer real-time roguelike game, derived from Angband." | ||
HOMEPAGE="http://www.mangband.org" | ||
SRC_URI="http://www.mangband.org/download/${P}.tar.gz" | ||
|
||
#RESTRICT=nomirror # for ebuild debugging | ||
|
||
LICENSE="Moria" | ||
SLOT="0" | ||
KEYWORDS="~amd64 ~x86" | ||
IUSE="ncurses sdl X" | ||
|
||
# Remove this once we hit MAngband 1.2: | ||
S="${WORKDIR}/${P}"/src | ||
|
||
RDEPEND=" | ||
ncurses? ( sys-libs/ncurses:= ) | ||
sdl? ( media-libs/libsdl ) | ||
X? ( x11-libs/libX11 )" | ||
DEPEND="${RDEPEND}" | ||
|
||
PATCHES=( "${FILESDIR}/${P}-strchr.patch" | ||
"${FILESDIR}/${P}-paths.patch" ) | ||
|
||
MY_DATADIR=/usr/share/"${PN}" | ||
MY_STATEDIR=/var/lib/"${PN}" | ||
MY_SYSCONFDIR=/etc | ||
|
||
src_configure() { | ||
append-cflags "-DDEFAULT_PATH='\"${MY_DATADIR}\"' -DDEFAULT_PATH_W='\"${MY_STATEDIR}\"'" | ||
econf \ | ||
$(use_with ncurses gcu) \ | ||
$(use_with X x11) \ | ||
$(use_with sdl) | ||
} | ||
|
||
pkg_setup() { | ||
# mangband server uses own user/group: | ||
enewgroup mangband | ||
enewuser mangband -1 -1 -1 "mangband" | ||
} | ||
|
||
src_install() { | ||
# Newer versions of MAngband have "make install", so we could use.. | ||
# emake DESTDIR="${D}" install | ||
# dodoc NEWS README INSTALL AUTHORS | ||
#..but not yet | ||
|
||
dobin mangband mangclient | ||
|
||
# Read-only data | ||
insinto "${MY_DATADIR}" | ||
doins -r "${WORKDIR}/${P}"/lib/{edit,file,help,text,xtra,user} | ||
|
||
# Server config | ||
insinto "${MY_SYSCONFDIR}" | ||
doins "${WORKDIR}/${P}"/mangband.cfg | ||
|
||
# Read-write data | ||
insinto "${MY_STATEDIR}" | ||
doins -r "${WORKDIR}/${P}"/lib/{data,save,user} | ||
|
||
fowners -R mangband:mangband "${MY_STATEDIR}"/{data,save,user} | ||
fperms -R 2664 "${MY_STATEDIR}"/{data,save,user} | ||
fperms 2775 "${MY_STATEDIR}"/{data,save,user} | ||
|
||
# Docs | ||
#dodoc ${WORKDIR}/${P}/LICENSE | ||
} | ||
|
||
pkg_postinst() { | ||
echo | ||
elog "Make sure LibDir is either unset in ~/.mangrc either points to" | ||
elog " ${MY_DATADIR} for 'mangclient' to pick it up." | ||
elog "Server binary is called 'mangband', and must be run under user" | ||
elog " mangband, i.e. 'sudo -u mangband mangband' " | ||
echo | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> | ||
<pkgmetadata> | ||
<maintainer type="person"> | ||
<email>[email protected]</email> | ||
<description>Proxied Maintainer</description> | ||
</maintainer> | ||
<maintainer type="project"> | ||
<email>[email protected]</email> | ||
<name>Proxy Maintainers</name> | ||
</maintainer> | ||
</pkgmetadata> |