From 449ef08dccae2994c1cfa45f236c524bb7558ee2 Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Tue, 21 Dec 2021 14:24:20 +0300
Subject: [PATCH] minimal fixes to visual test, so that it actually builds w/o
warnings:
- linux_process.c: add an SDLVisualTest_ScreenshotProcess() stub for
linux builds succeed.
- action_configparser.c: fixes -Wswitch warnings.
- testharness.c: fixes 'is used uninitialized' warnings for userevents.
- testharness.c: fixes format string argument to 'Force killing...'
- testquit.c: fix type of options array in main().
- windows_screenshot.c: lowercase windows.h header name.
- ran dos2unix on all sources and add missing newlines at files' ends.
- minor adjustments to autotools build system (which actually seems to
need more surgery for unnecessary stuff...)
---
visualtest/Makefile.in | 7 +
visualtest/acinclude.m4 | 84 ++--
visualtest/autogen.sh | 17 +-
visualtest/compile | 1 -
visualtest/config.h.in | 2 +-
visualtest/configure | 220 +++++++----
visualtest/{configure.in => configure.ac} | 18 +-
visualtest/depcomp | 1 -
visualtest/install-sh | 1 -
visualtest/missing | 1 -
visualtest/src/action_configparser.c | 3 +
visualtest/src/linux/linux_process.c | 407 ++++++++++----------
visualtest/src/mischelper.c | 20 +-
visualtest/src/parsehelper.c | 2 +-
visualtest/src/rwhelper.c | 2 +-
visualtest/src/screenshot.c | 2 +-
visualtest/src/testharness.c | 11 +-
visualtest/src/variator_exhaustive.c | 3 +-
visualtest/src/variator_random.c | 6 +-
visualtest/src/variators.c | 4 +-
visualtest/src/windows/windows_process.c | 3 +-
visualtest/src/windows/windows_screenshot.c | 4 +-
visualtest/stamp-h1 | 1 -
visualtest/unittest/testquit.c | 2 +-
24 files changed, 452 insertions(+), 370 deletions(-)
delete mode 100755 visualtest/compile
rename visualtest/{configure.in => configure.ac} (92%)
delete mode 100755 visualtest/depcomp
delete mode 100755 visualtest/install-sh
delete mode 100755 visualtest/missing
delete mode 100644 visualtest/stamp-h1
diff --git a/visualtest/Makefile.in b/visualtest/Makefile.in
index 2efcdb1c893..3cf2f6df4da 100644
--- a/visualtest/Makefile.in
+++ b/visualtest/Makefile.in
@@ -1,15 +1,20 @@
# Makefile to build the SDL tests
+
srcdir = @srcdir@
CC = @CC@
EXE = @EXE@
CFLAGS = @CFLAGS@ -I../include -I./include
LIBS = @LIBS@
+
TARGETS = \
testharness$(EXE) \
testquit$(EXE)
+
all: Makefile $(TARGETS)
+
Makefile: $(srcdir)/Makefile.in
$(SHELL) config.status $@
+
testharness$(EXE): $(srcdir)/src/action_configparser.c \
$(srcdir)/src/harness_argparser.c \
$(srcdir)/src/rwhelper.c \
@@ -27,8 +32,10 @@ testharness$(EXE): $(srcdir)/src/action_configparser.c \
$(srcdir)/src/windows/windows_process.c \
$(srcdir)/src/windows/windows_screenshot.c
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
+
testquit$(EXE): $(srcdir)/unittest/testquit.c
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
+
clean:
rm -f $(TARGETS)
distclean: clean
diff --git a/visualtest/acinclude.m4 b/visualtest/acinclude.m4
index ead69e5149c..0fdf353ea29 100644
--- a/visualtest/acinclude.m4
+++ b/visualtest/acinclude.m4
@@ -5,13 +5,13 @@
# stolen from Manish Singh
# Shamelessly stolen from Owen Taylor
-# serial 1
+# serial 2
-dnl AM_PATH_SDL([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl AM_PATH_SDL2([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
dnl Test for SDL, and define SDL_CFLAGS and SDL_LIBS
dnl
AC_DEFUN([AM_PATH_SDL2],
-[dnl
+[dnl
dnl Get the cflags and libraries from the sdl2-config script
dnl
AC_ARG_WITH(sdl-prefix,[ --with-sdl-prefix=PFX Prefix where SDL is installed (optional)],
@@ -21,7 +21,7 @@ AC_ARG_WITH(sdl-exec-prefix,[ --with-sdl-exec-prefix=PFX Exec prefix where SDL
AC_ARG_ENABLE(sdltest, [ --disable-sdltest Do not try to compile and run a test SDL program],
, enable_sdltest=yes)
- min_sdl_version=ifelse([$1], ,0.9.0,$1)
+ min_sdl_version=ifelse([$1], ,2.0.0,$1)
if test "x$sdl_prefix$sdl_exec_prefix" = x ; then
PKG_CHECK_MODULES([SDL], [sdl2 >= $min_sdl_version],
@@ -31,42 +31,42 @@ AC_ARG_ENABLE(sdltest, [ --disable-sdltest Do not try to compile and run
sdl_pc=no
if test x$sdl_exec_prefix != x ; then
sdl_config_args="$sdl_config_args --exec-prefix=$sdl_exec_prefix"
- if test x${SDL_CONFIG+set} != xset ; then
- SDL_CONFIG=$sdl_exec_prefix/bin/sdl2-config
+ if test x${SDL2_CONFIG+set} != xset ; then
+ SDL2_CONFIG=$sdl_exec_prefix/bin/sdl2-config
fi
fi
if test x$sdl_prefix != x ; then
sdl_config_args="$sdl_config_args --prefix=$sdl_prefix"
- if test x${SDL_CONFIG+set} != xset ; then
- SDL_CONFIG=$sdl_prefix/bin/sdl2-config
+ if test x${SDL2_CONFIG+set} != xset ; then
+ SDL2_CONFIG=$sdl_prefix/bin/sdl2-config
fi
fi
fi
if test "x$sdl_pc" = xyes ; then
no_sdl=""
- SDL_CONFIG="pkg-config sdl2"
+ SDL2_CONFIG="pkg-config sdl2"
else
as_save_PATH="$PATH"
if test "x$prefix" != xNONE && test "$cross_compiling" != yes; then
PATH="$prefix/bin:$prefix/usr/bin:$PATH"
fi
- AC_PATH_PROG(SDL_CONFIG, sdl2-config, no, [$PATH])
+ AC_PATH_PROG(SDL2_CONFIG, sdl2-config, no, [$PATH])
PATH="$as_save_PATH"
AC_MSG_CHECKING(for SDL - version >= $min_sdl_version)
no_sdl=""
- if test "$SDL_CONFIG" = "no" ; then
+ if test "$SDL2_CONFIG" = "no" ; then
no_sdl=yes
else
- SDL_CFLAGS=`$SDL_CONFIG $sdl_config_args --cflags`
- SDL_LIBS=`$SDL_CONFIG $sdl_config_args --libs`
+ SDL_CFLAGS=`$SDL2_CONFIG $sdl_config_args --cflags`
+ SDL_LIBS=`$SDL2_CONFIG $sdl_config_args --libs`
- sdl_major_version=`$SDL_CONFIG $sdl_config_args --version | \
+ sdl_major_version=`$SDL2_CONFIG $sdl_config_args --version | \
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
- sdl_minor_version=`$SDL_CONFIG $sdl_config_args --version | \
+ sdl_minor_version=`$SDL2_CONFIG $sdl_config_args --version | \
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
- sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \
+ sdl_micro_version=`$SDL2_CONFIG $sdl_config_args --version | \
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
if test "x$enable_sdltest" = "xyes" ; then
ac_save_CFLAGS="$CFLAGS"
@@ -80,41 +80,19 @@ dnl Now check if the installed SDL is sufficiently new. (Also sanity
dnl checks the results of sdl2-config to some extent
dnl
rm -f conf.sdltest
- AC_TRY_RUN([
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <stdio.h>
#include <stdlib.h>
-#include <string.h>
#include "SDL.h"
-char*
-my_strdup (char *str)
-{
- char *new_str;
-
- if (str)
- {
- new_str = (char *)malloc ((strlen (str) + 1) * sizeof(char));
- strcpy (new_str, str);
- }
- else
- new_str = NULL;
-
- return new_str;
-}
-
int main (int argc, char *argv[])
{
int major, minor, micro;
- char *tmp_version;
+ FILE *fp = fopen("conf.sdltest", "w");
- /* This hangs on some systems (?)
- system ("touch conf.sdltest");
- */
- { FILE *fp = fopen("conf.sdltest", "a"); if ( fp ) fclose(fp); }
+ if (fp) fclose(fp);
- /* HP/UX 9 (%@#!) writes to sscanf strings */
- tmp_version = my_strdup("$min_sdl_version");
- if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) {
+ if (sscanf("$min_sdl_version", "%d.%d.%d", &major, &minor, µ) != 3) {
printf("%s, bad version string\n", "$min_sdl_version");
exit(1);
}
@@ -130,14 +108,14 @@ int main (int argc, char *argv[])
printf("\n*** 'sdl2-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
printf("*** of SDL required is %d.%d.%d. If sdl2-config is correct, then it is\n", major, minor, micro);
printf("*** best to upgrade to the required version.\n");
- printf("*** If sdl2-config was wrong, set the environment variable SDL_CONFIG\n");
+ printf("*** If sdl2-config was wrong, set the environment variable SDL2_CONFIG\n");
printf("*** to point to the correct copy of sdl2-config, and remove the file\n");
printf("*** config.cache before re-running configure\n");
return 1;
}
}
-],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
+]])], [], [no_sdl=yes], [echo $ac_n "cross compiling; assumed OK... $ac_c"])
CFLAGS="$ac_save_CFLAGS"
CXXFLAGS="$ac_save_CXXFLAGS"
LIBS="$ac_save_LIBS"
@@ -152,10 +130,10 @@ int main (int argc, char *argv[])
if test "x$no_sdl" = x ; then
ifelse([$2], , :, [$2])
else
- if test "$SDL_CONFIG" = "no" ; then
+ if test "$SDL2_CONFIG" = "no" ; then
echo "*** The sdl2-config script installed by SDL could not be found"
echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
- echo "*** your path, or set the SDL_CONFIG environment variable to the"
+ echo "*** your path, or set the SDL2_CONFIG environment variable to the"
echo "*** full path to sdl2-config."
else
if test -f conf.sdltest ; then
@@ -165,7 +143,7 @@ int main (int argc, char *argv[])
CFLAGS="$CFLAGS $SDL_CFLAGS"
CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
LIBS="$LIBS $SDL_LIBS"
- AC_TRY_LINK([
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <stdio.h>
#include "SDL.h"
@@ -173,7 +151,7 @@ int main(int argc, char *argv[])
{ return 0; }
#undef main
#define main K_and_R_C_main
-], [ return 0; ],
+]], [[ return 0; ]])],
[ echo "*** The test program compiled, but did not run. This usually means"
echo "*** that the run-time linker is not finding SDL or finding the wrong"
echo "*** version of SDL. If it is not finding SDL, you'll need to set your"
@@ -186,7 +164,7 @@ int main(int argc, char *argv[])
[ echo "*** The test program failed to compile or link. See the file config.log for the"
echo "*** exact error that occured. This usually means SDL was incorrectly installed"
echo "*** or that you have moved SDL since it was installed. In the latter case, you"
- echo "*** may want to edit the sdl2-config script: $SDL_CONFIG" ])
+ echo "*** may want to edit the sdl2-config script: $SDL2_CONFIG" ])
CFLAGS="$ac_save_CFLAGS"
CXXFLAGS="$ac_save_CXXFLAGS"
LIBS="$ac_save_LIBS"
@@ -228,7 +206,7 @@ int main(int argc, char *argv[])
# ----------------------------------
AC_DEFUN([PKG_PROG_PKG_CONFIG],
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
+m4_pattern_allow([^PKG_CONFIG(_PATH|_LIBDIR)?$])
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
@@ -309,7 +287,7 @@ AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
pkg_failed=no
-AC_MSG_CHECKING([for $1])
+AC_MSG_CHECKING([for $2])
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
@@ -337,7 +315,7 @@ $$1_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
-_PKG_TEXT])dnl
+_PKG_TEXT])[]dnl
])
elif test $pkg_failed = untried; then
AC_MSG_RESULT([no])
@@ -348,7 +326,7 @@ path to pkg-config.
_PKG_TEXT
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])dnl
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
diff --git a/visualtest/autogen.sh b/visualtest/autogen.sh
index 939f34c0f39..988d41760d9 100755
--- a/visualtest/autogen.sh
+++ b/visualtest/autogen.sh
@@ -1,12 +1,11 @@
#!/bin/sh
-#
-# Regenerate configuration files
+
cp acinclude.m4 aclocal.m4
-found=false
-for autoconf in autoconf autoconf259 autoconf-2.59
-do if which $autoconf >/dev/null 2>&1; then $autoconf && found=true; break; fi
-done
-if test x$found = xfalse; then
- echo "Couldn't find autoconf, aborting"
- exit 1
+
+if test "$AUTOCONF"x = x; then
+ AUTOCONF=autoconf
fi
+
+$AUTOCONF || exit 1
+rm aclocal.m4
+rm -rf autom4te.cache
diff --git a/visualtest/compile b/visualtest/compile
deleted file mode 100755
index cf0edba2876..00000000000
--- a/visualtest/compile
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/automake-1.11/compile
\ No newline at end of file
diff --git a/visualtest/config.h.in b/visualtest/config.h.in
index 40b5b8a29cf..eb89b0fe68c 100644
--- a/visualtest/config.h.in
+++ b/visualtest/config.h.in
@@ -1,4 +1,4 @@
-/* config.h.in. Generated from configure.in by autoheader. */
+/* config.h.in. Generated from configure.ac by autoheader. */
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
diff --git a/visualtest/configure b/visualtest/configure
index 4d5c0a4d3b6..7198bb5c4bb 100755
--- a/visualtest/configure
+++ b/visualtest/configure
@@ -586,11 +586,13 @@ PACKAGE_URL=''
ac_subst_vars='LTLIBOBJS
LIBOBJS
+LIBUNWIND_LIBS
+LIBUNWIND_CFLAGS
SDL_TTF_LIB
GLLIB
CPP
XMKMF
-SDL_CONFIG
+SDL2_CONFIG
SDL_LIBS
SDL_CFLAGS
PKG_CONFIG_LIBDIR
@@ -678,7 +680,9 @@ PKG_CONFIG_LIBDIR
SDL_CFLAGS
SDL_LIBS
XMKMF
-CPP'
+CPP
+LIBUNWIND_CFLAGS
+LIBUNWIND_LIBS'
# Initialize some variables set by options.
@@ -1322,6 +1326,10 @@ Some influential environment variables:
SDL_LIBS linker flags for SDL, overriding pkg-config
XMKMF Path to xmkmf, Makefile generator for X Window System
CPP C preprocessor
+ LIBUNWIND_CFLAGS
+ C compiler flags for LIBUNWIND, overriding pkg-config
+ LIBUNWIND_LIBS
+ linker flags for LIBUNWIND, overriding pkg-config
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
@@ -1919,7 +1927,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
ac_aux_dir=
-for ac_dir in $srcdir/../build-scripts; do
+for ac_dir in ../build-scripts "$srcdir"/../build-scripts; do
if test -f "$ac_dir/install-sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
@@ -1935,7 +1943,7 @@ for ac_dir in $srcdir/../build-scripts; do
fi
done
if test -z "$ac_aux_dir"; then
- as_fn_error $? "cannot find install-sh, install.sh, or shtool in $srcdir/../build-scripts" "$LINENO" 5
+ as_fn_error $? "cannot find install-sh, install.sh, or shtool in ../build-scripts \"$srcdir\"/../build-scripts" "$LINENO" 5
fi
# These three variables are undocumented and unsupported,
@@ -2019,7 +2027,6 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2811,7 +2818,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
if ${ac_cv_c_const+:} false; then :
@@ -2899,7 +2905,7 @@ ISWINDOWS="false"
ISMACOSX="false"
case "$host" in
- *-*-cygwin* | *-*-mingw32*)
+ *-*-cygwin* | *-*-mingw*)
ISWINDOWS="true"
EXE=".exe"
MATHLIB=""
@@ -2912,12 +2918,11 @@ case "$host" in
EXTRALIB=""
SYS_GL_LIBS="-lGL"
;;
- *-*-darwin* )
+ *-*-darwin*)
ISMACOSX="true"
EXE=""
MATHLIB=""
EXTRALIB=""
-
;;
*-*-aix*)
ISUNIX="true"
@@ -3153,8 +3158,8 @@ fi
if test "x$sdl_prefix$sdl_exec_prefix" = x ; then
pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL" >&5
-$as_echo_n "checking for SDL... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sdl2 >= $min_sdl_version" >&5
+$as_echo_n "checking for sdl2 >= $min_sdl_version... " >&6; }
if test -n "$SDL_CFLAGS"; then
pkg_cv_SDL_CFLAGS="$SDL_CFLAGS"
@@ -3224,21 +3229,21 @@ fi
sdl_pc=no
if test x$sdl_exec_prefix != x ; then
sdl_config_args="$sdl_config_args --exec-prefix=$sdl_exec_prefix"
- if test x${SDL_CONFIG+set} != xset ; then
- SDL_CONFIG=$sdl_exec_prefix/bin/sdl2-config
+ if test x${SDL2_CONFIG+set} != xset ; then
+ SDL2_CONFIG=$sdl_exec_prefix/bin/sdl2-config
fi
fi
if test x$sdl_prefix != x ; then
sdl_config_args="$sdl_config_args --prefix=$sdl_prefix"
- if test x${SDL_CONFIG+set} != xset ; then
- SDL_CONFIG=$sdl_prefix/bin/sdl2-config
+ if test x${SDL2_CONFIG+set} != xset ; then
+ SDL2_CONFIG=$sdl_prefix/bin/sdl2-config
fi
fi
fi
if test "x$sdl_pc" = xyes ; then
no_sdl=""
- SDL_CONFIG="pkg-config sdl2"
+ SDL2_CONFIG="pkg-config sdl2"
else
as_save_PATH="$PATH"
if test "x$prefix" != xNONE && test "$cross_compiling" != yes; then
@@ -3248,12 +3253,12 @@ fi
set dummy sdl2-config; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_SDL_CONFIG+:} false; then :
+if ${ac_cv_path_SDL2_CONFIG+:} false; then :
$as_echo_n "(cached) " >&6
else
- case $SDL_CONFIG in
+ case $SDL2_CONFIG in
[\\/]* | ?:[\\/]*)
- ac_cv_path_SDL_CONFIG="$SDL_CONFIG" # Let the user override the test with a path.
+ ac_cv_path_SDL2_CONFIG="$SDL2_CONFIG" # Let the user override the test with a path.
;;
*)
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -3263,7 +3268,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_SDL_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+ ac_cv_path_SDL2_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
@@ -3271,14 +3276,14 @@ done
done
IFS=$as_save_IFS
- test -z "$ac_cv_path_SDL_CONFIG" && ac_cv_path_SDL_CONFIG="no"
+ test -z "$ac_cv_path_SDL2_CONFIG" && ac_cv_path_SDL2_CONFIG="no"
;;
esac
fi
-SDL_CONFIG=$ac_cv_path_SDL_CONFIG
-if test -n "$SDL_CONFIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SDL_CONFIG" >&5
-$as_echo "$SDL_CONFIG" >&6; }
+SDL2_CONFIG=$ac_cv_path_SDL2_CONFIG
+if test -n "$SDL2_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SDL2_CONFIG" >&5
+$as_echo "$SDL2_CONFIG" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
@@ -3290,17 +3295,17 @@ fi
$as_echo_n "checking for SDL - version >= $min_sdl_version... " >&6; }
no_sdl=""
- if test "$SDL_CONFIG" = "no" ; then
+ if test "$SDL2_CONFIG" = "no" ; then
no_sdl=yes
else
- SDL_CFLAGS=`$SDL_CONFIG $sdl_config_args --cflags`
- SDL_LIBS=`$SDL_CONFIG $sdl_config_args --libs`
+ SDL_CFLAGS=`$SDL2_CONFIG $sdl_config_args --cflags`
+ SDL_LIBS=`$SDL2_CONFIG $sdl_config_args --libs`
- sdl_major_version=`$SDL_CONFIG $sdl_config_args --version | \
+ sdl_major_version=`$SDL2_CONFIG $sdl_config_args --version | \
sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`
- sdl_minor_version=`$SDL_CONFIG $sdl_config_args --version | \
+ sdl_minor_version=`$SDL2_CONFIG $sdl_config_args --version | \
sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'`
- sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \
+ sdl_micro_version=`$SDL2_CONFIG $sdl_config_args --version | \
sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'`
if test "x$enable_sdltest" = "xyes" ; then
ac_save_CFLAGS="$CFLAGS"
@@ -3318,38 +3323,16 @@ else
#include <stdio.h>
#include <stdlib.h>
-#include <string.h>
#include "SDL.h"
-char*
-my_strdup (char *str)
-{
- char *new_str;
-
- if (str)
- {
- new_str = (char *)malloc ((strlen (str) + 1) * sizeof(char));
- strcpy (new_str, str);
- }
- else
- new_str = NULL;
-
- return new_str;
-}
-
int main (int argc, char *argv[])
{
int major, minor, micro;
- char *tmp_version;
+ FILE *fp = fopen("conf.sdltest", "w");
- /* This hangs on some systems (?)
- system ("touch conf.sdltest");
- */
- { FILE *fp = fopen("conf.sdltest", "a"); if ( fp ) fclose(fp); }
+ if (fp) fclose(fp);
- /* HP/UX 9 (%@#!) writes to sscanf strings */
- tmp_version = my_strdup("$min_sdl_version");
- if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) {
+ if (sscanf("$min_sdl_version", "%d.%d.%d", &major, &minor, µ) != 3) {
printf("%s, bad version string\n", "$min_sdl_version");
exit(1);
}
@@ -3365,7 +3348,7 @@ int main (int argc, char *argv[])
printf("\n*** 'sdl2-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
printf("*** of SDL required is %d.%d.%d. If sdl2-config is correct, then it is\n", major, minor, micro);
printf("*** best to upgrade to the required version.\n");
- printf("*** If sdl2-config was wrong, set the environment variable SDL_CONFIG\n");
+ printf("*** If sdl2-config was wrong, set the environment variable SDL2_CONFIG\n");
printf("*** to point to the correct copy of sdl2-config, and remove the file\n");
printf("*** config.cache before re-running configure\n");
return 1;
@@ -3399,10 +3382,10 @@ $as_echo "no" >&6; }
if test "x$no_sdl" = x ; then
:
else
- if test "$SDL_CONFIG" = "no" ; then
+ if test "$SDL2_CONFIG" = "no" ; then
echo "*** The sdl2-config script installed by SDL could not be found"
echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
- echo "*** your path, or set the SDL_CONFIG environment variable to the"
+ echo "*** your path, or set the SDL2_CONFIG environment variable to the"
echo "*** full path to sdl2-config."
else
if test -f conf.sdltest ; then
@@ -3445,7 +3428,7 @@ else
echo "*** The test program failed to compile or link. See the file config.log for the"
echo "*** exact error that occured. This usually means SDL was incorrectly installed"
echo "*** or that you have moved SDL since it was installed. In the latter case, you"
- echo "*** may want to edit the sdl2-config script: $SDL_CONFIG"
+ echo "*** may want to edit the sdl2-config script: $SDL2_CONFIG"
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
@@ -3624,8 +3607,34 @@ else
$as_echo_n "(cached) " >&6
else
# One or both of the vars are not set, and there is no cached value.
-ac_x_includes=no ac_x_libraries=no
-rm -f -r conftest.dir
+ac_x_includes=no
+ac_x_libraries=no
+# Do we need to do anything special at all?
+ac_save_LIBS=$LIBS
+LIBS="-lX11 $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <X11/Xlib.h>
+int
+main ()
+{
+XrmInitialize ()
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ # We can compile and link X programs with no special options.
+ ac_x_includes=
+ ac_x_libraries=
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS="$ac_save_LIBS"
+# If that didn't work, only try xmkmf and filesystem searches
+# for native compilation.
+if test x"$ac_x_includes" = xno && test "$cross_compiling" = no; then :
+ rm -f -r conftest.dir
if mkdir conftest.dir; then
cd conftest.dir
cat >Imakefile <<'_ACEOF'
@@ -3664,7 +3673,7 @@ _ACEOF
rm -f -r conftest.dir
fi
-# Standard set of common directories for X headers.
+ # Standard set of common directories for X headers.
# Check X11 before X11Rn because it is often a symlink to the current release.
ac_x_header_dirs='
/usr/X11/include
@@ -3691,6 +3700,8 @@ ac_x_header_dirs='
/usr/local/include/X11R5
/usr/local/include/X11R4
+/opt/X11/include
+
/usr/X386/include
/usr/x386/include
/usr/XFree86/include/X11
@@ -3764,15 +3775,17 @@ rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
fi # $ac_x_libraries = no
+fi
+# Record the results.
case $ac_x_includes,$ac_x_libraries in #(
- no,* | *,no | *\'*)
+ no,* | *,no | *\'*) :
# Didn't find X, or a directory has "'" in its name.
- ac_cv_have_x="have_x=no";; #(
- *)
+ ac_cv_have_x="have_x=no" ;; #(
+ *) :
# Record where we found X for the cache.
ac_cv_have_x="have_x=yes\
ac_x_includes='$ac_x_includes'\
- ac_x_libraries='$ac_x_libraries'"
+ ac_x_libraries='$ac_x_libraries'" ;;
esac
fi
;; #(
@@ -3925,6 +3938,79 @@ if test x$have_SDL_ttf = xyes; then
fi
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libunwind" >&5
+$as_echo_n "checking for libunwind... " >&6; }
+
+if test -n "$LIBUNWIND_CFLAGS"; then
+ pkg_cv_LIBUNWIND_CFLAGS="$LIBUNWIND_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libunwind\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libunwind") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_LIBUNWIND_CFLAGS=`$PKG_CONFIG --cflags "libunwind" 2>/dev/null`
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$LIBUNWIND_LIBS"; then
+ pkg_cv_LIBUNWIND_LIBS="$LIBUNWIND_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libunwind\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libunwind") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_LIBUNWIND_LIBS=`$PKG_CONFIG --libs "libunwind" 2>/dev/null`
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ LIBUNWIND_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libunwind" 2>&1`
+ else
+ LIBUNWIND_PKG_ERRORS=`$PKG_CONFIG --print-errors "libunwind" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$LIBUNWIND_PKG_ERRORS" >&5
+
+ have_libunwind=no
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ have_libunwind=no
+else
+ LIBUNWIND_CFLAGS=$pkg_cv_LIBUNWIND_CFLAGS
+ LIBUNWIND_LIBS=$pkg_cv_LIBUNWIND_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ have_libunwind=yes
+fi
+if test x$have_libunwind = xyes ; then
+ LIBS="$LIBS $LIBUNWIND_LIBS"
+fi
+
ac_config_headers="$ac_config_headers config.h"
ac_config_files="$ac_config_files Makefile"
diff --git a/visualtest/configure.in b/visualtest/configure.ac
similarity index 92%
rename from visualtest/configure.in
rename to visualtest/configure.ac
index 724a0ee38e0..384e913f229 100644
--- a/visualtest/configure.in
+++ b/visualtest/configure.ac
@@ -2,15 +2,13 @@ dnl Process this file with autoconf to produce a configure script.
AC_INIT([sdlvisualtest], [0.01], [apoorvupreti@gmail.com])
dnl Detect the canonical build and host environments
-AC_CONFIG_AUX_DIRS($srcdir/../build-scripts)
+AC_CONFIG_AUX_DIR([../build-scripts])
AC_CANONICAL_HOST
dnl Check for tools
-
AC_PROG_CC
dnl Check for compiler environment
-
AC_C_CONST
dnl We only care about this for building testnative at the moment, so these
@@ -22,7 +20,7 @@ ISMACOSX="false"
dnl Figure out which math or extra library to use
case "$host" in
- *-*-cygwin* | *-*-mingw32*)
+ *-*-cygwin* | *-*-mingw*)
ISWINDOWS="true"
EXE=".exe"
MATHLIB=""
@@ -35,17 +33,16 @@ case "$host" in
EXTRALIB=""
SYS_GL_LIBS="-lGL"
;;
- *-*-darwin* )
+ *-*-darwin*)
ISMACOSX="true"
EXE=""
MATHLIB=""
EXTRALIB=""
-
;;
*-*-aix*)
ISUNIX="true"
EXE=""
- if test x$ac_cv_prog_gcc = xyes; then
+ if test x$ac_cv_c_compiler_gnu = xyes; then
CFLAGS="-mthreads"
fi
MATHLIB=""
@@ -159,8 +156,13 @@ if test x$have_SDL_ttf = xyes; then
fi
AC_SUBST(SDL_TTF_LIB)
+PKG_CHECK_MODULES(LIBUNWIND, libunwind, have_libunwind=yes, have_libunwind=no)
+if test x$have_libunwind = xyes ; then
+ LIBS="$LIBS $LIBUNWIND_LIBS"
+fi
+
dnl Finally create all the generated files
dnl AC_OUTPUT([Makefile])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([Makefile])
-AC_OUTPUT()
+AC_OUTPUT
diff --git a/visualtest/depcomp b/visualtest/depcomp
deleted file mode 100755
index b0ad20c05e0..00000000000
--- a/visualtest/depcomp
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/automake-1.11/depcomp
\ No newline at end of file
diff --git a/visualtest/install-sh b/visualtest/install-sh
deleted file mode 100755
index 205f21c6b89..00000000000
--- a/visualtest/install-sh
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/automake-1.11/install-sh
\ No newline at end of file
diff --git a/visualtest/missing b/visualtest/missing
deleted file mode 100755
index 20bc5b0ed9f..00000000000
--- a/visualtest/missing
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/automake-1.11/missing
\ No newline at end of file
diff --git a/visualtest/src/action_configparser.c b/visualtest/src/action_configparser.c
index fc226bc6d9b..45803437d46 100644
--- a/visualtest/src/action_configparser.c
+++ b/visualtest/src/action_configparser.c
@@ -36,6 +36,9 @@ FreeAction(SDLVisualTest_Action* action)
action->extra.process.args = NULL;
}
break;
+
+ default:
+ break;
}
}
diff --git a/visualtest/src/linux/linux_process.c b/visualtest/src/linux/linux_process.c
index 2fef09c353e..d6e7f75b797 100644
--- a/visualtest/src/linux/linux_process.c
+++ b/visualtest/src/linux/linux_process.c
@@ -1,199 +1,208 @@
-/* See LICENSE.txt for the full license governing this code. */
-/**
- * \file linux_process.c
- *
- * Source file for the process API on linux.
- */
-
-
-#include <SDL.h>
-#include <SDL_test.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <unistd.h>
-#include <errno.h>
-
-#include "SDL_visualtest_process.h"
-#include "SDL_visualtest_harness_argparser.h"
-#include "SDL_visualtest_parsehelper.h"
-
-#if defined(__LINUX__)
-
-static void
-LogLastError(char* str)
-{
- char* error = (char*)strerror(errno);
- if(!str || !error)
- return;
- SDLTest_LogError("%s: %s", str, error);
-}
-
-int
-SDL_LaunchProcess(char* file, char* args, SDL_ProcessInfo* pinfo)
-{
- pid_t pid;
- char** argv;
-
- if(!file)
- {
- SDLTest_LogError("file argument cannot be NULL");
- return 0;
- }
- if(!
(Patch may be truncated, please check the link at the top of this post.)