[Scummvm-cvs-logs] CVS: scummvm-new configure,1.2,1.3
Max Horn
fingolfin at users.sourceforge.net
Sat Aug 24 09:06:02 CEST 2002
Update of /cvsroot/scummvm/scummvm-new
In directory usw-pr-cvs1:/tmp/cvs-serv19647
Modified Files:
configure
Log Message:
some more configure stuff
Index: configure
===================================================================
RCS file: /cvsroot/scummvm/scummvm-new/configure,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- configure 24 Aug 2002 15:24:38 -0000 1.2
+++ configure 24 Aug 2002 16:05:53 -0000 1.3
@@ -23,7 +23,9 @@
# * ....
+#
# Check whether the given command is a working C++ compiler
+#
test_compiler ()
{
cat <<EOF >tmp_cxx_compiler.cpp
@@ -37,35 +39,76 @@
return 0;
}
EOF
-eval "$1 -o tmp_cxx_compiler tmp_cxx_compiler.cpp 2> /dev/null" && eval "./tmp_cxx_compiler 2> /dev/null"
+eval "$1 -o tmp_cxx_compiler tmp_cxx_compiler.cpp 2> /dev/null" && eval "./tmp_cxx_compiler 2> /dev/null" && rm tmp_cxx_compiler tmp_cxx_compiler.cpp
+}
+
+#
+# Determine a data type with the given length
+#
+find_type_with_size ()
+{
+cat <<EOF >tmp_find_type_with_size.cpp
+#include <stdio.h>
+int main(int argc, char **argv)
+{
+ int size = argv[1][0] - '0';
+ if (size == sizeof(int))
+ printf("int\n");
+ else if (size == sizeof(short))
+ printf("short\n");
+ else if (size == sizeof(char))
+ printf("char\n");
+ else if (size == sizeof(long))
+ printf("long\n");
+ else {
+ printf("unknown\n");
+ return 1;
+ }
+
+ return 0;
+}
+EOF
+if eval "$CXX -o tmp_find_type_with_size tmp_find_type_with_size.cpp"; then
+ datatype=`./tmp_find_type_with_size $1`
+ if test "$datatype" = "unknown"; then
+ echo "couldn't find data type with $1 bytes"
+ exit 1
+ fi
+fi
+rm tmp_find_type_with_size tmp_find_type_with_size.cpp
+echo $datatype
}
+#
+# Greet user
+#
+echo "Running ScummVM configure..."
+echo -n > config.h
+
#
# Check any parameters we received
#
# TOOD: allow for multi value params, e.g. --target=dreamcast or --backend=morphos
#
-USE_MAD=0;
-DUMP_SCRIPTS=0;
for x in $@; do
case x$x in
- x--enable-mad)
- USE_MAD=1;;
+ x--with-alsa)
+ echo "#define USE_ALSA" >> config.h
+ LIBS="$LIBS -lasound"
+ ;;
+ x--with-mad)
+ echo "#define COMPRESSED_SOUND_FILE" >> config.h
+ LIBS="$LIBS -lmad"
+ ;;
x--enable-dump-scripts)
- DUMP_SCRIPTS=1;;
+ echo "#define DUMP_SCRIPTS" >> config.h
+ ;;
esac;
done;
#
-# Greet user
-#
-echo "Running ScummVM configure..."
-echo -n > config.h
-
-
-#
# Determine the C++ compiler
#
echo -n "Looking for C++ compiler... "
@@ -134,5 +177,31 @@
exit 1
;;
esac
+rm tmp_endianess_check tmp_endianess_check.cpp
+#
+# Determine data type sizes
+# TODO: proper error checking
+#
+echo -n "Type with 1 byte... "
+type_1_byte=`find_type_with_size 1`
+echo "$type_1_byte"
+
+echo -n "Type with 2 bytes... "
+type_2_byte=`find_type_with_size 2`
+echo "$type_2_byte"
+echo -n "Type with 4 bytes... "
+type_4_byte=`find_type_with_size 4`
+echo "$type_4_byte"
+
+echo >> config.h
+echo "// Data types" >> config.h
+echo "typedef unsigned $type_1_byte byte;" >> config.h
+echo "typedef unsigned int uint;" >> config.h
+echo "typedef unsigned $type_1_byte uint8;" >> config.h
+echo "typedef unsigned $type_2_byte uint16;" >> config.h
+echo "typedef unsigned $type_3_byte uint32;" >> config.h
+echo "typedef signed $type_1_byte int8;" >> config.h
+echo "typedef signed $type_2_byte int16;" >> config.h
+echo "typedef signed $type_4_byte int32;" >> config.h
More information about the Scummvm-git-logs
mailing list