aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2012-09-11 20:26:06 +0200
committerWillem Jan Palenstijn2012-09-11 21:11:25 +0200
commit8a796d07663ecc21b951a4de587883688ca8f93b (patch)
treebbda4481ce1dfc7250890160726ecfd459bb3bbf
parent08d641a0be33412e8e7b23baf8ff1d595ed5227a (diff)
downloadscummvm-rg350-8a796d07663ecc21b951a4de587883688ca8f93b.tar.gz
scummvm-rg350-8a796d07663ecc21b951a4de587883688ca8f93b.tar.bz2
scummvm-rg350-8a796d07663ecc21b951a4de587883688ca8f93b.zip
CONFIGURE: Move engine base support strings to configure.engines
-rwxr-xr-xconfigure97
-rw-r--r--engines/configure.engines19
2 files changed, 31 insertions, 85 deletions
diff --git a/configure b/configure
index 4281cbcf3d..ca906db08f 100755
--- a/configure
+++ b/configure
@@ -72,7 +72,8 @@ add_engine() {
set_var _engine_${1}_build "${3}"
set_var _engine_${1}_build_default "${3}"
set_var _engine_${1}_subengines "${4}"
- set_var _engine_${1}_deps "${5}"
+ set_var _engine_${1}_base "${5}"
+ set_var _engine_${1}_deps "${6}"
for sub in ${4}; do
set_var _engine_${sub}_sub "yes"
set_var _engine_${sub}_parent "${1}"
@@ -510,6 +511,11 @@ get_engine_dependencies() {
get_var _engine_$1_deps
}
+# Get the base engine game support description
+get_engine_base() {
+ get_var _engine_$1_base
+}
+
# Ask if this is a subengine
get_engine_sub() {
sub=`get_var _engine_$1_sub`
@@ -694,13 +700,7 @@ get_engine_build_string() {
# The engine should be shown, build the string
if test $show = yes ; then
- build_string_func=get_${1}_build_string
- if ( type $build_string_func | grep function ) 2> /dev/null > /dev/null ; then
- engine_string=`$build_string_func $1 $engine_build $2`
- else
- engine_string=`get_subengines_build_string $1 $engine_build "" $2`
- fi
-
+ engine_string=`get_subengines_build_string $1 $engine_build $2`
engine_string="`get_engine_name $1` $engine_string"
fi
@@ -710,11 +710,17 @@ get_engine_build_string() {
# Get the string about building subengines
get_subengines_build_string() {
parent_engine=$1
- subengine_string=$3
- parent_status=$4
+ parent_status=$3
parent_engine_build_default=`get_engine_build_default $parent_engine`
+ subengine_string=""
all=yes
+ # If the base engine isn't built at all, no need to list subengines
+ # in any of the possible categories.
+ if test `get_engine_build $parent_engine` = no; then
+ return
+ fi
+
# If the base engine is built by default, we can never return "[all games]"
# as work-in-progress.
if test "$parent_status" = wip ; then
@@ -723,6 +729,11 @@ get_subengines_build_string() {
fi
fi
+ # In the static/dynamic categories, also display the engine's base games.
+ if test -n "`get_engine_subengines $parent_engine`" -a $request_status != no -a $request_status != wip; then
+ subengine_string="[`get_engine_base $parent_engine`]"
+ fi
+
for subeng in `get_engine_subengines $parent_engine` ; do
subengine_build=`get_engine_build $subeng`
subengine_build_default=`get_engine_build_default $subeng`
@@ -749,72 +760,6 @@ get_subengines_build_string() {
echo "$subengine_string"
}
-# Engine specific build strings
-# TODO: Clean this up (and specify these base strings in configure.engines?)
-get_scumm_build_string() {
- if test `get_engine_build $1` != no ; then
- if test $2 != no -a "$3" != wip ; then
- base="[v0-v6 games]"
- fi
- get_subengines_build_string $1 $2 "$base" $3
- fi
-}
-
-get_saga_build_string() {
- if test `get_engine_build $1` != no ; then
- if test $2 != no -a "$3" != wip; then
- base="[ITE]"
- fi
- get_subengines_build_string $1 $2 "$base" $3
- fi
-}
-
-get_agos_build_string() {
- if test `get_engine_build $1` != no ; then
- if test $2 != no -a "$3" != wip; then
- base="[AGOS 1 games]"
- fi
- get_subengines_build_string $1 $2 "$base" $3
- fi
-}
-
-get_groovie_build_string() {
- if test `get_engine_build $1` != no ; then
- if test $2 != no -a "$3" != wip; then
- base="[7th Guest]"
- fi
- get_subengines_build_string $1 $2 "$base" $3
- fi
-}
-
-get_kyra_build_string() {
- if test `get_engine_build $1` != no ; then
- if test $2 != no -a "$3" != wip; then
- base="[Legend of Kyrandia 1-3]"
- fi
- get_subengines_build_string $1 $2 "$base" $3
- fi
-}
-
-get_sci_build_string() {
- if test `get_engine_build $1` != no ; then
- if test $2 != no -a "$3" != wip; then
- base="[SCI 0-1.1 games]"
- fi
- get_subengines_build_string $1 $2 "$base" $3
- fi
-}
-
-get_mohawk_build_string() {
- if test `get_engine_build $1` != no ; then
- if test $2 != no -a "$3" != wip; then
- base="[Living Books]"
- fi
- get_subengines_build_string $1 $2 "$base" $3
- fi
-}
-
-
#
# Greet user
#
diff --git a/engines/configure.engines b/engines/configure.engines
index f2feb55080..404992b255 100644
--- a/engines/configure.engines
+++ b/engines/configure.engines
@@ -1,9 +1,10 @@
# This file is included from the main "configure" script
-add_engine scumm "SCUMM" yes "scumm_7_8 he"
+# add_engine [name] [desc] [build-by-default] [subengines] [base games] [deps]
+add_engine scumm "SCUMM" yes "scumm_7_8 he" "v0-v6 games"
add_engine scumm_7_8 "v7 & v8 games" yes
add_engine he "HE71+ games" yes
add_engine agi "AGI" yes
-add_engine agos "AGOS" yes "agos2"
+add_engine agos "AGOS" yes "agos2" "AGOS 1 games"
add_engine agos2 "AGOS 2 games" yes
add_engine cge "CGE" yes
add_engine cine "Cinematique evo 1" yes
@@ -13,30 +14,30 @@ add_engine draci "Dragon History" yes
add_engine drascula "Drascula: The Vampire Strikes Back" yes
add_engine dreamweb "Dreamweb" yes
add_engine gob "Gobli*ns" yes
-add_engine groovie "Groovie" yes "groovie2"
+add_engine groovie "Groovie" yes "groovie2" "7th Guest"
add_engine groovie2 "Groovie 2 games" no
add_engine hugo "Hugo Trilogy" yes
-add_engine kyra "Kyra" yes "lol eob"
+add_engine kyra "Kyra" yes "lol eob" "Legend of Kyrandia 1-3"
add_engine lol "Lands of Lore" yes
add_engine eob "Eye of the Beholder" no
add_engine lastexpress "The Last Express" no
add_engine lure "Lure of the Temptress" yes
add_engine made "MADE" yes
-add_engine mohawk "Mohawk" yes "cstime myst riven"
+add_engine mohawk "Mohawk" yes "cstime myst riven" "Living Books"
add_engine cstime "Where in Time is Carmen Sandiego?" no
add_engine riven "Riven: The Sequel to Myst" no
add_engine myst "Myst" no
add_engine parallaction "Parallaction" yes
add_engine queen "Flight of the Amazon Queen" yes
-add_engine saga "SAGA" yes "ihnm saga2"
+add_engine saga "SAGA" yes "ihnm saga2" "ITE"
add_engine ihnm "IHNM" yes
add_engine saga2 "SAGA 2 games" no
-add_engine sci "SCI" yes "sci32"
+add_engine sci "SCI" yes "sci32" "SCI 0-1.1 games"
add_engine sci32 "SCI32 games" no
add_engine sky "Beneath a Steel Sky" yes
add_engine sword1 "Broken Sword" yes
add_engine sword2 "Broken Sword II" yes
-add_engine sword25 "Broken Sword 2.5" no "" "png zlib"
+add_engine sword25 "Broken Sword 2.5" no "" "" "png zlib"
add_engine teenagent "Teen Agent" yes
add_engine testbed "TestBed: the Testing framework" no
add_engine tinsel "Tinsel" yes
@@ -46,4 +47,4 @@ add_engine touche "Touche: The Adventures of the Fifth Musketeer" yes
add_engine tony "Tony Tough and the Night of Roasted Moths" no
add_engine tsage "TsAGE" yes
add_engine tucker "Bud Tucker in Double Trouble" yes
-add_engine wintermute "Wintermute" no "" "png zlib vorbis"
+add_engine wintermute "Wintermute" no "" "" "png zlib vorbis"