Patch #1323715 "OS/2 Patches to ScummVM" and credited the author.

svn-id: r19016
This commit is contained in:
Eugene Sandulenko 2005-10-11 11:27:18 +00:00
parent d63c8c0aee
commit 049dd317d7
7 changed files with 57 additions and 10 deletions

View file

@ -56,6 +56,7 @@ Contributors:
Daniel Schepler - Final MI1 CD music support, initial Ogg Vorbis Daniel Schepler - Final MI1 CD music support, initial Ogg Vorbis
support support
Johannes Schickel - Thumbnails for ScummEngine Johannes Schickel - Thumbnails for ScummEngine
Paul Smedley - OS/2 fixes
Andre Souza - SDL-based OpenGL renderer Andre Souza - SDL-based OpenGL renderer
Tim ??? - Initial MI1 CD music support Tim ??? - Initial MI1 CD music support

1
NEWS
View file

@ -13,6 +13,7 @@ For a more comprehensive changelog for the latest experimental CVS code, see:
- Added PlayStation Portable (PSP) port. - Added PlayStation Portable (PSP) port.
- Added AmigaOS 4 port. - Added AmigaOS 4 port.
- Added EPOC/SymbianOS port. - Added EPOC/SymbianOS port.
- Added fixes for OS/2 port.
General: General:
- Reworked cursor handling in SDL backend. Now cursors can have their own - Reworked cursor handling in SDL backend. Now cursors can have their own

View file

@ -23,6 +23,11 @@
#include "common/scummsys.h" #include "common/scummsys.h"
#if defined (__INNOTEK_LIBC__)
#undef MIN
#undef MAX
#endif
template<typename T> inline T ABS (T x) { return (x>=0) ? x : -x; } template<typename T> inline T ABS (T x) { return (x>=0) ? x : -x; }
#if !defined(MIN) #if !defined(MIN)
template<typename T> inline T MIN (T a, T b) { return (a<b) ? a : b; } template<typename T> inline T MIN (T a, T b) { return (a<b) ? a : b; }

56
configure vendored
View file

@ -13,6 +13,27 @@
# use environment vars if set # use environment vars if set
CXXFLAGS="$CXXFLAGS $CPPFLAGS" CXXFLAGS="$CXXFLAGS $CPPFLAGS"
# Backslashes into forward slashes:
# The following OS/2 specific code is performed to deal with handling of backslashes by ksh.
# Borrowed from the Sane configure script
if test "$ac_emxsupport" != "no" -a "$ac_emxsupport" != "NO"; then
ac_save_IFS="$IFS"
IFS="\\"
ac_TEMP_PATH=
for ac_dir in $PATH; do
IFS=$ac_save_IFS
if test -z "$ac_TEMP_PATH"; then
ac_TEMP_PATH="$ac_dir"
else
ac_TEMP_PATH="$ac_TEMP_PATH/$ac_dir"
fi
done
export PATH="$ac_TEMP_PATH"
unset ac_TEMP_PATH
fi
# default lib behaviour yes/no/auto # default lib behaviour yes/no/auto
_vorbis=auto _vorbis=auto
_tremor=auto _tremor=auto
@ -81,9 +102,9 @@ cc_check() {
echo >> "$TMPLOG" echo >> "$TMPLOG"
cat "$TMPC" >> "$TMPLOG" cat "$TMPC" >> "$TMPLOG"
echo >> "$TMPLOG" echo >> "$TMPLOG"
echo "$CXX $TMPC -o $TMPO $@" >> "$TMPLOG" echo "$CXX $TMPC -o $TMPO$EXEEXT $@" >> "$TMPLOG"
rm -f "$TMPO$EXEEXT" rm -f "$TMPO$EXEEXT"
( $CXX "$TMPC" -o "$TMPO" "$@" ) >> "$TMPLOG" 2>&1 ( $CXX "$TMPC" -o "$TMPO$EXEEXT" "$@" ) >> "$TMPLOG" 2>&1
TMP="$?" TMP="$?"
echo >> "$TMPLOG" echo >> "$TMPLOG"
return "$TMP" return "$TMP"
@ -112,9 +133,9 @@ EOF
if test -n "$_host"; then if test -n "$_host"; then
# In cross-compiling mode, we cannot run the result # In cross-compiling mode, we cannot run the result
eval "$1 -o tmp_cxx_compiler tmp_cxx_compiler.cpp 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp eval "$1 -o tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp
else else
eval "$1 -o tmp_cxx_compiler tmp_cxx_compiler.cpp 2> /dev/null" && eval "./tmp_cxx_compiler 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp eval "$1 -o tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp 2> /dev/null" && eval "./tmp_cxx_compiler 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp
fi fi
} }
@ -124,12 +145,12 @@ fi
# TODO: small bit of code to test sdl useability # TODO: small bit of code to test sdl useability
find_sdlconfig() find_sdlconfig()
{ {
echo_n "Looking for sdl-config... " echo_n "Looking for sdl-config... "
sdlconfigs="$_sdlconfig:sdl-config:sdl11-config:sdl12-config" sdlconfigs="$_sdlconfig:sdl-config:sdl11-config:sdl12-config"
_sdlconfig= _sdlconfig=
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="$SEPARATOR"
for path_dir in $_sdlpath; do for path_dir in $_sdlpath; do
for sdlconfig in $sdlconfigs; do for sdlconfig in $sdlconfigs; do
if test -x "$path_dir/$sdlconfig" ; then if test -x "$path_dir/$sdlconfig" ; then
@ -182,7 +203,7 @@ int main(int argc, char **argv)
return 0; return 0;
} }
EOF EOF
if eval "$CXX -o tmp_find_type_with_size tmp_find_type_with_size.cpp"; then if eval "$CXX -o tmp_find_type_with_size$EXEEXT tmp_find_type_with_size.cpp"; then
datatype=`./tmp_find_type_with_size $1` datatype=`./tmp_find_type_with_size $1`
if test "$datatype" = "unknown"; then if test "$datatype" = "unknown"; then
echo "couldn't find data type with $1 bytes" echo "couldn't find data type with $1 bytes"
@ -201,7 +222,7 @@ CheckNASM()
return; return;
fi fi
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$SEPARATOR
for path_dir in $_nasmpath; do for path_dir in $_nasmpath; do
if test -x "$path_dir/nasm" ; then if test -x "$path_dir/nasm" ; then
@ -470,7 +491,7 @@ esac
# Determine extension used for executables # Determine extension used for executables
# #
case $_host_os in case $_host_os in
mingw* | cygwin*) mingw* | cygwin* | os2-emx*)
EXEEXT=".exe" EXEEXT=".exe"
;; ;;
arm-riscos) arm-riscos)
@ -481,6 +502,18 @@ arm-riscos)
;; ;;
esac esac
#
# Determine separator used for $PATH
#
case $_host_os in
os2-emx* )
SEPARATOR=";"
;;
* )
SEPARATOR=":"
;;
esac
# #
# Determine the C++ compiler # Determine the C++ compiler
# #
@ -703,6 +736,9 @@ else
LIBS="$LIBS -mno-cygwin -lmingw32 -lwinmm" LIBS="$LIBS -mno-cygwin -lmingw32 -lwinmm"
OBJS="$OBJS scummvmico.o" OBJS="$OBJS scummvmico.o"
;; ;;
os2-emx*)
DEFINES="$DEFINES -DUNIX"
;;
# given this is a shell script assume some type of unix # given this is a shell script assume some type of unix
*) *)
echo "WARNING: could not establish system type, assuming unix like" echo "WARNING: could not establish system type, assuming unix like"
@ -730,7 +766,7 @@ int main(int argc, char **argv)
return 0; return 0;
} }
EOF EOF
$CXX -o tmp_endianness_check tmp_endianness_check.cpp $CXX -o tmp_endianness_check$EXEEXT tmp_endianness_check.cpp
endianness=`./tmp_endianness_check` endianness=`./tmp_endianness_check`
echo $endianness; echo $endianness;
case $endianness in case $endianness in

