vulkan: Initial Vulkan support!
This work was done by Jacob Lifshay and Mark Callow; I'm just merging it into revision control. --HG-- extra : rebase_source : cb3bb332146125366b5242c0d7444f44638733d9 extra : amend_source : c72ebb6d3a92efc3fdd085ce3b6d4b1d7f573cc9
This commit is contained in:
parent
0ff15ac41b
commit
a566435db1
60 changed files with 5456 additions and 80 deletions
107
configure
vendored
107
configure
vendored
|
@ -745,6 +745,7 @@ infodir
|
|||
docdir
|
||||
oldincludedir
|
||||
includedir
|
||||
runstatedir
|
||||
localstatedir
|
||||
sharedstatedir
|
||||
sysconfdir
|
||||
|
@ -854,6 +855,7 @@ enable_video_opengl
|
|||
enable_video_opengles
|
||||
enable_video_opengles1
|
||||
enable_video_opengles2
|
||||
enable_video_vulkan
|
||||
enable_libudev
|
||||
enable_dbus
|
||||
enable_ime
|
||||
|
@ -920,6 +922,7 @@ datadir='${datarootdir}'
|
|||
sysconfdir='${prefix}/etc'
|
||||
sharedstatedir='${prefix}/com'
|
||||
localstatedir='${prefix}/var'
|
||||
runstatedir='${localstatedir}/run'
|
||||
includedir='${prefix}/include'
|
||||
oldincludedir='/usr/include'
|
||||
docdir='${datarootdir}/doc/${PACKAGE}'
|
||||
|
@ -1172,6 +1175,15 @@ do
|
|||
| -silent | --silent | --silen | --sile | --sil)
|
||||
silent=yes ;;
|
||||
|
||||
-runstatedir | --runstatedir | --runstatedi | --runstated \
|
||||
| --runstate | --runstat | --runsta | --runst | --runs \
|
||||
| --run | --ru | --r)
|
||||
ac_prev=runstatedir ;;
|
||||
-runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
|
||||
| --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
|
||||
| --run=* | --ru=* | --r=*)
|
||||
runstatedir=$ac_optarg ;;
|
||||
|
||||
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
|
||||
ac_prev=sbindir ;;
|
||||
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
|
||||
|
@ -1309,7 +1321,7 @@ fi
|
|||
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
|
||||
datadir sysconfdir sharedstatedir localstatedir includedir \
|
||||
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
|
||||
libdir localedir mandir
|
||||
libdir localedir mandir runstatedir
|
||||
do
|
||||
eval ac_val=\$$ac_var
|
||||
# Remove trailing slashes.
|
||||
|
@ -1462,6 +1474,7 @@ Fine tuning of the installation directories:
|
|||
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
||||
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
||||
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
||||
--runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
|
||||
--libdir=DIR object code libraries [EPREFIX/lib]
|
||||
--includedir=DIR C header files [PREFIX/include]
|
||||
--oldincludedir=DIR C header files for non-gcc [/usr/include]
|
||||
|
@ -1603,6 +1616,7 @@ Optional Features:
|
|||
include OpenGL ES 1.1 support [[default=yes]]
|
||||
--enable-video-opengles2
|
||||
include OpenGL ES 2.0 support [[default=yes]]
|
||||
--enable-video-vulkan include Vulkan surface support [[default=yes]]
|
||||
--enable-libudev enable libudev support [[default=yes]]
|
||||
--enable-dbus enable D-Bus support [[default=yes]]
|
||||
--enable-ime enable IME support [[default=yes]]
|
||||
|
@ -21891,6 +21905,87 @@ $as_echo "#define SDL_VIDEO_RENDER_OGL_ES2 1" >>confdefs.h
|
|||
fi
|
||||
}
|
||||
|
||||
# Check whether --enable-video-vulkan was given.
|
||||
if test "${enable_video_vulkan+set}" = set; then :
|
||||
enableval=$enable_video_vulkan;
|
||||
else
|
||||
enable_video_vulkan=yes
|
||||
fi
|
||||
|
||||
|
||||
CheckVulkan()
|
||||
{
|
||||
have_vulkan_hdr=no
|
||||
if test x$enable_video = xyes -a x$enable_video_vulkan = xyes; then
|
||||
case "$host" in
|
||||
*-*-androideabi*)
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
#if defined(__ANDROID__) && defined(__ARM_EABI__) && !defined(__ARM_ARCH_7A__)
|
||||
#error Vulkan doesn't work on this configuration
|
||||
#endif
|
||||
int main()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
|
||||
enable_video_vulkan=no
|
||||
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
if ac_fn_c_try_compile "$LINENO"; then :
|
||||
|
||||
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
if test x$enable_video_vulkan = xno; then
|
||||
# For reasons I am totally unable to see, I get an undefined macro error if
|
||||
# I put this in the AC_TRY_COMPILE.
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Sorry, Vulkan does not work on this configuration." >&5
|
||||
$as_echo "$as_me: WARNING: Sorry, Vulkan does not work on this configuration." >&2;}
|
||||
fi
|
||||
if test x$enable_video_vulkan = xyes; then
|
||||
vsdk_include_dir="${VULKAN_SDK}/include"
|
||||
vulkan_header="vulkan/vulkan.h"
|
||||
save_CPPFLAGS="$CPPFLAGS"
|
||||
CPPFLAGS="${save_CPPFLAGS} -I$vsdk_include_dir"
|
||||
as_ac_Header=`$as_echo "ac_cv_header_$vulkan_header" | $as_tr_sh`
|
||||
ac_fn_c_check_header_mongrel "$LINENO" "$vulkan_header" "$as_ac_Header" "$ac_includes_default"
|
||||
if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
|
||||
have_vulkan_hdr=yes
|
||||
else
|
||||
have_vulkan_hdr=no
|
||||
fi
|
||||
|
||||
|
||||
CPPFLAGS="$save_CPPFLAGS"
|
||||
fi
|
||||
fi
|
||||
if test x$have_vulkan_hdr = xyes; then
|
||||
# vulkan.h has been found in either $VULKAN_SDK/include or along the
|
||||
# the standard include path. Unfortunately there seems no easy
|
||||
# way to find out which, so...
|
||||
if test -n "$VULKAN_SDK" -a -f "$vsdk_include_dir/$vulkan_header"; then
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -I$vsdk_include_dir"
|
||||
fi
|
||||
|
||||
$as_echo "#define SDL_VIDEO_VULKAN_SURFACE 1" >>confdefs.h
|
||||
|
||||
SUMMARY_video="${SUMMARY_video} vulkan"
|
||||
fi
|
||||
}
|
||||
|
||||
CheckInputEvents()
|
||||
{
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Linux 2.4 unified input interface" >&5
|
||||
|
@ -23637,6 +23732,7 @@ case "$host" in
|
|||
CheckKMSDRM
|
||||
CheckOpenGLX11
|
||||
CheckOpenGLESX11
|
||||
CheckVulkan
|
||||
CheckMir
|
||||
CheckWayland
|
||||
CheckLibUDev
|
||||
|
@ -23806,6 +23902,7 @@ $as_echo "#define SDL_TIMER_UNIX 1" >>confdefs.h
|
|||
CheckWINDOWS
|
||||
CheckWINDOWSGL
|
||||
CheckWINDOWSGLES
|
||||
CheckVulkan
|
||||
CheckDIRECTX
|
||||
|
||||
# Set up the core platform files
|
||||
|
@ -24092,6 +24189,7 @@ fi
|
|||
CheckDummyAudio
|
||||
CheckDLOPEN
|
||||
CheckPTHREAD
|
||||
CheckVulkan
|
||||
|
||||
# Set up files for the audio library
|
||||
if test x$enable_audio = xyes; then
|
||||
|
@ -24174,6 +24272,9 @@ $as_echo "#define SDL_VIDEO_RENDER_OGL_ES2 1" >>confdefs.h
|
|||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit"
|
||||
if test x$ac_cv_header_vulkan_vulkan_h = xyes; then
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore"
|
||||
fi
|
||||
;;
|
||||
*-*-darwin* )
|
||||
# This could be either full "Mac OS X", or plain "Darwin" which is
|
||||
|
@ -24195,6 +24296,7 @@ $as_echo "#define SDL_VIDEO_RENDER_OGL_ES2 1" >>confdefs.h
|
|||
CheckX11
|
||||
CheckMacGL
|
||||
CheckOpenGLX11
|
||||
CheckVulkan
|
||||
CheckPTHREAD
|
||||
|
||||
# Set up files for the audio library
|
||||
|
@ -24260,6 +24362,9 @@ $as_echo "#define SDL_TIMER_UNIX 1" >>confdefs.h
|
|||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Cocoa"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Carbon"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,IOKit"
|
||||
if test x$ac_cv_header_vulkan_vulkan_h = xyes; then
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore"
|
||||
fi
|
||||
;;
|
||||
*-nacl|*-pnacl)
|
||||
ARCH=nacl
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue