sdl2.m4
author Sam Lantinga <slouken@libsdl.org>
Sat, 27 Jul 2013 03:20:09 -0700
changeset 7526 6c0f0280149c
parent 7492 98de3e4f1c36
permissions -rw-r--r--
Fixed bug 1272 - Bogus numlock key up/down events being reported on MacOS X Vern Jensen The problem is that in certain situations I'm getting THREE keyUp/keyDown events when I push certain keys. In my event code I added: case SDL_KEYUP: printf("SDL KeyScanCode for KEYUP event: %d\n", event->key.keysym.scancode ); … and case SDL_KEYDOWN: printf("SDL KeyScanCode for KEYDOWN event: %d\n", event->key.keysym.scancode ); … The result of one test run where I push 2 keys and then release them is this: SDL KeyScanCode for KEYDOWN event: 92 // Pushed keypad 4 SDL KeyScanCode for KEYDOWN event: 83 // Pushed left shift SDL KeyScanCode for KEYUP event: 83 SDL KeyScanCode for KEYDOWN event: 225 SDL KeyScanCode for KEYUP event: 92 // Released keypad 4 SDL KeyScanCode for KEYDOWN event: 83 SDL KeyScanCode for KEYUP event: 83 SDL KeyScanCode for KEYUP event: 225 // Released left shift There *should* be only a total of 4 events above… 2 for each key being pushed, and 2 for each being released. But instead some bogus events for numlock being pushed/released are sent from SDL. These events did not occur. I did not push numlock. The value above for numlock is 83. Comments above show when I pushed each key. As you can see, when I push left shift, THREE events are instantly sent to my application, keyDown and then keyUp for numlock, and then the valid event for left shift (the key that was actually pushed). You could replace keypad 4 with pretty much any keyPad key and it'll still happen. You can also replace it with any arrow key and it'll happen. However, when trying it with normal letter keys on the main keyboard it didn't. It happens with other modifier keys too, not just left shift. The order in which the keys are pressed matter. For instance, if I do: 1) keypad 4 2) left shift 3) release left shift 4) release keypad 4 Then at step 2, I get the 3 events above (when there should be only one), but steps 3 and 4 work properly… I don't get extra keyUp/keyDown events for steps 3 or 4. Thereas if the order of steps 3 and 4 are reversed, I get the bogus extra events for numlock. Also, the problem can occur even when pushing just a single key by itself. If I push left shift, then keypad 4, then release left shift, then release keypad 4, then the following push of left shift will cause the bug. If I continue pushing and releasing left shift though, it won't happen again until I again involve keypad keys. --- Sam Lantinga According to the Apple documentation, NSNumericPadKeyMask is set for any arrow or numeric keypad event. Indeed this is what's happening. I verified that we get the correct events for the numlock key and the mod state gets set correcly, so it should be safe to remove this bogus code.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
     1
# Configure paths for SDL
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
     2
# Sam Lantinga 9/21/99
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
     3
# stolen from Manish Singh
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
     4
# stolen back from Frank Belew
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
     5
# stolen from Manish Singh
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
     6
# Shamelessly stolen from Owen Taylor
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
     7
4441
e3033ab628a1 Fixed bug 978
Sam Lantinga <slouken@libsdl.org>
parents: 3379
diff changeset
     8
# serial 1
e3033ab628a1 Fixed bug 978
Sam Lantinga <slouken@libsdl.org>
parents: 3379
diff changeset
     9
6890
d87e515b5157 Updated macro comment
Sam Lantinga <slouken@libsdl.org>
parents: 6272
diff changeset
    10