View file

@ -58,6 +58,7 @@
Edward Rudd & Fixes for playing MP3 versions of MI1/Loom audio\\ Edward Rudd & Fixes for playing MP3 versions of MI1/Loom audio\\
Daniel Schepler & Final MI1 CD music support, initial Ogg Vorbis support\\ Daniel Schepler & Final MI1 CD music support, initial Ogg Vorbis support\\
Johannes Schickel & Thumbnails for ScummEngine\\ Johannes Schickel & Thumbnails for ScummEngine\\
Paul Smedley & OS/2 fixes\\
Andr\'e Souza & SDL-based OpenGL renderer\\ Andr\'e Souza & SDL-based OpenGL renderer\\
Tim ??? & Initial MI1 CD music support\\ Tim ??? & Initial MI1 CD music support\\
\end{tabular} \end{tabular}

View file

@ -107,6 +107,8 @@ static const char *credits[] = {
"\\L\\c2"" Vorbis support", "\\L\\c2"" Vorbis support",
"\\L\\c0"" Johannes Schickel", "\\L\\c0"" Johannes Schickel",
"\\L\\c2"" Thumbnails for ScummEngine", "\\L\\c2"" Thumbnails for ScummEngine",
"\\L\\c0"" Paul Smedley",
"\\L\\c2"" OS/2 fixes",
"\\L\\c0"" Andre Souza", "\\L\\c0"" Andre Souza",
"\\L\\c2"" SDL-based OpenGL renderer", "\\L\\c2"" SDL-based OpenGL renderer",
"\\L\\c0"" Tim ???", "\\L\\c0"" Tim ???",

View file

@ -375,6 +375,7 @@ begin_credits("Credits");
add_person("Edward Rudd", "", "Fixes for playing MP3 versions of MI1/Loom audio"); add_person("Edward Rudd", "", "Fixes for playing MP3 versions of MI1/Loom audio");
add_person("Daniel Schepler", "", "Final MI1 CD music support, initial Ogg Vorbis support"); add_person("Daniel Schepler", "", "Final MI1 CD music support, initial Ogg Vorbis support");
add_person("Johannes Schickel", "LordHoto", "Thumbnails for ScummEngine"); add_person("Johannes Schickel", "LordHoto", "Thumbnails for ScummEngine");
add_person("Paul Smedley", "Creeping", "OS/2 fixes");
add_person("Andr&eacute; Souza", "", "SDL-based OpenGL renderer"); add_person("Andr&eacute; Souza", "", "SDL-based OpenGL renderer");
add_person("Tim ???", "realmz", "Initial MI1 CD music support"); add_person("Tim ???", "realmz", "Initial MI1 CD music support");
end_section(); end_section();