- Update to 4.2.21 (should work on ia64)

- Remove obsoleted pidfile patch
- Update rc.d script style
- Assume maintainership
This commit is contained in:
Johan van Selst 2006-09-28 14:00:35 +00:00
parent 89d3dc0029
commit c6e8abf4ed
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=174034
6 changed files with 26 additions and 153 deletions

View File

@ -6,13 +6,15 @@
#
PORTNAME= wolfpack
PORTVERSION= 4.2.18
PORTVERSION= 4.2.21
CATEGORIES= games
MASTER_SITES= http://www.wolfpackempire.com/Downloads/server/ \
http://www.wolfpackempire.com/Downloads/server/oldversions/
http://empire.gletsjer.net/Downloads/server/ \
http://www.wolfpackempire.com/Downloads/server/oldversions/ \
http://empire.gletsjer.net/Downloads/server/oldversions/
DISTNAME= empire-${PORTVERSION}
MAINTAINER= ports@FreeBSD.org
MAINTAINER= johans@stack.nl
COMMENT= Long term multiplayer strategy game
.if !defined(BATCH)
@ -20,7 +22,7 @@ IS_INTERACTIVE= yes # configure script asks questions
.endif
ALL_TARGET= freebsd
USE_RC_SUBR= yes
USE_RC_SUBR= wolfpack
MAN1= fairland.1 files.1 pconfig.1
MAN6= emp_client.6 emp_server.6
@ -31,10 +33,6 @@ MAKE_ARGS= PREFIX=${PREFIX}
PKGDEINSTALL= ${PKGINSTALL}
.if ${ARCH} == "ia64"
BROKEN= "Does not compile on ia64"
.endif
RC_SCRIPTS_SUB= PREFIX=${PREFIX} \
RC_SUBR=${RC_SUBR}
@ -62,8 +60,5 @@ post-install:
@${CAT} ${FILESDIR}/post-install-info
@ ${SETENV} PKG_PREFIX=${PREFIX} \
${SH} ${PKGINSTALL} ${PORTNAME} POST-INSTALL
@ ${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${FILESDIR}/wolfpack.sh > ${WRKDIR}/wolfpack.sh
${INSTALL_SCRIPT} ${WRKDIR}/wolfpack.sh ${PREFIX}/etc/rc.d/wolfpack.sh
.include <bsd.port.post.mk>

View File

@ -1,3 +1,3 @@
MD5 (empire-4.2.18.tar.gz) = 4b7dc524b842cf39c657aeb0aa9a75a7
SHA256 (empire-4.2.18.tar.gz) = a417a8400cbb578a2b39eaa92525226e891a2c18801e714bc43fb6f133aa81d8
SIZE (empire-4.2.18.tar.gz) = 1325824
MD5 (empire-4.2.21.tar.gz) = b231597962a7a0ae043961fa559fe846
SHA256 (empire-4.2.21.tar.gz) = 8e28c04bc588f94320c40a479c7f8df27c8df23fd5baf8af71faa76ea95558f2
SIZE (empire-4.2.21.tar.gz) = 1366491

View File

@ -1,127 +0,0 @@
--- src/server/main.c.orig Tue Sep 7 23:52:39 2004
+++ src/server/main.c Sun Oct 10 23:09:23 2004
@@ -78,6 +78,7 @@
#if !defined(_WIN32)
static int mainpid = 0;
+static char *pidfile = NULL;
#endif
/*
@@ -93,9 +94,10 @@
time_t now;
int flags = 0;
int op;
- char *config_file = NULL;
+ char *config_file = NULL, pbuf[256];
extern char *optarg;
s_char tbuf[256];
+ FILE *pidf;
#ifdef POSIXSIGNALS
struct sigaction act;
#endif /* POSIXSIGNALS */
@@ -105,11 +107,14 @@
#if !defined(_WIN32)
mainpid = getpid();
- while ((op = getopt(argc, argv, "D:de:psh")) != EOF) {
+ while ((op = getopt(argc, argv, "D:P:de:psh")) != EOF) {
switch (op) {
case 'D':
datadir = optarg;
break;
+ case 'P':
+ pidfile = optarg;
+ break;
case 'd':
debug++;
break;
@@ -124,7 +129,15 @@
break;
case 'h':
default:
- printf("Usage: %s -d -p -s\n", argv[0]);
+ fprintf(stderr, "Usage: %s -D <datadir> -d -e <configfile> -p -s\n"
+ " -D Use the specified data dir\n"
+ " -P Write out the PID to the specified file\n"
+ " -d Increase debugging\n"
+ " -e Use the specified config file\n"
+ " -p Print thread debugging information\n"
+ " -s Print thread info, and do stack checks\n",
+ argv[0]);
+
return 0;
}
}
@@ -134,13 +147,6 @@
config_file = tbuf;
}
- logerror("------------------------------------------------------");
-#if !defined(_WIN32)
- logerror("Empire server (pid %d) started", getpid());
-#else
- logerror("Empire server started");
-#endif /* _WIN32 */
-
#if defined(_WIN32)
loc_NTInit();
#endif
@@ -193,6 +199,32 @@
signal(SIGPIPE, SIG_IGN);
#endif /* POSIXSIGNALS */
#endif /* _WIN32 */
+
+#if !defined(_WIN32)
+ if (pidfile != NULL) {
+ if ((pidf = fopen(pidfile, "a")) == NULL) {
+ logerror("Unable to open PID file %s - %s", pidfile, strerror(errno));
+ exit(1);
+ } else {
+ op = snprintf(pbuf, sizeof(pbuf), "%d\n", getpid());
+ if (fwrite(pbuf, 1, op, pidf) != op) {
+ unlink(pidfile);
+ logerror("Unable to write PID file %s - %s", pidfile, strerror(errno));
+ exit(1);
+ }
+ fclose(pidf);
+
+ }
+ }
+#endif
+
+ logerror("------------------------------------------------------");
+#if !defined(_WIN32)
+ logerror("Empire server (pid %d) started", getpid());
+#else
+ logerror("Empire server started");
+#endif /* _WIN32 */
+
empth_init((char **)&player, flags);
time(&now);
#if !defined(_WIN32)
@@ -312,9 +344,13 @@
signal(SIGFPE, SIG_DFL);
#endif /* POSIXSIGNALS */
#endif /* _WIN32 */
- logerror("server received fatal signal %d", sig);
+logerror("server received fatal signal %d", sig);
log_last_commands();
close_files();
+
+ if (pidfile != NULL)
+ unlink(pidfile);
+
_exit(0);
}
@@ -381,6 +417,9 @@
else
logerror("Server shutting down at Deity's request");
close_files();
+ if (pidfile != NULL)
+ unlink(pidfile);
+
_exit(0);
}