dnl AM_PATH_SDL2([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    11
dnl Test for SDL, and define SDL_CFLAGS and SDL_LIBS
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    12
dnl
6272
f3dbef2cc0f2 Switched the SDL 2 autoconf macro to AM_PATH_SDL2
Sam Lantinga <slouken@libsdl.org>
parents: 6250
diff changeset
    13
AC_DEFUN([AM_PATH_SDL2],
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    14
[dnl 
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
    15
dnl Get the cflags and libraries from the sdl2-config script
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    16
dnl
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    17
AC_ARG_WITH(sdl-prefix,[  --with-sdl-prefix=PFX   Prefix where SDL is installed (optional)],
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    18
            sdl_prefix="$withval", sdl_prefix="")
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    19
AC_ARG_WITH(sdl-exec-prefix,[  --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional)],
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    20
            sdl_exec_prefix="$withval", sdl_exec_prefix="")
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    21
AC_ARG_ENABLE(sdltest, [  --disable-sdltest       Do not try to compile and run a test SDL program],
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    22
		    , enable_sdltest=yes)
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    23
7251
8c5e575a1315 Default the minimum required version to 2.0.0
Sam Lantinga <slouken@libsdl.org>
parents: 6890
diff changeset
    24
  min_sdl_version=ifelse([$1], ,2.0.0,$1)
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    25
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    26
  if test "x$sdl_prefix$sdl_exec_prefix" = x ; then
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
    27
    PKG_CHECK_MODULES([SDL], [sdl2 >= $min_sdl_version],
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    28
           [sdl_pc=yes],
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
    29
           [sdl_pc=no])
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    30
  else
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    31
    sdl_pc=no
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    32
    if test x$sdl_exec_prefix != x ; then
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    33
      sdl_config_args="$sdl_config_args --exec-prefix=$sdl_exec_prefix"
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    34
      if test x${SDL2_CONFIG+set} != xset ; then
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    35
        SDL2_CONFIG=$sdl_exec_prefix/bin/sdl2-config
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    36
      fi
1755
91063c450171 Don't add NONE/bin to the path - inexplicably fixes building on mingw+msys, apparently
Sam Lantinga <slouken@libsdl.org>
parents: 1550
diff changeset
    37
    fi
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    38
    if test x$sdl_prefix != x ; then
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    39
      sdl_config_args="$sdl_config_args --prefix=$sdl_prefix"
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    40
      if test x${SDL2_CONFIG+set} != xset ; then
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    41
        SDL2_CONFIG=$sdl_prefix/bin/sdl2-config
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    42
      fi
1755
91063c450171 Don't add NONE/bin to the path - inexplicably fixes building on mingw+msys, apparently
Sam Lantinga <slouken@libsdl.org>
parents: 1550
diff changeset
    43
    fi
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    44
  fi
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    45
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    46
  if test "x$sdl_pc" = xyes ; then
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    47
    no_sdl=""
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    48
    SDL2_CONFIG="pkg-config sdl2"
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    49
  else
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    50
    as_save_PATH="$PATH"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    51
    if test "x$prefix" != xNONE && test "$cross_compiling" != yes; then
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    52
      PATH="$prefix/bin:$prefix/usr/bin:$PATH"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    53
    fi
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    54
    AC_PATH_PROG(SDL2_CONFIG, sdl2-config, no, [$PATH])
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    55
    PATH="$as_save_PATH"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    56
    AC_MSG_CHECKING(for SDL - version >= $min_sdl_version)
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    57
    no_sdl=""
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    58
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    59
    if test "$SDL2_CONFIG" = "no" ; then
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    60
      no_sdl=yes
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    61
    else
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    62
      SDL_CFLAGS=`$SDL2_CONFIG $sdl_config_args --cflags`
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    63
      SDL_LIBS=`$SDL2_CONFIG $sdl_config_args --libs`
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    64
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    65
      sdl_major_version=`$SDL2_CONFIG $sdl_config_args --version | \
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    66
             sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    67
      sdl_minor_version=`$SDL2_CONFIG $sdl_config_args --version | \
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    68
             sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
    69
      sdl_micro_version=`$SDL2_CONFIG $sdl_config_args --version | \
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    70
             sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    71
      if test "x$enable_sdltest" = "xyes" ; then
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    72
        ac_save_CFLAGS="$CFLAGS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    73
        ac_save_CXXFLAGS="$CXXFLAGS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    74
        ac_save_LIBS="$LIBS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    75
        CFLAGS="$CFLAGS $SDL_CFLAGS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    76
        CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
    77
        LIBS="$LIBS $SDL_LIBS"
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    78
dnl
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    79
dnl Now check if the installed SDL is sufficiently new. (Also sanity
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
    80
dnl checks the results of sdl2-config to some extent
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    81
dnl
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    82
      rm -f conf.sdltest
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    83
      AC_TRY_RUN([
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    84
#include <stdio.h>
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    85
#include <stdlib.h>
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    86
#include <string.h>
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    87
#include "SDL.h"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    88
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    89
char*
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    90
my_strdup (char *str)
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    91
{
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    92
  char *new_str;
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    93
  
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    94
  if (str)
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    95
    {
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    96
      new_str = (char *)malloc ((strlen (str) + 1) * sizeof(char));
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    97
      strcpy (new_str, str);
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    98
    }
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
    99
  else
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   100
    new_str = NULL;
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   101
  
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   102
  return new_str;
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   103
}
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   104
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   105
int main (int argc, char *argv[])
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   106
{
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   107
  int major, minor, micro;
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   108
  char *tmp_version;
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   109
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   110
  /* This hangs on some systems (?)
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   111
  system ("touch conf.sdltest");
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   112
  */
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   113
  { FILE *fp = fopen("conf.sdltest", "a"); if ( fp ) fclose(fp); }
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   114
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   115
  /* HP/UX 9 (%@#!) writes to sscanf strings */
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   116
  tmp_version = my_strdup("$min_sdl_version");
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   117
  if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   118
     printf("%s, bad version string\n", "$min_sdl_version");
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   119
     exit(1);
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   120
   }
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   121
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   122
   if (($sdl_major_version > major) ||
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   123
      (($sdl_major_version == major) && ($sdl_minor_version > minor)) ||
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   124
      (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro)))
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   125
    {
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   126
      return 0;
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   127
    }
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   128
  else
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   129
    {
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
   130
      printf("\n*** 'sdl2-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
   131
      printf("*** of SDL required is %d.%d.%d. If sdl2-config is correct, then it is\n", major, minor, micro);
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   132
      printf("*** best to upgrade to the required version.\n");
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
   133
      printf("*** If sdl2-config was wrong, set the environment variable SDL2_CONFIG\n");
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
   134
      printf("*** to point to the correct copy of sdl2-config, and remove the file\n");
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   135
      printf("*** config.cache before re-running configure\n");
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   136
      return 1;
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   137
    }
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   138
}
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   139
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   140
],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   141
        CFLAGS="$ac_save_CFLAGS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   142
        CXXFLAGS="$ac_save_CXXFLAGS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   143
        LIBS="$ac_save_LIBS"
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   144
      fi
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   145
    fi
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   146
    if test "x$no_sdl" = x ; then
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   147
      AC_MSG_RESULT(yes)
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   148
    else
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   149
      AC_MSG_RESULT(no)
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   150
    fi
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   151
  fi
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   152
  if test "x$no_sdl" = x ; then
3340
3d75acd08339 Fixed bug #522
Sam Lantinga <slouken@libsdl.org>
parents: 2301
diff changeset
   153
     ifelse([$2], , :, [$2])
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   154
  else
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
   155
     if test "$SDL2_CONFIG" = "no" ; then
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
   156
       echo "*** The sdl2-config script installed by SDL could not be found"
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   157
       echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
   158
       echo "*** your path, or set the SDL2_CONFIG environment variable to the"
6250
cce0ddcf6747 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
Sam Lantinga <slouken@libsdl.org>
parents: 4441
diff changeset
   159
       echo "*** full path to sdl2-config."
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   160
     else
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   161
       if test -f conf.sdltest ; then
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   162
        :
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   163
       else
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   164
          echo "*** Could not run SDL test program, checking why..."
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   165
          CFLAGS="$CFLAGS $SDL_CFLAGS"
1118
65f4b2dd46b7 Date: Wed, 17 Aug 2005 11:23:40 -0400
Ryan C. Gordon <icculus@icculus.org>
parents: 794
diff changeset
   166
          CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   167
          LIBS="$LIBS $SDL_LIBS"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   168
          AC_TRY_LINK([
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   169
#include <stdio.h>
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   170
#include "SDL.h"
1
cf2af46e9e2a Changes since SDL 1.2.0 release
Sam Lantinga <slouken@lokigames.com>
parents: 0
diff changeset
   171
cf2af46e9e2a Changes since SDL 1.2.0 release
Sam Lantinga <slouken@lokigames.com>
parents: 0
diff changeset
   172
int main(int argc, char *argv[])
cf2af46e9e2a Changes since SDL 1.2.0 release
Sam Lantinga <slouken@lokigames.com>
parents: 0
diff changeset
   173
{ return 0; }
cf2af46e9e2a Changes since SDL 1.2.0 release
Sam Lantinga <slouken@lokigames.com>
parents: 0
diff changeset
   174
#undef  main
cf2af46e9e2a Changes since SDL 1.2.0 release
Sam Lantinga <slouken@lokigames.com>
parents: 0
diff changeset
   175
#define main K_and_R_C_main
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   176
],      [ return 0; ],
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   177
        [ echo "*** The test program compiled, but did not run. This usually means"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   178
          echo "*** that the run-time linker is not finding SDL or finding the wrong"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   179
          echo "*** version of SDL. If it is not finding SDL, you'll need to set your"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   180
          echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   181
          echo "*** to the installed location  Also, make sure you have run ldconfig if that"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   182
          echo "*** is required on your system"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   183
	  echo "***"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   184
          echo "*** If you have an old version installed, it is best to remove it, although"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   185
          echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   186
        [ echo "*** The test program failed to compile or link. See the file config.log for the"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   187
          echo "*** exact error that occured. This usually means SDL was incorrectly installed"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   188
          echo "*** or that you have moved SDL since it was installed. In the latter case, you"
7492
98de3e4f1c36 Fixed bug 1976 - SDL2.m4 shares same variables as SDL.m4 so they cache values
Sam Lantinga <slouken@libsdl.org>
parents: 7251
diff changeset
   189
          echo "*** may want to edit the sdl2-config script: $SDL2_CONFIG" ])
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   190
          CFLAGS="$ac_save_CFLAGS"
1118
65f4b2dd46b7 Date: Wed, 17 Aug 2005 11:23:40 -0400
Ryan C. Gordon <icculus@icculus.org>
parents: 794
diff changeset
   191
          CXXFLAGS="$ac_save_CXXFLAGS"
0
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   192
          LIBS="$ac_save_LIBS"
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   193
       fi
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   194
     fi
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   195
     SDL_CFLAGS=""
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   196
     SDL_LIBS=""
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   197
     ifelse([$3], , :, [$3])
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   198
  fi
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   199
  AC_SUBST(SDL_CFLAGS)
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   200
  AC_SUBST(SDL_LIBS)
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   201
  rm -f conf.sdltest
74212992fb08 Initial revision
Sam Lantinga <slouken@lokigames.com>
parents:
diff changeset
   202
])