mirror of
https://github.com/SlackBuildsOrg/slackbuilds
synced 2024-09-28 15:21:00 +02:00
games/megaglest: Updated for version 3.7.1.
Noted the optional dependency vlc Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
This commit is contained in:
parent
4fc41ff2e8
commit
519123ffd3
6 changed files with 202 additions and 41 deletions
|
@ -4,5 +4,8 @@ Magic, Egyptians, Indians, Norsemen, Persian or Romans. The game
|
||||||
is setup in one of 16 naturally looking settings, which (like the
|
is setup in one of 16 naturally looking settings, which (like the
|
||||||
unit models) are crafted with great appreciation for detail.
|
unit models) are crafted with great appreciation for detail.
|
||||||
|
|
||||||
Optional dependencies are libircclient and miniupnpc, as well as
|
Optional dependencies are libircclient, miniupnpc and vlc, as well
|
||||||
help2man if you want to build manual pages.
|
as help2man if you want to build man pages.
|
||||||
|
|
||||||
|
Note to parallel builders: don't user more than 2 jobs or build
|
||||||
|
will break.
|
||||||
|
|
|
@ -1,28 +0,0 @@
|
||||||
--- trunk/source/shared_lib/sources/util/util.cpp 2012/04/14 21:21:09 3244
|
|
||||||
+++ trunk/source/shared_lib/sources/util/util.cpp 2012/05/01 14:55:06 3279
|
|
||||||
@@ -22,6 +22,8 @@
|
|
||||||
|
|
||||||
#ifdef WIN32
|
|
||||||
#include <io.h> // for open()
|
|
||||||
+#else
|
|
||||||
+ #include <unistd.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/stat.h> // for open()
|
|
||||||
--- trunk/source/shared_lib/include/graphics/math_util.h 2012/04/16 20:15:57 3252
|
|
||||||
+++ trunk/source/shared_lib/include/graphics/math_util.h 2012/05/01 14:55:06 3279
|
|
||||||
@@ -184,10 +184,10 @@
|
|
||||||
|
|
||||||
Rect2<T> computeBoundingRect() const{
|
|
||||||
return Rect2i(
|
|
||||||
- min(p[0].x, p[1].x),
|
|
||||||
- min(p[0].y, p[2].y),
|
|
||||||
- max(p[2].x, p[3].x),
|
|
||||||
- max(p[1].y, p[3].y));
|
|
||||||
+ std::min(p[0].x, p[1].x),
|
|
||||||
+ std::min(p[0].y, p[2].y),
|
|
||||||
+ std::max(p[2].x, p[3].x),
|
|
||||||
+ std::max(p[1].y, p[3].y));
|
|
||||||
}
|
|
||||||
|
|
||||||
bool isInside(const Vec2<T> &pt) const{
|
|
11
games/megaglest/megaglest-3.6.0.2-help2man.patch
Normal file
11
games/megaglest/megaglest-3.6.0.2-help2man.patch
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
--- megaglest-3.6.0.2/source/g3d_viewer/CMakeLists.txt.orig 2012-01-01 12:28:16.744930699 -0200
|
||||||
|
+++ megaglest-3.6.0.2/source/g3d_viewer/CMakeLists.txt 2012-01-01 12:29:41.693429413 -0200
|
||||||
|
@@ -157,7 +157,7 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER)
|
||||||
|
MESSAGE("***-- Found xvfb-run: ${XVFB_EXEC} about to build manpage with it.")
|
||||||
|
|
||||||
|
add_custom_target(${TARGET_NAME_MANPAGE} ALL
|
||||||
|
- COMMAND ${XVFB_EXEC} --auto-servernum --server-num=770 ${HELP2MAN} --name='${MG_MANPAGE_DESCRIPTION}' --section=6 -N -o ${EXECUTABLE_OUTPUT_PATH}/${TARGET_NAME_MANPAGE} ${EXECUTABLE_OUTPUT_PATH}/${TARGET_NAME}
|
||||||
|
+ COMMAND ${XVFB_EXEC} --auto-servernum ${HELP2MAN} --name='${MG_MANPAGE_DESCRIPTION}' --section=6 -N -o ${EXECUTABLE_OUTPUT_PATH}/${TARGET_NAME_MANPAGE} ${EXECUTABLE_OUTPUT_PATH}/${TARGET_NAME}
|
||||||
|
DEPENDS ${TARGET_NAME})
|
||||||
|
ELSE()
|
||||||
|
add_custom_target(${TARGET_NAME_MANPAGE} ALL
|
|
@ -5,8 +5,8 @@
|
||||||
# Written by Larry Hajali <larryhaj[at]gmail[dot]com>
|
# Written by Larry Hajali <larryhaj[at]gmail[dot]com>
|
||||||
|
|
||||||
PRGNAM=megaglest
|
PRGNAM=megaglest
|
||||||
VERSION=${VERSION:-3.6.0.3}
|
VERSION=${VERSION:-3.7.1}
|
||||||
BUILD=${BUILD:-2}
|
BUILD=${BUILD:-1}
|
||||||
TAG=${TAG:-_SBo}
|
TAG=${TAG:-_SBo}
|
||||||
|
|
||||||
if [ -z "$ARCH" ]; then
|
if [ -z "$ARCH" ]; then
|
||||||
|
@ -62,8 +62,11 @@ find . \
|
||||||
sed -i "/^const string glestVersionString/ s|=.*|= \"v${VERSION}\";|" \
|
sed -i "/^const string glestVersionString/ s|=.*|= \"v${VERSION}\";|" \
|
||||||
source/glest_game/facilities/game_util.cpp
|
source/glest_game/facilities/game_util.cpp
|
||||||
|
|
||||||
# From upstream. Fixes gcc 4.7.x compile issues.
|
# Fix megaglest help2man when no X display is available. Use a wrapper
|
||||||
patch -p1 < $CWD/gcc-4.7.patch
|
# script from upstream for Xvfb that create a temporary *fake* framebuffer
|
||||||
|
install -m 0755 -D $CWD/xvfb-run $TMP/$SRCDIR/bin/xvfb-run
|
||||||
|
export PATH="$PATH:$TMP/$SRCDIR/bin"
|
||||||
|
patch -p1 < $CWD/megaglest-3.6.0.2-help2man.patch
|
||||||
|
|
||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
PRGNAM="megaglest"
|
PRGNAM="megaglest"
|
||||||
VERSION="3.6.0.3"
|
VERSION="3.7.1"
|
||||||
HOMEPAGE="http://megaglest.org/"
|
HOMEPAGE="http://megaglest.org/"
|
||||||
DOWNLOAD="http://downloads.sourceforge.net/megaglest/megaglest-source-3.6.0.3.tar.xz \
|
DOWNLOAD="http://downloads.sourceforge.net/megaglest/megaglest-source-3.7.1.tar.xz \
|
||||||
http://downloads.sourceforge.net/megaglest/megaglest-data-3.6.0.3.tar.xz \
|
http://downloads.sourceforge.net/megaglest/megaglest-data-3.7.1.tar.xz \
|
||||||
http://downloads.sourceforge.net/megaglest/megaglest-source-embedded-3.6.0.3.tar.xz"
|
http://downloads.sourceforge.net/megaglest/megaglest-source-embedded-3.7.1.tar.xz"
|
||||||
MD5SUM="5a4a2429435031d9f9cc5d9535a9de9d \
|
MD5SUM="e7a960ec73784aa0f7b951d2ad963456 \
|
||||||
63f360b52ad000af3fc71c33fc52106a \
|
a73205fe02b684547dfe1fedc2d712b2 \
|
||||||
200be8b61dbe3a9a2c1aaa008e3dc432"
|
9852ab186c23580950a2dfe995e3b9b6"
|
||||||
DOWNLOAD_x86_64=""
|
DOWNLOAD_x86_64=""
|
||||||
MD5SUM_x86_64=""
|
MD5SUM_x86_64=""
|
||||||
REQUIRES="xerces-c OpenAL lua ftgl wxPython"
|
REQUIRES="xerces-c OpenAL lua ftgl wxPython"
|
||||||
|
|
172
games/megaglest/xvfb-run
Normal file
172
games/megaglest/xvfb-run
Normal file
|
@ -0,0 +1,172 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# This script starts an instance of Xvfb, the "fake" X server, runs a command
|
||||||
|
# with that server available, and kills the X server when done. The return
|
||||||
|
# value of the command becomes the return value of this script.
|
||||||
|
#
|
||||||
|
# If anyone is using this to build a Debian package, make sure the package
|
||||||
|
# Build-Depends on xvfb, xbase-clients, and xfonts-base.
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
PROGNAME=xvfb-run
|
||||||
|
SERVERNUM=99
|
||||||
|
AUTHFILE=
|
||||||
|
ERRORFILE=/dev/null
|
||||||
|
STARTWAIT=3
|
||||||
|
XVFBARGS="-screen 0 640x480x8"
|
||||||
|
LISTENTCP="-nolisten tcp"
|
||||||
|
XAUTHPROTO=.
|
||||||
|
|
||||||
|
PATH=$PATH:/usr/bin/X11:/usr/X11R6/bin
|
||||||
|
|
||||||
|
# Query the terminal to establish a default number of columns to use for
|
||||||
|
# displaying messages to the user. This is used only as a fallback in the event
|
||||||
|
# the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the
|
||||||
|
# script is running, and this cannot, only being calculated once.)
|
||||||
|
DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true
|
||||||
|
if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" >/dev/null 2>&1; then
|
||||||
|
DEFCOLUMNS=80
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Display a message, wrapping lines at the terminal width.
|
||||||
|
message () {
|
||||||
|
echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Display an error message.
|
||||||
|
error () {
|
||||||
|
message "error: $*" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
# Display a usage message.
|
||||||
|
usage () {
|
||||||
|
if [ -n "$*" ]; then
|
||||||
|
message "usage error: $*"
|
||||||
|
fi
|
||||||
|
cat <<EOF
|
||||||
|
Usage: $PROGNAME [OPTION ...] COMMAND
|
||||||
|
Run COMMAND (usually an X client) in a virtual X server environment.
|
||||||
|
Options:
|
||||||
|
-a --auto-servernum try to get a free server number, starting at
|
||||||
|
--server-num
|
||||||
|
-e FILE --error-file=FILE file used to store xauth errors and Xvfb
|
||||||
|
output (default: $ERRORFILE)
|
||||||
|
-f FILE --auth-file=FILE file used to store auth cookie
|
||||||
|
(default: ./.Xauthority)
|
||||||
|
-h --help display this usage message and exit
|
||||||
|
-n NUM --server-num=NUM server number to use (default: $SERVERNUM)
|
||||||
|
-l --listen-tcp enable TCP port listening in the X server
|
||||||
|
-p PROTO --xauth-protocol=PROTO X authority protocol name to use
|
||||||
|
(default: xauth command's default)
|
||||||
|
-s ARGS --server-args=ARGS arguments (other than server number and
|
||||||
|
"-nolisten tcp") to pass to the Xvfb server
|
||||||
|
(default: "$XVFBARGS")
|
||||||
|
-w DELAY --wait=DELAY delay in seconds to wait for Xvfb to start
|
||||||
|
before running COMMAND (default: $STARTWAIT)
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# Find a free server number by looking at .X*-lock files in /tmp.
|
||||||
|
find_free_servernum() {
|
||||||
|
# Sadly, the "local" keyword is not POSIX. Leave the next line commented in
|
||||||
|
# the hope Debian Policy eventually changes to allow it in /bin/sh scripts
|
||||||
|
# anyway.
|
||||||
|
#local i
|
||||||
|
|
||||||
|
i=$SERVERNUM
|
||||||
|
while [ -f /tmp/.X$i-lock ]; do
|
||||||
|
i=$(($i + 1))
|
||||||
|
done
|
||||||
|
echo $i
|
||||||
|
}
|
||||||
|
|
||||||
|
# Parse the command line.
|
||||||
|
ARGS=$(getopt --options +ae:f:hn:lp:s:w: \
|
||||||
|
--long auto-servernum,error-file:auth-file:,help,server-num:,listen-tcp,xauth-protocol:,server-args:,wait: \
|
||||||
|
--name "$PROGNAME" -- "$@")
|
||||||
|
GETOPT_STATUS=$?
|
||||||
|
|
||||||
|
if [ $GETOPT_STATUS -ne 0 ]; then
|
||||||
|
error "internal error; getopt exited with status $GETOPT_STATUS"
|
||||||
|
exit 6
|
||||||
|
fi
|
||||||
|
|
||||||
|
eval set -- "$ARGS"
|
||||||
|
|
||||||
|
while :; do
|
||||||
|
case "$1" in
|
||||||
|
-a|--auto-servernum) SERVERNUM=$(find_free_servernum) ;;
|
||||||
|
-e|--error-file) ERRORFILE="$2"; shift ;;
|
||||||
|
-f|--auth-file) AUTHFILE="$2"; shift ;;
|
||||||
|
-h|--help) SHOWHELP="yes" ;;
|
||||||
|
-n|--server-num) SERVERNUM="$2"; shift ;;
|
||||||
|
-l|--listen-tcp) LISTENTCP="" ;;
|
||||||
|
-p|--xauth-protocol) XAUTHPROTO="$2"; shift ;;
|
||||||
|
-s|--server-args) XVFBARGS="$2"; shift ;;
|
||||||
|
-w|--wait) STARTWAIT="$2"; shift ;;
|
||||||
|
--) shift; break ;;
|
||||||
|
*) error "internal error; getopt permitted \"$1\" unexpectedly"
|
||||||
|
exit 6
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "$SHOWHELP" ]; then
|
||||||
|
usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$*" ]; then
|
||||||
|
usage "need a command to run" >&2
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! which xauth >/dev/null; then
|
||||||
|
error "xauth command not found"
|
||||||
|
exit 3
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If the user did not specify an X authorization file to use, set up a temporary
|
||||||
|
# directory to house one.
|
||||||
|
if [ -z "$AUTHFILE" ]; then
|
||||||
|
XVFB_RUN_TMPDIR="${TMPDIR:-/tmp}/$PROGNAME.$$"
|
||||||
|
if ! mkdir -p -m 700 "$XVFB_RUN_TMPDIR"; then
|
||||||
|
error "temporary directory $XVFB_RUN_TMPDIR already exists"
|
||||||
|
exit 4
|
||||||
|
fi
|
||||||
|
AUTHFILE=$(tempfile -n "$XVFB_RUN_TMPDIR/Xauthority")
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Start Xvfb.
|
||||||
|
MCOOKIE=$(mcookie)
|
||||||
|
XAUTHORITY=$AUTHFILE xauth add ":$SERVERNUM" "$XAUTHPROTO" "$MCOOKIE" \
|
||||||
|
>"$ERRORFILE" 2>&1
|
||||||
|
XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP >"$ERRORFILE" \
|
||||||
|
2>&1 &
|
||||||
|
XVFBPID=$!
|
||||||
|
sleep "$STARTWAIT"
|
||||||
|
|
||||||
|
# Start the command and save its exit status.
|
||||||
|
set +e
|
||||||
|
DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" 2>&1
|
||||||
|
RETVAL=$?
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Kill Xvfb now that the command has exited.
|
||||||
|
kill $XVFBPID
|
||||||
|
|
||||||
|
# Clean up.
|
||||||
|
XAUTHORITY=$AUTHFILE xauth remove ":$SERVERNUM" >"$ERRORFILE" 2>&1
|
||||||
|
if [ -n "$XVFB_RUN_TMPDIR" ]; then
|
||||||
|
if ! rm -r "$XVFB_RUN_TMPDIR"; then
|
||||||
|
error "problem while cleaning up temporary directory"
|
||||||
|
exit 5
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Return the executed command's exit status.
|
||||||
|
exit $RETVAL
|
||||||
|
|
||||||
|
# vim:set ai et sts=4 sw=4 tw=80:
|
Loading…
Reference in a new issue