View File

@ -13,11 +13,10 @@ rcvar=`set_rcvar`
wolfdir="%%PREFIX%%/wolfpack"
command="$wolfdir/bin/emp_server"
pidfile="$wolfdir/data/wolfpack.pid"
pidfile="$wolfdir/data/server.pid"
wolfpack_enable=${wolfpack_enable:-"NO"}
wolfpack_user=${wolfpack_user:-"wolfpack"}
wolfpack_flags=${wolfpack_flags:-"-P $pidfile"}
load_rc_config $name

View File

@ -25,7 +25,7 @@ PRE-INSTALL)
echo "You already have a user \"${USER}\", so I will use it."
else
if pw useradd ${USER} -g ${GROUP} -h - \
-d ${INSTDIR} -c "Teamspeak Server"
-d ${INSTDIR} -c "Wolfpack Empire Server"
then
echo "Added user \"${USER}\"."
else

View File

@ -15,6 +15,7 @@ wolfpack/doc/WACKY_IDEAS
wolfpack/doc/WISH_LIST
wolfpack/doc/backups
wolfpack/doc/bug-reports
wolfpack/doc/clients-howto
wolfpack/doc/coding
wolfpack/doc/compiling
wolfpack/doc/configuration
@ -22,11 +23,11 @@ wolfpack/doc/debugging
wolfpack/doc/disk_space
wolfpack/doc/econfig
wolfpack/doc/files
wolfpack/doc/message
wolfpack/doc/pthreads
wolfpack/doc/threads
wolfpack/doc/troubleshooting
wolfpack/info.nr/Attack
wolfpack/doc/unicode
wolfpack/info.nr/Attacking
wolfpack/info.nr/Autofeed
wolfpack/info.nr/Autonav
wolfpack/info.nr/BTU
@ -37,6 +38,7 @@ wolfpack/info.nr/CHANGES.CHAINSAW
wolfpack/info.nr/Citizens
wolfpack/info.nr/Clients
wolfpack/info.nr/Combat
wolfpack/info.nr/Commerce
wolfpack/info.nr/Commodities
wolfpack/info.nr/Communication
wolfpack/info.nr/Damage
@ -70,13 +72,11 @@ wolfpack/info.nr/LandUnits
wolfpack/info.nr/Loans
wolfpack/info.nr/Maintenance
wolfpack/info.nr/Maps
wolfpack/info.nr/Market
wolfpack/info.nr/Merc
wolfpack/info.nr/Missions
wolfpack/info.nr/Mobility
wolfpack/info.nr/Move
wolfpack/info.nr/Moving
wolfpack/info.nr/Nation
wolfpack/info.nr/Nations
wolfpack/info.nr/Novice
wolfpack/info.nr/Nuke-types
wolfpack/info.nr/Obsolete
@ -89,7 +89,7 @@ wolfpack/info.nr/Plane-types
wolfpack/info.nr/Planes
wolfpack/info.nr/Playing
wolfpack/info.nr/Populace
wolfpack/info.nr/Production
wolfpack/info.nr/Producing
wolfpack/info.nr/Products
wolfpack/info.nr/Quick-ref
wolfpack/info.nr/Research
@ -98,6 +98,7 @@ wolfpack/info.nr/Sector-types
wolfpack/info.nr/Sectors
wolfpack/info.nr/Selector
wolfpack/info.nr/Server
wolfpack/info.nr/Sheep
wolfpack/info.nr/Ship-types
wolfpack/info.nr/Ships
wolfpack/info.nr/Spies
@ -108,8 +109,9 @@ wolfpack/info.nr/Taxes
wolfpack/info.nr/Technology
wolfpack/info.nr/Time
wolfpack/info.nr/Trade-ships
wolfpack/info.nr/Transportation
wolfpack/info.nr/Unit-types
wolfpack/info.nr/Update
wolfpack/info.nr/Updates
wolfpack/info.nr/Update-sequence
wolfpack/info.nr/Wolfpack
wolfpack/info.nr/accept
@ -172,7 +174,6 @@ wolfpack/info.nr/grind
wolfpack/info.nr/harden
wolfpack/info.nr/headlines
wolfpack/info.nr/help
wolfpack/info.nr/hidden
wolfpack/info.nr/improve
wolfpack/info.nr/info
wolfpack/info.nr/land
@ -226,6 +227,7 @@ wolfpack/info.nr/payoff
wolfpack/info.nr/pbmap
wolfpack/info.nr/pboard
wolfpack/info.nr/pdump
wolfpack/info.nr/peek
wolfpack/info.nr/plane
wolfpack/info.nr/players
wolfpack/info.nr/pmap
@ -303,14 +305,18 @@ wolfpack/info.nr/wingadd
wolfpack/info.nr/wipe
wolfpack/info.nr/wire
wolfpack/info.nr/work
wolfpack/info.nr/xdump
wolfpack/info.nr/zdone
wolfpack/scripts/README
wolfpack/scripts/backup
wolfpack/scripts/backup.bat
wolfpack/scripts/bigstart
wolfpack/scripts/blitz/README
wolfpack/scripts/blitz/crontab.config
wolfpack/scripts/blitz/motd
wolfpack/scripts/blitz/setup-blitz
wolfpack/scripts/blitz/start-blitz
wolfpack/scripts/blitz-w32/blitz_script.bat
wolfpack/scripts/crontab.config
wolfpack/scripts/keepitup
wolfpack/scripts/mapper/Makefile
@ -332,8 +338,8 @@ wolfpack/scripts/mapper/text.pbm
wolfpack/scripts/mapper/text.size
wolfpack/scripts/postresults
wolfpack/scripts/saveass
etc/rc.d/wolfpack.sh
@dirrm wolfpack/scripts/mapper
@dirrm wolfpack/scripts/blitz-w32
@dirrm wolfpack/scripts/blitz
@dirrm wolfpack/scripts
@dirrm wolfpack/info.nr