13 files renamed
825 files modified
135 files added
516 files deleted
5 files copied
| | |
| | | test/loopwave |
| | | test/loopwavequeue |
| | | test/testatomic |
| | | test/testaudiocapture |
| | | test/testaudiohotplug |
| | | test/testaudioinfo |
| | | test/testautomation |
| | | test/testbounds |
| | | test/testcustomcursor |
| | | test/testdisplayinfo |
| | | test/testdraw2 |
| | | test/testdrawchessboard |
| | | test/testdropfile |
| | | test/testerror |
| | | test/testfile |
| | | test/testfilesystem |
| | | test/testgamecontroller |
| | | test/testgesture |
| | | test/testgl2 |
| | |
| | | test/testoverlay2 |
| | | test/testplatform |
| | | test/testpower |
| | | test/testfilesystem |
| | | test/testqsort |
| | | test/testrelative |
| | | test/testrendercopyex |
| | | test/testrendertarget |
| | |
| | | test/testver |
| | | test/testviewport |
| | | test/testwm2 |
| | | test/testbounds |
| | | test/testyuv |
| | | test/torturethread |
| | | test/testdisplayinfo |
| | | test/testqsort |
| | | test/testaudiocapture |
| | | test/*.exe |
| | | test/*.dSYM |
| | | buildbot |
| | |
| | | f285b9487756ff681f76c85644222c03a7bfa1c7 release-2.0.3 |
| | | 704a0bfecf754e4e1383f83c7d5118b00cae26ea release-2.0.3 |
| | | e12c387305129c847b3928a123300b113782fe3f release-2.0.4 |
| | | 007dfe83abf81b1ff5df40186f65e8e64987b825 release-2.0.5 |
| | | 8df7a59b55283aa09889522369a2b32674c048de release-2.0.6 |
| | | 2088cd828335797d73d151e3288d899f77204862 release-2.0.7 |
| | |
| | | $(wildcard $(LOCAL_PATH)/src/audio/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/audio/android/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/audio/dummy/*.c) \ |
| | | $(LOCAL_PATH)/src/atomic/SDL_atomic.c \ |
| | | $(LOCAL_PATH)/src/atomic/SDL_atomic.c.arm \ |
| | | $(LOCAL_PATH)/src/atomic/SDL_spinlock.c.arm \ |
| | | $(wildcard $(LOCAL_PATH)/src/core/android/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/cpuinfo/*.c) \ |
| | |
| | | $(wildcard $(LOCAL_PATH)/src/events/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/file/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/haptic/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/haptic/dummy/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/haptic/android/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/joystick/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/joystick/android/*.c) \ |
| | | $(LOCAL_PATH)/src/joystick/steam/SDL_steamcontroller.c \ |
| | | $(wildcard $(LOCAL_PATH)/src/loadso/dlopen/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/power/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/power/android/*.c) \ |
| | |
| | | $(wildcard $(LOCAL_PATH)/src/timer/unix/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/video/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/video/android/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/video/yuv2rgb/*.c) \ |
| | | $(wildcard $(LOCAL_PATH)/src/test/*.c)) |
| | | |
| | | LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES |
| | | LOCAL_LDLIBS := -ldl -lGLESv1_CM -lGLESv2 -llog -landroid |
| | | |
| | | cmd-strip := |
| | | |
| | | include $(BUILD_SHARED_LIBRARY) |
| | | |
| | |
| | | |
| | | LOCAL_MODULE_FILENAME := libSDL2 |
| | | |
| | | LOCAL_SRC_FILES += $(subst $(LOCAL_PATH)/,,$(LOCAL_PATH)/src/main/android/SDL_android_main.c) |
| | | |
| | | LOCAL_LDLIBS := |
| | | LOCAL_EXPORT_LDLIBS := -Wl,--undefined=Java_org_libsdl_app_SDLActivity_nativeInit -ldl -lGLESv1_CM -lGLESv2 -llog -landroid |
| | | LOCAL_EXPORT_LDLIBS := -ldl -lGLESv1_CM -lGLESv2 -llog -landroid |
| | | |
| | | include $(BUILD_STATIC_LIBRARY) |
| | | |
| | | ########################### |
| | | # |
| | | # SDL main static library |
| | | # |
| | | ########################### |
| | | |
| | | include $(CLEAR_VARS) |
| | | |
| | | LOCAL_C_INCLUDES := $(LOCAL_PATH)/include |
| | | |
| | | LOCAL_MODULE := SDL2_main |
| | | |
| | | LOCAL_MODULE_FILENAME := libSDL2main |
| | | |
| | | include $(BUILD_STATIC_LIBRARY) |
| | | |
| | | |
| | |
| | | been reported, discussed, and maybe even fixed.
|
| | |
|
| | |
|
| | | You may also find help on the SDL mailing list. Subscription information:
|
| | | You may also find help at the SDL forums/mailing list:
|
| | |
|
| | | http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org
|
| | | https://discourse.libsdl.org/
|
| | |
|
| | | Bug reports are welcome here, but we really appreciate if you use Bugzilla, as
|
| | | bugs discussed on the mailing list may be forgotten or missed.
|
| | |
| | | message(FATAL_ERROR "Prevented in-tree built. Please create a build directory outside of the SDL source code and call cmake from there") |
| | | endif() |
| | | |
| | | cmake_minimum_required(VERSION 2.8.5) |
| | | cmake_minimum_required(VERSION 2.8.11) |
| | | project(SDL2 C) |
| | | |
| | | # !!! FIXME: this should probably do "MACOSX_RPATH ON" as a target property |
| | |
| | | include(CheckIncludeFiles) |
| | | include(CheckIncludeFile) |
| | | include(CheckSymbolExists) |
| | | include(CheckCSourceCompiles) |
| | | include(CheckCSourceRuns) |
| | | include(CheckCCompilerFlag) |
| | | include(CheckTypeSize) |
| | |
| | | # set SDL_BINARY_AGE and SDL_INTERFACE_AGE to 0. |
| | | set(SDL_MAJOR_VERSION 2) |
| | | set(SDL_MINOR_VERSION 0) |
| | | set(SDL_MICRO_VERSION 5) |
| | | set(SDL_INTERFACE_AGE 1) |
| | | set(SDL_BINARY_AGE 5) |
| | | set(SDL_MICRO_VERSION 8) |
| | | set(SDL_INTERFACE_AGE 0) |
| | | set(SDL_BINARY_AGE 8) |
| | | set(SDL_VERSION "${SDL_MAJOR_VERSION}.${SDL_MINOR_VERSION}.${SDL_MICRO_VERSION}") |
| | | |
| | | # Set defaults preventing destination file conflicts |
| | | set(SDL_CMAKE_DEBUG_POSTFIX "d" |
| | | CACHE STRING "Name suffix for debug builds") |
| | | |
| | | mark_as_advanced(CMAKE_IMPORT_LIBRARY_SUFFIX SDL_CMAKE_DEBUG_POSTFIX) |
| | | |
| | | # Calculate a libtool-like version number |
| | | math(EXPR LT_CURRENT "${SDL_MICRO_VERSION} - ${SDL_INTERFACE_AGE}") |
| | |
| | | |
| | | # Default option knobs |
| | | if(APPLE OR ARCH_64) |
| | | set(OPT_DEF_SSEMATH ON) |
| | | if(NOT "${CMAKE_OSX_ARCHITECTURES}" MATCHES "arm") |
| | | set(OPT_DEF_SSEMATH ON) |
| | | endif() |
| | | endif() |
| | | if(UNIX OR MINGW OR MSYS) |
| | | set(OPT_DEF_LIBC ON) |
| | |
| | | #set(CMAKE_C_FLAGS "/ZI /WX- / |
| | | else() |
| | | set(OPT_DEF_ASM FALSE) |
| | | endif() |
| | | |
| | | if(USE_GCC OR USE_CLANG) |
| | | set(OPT_DEF_GCC_ATOMICS ON) |
| | | endif() |
| | | |
| | | # Default flags, if not set otherwise |
| | |
| | | add_definitions(-DUSING_GENERATED_CONFIG_H) |
| | | # General includes |
| | | include_directories(${SDL2_BINARY_DIR}/include ${SDL2_SOURCE_DIR}/include) |
| | | if(USE_GCC OR USE_CLANG) |
| | | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter ${SDL2_SOURCE_DIR}/src/video/khronos") |
| | | else() |
| | | include_directories(${SDL2_SOURCE_DIR}/src/video/khronos) |
| | | endif() |
| | | |
| | | # All these ENABLED_BY_DEFAULT vars will default to ON if not specified, so |
| | | # you only need to have a platform override them if they are disabling. |
| | |
| | | option_string(ASSERTIONS "Enable internal sanity checks (auto/disabled/release/enabled/paranoid)" "auto") |
| | | #set_option(DEPENDENCY_TRACKING "Use gcc -MMD -MT dependency tracking" ON) |
| | | set_option(LIBC "Use the system C library" ${OPT_DEF_LIBC}) |
| | | set_option(GCC_ATOMICS "Use gcc builtin atomics" ${USE_GCC}) |
| | | set_option(GCC_ATOMICS "Use gcc builtin atomics" ${OPT_DEF_GCC_ATOMICS}) |
| | | set_option(ASSEMBLY "Enable assembly routines" ${OPT_DEF_ASM}) |
| | | set_option(SSEMATH "Allow GCC to use SSE floating point math" ${OPT_DEF_SSEMATH}) |
| | | set_option(MMX "Use MMX assembly routines" ${OPT_DEF_ASM}) |
| | | set_option(3DNOW "Use 3Dnow! MMX assembly routines" ${OPT_DEF_ASM}) |
| | | set_option(SSE "Use SSE assembly routines" ${OPT_DEF_ASM}) |
| | | set_option(SSE2 "Use SSE2 assembly routines" ${OPT_DEF_SSEMATH}) |
| | | set_option(SSE3 "Use SSE3 assembly routines" ${OPT_DEF_SSEMATH}) |
| | | set_option(ALTIVEC "Use Altivec assembly routines" ${OPT_DEF_ASM}) |
| | | set_option(DISKAUDIO "Support the disk writer audio driver" ON) |
| | | set_option(DUMMYAUDIO "Support the dummy audio driver" ON) |
| | | set_option(VIDEO_DIRECTFB "Use DirectFB video driver" OFF) |
| | | dep_option(DIRECTFB_SHARED "Dynamically load directfb support" ON "VIDEO_DIRECTFB" OFF) |
| | | set_option(FUSIONSOUND "Use FusionSound audio driver" OFF) |
| | | dep_option(FUSIONSOUND_SHARED "Dynamically load fusionsound audio support" ON "FUSIONSOUND" OFF) |
| | | set_option(VIDEO_DUMMY "Use dummy video driver" ON) |
| | | set_option(VIDEO_OPENGL "Include OpenGL support" ON) |
| | | set_option(VIDEO_OPENGLES "Include OpenGL ES support" ON) |
| | |
| | | set_option(OSS "Support the OSS audio API" ${UNIX_SYS}) |
| | | set_option(ALSA "Support the ALSA audio API" ${UNIX_SYS}) |
| | | dep_option(ALSA_SHARED "Dynamically load ALSA audio support" ON "ALSA" OFF) |
| | | set_option(JACK "Support the JACK audio API" ${UNIX_SYS}) |
| | | dep_option(JACK_SHARED "Dynamically load JACK audio support" ON "JACK" OFF) |
| | | set_option(ESD "Support the Enlightened Sound Daemon" ${UNIX_SYS}) |
| | | dep_option(ESD_SHARED "Dynamically load ESD audio support" ON "ESD" OFF) |
| | | set_option(PULSEAUDIO "Use PulseAudio" ${UNIX_SYS}) |
| | |
| | | set_option(NAS "Support the NAS audio API" ${UNIX_SYS}) |
| | | set_option(NAS_SHARED "Dynamically load NAS audio API" ${UNIX_SYS}) |
| | | set_option(SNDIO "Support the sndio audio API" ${UNIX_SYS}) |
| | | set_option(FUSIONSOUND "Use FusionSound audio driver" OFF) |
| | | dep_option(FUSIONSOUND_SHARED "Dynamically load fusionsound audio support" ON "FUSIONSOUND" OFF) |
| | | set_option(LIBSAMPLERATE "Use libsamplerate for audio rate conversion" ${UNIX_SYS}) |
| | | dep_option(LIBSAMPLERATE_SHARED "Dynamically load libsamplerate" ON "LIBSAMPLERATE" OFF) |
| | | set_option(RPATH "Use an rpath when linking SDL" ${UNIX_SYS}) |
| | | set_option(CLOCK_GETTIME "Use clock_gettime() instead of gettimeofday()" OFF) |
| | | set_option(INPUT_TSLIB "Use the Touchscreen library for input" ${UNIX_SYS}) |
| | |
| | | set_option(DIRECTX "Use DirectX for Windows audio/video" ${WINDOWS}) |
| | | set_option(RENDER_D3D "Enable the Direct3D render driver" ${WINDOWS}) |
| | | set_option(VIDEO_VIVANTE "Use Vivante EGL video driver" ${UNIX_SYS}) |
| | | dep_option(VIDEO_VULKAN "Enable Vulkan support" ON "ANDROID OR APPLE OR LINUX OR WINDOWS" OFF) |
| | | set_option(VIDEO_KMSDRM "Use KMS DRM video driver" ${UNIX_SYS}) |
| | | dep_option(KMSDRM_SHARED "Dynamically load KMS DRM support" ON "VIDEO_KMSDRM" OFF) |
| | | |
| | | # TODO: We should (should we?) respect cmake's ${BUILD_SHARED_LIBS} flag here |
| | | # The options below are for compatibility to configure's default behaviour. |
| | |
| | | set(SDL_STATIC ON CACHE BOOL "Build a static version of the library") |
| | | |
| | | dep_option(SDL_STATIC_PIC "Static version of the library should be built with Position Independent Code" OFF "SDL_STATIC" OFF) |
| | | set_option(SDL_TEST "Build the test directory" OFF) |
| | | |
| | | # General source files |
| | | file(GLOB SOURCE_FILES |
| | |
| | | ${SDL2_SOURCE_DIR}/src/stdlib/*.c |
| | | ${SDL2_SOURCE_DIR}/src/thread/*.c |
| | | ${SDL2_SOURCE_DIR}/src/timer/*.c |
| | | ${SDL2_SOURCE_DIR}/src/video/*.c) |
| | | ${SDL2_SOURCE_DIR}/src/video/*.c |
| | | ${SDL2_SOURCE_DIR}/src/video/yuv2rgb/*.c) |
| | | |
| | | |
| | | if(ASSERTIONS STREQUAL "auto") |
| | |
| | | list(APPEND EXTRA_CFLAGS "-Wshadow") |
| | | endif() |
| | | |
| | | set(CMAKE_REQUIRED_FLAGS "-Wl,--no-undefined") |
| | | check_c_compiler_flag("" HAVE_NO_UNDEFINED) |
| | | set(CMAKE_REQUIRED_FLAGS ${ORIG_CMAKE_REQUIRED_FLAGS}) |
| | | if(HAVE_NO_UNDEFINED) |
| | | list(APPEND EXTRA_LDFLAGS "-Wl,--no-undefined") |
| | | if(APPLE) |
| | | list(APPEND EXTRA_LDFLAGS "-Wl,-undefined,error") |
| | | else() |
| | | set(CMAKE_REQUIRED_FLAGS "-Wl,--no-undefined") |
| | | check_c_compiler_flag("" HAVE_NO_UNDEFINED) |
| | | set(CMAKE_REQUIRED_FLAGS ${ORIG_CMAKE_REQUIRED_FLAGS}) |
| | | if(HAVE_NO_UNDEFINED) |
| | | list(APPEND EXTRA_LDFLAGS "-Wl,--no-undefined") |
| | | endif() |
| | | endif() |
| | | endif() |
| | | |
| | |
| | | set(CMAKE_REQUIRED_FLAGS ${ORIG_CMAKE_REQUIRED_FLAGS}) |
| | | endif() |
| | | |
| | | if(SSEMATH) |
| | | if(SSE OR SSE2) |
| | | if(SSE3) |
| | | set(CMAKE_REQUIRED_FLAGS "-msse3") |
| | | check_c_source_compiles(" |
| | | #ifdef __MINGW32__ |
| | | #include <_mingw.h> |
| | | #ifdef __MINGW64_VERSION_MAJOR |
| | | #include <intrin.h> |
| | | #else |
| | | #include <pmmintrin.h> |
| | | #endif |
| | | #else |
| | | #include <pmmintrin.h> |
| | | #endif |
| | | #ifndef __SSE3__ |
| | | #error Assembler CPP flag not enabled |
| | | #endif |
| | | int main(int argc, char **argv) { }" HAVE_SSE3) |
| | | if(HAVE_SSE3) |
| | | list(APPEND EXTRA_CFLAGS "-msse3") |
| | | endif() |
| | | set(CMAKE_REQUIRED_FLAGS ${ORIG_CMAKE_REQUIRED_FLAGS}) |
| | | endif() |
| | | |
| | | if(NOT SSEMATH) |
| | | if(SSE OR SSE2 OR SSE3) |
| | | if(USE_GCC) |
| | | list(APPEND EXTRA_CFLAGS "-mfpmath=387") |
| | | check_c_compiler_flag(-mfpmath=387 HAVE_FP_387) |
| | | if(HAVE_FP_387) |
| | | list(APPEND EXTRA_CFLAGS "-mfpmath=387") |
| | | endif() |
| | | endif() |
| | | set(HAVE_SSEMATH TRUE) |
| | | endif() |
| | | endif() |
| | | |
| | | check_include_file("immintrin.h" HAVE_IMMINTRIN_H) |
| | | |
| | | if(ALTIVEC) |
| | | set(CMAKE_REQUIRED_FLAGS "-maltivec") |
| | |
| | | endif() |
| | | set(HAVE_SSE TRUE) |
| | | set(HAVE_SSE2 TRUE) |
| | | set(HAVE_SSE3 TRUE) |
| | | set(SDL_ASSEMBLY_ROUTINES 1) |
| | | endif() |
| | | # TODO: |
| | | #else() |
| | | # if(USE_GCC OR USE_CLANG) |
| | | # list(APPEND EXTRA_CFLAGS "-mno-sse" "-mno-sse2" "-mno-mmx") |
| | | # list(APPEND EXTRA_CFLAGS "-mno-sse" "-mno-sse2" "-mno-sse3" "-mno-mmx") |
| | | # endif() |
| | | endif() |
| | | |
| | |
| | | if(LIBC) |
| | | if(WINDOWS AND NOT MINGW) |
| | | set(HAVE_LIBC TRUE) |
| | | foreach(_HEADER stdio.h string.h ctype.h math.h) |
| | | foreach(_HEADER stdio.h string.h wchar.h ctype.h math.h limits.h) |
| | | string(TOUPPER "HAVE_${_HEADER}" _UPPER) |
| | | string(REPLACE "." "_" _HAVE_H ${_UPPER}) |
| | | set(${_HAVE_H} 1) |
| | |
| | | set(HAVE_SIGNAL_H 1) |
| | | foreach(_FN |
| | | malloc calloc realloc free qsort abs memset memcpy memmove memcmp |
| | | wcslen wcscmp |
| | | strlen _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa |
| | | _ultoa strtol strtoul strtoll strtod atoi atof strcmp strncmp |
| | | _stricmp _strnicmp sscanf atan atan2 acos asin ceil copysign cos |
| | | cosf fabs floor log pow scalbn sin sinf sqrt sqrtf tan tanf) |
| | | _stricmp _strnicmp sscanf |
| | | acos acosf asin asinf atan atanf atan2 atan2f ceil ceilf |
| | | copysign copysignf cos cosf fabs fabsf floor floorf fmod fmodf |
| | | log logf log10 log10f pow powf scalbn scalbnf sin sinf sqrt sqrtf tan tanf) |
| | | string(TOUPPER ${_FN} _UPPER) |
| | | set(HAVE_${_UPPER} 1) |
| | | endforeach() |
| | |
| | | set(HAVE_LIBC TRUE) |
| | | check_include_file(sys/types.h HAVE_SYS_TYPES_H) |
| | | foreach(_HEADER |
| | | stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h |
| | | strings.h inttypes.h stdint.h ctype.h math.h iconv.h signal.h) |
| | | stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h limits.h |
| | | strings.h wchar.h inttypes.h stdint.h ctype.h math.h iconv.h signal.h libunwind.h) |
| | | string(TOUPPER "HAVE_${_HEADER}" _UPPER) |
| | | string(REPLACE "." "_" _HAVE_H ${_UPPER}) |
| | | check_include_file("${_HEADER}" ${_HAVE_H}) |
| | |
| | | foreach(_FN |
| | | strtod malloc calloc realloc free getenv setenv putenv unsetenv |
| | | qsort abs bcopy memset memcpy memmove memcmp strlen strlcpy strlcat |
| | | strdup _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa |
| | | _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa |
| | | _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull |
| | | atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp |
| | | vsscanf vsnprintf fseeko fseeko64 sigaction setjmp |
| | | nanosleep sysconf sysctlbyname |
| | | vsscanf vsnprintf fopen64 fseeko fseeko64 sigaction setjmp |
| | | nanosleep sysconf sysctlbyname getauxval poll |
| | | ) |
| | | string(TOUPPER ${_FN} _UPPER) |
| | | set(_HAVEVAR "HAVE_${_UPPER}") |
| | |
| | | if(ANDROID) |
| | | file(GLOB ANDROID_CORE_SOURCES ${SDL2_SOURCE_DIR}/src/core/android/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${ANDROID_CORE_SOURCES}) |
| | | |
| | | # SDL_spinlock.c Needs to be compiled in ARM mode. |
| | | # There seems to be no better way currently to set the ARM mode. |
| | | # see: https://issuetracker.google.com/issues/62264618 |
| | | # Another option would be to set ARM mode to all compiled files |
| | | check_c_compiler_flag(-marm HAVE_ARM_MODE) |
| | | if(HAVE_ARM_MODE) |
| | | set_source_files_properties(${SDL2_SOURCE_DIR}/src/atomic/SDL_spinlock.c PROPERTIES COMPILE_FLAGS -marm) |
| | | endif() |
| | | |
| | | file(GLOB ANDROID_MAIN_SOURCES ${SDL2_SOURCE_DIR}/src/main/android/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${ANDROID_MAIN_SOURCES}) |
| | | set(SDLMAIN_SOURCES ${SDLMAIN_SOURCES} ${ANDROID_MAIN_SOURCES}) |
| | | |
| | | if(SDL_AUDIO) |
| | | set(SDL_AUDIO_DRIVER_ANDROID 1) |
| | | file(GLOB ANDROID_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/android/*.c) |
| | |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${ANDROID_FILESYSTEM_SOURCES}) |
| | | set(HAVE_SDL_FILESYSTEM TRUE) |
| | | endif() |
| | | if(SDL_HAPTIC) |
| | | set(SDL_HAPTIC_ANDROID 1) |
| | | file(GLOB ANDROID_HAPTIC_SOURCES ${SDL2_SOURCE_DIR}/src/haptic/android/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${ANDROID_HAPTIC_SOURCES}) |
| | | set(HAVE_SDL_HAPTIC TRUE) |
| | | endif() |
| | | if(SDL_JOYSTICK) |
| | | set(SDL_JOYSTICK_ANDROID 1) |
| | | file(GLOB ANDROID_JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/android/*.c) |
| | | file(GLOB ANDROID_JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/android/*.c ${SDL2_SOURCE_DIR}/src/joystick/steam/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${ANDROID_JOYSTICK_SOURCES}) |
| | | set(HAVE_SDL_JOYSTICK TRUE) |
| | | endif() |
| | | if(SDL_LOADSO) |
| | | set(SDL_LOADSO_DLOPEN 1) |
| | | file(GLOB LOADSO_SOURCES ${SDL2_SOURCE_DIR}/src/loadso/dlopen/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${LOADSO_SOURCES}) |
| | | set(HAVE_SDL_LOADSO TRUE) |
| | | endif() |
| | | if(SDL_POWER) |
| | | set(SDL_POWER_ANDROID 1) |
| | |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${ANDROID_POWER_SOURCES}) |
| | | set(HAVE_SDL_POWER TRUE) |
| | | endif() |
| | | if(SDL_TIMERS) |
| | | set(SDL_TIMER_UNIX 1) |
| | | file(GLOB TIMER_SOURCES ${SDL2_SOURCE_DIR}/src/timer/unix/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${TIMER_SOURCES}) |
| | | set(HAVE_SDL_TIMERS TRUE) |
| | | endif() |
| | | if(SDL_VIDEO) |
| | | set(SDL_VIDEO_DRIVER_ANDROID 1) |
| | | file(GLOB ANDROID_VIDEO_SOURCES ${SDL2_SOURCE_DIR}/src/video/android/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${ANDROID_VIDEO_SOURCES}) |
| | | set(HAVE_SDL_VIDEO TRUE) |
| | | |
| | | # Core stuff |
| | | find_library(ANDROID_DL_LIBRARY dl) |
| | | find_library(ANDROID_LOG_LIBRARY log) |
| | | find_library(ANDROID_LIBRARY_LIBRARY android) |
| | | list(APPEND EXTRA_LIBS ${ANDROID_DL_LIBRARY} ${ANDROID_LOG_LIBRARY} ${ANDROID_LIBRARY_LIBRARY}) |
| | | add_definitions(-DGL_GLEXT_PROTOTYPES) |
| | | |
| | | #enable gles |
| | | if(VIDEO_OPENGLES) |
| | |
| | | set(HAVE_VIDEO_OPENGLES TRUE) |
| | | set(SDL_VIDEO_OPENGL_ES2 1) |
| | | set(SDL_VIDEO_RENDER_OGL_ES2 1) |
| | | |
| | | find_library(OpenGLES1_LIBRARY GLESv1_CM) |
| | | find_library(OpenGLES2_LIBRARY GLESv2) |
| | | list(APPEND EXTRA_LIBS ${OpenGLES1_LIBRARY} ${OpenGLES2_LIBRARY}) |
| | | endif() |
| | | |
| | | CHECK_C_SOURCE_COMPILES(" |
| | | #if defined(__ARM_ARCH) && __ARM_ARCH < 7 |
| | | #error Vulkan doesn't work on this configuration |
| | | #endif |
| | | int main() |
| | | { |
| | | return 0; |
| | | } |
| | | " VULKAN_PASSED_ANDROID_CHECKS) |
| | | if(NOT VULKAN_PASSED_ANDROID_CHECKS) |
| | | set(VIDEO_VULKAN OFF) |
| | | message(STATUS "Vulkan doesn't work on this configuration") |
| | | endif() |
| | | endif() |
| | | list(APPEND EXTRA_LDFLAGS "-Wl,--undefined=Java_org_libsdl_app_SDLActivity_nativeInit") |
| | | |
| | | CheckPTHREAD() |
| | | |
| | | endif() |
| | | |
| | | # Platform-specific options and settings |
| | |
| | | set(SDL_VIDEO_RENDER_OGL_ES2 1) |
| | | endif() |
| | | endif() |
| | | elseif(UNIX AND NOT APPLE) |
| | | elseif(UNIX AND NOT APPLE AND NOT ANDROID) |
| | | if(SDL_AUDIO) |
| | | if(SYSV5 OR SOLARIS OR HPUX) |
| | | set(SDL_AUDIO_DRIVER_SUNAUDIO 1) |
| | | file(GLOB SUN_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/sun/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${SUN_AUDIO_SOURCES}) |
| | | set(HAVE_SDL_AUDIO TRUE) |
| | | elseif(NETBSD OR OPENBSD) |
| | | set(SDL_AUDIO_DRIVER_BSD 1) |
| | | file(GLOB BSD_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/bsd/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${BSD_AUDIO_SOURCES}) |
| | | elseif(NETBSD) |
| | | set(SDL_AUDIO_DRIVER_NETBSD 1) |
| | | file(GLOB NETBSD_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/netbsd/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${NETBSD_AUDIO_SOURCES}) |
| | | set(HAVE_SDL_AUDIO TRUE) |
| | | elseif(AIX) |
| | | set(SDL_AUDIO_DRIVER_PAUDIO 1) |
| | |
| | | endif() |
| | | CheckOSS() |
| | | CheckALSA() |
| | | CheckJACK() |
| | | CheckPulseAudio() |
| | | CheckESD() |
| | | CheckARTS() |
| | | CheckNAS() |
| | | CheckSNDIO() |
| | | CheckFusionSound() |
| | | CheckLibSampleRate() |
| | | endif() |
| | | |
| | | if(SDL_VIDEO) |
| | |
| | | CheckOpenGLESX11() |
| | | CheckWayland() |
| | | CheckVivante() |
| | | CheckKMSDRM() |
| | | endif() |
| | | |
| | | if(UNIX) |
| | | file(GLOB CORE_UNIX_SOURCES ${SDL2_SOURCE_DIR}/src/core/unix/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${CORE_UNIX_SOURCES}) |
| | | endif() |
| | | |
| | | if(LINUX) |
| | |
| | | ioctl(0, KDGKBENT, &kbe); |
| | | }" HAVE_INPUT_KD) |
| | | |
| | | file(GLOB CORE_SOURCES ${SDL2_SOURCE_DIR}/src/core/linux/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${CORE_SOURCES}) |
| | | file(GLOB CORE_LINUX_SOURCES ${SDL2_SOURCE_DIR}/src/core/linux/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${CORE_LINUX_SOURCES}) |
| | | |
| | | if(HAVE_INPUT_EVENTS) |
| | | set(SDL_INPUT_LINUXEV 1) |
| | |
| | | endif() |
| | | |
| | | check_include_file("fcitx/frontend.h" HAVE_FCITX_FRONTEND_H) |
| | | |
| | | endif() |
| | | |
| | | if(INPUT_TSLIB) |
| | |
| | | CheckUSBHID() # seems to be BSD specific - limit the test to BSD only? |
| | | if(LINUX AND NOT ANDROID) |
| | | set(SDL_JOYSTICK_LINUX 1) |
| | | file(GLOB JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/linux/*.c) |
| | | file(GLOB JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/linux/*.c ${SDL2_SOURCE_DIR}/src/joystick/steam/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${JOYSTICK_SOURCES}) |
| | | set(HAVE_SDL_JOYSTICK TRUE) |
| | | endif() |
| | |
| | | |
| | | if(MSVC) |
| | | # Prevent codegen that would use the VC runtime libraries. |
| | | add_definitions(/GS-) |
| | | set_property(DIRECTORY . APPEND PROPERTY COMPILE_OPTIONS "/GS-") |
| | | if(NOT ARCH_64) |
| | | add_definitions(/arch:SSE) |
| | | set_property(DIRECTORY . APPEND PROPERTY COMPILE_OPTIONS "/arch:SSE") |
| | | endif() |
| | | endif() |
| | | |
| | |
| | | #include <windows.h> |
| | | #include <xinput.h> |
| | | int main(int argc, char **argv) { }" HAVE_XINPUT_H) |
| | | check_c_source_compiles(" |
| | | #include <windows.h> |
| | | #include <xinput.h> |
| | | XINPUT_GAMEPAD_EX x1; |
| | | int main(int argc, char **argv) { }" HAVE_XINPUT_GAMEPAD_EX) |
| | | check_c_source_compiles(" |
| | | #include <windows.h> |
| | | #include <xinput.h> |
| | | XINPUT_STATE_EX s1; |
| | | int main(int argc, char **argv) { }" HAVE_XINPUT_STATE_EX) |
| | | else() |
| | | check_include_file(xinput.h HAVE_XINPUT_H) |
| | | endif() |
| | |
| | | check_include_file(ddraw.h HAVE_DDRAW_H) |
| | | check_include_file(dsound.h HAVE_DSOUND_H) |
| | | check_include_file(dinput.h HAVE_DINPUT_H) |
| | | check_include_file(xaudio2.h HAVE_XAUDIO2_H) |
| | | check_include_file(mmdeviceapi.h HAVE_MMDEVICEAPI_H) |
| | | check_include_file(audioclient.h HAVE_AUDIOCLIENT_H) |
| | | check_include_file(dxgi.h HAVE_DXGI_H) |
| | | if(HAVE_D3D_H OR HAVE_D3D11_H OR HAVE_DDRAW_H OR HAVE_DSOUND_H OR HAVE_DINPUT_H OR HAVE_XAUDIO2_H) |
| | | if(HAVE_D3D_H OR HAVE_D3D11_H OR HAVE_DDRAW_H OR HAVE_DSOUND_H OR HAVE_DINPUT_H) |
| | | set(HAVE_DIRECTX TRUE) |
| | | if(NOT CMAKE_COMPILER_IS_MINGW AND NOT USE_WINSDK_DIRECTX) |
| | | # TODO: change $ENV{DXSDL_DIR} to get the path from the include checks |
| | |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${DSOUND_AUDIO_SOURCES}) |
| | | endif() |
| | | |
| | | if(HAVE_XAUDIO2_H) |
| | | set(SDL_AUDIO_DRIVER_XAUDIO2 1) |
| | | file(GLOB XAUDIO2_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/xaudio2/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${XAUDIO2_AUDIO_SOURCES}) |
| | | if(HAVE_AUDIOCLIENT_H AND HAVE_MMDEVICEAPI_H) |
| | | set(SDL_AUDIO_DRIVER_WASAPI 1) |
| | | file(GLOB WASAPI_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/wasapi/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${WASAPI_AUDIO_SOURCES}) |
| | | endif() |
| | | endif() |
| | | |
| | |
| | | list(APPEND SDL_LIBS "-lmingw32" "-lSDL2main" "-mwindows") |
| | | endif() |
| | | elseif(APPLE) |
| | | # TODO: rework this for proper MacOS X, iOS and Darwin support |
| | | # TODO: rework this all for proper MacOS X, iOS and Darwin support |
| | | |
| | | # We always need these libs on macOS at the moment. |
| | | # !!! FIXME: we need Carbon for some very old API calls in |
| | | # !!! FIXME: src/video/cocoa/SDL_cocoakeyboard.c, but we should figure out |
| | | # !!! FIXME: how to dump those. |
| | | if(NOT IOS) |
| | | set(SDL_FRAMEWORK_COCOA 1) |
| | | set(SDL_FRAMEWORK_CARBON 1) |
| | | endif() |
| | | |
| | | # Requires the darwin file implementation |
| | | if(SDL_FILE) |
| | | file(GLOB EXTRA_SOURCES ${SDL2_SOURCE_DIR}/src/file/cocoa/*.m) |
| | | set(SOURCE_FILES ${EXTRA_SOURCES} ${SOURCE_FILES}) |
| | | # !!! FIXME: modern CMake doesn't need "LANGUAGE C" for Objective-C. |
| | | set_source_files_properties(${EXTRA_SOURCES} PROPERTIES LANGUAGE C) |
| | | set(HAVE_SDL_FILE TRUE) |
| | | set(SDL_FRAMEWORK_COCOA 1) |
| | | # !!! FIXME: why is COREVIDEO inside this if() block? |
| | | set(SDL_FRAMEWORK_COREVIDEO 1) |
| | | else() |
| | | message_error("SDL_FILE must be enabled to build on MacOS X") |
| | |
| | | if(SDL_AUDIO) |
| | | set(SDL_AUDIO_DRIVER_COREAUDIO 1) |
| | | file(GLOB AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/coreaudio/*.m) |
| | | # !!! FIXME: modern CMake doesn't need "LANGUAGE C" for Objective-C. |
| | | set_source_files_properties(${AUDIO_SOURCES} PROPERTIES LANGUAGE C) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${AUDIO_SOURCES}) |
| | | set(HAVE_SDL_AUDIO TRUE) |
| | | set(SDL_FRAMEWORK_COREAUDIO 1) |
| | |
| | | if(SDL_JOYSTICK) |
| | | set(SDL_JOYSTICK_IOKIT 1) |
| | | if (IOS) |
| | | file(GLOB JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/iphoneos/*.m) |
| | | file(GLOB JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/iphoneos/*.m ${SDL2_SOURCE_DIR}/src/joystick/steam/*.c) |
| | | else() |
| | | file(GLOB JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/darwin/*.c) |
| | | endif() |
| | |
| | | if(SDL_HAPTIC) |
| | | set(SDL_HAPTIC_IOKIT 1) |
| | | if (IOS) |
| | | file(GLOB POWER_SOURCES ${SDL2_SOURCE_DIR}/src/power/dummy/*.c) |
| | | file(GLOB HAPTIC_SOURCES ${SDL2_SOURCE_DIR}/src/haptic/dummy/*.c) |
| | | set(SDL_HAPTIC_DUMMY 1) |
| | | else() |
| | | file(GLOB HAPTIC_SOURCES ${SDL2_SOURCE_DIR}/src/haptic/darwin/*.c) |
| | |
| | | endif() |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${POWER_SOURCES}) |
| | | set(HAVE_SDL_POWER TRUE) |
| | | set(SDL_FRAMEWORK_CARBON 1) |
| | | set(SDL_FRAMEWORK_IOKIT 1) |
| | | endif() |
| | | |
| | |
| | | if(SDL_FILESYSTEM) |
| | | set(SDL_FILESYSTEM_COCOA 1) |
| | | file(GLOB FILESYSTEM_SOURCES ${SDL2_SOURCE_DIR}/src/filesystem/cocoa/*.m) |
| | | # !!! FIXME: modern CMake doesn't need "LANGUAGE C" for Objective-C. |
| | | set_source_files_properties(${FILESYSTEM_SOURCES} PROPERTIES LANGUAGE C) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${FILESYSTEM_SOURCES}) |
| | | set(HAVE_SDL_FILESYSTEM TRUE) |
| | |
| | | set(SDL_VIDEO_RENDER_OGL 1) |
| | | set(HAVE_VIDEO_OPENGL TRUE) |
| | | endif() |
| | | |
| | | if(VIDEO_OPENGLES) |
| | | set(SDL_VIDEO_OPENGL_EGL 1) |
| | | set(SDL_VIDEO_OPENGL_ES2 1) |
| | | set(SDL_VIDEO_RENDER_OGL_ES2 1) |
| | | set(HAVE_VIDEO_OPENGLES TRUE) |
| | | endif() |
| | | endif() |
| | | endif() |
| | | |
| | |
| | | endif() |
| | | |
| | | CheckPTHREAD() |
| | | endif() |
| | | |
| | | if(VIDEO_VULKAN) |
| | | set(SDL_VIDEO_VULKAN 1) |
| | | endif() |
| | | |
| | | # Dummies |
| | |
| | | |
| | | # Always build SDLmain |
| | | add_library(SDL2main STATIC ${SDLMAIN_SOURCES}) |
| | | target_include_directories(SDL2main PUBLIC $<INSTALL_INTERFACE:include>) |
| | | set(_INSTALL_LIBS "SDL2main") |
| | | if (NOT ANDROID) |
| | | set_target_properties(SDL2main PROPERTIES DEBUG_POSTFIX ${SDL_CMAKE_DEBUG_POSTFIX}) |
| | | endif() |
| | | |
| | | if(SDL_SHARED) |
| | | add_library(SDL2 SHARED ${SOURCE_FILES} ${VERSION_SOURCES}) |
| | | if(UNIX) |
| | | if(APPLE) |
| | | set_target_properties(SDL2 PROPERTIES MACOSX_RPATH 1) |
| | | elseif(UNIX AND NOT ANDROID) |
| | | set_target_properties(SDL2 PROPERTIES |
| | | VERSION ${LT_VERSION} |
| | | SOVERSION ${LT_REVISION} |
| | |
| | | SOVERSION ${LT_REVISION} |
| | | OUTPUT_NAME "SDL2") |
| | | endif() |
| | | if(MSVC) |
| | | if(MSVC AND NOT LIBC) |
| | | # Don't try to link with the default set of libraries. |
| | | set_target_properties(SDL2 PROPERTIES LINK_FLAGS_RELEASE "/NODEFAULTLIB") |
| | | set_target_properties(SDL2 PROPERTIES LINK_FLAGS_DEBUG "/NODEFAULTLIB") |
| | |
| | | endif() |
| | | set(_INSTALL_LIBS "SDL2" ${_INSTALL_LIBS}) |
| | | target_link_libraries(SDL2 ${EXTRA_LIBS} ${EXTRA_LDFLAGS}) |
| | | target_include_directories(SDL2 PUBLIC $<INSTALL_INTERFACE:include>) |
| | | if (NOT ANDROID) |
| | | set_target_properties(SDL2 PROPERTIES DEBUG_POSTFIX ${SDL_CMAKE_DEBUG_POSTFIX}) |
| | | endif() |
| | | endif() |
| | | |
| | | if(SDL_STATIC) |
| | | set (BUILD_SHARED_LIBS FALSE) |
| | | add_library(SDL2-static STATIC ${SOURCE_FILES}) |
| | | set_target_properties(SDL2-static PROPERTIES OUTPUT_NAME "SDL2") |
| | | if (NOT SDL_SHARED OR NOT WIN32) |
| | | set_target_properties(SDL2-static PROPERTIES OUTPUT_NAME "SDL2") |
| | | # Note: Apparently, OUTPUT_NAME must really be unique; even when |
| | | # CMAKE_IMPORT_LIBRARY_SUFFIX or the like are given. Otherwise |
| | | # the static build may race with the import lib and one will get |
| | | # clobbered, when the suffix is realized via subsequent rename. |
| | | endif() |
| | | set_target_properties(SDL2-static PROPERTIES POSITION_INDEPENDENT_CODE ${SDL_STATIC_PIC}) |
| | | if(MSVC) |
| | | if(MSVC AND NOT LIBC) |
| | | set_target_properties(SDL2-static PROPERTIES LINK_FLAGS_RELEASE "/NODEFAULTLIB") |
| | | set_target_properties(SDL2-static PROPERTIES LINK_FLAGS_DEBUG "/NODEFAULTLIB") |
| | | set_target_properties(SDL2-static PROPERTIES STATIC_LIBRARY_FLAGS "/NODEFAULTLIB") |
| | |
| | | # libraries - do we need to consider this? |
| | | set(_INSTALL_LIBS "SDL2-static" ${_INSTALL_LIBS}) |
| | | target_link_libraries(SDL2-static ${EXTRA_LIBS} ${EXTRA_LDFLAGS}) |
| | | target_include_directories(SDL2-static PUBLIC $<INSTALL_INTERFACE:include>) |
| | | if (NOT ANDROID) |
| | | set_target_properties(SDL2-static PROPERTIES DEBUG_POSTFIX ${SDL_CMAKE_DEBUG_POSTFIX}) |
| | | endif() |
| | | endif() |
| | | |
| | | ##### Tests ##### |
| | | |
| | | if(SDL_TEST) |
| | | file(GLOB TEST_SOURCES ${SDL2_SOURCE_DIR}/src/test/*.c) |
| | | add_library(SDL2_test STATIC ${TEST_SOURCES}) |
| | | |
| | | add_subdirectory(test) |
| | | endif() |
| | | |
| | | ##### Installation targets ##### |
| | | install(TARGETS ${_INSTALL_LIBS} |
| | | install(TARGETS ${_INSTALL_LIBS} EXPORT SDL2Targets |
| | | LIBRARY DESTINATION "lib${LIB_SUFFIX}" |
| | | ARCHIVE DESTINATION "lib${LIB_SUFFIX}" |
| | | RUNTIME DESTINATION bin) |
| | | |
| | | ##### Export files ##### |
| | | if (APPLE) |
| | | set(PKG_PREFIX "SDL2.framework/Resources") |
| | | elseif (WINDOWS) |
| | | set(PKG_PREFIX "cmake") |
| | | else () |
| | | set(PKG_PREFIX "lib/cmake/SDL2") |
| | | endif () |
| | | |
| | | include(CMakePackageConfigHelpers) |
| | | write_basic_package_version_file("${CMAKE_BINARY_DIR}/SDL2ConfigVersion.cmake" |
| | | VERSION ${SDL_VERSION} |
| | | COMPATIBILITY AnyNewerVersion |
| | | ) |
| | | |
| | | install(EXPORT SDL2Targets |
| | | FILE SDL2Targets.cmake |
| | | NAMESPACE SDL2:: |
| | | DESTINATION ${PKG_PREFIX} |
| | | ) |
| | | install( |
| | | FILES |
| | | ${CMAKE_CURRENT_SOURCE_DIR}/SDL2Config.cmake |
| | | ${CMAKE_BINARY_DIR}/SDL2ConfigVersion.cmake |
| | | DESTINATION ${PKG_PREFIX} |
| | | COMPONENT Devel |
| | | ) |
| | | |
| | | file(GLOB INCLUDE_FILES ${SDL2_SOURCE_DIR}/include/*.h) |
| | | file(GLOB BIN_INCLUDE_FILES ${SDL2_BINARY_DIR}/include/*.h) |
| | |
| | | else() |
| | | set(SOEXT "so") |
| | | endif() |
| | | install(CODE " |
| | | execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink |
| | | \"libSDL2-2.0.${SOEXT}\" \"libSDL2.${SOEXT}\")") |
| | | install(FILES ${SDL2_BINARY_DIR}/libSDL2.${SOEXT} DESTINATION "lib${LIB_SUFFIX}") |
| | | if(NOT ANDROID) |
| | | install(CODE " |
| | | execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink |
| | | \"libSDL2-2.0.${SOEXT}\" \"libSDL2.${SOEXT}\")") |
| | | install(FILES ${SDL2_BINARY_DIR}/libSDL2.${SOEXT} DESTINATION "lib${LIB_SUFFIX}") |
| | | endif() |
| | | endif() |
| | | if(FREEBSD) |
| | | # FreeBSD uses ${PREFIX}/libdata/pkgconfig |
| | |
| | | |
| | | ##### Uninstall target ##### |
| | | |
| | | configure_file( |
| | | "${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" |
| | | "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" |
| | | IMMEDIATE @ONLY) |
| | | if(NOT TARGET uninstall) |
| | | configure_file( |
| | | "${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" |
| | | "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" |
| | | IMMEDIATE @ONLY) |
| | | |
| | | add_custom_target(uninstall |
| | | COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake) |
| | | add_custom_target(uninstall |
| | | COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake) |
| | | endif() |
| | |
| | |
|
| | | Simple DirectMedia Layer
|
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org>
|
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
|
| | |
|
| | | This software is provided 'as-is', without any express or implied
|
| | | warranty. In no event will the authors be held liable for any damages
|
| | |
| | | * Read VisualC.html
|
| | |
|
| | | Windows with gcc, either native or cross-compiling:
|
| | | * Read the FAQ at http://wiki.libsdl.org/moin.fcg/FAQWindows
|
| | | * Read the FAQ at https://wiki.libsdl.org/moin.fcg/FAQWindows
|
| | | * Run './configure; make; make install'
|
| | |
|
| | | Mac OS X with Xcode:
|
| | |
| | | * Read docs/README-cmake.md
|
| | |
|
| | | 2. Look at the example programs in ./test, and check out the online
|
| | | documentation at http://wiki.libsdl.org/
|
| | | documentation at https://wiki.libsdl.org/
|
| | |
|
| | | 3. Join the SDL developer mailing list by sending E-mail to
|
| | | sdl-request@libsdl.org
|
| | | and put "subscribe" in the subject of the message.
|
| | |
|
| | | Or alternatively you can use the web interface:
|
| | | http://www.libsdl.org/mailing-list.php
|
| | | https://www.libsdl.org/mailing-list.php
|
| | |
|
| | | That's it!
|
| | | Sam Lantinga <slouken@libsdl.org>
|
| | |
| | | GEN_OBJECTS = @GEN_OBJECTS@ |
| | | VERSION_OBJECTS = @VERSION_OBJECTS@ |
| | | |
| | | SDLMAIN_TARGET = libSDL2main.a |
| | | SDLMAIN_TARGET = libSDL2main.la |
| | | SDLMAIN_OBJECTS = @SDLMAIN_OBJECTS@ |
| | | |
| | | SDLTEST_TARGET = libSDL2_test.a |
| | | SDLTEST_TARGET = libSDL2_test.la |
| | | SDLTEST_OBJECTS = @SDLTEST_OBJECTS@ |
| | | |
| | | WAYLAND_SCANNER = @WAYLAND_SCANNER@ |
| | | |
| | | SRC_DIST = *.txt acinclude Android.mk autogen.sh android-project build-scripts cmake cmake_uninstall.cmake.in configure configure.in debian docs include Makefile.* sdl2-config.cmake.in sdl2-config.in sdl2.m4 sdl2.pc.in SDL2.spec.in src test VisualC.html VisualC VisualC-WinRT Xcode Xcode-iOS |
| | | SRC_DIST = *.txt acinclude Android.mk autogen.sh android-project build-scripts cmake cmake_uninstall.cmake.in configure configure.in debian docs include Makefile.* sdl2-config.cmake.in sdl2-config.in sdl2.m4 sdl2.pc.in SDL2.spec.in SDL2Config.cmake src test VisualC.html VisualC VisualC-WinRT Xcode Xcode-iOS |
| | | GEN_DIST = SDL2.spec |
| | | |
| | | ifneq ($V,1) |
| | |
| | | SDL_types.h \ |
| | | SDL_version.h \ |
| | | SDL_video.h \ |
| | | SDL_vulkan.h \ |
| | | begin_code.h \ |
| | | close_code.h |
| | | |
| | |
| | | LT_CURRENT = @LT_CURRENT@ |
| | | LT_RELEASE = @LT_RELEASE@ |
| | | LT_REVISION = @LT_REVISION@ |
| | | LT_LDFLAGS = -no-undefined -rpath $(DESTDIR)$(libdir) -release $(LT_RELEASE) -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) |
| | | LT_LDFLAGS = -no-undefined -rpath $(libdir) -release $(LT_RELEASE) -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) |
| | | |
| | | all: $(srcdir)/configure Makefile $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET) |
| | | |
| | | $(srcdir)/configure: $(srcdir)/configure.in |
| | | @echo "Warning, configure.in is out of date" |
| | | #(cd $(srcdir) && sh autogen.sh && sh configure) |
| | | @sleep 3 |
| | | @echo "Warning, configure is out of date, please re-run autogen.sh" |
| | | |
| | | Makefile: $(srcdir)/Makefile.in |
| | | $(SHELL) config.status $@ |
| | |
| | | $(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -o $@ $(OBJECTS) $(GEN_OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS) |
| | | |
| | | $(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS) |
| | | $(RUN_CMD_AR)$(AR) cru $@ $(SDLMAIN_OBJECTS) |
| | | $(RUN_CMD_RANLIB)$(RANLIB) $@ |
| | | $(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -static -o $@ $(SDLMAIN_OBJECTS) -rpath $(libdir) |
| | | |
| | | $(objects)/$(SDLTEST_TARGET): $(SDLTEST_OBJECTS) |
| | | $(RUN_CMD_AR)$(AR) cru $@ $(SDLTEST_OBJECTS) |
| | | $(RUN_CMD_RANLIB)$(RANLIB) $@ |
| | | $(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -static -o $@ $(SDLTEST_OBJECTS) -rpath $(libdir) |
| | | |
| | | install: all install-bin install-hdrs install-lib install-data |
| | | install-bin: |
| | |
| | | install-lib: $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET) |
| | | $(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir) |
| | | $(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(TARGET) $(DESTDIR)$(libdir)/$(TARGET) |
| | | $(INSTALL) -m 644 $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET) |
| | | $(RANLIB) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET) |
| | | $(INSTALL) -m 644 $(objects)/$(SDLTEST_TARGET) $(DESTDIR)$(libdir)/$(SDLTEST_TARGET) |
| | | $(RANLIB) $(DESTDIR)$(libdir)/$(SDLTEST_TARGET) |
| | | $(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET) |
| | | $(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(SDLTEST_TARGET) $(DESTDIR)$(libdir)/$(SDLTEST_TARGET) |
| | | install-data: |
| | | $(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(datadir)/aclocal |
| | | $(INSTALL) -m 644 $(srcdir)/sdl2.m4 $(DESTDIR)$(datadir)/aclocal/sdl2.m4 |
| | |
| | | |
| | | CFLAGS = -O3 -march=armv7-a -mcpu=cortex-a8 -mtune=cortex-a8 -mfloat-abi=softfp \ |
| | | -mfpu=neon -ftree-vectorize -ffast-math -fomit-frame-pointer -fno-strict-aliasing -fsingle-precision-constant \ |
| | | -I./include -I$(PNDSDK)/usr/include -DSDL_REVISION=0 |
| | | -I./include -I$(PNDSDK)/usr/include |
| | | |
| | | TARGET = libSDL.a |
| | | |
| | |
| | | |
| | | OBJECTS = $(shell echo $(SOURCES) | sed -e 's,\.c,\.o,g') |
| | | |
| | | CONFIG_H = $(shell cp include/SDL_config_pandora.h include/SDL_config.h && touch include/SDL_revision.h) |
| | | CONFIG_H = $(shell cp include/SDL_config_pandora.h include/SDL_config.h) |
| | | |
| | | all: $(TARGET) |
| | | |
| | |
| | | and emulators.
|
| | |
|
| | | The Simple DirectMedia Layer library source code is available from:
|
| | | http://www.libsdl.org/
|
| | | https://www.libsdl.org/
|
| | |
|
| | | This library is distributed under the terms of the zlib license:
|
| | | http://www.zlib.net/zlib_license.html
|
| | |
| | | Version 2.0
|
| | |
|
| | | ---
|
| | | http://www.libsdl.org/
|
| | | https://www.libsdl.org/
|
| | |
|
| | | Simple DirectMedia Layer is a cross-platform development library designed
|
| | | to provide low level access to audio, keyboard, mouse, joystick, and graphics
|
| New file |
| | |
| | | include("${CMAKE_CURRENT_LIST_DIR}/SDL2Targets.cmake") |
| | |
| | | <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
| | |
|
| | | <PropertyGroup>
|
| | | <LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'Windows' and '$(TargetPlatformVersion)' == '8.0'">WinRT80</LibSDL2-DeviceType>
|
| | | <LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'Windows' and '$(TargetPlatformVersion)' == '8.1'">WinRT81</LibSDL2-DeviceType>
|
| | | <LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'Windows Phone' and '$(TargetPlatformVersion)' == '8.0'">WinPhone80</LibSDL2-DeviceType>
|
| | | <LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'WindowsPhoneApp' and '$(TargetPlatformVersion)' == '8.1'">WinPhone81</LibSDL2-DeviceType>
|
| New file |
| | |
| | | 
|
| | | Microsoft Visual Studio Solution File, Format Version 12.00
|
| | | # Visual Studio 14
|
| | | VisualStudioVersion = 14.0.25420.1
|
| | | MinimumVisualStudioVersion = 10.0.40219.1
|
| | | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2-UWP", "SDL-UWP.vcxproj", "{89E9B32E-A86A-47C3-A948-D2B1622925CE}"
|
| | | EndProject
|
| | | Global
|
| | | GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
| | | Debug|ARM = Debug|ARM
|
| | | Debug|x64 = Debug|x64
|
| | | Debug|x86 = Debug|x86
|
| | | Release|ARM = Release|ARM
|
| | | Release|x64 = Release|x64
|
| | | Release|x86 = Release|x86
|
| | | EndGlobalSection
|
| | | GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM.ActiveCfg = Debug|ARM
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM.Build.0 = Debug|ARM
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x64.ActiveCfg = Debug|x64
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x64.Build.0 = Debug|x64
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x86.ActiveCfg = Debug|Win32
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x86.Build.0 = Debug|Win32
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM.ActiveCfg = Release|ARM
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM.Build.0 = Release|ARM
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x64.ActiveCfg = Release|x64
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x64.Build.0 = Release|x64
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x86.ActiveCfg = Release|Win32
|
| | | {89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x86.Build.0 = Release|Win32
|
| | | EndGlobalSection
|
| | | GlobalSection(SolutionProperties) = preSolution
|
| | | HideSolutionNode = FALSE
|
| | | EndGlobalSection
|
| | | EndGlobal
|
| | |
| | | <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h" />
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2.h" />
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.h" />
|
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_xinput.h" />
|
| | |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_windowsjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_xinputjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h" />
|
| | | <ClInclude Include="..\..\src\render\mmx.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h" />
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h" />
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_shaders_gles2.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_d3dmath.h" />
|
| | |
| | | <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
| | | <ClInclude Include="..\..\src\SDL_assert_c.h" />
|
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h" />
|
| | | <ClInclude Include="..\..\src\SDL_error_c.h" />
|
| | | <ClInclude Include="..\..\src\SDL_fatal.h" />
|
| | | <ClInclude Include="..\..\src\SDL_hints_c.h" />
|
| | |
| | | <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtevents_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtgamebar_cpp.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtmessagebox.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtmouse_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtopengles.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtvideo_cpp.h" />
|
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h" />
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\src\atomic\SDL_atomic.c" />
|
| | |
| | | <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" />
|
| | | <ClCompile Include="..\..\src\audio\SDL_mixer.c" />
|
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.cpp">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_winrt.cpp">
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
| | |
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c" />
|
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_render.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
| | | <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" />
|
| | | <ClCompile Include="..\..\src\render\software\SDL_blendline.c" />
|
| | |
| | | <ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
|
| | | <ClCompile Include="..\..\src\SDL.c" />
|
| | | <ClCompile Include="..\..\src\SDL_assert.c" />
|
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c" />
|
| | | <ClCompile Include="..\..\src\SDL_error.c" />
|
| | | <ClCompile Include="..\..\src\SDL_hints.c" />
|
| | | <ClCompile Include="..\..\src\SDL_log.c" />
|
| | |
| | | <ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_surface.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_video.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
| | | <ClCompile Include="..\..\src\video\winrt\SDL_winrtevents.cpp">
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
| | |
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c" />
|
| | | </ItemGroup>
|
| | | <PropertyGroup Label="Globals">
|
| | | <ProjectGuid>{89e9b32e-a86a-47c3-a948-d2b1622925ce}</ProjectGuid>
|
| | |
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_directx.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | |
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\mmx.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h">
|
| | |
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtvideo_cpp.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2.h">
|
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtgamebar_cpp.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | </ItemGroup>
|
| | |
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.cpp">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_winrt.cpp">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\core\windows\SDL_windows.c">
|
| | |
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_render.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c">
|
| | |
| | | <ClCompile Include="..\..\src\video\winrt\SDL_winrtvideo.cpp">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" />
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" />
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_xinputhaptic.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\winrt\SDL_winrtgamebar.cpp">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_xinputhaptic.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | </ItemGroup>
|
| | | </Project> |
| New file |
| | |
| | | 
|
| | | Microsoft Visual Studio Solution File, Format Version 12.00
|
| | | # Visual Studio 2013
|
| | | VisualStudioVersion = 12.0.40629.0
|
| | | MinimumVisualStudioVersion = 10.0.40219.1
|
| | | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2-WinPhone81", "SDL-WinPhone81.vcxproj", "{48FADC0E-964D-4DAB-BCED-372E0AD19577}"
|
| | | EndProject
|
| | | Global
|
| | | GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
| | | Debug|ARM = Debug|ARM
|
| | | Debug|Win32 = Debug|Win32
|
| | | Release|ARM = Release|ARM
|
| | | Release|Win32 = Release|Win32
|
| | | EndGlobalSection
|
| | | GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|ARM.ActiveCfg = Debug|ARM
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|ARM.Build.0 = Debug|ARM
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|Win32.ActiveCfg = Debug|Win32
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|Win32.Build.0 = Debug|Win32
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|ARM.ActiveCfg = Release|ARM
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|ARM.Build.0 = Release|ARM
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|Win32.ActiveCfg = Release|Win32
|
| | | {48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|Win32.Build.0 = Release|Win32
|
| | | EndGlobalSection
|
| | | GlobalSection(SolutionProperties) = preSolution
|
| | | HideSolutionNode = FALSE
|
| | | EndGlobalSection
|
| | | EndGlobal
|
| | |
| | | <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h" />
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.h" />
|
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
|
| | | <ClInclude Include="..\..\src\core\winrt\SDL_winrtapp_common.h" />
|
| | | <ClInclude Include="..\..\src\core\winrt\SDL_winrtapp_direct3d.h" />
|
| | |
| | | <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_xinputjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h" />
|
| | | <ClInclude Include="..\..\src\render\mmx.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h" />
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h" />
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_shaders_gles2.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_d3dmath.h" />
|
| | |
| | | <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
| | | <ClInclude Include="..\..\src\SDL_assert_c.h" />
|
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h" />
|
| | | <ClInclude Include="..\..\src\SDL_error_c.h" />
|
| | | <ClInclude Include="..\..\src\SDL_fatal.h" />
|
| | | <ClInclude Include="..\..\src\SDL_hints_c.h" />
|
| | |
| | | <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtevents_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtgamebar_cpp.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtmessagebox.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtmouse_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtopengles.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtvideo_cpp.h" />
|
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h" />
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\src\atomic\SDL_atomic.c" />
|
| | |
| | | <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" />
|
| | | <ClCompile Include="..\..\src\audio\SDL_mixer.c" />
|
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.cpp">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_winrt.cpp">
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
| | |
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c" />
|
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_render.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
| | | <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" />
|
| | | <ClCompile Include="..\..\src\render\software\SDL_blendline.c" />
|
| | |
| | | <ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
|
| | | <ClCompile Include="..\..\src\SDL.c" />
|
| | | <ClCompile Include="..\..\src\SDL_assert.c" />
|
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c" />
|
| | | <ClCompile Include="..\..\src\SDL_error.c" />
|
| | | <ClCompile Include="..\..\src\SDL_hints.c" />
|
| | | <ClCompile Include="..\..\src\SDL_log.c" />
|
| | |
| | | <ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_surface.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_video.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
| | | <ClCompile Include="..\..\src\video\winrt\SDL_winrtevents.cpp">
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
| | |
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c" />
|
| | | </ItemGroup>
|
| | | <PropertyGroup Label="Globals">
|
| | | <ProjectGuid>{48fadc0e-964d-4dab-bced-372e0ad19577}</ProjectGuid>
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;xaudio2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;mmdevapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;xaudio2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;mmdevapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;xaudio2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;mmdevapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;xaudio2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>DXGI.lib;d3d11.lib;mmdevapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
| | |
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.h">
|
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h">
|
| | |
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\mmx.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h">
|
| | |
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtgamebar_cpp.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h" />
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\src\atomic\SDL_atomic.c">
|
| | |
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.cpp">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_winrt.cpp">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\core\windows\SDL_windows.c">
|
| | |
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_render.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c">
|
| | |
| | | <ClCompile Include="..\..\src\video\winrt\SDL_winrtgamebar.cpp">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c" />
|
| | | </ItemGroup>
|
| | | </Project> |
| New file |
| | |
| | | 
|
| | | Microsoft Visual Studio Solution File, Format Version 12.00
|
| | | # Visual Studio 2013
|
| | | VisualStudioVersion = 12.0.40629.0
|
| | | MinimumVisualStudioVersion = 10.0.40219.1
|
| | | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2-WinRT81", "SDL-WinRT81.vcxproj", "{C8DF6173-06A1-4F56-A9BC-2002596B30E9}"
|
| | | EndProject
|
| | | Global
|
| | | GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
| | | Debug|ARM = Debug|ARM
|
| | | Debug|Win32 = Debug|Win32
|
| | | Debug|x64 = Debug|x64
|
| | | Release|ARM = Release|ARM
|
| | | Release|Win32 = Release|Win32
|
| | | Release|x64 = Release|x64
|
| | | EndGlobalSection
|
| | | GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Debug|ARM.ActiveCfg = Debug|ARM
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Debug|ARM.Build.0 = Debug|ARM
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Debug|Win32.ActiveCfg = Debug|Win32
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Debug|Win32.Build.0 = Debug|Win32
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Debug|x64.ActiveCfg = Debug|x64
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Debug|x64.Build.0 = Debug|x64
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Release|ARM.ActiveCfg = Release|ARM
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Release|ARM.Build.0 = Release|ARM
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Release|Win32.ActiveCfg = Release|Win32
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Release|Win32.Build.0 = Release|Win32
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Release|x64.ActiveCfg = Release|x64
|
| | | {C8DF6173-06A1-4F56-A9BC-2002596B30E9}.Release|x64.Build.0 = Release|x64
|
| | | EndGlobalSection
|
| | | GlobalSection(SolutionProperties) = preSolution
|
| | | HideSolutionNode = FALSE
|
| | | EndGlobalSection
|
| | | EndGlobal
|
| | |
| | | <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h" />
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.h" />
|
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_xinput.h" />
|
| | |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_windowsjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_xinputjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h" />
|
| | | <ClInclude Include="..\..\src\render\mmx.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h" />
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h" />
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_shaders_gles2.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_d3dmath.h" />
|
| | |
| | | <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
| | | <ClInclude Include="..\..\src\SDL_assert_c.h" />
|
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h" />
|
| | | <ClInclude Include="..\..\src\SDL_error_c.h" />
|
| | | <ClInclude Include="..\..\src\SDL_fatal.h" />
|
| | | <ClInclude Include="..\..\src\SDL_hints_c.h" />
|
| | |
| | | <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtevents_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtgamebar_cpp.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtmessagebox.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtmouse_c.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtopengles.h" />
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtvideo_cpp.h" />
|
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h" />
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\src\atomic\SDL_atomic.c" />
|
| | |
| | | <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" />
|
| | | <ClCompile Include="..\..\src\audio\SDL_mixer.c" />
|
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.cpp">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_winrt.cpp">
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
| | |
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c" />
|
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_render.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
| | | <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" />
|
| | | <ClCompile Include="..\..\src\render\software\SDL_blendline.c" />
|
| | |
| | | <ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
|
| | | <ClCompile Include="..\..\src\SDL.c" />
|
| | | <ClCompile Include="..\..\src\SDL_assert.c" />
|
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c" />
|
| | | <ClCompile Include="..\..\src\SDL_error.c" />
|
| | | <ClCompile Include="..\..\src\SDL_hints.c" />
|
| | | <ClCompile Include="..\..\src\SDL_log.c" />
|
| | |
| | | <ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_surface.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_video.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
| | | <ClCompile Include="..\..\src\video\winrt\SDL_winrtevents.cpp">
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
| | |
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
| | | <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c" />
|
| | | </ItemGroup>
|
| | | <PropertyGroup Label="Globals">
|
| | | <ProjectGuid>{c8df6173-06a1-4f56-a9bc-2002596b30e9}</ProjectGuid>
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>xinput.lib;xaudio2.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>xinput.lib;mmdevapi.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>xinput.lib;xaudio2.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>xinput.lib;mmdevapi.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>xinput.lib;xaudio2.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>xinput.lib;mmdevapi.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>xinput.lib;xaudio2.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>xinput.lib;mmdevapi.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>xinput.lib;xaudio2.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>xinput.lib;mmdevapi.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
| | |
| | | <SubSystem>Console</SubSystem>
|
| | | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
| | | <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
| | | <AdditionalDependencies>xinput.lib;xaudio2.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | <AdditionalDependencies>xinput.lib;mmdevapi.lib;d2d1.lib;d3d11.lib;dxgi.lib;ole32.lib;windowscodecs.lib;dwrite.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
| | |
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.h">
|
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h">
|
| | |
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\mmx.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h">
|
| | |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_dinputjoystick_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\winrt\SDL_winrtgamebar_cpp.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClInclude>
|
| | | </ItemGroup>
|
| | |
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2_winrthelpers.cpp">
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_winrt.cpp">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\core\windows\SDL_windows.c">
|
| | |
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_render.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c">
|
| | |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_dinputjoystick.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" />
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_xinputhaptic.c" />
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" />
|
| | | <ClCompile Include="..\..\src\thread\windows\SDL_sysmutex.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | |
| | | <ClCompile Include="..\..\src\video\winrt\SDL_winrtgamebar.cpp">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_xinputhaptic.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c">
|
| | | <Filter>Source Files</Filter>
|
| | | </ClCompile>
|
| | | </ItemGroup>
|
| | | </Project> |
| | |
| | | EndProject
|
| | | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "controllermap", "tests\controllermap\controllermap.vcxproj", "{55812185-D13C-4022-9C81-32E0F4A08306}"
|
| | | EndProject
|
| | | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testvulkan", "tests\testvulkan\testvulkan.vcxproj", "{0D604DFD-AAB6-442C-9368-F91A344146AB}"
|
| | | EndProject
|
| | | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testyuv", "tests\testyuv\testyuv.vcxproj", "{40FB7794-D3C3-4CFE-BCF4-A80C97635682}"
|
| | | EndProject
|
| | | Global
|
| | | GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
| | | Debug|Win32 = Debug|Win32
|
| | |
| | | {55812185-D13C-4022-9C81-32E0F4A08306}.Release|Win32.Build.0 = Release|Win32
|
| | | {55812185-D13C-4022-9C81-32E0F4A08306}.Release|x64.ActiveCfg = Release|x64
|
| | | {55812185-D13C-4022-9C81-32E0F4A08306}.Release|x64.Build.0 = Release|x64
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Debug|Win32.ActiveCfg = Debug|Win32
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Debug|Win32.Build.0 = Debug|Win32
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Debug|x64.ActiveCfg = Debug|x64
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Debug|x64.Build.0 = Debug|x64
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Release|Win32.ActiveCfg = Release|Win32
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Release|Win32.Build.0 = Release|Win32
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Release|x64.ActiveCfg = Release|x64
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB}.Release|x64.Build.0 = Release|x64
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Debug|Win32.ActiveCfg = Debug|Win32
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Debug|Win32.Build.0 = Debug|Win32
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Debug|x64.ActiveCfg = Debug|x64
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Debug|x64.Build.0 = Debug|x64
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Release|Win32.ActiveCfg = Release|Win32
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Release|Win32.Build.0 = Release|Win32
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Release|x64.ActiveCfg = Release|x64
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682}.Release|x64.Build.0 = Release|x64
|
| | | EndGlobalSection
|
| | | GlobalSection(SolutionProperties) = preSolution
|
| | | HideSolutionNode = FALSE
|
| | |
| | | {55812185-D13C-4022-9C81-32E0F4A08305} = {D69D5741-611F-4E14-8541-1FEE94F50B5A}
|
| | | {E9558DFE-1961-4DD4-B09B-DD0EEFD5C315} = {D69D5741-611F-4E14-8541-1FEE94F50B5A}
|
| | | {55812185-D13C-4022-9C81-32E0F4A08306} = {D69D5741-611F-4E14-8541-1FEE94F50B5A}
|
| | | {0D604DFD-AAB6-442C-9368-F91A344146AB} = {D69D5741-611F-4E14-8541-1FEE94F50B5A}
|
| | | {40FB7794-D3C3-4CFE-BCF4-A80C97635682} = {D69D5741-611F-4E14-8541-1FEE94F50B5A}
|
| | | EndGlobalSection
|
| | | EndGlobal
|
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| | | <ItemGroup Label="ProjectConfigurations"> |
| | | <ProjectConfiguration Include="Debug|Win32"> |
| | |
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet> |
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| | | <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;$(LibraryPath)</LibraryPath> |
| | | </PropertyGroup> |
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| | | <PreBuildEvent> |
| | |
| | | <ClInclude Include="..\..\include\SDL_types.h" /> |
| | | <ClInclude Include="..\..\include\SDL_version.h" /> |
| | | <ClInclude Include="..\..\include\SDL_video.h" /> |
| | | <ClInclude Include="..\..\src\events\blank_cursor.h" /> |
| | | <ClInclude Include="..\..\src\events\default_cursor.h" /> |
| | | <ClInclude Include="..\..\src\libm\math.h" /> |
| | | <ClInclude Include="..\..\src\libm\math_private.h" /> |
| | | <ClInclude Include="..\..\src\render\mmx.h" /> |
| | | <ClInclude Include="resource.h" /> |
| | | <ClInclude Include="..\..\include\SDL_vulkan.h" /> |
| | | <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" /> |
| | | <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" /> |
| | | <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" /> |
| | | <ClInclude Include="..\..\src\audio\SDL_audio_c.h" /> |
| | | <ClInclude Include="..\..\src\audio\SDL_audiodev_c.h" /> |
| | | <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" /> |
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h" /> |
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h" /> |
| | | <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" /> |
| | | <ClInclude Include="..\..\src\core\windows\SDL_directx.h" /> |
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h" /> |
| | | <ClInclude Include="..\..\src\core\windows\SDL_xinput.h" /> |
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi.h" /> |
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_overrides.h" /> |
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_procs.h" /> |
| | | <ClInclude Include="..\..\src\events\blank_cursor.h" /> |
| | | <ClInclude Include="..\..\src\events\default_cursor.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_events_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_gesture_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_mouse_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_sysevents.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_touch_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" /> |
| | | <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" /> |
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" /> |
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" /> |
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" /> |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_dinputjoystick_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_windowsjoystick_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_xinputjoystick_c.h" /> |
| | | <ClInclude Include="..\..\src\libm\math_libm.h" /> |
| | | <ClInclude Include="..\..\src\libm\math_private.h" /> |
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h" /> |
| | | <ClInclude Include="..\..\src\render\direct3d\SDL_shaders_d3d.h" /> |
| | | <ClInclude Include="..\..\src\render\opengl\SDL_glfuncs.h" /> |
| | | <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" /> |
| | | <ClInclude Include="..\..\src\render\opengles\SDL_glesfuncs.h" /> |
| | | <ClInclude Include="..\..\src\render\SDL_d3dmath.h" /> |
| | | <ClInclude Include="..\..\src\render\SDL_sysrender.h" /> |
| | | <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_blendline.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_blendpoint.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_draw.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_drawline.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_rotate.h" /> |
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h" /> |
| | | <ClInclude Include="..\..\src\SDL_error_c.h" /> |
| | | <ClInclude Include="..\..\src\thread\SDL_systhread.h" /> |
| | | <ClInclude Include="..\..\src\thread\SDL_thread_c.h" /> |
| | | <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" /> |
| | | <ClInclude Include="..\..\src\timer\SDL_timer_c.h" /> |
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" /> |
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" /> |
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_blit.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_blit_auto.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_blit_copy.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_blit_slow.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" /> |
| | | <ClInclude Include="..\..\src\render\SDL_d3dmath.h" /> |
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_dinputjoystick_c.h" /> |
| | | <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" /> |
| | | <ClInclude Include="..\..\src\core\windows\SDL_directx.h" /> |
| | | <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_draw.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_drawline.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" /> |
| | | <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" /> |
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi.h" /> |
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_overrides.h" /> |
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_procs.h" /> |
| | | <ClInclude Include="..\..\src\SDL_error_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_events_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_gesture_c.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_glesfuncs.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_glfuncs.h" /> |
| | | <ClInclude Include="..\..\src\SDL_hints_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_mouse_c.h" /> |
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" /> |
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" /> |
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_pixels_c.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_rect_c.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" /> |
| | | <ClInclude Include="..\..\src\render\software\SDL_rotate.h" /> |
| | | <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_shape_internals.h" /> |
| | | <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_sysevents.h" /> |
| | | <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" /> |
| | | <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" /> |
| | | <ClInclude Include="..\..\src\render\SDL_sysrender.h" /> |
| | | <ClInclude Include="..\..\src\thread\SDL_systhread.h" /> |
| | | <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" /> |
| | | <ClInclude Include="..\..\src\timer\SDL_systimer.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_sysvideo.h" /> |
| | | <ClInclude Include="..\..\src\thread\SDL_thread_c.h" /> |
| | | <ClInclude Include="..\..\src\timer\SDL_timer_c.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_touch_c.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" /> |
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_vkeys.h" /> |
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h" /> |
| | | <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" /> |
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsclipboard.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsevents.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsframebuffer.h" /> |
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_windowsjoystick_c.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowskeyboard.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsmessagebox.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsmodes.h" /> |
| | |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsvulkan.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" /> |
| | | <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" /> |
| | | <ClInclude Include="..\..\src\core\windows\SDL_xinput.h" /> |
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h" /> |
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_xinputjoystick_c.h" /> |
| | | <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" /> |
| | | <ClInclude Include="..\..\src\video\windows\wmmsg.h" /> |
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <ClCompile Include="..\..\src\atomic\SDL_atomic.c" /> |
| | | <ClCompile Include="..\..\src\atomic\SDL_spinlock.c" /> |
| | | <ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" /> |
| | | <ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" /> |
| | | <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audio.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audiocvt.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audiodev.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_mixer.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c" /> |
| | | <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" /> |
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" /> |
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_win32.c" /> |
| | | <ClCompile Include="..\..\src\core\windows\SDL_windows.c" /> |
| | | <ClCompile Include="..\..\src\core\windows\SDL_xinput.c" /> |
| | | <ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" /> |
| | | <ClCompile Include="..\..\src\dynapi\SDL_dynapi.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_clipboardevents.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_dropevents.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_events.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_gesture.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_keyboard.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_mouse.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_quit.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_touch.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_windowevents.c" /> |
| | | <ClCompile Include="..\..\src\file\SDL_rwops.c" /> |
| | | <ClCompile Include="..\..\src\filesystem\windows\SDL_sysfilesystem.c" /> |
| | | <ClCompile Include="..\..\src\haptic\SDL_haptic.c" /> |
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" /> |
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" /> |
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_xinputhaptic.c" /> |
| | | <ClCompile Include="..\..\src\joystick\SDL_gamecontroller.c" /> |
| | | <ClCompile Include="..\..\src\joystick\SDL_joystick.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_dinputjoystick.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_mmjoystick.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_windowsjoystick.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_xinputjoystick.c" /> |
| | | <ClCompile Include="..\..\src\libm\e_atan2.c" /> |
| | | <ClCompile Include="..\..\src\libm\e_fmod.c" /> |
| | | <ClCompile Include="..\..\src\libm\e_log.c" /> |
| | | <ClCompile Include="..\..\src\libm\e_log10.c" /> |
| | | <ClCompile Include="..\..\src\libm\e_pow.c" /> |
| | | <ClCompile Include="..\..\src\libm\e_rem_pio2.c" /> |
| | | <ClCompile Include="..\..\src\libm\e_sqrt.c" /> |
| | |
| | | <ClCompile Include="..\..\src\libm\s_scalbn.c" /> |
| | | <ClCompile Include="..\..\src\libm\s_sin.c" /> |
| | | <ClCompile Include="..\..\src\libm\s_tan.c" /> |
| | | <ClCompile Include="..\..\src\SDL.c" /> |
| | | <ClCompile Include="..\..\src\SDL_assert.c" /> |
| | | <ClCompile Include="..\..\src\atomic\SDL_atomic.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audio.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audiocvt.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audiodev.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" /> |
| | | <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" /> |
| | | <ClCompile Include="..\..\src\power\SDL_power.c" /> |
| | | <ClCompile Include="..\..\src\power\windows\SDL_syspower.c" /> |
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c" /> |
| | | <ClCompile Include="..\..\src\render\direct3d\SDL_render_d3d.c" /> |
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11.c" /> |
| | | <ClCompile Include="..\..\src\render\direct3d\SDL_shaders_d3d.c" /> |
| | | <ClCompile Include="..\..\src\render\opengl\SDL_render_gl.c" /> |
| | | <ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" /> |
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" /> |
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" /> |
| | | <ClCompile Include="..\..\src\render\SDL_d3dmath.c" /> |
| | | <ClCompile Include="..\..\src\render\SDL_render.c" /> |
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_blendline.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_blendpoint.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_drawline.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_render_sw.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_rotate.c" /> |
| | | <ClCompile Include="..\..\src\SDL.c" /> |
| | | <ClCompile Include="..\..\src\SDL_assert.c" /> |
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c" /> |
| | | <ClCompile Include="..\..\src\SDL_error.c" /> |
| | | <ClCompile Include="..\..\src\SDL_hints.c" /> |
| | | <ClCompile Include="..\..\src\SDL_log.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_getenv.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_iconv.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_malloc.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_qsort.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_stdlib.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_string.c" /> |
| | | <ClCompile Include="..\..\src\thread\generic\SDL_syscond.c" /> |
| | | <ClCompile Include="..\..\src\thread\SDL_thread.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_sysmutex.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_syssem.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_systhread.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_systls.c" /> |
| | | <ClCompile Include="..\..\src\timer\SDL_timer.c" /> |
| | | <ClCompile Include="..\..\src\timer\windows\SDL_systimer.c" /> |
| | | <ClCompile Include="..\..\src\video\dummy\SDL_nullevents.c" /> |
| | | <ClCompile Include="..\..\src\video\dummy\SDL_nullframebuffer.c" /> |
| | | <ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_blit.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_blit_0.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_blit_1.c" /> |
| | |
| | | <ClCompile Include="..\..\src\video\SDL_blit_slow.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_bmp.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_clipboard.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_clipboardevents.c" /> |
| | | <ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" /> |
| | | <ClCompile Include="..\..\src\render\SDL_d3dmath.c" /> |
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_dinputjoystick.c" /> |
| | | <ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" /> |
| | | <ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_drawline.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_dropevents.c" /> |
| | | <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" /> |
| | | <ClCompile Include="..\..\src\dynapi\SDL_dynapi.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_egl.c" /> |
| | | <ClCompile Include="..\..\src\SDL_error.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_events.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_fillrect.c" /> |
| | | <ClCompile Include="..\..\src\joystick\SDL_gamecontroller.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_gesture.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_getenv.c" /> |
| | | <ClCompile Include="..\..\src\haptic\SDL_haptic.c" /> |
| | | <ClCompile Include="..\..\src\SDL_hints.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_iconv.c" /> |
| | | <ClCompile Include="..\..\src\joystick\SDL_joystick.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_keyboard.c" /> |
| | | <ClCompile Include="..\..\src\SDL_log.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_malloc.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_mixer.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_mmjoystick.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_mouse.c" /> |
| | | <ClCompile Include="..\..\src\video\dummy\SDL_nullevents.c" /> |
| | | <ClCompile Include="..\..\src\video\dummy\SDL_nullframebuffer.c" /> |
| | | <ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_pixels.c" /> |
| | | <ClCompile Include="..\..\src\power\SDL_power.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_qsort.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_quit.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_rect.c" /> |
| | | <ClCompile Include="..\..\src\render\SDL_render.c" /> |
| | | <ClCompile Include="..\..\src\render\direct3d\SDL_render_d3d.c" /> |
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11.c" /> |
| | | <ClCompile Include="..\..\src\render\opengl\SDL_render_gl.c" /> |
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_render_sw.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_RLEaccel.c" /> |
| | | <ClCompile Include="..\..\src\render\software\SDL_rotate.c" /> |
| | | <ClCompile Include="..\..\src\file\SDL_rwops.c" /> |
| | | <ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" /> |
| | | <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_shape.c" /> |
| | | <ClCompile Include="..\..\src\atomic\SDL_spinlock.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_stdlib.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_stretch.c" /> |
| | | <ClCompile Include="..\..\src\stdlib\SDL_string.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_surface.c" /> |
| | | <ClCompile Include="..\..\src\thread\generic\SDL_syscond.c" /> |
| | | <ClCompile Include="..\..\src\filesystem\windows\SDL_sysfilesystem.c" /> |
| | | <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_sysmutex.c" /> |
| | | <ClCompile Include="..\..\src\power\windows\SDL_syspower.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_syssem.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_systhread.c" /> |
| | | <ClCompile Include="..\..\src\timer\windows\SDL_systimer.c" /> |
| | | <ClCompile Include="..\..\src\thread\windows\SDL_systls.c" /> |
| | | <ClCompile Include="..\..\src\thread\SDL_thread.c" /> |
| | | <ClCompile Include="..\..\src\timer\SDL_timer.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_touch.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_video.c" /> |
| | | <ClCompile Include="..\..\src\audio\SDL_wave.c" /> |
| | | <ClCompile Include="..\..\src\events\SDL_windowevents.c" /> |
| | | <ClCompile Include="..\..\src\core\windows\SDL_windows.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" /> |
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" /> |
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_windowsjoystick.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" /> |
| | |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsopengles.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsshape.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsvideo.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsvulkan.c" /> |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" /> |
| | | <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" /> |
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" /> |
| | | <ClCompile Include="..\..\src\core\windows\SDL_xinput.c" /> |
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_xinputhaptic.c" /> |
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_xinputjoystick.c" /> |
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" /> |
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" /> |
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <ResourceCompile Include="..\..\src\main\windows\version.rc" /> |
| | |
| | | <ClInclude Include="..\..\include\SDL_video.h">
|
| | | <Filter>API Headers</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\events\blank_cursor.h" />
|
| | | <ClInclude Include="..\..\src\events\default_cursor.h" />
|
| | | <ClInclude Include="..\..\src\libm\math.h" />
|
| | | <ClInclude Include="..\..\src\libm\math_private.h" />
|
| | | <ClInclude Include="..\..\src\render\mmx.h" />
|
| | | <ClInclude Include="resource.h" />
|
| | | <ClInclude Include="..\..\include\SDL_vulkan.h">
|
| | | <Filter>API Headers</Filter>
|
| | | </ClInclude>
|
| | | <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" />
|
| | | <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" />
|
| | | <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_audiodev_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h" />
|
| | | <ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h" />
|
| | | <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_xinput.h" />
|
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi.h" />
|
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_overrides.h" />
|
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_procs.h" />
|
| | | <ClInclude Include="..\..\src\events\blank_cursor.h" />
|
| | | <ClInclude Include="..\..\src\events\default_cursor.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_events_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_gesture_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_mouse_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_sysevents.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_touch_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
|
| | | <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_dinputjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_windowsjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_xinputjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\libm\math_libm.h" />
|
| | | <ClInclude Include="..\..\src\libm\math_private.h" />
|
| | | <ClInclude Include="..\..\src\render\opengl\SDL_glfuncs.h" />
|
| | | <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" />
|
| | | <ClInclude Include="..\..\src\render\opengles\SDL_glesfuncs.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_d3dmath.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_blendline.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_blendpoint.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_draw.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
| | | <ClInclude Include="..\..\src\SDL_dataqueue.h" />
|
| | | <ClInclude Include="..\..\src\SDL_error_c.h" />
|
| | | <ClInclude Include="..\..\src\thread\SDL_systhread.h" />
|
| | | <ClInclude Include="..\..\src\thread\SDL_thread_c.h" />
|
| | | <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" />
|
| | | <ClInclude Include="..\..\src\timer\SDL_timer_c.h" />
|
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" />
|
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" />
|
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_blit.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_blit_auto.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_blit_copy.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_blit_slow.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_d3dmath.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_dinputjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
| | | <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_draw.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" />
|
| | | <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" />
|
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi.h" />
|
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_overrides.h" />
|
| | | <ClInclude Include="..\..\src\dynapi\SDL_dynapi_procs.h" />
|
| | | <ClInclude Include="..\..\src\SDL_error_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_events_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_gesture_c.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_glesfuncs.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_glfuncs.h" />
|
| | | <ClInclude Include="..\..\src\SDL_hints_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_mouse_c.h" />
|
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" />
|
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" />
|
| | | <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_rect_c.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
| | | <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
| | | <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_sysevents.h" />
|
| | | <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
| | | <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
|
| | | <ClInclude Include="..\..\src\thread\SDL_systhread.h" />
|
| | | <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" />
|
| | | <ClInclude Include="..\..\src\timer\SDL_systimer.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
| | | <ClInclude Include="..\..\src\thread\SDL_thread_c.h" />
|
| | | <ClInclude Include="..\..\src\timer\SDL_timer_c.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_touch_c.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_vkeys.h" />
|
| | | <ClInclude Include="..\..\src\audio\SDL_wave.h" />
|
| | | <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsclipboard.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsevents.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsframebuffer.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_windowsjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowskeyboard.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsmessagebox.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsmodes.h" />
|
| | |
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowsvulkan.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" />
|
| | | <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" />
|
| | | <ClInclude Include="..\..\src\core\windows\SDL_xinput.h" />
|
| | | <ClInclude Include="..\..\src\haptic\windows\SDL_xinputhaptic_c.h" />
|
| | | <ClInclude Include="..\..\src\joystick\windows\SDL_xinputjoystick_c.h" />
|
| | | <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
|
| | | <ClInclude Include="..\..\src\video\windows\wmmsg.h" />
|
| | | <ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
| | | <ClInclude Include="..\..\src\video\yuv2rgb\yuv_rgb.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.h" />
|
| | | <ClInclude Include="..\..\src\render\direct3d\SDL_shaders_d3d.h" />
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\src\libm\e_atan2.c" />
|
| | | <ClCompile Include="..\..\src\libm\e_log.c" />
|
| | | <ClCompile Include="..\..\src\libm\e_log10.c" />
|
| | | <ClCompile Include="..\..\src\libm\e_pow.c" />
|
| | | <ClCompile Include="..\..\src\libm\e_rem_pio2.c" />
|
| | | <ClCompile Include="..\..\src\libm\e_sqrt.c" />
|
| | |
| | | <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" />
|
| | | <ClCompile Include="..\..\src\dynapi\SDL_dynapi.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_egl.c" />
|
| | | <ClCompile Include="..\..\src\SDL_dataqueue.c" />
|
| | | <ClCompile Include="..\..\src\SDL_error.c" />
|
| | | <ClCompile Include="..\..\src\events\SDL_events.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_fillrect.c" />
|
| | |
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsvideo.c" />
|
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" />
|
| | | <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" />
|
| | | <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi_win32.c" />
|
| | | <ClCompile Include="..\..\src\core\windows\SDL_xinput.c" />
|
| | | <ClCompile Include="..\..\src\haptic\windows\SDL_xinputhaptic.c" />
|
| | | <ClCompile Include="..\..\src\joystick\windows\SDL_xinputjoystick.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
|
| | | <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
| | | <ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" />
|
| | | <ClCompile Include="..\..\src\video\windows\SDL_windowsvulkan.c" />
|
| | | <ClCompile Include="..\..\src\libm\e_fmod.c" />
|
| | | <ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
| | | <ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb.c" />
|
| | | <ClCompile Include="..\..\src\render\direct3d11\SDL_shaders_d3d11.c" />
|
| | | <ClCompile Include="..\..\src\render\direct3d\SDL_shaders_d3d.c" />
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ResourceCompile Include="..\..\src\main\windows\version.rc" />
|
| | |
| | | <ClCompile Include="..\..\src\test\SDL_test_imagePrimitivesBlend.c" />
|
| | | <ClCompile Include="..\..\src\test\SDL_test_log.c" />
|
| | | <ClCompile Include="..\..\src\test\SDL_test_md5.c" />
|
| | | <ClCompile Include="..\..\src\test\SDL_test_memory.c" />
|
| | | <ClCompile Include="..\..\src\test\SDL_test_random.c" />
|
| | | </ItemGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
| | | <ImportGroup Label="ExtensionTargets">
|
| | | </ImportGroup>
|
| | | </Project> |
| | | </Project>
|
| | |
| | | <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
| | | <ReferenceOutputAssembly>true</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | <ProjectReference Include="..\..\SDLtest\SDLtest.vcxproj">
|
| | | <Project>{da956fd3-e143-46f2-9fe5-c77bebc56b1a}</Project>
|
| | | <Private>false</Private>
|
| | | <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
| | | <ReferenceOutputAssembly>true</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\..\test\testgles2.c" />
|
| | |
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
| | | <ImportGroup Label="ExtensionTargets">
|
| | | </ImportGroup>
|
| | | </Project> |
| | | </Project>
|
| | |
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\..\test\testoverlay2.c" />
|
| | | <ClCompile Include="..\..\..\test\testyuv_cvt.c" />
|
| | | </ItemGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
| | | <ImportGroup Label="ExtensionTargets">
|
| | | </ImportGroup>
|
| | | </Project> |
| | | </Project>
|
| New file |
| | |
| | | <?xml version="1.0" encoding="Windows-1252"?> |
| | | <VisualStudioProject |
| | | ProjectType="Visual C++" |
| | | Version="9.00" |
| | | Name="testvulkan" |
| | | ProjectGUID="{0D604DFD-AAB6-442C-9368-F91A344146AB}" |
| | | RootNamespace="testvulkan" |
| | | TargetFrameworkVersion="131072" |
| | | > |
| | | <Platforms> |
| | | <Platform |
| | | Name="Win32" |
| | | /> |
| | | <Platform |
| | | Name="x64" |
| | | /> |
| | | </Platforms> |
| | | <ToolFiles> |
| | | </ToolFiles> |
| | | <Configurations> |
| | | <Configuration |
| | | Name="Debug|Win32" |
| | | OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" |
| | | IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\" |
| | | ConfigurationType="1" |
| | | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops" |
| | | UseOfMFC="0" |
| | | ATLMinimizesCRunTimeLibraryUsage="false" |
| | | > |
| | | <Tool |
| | | Name="VCPreBuildEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCCustomBuildTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXMLDataGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCWebServiceProxyGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCMIDLTool" |
| | | PreprocessorDefinitions="_DEBUG" |
| | | MkTypLibCompatible="true" |
| | | SuppressStartupBanner="true" |
| | | TargetEnvironment="1" |
| | | TypeLibraryName=".\Debug/testvulkan.tlb" |
| | | /> |
| | | <Tool |
| | | Name="VCCLCompilerTool" |
| | | Optimization="0" |
| | | AdditionalIncludeDirectories=""$(SolutionDir)/../include"" |
| | | AdditionalUsingDirectories="" |
| | | PreprocessorDefinitions="_DEBUG,WIN32,_WINDOWS,HAVE_OPENGL" |
| | | RuntimeLibrary="2" |
| | | WarningLevel="3" |
| | | DebugInformationFormat="1" |
| | | /> |
| | | <Tool |
| | | Name="VCManagedResourceCompilerTool" |
| | | /> |
| | | <Tool |
| | | Name="VCResourceCompilerTool" |
| | | PreprocessorDefinitions="_DEBUG" |
| | | Culture="1033" |
| | | /> |
| | | <Tool |
| | | Name="VCPreLinkEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCLinkerTool" |
| | | GenerateDebugInformation="true" |
| | | SubSystem="2" |
| | | /> |
| | | <Tool |
| | | Name="VCALinkTool" |
| | | /> |
| | | <Tool |
| | | Name="VCManifestTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXDCMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCBscMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCFxCopTool" |
| | | /> |
| | | <Tool |
| | | Name="VCAppVerifierTool" |
| | | /> |
| | | <Tool |
| | | Name="VCPostBuildEventTool" |
| | | /> |
| | | </Configuration> |
| | | <Configuration |
| | | Name="Debug|x64" |
| | | OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" |
| | | IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\" |
| | | ConfigurationType="1" |
| | | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops" |
| | | UseOfMFC="0" |
| | | ATLMinimizesCRunTimeLibraryUsage="false" |
| | | > |
| | | <Tool |
| | | Name="VCPreBuildEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCCustomBuildTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXMLDataGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCWebServiceProxyGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCMIDLTool" |
| | | PreprocessorDefinitions="_DEBUG" |
| | | MkTypLibCompatible="true" |
| | | SuppressStartupBanner="true" |
| | | TargetEnvironment="3" |
| | | TypeLibraryName=".\Debug/testvulkan.tlb" |
| | | /> |
| | | <Tool |
| | | Name="VCCLCompilerTool" |
| | | Optimization="0" |
| | | AdditionalIncludeDirectories=""$(SolutionDir)/../include"" |
| | | AdditionalUsingDirectories="" |
| | | PreprocessorDefinitions="_DEBUG,WIN32,_WINDOWS,HAVE_OPENGL" |
| | | RuntimeLibrary="3" |
| | | WarningLevel="3" |
| | | DebugInformationFormat="1" |
| | | /> |
| | | <Tool |
| | | Name="VCManagedResourceCompilerTool" |
| | | /> |
| | | <Tool |
| | | Name="VCResourceCompilerTool" |
| | | PreprocessorDefinitions="_DEBUG" |
| | | Culture="1033" |
| | | /> |
| | | <Tool |
| | | Name="VCPreLinkEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCLinkerTool" |
| | | GenerateDebugInformation="true" |
| | | SubSystem="2" |
| | | /> |
| | | <Tool |
| | | Name="VCALinkTool" |
| | | /> |
| | | <Tool |
| | | Name="VCManifestTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXDCMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCBscMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCFxCopTool" |
| | | /> |
| | | <Tool |
| | | Name="VCAppVerifierTool" |
| | | /> |
| | | <Tool |
| | | Name="VCPostBuildEventTool" |
| | | /> |
| | | </Configuration> |
| | | <Configuration |
| | | Name="Release|Win32" |
| | | OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" |
| | | IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\" |
| | | ConfigurationType="1" |
| | | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops" |
| | | UseOfMFC="0" |
| | | ATLMinimizesCRunTimeLibraryUsage="false" |
| | | > |
| | | <Tool |
| | | Name="VCPreBuildEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCCustomBuildTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXMLDataGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCWebServiceProxyGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCMIDLTool" |
| | | PreprocessorDefinitions="NDEBUG" |
| | | MkTypLibCompatible="true" |
| | | SuppressStartupBanner="true" |
| | | TargetEnvironment="1" |
| | | TypeLibraryName=".\Release/testvulkan.tlb" |
| | | /> |
| | | <Tool |
| | | Name="VCCLCompilerTool" |
| | | AdditionalIncludeDirectories=""$(SolutionDir)/../include"" |
| | | AdditionalUsingDirectories="" |
| | | PreprocessorDefinitions="NDEBUG,WIN32,_WINDOWS,HAVE_OPENGL" |
| | | RuntimeLibrary="2" |
| | | WarningLevel="3" |
| | | /> |
| | | <Tool |
| | | Name="VCManagedResourceCompilerTool" |
| | | /> |
| | | <Tool |
| | | Name="VCResourceCompilerTool" |
| | | PreprocessorDefinitions="NDEBUG" |
| | | Culture="1033" |
| | | /> |
| | | <Tool |
| | | Name="VCPreLinkEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCLinkerTool" |
| | | SubSystem="2" |
| | | /> |
| | | <Tool |
| | | Name="VCALinkTool" |
| | | /> |
| | | <Tool |
| | | Name="VCManifestTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXDCMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCBscMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCFxCopTool" |
| | | /> |
| | | <Tool |
| | | Name="VCAppVerifierTool" |
| | | /> |
| | | <Tool |
| | | Name="VCPostBuildEventTool" |
| | | /> |
| | | </Configuration> |
| | | <Configuration |
| | | Name="Release|x64" |
| | | OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" |
| | | IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\" |
| | | ConfigurationType="1" |
| | | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops" |
| | | UseOfMFC="0" |
| | | ATLMinimizesCRunTimeLibraryUsage="false" |
| | | > |
| | | <Tool |
| | | Name="VCPreBuildEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCCustomBuildTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXMLDataGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCWebServiceProxyGeneratorTool" |
| | | /> |
| | | <Tool |
| | | Name="VCMIDLTool" |
| | | PreprocessorDefinitions="NDEBUG" |
| | | MkTypLibCompatible="true" |
| | | SuppressStartupBanner="true" |
| | | TargetEnvironment="3" |
| | | TypeLibraryName=".\Release/testvulkan.tlb" |
| | | /> |
| | | <Tool |
| | | Name="VCCLCompilerTool" |
| | | AdditionalIncludeDirectories=""$(SolutionDir)/../include"" |
| | | AdditionalUsingDirectories="" |
| | | PreprocessorDefinitions="NDEBUG,WIN32,_WINDOWS,HAVE_OPENGL" |
| | | RuntimeLibrary="2" |
| | | WarningLevel="3" |
| | | /> |
| | | <Tool |
| | | Name="VCManagedResourceCompilerTool" |
| | | /> |
| | | <Tool |
| | | Name="VCResourceCompilerTool" |
| | | PreprocessorDefinitions="NDEBUG" |
| | | Culture="1033" |
| | | /> |
| | | <Tool |
| | | Name="VCPreLinkEventTool" |
| | | /> |
| | | <Tool |
| | | Name="VCLinkerTool" |
| | | SubSystem="2" |
| | | /> |
| | | <Tool |
| | | Name="VCALinkTool" |
| | | /> |
| | | <Tool |
| | | Name="VCManifestTool" |
| | | /> |
| | | <Tool |
| | | Name="VCXDCMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCBscMakeTool" |
| | | /> |
| | | <Tool |
| | | Name="VCFxCopTool" |
| | | /> |
| | | <Tool |
| | | Name="VCAppVerifierTool" |
| | | /> |
| | | <Tool |
| | | Name="VCPostBuildEventTool" |
| | | /> |
| | | </Configuration> |
| | | </Configurations> |
| | | <References> |
| | | <ProjectReference |
| | | ReferencedProjectIdentifier="{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}" |
| | | CopyLocal="false" |
| | | CopyLocalDependencies="false" |
| | | CopyLocalSatelliteAssemblies="false" |
| | | RelativePathToProject=".\SDL\SDL_VS2008.vcproj" |
| | | /> |
| | | <ProjectReference |
| | | ReferencedProjectIdentifier="{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}" |
| | | CopyLocal="false" |
| | | CopyLocalDependencies="false" |
| | | CopyLocalSatelliteAssemblies="false" |
| | | RelativePathToProject=".\SDLmain\SDLmain_VS2008.vcproj" |
| | | /> |
| | | <ProjectReference |
| | | ReferencedProjectIdentifier="{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}" |
| | | CopyLocal="false" |
| | | CopyLocalDependencies="false" |
| | | CopyLocalSatelliteAssemblies="false" |
| | | RelativePathToProject=".\SDLtest\SDLtest_VS2008.vcproj" |
| | | /> |
| | | </References> |
| | | <Files> |
| | | <File |
| | | RelativePath="..\..\..\test\testvulkan.c" |
| | | > |
| | | </File> |
| | | </Files> |
| | | <Globals> |
| | | </Globals> |
| | | </VisualStudioProject> |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?>
|
| | | <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
| | | <ItemGroup Label="ProjectConfigurations">
|
| | | <ProjectConfiguration Include="Debug|Win32">
|
| | | <Configuration>Debug</Configuration>
|
| | | <Platform>Win32</Platform>
|
| | | </ProjectConfiguration>
|
| | | <ProjectConfiguration Include="Debug|x64">
|
| | | <Configuration>Debug</Configuration>
|
| | | <Platform>x64</Platform>
|
| | | </ProjectConfiguration>
|
| | | <ProjectConfiguration Include="Release|Win32">
|
| | | <Configuration>Release</Configuration>
|
| | | <Platform>Win32</Platform>
|
| | | </ProjectConfiguration>
|
| | | <ProjectConfiguration Include="Release|x64">
|
| | | <Configuration>Release</Configuration>
|
| | | <Platform>x64</Platform>
|
| | | </ProjectConfiguration>
|
| | | </ItemGroup>
|
| | | <PropertyGroup Label="Globals">
|
| | | <ProjectGuid>{0D604DFD-AAB6-442C-9368-F91A344146AB}</ProjectGuid>
|
| | | <RootNamespace>testvulkan</RootNamespace>
|
| | | </PropertyGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
| | | <ImportGroup Label="ExtensionSettings">
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <PropertyGroup Label="UserMacros" />
|
| | | <PropertyGroup>
|
| | | <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
| | | </PropertyGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>Win32</TargetEnvironment>
|
| | | <TypeLibraryName>.\Debug/testvulkan.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <Optimization>Disabled</Optimization>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | <DebugInformationFormat>OldStyle</DebugInformationFormat>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <GenerateDebugInformation>true</GenerateDebugInformation>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>X64</TargetEnvironment>
|
| | | <TypeLibraryName>.\Debug/testvulkan.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <Optimization>Disabled</Optimization>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | <DebugInformationFormat>OldStyle</DebugInformationFormat>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <GenerateDebugInformation>true</GenerateDebugInformation>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>Win32</TargetEnvironment>
|
| | | <TypeLibraryName>.\Release/testvulkan.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>X64</TargetEnvironment>
|
| | | <TypeLibraryName>.\Release/testvulkan.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;HAVE_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemGroup>
|
| | | <ProjectReference Include="..\..\SDLmain\SDLmain.vcxproj">
|
| | | <Project>{da956fd3-e142-46f2-9dd5-c78bebb56b7a}</Project>
|
| | | <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | <ProjectReference Include="..\..\SDLtest\SDLtest.vcxproj">
|
| | | <Project>{da956fd3-e143-46f2-9fe5-c77bebc56b1a}</Project>
|
| | | <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | <ProjectReference Include="..\..\SDL\SDL.vcxproj">
|
| | | <Project>{81ce8daf-ebb2-4761-8e45-b71abcca8c68}</Project>
|
| | | <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\..\test\testvulkan.c" />
|
| | | </ItemGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
| | | <ImportGroup Label="ExtensionTargets">
|
| | | </ImportGroup>
|
| | | </Project>
|
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?>
|
| | | <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
| | | <ItemGroup Label="ProjectConfigurations">
|
| | | <ProjectConfiguration Include="Debug|Win32">
|
| | | <Configuration>Debug</Configuration>
|
| | | <Platform>Win32</Platform>
|
| | | </ProjectConfiguration>
|
| | | <ProjectConfiguration Include="Debug|x64">
|
| | | <Configuration>Debug</Configuration>
|
| | | <Platform>x64</Platform>
|
| | | </ProjectConfiguration>
|
| | | <ProjectConfiguration Include="Release|Win32">
|
| | | <Configuration>Release</Configuration>
|
| | | <Platform>Win32</Platform>
|
| | | </ProjectConfiguration>
|
| | | <ProjectConfiguration Include="Release|x64">
|
| | | <Configuration>Release</Configuration>
|
| | | <Platform>x64</Platform>
|
| | | </ProjectConfiguration>
|
| | | </ItemGroup>
|
| | | <PropertyGroup Label="Globals">
|
| | | <ProjectGuid>{40FB7794-D3C3-4CFE-BCF4-A80C97635682}</ProjectGuid>
|
| | | <RootNamespace>testyuv</RootNamespace>
|
| | | </PropertyGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
| | | <ConfigurationType>Application</ConfigurationType>
|
| | | </PropertyGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
| | | <ImportGroup Label="ExtensionSettings">
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
| | | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
| | | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
| | | </ImportGroup>
|
| | | <PropertyGroup Label="UserMacros" />
|
| | | <PropertyGroup>
|
| | | <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
| | | <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
| | | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
| | | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
| | | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
| | | </PropertyGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>Win32</TargetEnvironment>
|
| | | <TypeLibraryName>.\Release/testyuv.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>X64</TargetEnvironment>
|
| | | <TypeLibraryName>.\Release/testyuv.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>Win32</TargetEnvironment>
|
| | | <TypeLibraryName>.\Debug/testyuv.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <Optimization>Disabled</Optimization>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | <DebugInformationFormat>OldStyle</DebugInformationFormat>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <GenerateDebugInformation>true</GenerateDebugInformation>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
| | | <Midl>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <MkTypLibCompatible>true</MkTypLibCompatible>
|
| | | <SuppressStartupBanner>true</SuppressStartupBanner>
|
| | | <TargetEnvironment>X64</TargetEnvironment>
|
| | | <TypeLibraryName>.\Debug/testyuv.tlb</TypeLibraryName>
|
| | | </Midl>
|
| | | <ClCompile>
|
| | | <Optimization>Disabled</Optimization>
|
| | | <AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
| | | <AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
| | | <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
| | | <WarningLevel>Level3</WarningLevel>
|
| | | <DebugInformationFormat>OldStyle</DebugInformationFormat>
|
| | | </ClCompile>
|
| | | <ResourceCompile>
|
| | | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
| | | <Culture>0x0409</Culture>
|
| | | </ResourceCompile>
|
| | | <Link>
|
| | | <GenerateDebugInformation>true</GenerateDebugInformation>
|
| | | <SubSystem>Windows</SubSystem>
|
| | | </Link>
|
| | | </ItemDefinitionGroup>
|
| | | <ItemGroup>
|
| | | <ProjectReference Include="..\..\SDL\SDL.vcxproj">
|
| | | <Project>{81ce8daf-ebb2-4761-8e45-b71abcca8c68}</Project>
|
| | | <Private>false</Private>
|
| | | <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
| | | <ReferenceOutputAssembly>true</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | <ProjectReference Include="..\..\SDLmain\SDLmain.vcxproj">
|
| | | <Project>{da956fd3-e142-46f2-9dd5-c78bebb56b7a}</Project>
|
| | | <Private>false</Private>
|
| | | <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
| | | <ReferenceOutputAssembly>true</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | <ProjectReference Include="..\..\SDLtest\SDLtest.vcxproj">
|
| | | <Project>{da956fd3-e143-46f2-9fe5-c77bebc56b1a}</Project>
|
| | | <Private>false</Private>
|
| | | <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
| | | <ReferenceOutputAssembly>true</ReferenceOutputAssembly>
|
| | | </ProjectReference>
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <CustomBuild Include="..\..\..\test\testyuv.bmp">
|
| | | <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
| | | <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) $(ProjectDir)\
|
| | | </Command>
|
| | | <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
| | | <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
|
| | | <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) $(ProjectDir)\
|
| | | </Command>
|
| | | <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
| | | <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
|
| | | <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) $(ProjectDir)\
|
| | | </Command>
|
| | | <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
| | | <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
|
| | | <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) $(ProjectDir)\
|
| | | </Command>
|
| | | <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
| | | </CustomBuild>
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClCompile Include="..\..\..\test\testyuv.c" />
|
| | | <ClCompile Include="..\..\..\test\testyuv_cvt.c" />
|
| | | </ItemGroup>
|
| | | <ItemGroup>
|
| | | <ClInclude Include="..\..\..\test\testyuv_cvt.h" />
|
| | | </ItemGroup>
|
| | | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
| | | <ImportGroup Label="ExtensionTargets">
|
| | | </ImportGroup>
|
| | | </Project>
|
| | |
| | | This is a list of major changes in SDL's version history.
|
| | |
|
| | | ---------------------------------------------------------------------------
|
| | | 2.0.8:
|
| | | ---------------------------------------------------------------------------
|
| | |
|
| | | General:
|
| | | * Added SDL_fmod() and SDL_log10()
|
| | | * Each of the SDL math functions now has the corresponding float version
|
| | | * Added SDL_SetYUVConversionMode() and SDL_GetYUVConversionMode() to control the formula used when converting to and from YUV colorspace. The options are JPEG, BT.601, and BT.709
|
| | |
|
| | | Windows:
|
| | | * Implemented WASAPI support on Windows UWP and removed the deprecated XAudio2 implementation
|
| | | * Added resampling support on WASAPI on Windows 7 and above
|
| | |
|
| | | Windows UWP:
|
| | | * Added SDL_WinRTGetDeviceFamily() to find out what type of device your application is running on
|
| | |
|
| | | Mac OS X:
|
| | | * Added support for the Vulkan SDK for Mac:
|
| | | https://www.lunarg.com/lunarg-releases-vulkan-sdk-1-0-69-0-for-mac/
|
| | | * Added support for OpenGL ES using ANGLE when it's available
|
| | |
|
| | | Mac OS X / iOS / tvOS:
|
| | | * Added a Metal 2D render implementation
|
| | | * Added SDL_RenderGetMetalLayer() and SDL_RenderGetMetalCommandEncoder() to insert your own drawing into SDL rendering when using the Metal implementation
|
| | |
|
| | | iOS:
|
| | | * Added the hint SDL_HINT_IOS_HIDE_HOME_INDICATOR to control whether the home indicator bar on iPhone X should be hidden. This defaults to dimming the indicator for fullscreen applications and showing the indicator for windowed applications.
|
| | |
|
| | | iOS / Android:
|
| | | * Added the hint SDL_HINT_RETURN_KEY_HIDES_IME to control whether the return key on the software keyboard should hide the keyboard or send a key event (the default)
|
| | |
|
| | | Android:
|
| | | * SDL now supports building with Android Studio and Gradle by default, and the old Ant project is available in android-project-ant
|
| | | * SDL now requires the API 19 SDK to build, but can still target devices down to API 14 (Android 4.0.1)
|
| | | * Added SDL_IsAndroidTV() to tell whether the application is running on Android TV
|
| | |
|
| | | Android / tvOS:
|
| | | * Added the hint SDL_HINT_TV_REMOTE_AS_JOYSTICK to control whether TV remotes should be listed as joystick devices (the default) or send keyboard events.
|
| | |
|
| | | Linux:
|
| | | * Added the hint SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR to control whether the X server should skip the compositor for the SDL application. This defaults to "1"
|
| | | * Added the hint SDL_HINT_VIDEO_DOUBLE_BUFFER to control whether the Raspberry Pi and KMSDRM video drivers should use double or triple buffering (the default)
|
| | |
|
| | |
|
| | | ---------------------------------------------------------------------------
|
| | | 2.0.7:
|
| | | ---------------------------------------------------------------------------
|
| | |
|
| | | General:
|
| | | * Added audio stream conversion functions:
|
| | | SDL_NewAudioStream
|
| | | SDL_AudioStreamPut
|
| | | SDL_AudioStreamGet
|
| | | SDL_AudioStreamAvailable
|
| | | SDL_AudioStreamFlush
|
| | | SDL_AudioStreamClear
|
| | | SDL_FreeAudioStream
|
| | | * Added functions to query and set the SDL memory allocation functions:
|
| | | SDL_GetMemoryFunctions()
|
| | | SDL_SetMemoryFunctions()
|
| | | SDL_GetNumAllocations()
|
| | | * Added locking functions for multi-threaded access to the joystick and game controller APIs:
|
| | | SDL_LockJoysticks()
|
| | | SDL_UnlockJoysticks()
|
| | | * The following functions are now thread-safe:
|
| | | SDL_SetEventFilter()
|
| | | SDL_GetEventFilter()
|
| | | SDL_AddEventWatch()
|
| | | SDL_DelEventWatch()
|
| | |
|
| | |
|
| | | General:
|
| | | ---------------------------------------------------------------------------
|
| | | 2.0.6:
|
| | | ---------------------------------------------------------------------------
|
| | |
|
| | | General:
|
| | | * Added cross-platform Vulkan graphics support in SDL_vulkan.h
|
| | | SDL_Vulkan_LoadLibrary()
|
| | | SDL_Vulkan_GetVkGetInstanceProcAddr()
|
| | | SDL_Vulkan_GetInstanceExtensions()
|
| | | SDL_Vulkan_CreateSurface()
|
| | | SDL_Vulkan_GetDrawableSize()
|
| | | SDL_Vulkan_UnloadLibrary()
|
| | | This is all the platform-specific code you need to bring up Vulkan on all SDL platforms. You can look at an example in test/testvulkan.c
|
| | | * Added SDL_ComposeCustomBlendMode() to create custom blend modes for 2D rendering
|
| | | * Added SDL_HasNEON() which returns whether the CPU has NEON instruction support
|
| | | * Added support for many game controllers, including the Nintendo Switch Pro Controller
|
| | | * Added support for inverted axes and separate axis directions in game controller mappings
|
| | | * Added functions to return information about a joystick before it's opened:
|
| | | SDL_JoystickGetDeviceVendor()
|
| | | SDL_JoystickGetDeviceProduct()
|
| | | SDL_JoystickGetDeviceProductVersion()
|
| | | SDL_JoystickGetDeviceType()
|
| | | SDL_JoystickGetDeviceInstanceID()
|
| | | * Added functions to return information about an open joystick:
|
| | | SDL_JoystickGetVendor()
|
| | | SDL_JoystickGetProduct()
|
| | | SDL_JoystickGetProductVersion()
|
| | | SDL_JoystickGetType()
|
| | | SDL_JoystickGetAxisInitialState()
|
| | | * Added functions to return information about an open game controller:
|
| | | SDL_GameControllerGetVendor()
|
| | | SDL_GameControllerGetProduct()
|
| | | SDL_GameControllerGetProductVersion()
|
| | | * Added SDL_GameControllerNumMappings() and SDL_GameControllerMappingForIndex() to be able to enumerate the built-in game controller mappings
|
| | | * Added SDL_LoadFile() and SDL_LoadFile_RW() to load a file into memory
|
| | | * Added SDL_DuplicateSurface() to make a copy of a surface
|
| | | * Added an experimental JACK audio driver
|
| | | * Implemented non-power-of-two audio resampling, optionally using libsamplerate to perform the resampling
|
| | | * Added the hint SDL_HINT_AUDIO_RESAMPLING_MODE to control the quality of resampling
|
| | | * Added the hint SDL_HINT_RENDER_LOGICAL_SIZE_MODE to control the scaling policy for SDL_RenderSetLogicalSize():
|
| | | "0" or "letterbox" - Uses letterbox/sidebars to fit the entire rendering on screen (the default)
|
| | | "1" or "overscan" - Will zoom the rendering so it fills the entire screen, allowing edges to be drawn offscreen
|
| | | * Added the hints SDL_HINT_MOUSE_NORMAL_SPEED_SCALE and SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE to scale the mouse speed when being read from raw mouse input
|
| | | * Added the hint SDL_HINT_TOUCH_MOUSE_EVENTS to control whether SDL will synthesize mouse events from touch events
|
| | |
|
| | | Windows:
|
| | | * The new default audio driver on Windows is WASAPI and supports hot-plugging devices and changing the default audio device
|
| | | * The old XAudio2 audio driver is deprecated and will be removed in the next release
|
| | | * Added hints SDL_HINT_WINDOWS_INTRESOURCE_ICON and SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL to specify a custom icon resource ID for SDL windows
|
| | | * The hint SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING is now on by default for compatibility with .NET languages and various Windows debuggers
|
| | | * Updated the GUID format for game controller mappings, older mappings will be automatically converted on load
|
| | | * Implemented the SDL_WINDOW_ALWAYS_ON_TOP flag on Windows
|
| | |
|
| | | Linux:
|
| | | * Added an experimental KMS/DRM video driver for embedded development
|
| | |
|
| | | iOS:
|
| | | * Added a hint SDL_HINT_AUDIO_CATEGORY to control the audio category, determining whether the phone mute switch affects the audio
|
| | |
|
| | | ---------------------------------------------------------------------------
|
| | | 2.0.5:
|
| | | ---------------------------------------------------------------------------
|
| | |
|
| | |
| | | */ |
| | | |
| | | #include "SDL.h" |
| | | #include "math.h" |
| | | #include <math.h> |
| | | #include "common.h" |
| | | |
| | | #define DAMPING 0.5f; /* after bouncing off a wall, damping coefficient determines final speed */ |
| | |
| | | static Uint64 prevTime = 0; |
| | | |
| | | double |
| | | updateDeltaTime() |
| | | updateDeltaTime(void) |
| | | { |
| | | Uint64 curTime; |
| | | double deltaTime; |
| | |
| | | extern int randomInt(int min, int max); |
| | | extern float randomFloat(float min, float max); |
| | | extern void fatalError(const char *string); |
| | | extern double updateDeltaTime(); |
| | | extern double updateDeltaTime(void); |
| | |
| | | SDL_Window *window; /* main window */ |
| | | SDL_GLContext context; |
| | | int drawableW, drawableH; |
| | | Uint32 startFrame; /* time frame began to process */ |
| | | Uint32 endFrame; /* time frame ended processing */ |
| | | Uint32 delay; /* time to pause waiting to draw next frame */ |
| | | int done; /* should we clean up and exit? */ |
| | | |
| | | /* initialize SDL */ |
| | |
| | | #include "SDL.h" |
| | | #include "common.h" |
| | | |
| | | #define TEST_INPUT_RECT |
| | | |
| | | #define GLYPH_SIZE_IMAGE 16 /* size of glyphs (characters) in the bitmap font file */ |
| | | #define GLYPH_SIZE_SCREEN 32 /* size of glyphs (characters) as shown on the screen */ |
| | | |
| | | static SDL_Texture *texture; /* texture where we'll hold our font */ |
| | | #define MAX_CHARS 1024 |
| | | |
| | | /* function declarations */ |
| | | void cleanup(void); |
| | | void drawBlank(int x, int y); |
| | | static SDL_Texture *texture; /* texture where we'll hold our font */ |
| | | |
| | | static SDL_Renderer *renderer; |
| | | static int numChars = 0; /* number of characters we've typed so far */ |
| | | static SDL_bool lastCharWasColon = 0; /* we use this to detect sequences such as :) */ |
| | | static SDL_Color bg_color = { 50, 50, 100, 255 }; /* color of background */ |
| | | |
| | | static int glyphs[MAX_CHARS]; |
| | | |
| | | /* this structure maps a scancode to an index in our bitmap font. |
| | | it also contains data about under which modifiers the mapping is valid |
| | |
| | | If there is no entry for the key, -1 is returned |
| | | */ |
| | | int |
| | | keyToIndex(SDL_Keysym key) |
| | | keyToGlyphIndex(SDL_Keysym key) |
| | | { |
| | | int i, index = -1; |
| | | for (i = 0; i < TABLE_SIZE; i++) { |
| | |
| | | int max_x_chars = (renderW - 2 * x_padding) / GLYPH_SIZE_SCREEN; |
| | | int line_separation = 5; /* pixels between each line */ |
| | | *x = (n % max_x_chars) * GLYPH_SIZE_SCREEN + x_padding; |
| | | *y = (n / max_x_chars) * (GLYPH_SIZE_SCREEN + line_separation) + |
| | | y_padding; |
| | | #ifdef TEST_INPUT_RECT |
| | | *y = renderH - GLYPH_SIZE_SCREEN; |
| | | #else |
| | | *y = (n / max_x_chars) * (GLYPH_SIZE_SCREEN + line_separation) + y_padding; |
| | | #endif |
| | | } |
| | | |
| | | void |
| | | drawIndex(int index) |
| | | drawGlyph(int glyph, int positionIndex) |
| | | { |
| | | int x, y; |
| | | getPositionForCharNumber(numChars, &x, &y); |
| | | SDL_Rect srcRect = |
| | | { GLYPH_SIZE_IMAGE * index, 0, GLYPH_SIZE_IMAGE, GLYPH_SIZE_IMAGE }; |
| | | getPositionForCharNumber(positionIndex, &x, &y); |
| | | SDL_Rect srcRect = { GLYPH_SIZE_IMAGE * glyph, 0, GLYPH_SIZE_IMAGE, GLYPH_SIZE_IMAGE }; |
| | | SDL_Rect dstRect = { x, y, GLYPH_SIZE_SCREEN, GLYPH_SIZE_SCREEN }; |
| | | drawBlank(x, y); |
| | | SDL_RenderCopy(renderer, texture, &srcRect, &dstRect); |
| | | } |
| | | |
| | | /* draws the cursor icon at the current end position of the text */ |
| | | void |
| | | drawCursor(void) |
| | | { |
| | | drawIndex(29); /* cursor is at index 29 in the bitmap font */ |
| | | } |
| | | |
| | | /* paints over a glyph sized region with the background color |
| | | in effect it erases the area |
| | | */ |
| | | void |
| | | drawBlank(int x, int y) |
| | | { |
| | | SDL_Rect rect = { x, y, GLYPH_SIZE_SCREEN, GLYPH_SIZE_SCREEN }; |
| | | SDL_SetRenderDrawColor(renderer, bg_color.r, bg_color.g, bg_color.b, bg_color.a); |
| | | SDL_RenderFillRect(renderer, &rect); |
| | | } |
| | | |
| | | /* moves backwards one character, erasing the last one put down */ |
| | | void |
| | | backspace(void) |
| | | { |
| | | int x, y; |
| | | if (numChars > 0) { |
| | | getPositionForCharNumber(numChars, &x, &y); |
| | | drawBlank(x, y); |
| | | numChars--; |
| | | getPositionForCharNumber(numChars, &x, &y); |
| | | drawBlank(x, y); |
| | | drawCursor(); |
| | | } |
| | | } |
| | | |
| | | /* this function loads our font into an SDL_Texture and returns the SDL_Texture */ |
| | | SDL_Texture* |
| | | loadFont(void) |
| | | { |
| | | |
| | | SDL_Surface *surface = SDL_LoadBMP("kromasky_16x16.bmp"); |
| | | |
| | | if (!surface) { |
| | |
| | | Bmask, Amask); |
| | | SDL_BlitSurface(surface, NULL, converted, NULL); |
| | | /* create our texture */ |
| | | texture = |
| | | SDL_CreateTextureFromSurface(renderer, converted); |
| | | texture = SDL_CreateTextureFromSurface(renderer, converted); |
| | | if (texture == 0) { |
| | | printf("texture creation failed: %s\n", SDL_GetError()); |
| | | } else { |
| | |
| | | } |
| | | } |
| | | |
| | | void |
| | | draw() |
| | | { |
| | | SDL_SetRenderDrawColor(renderer, bg_color.r, bg_color.g, bg_color.b, bg_color.a); |
| | | SDL_RenderClear(renderer); |
| | | |
| | | for (int i = 0; i < numChars; i++) { |
| | | drawGlyph(glyphs[i], i); |
| | | } |
| | | |
| | | drawGlyph(29, numChars); /* cursor is at index 29 in the bitmap font */ |
| | | |
| | | SDL_RenderPresent(renderer); |
| | | } |
| | | |
| | | int |
| | | main(int argc, char *argv[]) |
| | | { |
| | | int index; /* index of last key we pushed in the bitmap font */ |
| | | SDL_Window *window; |
| | | SDL_Event event; /* last event received */ |
| | | SDL_Keymod mod; /* key modifiers of last key we pushed */ |
| | | SDL_Scancode scancode; /* scancode of last key we pushed */ |
| | | int width; |
| | | int height; |
| | | int done; |
| | | SDL_Rect textrect; |
| | | |
| | | if (SDL_Init(SDL_INIT_VIDEO) < 0) { |
| | | printf("Error initializing SDL: %s", SDL_GetError()); |
| | | } |
| | | /* create window */ |
| | | window = SDL_CreateWindow("iPhone keyboard test", 0, 0, 320, 480, SDL_WINDOW_ALLOW_HIGHDPI); |
| | | window = SDL_CreateWindow("iOS keyboard test", 0, 0, 0, 0, SDL_WINDOW_FULLSCREEN_DESKTOP | SDL_WINDOW_RESIZABLE | SDL_WINDOW_ALLOW_HIGHDPI); |
| | | /* create renderer */ |
| | | renderer = SDL_CreateRenderer(window, -1, 0); |
| | | renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_PRESENTVSYNC); |
| | | |
| | | SDL_GetWindowSize(window, &width, &height); |
| | | SDL_RenderSetLogicalSize(renderer, width, height); |
| | | |
| | | /* load up our font */ |
| | | loadFont(); |
| | | |
| | | /* Show onscreen keyboard */ |
| | | #ifdef TEST_INPUT_RECT |
| | | textrect.x = 0; |
| | | textrect.y = height - GLYPH_SIZE_IMAGE; |
| | | textrect.w = width; |
| | | textrect.h = GLYPH_SIZE_IMAGE; |
| | | SDL_SetTextInputRect(&textrect); |
| | | #endif |
| | | SDL_StartTextInput(); |
| | | |
| | | /* draw the background, we'll just paint over it */ |
| | | SDL_SetRenderDrawColor(renderer, bg_color.r, bg_color.g, bg_color.b, bg_color.a); |
| | | SDL_RenderFillRect(renderer, NULL); |
| | | SDL_RenderPresent(renderer); |
| | | |
| | | int done = 0; |
| | | /* loop till we get SDL_Quit */ |
| | | while (!done && SDL_WaitEvent(&event)) { |
| | | switch (event.type) { |
| | | case SDL_QUIT: |
| | | done = 1; |
| | | break; |
| | | case SDL_KEYDOWN: |
| | | index = keyToIndex(event.key.keysym); |
| | | scancode = event.key.keysym.scancode; |
| | | mod = event.key.keysym.mod; |
| | | if (scancode == SDL_SCANCODE_DELETE) { |
| | | /* if user hit delete, delete the last character */ |
| | | backspace(); |
| | | lastCharWasColon = 0; |
| | | } else if (lastCharWasColon && scancode == SDL_SCANCODE_0 |
| | | && (mod & KMOD_SHIFT)) { |
| | | /* if our last key was a colon and this one is a close paren, the make a hoppy face */ |
| | | backspace(); |
| | | drawIndex(32); /* index for happy face */ |
| | | numChars++; |
| | | drawCursor(); |
| | | lastCharWasColon = 0; |
| | | } else if (index != -1) { |
| | | /* if we aren't doing a happy face, then just draw the normal character */ |
| | | drawIndex(index); |
| | | numChars++; |
| | | drawCursor(); |
| | | lastCharWasColon = |
| | | (event.key.keysym.scancode == SDL_SCANCODE_SEMICOLON |
| | | && (event.key.keysym.mod & KMOD_SHIFT)); |
| | | done = 0; |
| | | while (!done) { |
| | | while (SDL_PollEvent(&event)) { |
| | | switch (event.type) { |
| | | case SDL_QUIT: |
| | | done = 1; |
| | | break; |
| | | case SDL_WINDOWEVENT: |
| | | if (event.window.event == SDL_WINDOWEVENT_RESIZED) { |
| | | width = event.window.data1; |
| | | height = event.window.data2; |
| | | SDL_RenderSetLogicalSize(renderer, width, height); |
| | | #ifdef TEST_INPUT_RECT |
| | | textrect.x = 0; |
| | | textrect.y = height - GLYPH_SIZE_IMAGE; |
| | | textrect.w = width; |
| | | textrect.h = GLYPH_SIZE_IMAGE; |
| | | SDL_SetTextInputRect(&textrect); |
| | | #endif |
| | | } |
| | | break; |
| | | case SDL_KEYDOWN: |
| | | if (event.key.keysym.scancode == SDL_SCANCODE_BACKSPACE) { |
| | | if (numChars > 0) { |
| | | numChars--; |
| | | } |
| | | } else if (numChars + 1 < MAX_CHARS) { |
| | | int index = keyToGlyphIndex(event.key.keysym); |
| | | if (index >= 0) { |
| | | glyphs[numChars++] = index; |
| | | } |
| | | } |
| | | break; |
| | | case SDL_MOUSEBUTTONUP: |
| | | /* mouse up toggles onscreen keyboard visibility */ |
| | | if (SDL_IsTextInputActive()) { |
| | | SDL_StopTextInput(); |
| | | } else { |
| | | SDL_StartTextInput(); |
| | | } |
| | | break; |
| | | } |
| | | /* check if the key was a colon */ |
| | | /* draw our updates to the screen */ |
| | | SDL_RenderPresent(renderer); |
| | | break; |
| | | case SDL_MOUSEBUTTONUP: |
| | | /* mouse up toggles onscreen keyboard visibility */ |
| | | if (SDL_IsTextInputActive()) { |
| | | SDL_StopTextInput(); |
| | | } else { |
| | | SDL_StartTextInput(); |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | cleanup(); |
| | | return 0; |
| | | } |
| | | |
| | | /* clean up after ourselves like a good kiddy */ |
| | | void |
| | | cleanup(void) |
| | | { |
| | | draw(); |
| | | SDL_Delay(15); |
| | | } |
| | | |
| | | SDL_DestroyTexture(texture); |
| | | SDL_DestroyRenderer(renderer); |
| | | SDL_DestroyWindow(window); |
| | | SDL_Quit(); |
| | | return 0; |
| | | } |
| | |
| | | |
| | | /* mix this sound effect with the output */ |
| | | SDL_MixAudioFormat(stream, mixer.channels[i].position, |
| | | mixer.outputSpec.format, copy_amt, 150); |
| | | mixer.outputSpec.format, copy_amt, SDL_MIX_MAXVOLUME); |
| | | |
| | | /* update buffer position in sound effect and the number of bytes left */ |
| | | mixer.channels[i].position += copy_amt; |
| | |
| | | */ |
| | | |
| | | #include "SDL.h" |
| | | #include "math.h" |
| | | #include <math.h> |
| | | #include "common.h" |
| | | |
| | | #define BRUSH_SIZE 32 /* width and height of the brush */ |
| | |
| | | name = PrepareXcodeProjectTemplate; |
| | | productName = PrepareXcodeProjectTemplate; |
| | | }; |
| | | C143576D1F4C4DAA000B792B /* All-iOS */ = { |
| | | isa = PBXAggregateTarget; |
| | | buildConfigurationList = C143576E1F4C4DAB000B792B /* Build configuration list for PBXAggregateTarget "All-iOS" */; |
| | | buildPhases = ( |
| | | C14357711F4C4DB2000B792B /* ShellScript */, |
| | | ); |
| | | dependencies = ( |
| | | ); |
| | | name = "All-iOS"; |
| | | productName = "All (iOS)"; |
| | | }; |
| | | C14357721F4C4F2A000B792B /* All-tvOS */ = { |
| | | isa = PBXAggregateTarget; |
| | | buildConfigurationList = C14357741F4C4F2A000B792B /* Build configuration list for PBXAggregateTarget "All-tvOS" */; |
| | | buildPhases = ( |
| | | C14357731F4C4F2A000B792B /* ShellScript */, |
| | | ); |
| | | dependencies = ( |
| | | ); |
| | | name = "All-tvOS"; |
| | | productName = "All (iOS)"; |
| | | }; |
| | | /* End PBXAggregateTarget section */ |
| | | |
| | | /* Begin PBXBuildFile section */ |
| | |
| | | 041B2CF212FA0F680087D585 /* SDL_sysrender.h in Headers */ = {isa = PBXBuildFile; fileRef = 041B2CEB12FA0F680087D585 /* SDL_sysrender.h */; }; |
| | | 0420497011E6F03D007E7EC9 /* SDL_clipboardevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0420496E11E6F03D007E7EC9 /* SDL_clipboardevents_c.h */; }; |
| | | 0420497111E6F03D007E7EC9 /* SDL_clipboardevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 0420496F11E6F03D007E7EC9 /* SDL_clipboardevents.c */; }; |
| | | 04409BA612FA989600FB9AA8 /* mmx.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409BA212FA989600FB9AA8 /* mmx.h */; }; |
| | | 04409BA712FA989600FB9AA8 /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409BA312FA989600FB9AA8 /* SDL_yuv_mmx.c */; }; |
| | | 04409BA812FA989600FB9AA8 /* SDL_yuv_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409BA412FA989600FB9AA8 /* SDL_yuv_sw_c.h */; }; |
| | | 04409BA912FA989600FB9AA8 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409BA512FA989600FB9AA8 /* SDL_yuv_sw.c */; }; |
| | | 0442EC5012FE1C1E004C9285 /* SDL_render_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0442EC4E12FE1C1E004C9285 /* SDL_render_sw_c.h */; }; |
| | |
| | | 04F7808512FB753F00FC43C0 /* SDL_nullframebuffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7808312FB753F00FC43C0 /* SDL_nullframebuffer.c */; }; |
| | | 04FFAB8B12E23B8D00BA343D /* SDL_atomic.c in Sources */ = {isa = PBXBuildFile; fileRef = 04FFAB8912E23B8D00BA343D /* SDL_atomic.c */; }; |
| | | 04FFAB8C12E23B8D00BA343D /* SDL_spinlock.c in Sources */ = {isa = PBXBuildFile; fileRef = 04FFAB8A12E23B8D00BA343D /* SDL_spinlock.c */; }; |
| | | 4D7516FB1EE1C28A00820EEA /* SDL_uikitmetalview.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D7516F81EE1C28A00820EEA /* SDL_uikitmetalview.m */; }; |
| | | 4D7516FC1EE1C28A00820EEA /* SDL_uikitvulkan.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D7516F91EE1C28A00820EEA /* SDL_uikitvulkan.h */; }; |
| | | 4D7516FD1EE1C28A00820EEA /* SDL_uikitvulkan.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D7516FA1EE1C28A00820EEA /* SDL_uikitvulkan.m */; }; |
| | | 4D7516FF1EE1C5B400820EEA /* SDL_vulkan.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D7516FE1EE1C5B400820EEA /* SDL_vulkan.h */; }; |
| | | 4D75171A1EE1D32200820EEA /* SDL_uikitmetalview.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D7517191EE1D32200820EEA /* SDL_uikitmetalview.h */; }; |
| | | 4D75171F1EE1D98200820EEA /* SDL_vulkan_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D75171D1EE1D98200820EEA /* SDL_vulkan_internal.h */; }; |
| | | 4D7517201EE1D98200820EEA /* SDL_vulkan_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D75171E1EE1D98200820EEA /* SDL_vulkan_utils.c */; }; |
| | | 566726451DF72CF5001DD3DB /* SDL_dataqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 566726431DF72CF5001DD3DB /* SDL_dataqueue.c */; }; |
| | | 566726461DF72CF5001DD3DB /* SDL_dataqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 566726441DF72CF5001DD3DB /* SDL_dataqueue.h */; }; |
| | | 56A6702E18565E450007D20F /* SDL_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 56A6702D18565E450007D20F /* SDL_internal.h */; }; |
| | | 56A6703518565E760007D20F /* SDL_dynapi_overrides.h in Headers */ = {isa = PBXBuildFile; fileRef = 56A6703118565E760007D20F /* SDL_dynapi_overrides.h */; }; |
| | | 56A6703618565E760007D20F /* SDL_dynapi_procs.h in Headers */ = {isa = PBXBuildFile; fileRef = 56A6703218565E760007D20F /* SDL_dynapi_procs.h */; }; |
| | |
| | | 56EA86FC13E9EC2B002E47EB /* SDL_coreaudio.h in Headers */ = {isa = PBXBuildFile; fileRef = 56EA86FA13E9EC2B002E47EB /* SDL_coreaudio.h */; }; |
| | | 56ED04E1118A8EE200A56AA6 /* SDL_power.c in Sources */ = {isa = PBXBuildFile; fileRef = 56ED04E0118A8EE200A56AA6 /* SDL_power.c */; }; |
| | | 56ED04E3118A8EFD00A56AA6 /* SDL_syspower.m in Sources */ = {isa = PBXBuildFile; fileRef = 56ED04E2118A8EFD00A56AA6 /* SDL_syspower.m */; }; |
| | | 56F9D5601DF73BA400C15B5D /* SDL_dataqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 566726431DF72CF5001DD3DB /* SDL_dataqueue.c */; }; |
| | | 93CB792313FC5E5200BD3E05 /* SDL_uikitviewcontroller.h in Headers */ = {isa = PBXBuildFile; fileRef = 93CB792213FC5E5200BD3E05 /* SDL_uikitviewcontroller.h */; }; |
| | | 93CB792613FC5F5300BD3E05 /* SDL_uikitviewcontroller.m in Sources */ = {isa = PBXBuildFile; fileRef = 93CB792513FC5F5300BD3E05 /* SDL_uikitviewcontroller.m */; }; |
| | | A7A9EEA91F702631002A5589 /* SDL_steamcontroller.c in Sources */ = {isa = PBXBuildFile; fileRef = A7A9EEA71F702631002A5589 /* SDL_steamcontroller.c */; }; |
| | | A7A9EEAA1F702631002A5589 /* SDL_steamcontroller.h in Headers */ = {isa = PBXBuildFile; fileRef = A7A9EEA81F702631002A5589 /* SDL_steamcontroller.h */; }; |
| | | A7F629241FE06523002F9CC9 /* SDL_uikitmetalview.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D7516F81EE1C28A00820EEA /* SDL_uikitmetalview.m */; }; |
| | | AA0AD06216647BBB00CE5896 /* SDL_gamecontroller.c in Sources */ = {isa = PBXBuildFile; fileRef = AA0AD06116647BBB00CE5896 /* SDL_gamecontroller.c */; }; |
| | | AA0AD06516647BD400CE5896 /* SDL_gamecontroller.h in Headers */ = {isa = PBXBuildFile; fileRef = AA0AD06416647BD400CE5896 /* SDL_gamecontroller.h */; }; |
| | | AA0F8495178D5F1A00823F9D /* SDL_systls.c in Sources */ = {isa = PBXBuildFile; fileRef = AA0F8494178D5F1A00823F9D /* SDL_systls.c */; }; |
| | | AA126AD41617C5E7005ABC8F /* SDL_uikitmodes.h in Headers */ = {isa = PBXBuildFile; fileRef = AA126AD21617C5E6005ABC8F /* SDL_uikitmodes.h */; }; |
| | | AA126AD51617C5E7005ABC8F /* SDL_uikitmodes.m in Sources */ = {isa = PBXBuildFile; fileRef = AA126AD31617C5E6005ABC8F /* SDL_uikitmodes.m */; }; |
| | | AA13B3491FB8B27800D9FEE6 /* SDL_egl_c.h in Headers */ = {isa = PBXBuildFile; fileRef = AA13B3431FB8B27700D9FEE6 /* SDL_egl_c.h */; }; |
| | | AA13B34A1FB8B27800D9FEE6 /* SDL_shape.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B3441FB8B27800D9FEE6 /* SDL_shape.c */; }; |
| | | AA13B34B1FB8B27800D9FEE6 /* SDL_shape_internals.h in Headers */ = {isa = PBXBuildFile; fileRef = AA13B3451FB8B27800D9FEE6 /* SDL_shape_internals.h */; }; |
| | | AA13B34C1FB8B27800D9FEE6 /* SDL_rect_c.h in Headers */ = {isa = PBXBuildFile; fileRef = AA13B3461FB8B27800D9FEE6 /* SDL_rect_c.h */; }; |
| | | AA13B34D1FB8B27800D9FEE6 /* SDL_egl.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B3471FB8B27800D9FEE6 /* SDL_egl.c */; }; |
| | | AA13B34E1FB8B27800D9FEE6 /* SDL_yuv_c.h in Headers */ = {isa = PBXBuildFile; fileRef = AA13B3481FB8B27800D9FEE6 /* SDL_yuv_c.h */; }; |
| | | AA13B3501FB8B3CC00D9FEE6 /* SDL_yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B34F1FB8B3CC00D9FEE6 /* SDL_yuv.c */; }; |
| | | AA13B3571FB8B46400D9FEE6 /* yuv_rgb_std_func.h in Headers */ = {isa = PBXBuildFile; fileRef = AA13B3531FB8B46300D9FEE6 /* yuv_rgb_std_func.h */; }; |
| | | AA13B3581FB8B46400D9FEE6 /* yuv_rgb_sse_func.h in Headers */ = {isa = PBXBuildFile; fileRef = AA13B3541FB8B46300D9FEE6 /* yuv_rgb_sse_func.h */; }; |
| | | AA13B3591FB8B46400D9FEE6 /* yuv_rgb.h in Headers */ = {isa = PBXBuildFile; fileRef = AA13B3551FB8B46300D9FEE6 /* yuv_rgb.h */; }; |
| | | AA13B35A1FB8B46400D9FEE6 /* yuv_rgb.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B3561FB8B46300D9FEE6 /* yuv_rgb.c */; }; |
| | | AA628ADB159369E3005138DD /* SDL_rotate.c in Sources */ = {isa = PBXBuildFile; fileRef = AA628AD9159369E3005138DD /* SDL_rotate.c */; }; |
| | | AA628ADC159369E3005138DD /* SDL_rotate.h in Headers */ = {isa = PBXBuildFile; fileRef = AA628ADA159369E3005138DD /* SDL_rotate.h */; }; |
| | | AA704DD6162AA90A0076D1C1 /* SDL_dropevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = AA704DD4162AA90A0076D1C1 /* SDL_dropevents_c.h */; }; |
| | |
| | | AABCC3941640643D00AB8930 /* SDL_uikitmessagebox.h in Headers */ = {isa = PBXBuildFile; fileRef = AABCC3921640643D00AB8930 /* SDL_uikitmessagebox.h */; }; |
| | | AABCC3951640643D00AB8930 /* SDL_uikitmessagebox.m in Sources */ = {isa = PBXBuildFile; fileRef = AABCC3931640643D00AB8930 /* SDL_uikitmessagebox.m */; }; |
| | | AADA5B8F16CCAB7C00107CF7 /* SDL_bits.h in Headers */ = {isa = PBXBuildFile; fileRef = AADA5B8E16CCAB7C00107CF7 /* SDL_bits.h */; }; |
| | | AADC5A5D1FDA104400960936 /* yuv_rgb.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B3561FB8B46300D9FEE6 /* yuv_rgb.c */; }; |
| | | AADC5A5E1FDA105300960936 /* SDL_yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B34F1FB8B3CC00D9FEE6 /* SDL_yuv.c */; }; |
| | | AADC5A5F1FDA105600960936 /* SDL_vulkan_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D75171E1EE1D98200820EEA /* SDL_vulkan_utils.c */; }; |
| | | AADC5A601FDA10A400960936 /* SDL_uikitvulkan.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D7516FA1EE1C28A00820EEA /* SDL_uikitvulkan.m */; }; |
| | | AADC5A631FDA10C800960936 /* SDL_shaders_metal_ios.h in Headers */ = {isa = PBXBuildFile; fileRef = AADC5A611FDA10C800960936 /* SDL_shaders_metal_ios.h */; }; |
| | | AADC5A641FDA10C800960936 /* SDL_render_metal.m in Sources */ = {isa = PBXBuildFile; fileRef = AADC5A621FDA10C800960936 /* SDL_render_metal.m */; }; |
| | | AADC5A651FDA10CB00960936 /* SDL_render_metal.m in Sources */ = {isa = PBXBuildFile; fileRef = AADC5A621FDA10C800960936 /* SDL_render_metal.m */; }; |
| | | AAE7A4222041CCA90096E65A /* SDL_steamcontroller.c in Sources */ = {isa = PBXBuildFile; fileRef = A7A9EEA71F702631002A5589 /* SDL_steamcontroller.c */; }; |
| | | FA1DC2721C62BE65008F99A0 /* SDL_uikitclipboard.h in Headers */ = {isa = PBXBuildFile; fileRef = FA1DC2701C62BE65008F99A0 /* SDL_uikitclipboard.h */; }; |
| | | FA1DC2731C62BE65008F99A0 /* SDL_uikitclipboard.m in Sources */ = {isa = PBXBuildFile; fileRef = FA1DC2711C62BE65008F99A0 /* SDL_uikitclipboard.m */; }; |
| | | FAB5981D1BB5C31500BE72C5 /* SDL_atomic.c in Sources */ = {isa = PBXBuildFile; fileRef = 04FFAB8912E23B8D00BA343D /* SDL_atomic.c */; }; |
| | |
| | | FAB598681BB5C31600BE72C5 /* SDL_render_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 0442EC4F12FE1C1E004C9285 /* SDL_render_sw.c */; }; |
| | | FAB5986A1BB5C31600BE72C5 /* SDL_rotate.c in Sources */ = {isa = PBXBuildFile; fileRef = AA628AD9159369E3005138DD /* SDL_rotate.c */; }; |
| | | FAB5986D1BB5C31600BE72C5 /* SDL_render.c in Sources */ = {isa = PBXBuildFile; fileRef = 041B2CEA12FA0F680087D585 /* SDL_render.c */; }; |
| | | FAB5986F1BB5C31600BE72C5 /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409BA312FA989600FB9AA8 /* SDL_yuv_mmx.c */; }; |
| | | FAB598711BB5C31600BE72C5 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409BA512FA989600FB9AA8 /* SDL_yuv_sw.c */; }; |
| | | FAB598721BB5C31600BE72C5 /* SDL_getenv.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A700DEA620800C5B771 /* SDL_getenv.c */; }; |
| | | FAB598731BB5C31600BE72C5 /* SDL_iconv.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A710DEA620800C5B771 /* SDL_iconv.c */; }; |
| | |
| | | 041B2CEB12FA0F680087D585 /* SDL_sysrender.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysrender.h; sourceTree = "<group>"; }; |
| | | 0420496E11E6F03D007E7EC9 /* SDL_clipboardevents_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_clipboardevents_c.h; sourceTree = "<group>"; }; |
| | | 0420496F11E6F03D007E7EC9 /* SDL_clipboardevents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_clipboardevents.c; sourceTree = "<group>"; }; |
| | | 04409BA212FA989600FB9AA8 /* mmx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mmx.h; sourceTree = "<group>"; }; |
| | | 04409BA312FA989600FB9AA8 /* SDL_yuv_mmx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_mmx.c; sourceTree = "<group>"; }; |
| | | 04409BA412FA989600FB9AA8 /* SDL_yuv_sw_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_yuv_sw_c.h; sourceTree = "<group>"; }; |
| | | 04409BA512FA989600FB9AA8 /* SDL_yuv_sw.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_sw.c; sourceTree = "<group>"; }; |
| | | 0442EC4E12FE1C1E004C9285 /* SDL_render_sw_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_render_sw_c.h; sourceTree = "<group>"; }; |
| | |
| | | 04F7808312FB753F00FC43C0 /* SDL_nullframebuffer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_nullframebuffer.c; sourceTree = "<group>"; }; |
| | | 04FFAB8912E23B8D00BA343D /* SDL_atomic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_atomic.c; sourceTree = "<group>"; }; |
| | | 04FFAB8A12E23B8D00BA343D /* SDL_spinlock.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_spinlock.c; sourceTree = "<group>"; }; |
| | | 4D7516F81EE1C28A00820EEA /* SDL_uikitmetalview.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitmetalview.m; sourceTree = "<group>"; }; |
| | | 4D7516F91EE1C28A00820EEA /* SDL_uikitvulkan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitvulkan.h; sourceTree = "<group>"; }; |
| | | 4D7516FA1EE1C28A00820EEA /* SDL_uikitvulkan.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitvulkan.m; sourceTree = "<group>"; }; |
| | | 4D7516FE1EE1C5B400820EEA /* SDL_vulkan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_vulkan.h; sourceTree = "<group>"; }; |
| | | 4D7517191EE1D32200820EEA /* SDL_uikitmetalview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitmetalview.h; sourceTree = "<group>"; }; |
| | | 4D75171D1EE1D98200820EEA /* SDL_vulkan_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_vulkan_internal.h; sourceTree = "<group>"; }; |
| | | 4D75171E1EE1D98200820EEA /* SDL_vulkan_utils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_vulkan_utils.c; sourceTree = "<group>"; }; |
| | | 566726431DF72CF5001DD3DB /* SDL_dataqueue.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_dataqueue.c; path = ../../src/SDL_dataqueue.c; sourceTree = "<group>"; }; |
| | | 566726441DF72CF5001DD3DB /* SDL_dataqueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_dataqueue.h; path = ../../src/SDL_dataqueue.h; sourceTree = "<group>"; }; |
| | | 56A6702D18565E450007D20F /* SDL_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_internal.h; path = ../../src/SDL_internal.h; sourceTree = "<group>"; }; |
| | | 56A6703118565E760007D20F /* SDL_dynapi_overrides.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_dynapi_overrides.h; path = ../../src/dynapi/SDL_dynapi_overrides.h; sourceTree = "<group>"; }; |
| | | 56A6703218565E760007D20F /* SDL_dynapi_procs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_dynapi_procs.h; path = ../../src/dynapi/SDL_dynapi_procs.h; sourceTree = "<group>"; }; |
| | |
| | | 56ED04E2118A8EFD00A56AA6 /* SDL_syspower.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SDL_syspower.m; path = ../../src/power/uikit/SDL_syspower.m; sourceTree = SOURCE_ROOT; }; |
| | | 93CB792213FC5E5200BD3E05 /* SDL_uikitviewcontroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitviewcontroller.h; sourceTree = "<group>"; }; |
| | | 93CB792513FC5F5300BD3E05 /* SDL_uikitviewcontroller.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitviewcontroller.m; sourceTree = "<group>"; }; |
| | | A7A9EEA71F702631002A5589 /* SDL_steamcontroller.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_steamcontroller.c; sourceTree = "<group>"; }; |
| | | A7A9EEA81F702631002A5589 /* SDL_steamcontroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_steamcontroller.h; sourceTree = "<group>"; }; |
| | | AA0AD06116647BBB00CE5896 /* SDL_gamecontroller.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_gamecontroller.c; sourceTree = "<group>"; }; |
| | | AA0AD06416647BD400CE5896 /* SDL_gamecontroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gamecontroller.h; sourceTree = "<group>"; }; |
| | | AA0F8494178D5F1A00823F9D /* SDL_systls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_systls.c; sourceTree = "<group>"; }; |
| | | AA126AD21617C5E6005ABC8F /* SDL_uikitmodes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitmodes.h; sourceTree = "<group>"; }; |
| | | AA126AD31617C5E6005ABC8F /* SDL_uikitmodes.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitmodes.m; sourceTree = "<group>"; }; |
| | | AA13B3431FB8B27700D9FEE6 /* SDL_egl_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_egl_c.h; sourceTree = "<group>"; }; |
| | | AA13B3441FB8B27800D9FEE6 /* SDL_shape.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_shape.c; sourceTree = "<group>"; }; |
| | | AA13B3451FB8B27800D9FEE6 /* SDL_shape_internals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shape_internals.h; sourceTree = "<group>"; }; |
| | | AA13B3461FB8B27800D9FEE6 /* SDL_rect_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rect_c.h; sourceTree = "<group>"; }; |
| | | AA13B3471FB8B27800D9FEE6 /* SDL_egl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_egl.c; sourceTree = "<group>"; }; |
| | | AA13B3481FB8B27800D9FEE6 /* SDL_yuv_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_yuv_c.h; sourceTree = "<group>"; }; |
| | | AA13B34F1FB8B3CC00D9FEE6 /* SDL_yuv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv.c; sourceTree = "<group>"; }; |
| | | AA13B3531FB8B46300D9FEE6 /* yuv_rgb_std_func.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = yuv_rgb_std_func.h; sourceTree = "<group>"; }; |
| | | AA13B3541FB8B46300D9FEE6 /* yuv_rgb_sse_func.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = yuv_rgb_sse_func.h; sourceTree = "<group>"; }; |
| | | AA13B3551FB8B46300D9FEE6 /* yuv_rgb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = yuv_rgb.h; sourceTree = "<group>"; }; |
| | | AA13B3561FB8B46300D9FEE6 /* yuv_rgb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = yuv_rgb.c; sourceTree = "<group>"; }; |
| | | AA628AD9159369E3005138DD /* SDL_rotate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_rotate.c; sourceTree = "<group>"; }; |
| | | AA628ADA159369E3005138DD /* SDL_rotate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rotate.h; sourceTree = "<group>"; }; |
| | | AA704DD4162AA90A0076D1C1 /* SDL_dropevents_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_dropevents_c.h; sourceTree = "<group>"; }; |
| | |
| | | AABCC3921640643D00AB8930 /* SDL_uikitmessagebox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitmessagebox.h; sourceTree = "<group>"; }; |
| | | AABCC3931640643D00AB8930 /* SDL_uikitmessagebox.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitmessagebox.m; sourceTree = "<group>"; }; |
| | | AADA5B8E16CCAB7C00107CF7 /* SDL_bits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_bits.h; sourceTree = "<group>"; }; |
| | | AADC5A611FDA10C800960936 /* SDL_shaders_metal_ios.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shaders_metal_ios.h; sourceTree = "<group>"; }; |
| | | AADC5A621FDA10C800960936 /* SDL_render_metal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_render_metal.m; sourceTree = "<group>"; }; |
| | | FA1DC2701C62BE65008F99A0 /* SDL_uikitclipboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitclipboard.h; sourceTree = "<group>"; }; |
| | | FA1DC2711C62BE65008F99A0 /* SDL_uikitclipboard.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitclipboard.m; sourceTree = "<group>"; }; |
| | | FAB598141BB5C1B100BE72C5 /* libSDL2.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDL2.a; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | |
| | | 041B2CE312FA0F680087D585 /* render */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | AADC5A5C1FDA100800960936 /* metal */, |
| | | 041B2CE812FA0F680087D585 /* opengles */, |
| | | 0402A85412FE70C600CECEE3 /* opengles2 */, |
| | | 041B2CEC12FA0F680087D585 /* software */, |
| | | 04409BA212FA989600FB9AA8 /* mmx.h */, |
| | | 041B2CEA12FA0F680087D585 /* SDL_render.c */, |
| | | 041B2CEB12FA0F680087D585 /* SDL_sysrender.h */, |
| | | 04409BA312FA989600FB9AA8 /* SDL_yuv_mmx.c */, |
| | | 04409BA412FA989600FB9AA8 /* SDL_yuv_sw_c.h */, |
| | | 04409BA512FA989600FB9AA8 /* SDL_yuv_sw.c */, |
| | | ); |
| | |
| | | name = uikit; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | A7A9EEA61F702607002A5589 /* steam */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | A7A9EEA71F702631002A5589 /* SDL_steamcontroller.c */, |
| | | A7A9EEA81F702631002A5589 /* SDL_steamcontroller.h */, |
| | | ); |
| | | path = steam; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | AA13B3521FB8B41700D9FEE6 /* yuv2rgb */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | AA13B3541FB8B46300D9FEE6 /* yuv_rgb_sse_func.h */, |
| | | AA13B3531FB8B46300D9FEE6 /* yuv_rgb_std_func.h */, |
| | | AA13B3561FB8B46300D9FEE6 /* yuv_rgb.c */, |
| | | AA13B3551FB8B46300D9FEE6 /* yuv_rgb.h */, |
| | | ); |
| | | path = yuv2rgb; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | AADC5A5C1FDA100800960936 /* metal */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | AADC5A621FDA10C800960936 /* SDL_render_metal.m */, |
| | | AADC5A611FDA10C800960936 /* SDL_shaders_metal_ios.h */, |
| | | ); |
| | | path = metal; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | FD3F4A6F0DEA620800C5B771 /* stdlib */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | |
| | | FD5F9D080E0E08B3008E885B /* joystick */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | A7A9EEA61F702607002A5589 /* steam */, |
| | | FD689EFF0E26E5B600F90B21 /* iphoneos */, |
| | | AA0AD06116647BBB00CE5896 /* SDL_gamecontroller.c */, |
| | | FD5F9D1E0E0E08B3008E885B /* SDL_joystick.c */, |
| | |
| | | FD689F0D0E26E5D900F90B21 /* SDL_uikitevents.m */, |
| | | AABCC3921640643D00AB8930 /* SDL_uikitmessagebox.h */, |
| | | AABCC3931640643D00AB8930 /* SDL_uikitmessagebox.m */, |
| | | 4D7517191EE1D32200820EEA /* SDL_uikitmetalview.h */, |
| | | 4D7516F81EE1C28A00820EEA /* SDL_uikitmetalview.m */, |
| | | AA126AD21617C5E6005ABC8F /* SDL_uikitmodes.h */, |
| | | AA126AD31617C5E6005ABC8F /* SDL_uikitmodes.m */, |
| | | FD689F0E0E26E5D900F90B21 /* SDL_uikitopengles.h */, |
| | |
| | | FD689F130E26E5D900F90B21 /* SDL_uikitview.m */, |
| | | 93CB792213FC5E5200BD3E05 /* SDL_uikitviewcontroller.h */, |
| | | 93CB792513FC5F5300BD3E05 /* SDL_uikitviewcontroller.m */, |
| | | 4D7516F91EE1C28A00820EEA /* SDL_uikitvulkan.h */, |
| | | 4D7516FA1EE1C28A00820EEA /* SDL_uikitvulkan.m */, |
| | | FD689F140E26E5D900F90B21 /* SDL_uikitwindow.h */, |
| | | FD689F150E26E5D900F90B21 /* SDL_uikitwindow.m */, |
| | | ); |
| | |
| | | AA7558941595D55500BBD41B /* SDL_types.h */, |
| | | AA7558951595D55500BBD41B /* SDL_version.h */, |
| | | AA7558961595D55500BBD41B /* SDL_video.h */, |
| | | 4D7516FE1EE1C5B400820EEA /* SDL_vulkan.h */, |
| | | ); |
| | | name = "Public Headers"; |
| | | path = ../../include; |
| | |
| | | 56A6702D18565E450007D20F /* SDL_internal.h */, |
| | | 04F2AF551104ABD200D6DDF7 /* SDL_assert.c */, |
| | | 04BAC09A1300C1290055DE28 /* SDL_assert_c.h */, |
| | | 566726431DF72CF5001DD3DB /* SDL_dataqueue.c */, |
| | | 566726441DF72CF5001DD3DB /* SDL_dataqueue.h */, |
| | | FD99B9D40DD52EDC00FB1D6B /* SDL_error_c.h */, |
| | | FD99B9D50DD52EDC00FB1D6B /* SDL_error.c */, |
| | | 0442EC5412FE1C3F004C9285 /* SDL_hints.c */, |
| | |
| | | FDA682420DF2374D00F98A1A /* video */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | FD689F090E26E5D900F90B21 /* uikit */, |
| | | FDA685F40DF244C800F98A1A /* dummy */, |
| | | FDA683000DF2374E00F98A1A /* SDL_blit.c */, |
| | | FDA683010DF2374E00F98A1A /* SDL_blit.h */, |
| | | FD689F090E26E5D900F90B21 /* uikit */, |
| | | AA13B3521FB8B41700D9FEE6 /* yuv2rgb */, |
| | | FDA683020DF2374E00F98A1A /* SDL_blit_0.c */, |
| | | FDA683030DF2374E00F98A1A /* SDL_blit_1.c */, |
| | | FDA683040DF2374E00F98A1A /* SDL_blit_A.c */, |
| | |
| | | FDA683090DF2374E00F98A1A /* SDL_blit_N.c */, |
| | | FDA6830A0DF2374E00F98A1A /* SDL_blit_slow.c */, |
| | | 0463873A0F0B5B7D0041FD65 /* SDL_blit_slow.h */, |
| | | FDA683000DF2374E00F98A1A /* SDL_blit.c */, |
| | | FDA683010DF2374E00F98A1A /* SDL_blit.h */, |
| | | FDA6830B0DF2374E00F98A1A /* SDL_bmp.c */, |
| | | 044E5FB711E606EB0076F181 /* SDL_clipboard.c */, |
| | | AA13B3431FB8B27700D9FEE6 /* SDL_egl_c.h */, |
| | | AA13B3471FB8B27800D9FEE6 /* SDL_egl.c */, |
| | | 0463873E0F0B5B7D0041FD65 /* SDL_fillrect.c */, |
| | | FDA6830F0DF2374E00F98A1A /* SDL_pixels.c */, |
| | | FDA683100DF2374E00F98A1A /* SDL_pixels_c.h */, |
| | | FDA6830F0DF2374E00F98A1A /* SDL_pixels.c */, |
| | | AA13B3461FB8B27800D9FEE6 /* SDL_rect_c.h */, |
| | | FDA683110DF2374E00F98A1A /* SDL_rect.c */, |
| | | FDA683150DF2374E00F98A1A /* SDL_RLEaccel.c */, |
| | | FDA683160DF2374E00F98A1A /* SDL_RLEaccel_c.h */, |
| | | FDA683150DF2374E00F98A1A /* SDL_RLEaccel.c */, |
| | | AA13B3451FB8B27800D9FEE6 /* SDL_shape_internals.h */, |
| | | AA13B3441FB8B27800D9FEE6 /* SDL_shape.c */, |
| | | FDA683170DF2374E00F98A1A /* SDL_stretch.c */, |
| | | FDA683190DF2374E00F98A1A /* SDL_surface.c */, |
| | | FDA6831A0DF2374E00F98A1A /* SDL_sysvideo.h */, |
| | | FDA6831B0DF2374E00F98A1A /* SDL_video.c */, |
| | | 4D75171D1EE1D98200820EEA /* SDL_vulkan_internal.h */, |
| | | 4D75171E1EE1D98200820EEA /* SDL_vulkan_utils.c */, |
| | | AA13B34F1FB8B3CC00D9FEE6 /* SDL_yuv.c */, |
| | | AA13B3481FB8B27800D9FEE6 /* SDL_yuv_c.h */, |
| | | ); |
| | | name = video; |
| | | path = ../../src/video; |
| | |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | FDA6844E0DF2374E00F98A1A /* SDL_blit.h in Headers */, |
| | | 4D75171A1EE1D32200820EEA /* SDL_uikitmetalview.h in Headers */, |
| | | 4D75171F1EE1D98200820EEA /* SDL_vulkan_internal.h in Headers */, |
| | | FDA684530DF2374E00F98A1A /* SDL_blit_auto.h in Headers */, |
| | | FDA684550DF2374E00F98A1A /* SDL_blit_copy.h in Headers */, |
| | | FDA6845D0DF2374E00F98A1A /* SDL_pixels_c.h in Headers */, |
| | |
| | | 56A6703818565E760007D20F /* SDL_dynapi.h in Headers */, |
| | | FD689FCF0E26E9D400F90B21 /* SDL_uikitappdelegate.h in Headers */, |
| | | 56A6703518565E760007D20F /* SDL_dynapi_overrides.h in Headers */, |
| | | AA13B3571FB8B46400D9FEE6 /* yuv_rgb_std_func.h in Headers */, |
| | | 047677BD0EA76A31008ABAF1 /* SDL_syshaptic.h in Headers */, |
| | | 046387420F0B5B7D0041FD65 /* SDL_blit_slow.h in Headers */, |
| | | 006E9888119552DD001DE610 /* SDL_rwopsbundlesupport.h in Headers */, |
| | | 0420497011E6F03D007E7EC9 /* SDL_clipboardevents_c.h in Headers */, |
| | | AA13B34C1FB8B27800D9FEE6 /* SDL_rect_c.h in Headers */, |
| | | AA13B3581FB8B46400D9FEE6 /* yuv_rgb_sse_func.h in Headers */, |
| | | 04BA9D6311EF474A00B60E01 /* SDL_gesture_c.h in Headers */, |
| | | 04BA9D6511EF474A00B60E01 /* SDL_touch_c.h in Headers */, |
| | | 041B2CF212FA0F680087D585 /* SDL_sysrender.h in Headers */, |
| | | 04409BA612FA989600FB9AA8 /* mmx.h in Headers */, |
| | | 04409BA812FA989600FB9AA8 /* SDL_yuv_sw_c.h in Headers */, |
| | | AA13B3591FB8B46400D9FEE6 /* yuv_rgb.h in Headers */, |
| | | 04F7807712FB751400FC43C0 /* SDL_blendfillrect.h in Headers */, |
| | | 04F7807912FB751400FC43C0 /* SDL_blendline.h in Headers */, |
| | | 04F7807B12FB751400FC43C0 /* SDL_blendpoint.h in Headers */, |
| | | 04F7807C12FB751400FC43C0 /* SDL_draw.h in Headers */, |
| | | 04F7807E12FB751400FC43C0 /* SDL_drawline.h in Headers */, |
| | | AA13B34E1FB8B27800D9FEE6 /* SDL_yuv_c.h in Headers */, |
| | | 04F7808012FB751400FC43C0 /* SDL_drawpoint.h in Headers */, |
| | | 04F7808412FB753F00FC43C0 /* SDL_nullframebuffer_c.h in Headers */, |
| | | A7A9EEAA1F702631002A5589 /* SDL_steamcontroller.h in Headers */, |
| | | 0442EC5012FE1C1E004C9285 /* SDL_render_sw_c.h in Headers */, |
| | | FA1DC2721C62BE65008F99A0 /* SDL_uikitclipboard.h in Headers */, |
| | | 0402A85A12FE70C600CECEE3 /* SDL_shaders_gles2.h in Headers */, |
| | |
| | | AA75589F1595D55500BBD41B /* SDL_config_iphoneos.h in Headers */, |
| | | AA7558A01595D55500BBD41B /* SDL_config.h in Headers */, |
| | | AA7558A11595D55500BBD41B /* SDL_copying.h in Headers */, |
| | | AA13B3491FB8B27800D9FEE6 /* SDL_egl_c.h in Headers */, |
| | | AA7558A21595D55500BBD41B /* SDL_cpuinfo.h in Headers */, |
| | | AA7558A31595D55500BBD41B /* SDL_endian.h in Headers */, |
| | | AA7558A41595D55500BBD41B /* SDL_error.h in Headers */, |
| | |
| | | AA7558A61595D55500BBD41B /* SDL_gesture.h in Headers */, |
| | | AA7558A71595D55500BBD41B /* SDL_haptic.h in Headers */, |
| | | AA7558A81595D55500BBD41B /* SDL_hints.h in Headers */, |
| | | 566726461DF72CF5001DD3DB /* SDL_dataqueue.h in Headers */, |
| | | AA7558AA1595D55500BBD41B /* SDL_joystick.h in Headers */, |
| | | AA13B34B1FB8B27800D9FEE6 /* SDL_shape_internals.h in Headers */, |
| | | AA7558AB1595D55500BBD41B /* SDL_keyboard.h in Headers */, |
| | | AA7558AC1595D55500BBD41B /* SDL_keycode.h in Headers */, |
| | | AA7558AD1595D55500BBD41B /* SDL_loadso.h in Headers */, |
| | |
| | | AA7558B21595D55500BBD41B /* SDL_name.h in Headers */, |
| | | AA7558B31595D55500BBD41B /* SDL_opengl.h in Headers */, |
| | | AA7558B41595D55500BBD41B /* SDL_opengles.h in Headers */, |
| | | AADC5A631FDA10C800960936 /* SDL_shaders_metal_ios.h in Headers */, |
| | | AA7558B51595D55500BBD41B /* SDL_opengles2.h in Headers */, |
| | | AA7558B61595D55500BBD41B /* SDL_pixels.h in Headers */, |
| | | AA7558B71595D55500BBD41B /* SDL_platform.h in Headers */, |
| | |
| | | AA7558C61595D55500BBD41B /* SDL_touch.h in Headers */, |
| | | AA7558C71595D55500BBD41B /* SDL_types.h in Headers */, |
| | | AA7558C81595D55500BBD41B /* SDL_version.h in Headers */, |
| | | 4D7516FF1EE1C5B400820EEA /* SDL_vulkan.h in Headers */, |
| | | AA7558C91595D55500BBD41B /* SDL_video.h in Headers */, |
| | | AA7558CA1595D55500BBD41B /* SDL.h in Headers */, |
| | | 4D7516FC1EE1C28A00820EEA /* SDL_uikitvulkan.h in Headers */, |
| | | AA126AD41617C5E7005ABC8F /* SDL_uikitmodes.h in Headers */, |
| | | AA704DD6162AA90A0076D1C1 /* SDL_dropevents_c.h in Headers */, |
| | | AA9FF9511637C6E5000DF050 /* SDL_messagebox.h in Headers */, |
| | |
| | | /* End PBXHeadersBuildPhase section */ |
| | | |
| | | /* Begin PBXNativeTarget section */ |
| | | FAB598131BB5C1B100BE72C5 /* libSDL-tv */ = { |
| | | FAB598131BB5C1B100BE72C5 /* libSDL-tvOS */ = { |
| | | isa = PBXNativeTarget; |
| | | buildConfigurationList = FAB5981A1BB5C1B100BE72C5 /* Build configuration list for PBXNativeTarget "libSDL-tv" */; |
| | | buildConfigurationList = FAB5981A1BB5C1B100BE72C5 /* Build configuration list for PBXNativeTarget "libSDL-tvOS" */; |
| | | buildPhases = ( |
| | | FAB598101BB5C1B100BE72C5 /* Sources */, |
| | | ); |
| | |
| | | ); |
| | | dependencies = ( |
| | | ); |
| | | name = "libSDL-tv"; |
| | | productName = "libSDL-tv"; |
| | | name = "libSDL-tvOS"; |
| | | productName = "libSDL-tvOS"; |
| | | productReference = FAB598141BB5C1B100BE72C5 /* libSDL2.a */; |
| | | productType = "com.apple.product-type.library.static"; |
| | | }; |
| | | FD6526620DE8FCCB002AD96B /* libSDL */ = { |
| | | FD6526620DE8FCCB002AD96B /* libSDL-iOS */ = { |
| | | isa = PBXNativeTarget; |
| | | buildConfigurationList = FD6526990DE8FD14002AD96B /* Build configuration list for PBXNativeTarget "libSDL" */; |
| | | buildConfigurationList = FD6526990DE8FD14002AD96B /* Build configuration list for PBXNativeTarget "libSDL-iOS" */; |
| | | buildPhases = ( |
| | | FD65265F0DE8FCCB002AD96B /* Headers */, |
| | | FD6526600DE8FCCB002AD96B /* Sources */, |
| | |
| | | ); |
| | | dependencies = ( |
| | | ); |
| | | name = libSDL; |
| | | name = "libSDL-iOS"; |
| | | productName = iPhoneSDLStaticLib; |
| | | productReference = FD6526630DE8FCCB002AD96B /* libSDL2.a */; |
| | | productType = "com.apple.product-type.library.static"; |
| | |
| | | 29B97313FDCFA39411CA2CEA /* Project object */ = { |
| | | isa = PBXProject; |
| | | attributes = { |
| | | LastUpgradeCheck = 0800; |
| | | LastUpgradeCheck = 0900; |
| | | TargetAttributes = { |
| | | 00B4F48B12F6A69C0084EC00 = { |
| | | DevelopmentTeam = UZ5V327NE3; |
| | | }; |
| | | FAB598131BB5C1B100BE72C5 = { |
| | | CreatedOnToolsVersion = 7.1; |
| | | DevelopmentTeam = UZ5V327NE3; |
| | | }; |
| | | FD6526620DE8FCCB002AD96B = { |
| | | DevelopmentTeam = UZ5V327NE3; |
| | | }; |
| | | }; |
| | | }; |
| | |
| | | projectDirPath = ""; |
| | | projectRoot = ../..; |
| | | targets = ( |
| | | FD6526620DE8FCCB002AD96B /* libSDL */, |
| | | FAB598131BB5C1B100BE72C5 /* libSDL-tv */, |
| | | FD6526620DE8FCCB002AD96B /* libSDL-iOS */, |
| | | FAB598131BB5C1B100BE72C5 /* libSDL-tvOS */, |
| | | 00B4F48B12F6A69C0084EC00 /* PrepareXcodeProjectTemplate */, |
| | | C143576D1F4C4DAA000B792B /* All-iOS */, |
| | | C14357721F4C4F2A000B792B /* All-tvOS */, |
| | | ); |
| | | }; |
| | | /* End PBXProject section */ |
| | |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | shellPath = /bin/sh; |
| | | shellScript = "# clean up the framework, remove headers, extra files\n\ntemp=$BUILD_DIR/$BUILD_STYLE-template\n# Wrong! 1. Can't assume location of Xcode directory (use xcode-select)\n# 2. Project templates should go in Application Support directories anyway.\ntemplate_dir_name=\"SDL iOS Application\"\n# dest=\"$(HOME)/Library/Application Support/Developer/Shared/Xcode/Project Templates/SDL/SDL iOS Application\"\nrsync_flags=\"--exclude *.svn --links -r\"\n\n# mkdir -p $dest\nmkdir -p $temp\nmkdir -p \"$temp/$template_dir_name/SDL/lib/\"\nmkdir -p \"$temp/$template_dir_name/SDL/include\"\n\n# copy template\nrsync $rsync_flags \"../template/$template_dir_name\" $temp/\n\n# copy Universal libSDL.a\nrsync $rsync_flags -r $SYMROOT/$CONFIGURATION-Universal/libSDL.a \"$temp/$template_dir_name/SDL/lib/\"\n\n# copy headers\nrsync $rsync_flags ../../include/ \"$temp/$template_dir_name/SDL/include\"\n\n#install (nah, don't install)\n# cp -fr \"$temp/$template_dir_name\" \"$dest\""; |
| | | }; |
| | | C14357711F4C4DB2000B792B /* ShellScript */ = { |
| | | isa = PBXShellScriptBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | ); |
| | | inputPaths = ( |
| | | ); |
| | | outputPaths = ( |
| | | output/iOS/debug/libSDL2.a, |
| | | output/iOS/release/libSDL2.a, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | shellPath = /bin/sh; |
| | | shellScript = "TARGET=libSDL-iOS\nOUTPUT=libSDL2.a\n\nxcodebuild -target \"$TARGET\" -configuration Debug -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\nxcodebuild -target \"$TARGET\" -configuration Release -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\nxcodebuild -target \"$TARGET\" ONLY_ACTIVE_ARCH=NO -configuration Debug -sdk iphoneos BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\nxcodebuild -target \"$TARGET\" ONLY_ACTIVE_ARCH=NO -configuration Release -sdk iphoneos BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\n\n# make output folders\nmkdir -p output/iOS/debug\nmkdir -p output/iOS/release\n\n# combine lib files for various platforms into one\necho \"Creating output/iOS/debug/$OUTPUT\"\nlipo -create \"${TARGET_BUILD_DIR}/../Debug-iphoneos/$OUTPUT\" \"${TARGET_BUILD_DIR}/../Debug-iphonesimulator/$OUTPUT\" -output \"output/iOS/debug/$OUTPUT\"\necho \"Creating output/iOS/release/$OUTPUT\"\nlipo -create \"${TARGET_BUILD_DIR}/../Release-iphoneos/$OUTPUT\" \"${TARGET_BUILD_DIR}/../Release-iphonesimulator/$OUTPUT\" -output \"output/iOS/release/$OUTPUT\"\n"; |
| | | }; |
| | | C14357731F4C4F2A000B792B /* ShellScript */ = { |
| | | isa = PBXShellScriptBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | ); |
| | | inputPaths = ( |
| | | ); |
| | | outputPaths = ( |
| | | output/tvOS/debug/libSDL2.a, |
| | | output/tvOS/release/libSDL2.a, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | shellPath = /bin/sh; |
| | | shellScript = "TARGET=libSDL-tvOS\nOUTPUT=libSDL2.a\n\nxcodebuild -target \"$TARGET\" -configuration Debug -sdk appletvsimulator ONLY_ACTIVE_ARCH=NO BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\nxcodebuild -target \"$TARGET\" -configuration Release -sdk appletvsimulator ONLY_ACTIVE_ARCH=NO BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\nxcodebuild -target \"$TARGET\" ONLY_ACTIVE_ARCH=NO -configuration Debug -sdk appletvos BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\nxcodebuild -target \"$TARGET\" ONLY_ACTIVE_ARCH=NO -configuration Release -sdk appletvos BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" clean build\n\n# make output folders\nmkdir -p output/tvOS/debug\nmkdir -p output/tvOS/release\n\n# combine lib files for various platforms into one\necho \"Creating output/tvOS/debug/$OUTPUT\"\nlipo -create \"${TARGET_BUILD_DIR}/../Debug-appletvos/$OUTPUT\" \"${TARGET_BUILD_DIR}/../Debug-appletvsimulator/$OUTPUT\" -output \"output/tvOS/debug/$OUTPUT\"\necho \"Creating output/tvOS/release/$OUTPUT\"\nlipo -create \"${TARGET_BUILD_DIR}/../Release-appletvos/$OUTPUT\" \"${TARGET_BUILD_DIR}/../Release-appletvsimulator/$OUTPUT\" -output \"output/tvOS/release/$OUTPUT\"\n"; |
| | | }; |
| | | /* End PBXShellScriptBuildPhase section */ |
| | | |
| | |
| | | FAB598361BB5C31500BE72C5 /* SDL_clipboardevents.c in Sources */, |
| | | FAB598381BB5C31500BE72C5 /* SDL_dropevents.c in Sources */, |
| | | FAB5983A1BB5C31500BE72C5 /* SDL_events.c in Sources */, |
| | | A7F629241FE06523002F9CC9 /* SDL_uikitmetalview.m in Sources */, |
| | | FAB5983C1BB5C31500BE72C5 /* SDL_gesture.c in Sources */, |
| | | FAB5983E1BB5C31500BE72C5 /* SDL_keyboard.c in Sources */, |
| | | FAB598401BB5C31500BE72C5 /* SDL_mouse.c in Sources */, |
| | |
| | | FAB598491BB5C31600BE72C5 /* SDL_rwopsbundlesupport.m in Sources */, |
| | | FAB5984A1BB5C31600BE72C5 /* SDL_rwops.c in Sources */, |
| | | FAB5984B1BB5C31600BE72C5 /* SDL_sysfilesystem.m in Sources */, |
| | | AADC5A5D1FDA104400960936 /* yuv_rgb.c in Sources */, |
| | | FAB5984C1BB5C31600BE72C5 /* SDL_syshaptic.c in Sources */, |
| | | AADC5A5F1FDA105600960936 /* SDL_vulkan_utils.c in Sources */, |
| | | AADC5A5E1FDA105300960936 /* SDL_yuv.c in Sources */, |
| | | FAB5984D1BB5C31600BE72C5 /* SDL_haptic.c in Sources */, |
| | | FAB598501BB5C31600BE72C5 /* SDL_sysjoystick.m in Sources */, |
| | | FAB598511BB5C31600BE72C5 /* SDL_gamecontroller.c in Sources */, |
| | | FAB598521BB5C31600BE72C5 /* SDL_joystick.c in Sources */, |
| | | FAB598551BB5C31600BE72C5 /* SDL_sysloadso.c in Sources */, |
| | | AADC5A651FDA10CB00960936 /* SDL_render_metal.m in Sources */, |
| | | FAB598561BB5C31600BE72C5 /* SDL_sysloadso.c in Sources */, |
| | | FAB598571BB5C31600BE72C5 /* SDL_power.c in Sources */, |
| | | FAB598581BB5C31600BE72C5 /* SDL_syspower.m in Sources */, |
| | | 56F9D5601DF73BA400C15B5D /* SDL_dataqueue.c in Sources */, |
| | | FAB598591BB5C31600BE72C5 /* SDL_render_gles.c in Sources */, |
| | | FAB5985A1BB5C31600BE72C5 /* SDL_render_gles2.c in Sources */, |
| | | FAB5985B1BB5C31600BE72C5 /* SDL_shaders_gles2.c in Sources */, |
| | |
| | | FAB598681BB5C31600BE72C5 /* SDL_render_sw.c in Sources */, |
| | | FAB5986A1BB5C31600BE72C5 /* SDL_rotate.c in Sources */, |
| | | FAB5986D1BB5C31600BE72C5 /* SDL_render.c in Sources */, |
| | | FAB5986F1BB5C31600BE72C5 /* SDL_yuv_mmx.c in Sources */, |
| | | FAB598711BB5C31600BE72C5 /* SDL_yuv_sw.c in Sources */, |
| | | FAB598721BB5C31600BE72C5 /* SDL_getenv.c in Sources */, |
| | | FAB598731BB5C31600BE72C5 /* SDL_iconv.c in Sources */, |
| | |
| | | FAB598761BB5C31600BE72C5 /* SDL_stdlib.c in Sources */, |
| | | FAB598771BB5C31600BE72C5 /* SDL_string.c in Sources */, |
| | | FAB598781BB5C31600BE72C5 /* SDL_syscond.c in Sources */, |
| | | AADC5A601FDA10A400960936 /* SDL_uikitvulkan.m in Sources */, |
| | | FAB598791BB5C31600BE72C5 /* SDL_sysmutex.c in Sources */, |
| | | FAB5987B1BB5C31600BE72C5 /* SDL_syssem.c in Sources */, |
| | | FAB5987C1BB5C31600BE72C5 /* SDL_systhread.c in Sources */, |
| | | AAE7A4222041CCA90096E65A /* SDL_steamcontroller.c in Sources */, |
| | | FAB5987E1BB5C31600BE72C5 /* SDL_systls.c in Sources */, |
| | | FAB598801BB5C31600BE72C5 /* SDL_thread.c in Sources */, |
| | | FAB598821BB5C31600BE72C5 /* SDL_systimer.c in Sources */, |
| | |
| | | files = ( |
| | | FD6526810DE8FCDD002AD96B /* SDL_systimer.c in Sources */, |
| | | FD6526800DE8FCDD002AD96B /* SDL_timer.c in Sources */, |
| | | A7A9EEA91F702631002A5589 /* SDL_steamcontroller.c in Sources */, |
| | | FD3F4A7B0DEA620800C5B771 /* SDL_string.c in Sources */, |
| | | FD6526660DE8FCDD002AD96B /* SDL_dummyaudio.c in Sources */, |
| | | FD6526670DE8FCDD002AD96B /* SDL_audio.c in Sources */, |
| | |
| | | FD65266A0DE8FCDD002AD96B /* SDL_audiotypecvt.c in Sources */, |
| | | FD65266B0DE8FCDD002AD96B /* SDL_mixer.c in Sources */, |
| | | FD65266F0DE8FCDD002AD96B /* SDL_wave.c in Sources */, |
| | | 4D7516FD1EE1C28A00820EEA /* SDL_uikitvulkan.m in Sources */, |
| | | FA1DC2731C62BE65008F99A0 /* SDL_uikitclipboard.m in Sources */, |
| | | FD6526700DE8FCDD002AD96B /* SDL_cpuinfo.c in Sources */, |
| | | FD6526710DE8FCDD002AD96B /* SDL_events.c in Sources */, |
| | |
| | | FD6526730DE8FCDD002AD96B /* SDL_mouse.c in Sources */, |
| | | FD6526740DE8FCDD002AD96B /* SDL_quit.c in Sources */, |
| | | FD6526750DE8FCDD002AD96B /* SDL_windowevents.c in Sources */, |
| | | 4D7516FB1EE1C28A00820EEA /* SDL_uikitmetalview.m in Sources */, |
| | | FD6526760DE8FCDD002AD96B /* SDL_rwops.c in Sources */, |
| | | 4D7517201EE1D98200820EEA /* SDL_vulkan_utils.c in Sources */, |
| | | FD6526780DE8FCDD002AD96B /* SDL_error.c in Sources */, |
| | | FD65267A0DE8FCDD002AD96B /* SDL.c in Sources */, |
| | | FD65267B0DE8FCDD002AD96B /* SDL_syscond.c in Sources */, |
| | | AADC5A641FDA10C800960936 /* SDL_render_metal.m in Sources */, |
| | | FD65267C0DE8FCDD002AD96B /* SDL_sysmutex.c in Sources */, |
| | | FD65267D0DE8FCDD002AD96B /* SDL_syssem.c in Sources */, |
| | | FD65267E0DE8FCDD002AD96B /* SDL_systhread.c in Sources */, |
| | |
| | | FD3F4A7A0DEA620800C5B771 /* SDL_stdlib.c in Sources */, |
| | | FDA6844D0DF2374E00F98A1A /* SDL_blit.c in Sources */, |
| | | FDA6844F0DF2374E00F98A1A /* SDL_blit_0.c in Sources */, |
| | | AA13B3501FB8B3CC00D9FEE6 /* SDL_yuv.c in Sources */, |
| | | FDA684500DF2374E00F98A1A /* SDL_blit_1.c in Sources */, |
| | | 566726451DF72CF5001DD3DB /* SDL_dataqueue.c in Sources */, |
| | | FDA684510DF2374E00F98A1A /* SDL_blit_A.c in Sources */, |
| | | FDA684520DF2374E00F98A1A /* SDL_blit_auto.c in Sources */, |
| | | FDA684540DF2374E00F98A1A /* SDL_blit_copy.c in Sources */, |
| | |
| | | FDA6845E0DF2374E00F98A1A /* SDL_rect.c in Sources */, |
| | | FDA684620DF2374E00F98A1A /* SDL_RLEaccel.c in Sources */, |
| | | FDA684640DF2374E00F98A1A /* SDL_stretch.c in Sources */, |
| | | AA13B34D1FB8B27800D9FEE6 /* SDL_egl.c in Sources */, |
| | | FDA684660DF2374E00F98A1A /* SDL_surface.c in Sources */, |
| | | FDA684680DF2374E00F98A1A /* SDL_video.c in Sources */, |
| | | FDA685FB0DF244C800F98A1A /* SDL_nullevents.c in Sources */, |
| | |
| | | FD5F9D2F0E0E08B3008E885B /* SDL_joystick.c in Sources */, |
| | | FD689F030E26E5B600F90B21 /* SDL_sysjoystick.m in Sources */, |
| | | FD689F1D0E26E5D900F90B21 /* SDL_uikitevents.m in Sources */, |
| | | AA13B35A1FB8B46400D9FEE6 /* yuv_rgb.c in Sources */, |
| | | FD689F1F0E26E5D900F90B21 /* SDL_uikitopengles.m in Sources */, |
| | | FD689F210E26E5D900F90B21 /* SDL_uikitvideo.m in Sources */, |
| | | FD689F230E26E5D900F90B21 /* SDL_uikitview.m in Sources */, |
| | |
| | | 04FFAB8B12E23B8D00BA343D /* SDL_atomic.c in Sources */, |
| | | 04FFAB8C12E23B8D00BA343D /* SDL_spinlock.c in Sources */, |
| | | 041B2CF112FA0F680087D585 /* SDL_render.c in Sources */, |
| | | 04409BA712FA989600FB9AA8 /* SDL_yuv_mmx.c in Sources */, |
| | | 04409BA912FA989600FB9AA8 /* SDL_yuv_sw.c in Sources */, |
| | | 04F7807612FB751400FC43C0 /* SDL_blendfillrect.c in Sources */, |
| | | 04F7807812FB751400FC43C0 /* SDL_blendline.c in Sources */, |
| | |
| | | 0442EC5112FE1C1E004C9285 /* SDL_render_sw.c in Sources */, |
| | | 0442EC5312FE1C28004C9285 /* SDL_render_gles.c in Sources */, |
| | | 0442EC5512FE1C3F004C9285 /* SDL_hints.c in Sources */, |
| | | AA13B34A1FB8B27800D9FEE6 /* SDL_shape.c in Sources */, |
| | | 0402A85812FE70C600CECEE3 /* SDL_render_gles2.c in Sources */, |
| | | 0402A85912FE70C600CECEE3 /* SDL_shaders_gles2.c in Sources */, |
| | | 04BAC09D1300C1290055DE28 /* SDL_log.c in Sources */, |
| | |
| | | C01FCF4F08A954540054247B /* Debug */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; |
| | | CLANG_ENABLE_OBJC_ARC = YES; |
| | | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
| | | CLANG_WARN_BOOL_CONVERSION = YES; |
| | | CLANG_WARN_COMMA = YES; |
| | | CLANG_WARN_CONSTANT_CONVERSION = YES; |
| | | CLANG_WARN_EMPTY_BODY = YES; |
| | | CLANG_WARN_ENUM_CONVERSION = YES; |
| | | CLANG_WARN_INFINITE_RECURSION = YES; |
| | | CLANG_WARN_INT_CONVERSION = YES; |
| | | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
| | | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
| | | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
| | | CLANG_WARN_STRICT_PROTOTYPES = YES; |
| | | CLANG_WARN_SUSPICIOUS_MOVE = YES; |
| | | CLANG_WARN_UNREACHABLE_CODE = YES; |
| | | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
| | | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
| | | ENABLE_STRICT_OBJC_MSGSEND = YES; |
| | | ENABLE_TESTABILITY = YES; |
| | | GCC_NO_COMMON_BLOCKS = YES; |
| | | GCC_OPTIMIZATION_LEVEL = 0; |
| | | GCC_SYMBOLS_PRIVATE_EXTERN = YES; |
| | | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
| | | GCC_WARN_ABOUT_RETURN_TYPE = YES; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 5.1.1; |
| | | GCC_WARN_UNDECLARED_SELECTOR = YES; |
| | | GCC_WARN_UNINITIALIZED_AUTOS = YES; |
| | | GCC_WARN_UNUSED_FUNCTION = YES; |
| | | GCC_WARN_UNUSED_VARIABLE = YES; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 8.0; |
| | | ONLY_ACTIVE_ARCH = YES; |
| | | SDKROOT = iphoneos; |
| | | TARGETED_DEVICE_FAMILY = "1,2"; |
| | | TVOS_DEPLOYMENT_TARGET = 9.0; |
| | | }; |
| | | name = Debug; |
| | | }; |
| | | C01FCF5008A954540054247B /* Release */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; |
| | | CLANG_ENABLE_OBJC_ARC = YES; |
| | | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
| | | CLANG_WARN_BOOL_CONVERSION = YES; |
| | | CLANG_WARN_COMMA = YES; |
| | | CLANG_WARN_CONSTANT_CONVERSION = YES; |
| | | CLANG_WARN_EMPTY_BODY = YES; |
| | | CLANG_WARN_ENUM_CONVERSION = YES; |
| | | CLANG_WARN_INFINITE_RECURSION = YES; |
| | | CLANG_WARN_INT_CONVERSION = YES; |
| | | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
| | | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
| | | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
| | | CLANG_WARN_STRICT_PROTOTYPES = YES; |
| | | CLANG_WARN_SUSPICIOUS_MOVE = YES; |
| | | CLANG_WARN_UNREACHABLE_CODE = YES; |
| | | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
| | | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
| | | ENABLE_STRICT_OBJC_MSGSEND = YES; |
| | | GCC_NO_COMMON_BLOCKS = YES; |
| | | GCC_SYMBOLS_PRIVATE_EXTERN = YES; |
| | | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
| | | GCC_WARN_ABOUT_RETURN_TYPE = YES; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 5.1.1; |
| | | GCC_WARN_UNDECLARED_SELECTOR = YES; |
| | | GCC_WARN_UNINITIALIZED_AUTOS = YES; |
| | | GCC_WARN_UNUSED_FUNCTION = YES; |
| | | GCC_WARN_UNUSED_VARIABLE = YES; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 8.0; |
| | | SDKROOT = iphoneos; |
| | | TARGETED_DEVICE_FAMILY = "1,2"; |
| | | TVOS_DEPLOYMENT_TARGET = 9.0; |
| | | }; |
| | | name = Release; |
| | | }; |
| | | C143576F1F4C4DAB000B792B /* Debug */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Debug; |
| | | }; |
| | | C14357701F4C4DAB000B792B /* Release */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Release; |
| | | }; |
| | | C14357751F4C4F2A000B792B /* Debug */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | ENABLE_BITCODE = YES; |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Debug; |
| | | }; |
| | | C14357761F4C4F2A000B792B /* Release */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | ENABLE_BITCODE = YES; |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Release; |
| | | }; |
| | |
| | | SDKROOT = appletvos; |
| | | SKIP_INSTALL = YES; |
| | | TARGETED_DEVICE_FAMILY = 3; |
| | | TVOS_DEPLOYMENT_TARGET = 9.0; |
| | | }; |
| | | name = Debug; |
| | | }; |
| | |
| | | SDKROOT = appletvos; |
| | | SKIP_INSTALL = YES; |
| | | TARGETED_DEVICE_FAMILY = 3; |
| | | TVOS_DEPLOYMENT_TARGET = 9.0; |
| | | VALIDATE_PRODUCT = YES; |
| | | }; |
| | | name = Release; |
| | |
| | | GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES; |
| | | GCC_WARN_STRICT_SELECTOR_MATCH = YES; |
| | | GCC_WARN_UNDECLARED_SELECTOR = YES; |
| | | HEADER_SEARCH_PATHS = "$(VULKAN_SDK)/include"; |
| | | PRODUCT_NAME = SDL2; |
| | | SKIP_INSTALL = YES; |
| | | }; |
| | |
| | | GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES; |
| | | GCC_WARN_STRICT_SELECTOR_MATCH = YES; |
| | | GCC_WARN_UNDECLARED_SELECTOR = YES; |
| | | HEADER_SEARCH_PATHS = "$(VULKAN_SDK)/include"; |
| | | PRODUCT_NAME = SDL2; |
| | | SKIP_INSTALL = YES; |
| | | }; |
| | |
| | | defaultConfigurationIsVisible = 0; |
| | | defaultConfigurationName = Release; |
| | | }; |
| | | FAB5981A1BB5C1B100BE72C5 /* Build configuration list for PBXNativeTarget "libSDL-tv" */ = { |
| | | C143576E1F4C4DAB000B792B /* Build configuration list for PBXAggregateTarget "All-iOS" */ = { |
| | | isa = XCConfigurationList; |
| | | buildConfigurations = ( |
| | | C143576F1F4C4DAB000B792B /* Debug */, |
| | | C14357701F4C4DAB000B792B /* Release */, |
| | | ); |
| | | defaultConfigurationIsVisible = 0; |
| | | defaultConfigurationName = Release; |
| | | }; |
| | | C14357741F4C4F2A000B792B /* Build configuration list for PBXAggregateTarget "All-tvOS" */ = { |
| | | isa = XCConfigurationList; |
| | | buildConfigurations = ( |
| | | C14357751F4C4F2A000B792B /* Debug */, |
| | | C14357761F4C4F2A000B792B /* Release */, |
| | | ); |
| | | defaultConfigurationIsVisible = 0; |
| | | defaultConfigurationName = Release; |
| | | }; |
| | | FAB5981A1BB5C1B100BE72C5 /* Build configuration list for PBXNativeTarget "libSDL-tvOS" */ = { |
| | | isa = XCConfigurationList; |
| | | buildConfigurations = ( |
| | | FAB5981B1BB5C1B100BE72C5 /* Debug */, |
| | |
| | | defaultConfigurationIsVisible = 0; |
| | | defaultConfigurationName = Release; |
| | | }; |
| | | FD6526990DE8FD14002AD96B /* Build configuration list for PBXNativeTarget "libSDL" */ = { |
| | | FD6526990DE8FD14002AD96B /* Build configuration list for PBXNativeTarget "libSDL-iOS" */ = { |
| | | isa = XCConfigurationList; |
| | | buildConfigurations = ( |
| | | FD6526640DE8FCCB002AD96B /* Debug */, |
| | |
| | | AA1EE46D176059AB0029C7A5 /* SDL_test_log.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45F176059AB0029C7A5 /* SDL_test_log.c */; }; |
| | | AA1EE46E176059AB0029C7A5 /* SDL_test_md5.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE460176059AB0029C7A5 /* SDL_test_md5.c */; }; |
| | | AA1EE46F176059AB0029C7A5 /* SDL_test_random.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE461176059AB0029C7A5 /* SDL_test_random.c */; }; |
| | | AAF030011F9009B100B9A9FB /* SDL_test_memory.c in Sources */ = {isa = PBXBuildFile; fileRef = AAF02FFF1F9009B100B9A9FB /* SDL_test_memory.c */; }; |
| | | AAF030021F9009B100B9A9FB /* SDL_test_assert.c in Sources */ = {isa = PBXBuildFile; fileRef = AAF030001F9009B100B9A9FB /* SDL_test_assert.c */; }; |
| | | FA3D99011BC4E5BC002C96C8 /* SDL_test_common.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE454176059AB0029C7A5 /* SDL_test_common.c */; }; |
| | | FA3D99021BC4E5BC002C96C8 /* SDL_test_compare.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE455176059AB0029C7A5 /* SDL_test_compare.c */; }; |
| | | FA3D99031BC4E5BC002C96C8 /* SDL_test_crc32.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE456176059AB0029C7A5 /* SDL_test_crc32.c */; }; |
| | |
| | | AA1EE45F176059AB0029C7A5 /* SDL_test_log.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_test_log.c; path = ../../src/test/SDL_test_log.c; sourceTree = "<group>"; }; |
| | | AA1EE460176059AB0029C7A5 /* SDL_test_md5.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_test_md5.c; path = ../../src/test/SDL_test_md5.c; sourceTree = "<group>"; }; |
| | | AA1EE461176059AB0029C7A5 /* SDL_test_random.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_test_random.c; path = ../../src/test/SDL_test_random.c; sourceTree = "<group>"; }; |
| | | AAF02FFF1F9009B100B9A9FB /* SDL_test_memory.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_test_memory.c; path = ../../src/test/SDL_test_memory.c; sourceTree = "<group>"; }; |
| | | AAF030001F9009B100B9A9FB /* SDL_test_assert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_test_assert.c; path = ../../src/test/SDL_test_assert.c; sourceTree = "<group>"; }; |
| | | FA3D98F81BC4E5A2002C96C8 /* libSDL2test-TV.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libSDL2test-TV.a"; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | /* End PBXFileReference section */ |
| | | |
| | |
| | | AA1EE453176059770029C7A5 /* Library Source */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | AAF030001F9009B100B9A9FB /* SDL_test_assert.c */, |
| | | AA1EE454176059AB0029C7A5 /* SDL_test_common.c */, |
| | | AA1EE455176059AB0029C7A5 /* SDL_test_compare.c */, |
| | | AA1EE456176059AB0029C7A5 /* SDL_test_crc32.c */, |
| | |
| | | AA1EE45E176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c */, |
| | | AA1EE45F176059AB0029C7A5 /* SDL_test_log.c */, |
| | | AA1EE460176059AB0029C7A5 /* SDL_test_md5.c */, |
| | | AAF02FFF1F9009B100B9A9FB /* SDL_test_memory.c */, |
| | | AA1EE461176059AB0029C7A5 /* SDL_test_random.c */, |
| | | ); |
| | | name = "Library Source"; |
| | |
| | | AA1EE464176059AB0029C7A5 /* SDL_test_crc32.c in Sources */, |
| | | AA1EE465176059AB0029C7A5 /* SDL_test_font.c in Sources */, |
| | | AA1EE466176059AB0029C7A5 /* SDL_test_fuzzer.c in Sources */, |
| | | AAF030021F9009B100B9A9FB /* SDL_test_assert.c in Sources */, |
| | | AA1EE467176059AB0029C7A5 /* SDL_test_harness.c in Sources */, |
| | | AA1EE468176059AB0029C7A5 /* SDL_test_imageBlit.c in Sources */, |
| | | AA1EE469176059AB0029C7A5 /* SDL_test_imageBlitBlend.c in Sources */, |
| | | AA1EE46A176059AB0029C7A5 /* SDL_test_imageFace.c in Sources */, |
| | | AA1EE46B176059AB0029C7A5 /* SDL_test_imagePrimitives.c in Sources */, |
| | | AA1EE46C176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c in Sources */, |
| | | AAF030011F9009B100B9A9FB /* SDL_test_memory.c in Sources */, |
| | | AA1EE46D176059AB0029C7A5 /* SDL_test_log.c in Sources */, |
| | | AA1EE46E176059AB0029C7A5 /* SDL_test_md5.c in Sources */, |
| | | AA1EE46F176059AB0029C7A5 /* SDL_test_random.c in Sources */, |
| | |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | EXECUTABLE_PREFIX = lib; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 8.0; |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Debug; |
| | |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | EXECUTABLE_PREFIX = lib; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 8.0; |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Release; |
| | |
| | | */ |
| | | |
| | | #include "SDL.h" |
| | | #include <stdio.h> |
| | | #include <stdlib.h> |
| | | #include <time.h> |
| | | |
| | | #define SCREEN_WIDTH 320 |
| | |
| | | render(SDL_Renderer *renderer) |
| | | { |
| | | |
| | | SDL_Rect rect; |
| | | Uint8 r, g, b; |
| | | |
| | | /* Clear the screen */ |
| | |
| | | SDL_RenderClear(renderer); |
| | | |
| | | /* Come up with a random rectangle */ |
| | | SDL_Rect rect; |
| | | rect.w = randomInt(64, 128); |
| | | rect.h = randomInt(64, 128); |
| | | rect.x = randomInt(0, SCREEN_WIDTH); |
| | |
| | | <string>????</string> |
| | | <key>CFBundleVersion</key> |
| | | <string>1.0</string> |
| | | <key>NSMainNibFile</key> |
| | | <string></string> |
| | | </dict> |
| | | </plist> |
| | |
| | | 56ED0508118A8FE400A56AA6 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; }; |
| | | 56ED0509118A8FE400A56AA6 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; }; |
| | | 56ED0511118A904200A56AA6 /* testpower.c in Sources */ = {isa = PBXBuildFile; fileRef = 56ED0510118A904200A56AA6 /* testpower.c */; }; |
| | | AA13B3171FB8AEBC00D9FEE6 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34761D8B4EAD00915323 /* AVFoundation.framework */; }; |
| | | AA13B3181FB8AEBC00D9FEE6 /* libSDL2test.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA1EE452176059230029C7A5 /* libSDL2test.a */; }; |
| | | AA13B3191FB8AEBC00D9FEE6 /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL2.a */; }; |
| | | AA13B31A1FB8AEBC00D9FEE6 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA684F7A1BAF1A4400DCFD1A /* GameController.framework */; }; |
| | | AA13B31B1FB8AEBC00D9FEE6 /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BAC1967076F00F8EB7C /* CoreMotion.framework */; }; |
| | | AA13B31C1FB8AEBC00D9FEE6 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; }; |
| | | AA13B31D1FB8AEBC00D9FEE6 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; }; |
| | | AA13B31E1FB8AEBC00D9FEE6 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; }; |
| | | AA13B31F1FB8AEBC00D9FEE6 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; }; |
| | | AA13B3201FB8AEBC00D9FEE6 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; }; |
| | | AA13B3211FB8AEBC00D9FEE6 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; }; |
| | | AA13B3221FB8AEBC00D9FEE6 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; }; |
| | | AA13B32F1FB8AF0C00D9FEE6 /* testyuv.bmp in Resources */ = {isa = PBXBuildFile; fileRef = AA13B32E1FB8AF0C00D9FEE6 /* testyuv.bmp */; }; |
| | | AA13B3301FB8AF2300D9FEE6 /* testyuv.bmp in Resources */ = {isa = PBXBuildFile; fileRef = AA13B32E1FB8AF0C00D9FEE6 /* testyuv.bmp */; }; |
| | | AA13B35D1FB8B4E200D9FEE6 /* testyuv.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B35B1FB8B4D600D9FEE6 /* testyuv.c */; }; |
| | | AA13B3611FB8B52500D9FEE6 /* testyuv_cvt.c in Sources */ = {isa = PBXBuildFile; fileRef = AA13B35E1FB8B50D00D9FEE6 /* testyuv_cvt.c */; }; |
| | | AA1EE470176059D00029C7A5 /* libSDL2test.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA1EE452176059230029C7A5 /* libSDL2test.a */; }; |
| | | AA1EE47117605A7F0029C7A5 /* libSDL2test.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA1EE452176059230029C7A5 /* libSDL2test.a */; }; |
| | | AA1EE47417605B5C0029C7A5 /* libSDL2test.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA1EE452176059230029C7A5 /* libSDL2test.a */; }; |
| | |
| | | AA1EE47617605B9E0029C7A5 /* libSDL2test.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA1EE452176059230029C7A5 /* libSDL2test.a */; }; |
| | | AA1EE47717605BAB0029C7A5 /* libSDL2test.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA1EE452176059230029C7A5 /* libSDL2test.a */; }; |
| | | AA1EE47817605BF60029C7A5 /* libSDL2test.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA1EE452176059230029C7A5 /* libSDL2test.a */; }; |
| | | AA2F57AA1FDB544800832AD7 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AA2F57A91FDB544800832AD7 /* Metal.framework */; }; |
| | | AA2F57AB1FDB5A0900832AD7 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AA2F57A91FDB544800832AD7 /* Metal.framework */; }; |
| | | AA2F57AC1FDB5AB600832AD7 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AA2F57A91FDB544800832AD7 /* Metal.framework */; }; |
| | | AAE7DEDC14CBB1E100DF1A0E /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; }; |
| | | AAE7DEE114CBB1E100DF1A0E /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL2.a */; }; |
| | | AAE7DEE214CBB1E100DF1A0E /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; }; |
| | |
| | | FABA34A41D8B582100915323 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; }; |
| | | FABA34A51D8B582100915323 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; }; |
| | | FABA34A61D8B582100915323 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; }; |
| | | FABA34AD1D8B58A700915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34AC1D8B58A700915323 /* AVFoundation.framework */; }; |
| | | FABA34AE1D8B58B200915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34761D8B4EAD00915323 /* AVFoundation.framework */; }; |
| | | FABA34AF1D8B59F800915323 /* testaudiocapture.c in Sources */ = {isa = PBXBuildFile; fileRef = FABA34931D8B578200915323 /* testaudiocapture.c */; }; |
| | | FABA34B01D8B5B6400915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34761D8B4EAD00915323 /* AVFoundation.framework */; }; |
| | |
| | | 1D6058910D05DD3D006BFB54 /* testwm2.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testwm2.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | 56ED050D118A8FE400A56AA6 /* testpower.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testpower.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | 56ED0510118A904200A56AA6 /* testpower.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testpower.c; path = ../../test/testpower.c; sourceTree = SOURCE_ROOT; }; |
| | | AA13B3261FB8AEBC00D9FEE6 /* testyuv.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testyuv.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | AA13B32E1FB8AF0C00D9FEE6 /* testyuv.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = testyuv.bmp; path = ../../test/testyuv.bmp; sourceTree = "<group>"; }; |
| | | AA13B35B1FB8B4D600D9FEE6 /* testyuv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testyuv.c; path = ../../test/testyuv.c; sourceTree = "<group>"; }; |
| | | AA13B35E1FB8B50D00D9FEE6 /* testyuv_cvt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testyuv_cvt.c; path = ../../test/testyuv_cvt.c; sourceTree = "<group>"; }; |
| | | AA1EE44D176059220029C7A5 /* SDL2test.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL2test.xcodeproj; path = ../SDLtest/SDL2test.xcodeproj; sourceTree = "<group>"; }; |
| | | AA2F57A91FDB544800832AD7 /* Metal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Metal.framework; path = System/Library/Frameworks/Metal.framework; sourceTree = SDKROOT; }; |
| | | AAE7DEEC14CBB1E100DF1A0E /* testscale.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testscale.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | AAE7DF4514CBB43900DF1A0E /* testscale.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testscale.c; path = ../../test/testscale.c; sourceTree = "<group>"; }; |
| | | AAE7DFB114CBB54E00DF1A0E /* testrendertarget.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testrendertarget.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | |
| | | FABA34911D8B575200915323 /* testaudiocapture.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testaudiocapture.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | FABA34931D8B578200915323 /* testaudiocapture.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testaudiocapture.c; path = ../../test/testaudiocapture.c; sourceTree = "<group>"; }; |
| | | FABA34AA1D8B582100915323 /* loopwav-TV.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "loopwav-TV.app"; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | FABA34AC1D8B58A700915323 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS10.0.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; }; |
| | | FAE0E9931BAF9B230098DFA4 /* testgamecontroller.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgamecontroller.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | FD1B48AC0E3131CA007AB34E /* SDL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL.xcodeproj; path = ../SDL/SDL.xcodeproj; sourceTree = SOURCE_ROOT; }; |
| | | FDA8A7410E2D0F1600EA573E /* testaudioinfo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testaudioinfo.c; path = ../../test/testaudioinfo.c; sourceTree = SOURCE_ROOT; }; |
| | |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | | AA13B3161FB8AEBC00D9FEE6 /* Frameworks */ = { |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA13B3171FB8AEBC00D9FEE6 /* AVFoundation.framework in Frameworks */, |
| | | AA13B3181FB8AEBC00D9FEE6 /* libSDL2test.a in Frameworks */, |
| | | AA13B3191FB8AEBC00D9FEE6 /* libSDL2.a in Frameworks */, |
| | | AA13B31A1FB8AEBC00D9FEE6 /* GameController.framework in Frameworks */, |
| | | AA13B31B1FB8AEBC00D9FEE6 /* CoreMotion.framework in Frameworks */, |
| | | AA13B31C1FB8AEBC00D9FEE6 /* AudioToolbox.framework in Frameworks */, |
| | | AA13B31D1FB8AEBC00D9FEE6 /* QuartzCore.framework in Frameworks */, |
| | | AA13B31E1FB8AEBC00D9FEE6 /* OpenGLES.framework in Frameworks */, |
| | | AA13B31F1FB8AEBC00D9FEE6 /* CoreGraphics.framework in Frameworks */, |
| | | AA13B3201FB8AEBC00D9FEE6 /* UIKit.framework in Frameworks */, |
| | | AA13B3211FB8AEBC00D9FEE6 /* Foundation.framework in Frameworks */, |
| | | AA13B3221FB8AEBC00D9FEE6 /* CoreAudio.framework in Frameworks */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | | AAE7DEE014CBB1E100DF1A0E /* Frameworks */ = { |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA2F57AA1FDB544800832AD7 /* Metal.framework in Frameworks */, |
| | | FABA34BD1D8B5BAB00915323 /* AVFoundation.framework in Frameworks */, |
| | | AA1EE47517605B930029C7A5 /* libSDL2test.a in Frameworks */, |
| | | AAE7DFA614CBB54E00DF1A0E /* libSDL2.a in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | FABA34AD1D8B58A700915323 /* AVFoundation.framework in Frameworks */, |
| | | FAA8CEE41BDF06D600D3BD45 /* libSDL2.a in Frameworks */, |
| | | FA3D99481BC4E6AD002C96C8 /* GameController.framework in Frameworks */, |
| | | FA3D994A1BC4E6AD002C96C8 /* AudioToolbox.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA2F57AB1FDB5A0900832AD7 /* Metal.framework in Frameworks */, |
| | | FABA34B21D8B5B7300915323 /* AVFoundation.framework in Frameworks */, |
| | | AA1EE47117605A7F0029C7A5 /* libSDL2test.a in Frameworks */, |
| | | FDC42FF40F0D866D009C87E1 /* libSDL2.a in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA2F57AC1FDB5AB600832AD7 /* Metal.framework in Frameworks */, |
| | | FABA34C01D8B5BBA00915323 /* AVFoundation.framework in Frameworks */, |
| | | AA1EE47717605BAB0029C7A5 /* libSDL2test.a in Frameworks */, |
| | | FDBDE5CA0E313712006BAC0B /* libSDL2.a in Frameworks */, |
| | |
| | | FA3D99341BC4E644002C96C8 /* testgamecontroller-TV.app */, |
| | | FABA34911D8B575200915323 /* testaudiocapture.app */, |
| | | FABA34AA1D8B582100915323 /* loopwav-TV.app */, |
| | | AA13B3261FB8AEBC00D9FEE6 /* testyuv.app */, |
| | | ); |
| | | name = Products; |
| | | sourceTree = "<group>"; |
| | |
| | | FABA34751D8B4EAC00915323 /* Frameworks */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | FABA34AC1D8B58A700915323 /* AVFoundation.framework */, |
| | | AA2F57A91FDB544800832AD7 /* Metal.framework */, |
| | | FABA34761D8B4EAD00915323 /* AVFoundation.framework */, |
| | | ); |
| | | name = Frameworks; |
| | |
| | | FDA8A73B0E2D0F0400EA573E /* src */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | FABA34931D8B578200915323 /* testaudiocapture.c */, |
| | | 047A63F013285CD100CD7973 /* checkkeys.c */, |
| | | FDA8A78B0E2D0F3D00EA573E /* loopwave.c */, |
| | | FABA34931D8B578200915323 /* testaudiocapture.c */, |
| | | FDA8A7410E2D0F1600EA573E /* testaudioinfo.c */, |
| | | FDC430090F0D86BF009C87E1 /* testdraw2.c */, |
| | | FDA8A7470E2D0F1600EA573E /* testerror.c */, |
| | |
| | | FDA8A75A0E2D0F1600EA573E /* testtimer.c */, |
| | | FDA8A75B0E2D0F1600EA573E /* testver.c */, |
| | | FDA8A75F0E2D0F1600EA573E /* testwm2.c */, |
| | | AA13B35E1FB8B50D00D9FEE6 /* testyuv_cvt.c */, |
| | | AA13B35B1FB8B4D600D9FEE6 /* testyuv.c */, |
| | | FDA8A7610E2D0F1600EA573E /* torturethread.c */, |
| | | ); |
| | | name = src; |
| | |
| | | FA0EF2281BAF4487000E07A6 /* axis.bmp */, |
| | | FA0EF2291BAF4487000E07A6 /* button.bmp */, |
| | | FA0EF22A1BAF4487000E07A6 /* controllermap.bmp */, |
| | | FDD2C18A0E2E52FE00B7A85F /* utf8.txt */, |
| | | FDA8AAD90E2D33B000EA573E /* icon.bmp */, |
| | | FDA8AADA0E2D33BA00EA573E /* moose.dat */, |
| | | FDA8AADB0E2D33BA00EA573E /* picture.xbm */, |
| | | FDA8AADE0E2D33C100EA573E /* sample.bmp */, |
| | | FDA8AAE20E2D33C600EA573E /* sample.wav */, |
| | | AA13B32E1FB8AF0C00D9FEE6 /* testyuv.bmp */, |
| | | FDD2C18A0E2E52FE00B7A85F /* utf8.txt */, |
| | | ); |
| | | name = Resources; |
| | | sourceTree = "<group>"; |
| | |
| | | name = testpower; |
| | | productName = Test; |
| | | productReference = 56ED050D118A8FE400A56AA6 /* testpower.app */; |
| | | productType = "com.apple.product-type.application"; |
| | | }; |
| | | AA13B3111FB8AEBC00D9FEE6 /* testyuv */ = { |
| | | isa = PBXNativeTarget; |
| | | buildConfigurationList = AA13B3231FB8AEBC00D9FEE6 /* Build configuration list for PBXNativeTarget "testyuv" */; |
| | | buildPhases = ( |
| | | AA13B3121FB8AEBC00D9FEE6 /* Resources */, |
| | | AA13B3141FB8AEBC00D9FEE6 /* Sources */, |
| | | AA13B3161FB8AEBC00D9FEE6 /* Frameworks */, |
| | | ); |
| | | buildRules = ( |
| | | ); |
| | | dependencies = ( |
| | | ); |
| | | name = testyuv; |
| | | productName = Test; |
| | | productReference = AA13B3261FB8AEBC00D9FEE6 /* testyuv.app */; |
| | | productType = "com.apple.product-type.application"; |
| | | }; |
| | | AAE7DEDA14CBB1E100DF1A0E /* testscale */ = { |
| | |
| | | attributes = { |
| | | LastUpgradeCheck = 0630; |
| | | TargetAttributes = { |
| | | AA13B3111FB8AEBC00D9FEE6 = { |
| | | DevelopmentTeam = EH385AYQ6F; |
| | | }; |
| | | FA3D99331BC4E644002C96C8 = { |
| | | CreatedOnToolsVersion = 7.1; |
| | | }; |
| | |
| | | FDD2C5740E2E8C7400B7A85F /* testtimer */, |
| | | FDD2C5B30E2E8CFC00B7A85F /* testver */, |
| | | 1D6058900D05DD3D006BFB54 /* testwm2 */, |
| | | AA13B3111FB8AEBC00D9FEE6 /* testyuv */, |
| | | FDD2C6E20E2E959E00B7A85F /* torturethread */, |
| | | ); |
| | | }; |
| | |
| | | isa = PBXResourcesBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA13B32F1FB8AF0C00D9FEE6 /* testyuv.bmp in Resources */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 56ED04FE118A8FE400A56AA6 /* icon.bmp in Resources */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | | AA13B3121FB8AEBC00D9FEE6 /* Resources */ = { |
| | | isa = PBXResourcesBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA13B3301FB8AF2300D9FEE6 /* testyuv.bmp in Resources */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 56ED0511118A904200A56AA6 /* testpower.c in Sources */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | | AA13B3141FB8AEBC00D9FEE6 /* Sources */ = { |
| | | isa = PBXSourcesBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA13B3611FB8B52500D9FEE6 /* testyuv_cvt.c in Sources */, |
| | | AA13B35D1FB8B4E200D9FEE6 /* testyuv.c in Sources */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | |
| | | }; |
| | | name = Release; |
| | | }; |
| | | AA13B3241FB8AEBC00D9FEE6 /* Debug */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | DEVELOPMENT_TEAM = EH385AYQ6F; |
| | | INFOPLIST_FILE = Info.plist; |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Debug; |
| | | }; |
| | | AA13B3251FB8AEBC00D9FEE6 /* Release */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | DEVELOPMENT_TEAM = EH385AYQ6F; |
| | | INFOPLIST_FILE = Info.plist; |
| | | PRODUCT_NAME = "$(TARGET_NAME)"; |
| | | }; |
| | | name = Release; |
| | | }; |
| | | AAE7DEEA14CBB1E100DF1A0E /* Debug */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
| | | ENABLE_BITCODE = NO; |
| | | GCC_OPTIMIZATION_LEVEL = 0; |
| | | HEADER_SEARCH_PATHS = ../../include; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 8.0; |
| | | ONLY_ACTIVE_ARCH = YES; |
| | | OTHER_LDFLAGS = "-ObjC"; |
| | | "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; |
| | |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
| | | ENABLE_BITCODE = NO; |
| | | HEADER_SEARCH_PATHS = ../../include; |
| | | IPHONEOS_DEPLOYMENT_TARGET = 8.0; |
| | | OTHER_LDFLAGS = "-ObjC"; |
| | | "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; |
| | | SDKROOT = iphoneos; |
| | |
| | | defaultConfigurationIsVisible = 0; |
| | | defaultConfigurationName = Release; |
| | | }; |
| | | AA13B3231FB8AEBC00D9FEE6 /* Build configuration list for PBXNativeTarget "testyuv" */ = { |
| | | isa = XCConfigurationList; |
| | | buildConfigurations = ( |
| | | AA13B3241FB8AEBC00D9FEE6 /* Debug */, |
| | | AA13B3251FB8AEBC00D9FEE6 /* Release */, |
| | | ); |
| | | defaultConfigurationIsVisible = 0; |
| | | defaultConfigurationName = Release; |
| | | }; |
| | | AAE7DEE914CBB1E100DF1A0E /* Build configuration list for PBXNativeTarget "testscale" */ = { |
| | | isa = XCConfigurationList; |
| | | buildConfigurations = ( |
| | |
| | | <key>CFBundlePackageType</key> |
| | | <string>FMWK</string> |
| | | <key>CFBundleShortVersionString</key> |
| | | <string>2.0.5</string> |
| | | <string>2.0.8</string> |
| | | <key>CFBundleSignature</key> |
| | | <string>SDLX</string> |
| | | <key>CFBundleVersion</key> |
| | | <string>2.0.5</string> |
| | | <string>2.0.8</string> |
| | | </dict> |
| | | </plist> |
| | |
| | | 0435673F1303160F00BA5428 /* SDL_shaders_gl.h in Headers */ = {isa = PBXBuildFile; fileRef = 0435673D1303160F00BA5428 /* SDL_shaders_gl.h */; }; |
| | | 043567401303160F00BA5428 /* SDL_shaders_gl.c in Sources */ = {isa = PBXBuildFile; fileRef = 0435673C1303160F00BA5428 /* SDL_shaders_gl.c */; }; |
| | | 043567411303160F00BA5428 /* SDL_shaders_gl.h in Headers */ = {isa = PBXBuildFile; fileRef = 0435673D1303160F00BA5428 /* SDL_shaders_gl.h */; }; |
| | | 04409B9112FA97ED00FB9AA8 /* mmx.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409B8D12FA97ED00FB9AA8 /* mmx.h */; }; |
| | | 04409B9212FA97ED00FB9AA8 /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409B8E12FA97ED00FB9AA8 /* SDL_yuv_mmx.c */; }; |
| | | 04409B9312FA97ED00FB9AA8 /* SDL_yuv_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409B8F12FA97ED00FB9AA8 /* SDL_yuv_sw_c.h */; }; |
| | | 04409B9412FA97ED00FB9AA8 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409B9012FA97ED00FB9AA8 /* SDL_yuv_sw.c */; }; |
| | | 04409B9512FA97ED00FB9AA8 /* mmx.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409B8D12FA97ED00FB9AA8 /* mmx.h */; }; |
| | | 04409B9612FA97ED00FB9AA8 /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409B8E12FA97ED00FB9AA8 /* SDL_yuv_mmx.c */; }; |
| | | 04409B9712FA97ED00FB9AA8 /* SDL_yuv_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409B8F12FA97ED00FB9AA8 /* SDL_yuv_sw_c.h */; }; |
| | | 04409B9812FA97ED00FB9AA8 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409B9012FA97ED00FB9AA8 /* SDL_yuv_sw.c */; }; |
| | | 0442EC1812FE1BBA004C9285 /* SDL_render_gl.c in Sources */ = {isa = PBXBuildFile; fileRef = 0442EC1712FE1BBA004C9285 /* SDL_render_gl.c */; }; |
| | |
| | | 04F7805D12FB74A200FC43C0 /* SDL_drawline.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7804512FB74A200FC43C0 /* SDL_drawline.h */; }; |
| | | 04F7805E12FB74A200FC43C0 /* SDL_drawpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7804612FB74A200FC43C0 /* SDL_drawpoint.c */; }; |
| | | 04F7805F12FB74A200FC43C0 /* SDL_drawpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7804712FB74A200FC43C0 /* SDL_drawpoint.h */; }; |
| | | 4D16644E1EDD6023003DE88E /* SDL_vulkan_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D16644C1EDD6023003DE88E /* SDL_vulkan_internal.h */; }; |
| | | 4D16644F1EDD6023003DE88E /* SDL_vulkan_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D16644D1EDD6023003DE88E /* SDL_vulkan_utils.c */; }; |
| | | 4D1664531EDD60AD003DE88E /* SDL_cocoametalview.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D1664501EDD60AD003DE88E /* SDL_cocoametalview.m */; }; |
| | | 4D1664541EDD60AD003DE88E /* SDL_cocoavulkan.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D1664511EDD60AD003DE88E /* SDL_cocoavulkan.h */; }; |
| | | 4D1664551EDD60AD003DE88E /* SDL_cocoavulkan.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D1664521EDD60AD003DE88E /* SDL_cocoavulkan.m */; }; |
| | | 4D1664561EDD61DA003DE88E /* SDL_vulkan_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D16644D1EDD6023003DE88E /* SDL_vulkan_utils.c */; }; |
| | | 4D1664571EDD61F0003DE88E /* SDL_cocoametalview.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D1664501EDD60AD003DE88E /* SDL_cocoametalview.m */; }; |
| | | 4D1664581EDD61F0003DE88E /* SDL_cocoavulkan.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D1664521EDD60AD003DE88E /* SDL_cocoavulkan.m */; }; |
| | | 4D1664591EDD621B003DE88E /* SDL_vulkan_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D16644D1EDD6023003DE88E /* SDL_vulkan_utils.c */; }; |
| | | 4D16645A1EDD6235003DE88E /* SDL_cocoametalview.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D1664501EDD60AD003DE88E /* SDL_cocoametalview.m */; }; |
| | | 4D16645B1EDD6235003DE88E /* SDL_cocoavulkan.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D1664521EDD60AD003DE88E /* SDL_cocoavulkan.m */; }; |
| | | 4D7517291EE2562B00820EEA /* SDL_cocoametalview.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D7517281EE2562B00820EEA /* SDL_cocoametalview.h */; }; |
| | | 56115BBB1DF72C6D00F47E1E /* SDL_dataqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 56115BB91DF72C6D00F47E1E /* SDL_dataqueue.c */; }; |
| | | 56115BBC1DF72C6D00F47E1E /* SDL_dataqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 56115BBA1DF72C6D00F47E1E /* SDL_dataqueue.h */; }; |
| | | 562C4AE91D8F496200AF9EBE /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7381E931D8B69C300B177DD /* AudioToolbox.framework */; }; |
| | | 562C4AEA1D8F496300AF9EBE /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7381E931D8B69C300B177DD /* AudioToolbox.framework */; }; |
| | | 562D3C7C1D8F4933003FEEE6 /* SDL_coreaudio.m in Sources */ = {isa = PBXBuildFile; fileRef = FABA34C61D8B5DB100915323 /* SDL_coreaudio.m */; }; |
| | | 562D3C7D1D8F4933003FEEE6 /* SDL_coreaudio.m in Sources */ = {isa = PBXBuildFile; fileRef = FABA34C61D8B5DB100915323 /* SDL_coreaudio.m */; }; |
| | | 564624361FF821C20074AC87 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 564624351FF821B80074AC87 /* QuartzCore.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 564624381FF821DA0074AC87 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 564624371FF821CB0074AC87 /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 564624391FF821EF0074AC87 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 564624351FF821B80074AC87 /* QuartzCore.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 5646243A1FF821FF0074AC87 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 564624371FF821CB0074AC87 /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 5646243B1FF822100074AC87 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 564624351FF821B80074AC87 /* QuartzCore.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 5646243C1FF822170074AC87 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 564624371FF821CB0074AC87 /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 565AF96A1FF8238D0077498A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 565AF9691FF823840077498A /* QuartzCore.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 565AF96B1FF8238E0077498A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 565AF9691FF823840077498A /* QuartzCore.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 565AF96C1FF8238E0077498A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 565AF9691FF823840077498A /* QuartzCore.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 565AF96D1FF823980077498A /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 565AF9681FF8237A0077498A /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 565AF96E1FF823980077498A /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 565AF9681FF8237A0077498A /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 565AF96F1FF823990077498A /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 565AF9681FF8237A0077498A /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 566CDE8F148F0AC200C5A9BB /* SDL_dropevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 566CDE8D148F0AC200C5A9BB /* SDL_dropevents_c.h */; }; |
| | | 566CDE90148F0AC200C5A9BB /* SDL_dropevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 566CDE8E148F0AC200C5A9BB /* SDL_dropevents.c */; }; |
| | | 567E2F1C17C44BB2005F1892 /* SDL_sysfilesystem.m in Sources */ = {isa = PBXBuildFile; fileRef = 567E2F1B17C44BB2005F1892 /* SDL_sysfilesystem.m */; }; |
| | |
| | | 56C5237F1D8F4985001F2F30 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7381E951D8B69D600B177DD /* CoreAudio.framework */; }; |
| | | 56C523801D8F498B001F2F30 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00D0D08310675DD9004B05EF /* CoreFoundation.framework */; }; |
| | | 56C523811D8F498C001F2F30 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00D0D08310675DD9004B05EF /* CoreFoundation.framework */; }; |
| | | 56F9D55C1DF73B6B00C15B5D /* SDL_dataqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 56115BB91DF72C6D00F47E1E /* SDL_dataqueue.c */; }; |
| | | 56F9D55D1DF73B6C00C15B5D /* SDL_dataqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 56115BB91DF72C6D00F47E1E /* SDL_dataqueue.c */; }; |
| | | 56F9D55E1DF73B7C00C15B5D /* SDL_dataqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 56115BBA1DF72C6D00F47E1E /* SDL_dataqueue.h */; }; |
| | | 56F9D55F1DF73B7D00C15B5D /* SDL_dataqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 56115BBA1DF72C6D00F47E1E /* SDL_dataqueue.h */; }; |
| | | 5C2EF69F1FC987C6003F5197 /* SDL_gles2funcs.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF69B1FC987C6003F5197 /* SDL_gles2funcs.h */; }; |
| | | 5C2EF6A01FC987C6003F5197 /* SDL_render_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF69C1FC987C6003F5197 /* SDL_render_gles2.c */; }; |
| | | 5C2EF6A11FC987C6003F5197 /* SDL_shaders_gles2.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF69D1FC987C6003F5197 /* SDL_shaders_gles2.h */; }; |
| | | 5C2EF6A21FC987C6003F5197 /* SDL_shaders_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF69E1FC987C6003F5197 /* SDL_shaders_gles2.c */; }; |
| | | 5C2EF6A31FC98B38003F5197 /* SDL_yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9A7F131FB0209C00FED37F /* SDL_yuv.c */; }; |
| | | 5C2EF6A41FC98B39003F5197 /* SDL_yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9A7F131FB0209C00FED37F /* SDL_yuv.c */; }; |
| | | 5C2EF6A51FC98B6B003F5197 /* yuv_rgb.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9A7F101FB0206300FED37F /* yuv_rgb.c */; }; |
| | | 5C2EF6A61FC98B6C003F5197 /* yuv_rgb.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9A7F101FB0206300FED37F /* yuv_rgb.c */; }; |
| | | 5C2EF6A71FC98D2D003F5197 /* SDL_gles2funcs.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF69B1FC987C6003F5197 /* SDL_gles2funcs.h */; }; |
| | | 5C2EF6A81FC98D2D003F5197 /* SDL_render_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF69C1FC987C6003F5197 /* SDL_render_gles2.c */; }; |
| | | 5C2EF6A91FC98D2D003F5197 /* SDL_shaders_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF69E1FC987C6003F5197 /* SDL_shaders_gles2.c */; }; |
| | | 5C2EF6AA1FC98D2D003F5197 /* SDL_shaders_gles2.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF69D1FC987C6003F5197 /* SDL_shaders_gles2.h */; }; |
| | | 5C2EF6AB1FC98D2E003F5197 /* SDL_gles2funcs.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF69B1FC987C6003F5197 /* SDL_gles2funcs.h */; }; |
| | | 5C2EF6AC1FC98D2E003F5197 /* SDL_render_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF69C1FC987C6003F5197 /* SDL_render_gles2.c */; }; |
| | | 5C2EF6AD1FC98D2E003F5197 /* SDL_shaders_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF69E1FC987C6003F5197 /* SDL_shaders_gles2.c */; }; |
| | | 5C2EF6AE1FC98D2E003F5197 /* SDL_shaders_gles2.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF69D1FC987C6003F5197 /* SDL_shaders_gles2.h */; }; |
| | | 5C2EF6EE1FC9D0ED003F5197 /* SDL_cocoaopengles.m in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF6EC1FC9D0EC003F5197 /* SDL_cocoaopengles.m */; }; |
| | | 5C2EF6EF1FC9D0ED003F5197 /* SDL_cocoaopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6ED1FC9D0ED003F5197 /* SDL_cocoaopengles.h */; }; |
| | | 5C2EF6F01FC9D181003F5197 /* SDL_cocoaopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6ED1FC9D0ED003F5197 /* SDL_cocoaopengles.h */; }; |
| | | 5C2EF6F11FC9D181003F5197 /* SDL_cocoaopengles.m in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF6EC1FC9D0EC003F5197 /* SDL_cocoaopengles.m */; }; |
| | | 5C2EF6F21FC9D182003F5197 /* SDL_cocoaopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6ED1FC9D0ED003F5197 /* SDL_cocoaopengles.h */; }; |
| | | 5C2EF6F31FC9D182003F5197 /* SDL_cocoaopengles.m in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF6EC1FC9D0EC003F5197 /* SDL_cocoaopengles.m */; }; |
| | | 5C2EF6F71FC9EE35003F5197 /* SDL_rect_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6F41FC9EE34003F5197 /* SDL_rect_c.h */; }; |
| | | 5C2EF6F81FC9EE35003F5197 /* SDL_egl.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF6F51FC9EE35003F5197 /* SDL_egl.c */; }; |
| | | 5C2EF6F91FC9EE35003F5197 /* SDL_egl_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6F61FC9EE35003F5197 /* SDL_egl_c.h */; }; |
| | | 5C2EF6FA1FC9EE64003F5197 /* SDL_egl_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6F61FC9EE35003F5197 /* SDL_egl_c.h */; }; |
| | | 5C2EF6FB1FC9EE64003F5197 /* SDL_egl.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF6F51FC9EE35003F5197 /* SDL_egl.c */; }; |
| | | 5C2EF6FC1FC9EE64003F5197 /* SDL_rect_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6F41FC9EE34003F5197 /* SDL_rect_c.h */; }; |
| | | 5C2EF6FD1FC9EE65003F5197 /* SDL_egl_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6F61FC9EE35003F5197 /* SDL_egl_c.h */; }; |
| | | 5C2EF6FE1FC9EE65003F5197 /* SDL_egl.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2EF6F51FC9EE35003F5197 /* SDL_egl.c */; }; |
| | | 5C2EF6FF1FC9EE65003F5197 /* SDL_rect_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF6F41FC9EE34003F5197 /* SDL_rect_c.h */; }; |
| | | 5C2EF7011FC9EF10003F5197 /* SDL_egl.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C2EF7001FC9EF0F003F5197 /* SDL_egl.h */; }; |
| | | A7381E961D8B69D600B177DD /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7381E951D8B69D600B177DD /* CoreAudio.framework */; }; |
| | | A7381E971D8B6A0300B177DD /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7381E931D8B69C300B177DD /* AudioToolbox.framework */; }; |
| | | A77E6EB4167AB0A90010E40B /* SDL_gamecontroller.h in Headers */ = {isa = PBXBuildFile; fileRef = A77E6EB3167AB0A90010E40B /* SDL_gamecontroller.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | |
| | | AA75585D1595D4D800BBD41B /* SDL_video.h in Headers */ = {isa = PBXBuildFile; fileRef = AA7557F81595D4D800BBD41B /* SDL_video.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | | AA75585E1595D4D800BBD41B /* SDL.h in Headers */ = {isa = PBXBuildFile; fileRef = AA7557F91595D4D800BBD41B /* SDL.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | | AA75585F1595D4D800BBD41B /* SDL.h in Headers */ = {isa = PBXBuildFile; fileRef = AA7557F91595D4D800BBD41B /* SDL.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | | AA8167541F5E727800518735 /* SDL_vulkan.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D4820431F0F10B400EDC31C /* SDL_vulkan.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | | AA9A7F111FB0206400FED37F /* yuv_rgb.h in Headers */ = {isa = PBXBuildFile; fileRef = AA9A7F0F1FB0206300FED37F /* yuv_rgb.h */; }; |
| | | AA9A7F121FB0206400FED37F /* yuv_rgb.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9A7F101FB0206300FED37F /* yuv_rgb.c */; }; |
| | | AA9A7F151FB0209D00FED37F /* SDL_yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9A7F131FB0209C00FED37F /* SDL_yuv.c */; }; |
| | | AA9A7F161FB0209D00FED37F /* SDL_yuv_c.h in Headers */ = {isa = PBXBuildFile; fileRef = AA9A7F141FB0209C00FED37F /* SDL_yuv_c.h */; }; |
| | | AA9E4093163BE51E007A2AD0 /* SDL_x11messagebox.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9E4092163BE51E007A2AD0 /* SDL_x11messagebox.c */; }; |
| | | AA9E4094163BE51E007A2AD0 /* SDL_x11messagebox.c in Sources */ = {isa = PBXBuildFile; fileRef = AA9E4092163BE51E007A2AD0 /* SDL_x11messagebox.c */; }; |
| | | AA9FF95A1637CBF9000DF050 /* SDL_messagebox.h in Headers */ = {isa = PBXBuildFile; fileRef = AA9FF9591637CBF9000DF050 /* SDL_messagebox.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | |
| | | AAC07107195606770073DCDF /* SDL_opengles2_khrplatform.h in Headers */ = {isa = PBXBuildFile; fileRef = AAC070F8195606770073DCDF /* SDL_opengles2_khrplatform.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | | AADA5B8716CCAB3000107CF7 /* SDL_bits.h in Headers */ = {isa = PBXBuildFile; fileRef = AADA5B8616CCAB3000107CF7 /* SDL_bits.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | | AADA5B8816CCAB3000107CF7 /* SDL_bits.h in Headers */ = {isa = PBXBuildFile; fileRef = AADA5B8616CCAB3000107CF7 /* SDL_bits.h */; settings = {ATTRIBUTES = (Public, ); }; }; |
| | | AADC5A431FDA035D00960936 /* SDL_shaders_metal_osx.h in Headers */ = {isa = PBXBuildFile; fileRef = AADC5A411FDA035D00960936 /* SDL_shaders_metal_osx.h */; }; |
| | | AADC5A441FDA035D00960936 /* SDL_render_metal.m in Sources */ = {isa = PBXBuildFile; fileRef = AADC5A421FDA035D00960936 /* SDL_render_metal.m */; }; |
| | | AADC5A451FDA047900960936 /* SDL_render_metal.m in Sources */ = {isa = PBXBuildFile; fileRef = AADC5A421FDA035D00960936 /* SDL_render_metal.m */; }; |
| | | AADC5A461FDA047B00960936 /* SDL_shaders_metal_osx.h in Headers */ = {isa = PBXBuildFile; fileRef = AADC5A411FDA035D00960936 /* SDL_shaders_metal_osx.h */; }; |
| | | AADC5A471FDA047E00960936 /* SDL_shaders_metal_osx.h in Headers */ = {isa = PBXBuildFile; fileRef = AADC5A411FDA035D00960936 /* SDL_shaders_metal_osx.h */; }; |
| | | AADC5A481FDA048100960936 /* SDL_render_metal.m in Sources */ = {isa = PBXBuildFile; fileRef = AADC5A421FDA035D00960936 /* SDL_render_metal.m */; }; |
| | | AADC5A491FDA05C100960936 /* yuv_rgb.h in Headers */ = {isa = PBXBuildFile; fileRef = AA9A7F0F1FB0206300FED37F /* yuv_rgb.h */; }; |
| | | AADC5A4A1FDA05C200960936 /* yuv_rgb.h in Headers */ = {isa = PBXBuildFile; fileRef = AA9A7F0F1FB0206300FED37F /* yuv_rgb.h */; }; |
| | | AADC5A4B1FDA05CF00960936 /* SDL_yuv_c.h in Headers */ = {isa = PBXBuildFile; fileRef = AA9A7F141FB0209C00FED37F /* SDL_yuv_c.h */; }; |
| | | AADC5A4C1FDA05CF00960936 /* SDL_yuv_c.h in Headers */ = {isa = PBXBuildFile; fileRef = AA9A7F141FB0209C00FED37F /* SDL_yuv_c.h */; }; |
| | | AADC5A4D1FDA05D300960936 /* SDL_vulkan_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D16644C1EDD6023003DE88E /* SDL_vulkan_internal.h */; }; |
| | | AADC5A4E1FDA05D400960936 /* SDL_vulkan_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D16644C1EDD6023003DE88E /* SDL_vulkan_internal.h */; }; |
| | | AADC5A4F1FDA05E600960936 /* SDL_cocoavulkan.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D1664511EDD60AD003DE88E /* SDL_cocoavulkan.h */; }; |
| | | AADC5A501FDA05E600960936 /* SDL_cocoavulkan.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D1664511EDD60AD003DE88E /* SDL_cocoavulkan.h */; }; |
| | | BBFC088D164C6647003E6A99 /* SDL_gamecontroller.c in Sources */ = {isa = PBXBuildFile; fileRef = BBFC088A164C6514003E6A99 /* SDL_gamecontroller.c */; }; |
| | | D55A1B81179F262300625D7C /* SDL_cocoamousetap.h in Headers */ = {isa = PBXBuildFile; fileRef = D55A1B7F179F262300625D7C /* SDL_cocoamousetap.h */; }; |
| | | D55A1B82179F262300625D7C /* SDL_cocoamousetap.m in Sources */ = {isa = PBXBuildFile; fileRef = D55A1B80179F262300625D7C /* SDL_cocoamousetap.m */; }; |
| | |
| | | DB313FB617554B71006C0E22 /* SDL_x11video.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BDFFD412E6671800899322 /* SDL_x11video.h */; }; |
| | | DB313FB717554B71006C0E22 /* SDL_x11window.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BDFFD612E6671800899322 /* SDL_x11window.h */; }; |
| | | DB313FB817554B71006C0E22 /* SDL_sysrender.h in Headers */ = {isa = PBXBuildFile; fileRef = 041B2C9F12FA0D680087D585 /* SDL_sysrender.h */; }; |
| | | DB313FB917554B71006C0E22 /* mmx.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409B8D12FA97ED00FB9AA8 /* mmx.h */; }; |
| | | DB313FBA17554B71006C0E22 /* SDL_yuv_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409B8F12FA97ED00FB9AA8 /* SDL_yuv_sw_c.h */; }; |
| | | DB313FBB17554B71006C0E22 /* SDL_nullframebuffer_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7803712FB748500FC43C0 /* SDL_nullframebuffer_c.h */; }; |
| | | DB313FBC17554B71006C0E22 /* SDL_blendfillrect.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7803E12FB74A200FC43C0 /* SDL_blendfillrect.h */; }; |
| | |
| | | DB31405617554B71006C0E22 /* SDL_x11video.c in Sources */ = {isa = PBXBuildFile; fileRef = 04BDFFD312E6671800899322 /* SDL_x11video.c */; }; |
| | | DB31405717554B71006C0E22 /* SDL_x11window.c in Sources */ = {isa = PBXBuildFile; fileRef = 04BDFFD512E6671800899322 /* SDL_x11window.c */; }; |
| | | DB31405817554B71006C0E22 /* SDL_render.c in Sources */ = {isa = PBXBuildFile; fileRef = 041B2C9E12FA0D680087D585 /* SDL_render.c */; }; |
| | | DB31405917554B71006C0E22 /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409B8E12FA97ED00FB9AA8 /* SDL_yuv_mmx.c */; }; |
| | | DB31405A17554B71006C0E22 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409B9012FA97ED00FB9AA8 /* SDL_yuv_sw.c */; }; |
| | | DB31405B17554B71006C0E22 /* SDL_nullframebuffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7803812FB748500FC43C0 /* SDL_nullframebuffer.c */; }; |
| | | DB31405C17554B71006C0E22 /* SDL_blendfillrect.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7803D12FB74A200FC43C0 /* SDL_blendfillrect.c */; }; |
| | |
| | | 041B2C9F12FA0D680087D585 /* SDL_sysrender.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysrender.h; sourceTree = "<group>"; }; |
| | | 0435673C1303160F00BA5428 /* SDL_shaders_gl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_shaders_gl.c; sourceTree = "<group>"; }; |
| | | 0435673D1303160F00BA5428 /* SDL_shaders_gl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shaders_gl.h; sourceTree = "<group>"; }; |
| | | 04409B8D12FA97ED00FB9AA8 /* mmx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mmx.h; sourceTree = "<group>"; }; |
| | | 04409B8E12FA97ED00FB9AA8 /* SDL_yuv_mmx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_mmx.c; sourceTree = "<group>"; }; |
| | | 04409B8F12FA97ED00FB9AA8 /* SDL_yuv_sw_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_yuv_sw_c.h; sourceTree = "<group>"; }; |
| | | 04409B9012FA97ED00FB9AA8 /* SDL_yuv_sw.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_sw.c; sourceTree = "<group>"; }; |
| | | 0442EC1712FE1BBA004C9285 /* SDL_render_gl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_gl.c; sourceTree = "<group>"; }; |
| | |
| | | 04F7804512FB74A200FC43C0 /* SDL_drawline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawline.h; sourceTree = "<group>"; }; |
| | | 04F7804612FB74A200FC43C0 /* SDL_drawpoint.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_drawpoint.c; sourceTree = "<group>"; }; |
| | | 04F7804712FB74A200FC43C0 /* SDL_drawpoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawpoint.h; sourceTree = "<group>"; }; |
| | | 4D16644C1EDD6023003DE88E /* SDL_vulkan_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_vulkan_internal.h; sourceTree = "<group>"; }; |
| | | 4D16644D1EDD6023003DE88E /* SDL_vulkan_utils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_vulkan_utils.c; sourceTree = "<group>"; }; |
| | | 4D1664501EDD60AD003DE88E /* SDL_cocoametalview.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_cocoametalview.m; sourceTree = "<group>"; }; |
| | | 4D1664511EDD60AD003DE88E /* SDL_cocoavulkan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_cocoavulkan.h; sourceTree = "<group>"; }; |
| | | 4D1664521EDD60AD003DE88E /* SDL_cocoavulkan.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_cocoavulkan.m; sourceTree = "<group>"; }; |
| | | 4D4820431F0F10B400EDC31C /* SDL_vulkan.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_vulkan.h; sourceTree = "<group>"; }; |
| | | 4D7517281EE2562B00820EEA /* SDL_cocoametalview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_cocoametalview.h; sourceTree = "<group>"; }; |
| | | 56115BB91DF72C6D00F47E1E /* SDL_dataqueue.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_dataqueue.c; path = ../../src/SDL_dataqueue.c; sourceTree = "<group>"; }; |
| | | 56115BBA1DF72C6D00F47E1E /* SDL_dataqueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_dataqueue.h; path = ../../src/SDL_dataqueue.h; sourceTree = "<group>"; }; |
| | | 564624351FF821B80074AC87 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; |
| | | 564624371FF821CB0074AC87 /* Metal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Metal.framework; path = System/Library/Frameworks/Metal.framework; sourceTree = SDKROOT; }; |
| | | 565AF9681FF8237A0077498A /* Metal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Metal.framework; sourceTree = "<group>"; }; |
| | | 565AF9691FF823840077498A /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; |
| | | 566CDE8D148F0AC200C5A9BB /* SDL_dropevents_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_dropevents_c.h; sourceTree = "<group>"; }; |
| | | 566CDE8E148F0AC200C5A9BB /* SDL_dropevents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_dropevents.c; sourceTree = "<group>"; }; |
| | | 567E2F1B17C44BB2005F1892 /* SDL_sysfilesystem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SDL_sysfilesystem.m; path = ../../src/filesystem/cocoa/SDL_sysfilesystem.m; sourceTree = "<group>"; }; |
| | |
| | | 56A6701E185654B40007D20F /* SDL_dynapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_dynapi.c; path = ../../src/dynapi/SDL_dynapi.c; sourceTree = "<group>"; }; |
| | | 56A6701F185654B40007D20F /* SDL_dynapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_dynapi.h; path = ../../src/dynapi/SDL_dynapi.h; sourceTree = "<group>"; }; |
| | | 56A67020185654B40007D20F /* SDL_dynapi_overrides.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_dynapi_overrides.h; path = ../../src/dynapi/SDL_dynapi_overrides.h; sourceTree = "<group>"; }; |
| | | 5C2EF69B1FC987C6003F5197 /* SDL_gles2funcs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gles2funcs.h; sourceTree = "<group>"; }; |
| | | 5C2EF69C1FC987C6003F5197 /* SDL_render_gles2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_gles2.c; sourceTree = "<group>"; }; |
| | | 5C2EF69D1FC987C6003F5197 /* SDL_shaders_gles2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shaders_gles2.h; sourceTree = "<group>"; }; |
| | | 5C2EF69E1FC987C6003F5197 /* SDL_shaders_gles2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_shaders_gles2.c; sourceTree = "<group>"; }; |
| | | 5C2EF6EC1FC9D0EC003F5197 /* SDL_cocoaopengles.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_cocoaopengles.m; sourceTree = "<group>"; }; |
| | | 5C2EF6ED1FC9D0ED003F5197 /* SDL_cocoaopengles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_cocoaopengles.h; sourceTree = "<group>"; }; |
| | | 5C2EF6F41FC9EE34003F5197 /* SDL_rect_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rect_c.h; sourceTree = "<group>"; }; |
| | | 5C2EF6F51FC9EE35003F5197 /* SDL_egl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_egl.c; sourceTree = "<group>"; }; |
| | | 5C2EF6F61FC9EE35003F5197 /* SDL_egl_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_egl_c.h; sourceTree = "<group>"; }; |
| | | 5C2EF7001FC9EF0F003F5197 /* SDL_egl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_egl.h; sourceTree = "<group>"; }; |
| | | A7381E931D8B69C300B177DD /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; |
| | | A7381E951D8B69D600B177DD /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; |
| | | A77E6EB3167AB0A90010E40B /* SDL_gamecontroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gamecontroller.h; sourceTree = "<group>"; }; |
| | |
| | | AA7557F71595D4D800BBD41B /* SDL_version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_version.h; sourceTree = "<group>"; }; |
| | | AA7557F81595D4D800BBD41B /* SDL_video.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_video.h; sourceTree = "<group>"; }; |
| | | AA7557F91595D4D800BBD41B /* SDL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL.h; sourceTree = "<group>"; }; |
| | | AA9A7F0F1FB0206300FED37F /* yuv_rgb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = yuv_rgb.h; sourceTree = "<group>"; }; |
| | | AA9A7F101FB0206300FED37F /* yuv_rgb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = yuv_rgb.c; sourceTree = "<group>"; }; |
| | | AA9A7F131FB0209C00FED37F /* SDL_yuv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv.c; sourceTree = "<group>"; }; |
| | | AA9A7F141FB0209C00FED37F /* SDL_yuv_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_yuv_c.h; sourceTree = "<group>"; }; |
| | | AA9E4092163BE51E007A2AD0 /* SDL_x11messagebox.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_x11messagebox.c; sourceTree = "<group>"; }; |
| | | AA9FF9591637CBF9000DF050 /* SDL_messagebox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_messagebox.h; sourceTree = "<group>"; }; |
| | | AABCC38B164063D200AB8930 /* SDL_cocoamessagebox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_cocoamessagebox.h; sourceTree = "<group>"; }; |
| | |
| | | AAC070F7195606770073DCDF /* SDL_opengles2_gl2platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_opengles2_gl2platform.h; sourceTree = "<group>"; }; |
| | | AAC070F8195606770073DCDF /* SDL_opengles2_khrplatform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_opengles2_khrplatform.h; sourceTree = "<group>"; }; |
| | | AADA5B8616CCAB3000107CF7 /* SDL_bits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_bits.h; sourceTree = "<group>"; }; |
| | | AADC5A411FDA035D00960936 /* SDL_shaders_metal_osx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shaders_metal_osx.h; sourceTree = "<group>"; }; |
| | | AADC5A421FDA035D00960936 /* SDL_render_metal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_render_metal.m; sourceTree = "<group>"; }; |
| | | BBFC088A164C6514003E6A99 /* SDL_gamecontroller.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_gamecontroller.c; sourceTree = "<group>"; }; |
| | | BECDF66B0761BA81005FE872 /* Info-Framework.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-Framework.plist"; sourceTree = "<group>"; }; |
| | | BECDF66C0761BA81005FE872 /* SDL2.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SDL2.framework; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 564624381FF821DA0074AC87 /* Metal.framework in Frameworks */, |
| | | 564624361FF821C20074AC87 /* QuartzCore.framework in Frameworks */, |
| | | A7381E971D8B6A0300B177DD /* AudioToolbox.framework in Frameworks */, |
| | | A7381E961D8B69D600B177DD /* CoreAudio.framework in Frameworks */, |
| | | FA73671D19A540EF004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 007317A40858DECD00B2BC32 /* Cocoa.framework in Frameworks */, |
| | | 007317A60858DECD00B2BC32 /* IOKit.framework in Frameworks */, |
| | | 00D0D08410675DD9004B05EF /* CoreFoundation.framework in Frameworks */, |
| | | 565AF96A1FF8238D0077498A /* QuartzCore.framework in Frameworks */, |
| | | 00D0D0D810675E46004B05EF /* Carbon.framework in Frameworks */, |
| | | 007317A40858DECD00B2BC32 /* Cocoa.framework in Frameworks */, |
| | | A7381E961D8B69D600B177DD /* CoreAudio.framework in Frameworks */, |
| | | 00D0D08410675DD9004B05EF /* CoreFoundation.framework in Frameworks */, |
| | | FA73671D19A540EF004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 00CFA89D106B4BA100758660 /* ForceFeedback.framework in Frameworks */, |
| | | 565AF96D1FF823980077498A /* Metal.framework in Frameworks */, |
| | | 007317A60858DECD00B2BC32 /* IOKit.framework in Frameworks */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 5646243A1FF821FF0074AC87 /* Metal.framework in Frameworks */, |
| | | 564624391FF821EF0074AC87 /* QuartzCore.framework in Frameworks */, |
| | | 56C5237E1D8F4985001F2F30 /* CoreAudio.framework in Frameworks */, |
| | | 565AF96B1FF8238E0077498A /* QuartzCore.framework in Frameworks */, |
| | | FA73671E19A54140004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 007317AB0858DECD00B2BC32 /* Cocoa.framework in Frameworks */, |
| | | 007317AD0858DECD00B2BC32 /* IOKit.framework in Frameworks */, |
| | | 56C523801D8F498B001F2F30 /* CoreFoundation.framework in Frameworks */, |
| | | 007317C30858E15000B2BC32 /* Carbon.framework in Frameworks */, |
| | | DB31408B17554D37006C0E22 /* ForceFeedback.framework in Frameworks */, |
| | | 565AF96E1FF823980077498A /* Metal.framework in Frameworks */, |
| | | 562C4AE91D8F496200AF9EBE /* AudioToolbox.framework in Frameworks */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 5646243C1FF822170074AC87 /* Metal.framework in Frameworks */, |
| | | 5646243B1FF822100074AC87 /* QuartzCore.framework in Frameworks */, |
| | | 56C5237F1D8F4985001F2F30 /* CoreAudio.framework in Frameworks */, |
| | | 565AF96C1FF8238E0077498A /* QuartzCore.framework in Frameworks */, |
| | | FA73671F19A54144004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB31406E17554B71006C0E22 /* Cocoa.framework in Frameworks */, |
| | | DB31407017554B71006C0E22 /* IOKit.framework in Frameworks */, |
| | | 56C523811D8F498C001F2F30 /* CoreFoundation.framework in Frameworks */, |
| | | DB31407217554B71006C0E22 /* Carbon.framework in Frameworks */, |
| | | DB31408D17554D3C006C0E22 /* ForceFeedback.framework in Frameworks */, |
| | | 565AF96F1FF823990077498A /* Metal.framework in Frameworks */, |
| | | 562C4AEA1D8F496300AF9EBE /* AudioToolbox.framework in Frameworks */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | |
| | | children = ( |
| | | AA7557C71595D4D800BBD41B /* begin_code.h */, |
| | | AA7557C81595D4D800BBD41B /* close_code.h */, |
| | | AA7557F91595D4D800BBD41B /* SDL.h */, |
| | | AA7557C91595D4D800BBD41B /* SDL_assert.h */, |
| | | AA7557CA1595D4D800BBD41B /* SDL_atomic.h */, |
| | | AA7557CB1595D4D800BBD41B /* SDL_audio.h */, |
| | | AADA5B8616CCAB3000107CF7 /* SDL_bits.h */, |
| | | AA7557CC1595D4D800BBD41B /* SDL_blendmode.h */, |
| | | AA7557CD1595D4D800BBD41B /* SDL_clipboard.h */, |
| | | AA7557CF1595D4D800BBD41B /* SDL_config.h */, |
| | | AA7557CE1595D4D800BBD41B /* SDL_config_macosx.h */, |
| | | AA7557CF1595D4D800BBD41B /* SDL_config.h */, |
| | | AA7557D01595D4D800BBD41B /* SDL_copying.h */, |
| | | AA7557D11595D4D800BBD41B /* SDL_cpuinfo.h */, |
| | | 5C2EF7001FC9EF0F003F5197 /* SDL_egl.h */, |
| | | AA7557D21595D4D800BBD41B /* SDL_endian.h */, |
| | | AA7557D31595D4D800BBD41B /* SDL_error.h */, |
| | | AA7557D41595D4D800BBD41B /* SDL_events.h */, |
| | |
| | | AA7557DF1595D4D800BBD41B /* SDL_mouse.h */, |
| | | AA7557E01595D4D800BBD41B /* SDL_mutex.h */, |
| | | AA7557E11595D4D800BBD41B /* SDL_name.h */, |
| | | AA7557E21595D4D800BBD41B /* SDL_opengl.h */, |
| | | AAC070F4195606770073DCDF /* SDL_opengl_glext.h */, |
| | | AA7557E21595D4D800BBD41B /* SDL_opengl.h */, |
| | | AA7557E31595D4D800BBD41B /* SDL_opengles.h */, |
| | | AA7557E41595D4D800BBD41B /* SDL_opengles2.h */, |
| | | AAC070F5195606770073DCDF /* SDL_opengles2_gl2.h */, |
| | | AAC070F6195606770073DCDF /* SDL_opengles2_gl2ext.h */, |
| | | AAC070F7195606770073DCDF /* SDL_opengles2_gl2platform.h */, |
| | | AAC070F8195606770073DCDF /* SDL_opengles2_khrplatform.h */, |
| | | AA7557E41595D4D800BBD41B /* SDL_opengles2.h */, |
| | | AA7557E51595D4D800BBD41B /* SDL_pixels.h */, |
| | | AA7557E61595D4D800BBD41B /* SDL_platform.h */, |
| | | AA7557E71595D4D800BBD41B /* SDL_power.h */, |
| | |
| | | AA7557F61595D4D800BBD41B /* SDL_types.h */, |
| | | AA7557F71595D4D800BBD41B /* SDL_version.h */, |
| | | AA7557F81595D4D800BBD41B /* SDL_video.h */, |
| | | 4D4820431F0F10B400EDC31C /* SDL_vulkan.h */, |
| | | AA7557F91595D4D800BBD41B /* SDL.h */, |
| | | ); |
| | | name = "Public Headers"; |
| | | path = ../../include; |
| | |
| | | 041B2C9712FA0D680087D585 /* render */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | AADC5A401FDA030E00960936 /* metal */, |
| | | 5C2EF6921FC986D8003F5197 /* opengles2 */, |
| | | 041B2C9A12FA0D680087D585 /* opengl */, |
| | | 041B2CA012FA0D680087D585 /* software */, |
| | | 04409B8D12FA97ED00FB9AA8 /* mmx.h */, |
| | | 041B2C9E12FA0D680087D585 /* SDL_render.c */, |
| | | 041B2C9F12FA0D680087D585 /* SDL_sysrender.h */, |
| | | 04409B8E12FA97ED00FB9AA8 /* SDL_yuv_mmx.c */, |
| | | 04409B8F12FA97ED00FB9AA8 /* SDL_yuv_sw_c.h */, |
| | | 04409B9012FA97ED00FB9AA8 /* SDL_yuv_sw.c */, |
| | | ); |
| | |
| | | 04BDFEC112E6671800899322 /* cocoa */, |
| | | 04BDFEE712E6671800899322 /* dummy */, |
| | | 04BDFFB712E6671800899322 /* x11 */, |
| | | 04BDFF4E12E6671800899322 /* SDL_blit.c */, |
| | | 04BDFF4F12E6671800899322 /* SDL_blit.h */, |
| | | AA9A7F0E1FB0200B00FED37F /* yuv2rgb */, |
| | | 04BDFF5012E6671800899322 /* SDL_blit_0.c */, |
| | | 04BDFF5112E6671800899322 /* SDL_blit_1.c */, |
| | | 04BDFF5212E6671800899322 /* SDL_blit_A.c */, |
| | |
| | | 04BDFF5712E6671800899322 /* SDL_blit_N.c */, |
| | | 04BDFF5812E6671800899322 /* SDL_blit_slow.c */, |
| | | 04BDFF5912E6671800899322 /* SDL_blit_slow.h */, |
| | | 04BDFF4E12E6671800899322 /* SDL_blit.c */, |
| | | 04BDFF4F12E6671800899322 /* SDL_blit.h */, |
| | | 04BDFF5A12E6671800899322 /* SDL_bmp.c */, |
| | | 04BDFF5B12E6671800899322 /* SDL_clipboard.c */, |
| | | 5C2EF6F61FC9EE35003F5197 /* SDL_egl_c.h */, |
| | | 5C2EF6F51FC9EE35003F5197 /* SDL_egl.c */, |
| | | 04BDFF6012E6671800899322 /* SDL_fillrect.c */, |
| | | 04BDFF6512E6671800899322 /* SDL_pixels.c */, |
| | | 04BDFF6612E6671800899322 /* SDL_pixels_c.h */, |
| | | 04BDFF6512E6671800899322 /* SDL_pixels.c */, |
| | | 5C2EF6F41FC9EE34003F5197 /* SDL_rect_c.h */, |
| | | 04BDFF6712E6671800899322 /* SDL_rect.c */, |
| | | 04BDFF6F12E6671800899322 /* SDL_RLEaccel.c */, |
| | | 04BDFF7012E6671800899322 /* SDL_RLEaccel_c.h */, |
| | | 04BDFF7112E6671800899322 /* SDL_shape.c */, |
| | | 04BDFF6F12E6671800899322 /* SDL_RLEaccel.c */, |
| | | 04BDFF7212E6671800899322 /* SDL_shape_internals.h */, |
| | | 04BDFF7112E6671800899322 /* SDL_shape.c */, |
| | | 04BDFF7312E6671800899322 /* SDL_stretch.c */, |
| | | 04BDFF7412E6671800899322 /* SDL_surface.c */, |
| | | 04BDFF7512E6671800899322 /* SDL_sysvideo.h */, |
| | | 04BDFF7612E6671800899322 /* SDL_video.c */, |
| | | 4D16644C1EDD6023003DE88E /* SDL_vulkan_internal.h */, |
| | | 4D16644D1EDD6023003DE88E /* SDL_vulkan_utils.c */, |
| | | AA9A7F141FB0209C00FED37F /* SDL_yuv_c.h */, |
| | | AA9A7F131FB0209C00FED37F /* SDL_yuv.c */, |
| | | ); |
| | | name = video; |
| | | path = ../../src/video; |
| | |
| | | 04BDFEC712E6671800899322 /* SDL_cocoakeyboard.m */, |
| | | AABCC38B164063D200AB8930 /* SDL_cocoamessagebox.h */, |
| | | AABCC38C164063D200AB8930 /* SDL_cocoamessagebox.m */, |
| | | 4D7517281EE2562B00820EEA /* SDL_cocoametalview.h */, |
| | | 4D1664501EDD60AD003DE88E /* SDL_cocoametalview.m */, |
| | | 04BDFEC812E6671800899322 /* SDL_cocoamodes.h */, |
| | | 04BDFEC912E6671800899322 /* SDL_cocoamodes.m */, |
| | | 04BDFECA12E6671800899322 /* SDL_cocoamouse.h */, |
| | |
| | | D55A1B80179F262300625D7C /* SDL_cocoamousetap.m */, |
| | | 04BDFECC12E6671800899322 /* SDL_cocoaopengl.h */, |
| | | 04BDFECD12E6671800899322 /* SDL_cocoaopengl.m */, |
| | | 5C2EF6ED1FC9D0ED003F5197 /* SDL_cocoaopengles.h */, |
| | | 5C2EF6EC1FC9D0EC003F5197 /* SDL_cocoaopengles.m */, |
| | | 04BDFECE12E6671800899322 /* SDL_cocoashape.h */, |
| | | 04BDFECF12E6671800899322 /* SDL_cocoashape.m */, |
| | | 04BDFED012E6671800899322 /* SDL_cocoavideo.h */, |
| | | 04BDFED112E6671800899322 /* SDL_cocoavideo.m */, |
| | | 4D1664511EDD60AD003DE88E /* SDL_cocoavulkan.h */, |
| | | 4D1664521EDD60AD003DE88E /* SDL_cocoavulkan.m */, |
| | | 04BDFED212E6671800899322 /* SDL_cocoawindow.h */, |
| | | 04BDFED312E6671800899322 /* SDL_cocoawindow.m */, |
| | | ); |
| | |
| | | 034768DDFF38A45A11DB9C8B /* Products */, |
| | | BECDF66B0761BA81005FE872 /* Info-Framework.plist */, |
| | | BEC562FE0761C0E800A33029 /* Linked Frameworks */, |
| | | 564624341FF821B70074AC87 /* Frameworks */, |
| | | ); |
| | | comments = "To build Universal Binaries, we have experimented with a variety of different options.\nThe complication is that we must retain compatibility with at least 10.2. \nThe Universal Binary defaults only work for > 10.3.9\n\nSo far, we have found:\ngcc 4.0.0 with Xcode 2.1 always links against libgcc_s. gcc 4.0.1 from Xcode 2.2 fixes this problem.\n\nBut gcc 4.0 will not work with < 10.3.9 because we continue to get an undefined symbol to _fprintf$LDBL128.\nSo we must use gcc 3.3 on PPC to accomplish 10.2 support. (But 4.0 is required for i386.)\n\nSetting the deployment target to 10.4 will disable prebinding, so for PPC, we set it less than 10.4 to preserve prebinding for legacy support.\n\nSetting the PPC SDKROOT to /Developers/SDKs/MacOSX10.2.8.sdk will link to 63.0.0 libSystem.B.dylib. Leaving it at current or 10.4u links to 88.1.2. However, as long as we are using gcc 3.3, it doesn't seem to matter as testing has demonstrated both will run. We have decided not to invoke the 10.2.8 SDK because it is not a default installed component with Xcode which will probably cause most people problems. However, rather than deleting the SDKROOT_ppc entry entirely, we have mapped it to 10.4u in case we decide we need to change this setting.\n\nTo use Altivec or SSE, we needed architecture specific flags:\nOTHER_CFLAGS_ppc\nOTHER_CFLAGS_i386\nOTHER_CFLAGS=$(OTHER_CFLAGS_($CURRENT_ARCH))\n\nThe general OTHER_CFLAGS needed to be manually mapped to architecture specific options because Xcode didn't do this automatically for us.\n\n\n"; |
| | | indentWidth = 4; |
| | |
| | | 56A670081856545C0007D20F /* SDL_internal.h */, |
| | | 04BDFE5512E6671700899322 /* SDL_assert_c.h */, |
| | | 04BDFE5612E6671700899322 /* SDL_assert.c */, |
| | | 56115BB91DF72C6D00F47E1E /* SDL_dataqueue.c */, |
| | | 56115BBA1DF72C6D00F47E1E /* SDL_dataqueue.h */, |
| | | 04BDFE5812E6671700899322 /* SDL_error_c.h */, |
| | | 04BDFE5912E6671700899322 /* SDL_error.c */, |
| | | 0442EC5E12FE1C75004C9285 /* SDL_hints.c */, |
| | |
| | | 04BDFE5C12E6671700899322 /* SDL.c */, |
| | | ); |
| | | name = "Library Source"; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | 564624341FF821B70074AC87 /* Frameworks */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | 564624371FF821CB0074AC87 /* Metal.framework */, |
| | | 564624351FF821B80074AC87 /* QuartzCore.framework */, |
| | | ); |
| | | name = Frameworks; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | 567E2F1F17C44BBB005F1892 /* filesystem */ = { |
| | |
| | | name = dynapi; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | 5C2EF6921FC986D8003F5197 /* opengles2 */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | 5C2EF69B1FC987C6003F5197 /* SDL_gles2funcs.h */, |
| | | 5C2EF69C1FC987C6003F5197 /* SDL_render_gles2.c */, |
| | | 5C2EF69E1FC987C6003F5197 /* SDL_shaders_gles2.c */, |
| | | 5C2EF69D1FC987C6003F5197 /* SDL_shaders_gles2.h */, |
| | | ); |
| | | path = opengles2; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | AA9A7F0E1FB0200B00FED37F /* yuv2rgb */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | AA9A7F101FB0206300FED37F /* yuv_rgb.c */, |
| | | AA9A7F0F1FB0206300FED37F /* yuv_rgb.h */, |
| | | ); |
| | | name = yuv2rgb; |
| | | path = ../../src/video/yuv2rgb; |
| | | sourceTree = SOURCE_ROOT; |
| | | }; |
| | | AADC5A401FDA030E00960936 /* metal */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | AADC5A421FDA035D00960936 /* SDL_render_metal.m */, |
| | | AADC5A411FDA035D00960936 /* SDL_shaders_metal_osx.h */, |
| | | ); |
| | | path = metal; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | BEC562FE0761C0E800A33029 /* Linked Frameworks */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | 565AF9691FF823840077498A /* QuartzCore.framework */, |
| | | 565AF9681FF8237A0077498A /* Metal.framework */, |
| | | A7381E931D8B69C300B177DD /* AudioToolbox.framework */, |
| | | A7381E951D8B69D600B177DD /* CoreAudio.framework */, |
| | | FA73671C19A540EF004122E4 /* CoreVideo.framework */, |
| | | 00D0D08310675DD9004B05EF /* CoreFoundation.framework */, |
| | | 007317C10858E15000B2BC32 /* Carbon.framework */, |
| | | 0073179D0858DECD00B2BC32 /* Cocoa.framework */, |
| | | 0073179F0858DECD00B2BC32 /* IOKit.framework */, |
| | | A7381E951D8B69D600B177DD /* CoreAudio.framework */, |
| | | 00D0D08310675DD9004B05EF /* CoreFoundation.framework */, |
| | | FA73671C19A540EF004122E4 /* CoreVideo.framework */, |
| | | 00CFA89C106B4BA100758660 /* ForceFeedback.framework */, |
| | | 0073179F0858DECD00B2BC32 /* IOKit.framework */, |
| | | ); |
| | | name = "Linked Frameworks"; |
| | | sourceTree = "<group>"; |
| | |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | AA7557FA1595D4D800BBD41B /* begin_code.h in Headers */, |
| | | AADC5A431FDA035D00960936 /* SDL_shaders_metal_osx.h in Headers */, |
| | | AA7557FC1595D4D800BBD41B /* close_code.h in Headers */, |
| | | AA75585E1595D4D800BBD41B /* SDL.h in Headers */, |
| | | AA7557FE1595D4D800BBD41B /* SDL_assert.h in Headers */, |
| | |
| | | AA7558021595D4D800BBD41B /* SDL_audio.h in Headers */, |
| | | AADA5B8716CCAB3000107CF7 /* SDL_bits.h in Headers */, |
| | | AA7558041595D4D800BBD41B /* SDL_blendmode.h in Headers */, |
| | | 5C2EF7011FC9EF10003F5197 /* SDL_egl.h in Headers */, |
| | | AA7558061595D4D800BBD41B /* SDL_clipboard.h in Headers */, |
| | | AA7558081595D4D800BBD41B /* SDL_config_macosx.h in Headers */, |
| | | AA75580A1595D4D800BBD41B /* SDL_config.h in Headers */, |
| | |
| | | AA7558221595D4D800BBD41B /* SDL_keycode.h in Headers */, |
| | | AA7558241595D4D800BBD41B /* SDL_loadso.h in Headers */, |
| | | AA7558261595D4D800BBD41B /* SDL_log.h in Headers */, |
| | | 5C2EF6F91FC9EE35003F5197 /* SDL_egl_c.h in Headers */, |
| | | AA7558281595D4D800BBD41B /* SDL_main.h in Headers */, |
| | | AA9FF95A1637CBF9000DF050 /* SDL_messagebox.h in Headers */, |
| | | AA75582A1595D4D800BBD41B /* SDL_mouse.h in Headers */, |
| | |
| | | AA75583A1595D4D800BBD41B /* SDL_power.h in Headers */, |
| | | AA75583C1595D4D800BBD41B /* SDL_quit.h in Headers */, |
| | | AA75583E1595D4D800BBD41B /* SDL_rect.h in Headers */, |
| | | 5C2EF69F1FC987C6003F5197 /* SDL_gles2funcs.h in Headers */, |
| | | AA7558401595D4D800BBD41B /* SDL_render.h in Headers */, |
| | | AA7558421595D4D800BBD41B /* SDL_revision.h in Headers */, |
| | | AA7558441595D4D800BBD41B /* SDL_rwops.h in Headers */, |
| | |
| | | AA7558581595D4D800BBD41B /* SDL_types.h in Headers */, |
| | | AA75585A1595D4D800BBD41B /* SDL_version.h in Headers */, |
| | | AA75585C1595D4D800BBD41B /* SDL_video.h in Headers */, |
| | | 5C2EF6A11FC987C6003F5197 /* SDL_shaders_gles2.h in Headers */, |
| | | AA8167541F5E727800518735 /* SDL_vulkan.h in Headers */, |
| | | 4D7517291EE2562B00820EEA /* SDL_cocoametalview.h in Headers */, |
| | | 04BD000912E6671800899322 /* SDL_diskaudio.h in Headers */, |
| | | 04BD001112E6671800899322 /* SDL_dummyaudio.h in Headers */, |
| | | 04BD001912E6671800899322 /* SDL_coreaudio.h in Headers */, |
| | |
| | | 04BD004B12E6671800899322 /* SDL_events_c.h in Headers */, |
| | | 04BD004D12E6671800899322 /* SDL_gesture_c.h in Headers */, |
| | | 04BD004F12E6671800899322 /* SDL_keyboard_c.h in Headers */, |
| | | AA9A7F111FB0206400FED37F /* yuv_rgb.h in Headers */, |
| | | 04BD005112E6671800899322 /* SDL_mouse_c.h in Headers */, |
| | | 04BD005312E6671800899322 /* SDL_sysevents.h in Headers */, |
| | | 04BD005512E6671800899322 /* SDL_touch_c.h in Headers */, |
| | |
| | | 04BD00CB12E6671800899322 /* SDL_thread_c.h in Headers */, |
| | | 04BD00D812E6671800899322 /* SDL_timer_c.h in Headers */, |
| | | 04BD00F312E6671800899322 /* SDL_cocoaclipboard.h in Headers */, |
| | | 4D1664541EDD60AD003DE88E /* SDL_cocoavulkan.h in Headers */, |
| | | 04BD00F512E6671800899322 /* SDL_cocoaevents.h in Headers */, |
| | | 04BD00F712E6671800899322 /* SDL_cocoakeyboard.h in Headers */, |
| | | 5C2EF6EF1FC9D0ED003F5197 /* SDL_cocoaopengles.h in Headers */, |
| | | 04BD00F912E6671800899322 /* SDL_cocoamodes.h in Headers */, |
| | | 04BD00FB12E6671800899322 /* SDL_cocoamouse.h in Headers */, |
| | | 04BD00FD12E6671800899322 /* SDL_cocoaopengl.h in Headers */, |
| | | 04BD00FF12E6671800899322 /* SDL_cocoashape.h in Headers */, |
| | | 56115BBC1DF72C6D00F47E1E /* SDL_dataqueue.h in Headers */, |
| | | 04BD010112E6671800899322 /* SDL_cocoavideo.h in Headers */, |
| | | 04BD010312E6671800899322 /* SDL_cocoawindow.h in Headers */, |
| | | 5C2EF6F71FC9EE35003F5197 /* SDL_rect_c.h in Headers */, |
| | | 04BD011812E6671800899322 /* SDL_nullevents_c.h in Headers */, |
| | | 04BD011C12E6671800899322 /* SDL_nullvideo.h in Headers */, |
| | | 04BD017612E6671800899322 /* SDL_blit.h in Headers */, |
| | |
| | | 04BD019912E6671800899322 /* SDL_shape_internals.h in Headers */, |
| | | 04BD019C12E6671800899322 /* SDL_sysvideo.h in Headers */, |
| | | 04BD01DC12E6671800899322 /* imKStoUCS.h in Headers */, |
| | | 4D16644E1EDD6023003DE88E /* SDL_vulkan_internal.h in Headers */, |
| | | 04BD01DE12E6671800899322 /* SDL_x11clipboard.h in Headers */, |
| | | 04BD01E012E6671800899322 /* SDL_x11dyn.h in Headers */, |
| | | 04BD01E212E6671800899322 /* SDL_x11events.h in Headers */, |
| | |
| | | 04BD01F712E6671800899322 /* SDL_x11video.h in Headers */, |
| | | 04BD01F912E6671800899322 /* SDL_x11window.h in Headers */, |
| | | 041B2CA612FA0D680087D585 /* SDL_sysrender.h in Headers */, |
| | | 04409B9112FA97ED00FB9AA8 /* mmx.h in Headers */, |
| | | AA9A7F161FB0209D00FED37F /* SDL_yuv_c.h in Headers */, |
| | | 04409B9312FA97ED00FB9AA8 /* SDL_yuv_sw_c.h in Headers */, |
| | | 04F7803912FB748500FC43C0 /* SDL_nullframebuffer_c.h in Headers */, |
| | | 04F7804A12FB74A200FC43C0 /* SDL_blendfillrect.h in Headers */, |
| | |
| | | AA7558451595D4D800BBD41B /* SDL_rwops.h in Headers */, |
| | | AA7558471595D4D800BBD41B /* SDL_scancode.h in Headers */, |
| | | AA7558491595D4D800BBD41B /* SDL_shape.h in Headers */, |
| | | 56F9D55E1DF73B7C00C15B5D /* SDL_dataqueue.h in Headers */, |
| | | 56A6702B185654B40007D20F /* SDL_dynapi_overrides.h in Headers */, |
| | | AA75584B1595D4D800BBD41B /* SDL_stdinc.h in Headers */, |
| | | AA75584D1595D4D800BBD41B /* SDL_surface.h in Headers */, |
| | |
| | | 04BD025D12E6671800899322 /* blank_cursor.h in Headers */, |
| | | 04BD025E12E6671800899322 /* default_cursor.h in Headers */, |
| | | 04BD025F12E6671800899322 /* scancodes_darwin.h in Headers */, |
| | | AADC5A4F1FDA05E600960936 /* SDL_cocoavulkan.h in Headers */, |
| | | 5C2EF6FA1FC9EE64003F5197 /* SDL_egl_c.h in Headers */, |
| | | 04BD026012E6671800899322 /* scancodes_linux.h in Headers */, |
| | | 04BD026212E6671800899322 /* scancodes_xfree86.h in Headers */, |
| | | 04BD026412E6671800899322 /* SDL_clipboardevents_c.h in Headers */, |
| | | 04BD026612E6671800899322 /* SDL_events_c.h in Headers */, |
| | | 56A67022185654B40007D20F /* SDL_dynapi_procs.h in Headers */, |
| | | 04BD026812E6671800899322 /* SDL_gesture_c.h in Headers */, |
| | | AADC5A4D1FDA05D300960936 /* SDL_vulkan_internal.h in Headers */, |
| | | 04BD026A12E6671800899322 /* SDL_keyboard_c.h in Headers */, |
| | | AADC5A491FDA05C100960936 /* yuv_rgb.h in Headers */, |
| | | 04BD026C12E6671800899322 /* SDL_mouse_c.h in Headers */, |
| | | 04BD026E12E6671800899322 /* SDL_sysevents.h in Headers */, |
| | | 04BD027012E6671800899322 /* SDL_touch_c.h in Headers */, |
| | | 04BD027212E6671800899322 /* SDL_windowevents_c.h in Headers */, |
| | | 04BD027312E6671800899322 /* SDL_rwopsbundlesupport.h in Headers */, |
| | | 5C2EF6FC1FC9EE64003F5197 /* SDL_rect_c.h in Headers */, |
| | | 04BD027B12E6671800899322 /* SDL_haptic_c.h in Headers */, |
| | | 04BD027C12E6671800899322 /* SDL_syshaptic.h in Headers */, |
| | | 04BD028212E6671800899322 /* SDL_sysjoystick_c.h in Headers */, |
| | |
| | | 04BD031712E6671800899322 /* SDL_cocoaopengl.h in Headers */, |
| | | 04BD031912E6671800899322 /* SDL_cocoashape.h in Headers */, |
| | | AAC07103195606770073DCDF /* SDL_opengles2_gl2platform.h in Headers */, |
| | | 5C2EF6F01FC9D181003F5197 /* SDL_cocoaopengles.h in Headers */, |
| | | 04BD031B12E6671800899322 /* SDL_cocoavideo.h in Headers */, |
| | | 04BD031D12E6671800899322 /* SDL_cocoawindow.h in Headers */, |
| | | 04BD033212E6671800899322 /* SDL_nullevents_c.h in Headers */, |
| | |
| | | 04BD039712E6671800899322 /* SDL_blit_copy.h in Headers */, |
| | | 04BD039A12E6671800899322 /* SDL_blit_slow.h in Headers */, |
| | | 04BD03A712E6671800899322 /* SDL_pixels_c.h in Headers */, |
| | | 5C2EF6A71FC98D2D003F5197 /* SDL_gles2funcs.h in Headers */, |
| | | 04BD03B112E6671800899322 /* SDL_RLEaccel_c.h in Headers */, |
| | | 04BD03B312E6671800899322 /* SDL_shape_internals.h in Headers */, |
| | | 04BD03B612E6671800899322 /* SDL_sysvideo.h in Headers */, |
| | |
| | | 04BD040F12E6671800899322 /* SDL_x11video.h in Headers */, |
| | | AAC07100195606770073DCDF /* SDL_opengles2_gl2ext.h in Headers */, |
| | | 04BD041112E6671800899322 /* SDL_x11window.h in Headers */, |
| | | AADC5A4B1FDA05CF00960936 /* SDL_yuv_c.h in Headers */, |
| | | 041B2CAC12FA0D680087D585 /* SDL_sysrender.h in Headers */, |
| | | 04409B9512FA97ED00FB9AA8 /* mmx.h in Headers */, |
| | | 04409B9712FA97ED00FB9AA8 /* SDL_yuv_sw_c.h in Headers */, |
| | | 04F7803B12FB748500FC43C0 /* SDL_nullframebuffer_c.h in Headers */, |
| | | 5C2EF6AA1FC98D2D003F5197 /* SDL_shaders_gles2.h in Headers */, |
| | | 04F7805612FB74A200FC43C0 /* SDL_blendfillrect.h in Headers */, |
| | | 04F7805812FB74A200FC43C0 /* SDL_blendline.h in Headers */, |
| | | 04F7805A12FB74A200FC43C0 /* SDL_blendpoint.h in Headers */, |
| | | AADC5A461FDA047B00960936 /* SDL_shaders_metal_osx.h in Headers */, |
| | | 04F7805B12FB74A200FC43C0 /* SDL_draw.h in Headers */, |
| | | 04F7805D12FB74A200FC43C0 /* SDL_drawline.h in Headers */, |
| | | 04F7805F12FB74A200FC43C0 /* SDL_drawpoint.h in Headers */, |
| | |
| | | DB313FEC17554B71006C0E22 /* SDL_rwops.h in Headers */, |
| | | DB313FED17554B71006C0E22 /* SDL_scancode.h in Headers */, |
| | | DB313FEE17554B71006C0E22 /* SDL_shape.h in Headers */, |
| | | 56F9D55F1DF73B7D00C15B5D /* SDL_dataqueue.h in Headers */, |
| | | 56A6702C185654B40007D20F /* SDL_dynapi_overrides.h in Headers */, |
| | | DB313FEF17554B71006C0E22 /* SDL_stdinc.h in Headers */, |
| | | DB313FF017554B71006C0E22 /* SDL_surface.h in Headers */, |
| | |
| | | DB313F7C17554B71006C0E22 /* blank_cursor.h in Headers */, |
| | | DB313F7D17554B71006C0E22 /* default_cursor.h in Headers */, |
| | | DB313F7E17554B71006C0E22 /* scancodes_darwin.h in Headers */, |
| | | AADC5A501FDA05E600960936 /* SDL_cocoavulkan.h in Headers */, |
| | | 5C2EF6FD1FC9EE65003F5197 /* SDL_egl_c.h in Headers */, |
| | | DB313F7F17554B71006C0E22 /* scancodes_linux.h in Headers */, |
| | | DB313F8017554B71006C0E22 /* scancodes_xfree86.h in Headers */, |
| | | DB313F8117554B71006C0E22 /* SDL_clipboardevents_c.h in Headers */, |
| | | DB313F8217554B71006C0E22 /* SDL_events_c.h in Headers */, |
| | | 56A67023185654B40007D20F /* SDL_dynapi_procs.h in Headers */, |
| | | DB313F8317554B71006C0E22 /* SDL_gesture_c.h in Headers */, |
| | | AADC5A4E1FDA05D400960936 /* SDL_vulkan_internal.h in Headers */, |
| | | DB313F8417554B71006C0E22 /* SDL_keyboard_c.h in Headers */, |
| | | AADC5A4A1FDA05C200960936 /* yuv_rgb.h in Headers */, |
| | | DB313F8517554B71006C0E22 /* SDL_mouse_c.h in Headers */, |
| | | DB313F8617554B71006C0E22 /* SDL_sysevents.h in Headers */, |
| | | DB313F8717554B71006C0E22 /* SDL_touch_c.h in Headers */, |
| | | DB313F8817554B71006C0E22 /* SDL_windowevents_c.h in Headers */, |
| | | DB313F8917554B71006C0E22 /* SDL_rwopsbundlesupport.h in Headers */, |
| | | 5C2EF6FF1FC9EE65003F5197 /* SDL_rect_c.h in Headers */, |
| | | DB313F8A17554B71006C0E22 /* SDL_haptic_c.h in Headers */, |
| | | DB313F8B17554B71006C0E22 /* SDL_syshaptic.h in Headers */, |
| | | DB313F8C17554B71006C0E22 /* SDL_sysjoystick_c.h in Headers */, |
| | |
| | | DB313F9C17554B71006C0E22 /* SDL_cocoaopengl.h in Headers */, |
| | | DB313F9D17554B71006C0E22 /* SDL_cocoashape.h in Headers */, |
| | | AAC07104195606770073DCDF /* SDL_opengles2_gl2platform.h in Headers */, |
| | | 5C2EF6F21FC9D182003F5197 /* SDL_cocoaopengles.h in Headers */, |
| | | DB313F9E17554B71006C0E22 /* SDL_cocoavideo.h in Headers */, |
| | | DB313F9F17554B71006C0E22 /* SDL_cocoawindow.h in Headers */, |
| | | DB313FA017554B71006C0E22 /* SDL_nullevents_c.h in Headers */, |
| | |
| | | DB313FA417554B71006C0E22 /* SDL_blit_copy.h in Headers */, |
| | | DB313FA517554B71006C0E22 /* SDL_blit_slow.h in Headers */, |
| | | DB313FA617554B71006C0E22 /* SDL_pixels_c.h in Headers */, |
| | | 5C2EF6AB1FC98D2E003F5197 /* SDL_gles2funcs.h in Headers */, |
| | | DB313FA717554B71006C0E22 /* SDL_RLEaccel_c.h in Headers */, |
| | | DB313FA817554B71006C0E22 /* SDL_shape_internals.h in Headers */, |
| | | DB313FA917554B71006C0E22 /* SDL_sysvideo.h in Headers */, |
| | |
| | | DB313FB617554B71006C0E22 /* SDL_x11video.h in Headers */, |
| | | AAC07101195606770073DCDF /* SDL_opengles2_gl2ext.h in Headers */, |
| | | DB313FB717554B71006C0E22 /* SDL_x11window.h in Headers */, |
| | | AADC5A4C1FDA05CF00960936 /* SDL_yuv_c.h in Headers */, |
| | | DB313FB817554B71006C0E22 /* SDL_sysrender.h in Headers */, |
| | | DB313FB917554B71006C0E22 /* mmx.h in Headers */, |
| | | DB313FBA17554B71006C0E22 /* SDL_yuv_sw_c.h in Headers */, |
| | | DB313FBB17554B71006C0E22 /* SDL_nullframebuffer_c.h in Headers */, |
| | | 5C2EF6AE1FC98D2E003F5197 /* SDL_shaders_gles2.h in Headers */, |
| | | DB313FBC17554B71006C0E22 /* SDL_blendfillrect.h in Headers */, |
| | | DB313FBD17554B71006C0E22 /* SDL_blendline.h in Headers */, |
| | | DB313FBE17554B71006C0E22 /* SDL_blendpoint.h in Headers */, |
| | | AADC5A471FDA047E00960936 /* SDL_shaders_metal_osx.h in Headers */, |
| | | DB313FBF17554B71006C0E22 /* SDL_draw.h in Headers */, |
| | | DB313FC017554B71006C0E22 /* SDL_drawline.h in Headers */, |
| | | DB313FC117554B71006C0E22 /* SDL_drawpoint.h in Headers */, |
| | |
| | | 0867D690FE84028FC02AAC07 /* Project object */ = { |
| | | isa = PBXProject; |
| | | attributes = { |
| | | LastUpgradeCheck = 0730; |
| | | TargetAttributes = { |
| | | BECDF5FE0761BA81005FE872 = { |
| | | DevelopmentTeam = EH385AYQ6F; |
| | | }; |
| | | BECDF6BB0761BA81005FE872 = { |
| | | DevelopmentTeam = EH385AYQ6F; |
| | | }; |
| | | }; |
| | | LastUpgradeCheck = 0900; |
| | | }; |
| | | buildConfigurationList = 0073178E0858DB0500B2BC32 /* Build configuration list for PBXProject "SDL" */; |
| | | compatibilityVersion = "Xcode 3.2"; |
| | |
| | | files = ( |
| | | 04BDFFFB12E6671800899322 /* SDL_atomic.c in Sources */, |
| | | 04BDFFFC12E6671800899322 /* SDL_spinlock.c in Sources */, |
| | | 5C2EF6A21FC987C6003F5197 /* SDL_shaders_gles2.c in Sources */, |
| | | 56115BBB1DF72C6D00F47E1E /* SDL_dataqueue.c in Sources */, |
| | | 04BD000812E6671800899322 /* SDL_diskaudio.c in Sources */, |
| | | 04BD001012E6671800899322 /* SDL_dummyaudio.c in Sources */, |
| | | 04BD002612E6671800899322 /* SDL_audio.c in Sources */, |
| | |
| | | 04BD005A12E6671800899322 /* SDL_rwops.c in Sources */, |
| | | 04BD005B12E6671800899322 /* SDL_syshaptic.c in Sources */, |
| | | 04BD005F12E6671800899322 /* SDL_haptic.c in Sources */, |
| | | 4D1664551EDD60AD003DE88E /* SDL_cocoavulkan.m in Sources */, |
| | | 04BD006612E6671800899322 /* SDL_sysjoystick.c in Sources */, |
| | | 04BD007012E6671800899322 /* SDL_joystick.c in Sources */, |
| | | 04BD008812E6671800899322 /* SDL_sysloadso.c in Sources */, |
| | | 04BD009412E6671800899322 /* SDL_syspower.c in Sources */, |
| | | 04BD009612E6671800899322 /* SDL_power.c in Sources */, |
| | | 04BD009C12E6671800899322 /* SDL_assert.c in Sources */, |
| | | 4D1664531EDD60AD003DE88E /* SDL_cocoametalview.m in Sources */, |
| | | 04BD009F12E6671800899322 /* SDL_error.c in Sources */, |
| | | 04BD00A212E6671800899322 /* SDL.c in Sources */, |
| | | 04BD00A312E6671800899322 /* SDL_getenv.c in Sources */, |
| | |
| | | 04BD00F412E6671800899322 /* SDL_cocoaclipboard.m in Sources */, |
| | | 04BD00F612E6671800899322 /* SDL_cocoaevents.m in Sources */, |
| | | 04BD00F812E6671800899322 /* SDL_cocoakeyboard.m in Sources */, |
| | | AA9A7F151FB0209D00FED37F /* SDL_yuv.c in Sources */, |
| | | 04BD00FA12E6671800899322 /* SDL_cocoamodes.m in Sources */, |
| | | 4D16644F1EDD6023003DE88E /* SDL_vulkan_utils.c in Sources */, |
| | | 04BD00FC12E6671800899322 /* SDL_cocoamouse.m in Sources */, |
| | | 04BD00FE12E6671800899322 /* SDL_cocoaopengl.m in Sources */, |
| | | 04BD010012E6671800899322 /* SDL_cocoashape.m in Sources */, |
| | |
| | | 04BD017512E6671800899322 /* SDL_blit.c in Sources */, |
| | | 04BD017712E6671800899322 /* SDL_blit_0.c in Sources */, |
| | | 04BD017812E6671800899322 /* SDL_blit_1.c in Sources */, |
| | | AA9A7F121FB0206400FED37F /* yuv_rgb.c in Sources */, |
| | | 04BD017912E6671800899322 /* SDL_blit_A.c in Sources */, |
| | | 04BD017A12E6671800899322 /* SDL_blit_auto.c in Sources */, |
| | | 04BD017C12E6671800899322 /* SDL_blit_copy.c in Sources */, |
| | |
| | | 04BD01DB12E6671800899322 /* imKStoUCS.c in Sources */, |
| | | 04BD01DD12E6671800899322 /* SDL_x11clipboard.c in Sources */, |
| | | 04BD01DF12E6671800899322 /* SDL_x11dyn.c in Sources */, |
| | | 5C2EF6A01FC987C6003F5197 /* SDL_render_gles2.c in Sources */, |
| | | 04BD01E112E6671800899322 /* SDL_x11events.c in Sources */, |
| | | 04BD01E512E6671800899322 /* SDL_x11keyboard.c in Sources */, |
| | | 04BD01E712E6671800899322 /* SDL_x11modes.c in Sources */, |
| | |
| | | 04BD01F612E6671800899322 /* SDL_x11video.c in Sources */, |
| | | 04BD01F812E6671800899322 /* SDL_x11window.c in Sources */, |
| | | 041B2CA512FA0D680087D585 /* SDL_render.c in Sources */, |
| | | 04409B9212FA97ED00FB9AA8 /* SDL_yuv_mmx.c in Sources */, |
| | | 04409B9412FA97ED00FB9AA8 /* SDL_yuv_sw.c in Sources */, |
| | | 04F7803A12FB748500FC43C0 /* SDL_nullframebuffer.c in Sources */, |
| | | 04F7804912FB74A200FC43C0 /* SDL_blendfillrect.c in Sources */, |
| | | AADC5A441FDA035D00960936 /* SDL_render_metal.m in Sources */, |
| | | 04F7804B12FB74A200FC43C0 /* SDL_blendline.c in Sources */, |
| | | 04F7804D12FB74A200FC43C0 /* SDL_blendpoint.c in Sources */, |
| | | 5C2EF6F81FC9EE35003F5197 /* SDL_egl.c in Sources */, |
| | | 04F7805012FB74A200FC43C0 /* SDL_drawline.c in Sources */, |
| | | 04F7805212FB74A200FC43C0 /* SDL_drawpoint.c in Sources */, |
| | | 0442EC1812FE1BBA004C9285 /* SDL_render_gl.c in Sources */, |
| | |
| | | 0442EC5F12FE1C75004C9285 /* SDL_hints.c in Sources */, |
| | | 56A67024185654B40007D20F /* SDL_dynapi.c in Sources */, |
| | | 04BAC0C81300C2160055DE28 /* SDL_log.c in Sources */, |
| | | 5C2EF6EE1FC9D0ED003F5197 /* SDL_cocoaopengles.m in Sources */, |
| | | 0435673E1303160F00BA5428 /* SDL_shaders_gl.c in Sources */, |
| | | 566CDE90148F0AC200C5A9BB /* SDL_dropevents.c in Sources */, |
| | | AA628ACA159367B7005138DD /* SDL_rotate.c in Sources */, |
| | |
| | | isa = PBXSourcesBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 4D1664571EDD61F0003DE88E /* SDL_cocoametalview.m in Sources */, |
| | | 4D1664581EDD61F0003DE88E /* SDL_cocoavulkan.m in Sources */, |
| | | 5C2EF6A91FC98D2D003F5197 /* SDL_shaders_gles2.c in Sources */, |
| | | 4D1664561EDD61DA003DE88E /* SDL_vulkan_utils.c in Sources */, |
| | | 04BD021712E6671800899322 /* SDL_atomic.c in Sources */, |
| | | 04BD021812E6671800899322 /* SDL_spinlock.c in Sources */, |
| | | 56F9D55C1DF73B6B00C15B5D /* SDL_dataqueue.c in Sources */, |
| | | 04BD022412E6671800899322 /* SDL_diskaudio.c in Sources */, |
| | | 04BD022C12E6671800899322 /* SDL_dummyaudio.c in Sources */, |
| | | 04BD024212E6671800899322 /* SDL_audio.c in Sources */, |
| | |
| | | 04BD025C12E6671800899322 /* SDL_cpuinfo.c in Sources */, |
| | | 04BD026312E6671800899322 /* SDL_clipboardevents.c in Sources */, |
| | | 04BD026512E6671800899322 /* SDL_events.c in Sources */, |
| | | 5C2EF6FB1FC9EE64003F5197 /* SDL_egl.c in Sources */, |
| | | AA41F88014B8F1F500993C4F /* SDL_dropevents.c in Sources */, |
| | | 04BD026712E6671800899322 /* SDL_gesture.c in Sources */, |
| | | 04BD026912E6671800899322 /* SDL_keyboard.c in Sources */, |
| | |
| | | 04BD031212E6671800899322 /* SDL_cocoakeyboard.m in Sources */, |
| | | 04BD031412E6671800899322 /* SDL_cocoamodes.m in Sources */, |
| | | 04BD031612E6671800899322 /* SDL_cocoamouse.m in Sources */, |
| | | 5C2EF6A31FC98B38003F5197 /* SDL_yuv.c in Sources */, |
| | | 5C2EF6F11FC9D181003F5197 /* SDL_cocoaopengles.m in Sources */, |
| | | 04BD031812E6671800899322 /* SDL_cocoaopengl.m in Sources */, |
| | | 04BD031A12E6671800899322 /* SDL_cocoashape.m in Sources */, |
| | | 04BD031C12E6671800899322 /* SDL_cocoavideo.m in Sources */, |
| | | 04BD031E12E6671800899322 /* SDL_cocoawindow.m in Sources */, |
| | | 04BD033112E6671800899322 /* SDL_nullevents.c in Sources */, |
| | | 04BD033512E6671800899322 /* SDL_nullvideo.c in Sources */, |
| | | 5C2EF6A51FC98B6B003F5197 /* yuv_rgb.c in Sources */, |
| | | 04BD038F12E6671800899322 /* SDL_blit.c in Sources */, |
| | | 04BD039112E6671800899322 /* SDL_blit_0.c in Sources */, |
| | | 04BD039212E6671800899322 /* SDL_blit_1.c in Sources */, |
| | |
| | | 04BD03B512E6671800899322 /* SDL_surface.c in Sources */, |
| | | 04BD03B712E6671800899322 /* SDL_video.c in Sources */, |
| | | 04BD03F312E6671800899322 /* imKStoUCS.c in Sources */, |
| | | 5C2EF6A81FC98D2D003F5197 /* SDL_render_gles2.c in Sources */, |
| | | 04BD03F512E6671800899322 /* SDL_x11clipboard.c in Sources */, |
| | | 04BD03F712E6671800899322 /* SDL_x11dyn.c in Sources */, |
| | | 04BD03F912E6671800899322 /* SDL_x11events.c in Sources */, |
| | |
| | | 04BD040C12E6671800899322 /* SDL_x11touch.c in Sources */, |
| | | 04BD040E12E6671800899322 /* SDL_x11video.c in Sources */, |
| | | 04BD041012E6671800899322 /* SDL_x11window.c in Sources */, |
| | | AADC5A451FDA047900960936 /* SDL_render_metal.m in Sources */, |
| | | 041B2CAB12FA0D680087D585 /* SDL_render.c in Sources */, |
| | | 04409B9612FA97ED00FB9AA8 /* SDL_yuv_mmx.c in Sources */, |
| | | 04409B9812FA97ED00FB9AA8 /* SDL_yuv_sw.c in Sources */, |
| | | 04F7803C12FB748500FC43C0 /* SDL_nullframebuffer.c in Sources */, |
| | | 04F7805512FB74A200FC43C0 /* SDL_blendfillrect.c in Sources */, |
| | |
| | | isa = PBXSourcesBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 4D16645A1EDD6235003DE88E /* SDL_cocoametalview.m in Sources */, |
| | | 4D16645B1EDD6235003DE88E /* SDL_cocoavulkan.m in Sources */, |
| | | 5C2EF6AD1FC98D2E003F5197 /* SDL_shaders_gles2.c in Sources */, |
| | | 4D1664591EDD621B003DE88E /* SDL_vulkan_utils.c in Sources */, |
| | | DB313FFE17554B71006C0E22 /* SDL_atomic.c in Sources */, |
| | | DB313FFF17554B71006C0E22 /* SDL_spinlock.c in Sources */, |
| | | 56F9D55D1DF73B6C00C15B5D /* SDL_dataqueue.c in Sources */, |
| | | DB31400017554B71006C0E22 /* SDL_diskaudio.c in Sources */, |
| | | DB31400117554B71006C0E22 /* SDL_dummyaudio.c in Sources */, |
| | | DB31400317554B71006C0E22 /* SDL_audio.c in Sources */, |
| | |
| | | DB31400917554B71006C0E22 /* SDL_cpuinfo.c in Sources */, |
| | | DB31400A17554B71006C0E22 /* SDL_clipboardevents.c in Sources */, |
| | | DB31400B17554B71006C0E22 /* SDL_events.c in Sources */, |
| | | 5C2EF6FE1FC9EE65003F5197 /* SDL_egl.c in Sources */, |
| | | DB31400C17554B71006C0E22 /* SDL_dropevents.c in Sources */, |
| | | DB31400D17554B71006C0E22 /* SDL_gesture.c in Sources */, |
| | | DB31400E17554B71006C0E22 /* SDL_keyboard.c in Sources */, |
| | |
| | | DB31403017554B71006C0E22 /* SDL_cocoakeyboard.m in Sources */, |
| | | DB31403117554B71006C0E22 /* SDL_cocoamodes.m in Sources */, |
| | | DB31403217554B71006C0E22 /* SDL_cocoamouse.m in Sources */, |
| | | 5C2EF6A41FC98B39003F5197 /* SDL_yuv.c in Sources */, |
| | | 5C2EF6F31FC9D182003F5197 /* SDL_cocoaopengles.m in Sources */, |
| | | DB31403317554B71006C0E22 /* SDL_cocoaopengl.m in Sources */, |
| | | DB31403417554B71006C0E22 /* SDL_cocoashape.m in Sources */, |
| | | DB31403517554B71006C0E22 /* SDL_cocoavideo.m in Sources */, |
| | | DB31403617554B71006C0E22 /* SDL_cocoawindow.m in Sources */, |
| | | DB31403717554B71006C0E22 /* SDL_nullevents.c in Sources */, |
| | | DB31403817554B71006C0E22 /* SDL_nullvideo.c in Sources */, |
| | | 5C2EF6A61FC98B6C003F5197 /* yuv_rgb.c in Sources */, |
| | | DB31403917554B71006C0E22 /* SDL_blit.c in Sources */, |
| | | DB31403A17554B71006C0E22 /* SDL_blit_0.c in Sources */, |
| | | DB31403B17554B71006C0E22 /* SDL_blit_1.c in Sources */, |
| | |
| | | DB31404917554B71006C0E22 /* SDL_surface.c in Sources */, |
| | | DB31404A17554B71006C0E22 /* SDL_video.c in Sources */, |
| | | DB31404B17554B71006C0E22 /* imKStoUCS.c in Sources */, |
| | | 5C2EF6AC1FC98D2E003F5197 /* SDL_render_gles2.c in Sources */, |
| | | DB31404C17554B71006C0E22 /* SDL_x11clipboard.c in Sources */, |
| | | DB31404D17554B71006C0E22 /* SDL_x11dyn.c in Sources */, |
| | | DB31404E17554B71006C0E22 /* SDL_x11events.c in Sources */, |
| | |
| | | DB31405517554B71006C0E22 /* SDL_x11touch.c in Sources */, |
| | | DB31405617554B71006C0E22 /* SDL_x11video.c in Sources */, |
| | | DB31405717554B71006C0E22 /* SDL_x11window.c in Sources */, |
| | | AADC5A481FDA048100960936 /* SDL_render_metal.m in Sources */, |
| | | DB31405817554B71006C0E22 /* SDL_render.c in Sources */, |
| | | DB31405917554B71006C0E22 /* SDL_yuv_mmx.c in Sources */, |
| | | DB31405A17554B71006C0E22 /* SDL_yuv_sw.c in Sources */, |
| | | DB31405B17554B71006C0E22 /* SDL_nullframebuffer.c in Sources */, |
| | | DB31405C17554B71006C0E22 /* SDL_blendfillrect.c in Sources */, |
| | |
| | | 00CFA621106A567900758660 /* Release */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; |
| | | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
| | | CLANG_WARN_BOOL_CONVERSION = YES; |
| | | CLANG_WARN_COMMA = YES; |
| | | CLANG_WARN_CONSTANT_CONVERSION = YES; |
| | | CLANG_WARN_EMPTY_BODY = YES; |
| | | CLANG_WARN_ENUM_CONVERSION = YES; |
| | | CLANG_WARN_INFINITE_RECURSION = YES; |
| | | CLANG_WARN_INT_CONVERSION = YES; |
| | | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
| | | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
| | | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
| | | CLANG_WARN_STRICT_PROTOTYPES = YES; |
| | | CLANG_WARN_SUSPICIOUS_MOVE = YES; |
| | | CLANG_WARN_UNREACHABLE_CODE = YES; |
| | | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
| | |
| | | GCC_WARN_UNINITIALIZED_AUTOS = YES; |
| | | GCC_WARN_UNUSED_FUNCTION = YES; |
| | | GCC_WARN_UNUSED_VARIABLE = YES; |
| | | HEADER_SEARCH_PATHS = ( |
| | | /usr/X11R6/include, |
| | | "$(VULKAN_SDK)/include", |
| | | ../../src/video/khronos, |
| | | ); |
| | | MACOSX_DEPLOYMENT_TARGET = 10.6; |
| | | SDKROOT = macosx; |
| | | STRIP_STYLE = "non-global"; |
| | |
| | | CLANG_LINK_OBJC_RUNTIME = NO; |
| | | COMBINE_HIDPI_IMAGES = YES; |
| | | DYLIB_COMPATIBILITY_VERSION = 1.0.0; |
| | | DYLIB_CURRENT_VERSION = 5.1.0; |
| | | DYLIB_CURRENT_VERSION = 8.0.0; |
| | | FRAMEWORK_SEARCH_PATHS = ( |
| | | "$(inherited)", |
| | | "$(PROJECT_DIR)", |
| | | ); |
| | | FRAMEWORK_VERSION = A; |
| | | HEADER_SEARCH_PATHS = /usr/X11R6/include; |
| | | INFOPLIST_FILE = "Info-Framework.plist"; |
| | | INSTALL_PATH = "@rpath"; |
| | | OTHER_LDFLAGS = "-liconv"; |
| | | OTHER_LDFLAGS = ( |
| | | "-Wl,-weak_framework,Metal", |
| | | "-liconv", |
| | | ); |
| | | PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL2; |
| | | PRODUCT_NAME = SDL2; |
| | | PROVISIONING_PROFILE = ""; |
| | |
| | | "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", |
| | | ); |
| | | GCC_SYMBOLS_PRIVATE_EXTERN = YES; |
| | | HEADER_SEARCH_PATHS = /usr/X11R6/include; |
| | | PRODUCT_NAME = SDL2; |
| | | SKIP_INSTALL = YES; |
| | | }; |
| | |
| | | 00CFA627106A568900758660 /* Debug */ = { |
| | | isa = XCBuildConfiguration; |
| | | buildSettings = { |
| | | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; |
| | | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
| | | CLANG_WARN_BOOL_CONVERSION = YES; |
| | | CLANG_WARN_COMMA = YES; |
| | | CLANG_WARN_CONSTANT_CONVERSION = YES; |
| | | CLANG_WARN_EMPTY_BODY = YES; |
| | | CLANG_WARN_ENUM_CONVERSION = YES; |
| | | CLANG_WARN_INFINITE_RECURSION = YES; |
| | | CLANG_WARN_INT_CONVERSION = YES; |
| | | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
| | | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
| | | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
| | | CLANG_WARN_STRICT_PROTOTYPES = YES; |
| | | CLANG_WARN_SUSPICIOUS_MOVE = YES; |
| | | CLANG_WARN_UNREACHABLE_CODE = YES; |
| | | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
| | |
| | | GCC_WARN_UNINITIALIZED_AUTOS = YES; |
| | | GCC_WARN_UNUSED_FUNCTION = YES; |
| | | GCC_WARN_UNUSED_VARIABLE = YES; |
| | | HEADER_SEARCH_PATHS = ( |
| | | /usr/X11R6/include, |
| | | "$(VULKAN_SDK)/include", |
| | | ../../src/video/khronos, |
| | | ); |
| | | MACOSX_DEPLOYMENT_TARGET = 10.6; |
| | | ONLY_ACTIVE_ARCH = YES; |
| | | SDKROOT = macosx; |
| | |
| | | CLANG_LINK_OBJC_RUNTIME = NO; |
| | | COMBINE_HIDPI_IMAGES = YES; |
| | | DYLIB_COMPATIBILITY_VERSION = 1.0.0; |
| | | DYLIB_CURRENT_VERSION = 5.1.0; |
| | | DYLIB_CURRENT_VERSION = 8.0.0; |
| | | FRAMEWORK_SEARCH_PATHS = ( |
| | | "$(inherited)", |
| | | "$(PROJECT_DIR)", |
| | | ); |
| | | FRAMEWORK_VERSION = A; |
| | | HEADER_SEARCH_PATHS = /usr/X11R6/include; |
| | | INFOPLIST_FILE = "Info-Framework.plist"; |
| | | INSTALL_PATH = "@rpath"; |
| | | OTHER_LDFLAGS = "-liconv"; |
| | | OTHER_LDFLAGS = ( |
| | | "-Wl,-weak_framework,Metal", |
| | | "-liconv", |
| | | ); |
| | | PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL2; |
| | | PRODUCT_NAME = SDL2; |
| | | PROVISIONING_PROFILE = ""; |
| | |
| | | "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", |
| | | ); |
| | | GCC_SYMBOLS_PRIVATE_EXTERN = YES; |
| | | HEADER_SEARCH_PATHS = /usr/X11R6/include; |
| | | PRODUCT_NAME = SDL2; |
| | | SKIP_INSTALL = YES; |
| | | }; |
| | |
| | | "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", |
| | | ); |
| | | GCC_SYMBOLS_PRIVATE_EXTERN = YES; |
| | | HEADER_SEARCH_PATHS = /usr/X11R6/include; |
| | | INSTALL_PATH = "@rpath"; |
| | | PRODUCT_NAME = SDL2; |
| | | SKIP_INSTALL = YES; |
| | |
| | | "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", |
| | | ); |
| | | GCC_SYMBOLS_PRIVATE_EXTERN = YES; |
| | | HEADER_SEARCH_PATHS = /usr/X11R6/include; |
| | | INSTALL_PATH = "@rpath"; |
| | | PRODUCT_NAME = SDL2; |
| | | SKIP_INSTALL = YES; |
| | |
| | | |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 00794EF009D23739003FC8A1 /* utf8.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6309D20839003FC8A1 /* utf8.txt */; }; |
| | | 00794EF709D237DE003FC8A1 /* moose.dat in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5E09D20839003FC8A1 /* moose.dat */; }; |
| | | 453774A5120915E3002F0F45 /* testshape.c in Sources */ = {isa = PBXBuildFile; fileRef = 453774A4120915E3002F0F45 /* testshape.c */; }; |
| | | 66E88E5C203B733D0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E5D203B73530004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E5E203B74490004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E5F203B74860004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E60203B74C20004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E61203B74CC0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E62203B74D50004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E63203B74DC0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E64203B74E50004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E65203B74EC0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E66203B75140004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E67203B751D0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E68203B75250004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E69203B75390004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E6A203B75450004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E6B203B754C0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E6C203B75540004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E6D203B755B0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E6E203B75620004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E6F203B756A0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E70203B75710004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E71203B75780004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E72203B757F0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E73203B758C0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E74203B75AF0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E75203B75B90004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E76203B75BF0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E77203B75C70004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E78203B75CE0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E79203B75D50004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E7A203B75DE0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E7B203B75E40004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E7C203B75EB0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E7D203B75F30004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E7E203B75F90004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E7F203B76000004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E80203B76060004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E81203B760D0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E82203B76140004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E83203B761D0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E84203B76230004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E85203B762D0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E86203B76340004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E87203B763B0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E88203B76420004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E89203B764A0004D44E /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 66E88E5B203B733C0004D44E /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; |
| | | 66E88E8B203B778F0004D44E /* testyuv_cvt.c in Sources */ = {isa = PBXBuildFile; fileRef = 66E88E8A203B778F0004D44E /* testyuv_cvt.c */; }; |
| | | AAF02FFA1F90092700B9A9FB /* SDL_test_memory.c in Sources */ = {isa = PBXBuildFile; fileRef = AAF02FF41F90089800B9A9FB /* SDL_test_memory.c */; }; |
| | | BBFC08C0164C6862003E6A99 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; |
| | | BBFC08C1164C6862003E6A99 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A863B10730545007319AE /* CoreAudio.framework */; }; |
| | | BBFC08C2164C6862003E6A99 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A863C10730545007319AE /* ForceFeedback.framework */; }; |
| | |
| | | 092D6D75FFB313BB7F000001 /* testlock.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testlock.c; path = ../../test/testlock.c; sourceTree = SOURCE_ROOT; }; |
| | | 4537749212091504002F0F45 /* testshape */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testshape; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | 453774A4120915E3002F0F45 /* testshape.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testshape.c; path = ../../test/testshape.c; sourceTree = SOURCE_ROOT; }; |
| | | 66E88E5B203B733C0004D44E /* Metal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Metal.framework; path = System/Library/Frameworks/Metal.framework; sourceTree = SDKROOT; }; |
| | | 66E88E8A203B778F0004D44E /* testyuv_cvt.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = testyuv_cvt.c; path = ../../test/testyuv_cvt.c; sourceTree = "<group>"; }; |
| | | AAF02FF41F90089800B9A9FB /* SDL_test_memory.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_test_memory.c; path = ../../src/test/SDL_test_memory.c; sourceTree = "<group>"; }; |
| | | BBFC088E164C6820003E6A99 /* testgamecontroller.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testgamecontroller.c; path = ../../test/testgamecontroller.c; sourceTree = "<group>"; }; |
| | | BBFC08CD164C6862003E6A99 /* testgamecontroller */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testgamecontroller; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | BEC566B60761D90300A33029 /* checkkeys */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = checkkeys; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E5F203B74860004D44E /* Metal.framework in Frameworks */, |
| | | FA73672919A54AB9004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017957C10741F7900F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017957D10741F7900F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E89203B764A0004D44E /* Metal.framework in Frameworks */, |
| | | FA73672A19A54AC0004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017959D107421BF00F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017959E107421BF00F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E80203B76060004D44E /* Metal.framework in Frameworks */, |
| | | FA73673319A54AD8004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017971110742F3200F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017971210742F3200F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E7F203B76000004D44E /* Metal.framework in Frameworks */, |
| | | FA73673419A54ADB004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 00179738107430D600F5D044 /* Cocoa.framework in Frameworks */, |
| | | 00179739107430D600F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E88203B76420004D44E /* Metal.framework in Frameworks */, |
| | | FA73672B19A54AC2004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017975E107431B300F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017975F107431B300F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E7C203B75EB0004D44E /* Metal.framework in Frameworks */, |
| | | FA73673719A54AE3004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017977E107432AE00F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017977F107432AE00F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E7B203B75E40004D44E /* Metal.framework in Frameworks */, |
| | | FA73673819A54AE6004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017979E1074334C00F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017979F1074334C00F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E78203B75CE0004D44E /* Metal.framework in Frameworks */, |
| | | FA73673B19A54AED004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 001797C0107433C600F5D044 /* Cocoa.framework in Frameworks */, |
| | | 001797C1107433C600F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E75203B75B90004D44E /* Metal.framework in Frameworks */, |
| | | FA73673E19A54AF6004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 001798021074355200F5D044 /* Cocoa.framework in Frameworks */, |
| | | 001798031074355200F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E74203B75AF0004D44E /* Metal.framework in Frameworks */, |
| | | FA73673F19A54AF8004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 001798841074392D00F5D044 /* Cocoa.framework in Frameworks */, |
| | | 001798851074392D00F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E71203B75780004D44E /* Metal.framework in Frameworks */, |
| | | FA73674219A54B01004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 001798A5107439DF00F5D044 /* Cocoa.framework in Frameworks */, |
| | | 001798A6107439DF00F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E6D203B755B0004D44E /* Metal.framework in Frameworks */, |
| | | FA73674619A54B0B004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 001798E210743BEC00F5D044 /* Cocoa.framework in Frameworks */, |
| | | 001798E310743BEC00F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E67203B751D0004D44E /* Metal.framework in Frameworks */, |
| | | FA73674C19A54B1F004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017990610743F1000F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017990710743F1000F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E61203B74CC0004D44E /* Metal.framework in Frameworks */, |
| | | FA73675219A54B32004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 0017992810743FB700F5D044 /* Cocoa.framework in Frameworks */, |
| | | 0017992910743FB700F5D044 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E84203B76230004D44E /* Metal.framework in Frameworks */, |
| | | FA73672F19A54ACC004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F340B09CA1BFF00EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A866B10730548007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E7D203B75F30004D44E /* Metal.framework in Frameworks */, |
| | | FA73673619A54AE1004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F342A09CA1F0300EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A866210730547007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E73203B758C0004D44E /* Metal.framework in Frameworks */, |
| | | FA73674019A54AFB004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F344609CA1FB300EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A868010730549007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E72203B757F0004D44E /* Metal.framework in Frameworks */, |
| | | FA73674119A54AFE004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F346309CA204F00EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A868610730549007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E68203B75250004D44E /* Metal.framework in Frameworks */, |
| | | FA73674B19A54B1B004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166D7116A1CFB200A1396C /* AudioToolbox.framework in Frameworks */, |
| | | DB166D7216A1CFB200A1396C /* AudioUnit.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E82203B76140004D44E /* Metal.framework in Frameworks */, |
| | | FA73673119A54AD3004122E4 /* CoreVideo.framework in Frameworks */, |
| | | BBFC08C0164C6862003E6A99 /* Cocoa.framework in Frameworks */, |
| | | BBFC08C1164C6862003E6A99 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E5C203B733D0004D44E /* Metal.framework in Frameworks */, |
| | | FA73672319A54A90004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33C109CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A863010730405007319AE /* libSDL2.a in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E5E203B74490004D44E /* Metal.framework in Frameworks */, |
| | | FA73672819A54AB6004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33BF09CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A865310730547007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E85203B762D0004D44E /* Metal.framework in Frameworks */, |
| | | FA73672E19A54ACA004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33BC09CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A866E10730548007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E64203B74E50004D44E /* Metal.framework in Frameworks */, |
| | | FA73674F19A54B28004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33B809CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A868F1073054A007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E7A203B75DE0004D44E /* Metal.framework in Frameworks */, |
| | | FA73673919A54AE8004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33B709CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A867410730548007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E79203B75D50004D44E /* Metal.framework in Frameworks */, |
| | | FA73673A19A54AEB004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33B509CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A867710730548007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E77203B75C70004D44E /* Metal.framework in Frameworks */, |
| | | FA73673C19A54AF0004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33B609CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A867A10730549007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E6A203B75450004D44E /* Metal.framework in Frameworks */, |
| | | FA73674919A54B16004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33B209CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A868910730549007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E63203B74DC0004D44E /* Metal.framework in Frameworks */, |
| | | FA73675019A54B2B004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33B009CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A86981073054A007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E62203B74D50004D44E /* Metal.framework in Frameworks */, |
| | | FA73675119A54B2F004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33AF09CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A86951073054A007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E60203B74C20004D44E /* Metal.framework in Frameworks */, |
| | | FA73675319A54B35004122E4 /* CoreVideo.framework in Frameworks */, |
| | | 002F33AA09CA188600EBEB88 /* Cocoa.framework in Frameworks */, |
| | | 002A864110730546007319AE /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E87203B763B0004D44E /* Metal.framework in Frameworks */, |
| | | FA73672C19A54AC5004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB0F48DD17CA51E5008798C5 /* Cocoa.framework in Frameworks */, |
| | | DB0F48DE17CA51E5008798C5 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E83203B761D0004D44E /* Metal.framework in Frameworks */, |
| | | FA73673019A54AD0004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB0F48F317CA5212008798C5 /* Cocoa.framework in Frameworks */, |
| | | DB0F48F417CA5212008798C5 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E81203B760D0004D44E /* Metal.framework in Frameworks */, |
| | | FA73673219A54AD5004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166DB116A1D2F600A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166DB216A1D2F600A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E76203B75BF0004D44E /* Metal.framework in Frameworks */, |
| | | FA73673D19A54AF3004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166DC816A1D36A00A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166DC916A1D36A00A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E70203B75710004D44E /* Metal.framework in Frameworks */, |
| | | FA73674319A54B04004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166DE016A1D50C00A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166DE116A1D50C00A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E6F203B756A0004D44E /* Metal.framework in Frameworks */, |
| | | FA73674419A54B06004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166DF716A1D57C00A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166DF816A1D57C00A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E6E203B75620004D44E /* Metal.framework in Frameworks */, |
| | | FA73674519A54B09004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166E0E16A1D5AD00A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166E0F16A1D5AD00A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E6C203B75540004D44E /* Metal.framework in Frameworks */, |
| | | FA73674719A54B0F004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166E2B16A1D64D00A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166E2C16A1D64D00A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E6B203B754C0004D44E /* Metal.framework in Frameworks */, |
| | | FA73674819A54B13004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166E4116A1D69000A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166E4216A1D69000A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E69203B75390004D44E /* Metal.framework in Frameworks */, |
| | | FA73674A19A54B19004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166E5B16A1D6F300A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166E5C16A1D6F300A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E66203B75140004D44E /* Metal.framework in Frameworks */, |
| | | FA73674D19A54B22004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166E7116A1D78400A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166E7216A1D78400A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E65203B74EC0004D44E /* Metal.framework in Frameworks */, |
| | | FA73674E19A54B25004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB166E8416A1D78C00A1396C /* Cocoa.framework in Frameworks */, |
| | | DB166E8516A1D78C00A1396C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E86203B76340004D44E /* Metal.framework in Frameworks */, |
| | | FA73672D19A54AC7004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB445EEA18184B7000B306B0 /* Cocoa.framework in Frameworks */, |
| | | DB445EEB18184B7000B306B0 /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E7E203B75F90004D44E /* Metal.framework in Frameworks */, |
| | | FA73673519A54ADE004122E4 /* CoreVideo.framework in Frameworks */, |
| | | DB89957118A19ABA0092407C /* Cocoa.framework in Frameworks */, |
| | | DB89957218A19ABA0092407C /* CoreAudio.framework in Frameworks */, |
| | |
| | | isa = PBXFrameworksBuildPhase; |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 66E88E5D203B73530004D44E /* Metal.framework in Frameworks */, |
| | | DBEC54DD1A1A81C3005B1EAB /* CoreVideo.framework in Frameworks */, |
| | | DBEC54DE1A1A81C3005B1EAB /* Cocoa.framework in Frameworks */, |
| | | DBEC54DF1A1A81C3005B1EAB /* libSDL2.a in Frameworks */, |
| | |
| | | 002F33A209CA183B00EBEB88 /* Linked Frameworks */, |
| | | 00794E4609D207B4003FC8A1 /* Resources */, |
| | | 1AB674ADFE9D54B511CA2CBB /* Products */, |
| | | 66E88E56203B733C0004D44E /* Frameworks */, |
| | | ); |
| | | comments = "I made these tests link against our \"default\" framework which includes X11 stuff. If you didn't install the X11 headers with Xcode, you might have problems building the SDL.framework (which is a dependency). You can swap the dependencies around to get around this, or you can modify the default SDL.framework target to not include X11 stuff. (Go into its target build options and remove all the Preprocessor macros.)\n\n\n\nWe are sort of in a half-way state at the moment. Going \"all-the-way\" means we copy the SDL.framework inside the app bundle so we can run the test without the step of the user \"installing\" the framework. But there is an oversight/bug in Xcode that doesn't correctly find the location of the framework when in an embedded/nested Xcode project. We could probably try to hack this with a shell script that checks multiple directories for existence, but this is messier and more work than I prefer, so I rather just wait for Apple to fix this. In the meantime...\n\nThe \"All\" target will build the SDL framework from the Xcode project. The other targets do not have this dependency set (for flexibility reasons in case we make changes). If you have not built the framework, you will probably be unable to link. You will either need to build the framework, or you need to add \"-framework SDL\" to the link options and make sure you have the SDL.framework installed somewhere where it can be seen (like /Library/Frameworks...I think we already set this one up.) \n\nTo run though, you should have a copy of the SDL.framework in /Library/Frameworks or ~/Library/Frameworks.\n\n\n\n\ntestgl and testdyngl need -DHAVE_OPENGL\ntestgl needs to link against OpenGL.framework\n\n"; |
| | | name = SDLTest; |
| | |
| | | 0017985C107436ED00F5D044 /* testnativecocoa.m */, |
| | | 00179872107438D000F5D044 /* testnativex11.c */, |
| | | 002F345209CA201C00EBEB88 /* testoverlay2.c */, |
| | | 66E88E8A203B778F0004D44E /* testyuv_cvt.c */, |
| | | 002F346F09CA20A600EBEB88 /* testplatform.c */, |
| | | 001798B910743A4900F5D044 /* testpower.c */, |
| | | DB166CBF16A1C74100A1396C /* testrelative.c */, |
| | |
| | | name = Products; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | 66E88E56203B733C0004D44E /* Frameworks */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | | 66E88E5B203B733C0004D44E /* Metal.framework */, |
| | | ); |
| | | name = Frameworks; |
| | | sourceTree = "<group>"; |
| | | }; |
| | | DB166D8316A1D17E00A1396C /* SDL_Test */ = { |
| | | isa = PBXGroup; |
| | | children = ( |
| | |
| | | DB166D8F16A1D1A500A1396C /* SDL_test_imagePrimitivesBlend.c */, |
| | | DB166D9016A1D1A500A1396C /* SDL_test_log.c */, |
| | | DB166D9116A1D1A500A1396C /* SDL_test_md5.c */, |
| | | AAF02FF41F90089800B9A9FB /* SDL_test_memory.c */, |
| | | DB166D9216A1D1A500A1396C /* SDL_test_random.c */, |
| | | ); |
| | | name = SDL_Test; |
| | |
| | | buildActionMask = 2147483647; |
| | | files = ( |
| | | 002F345409CA202000EBEB88 /* testoverlay2.c in Sources */, |
| | | 66E88E8B203B778F0004D44E /* testyuv_cvt.c in Sources */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | | }; |
| | |
| | | DB166D9E16A1D1A500A1396C /* SDL_test_imagePrimitivesBlend.c in Sources */, |
| | | DB166D9F16A1D1A500A1396C /* SDL_test_log.c in Sources */, |
| | | DB166DA016A1D1A500A1396C /* SDL_test_md5.c in Sources */, |
| | | AAF02FFA1F90092700B9A9FB /* SDL_test_memory.c in Sources */, |
| | | DB166DA116A1D1A500A1396C /* SDL_test_random.c in Sources */, |
| | | ); |
| | | runOnlyForDeploymentPostprocessing = 0; |
| | |
| | | x86_64-*linux*) |
| | | LD="${LD-ld} -m elf_x86_64" |
| | | ;; |
| | | ppc*-*linux*|powerpc*-*linux*) |
| | | powerpc64le-*linux*) |
| | | LD="${LD-ld} -m elf64lppc" |
| | | ;; |
| | | powerpc64-*linux*) |
| | | LD="${LD-ld} -m elf64ppc" |
| | | ;; |
| | | s390*-*linux*|s390*-*tpf*) |
| New file |
| | |
| | | ../android-project/app/src/main/AndroidManifest.xml |
| New file |
| | |
| | | # This file is automatically generated by Android Tools. |
| | | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! |
| | | # |
| | | # This file must be checked in Version Control Systems. |
| | | # |
| | | # To customize properties used by the Ant build system use, |
| | | # "build.properties", and override values to adapt the script to your |
| | | # project structure. |
| | | |
| | | # Project target. |
| | | target=android-16 |
| New file |
| | |
| | | LOCAL_PATH := $(call my-dir) |
| | | |
| | | include $(CLEAR_VARS) |
| | | |
| | | LOCAL_MODULE := main |
| | | |
| | | SDL_PATH := ../SDL |
| | | |
| | | LOCAL_C_INCLUDES := $(LOCAL_PATH)/$(SDL_PATH)/include |
| | | |
| | | # Add your application source files here... |
| | | LOCAL_SRC_FILES := YourSourceHere.c |
| | | |
| | | LOCAL_SHARED_LIBRARIES := SDL2 |
| | | |
| | | LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 -llog |
| | | |
| | | include $(BUILD_SHARED_LIBRARY) |
| New file |
| | |
| | | # This file is automatically generated by Android Tools. |
| | | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! |
| | | # |
| | | # This file must be checked in Version Control Systems. |
| | | # |
| | | # To customize properties used by the Ant build system edit |
| | | # "ant.properties", and override values to adapt the script to your |
| | | # project structure. |
| | | # |
| | | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): |
| | | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt |
| | | |
| | | # Project target. |
| | | target=android-16 |
| New file |
| | |
| | | ../android-project/app/src/main/java |
| New file |
| | |
| | | def buildAsLibrary = project.hasProperty('BUILD_AS_LIBRARY'); |
| | | def buildAsApplication = !buildAsLibrary |
| | | if (buildAsApplication) { |
| | | apply plugin: 'com.android.application' |
| | | } |
| | | else { |
| | | apply plugin: 'com.android.library' |
| | | } |
| | | |
| | | android { |
| | | compileSdkVersion 19 |
| | | buildToolsVersion "26.0.1" |
| | | defaultConfig { |
| | | if (buildAsApplication) { |
| | | applicationId "org.libsdl.app" |
| | | } |
| | | minSdkVersion 14 |
| | | targetSdkVersion 19 |
| | | versionCode 1 |
| | | versionName "1.0" |
| | | externalNativeBuild { |
| | | ndkBuild { |
| | | arguments "APP_PLATFORM=android-14" |
| | | } |
| | | } |
| | | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" |
| | | } |
| | | buildTypes { |
| | | release { |
| | | minifyEnabled false |
| | | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' |
| | | } |
| | | } |
| | | if (!project.hasProperty('EXCLUDE_NATIVE_LIBS')) { |
| | | sourceSets.main { |
| | | jniLibs.srcDir 'libs' |
| | | } |
| | | externalNativeBuild { |
| | | ndkBuild { |
| | | path 'jni/Android.mk' |
| | | } |
| | | } |
| | | |
| | | } |
| | | lintOptions { |
| | | abortOnError false |
| | | } |
| | | |
| | | if (buildAsLibrary) { |
| | | libraryVariants.all { variant -> |
| | | variant.outputs.each { output -> |
| | | def outputFile = output.outputFile |
| | | if (outputFile != null && outputFile.name.endsWith(".aar")) { |
| | | def fileName = "org.libsdl.app.aar"; |
| | | output.outputFile = new File(outputFile.parent, fileName); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | dependencies { |
| | | compile fileTree(include: ['*.jar'], dir: 'libs') |
| | | androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { |
| | | exclude group: 'com.android.support', module: 'support-annotations' |
| | | }) |
| | | testCompile 'junit:junit:4.12' |
| | | } |
copy from source/android-project/jni/Android.mk
copy to source/android-project/app/jni/Android.mk
| New file |
| | |
| | | |
| | | # Uncomment this if you're using STL in your project |
| | | # See CPLUSPLUS-SUPPORT.html in the NDK documentation for more information |
| | | # APP_STL := stlport_static |
| | | |
| | | APP_ABI := armeabi-v7a arm64-v8a x86 x86_64 |
| | | |
| | | # Min runtime API level |
| | | APP_PLATFORM=android-14 |
| New file |
| | |
| | | LOCAL_PATH := $(call my-dir) |
| | | |
| | | include $(CLEAR_VARS) |
| | | |
| | | LOCAL_MODULE := main |
| | | |
| | | SDL_PATH := ../SDL |
| | | |
| | | LOCAL_C_INCLUDES := $(LOCAL_PATH)/$(SDL_PATH)/include |
| | | |
| | | # Add your application source files here... |
| | | LOCAL_SRC_FILES := YourSourceHere.c |
| | | |
| | | LOCAL_SHARED_LIBRARIES := SDL2 |
| | | |
| | | LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 -llog |
| | | |
| | | include $(BUILD_SHARED_LIBRARY) |
| New file |
| | |
| | | # Add project specific ProGuard rules here. |
| | | # By default, the flags in this file are appended to flags specified |
| | | # in [sdk]/tools/proguard/proguard-android.txt |
| | | # You can edit the include path and order by changing the proguardFiles |
| | | # directive in build.gradle. |
| | | # |
| | | # For more details, see |
| | | # http://developer.android.com/guide/developing/tools/proguard.html |
| | | |
| | | # Add any project specific keep options here: |
| | | |
| | | # If your project uses WebView with JS, uncomment the following |
| | | # and specify the fully qualified class name to the JavaScript interface |
| | | # class: |
| | | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { |
| | | # public *; |
| | | #} |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <!-- Replace com.test.game with the identifier of your game below, e.g. |
| | | com.gamemaker.game |
| | | --> |
| | | <manifest xmlns:android="http://schemas.android.com/apk/res/android" |
| | | package="org.libsdl.app" |
| | | android:versionCode="1" |
| | | android:versionName="1.0" |
| | | android:installLocation="auto"> |
| | | |
| | | <!-- Android 4.0.1 --> |
| | | <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="16" /> |
| | | |
| | | <!-- OpenGL ES 2.0 --> |
| | | <uses-feature android:glEsVersion="0x00020000" /> |
| | | |
| | | <!-- Allow writing to external storage --> |
| | | <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> |
| | | <!-- Allow access to the vibrator --> |
| | | <uses-permission android:name="android.permission.VIBRATE" /> |
| | | |
| | | <!-- if you want to capture audio, uncomment this. --> |
| | | <!-- <uses-permission android:name="android.permission.RECORD_AUDIO" /> --> |
| | | |
| | | <!-- Create a Java class extending SDLActivity and place it in a |
| | | directory under app/src/main/java matching the package, e.g. app/src/main/java/com/gamemaker/game/MyGame.java |
| | | |
| | | then replace "SDLActivity" with the name of your class (e.g. "MyGame") |
| | | in the XML below. |
| | | |
| | | An example Java class can be found in README-android.md |
| | | --> |
| | | <application android:label="@string/app_name" |
| | | android:icon="@mipmap/ic_launcher" |
| | | android:allowBackup="true" |
| | | android:theme="@android:style/Theme.NoTitleBar.Fullscreen" |
| | | android:hardwareAccelerated="true" > |
| | | |
| | | <!-- Example of setting SDL hints from AndroidManifest.xml: |
| | | <meta-data android:name="SDL_ENV.SDL_ACCELEROMETER_AS_JOYSTICK" android:value="0"/> |
| | | --> |
| | | |
| | | <activity android:name="SDLActivity" |
| | | android:label="@string/app_name" |
| | | android:configChanges="keyboard|keyboardHidden|orientation|screenSize" |
| | | > |
| | | <intent-filter> |
| | | <action android:name="android.intent.action.MAIN" /> |
| | | <category android:name="android.intent.category.LAUNCHER" /> |
| | | </intent-filter> |
| | | <!-- Drop file event --> |
| | | <!-- |
| | | <intent-filter> |
| | | <action android:name="android.intent.action.VIEW" /> |
| | | <category android:name="android.intent.category.DEFAULT" /> |
| | | <data android:mimeType="*/*" /> |
| | | </intent-filter> |
| | | --> |
| | | </activity> |
| | | </application> |
| | | |
| | | </manifest> |
| New file |
| | |
| | | package org.libsdl.app; |
| | | |
| | | import android.content.Context; |
| | | |
| | | /** |
| | | SDL library initialization |
| | | */ |
| | | public class SDL { |
| | | |
| | | // This function should be called first and sets up the native code |
| | | // so it can call into the Java classes |
| | | public static void setupJNI() { |
| | | SDLActivity.nativeSetupJNI(); |
| | | SDLAudioManager.nativeSetupJNI(); |
| | | SDLControllerManager.nativeSetupJNI(); |
| | | } |
| | | |
| | | // This function should be called each time the activity is started |
| | | public static void initialize() { |
| | | setContext(null); |
| | | |
| | | SDLActivity.initialize(); |
| | | SDLAudioManager.initialize(); |
| | | SDLControllerManager.initialize(); |
| | | } |
| | | |
| | | // This function stores the current activity (SDL or not) |
| | | public static void setContext(Context context) { |
| | | mContext = context; |
| | | } |
| | | |
| | | public static Context getContext() { |
| | | return mContext; |
| | | } |
| | | |
| | | protected static Context mContext; |
| | | } |
| New file |
| | |
| | | package org.libsdl.app; |
| | | |
| | | import java.io.IOException; |
| | | import java.io.InputStream; |
| | | import java.util.Arrays; |
| | | import java.lang.reflect.Method; |
| | | |
| | | import android.app.*; |
| | | import android.content.*; |
| | | import android.content.res.Configuration; |
| | | import android.text.InputType; |
| | | import android.view.*; |
| | | import android.view.inputmethod.BaseInputConnection; |
| | | import android.view.inputmethod.EditorInfo; |
| | | import android.view.inputmethod.InputConnection; |
| | | import android.view.inputmethod.InputMethodManager; |
| | | import android.widget.RelativeLayout; |
| | | import android.widget.Button; |
| | | import android.widget.LinearLayout; |
| | | import android.widget.TextView; |
| | | import android.os.*; |
| | | import android.util.DisplayMetrics; |
| | | import android.util.Log; |
| | | import android.util.SparseArray; |
| | | import android.graphics.*; |
| | | import android.graphics.drawable.Drawable; |
| | | import android.hardware.*; |
| | | import android.content.pm.ActivityInfo; |
| | | import android.content.pm.PackageManager; |
| | | import android.content.pm.ApplicationInfo; |
| | | |
| | | /** |
| | | SDL Activity |
| | | */ |
| | | public class SDLActivity extends Activity { |
| | | private static final String TAG = "SDL"; |
| | | |
| | | public static boolean mIsResumedCalled, mIsSurfaceReady, mHasFocus; |
| | | |
| | | // Handle the state of the native layer |
| | | public enum NativeState { |
| | | INIT, RESUMED, PAUSED |
| | | } |
| | | |
| | | public static NativeState mNextNativeState; |
| | | public static NativeState mCurrentNativeState; |
| | | |
| | | public static boolean mExitCalledFromJava; |
| | | |
| | | /** If shared libraries (e.g. SDL or the native application) could not be loaded. */ |
| | | public static boolean mBrokenLibraries; |
| | | |
| | | // If we want to separate mouse and touch events. |
| | | // This is only toggled in native code when a hint is set! |
| | | public static boolean mSeparateMouseAndTouch; |
| | | |
| | | // Main components |
| | | protected static SDLActivity mSingleton; |
| | | protected static SDLSurface mSurface; |
| | | protected static View mTextEdit; |
| | | protected static boolean mScreenKeyboardShown; |
| | | protected static ViewGroup mLayout; |
| | | protected static SDLClipboardHandler mClipboardHandler; |
| | | |
| | | |
| | | // This is what SDL runs in. It invokes SDL_main(), eventually |
| | | protected static Thread mSDLThread; |
| | | |
| | | /** |
| | | * This method returns the name of the shared object with the application entry point |
| | | * It can be overridden by derived classes. |
| | | */ |
| | | protected String getMainSharedObject() { |
| | | String library; |
| | | String[] libraries = SDLActivity.mSingleton.getLibraries(); |
| | | if (libraries.length > 0) { |
| | | library = "lib" + libraries[libraries.length - 1] + ".so"; |
| | | } else { |
| | | library = "libmain.so"; |
| | | } |
| | | return library; |
| | | } |
| | | |
| | | /** |
| | | * This method returns the name of the application entry point |
| | | * It can be overridden by derived classes. |
| | | */ |
| | | protected String getMainFunction() { |
| | | return "SDL_main"; |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL before loading the native shared libraries. |
| | | * It can be overridden to provide names of shared libraries to be loaded. |
| | | * The default implementation returns the defaults. It never returns null. |
| | | * An array returned by a new implementation must at least contain "SDL2". |
| | | * Also keep in mind that the order the libraries are loaded may matter. |
| | | * @return names of shared libraries to be loaded (e.g. "SDL2", "main"). |
| | | */ |
| | | protected String[] getLibraries() { |
| | | return new String[] { |
| | | "SDL2", |
| | | // "SDL2_image", |
| | | // "SDL2_mixer", |
| | | // "SDL2_net", |
| | | // "SDL2_ttf", |
| | | "main" |
| | | }; |
| | | } |
| | | |
| | | // Load the .so |
| | | public void loadLibraries() { |
| | | for (String lib : getLibraries()) { |
| | | System.loadLibrary(lib); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL before starting the native application thread. |
| | | * It can be overridden to provide the arguments after the application name. |
| | | * The default implementation returns an empty array. It never returns null. |
| | | * @return arguments for the native application. |
| | | */ |
| | | protected String[] getArguments() { |
| | | return new String[0]; |
| | | } |
| | | |
| | | public static void initialize() { |
| | | // The static nature of the singleton and Android quirkyness force us to initialize everything here |
| | | // Otherwise, when exiting the app and returning to it, these variables *keep* their pre exit values |
| | | mSingleton = null; |
| | | mSurface = null; |
| | | mTextEdit = null; |
| | | mLayout = null; |
| | | mClipboardHandler = null; |
| | | mSDLThread = null; |
| | | mExitCalledFromJava = false; |
| | | mBrokenLibraries = false; |
| | | mIsResumedCalled = false; |
| | | mIsSurfaceReady = false; |
| | | mHasFocus = true; |
| | | mNextNativeState = NativeState.INIT; |
| | | mCurrentNativeState = NativeState.INIT; |
| | | } |
| | | |
| | | // Setup |
| | | @Override |
| | | protected void onCreate(Bundle savedInstanceState) { |
| | | Log.v(TAG, "Device: " + android.os.Build.DEVICE); |
| | | Log.v(TAG, "Model: " + android.os.Build.MODEL); |
| | | Log.v(TAG, "onCreate()"); |
| | | super.onCreate(savedInstanceState); |
| | | |
| | | // Load shared libraries |
| | | String errorMsgBrokenLib = ""; |
| | | try { |
| | | loadLibraries(); |
| | | } catch(UnsatisfiedLinkError e) { |
| | | System.err.println(e.getMessage()); |
| | | mBrokenLibraries = true; |
| | | errorMsgBrokenLib = e.getMessage(); |
| | | } catch(Exception e) { |
| | | System.err.println(e.getMessage()); |
| | | mBrokenLibraries = true; |
| | | errorMsgBrokenLib = e.getMessage(); |
| | | } |
| | | |
| | | if (mBrokenLibraries) |
| | | { |
| | | mSingleton = this; |
| | | AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this); |
| | | dlgAlert.setMessage("An error occurred while trying to start the application. Please try again and/or reinstall." |
| | | + System.getProperty("line.separator") |
| | | + System.getProperty("line.separator") |
| | | + "Error: " + errorMsgBrokenLib); |
| | | dlgAlert.setTitle("SDL Error"); |
| | | dlgAlert.setPositiveButton("Exit", |
| | | new DialogInterface.OnClickListener() { |
| | | @Override |
| | | public void onClick(DialogInterface dialog,int id) { |
| | | // if this button is clicked, close current activity |
| | | SDLActivity.mSingleton.finish(); |
| | | } |
| | | }); |
| | | dlgAlert.setCancelable(false); |
| | | dlgAlert.create().show(); |
| | | |
| | | return; |
| | | } |
| | | |
| | | // Set up JNI |
| | | SDL.setupJNI(); |
| | | |
| | | // Initialize state |
| | | SDL.initialize(); |
| | | |
| | | // So we can call stuff from static callbacks |
| | | mSingleton = this; |
| | | SDL.setContext(this); |
| | | |
| | | if (Build.VERSION.SDK_INT >= 11) { |
| | | mClipboardHandler = new SDLClipboardHandler_API11(); |
| | | } else { |
| | | /* Before API 11, no clipboard notification (eg no SDL_CLIPBOARDUPDATE) */ |
| | | mClipboardHandler = new SDLClipboardHandler_Old(); |
| | | } |
| | | |
| | | // Set up the surface |
| | | mSurface = new SDLSurface(getApplication()); |
| | | |
| | | mLayout = new RelativeLayout(this); |
| | | mLayout.addView(mSurface); |
| | | |
| | | setContentView(mLayout); |
| | | |
| | | setWindowStyle(false); |
| | | |
| | | // Get filename from "Open with" of another application |
| | | Intent intent = getIntent(); |
| | | if (intent != null && intent.getData() != null) { |
| | | String filename = intent.getData().getPath(); |
| | | if (filename != null) { |
| | | Log.v(TAG, "Got filename: " + filename); |
| | | SDLActivity.onNativeDropFile(filename); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // Events |
| | | @Override |
| | | protected void onPause() { |
| | | Log.v(TAG, "onPause()"); |
| | | super.onPause(); |
| | | mNextNativeState = NativeState.PAUSED; |
| | | mIsResumedCalled = false; |
| | | |
| | | if (SDLActivity.mBrokenLibraries) { |
| | | return; |
| | | } |
| | | |
| | | SDLActivity.handleNativeState(); |
| | | } |
| | | |
| | | @Override |
| | | protected void onResume() { |
| | | Log.v(TAG, "onResume()"); |
| | | super.onResume(); |
| | | mNextNativeState = NativeState.RESUMED; |
| | | mIsResumedCalled = true; |
| | | |
| | | if (SDLActivity.mBrokenLibraries) { |
| | | return; |
| | | } |
| | | |
| | | SDLActivity.handleNativeState(); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void onWindowFocusChanged(boolean hasFocus) { |
| | | super.onWindowFocusChanged(hasFocus); |
| | | Log.v(TAG, "onWindowFocusChanged(): " + hasFocus); |
| | | |
| | | if (SDLActivity.mBrokenLibraries) { |
| | | return; |
| | | } |
| | | |
| | | SDLActivity.mHasFocus = hasFocus; |
| | | if (hasFocus) { |
| | | mNextNativeState = NativeState.RESUMED; |
| | | } else { |
| | | mNextNativeState = NativeState.PAUSED; |
| | | } |
| | | |
| | | SDLActivity.handleNativeState(); |
| | | } |
| | | |
| | | @Override |
| | | public void onLowMemory() { |
| | | Log.v(TAG, "onLowMemory()"); |
| | | super.onLowMemory(); |
| | | |
| | | if (SDLActivity.mBrokenLibraries) { |
| | | return; |
| | | } |
| | | |
| | | SDLActivity.nativeLowMemory(); |
| | | } |
| | | |
| | | @Override |
| | | protected void onDestroy() { |
| | | Log.v(TAG, "onDestroy()"); |
| | | |
| | | if (SDLActivity.mBrokenLibraries) { |
| | | super.onDestroy(); |
| | | // Reset everything in case the user re opens the app |
| | | SDLActivity.initialize(); |
| | | return; |
| | | } |
| | | |
| | | mNextNativeState = NativeState.PAUSED; |
| | | SDLActivity.handleNativeState(); |
| | | |
| | | // Send a quit message to the application |
| | | SDLActivity.mExitCalledFromJava = true; |
| | | SDLActivity.nativeQuit(); |
| | | |
| | | // Now wait for the SDL thread to quit |
| | | if (SDLActivity.mSDLThread != null) { |
| | | try { |
| | | SDLActivity.mSDLThread.join(); |
| | | } catch(Exception e) { |
| | | Log.v(TAG, "Problem stopping thread: " + e); |
| | | } |
| | | SDLActivity.mSDLThread = null; |
| | | |
| | | //Log.v(TAG, "Finished waiting for SDL thread"); |
| | | } |
| | | |
| | | super.onDestroy(); |
| | | |
| | | // Reset everything in case the user re opens the app |
| | | SDLActivity.initialize(); |
| | | } |
| | | |
| | | @Override |
| | | public boolean dispatchKeyEvent(KeyEvent event) { |
| | | |
| | | if (SDLActivity.mBrokenLibraries) { |
| | | return false; |
| | | } |
| | | |
| | | int keyCode = event.getKeyCode(); |
| | | // Ignore certain special keys so they're handled by Android |
| | | if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN || |
| | | keyCode == KeyEvent.KEYCODE_VOLUME_UP || |
| | | keyCode == KeyEvent.KEYCODE_CAMERA || |
| | | keyCode == KeyEvent.KEYCODE_ZOOM_IN || /* API 11 */ |
| | | keyCode == KeyEvent.KEYCODE_ZOOM_OUT /* API 11 */ |
| | | ) { |
| | | return false; |
| | | } |
| | | return super.dispatchKeyEvent(event); |
| | | } |
| | | |
| | | /* Transition to next state */ |
| | | public static void handleNativeState() { |
| | | |
| | | if (mNextNativeState == mCurrentNativeState) { |
| | | // Already in same state, discard. |
| | | return; |
| | | } |
| | | |
| | | // Try a transition to init state |
| | | if (mNextNativeState == NativeState.INIT) { |
| | | |
| | | mCurrentNativeState = mNextNativeState; |
| | | return; |
| | | } |
| | | |
| | | // Try a transition to paused state |
| | | if (mNextNativeState == NativeState.PAUSED) { |
| | | nativePause(); |
| | | if (mSurface != null) |
| | | mSurface.handlePause(); |
| | | mCurrentNativeState = mNextNativeState; |
| | | return; |
| | | } |
| | | |
| | | // Try a transition to resumed state |
| | | if (mNextNativeState == NativeState.RESUMED) { |
| | | if (mIsSurfaceReady && mHasFocus && mIsResumedCalled) { |
| | | if (mSDLThread == null) { |
| | | // This is the entry point to the C app. |
| | | // Start up the C app thread and enable sensor input for the first time |
| | | // FIXME: Why aren't we enabling sensor input at start? |
| | | |
| | | mSDLThread = new Thread(new SDLMain(), "SDLThread"); |
| | | mSurface.enableSensor(Sensor.TYPE_ACCELEROMETER, true); |
| | | mSDLThread.start(); |
| | | } |
| | | |
| | | nativeResume(); |
| | | mSurface.handleResume(); |
| | | mCurrentNativeState = mNextNativeState; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /* The native thread has finished */ |
| | | public static void handleNativeExit() { |
| | | SDLActivity.mSDLThread = null; |
| | | mSingleton.finish(); |
| | | } |
| | | |
| | | |
| | | // Messages from the SDLMain thread |
| | | static final int COMMAND_CHANGE_TITLE = 1; |
| | | static final int COMMAND_CHANGE_WINDOW_STYLE = 2; |
| | | static final int COMMAND_TEXTEDIT_HIDE = 3; |
| | | static final int COMMAND_SET_KEEP_SCREEN_ON = 5; |
| | | |
| | | protected static final int COMMAND_USER = 0x8000; |
| | | |
| | | /** |
| | | * This method is called by SDL if SDL did not handle a message itself. |
| | | * This happens if a received message contains an unsupported command. |
| | | * Method can be overwritten to handle Messages in a different class. |
| | | * @param command the command of the message. |
| | | * @param param the parameter of the message. May be null. |
| | | * @return if the message was handled in overridden method. |
| | | */ |
| | | protected boolean onUnhandledMessage(int command, Object param) { |
| | | return false; |
| | | } |
| | | |
| | | /** |
| | | * A Handler class for Messages from native SDL applications. |
| | | * It uses current Activities as target (e.g. for the title). |
| | | * static to prevent implicit references to enclosing object. |
| | | */ |
| | | protected static class SDLCommandHandler extends Handler { |
| | | @Override |
| | | public void handleMessage(Message msg) { |
| | | Context context = SDL.getContext(); |
| | | if (context == null) { |
| | | Log.e(TAG, "error handling message, getContext() returned null"); |
| | | return; |
| | | } |
| | | switch (msg.arg1) { |
| | | case COMMAND_CHANGE_TITLE: |
| | | if (context instanceof Activity) { |
| | | ((Activity) context).setTitle((String)msg.obj); |
| | | } else { |
| | | Log.e(TAG, "error handling message, getContext() returned no Activity"); |
| | | } |
| | | break; |
| | | case COMMAND_CHANGE_WINDOW_STYLE: |
| | | if (Build.VERSION.SDK_INT < 19) { |
| | | // This version of Android doesn't support the immersive fullscreen mode |
| | | break; |
| | | } |
| | | /* This needs more testing, per bug 4096 - Enabling fullscreen on Android causes the app to toggle fullscreen mode continuously in a loop |
| | | *** |
| | | if (context instanceof Activity) { |
| | | Window window = ((Activity) context).getWindow(); |
| | | if (window != null) { |
| | | if ((msg.obj instanceof Integer) && (((Integer) msg.obj).intValue() != 0)) { |
| | | int flags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE | |
| | | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | |
| | | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | |
| | | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | |
| | | View.SYSTEM_UI_FLAG_FULLSCREEN | |
| | | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; |
| | | window.getDecorView().setSystemUiVisibility(flags); |
| | | window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); |
| | | } else { |
| | | int flags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE; |
| | | window.getDecorView().setSystemUiVisibility(flags); |
| | | window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); |
| | | } |
| | | } |
| | | } else { |
| | | Log.e(TAG, "error handling message, getContext() returned no Activity"); |
| | | } |
| | | ***/ |
| | | break; |
| | | case COMMAND_TEXTEDIT_HIDE: |
| | | if (mTextEdit != null) { |
| | | // Note: On some devices setting view to GONE creates a flicker in landscape. |
| | | // Setting the View's sizes to 0 is similar to GONE but without the flicker. |
| | | // The sizes will be set to useful values when the keyboard is shown again. |
| | | mTextEdit.setLayoutParams(new RelativeLayout.LayoutParams(0, 0)); |
| | | |
| | | InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE); |
| | | imm.hideSoftInputFromWindow(mTextEdit.getWindowToken(), 0); |
| | | |
| | | mScreenKeyboardShown = false; |
| | | } |
| | | break; |
| | | case COMMAND_SET_KEEP_SCREEN_ON: |
| | | { |
| | | if (context instanceof Activity) { |
| | | Window window = ((Activity) context).getWindow(); |
| | | if (window != null) { |
| | | if ((msg.obj instanceof Integer) && (((Integer) msg.obj).intValue() != 0)) { |
| | | window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); |
| | | } else { |
| | | window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | default: |
| | | if ((context instanceof SDLActivity) && !((SDLActivity) context).onUnhandledMessage(msg.arg1, msg.obj)) { |
| | | Log.e(TAG, "error handling message, command is " + msg.arg1); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | // Handler for the messages |
| | | Handler commandHandler = new SDLCommandHandler(); |
| | | |
| | | // Send a message from the SDLMain thread |
| | | boolean sendCommand(int command, Object data) { |
| | | Message msg = commandHandler.obtainMessage(); |
| | | msg.arg1 = command; |
| | | msg.obj = data; |
| | | return commandHandler.sendMessage(msg); |
| | | } |
| | | |
| | | // C functions we call |
| | | public static native int nativeSetupJNI(); |
| | | public static native int nativeRunMain(String library, String function, Object arguments); |
| | | public static native void nativeLowMemory(); |
| | | public static native void nativeQuit(); |
| | | public static native void nativePause(); |
| | | public static native void nativeResume(); |
| | | public static native void onNativeDropFile(String filename); |
| | | public static native void onNativeResize(int x, int y, int format, float rate); |
| | | public static native void onNativeKeyDown(int keycode); |
| | | public static native void onNativeKeyUp(int keycode); |
| | | public static native void onNativeKeyboardFocusLost(); |
| | | public static native void onNativeMouse(int button, int action, float x, float y); |
| | | public static native void onNativeTouch(int touchDevId, int pointerFingerId, |
| | | int action, float x, |
| | | float y, float p); |
| | | public static native void onNativeAccel(float x, float y, float z); |
| | | public static native void onNativeClipboardChanged(); |
| | | public static native void onNativeSurfaceChanged(); |
| | | public static native void onNativeSurfaceDestroyed(); |
| | | public static native String nativeGetHint(String name); |
| | | public static native void nativeSetenv(String name, String value); |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static boolean setActivityTitle(String title) { |
| | | // Called from SDLMain() thread and can't directly affect the view |
| | | return mSingleton.sendCommand(COMMAND_CHANGE_TITLE, title); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static void setWindowStyle(boolean fullscreen) { |
| | | // Called from SDLMain() thread and can't directly affect the view |
| | | mSingleton.sendCommand(COMMAND_CHANGE_WINDOW_STYLE, fullscreen ? 1 : 0); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | * This is a static method for JNI convenience, it calls a non-static method |
| | | * so that is can be overridden |
| | | */ |
| | | public static void setOrientation(int w, int h, boolean resizable, String hint) |
| | | { |
| | | if (mSingleton != null) { |
| | | mSingleton.setOrientationBis(w, h, resizable, hint); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * This can be overridden |
| | | */ |
| | | public void setOrientationBis(int w, int h, boolean resizable, String hint) |
| | | { |
| | | int orientation = -1; |
| | | |
| | | if (hint.contains("LandscapeRight") && hint.contains("LandscapeLeft")) { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE; |
| | | } else if (hint.contains("LandscapeRight")) { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE; |
| | | } else if (hint.contains("LandscapeLeft")) { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE; |
| | | } else if (hint.contains("Portrait") && hint.contains("PortraitUpsideDown")) { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT; |
| | | } else if (hint.contains("Portrait")) { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT; |
| | | } else if (hint.contains("PortraitUpsideDown")) { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT; |
| | | } |
| | | |
| | | /* no valid hint */ |
| | | if (orientation == -1) { |
| | | if (resizable) { |
| | | /* no fixed orientation */ |
| | | } else { |
| | | if (w > h) { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE; |
| | | } else { |
| | | orientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT; |
| | | } |
| | | } |
| | | } |
| | | |
| | | Log.v("SDL", "setOrientation() orientation=" + orientation + " width=" + w +" height="+ h +" resizable=" + resizable + " hint=" + hint); |
| | | if (orientation != -1) { |
| | | mSingleton.setRequestedOrientation(orientation); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static boolean isScreenKeyboardShown() |
| | | { |
| | | if (mTextEdit == null) { |
| | | return false; |
| | | } |
| | | |
| | | if (!mScreenKeyboardShown) { |
| | | return false; |
| | | } |
| | | |
| | | InputMethodManager imm = (InputMethodManager) SDL.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); |
| | | return imm.isAcceptingText(); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static boolean sendMessage(int command, int param) { |
| | | if (mSingleton == null) { |
| | | return false; |
| | | } |
| | | return mSingleton.sendCommand(command, Integer.valueOf(param)); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static Context getContext() { |
| | | return SDL.getContext(); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static boolean isAndroidTV() { |
| | | UiModeManager uiModeManager = (UiModeManager) getContext().getSystemService(UI_MODE_SERVICE); |
| | | return (uiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static DisplayMetrics getDisplayDPI() { |
| | | return getContext().getResources().getDisplayMetrics(); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static boolean getManifestEnvironmentVariables() { |
| | | try { |
| | | ApplicationInfo applicationInfo = getContext().getPackageManager().getApplicationInfo(getContext().getPackageName(), PackageManager.GET_META_DATA); |
| | | Bundle bundle = applicationInfo.metaData; |
| | | if (bundle == null) { |
| | | return false; |
| | | } |
| | | String prefix = "SDL_ENV."; |
| | | final int trimLength = prefix.length(); |
| | | for (String key : bundle.keySet()) { |
| | | if (key.startsWith(prefix)) { |
| | | String name = key.substring(trimLength); |
| | | String value = bundle.get(key).toString(); |
| | | nativeSetenv(name, value); |
| | | } |
| | | } |
| | | /* environment variables set! */ |
| | | return true; |
| | | } catch (Exception e) { |
| | | Log.v("SDL", "exception " + e.toString()); |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | static class ShowTextInputTask implements Runnable { |
| | | /* |
| | | * This is used to regulate the pan&scan method to have some offset from |
| | | * the bottom edge of the input region and the top edge of an input |
| | | * method (soft keyboard) |
| | | */ |
| | | static final int HEIGHT_PADDING = 15; |
| | | |
| | | public int x, y, w, h; |
| | | |
| | | public ShowTextInputTask(int x, int y, int w, int h) { |
| | | this.x = x; |
| | | this.y = y; |
| | | this.w = w; |
| | | this.h = h; |
| | | } |
| | | |
| | | @Override |
| | | public void run() { |
| | | RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(w, h + HEIGHT_PADDING); |
| | | params.leftMargin = x; |
| | | params.topMargin = y; |
| | | |
| | | if (mTextEdit == null) { |
| | | mTextEdit = new DummyEdit(SDL.getContext()); |
| | | |
| | | mLayout.addView(mTextEdit, params); |
| | | } else { |
| | | mTextEdit.setLayoutParams(params); |
| | | } |
| | | |
| | | mTextEdit.setVisibility(View.VISIBLE); |
| | | mTextEdit.requestFocus(); |
| | | |
| | | InputMethodManager imm = (InputMethodManager) SDL.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); |
| | | imm.showSoftInput(mTextEdit, 0); |
| | | |
| | | mScreenKeyboardShown = true; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static boolean showTextInput(int x, int y, int w, int h) { |
| | | // Transfer the task to the main thread as a Runnable |
| | | return mSingleton.commandHandler.post(new ShowTextInputTask(x, y, w, h)); |
| | | } |
| | | |
| | | public static boolean isTextInputEvent(KeyEvent event) { |
| | | |
| | | // Key pressed with Ctrl should be sent as SDL_KEYDOWN/SDL_KEYUP and not SDL_TEXTINPUT |
| | | if (Build.VERSION.SDK_INT >= 11) { |
| | | if (event.isCtrlPressed()) { |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | return event.isPrintingKey() || event.getKeyCode() == KeyEvent.KEYCODE_SPACE; |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static Surface getNativeSurface() { |
| | | if (SDLActivity.mSurface == null) { |
| | | return null; |
| | | } |
| | | return SDLActivity.mSurface.getNativeSurface(); |
| | | } |
| | | |
| | | // Input |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | * @return an array which may be empty but is never null. |
| | | */ |
| | | public static int[] inputGetInputDeviceIds(int sources) { |
| | | int[] ids = InputDevice.getDeviceIds(); |
| | | int[] filtered = new int[ids.length]; |
| | | int used = 0; |
| | | for (int i = 0; i < ids.length; ++i) { |
| | | InputDevice device = InputDevice.getDevice(ids[i]); |
| | | if ((device != null) && ((device.getSources() & sources) != 0)) { |
| | | filtered[used++] = device.getId(); |
| | | } |
| | | } |
| | | return Arrays.copyOf(filtered, used); |
| | | } |
| | | |
| | | // APK expansion files support |
| | | |
| | | /** com.android.vending.expansion.zipfile.ZipResourceFile object or null. */ |
| | | private static Object expansionFile; |
| | | |
| | | /** com.android.vending.expansion.zipfile.ZipResourceFile's getInputStream() or null. */ |
| | | private static Method expansionFileMethod; |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | * @return an InputStream on success or null if no expansion file was used. |
| | | * @throws IOException on errors. Message is set for the SDL error message. |
| | | */ |
| | | public static InputStream openAPKExpansionInputStream(String fileName) throws IOException { |
| | | // Get a ZipResourceFile representing a merger of both the main and patch files |
| | | if (expansionFile == null) { |
| | | String mainHint = nativeGetHint("SDL_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION"); |
| | | if (mainHint == null) { |
| | | return null; // no expansion use if no main version was set |
| | | } |
| | | String patchHint = nativeGetHint("SDL_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION"); |
| | | if (patchHint == null) { |
| | | return null; // no expansion use if no patch version was set |
| | | } |
| | | |
| | | Integer mainVersion; |
| | | Integer patchVersion; |
| | | try { |
| | | mainVersion = Integer.valueOf(mainHint); |
| | | patchVersion = Integer.valueOf(patchHint); |
| | | } catch (NumberFormatException ex) { |
| | | ex.printStackTrace(); |
| | | throw new IOException("No valid file versions set for APK expansion files", ex); |
| | | } |
| | | |
| | | try { |
| | | // To avoid direct dependency on Google APK expansion library that is |
| | | // not a part of Android SDK we access it using reflection |
| | | expansionFile = Class.forName("com.android.vending.expansion.zipfile.APKExpansionSupport") |
| | | .getMethod("getAPKExpansionZipFile", Context.class, int.class, int.class) |
| | | .invoke(null, SDL.getContext(), mainVersion, patchVersion); |
| | | |
| | | expansionFileMethod = expansionFile.getClass() |
| | | .getMethod("getInputStream", String.class); |
| | | } catch (Exception ex) { |
| | | ex.printStackTrace(); |
| | | expansionFile = null; |
| | | expansionFileMethod = null; |
| | | throw new IOException("Could not access APK expansion support library", ex); |
| | | } |
| | | } |
| | | |
| | | // Get an input stream for a known file inside the expansion file ZIPs |
| | | InputStream fileStream; |
| | | try { |
| | | fileStream = (InputStream)expansionFileMethod.invoke(expansionFile, fileName); |
| | | } catch (Exception ex) { |
| | | // calling "getInputStream" failed |
| | | ex.printStackTrace(); |
| | | throw new IOException("Could not open stream from APK expansion file", ex); |
| | | } |
| | | |
| | | if (fileStream == null) { |
| | | // calling "getInputStream" was successful but null was returned |
| | | throw new IOException("Could not find path in APK expansion file"); |
| | | } |
| | | |
| | | return fileStream; |
| | | } |
| | | |
| | | // Messagebox |
| | | |
| | | /** Result of current messagebox. Also used for blocking the calling thread. */ |
| | | protected final int[] messageboxSelection = new int[1]; |
| | | |
| | | /** Id of current dialog. */ |
| | | protected int dialogs = 0; |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | * Shows the messagebox from UI thread and block calling thread. |
| | | * buttonFlags, buttonIds and buttonTexts must have same length. |
| | | * @param buttonFlags array containing flags for every button. |
| | | * @param buttonIds array containing id for every button. |
| | | * @param buttonTexts array containing text for every button. |
| | | * @param colors null for default or array of length 5 containing colors. |
| | | * @return button id or -1. |
| | | */ |
| | | public int messageboxShowMessageBox( |
| | | final int flags, |
| | | final String title, |
| | | final String message, |
| | | final int[] buttonFlags, |
| | | final int[] buttonIds, |
| | | final String[] buttonTexts, |
| | | final int[] colors) { |
| | | |
| | | messageboxSelection[0] = -1; |
| | | |
| | | // sanity checks |
| | | |
| | | if ((buttonFlags.length != buttonIds.length) && (buttonIds.length != buttonTexts.length)) { |
| | | return -1; // implementation broken |
| | | } |
| | | |
| | | // collect arguments for Dialog |
| | | |
| | | final Bundle args = new Bundle(); |
| | | args.putInt("flags", flags); |
| | | args.putString("title", title); |
| | | args.putString("message", message); |
| | | args.putIntArray("buttonFlags", buttonFlags); |
| | | args.putIntArray("buttonIds", buttonIds); |
| | | args.putStringArray("buttonTexts", buttonTexts); |
| | | args.putIntArray("colors", colors); |
| | | |
| | | // trigger Dialog creation on UI thread |
| | | |
| | | runOnUiThread(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | showDialog(dialogs++, args); |
| | | } |
| | | }); |
| | | |
| | | // block the calling thread |
| | | |
| | | synchronized (messageboxSelection) { |
| | | try { |
| | | messageboxSelection.wait(); |
| | | } catch (InterruptedException ex) { |
| | | ex.printStackTrace(); |
| | | return -1; |
| | | } |
| | | } |
| | | |
| | | // return selected value |
| | | |
| | | return messageboxSelection[0]; |
| | | } |
| | | |
| | | @Override |
| | | protected Dialog onCreateDialog(int ignore, Bundle args) { |
| | | |
| | | // TODO set values from "flags" to messagebox dialog |
| | | |
| | | // get colors |
| | | |
| | | int[] colors = args.getIntArray("colors"); |
| | | int backgroundColor; |
| | | int textColor; |
| | | int buttonBorderColor; |
| | | int buttonBackgroundColor; |
| | | int buttonSelectedColor; |
| | | if (colors != null) { |
| | | int i = -1; |
| | | backgroundColor = colors[++i]; |
| | | textColor = colors[++i]; |
| | | buttonBorderColor = colors[++i]; |
| | | buttonBackgroundColor = colors[++i]; |
| | | buttonSelectedColor = colors[++i]; |
| | | } else { |
| | | backgroundColor = Color.TRANSPARENT; |
| | | textColor = Color.TRANSPARENT; |
| | | buttonBorderColor = Color.TRANSPARENT; |
| | | buttonBackgroundColor = Color.TRANSPARENT; |
| | | buttonSelectedColor = Color.TRANSPARENT; |
| | | } |
| | | |
| | | // create dialog with title and a listener to wake up calling thread |
| | | |
| | | final Dialog dialog = new Dialog(this); |
| | | dialog.setTitle(args.getString("title")); |
| | | dialog.setCancelable(false); |
| | | dialog.setOnDismissListener(new DialogInterface.OnDismissListener() { |
| | | @Override |
| | | public void onDismiss(DialogInterface unused) { |
| | | synchronized (messageboxSelection) { |
| | | messageboxSelection.notify(); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | // create text |
| | | |
| | | TextView message = new TextView(this); |
| | | message.setGravity(Gravity.CENTER); |
| | | message.setText(args.getString("message")); |
| | | if (textColor != Color.TRANSPARENT) { |
| | | message.setTextColor(textColor); |
| | | } |
| | | |
| | | // create buttons |
| | | |
| | | int[] buttonFlags = args.getIntArray("buttonFlags"); |
| | | int[] buttonIds = args.getIntArray("buttonIds"); |
| | | String[] buttonTexts = args.getStringArray("buttonTexts"); |
| | | |
| | | final SparseArray<Button> mapping = new SparseArray<Button>(); |
| | | |
| | | LinearLayout buttons = new LinearLayout(this); |
| | | buttons.setOrientation(LinearLayout.HORIZONTAL); |
| | | buttons.setGravity(Gravity.CENTER); |
| | | for (int i = 0; i < buttonTexts.length; ++i) { |
| | | Button button = new Button(this); |
| | | final int id = buttonIds[i]; |
| | | button.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | messageboxSelection[0] = id; |
| | | dialog.dismiss(); |
| | | } |
| | | }); |
| | | if (buttonFlags[i] != 0) { |
| | | // see SDL_messagebox.h |
| | | if ((buttonFlags[i] & 0x00000001) != 0) { |
| | | mapping.put(KeyEvent.KEYCODE_ENTER, button); |
| | | } |
| | | if ((buttonFlags[i] & 0x00000002) != 0) { |
| | | mapping.put(KeyEvent.KEYCODE_ESCAPE, button); /* API 11 */ |
| | | } |
| | | } |
| | | button.setText(buttonTexts[i]); |
| | | if (textColor != Color.TRANSPARENT) { |
| | | button.setTextColor(textColor); |
| | | } |
| | | if (buttonBorderColor != Color.TRANSPARENT) { |
| | | // TODO set color for border of messagebox button |
| | | } |
| | | if (buttonBackgroundColor != Color.TRANSPARENT) { |
| | | Drawable drawable = button.getBackground(); |
| | | if (drawable == null) { |
| | | // setting the color this way removes the style |
| | | button.setBackgroundColor(buttonBackgroundColor); |
| | | } else { |
| | | // setting the color this way keeps the style (gradient, padding, etc.) |
| | | drawable.setColorFilter(buttonBackgroundColor, PorterDuff.Mode.MULTIPLY); |
| | | } |
| | | } |
| | | if (buttonSelectedColor != Color.TRANSPARENT) { |
| | | // TODO set color for selected messagebox button |
| | | } |
| | | buttons.addView(button); |
| | | } |
| | | |
| | | // create content |
| | | |
| | | LinearLayout content = new LinearLayout(this); |
| | | content.setOrientation(LinearLayout.VERTICAL); |
| | | content.addView(message); |
| | | content.addView(buttons); |
| | | if (backgroundColor != Color.TRANSPARENT) { |
| | | content.setBackgroundColor(backgroundColor); |
| | | } |
| | | |
| | | // add content to dialog and return |
| | | |
| | | dialog.setContentView(content); |
| | | dialog.setOnKeyListener(new Dialog.OnKeyListener() { |
| | | @Override |
| | | public boolean onKey(DialogInterface d, int keyCode, KeyEvent event) { |
| | | Button button = mapping.get(keyCode); |
| | | if (button != null) { |
| | | if (event.getAction() == KeyEvent.ACTION_UP) { |
| | | button.performClick(); |
| | | } |
| | | return true; // also for ignored actions |
| | | } |
| | | return false; |
| | | } |
| | | }); |
| | | |
| | | return dialog; |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static boolean clipboardHasText() { |
| | | return mClipboardHandler.clipboardHasText(); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static String clipboardGetText() { |
| | | return mClipboardHandler.clipboardGetText(); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static void clipboardSetText(String string) { |
| | | mClipboardHandler.clipboardSetText(string); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | Simple runnable to start the SDL application |
| | | */ |
| | | class SDLMain implements Runnable { |
| | | @Override |
| | | public void run() { |
| | | // Runs SDL_main() |
| | | String library = SDLActivity.mSingleton.getMainSharedObject(); |
| | | String function = SDLActivity.mSingleton.getMainFunction(); |
| | | String[] arguments = SDLActivity.mSingleton.getArguments(); |
| | | |
| | | Log.v("SDL", "Running main function " + function + " from library " + library); |
| | | SDLActivity.nativeRunMain(library, function, arguments); |
| | | |
| | | Log.v("SDL", "Finished main function"); |
| | | |
| | | // Native thread has finished, let's finish the Activity |
| | | if (!SDLActivity.mExitCalledFromJava) { |
| | | SDLActivity.handleNativeExit(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | SDLSurface. This is what we draw on, so we need to know when it's created |
| | | in order to do anything useful. |
| | | |
| | | Because of this, that's where we set up the SDL thread |
| | | */ |
| | | class SDLSurface extends SurfaceView implements SurfaceHolder.Callback, |
| | | View.OnKeyListener, View.OnTouchListener, SensorEventListener { |
| | | |
| | | // Sensors |
| | | protected static SensorManager mSensorManager; |
| | | protected static Display mDisplay; |
| | | |
| | | // Keep track of the surface size to normalize touch events |
| | | protected static float mWidth, mHeight; |
| | | |
| | | // Startup |
| | | public SDLSurface(Context context) { |
| | | super(context); |
| | | getHolder().addCallback(this); |
| | | |
| | | setFocusable(true); |
| | | setFocusableInTouchMode(true); |
| | | requestFocus(); |
| | | setOnKeyListener(this); |
| | | setOnTouchListener(this); |
| | | |
| | | mDisplay = ((WindowManager)context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); |
| | | mSensorManager = (SensorManager)context.getSystemService(Context.SENSOR_SERVICE); |
| | | |
| | | if (Build.VERSION.SDK_INT >= 12) { |
| | | setOnGenericMotionListener(new SDLGenericMotionListener_API12()); |
| | | } |
| | | |
| | | // Some arbitrary defaults to avoid a potential division by zero |
| | | mWidth = 1.0f; |
| | | mHeight = 1.0f; |
| | | } |
| | | |
| | | public void handlePause() { |
| | | enableSensor(Sensor.TYPE_ACCELEROMETER, false); |
| | | } |
| | | |
| | | public void handleResume() { |
| | | setFocusable(true); |
| | | setFocusableInTouchMode(true); |
| | | requestFocus(); |
| | | setOnKeyListener(this); |
| | | setOnTouchListener(this); |
| | | enableSensor(Sensor.TYPE_ACCELEROMETER, true); |
| | | } |
| | | |
| | | public Surface getNativeSurface() { |
| | | return getHolder().getSurface(); |
| | | } |
| | | |
| | | // Called when we have a valid drawing surface |
| | | @Override |
| | | public void surfaceCreated(SurfaceHolder holder) { |
| | | Log.v("SDL", "surfaceCreated()"); |
| | | holder.setType(SurfaceHolder.SURFACE_TYPE_GPU); |
| | | } |
| | | |
| | | // Called when we lose the surface |
| | | @Override |
| | | public void surfaceDestroyed(SurfaceHolder holder) { |
| | | Log.v("SDL", "surfaceDestroyed()"); |
| | | |
| | | // Transition to pause, if needed |
| | | SDLActivity.mNextNativeState = SDLActivity.NativeState.PAUSED; |
| | | SDLActivity.handleNativeState(); |
| | | |
| | | SDLActivity.mIsSurfaceReady = false; |
| | | SDLActivity.onNativeSurfaceDestroyed(); |
| | | } |
| | | |
| | | // Called when the surface is resized |
| | | @Override |
| | | public void surfaceChanged(SurfaceHolder holder, |
| | | int format, int width, int height) { |
| | | Log.v("SDL", "surfaceChanged()"); |
| | | |
| | | int sdlFormat = 0x15151002; // SDL_PIXELFORMAT_RGB565 by default |
| | | switch (format) { |
| | | case PixelFormat.A_8: |
| | | Log.v("SDL", "pixel format A_8"); |
| | | break; |
| | | case PixelFormat.LA_88: |
| | | Log.v("SDL", "pixel format LA_88"); |
| | | break; |
| | | case PixelFormat.L_8: |
| | | Log.v("SDL", "pixel format L_8"); |
| | | break; |
| | | case PixelFormat.RGBA_4444: |
| | | Log.v("SDL", "pixel format RGBA_4444"); |
| | | sdlFormat = 0x15421002; // SDL_PIXELFORMAT_RGBA4444 |
| | | break; |
| | | case PixelFormat.RGBA_5551: |
| | | Log.v("SDL", "pixel format RGBA_5551"); |
| | | sdlFormat = 0x15441002; // SDL_PIXELFORMAT_RGBA5551 |
| | | break; |
| | | case PixelFormat.RGBA_8888: |
| | | Log.v("SDL", "pixel format RGBA_8888"); |
| | | sdlFormat = 0x16462004; // SDL_PIXELFORMAT_RGBA8888 |
| | | break; |
| | | case PixelFormat.RGBX_8888: |
| | | Log.v("SDL", "pixel format RGBX_8888"); |
| | | sdlFormat = 0x16261804; // SDL_PIXELFORMAT_RGBX8888 |
| | | break; |
| | | case PixelFormat.RGB_332: |
| | | Log.v("SDL", "pixel format RGB_332"); |
| | | sdlFormat = 0x14110801; // SDL_PIXELFORMAT_RGB332 |
| | | break; |
| | | case PixelFormat.RGB_565: |
| | | Log.v("SDL", "pixel format RGB_565"); |
| | | sdlFormat = 0x15151002; // SDL_PIXELFORMAT_RGB565 |
| | | break; |
| | | case PixelFormat.RGB_888: |
| | | Log.v("SDL", "pixel format RGB_888"); |
| | | // Not sure this is right, maybe SDL_PIXELFORMAT_RGB24 instead? |
| | | sdlFormat = 0x16161804; // SDL_PIXELFORMAT_RGB888 |
| | | break; |
| | | default: |
| | | Log.v("SDL", "pixel format unknown " + format); |
| | | break; |
| | | } |
| | | |
| | | mWidth = width; |
| | | mHeight = height; |
| | | SDLActivity.onNativeResize(width, height, sdlFormat, mDisplay.getRefreshRate()); |
| | | Log.v("SDL", "Window size: " + width + "x" + height); |
| | | |
| | | |
| | | boolean skip = false; |
| | | int requestedOrientation = SDLActivity.mSingleton.getRequestedOrientation(); |
| | | |
| | | if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED) |
| | | { |
| | | // Accept any |
| | | } |
| | | else if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT) |
| | | { |
| | | if (mWidth > mHeight) { |
| | | skip = true; |
| | | } |
| | | } else if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE) { |
| | | if (mWidth < mHeight) { |
| | | skip = true; |
| | | } |
| | | } |
| | | |
| | | // Special Patch for Square Resolution: Black Berry Passport |
| | | if (skip) { |
| | | double min = Math.min(mWidth, mHeight); |
| | | double max = Math.max(mWidth, mHeight); |
| | | |
| | | if (max / min < 1.20) { |
| | | Log.v("SDL", "Don't skip on such aspect-ratio. Could be a square resolution."); |
| | | skip = false; |
| | | } |
| | | } |
| | | |
| | | if (skip) { |
| | | Log.v("SDL", "Skip .. Surface is not ready."); |
| | | SDLActivity.mIsSurfaceReady = false; |
| | | return; |
| | | } |
| | | |
| | | /* Surface is ready */ |
| | | SDLActivity.mIsSurfaceReady = true; |
| | | |
| | | /* If the surface has been previously destroyed by onNativeSurfaceDestroyed, recreate it here */ |
| | | SDLActivity.onNativeSurfaceChanged(); |
| | | |
| | | SDLActivity.handleNativeState(); |
| | | } |
| | | |
| | | // Key events |
| | | @Override |
| | | public boolean onKey(View v, int keyCode, KeyEvent event) { |
| | | // Dispatch the different events depending on where they come from |
| | | // Some SOURCE_JOYSTICK, SOURCE_DPAD or SOURCE_GAMEPAD are also SOURCE_KEYBOARD |
| | | // So, we try to process them as JOYSTICK/DPAD/GAMEPAD events first, if that fails we try them as KEYBOARD |
| | | // |
| | | // Furthermore, it's possible a game controller has SOURCE_KEYBOARD and |
| | | // SOURCE_JOYSTICK, while its key events arrive from the keyboard source |
| | | // So, retrieve the device itself and check all of its sources |
| | | if (SDLControllerManager.isDeviceSDLJoystick(event.getDeviceId())) { |
| | | // Note that we process events with specific key codes here |
| | | if (event.getAction() == KeyEvent.ACTION_DOWN) { |
| | | if (SDLControllerManager.onNativePadDown(event.getDeviceId(), keyCode) == 0) { |
| | | return true; |
| | | } |
| | | } else if (event.getAction() == KeyEvent.ACTION_UP) { |
| | | if (SDLControllerManager.onNativePadUp(event.getDeviceId(), keyCode) == 0) { |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if ((event.getSource() & InputDevice.SOURCE_KEYBOARD) != 0) { |
| | | if (event.getAction() == KeyEvent.ACTION_DOWN) { |
| | | //Log.v("SDL", "key down: " + keyCode); |
| | | if (SDLActivity.isTextInputEvent(event)) { |
| | | SDLInputConnection.nativeCommitText(String.valueOf((char) event.getUnicodeChar()), 1); |
| | | } |
| | | SDLActivity.onNativeKeyDown(keyCode); |
| | | return true; |
| | | } |
| | | else if (event.getAction() == KeyEvent.ACTION_UP) { |
| | | //Log.v("SDL", "key up: " + keyCode); |
| | | SDLActivity.onNativeKeyUp(keyCode); |
| | | return true; |
| | | } |
| | | } |
| | | |
| | | if ((event.getSource() & InputDevice.SOURCE_MOUSE) != 0) { |
| | | // on some devices key events are sent for mouse BUTTON_BACK/FORWARD presses |
| | | // they are ignored here because sending them as mouse input to SDL is messy |
| | | if ((keyCode == KeyEvent.KEYCODE_BACK) || (keyCode == KeyEvent.KEYCODE_FORWARD)) { |
| | | switch (event.getAction()) { |
| | | case KeyEvent.ACTION_DOWN: |
| | | case KeyEvent.ACTION_UP: |
| | | // mark the event as handled or it will be handled by system |
| | | // handling KEYCODE_BACK by system will call onBackPressed() |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | return false; |
| | | } |
| | | |
| | | // Touch events |
| | | @Override |
| | | public boolean onTouch(View v, MotionEvent event) { |
| | | /* Ref: http://developer.android.com/training/gestures/multi.html */ |
| | | final int touchDevId = event.getDeviceId(); |
| | | final int pointerCount = event.getPointerCount(); |
| | | int action = event.getActionMasked(); |
| | | int pointerFingerId; |
| | | int mouseButton; |
| | | int i = -1; |
| | | float x,y,p; |
| | | |
| | | // !!! FIXME: dump this SDK check after 2.0.4 ships and require API14. |
| | | if (event.getSource() == InputDevice.SOURCE_MOUSE && SDLActivity.mSeparateMouseAndTouch) { |
| | | if (Build.VERSION.SDK_INT < 14) { |
| | | mouseButton = 1; // all mouse buttons are the left button |
| | | } else { |
| | | try { |
| | | mouseButton = (Integer) event.getClass().getMethod("getButtonState").invoke(event); |
| | | } catch(Exception e) { |
| | | mouseButton = 1; // oh well. |
| | | } |
| | | } |
| | | SDLActivity.onNativeMouse(mouseButton, action, event.getX(0), event.getY(0)); |
| | | } else { |
| | | switch(action) { |
| | | case MotionEvent.ACTION_MOVE: |
| | | for (i = 0; i < pointerCount; i++) { |
| | | pointerFingerId = event.getPointerId(i); |
| | | x = event.getX(i) / mWidth; |
| | | y = event.getY(i) / mHeight; |
| | | p = event.getPressure(i); |
| | | if (p > 1.0f) { |
| | | // may be larger than 1.0f on some devices |
| | | // see the documentation of getPressure(i) |
| | | p = 1.0f; |
| | | } |
| | | SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); |
| | | } |
| | | break; |
| | | |
| | | case MotionEvent.ACTION_UP: |
| | | case MotionEvent.ACTION_DOWN: |
| | | // Primary pointer up/down, the index is always zero |
| | | i = 0; |
| | | case MotionEvent.ACTION_POINTER_UP: |
| | | case MotionEvent.ACTION_POINTER_DOWN: |
| | | // Non primary pointer up/down |
| | | if (i == -1) { |
| | | i = event.getActionIndex(); |
| | | } |
| | | |
| | | pointerFingerId = event.getPointerId(i); |
| | | x = event.getX(i) / mWidth; |
| | | y = event.getY(i) / mHeight; |
| | | p = event.getPressure(i); |
| | | if (p > 1.0f) { |
| | | // may be larger than 1.0f on some devices |
| | | // see the documentation of getPressure(i) |
| | | p = 1.0f; |
| | | } |
| | | SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); |
| | | break; |
| | | |
| | | case MotionEvent.ACTION_CANCEL: |
| | | for (i = 0; i < pointerCount; i++) { |
| | | pointerFingerId = event.getPointerId(i); |
| | | x = event.getX(i) / mWidth; |
| | | y = event.getY(i) / mHeight; |
| | | p = event.getPressure(i); |
| | | if (p > 1.0f) { |
| | | // may be larger than 1.0f on some devices |
| | | // see the documentation of getPressure(i) |
| | | p = 1.0f; |
| | | } |
| | | SDLActivity.onNativeTouch(touchDevId, pointerFingerId, MotionEvent.ACTION_UP, x, y, p); |
| | | } |
| | | break; |
| | | |
| | | default: |
| | | break; |
| | | } |
| | | } |
| | | |
| | | return true; |
| | | } |
| | | |
| | | // Sensor events |
| | | public void enableSensor(int sensortype, boolean enabled) { |
| | | // TODO: This uses getDefaultSensor - what if we have >1 accels? |
| | | if (enabled) { |
| | | mSensorManager.registerListener(this, |
| | | mSensorManager.getDefaultSensor(sensortype), |
| | | SensorManager.SENSOR_DELAY_GAME, null); |
| | | } else { |
| | | mSensorManager.unregisterListener(this, |
| | | mSensorManager.getDefaultSensor(sensortype)); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void onAccuracyChanged(Sensor sensor, int accuracy) { |
| | | // TODO |
| | | } |
| | | |
| | | @Override |
| | | public void onSensorChanged(SensorEvent event) { |
| | | if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) { |
| | | float x, y; |
| | | switch (mDisplay.getRotation()) { |
| | | case Surface.ROTATION_90: |
| | | x = -event.values[1]; |
| | | y = event.values[0]; |
| | | break; |
| | | case Surface.ROTATION_270: |
| | | x = event.values[1]; |
| | | y = -event.values[0]; |
| | | break; |
| | | case Surface.ROTATION_180: |
| | | x = -event.values[1]; |
| | | y = -event.values[0]; |
| | | break; |
| | | default: |
| | | x = event.values[0]; |
| | | y = event.values[1]; |
| | | break; |
| | | } |
| | | SDLActivity.onNativeAccel(-x / SensorManager.GRAVITY_EARTH, |
| | | y / SensorManager.GRAVITY_EARTH, |
| | | event.values[2] / SensorManager.GRAVITY_EARTH); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /* This is a fake invisible editor view that receives the input and defines the |
| | | * pan&scan region |
| | | */ |
| | | class DummyEdit extends View implements View.OnKeyListener { |
| | | InputConnection ic; |
| | | |
| | | public DummyEdit(Context context) { |
| | | super(context); |
| | | setFocusableInTouchMode(true); |
| | | setFocusable(true); |
| | | setOnKeyListener(this); |
| | | } |
| | | |
| | | @Override |
| | | public boolean onCheckIsTextEditor() { |
| | | return true; |
| | | } |
| | | |
| | | @Override |
| | | public boolean onKey(View v, int keyCode, KeyEvent event) { |
| | | /* |
| | | * This handles the hardware keyboard input |
| | | */ |
| | | if (event.getAction() == KeyEvent.ACTION_DOWN) { |
| | | if (SDLActivity.isTextInputEvent(event)) { |
| | | ic.commitText(String.valueOf((char) event.getUnicodeChar()), 1); |
| | | return true; |
| | | } |
| | | SDLActivity.onNativeKeyDown(keyCode); |
| | | return true; |
| | | } else if (event.getAction() == KeyEvent.ACTION_UP) { |
| | | SDLActivity.onNativeKeyUp(keyCode); |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | // |
| | | @Override |
| | | public boolean onKeyPreIme (int keyCode, KeyEvent event) { |
| | | // As seen on StackOverflow: http://stackoverflow.com/questions/7634346/keyboard-hide-event |
| | | // FIXME: Discussion at http://bugzilla.libsdl.org/show_bug.cgi?id=1639 |
| | | // FIXME: This is not a 100% effective solution to the problem of detecting if the keyboard is showing or not |
| | | // FIXME: A more effective solution would be to assume our Layout to be RelativeLayout or LinearLayout |
| | | // FIXME: And determine the keyboard presence doing this: http://stackoverflow.com/questions/2150078/how-to-check-visibility-of-software-keyboard-in-android |
| | | // FIXME: An even more effective way would be if Android provided this out of the box, but where would the fun be in that :) |
| | | if (event.getAction()==KeyEvent.ACTION_UP && keyCode == KeyEvent.KEYCODE_BACK) { |
| | | if (SDLActivity.mTextEdit != null && SDLActivity.mTextEdit.getVisibility() == View.VISIBLE) { |
| | | SDLActivity.onNativeKeyboardFocusLost(); |
| | | } |
| | | } |
| | | return super.onKeyPreIme(keyCode, event); |
| | | } |
| | | |
| | | @Override |
| | | public InputConnection onCreateInputConnection(EditorInfo outAttrs) { |
| | | ic = new SDLInputConnection(this, true); |
| | | |
| | | outAttrs.inputType = InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD; |
| | | outAttrs.imeOptions = EditorInfo.IME_FLAG_NO_EXTRACT_UI |
| | | | EditorInfo.IME_FLAG_NO_FULLSCREEN /* API 11 */; |
| | | |
| | | return ic; |
| | | } |
| | | } |
| | | |
| | | class SDLInputConnection extends BaseInputConnection { |
| | | |
| | | public SDLInputConnection(View targetView, boolean fullEditor) { |
| | | super(targetView, fullEditor); |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public boolean sendKeyEvent(KeyEvent event) { |
| | | /* |
| | | * This used to handle the keycodes from soft keyboard (and IME-translated input from hardkeyboard) |
| | | * However, as of Ice Cream Sandwich and later, almost all soft keyboard doesn't generate key presses |
| | | * and so we need to generate them ourselves in commitText. To avoid duplicates on the handful of keys |
| | | * that still do, we empty this out. |
| | | */ |
| | | |
| | | /* |
| | | * Return DOES still generate a key event, however. So rather than using it as the 'click a button' key |
| | | * as we do with physical keyboards, let's just use it to hide the keyboard. |
| | | */ |
| | | |
| | | if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) { |
| | | String imeHide = SDLActivity.nativeGetHint("SDL_RETURN_KEY_HIDES_IME"); |
| | | if ((imeHide != null) && imeHide.equals("1")) { |
| | | Context c = SDL.getContext(); |
| | | if (c instanceof SDLActivity) { |
| | | SDLActivity activity = (SDLActivity)c; |
| | | activity.sendCommand(SDLActivity.COMMAND_TEXTEDIT_HIDE, null); |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | return super.sendKeyEvent(event); |
| | | } |
| | | |
| | | @Override |
| | | public boolean commitText(CharSequence text, int newCursorPosition) { |
| | | |
| | | for (int i = 0; i < text.length(); i++) { |
| | | char c = text.charAt(i); |
| | | nativeGenerateScancodeForUnichar(c); |
| | | } |
| | | |
| | | SDLInputConnection.nativeCommitText(text.toString(), newCursorPosition); |
| | | |
| | | return super.commitText(text, newCursorPosition); |
| | | } |
| | | |
| | | @Override |
| | | public boolean setComposingText(CharSequence text, int newCursorPosition) { |
| | | |
| | | nativeSetComposingText(text.toString(), newCursorPosition); |
| | | |
| | | return super.setComposingText(text, newCursorPosition); |
| | | } |
| | | |
| | | public static native void nativeCommitText(String text, int newCursorPosition); |
| | | |
| | | public native void nativeGenerateScancodeForUnichar(char c); |
| | | |
| | | public native void nativeSetComposingText(String text, int newCursorPosition); |
| | | |
| | | @Override |
| | | public boolean deleteSurroundingText(int beforeLength, int afterLength) { |
| | | // Workaround to capture backspace key. Ref: http://stackoverflow.com/questions/14560344/android-backspace-in-webview-baseinputconnection |
| | | // and https://bugzilla.libsdl.org/show_bug.cgi?id=2265 |
| | | if (beforeLength > 0 && afterLength == 0) { |
| | | boolean ret = true; |
| | | // backspace(s) |
| | | while (beforeLength-- > 0) { |
| | | boolean ret_key = sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DEL)) |
| | | && sendKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_DEL)); |
| | | ret = ret && ret_key; |
| | | } |
| | | return ret; |
| | | } |
| | | |
| | | return super.deleteSurroundingText(beforeLength, afterLength); |
| | | } |
| | | } |
| | | |
| | | interface SDLClipboardHandler { |
| | | |
| | | public boolean clipboardHasText(); |
| | | public String clipboardGetText(); |
| | | public void clipboardSetText(String string); |
| | | |
| | | } |
| | | |
| | | |
| | | class SDLClipboardHandler_API11 implements |
| | | SDLClipboardHandler, |
| | | android.content.ClipboardManager.OnPrimaryClipChangedListener { |
| | | |
| | | protected android.content.ClipboardManager mClipMgr; |
| | | |
| | | SDLClipboardHandler_API11() { |
| | | mClipMgr = (android.content.ClipboardManager) SDL.getContext().getSystemService(Context.CLIPBOARD_SERVICE); |
| | | mClipMgr.addPrimaryClipChangedListener(this); |
| | | } |
| | | |
| | | @Override |
| | | public boolean clipboardHasText() { |
| | | return mClipMgr.hasText(); |
| | | } |
| | | |
| | | @Override |
| | | public String clipboardGetText() { |
| | | CharSequence text; |
| | | text = mClipMgr.getText(); |
| | | if (text != null) { |
| | | return text.toString(); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public void clipboardSetText(String string) { |
| | | mClipMgr.removePrimaryClipChangedListener(this); |
| | | mClipMgr.setText(string); |
| | | mClipMgr.addPrimaryClipChangedListener(this); |
| | | } |
| | | |
| | | @Override |
| | | public void onPrimaryClipChanged() { |
| | | SDLActivity.onNativeClipboardChanged(); |
| | | } |
| | | |
| | | } |
| | | |
| | | class SDLClipboardHandler_Old implements |
| | | SDLClipboardHandler { |
| | | |
| | | protected android.text.ClipboardManager mClipMgrOld; |
| | | |
| | | SDLClipboardHandler_Old() { |
| | | mClipMgrOld = (android.text.ClipboardManager) SDL.getContext().getSystemService(Context.CLIPBOARD_SERVICE); |
| | | } |
| | | |
| | | @Override |
| | | public boolean clipboardHasText() { |
| | | return mClipMgrOld.hasText(); |
| | | } |
| | | |
| | | @Override |
| | | public String clipboardGetText() { |
| | | CharSequence text; |
| | | text = mClipMgrOld.getText(); |
| | | if (text != null) { |
| | | return text.toString(); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public void clipboardSetText(String string) { |
| | | mClipMgrOld.setText(string); |
| | | } |
| | | } |
| | | |
| New file |
| | |
| | | package org.libsdl.app; |
| | | |
| | | import android.media.*; |
| | | import android.util.Log; |
| | | |
| | | public class SDLAudioManager |
| | | { |
| | | protected static final String TAG = "SDLAudio"; |
| | | |
| | | protected static AudioTrack mAudioTrack; |
| | | protected static AudioRecord mAudioRecord; |
| | | |
| | | public static void initialize() { |
| | | mAudioTrack = null; |
| | | mAudioRecord = null; |
| | | } |
| | | |
| | | // Audio |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static int audioOpen(int sampleRate, boolean is16Bit, boolean isStereo, int desiredFrames) { |
| | | int channelConfig = isStereo ? AudioFormat.CHANNEL_CONFIGURATION_STEREO : AudioFormat.CHANNEL_CONFIGURATION_MONO; |
| | | int audioFormat = is16Bit ? AudioFormat.ENCODING_PCM_16BIT : AudioFormat.ENCODING_PCM_8BIT; |
| | | int frameSize = (isStereo ? 2 : 1) * (is16Bit ? 2 : 1); |
| | | |
| | | Log.v(TAG, "SDL audio: wanted " + (isStereo ? "stereo" : "mono") + " " + (is16Bit ? "16-bit" : "8-bit") + " " + (sampleRate / 1000f) + "kHz, " + desiredFrames + " frames buffer"); |
| | | |
| | | // Let the user pick a larger buffer if they really want -- but ye |
| | | // gods they probably shouldn't, the minimums are horrifyingly high |
| | | // latency already |
| | | desiredFrames = Math.max(desiredFrames, (AudioTrack.getMinBufferSize(sampleRate, channelConfig, audioFormat) + frameSize - 1) / frameSize); |
| | | |
| | | if (mAudioTrack == null) { |
| | | mAudioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, sampleRate, |
| | | channelConfig, audioFormat, desiredFrames * frameSize, AudioTrack.MODE_STREAM); |
| | | |
| | | // Instantiating AudioTrack can "succeed" without an exception and the track may still be invalid |
| | | // Ref: https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/media/java/android/media/AudioTrack.java |
| | | // Ref: http://developer.android.com/reference/android/media/AudioTrack.html#getState() |
| | | |
| | | if (mAudioTrack.getState() != AudioTrack.STATE_INITIALIZED) { |
| | | Log.e(TAG, "Failed during initialization of Audio Track"); |
| | | mAudioTrack = null; |
| | | return -1; |
| | | } |
| | | |
| | | mAudioTrack.play(); |
| | | } |
| | | |
| | | Log.v(TAG, "SDL audio: got " + ((mAudioTrack.getChannelCount() >= 2) ? "stereo" : "mono") + " " + ((mAudioTrack.getAudioFormat() == AudioFormat.ENCODING_PCM_16BIT) ? "16-bit" : "8-bit") + " " + (mAudioTrack.getSampleRate() / 1000f) + "kHz, " + desiredFrames + " frames buffer"); |
| | | |
| | | return 0; |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static void audioWriteShortBuffer(short[] buffer) { |
| | | if (mAudioTrack == null) { |
| | | Log.e(TAG, "Attempted to make audio call with uninitialized audio!"); |
| | | return; |
| | | } |
| | | |
| | | for (int i = 0; i < buffer.length; ) { |
| | | int result = mAudioTrack.write(buffer, i, buffer.length - i); |
| | | if (result > 0) { |
| | | i += result; |
| | | } else if (result == 0) { |
| | | try { |
| | | Thread.sleep(1); |
| | | } catch(InterruptedException e) { |
| | | // Nom nom |
| | | } |
| | | } else { |
| | | Log.w(TAG, "SDL audio: error return from write(short)"); |
| | | return; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static void audioWriteByteBuffer(byte[] buffer) { |
| | | if (mAudioTrack == null) { |
| | | Log.e(TAG, "Attempted to make audio call with uninitialized audio!"); |
| | | return; |
| | | } |
| | | |
| | | for (int i = 0; i < buffer.length; ) { |
| | | int result = mAudioTrack.write(buffer, i, buffer.length - i); |
| | | if (result > 0) { |
| | | i += result; |
| | | } else if (result == 0) { |
| | | try { |
| | | Thread.sleep(1); |
| | | } catch(InterruptedException e) { |
| | | // Nom nom |
| | | } |
| | | } else { |
| | | Log.w(TAG, "SDL audio: error return from write(byte)"); |
| | | return; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static int captureOpen(int sampleRate, boolean is16Bit, boolean isStereo, int desiredFrames) { |
| | | int channelConfig = isStereo ? AudioFormat.CHANNEL_CONFIGURATION_STEREO : AudioFormat.CHANNEL_CONFIGURATION_MONO; |
| | | int audioFormat = is16Bit ? AudioFormat.ENCODING_PCM_16BIT : AudioFormat.ENCODING_PCM_8BIT; |
| | | int frameSize = (isStereo ? 2 : 1) * (is16Bit ? 2 : 1); |
| | | |
| | | Log.v(TAG, "SDL capture: wanted " + (isStereo ? "stereo" : "mono") + " " + (is16Bit ? "16-bit" : "8-bit") + " " + (sampleRate / 1000f) + "kHz, " + desiredFrames + " frames buffer"); |
| | | |
| | | // Let the user pick a larger buffer if they really want -- but ye |
| | | // gods they probably shouldn't, the minimums are horrifyingly high |
| | | // latency already |
| | | desiredFrames = Math.max(desiredFrames, (AudioRecord.getMinBufferSize(sampleRate, channelConfig, audioFormat) + frameSize - 1) / frameSize); |
| | | |
| | | if (mAudioRecord == null) { |
| | | mAudioRecord = new AudioRecord(MediaRecorder.AudioSource.DEFAULT, sampleRate, |
| | | channelConfig, audioFormat, desiredFrames * frameSize); |
| | | |
| | | // see notes about AudioTrack state in audioOpen(), above. Probably also applies here. |
| | | if (mAudioRecord.getState() != AudioRecord.STATE_INITIALIZED) { |
| | | Log.e(TAG, "Failed during initialization of AudioRecord"); |
| | | mAudioRecord.release(); |
| | | mAudioRecord = null; |
| | | return -1; |
| | | } |
| | | |
| | | mAudioRecord.startRecording(); |
| | | } |
| | | |
| | | Log.v(TAG, "SDL capture: got " + ((mAudioRecord.getChannelCount() >= 2) ? "stereo" : "mono") + " " + ((mAudioRecord.getAudioFormat() == AudioFormat.ENCODING_PCM_16BIT) ? "16-bit" : "8-bit") + " " + (mAudioRecord.getSampleRate() / 1000f) + "kHz, " + desiredFrames + " frames buffer"); |
| | | |
| | | return 0; |
| | | } |
| | | |
| | | /** This method is called by SDL using JNI. */ |
| | | public static int captureReadShortBuffer(short[] buffer, boolean blocking) { |
| | | // !!! FIXME: this is available in API Level 23. Until then, we always block. :( |
| | | //return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING); |
| | | return mAudioRecord.read(buffer, 0, buffer.length); |
| | | } |
| | | |
| | | /** This method is called by SDL using JNI. */ |
| | | public static int captureReadByteBuffer(byte[] buffer, boolean blocking) { |
| | | // !!! FIXME: this is available in API Level 23. Until then, we always block. :( |
| | | //return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING); |
| | | return mAudioRecord.read(buffer, 0, buffer.length); |
| | | } |
| | | |
| | | |
| | | /** This method is called by SDL using JNI. */ |
| | | public static void audioClose() { |
| | | if (mAudioTrack != null) { |
| | | mAudioTrack.stop(); |
| | | mAudioTrack.release(); |
| | | mAudioTrack = null; |
| | | } |
| | | } |
| | | |
| | | /** This method is called by SDL using JNI. */ |
| | | public static void captureClose() { |
| | | if (mAudioRecord != null) { |
| | | mAudioRecord.stop(); |
| | | mAudioRecord.release(); |
| | | mAudioRecord = null; |
| | | } |
| | | } |
| | | |
| | | public static native int nativeSetupJNI(); |
| | | } |
| New file |
| | |
| | | package org.libsdl.app; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Collections; |
| | | import java.util.Comparator; |
| | | import java.util.List; |
| | | |
| | | import android.content.Context; |
| | | import android.os.*; |
| | | import android.view.*; |
| | | import android.util.Log; |
| | | |
| | | |
| | | public class SDLControllerManager |
| | | { |
| | | |
| | | public static native int nativeSetupJNI(); |
| | | |
| | | public static native int nativeAddJoystick(int device_id, String name, String desc, |
| | | int is_accelerometer, int nbuttons, |
| | | int naxes, int nhats, int nballs); |
| | | public static native int nativeRemoveJoystick(int device_id); |
| | | public static native int nativeAddHaptic(int device_id, String name); |
| | | public static native int nativeRemoveHaptic(int device_id); |
| | | public static native int onNativePadDown(int device_id, int keycode); |
| | | public static native int onNativePadUp(int device_id, int keycode); |
| | | public static native void onNativeJoy(int device_id, int axis, |
| | | float value); |
| | | public static native void onNativeHat(int device_id, int hat_id, |
| | | int x, int y); |
| | | |
| | | protected static SDLJoystickHandler mJoystickHandler; |
| | | protected static SDLHapticHandler mHapticHandler; |
| | | |
| | | private static final String TAG = "SDLControllerManager"; |
| | | |
| | | public static void initialize() { |
| | | mJoystickHandler = null; |
| | | mHapticHandler = null; |
| | | |
| | | SDLControllerManager.setup(); |
| | | } |
| | | |
| | | public static void setup() { |
| | | if (Build.VERSION.SDK_INT >= 16) { |
| | | mJoystickHandler = new SDLJoystickHandler_API16(); |
| | | } else if (Build.VERSION.SDK_INT >= 12) { |
| | | mJoystickHandler = new SDLJoystickHandler_API12(); |
| | | } else { |
| | | mJoystickHandler = new SDLJoystickHandler(); |
| | | } |
| | | mHapticHandler = new SDLHapticHandler(); |
| | | } |
| | | |
| | | // Joystick glue code, just a series of stubs that redirect to the SDLJoystickHandler instance |
| | | public static boolean handleJoystickMotionEvent(MotionEvent event) { |
| | | return mJoystickHandler.handleMotionEvent(event); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static void pollInputDevices() { |
| | | mJoystickHandler.pollInputDevices(); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static void pollHapticDevices() { |
| | | mHapticHandler.pollHapticDevices(); |
| | | } |
| | | |
| | | /** |
| | | * This method is called by SDL using JNI. |
| | | */ |
| | | public static void hapticRun(int device_id, int length) { |
| | | mHapticHandler.run(device_id, length); |
| | | } |
| | | |
| | | // Check if a given device is considered a possible SDL joystick |
| | | public static boolean isDeviceSDLJoystick(int deviceId) { |
| | | InputDevice device = InputDevice.getDevice(deviceId); |
| | | // We cannot use InputDevice.isVirtual before API 16, so let's accept |
| | | // only nonnegative device ids (VIRTUAL_KEYBOARD equals -1) |
| | | if ((device == null) || (deviceId < 0)) { |
| | | return false; |
| | | } |
| | | int sources = device.getSources(); |
| | | |
| | | /* This is called for every button press, so let's not spam the logs */ |
| | | /** |
| | | if ((sources & InputDevice.SOURCE_CLASS_JOYSTICK) == InputDevice.SOURCE_CLASS_JOYSTICK) { |
| | | Log.v(TAG, "Input device " + device.getName() + " is a joystick."); |
| | | } |
| | | if ((sources & InputDevice.SOURCE_DPAD) == InputDevice.SOURCE_DPAD) { |
| | | Log.v(TAG, "Input device " + device.getName() + " is a dpad."); |
| | | } |
| | | if ((sources & InputDevice.SOURCE_GAMEPAD) == InputDevice.SOURCE_GAMEPAD) { |
| | | Log.v(TAG, "Input device " + device.getName() + " is a gamepad."); |
| | | } |
| | | **/ |
| | | |
| | | return (((sources & InputDevice.SOURCE_CLASS_JOYSTICK) == InputDevice.SOURCE_CLASS_JOYSTICK) || |
| | | ((sources & InputDevice.SOURCE_DPAD) == InputDevice.SOURCE_DPAD) || |
| | | ((sources & InputDevice.SOURCE_GAMEPAD) == InputDevice.SOURCE_GAMEPAD) |
| | | ); |
| | | } |
| | | |
| | | } |
| | | |
| | | /* A null joystick handler for API level < 12 devices (the accelerometer is handled separately) */ |
| | | class SDLJoystickHandler { |
| | | |
| | | /** |
| | | * Handles given MotionEvent. |
| | | * @param event the event to be handled. |
| | | * @return if given event was processed. |
| | | */ |
| | | public boolean handleMotionEvent(MotionEvent event) { |
| | | return false; |
| | | } |
| | | |
| | | /** |
| | | * Handles adding and removing of input devices. |
| | | */ |
| | | public void pollInputDevices() { |
| | | } |
| | | } |
| | | |
| | | /* Actual joystick functionality available for API >= 12 devices */ |
| | | class SDLJoystickHandler_API12 extends SDLJoystickHandler { |
| | | |
| | | static class SDLJoystick { |
| | | public int device_id; |
| | | public String name; |
| | | public String desc; |
| | | public ArrayList<InputDevice.MotionRange> axes; |
| | | public ArrayList<InputDevice.MotionRange> hats; |
| | | } |
| | | static class RangeComparator implements Comparator<InputDevice.MotionRange> { |
| | | @Override |
| | | public int compare(InputDevice.MotionRange arg0, InputDevice.MotionRange arg1) { |
| | | return arg0.getAxis() - arg1.getAxis(); |
| | | } |
| | | } |
| | | |
| | | private ArrayList<SDLJoystick> mJoysticks; |
| | | |
| | | public SDLJoystickHandler_API12() { |
| | | |
| | | mJoysticks = new ArrayList<SDLJoystick>(); |
| | | } |
| | | |
| | | @Override |
| | | public void pollInputDevices() { |
| | | int[] deviceIds = InputDevice.getDeviceIds(); |
| | | // It helps processing the device ids in reverse order |
| | | // For example, in the case of the XBox 360 wireless dongle, |
| | | // so the first controller seen by SDL matches what the receiver |
| | | // considers to be the first controller |
| | | |
| | | for(int i=deviceIds.length-1; i>-1; i--) { |
| | | SDLJoystick joystick = getJoystick(deviceIds[i]); |
| | | if (joystick == null) { |
| | | joystick = new SDLJoystick(); |
| | | InputDevice joystickDevice = InputDevice.getDevice(deviceIds[i]); |
| | | if (SDLControllerManager.isDeviceSDLJoystick(deviceIds[i])) { |
| | | joystick.device_id = deviceIds[i]; |
| | | joystick.name = joystickDevice.getName(); |
| | | joystick.desc = getJoystickDescriptor(joystickDevice); |
| | | joystick.axes = new ArrayList<InputDevice.MotionRange>(); |
| | | joystick.hats = new ArrayList<InputDevice.MotionRange>(); |
| | | |
| | | List<InputDevice.MotionRange> ranges = joystickDevice.getMotionRanges(); |
| | | Collections.sort(ranges, new RangeComparator()); |
| | | for (InputDevice.MotionRange range : ranges ) { |
| | | if ((range.getSource() & InputDevice.SOURCE_CLASS_JOYSTICK) != 0) { |
| | | if (range.getAxis() == MotionEvent.AXIS_HAT_X || |
| | | range.getAxis() == MotionEvent.AXIS_HAT_Y) { |
| | | joystick.hats.add(range); |
| | | } |
| | | else { |
| | | joystick.axes.add(range); |
| | | } |
| | | } |
| | | } |
| | | |
| | | mJoysticks.add(joystick); |
| | | SDLControllerManager.nativeAddJoystick(joystick.device_id, joystick.name, joystick.desc, 0, -1, |
| | | joystick.axes.size(), joystick.hats.size()/2, 0); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /* Check removed devices */ |
| | | ArrayList<Integer> removedDevices = new ArrayList<Integer>(); |
| | | for(int i=0; i < mJoysticks.size(); i++) { |
| | | int device_id = mJoysticks.get(i).device_id; |
| | | int j; |
| | | for (j=0; j < deviceIds.length; j++) { |
| | | if (device_id == deviceIds[j]) break; |
| | | } |
| | | if (j == deviceIds.length) { |
| | | removedDevices.add(Integer.valueOf(device_id)); |
| | | } |
| | | } |
| | | |
| | | for(int i=0; i < removedDevices.size(); i++) { |
| | | int device_id = removedDevices.get(i).intValue(); |
| | | SDLControllerManager.nativeRemoveJoystick(device_id); |
| | | for (int j=0; j < mJoysticks.size(); j++) { |
| | | if (mJoysticks.get(j).device_id == device_id) { |
| | | mJoysticks.remove(j); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | protected SDLJoystick getJoystick(int device_id) { |
| | | for(int i=0; i < mJoysticks.size(); i++) { |
| | | if (mJoysticks.get(i).device_id == device_id) { |
| | | return mJoysticks.get(i); |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public boolean handleMotionEvent(MotionEvent event) { |
| | | if ((event.getSource() & InputDevice.SOURCE_JOYSTICK) != 0) { |
| | | int actionPointerIndex = event.getActionIndex(); |
| | | int action = event.getActionMasked(); |
| | | switch(action) { |
| | | case MotionEvent.ACTION_MOVE: |
| | | SDLJoystick joystick = getJoystick(event.getDeviceId()); |
| | | if ( joystick != null ) { |
| | | for (int i = 0; i < joystick.axes.size(); i++) { |
| | | InputDevice.MotionRange range = joystick.axes.get(i); |
| | | /* Normalize the value to -1...1 */ |
| | | float value = ( event.getAxisValue( range.getAxis(), actionPointerIndex) - range.getMin() ) / range.getRange() * 2.0f - 1.0f; |
| | | SDLControllerManager.onNativeJoy(joystick.device_id, i, value ); |
| | | } |
| | | for (int i = 0; i < joystick.hats.size(); i+=2) { |
| | | int hatX = Math.round(event.getAxisValue( joystick.hats.get(i).getAxis(), actionPointerIndex ) ); |
| | | int hatY = Math.round(event.getAxisValue( joystick.hats.get(i+1).getAxis(), actionPointerIndex ) ); |
| | | SDLControllerManager.onNativeHat(joystick.device_id, i/2, hatX, hatY ); |
| | | } |
| | | } |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | public String getJoystickDescriptor(InputDevice joystickDevice) { |
| | | return joystickDevice.getName(); |
| | | } |
| | | } |
| | | |
| | | |
| | | class SDLJoystickHandler_API16 extends SDLJoystickHandler_API12 { |
| | | |
| | | @Override |
| | | public String getJoystickDescriptor(InputDevice joystickDevice) { |
| | | String desc = joystickDevice.getDescriptor(); |
| | | |
| | | if (desc != null && !desc.isEmpty()) { |
| | | return desc; |
| | | } |
| | | |
| | | return super.getJoystickDescriptor(joystickDevice); |
| | | } |
| | | } |
| | | |
| | | class SDLHapticHandler { |
| | | |
| | | class SDLHaptic { |
| | | public int device_id; |
| | | public String name; |
| | | public Vibrator vib; |
| | | } |
| | | |
| | | private ArrayList<SDLHaptic> mHaptics; |
| | | |
| | | public SDLHapticHandler() { |
| | | mHaptics = new ArrayList<SDLHaptic>(); |
| | | } |
| | | |
| | | public void run(int device_id, int length) { |
| | | SDLHaptic haptic = getHaptic(device_id); |
| | | if (haptic != null) { |
| | | haptic.vib.vibrate (length); |
| | | } |
| | | } |
| | | |
| | | public void pollHapticDevices() { |
| | | |
| | | final int deviceId_VIBRATOR_SERVICE = 999999; |
| | | boolean hasVibratorService = false; |
| | | |
| | | int[] deviceIds = InputDevice.getDeviceIds(); |
| | | // It helps processing the device ids in reverse order |
| | | // For example, in the case of the XBox 360 wireless dongle, |
| | | // so the first controller seen by SDL matches what the receiver |
| | | // considers to be the first controller |
| | | |
| | | if (Build.VERSION.SDK_INT >= 16) |
| | | { |
| | | for (int i = deviceIds.length - 1; i > -1; i--) { |
| | | SDLHaptic haptic = getHaptic(deviceIds[i]); |
| | | if (haptic == null) { |
| | | InputDevice device = InputDevice.getDevice(deviceIds[i]); |
| | | Vibrator vib = device.getVibrator(); |
| | | if (vib.hasVibrator()) { |
| | | haptic = new SDLHaptic(); |
| | | haptic.device_id = deviceIds[i]; |
| | | haptic.name = device.getName(); |
| | | haptic.vib = vib; |
| | | mHaptics.add(haptic); |
| | | SDLControllerManager.nativeAddHaptic(haptic.device_id, haptic.name); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | /* Check VIBRATOR_SERVICE */ |
| | | Vibrator vib = (Vibrator) SDL.getContext().getSystemService(Context.VIBRATOR_SERVICE); |
| | | if (vib != null) { |
| | | if (Build.VERSION.SDK_INT >= 11) { |
| | | hasVibratorService = vib.hasVibrator(); |
| | | } else { |
| | | hasVibratorService = true; |
| | | } |
| | | |
| | | if (hasVibratorService) { |
| | | SDLHaptic haptic = getHaptic(deviceId_VIBRATOR_SERVICE); |
| | | if (haptic == null) { |
| | | haptic = new SDLHaptic(); |
| | | haptic.device_id = deviceId_VIBRATOR_SERVICE; |
| | | haptic.name = "VIBRATOR_SERVICE"; |
| | | haptic.vib = vib; |
| | | mHaptics.add(haptic); |
| | | SDLControllerManager.nativeAddHaptic(haptic.device_id, haptic.name); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /* Check removed devices */ |
| | | ArrayList<Integer> removedDevices = new ArrayList<Integer>(); |
| | | for(int i=0; i < mHaptics.size(); i++) { |
| | | int device_id = mHaptics.get(i).device_id; |
| | | int j; |
| | | for (j=0; j < deviceIds.length; j++) { |
| | | if (device_id == deviceIds[j]) break; |
| | | } |
| | | |
| | | if (device_id == deviceId_VIBRATOR_SERVICE && hasVibratorService) { |
| | | // don't remove the vibrator if it is still present |
| | | } else if (j == deviceIds.length) { |
| | | removedDevices.add(device_id); |
| | | } |
| | | } |
| | | |
| | | for(int i=0; i < removedDevices.size(); i++) { |
| | | int device_id = removedDevices.get(i); |
| | | SDLControllerManager.nativeRemoveHaptic(device_id); |
| | | for (int j=0; j < mHaptics.size(); j++) { |
| | | if (mHaptics.get(j).device_id == device_id) { |
| | | mHaptics.remove(j); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | protected SDLHaptic getHaptic(int device_id) { |
| | | for(int i=0; i < mHaptics.size(); i++) { |
| | | if (mHaptics.get(i).device_id == device_id) { |
| | | return mHaptics.get(i); |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | } |
| | | |
| | | class SDLGenericMotionListener_API12 implements View.OnGenericMotionListener { |
| | | // Generic Motion (mouse hover, joystick...) events go here |
| | | @Override |
| | | public boolean onGenericMotion(View v, MotionEvent event) { |
| | | float x, y; |
| | | int action; |
| | | |
| | | switch ( event.getSource() ) { |
| | | case InputDevice.SOURCE_JOYSTICK: |
| | | case InputDevice.SOURCE_GAMEPAD: |
| | | case InputDevice.SOURCE_DPAD: |
| | | return SDLControllerManager.handleJoystickMotionEvent(event); |
| | | |
| | | case InputDevice.SOURCE_MOUSE: |
| | | if (!SDLActivity.mSeparateMouseAndTouch) { |
| | | break; |
| | | } |
| | | action = event.getActionMasked(); |
| | | switch (action) { |
| | | case MotionEvent.ACTION_SCROLL: |
| | | x = event.getAxisValue(MotionEvent.AXIS_HSCROLL, 0); |
| | | y = event.getAxisValue(MotionEvent.AXIS_VSCROLL, 0); |
| | | SDLActivity.onNativeMouse(0, action, x, y); |
| | | return true; |
| | | |
| | | case MotionEvent.ACTION_HOVER_MOVE: |
| | | x = event.getX(0); |
| | | y = event.getY(0); |
| | | |
| | | SDLActivity.onNativeMouse(0, action, x, y); |
| | | return true; |
| | | |
| | | default: |
| | | break; |
| | | } |
| | | break; |
| | | |
| | | default: |
| | | break; |
| | | } |
| | | |
| | | // Event was not managed |
| | | return false; |
| | | } |
| | | } |
| | | |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <resources> |
| | | <color name="colorPrimary">#3F51B5</color> |
| | | <color name="colorPrimaryDark">#303F9F</color> |
| | | <color name="colorAccent">#FF4081</color> |
| | | </resources> |
| New file |
| | |
| | | <resources> |
| | | <string name="app_name">Game</string> |
| | | </resources> |
| New file |
| | |
| | | <resources> |
| | | |
| | | <!-- Base application theme. --> |
| | | <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar"> |
| | | <!-- Customize your theme here. --> |
| | | </style> |
| | | |
| | | </resources> |
| New file |
| | |
| | | // Top-level build file where you can add configuration options common to all sub-projects/modules. |
| | | |
| | | buildscript { |
| | | repositories { |
| | | jcenter() |
| | | } |
| | | dependencies { |
| | | classpath 'com.android.tools.build:gradle:2.3.3' |
| | | |
| | | // NOTE: Do not place your application dependencies here; they belong |
| | | // in the individual module build.gradle files |
| | | } |
| | | } |
| | | |
| | | allprojects { |
| | | repositories { |
| | | jcenter() |
| | | } |
| | | } |
| | | |
| | | task clean(type: Delete) { |
| | | delete rootProject.buildDir |
| | | } |
| New file |
| | |
| | | # Project-wide Gradle settings. |
| | | |
| | | # IDE (e.g. Android Studio) users: |
| | | # Gradle settings configured through the IDE *will override* |
| | | # any settings specified in this file. |
| | | |
| | | # For more details on how to configure your build environment visit |
| | | # http://www.gradle.org/docs/current/userguide/build_environment.html |
| | | |
| | | # Specifies the JVM arguments used for the daemon process. |
| | | # The setting is particularly useful for tweaking memory settings. |
| | | org.gradle.jvmargs=-Xmx1536m |
| | | |
| | | # When configured, Gradle will run in incubating parallel mode. |
| | | # This option should only be used with decoupled projects. More details, visit |
| | | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects |
| | | # org.gradle.parallel=true |
| New file |
| | |
| | | #Mon Oct 23 13:51:26 PDT 2017 |
| | | distributionBase=GRADLE_USER_HOME |
| | | distributionPath=wrapper/dists |
| | | zipStoreBase=GRADLE_USER_HOME |
| | | zipStorePath=wrapper/dists |
| | | distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip |
| New file |
| | |
| | | #!/usr/bin/env bash |
| | | |
| | | ############################################################################## |
| | | ## |
| | | ## Gradle start up script for UN*X |
| | | ## |
| | | ############################################################################## |
| | | |
| | | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. |
| | | DEFAULT_JVM_OPTS="" |
| | | |
| | | APP_NAME="Gradle" |
| | | APP_BASE_NAME=`basename "$0"` |
| | | |
| | | # Use the maximum available, or set MAX_FD != -1 to use that value. |
| | | MAX_FD="maximum" |
| | | |
| | | warn ( ) { |
| | | echo "$*" |
| | | } |
| | | |
| | | die ( ) { |
| | | echo |
| | | echo "$*" |
| | | echo |
| | | exit 1 |
| | | } |
| | | |
| | | # OS specific support (must be 'true' or 'false'). |
| | | cygwin=false |
| | | msys=false |
| | | darwin=false |
| | | case "`uname`" in |
| | | CYGWIN* ) |
| | | cygwin=true |
| | | ;; |
| | | Darwin* ) |
| | | darwin=true |
| | | ;; |
| | | MINGW* ) |
| | | msys=true |
| | | ;; |
| | | esac |
| | | |
| | | # Attempt to set APP_HOME |
| | | # Resolve links: $0 may be a link |
| | | PRG="$0" |
| | | # Need this for relative symlinks. |
| | | while [ -h "$PRG" ] ; do |
| | | ls=`ls -ld "$PRG"` |
| | | link=`expr "$ls" : '.*-> \(.*\)$'` |
| | | if expr "$link" : '/.*' > /dev/null; then |
| | | PRG="$link" |
| | | else |
| | | PRG=`dirname "$PRG"`"/$link" |
| | | fi |
| | | done |
| | | SAVED="`pwd`" |
| | | cd "`dirname \"$PRG\"`/" >/dev/null |
| | | APP_HOME="`pwd -P`" |
| | | cd "$SAVED" >/dev/null |
| | | |
| | | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar |
| | | |
| | | # Determine the Java command to use to start the JVM. |
| | | if [ -n "$JAVA_HOME" ] ; then |
| | | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then |
| | | # IBM's JDK on AIX uses strange locations for the executables |
| | | JAVACMD="$JAVA_HOME/jre/sh/java" |
| | | else |
| | | JAVACMD="$JAVA_HOME/bin/java" |
| | | fi |
| | | if [ ! -x "$JAVACMD" ] ; then |
| | | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME |
| | | |
| | | Please set the JAVA_HOME variable in your environment to match the |
| | | location of your Java installation." |
| | | fi |
| | | else |
| | | JAVACMD="java" |
| | | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. |
| | | |
| | | Please set the JAVA_HOME variable in your environment to match the |
| | | location of your Java installation." |
| | | fi |
| | | |
| | | # Increase the maximum file descriptors if we can. |
| | | if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then |
| | | MAX_FD_LIMIT=`ulimit -H -n` |
| | | if [ $? -eq 0 ] ; then |
| | | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then |
| | | MAX_FD="$MAX_FD_LIMIT" |
| | | fi |
| | | ulimit -n $MAX_FD |
| | | if [ $? -ne 0 ] ; then |
| | | warn "Could not set maximum file descriptor limit: $MAX_FD" |
| | | fi |
| | | else |
| | | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" |
| | | fi |
| | | fi |
| | | |
| | | # For Darwin, add options to specify how the application appears in the dock |
| | | if $darwin; then |
| | | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" |
| | | fi |
| | | |
| | | # For Cygwin, switch paths to Windows format before running java |
| | | if $cygwin ; then |
| | | APP_HOME=`cygpath --path --mixed "$APP_HOME"` |
| | | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` |
| | | JAVACMD=`cygpath --unix "$JAVACMD"` |
| | | |
| | | # We build the pattern for arguments to be converted via cygpath |
| | | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` |
| | | SEP="" |
| | | for dir in $ROOTDIRSRAW ; do |
| | | ROOTDIRS="$ROOTDIRS$SEP$dir" |
| | | SEP="|" |
| | | done |
| | | OURCYGPATTERN="(^($ROOTDIRS))" |
| | | # Add a user-defined pattern to the cygpath arguments |
| | | if [ "$GRADLE_CYGPATTERN" != "" ] ; then |
| | | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" |
| | | fi |
| | | # Now convert the arguments - kludge to limit ourselves to /bin/sh |
| | | i=0 |
| | | for arg in "$@" ; do |
| | | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` |
| | | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option |
| | | |
| | | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition |
| | | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` |
| | | else |
| | | eval `echo args$i`="\"$arg\"" |
| | | fi |
| | | i=$((i+1)) |
| | | done |
| | | case $i in |
| | | (0) set -- ;; |
| | | (1) set -- "$args0" ;; |
| | | (2) set -- "$args0" "$args1" ;; |
| | | (3) set -- "$args0" "$args1" "$args2" ;; |
| | | (4) set -- "$args0" "$args1" "$args2" "$args3" ;; |
| | | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; |
| | | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; |
| | | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; |
| | | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; |
| | | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; |
| | | esac |
| | | fi |
| | | |
| | | # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules |
| | | function splitJvmOpts() { |
| | | JVM_OPTS=("$@") |
| | | } |
| | | eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS |
| | | JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" |
| | | |
| | | exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" |
| New file |
| | |
| | | @if "%DEBUG%" == "" @echo off
|
| | | @rem ##########################################################################
|
| | | @rem
|
| | | @rem Gradle startup script for Windows
|
| | | @rem
|
| | | @rem ##########################################################################
|
| | |
|
| | | @rem Set local scope for the variables with windows NT shell
|
| | | if "%OS%"=="Windows_NT" setlocal
|
| | |
|
| | | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
| | | set DEFAULT_JVM_OPTS=
|
| | |
|
| | | set DIRNAME=%~dp0
|
| | | if "%DIRNAME%" == "" set DIRNAME=.
|
| | | set APP_BASE_NAME=%~n0
|
| | | set APP_HOME=%DIRNAME%
|
| | |
|
| | | @rem Find java.exe
|
| | | if defined JAVA_HOME goto findJavaFromJavaHome
|
| | |
|
| | | set JAVA_EXE=java.exe
|
| | | %JAVA_EXE% -version >NUL 2>&1
|
| | | if "%ERRORLEVEL%" == "0" goto init
|
| | |
|
| | | echo.
|
| | | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
| | | echo.
|
| | | echo Please set the JAVA_HOME variable in your environment to match the
|
| | | echo location of your Java installation.
|
| | |
|
| | | goto fail
|
| | |
|
| | | :findJavaFromJavaHome
|
| | | set JAVA_HOME=%JAVA_HOME:"=%
|
| | | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
| | |
|
| | | if exist "%JAVA_EXE%" goto init
|
| | |
|
| | | echo.
|
| | | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
| | | echo.
|
| | | echo Please set the JAVA_HOME variable in your environment to match the
|
| | | echo location of your Java installation.
|
| | |
|
| | | goto fail
|
| | |
|
| | | :init
|
| | | @rem Get command-line arguments, handling Windowz variants
|
| | |
|
| | | if not "%OS%" == "Windows_NT" goto win9xME_args
|
| | | if "%@eval[2+2]" == "4" goto 4NT_args
|
| | |
|
| | | :win9xME_args
|
| | | @rem Slurp the command line arguments.
|
| | | set CMD_LINE_ARGS=
|
| | | set _SKIP=2
|
| | |
|
| | | :win9xME_args_slurp
|
| | | if "x%~1" == "x" goto execute
|
| | |
|
| | | set CMD_LINE_ARGS=%*
|
| | | goto execute
|
| | |
|
| | | :4NT_args
|
| | | @rem Get arguments from the 4NT Shell from JP Software
|
| | | set CMD_LINE_ARGS=%$
|
| | |
|
| | | :execute
|
| | | @rem Setup the command line
|
| | |
|
| | | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
| | |
|
| | | @rem Execute Gradle
|
| | | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
| | |
|
| | | :end
|
| | | @rem End local scope for the variables with windows NT shell
|
| | | if "%ERRORLEVEL%"=="0" goto mainEnd
|
| | |
|
| | | :fail
|
| | | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
| | | rem the _cmd.exe /c_ return code!
|
| | | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
| | | exit /b 1
|
| | |
|
| | | :mainEnd
|
| | | if "%OS%"=="Windows_NT" endlocal
|
| | |
|
| | | :omega
|
| | |
| | | |
| | | srcdir=`dirname $0` |
| | | test -z "$srcdir" && srcdir=. |
| | | pushd $srcdir |
| | | cd "$srcdir" |
| | | |
| | | # Regenerate configuration files |
| | | cat acinclude/* >aclocal.m4 |
| | |
| | | exit 1 |
| | | fi |
| | | (cd test; sh autogen.sh) |
| | | |
| | | popd |
| | | |
| | | # Run configure for this platform |
| | | echo "Now you are ready to run ./configure" |
| | |
| | | echo "Usage: androidbuild.sh com.yourcompany.yourapp < sources.list" |
| | | echo "Usage: androidbuild.sh com.yourcompany.yourapp source1.c source2.c ...sourceN.c" |
| | | echo "To copy SDL source instead of symlinking: COPYSOURCE=1 androidbuild.sh ... " |
| | | echo "You can pass additional arguments to ndk-build with the NDKARGS variable: NDKARGS=\"-s\" androidbuild.sh ..." |
| | | exit 1 |
| | | fi |
| | | |
| | | |
| | | |
| | | SDLPATH="$( cd "$(dirname "$0")/.." ; pwd -P )" |
| | | |
| | | NDKBUILD=`which ndk-build` |
| | | if [ -z "$NDKBUILD" ];then |
| | | echo "Could not find the ndk-build utility, install Android's NDK and add it to the path" |
| | | if [ -z "$ANDROID_HOME" ];then |
| | | echo "Please set the ANDROID_HOME directory to the path of the Android SDK" |
| | | exit 1 |
| | | fi |
| | | |
| | | ANDROID=`which android` |
| | | if [ -z "$ANDROID" ];then |
| | | echo "Could not find the android utility, install Android's SDK and add it to the path" |
| | | if [ ! -d "$ANDROID_HOME/ndk-bundle" -a -z "$ANDROID_NDK_HOME" ]; then |
| | | echo "Please set the ANDROID_NDK_HOME directory to the path of the Android NDK" |
| | | exit 1 |
| | | fi |
| | | |
| | | ANT=`which ant` |
| | | |
| | | if [ -z "$ANT" ];then |
| | | echo "Could not find the ant utility, install Android's SDK and add it to the path" |
| | | exit 1 |
| | | fi |
| | | |
| | | NCPUS="1" |
| | | case "$OSTYPE" in |
| | | darwin*) |
| | | NCPU=`sysctl -n hw.ncpu` |
| | | ;; |
| | | linux*) |
| | | if [ -n `which nproc` ]; then |
| | | NCPUS=`nproc` |
| | | fi |
| | | ;; |
| | | *);; |
| | | esac |
| | | |
| | | APP="$1" |
| | | APPARR=(${APP//./ }) |
| | |
| | | cp -r $SDLPATH/android-project/* $BUILDPATH |
| | | |
| | | # Copy SDL sources |
| | | mkdir -p $BUILDPATH/jni/SDL |
| | | mkdir -p $BUILDPATH/app/jni/SDL |
| | | if [ -z "$COPYSOURCE" ]; then |
| | | ln -s $SDLPATH/src $BUILDPATH/jni/SDL |
| | | ln -s $SDLPATH/include $BUILDPATH/jni/SDL |
| | | ln -s $SDLPATH/src $BUILDPATH/app/jni/SDL |
| | | ln -s $SDLPATH/include $BUILDPATH/app/jni/SDL |
| | | else |
| | | cp -r $SDLPATH/src $BUILDPATH/jni/SDL |
| | | cp -r $SDLPATH/include $BUILDPATH/jni/SDL |
| | | cp -r $SDLPATH/src $BUILDPATH/app/jni/SDL |
| | | cp -r $SDLPATH/include $BUILDPATH/app/jni/SDL |
| | | fi |
| | | |
| | | cp -r $SDLPATH/Android.mk $BUILDPATH/jni/SDL |
| | | sed -i -e "s|YourSourceHere.c|$MKSOURCES|g" $BUILDPATH/jni/src/Android.mk |
| | | sed -i -e "s|org\.libsdl\.app|$APP|g" $BUILDPATH/AndroidManifest.xml |
| | | cp -r $SDLPATH/Android.mk $BUILDPATH/app/jni/SDL |
| | | sed -i -e "s|YourSourceHere.c|$MKSOURCES|g" $BUILDPATH/app/jni/src/Android.mk |
| | | sed -i -e "s|org\.libsdl\.app|$APP|g" $BUILDPATH/app/build.gradle |
| | | sed -i -e "s|org\.libsdl\.app|$APP|g" $BUILDPATH/app/src/main/AndroidManifest.xml |
| | | |
| | | # Copy user sources |
| | | for src in "${SOURCES[@]}" |
| | | do |
| | | cp $src $BUILDPATH/jni/src |
| | | cp $src $BUILDPATH/app/jni/src |
| | | done |
| | | |
| | | # Create an inherited Activity |
| | | cd $BUILDPATH/src |
| | | cd $BUILDPATH/app/src/main/java |
| | | for folder in "${APPARR[@]}" |
| | | do |
| | | mkdir -p $folder |
| | |
| | | done |
| | | |
| | | ACTIVITY="${folder}Activity" |
| | | sed -i -e "s|SDLActivity|$ACTIVITY|g" $BUILDPATH/AndroidManifest.xml |
| | | sed -i -e "s|SDLActivity|$APP|g" $BUILDPATH/build.xml |
| | | sed -i -e "s|\"SDLActivity\"|\"$ACTIVITY\"|g" $BUILDPATH/app/src/main/AndroidManifest.xml |
| | | |
| | | # Fill in a default Activity |
| | | echo "package $APP;" > "$ACTIVITY.java" |
| | | echo "import org.libsdl.app.SDLActivity;" >> "$ACTIVITY.java" |
| | | echo "public class $ACTIVITY extends SDLActivity {}" >> "$ACTIVITY.java" |
| | | cat >"$ACTIVITY.java" <<__EOF__ |
| | | package $APP; |
| | | |
| | | import org.libsdl.app.SDLActivity; |
| | | |
| | | public class $ACTIVITY extends SDLActivity |
| | | { |
| | | } |
| | | __EOF__ |
| | | |
| | | # Update project and build |
| | | cd $BUILDPATH |
| | | $ANDROID update project --path $BUILDPATH |
| | | $NDKBUILD -j $NCPUS $NDKARGS |
| | | $ANT debug |
| | | |
| | | cd $CURDIR |
| | | |
| | | APK="$BUILDPATH/bin/$APP-debug.apk" |
| | | |
| | | if [ -f "$APK" ]; then |
| | | echo "Your APK is ready at $APK" |
| | | echo "To install to your device: " |
| | | echo "cd $BUILDPATH" |
| | | echo "ant debug install" |
| | | exit 0 |
| | | fi |
| | | |
| | | echo "There was an error building the APK" |
| | | exit 1 |
| | | echo "To build and install to a device for testing, run the following:" |
| | | echo "cd $BUILDPATH" |
| | | echo "./gradlew installDebug" |
| New file |
| | |
| | | #!/bin/sh |
| | | # |
| | | # Build the Android libraries without needing a project |
| | | # (AndroidManifest.xml, jni/{Application,Android}.mk, etc.) |
| | | # |
| | | # Usage: androidbuildlibs.sh [arg for ndk-build ...]" |
| | | # |
| | | # Useful NDK arguments: |
| | | # |
| | | # NDK_DEBUG=1 - build debug version |
| | | # NDK_LIBS_OUT=<dest> - specify alternate destination for installable |
| | | # modules. |
| | | # |
| | | # Note that SDLmain is not an installable module (.so) so libSDLmain.a |
| | | # can be found in $obj/local/<abi> along with the unstripped libSDL.so. |
| | | # |
| | | |
| | | |
| | | # Android.mk is in srcdir |
| | | srcdir=`dirname $0`/.. |
| | | srcdir=`cd $srcdir && pwd` |
| | | cd $srcdir |
| | | |
| | | |
| | | # |
| | | # Create the build directories |
| | | # |
| | | |
| | | build=build |
| | | buildandroid=$build/android |
| | | obj= |
| | | lib= |
| | | ndk_args= |
| | | |
| | | # Allow an external caller to specify locations. |
| | | for arg in $* |
| | | do |
| | | if [ "${arg:0:8}" == "NDK_OUT=" ]; then |
| | | obj=${arg#NDK_OUT=} |
| | | elif [ "${arg:0:13}" == "NDK_LIBS_OUT=" ]; then |
| | | lib=${arg#NDK_LIBS_OUT=} |
| | | else |
| | | ndk_args="$ndk_args $arg" |
| | | fi |
| | | done |
| | | |
| | | if [ -z $obj ]; then |
| | | obj=$buildandroid/obj |
| | | fi |
| | | if [ -z $lib ]; then |
| | | lib=$buildandroid/lib |
| | | fi |
| | | |
| | | for dir in $build $buildandroid $obj $lib; do |
| | | if test -d $dir; then |
| | | : |
| | | else |
| | | mkdir $dir || exit 1 |
| | | fi |
| | | done |
| | | |
| | | |
| | | # APP_* variables set in the environment here will not be seen by the |
| | | # ndk-build makefile segments that use them, e.g., default-application.mk. |
| | | # For consistency, pass all values on the command line. |
| | | ndk-build \ |
| | | NDK_PROJECT_PATH=null \ |
| | | NDK_OUT=$obj \ |
| | | NDK_LIBS_OUT=$lib \ |
| | | APP_BUILD_SCRIPT=Android.mk \ |
| | | APP_ABI="armeabi-v7a arm64-v8a x86 x86_64" \ |
| | | APP_PLATFORM=android-14 \ |
| | | APP_MODULES="SDL2 SDL2_main" \ |
| | | $ndk_args |
| | |
| | | |
| | | FINALDIR="$1" |
| | | |
| | | CHECKERDIR="/usr/local/checker-276" |
| | | CHECKERDIR="/usr/local/checker-279" |
| | | if [ ! -d "$CHECKERDIR" ]; then |
| | | echo "$CHECKERDIR not found. Trying /usr/share/clang ..." 1>&2 |
| | | CHECKERDIR="/usr/share/clang/scan-build" |
| | |
| | | |
| | | echo "\$MAKE is '$MAKE'" |
| | | |
| | | # Unset $MAKE so submakes don't use it. |
| | | MAKECOMMAND="$MAKE" |
| | | unset MAKE |
| | | |
| | | set -x |
| | | set -e |
| | | |
| | |
| | | mkdir checker-buildbot |
| | | cd checker-buildbot |
| | | |
| | | # We turn off deprecated declarations, because we don't care about these warnings during static analysis. |
| | | # The -Wno-liblto is new since our checker-279 upgrade, I think; checker otherwise warns "libLTO.dylib relative to clang installed dir not found" |
| | | |
| | | # You might want to do this for CMake-backed builds instead... |
| | | PATH="$CHECKERDIR:$PATH" scan-build -o analysis cmake -DCMAKE_BUILD_TYPE=Debug -DASSERTIONS=enabled .. |
| | | PATH="$CHECKERDIR/bin:$PATH" scan-build -o analysis cmake -Wno-dev -DSDL_STATIC=OFF -DCMAKE_BUILD_TYPE=Debug -DASSERTIONS=enabled -DCMAKE_C_FLAGS="-Wno-deprecated-declarations" -DCMAKE_SHARED_LINKER_FLAGS="-Wno-liblto" .. |
| | | |
| | | # ...or run configure without the scan-build wrapper... |
| | | #CC="$CHECKERDIR/libexec/ccc-analyzer" CFLAGS="-O0" ../configure --enable-assertions=enabled |
| | | |
| | | # ...but this works for our buildbots just fine (EXCEPT ON LATEST MAC OS X). |
| | | #CFLAGS="-O0" PATH="$CHECKERDIR:$PATH" scan-build -o analysis ../configure --enable-assertions=enabled |
| | | #CC="$CHECKERDIR/libexec/ccc-analyzer" CFLAGS="-O0 -Wno-deprecated-declarations" LDFLAGS="-Wno-liblto" ../configure --enable-assertions=enabled |
| | | |
| | | rm -rf analysis |
| | | PATH="$CHECKERDIR:$PATH" scan-build -o analysis $MAKE |
| | | PATH="$CHECKERDIR/bin:$PATH" scan-build -o analysis $MAKECOMMAND |
| | | |
| | | if [ `ls -A analysis |wc -l` == 0 ] ; then |
| | | mkdir analysis/zarro |
| | | echo '<html><head><title>Zarro boogs</title></head><body>Static analysis: no issues to report.</body></html>' >analysis/zarro/index.html |
| | | fi |
| | | |
| | | mv analysis/* ../analysis |
| | | rmdir analysis # Make sure this is empty. |
| | | cd .. |
| | |
| | | #! /bin/sh |
| | | # Attempt to guess a canonical system name. |
| | | # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
| | | # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, |
| | | # 2011, 2012 Free Software Foundation, Inc. |
| | | # Copyright 1992-2017 Free Software Foundation, Inc. |
| | | |
| | | timestamp='2012-08-14' |
| | | timestamp='2017-08-08' |
| | | |
| | | # This file is free software; you can redistribute it and/or modify it |
| | | # under the terms of the GNU General Public License as published by |
| | | # the Free Software Foundation; either version 2 of the License, or |
| | | # the Free Software Foundation; either version 3 of the License, or |
| | | # (at your option) any later version. |
| | | # |
| | | # This program is distributed in the hope that it will be useful, but |
| | |
| | | # As a special exception to the GNU General Public License, if you |
| | | # distribute this file as part of a program that contains a |
| | | # configuration script generated by Autoconf, you may include it under |
| | | # the same distribution terms that you use for the rest of that program. |
| | | |
| | | |
| | | # Originally written by Per Bothner. Please send patches (context |
| | | # diff format) to <config-patches@gnu.org> and include a ChangeLog |
| | | # entry. |
| | | # the same distribution terms that you use for the rest of that |
| | | # program. This Exception is an additional permission under section 7 |
| | | # of the GNU General Public License, version 3 ("GPLv3"). |
| | | # |
| | | # This script attempts to guess a canonical system name similar to |
| | | # config.sub. If it succeeds, it prints the system name on stdout, and |
| | | # exits with 0. Otherwise, it exits with 1. |
| | | # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. |
| | | # |
| | | # You can get the latest version of this script from: |
| | | # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD |
| | | # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess |
| | | # |
| | | # Please send patches to <config-patches@gnu.org>. |
| | | |
| | | |
| | | me=`echo "$0" | sed -e 's,.*/,,'` |
| | | |
| | |
| | | GNU config.guess ($timestamp) |
| | | |
| | | Originally written by Per Bothner. |
| | | Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, |
| | | 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 |
| | | Free Software Foundation, Inc. |
| | | Copyright 1992-2017 Free Software Foundation, Inc. |
| | | |
| | | This is free software; see the source for copying conditions. There is NO |
| | | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
| | |
| | | UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown |
| | | UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown |
| | | |
| | | case "${UNAME_SYSTEM}" in |
| | | Linux|GNU|GNU/*) |
| | | # If the system lacks a compiler, then just pick glibc. |
| | | # We could probably try harder. |
| | | LIBC=gnu |
| | | |
| | | eval $set_cc_for_build |
| | | cat <<-EOF > $dummy.c |
| | | #include <features.h> |
| | | #if defined(__UCLIBC__) |
| | | LIBC=uclibc |
| | | #elif defined(__dietlibc__) |
| | | LIBC=dietlibc |
| | | #else |
| | | LIBC=gnu |
| | | #endif |
| | | EOF |
| | | eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` |
| | | ;; |
| | | esac |
| | | |
| | | # Note: order is significant - the case branches are not exclusive. |
| | | |
| | | case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in |
| | |
| | | # Note: NetBSD doesn't particularly care about the vendor |
| | | # portion of the name. We always set it to "unknown". |
| | | sysctl="sysctl -n hw.machine_arch" |
| | | UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ |
| | | /usr/sbin/$sysctl 2>/dev/null || echo unknown)` |
| | | UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ |
| | | /sbin/$sysctl 2>/dev/null || \ |
| | | /usr/sbin/$sysctl 2>/dev/null || \ |
| | | echo unknown)` |
| | | case "${UNAME_MACHINE_ARCH}" in |
| | | armeb) machine=armeb-unknown ;; |
| | | arm*) machine=arm-unknown ;; |
| | | sh3el) machine=shl-unknown ;; |
| | | sh3eb) machine=sh-unknown ;; |
| | | sh5el) machine=sh5le-unknown ;; |
| | | earmv*) |
| | | arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` |
| | | endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` |
| | | machine=${arch}${endian}-unknown |
| | | ;; |
| | | *) machine=${UNAME_MACHINE_ARCH}-unknown ;; |
| | | esac |
| | | # The Operating System including object format, if it has switched |
| | | # to ELF recently, or will in the future. |
| | | # to ELF recently (or will in the future) and ABI. |
| | | case "${UNAME_MACHINE_ARCH}" in |
| | | earm*) |
| | | os=netbsdelf |
| | | ;; |
| | | arm*|i386|m68k|ns32k|sh3*|sparc|vax) |
| | | eval $set_cc_for_build |
| | | if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ |
| | |
| | | os=netbsd |
| | | ;; |
| | | esac |
| | | # Determine ABI tags. |
| | | case "${UNAME_MACHINE_ARCH}" in |
| | | earm*) |
| | | expr='s/^earmv[0-9]/-eabi/;s/eb$//' |
| | | abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` |
| | | ;; |
| | | esac |
| | | # The OS release |
| | | # Debian GNU/NetBSD machines have a different userland, and |
| | | # thus, need a distinct triplet. However, they do not need |
| | |
| | | release='-gnu' |
| | | ;; |
| | | *) |
| | | release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` |
| | | release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2` |
| | | ;; |
| | | esac |
| | | # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: |
| | | # contains redundant information, the shorter form: |
| | | # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. |
| | | echo "${machine}-${os}${release}" |
| | | echo "${machine}-${os}${release}${abi}" |
| | | exit ;; |
| | | *:Bitrig:*:*) |
| | | UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` |
| | |
| | | *:OpenBSD:*:*) |
| | | UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` |
| | | echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} |
| | | exit ;; |
| | | *:LibertyBSD:*:*) |
| | | UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` |
| | | echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} |
| | | exit ;; |
| | | *:ekkoBSD:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} |
| | |
| | | exit ;; |
| | | *:MirBSD:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} |
| | | exit ;; |
| | | *:Sortix:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-sortix |
| | | exit ;; |
| | | *:Redox:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-redox |
| | | exit ;; |
| | | alpha:OSF1:*:*) |
| | | case $UNAME_RELEASE in |
| | |
| | | ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` |
| | | case "$ALPHA_CPU_TYPE" in |
| | | "EV4 (21064)") |
| | | UNAME_MACHINE="alpha" ;; |
| | | UNAME_MACHINE=alpha ;; |
| | | "EV4.5 (21064)") |
| | | UNAME_MACHINE="alpha" ;; |
| | | UNAME_MACHINE=alpha ;; |
| | | "LCA4 (21066/21068)") |
| | | UNAME_MACHINE="alpha" ;; |
| | | UNAME_MACHINE=alpha ;; |
| | | "EV5 (21164)") |
| | | UNAME_MACHINE="alphaev5" ;; |
| | | UNAME_MACHINE=alphaev5 ;; |
| | | "EV5.6 (21164A)") |
| | | UNAME_MACHINE="alphaev56" ;; |
| | | UNAME_MACHINE=alphaev56 ;; |
| | | "EV5.6 (21164PC)") |
| | | UNAME_MACHINE="alphapca56" ;; |
| | | UNAME_MACHINE=alphapca56 ;; |
| | | "EV5.7 (21164PC)") |
| | | UNAME_MACHINE="alphapca57" ;; |
| | | UNAME_MACHINE=alphapca57 ;; |
| | | "EV6 (21264)") |
| | | UNAME_MACHINE="alphaev6" ;; |
| | | UNAME_MACHINE=alphaev6 ;; |
| | | "EV6.7 (21264A)") |
| | | UNAME_MACHINE="alphaev67" ;; |
| | | UNAME_MACHINE=alphaev67 ;; |
| | | "EV6.8CB (21264C)") |
| | | UNAME_MACHINE="alphaev68" ;; |
| | | UNAME_MACHINE=alphaev68 ;; |
| | | "EV6.8AL (21264B)") |
| | | UNAME_MACHINE="alphaev68" ;; |
| | | UNAME_MACHINE=alphaev68 ;; |
| | | "EV6.8CX (21264D)") |
| | | UNAME_MACHINE="alphaev68" ;; |
| | | UNAME_MACHINE=alphaev68 ;; |
| | | "EV6.9A (21264/EV69A)") |
| | | UNAME_MACHINE="alphaev69" ;; |
| | | UNAME_MACHINE=alphaev69 ;; |
| | | "EV7 (21364)") |
| | | UNAME_MACHINE="alphaev7" ;; |
| | | UNAME_MACHINE=alphaev7 ;; |
| | | "EV7.9 (21364A)") |
| | | UNAME_MACHINE="alphaev79" ;; |
| | | UNAME_MACHINE=alphaev79 ;; |
| | | esac |
| | | # A Pn.n version is a patched version. |
| | | # A Vn.n version is a released version. |
| | | # A Tn.n version is a released field test version. |
| | | # A Xn.n version is an unreleased experimental baselevel. |
| | | # 1.2 uses "1.2" for uname -r. |
| | | echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` |
| | | echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` |
| | | # Reset EXIT trap before exiting to avoid spurious non-zero exit code. |
| | | exitcode=$? |
| | | trap '' 0 |
| | |
| | | arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) |
| | | echo arm-acorn-riscix${UNAME_RELEASE} |
| | | exit ;; |
| | | arm:riscos:*:*|arm:RISCOS:*:*) |
| | | arm*:riscos:*:*|arm*:RISCOS:*:*) |
| | | echo arm-unknown-riscos |
| | | exit ;; |
| | | SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) |
| | |
| | | exit ;; |
| | | i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) |
| | | eval $set_cc_for_build |
| | | SUN_ARCH="i386" |
| | | SUN_ARCH=i386 |
| | | # If there is a compiler, see if it is configured for 64-bit objects. |
| | | # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. |
| | | # This test works for both compilers. |
| | | if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then |
| | | if [ "$CC_FOR_BUILD" != no_compiler_found ]; then |
| | | if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ |
| | | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ |
| | | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ |
| | | grep IS_64BIT_ARCH >/dev/null |
| | | then |
| | | SUN_ARCH="x86_64" |
| | | SUN_ARCH=x86_64 |
| | | fi |
| | | fi |
| | | echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` |
| | |
| | | exit ;; |
| | | sun*:*:4.2BSD:*) |
| | | UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` |
| | | test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 |
| | | test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3 |
| | | case "`/bin/arch`" in |
| | | sun3) |
| | | echo m68k-sun-sunos${UNAME_RELEASE} |
| | |
| | | else |
| | | IBM_ARCH=powerpc |
| | | fi |
| | | if [ -x /usr/bin/oslevel ] ; then |
| | | IBM_REV=`/usr/bin/oslevel` |
| | | if [ -x /usr/bin/lslpp ] ; then |
| | | IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | |
| | | awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` |
| | | else |
| | | IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} |
| | | fi |
| | |
| | | sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` |
| | | sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` |
| | | case "${sc_cpu_version}" in |
| | | 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 |
| | | 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 |
| | | 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 |
| | | 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 |
| | | 532) # CPU_PA_RISC2_0 |
| | | case "${sc_kernel_bits}" in |
| | | 32) HP_ARCH="hppa2.0n" ;; |
| | | 64) HP_ARCH="hppa2.0w" ;; |
| | | '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 |
| | | 32) HP_ARCH=hppa2.0n ;; |
| | | 64) HP_ARCH=hppa2.0w ;; |
| | | '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 |
| | | esac ;; |
| | | esac |
| | | fi |
| | |
| | | exit (0); |
| | | } |
| | | EOF |
| | | (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` |
| | | (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` |
| | | test -z "$HP_ARCH" && HP_ARCH=hppa |
| | | fi ;; |
| | | esac |
| | | if [ ${HP_ARCH} = "hppa2.0w" ] |
| | | if [ ${HP_ARCH} = hppa2.0w ] |
| | | then |
| | | eval $set_cc_for_build |
| | | |
| | |
| | | # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess |
| | | # => hppa64-hp-hpux11.23 |
| | | |
| | | if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | |
| | | if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | |
| | | grep -q __LP64__ |
| | | then |
| | | HP_ARCH="hppa2.0w" |
| | | HP_ARCH=hppa2.0w |
| | | else |
| | | HP_ARCH="hppa64" |
| | | HP_ARCH=hppa64 |
| | | fi |
| | | fi |
| | | echo ${HP_ARCH}-hp-hpux${HPUX_REV} |
| | |
| | | echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' |
| | | exit ;; |
| | | F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) |
| | | FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` |
| | | FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` |
| | | FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` |
| | | FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` |
| | | FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` |
| | | echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" |
| | | exit ;; |
| | | 5000:UNIX_System_V:4.*:*) |
| | | FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` |
| | | FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` |
| | | FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` |
| | | FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` |
| | | echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" |
| | | exit ;; |
| | | i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) |
| | |
| | | UNAME_PROCESSOR=`/usr/bin/uname -p` |
| | | case ${UNAME_PROCESSOR} in |
| | | amd64) |
| | | echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; |
| | | *) |
| | | echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; |
| | | UNAME_PROCESSOR=x86_64 ;; |
| | | i386) |
| | | UNAME_PROCESSOR=i586 ;; |
| | | esac |
| | | echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` |
| | | exit ;; |
| | | i*:CYGWIN*:*) |
| | | echo ${UNAME_MACHINE}-pc-cygwin |
| | |
| | | *:MINGW*:*) |
| | | echo ${UNAME_MACHINE}-pc-mingw32 |
| | | exit ;; |
| | | i*:MSYS*:*) |
| | | *:MSYS*:*) |
| | | echo ${UNAME_MACHINE}-pc-msys |
| | | exit ;; |
| | | i*:windows32*:*) |
| | |
| | | exit ;; |
| | | *:GNU:*:*) |
| | | # the GNU system |
| | | echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` |
| | | echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` |
| | | exit ;; |
| | | *:GNU/*:*:*) |
| | | # other systems with GNU libc and userland |
| | | echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu |
| | | echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} |
| | | exit ;; |
| | | i*86:Minix:*:*) |
| | | echo ${UNAME_MACHINE}-pc-minix |
| | | exit ;; |
| | | aarch64:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | aarch64_be:Linux:*:*) |
| | | UNAME_MACHINE=aarch64_be |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | alpha:Linux:*:*) |
| | | case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in |
| | |
| | | EV68*) UNAME_MACHINE=alphaev68 ;; |
| | | esac |
| | | objdump --private-headers /bin/sh | grep -q ld.so.1 |
| | | if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} |
| | | if test "$?" = 0 ; then LIBC=gnulibc1 ; fi |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | arc:Linux:*:* | arceb:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | arm*:Linux:*:*) |
| | | eval $set_cc_for_build |
| | | if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ |
| | | | grep -q __ARM_EABI__ |
| | | then |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | else |
| | | case `sed -n '/^Hardware/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in |
| | | BCM2708) MANUFACTURER=raspberry;; |
| | | BCM2709) MANUFACTURER=raspberry;; |
| | | *) MANUFACTURER=unknown;; |
| | | esac |
| | | if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ |
| | | | grep -q __ARM_PCS_VFP |
| | | then |
| | | echo ${UNAME_MACHINE}-${MANUFACTURER}-linux-gnueabi |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi |
| | | else |
| | | echo ${UNAME_MACHINE}-${MANUFACTURER}-linux-gnueabihf |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf |
| | | fi |
| | | fi |
| | | exit ;; |
| | | avr32*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | cris:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-axis-linux-gnu |
| | | echo ${UNAME_MACHINE}-axis-linux-${LIBC} |
| | | exit ;; |
| | | crisv32:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-axis-linux-gnu |
| | | echo ${UNAME_MACHINE}-axis-linux-${LIBC} |
| | | exit ;; |
| | | e2k:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | frv:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | hexagon:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | i*86:Linux:*:*) |
| | | LIBC=gnu |
| | | eval $set_cc_for_build |
| | | sed 's/^ //' << EOF >$dummy.c |
| | | #ifdef __dietlibc__ |
| | | LIBC=dietlibc |
| | | #endif |
| | | EOF |
| | | eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` |
| | | echo "${UNAME_MACHINE}-pc-linux-${LIBC}" |
| | | echo ${UNAME_MACHINE}-pc-linux-${LIBC} |
| | | exit ;; |
| | | ia64:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | k1om:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | m32r*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | m68*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | mips:Linux:*:* | mips64:Linux:*:*) |
| | | eval $set_cc_for_build |
| | |
| | | #endif |
| | | EOF |
| | | eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` |
| | | test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } |
| | | test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } |
| | | ;; |
| | | or32:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | mips64el:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | openrisc*:Linux:*:*) |
| | | echo or1k-unknown-linux-${LIBC} |
| | | exit ;; |
| | | or32:Linux:*:* | or1k*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | padre:Linux:*:*) |
| | | echo sparc-unknown-linux-gnu |
| | | echo sparc-unknown-linux-${LIBC} |
| | | exit ;; |
| | | parisc64:Linux:*:* | hppa64:Linux:*:*) |
| | | echo hppa64-unknown-linux-gnu |
| | | echo hppa64-unknown-linux-${LIBC} |
| | | exit ;; |
| | | parisc:Linux:*:* | hppa:Linux:*:*) |
| | | # Look for CPU level |
| | | case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in |
| | | PA7*) echo hppa1.1-unknown-linux-gnu ;; |
| | | PA8*) echo hppa2.0-unknown-linux-gnu ;; |
| | | *) echo hppa-unknown-linux-gnu ;; |
| | | PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; |
| | | PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; |
| | | *) echo hppa-unknown-linux-${LIBC} ;; |
| | | esac |
| | | exit ;; |
| | | ppc64:Linux:*:*) |
| | | echo powerpc64-unknown-linux-gnu |
| | | echo powerpc64-unknown-linux-${LIBC} |
| | | exit ;; |
| | | ppc:Linux:*:*) |
| | | echo powerpc-unknown-linux-gnu |
| | | echo powerpc-unknown-linux-${LIBC} |
| | | exit ;; |
| | | ppc64le:Linux:*:*) |
| | | echo powerpc64le-unknown-linux-${LIBC} |
| | | exit ;; |
| | | ppcle:Linux:*:*) |
| | | echo powerpcle-unknown-linux-${LIBC} |
| | | exit ;; |
| | | riscv32:Linux:*:* | riscv64:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | s390:Linux:*:* | s390x:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-ibm-linux |
| | | echo ${UNAME_MACHINE}-ibm-linux-${LIBC} |
| | | exit ;; |
| | | sh64*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | sh*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | sparc:Linux:*:* | sparc64:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | tile*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | vax:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-dec-linux-gnu |
| | | echo ${UNAME_MACHINE}-dec-linux-${LIBC} |
| | | exit ;; |
| | | x86_64:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-pc-linux-${LIBC} |
| | | exit ;; |
| | | xtensa*:Linux:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-linux-gnu |
| | | echo ${UNAME_MACHINE}-unknown-linux-${LIBC} |
| | | exit ;; |
| | | i*86:DYNIX/ptx:4*:*) |
| | | # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. |
| | |
| | | # uname -m prints for DJGPP always 'pc', but it prints nothing about |
| | | # the processor, so we play safe by assuming i586. |
| | | # Note: whatever this is, it MUST be the same as what config.sub |
| | | # prints for the "djgpp" host, or else GDB configury will decide that |
| | | # prints for the "djgpp" host, or else GDB configure will decide that |
| | | # this is a cross-build. |
| | | echo i586-pc-msdosdjgpp |
| | | exit ;; |
| | |
| | | SX-8R:SUPER-UX:*:*) |
| | | echo sx8r-nec-superux${UNAME_RELEASE} |
| | | exit ;; |
| | | SX-ACE:SUPER-UX:*:*) |
| | | echo sxace-nec-superux${UNAME_RELEASE} |
| | | exit ;; |
| | | Power*:Rhapsody:*:*) |
| | | echo powerpc-apple-rhapsody${UNAME_RELEASE} |
| | | exit ;; |
| | |
| | | exit ;; |
| | | *:Darwin:*:*) |
| | | UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown |
| | | case $UNAME_PROCESSOR in |
| | | i386) |
| | | eval $set_cc_for_build |
| | | if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then |
| | | if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ |
| | | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ |
| | | grep IS_64BIT_ARCH >/dev/null |
| | | then |
| | | UNAME_PROCESSOR="x86_64" |
| | | fi |
| | | fi ;; |
| | | unknown) UNAME_PROCESSOR=powerpc ;; |
| | | esac |
| | | eval $set_cc_for_build |
| | | if test "$UNAME_PROCESSOR" = unknown ; then |
| | | UNAME_PROCESSOR=powerpc |
| | | fi |
| | | if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then |
| | | if [ "$CC_FOR_BUILD" != no_compiler_found ]; then |
| | | if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ |
| | | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ |
| | | grep IS_64BIT_ARCH >/dev/null |
| | | then |
| | | case $UNAME_PROCESSOR in |
| | | i386) UNAME_PROCESSOR=x86_64 ;; |
| | | powerpc) UNAME_PROCESSOR=powerpc64 ;; |
| | | esac |
| | | fi |
| | | # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc |
| | | if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ |
| | | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ |
| | | grep IS_PPC >/dev/null |
| | | then |
| | | UNAME_PROCESSOR=powerpc |
| | | fi |
| | | fi |
| | | elif test "$UNAME_PROCESSOR" = i386 ; then |
| | | # Avoid executing cc on OS X 10.9, as it ships with a stub |
| | | # that puts up a graphical alert prompting to install |
| | | # developer tools. Any system running Mac OS X 10.7 or |
| | | # later (Darwin 11 and later) is required to have a 64-bit |
| | | # processor. This is not true of the ARM version of Darwin |
| | | # that Apple uses in portable devices. |
| | | UNAME_PROCESSOR=x86_64 |
| | | fi |
| | | echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} |
| | | exit ;; |
| | | *:procnto*:*:* | *:QNX:[0123456789]*:*) |
| | | UNAME_PROCESSOR=`uname -p` |
| | | if test "$UNAME_PROCESSOR" = "x86"; then |
| | | if test "$UNAME_PROCESSOR" = x86; then |
| | | UNAME_PROCESSOR=i386 |
| | | UNAME_MACHINE=pc |
| | | fi |
| | |
| | | *:QNX:*:4*) |
| | | echo i386-pc-qnx |
| | | exit ;; |
| | | NEO-?:NONSTOP_KERNEL:*:*) |
| | | NEO-*:NONSTOP_KERNEL:*:*) |
| | | echo neo-tandem-nsk${UNAME_RELEASE} |
| | | exit ;; |
| | | NSE-*:NONSTOP_KERNEL:*:*) |
| | | echo nse-tandem-nsk${UNAME_RELEASE} |
| | | exit ;; |
| | | NSR-?:NONSTOP_KERNEL:*:*) |
| | | NSR-*:NONSTOP_KERNEL:*:*) |
| | | echo nsr-tandem-nsk${UNAME_RELEASE} |
| | | exit ;; |
| | | NSX-*:NONSTOP_KERNEL:*:*) |
| | | echo nsx-tandem-nsk${UNAME_RELEASE} |
| | | exit ;; |
| | | *:NonStop-UX:*:*) |
| | | echo mips-compaq-nonstopux |
| | |
| | | # "uname -m" is not consistent, so use $cputype instead. 386 |
| | | # is converted to i386 for consistency with other x86 |
| | | # operating systems. |
| | | if test "$cputype" = "386"; then |
| | | if test "$cputype" = 386; then |
| | | UNAME_MACHINE=i386 |
| | | else |
| | | UNAME_MACHINE="$cputype" |
| | |
| | | echo i386-pc-xenix |
| | | exit ;; |
| | | i*86:skyos:*:*) |
| | | echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' |
| | | echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'` |
| | | exit ;; |
| | | i*86:rdos:*:*) |
| | | echo ${UNAME_MACHINE}-pc-rdos |
| | |
| | | x86_64:VMkernel:*:*) |
| | | echo ${UNAME_MACHINE}-unknown-esx |
| | | exit ;; |
| | | amd64:Isilon\ OneFS:*:*) |
| | | echo x86_64-unknown-onefs |
| | | exit ;; |
| | | esac |
| | | |
| | | eval $set_cc_for_build |
| | | cat >$dummy.c <<EOF |
| | | #ifdef _SEQUENT_ |
| | | # include <sys/types.h> |
| | | # include <sys/utsname.h> |
| | | #endif |
| | | main () |
| | | { |
| | | #if defined (sony) |
| | | #if defined (MIPSEB) |
| | | /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, |
| | | I don't know.... */ |
| | | printf ("mips-sony-bsd\n"); exit (0); |
| | | #else |
| | | #include <sys/param.h> |
| | | printf ("m68k-sony-newsos%s\n", |
| | | #ifdef NEWSOS4 |
| | | "4" |
| | | #else |
| | | "" |
| | | #endif |
| | | ); exit (0); |
| | | #endif |
| | | #endif |
| | | |
| | | #if defined (__arm) && defined (__acorn) && defined (__unix) |
| | | printf ("arm-acorn-riscix\n"); exit (0); |
| | | #endif |
| | | |
| | | #if defined (hp300) && !defined (hpux) |
| | | printf ("m68k-hp-bsd\n"); exit (0); |
| | | #endif |
| | | |
| | | #if defined (NeXT) |
| | | #if !defined (__ARCHITECTURE__) |
| | | #define __ARCHITECTURE__ "m68k" |
| | | #endif |
| | | int version; |
| | | version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; |
| | | if (version < 4) |
| | | printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); |
| | | else |
| | | printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); |
| | | exit (0); |
| | | #endif |
| | | |
| | | #if defined (MULTIMAX) || defined (n16) |
| | | #if defined (UMAXV) |
| | | printf ("ns32k-encore-sysv\n"); exit (0); |
| | | #else |
| | | #if defined (CMU) |
| | | printf ("ns32k-encore-mach\n"); exit (0); |
| | | #else |
| | | printf ("ns32k-encore-bsd\n"); exit (0); |
| | | #endif |
| | | #endif |
| | | #endif |
| | | |
| | | #if defined (__386BSD__) |
| | | printf ("i386-pc-bsd\n"); exit (0); |
| | | #endif |
| | | |
| | | #if defined (sequent) |
| | | #if defined (i386) |
| | | printf ("i386-sequent-dynix\n"); exit (0); |
| | | #endif |
| | | #if defined (ns32000) |
| | | printf ("ns32k-sequent-dynix\n"); exit (0); |
| | | #endif |
| | | #endif |
| | | |
| | | #if defined (_SEQUENT_) |
| | | struct utsname un; |
| | | |
| | | uname(&un); |
| | | |
| | | if (strncmp(un.version, "V2", 2) == 0) { |
| | | printf ("i386-sequent-ptx2\n"); exit (0); |
| | | } |
| | | if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ |
| | | printf ("i386-sequent-ptx1\n"); exit (0); |
| | | } |
| | | printf ("i386-sequent-ptx\n"); exit (0); |
| | | |
| | | #endif |
| | | |
| | | #if defined (vax) |
| | | # if !defined (ultrix) |
| | | # include <sys/param.h> |
| | | # if defined (BSD) |
| | | # if BSD == 43 |
| | | printf ("vax-dec-bsd4.3\n"); exit (0); |
| | | # else |
| | | # if BSD == 199006 |
| | | printf ("vax-dec-bsd4.3reno\n"); exit (0); |
| | | # else |
| | | printf ("vax-dec-bsd\n"); exit (0); |
| | | # endif |
| | | # endif |
| | | # else |
| | | printf ("vax-dec-bsd\n"); exit (0); |
| | | # endif |
| | | # else |
| | | printf ("vax-dec-ultrix\n"); exit (0); |
| | | # endif |
| | | #endif |
| | | |
| | | #if defined (alliant) && defined (i860) |
| | | printf ("i860-alliant-bsd\n"); exit (0); |
| | | #endif |
| | | |
| | | exit (1); |
| | | } |
| | | EOF |
| | | |
| | | $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && |
| | | { echo "$SYSTEM_NAME"; exit; } |
| | | |
| | | # Apollos put the system type in the environment. |
| | | |
| | | test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } |
| | | |
| | | # Convex versions that predate uname can use getsysinfo(1) |
| | | |
| | | if [ -x /usr/convex/getsysinfo ] |
| | | then |
| | | case `getsysinfo -f cpu_type` in |
| | | c1*) |
| | | echo c1-convex-bsd |
| | | exit ;; |
| | | c2*) |
| | | if getsysinfo -f scalar_acc |
| | | then echo c32-convex-bsd |
| | | else echo c2-convex-bsd |
| | | fi |
| | | exit ;; |
| | | c34*) |
| | | echo c34-convex-bsd |
| | | exit ;; |
| | | c38*) |
| | | echo c38-convex-bsd |
| | | exit ;; |
| | | c4*) |
| | | echo c4-convex-bsd |
| | | exit ;; |
| | | esac |
| | | fi |
| | | |
| | | cat >&2 <<EOF |
| | | $0: unable to guess system type |
| | | |
| | | This script, last modified $timestamp, has failed to recognize |
| | | the operating system you are using. It is advised that you |
| | | download the most up to date version of the config scripts from |
| | | This script (version $timestamp), has failed to recognize the |
| | | operating system you are using. If your script is old, overwrite *all* |
| | | copies of config.guess and config.sub with the latest versions from: |
| | | |
| | | http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD |
| | | http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess |
| | | and |
| | | http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD |
| | | http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub |
| | | |
| | | If the version you run ($0) is already up to date, please |
| | | send the following data and any information you think might be |
| | | pertinent to <config-patches@gnu.org> in order to provide the needed |
| | | information to handle your system. |
| | | If $0 has already been updated, send the following data and any |
| | | information you think might be pertinent to config-patches@gnu.org to |
| | | provide the necessary information to handle your system. |
| | | |
| | | config.guess timestamp = $timestamp |
| | | |
| | |
| | | #! /bin/sh |
| | | # Configuration validation subroutine script. |
| | | # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
| | | # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, |
| | | # 2011, 2012 Free Software Foundation, Inc. |
| | | # Copyright 1992-2017 Free Software Foundation, Inc. |
| | | |
| | | timestamp='2012-08-18' |
| | | timestamp='2017-04-02' |
| | | |
| | | # This file is (in principle) common to ALL GNU software. |
| | | # The presence of a machine in this file suggests that SOME GNU software |
| | | # can handle that machine. It does not imply ALL GNU software can. |
| | | # |
| | | # This file is free software; you can redistribute it and/or modify |
| | | # it under the terms of the GNU General Public License as published by |
| | | # the Free Software Foundation; either version 2 of the License, or |
| | | # This file is free software; you can redistribute it and/or modify it |
| | | # under the terms of the GNU General Public License as published by |
| | | # the Free Software Foundation; either version 3 of the License, or |
| | | # (at your option) any later version. |
| | | # |
| | | # This program is distributed in the hope that it will be useful, |
| | | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| | | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| | | # GNU General Public License for more details. |
| | | # This program is distributed in the hope that it will be useful, but |
| | | # WITHOUT ANY WARRANTY; without even the implied warranty of |
| | | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| | | # General Public License for more details. |
| | | # |
| | | # You should have received a copy of the GNU General Public License |
| | | # along with this program; if not, see <http://www.gnu.org/licenses/>. |
| | |
| | | # As a special exception to the GNU General Public License, if you |
| | | # distribute this file as part of a program that contains a |
| | | # configuration script generated by Autoconf, you may include it under |
| | | # the same distribution terms that you use for the rest of that program. |
| | | # the same distribution terms that you use for the rest of that |
| | | # program. This Exception is an additional permission under section 7 |
| | | # of the GNU General Public License, version 3 ("GPLv3"). |
| | | |
| | | |
| | | # Please send patches to <config-patches@gnu.org>. Submit a context |
| | | # diff and a properly formatted GNU ChangeLog entry. |
| | | # Please send patches to <config-patches@gnu.org>. |
| | | # |
| | | # Configuration subroutine to validate and canonicalize a configuration type. |
| | | # Supply the specified configuration type as an argument. |
| | |
| | | # Otherwise, we print the canonical config type on stdout and succeed. |
| | | |
| | | # You can get the latest version of this script from: |
| | | # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD |
| | | # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub |
| | | |
| | | # This file is supposed to be the same for all GNU packages |
| | | # and recognize all the CPU types, system types and aliases |
| | |
| | | me=`echo "$0" | sed -e 's,.*/,,'` |
| | | |
| | | usage="\ |
| | | Usage: $0 [OPTION] CPU-MFR-OPSYS |
| | | $0 [OPTION] ALIAS |
| | | Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS |
| | | |
| | | Canonicalize a configuration name. |
| | | |
| | |
| | | version="\ |
| | | GNU config.sub ($timestamp) |
| | | |
| | | Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, |
| | | 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 |
| | | Free Software Foundation, Inc. |
| | | Copyright 1992-2017 Free Software Foundation, Inc. |
| | | |
| | | This is free software; see the source for copying conditions. There is NO |
| | | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
| | |
| | | case $maybe_os in |
| | | nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ |
| | | linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ |
| | | knetbsd*-gnu* | netbsd*-gnu* | \ |
| | | kopensolaris*-gnu* | \ |
| | | knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ |
| | | kopensolaris*-gnu* | cloudabi*-eabi* | \ |
| | | storm-chaos* | os2-emx* | rtmk-nova*) |
| | | os=-$maybe_os |
| | | basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` |
| | |
| | | -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ |
| | | -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ |
| | | -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ |
| | | -apple | -axis | -knuth | -cray | -microblaze) |
| | | -apple | -axis | -knuth | -cray | -microblaze*) |
| | | os= |
| | | basic_machine=$1 |
| | | ;; |
| | |
| | | | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ |
| | | | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ |
| | | | am33_2.0 \ |
| | | | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ |
| | | | be32 | be64 \ |
| | | | arc | arceb \ |
| | | | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ |
| | | | avr | avr32 \ |
| | | | ba \ |
| | | | be32 | be64 \ |
| | | | bfin \ |
| | | | c4x | clipper \ |
| | | | c4x | c8051 | clipper \ |
| | | | d10v | d30v | dlx | dsp16xx \ |
| | | | epiphany \ |
| | | | fido | fr30 | frv \ |
| | | | e2k | epiphany \ |
| | | | fido | fr30 | frv | ft32 \ |
| | | | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ |
| | | | hexagon \ |
| | | | i370 | i860 | i960 | ia64 \ |
| | | | i370 | i860 | i960 | ia16 | ia64 \ |
| | | | ip2k | iq2000 \ |
| | | | k1om \ |
| | | | le32 | le64 \ |
| | | | lm32 \ |
| | | | m32c | m32r | m32rle | m68000 | m68k | m88k \ |
| | | | maxq | mb | microblaze | mcore | mep | metag \ |
| | | | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ |
| | | | mips | mipsbe | mipseb | mipsel | mipsle \ |
| | | | mips16 \ |
| | | | mips64 | mips64el \ |
| | |
| | | | mips64vr5900 | mips64vr5900el \ |
| | | | mipsisa32 | mipsisa32el \ |
| | | | mipsisa32r2 | mipsisa32r2el \ |
| | | | mipsisa32r6 | mipsisa32r6el \ |
| | | | mipsisa64 | mipsisa64el \ |
| | | | mipsisa64r2 | mipsisa64r2el \ |
| | | | mipsisa64r6 | mipsisa64r6el \ |
| | | | mipsisa64sb1 | mipsisa64sb1el \ |
| | | | mipsisa64sr71k | mipsisa64sr71kel \ |
| | | | mipsr5900 | mipsr5900el \ |
| | | | mipstx39 | mipstx39el \ |
| | | | mn10200 | mn10300 \ |
| | | | moxie \ |
| | | | mt \ |
| | | | msp430 \ |
| | | | nds32 | nds32le | nds32be \ |
| | | | nios | nios2 \ |
| | | | nios | nios2 | nios2eb | nios2el \ |
| | | | ns16k | ns32k \ |
| | | | open8 \ |
| | | | or32 \ |
| | | | open8 | or1k | or1knd | or32 \ |
| | | | pdp10 | pdp11 | pj | pjl \ |
| | | | powerpc | powerpc64 | powerpc64le | powerpcle \ |
| | | | pru \ |
| | | | pyramid \ |
| | | | riscv32 | riscv64 \ |
| | | | rl78 | rx \ |
| | | | score \ |
| | | | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ |
| | | | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ |
| | | | sh64 | sh64le \ |
| | | | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ |
| | | | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ |
| | |
| | | | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ |
| | | | ubicom32 \ |
| | | | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ |
| | | | visium \ |
| | | | wasm32 \ |
| | | | we32k \ |
| | | | x86 | xc16x | xstormy16 | xtensa \ |
| | | | z8k | z80) |
| | |
| | | c6x) |
| | | basic_machine=tic6x-unknown |
| | | ;; |
| | | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) |
| | | leon|leon[3-9]) |
| | | basic_machine=sparc-$basic_machine |
| | | ;; |
| | | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) |
| | | basic_machine=$basic_machine-unknown |
| | | os=-none |
| | | ;; |
| | |
| | | | aarch64-* | aarch64_be-* \ |
| | | | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ |
| | | | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ |
| | | | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ |
| | | | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ |
| | | | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ |
| | | | avr-* | avr32-* \ |
| | | | ba-* \ |
| | | | be32-* | be64-* \ |
| | | | bfin-* | bs2000-* \ |
| | | | c[123]* | c30-* | [cjt]90-* | c4x-* \ |
| | | | clipper-* | craynv-* | cydra-* \ |
| | | | c8051-* | clipper-* | craynv-* | cydra-* \ |
| | | | d10v-* | d30v-* | dlx-* \ |
| | | | elxsi-* \ |
| | | | e2k-* | elxsi-* \ |
| | | | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ |
| | | | h8300-* | h8500-* \ |
| | | | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ |
| | | | hexagon-* \ |
| | | | i*86-* | i860-* | i960-* | ia64-* \ |
| | | | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ |
| | | | ip2k-* | iq2000-* \ |
| | | | k1om-* \ |
| | | | le32-* | le64-* \ |
| | | | lm32-* \ |
| | | | m32c-* | m32r-* | m32rle-* \ |
| | | | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ |
| | | | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ |
| | | | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ |
| | | | microblaze-* | microblazeel-* \ |
| | | | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ |
| | | | mips16-* \ |
| | | | mips64-* | mips64el-* \ |
| | |
| | | | mips64vr5900-* | mips64vr5900el-* \ |
| | | | mipsisa32-* | mipsisa32el-* \ |
| | | | mipsisa32r2-* | mipsisa32r2el-* \ |
| | | | mipsisa32r6-* | mipsisa32r6el-* \ |
| | | | mipsisa64-* | mipsisa64el-* \ |
| | | | mipsisa64r2-* | mipsisa64r2el-* \ |
| | | | mipsisa64r6-* | mipsisa64r6el-* \ |
| | | | mipsisa64sb1-* | mipsisa64sb1el-* \ |
| | | | mipsisa64sr71k-* | mipsisa64sr71kel-* \ |
| | | | mipsr5900-* | mipsr5900el-* \ |
| | | | mipstx39-* | mipstx39el-* \ |
| | | | mmix-* \ |
| | | | mt-* \ |
| | | | msp430-* \ |
| | | | nds32-* | nds32le-* | nds32be-* \ |
| | | | nios-* | nios2-* \ |
| | | | nios-* | nios2-* | nios2eb-* | nios2el-* \ |
| | | | none-* | np1-* | ns16k-* | ns32k-* \ |
| | | | open8-* \ |
| | | | or1k*-* \ |
| | | | orion-* \ |
| | | | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ |
| | | | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ |
| | | | pru-* \ |
| | | | pyramid-* \ |
| | | | riscv32-* | riscv64-* \ |
| | | | rl78-* | romp-* | rs6000-* | rx-* \ |
| | | | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ |
| | | | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ |
| | | | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ |
| | | | sparclite-* \ |
| | | | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ |
| | | | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ |
| | | | tahoe-* \ |
| | | | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ |
| | | | tile*-* \ |
| | |
| | | | ubicom32-* \ |
| | | | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ |
| | | | vax-* \ |
| | | | visium-* \ |
| | | | wasm32-* \ |
| | | | we32k-* \ |
| | | | x86-* | x86_64-* | xc16x-* | xps100-* \ |
| | | | xstormy16-* | xtensa*-* \ |
| | |
| | | aros) |
| | | basic_machine=i386-pc |
| | | os=-aros |
| | | ;; |
| | | asmjs) |
| | | basic_machine=asmjs-unknown |
| | | ;; |
| | | aux) |
| | | basic_machine=m68k-apple |
| | |
| | | dpx2* | dpx2*-bull) |
| | | basic_machine=m68k-bull |
| | | os=-sysv3 |
| | | ;; |
| | | e500v[12]) |
| | | basic_machine=powerpc-unknown |
| | | os=$os"spe" |
| | | ;; |
| | | e500v[12]-*) |
| | | basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` |
| | | os=$os"spe" |
| | | ;; |
| | | ebmon29k) |
| | | basic_machine=a29k-amd |
| | |
| | | basic_machine=m68k-isi |
| | | os=-sysv |
| | | ;; |
| | | leon-*|leon[3-9]-*) |
| | | basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` |
| | | ;; |
| | | m68knommu) |
| | | basic_machine=m68k-unknown |
| | | os=-linux |
| | |
| | | basic_machine=ns32k-utek |
| | | os=-sysv |
| | | ;; |
| | | microblaze) |
| | | microblaze*) |
| | | basic_machine=microblaze-xilinx |
| | | ;; |
| | | mingw64) |
| | |
| | | os=-mingw64 |
| | | ;; |
| | | mingw32) |
| | | basic_machine=i386-pc |
| | | basic_machine=i686-pc |
| | | os=-mingw32 |
| | | ;; |
| | | mingw32ce) |
| | |
| | | basic_machine=powerpc-unknown |
| | | os=-morphos |
| | | ;; |
| | | moxiebox) |
| | | basic_machine=moxie-unknown |
| | | os=-moxiebox |
| | | ;; |
| | | msdos) |
| | | basic_machine=i386-pc |
| | | os=-msdos |
| | |
| | | basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` |
| | | ;; |
| | | msys) |
| | | basic_machine=i386-pc |
| | | basic_machine=i686-pc |
| | | os=-msys |
| | | ;; |
| | | mvs) |
| | |
| | | nsr-tandem) |
| | | basic_machine=nsr-tandem |
| | | ;; |
| | | nsx-tandem) |
| | | basic_machine=nsx-tandem |
| | | ;; |
| | | op50n-* | op60c-*) |
| | | basic_machine=hppa1.1-oki |
| | | os=-proelf |
| | |
| | | ppc-* | ppcbe-*) |
| | | basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` |
| | | ;; |
| | | ppcle | powerpclittle | ppc-le | powerpc-little) |
| | | ppcle | powerpclittle) |
| | | basic_machine=powerpcle-unknown |
| | | ;; |
| | | ppcle-* | powerpclittle-*) |
| | |
| | | ;; |
| | | ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` |
| | | ;; |
| | | ppc64le | powerpc64little | ppc64-le | powerpc64-little) |
| | | ppc64le | powerpc64little) |
| | | basic_machine=powerpc64le-unknown |
| | | ;; |
| | | ppc64le-* | powerpc64little-*) |
| | |
| | | basic_machine=i586-unknown |
| | | os=-pw32 |
| | | ;; |
| | | rdos) |
| | | rdos | rdos64) |
| | | basic_machine=x86_64-pc |
| | | os=-rdos |
| | | ;; |
| | | rdos32) |
| | | basic_machine=i386-pc |
| | | os=-rdos |
| | | ;; |
| | |
| | | basic_machine=a29k-wrs |
| | | os=-vxworks |
| | | ;; |
| | | wasm32) |
| | | basic_machine=wasm32-unknown |
| | | ;; |
| | | w65*) |
| | | basic_machine=w65-wdc |
| | | os=-none |
| | |
| | | -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ |
| | | | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ |
| | | | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ |
| | | | -sym* | -kopensolaris* \ |
| | | | -sym* | -kopensolaris* | -plan9* \ |
| | | | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ |
| | | | -aos* | -aros* \ |
| | | | -aos* | -aros* | -cloudabi* | -sortix* \ |
| | | | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ |
| | | | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ |
| | | | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ |
| | | | -bitrig* | -openbsd* | -solidbsd* \ |
| | | | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ |
| | | | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ |
| | | | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ |
| | | | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ |
| | | | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ |
| | | | -chorusos* | -chorusrdb* | -cegcc* \ |
| | | | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \ |
| | | | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ |
| | | | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ |
| | | | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ |
| | | | -linux-newlib* | -linux-musl* | -linux-uclibc* \ |
| | | | -uxpv* | -beos* | -mpeix* | -udk* \ |
| | | | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ |
| | | | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ |
| | | | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ |
| | | | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ |
| | | | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ |
| | | | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ |
| | | | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ |
| | | | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) |
| | | | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ |
| | | | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*) |
| | | # Remember, each alternative MUST END IN *, to match a version number. |
| | | ;; |
| | | -qnx*) |
| | |
| | | ;; |
| | | -os400*) |
| | | os=-os400 |
| | | ;; |
| | | -cegcc*) |
| | | os=-cegcc |
| | | ;; |
| | | -wince*) |
| | | os=-wince |
| | |
| | | -aros*) |
| | | os=-aros |
| | | ;; |
| | | -kaos*) |
| | | os=-kaos |
| | | ;; |
| | | -zvmoe) |
| | | os=-zvmoe |
| | | ;; |
| | |
| | | ;; |
| | | -pnacl*) |
| | | os=-pnacl |
| | | ;; |
| | | -ios) |
| | | ;; |
| | | -emscripten*) |
| | | ;; |
| | |
| | | ;; |
| | | c4x-* | tic4x-*) |
| | | os=-coff |
| | | ;; |
| | | c8051-*) |
| | | os=-elf |
| | | ;; |
| | | hexagon-*) |
| | | os=-elf |
| | |
| | | sparc-* | *-sun) |
| | | os=-sunos4.1.1 |
| | | ;; |
| | | pru-*) |
| | | os=-elf |
| | | ;; |
| | | *-be) |
| | | os=-beos |
| | | ;; |
| New file |
| | |
| | | --- config.sub.orig 2017-09-09 08:01:02.139023205 -0700 |
| | | +++ config.sub 2017-09-09 07:59:35.798264474 -0700 |
| | | @@ -364,6 +364,19 @@ |
| | | i*86 | x86_64) |
| | | basic_machine=$basic_machine-pc |
| | | ;; |
| | | + nacl64*) |
| | | + basic_machine=x86_64-pc |
| | | + os=-nacl |
| | | + ;; |
| | | + nacl*) |
| | | + basic_machine=i686-pc |
| | | + os=-nacl |
| | | + ;; |
| | | + pnacl*) |
| | | + # le32-unknown-pnacl comes from http://www.chromium.org/nativeclient/pnacl/stability-of-the-pnacl-bitcode-abi |
| | | + basic_machine=le32-unknown |
| | | + os=-pnacl |
| | | + ;; |
| | | # Object if more than one company name word. |
| | | *-*-*) |
| | | echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 |
| | | @@ -877,6 +890,10 @@ |
| | | basic_machine=le32-unknown |
| | | os=-nacl |
| | | ;; |
| | | + pnacl) |
| | | + basic_machine=le32-unknown |
| | | + os=-pnacl |
| | | + ;; |
| | | ncr3000) |
| | | basic_machine=i486-ncr |
| | | os=-sysv4 |
| | | @@ -1429,6 +1446,12 @@ |
| | | ;; |
| | | esac |
| | | ;; |
| | | + -nacl*) |
| | | + os=-nacl |
| | | + ;; |
| | | + -pnacl*) |
| | | + os=-pnacl |
| | | + ;; |
| | | -nto-qnx*) |
| | | ;; |
| | | -nto*) |
| | | @@ -1459,6 +1482,9 @@ |
| | | -os400*) |
| | | os=-os400 |
| | | ;; |
| | | + -cegcc*) |
| | | + os=-cegcc |
| | | + ;; |
| | | -wince*) |
| | | os=-wince |
| | | ;; |
| | | @@ -1548,9 +1574,15 @@ |
| | | os=-dicos |
| | | ;; |
| | | -nacl*) |
| | | + os=-nacl |
| | | + ;; |
| | | + -pnacl*) |
| | | + os=-pnacl |
| | | ;; |
| | | -ios) |
| | | ;; |
| | | + -emscripten*) |
| | | + ;; |
| | | -none) |
| | | ;; |
| | | *) |
| | |
| | | #!/bin/bash |
| | | |
| | | SDKDIR="/emsdk_portable" |
| | | if [ -z "$SDKDIR" ]; then |
| | | SDKDIR="/emsdk_portable" |
| | | fi |
| | | |
| | | ENVSCRIPT="$SDKDIR/emsdk_env.sh" |
| | | if [ ! -f "$ENVSCRIPT" ]; then |
| | | echo "ERROR: This script expects the Emscripten SDK to be in '$SDKDIR'." 1>&2 |
| | | echo "ERROR: Set the \$SDKDIR environment variable to override this." 1>&2 |
| | | exit 1 |
| | | fi |
| | | |
| | |
| | | pushd buildbot |
| | | |
| | | echo "Configuring..." |
| | | emconfigure ../configure --host=asmjs-unknown-emscripten --disable-assembly --disable-threads --enable-cpuinfo=false CFLAGS="-O2 -Wno-warn-absolute-paths -Wdeclaration-after-statement -Werror=declaration-after-statement" --prefix="$PWD/emscripten-sdl2-installed" || exit $? |
| | | emconfigure ../configure --host=asmjs-unknown-emscripten --disable-assembly --disable-threads --disable-cpuinfo CFLAGS="-O2 -Wno-warn-absolute-paths -Wdeclaration-after-statement -Werror=declaration-after-statement" --prefix="$PWD/emscripten-sdl2-installed" || exit $? |
| | | |
| | | echo "Building..." |
| | | emmake $MAKE || exit $? |
| | |
| | | #!/bin/sh |
| | | # |
| | | # Build a fat binary for iOS |
| | | # Based on fatbuild.sh and code from the Ignifuga Game Engine |
| | | |
| | | # Number of CPUs (for make -j) |
| | | NCPU=`sysctl -n hw.ncpu` |
| | |
| | | NJOB=$NCPU |
| | | fi |
| | | |
| | | # SDK path |
| | | XCODE_PATH=`xcode-select --print-path` |
| | | if [ -z "$XCODE_PATH" ]; then |
| | | echo "Could not find XCode location (use xcode-select -switch to set the correct path)" |
| | | exit 1 |
| | | fi |
| | | |
| | | prepare_environment() { |
| | | ARCH=$1 |
| | | |
| | | if test x$SDK_VERSION = x; then |
| | | export SDK_VERSION=`xcodebuild -showsdks | grep iphoneos | sed "s|.*iphoneos||"` |
| | | if [ -z "$XCODE_PATH" ]; then |
| | | echo "Could not find a valid iOS SDK" |
| | | exit 1 |
| | | fi |
| | | fi |
| | | |
| | | case $ARCH in |
| | | armv6) |
| | | DEV_PATH="$XCODE_PATH/Platforms/iPhoneOS.platform/Developer" |
| | | SDK_PATH="$DEV_PATH/SDKs/iPhoneOS$SDK_VERSION.sdk" |
| | | ;; |
| | | armv7) |
| | | DEV_PATH="$XCODE_PATH/Platforms/iPhoneOS.platform/Developer" |
| | | SDK_PATH="$DEV_PATH/SDKs/iPhoneOS$SDK_VERSION.sdk" |
| | | ;; |
| | | i386) |
| | | DEV_PATH="$XCODE_PATH/Platforms/iPhoneSimulator.platform/Developer" |
| | | SDK_PATH="$DEV_PATH/SDKs/iPhoneSimulator$SDK_VERSION.sdk" |
| | | ;; |
| | | *) |
| | | echo "Unknown Architecture $ARCH" |
| | | exit 1 |
| | | ;; |
| | | esac |
| | | |
| | | if [ ! -d "$SDK_PATH" ]; then |
| | | echo "Could not find iOS SDK at $SDK_PATH" |
| | | exit 1 |
| | | fi |
| | | |
| | | if test x$MIN_OS_VERSION = x; then |
| | | export MIN_OS_VERSION="3.0" |
| | | fi |
| | | |
| | | # Environment flags |
| | | CFLAGS="-g -O2 -pipe -no-cpp-precomp -isysroot $SDK_PATH \ |
| | | -miphoneos-version-min=$MIN_OS_VERSION -I$SDK_PATH/usr/include/" |
| | | LDFLAGS="-L$SDK_PATH/usr/lib/ -isysroot $SDK_PATH \ |
| | | -miphoneos-version-min=$MIN_OS_VERSION -static-libgcc" |
| | | export CXXFLAGS="$CFLAGS" |
| | | export CXXCPP="$DEV_PATH/usr/bin/llvm-cpp-4.2" |
| | | export CPP="$CXXCPP" |
| | | export CXX="$DEV_PATH/usr/bin/llvm-g++-4.2" |
| | | export CC="$DEV_PATH/usr/bin/llvm-gcc-4.2" |
| | | export LD="$DEV_PATH/usr/bin/ld" |
| | | export AR="$DEV_PATH/usr/bin/ar" |
| | | export AS="$DEV_PATH/usr/bin/ls" |
| | | export NM="$DEV_PATH/usr/bin/nm" |
| | | export RANLIB="$DEV_PATH/usr/bin/ranlib" |
| | | export STRIP="$DEV_PATH/usr/bin/strip" |
| | | |
| | | # We dynamically load X11, so using the system X11 headers is fine. |
| | | CONFIG_FLAGS="--disable-shared --enable-static" |
| | | |
| | | case $ARCH in |
| | | armv6) |
| | | export CONFIG_FLAGS="$CONFIG_FLAGS --host=armv6-apple-darwin" |
| | | export CFLAGS="$CFLAGS -arch armv6" |
| | | export LDFLAGS="$LDFLAGS -arch armv6" |
| | | ;; |
| | | armv7) |
| | | export CONFIG_FLAGS="$CONFIG_FLAGS --host=armv7-apple-darwin" |
| | | export CFLAGS="$CFLAGS -arch armv7" |
| | | export LDFLAGS="$LDFLAGS -arch armv7" |
| | | ;; |
| | | i386) |
| | | export CONFIG_FLAGS="$CONFIG_FLAGS --host=i386-apple-darwin" |
| | | export CFLAGS="$CFLAGS -arch i386" |
| | | export LDFLAGS="$LDFLAGS -arch i386" |
| | | ;; |
| | | *) |
| | | echo "Unknown Architecture $ARCH" |
| | | exit 1 |
| | | ;; |
| | | esac |
| | | } |
| | | |
| | | prepare_environment "armv6" |
| | | echo "Building with iOS SDK v$SDK_VERSION for iOS >= $MIN_OS_VERSION" |
| | | |
| | | # |
| | | # Find the configure script |
| | | # |
| | | srcdir=`dirname $0`/.. |
| | | srcdir=`cd $srcdir && pwd` |
| | | auxdir=$srcdir/build-scripts |
| | | cd $srcdir |
| | | |
| | | # |
| | | # Figure out which phase to build: |
| | | # all, |
| | | # configure, configure-armv6, configure-armv7, configure-i386 |
| | | # make, make-armv6, make-armv7, make-i386, merge |
| | | # clean |
| | | if test x"$1" = x; then |
| | | phase=all |
| | | SRC_DIR=$(cd `dirname $0`/..; pwd) |
| | | if [ "$PWD" = "$SRC_DIR" ]; then |
| | | PREFIX=$SRC_DIR/ios-build |
| | | mkdir $PREFIX |
| | | else |
| | | phase="$1" |
| | | fi |
| | | case $phase in |
| | | all) |
| | | configure_armv6="yes" |
| | | configure_armv7="yes" |
| | | configure_i386="yes" |
| | | make_armv6="yes" |
| | | make_armv7="yes" |
| | | make_i386="yes" |
| | | merge="yes" |
| | | ;; |
| | | configure) |
| | | configure_armv6="yes" |
| | | configure_armv7="yes" |
| | | configure_i386="yes" |
| | | ;; |
| | | configure-armv6) |
| | | configure_armv6="yes" |
| | | ;; |
| | | configure-armv7) |
| | | configure_armv7="yes" |
| | | ;; |
| | | configure-i386) |
| | | configure_i386="yes" |
| | | ;; |
| | | make) |
| | | make_armv6="yes" |
| | | make_armv7="yes" |
| | | make_i386="yes" |
| | | merge="yes" |
| | | ;; |
| | | make-armv6) |
| | | make_armv6="yes" |
| | | ;; |
| | | make-armv7) |
| | | make_armv7="yes" |
| | | ;; |
| | | make-i386) |
| | | make_i386="yes" |
| | | ;; |
| | | merge) |
| | | merge="yes" |
| | | ;; |
| | | clean) |
| | | clean_armv6="yes" |
| | | clean_armv7="yes" |
| | | clean_i386="yes" |
| | | ;; |
| | | clean-armv6) |
| | | clean_armv6="yes" |
| | | ;; |
| | | clean-armv7) |
| | | clean_armv7="yes" |
| | | ;; |
| | | clean-i386) |
| | | clean_i386="yes" |
| | | ;; |
| | | *) |
| | | echo "Usage: $0 [all|configure[-armv6|-armv7|-i386]|make[-armv6|-armv7|-i386]|merge|clean[-armv6|-armv7|-i386]]" |
| | | exit 1 |
| | | ;; |
| | | esac |
| | | |
| | | # |
| | | # Create the build directories |
| | | # |
| | | for dir in build build/armv6 build/armv7 build/i386; do |
| | | if test -d $dir; then |
| | | : |
| | | else |
| | | mkdir $dir || exit 1 |
| | | fi |
| | | done |
| | | |
| | | # |
| | | # Build the armv6 binary |
| | | # |
| | | prepare_environment "armv6" |
| | | if test x$configure_armv6 = xyes; then |
| | | (cd build/armv6 && \ |
| | | sh ../../configure $CONFIG_FLAGS CC="$CC" CXX="$CXX" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS") || exit 2 |
| | | # configure is not yet fully ready for iOS, some manual patching is required |
| | | cp include/* build/armv6/include |
| | | cp include/SDL_config_iphoneos.h build/armv6/include/SDL_config.h || exit 2 |
| | | sed -i "" -e "s|^EXTRA_CFLAGS.*|EXTRA_CFLAGS=-I./include|g" build/armv6/Makefile || exit 2 |
| | | sed -i "" -e "s|^EXTRA_LDFLAGS.*|EXTRA_LDFLAGS=-lm|g" build/armv6/Makefile || exit 2 |
| | | fi |
| | | if test x$make_armv6 = xyes; then |
| | | (cd build/armv6 && make -j$NJOB) || exit 3 |
| | | fi |
| | | # |
| | | # Build the armv7 binary |
| | | # |
| | | prepare_environment "armv7" |
| | | if test x$configure_armv7 = xyes; then |
| | | (cd build/armv7 && \ |
| | | sh ../../configure $CONFIG_FLAGS CC="$CC" CXX="$CXX" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS") || exit 2 |
| | | # configure is not yet fully ready for iOS, some manual patching is required |
| | | cp include/* build/armv7/include |
| | | cp include/SDL_config_iphoneos.h build/armv7/include/SDL_config.h || exit 2 |
| | | sed -i "" -e "s|^EXTRA_CFLAGS.*|EXTRA_CFLAGS=-I./include|g" build/armv7/Makefile || exit 2 |
| | | sed -i "" -e "s|^EXTRA_LDFLAGS.*|EXTRA_LDFLAGS=-lm|g" build/armv7/Makefile || exit 2 |
| | | fi |
| | | if test x$make_armv7 = xyes; then |
| | | (cd build/armv7 && make -j$NJOB) || exit 3 |
| | | fi |
| | | # |
| | | # Build the i386 binary |
| | | # |
| | | prepare_environment "i386" |
| | | if test x$configure_i386 = xyes; then |
| | | (cd build/i386 && \ |
| | | sh ../../configure $CONFIG_FLAGS CC="$CC" CXX="$CXX" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS") || exit 2 |
| | | # configure is not yet fully ready for iOS, some manual patching is required |
| | | cp include/* build/i386/include |
| | | cp include/SDL_config_iphoneos.h build/i386/include/SDL_config.h || exit 2 |
| | | sed -i "" -e "s|^EXTRA_CFLAGS.*|EXTRA_CFLAGS=-I./include|g" build/i386/Makefile || exit 2 |
| | | sed -i "" -e "s|^EXTRA_LDFLAGS.*|EXTRA_LDFLAGS=-lm|g" build/i386/Makefile || exit 2 |
| | | fi |
| | | if test x$make_i386 = xyes; then |
| | | (cd build/i386 && make -j$NJOB) || exit 3 |
| | | PREFIX=$PWD |
| | | fi |
| | | |
| | | # |
| | | # Combine into fat binary |
| | | # |
| | | if test x$merge = xyes; then |
| | | output=ios/lib |
| | | sh $auxdir/mkinstalldirs build/$output |
| | | cd build |
| | | target=`find . -mindepth 4 -maxdepth 4 -type f -name '*.dylib' | head -1 | sed 's|.*/||'` |
| | | (lipo -create -o $output/libSDL2.a armv6/build/.libs/libSDL2.a armv7/build/.libs/libSDL2.a i386/build/.libs/libSDL2.a && |
| | | lipo -create -o $output/libSDL2main.a armv6/build/libSDL2main.a armv7/build/libSDL2main.a i386/build/libSDL2main.a && |
| | | cp -r armv6/include ios |
| | | echo "Build complete!" && |
| | | echo "Files can be found under the build/ios directory.") || exit 4 |
| | | cd .. |
| | | BUILD_I386_IOSSIM=YES |
| | | BUILD_X86_64_IOSSIM=YES |
| | | |
| | | BUILD_IOS_ARMV7=YES |
| | | BUILD_IOS_ARMV7S=YES |
| | | BUILD_IOS_ARM64=YES |
| | | |
| | | # 13.4.0 - Mavericks |
| | | # 14.0.0 - Yosemite |
| | | # 15.0.0 - El Capitan |
| | | DARWIN=darwin15.0.0 |
| | | |
| | | XCODEDIR=`xcode-select --print-path` |
| | | IOS_SDK_VERSION=`xcrun --sdk iphoneos --show-sdk-version` |
| | | MIN_SDK_VERSION=6.0 |
| | | |
| | | IPHONEOS_PLATFORM=`xcrun --sdk iphoneos --show-sdk-platform-path` |
| | | IPHONEOS_SYSROOT=`xcrun --sdk iphoneos --show-sdk-path` |
| | | |
| | | IPHONESIMULATOR_PLATFORM=`xcrun --sdk iphonesimulator --show-sdk-platform-path` |
| | | IPHONESIMULATOR_SYSROOT=`xcrun --sdk iphonesimulator --show-sdk-path` |
| | | |
| | | # Uncomment if you want to see more information about each invocation |
| | | # of clang as the builds proceed. |
| | | # CLANG_VERBOSE="--verbose" |
| | | |
| | | CC=clang |
| | | CXX=clang |
| | | |
| | | SILENCED_WARNINGS="-Wno-unused-local-typedef -Wno-unused-function" |
| | | |
| | | CFLAGS="${CLANG_VERBOSE} ${SILENCED_WARNINGS} -DNDEBUG -g -O0 -pipe -fPIC -fobjc-arc" |
| | | |
| | | echo "PREFIX ..................... ${PREFIX}" |
| | | echo "BUILD_MACOSX_X86_64 ........ ${BUILD_MACOSX_X86_64}" |
| | | echo "BUILD_I386_IOSSIM .......... ${BUILD_I386_IOSSIM}" |
| | | echo "BUILD_X86_64_IOSSIM ........ ${BUILD_X86_64_IOSSIM}" |
| | | echo "BUILD_IOS_ARMV7 ............ ${BUILD_IOS_ARMV7}" |
| | | echo "BUILD_IOS_ARMV7S ........... ${BUILD_IOS_ARMV7S}" |
| | | echo "BUILD_IOS_ARM64 ............ ${BUILD_IOS_ARM64}" |
| | | echo "DARWIN ..................... ${DARWIN}" |
| | | echo "XCODEDIR ................... ${XCODEDIR}" |
| | | echo "IOS_SDK_VERSION ............ ${IOS_SDK_VERSION}" |
| | | echo "MIN_SDK_VERSION ............ ${MIN_SDK_VERSION}" |
| | | echo "IPHONEOS_PLATFORM .......... ${IPHONEOS_PLATFORM}" |
| | | echo "IPHONEOS_SYSROOT ........... ${IPHONEOS_SYSROOT}" |
| | | echo "IPHONESIMULATOR_PLATFORM ... ${IPHONESIMULATOR_PLATFORM}" |
| | | echo "IPHONESIMULATOR_SYSROOT .... ${IPHONESIMULATOR_SYSROOT}" |
| | | echo "CC ......................... ${CC}" |
| | | echo "CFLAGS ..................... ${CFLAGS}" |
| | | echo "CXX ........................ ${CXX}" |
| | | echo "CXXFLAGS ................... ${CXXFLAGS}" |
| | | echo "LDFLAGS .................... ${LDFLAGS}" |
| | | |
| | | ################################################################### |
| | | # This section contains the build commands for each of the |
| | | # architectures that will be included in the universal binaries. |
| | | ################################################################### |
| | | |
| | | echo "$(tput setaf 2)" |
| | | echo "###########################" |
| | | echo "# i386 for iPhone Simulator" |
| | | echo "###########################" |
| | | echo "$(tput sgr0)" |
| | | |
| | | if [ "${BUILD_I386_IOSSIM}" == "YES" ] |
| | | then |
| | | ( |
| | | cd ${PREFIX} |
| | | make clean |
| | | ../configure --build=x86_64-apple-${DARWIN} --host=i386-ios-${DARWIN} --disable-shared --prefix=${PREFIX}/platform/i386-sim "CC=${CC}" "CFLAGS=${CFLAGS} -mios-simulator-version-min=${MIN_SDK_VERSION} -arch i386 -isysroot ${IPHONESIMULATOR_SYSROOT}" "CXX=${CXX}" "CXXFLAGS=${CXXFLAGS} -mios-simulator-version-min=${MIN_SDK_VERSION} -arch i386 -isysroot ${IPHONESIMULATOR_SYSROOT}" LDFLAGS="-arch i386 -mios-simulator-version-min=${MIN_SDK_VERSION} ${LDFLAGS} -L${IPHONESIMULATOR_SYSROOT}/usr/lib/ -L${IPHONESIMULATOR_SYSROOT}/usr/lib/system" || exit 2 |
| | | cp $SRC_DIR/include/SDL_config_iphoneos.h include/SDL_config.h |
| | | make -j10 || exit 3 |
| | | make install |
| | | ) || exit $? |
| | | fi |
| | | |
| | | # |
| | | # Clean up |
| | | # |
| | | do_clean() |
| | | { |
| | | echo $* |
| | | $* || exit 6 |
| | | } |
| | | if test x$clean_armv6 = xyes; then |
| | | do_clean rm -r build/armv6 |
| | | echo "$(tput setaf 2)" |
| | | echo "#############################" |
| | | echo "# x86_64 for iPhone Simulator" |
| | | echo "#############################" |
| | | echo "$(tput sgr0)" |
| | | |
| | | if [ "${BUILD_X86_64_IOSSIM}" == "YES" ] |
| | | then |
| | | ( |
| | | cd ${PREFIX} |
| | | make clean |
| | | ../configure --build=x86_64-apple-${DARWIN} --host=x86_64-ios-${DARWIN} --disable-shared --prefix=${PREFIX}/platform/x86_64-sim "CC=${CC}" "CFLAGS=${CFLAGS} -mios-simulator-version-min=${MIN_SDK_VERSION} -arch x86_64 -isysroot ${IPHONESIMULATOR_SYSROOT}" "CXX=${CXX}" "CXXFLAGS=${CXXFLAGS} -mios-simulator-version-min=${MIN_SDK_VERSION} -arch x86_64 -isysroot ${IPHONESIMULATOR_SYSROOT}" LDFLAGS="-arch x86_64 -mios-simulator-version-min=${MIN_SDK_VERSION} ${LDFLAGS} -L${IPHONESIMULATOR_SYSROOT}/usr/lib/ -L${IPHONESIMULATOR_SYSROOT}/usr/lib/system" || exit 2 |
| | | cp $SRC_DIR/include/SDL_config_iphoneos.h include/SDL_config.h |
| | | make -j$NJOB || exit 3 |
| | | make install |
| | | ) || exit $? |
| | | fi |
| | | if test x$clean_armv7 = xyes; then |
| | | do_clean rm -r build/armv7 |
| | | |
| | | echo "$(tput setaf 2)" |
| | | echo "##################" |
| | | echo "# armv7 for iPhone" |
| | | echo "##################" |
| | | echo "$(tput sgr0)" |
| | | |
| | | if [ "${BUILD_IOS_ARMV7}" == "YES" ] |
| | | then |
| | | ( |
| | | cd ${PREFIX} |
| | | make clean |
| | | ../configure --build=x86_64-apple-${DARWIN} --host=armv7-ios-${DARWIN} --disable-shared --prefix=${PREFIX}/platform/armv7-ios "CC=${CC}" "CFLAGS=${CFLAGS} -miphoneos-version-min=${MIN_SDK_VERSION} -arch armv7 -isysroot ${IPHONEOS_SYSROOT}" "CXX=${CXX}" "CXXFLAGS=${CXXFLAGS} -arch armv7 -isysroot ${IPHONEOS_SYSROOT}" LDFLAGS="-arch armv7 -miphoneos-version-min=${MIN_SDK_VERSION} ${LDFLAGS}" || exit 2 |
| | | cp $SRC_DIR/include/SDL_config_iphoneos.h include/SDL_config.h |
| | | make -j$NJOB || exit 3 |
| | | make install |
| | | ) || exit $? |
| | | fi |
| | | if test x$clean_i386 = xyes; then |
| | | do_clean rm -r build/i386 |
| | | |
| | | echo "$(tput setaf 2)" |
| | | echo "###################" |
| | | echo "# armv7s for iPhone" |
| | | echo "###################" |
| | | echo "$(tput sgr0)" |
| | | |
| | | if [ "${BUILD_IOS_ARMV7S}" == "YES" ] |
| | | then |
| | | ( |
| | | cd ${PREFIX} |
| | | make clean |
| | | ../configure --build=x86_64-apple-${DARWIN} --host=armv7s-ios-${DARWIN} --disable-shared --prefix=${PREFIX}/platform/armv7s-ios "CC=${CC}" "CFLAGS=${CFLAGS} -miphoneos-version-min=${MIN_SDK_VERSION} -arch armv7s -isysroot ${IPHONEOS_SYSROOT}" "CXX=${CXX}" "CXXFLAGS=${CXXFLAGS} -miphoneos-version-min=${MIN_SDK_VERSION} -arch armv7s -isysroot ${IPHONEOS_SYSROOT}" LDFLAGS="-arch armv7s -miphoneos-version-min=${MIN_SDK_VERSION} ${LDFLAGS}" || exit 2 |
| | | cp $SRC_DIR/include/SDL_config_iphoneos.h include/SDL_config.h |
| | | make -j$NJOB || exit 3 |
| | | make install |
| | | ) || exit $? |
| | | fi |
| | | |
| | | echo "$(tput setaf 2)" |
| | | echo "##################" |
| | | echo "# arm64 for iPhone" |
| | | echo "##################" |
| | | echo "$(tput sgr0)" |
| | | |
| | | if [ "${BUILD_IOS_ARM64}" == "YES" ] |
| | | then |
| | | ( |
| | | cd ${PREFIX} |
| | | make clean |
| | | ../configure --build=x86_64-apple-${DARWIN} --host=arm-ios-${DARWIN} --disable-shared --prefix=${PREFIX}/platform/arm64-ios "CC=${CC}" "CFLAGS=${CFLAGS} -miphoneos-version-min=${MIN_SDK_VERSION} -arch arm64 -isysroot ${IPHONEOS_SYSROOT}" "CXX=${CXX}" "CXXFLAGS=${CXXFLAGS} -miphoneos-version-min=${MIN_SDK_VERSION} -arch arm64 -isysroot ${IPHONEOS_SYSROOT}" LDFLAGS="-arch arm64 -miphoneos-version-min=${MIN_SDK_VERSION} ${LDFLAGS}" || exit 2 |
| | | cp $SRC_DIR/include/SDL_config_iphoneos.h include/SDL_config.h |
| | | make -j$NJOB || exit 3 |
| | | make install |
| | | ) || exit $? |
| | | fi |
| | | |
| | | echo "$(tput setaf 2)" |
| | | echo "###################################################################" |
| | | echo "# Create Universal Libraries and Finalize the packaging" |
| | | echo "###################################################################" |
| | | echo "$(tput sgr0)" |
| | | |
| | | ( |
| | | cd ${PREFIX}/platform |
| | | mkdir -p universal |
| | | lipo x86_64-sim/lib/libSDL2.a i386-sim/lib/libSDL2.a arm64-ios/lib/libSDL2.a armv7s-ios/lib/libSDL2.a armv7-ios/lib/libSDL2.a -create -output universal/libSDL2.a |
| | | ) |
| | | |
| | | ( |
| | | cd ${PREFIX} |
| | | mkdir -p lib |
| | | cp -r platform/universal/* lib |
| | | #rm -rf platform |
| | | lipo -info lib/libSDL2.a |
| | | ) |
| | | |
| | | echo Done! |
| | |
| | | # to NONDIR_REPLACEMENT. |
| | | # value returned in "$func_dirname_result" |
| | | # basename: Compute filename of FILE. |
| | | # value retuned in "$func_basename_result" |
| | | # value returned in "$func_basename_result" |
| | | # Implementation must be kept synchronized with func_dirname |
| | | # and func_basename. For efficiency, we do not delegate to |
| | | # those functions but instead duplicate the functionality here. |
| | |
| | | |
| | | /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ |
| | | #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) |
| | | /* DATA imports from DLLs on WIN32 con't be const, because runtime |
| | | /* DATA imports from DLLs on WIN32 can't be const, because runtime |
| | | relocations are performed -- see ld's documentation on pseudo-relocs. */ |
| | | # define LT_DLSYM_CONST |
| | | #elif defined(__osf__) |
| | |
| | | { |
| | | /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX |
| | | namespace, but it is not one of the ones we know about and |
| | | have already dealt with, above (inluding dump-script), then |
| | | have already dealt with, above (including dump-script), then |
| | | report an error. Otherwise, targets might begin to believe |
| | | they are allowed to use options in the LTWRAPPER_OPTION_PREFIX |
| | | namespace. The first time any user complains about this, we'll |
| | |
| | | # This is the script buildbot.libsdl.org uses to cross-compile SDL2 from |
| | | # amd64 Linux to NaCl. |
| | | |
| | | export NACL_SDK_ROOT="/nacl_sdk/pepper_35" |
| | | # PLEASE NOTE that we have reports that SDL built with pepper_49 (current |
| | | # stable release as of November 10th, 2016) is broken. Please retest |
| | | # when something newer becomes stable and then decide if this was SDL's |
| | | # bug or NaCl's bug. --ryan. |
| | | export NACL_SDK_ROOT="/nacl_sdk/pepper_47" |
| | | |
| | | TARBALL="$1" |
| | | if [ -z $1 ]; then |
| | |
| | | |
| | | find . -type f -exec grep -Il "Copyright" {} \; \ |
| | | | grep -v \.hg \ |
| | | | while read i; \ |
| | | | while read file; \ |
| | | do \ |
| | | LC_ALL=C sed -ie "s/\(.*Copyright.*\)[0-9]\{4\}\( *Sam Lantinga\)/\1`date +%Y`\2/" "$i"; \ |
| | | rm "${i}e"; \ |
| | | LC_ALL=C sed -b -i "s/\(.*Copyright.*\)[0-9]\{4\}\( *Sam Lantinga\)/\1`date +%Y`\2/" "$file"; \ |
| | | done |
| | |
| | | rem usage: windows-buildbot-zipper.bat <zipfilename>
|
| | | rem must be run from root of SDL source tree.
|
| | |
|
| | | IF EXIST VisualC\Win32\Release GOTO okaydir
|
| | | IF EXIST VisualC\Win32\Release GOTO okaywin32dir
|
| | | echo Please run from root of source tree after doing a Release build.
|
| | | GOTO done
|
| | |
|
| | | :okaydir
|
| | | :okaywin32dir
|
| | | IF EXIST VisualC\x64\Release GOTO okaydirs
|
| | | echo Please run from root of source tree after doing a Release build.
|
| | | GOTO done
|
| | |
|
| | | :okaydirs
|
| | | erase /q /f /s zipper
|
| | | IF EXIST zipper GOTO zippermade
|
| | | mkdir zipper
|
| | |
| | | mkdir include
|
| | | mkdir lib
|
| | | mkdir lib\win32
|
| | | mkdir lib\win64
|
| | | copy ..\..\include\*.h include\
|
| | | copy ..\..\VisualC\Win32\Release\SDL2.dll lib\win32\
|
| | | copy ..\..\VisualC\Win32\Release\SDL2.lib lib\win32\
|
| | | copy ..\..\VisualC\Win32\Release\SDL2main.lib lib\win32\
|
| | | copy ..\..\VisualC\x64\Release\SDL2.dll lib\win64\
|
| | | copy ..\..\VisualC\x64\Release\SDL2.lib lib\win64\
|
| | | copy ..\..\VisualC\x64\Release\SDL2main.lib lib\win64\
|
| | | cd ..
|
| | | zip -9r ..\%1 SDL
|
| | | cd ..
|
| | |
| | | #
|
| | |
|
| | | # Base version of SDL, used for packaging purposes
|
| | | $SDLVersion = "2.0.4"
|
| | | $SDLVersion = "2.0.7"
|
| | |
|
| | | # Gets the .bat file that sets up an MSBuild environment, given one of
|
| | | # Visual Studio's, "PlatformToolset"s.
|
| | |
| | | $DidAnyDLLBuildFail = $false
|
| | | $DidAnyNugetBuildFail = $false
|
| | |
|
| | | # Ryan disabled WP8.0, because it doesn't appear to have mmdeviceapi.h that SDL_wasapi needs.
|
| | | # My assumption is that no one will miss this, but send patches otherwise! --ryan.
|
| | | # Build for Windows Phone 8.0, via VC++ 2012:
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v110_wp80" "ARM")) { $DidAnyDLLBuildFail = $true }
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v110_wp80" "Win32")) { $DidAnyDLLBuildFail = $true }
|
| | | #if ( ! (Build-SDL-WinRT-Variant "SDL" "v110_wp80" "ARM")) { $DidAnyDLLBuildFail = $true }
|
| | | #if ( ! (Build-SDL-WinRT-Variant "SDL" "v110_wp80" "Win32")) { $DidAnyDLLBuildFail = $true }
|
| | |
|
| | | # Build for Windows Phone 8.1, via VC++ 2013:
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v120_wp81" "ARM")) { $DidAnyDLLBuildFail = $true }
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v120_wp81" "Win32")) { $DidAnyDLLBuildFail = $true }
|
| | |
|
| | | # Build for Windows 8.0 and Windows RT 8.0, via VC++ 2012:
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v110" "ARM")) { $DidAnyDLLBuildFail = $true }
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v110" "Win32")) { $DidAnyDLLBuildFail = $true }
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v110" "x64")) { $DidAnyDLLBuildFail = $true }
|
| | | #
|
| | | # Win 8.0 auto-building was disabled on 2017-Feb-25, by David Ludwig <dludwig@pobox.com>.
|
| | | # Steam's OS-usage surveys indicate that Windows 8.0 use is pretty much nil, plus
|
| | | # Microsoft hasn't supported Windows 8.0 development for a few years now.
|
| | | # The commented-out lines below may still work on some systems, though.
|
| | | # |
| | | #if ( ! (Build-SDL-WinRT-Variant "SDL" "v110" "ARM")) { $DidAnyDLLBuildFail = $true }
|
| | | #if ( ! (Build-SDL-WinRT-Variant "SDL" "v110" "Win32")) { $DidAnyDLLBuildFail = $true }
|
| | | #if ( ! (Build-SDL-WinRT-Variant "SDL" "v110" "x64")) { $DidAnyDLLBuildFail = $true }
|
| | |
|
| | | # Build for Windows 8.1 and Windows RT 8.1, via VC++ 2013:
|
| | | if ( ! (Build-SDL-WinRT-Variant "SDL" "v120" "ARM")) { $DidAnyDLLBuildFail = $true }
|
| | |
| | | # Requires: |
| | | # - PkgCheckModules |
| | | # Optional: |
| | | # - JACK_SHARED opt |
| | | # - HAVE_DLOPEN opt |
| | | macro(CheckJACK) |
| | | if(JACK) |
| | | pkg_check_modules(PKG_JACK jack) |
| | | if(PKG_JACK_FOUND) |
| | | set(HAVE_JACK TRUE) |
| | | file(GLOB JACK_SOURCES ${SDL2_SOURCE_DIR}/src/audio/jack/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${JACK_SOURCES}) |
| | | set(SDL_AUDIO_DRIVER_JACK 1) |
| | | list(APPEND EXTRA_CFLAGS ${PKG_JACK_CFLAGS}) |
| | | if(JACK_SHARED) |
| | | if(NOT HAVE_DLOPEN) |
| | | message_warn("You must have SDL_LoadObject() support for dynamic JACK audio loading") |
| | | else() |
| | | FindLibraryAndSONAME("jack") |
| | | set(SDL_AUDIO_DRIVER_JACK_DYNAMIC "\"${JACK_LIB_SONAME}\"") |
| | | set(HAVE_JACK_SHARED TRUE) |
| | | endif() |
| | | else() |
| | | list(APPEND EXTRA_LDFLAGS ${PKG_JACK_LDFLAGS}) |
| | | endif() |
| | | set(HAVE_SDL_AUDIO TRUE) |
| | | endif() |
| | | endif() |
| | | endmacro() |
| | | |
| | | # Requires: |
| | | # - PkgCheckModules |
| | | # Optional: |
| | | # - ESD_SHARED opt |
| | | # - HAVE_DLOPEN opt |
| | | macro(CheckESD) |
| | |
| | | list(APPEND EXTRA_LDFLAGS ${PKG_FUSIONSOUND_LDFLAGS}) |
| | | endif() |
| | | set(HAVE_SDL_AUDIO TRUE) |
| | | endif() |
| | | endif() |
| | | endmacro() |
| | | |
| | | # Requires: |
| | | # - LIBSAMPLERATE |
| | | # Optional: |
| | | # - LIBSAMPLERATE_SHARED opt |
| | | # - HAVE_DLOPEN opt |
| | | macro(CheckLibSampleRate) |
| | | if(LIBSAMPLERATE) |
| | | check_include_file(samplerate.h HAVE_LIBSAMPLERATE_H) |
| | | if(HAVE_LIBSAMPLERATE_H) |
| | | set(HAVE_LIBSAMPLERATE TRUE) |
| | | if(LIBSAMPLERATE_SHARED) |
| | | if(NOT HAVE_DLOPEN) |
| | | message_warn("You must have SDL_LoadObject() support for dynamic libsamplerate loading") |
| | | else() |
| | | FindLibraryAndSONAME("samplerate") |
| | | set(SDL_LIBSAMPLERATE_DYNAMIC "\"${SAMPLERATE_LIB_SONAME}\"") |
| | | set(HAVE_LIBSAMPLERATE_SHARED TRUE) |
| | | endif() |
| | | else() |
| | | list(APPEND EXTRA_LDFLAGS -lsamplerate) |
| | | endif() |
| | | endif() |
| | | endif() |
| | | endmacro() |
| | |
| | | macro(CheckMir) |
| | | if(VIDEO_MIR) |
| | | find_library(MIR_LIB mirclient mircommon egl) |
| | | pkg_check_modules(MIR_TOOLKIT mirclient mircommon) |
| | | pkg_check_modules(MIR_TOOLKIT mirclient>=0.26 mircommon) |
| | | pkg_check_modules(EGL egl) |
| | | pkg_check_modules(XKB xkbcommon) |
| | | |
| | |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${MIR_SOURCES}) |
| | | set(SDL_VIDEO_DRIVER_MIR 1) |
| | | |
| | | list(APPEND EXTRA_CFLAGS ${MIR_TOOLKIT_CFLAGS} ${EGL_CLFAGS} ${XKB_CLFLAGS}) |
| | | list(APPEND EXTRA_CFLAGS ${MIR_TOOLKIT_CFLAGS} ${EGL_CFLAGS} ${XKB_CFLAGS}) |
| | | |
| | | if(MIR_SHARED) |
| | | if(NOT HAVE_DLOPEN) |
| | |
| | | ARGS code "${_XML}" "${_WAYLAND_PROT_C_CODE}" |
| | | ) |
| | | |
| | | set(SOURCE_FILES ${SOURCE_FILES} "${CMAKE_CURRENT_BINARY_DIR}/wayland-generated-protocols/${_PROTL}-protocol.c") |
| | | set(SOURCE_FILES ${SOURCE_FILES} "${_WAYLAND_PROT_C_CODE}") |
| | | endmacro() |
| | | |
| | | # Requires: |
| | |
| | | |
| | | WaylandProtocolGen("${WAYLAND_SCANNER}" "${WAYLAND_CORE_PROTOCOL_DIR}/wayland.xml" "wayland") |
| | | |
| | | foreach(_PROTL relative-pointer-unstable-v1 pointer-constraints-unstable-v1) |
| | | foreach(_PROTL relative-pointer-unstable-v1 pointer-constraints-unstable-v1 xdg-shell-unstable-v6) |
| | | string(REGEX REPLACE "\\-unstable\\-.*$" "" PROTSUBDIR ${_PROTL}) |
| | | WaylandProtocolGen("${WAYLAND_SCANNER}" "${WAYLAND_PROTOCOLS_DIR}/unstable/${PROTSUBDIR}/${_PROTL}.xml" "${_PROTL}") |
| | | endforeach() |
| | |
| | | # PTHREAD_LIBS |
| | | macro(CheckPTHREAD) |
| | | if(PTHREADS) |
| | | if(LINUX) |
| | | if(ANDROID) |
| | | # the android libc provides built-in support for pthreads, so no |
| | | # additional linking or compile flags are necessary |
| | | elseif(LINUX) |
| | | set(PTHREAD_CFLAGS "-D_REENTRANT") |
| | | set(PTHREAD_LDFLAGS "-pthread") |
| | | elseif(BSDI) |
| | |
| | | #include <pthread.h> |
| | | int main(int argc, char **argv) { |
| | | pthread_mutexattr_t attr; |
| | | pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); |
| | | pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP); |
| | | return 0; |
| | | }" HAVE_RECURSIVE_MUTEXES_NP) |
| | | if(HAVE_RECURSIVE_MUTEXES_NP) |
| | |
| | | int main(int argc, char** argv) { return 0; }" HAVE_PTHREAD_NP_H) |
| | | check_function_exists(pthread_setname_np HAVE_PTHREAD_SETNAME_NP) |
| | | check_function_exists(pthread_set_name_np HAVE_PTHREAD_SET_NAME_NP) |
| | | set(CMAKE_REQUIRED_FLAGS "${ORIG_CMAKE_REQUIRED_FLAGS}") |
| | | |
| | | set(SOURCE_FILES ${SOURCE_FILES} |
| | | ${SDL2_SOURCE_DIR}/src/thread/pthread/SDL_systhread.c |
| | |
| | | endif() |
| | | set(HAVE_SDL_THREADS TRUE) |
| | | endif() |
| | | set(CMAKE_REQUIRED_FLAGS "${ORIG_CMAKE_REQUIRED_FLAGS}") |
| | | endif() |
| | | endmacro() |
| | | |
| | |
| | | # - n/a |
| | | macro(CheckRPI) |
| | | if(VIDEO_RPI) |
| | | set(VIDEO_RPI_INCLUDE_DIRS "/opt/vc/include" "/opt/vc/include/interface/vcos/pthreads" "/opt/vc/include/interface/vmcs_host/linux/" ) |
| | | set(VIDEO_RPI_LIBRARY_DIRS "/opt/vc/lib" ) |
| | | set(VIDEO_RPI_LIBS bcm_host ) |
| | | pkg_check_modules(VIDEO_RPI bcm_host brcmegl) |
| | | if (NOT VIDEO_RPI_FOUND) |
| | | set(VIDEO_RPI_INCLUDE_DIRS "/opt/vc/include" "/opt/vc/include/interface/vcos/pthreads" "/opt/vc/include/interface/vmcs_host/linux/" ) |
| | | set(VIDEO_RPI_LIBRARY_DIRS "/opt/vc/lib" ) |
| | | set(VIDEO_RPI_LIBRARIES bcm_host ) |
| | | set(VIDEO_RPI_LDFLAGS "-Wl,-rpath,/opt/vc/lib") |
| | | endif() |
| | | listtostr(VIDEO_RPI_INCLUDE_DIRS VIDEO_RPI_INCLUDE_FLAGS "-I") |
| | | listtostr(VIDEO_RPI_LIBRARY_DIRS VIDEO_RPI_LIBRARY_FLAGS "-L") |
| | | |
| | | set(ORIG_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}") |
| | | set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${VIDEO_RPI_INCLUDE_FLAGS} ${VIDEO_RPI_LIBRARY_FLAGS}") |
| | | set(CMAKE_REQUIRED_LIBRARIES "${VIDEO_RPI_LIBS}") |
| | | set(CMAKE_REQUIRED_LIBRARIES "${VIDEO_RPI_LIBRARIES}") |
| | | check_c_source_compiles(" |
| | | #include <bcm_host.h> |
| | | int main(int argc, char **argv) {}" HAVE_VIDEO_RPI) |
| | |
| | | set(SDL_VIDEO_DRIVER_RPI 1) |
| | | file(GLOB VIDEO_RPI_SOURCES ${SDL2_SOURCE_DIR}/src/video/raspberry/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${VIDEO_RPI_SOURCES}) |
| | | list(APPEND EXTRA_LIBS ${VIDEO_RPI_LIBS}) |
| | | list(APPEND EXTRA_LIBS ${VIDEO_RPI_LIBRARIES}) |
| | | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${VIDEO_RPI_INCLUDE_FLAGS} ${VIDEO_RPI_LIBRARY_FLAGS}") |
| | | list(APPEND EXTRA_LDFLAGS ${VIDEO_RPI_LDFLAGS}) |
| | | endif(SDL_VIDEO AND HAVE_VIDEO_RPI) |
| | | endif(VIDEO_RPI) |
| | | endmacro(CheckRPI) |
| | | |
| | | # Requires: |
| | | # - EGL |
| | | # - PkgCheckModules |
| | | # Optional: |
| | | # - KMSDRM_SHARED opt |
| | | # - HAVE_DLOPEN opt |
| | | macro(CheckKMSDRM) |
| | | if(VIDEO_KMSDRM) |
| | | pkg_check_modules(KMSDRM libdrm gbm egl) |
| | | if(KMSDRM_FOUND) |
| | | link_directories( |
| | | ${KMSDRM_LIBRARY_DIRS} |
| | | ) |
| | | include_directories( |
| | | ${KMSDRM_INCLUDE_DIRS} |
| | | ) |
| | | set(HAVE_VIDEO_KMSDRM TRUE) |
| | | set(HAVE_SDL_VIDEO TRUE) |
| | | |
| | | file(GLOB KMSDRM_SOURCES ${SDL2_SOURCE_DIR}/src/video/kmsdrm/*.c) |
| | | set(SOURCE_FILES ${SOURCE_FILES} ${KMSDRM_SOURCES}) |
| | | |
| | | list(APPEND EXTRA_CFLAGS ${KMSDRM_CFLAGS}) |
| | | |
| | | set(SDL_VIDEO_DRIVER_KMSDRM 1) |
| | | |
| | | if(KMSDRM_SHARED) |
| | | if(NOT HAVE_DLOPEN) |
| | | message_warn("You must have SDL_LoadObject() support for dynamic KMS/DRM loading") |
| | | else() |
| | | FindLibraryAndSONAME(drm) |
| | | FindLibraryAndSONAME(gbm) |
| | | set(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC "\"${DRM_LIB_SONAME}\"") |
| | | set(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM "\"${GBM_LIB_SONAME}\"") |
| | | set(HAVE_KMSDRM_SHARED TRUE) |
| | | endif() |
| | | else() |
| | | set(EXTRA_LIBS ${KMSDRM_LIBRARIES} ${EXTRA_LIBS}) |
| | | endif() |
| | | endif() |
| | | endif() |
| | | endmacro() |
| | |
| | | if (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") |
| | | message(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"") |
| | | endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") |
| | | if (NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") |
| | | message(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_BINARY_DIR@/install_manifest.txt\"") |
| | | endif(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") |
| | | |
| | | file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) |
| | | file(READ "@CMAKE_BINARY_DIR@/install_manifest.txt" files) |
| | | string(REGEX REPLACE "\n" ";" files "${files}") |
| | | foreach (file ${files}) |
| | | message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") |
| | |
| | | X_CFLAGS |
| | | XMKMF |
| | | ARTSCONFIG |
| | | PKG_CONFIG |
| | | ESD_LIBS |
| | | ESD_CFLAGS |
| | | ESD_CONFIG |
| | | PKG_CONFIG |
| | | ALSA_LIBS |
| | | ALSA_CFLAGS |
| | | POW_LIB |
| | |
| | | enable_3dnow |
| | | enable_sse |
| | | enable_sse2 |
| | | enable_sse3 |
| | | enable_altivec |
| | | enable_oss |
| | | enable_alsa |
| | |
| | | with_alsa_inc_prefix |
| | | enable_alsatest |
| | | enable_alsa_shared |
| | | enable_jack |
| | | enable_jack_shared |
| | | enable_esd |
| | | with_esd_prefix |
| | | with_esd_exec_prefix |
| | |
| | | enable_nas_shared |
| | | enable_sndio |
| | | enable_sndio_shared |
| | | enable_fusionsound |
| | | enable_fusionsound_shared |
| | | enable_diskaudio |
| | | enable_dummyaudio |
| | | enable_libsamplerate |
| | | enable_libsamplerate_shared |
| | | enable_video_wayland |
| | | enable_video_wayland_qt_touch |
| | | enable_wayland_shared |
| | | enable_video_mir |
| | | enable_mir_shared |
| | | enable_video_rpi |
| | | enable_video_x11 |
| | | with_x |
| | | enable_x11_shared |
| | |
| | | enable_video_x11_vm |
| | | enable_video_vivante |
| | | enable_video_cocoa |
| | | enable_render_metal |
| | | enable_video_directfb |
| | | enable_directfb_shared |
| | | enable_fusionsound |
| | | enable_fusionsound_shared |
| | | enable_video_kmsdrm |
| | | enable_kmsdrm_shared |
| | | enable_video_dummy |
| | | enable_video_opengl |
| | | enable_video_opengles |
| | | enable_video_opengles1 |
| | | enable_video_opengles2 |
| | | enable_video_vulkan |
| | | enable_libudev |
| | | enable_dbus |
| | | enable_ime |
| | |
| | | --enable-cpuinfo Enable the cpuinfo subsystem [[default=yes]] |
| | | --enable-assembly Enable assembly routines [[default=yes]] |
| | | --enable-ssemath Allow GCC to use SSE floating point math |
| | | [[default=no]] |
| | | [[default=maybe]] |
| | | --enable-mmx use MMX assembly routines [[default=yes]] |
| | | --enable-3dnow use 3DNow! assembly routines [[default=yes]] |
| | | --enable-sse use SSE assembly routines [[default=yes]] |
| | | --enable-sse2 use SSE2 assembly routines [[default=no]] |
| | | --enable-sse2 use SSE2 assembly routines [[default=maybe]] |
| | | --enable-sse3 use SSE3 assembly routines [[default=maybe]] |
| | | --enable-altivec use Altivec assembly routines [[default=yes]] |
| | | --enable-oss support the OSS audio API [[default=maybe]] |
| | | --enable-alsa support the ALSA audio API [[default=yes]] |
| | | --disable-alsatest Do not try to compile and run a test Alsa program |
| | | --enable-alsa-shared dynamically load ALSA audio support [[default=yes]] |
| | | --enable-jack use JACK audio [[default=yes]] |
| | | --enable-jack-shared dynamically load JACK audio support [[default=yes]] |
| | | --enable-esd support the Enlightened Sound Daemon [[default=yes]] |
| | | --disable-esdtest Do not try to compile and run a test ESD program |
| | | --enable-esd-shared dynamically load ESD audio support [[default=yes]] |
| | |
| | | --enable-nas-shared dynamically load NAS audio support [[default=yes]] |
| | | --enable-sndio support the sndio audio API [[default=yes]] |
| | | --enable-sndio-shared dynamically load sndio audio support [[default=yes]] |
| | | --enable-fusionsound use FusionSound audio driver [[default=no]] |
| | | --enable-fusionsound-shared |
| | | dynamically load fusionsound audio support |
| | | [[default=yes]] |
| | | --enable-diskaudio support the disk writer audio driver [[default=yes]] |
| | | --enable-dummyaudio support the dummy audio driver [[default=yes]] |
| | | --enable-libsamplerate use libsamplerate for audio rate conversion |
| | | [[default=yes]] |
| | | --enable-libsamplerate-shared |
| | | dynamically load libsamplerate [[default=yes]] |
| | | --enable-video-wayland use Wayland video driver [[default=yes]] |
| | | --enable-video-wayland-qt-touch |
| | | QtWayland server support for Wayland video driver |
| | |
| | | --enable-wayland-shared dynamically load Wayland support [[default=maybe]] |
| | | --enable-video-mir use Mir video driver [[default=yes]] |
| | | --enable-mir-shared dynamically load Mir support [[default=maybe]] |
| | | --enable-video-rpi use Raspberry Pi video driver [[default=yes]] |
| | | --enable-video-x11 use X11 video driver [[default=yes]] |
| | | --enable-x11-shared dynamically load X11 support [[default=maybe]] |
| | | --enable-video-x11-xcursor |
| | |
| | | --enable-video-x11-vm use X11 VM extension for fullscreen [[default=yes]] |
| | | --enable-video-vivante use Vivante EGL video driver [[default=yes]] |
| | | --enable-video-cocoa use Cocoa video driver [[default=yes]] |
| | | --enable-render-metal enable the Metal render driver [[default=yes]] |
| | | --enable-video-directfb use DirectFB video driver [[default=no]] |
| | | --enable-directfb-shared |
| | | dynamically load directfb support [[default=yes]] |
| | | --enable-fusionsound use FusionSound audio driver [[default=no]] |
| | | --enable-fusionsound-shared |
| | | dynamically load fusionsound audio support |
| | | [[default=yes]] |
| | | --enable-video-kmsdrm use KMSDRM video driver [[default=no]] |
| | | --enable-kmsdrm-shared dynamically load kmsdrm support [[default=yes]] |
| | | --enable-video-dummy use dummy video driver [[default=yes]] |
| | | --enable-video-opengl include OpenGL support [[default=yes]] |
| | | --enable-video-opengles include OpenGL ES support [[default=yes]] |
| | |
| | | include OpenGL ES 1.1 support [[default=yes]] |
| | | --enable-video-opengles2 |
| | | include OpenGL ES 2.0 support [[default=yes]] |
| | | --enable-video-vulkan include Vulkan 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]] |
| | |
| | | # |
| | | SDL_MAJOR_VERSION=2 |
| | | SDL_MINOR_VERSION=0 |
| | | SDL_MICRO_VERSION=5 |
| | | SDL_INTERFACE_AGE=1 |
| | | SDL_BINARY_AGE=5 |
| | | SDL_MICRO_VERSION=8 |
| | | SDL_INTERFACE_AGE=0 |
| | | SDL_BINARY_AGE=8 |
| | | SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION |
| | | |
| | | |
| | |
| | | x86_64-*linux*) |
| | | LD="${LD-ld} -m elf_x86_64" |
| | | ;; |
| | | ppc*-*linux*|powerpc*-*linux*) |
| | | powerpc64le-*linux*) |
| | | LD="${LD-ld} -m elf64lppc" |
| | | ;; |
| | | powerpc64-*linux*) |
| | | LD="${LD-ld} -m elf64ppc" |
| | | ;; |
| | | s390*-*linux*|s390*-*tpf*) |
| | |
| | | ;; |
| | | esac |
| | | |
| | | INCLUDE="-I$srcdir/include" |
| | | INCLUDE="-I$srcdir/include -idirafter $srcdir/src/video/khronos" |
| | | if test x$srcdir != x.; then |
| | | INCLUDE="-Iinclude $INCLUDE" |
| | | elif test -d .hg; then |
| | |
| | | |
| | | fi |
| | | |
| | | for ac_header in sys/types.h stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h strings.h inttypes.h stdint.h ctype.h math.h iconv.h signal.h |
| | | for ac_header in sys/types.h stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h strings.h wchar.h inttypes.h stdint.h limits.h ctype.h math.h float.h iconv.h signal.h |
| | | do : |
| | | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` |
| | | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" |
| | |
| | | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
| | | fi |
| | | |
| | | for ac_func in malloc calloc realloc free getenv setenv putenv unsetenv qsort abs bcopy memset memcpy memmove strlen strlcpy strlcat strdup _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp vsscanf vsnprintf fseeko fseeko64 sigaction setjmp nanosleep sysconf sysctlbyname |
| | | for ac_func in malloc calloc realloc free getenv setenv putenv unsetenv qsort abs bcopy memset memcpy memmove wcslen wcscmp strlen strlcpy strlcat _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp vsscanf vsnprintf fopen64 fseeko fseeko64 sigaction setjmp nanosleep sysconf sysctlbyname getauxval poll |
| | | do : |
| | | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` |
| | | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" |
| | |
| | | LIBS="$LIBS -lm"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm" |
| | | fi |
| | | |
| | | for ac_func in atan atan2 acos asin ceil copysign cos cosf fabs floor log pow scalbn sin sinf sqrt sqrtf tan tanf |
| | | for ac_func in acos acosf asin asinf atan atanf atan2 atan2f ceil ceilf copysign copysignf cos cosf fabs fabsf floor floorf fmod fmodf log logf log10 log10f pow powf scalbn scalbnf sin sinf sqrt sqrtf tan tanf |
| | | do : |
| | | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` |
| | | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" |
| | |
| | | ac_fn_c_check_member "$LINENO" "struct sigaction" "sa_sigaction" "ac_cv_member_struct_sigaction_sa_sigaction" "#include <signal.h> |
| | | " |
| | | if test "x$ac_cv_member_struct_sigaction_sa_sigaction" = xyes; then : |
| | | $as_echo "#define HAVE_SA_SIGACTION 1" >>confdefs.h |
| | | |
| | | $as_echo "#define HAVE_SA_SIGACTION 1" >>confdefs.h |
| | | |
| | | fi |
| | | |
| | | |
| | | for ac_header in libunwind.h |
| | | do : |
| | | ac_fn_c_check_header_mongrel "$LINENO" "libunwind.h" "ac_cv_header_libunwind_h" "$ac_includes_default" |
| | | if test "x$ac_cv_header_libunwind_h" = xyes; then : |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define HAVE_LIBUNWIND_H 1 |
| | | _ACEOF |
| | | |
| | | fi |
| | | |
| | | done |
| | | |
| | | fi |
| | | |
| | |
| | | SOURCES="$SOURCES $srcdir/src/thread/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/timer/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/video/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/video/yuv2rgb/*.c" |
| | | |
| | | |
| | | # Check whether --enable-atomic was given. |
| | |
| | | fi |
| | | |
| | | if test x$enable_ssemath = xno; then |
| | | if test x$have_gcc_sse = xyes -o x$have_gcc_sse2 = xyes; then |
| | | if test x$have_gcc_sse = xyes -o x$have_gcc_sse2 = xyes -o x$have_gcc_sse3 = xyes; then |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS -mfpmath=387" |
| | | fi |
| | | fi |
| | |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $sse2_CFLAGS" |
| | | SUMMARY_math="${SUMMARY_math} sse2" |
| | | fi |
| | | fi |
| | | |
| | | # Check whether --enable-sse3 was given. |
| | | if test "${enable_sse3+set}" = set; then : |
| | | enableval=$enable_sse3; |
| | | else |
| | | enable_sse3=$default_ssemath |
| | | fi |
| | | |
| | | if test x$enable_sse3 = xyes; then |
| | | save_CFLAGS="$CFLAGS" |
| | | have_gcc_sse3=no |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GCC -msse3 option" >&5 |
| | | $as_echo_n "checking for GCC -msse3 option... " >&6; } |
| | | sse3_CFLAGS="-msse3" |
| | | CFLAGS="$save_CFLAGS $sse3_CFLAGS" |
| | | |
| | | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| | | /* end confdefs.h. */ |
| | | |
| | | #ifdef __MINGW32__ |
| | | #include <_mingw.h> |
| | | #ifdef __MINGW64_VERSION_MAJOR |
| | | #include <intrin.h> |
| | | #else |
| | | #include <pmmintrin.h> |
| | | #endif |
| | | #else |
| | | #include <pmmintrin.h> |
| | | #endif |
| | | #ifndef __SSE2__ |
| | | #error Assembler CPP flag not enabled |
| | | #endif |
| | | |
| | | int |
| | | main () |
| | | { |
| | | |
| | | |
| | | ; |
| | | return 0; |
| | | } |
| | | _ACEOF |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | |
| | | have_gcc_sse3=yes |
| | | |
| | | fi |
| | | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_gcc_sse3" >&5 |
| | | $as_echo "$have_gcc_sse3" >&6; } |
| | | CFLAGS="$save_CFLAGS" |
| | | |
| | | if test x$have_gcc_sse3 = xyes; then |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $sse3_CFLAGS" |
| | | SUMMARY_math="${SUMMARY_math} sse3" |
| | | fi |
| | | fi |
| | | |
| | | ac_fn_c_check_header_mongrel "$LINENO" "immintrin.h" "ac_cv_header_immintrin_h" "$ac_includes_default" |
| | | if test "x$ac_cv_header_immintrin_h" = xyes; then : |
| | | have_immintrin_h_hdr=yes |
| | | else |
| | | have_immintrin_h_hdr=no |
| | | fi |
| | | |
| | | |
| | | if test x$have_immintrin_h_hdr = xyes; then |
| | | |
| | | $as_echo "#define HAVE_IMMINTRIN_H 1" >>confdefs.h |
| | | |
| | | fi |
| | | |
| | | # Check whether --enable-altivec was given. |
| | |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ALSA_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} alsa" |
| | | fi |
| | | have_audio=yes |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | CheckJACK() |
| | | { |
| | | # Check whether --enable-jack was given. |
| | | if test "${enable_jack+set}" = set; then : |
| | | enableval=$enable_jack; |
| | | else |
| | | enable_jack=yes |
| | | fi |
| | | |
| | | if test x$enable_audio = xyes -a x$enable_jack = xyes; then |
| | | audio_jack=no |
| | | |
| | | JACK_REQUIRED_VERSION=0.125 |
| | | |
| | | # Extract the first word of "pkg-config", so it can be a program name with args. |
| | | set dummy pkg-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_PKG_CONFIG+:} false; then : |
| | | $as_echo_n "(cached) " >&6 |
| | | else |
| | | case $PKG_CONFIG in |
| | | [\\/]* | ?:[\\/]*) |
| | | ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. |
| | | ;; |
| | | *) |
| | | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR |
| | | for as_dir in $PATH |
| | | do |
| | | IFS=$as_save_IFS |
| | | 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_PKG_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 |
| | | done |
| | | done |
| | | IFS=$as_save_IFS |
| | | |
| | | test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" |
| | | ;; |
| | | esac |
| | | fi |
| | | PKG_CONFIG=$ac_cv_path_PKG_CONFIG |
| | | if test -n "$PKG_CONFIG"; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 |
| | | $as_echo "$PKG_CONFIG" >&6; } |
| | | else |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
| | | $as_echo "no" >&6; } |
| | | fi |
| | | |
| | | |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JACK $JACK_REQUIRED_VERSION support" >&5 |
| | | $as_echo_n "checking for JACK $JACK_REQUIRED_VERSION support... " >&6; } |
| | | if test x$PKG_CONFIG != xno; then |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $JACK_REQUIRED_VERSION jack; then |
| | | JACK_CFLAGS=`$PKG_CONFIG --cflags jack` |
| | | JACK_LIBS=`$PKG_CONFIG --libs jack` |
| | | audio_jack=yes |
| | | fi |
| | | fi |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $audio_jack" >&5 |
| | | $as_echo "$audio_jack" >&6; } |
| | | |
| | | if test x$audio_jack = xyes; then |
| | | # Check whether --enable-jack-shared was given. |
| | | if test "${enable_jack_shared+set}" = set; then : |
| | | enableval=$enable_jack_shared; |
| | | else |
| | | enable_jack_shared=yes |
| | | fi |
| | | |
| | | jack_lib=`find_lib "libjack.so.*" "$JACK_LIBS" | sed 's/.*\/\(.*\)/\1/; q'` |
| | | |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_JACK 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/jack/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $JACK_CFLAGS" |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_jack_shared = xyes; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic JACK audio loading" >&5 |
| | | $as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic JACK audio loading" >&2;} |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_jack_shared = xyes && test x$jack_lib != x; then |
| | | echo "-- dynamic libjack -> $jack_lib" |
| | | |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define SDL_AUDIO_DRIVER_JACK_DYNAMIC "$jack_lib" |
| | | _ACEOF |
| | | |
| | | SUMMARY_audio="${SUMMARY_audio} jack(dynamic)" |
| | | |
| | | case "$host" in |
| | | # On Solaris, jack must be linked deferred explicitly |
| | | # to prevent undefined symbol failures. |
| | | *-*-solaris*) |
| | | JACK_LIBS=`echo $JACK_LIBS | sed 's/\-l/-Wl,-l/g'` |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-zdeferred $JACK_LIBS -Wl,-znodeferred" |
| | | esac |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $JACK_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} jack" |
| | | fi |
| | | have_audio=yes |
| | | fi |
| | |
| | | fi |
| | | } |
| | | |
| | | CheckFusionSound() |
| | | { |
| | | # Check whether --enable-fusionsound was given. |
| | | if test "${enable_fusionsound+set}" = set; then : |
| | | enableval=$enable_fusionsound; |
| | | else |
| | | enable_fusionsound=no |
| | | fi |
| | | |
| | | if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then |
| | | fusionsound=no |
| | | |
| | | FUSIONSOUND_REQUIRED_VERSION=1.1.1 |
| | | |
| | | # Extract the first word of "pkg-config", so it can be a program name with args. |
| | | set dummy pkg-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_PKG_CONFIG+:} false; then : |
| | | $as_echo_n "(cached) " >&6 |
| | | else |
| | | case $PKG_CONFIG in |
| | | [\\/]* | ?:[\\/]*) |
| | | ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. |
| | | ;; |
| | | *) |
| | | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR |
| | | for as_dir in $PATH |
| | | do |
| | | IFS=$as_save_IFS |
| | | 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_PKG_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 |
| | | done |
| | | done |
| | | IFS=$as_save_IFS |
| | | |
| | | test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" |
| | | ;; |
| | | esac |
| | | fi |
| | | PKG_CONFIG=$ac_cv_path_PKG_CONFIG |
| | | if test -n "$PKG_CONFIG"; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 |
| | | $as_echo "$PKG_CONFIG" >&6; } |
| | | else |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
| | | $as_echo "no" >&6; } |
| | | fi |
| | | |
| | | |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support" >&5 |
| | | $as_echo_n "checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support... " >&6; } |
| | | if test x$PKG_CONFIG != xno; then |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then |
| | | FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound` |
| | | FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound` |
| | | fusionsound=yes |
| | | fi |
| | | fi |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound" >&5 |
| | | $as_echo "$fusionsound" >&6; } |
| | | |
| | | if test x$fusionsound = xyes; then |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_FUSIONSOUND 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS" |
| | | |
| | | # Check whether --enable-fusionsound-shared was given. |
| | | if test "${enable_fusionsound_shared+set}" = set; then : |
| | | enableval=$enable_fusionsound_shared; |
| | | else |
| | | enable_fusionsound_shared=yes |
| | | fi |
| | | |
| | | fusionsound_shared=no |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound dynamic loading support" >&5 |
| | | $as_echo_n "checking for FusionSound dynamic loading support... " >&6; } |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&5 |
| | | $as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&2;} |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC "libfusionsound.so" |
| | | _ACEOF |
| | | |
| | | fusionsound_shared=yes |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)" |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound" |
| | | fi |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound_shared" >&5 |
| | | $as_echo "$fusionsound_shared" >&6; } |
| | | |
| | | have_audio=yes |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | CheckDiskAudio() |
| | | { |
| | | # Check whether --enable-diskaudio was given. |
| | |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/dummy/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} dummy" |
| | | fi |
| | | } |
| | | |
| | | CheckLibSampleRate() |
| | | { |
| | | # Check whether --enable-libsamplerate was given. |
| | | if test "${enable_libsamplerate+set}" = set; then : |
| | | enableval=$enable_libsamplerate; |
| | | else |
| | | enable_libsamplerate=yes |
| | | fi |
| | | |
| | | if test x$enable_libsamplerate = xyes; then |
| | | ac_fn_c_check_header_mongrel "$LINENO" "samplerate.h" "ac_cv_header_samplerate_h" "$ac_includes_default" |
| | | if test "x$ac_cv_header_samplerate_h" = xyes; then : |
| | | have_samplerate_h_hdr=yes |
| | | else |
| | | have_samplerate_h_hdr=no |
| | | fi |
| | | |
| | | |
| | | if test x$have_samplerate_h_hdr = xyes; then |
| | | |
| | | $as_echo "#define HAVE_LIBSAMPLERATE_H 1" >>confdefs.h |
| | | |
| | | |
| | | # Check whether --enable-libsamplerate-shared was given. |
| | | if test "${enable_libsamplerate_shared+set}" = set; then : |
| | | enableval=$enable_libsamplerate_shared; |
| | | else |
| | | enable_libsamplerate_shared=yes |
| | | fi |
| | | |
| | | |
| | | samplerate_lib=`find_lib "libsamplerate.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'` |
| | | |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_libsamplerate_shared = xyes; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic libsamplerate loading" >&5 |
| | | $as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic libsamplerate loading" >&2;} |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_libsamplerate_shared = xyes && test x$samplerate_lib != x; then |
| | | echo "-- dynamic libsamplerate -> $samplerate_lib" |
| | | |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define SDL_LIBSAMPLERATE_DYNAMIC "$samplerate_lib" |
| | | _ACEOF |
| | | |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lsamplerate" |
| | | fi |
| | | fi |
| | | fi |
| | | } |
| | | |
| | |
| | | |
| | | fi |
| | | |
| | | WAYLAND_PROTOCOLS_UNSTABLE="relative-pointer-unstable-v1 pointer-constraints-unstable-v1" |
| | | WAYLAND_PROTOCOLS_UNSTABLE="relative-pointer-unstable-v1 pointer-constraints-unstable-v1 xdg-shell-unstable-v6" |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/video/wayland/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $WAYLAND_CFLAGS -I\$(gen)" |
| | |
| | | main () |
| | | { |
| | | |
| | | MirTouchAction actions = mir_touch_actions |
| | | MirWindowAttrib attrib = mir_window_attrib_state |
| | | |
| | | ; |
| | | return 0; |
| | |
| | | _ACEOF |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_NACL 1" >>confdefs.h |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_NACL 1" >>confdefs.h |
| | | $as_echo "#define SDL_VIDEO_DRIVER_NACL 1" >>confdefs.h |
| | | |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_NACL 1" >>confdefs.h |
| | | |
| | | |
| | | $as_echo "#define HAVE_POW 1" >>confdefs.h |
| | |
| | | } |
| | | |
| | | |
| | | CheckX11() |
| | | CheckRPI() |
| | | { |
| | | # Check whether --enable-video-rpi was given. |
| | | if test "${enable_video_rpi+set}" = set; then : |
| | | enableval=$enable_video_rpi; |
| | | else |
| | | enable_video_rpi=yes |
| | | fi |
| | | |
| | | if test x$enable_video = xyes -a x$enable_video_rpi = xyes; then |
| | | # Extract the first word of "pkg-config", so it can be a program name with args. |
| | | set dummy pkg-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_PKG_CONFIG+:} false; then : |
| | | $as_echo_n "(cached) " >&6 |
| | | else |
| | | case $PKG_CONFIG in |
| | | [\\/]* | ?:[\\/]*) |
| | | ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. |
| | | ;; |
| | | *) |
| | | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR |
| | | for as_dir in $PATH |
| | | do |
| | | IFS=$as_save_IFS |
| | | 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_PKG_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 |
| | | done |
| | | done |
| | | IFS=$as_save_IFS |
| | | |
| | | test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" |
| | | ;; |
| | | esac |
| | | fi |
| | | PKG_CONFIG=$ac_cv_path_PKG_CONFIG |
| | | if test -n "$PKG_CONFIG"; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 |
| | | $as_echo "$PKG_CONFIG" >&6; } |
| | | else |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
| | | $as_echo "no" >&6; } |
| | | fi |
| | | |
| | | |
| | | if test x$PKG_CONFIG != xno && $PKG_CONFIG --exists bcm_host; then |
| | | RPI_CFLAGS=`$PKG_CONFIG --cflags bcm_host brcmegl` |
| | | RPI_LDFLAGS=`$PKG_CONFIG --libs bcm_host brcmegl` |
| | | elif test x$ARCH = xnetbsd; then |
| | | RPI_CFLAGS="-I/usr/pkg/include -I/usr/pkg/include/interface/vcos/pthreads -I/usr/pkg/include/interface/vmcs_host/linux" |
| | | RPI_LDFLAGS="-Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lbcm_host" |
| | | else |
| | | RPI_CFLAGS="-I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux" |
| | | RPI_LDFLAGS="-Wl,-rpath,/opt/vc/lib -L/opt/vc/lib -lbcm_host" |
| | | fi |
| | | |
| | | # Save the original compiler flags and libraries |
| | | ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS" |
| | | |
| | | # Add the Raspberry Pi compiler flags and libraries |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS"; LIBS="$LIBS $RPI_LDFLAGS" |
| | | |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Raspberry Pi" >&5 |
| | | $as_echo_n "checking for Raspberry Pi... " >&6; } |
| | | have_video_rpi=no |
| | | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| | | /* end confdefs.h. */ |
| | | |
| | | #include <bcm_host.h> |
| | | |
| | | int |
| | | main () |
| | | { |
| | | |
| | | bcm_host_init(); |
| | | |
| | | ; |
| | | return 0; |
| | | } |
| | | _ACEOF |
| | | if ac_fn_c_try_link "$LINENO"; then : |
| | | |
| | | have_video_rpi=yes |
| | | |
| | | fi |
| | | rm -f core conftest.err conftest.$ac_objext \ |
| | | conftest$ac_exeext conftest.$ac_ext |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_video_rpi" >&5 |
| | | $as_echo "$have_video_rpi" >&6; } |
| | | |
| | | # Restore the compiler flags and libraries |
| | | CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs" |
| | | |
| | | if test x$have_video_rpi = xyes; then |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS" |
| | | SDL_CFLAGS="$SDL_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $RPI_LDFLAGS" |
| | | SOURCES="$SOURCES $srcdir/src/video/raspberry/*.c" |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_RPI 1" >>confdefs.h |
| | | |
| | | SUMMARY_video="${SUMMARY_video} rpi" |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | CheckX11() |
| | | { |
| | | # Check whether --enable-video-x11 was given. |
| | | if test "${enable_video_x11+set}" = set; then : |
| | | enableval=$enable_video_x11; |
| | |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | |
| | | have_const_param_XextAddDisplay=yes |
| | | $as_echo "#define SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY 1" >>confdefs.h |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY 1" >>confdefs.h |
| | | |
| | | |
| | | fi |
| | |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | |
| | | have_XGenericEvent=yes |
| | | $as_echo "#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1" >>confdefs.h |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1" >>confdefs.h |
| | | |
| | | |
| | | fi |
| | |
| | | fi |
| | | } |
| | | |
| | | CheckMETAL() |
| | | { |
| | | # Check whether --enable-render-metal was given. |
| | | if test "${enable_render_metal+set}" = set; then : |
| | | enableval=$enable_render_metal; |
| | | else |
| | | enable_render_metal=yes |
| | | fi |
| | | |
| | | if test x$enable_render = xyes -a x$enable_render_metal = xyes; then |
| | | save_CFLAGS="$CFLAGS" |
| | | CFLAGS="$CFLAGS -x objective-c" |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Metal framework" >&5 |
| | | $as_echo_n "checking for Metal framework... " >&6; } |
| | | have_metal=no |
| | | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| | | /* end confdefs.h. */ |
| | | |
| | | #import <Cocoa/Cocoa.h> |
| | | #import <Metal/Metal.h> |
| | | #import <QuartzCore/CAMetalLayer.h> |
| | | |
| | | #if !TARGET_CPU_X86_64 |
| | | #error Metal doesn't work on this configuration |
| | | #endif |
| | | |
| | | int |
| | | main () |
| | | { |
| | | |
| | | |
| | | ; |
| | | return 0; |
| | | } |
| | | _ACEOF |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | |
| | | have_metal=yes |
| | | |
| | | fi |
| | | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
| | | CFLAGS="$save_CFLAGS" |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_metal" >&5 |
| | | $as_echo "$have_metal" >&6; } |
| | | if test x$have_metal = xyes; then |
| | | |
| | | $as_echo "#define SDL_VIDEO_RENDER_METAL 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/render/metal/*.m" |
| | | SUMMARY_video="${SUMMARY_video} metal" |
| | | else |
| | | enable_render_metal=no |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | |
| | | CheckDirectFB() |
| | | { |
| | | # Check whether --enable-video-directfb was given. |
| | |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_DIRECTFB 1" >>confdefs.h |
| | | |
| | | |
| | | $as_echo "#define SDL_VIDEO_RENDER_DIRECTFB 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/video/directfb/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS" |
| | | |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for directfb dynamic loading support" >&5 |
| | | $as_echo_n "checking for directfb dynamic loading support... " >&6; } |
| | | directfb_shared=no |
| | | directfb_lib=`find_lib "libdirectfb.so.*" "$DIRECTFB_LIBS"` |
| | | directfb_lib=`find_lib "libdirectfb*.so.*" "$DIRECTFB_LIBS"` |
| | | # | sed 's/.*\/\(.*\)/\1/; q'`] |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"directfb $directfb_lib\"" >&5 |
| | | $as_echo "$as_me: WARNING: \"directfb $directfb_lib\"" >&2;} |
| | |
| | | fi |
| | | } |
| | | |
| | | CheckFusionSound() |
| | | CheckKMSDRM() |
| | | { |
| | | # Check whether --enable-fusionsound was given. |
| | | if test "${enable_fusionsound+set}" = set; then : |
| | | enableval=$enable_fusionsound; |
| | | # Check whether --enable-video-kmsdrm was given. |
| | | if test "${enable_video_kmsdrm+set}" = set; then : |
| | | enableval=$enable_video_kmsdrm; |
| | | else |
| | | enable_fusionsound=no |
| | | enable_video_kmsdrm=no |
| | | fi |
| | | |
| | | if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then |
| | | fusionsound=no |
| | | |
| | | FUSIONSOUND_REQUIRED_VERSION=1.1.1 |
| | | if test x$enable_video = xyes -a x$enable_video_kmsdrm = xyes; then |
| | | video_kmsdrm=no |
| | | libdrm_avail=no |
| | | libgbm_avail=no |
| | | |
| | | LIBDRM_REQUIRED_VERSION=2.4.46 |
| | | LIBGBM_REQUIRED_VERSION=9.0.0 |
| | | |
| | | # Extract the first word of "pkg-config", so it can be a program name with args. |
| | | set dummy pkg-config; ac_word=$2 |
| | |
| | | fi |
| | | |
| | | |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support" >&5 |
| | | $as_echo_n "checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support... " >&6; } |
| | | if test x$PKG_CONFIG != xno; then |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then |
| | | FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound` |
| | | FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound` |
| | | fusionsound=yes |
| | | fi |
| | | fi |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound" >&5 |
| | | $as_echo "$fusionsound" >&6; } |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7; then |
| | | if $PKG_CONFIG --atleast-version $LIBDRM_REQUIRED_VERSION libdrm; then |
| | | LIBDRM_CFLAGS=`$PKG_CONFIG --cflags libdrm` |
| | | LIBDRM_LIBS=`$PKG_CONFIG --libs libdrm` |
| | | LIBDRM_PREFIX=`$PKG_CONFIG --variable=prefix libdrm` |
| | | libdrm_avail=yes |
| | | fi |
| | | if $PKG_CONFIG --atleast-version $LIBGBM_REQUIRED_VERSION gbm; then |
| | | LIBGBM_CFLAGS=`$PKG_CONFIG --cflags gbm` |
| | | LIBGBM_LIBS=`$PKG_CONFIG --libs gbm` |
| | | LIBGBM_PREFIX=`$PKG_CONFIG --variable=prefix gbm` |
| | | libgbm_avail=yes |
| | | fi |
| | | if test x$libdrm_avail = xyes -a x$libgbm_avail = xyes; then |
| | | video_kmsdrm=yes |
| | | fi |
| | | |
| | | if test x$fusionsound = xyes; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libdrm $LIBDRM_REQUIRED_VERSION library for kmsdrm support" >&5 |
| | | $as_echo_n "checking for libdrm $LIBDRM_REQUIRED_VERSION library for kmsdrm support... " >&6; } |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libdrm_avail" >&5 |
| | | $as_echo "$libdrm_avail" >&6; } |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libgbm $LIBGBM_REQUIRED_VERSION library for kmsdrm support" >&5 |
| | | $as_echo_n "checking for libgbm $LIBGBM_REQUIRED_VERSION library for kmsdrm support... " >&6; } |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libgbm_avail" >&5 |
| | | $as_echo "$libgbm_avail" >&6; } |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_FUSIONSOUND 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS" |
| | | |
| | | # Check whether --enable-fusionsound-shared was given. |
| | | if test "${enable_fusionsound_shared+set}" = set; then : |
| | | enableval=$enable_fusionsound_shared; |
| | | if test x$video_kmsdrm = xyes; then |
| | | # Check whether --enable-kmsdrm-shared was given. |
| | | if test "${enable_kmsdrm_shared+set}" = set; then : |
| | | enableval=$enable_kmsdrm_shared; |
| | | else |
| | | enable_fusionsound_shared=yes |
| | | enable_kmsdrm_shared=yes |
| | | fi |
| | | |
| | | fusionsound_shared=no |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound dynamic loading support" >&5 |
| | | $as_echo_n "checking for FusionSound dynamic loading support... " >&6; } |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&5 |
| | | $as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&2;} |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_KMSDRM 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/video/kmsdrm/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $LIBDRM_CFLAGS $LIBGBM_CFLAGS" |
| | | |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for kmsdrm dynamic loading support" >&5 |
| | | $as_echo_n "checking for kmsdrm dynamic loading support... " >&6; } |
| | | kmsdrm_shared=no |
| | | drm_lib=`find_lib "libdrm.so.*" "$DRM_LIBS"` |
| | | gbm_lib=`find_lib "libgbm.so.*" "$DRM_LIBS"` |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_kmsdrm_shared = xyes; then |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic kmsdrm loading" >&5 |
| | | $as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic kmsdrm loading" >&2;} |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_kmsdrm_shared = xyes && test x$drm_lib != x && test x$gbm_lib != x; then |
| | | kmsdrm_shared=yes |
| | | |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC "libfusionsound.so" |
| | | #define SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC "$drm_lib" |
| | | _ACEOF |
| | | |
| | | fusionsound_shared=yes |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)" |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound" |
| | | fi |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound_shared" >&5 |
| | | $as_echo "$fusionsound_shared" >&6; } |
| | | |
| | | have_audio=yes |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM "$gbm_lib" |
| | | _ACEOF |
| | | |
| | | |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define HAVE_KMSDRM_SHARED "TRUE" |
| | | _ACEOF |
| | | |
| | | SUMMARY_video="${SUMMARY_video} kmsdrm(dynamic)" |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $LIBDRM_LIBS $LIBGBM_LIBS" |
| | | SUMMARY_video="${SUMMARY_video} kmsdrm" |
| | | fi |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $kmsdrm_shared" >&5 |
| | | $as_echo "$kmsdrm_shared" >&6; } |
| | | have_video=yes |
| | | fi |
| | | fi |
| | | fi |
| | | fi |
| | | } |
| | |
| | | SOURCES="$SOURCES $srcdir/src/video/dummy/*.c" |
| | | have_video=yes |
| | | SUMMARY_video="${SUMMARY_video} dummy" |
| | | fi |
| | | } |
| | | |
| | | CheckQNXVideo() |
| | | { |
| | | if test x$enable_video = xyes; then |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_QNX 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/video/qnx/*.c" |
| | | have_video=yes |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lscreen -lEGL -lGLESv2" |
| | | SUMMARY_video="${SUMMARY_video} qnx" |
| | | fi |
| | | } |
| | | |
| | | CheckQNXAudio() |
| | | { |
| | | if test x$enable_audio = xyes; then |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_QSA 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/qsa/*.c" |
| | | have_audio=yes |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lasound" |
| | | SUMMARY_audio="${SUMMARY_audio} qsa" |
| | | fi |
| | | } |
| | | |
| | |
| | | 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() |
| | | { |
| | | if test x$enable_video = xyes -a x$enable_video_vulkan = xyes; then |
| | | case "$host" in |
| | | *-*-android*) |
| | | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| | | /* end confdefs.h. */ |
| | | |
| | | #if defined(__ARM_ARCH) && __ARM_ARCH < 7 |
| | | #error Vulkan doesn't work on this configuration |
| | | #endif |
| | | |
| | | int |
| | | main () |
| | | { |
| | | |
| | | |
| | | ; |
| | | return 0; |
| | | } |
| | | _ACEOF |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | |
| | | |
| | | else |
| | | |
| | | enable_video_vulkan=no |
| | | |
| | | fi |
| | | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
| | | ;; |
| | | *-*-darwin*) |
| | | save_CFLAGS="$CFLAGS" |
| | | CFLAGS="$CFLAGS -x objective-c" |
| | | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| | | /* end confdefs.h. */ |
| | | |
| | | #include <Cocoa/Cocoa.h> |
| | | #include <Metal/Metal.h> |
| | | #include <QuartzCore/CAMetalLayer.h> |
| | | |
| | | #if !TARGET_CPU_X86_64 |
| | | #error Vulkan doesn't work on this configuration |
| | | #endif |
| | | |
| | | int |
| | | main () |
| | | { |
| | | |
| | | |
| | | ; |
| | | return 0; |
| | | } |
| | | _ACEOF |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | |
| | | |
| | | else |
| | | |
| | | enable_video_vulkan=no |
| | | |
| | | fi |
| | | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
| | | CFLAGS="$save_CFLAGS" |
| | | ;; |
| | | *) |
| | | ;; |
| | | 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: Vulkan does not work on this configuration." >&5 |
| | | $as_echo "$as_me: WARNING: Vulkan does not work on this configuration." >&2;} |
| | | fi |
| | | fi |
| | | if test x$enable_video_vulkan = xyes; then |
| | | |
| | | $as_echo "#define SDL_VIDEO_VULKAN 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 |
| | |
| | | |
| | | $as_echo "#define HAVE_LIBUDEV_H 1" >>confdefs.h |
| | | |
| | | |
| | | udev_lib=`find_lib "libudev.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'` |
| | | if test x$udev_lib != x; then |
| | | echo "-- dynamic udev -> $udev_lib" |
| | | |
| | | cat >>confdefs.h <<_ACEOF |
| | | #define SDL_UDEV_DYNAMIC "$udev_lib" |
| | | _ACEOF |
| | | |
| | | fi |
| | | fi |
| | | fi |
| | | } |
| | |
| | | fi |
| | | |
| | | case "$host" in |
| | | *-*-androideabi*) |
| | | *-*-android*) |
| | | pthread_cflags="-D_REENTRANT -D_THREAD_SAFE" |
| | | pthread_lib="" |
| | | ;; |
| | |
| | | pthread_lib="-L/usr/lib -lpthread" |
| | | ;; |
| | | *-*-haiku*) |
| | | pthread_cflags="-D_REENTRANT" |
| | | pthread_lib="" |
| | | ;; |
| | | *-*-nto*) |
| | | pthread_cflags="-D_REENTRANT" |
| | | pthread_lib="" |
| | | ;; |
| | |
| | | if ac_fn_c_try_link "$LINENO"; then : |
| | | |
| | | have_sem_timedwait=yes |
| | | $as_echo "#define HAVE_SEM_TIMEDWAIT 1" >>confdefs.h |
| | | |
| | | $as_echo "#define HAVE_SEM_TIMEDWAIT 1" >>confdefs.h |
| | | |
| | | |
| | | fi |
| | |
| | | fi |
| | | |
| | | |
| | | ac_fn_c_check_header_mongrel "$LINENO" "xaudio2.h" "ac_cv_header_xaudio2_h" "$ac_includes_default" |
| | | if test "x$ac_cv_header_xaudio2_h" = xyes; then : |
| | | have_xaudio2=yes |
| | | fi |
| | | |
| | | |
| | | ac_fn_c_check_header_mongrel "$LINENO" "xinput.h" "ac_cv_header_xinput_h" "$ac_includes_default" |
| | | if test "x$ac_cv_header_xinput_h" = xyes; then : |
| | | have_xinput=yes |
| | | fi |
| | | |
| | | |
| | | ac_fn_c_check_header_mongrel "$LINENO" "mmdeviceapi.h" "ac_cv_header_mmdeviceapi_h" "$ac_includes_default" |
| | | if test "x$ac_cv_header_mmdeviceapi_h" = xyes; then : |
| | | have_wasapi=yes |
| | | fi |
| | | |
| | | |
| | | ac_fn_c_check_header_mongrel "$LINENO" "audioclient.h" "ac_cv_header_audioclient_h" "$ac_includes_default" |
| | | if test "x$ac_cv_header_audioclient_h" = xyes; then : |
| | | |
| | | else |
| | | have_wasapi=no |
| | | fi |
| | | |
| | | |
| | | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| | | /* end confdefs.h. */ |
| | | |
| | | #include <windows.h> |
| | | #include <xinput.h> |
| | | XINPUT_GAMEPAD_EX x1; |
| | | |
| | | int |
| | | main () |
| | | { |
| | | |
| | | ; |
| | | return 0; |
| | | } |
| | | _ACEOF |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | have_xinput_gamepadex=yes |
| | | fi |
| | | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
| | | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| | | /* end confdefs.h. */ |
| | | |
| | | #include <windows.h> |
| | | #include <xinput.h> |
| | | XINPUT_STATE_EX s1; |
| | | |
| | | int |
| | | main () |
| | | { |
| | | |
| | | ; |
| | | return 0; |
| | | } |
| | | _ACEOF |
| | | if ac_fn_c_try_compile "$LINENO"; then : |
| | | have_xinput_stateex=yes |
| | | fi |
| | | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
| | | |
| | | if test x$have_ddraw = xyes; then |
| | | |
| | |
| | | if test x$have_xinput = xyes; then |
| | | |
| | | $as_echo "#define HAVE_XINPUT_H 1" >>confdefs.h |
| | | |
| | | fi |
| | | if test x$have_xinput_gamepadex = xyes; then |
| | | |
| | | $as_echo "#define HAVE_XINPUT_GAMEPAD_EX 1" >>confdefs.h |
| | | |
| | | fi |
| | | if test x$have_xinput_stateex = xyes; then |
| | | |
| | | $as_echo "#define HAVE_XINPUT_STATE_EX 1" >>confdefs.h |
| | | |
| | | fi |
| | | |
| | |
| | | CheckWarnAll |
| | | |
| | | case "$host" in |
| | | *-*-linux*|*-*-uclinux*|*-*-gnu*|*-*-k*bsd*-gnu|*-*-bsdi*|*-*-freebsd*|*-*-dragonfly*|*-*-netbsd*|*-*-openbsd*|*-*-sysv5*|*-*-solaris*|*-*-hpux*|*-*-aix*|*-*-minix*) |
| | | *-*-linux*|*-*-uclinux*|*-*-gnu*|*-*-k*bsd*-gnu|*-*-bsdi*|*-*-freebsd*|*-*-dragonfly*|*-*-netbsd*|*-*-openbsd*|*-*-sysv5*|*-*-solaris*|*-*-hpux*|*-*-aix*|*-*-minix*|*-*-nto*) |
| | | case "$host" in |
| | | *-raspberry-linux*) |
| | | # Raspberry Pi |
| | | ARCH=linux |
| | | RPI_CFLAGS="-I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux" |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS" |
| | | SDL_CFLAGS="$SDL_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -L/opt/vc/lib -lbcm_host -ldl" |
| | | |
| | | if test x$enable_video = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/video/raspberry/*.c" |
| | | # FIXME: confdefs? Not AC_DEFINE? |
| | | $as_echo "#define SDL_VIDEO_DRIVER_RPI 1" >>confdefs.h |
| | | SUMMARY_video="${SUMMARY_video} rpi" |
| | | fi |
| | | ;; |
| | | *-*-androideabi*) |
| | | *-*-android*) |
| | | # Android |
| | | ARCH=android |
| | | ANDROID_CFLAGS="-DGL_GLEXT_PROTOTYPES" |
| | |
| | | SDL_CFLAGS="$SDL_CFLAGS $ANDROID_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $ANDROID_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -ldl -lGLESv1_CM -lGLESv2 -llog -landroid" |
| | | SDLMAIN_SOURCES="$srcdir/src/main/android/*.c" |
| | | |
| | | if test x$enable_video = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/core/android/*.c $srcdir/src/video/android/*.c" |
| | |
| | | *-*-bsdi*) ARCH=bsdi ;; |
| | | *-*-freebsd*) ARCH=freebsd ;; |
| | | *-*-dragonfly*) ARCH=freebsd ;; |
| | | *-raspberry-netbsd*) |
| | | # Raspberry Pi |
| | | ARCH=netbsd |
| | | RPI_CFLAGS="-I/usr/pkg/include -I/usr/pkg/include/interface/vcos/pthreads -I/usr/pkg/include/interface/vmcs_host/linux" |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS" |
| | | SDL_CFLAGS="$SDL_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lbcm_host -ldl" |
| | | |
| | | if test x$enable_video = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/video/raspberry/*.c" |
| | | $as_echo "#define SDL_VIDEO_DRIVER_RPI 1" >>confdefs.h |
| | | SUMMARY_video="${SUMMARY_video} raspberry" |
| | | fi |
| | | ;; |
| | | *-*-netbsd*) ARCH=netbsd ;; |
| | | *-*-openbsd*) ARCH=openbsd ;; |
| | | *-*-sysv5*) ARCH=sysv5 ;; |
| | |
| | | *-*-hpux*) ARCH=hpux ;; |
| | | *-*-aix*) ARCH=aix ;; |
| | | *-*-minix*) ARCH=minix ;; |
| | | *-*-nto*) ARCH=nto |
| | | CheckQNXVideo |
| | | ;; |
| | | esac |
| | | CheckVisibilityHidden |
| | | CheckDeclarationAfterStatement |
| | |
| | | CheckOSS |
| | | CheckALSA |
| | | CheckPulseAudio |
| | | CheckJACK |
| | | CheckARTSC |
| | | CheckESD |
| | | CheckNAS |
| | | CheckSNDIO |
| | | CheckFusionSound |
| | | CheckLibSampleRate |
| | | # Need to check for Raspberry PI first and add platform specific compiler flags, otherwise the test for GLES fails! |
| | | CheckRPI |
| | | CheckX11 |
| | | CheckDirectFB |
| | | CheckFusionSound |
| | | CheckKMSDRM |
| | | CheckOpenGLX11 |
| | | CheckOpenGLESX11 |
| | | CheckVulkan |
| | | CheckMir |
| | | CheckWayland |
| | | CheckLibUDev |
| | |
| | | CheckLinuxVersion |
| | | CheckRPATH |
| | | CheckVivanteVideo |
| | | |
| | | # Set up files for the audio library |
| | | if test x$enable_audio = xyes; then |
| | | case $ARCH in |
| | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_SUNAUDIO 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/sun/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} sun" |
| | | have_audio=yes |
| | | ;; |
| | | netbsd) # Don't use this on OpenBSD, it's busted. |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_BSD 1" >>confdefs.h |
| | | $as_echo "#define SDL_AUDIO_DRIVER_NETBSD 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/bsd/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/audio/netbsd/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} netbsd" |
| | | have_audio=yes |
| | | ;; |
| | | aix) |
| | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_PAUDIO 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/paudio/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} paudio" |
| | | have_audio=yes |
| | | ;; |
| | | android) |
| | |
| | | SOURCES="$SOURCES $srcdir/src/audio/android/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} android" |
| | | have_audio=yes |
| | | ;; |
| | | nto) |
| | | CheckQNXAudio |
| | | ;; |
| | | esac |
| | | fi |
| | |
| | | $as_echo "#define SDL_JOYSTICK_LINUX 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c" |
| | | have_joystick=yes |
| | | ;; |
| | | android) |
| | |
| | | $as_echo "#define SDL_JOYSTICK_ANDROID 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/joystick/android/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c" |
| | | have_joystick=yes |
| | | ;; |
| | | esac |
| | | fi |
| | | # Set up files for the haptic library |
| | | if test x$enable_haptic = xyes; then |
| | | if test x$use_input_events = xyes; then |
| | | case $ARCH in |
| | | linux) |
| | | case $ARCH in |
| | | linux) |
| | | if test x$use_input_events = xyes; then |
| | | |
| | | $as_echo "#define SDL_HAPTIC_LINUX 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/haptic/linux/*.c" |
| | | have_haptic=yes |
| | | ;; |
| | | esac |
| | | fi |
| | | SOURCES="$SOURCES $srcdir/src/haptic/linux/*.c" |
| | | have_haptic=yes |
| | | fi |
| | | ;; |
| | | android) |
| | | |
| | | $as_echo "#define SDL_HAPTIC_ANDROID 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/haptic/android/*.c" |
| | | have_haptic=yes |
| | | ;; |
| | | esac |
| | | fi |
| | | # Set up files for the power library |
| | | if test x$enable_power = xyes; then |
| | |
| | | fi |
| | | # Set up files for evdev input |
| | | if test x$use_input_events = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev.c" |
| | | SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev*.c" |
| | | fi |
| | | # Set up other core UNIX files |
| | | SOURCES="$SOURCES $srcdir/src/core/unix/*.c" |
| | | ;; |
| | | *-*-cygwin* | *-*-mingw32*) |
| | | ARCH=win32 |
| | |
| | | ac_default_prefix=$BUILD_PREFIX |
| | | fi |
| | | fi |
| | | CheckDeclarationAfterStatement |
| | | CheckDummyVideo |
| | | CheckDiskAudio |
| | | CheckDummyAudio |
| | | CheckWINDOWS |
| | | CheckWINDOWSGL |
| | | CheckWINDOWSGLES |
| | | CheckVulkan |
| | | CheckDIRECTX |
| | | |
| | | # Set up the core platform files |
| | |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/directsound/*.c" |
| | | fi |
| | | if test x$have_xaudio2 = xyes; then |
| | | if test x$have_wasapi = xyes; then |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_XAUDIO2 1" >>confdefs.h |
| | | $as_echo "#define SDL_AUDIO_DRIVER_WASAPI 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/xaudio2/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/audio/wasapi/*.c" |
| | | fi |
| | | have_audio=yes |
| | | fi |
| | |
| | | CheckDummyVideo |
| | | CheckDiskAudio |
| | | CheckDummyAudio |
| | | CheckDLOPEN |
| | | CheckHaikuVideo |
| | | CheckHaikuGL |
| | | CheckPTHREAD |
| | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_HAIKU 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/haiku/*.cc" |
| | | SUMMARY_audio="${SUMMARY_audio} haiku" |
| | | have_audio=yes |
| | | fi |
| | | # Set up files for the joystick library |
| | |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/timer/haiku/*.c" |
| | | have_timers=yes |
| | | fi |
| | | # Set up files for the shared object loading library |
| | | if test x$enable_loadso = xyes; then |
| | | |
| | | $as_echo "#define SDL_LOADSO_HAIKU 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/loadso/haiku/*.c" |
| | | have_loadso=yes |
| | | fi |
| | | # Set up files for the system power library |
| | | if test x$enable_power = xyes; then |
| | |
| | | # The Haiku platform requires special setup. |
| | | SOURCES="$srcdir/src/main/haiku/*.cc $SOURCES" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lroot -lbe -lmedia -lgame -ldevice -ltextencoding" |
| | | # Haiku's x86 spins use libstdc++.r4.so (for binary compat?), but |
| | | # other spins, like x86-64, use a more standard "libstdc++.so.*" |
| | | as_ac_File=`$as_echo "ac_cv_file_"/boot/system/lib/libstdc++.r4.so"" | $as_tr_sh` |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/boot/system/lib/libstdc++.r4.so\"" >&5 |
| | | $as_echo_n "checking for \"/boot/system/lib/libstdc++.r4.so\"... " >&6; } |
| | | if eval \${$as_ac_File+:} false; then : |
| | | $as_echo_n "(cached) " >&6 |
| | | else |
| | | test "$cross_compiling" = yes && |
| | | as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 |
| | | if test -r ""/boot/system/lib/libstdc++.r4.so""; then |
| | | eval "$as_ac_File=yes" |
| | | else |
| | | eval "$as_ac_File=no" |
| | | fi |
| | | fi |
| | | eval ac_res=\$$as_ac_File |
| | | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 |
| | | $as_echo "$ac_res" >&6; } |
| | | if eval test \"x\$"$as_ac_File"\" = x"yes"; then : |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lstdc++.r4" |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lstdc++" |
| | | fi |
| | | |
| | | ;; |
| | | arm*-apple-darwin*) |
| | | # iOS - We are not writing anything to confdefs.h because you have to replace |
| | | # SDL_config.h for SDL_config_iphoneos.h anyway |
| | | arm*-apple-darwin*|*-ios-*) |
| | | ARCH=ios |
| | | |
| | | CheckVisibilityHidden |
| | |
| | | CheckDiskAudio |
| | | CheckDummyAudio |
| | | CheckDLOPEN |
| | | CheckCOCOA |
| | | CheckMETAL |
| | | CheckVulkan |
| | | CheckPTHREAD |
| | | |
| | | |
| | | # Set up files for the audio library |
| | | if test x$enable_audio = xyes; then |
| | | |
| | | $as_echo "#define SDL_AUDIO_DRIVER_COREAUDIO 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/audio/coreaudio/*.m" |
| | | SUMMARY_audio="${SUMMARY_audio} coreaudio" |
| | | have_audio=yes |
| | | fi |
| | | # Set up files for the joystick library |
| | | if test x$enable_joystick = xyes; then |
| | | |
| | | $as_echo "#define SDL_JOYSTICK_MFI 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/joystick/iphoneos/*.m" |
| | | SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c" |
| | | have_joystick=yes |
| | | fi |
| | | # Set up files for the haptic library |
| | |
| | | #fi |
| | | # Set up files for the power library |
| | | if test x$enable_power = xyes; then |
| | | |
| | | $as_echo "#define SDL_POWER_UIKIT 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/power/uikit/*.m" |
| | | have_power=yes |
| | | fi |
| | |
| | | SOURCES="$SOURCES $srcdir/src/filesystem/cocoa/*.m" |
| | | have_filesystem=yes |
| | | fi |
| | | # Set up additional files for the file library |
| | | if test x$enable_file = xyes; then |
| | | |
| | | $as_echo "#define SDL_FILESYSTEM_COCOA 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m" |
| | | fi |
| | | # Set up files for the timer library |
| | | if test x$enable_timers = xyes; then |
| | | |
| | | $as_echo "#define SDL_TIMER_UNIX 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" |
| | | have_timers=yes |
| | | fi |
| | | # Set up additional files for the file library |
| | | if test x$enable_file = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m" |
| | | fi |
| | | # Set up other core UNIX files |
| | | SOURCES="$SOURCES $srcdir/src/core/unix/*.c" |
| | | # The iOS platform requires special setup. |
| | | |
| | | $as_echo "#define SDL_VIDEO_DRIVER_UIKIT 1" >>confdefs.h |
| | | |
| | | |
| | | $as_echo "#define SDL_VIDEO_OPENGL_ES2 1" >>confdefs.h |
| | | |
| | | |
| | | $as_echo "#define SDL_VIDEO_OPENGL_ES 1" >>confdefs.h |
| | | |
| | | |
| | | $as_echo "#define SDL_VIDEO_RENDER_OGL_ES 1" >>confdefs.h |
| | | |
| | | |
| | | $as_echo "#define SDL_VIDEO_RENDER_OGL_ES2 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/video/uikit/*.m" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS -fpascal-strings" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm -liconv -lobjc" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Foundation" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AVFoundation" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AudioToolbox" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreGraphics" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreMotion" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Foundation" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,GameController" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit" |
| | | |
| | | if test x$enable_render = xyes -a x$enable_render_metal = xyes; then |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Metal" |
| | | fi |
| | | ;; |
| | | *-*-darwin* ) |
| | | # This could be either full "Mac OS X", or plain "Darwin" which is |
| | |
| | | CheckDummyAudio |
| | | CheckDLOPEN |
| | | CheckCOCOA |
| | | CheckMETAL |
| | | CheckX11 |
| | | CheckMacGL |
| | | CheckOpenGLX11 |
| | | CheckVulkan |
| | | CheckPTHREAD |
| | | |
| | | # Set up files for the audio library |
| | |
| | | if test x$enable_file = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m" |
| | | fi |
| | | # Set up other core UNIX files |
| | | SOURCES="$SOURCES $srcdir/src/core/unix/*.c" |
| | | # The Mac OS X platform requires special setup. |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS -fpascal-strings" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lobjc" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreVideo" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Cocoa" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Carbon" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,IOKit" |
| | | |
| | | if test x$enable_render = xyes -a x$enable_render_metal = xyes; then |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-weak_framework,QuartzCore -Wl,-weak_framework,Metal" |
| | | fi |
| | | ;; |
| | | *-nacl|*-pnacl) |
| | | ARCH=nacl |
| | |
| | | |
| | | # Set up files for the timer library |
| | | if test x$enable_timers = xyes; then |
| | | $as_echo "#define SDL_TIMER_UNIX 1" >>confdefs.h |
| | | |
| | | $as_echo "#define SDL_TIMER_UNIX 1" >>confdefs.h |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" |
| | | have_timers=yes |
| | |
| | | |
| | | SDLMAIN_OBJECTS=`echo $SDLMAIN_SOURCES` |
| | | SDLMAIN_DEPENDS=`echo $SDLMAIN_SOURCES` |
| | | SDLMAIN_OBJECTS=`echo "$SDLMAIN_OBJECTS" | sed 's,[^ ]*/\([^ ]*\)\.c,$(objects)/\1.o,g'` |
| | | SDLMAIN_OBJECTS=`echo "$SDLMAIN_OBJECTS" | sed 's,[^ ]*/\([^ ]*\)\.c,$(objects)/\1.lo,g'` |
| | | SDLMAIN_DEPENDS=`echo "$SDLMAIN_DEPENDS" | sed "s,\\([^ ]*\\)/\\([^ ]*\\)\\.c,\\\\ |
| | | \\$(objects)/\\2.o: \\1/\\2.c\\\\ |
| | | \\$(objects)/\\2.lo: \\1/\\2.c\\\\ |
| | | \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@,g"` |
| | | |
| | | SDLTEST_OBJECTS=`echo $SDLTEST_SOURCES` |
| | | SDLTEST_DEPENDS=`echo $SDLTEST_SOURCES` |
| | | SDLTEST_OBJECTS=`echo "$SDLTEST_OBJECTS" | sed 's,[^ ]*/\([^ ]*\)\.c,$(objects)/\1.o,g'` |
| | | SDLTEST_OBJECTS=`echo "$SDLTEST_OBJECTS" | sed 's,[^ ]*/\([^ ]*\)\.c,$(objects)/\1.lo,g'` |
| | | SDLTEST_DEPENDS=`echo "$SDLTEST_DEPENDS" | sed "s,\\([^ ]*\\)/\\([^ ]*\\)\\.c,\\\\ |
| | | \\$(objects)/\\2.o: \\1/\\2.c\\\\ |
| | | \\$(objects)/\\2.lo: \\1/\\2.c\\\\ |
| | | \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@,g"` |
| | | |
| | | # Set runtime shared library paths as needed |
| | |
| | | SUMMARY="${SUMMARY}X11 libraries :${SUMMARY_video_x11}\n" |
| | | fi |
| | | SUMMARY="${SUMMARY}Input drivers :${SUMMARY_input}\n" |
| | | if test x$enable_libudev = xyes; then |
| | | SUMMARY="${SUMMARY}Using libudev : YES\n" |
| | | if test x$have_samplerate_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using libsamplerate : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using libudev : NO\n" |
| | | SUMMARY="${SUMMARY}Using libsamplerate : NO\n" |
| | | fi |
| | | if test x$have_libudev_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using libudev : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using libudev : NO\n" |
| | | fi |
| | | if test x$have_dbus_dbus_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using dbus : YES\n" |
| | | SUMMARY="${SUMMARY}Using dbus : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using dbus : NO\n" |
| | | SUMMARY="${SUMMARY}Using dbus : NO\n" |
| | | fi |
| | | if test x$enable_ime = xyes; then |
| | | SUMMARY="${SUMMARY}Using ime : YES\n" |
| | | SUMMARY="${SUMMARY}Using ime : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using ime : NO\n" |
| | | SUMMARY="${SUMMARY}Using ime : NO\n" |
| | | fi |
| | | if test x$have_ibus_ibus_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using ibus : YES\n" |
| | | SUMMARY="${SUMMARY}Using ibus : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using ibus : NO\n" |
| | | SUMMARY="${SUMMARY}Using ibus : NO\n" |
| | | fi |
| | | if test x$have_fcitx_frontend_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using fcitx : YES\n" |
| | | SUMMARY="${SUMMARY}Using fcitx : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using fcitx : NO\n" |
| | | SUMMARY="${SUMMARY}Using fcitx : NO\n" |
| | | fi |
| | | ac_config_commands="$ac_config_commands summary" |
| | | |
| | |
| | | # |
| | | SDL_MAJOR_VERSION=2 |
| | | SDL_MINOR_VERSION=0 |
| | | SDL_MICRO_VERSION=5 |
| | | SDL_INTERFACE_AGE=1 |
| | | SDL_BINARY_AGE=5 |
| | | SDL_MICRO_VERSION=8 |
| | | SDL_INTERFACE_AGE=0 |
| | | SDL_BINARY_AGE=8 |
| | | SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION |
| | | |
| | | AC_SUBST(SDL_MAJOR_VERSION) |
| | |
| | | esac |
| | | |
| | | dnl Set up the compiler and linker flags |
| | | INCLUDE="-I$srcdir/include" |
| | | INCLUDE="-I$srcdir/include -idirafter $srcdir/src/video/khronos" |
| | | if test x$srcdir != x.; then |
| | | INCLUDE="-Iinclude $INCLUDE" |
| | | elif test -d .hg; then |
| | |
| | | |
| | | dnl Check for C library headers |
| | | AC_HEADER_STDC |
| | | AC_CHECK_HEADERS(sys/types.h stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h strings.h inttypes.h stdint.h ctype.h math.h iconv.h signal.h) |
| | | AC_CHECK_HEADERS(sys/types.h stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h strings.h wchar.h inttypes.h stdint.h limits.h ctype.h math.h float.h iconv.h signal.h) |
| | | |
| | | dnl Check for typedefs, structures, etc. |
| | | AC_TYPE_SIZE_T |
| | |
| | | AC_DEFINE(HAVE_MPROTECT, 1, [ ]) |
| | | ]), |
| | | ) |
| | | AC_CHECK_FUNCS(malloc calloc realloc free getenv setenv putenv unsetenv qsort abs bcopy memset memcpy memmove strlen strlcpy strlcat strdup _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp vsscanf vsnprintf fseeko fseeko64 sigaction setjmp nanosleep sysconf sysctlbyname) |
| | | AC_CHECK_FUNCS(malloc calloc realloc free getenv setenv putenv unsetenv qsort abs bcopy memset memcpy memmove wcslen wcscmp strlen strlcpy strlcat _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp vsscanf vsnprintf fopen64 fseeko fseeko64 sigaction setjmp nanosleep sysconf sysctlbyname getauxval poll) |
| | | |
| | | AC_CHECK_LIB(m, pow, [LIBS="$LIBS -lm"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm"]) |
| | | AC_CHECK_FUNCS(atan atan2 acos asin ceil copysign cos cosf fabs floor log pow scalbn sin sinf sqrt sqrtf tan tanf) |
| | | AC_CHECK_FUNCS(acos acosf asin asinf atan atanf atan2 atan2f ceil ceilf copysign copysignf cos cosf fabs fabsf floor floorf fmod fmodf log logf log10 log10f pow powf scalbn scalbnf sin sinf sqrt sqrtf tan tanf) |
| | | |
| | | AC_CHECK_LIB(iconv, iconv_open, [LIBS="$LIBS -liconv"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -liconv"]) |
| | | AC_CHECK_FUNCS(iconv) |
| | | |
| | | AC_CHECK_MEMBER(struct sigaction.sa_sigaction,[AC_DEFINE(HAVE_SA_SIGACTION)], ,[#include <signal.h>]) |
| | | AC_CHECK_MEMBER(struct sigaction.sa_sigaction,[AC_DEFINE([HAVE_SA_SIGACTION], 1, [ ])], ,[#include <signal.h>]) |
| | | |
| | | dnl Check for additional non-standard headers |
| | | AC_CHECK_HEADERS(libunwind.h) |
| | | fi |
| | | |
| | | dnl AC_CHECK_SIZEOF(void*) |
| | |
| | | SOURCES="$SOURCES $srcdir/src/thread/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/timer/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/video/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/video/yuv2rgb/*.c" |
| | | |
| | | dnl Enable/disable various subsystems of the SDL library |
| | | |
| | |
| | | ;; |
| | | esac |
| | | AC_ARG_ENABLE(ssemath, |
| | | AC_HELP_STRING([--enable-ssemath], [Allow GCC to use SSE floating point math [[default=no]]]), |
| | | AC_HELP_STRING([--enable-ssemath], [Allow GCC to use SSE floating point math [[default=maybe]]]), |
| | | , enable_ssemath=$default_ssemath) |
| | | if test x$enable_ssemath = xno; then |
| | | if test x$have_gcc_sse = xyes -o x$have_gcc_sse2 = xyes; then |
| | | if test x$have_gcc_sse = xyes -o x$have_gcc_sse2 = xyes -o x$have_gcc_sse3 = xyes; then |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS -mfpmath=387" |
| | | fi |
| | | fi |
| | |
| | | fi |
| | | |
| | | AC_ARG_ENABLE(sse2, |
| | | AC_HELP_STRING([--enable-sse2], [use SSE2 assembly routines [[default=no]]]), |
| | | AC_HELP_STRING([--enable-sse2], [use SSE2 assembly routines [[default=maybe]]]), |
| | | , enable_sse2=$default_ssemath) |
| | | if test x$enable_sse2 = xyes; then |
| | | save_CFLAGS="$CFLAGS" |
| | |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $sse2_CFLAGS" |
| | | SUMMARY_math="${SUMMARY_math} sse2" |
| | | fi |
| | | fi |
| | | |
| | | AC_ARG_ENABLE(sse3, |
| | | AC_HELP_STRING([--enable-sse3], [use SSE3 assembly routines [[default=maybe]]]), |
| | | , enable_sse3=$default_ssemath) |
| | | if test x$enable_sse3 = xyes; then |
| | | save_CFLAGS="$CFLAGS" |
| | | have_gcc_sse3=no |
| | | AC_MSG_CHECKING(for GCC -msse3 option) |
| | | sse3_CFLAGS="-msse3" |
| | | CFLAGS="$save_CFLAGS $sse3_CFLAGS" |
| | | |
| | | AC_TRY_COMPILE([ |
| | | #ifdef __MINGW32__ |
| | | #include <_mingw.h> |
| | | #ifdef __MINGW64_VERSION_MAJOR |
| | | #include <intrin.h> |
| | | #else |
| | | #include <pmmintrin.h> |
| | | #endif |
| | | #else |
| | | #include <pmmintrin.h> |
| | | #endif |
| | | #ifndef __SSE2__ |
| | | #error Assembler CPP flag not enabled |
| | | #endif |
| | | ],[ |
| | | ],[ |
| | | have_gcc_sse3=yes |
| | | ]) |
| | | AC_MSG_RESULT($have_gcc_sse3) |
| | | CFLAGS="$save_CFLAGS" |
| | | |
| | | if test x$have_gcc_sse3 = xyes; then |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $sse3_CFLAGS" |
| | | SUMMARY_math="${SUMMARY_math} sse3" |
| | | fi |
| | | fi |
| | | |
| | | AC_CHECK_HEADER(immintrin.h, |
| | | have_immintrin_h_hdr=yes, |
| | | have_immintrin_h_hdr=no) |
| | | if test x$have_immintrin_h_hdr = xyes; then |
| | | AC_DEFINE(HAVE_IMMINTRIN_H, 1, [ ]) |
| | | fi |
| | | |
| | | AC_ARG_ENABLE(altivec, |
| | |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ALSA_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} alsa" |
| | | fi |
| | | have_audio=yes |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | dnl Find JACK Audio |
| | | CheckJACK() |
| | | { |
| | | AC_ARG_ENABLE(jack, |
| | | AC_HELP_STRING([--enable-jack], [use JACK audio [[default=yes]]]), |
| | | , enable_jack=yes) |
| | | if test x$enable_audio = xyes -a x$enable_jack = xyes; then |
| | | audio_jack=no |
| | | |
| | | JACK_REQUIRED_VERSION=0.125 |
| | | |
| | | AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| | | AC_MSG_CHECKING(for JACK $JACK_REQUIRED_VERSION support) |
| | | if test x$PKG_CONFIG != xno; then |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $JACK_REQUIRED_VERSION jack; then |
| | | JACK_CFLAGS=`$PKG_CONFIG --cflags jack` |
| | | JACK_LIBS=`$PKG_CONFIG --libs jack` |
| | | audio_jack=yes |
| | | fi |
| | | fi |
| | | AC_MSG_RESULT($audio_jack) |
| | | |
| | | if test x$audio_jack = xyes; then |
| | | AC_ARG_ENABLE(jack-shared, |
| | | AC_HELP_STRING([--enable-jack-shared], [dynamically load JACK audio support [[default=yes]]]), |
| | | , enable_jack_shared=yes) |
| | | jack_lib=[`find_lib "libjack.so.*" "$JACK_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`] |
| | | |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_JACK, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/jack/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $JACK_CFLAGS" |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_jack_shared = xyes; then |
| | | AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic JACK audio loading]) |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_jack_shared = xyes && test x$jack_lib != x; then |
| | | echo "-- dynamic libjack -> $jack_lib" |
| | | AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_JACK_DYNAMIC, "$jack_lib", [ ]) |
| | | SUMMARY_audio="${SUMMARY_audio} jack(dynamic)" |
| | | |
| | | case "$host" in |
| | | # On Solaris, jack must be linked deferred explicitly |
| | | # to prevent undefined symbol failures. |
| | | *-*-solaris*) |
| | | JACK_LIBS=`echo $JACK_LIBS | sed 's/\-l/-Wl,-l/g'` |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-zdeferred $JACK_LIBS -Wl,-znodeferred" |
| | | esac |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $JACK_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} jack" |
| | | fi |
| | | have_audio=yes |
| | | fi |
| | |
| | | fi |
| | | } |
| | | |
| | | dnl Find FusionSound |
| | | CheckFusionSound() |
| | | { |
| | | AC_ARG_ENABLE(fusionsound, |
| | | AC_HELP_STRING([--enable-fusionsound], [use FusionSound audio driver [[default=no]]]), |
| | | , enable_fusionsound=no) |
| | | if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then |
| | | fusionsound=no |
| | | |
| | | FUSIONSOUND_REQUIRED_VERSION=1.1.1 |
| | | |
| | | AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| | | AC_MSG_CHECKING(for FusionSound $FUSIONSOUND_REQUIRED_VERSION support) |
| | | if test x$PKG_CONFIG != xno; then |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then |
| | | FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound` |
| | | FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound` |
| | | fusionsound=yes |
| | | fi |
| | | fi |
| | | AC_MSG_RESULT($fusionsound) |
| | | |
| | | if test x$fusionsound = xyes; then |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_FUSIONSOUND, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS" |
| | | |
| | | AC_ARG_ENABLE(fusionsound-shared, |
| | | AC_HELP_STRING([--enable-fusionsound-shared], [dynamically load fusionsound audio support [[default=yes]]]), |
| | | , enable_fusionsound_shared=yes) |
| | | fusionsound_shared=no |
| | | AC_MSG_CHECKING(for FusionSound dynamic loading support) |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic fusionsound loading]) |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC, "libfusionsound.so", [ ]) |
| | | fusionsound_shared=yes |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)" |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound" |
| | | fi |
| | | AC_MSG_RESULT($fusionsound_shared) |
| | | |
| | | have_audio=yes |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | dnl rcg07142001 See if the user wants the disk writer audio driver... |
| | | CheckDiskAudio() |
| | | { |
| | |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_DUMMY, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/dummy/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} dummy" |
| | | fi |
| | | } |
| | | |
| | | dnl See if libsamplerate is available |
| | | CheckLibSampleRate() |
| | | { |
| | | AC_ARG_ENABLE(libsamplerate, |
| | | AC_HELP_STRING([--enable-libsamplerate], [use libsamplerate for audio rate conversion [[default=yes]]]), |
| | | , enable_libsamplerate=yes) |
| | | if test x$enable_libsamplerate = xyes; then |
| | | AC_CHECK_HEADER(samplerate.h, |
| | | have_samplerate_h_hdr=yes, |
| | | have_samplerate_h_hdr=no) |
| | | if test x$have_samplerate_h_hdr = xyes; then |
| | | AC_DEFINE(HAVE_LIBSAMPLERATE_H, 1, [ ]) |
| | | |
| | | AC_ARG_ENABLE(libsamplerate-shared, |
| | | AC_HELP_STRING([--enable-libsamplerate-shared], [dynamically load libsamplerate [[default=yes]]]), |
| | | , enable_libsamplerate_shared=yes) |
| | | |
| | | samplerate_lib=[`find_lib "libsamplerate.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`] |
| | | |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_libsamplerate_shared = xyes; then |
| | | AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic libsamplerate loading]) |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_libsamplerate_shared = xyes && test x$samplerate_lib != x; then |
| | | echo "-- dynamic libsamplerate -> $samplerate_lib" |
| | | AC_DEFINE_UNQUOTED(SDL_LIBSAMPLERATE_DYNAMIC, "$samplerate_lib", [ ]) |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lsamplerate" |
| | | fi |
| | | fi |
| | | fi |
| | | } |
| | | |
| | |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH, 1, [ ]) |
| | | fi |
| | | |
| | | WAYLAND_PROTOCOLS_UNSTABLE="relative-pointer-unstable-v1 pointer-constraints-unstable-v1" |
| | | WAYLAND_PROTOCOLS_UNSTABLE="relative-pointer-unstable-v1 pointer-constraints-unstable-v1 xdg-shell-unstable-v6" |
| | | |
| | | SOURCES="$SOURCES $srcdir/src/video/wayland/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $WAYLAND_CFLAGS -I\$(gen)" |
| | |
| | | CheckMir() |
| | | { |
| | | AC_ARG_ENABLE(video-mir, |
| | | AC_HELP_STRING([--enable-video-mir], [use Mir video driver [[default=yes]]]), |
| | | ,enable_video_mir=yes) |
| | | AC_HELP_STRING([--enable-video-mir], [use Mir video driver [[default=no]]]), |
| | | ,enable_video_mir=no) |
| | | |
| | | if test x$enable_video = xyes -a x$enable_video_mir = xyes; then |
| | | AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| | |
| | | save_CFLAGS="$CFLAGS" |
| | | CFLAGS="$save_CFLAGS $MIR_CFLAGS" |
| | | |
| | | dnl This will disable Mir if >= v0.25 is not available |
| | | dnl This will disable Mir if >= v0.26 is not available |
| | | AC_TRY_COMPILE([ |
| | | #include <mir_toolkit/mir_client_library.h> |
| | | ],[ |
| | | MirTouchAction actions = mir_touch_actions |
| | | MirWindowAttrib attrib = mir_window_attrib_state |
| | | ],[ |
| | | video_mir=yes |
| | | ]) |
| | |
| | | #endif |
| | | ],[ |
| | | ],[ |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_NACL) |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_NACL) |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_NACL, 1, [ ]) |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_NACL, 1, [ ]) |
| | | AC_DEFINE(HAVE_POW, 1, [ ]) |
| | | AC_DEFINE(HAVE_OPENGLES2, 1, [ ]) |
| | | AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ]) |
| | |
| | | } |
| | | |
| | | |
| | | CheckRPI() |
| | | { |
| | | AC_ARG_ENABLE(video-rpi, |
| | | AC_HELP_STRING([--enable-video-rpi], [use Raspberry Pi video driver [[default=yes]]]), |
| | | , enable_video_rpi=yes) |
| | | if test x$enable_video = xyes -a x$enable_video_rpi = xyes; then |
| | | AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| | | if test x$PKG_CONFIG != xno && $PKG_CONFIG --exists bcm_host; then |
| | | RPI_CFLAGS=`$PKG_CONFIG --cflags bcm_host brcmegl` |
| | | RPI_LDFLAGS=`$PKG_CONFIG --libs bcm_host brcmegl` |
| | | elif test x$ARCH = xnetbsd; then |
| | | RPI_CFLAGS="-I/usr/pkg/include -I/usr/pkg/include/interface/vcos/pthreads -I/usr/pkg/include/interface/vmcs_host/linux" |
| | | RPI_LDFLAGS="-Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lbcm_host" |
| | | else |
| | | RPI_CFLAGS="-I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux" |
| | | RPI_LDFLAGS="-Wl,-rpath,/opt/vc/lib -L/opt/vc/lib -lbcm_host" |
| | | fi |
| | | |
| | | # Save the original compiler flags and libraries |
| | | ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS" |
| | | |
| | | # Add the Raspberry Pi compiler flags and libraries |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS"; LIBS="$LIBS $RPI_LDFLAGS" |
| | | |
| | | AC_MSG_CHECKING(for Raspberry Pi) |
| | | have_video_rpi=no |
| | | AC_TRY_LINK([ |
| | | #include <bcm_host.h> |
| | | ],[ |
| | | bcm_host_init(); |
| | | ],[ |
| | | have_video_rpi=yes |
| | | ],[ |
| | | ]) |
| | | AC_MSG_RESULT($have_video_rpi) |
| | | |
| | | # Restore the compiler flags and libraries |
| | | CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs" |
| | | |
| | | if test x$have_video_rpi = xyes; then |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS" |
| | | SDL_CFLAGS="$SDL_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $RPI_LDFLAGS" |
| | | SOURCES="$SOURCES $srcdir/src/video/raspberry/*.c" |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_RPI, 1, [ ]) |
| | | SUMMARY_video="${SUMMARY_video} rpi" |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | dnl Find the X11 include and library directories |
| | | CheckX11() |
| | | { |
| | | |
| | | |
| | | AC_ARG_ENABLE(video-x11, |
| | | AC_HELP_STRING([--enable-video-x11], [use X11 video driver [[default=yes]]]), |
| | | , enable_video_x11=yes) |
| | |
| | | ],[ |
| | | ],[ |
| | | have_const_param_XextAddDisplay=yes |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY) |
| | | AC_DEFINE([SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY], 1, [ ]) |
| | | ]) |
| | | AC_MSG_RESULT($have_const_param_XextAddDisplay) |
| | | |
| | |
| | | XFreeEventData(display, cookie); |
| | | ],[ |
| | | have_XGenericEvent=yes |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS) |
| | | AC_DEFINE([SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS], 1, [ ]) |
| | | ]) |
| | | AC_MSG_RESULT($have_XGenericEvent) |
| | | |
| | |
| | | XITouchClassInfo *t; |
| | | ],[ |
| | | have_xinput2_multitouch=yes |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH) |
| | | AC_DEFINE([SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH], 1, []) |
| | | SUMMARY_video_x11="${SUMMARY_video_x11} xinput2_multitouch" |
| | | ]) |
| | | AC_MSG_RESULT($have_xinput2_multitouch) |
| | |
| | | , enable_video_cocoa=yes) |
| | | if test x$enable_video = xyes -a x$enable_video_cocoa = xyes; then |
| | | save_CFLAGS="$CFLAGS" |
| | | dnl work around that we don't have Objective-C support in autoconf |
| | | dnl Work around that we don't have Objective-C support in autoconf |
| | | CFLAGS="$CFLAGS -x objective-c" |
| | | AC_MSG_CHECKING(for Cocoa framework) |
| | | have_cocoa=no |
| | |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | CheckMETAL() |
| | | { |
| | | AC_ARG_ENABLE(render-metal, |
| | | AC_HELP_STRING([--enable-render-metal], [enable the Metal render driver [[default=yes]]]), |
| | | , enable_render_metal=yes) |
| | | if test x$enable_render = xyes -a x$enable_render_metal = xyes; then |
| | | save_CFLAGS="$CFLAGS" |
| | | dnl Work around that we don't have Objective-C support in autoconf |
| | | CFLAGS="$CFLAGS -x objective-c" |
| | | AC_MSG_CHECKING(for Metal framework) |
| | | have_metal=no |
| | | AC_TRY_COMPILE([ |
| | | #import <Cocoa/Cocoa.h> |
| | | #import <Metal/Metal.h> |
| | | #import <QuartzCore/CAMetalLayer.h> |
| | | |
| | | #if !TARGET_CPU_X86_64 |
| | | #error Metal doesn't work on this configuration |
| | | #endif |
| | | ],[ |
| | | ],[ |
| | | have_metal=yes |
| | | ]) |
| | | CFLAGS="$save_CFLAGS" |
| | | AC_MSG_RESULT($have_metal) |
| | | if test x$have_metal = xyes; then |
| | | AC_DEFINE(SDL_VIDEO_RENDER_METAL, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/render/metal/*.m" |
| | | SUMMARY_video="${SUMMARY_video} metal" |
| | | else |
| | | enable_render_metal=no |
| | | fi |
| | | fi |
| | | } |
| | | |
| | | |
| | | dnl Find DirectFB |
| | | CheckDirectFB() |
| | |
| | | , enable_directfb_shared=yes) |
| | | |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB, 1, [ ]) |
| | | AC_DEFINE(SDL_VIDEO_RENDER_DIRECTFB, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/video/directfb/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS" |
| | | |
| | | AC_MSG_CHECKING(for directfb dynamic loading support) |
| | | directfb_shared=no |
| | | directfb_lib=[`find_lib "libdirectfb.so.*" "$DIRECTFB_LIBS"`] |
| | | directfb_lib=[`find_lib "libdirectfb*.so.*" "$DIRECTFB_LIBS"`] |
| | | # | sed 's/.*\/\(.*\)/\1/; q'`] |
| | | AC_MSG_WARN("directfb $directfb_lib") |
| | | if test x$have_loadso != xyes && \ |
| | |
| | | fi |
| | | } |
| | | |
| | | dnl Find FusionSound |
| | | CheckFusionSound() |
| | | dnl Find KMSDRM |
| | | CheckKMSDRM() |
| | | { |
| | | AC_ARG_ENABLE(fusionsound, |
| | | AC_HELP_STRING([--enable-fusionsound], [use FusionSound audio driver [[default=no]]]), |
| | | , enable_fusionsound=no) |
| | | if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then |
| | | fusionsound=no |
| | | AC_ARG_ENABLE(video-kmsdrm, |
| | | AC_HELP_STRING([--enable-video-kmsdrm], [use KMSDRM video driver [[default=no]]]), |
| | | , enable_video_kmsdrm=no) |
| | | |
| | | FUSIONSOUND_REQUIRED_VERSION=1.1.1 |
| | | if test x$enable_video = xyes -a x$enable_video_kmsdrm = xyes; then |
| | | video_kmsdrm=no |
| | | libdrm_avail=no |
| | | libgbm_avail=no |
| | | |
| | | LIBDRM_REQUIRED_VERSION=2.4.46 |
| | | LIBGBM_REQUIRED_VERSION=9.0.0 |
| | | |
| | | AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| | | AC_MSG_CHECKING(for FusionSound $FUSIONSOUND_REQUIRED_VERSION support) |
| | | if test x$PKG_CONFIG != xno; then |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then |
| | | FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound` |
| | | FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound` |
| | | fusionsound=yes |
| | | fi |
| | | fi |
| | | AC_MSG_RESULT($fusionsound) |
| | | if $PKG_CONFIG --atleast-pkgconfig-version 0.7; then |
| | | if $PKG_CONFIG --atleast-version $LIBDRM_REQUIRED_VERSION libdrm; then |
| | | LIBDRM_CFLAGS=`$PKG_CONFIG --cflags libdrm` |
| | | LIBDRM_LIBS=`$PKG_CONFIG --libs libdrm` |
| | | LIBDRM_PREFIX=`$PKG_CONFIG --variable=prefix libdrm` |
| | | libdrm_avail=yes |
| | | fi |
| | | if $PKG_CONFIG --atleast-version $LIBGBM_REQUIRED_VERSION gbm; then |
| | | LIBGBM_CFLAGS=`$PKG_CONFIG --cflags gbm` |
| | | LIBGBM_LIBS=`$PKG_CONFIG --libs gbm` |
| | | LIBGBM_PREFIX=`$PKG_CONFIG --variable=prefix gbm` |
| | | libgbm_avail=yes |
| | | fi |
| | | if test x$libdrm_avail = xyes -a x$libgbm_avail = xyes; then |
| | | video_kmsdrm=yes |
| | | fi |
| | | |
| | | AC_MSG_CHECKING(for libdrm $LIBDRM_REQUIRED_VERSION library for kmsdrm support) |
| | | AC_MSG_RESULT($libdrm_avail) |
| | | AC_MSG_CHECKING(for libgbm $LIBGBM_REQUIRED_VERSION library for kmsdrm support) |
| | | AC_MSG_RESULT($libgbm_avail) |
| | | |
| | | if test x$fusionsound = xyes; then |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_FUSIONSOUND, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS" |
| | | |
| | | AC_ARG_ENABLE(fusionsound-shared, |
| | | AC_HELP_STRING([--enable-fusionsound-shared], [dynamically load fusionsound audio support [[default=yes]]]), |
| | | , enable_fusionsound_shared=yes) |
| | | fusionsound_shared=no |
| | | AC_MSG_CHECKING(for FusionSound dynamic loading support) |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic fusionsound loading]) |
| | | if test x$video_kmsdrm = xyes; then |
| | | AC_ARG_ENABLE(kmsdrm-shared, |
| | | AC_HELP_STRING([--enable-kmsdrm-shared], [dynamically load kmsdrm support [[default=yes]]]), |
| | | , enable_kmsdrm_shared=yes) |
| | | |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_KMSDRM, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/video/kmsdrm/*.c" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $LIBDRM_CFLAGS $LIBGBM_CFLAGS" |
| | | |
| | | AC_MSG_CHECKING(for kmsdrm dynamic loading support) |
| | | kmsdrm_shared=no |
| | | drm_lib=[`find_lib "libdrm.so.*" "$DRM_LIBS"`] |
| | | gbm_lib=[`find_lib "libgbm.so.*" "$DRM_LIBS"`] |
| | | if test x$have_loadso != xyes && \ |
| | | test x$enable_kmsdrm_shared = xyes; then |
| | | AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic kmsdrm loading]) |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_kmsdrm_shared = xyes && test x$drm_lib != x && test x$gbm_lib != x; then |
| | | kmsdrm_shared=yes |
| | | AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC, "$drm_lib", [ ]) |
| | | AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM, "$gbm_lib", [ ]) |
| | | AC_DEFINE_UNQUOTED(HAVE_KMSDRM_SHARED, "TRUE", [ ]) |
| | | SUMMARY_video="${SUMMARY_video} kmsdrm(dynamic)" |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $LIBDRM_LIBS $LIBGBM_LIBS" |
| | | SUMMARY_video="${SUMMARY_video} kmsdrm" |
| | | fi |
| | | AC_MSG_RESULT($kmsdrm_shared) |
| | | have_video=yes |
| | | fi |
| | | fi |
| | | if test x$have_loadso = xyes && \ |
| | | test x$enable_fusionsound_shared = xyes; then |
| | | AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC, "libfusionsound.so", [ ]) |
| | | fusionsound_shared=yes |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)" |
| | | else |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS" |
| | | SUMMARY_audio="${SUMMARY_audio} fusionsound" |
| | | fi |
| | | AC_MSG_RESULT($fusionsound_shared) |
| | | |
| | | have_audio=yes |
| | | fi |
| | | fi |
| | | } |
| | |
| | | SOURCES="$SOURCES $srcdir/src/video/dummy/*.c" |
| | | have_video=yes |
| | | SUMMARY_video="${SUMMARY_video} dummy" |
| | | fi |
| | | } |
| | | |
| | | dnl Set up the QNX video driver if enabled |
| | | CheckQNXVideo() |
| | | { |
| | | if test x$enable_video = xyes; then |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_QNX, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/video/qnx/*.c" |
| | | have_video=yes |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lscreen -lEGL -lGLESv2" |
| | | SUMMARY_video="${SUMMARY_video} qnx" |
| | | fi |
| | | } |
| | | |
| | | dnl Set up the QNX audio driver if enabled |
| | | CheckQNXAudio() |
| | | { |
| | | if test x$enable_audio = xyes; then |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_QSA, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/qsa/*.c" |
| | | have_audio=yes |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lasound" |
| | | SUMMARY_audio="${SUMMARY_audio} qsa" |
| | | fi |
| | | } |
| | | |
| | |
| | | fi |
| | | } |
| | | |
| | | dnl Check to see if Vulkan support is desired |
| | | AC_ARG_ENABLE(video-vulkan, |
| | | AC_HELP_STRING([--enable-video-vulkan], [include Vulkan support [[default=yes]]]), |
| | | , enable_video_vulkan=yes) |
| | | |
| | | dnl Find Vulkan Header |
| | | CheckVulkan() |
| | | { |
| | | if test x$enable_video = xyes -a x$enable_video_vulkan = xyes; then |
| | | case "$host" in |
| | | *-*-android*) |
| | | AC_TRY_COMPILE([ |
| | | #if defined(__ARM_ARCH) && __ARM_ARCH < 7 |
| | | #error Vulkan doesn't work on this configuration |
| | | #endif |
| | | ],[ |
| | | ],[ |
| | | ],[ |
| | | enable_video_vulkan=no |
| | | ]) |
| | | ;; |
| | | *-*-darwin*) |
| | | save_CFLAGS="$CFLAGS" |
| | | dnl Work around that we don't have Objective-C support in autoconf |
| | | CFLAGS="$CFLAGS -x objective-c" |
| | | AC_TRY_COMPILE([ |
| | | #include <Cocoa/Cocoa.h> |
| | | #include <Metal/Metal.h> |
| | | #include <QuartzCore/CAMetalLayer.h> |
| | | |
| | | #if !TARGET_CPU_X86_64 |
| | | #error Vulkan doesn't work on this configuration |
| | | #endif |
| | | ],[ |
| | | ],[ |
| | | ],[ |
| | | enable_video_vulkan=no |
| | | ]) |
| | | CFLAGS="$save_CFLAGS" |
| | | ;; |
| | | *) |
| | | ;; |
| | | 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. |
| | | AC_MSG_WARN([Vulkan does not work on this configuration.]) |
| | | fi |
| | | fi |
| | | if test x$enable_video_vulkan = xyes; then |
| | | AC_DEFINE(SDL_VIDEO_VULKAN, 1, [ ]) |
| | | SUMMARY_video="${SUMMARY_video} vulkan" |
| | | fi |
| | | } |
| | | |
| | | dnl See if we can use the new unified event interface in Linux 2.4 |
| | | CheckInputEvents() |
| | | { |
| | |
| | | have_libudev_h_hdr=no) |
| | | if test x$have_libudev_h_hdr = xyes; then |
| | | AC_DEFINE(HAVE_LIBUDEV_H, 1, [ ]) |
| | | |
| | | udev_lib=[`find_lib "libudev.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`] |
| | | if test x$udev_lib != x; then |
| | | echo "-- dynamic udev -> $udev_lib" |
| | | AC_DEFINE_UNQUOTED(SDL_UDEV_DYNAMIC, "$udev_lib", [ ]) |
| | | fi |
| | | fi |
| | | fi |
| | | } |
| | |
| | | AC_HELP_STRING([--enable-pthread-sem], [use pthread semaphores [[default=yes]]]), |
| | | , enable_pthread_sem=yes) |
| | | case "$host" in |
| | | *-*-androideabi*) |
| | | *-*-android*) |
| | | pthread_cflags="-D_REENTRANT -D_THREAD_SAFE" |
| | | pthread_lib="" |
| | | ;; |
| | |
| | | pthread_lib="-L/usr/lib -lpthread" |
| | | ;; |
| | | *-*-haiku*) |
| | | pthread_cflags="-D_REENTRANT" |
| | | pthread_lib="" |
| | | ;; |
| | | *-*-nto*) |
| | | pthread_cflags="-D_REENTRANT" |
| | | pthread_lib="" |
| | | ;; |
| | |
| | | sem_timedwait(NULL, NULL); |
| | | ],[ |
| | | have_sem_timedwait=yes |
| | | AC_DEFINE(HAVE_SEM_TIMEDWAIT) |
| | | AC_DEFINE([HAVE_SEM_TIMEDWAIT], 1, [ ]) |
| | | ]) |
| | | AC_MSG_RESULT($have_sem_timedwait) |
| | | fi |
| | |
| | | AC_CHECK_HEADER(dsound.h, have_dsound=yes) |
| | | AC_CHECK_HEADER(dinput.h, have_dinput=yes) |
| | | AC_CHECK_HEADER(dxgi.h, have_dxgi=yes) |
| | | AC_CHECK_HEADER(xaudio2.h, have_xaudio2=yes) |
| | | AC_CHECK_HEADER(xinput.h, have_xinput=yes) |
| | | AC_CHECK_HEADER(mmdeviceapi.h, have_wasapi=yes) |
| | | AC_CHECK_HEADER(audioclient.h,,have_wasapi=no) |
| | | AC_TRY_COMPILE([ |
| | | #include <windows.h> |
| | | #include <xinput.h> |
| | | XINPUT_GAMEPAD_EX x1; |
| | | ],[],[have_xinput_gamepadex=yes]) |
| | | AC_TRY_COMPILE([ |
| | | #include <windows.h> |
| | | #include <xinput.h> |
| | | XINPUT_STATE_EX s1; |
| | | ],[],[have_xinput_stateex=yes]) |
| | | |
| | | if test x$have_ddraw = xyes; then |
| | | AC_DEFINE(HAVE_DDRAW_H, 1, [ ]) |
| | |
| | | fi |
| | | if test x$have_xinput = xyes; then |
| | | AC_DEFINE(HAVE_XINPUT_H, 1, [ ]) |
| | | fi |
| | | if test x$have_xinput_gamepadex = xyes; then |
| | | AC_DEFINE(HAVE_XINPUT_GAMEPAD_EX, 1, [ ]) |
| | | fi |
| | | if test x$have_xinput_stateex = xyes; then |
| | | AC_DEFINE(HAVE_XINPUT_STATE_EX, 1, [ ]) |
| | | fi |
| | | |
| | | SUMMARY_video="${SUMMARY_video} directx" |
| | |
| | | |
| | | dnl Set up the configuration based on the host platform! |
| | | case "$host" in |
| | | *-*-linux*|*-*-uclinux*|*-*-gnu*|*-*-k*bsd*-gnu|*-*-bsdi*|*-*-freebsd*|*-*-dragonfly*|*-*-netbsd*|*-*-openbsd*|*-*-sysv5*|*-*-solaris*|*-*-hpux*|*-*-aix*|*-*-minix*) |
| | | *-*-linux*|*-*-uclinux*|*-*-gnu*|*-*-k*bsd*-gnu|*-*-bsdi*|*-*-freebsd*|*-*-dragonfly*|*-*-netbsd*|*-*-openbsd*|*-*-sysv5*|*-*-solaris*|*-*-hpux*|*-*-aix*|*-*-minix*|*-*-nto*) |
| | | case "$host" in |
| | | *-raspberry-linux*) |
| | | # Raspberry Pi |
| | | ARCH=linux |
| | | RPI_CFLAGS="-I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux" |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS" |
| | | SDL_CFLAGS="$SDL_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -L/opt/vc/lib -lbcm_host -ldl" |
| | | |
| | | if test x$enable_video = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/video/raspberry/*.c" |
| | | # FIXME: confdefs? Not AC_DEFINE? |
| | | $as_echo "#define SDL_VIDEO_DRIVER_RPI 1" >>confdefs.h |
| | | SUMMARY_video="${SUMMARY_video} rpi" |
| | | fi |
| | | ;; |
| | | *-*-androideabi*) |
| | | *-*-android*) |
| | | # Android |
| | | ARCH=android |
| | | ANDROID_CFLAGS="-DGL_GLEXT_PROTOTYPES" |
| | |
| | | SDL_CFLAGS="$SDL_CFLAGS $ANDROID_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $ANDROID_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -ldl -lGLESv1_CM -lGLESv2 -llog -landroid" |
| | | SDLMAIN_SOURCES="$srcdir/src/main/android/*.c" |
| | | |
| | | if test x$enable_video = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/core/android/*.c $srcdir/src/video/android/*.c" |
| | |
| | | *-*-bsdi*) ARCH=bsdi ;; |
| | | *-*-freebsd*) ARCH=freebsd ;; |
| | | *-*-dragonfly*) ARCH=freebsd ;; |
| | | *-raspberry-netbsd*) |
| | | # Raspberry Pi |
| | | ARCH=netbsd |
| | | RPI_CFLAGS="-I/usr/pkg/include -I/usr/pkg/include/interface/vcos/pthreads -I/usr/pkg/include/interface/vmcs_host/linux" |
| | | CFLAGS="$CFLAGS $RPI_CFLAGS" |
| | | SDL_CFLAGS="$SDL_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS $RPI_CFLAGS" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lbcm_host -ldl" |
| | | |
| | | if test x$enable_video = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/video/raspberry/*.c" |
| | | $as_echo "#define SDL_VIDEO_DRIVER_RPI 1" >>confdefs.h |
| | | SUMMARY_video="${SUMMARY_video} raspberry" |
| | | fi |
| | | ;; |
| | | *-*-netbsd*) ARCH=netbsd ;; |
| | | *-*-openbsd*) ARCH=openbsd ;; |
| | | *-*-sysv5*) ARCH=sysv5 ;; |
| | |
| | | *-*-hpux*) ARCH=hpux ;; |
| | | *-*-aix*) ARCH=aix ;; |
| | | *-*-minix*) ARCH=minix ;; |
| | | *-*-nto*) ARCH=nto |
| | | CheckQNXVideo |
| | | ;; |
| | | esac |
| | | CheckVisibilityHidden |
| | | CheckDeclarationAfterStatement |
| | |
| | | CheckOSS |
| | | CheckALSA |
| | | CheckPulseAudio |
| | | CheckJACK |
| | | CheckARTSC |
| | | CheckESD |
| | | CheckNAS |
| | | CheckSNDIO |
| | | CheckFusionSound |
| | | CheckLibSampleRate |
| | | # Need to check for Raspberry PI first and add platform specific compiler flags, otherwise the test for GLES fails! |
| | | CheckRPI |
| | | CheckX11 |
| | | CheckDirectFB |
| | | CheckFusionSound |
| | | CheckKMSDRM |
| | | CheckOpenGLX11 |
| | | CheckOpenGLESX11 |
| | | CheckVulkan |
| | | CheckMir |
| | | CheckWayland |
| | | CheckLibUDev |
| | |
| | | CheckLinuxVersion |
| | | CheckRPATH |
| | | CheckVivanteVideo |
| | | |
| | | # Set up files for the audio library |
| | | if test x$enable_audio = xyes; then |
| | | case $ARCH in |
| | | sysv5|solaris|hpux) |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/sun/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} sun" |
| | | have_audio=yes |
| | | ;; |
| | | netbsd) # Don't use this on OpenBSD, it's busted. |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_BSD, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/bsd/*.c" |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_NETBSD, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/netbsd/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} netbsd" |
| | | have_audio=yes |
| | | ;; |
| | | aix) |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_PAUDIO, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/paudio/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} paudio" |
| | | have_audio=yes |
| | | ;; |
| | | android) |
| | |
| | | SOURCES="$SOURCES $srcdir/src/audio/android/*.c" |
| | | SUMMARY_audio="${SUMMARY_audio} android" |
| | | have_audio=yes |
| | | ;; |
| | | nto) |
| | | CheckQNXAudio |
| | | ;; |
| | | esac |
| | | fi |
| | |
| | | linux) |
| | | AC_DEFINE(SDL_JOYSTICK_LINUX, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c" |
| | | have_joystick=yes |
| | | ;; |
| | | android) |
| | | AC_DEFINE(SDL_JOYSTICK_ANDROID, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/joystick/android/*.c" |
| | | SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c" |
| | | have_joystick=yes |
| | | ;; |
| | | esac |
| | | fi |
| | | # Set up files for the haptic library |
| | | if test x$enable_haptic = xyes; then |
| | | if test x$use_input_events = xyes; then |
| | | case $ARCH in |
| | | linux) |
| | | AC_DEFINE(SDL_HAPTIC_LINUX, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/haptic/linux/*.c" |
| | | have_haptic=yes |
| | | ;; |
| | | esac |
| | | fi |
| | | case $ARCH in |
| | | linux) |
| | | if test x$use_input_events = xyes; then |
| | | AC_DEFINE(SDL_HAPTIC_LINUX, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/haptic/linux/*.c" |
| | | have_haptic=yes |
| | | fi |
| | | ;; |
| | | android) |
| | | AC_DEFINE(SDL_HAPTIC_ANDROID, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/haptic/android/*.c" |
| | | have_haptic=yes |
| | | ;; |
| | | esac |
| | | fi |
| | | # Set up files for the power library |
| | | if test x$enable_power = xyes; then |
| | |
| | | fi |
| | | # Set up files for evdev input |
| | | if test x$use_input_events = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev.c" |
| | | SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev*.c" |
| | | fi |
| | | # Set up other core UNIX files |
| | | SOURCES="$SOURCES $srcdir/src/core/unix/*.c" |
| | | ;; |
| | | *-*-cygwin* | *-*-mingw32*) |
| | | ARCH=win32 |
| | |
| | | ac_default_prefix=$BUILD_PREFIX |
| | | fi |
| | | fi |
| | | CheckDeclarationAfterStatement |
| | | CheckDummyVideo |
| | | CheckDiskAudio |
| | | CheckDummyAudio |
| | | CheckWINDOWS |
| | | CheckWINDOWSGL |
| | | CheckWINDOWSGLES |
| | | CheckVulkan |
| | | CheckDIRECTX |
| | | |
| | | # Set up the core platform files |
| | |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/directsound/*.c" |
| | | fi |
| | | if test x$have_xaudio2 = xyes; then |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_XAUDIO2, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/xaudio2/*.c" |
| | | if test x$have_wasapi = xyes; then |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_WASAPI, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/wasapi/*.c" |
| | | fi |
| | | have_audio=yes |
| | | fi |
| | |
| | | CheckDummyVideo |
| | | CheckDiskAudio |
| | | CheckDummyAudio |
| | | CheckDLOPEN |
| | | CheckHaikuVideo |
| | | CheckHaikuGL |
| | | CheckPTHREAD |
| | |
| | | if test x$enable_audio = xyes; then |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_HAIKU, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/haiku/*.cc" |
| | | SUMMARY_audio="${SUMMARY_audio} haiku" |
| | | have_audio=yes |
| | | fi |
| | | # Set up files for the joystick library |
| | |
| | | AC_DEFINE(SDL_TIMER_HAIKU, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/timer/haiku/*.c" |
| | | have_timers=yes |
| | | fi |
| | | # Set up files for the shared object loading library |
| | | if test x$enable_loadso = xyes; then |
| | | AC_DEFINE(SDL_LOADSO_HAIKU, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/loadso/haiku/*.c" |
| | | have_loadso=yes |
| | | fi |
| | | # Set up files for the system power library |
| | | if test x$enable_power = xyes; then |
| | |
| | | # The Haiku platform requires special setup. |
| | | SOURCES="$srcdir/src/main/haiku/*.cc $SOURCES" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lroot -lbe -lmedia -lgame -ldevice -ltextencoding" |
| | | # Haiku's x86 spins use libstdc++.r4.so (for binary compat?), but |
| | | # other spins, like x86-64, use a more standard "libstdc++.so.*" |
| | | AC_CHECK_FILE("/boot/system/lib/libstdc++.r4.so", EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lstdc++.r4", EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lstdc++") |
| | | ;; |
| | | arm*-apple-darwin*) |
| | | # iOS - We are not writing anything to confdefs.h because you have to replace |
| | | # SDL_config.h for SDL_config_iphoneos.h anyway |
| | | arm*-apple-darwin*|*-ios-*) |
| | | ARCH=ios |
| | | |
| | | CheckVisibilityHidden |
| | |
| | | CheckDiskAudio |
| | | CheckDummyAudio |
| | | CheckDLOPEN |
| | | CheckCOCOA |
| | | CheckMETAL |
| | | CheckVulkan |
| | | CheckPTHREAD |
| | | |
| | | |
| | | # Set up files for the audio library |
| | | if test x$enable_audio = xyes; then |
| | | AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/audio/coreaudio/*.m" |
| | | SUMMARY_audio="${SUMMARY_audio} coreaudio" |
| | | have_audio=yes |
| | | fi |
| | | # Set up files for the joystick library |
| | | if test x$enable_joystick = xyes; then |
| | | AC_DEFINE(SDL_JOYSTICK_MFI, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/joystick/iphoneos/*.m" |
| | | SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c" |
| | | have_joystick=yes |
| | | fi |
| | | # Set up files for the haptic library |
| | |
| | | #fi |
| | | # Set up files for the power library |
| | | if test x$enable_power = xyes; then |
| | | AC_DEFINE(SDL_POWER_UIKIT, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/power/uikit/*.m" |
| | | have_power=yes |
| | | fi |
| | |
| | | SOURCES="$SOURCES $srcdir/src/filesystem/cocoa/*.m" |
| | | have_filesystem=yes |
| | | fi |
| | | # Set up additional files for the file library |
| | | if test x$enable_file = xyes; then |
| | | AC_DEFINE(SDL_FILESYSTEM_COCOA, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m" |
| | | fi |
| | | # Set up files for the timer library |
| | | if test x$enable_timers = xyes; then |
| | | AC_DEFINE(SDL_TIMER_UNIX, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" |
| | | have_timers=yes |
| | | fi |
| | | # Set up additional files for the file library |
| | | if test x$enable_file = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m" |
| | | fi |
| | | # Set up other core UNIX files |
| | | SOURCES="$SOURCES $srcdir/src/core/unix/*.c" |
| | | # The iOS platform requires special setup. |
| | | AC_DEFINE(SDL_VIDEO_DRIVER_UIKIT, 1, [ ]) |
| | | AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ]) |
| | | AC_DEFINE(SDL_VIDEO_OPENGL_ES, 1, [ ]) |
| | | AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES, 1, [ ]) |
| | | AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES2, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/video/uikit/*.m" |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS -fpascal-strings" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm -liconv -lobjc" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Foundation" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AVFoundation" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AudioToolbox" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreGraphics" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreMotion" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Foundation" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,GameController" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit" |
| | | |
| | | if test x$enable_render = xyes -a x$enable_render_metal = xyes; then |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Metal" |
| | | fi |
| | | ;; |
| | | *-*-darwin* ) |
| | | # This could be either full "Mac OS X", or plain "Darwin" which is |
| | |
| | | CheckDummyAudio |
| | | CheckDLOPEN |
| | | CheckCOCOA |
| | | CheckMETAL |
| | | CheckX11 |
| | | CheckMacGL |
| | | CheckOpenGLX11 |
| | | CheckVulkan |
| | | CheckPTHREAD |
| | | |
| | | # Set up files for the audio library |
| | |
| | | if test x$enable_file = xyes; then |
| | | SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m" |
| | | fi |
| | | # Set up other core UNIX files |
| | | SOURCES="$SOURCES $srcdir/src/core/unix/*.c" |
| | | # The Mac OS X platform requires special setup. |
| | | EXTRA_CFLAGS="$EXTRA_CFLAGS -fpascal-strings" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lobjc" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreVideo" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Cocoa" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Carbon" |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,IOKit" |
| | | |
| | | if test x$enable_render = xyes -a x$enable_render_metal = xyes; then |
| | | EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-weak_framework,QuartzCore -Wl,-weak_framework,Metal" |
| | | fi |
| | | ;; |
| | | *-nacl|*-pnacl) |
| | | ARCH=nacl |
| | |
| | | |
| | | # Set up files for the timer library |
| | | if test x$enable_timers = xyes; then |
| | | AC_DEFINE(SDL_TIMER_UNIX) |
| | | AC_DEFINE(SDL_TIMER_UNIX, 1, [ ]) |
| | | SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" |
| | | have_timers=yes |
| | | fi |
| | |
| | | |
| | | SDLMAIN_OBJECTS=`echo $SDLMAIN_SOURCES` |
| | | SDLMAIN_DEPENDS=`echo $SDLMAIN_SOURCES` |
| | | SDLMAIN_OBJECTS=`echo "$SDLMAIN_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.o,g'` |
| | | SDLMAIN_OBJECTS=`echo "$SDLMAIN_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.lo,g'` |
| | | SDLMAIN_DEPENDS=`echo "$SDLMAIN_DEPENDS" | sed "s,\\([[^ ]]*\\)/\\([[^ ]]*\\)\\.c,\\\\ |
| | | \\$(objects)/\\2.o: \\1/\\2.c\\\\ |
| | | \\$(objects)/\\2.lo: \\1/\\2.c\\\\ |
| | | \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@,g"` |
| | | |
| | | SDLTEST_OBJECTS=`echo $SDLTEST_SOURCES` |
| | | SDLTEST_DEPENDS=`echo $SDLTEST_SOURCES` |
| | | SDLTEST_OBJECTS=`echo "$SDLTEST_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.o,g'` |
| | | SDLTEST_OBJECTS=`echo "$SDLTEST_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.lo,g'` |
| | | SDLTEST_DEPENDS=`echo "$SDLTEST_DEPENDS" | sed "s,\\([[^ ]]*\\)/\\([[^ ]]*\\)\\.c,\\\\ |
| | | \\$(objects)/\\2.o: \\1/\\2.c\\\\ |
| | | \\$(objects)/\\2.lo: \\1/\\2.c\\\\ |
| | | \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@,g"` |
| | | |
| | | # Set runtime shared library paths as needed |
| | |
| | | SUMMARY="${SUMMARY}X11 libraries :${SUMMARY_video_x11}\n" |
| | | fi |
| | | SUMMARY="${SUMMARY}Input drivers :${SUMMARY_input}\n" |
| | | if test x$enable_libudev = xyes; then |
| | | SUMMARY="${SUMMARY}Using libudev : YES\n" |
| | | if test x$have_samplerate_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using libsamplerate : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using libudev : NO\n" |
| | | SUMMARY="${SUMMARY}Using libsamplerate : NO\n" |
| | | fi |
| | | if test x$have_libudev_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using libudev : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using libudev : NO\n" |
| | | fi |
| | | if test x$have_dbus_dbus_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using dbus : YES\n" |
| | | SUMMARY="${SUMMARY}Using dbus : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using dbus : NO\n" |
| | | SUMMARY="${SUMMARY}Using dbus : NO\n" |
| | | fi |
| | | if test x$enable_ime = xyes; then |
| | | SUMMARY="${SUMMARY}Using ime : YES\n" |
| | | SUMMARY="${SUMMARY}Using ime : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using ime : NO\n" |
| | | SUMMARY="${SUMMARY}Using ime : NO\n" |
| | | fi |
| | | if test x$have_ibus_ibus_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using ibus : YES\n" |
| | | SUMMARY="${SUMMARY}Using ibus : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using ibus : NO\n" |
| | | SUMMARY="${SUMMARY}Using ibus : NO\n" |
| | | fi |
| | | if test x$have_fcitx_frontend_h_hdr = xyes; then |
| | | SUMMARY="${SUMMARY}Using fcitx : YES\n" |
| | | SUMMARY="${SUMMARY}Using fcitx : YES\n" |
| | | else |
| | | SUMMARY="${SUMMARY}Using fcitx : NO\n" |
| | | SUMMARY="${SUMMARY}Using fcitx : NO\n" |
| | | fi |
| | | AC_CONFIG_COMMANDS([summary], [echo -en "$SUMMARY"], [SUMMARY="$SUMMARY"]) |
| | | |
| | |
| | | libsdl2 (2.0.8) UNRELEASED; urgency=low |
| | | |
| | | * Updated SDL to version 2.0.8 |
| | | |
| | | -- Sam Lantinga <slouken@libsdl.org> Sat, 4 Nov 2017 21:21:53 -0800 |
| | | |
| | | libsdl2 (2.0.7) UNRELEASED; urgency=low |
| | | |
| | | * Updated SDL to version 2.0.7 |
| | | |
| | | -- Sam Lantinga <slouken@libsdl.org> Thu, 12 Oct 2017 08:01:16 -0800 |
| | | |
| | | libsdl2 (2.0.6) UNRELEASED; urgency=low |
| | | |
| | | * Updated SDL to version 2.0.6 |
| | | |
| | | -- Sam Lantinga <slouken@libsdl.org> Sat, 9 Sep 2017 07:29:36 -0800 |
| | | |
| | | libsdl2 (2.0.5) UNRELEASED; urgency=low |
| | | |
| | | * Updated SDL to version 2.0.5 |
| | | |
| | | -- Sam Lantinga <slouken@libsdl.org> Mon, 28 Nov 2016 07:32:52 -0800 |
| | | |
| | | libsdl2 (2.0.4) UNRELEASED; urgency=low |
| | | |
| | | * Updated SDL to version 2.0.4 |
| | |
| | | Build-Depends: debhelper (>= 9), |
| | | dh-autoreconf, |
| | | dpkg-dev (>= 1.16.1~), |
| | | fcitx-libs-dev [linux-any], |
| | | libasound2-dev [linux-any], |
| | | libgl1-mesa-dev, |
| | | libpulse-dev, |
| | |
| | | libxinerama-dev, |
| | | libxrandr-dev, |
| | | libxss-dev, |
| | | libxt-dev, |
| | | libxxf86vm-dev |
| | | Homepage: http://www.libsdl.org/ |
| | | |
| | |
| | | Source: http://www.libsdl.org/ |
| | | |
| | | Files: * |
| | | Copyright: 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright: 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | License: zlib/libpng |
| | | |
| | | Files: src/libm/* |
| | |
| | | License: SunPro |
| | | |
| | | Files: src/main/windows/SDL_windows_main.c |
| | | Copyright: 2016 Sam Lantinga |
| | | Copyright: 2018 Sam Lantinga |
| | | License: PublicDomain_Sam_Lantinga |
| | | Comment: SDL_main.c, placed in the public domain by Sam Lantinga 4/13/98 |
| | | |
| | |
| | | License: BrownUn_UnCalifornia_ErikCorry |
| | | |
| | | Files: src/test/SDL_test_md5.c |
| | | Copyright: 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright: 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | 1990 RSA Data Security, Inc. |
| | | License: zlib/libpng and RSA_Data_Security |
| | | |
| | |
| | | License: MIT/X11 |
| | | |
| | | Files: test/testhaptic.c |
| | | Copyright: 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright: 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | 2008 Edgar Simo Serra |
| | | License: BSD_3_clause |
| | | |
| | | Files: test/testrumble.c |
| | | Copyright: 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright: 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | 2011 Edgar Simo Serra |
| | | License: BSD_3_clause |
| | | |
| | |
| | | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
| | | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | Comment: |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | . |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | usr/bin/sdl2-config |
| | | usr/include/SDL2 |
| | | usr/lib/*/libSDL2*.so |
| | | usr/lib/*/libSDL2.a |
| | | usr/lib/*/libSDL2main.a |
| | | usr/lib/*/libSDL2_test.a |
| | | usr/lib/*/*.a |
| | | usr/lib/*/*.la |
| | | usr/lib/*/*.so |
| | | usr/lib/*/pkgconfig/sdl2.pc |
| | | usr/lib/*/cmake/SDL2/sdl2-config.cmake |
| | | usr/share/aclocal/sdl2.m4 |
| | |
| | | Android
|
| | | ================================================================================
|
| | |
|
| | | Requirements:
|
| | | Matt Styles wrote a tutorial on building SDL for Android with Visual Studio:
|
| | | http://trederia.blogspot.de/2017/03/building-sdl2-for-android-with-visual.html
|
| | |
|
| | | Android SDK (version 12 or later)
|
| | | http://developer.android.com/sdk/index.html
|
| | | The rest of this README covers the Android gradle style build process.
|
| | |
|
| | | Android NDK r7 or later
|
| | | http://developer.android.com/tools/sdk/ndk/index.html
|
| | | If you are using the older ant build process, it is no longer officially
|
| | | supported, but you can use the "android-project-ant" directory as a template.
|
| | |
|
| | | Minimum API level supported by SDL: 10 (Android 2.3.3)
|
| | | Joystick support is available for API level >=12 devices.
|
| | |
|
| | | ================================================================================
|
| | | Requirements
|
| | | ================================================================================
|
| | |
|
| | | Android SDK (version 19 or later)
|
| | | https://developer.android.com/sdk/index.html
|
| | |
|
| | | Android NDK r10e or later
|
| | | https://developer.android.com/tools/sdk/ndk/index.html
|
| | |
|
| | | Minimum API level supported by SDL: 14 (Android 4.0.1)
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | How the port works
|
| | |
| | | - This eventually produces a standard Android .apk package
|
| | |
|
| | | The Android Java code implements an "Activity" and can be found in:
|
| | | android-project/src/org/libsdl/app/SDLActivity.java
|
| | | android-project/app/src/main/java/org/libsdl/app/SDLActivity.java
|
| | |
|
| | | The Java code loads your game code, the SDL shared library, and
|
| | | dispatches to native functions implemented in the SDL library:
|
| | | src/core/android/SDL_android.c
|
| | |
|
| | | Your project must include some glue code that starts your main() routine:
|
| | | src/main/android/SDL_android_main.c
|
| | |
|
| | |
|
| | | ================================================================================
|
| | |
| | |
|
| | | 1. Copy the android-project directory wherever you want to keep your projects
|
| | | and rename it to the name of your project.
|
| | | 2. Move or symlink this SDL directory into the "<project>/jni" directory
|
| | | 3. Edit "<project>/jni/src/Android.mk" to include your source files
|
| | | 2. Move or symlink this SDL directory into the "<project>/app/jni" directory
|
| | | 3. Edit "<project>/app/jni/src/Android.mk" to include your source files
|
| | | 4. Run 'ndk-build' (a script provided by the NDK). This compiles the C source
|
| | |
|
| | | If you want to use the Eclipse IDE, skip to the Eclipse section below.
|
| | | If you want to use Android Studio (recommended), skip to the Android Studio section below.
|
| | |
|
| | | 5. Create "<project>/local.properties" and use that to point to the Android SDK directory, by writing a line with the following form:
|
| | |
|
| | | sdk.dir=PATH_TO_ANDROID_SDK
|
| | |
|
| | | 6. Run 'ant debug' in android/project. This compiles the .java and eventually |
| | | creates a .apk with the native code embedded
|
| | | 7. 'ant debug install' will push the apk to the device or emulator (if connected)
|
| | | 5. Run './gradlew installDebug' in the project directory. This compiles the .java, creates an .apk with the native code embedded, and installs it on any connected Android device
|
| | |
|
| | | Here's an explanation of the files in the Android project, so you can customize them:
|
| | |
|
| | | android-project/
|
| | | AndroidManifest.xml - package manifest. Among others, it contains the class name
|
| | | android-project/app
|
| | | build.gradle - build info including the application version and SDK
|
| | | src/main/AndroidManifest.xml - package manifest. Among others, it contains the class name
|
| | | of the main Activity and the package name of the application.
|
| | | build.properties - empty
|
| | | build.xml - build description file, used by ant. The actual application name
|
| | | is specified here.
|
| | | default.properties - holds the target ABI for the application, android-10 and up
|
| | | project.properties - holds the target ABI for the application, android-10 and up
|
| | | local.properties - holds the SDK path, you should change this to the path to your SDK
|
| | | jni/ - directory holding native code
|
| | | jni/Android.mk - Android makefile that can call recursively the Android.mk files
|
| | | in all subdirectories
|
| | | jni/Application.mk - Application JNI settings, including target platform and STL library
|
| | | jni/Android.mk - Android makefile that can call recursively the Android.mk files in all subdirectories
|
| | | jni/SDL/ - (symlink to) directory holding the SDL library files
|
| | | jni/SDL/Android.mk - Android makefile for creating the SDL shared library
|
| | | jni/src/ - directory holding your C/C++ source
|
| | | jni/src/Android.mk - Android makefile that you should customize to include your |
| | | source code and any library references
|
| | | res/ - directory holding resources for your application
|
| | | res/drawable-* - directories holding icons for different phone hardware. Could be
|
| | | one dir called "drawable".
|
| | | res/layout/main.xml - Usually contains a file main.xml, which declares the screen layout.
|
| | | We don't need it because we use the SDL video output.
|
| | | res/values/strings.xml - strings used in your application, including the application name
|
| | | shown on the phone.
|
| | | src/org/libsdl/app/SDLActivity.java - the Java class handling the initialization and binding
|
| | | to SDL. Be very careful changing this, as the SDL library relies
|
| | | on this implementation.
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Build an app with static linking of libSDL
|
| | | ================================================================================
|
| | |
|
| | | This build uses the Android NDK module system.
|
| | |
|
| | | Instructions:
|
| | | 1. Copy the android-project directory wherever you want to keep your projects
|
| | | and rename it to the name of your project.
|
| | | 2. Rename "<project>/jni/src/Android_static.mk" to "<project>/jni/src/Android.mk"
|
| | | (overwrite the existing one)
|
| | | 3. Edit "<project>/jni/src/Android.mk" to include your source files
|
| | | 4. create and export an environment variable named NDK_MODULE_PATH that points
|
| | | to the parent directory of this SDL directory. e.g.:
|
| | |
|
| | | export NDK_MODULE_PATH="$PWD"/..
|
| | |
|
| | | 5. Edit "<project>/src/org/libsdl/app/SDLActivity.java" and remove the call to
|
| | | System.loadLibrary("SDL2").
|
| | | 6. Run 'ndk-build' (a script provided by the NDK). This compiles the C source
|
| | | jni/src/Android.mk - Android makefile that you should customize to include your source code and any library references
|
| | | src/main/assets/ - directory holding asset files for your application
|
| | | src/main/res/ - directory holding resources for your application
|
| | | src/main/res/mipmap-* - directories holding icons for different phone hardware
|
| | | src/main/res/values/strings.xml - strings used in your application, including the application name
|
| | | src/main/java/org/libsdl/app/SDLActivity.java - the Java class handling the initialization and binding to SDL. Be very careful changing this, as the SDL library relies on this implementation. You should instead subclass this for your application.
|
| | |
|
| | |
|
| | | ================================================================================
|
| | |
| | | Then replace "SDLActivity" in AndroidManifest.xml with the name of your
|
| | | class, .e.g. "MyGame"
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Customizing your application icon
|
| | | ================================================================================
|
| | |
|
| | | Conceptually changing your icon is just replacing the "ic_launcher.png" files in
|
| | | the drawable directories under the res directory. There are four directories for
|
| | | different screen sizes. These can be replaced with one dir called "drawable",
|
| | | containing an icon file "ic_launcher.png" with dimensions 48x48 or 72x72.
|
| | | the drawable directories under the res directory. There are several directories
|
| | | for different screen sizes.
|
| | |
|
| | | You may need to change the name of your icon in AndroidManifest.xml to match
|
| | | this icon filename.
|
| | |
|
| | | ================================================================================
|
| | | Loading assets
|
| | | ================================================================================
|
| | |
|
| | | Any files you put in the "assets" directory of your android-project directory
|
| | | will get bundled into the application package and you can load them using the
|
| | | standard functions in SDL_rwops.h.
|
| | | Any files you put in the "app/src/main/assets" directory of your project
|
| | | directory will get bundled into the application package and you can load
|
| | | them using the standard functions in SDL_rwops.h.
|
| | |
|
| | | There are also a few Android specific functions that allow you to get other
|
| | | useful paths for saving and loading data:
|
| | |
| | |
|
| | | http://ponystyle.com/blog/2010/03/26/dealing-with-asset-compression-in-android-apps/
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Pause / Resume behaviour
|
| | | ================================================================================
|
| | |
| | | manually or quit the app (which is actually the kind of behaviour you'll see
|
| | | under iOS, if the OS can not restore your GL context it will just kill your app)
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Threads and the Java VM
|
| | | ================================================================================
|
| | |
|
| | | For a quick tour on how Linux native threads interoperate with the Java VM, take
|
| | | a look here: http://developer.android.com/guide/practices/jni.html
|
| | | a look here: https://developer.android.com/guide/practices/jni.html
|
| | |
|
| | | If you want to use threads in your SDL app, it's strongly recommended that you
|
| | | do so by creating them using SDL functions. This way, the required attach/detach
|
| | |
| | | Android_JNI_SetupThread() before doing anything else otherwise SDL will attach
|
| | | your thread automatically anyway (when you make an SDL call), but it'll never
|
| | | detach it.
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Using STL
|
| | |
| | |
|
| | | For more information check out CPLUSPLUS-SUPPORT.html in the NDK documentation.
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Additional documentation
|
| | | ================================================================================
|
| | |
| | |
|
| | |
|
| | | ================================================================================
|
| | | Using Eclipse
|
| | | Using Android Studio
|
| | | ================================================================================
|
| | |
|
| | | First make sure that you've installed Eclipse and the Android extensions as described here:
|
| | | http://developer.android.com/tools/sdk/eclipse-adt.html
|
| | |
|
| | | Once you've copied the SDL android project and customized it, you can create an Eclipse project from it:
|
| | | * File -> New -> Other
|
| | | * Select the Android -> Android Project wizard and click Next
|
| | | * Enter the name you'd like your project to have
|
| | | * Select "Create project from existing source" and browse for your project directory
|
| | | * Make sure the Build Target is set to Android 3.1 (API 12)
|
| | | * Click Finish
|
| | | You can open your project directory with Android Studio and run it normally.
|
| | |
|
| | |
|
| | | ================================================================================
|
| | |
| | | ================================================================================
|
| | |
|
| | | There are some good tips and tricks for getting the most out of the
|
| | | emulator here: http://developer.android.com/tools/devices/emulator.html
|
| | | emulator here: https://developer.android.com/tools/devices/emulator.html
|
| | |
|
| | | Especially useful is the info on setting up OpenGL ES 2.0 emulation.
|
| | |
|
| | | Notice that this software emulator is incredibly slow and needs a lot of disk space.
|
| | | Using a real device works better.
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Troubleshooting
|
| | | ================================================================================
|
| | |
|
| | | You can create and run an emulator from the Eclipse IDE:
|
| | | * Window -> Android SDK and AVD Manager
|
| | |
|
| | | You can see if adb can see any devices with the following command:
|
| | |
|
| | |
| | |
|
| | | adb shell setprop wrap.org.libsdl.app ""
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Graphics debugging
|
| | | ================================================================================
|
| | |
|
| | | If you are developing on a compatible Tegra-based tablet, NVidia provides
|
| | | Tegra Graphics Debugger at their website. Because SDL2 dynamically loads EGL
|
| | | Tegra Graphics Debugger at their website. Because SDL2 dynamically loads EGL
|
| | | and GLES libraries, you must follow their instructions for installing the
|
| | | interposer library on a rooted device. The non-rooted instructions are not
|
| | | interposer library on a rooted device. The non-rooted instructions are not
|
| | | compatible with applications that use SDL2 for video.
|
| | |
|
| | | The Tegra Graphics Debugger is available from NVidia here:
|
| | | https://developer.nvidia.com/tegra-graphics-debugger
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Why is API level 10 the minimum required?
|
| | | Why is API level 14 the minimum required?
|
| | | ================================================================================
|
| | |
|
| | | API level 10 is the minimum required level at runtime (that is, on the device) |
| | | because SDL requires some functionality for running not
|
| | | available on older devices. Since the incorporation of joystick support into SDL,
|
| | | the minimum SDK required to *build* SDL is version 12. Devices running API levels
|
| | | 10-11 are still supported, only with the joystick functionality disabled.
|
| | | The latest NDK toolchain doesn't support targeting earlier than API level 14.
|
| | | As of this writing, according to https://developer.android.com/about/dashboards/index.html
|
| | | about 99% of the Android devices accessing Google Play support API level 14 or
|
| | | higher (October 2017).
|
| | |
|
| | | Support for native OpenGL ES and ES2 applications was introduced in the NDK for
|
| | | API level 4 and 8. EGL was made a stable API in the NDK for API level 9, which
|
| | | has since then been obsoleted, with the recommendation to developers to bump the
|
| | | required API level to 10.
|
| | | As of this writing, according to http://developer.android.com/about/dashboards/index.html
|
| | | about 90% of the Android devices accessing Google Play support API level 10 or
|
| | | higher (March 2013).
|
| | |
|
| | | ================================================================================
|
| | | A note regarding the use of the "dirty rectangles" rendering technique
|
| | |
| | |
|
| | | Reference: http://www.khronos.org/registry/egl/specs/EGLTechNote0001.html
|
| | |
|
| | |
|
| | | ================================================================================
|
| | | Known issues
|
| | | ================================================================================
|
| | |
| | | Dynamic API |
| | | ================================================================================ |
| | | Originally posted by Ryan at: |
| | | https://plus.google.com/103391075724026391227/posts/TB8UfnDYu4U |
| | | |
| | | Background: |
| | | |
| | | - The Steam Runtime has (at least in theory) a really kick-ass build of SDL2, |
| | | but developers are shipping their own SDL2 with individual Steam games. |
| | | These games might stop getting updates, but a newer SDL2 might be needed later. |
| | | Certainly we'll always be fixing bugs in SDL, even if a new video target isn't |
| | | ever needed, and these fixes won't make it to a game shipping its own SDL. |
| | | - Even if we replace the SDL2 in those games with a compatible one, that is to |
| | | say, edit a developer's Steam depot (yuck!), there are developers that are |
| | | statically linking SDL2 that we can't do this for. We can't even force the |
| | | dynamic loader to ignore their SDL2 in this case, of course. |
| | | - If you don't ship an SDL2 with the game in some form, people that disabled the |
| | | Steam Runtime, or just tried to run the game from the command line instead of |
| | | Steam might find themselves unable to run the game, due to a missing dependency. |
| | | - If you want to ship on non-Steam platforms like GOG or Humble Bundle, or target |
| | | generic Linux boxes that may or may not have SDL2 installed, you have to ship |
| | | the library or risk a total failure to launch. So now, you might have to have |
| | | a non-Steam build plus a Steam build (that is, one with and one without SDL2 |
| | | included), which is inconvenient if you could have had one universal build |
| | | that works everywhere. |
| | | - We like the zlib license, but the biggest complaint from the open source |
| | | community about the license change is the static linking. The LGPL forced this |
| | | as a legal, not technical issue, but zlib doesn't care. Even those that aren't |
| | | concerned about the GNU freedoms found themselves solving the same problems: |
| | | swapping in a newer SDL to an older game often times can save the day. |
| | | Static linking stops this dead. |
| | | |
| | | So here's what we did: |
| | | |
| | | SDL now has, internally, a table of function pointers. So, this is what SDL_Init |
| | | now looks like: |
| | | |
| | | UInt32 SDL_Init(Uint32 flags) |
| | | { |
| | | return jump_table.SDL_Init(flags); |
| | | } |
| | | |
| | | Except that is all done with a bunch of macro magic so we don't have to maintain |
| | | every one of these. |
| | | |
| | | What is jump_table.SDL_init()? Eventually, that's a function pointer of the real |
| | | SDL_Init() that you've been calling all this time. But at startup, it looks more |
| | | like this: |
| | | |
| | | Uint32 SDL_Init_DEFAULT(Uint32 flags) |
| | | { |
| | | SDL_InitDynamicAPI(); |
| | | return jump_table.SDL_Init(flags); |
| | | } |
| | | |
| | | SDL_InitDynamicAPI() fills in jump_table with all the actual SDL function |
| | | pointers, which means that this _DEFAULT function never gets called again. |
| | | First call to any SDL function sets the whole thing up. |
| | | |
| | | So you might be asking, what was the value in that? Isn't this what the operating |
| | | system's dynamic loader was supposed to do for us? Yes, but now we've got this |
| | | level of indirection, we can do things like this: |
| | | |
| | | export SDL_DYNAMIC_API=/my/actual/libSDL-2.0.so.0 |
| | | ./MyGameThatIsStaticallyLinkedToSDL2 |
| | | |
| | | And now, this game that is staticallly linked to SDL, can still be overridden |
| | | with a newer, or better, SDL. The statically linked one will only be used as |
| | | far as calling into the jump table in this case. But in cases where no override |
| | | is desired, the statically linked version will provide its own jump table, |
| | | and everyone is happy. |
| | | |
| | | So now: |
| | | - Developers can statically link SDL, and users can still replace it. |
| | | (We'd still rather you ship a shared library, though!) |
| | | - Developers can ship an SDL with their game, Valve can override it for, say, |
| | | new features on SteamOS, or distros can override it for their own needs, |
| | | but it'll also just work in the default case. |
| | | - Developers can ship the same package to everyone (Humble Bundle, GOG, etc), |
| | | and it'll do the right thing. |
| | | - End users (and Valve) can update a game's SDL in almost any case, |
| | | to keep abandoned games running on newer platforms. |
| | | - Everyone develops with SDL exactly as they have been doing all along. |
| | | Same headers, same ABI. Just get the latest version to enable this magic. |
| | | |
| | | |
| | | A little more about SDL_InitDynamicAPI(): |
| | | |
| | | Internally, InitAPI does some locking to make sure everything waits until a |
| | | single thread initializes everything (although even SDL_CreateThread() goes |
| | | through here before spinning a thread, too), and then decides if it should use |
| | | an external SDL library. If not, it sets up the jump table using the current |
| | | SDL's function pointers (which might be statically linked into a program, or in |
| | | a shared library of its own). If so, it loads that library and looks for and |
| | | calls a single function: |
| | | |
| | | SInt32 SDL_DYNAPI_entry(Uint32 version, void *table, Uint32 tablesize); |
| | | |
| | | That function takes a version number (more on that in a moment), the address of |
| | | the jump table, and the size, in bytes, of the table. |
| | | Now, we've got policy here: this table's layout never changes; new stuff gets |
| | | added to the end. Therefore SDL_DYNAPI_entry() knows that it can provide all |
| | | the needed functions if tablesize <= sizeof its own jump table. If tablesize is |
| | | bigger (say, SDL 2.0.4 is trying to load SDL 2.0.3), then we know to abort, but |
| | | if it's smaller, we know we can provide the entire API that the caller needs. |
| | | |
| | | The version variable is a failsafe switch. |
| | | Right now it's always 1. This number changes when there are major API changes |
| | | (so we know if the tablesize might be smaller, or entries in it have changed). |
| | | Right now SDL_DYNAPI_entry gives up if the version doesn't match, but it's not |
| | | inconceivable to have a small dispatch library that only supplies this one |
| | | function and loads different, otherwise-incompatible SDL libraries and has the |
| | | right one initialize the jump table based on the version. For something that |
| | | must generically catch lots of different versions of SDL over time, like the |
| | | Steam Client, this isn't a bad option. |
| | | |
| | | Finally, I'm sure some people are reading this and thinking, |
| | | "I don't want that overhead in my project!" |
| | | To which I would point out that the extra function call through the jump table |
| | | probably wouldn't even show up in a profile, but lucky you: this can all be |
| | | disabled. You can build SDL without this if you absolutely must, but we would |
| | | encourage you not to do that. However, on heavily locked down platforms like |
| | | iOS, or maybe when debugging, it makes sense to disable it. The way this is |
| | | designed in SDL, you just have to change one #define, and the entire system |
| | | vaporizes out, and SDL functions exactly like it always did. Most of it is |
| | | macro magic, so the system is contained to one C file and a few headers. |
| | | However, this is on by default and you have to edit a header file to turn it |
| | | off. Our hopes is that if we make it easy to disable, but not too easy, |
| | | everyone will ultimately be able to get what they want, but we've gently |
| | | nudged everyone towards what we think is the best solution. |
| | | Dynamic API
|
| | | ================================================================================
|
| | | Originally posted by Ryan at:
|
| | | https://plus.google.com/103391075724026391227/posts/TB8UfnDYu4U
|
| | |
|
| | | Background:
|
| | |
|
| | | - The Steam Runtime has (at least in theory) a really kick-ass build of SDL2, |
| | | but developers are shipping their own SDL2 with individual Steam games. |
| | | These games might stop getting updates, but a newer SDL2 might be needed later. |
| | | Certainly we'll always be fixing bugs in SDL, even if a new video target isn't |
| | | ever needed, and these fixes won't make it to a game shipping its own SDL.
|
| | | - Even if we replace the SDL2 in those games with a compatible one, that is to |
| | | say, edit a developer's Steam depot (yuck!), there are developers that are |
| | | statically linking SDL2 that we can't do this for. We can't even force the |
| | | dynamic loader to ignore their SDL2 in this case, of course.
|
| | | - If you don't ship an SDL2 with the game in some form, people that disabled the
|
| | | Steam Runtime, or just tried to run the game from the command line instead of |
| | | Steam might find themselves unable to run the game, due to a missing dependency.
|
| | | - If you want to ship on non-Steam platforms like GOG or Humble Bundle, or target
|
| | | generic Linux boxes that may or may not have SDL2 installed, you have to ship |
| | | the library or risk a total failure to launch. So now, you might have to have |
| | | a non-Steam build plus a Steam build (that is, one with and one without SDL2 |
| | | included), which is inconvenient if you could have had one universal build |
| | | that works everywhere.
|
| | | - We like the zlib license, but the biggest complaint from the open source |
| | | community about the license change is the static linking. The LGPL forced this |
| | | as a legal, not technical issue, but zlib doesn't care. Even those that aren't
|
| | | concerned about the GNU freedoms found themselves solving the same problems: |
| | | swapping in a newer SDL to an older game often times can save the day. |
| | | Static linking stops this dead.
|
| | |
|
| | | So here's what we did:
|
| | |
|
| | | SDL now has, internally, a table of function pointers. So, this is what SDL_Init
|
| | | now looks like:
|
| | |
|
| | | UInt32 SDL_Init(Uint32 flags)
|
| | | {
|
| | | return jump_table.SDL_Init(flags);
|
| | | }
|
| | |
|
| | | Except that is all done with a bunch of macro magic so we don't have to maintain
|
| | | every one of these.
|
| | |
|
| | | What is jump_table.SDL_init()? Eventually, that's a function pointer of the real
|
| | | SDL_Init() that you've been calling all this time. But at startup, it looks more |
| | | like this:
|
| | |
|
| | | Uint32 SDL_Init_DEFAULT(Uint32 flags)
|
| | | {
|
| | | SDL_InitDynamicAPI();
|
| | | return jump_table.SDL_Init(flags);
|
| | | }
|
| | |
|
| | | SDL_InitDynamicAPI() fills in jump_table with all the actual SDL function |
| | | pointers, which means that this _DEFAULT function never gets called again. |
| | | First call to any SDL function sets the whole thing up.
|
| | |
|
| | | So you might be asking, what was the value in that? Isn't this what the operating
|
| | | system's dynamic loader was supposed to do for us? Yes, but now we've got this |
| | | level of indirection, we can do things like this:
|
| | |
|
| | | export SDL_DYNAMIC_API=/my/actual/libSDL-2.0.so.0
|
| | | ./MyGameThatIsStaticallyLinkedToSDL2
|
| | |
|
| | | And now, this game that is statically linked to SDL, can still be overridden |
| | | with a newer, or better, SDL. The statically linked one will only be used as |
| | | far as calling into the jump table in this case. But in cases where no override
|
| | | is desired, the statically linked version will provide its own jump table, |
| | | and everyone is happy.
|
| | |
|
| | | So now:
|
| | | - Developers can statically link SDL, and users can still replace it. |
| | | (We'd still rather you ship a shared library, though!)
|
| | | - Developers can ship an SDL with their game, Valve can override it for, say, |
| | | new features on SteamOS, or distros can override it for their own needs, |
| | | but it'll also just work in the default case.
|
| | | - Developers can ship the same package to everyone (Humble Bundle, GOG, etc), |
| | | and it'll do the right thing.
|
| | | - End users (and Valve) can update a game's SDL in almost any case, |
| | | to keep abandoned games running on newer platforms.
|
| | | - Everyone develops with SDL exactly as they have been doing all along. |
| | | Same headers, same ABI. Just get the latest version to enable this magic.
|
| | |
|
| | |
|
| | | A little more about SDL_InitDynamicAPI():
|
| | |
|
| | | Internally, InitAPI does some locking to make sure everything waits until a |
| | | single thread initializes everything (although even SDL_CreateThread() goes |
| | | through here before spinning a thread, too), and then decides if it should use
|
| | | an external SDL library. If not, it sets up the jump table using the current |
| | | SDL's function pointers (which might be statically linked into a program, or in
|
| | | a shared library of its own). If so, it loads that library and looks for and |
| | | calls a single function:
|
| | |
|
| | | SInt32 SDL_DYNAPI_entry(Uint32 version, void *table, Uint32 tablesize);
|
| | |
|
| | | That function takes a version number (more on that in a moment), the address of
|
| | | the jump table, and the size, in bytes, of the table. |
| | | Now, we've got policy here: this table's layout never changes; new stuff gets |
| | | added to the end. Therefore SDL_DYNAPI_entry() knows that it can provide all |
| | | the needed functions if tablesize <= sizeof its own jump table. If tablesize is
|
| | | bigger (say, SDL 2.0.4 is trying to load SDL 2.0.3), then we know to abort, but
|
| | | if it's smaller, we know we can provide the entire API that the caller needs.
|
| | |
|
| | | The version variable is a failsafe switch. |
| | | Right now it's always 1. This number changes when there are major API changes |
| | | (so we know if the tablesize might be smaller, or entries in it have changed). |
| | | Right now SDL_DYNAPI_entry gives up if the version doesn't match, but it's not |
| | | inconceivable to have a small dispatch library that only supplies this one |
| | | function and loads different, otherwise-incompatible SDL libraries and has the
|
| | | right one initialize the jump table based on the version. For something that |
| | | must generically catch lots of different versions of SDL over time, like the |
| | | Steam Client, this isn't a bad option.
|
| | |
|
| | | Finally, I'm sure some people are reading this and thinking,
|
| | | "I don't want that overhead in my project!" |
| | | To which I would point out that the extra function call through the jump table |
| | | probably wouldn't even show up in a profile, but lucky you: this can all be |
| | | disabled. You can build SDL without this if you absolutely must, but we would |
| | | encourage you not to do that. However, on heavily locked down platforms like |
| | | iOS, or maybe when debugging, it makes sense to disable it. The way this is
|
| | | designed in SDL, you just have to change one #define, and the entire system |
| | | vaporizes out, and SDL functions exactly like it always did. Most of it is |
| | | macro magic, so the system is contained to one C file and a few headers. |
| | | However, this is on by default and you have to edit a header file to turn it |
| | | off. Our hopes is that if we make it easy to disable, but not too easy, |
| | | everyone will ultimately be able to get what they want, but we've gently |
| | | nudged everyone towards what we think is the best solution.
|
| | |
| | | Emscripten |
| | | ================================================================================ |
| | | |
| | | Build: |
| | | |
| | | $ mkdir build |
| | | $ cd build |
| | | $ emconfigure ../configure --host=asmjs-unknown-emscripten --disable-assembly --disable-threads --enable-cpuinfo=false CFLAGS="-O2" |
| | | $ emmake make |
| | | |
| | | Or with cmake: |
| | | |
| | | $ mkdir build |
| | | $ cd build |
| | | $ emcmake cmake .. |
| | | $ emmake make |
| | | |
| | | To build one of the tests: |
| | | |
| | | $ cd test/ |
| | | $ emcc -O2 --js-opts 0 -g4 testdraw2.c -I../include ../build/.libs/libSDL2.a ../build/libSDL2_test.a -o a.html |
| | | |
| | | Uses GLES2 renderer or software |
| | | |
| | | tests: https://dl.dropboxusercontent.com/u/17360362/SDL2-em/index.html |
| | | |
| | | Some other SDL2 libraries can be easily built (assuming SDL2 is installed somewhere): |
| | | |
| | | SDL_mixer (http://www.libsdl.org/projects/SDL_mixer/): |
| | | |
| | | $ EMCONFIGURE_JS=1 emconfigure ../configure |
| | | build as usual... |
| | | |
| | | SDL_gfx (http://cms.ferzkopp.net/index.php/software/13-sdl-gfx): |
| | | |
| | | $ EMCONFIGURE_JS=1 emconfigure ../configure --disable-mmx |
| | | build as usual... |
| | | Emscripten
|
| | | ================================================================================
|
| | |
|
| | | Build:
|
| | |
|
| | | $ mkdir build
|
| | | $ cd build
|
| | | $ emconfigure ../configure --host=asmjs-unknown-emscripten --disable-assembly --disable-threads --disable-cpuinfo CFLAGS="-O2"
|
| | | $ emmake make
|
| | |
|
| | | Or with cmake:
|
| | |
|
| | | $ mkdir build
|
| | | $ cd build
|
| | | $ emcmake cmake ..
|
| | | $ emmake make
|
| | |
|
| | | To build one of the tests:
|
| | |
|
| | | $ cd test/
|
| | | $ emcc -O2 --js-opts 0 -g4 testdraw2.c -I../include ../build/.libs/libSDL2.a ../build/libSDL2_test.a -o a.html
|
| | |
|
| | | Uses GLES2 renderer or software
|
| | |
|
| | | Some other SDL2 libraries can be easily built (assuming SDL2 is installed somewhere):
|
| | |
|
| | | SDL_mixer (http://www.libsdl.org/projects/SDL_mixer/):
|
| | |
|
| | | $ EMCONFIGURE_JS=1 emconfigure ../configure
|
| | | build as usual...
|
| | |
|
| | | SDL_gfx (http://cms.ferzkopp.net/index.php/software/13-sdl-gfx):
|
| | |
|
| | | $ EMCONFIGURE_JS=1 emconfigure ../configure --disable-mmx
|
| | | build as usual...
|
| | |
| | | Mercurial |
| | | ========= |
| | | |
| | | Mercurial
|
| | | =========
|
| | |
|
| | | The latest development version of SDL is available via Mercurial.
|
| | | Mercurial allows you to get up-to-the-minute fixes and enhancements;
|
| | | as a developer works on a source tree, you can use "hg" to mirror that
|
| | | source tree instead of waiting for an official release. Please look
|
| | | at the Mercurial website ( http://mercurial.selenic.com/ ) for more
|
| | | at the Mercurial website ( https://www.mercurial-scm.org/ ) for more
|
| | | information on using hg, where you can also download software for
|
| | | Mac OS X, Windows, and Unix systems.
|
| | |
|
| | | hg clone http://hg.libsdl.org/SDL
|
| | |
|
| | | If you are building SDL with an IDE, you will need to copy the file
|
| | | include/SDL_config.h.default to include/SDL_config.h before building.
|
| | |
|
| | | If you are building SDL via configure, you will need to run autogen.sh
|
| | | before running configure.
|
| | |
| | | Requirements: Mac OS X 10.8 or later and the iOS 7+ SDK.
|
| | |
|
| | | Instructions:
|
| | |
|
| | | 1. Open SDL.xcodeproj (located in Xcode-iOS/SDL) in Xcode.
|
| | | 2. Select your desired target, and hit build.
|
| | |
|
| | |
| | | #endif
|
| | | return 0;
|
| | | }
|
| | |
|
| | | ==============================================================================
|
| | | Deploying to older versions of iOS
|
| | | ==============================================================================
|
| | |
|
| | | SDL supports deploying to older versions of iOS than are supported by the latest version of Xcode, all the way back to iOS 6.1
|
| | |
|
| | | In order to do that you need to download an older version of Xcode:
|
| | | https://developer.apple.com/download/more/?name=Xcode
|
| | |
|
| | | Open the package contents of the older Xcode and your newer version of Xcode and copy over the folders in Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
|
| | |
|
| | | Then open the file Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/SDKSettings.plist and add the versions of iOS you want to deploy to the key Root/DefaultProperties/DEPLOYMENT_TARGET_SUGGESTED_VALUES
|
| | |
|
| | | Open your project and set your deployment target to the desired version of iOS
|
| | |
|
| | | Finally, remove GameController from the list of frameworks linked by your application and edit the build settings for "Other Linker Flags" and add -weak_framework GameController
|
| | |
| | | libxrandr-dev libxcursor-dev libxi-dev libxinerama-dev libxxf86vm-dev \
|
| | | libxss-dev libgl1-mesa-dev libesd0-dev libdbus-1-dev libudev-dev \
|
| | | libgles1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev libibus-1.0-dev \
|
| | | fcitx-libs-dev
|
| | | fcitx-libs-dev libsamplerate0-dev libsndio-dev
|
| | |
|
| | | Ubuntu 16.04 can also add "libwayland-dev libxkbcommon-dev wayland-protocols"
|
| | | Ubuntu 16.04+ can also add "libwayland-dev libxkbcommon-dev wayland-protocols"
|
| | | to that command line for Wayland support.
|
| | |
|
| | | Ubuntu 16.10 can also add "libmirclient-dev libxkbcommon-dev" to that command
|
| | |
| | | NOTES:
|
| | | - This includes all the audio targets except arts, because Ubuntu pulled the
|
| | | artsc0-dev package, but in theory SDL still supports it.
|
| | | - libsamplerate0-dev lets SDL optionally link to libresamplerate at runtime |
| | | for higher-quality audio resampling. SDL will work without it if the library |
| | | is missing, so it's safe to build in support even if the end user doesn't |
| | | have this library installed. |
| | | - DirectFB isn't included because the configure script (currently) fails to find
|
| | | it at all. You can do "sudo apt-get install libdirectfb-dev" and fix the
|
| | | configure script to include DirectFB support. Send patches. :)
|
| | |
| | | Unix system, and you have the option of using either traditional
|
| | | command line tools or Apple's IDE Xcode.
|
| | |
|
| | | Command Line Build
|
| | | ==================
|
| | |
|
| | | To build SDL using the command line, use the standard configure and make
|
| | | process:
|
| | |
|
| | |
| | | If you're using an IDE or other non-configure build system, you'll probably
|
| | | want to create a custom SDL_config.h for your platform. Edit SDL_config.h,
|
| | | add a section for your platform, and create a custom SDL_config_{platform}.h,
|
| | | based on SDL_config.h.minimal and SDL_config.h.in
|
| | | based on SDL_config_minimal.h and SDL_config.h.in
|
| | |
|
| | | Add the top level include directory to the header search path, and then add
|
| | | the following sources to the project:
|
| | |
| | | src/joystick/*.c
|
| | | src/power/*.c
|
| | | src/render/*.c
|
| | | src/render/software/*.c
|
| | | src/stdlib/*.c
|
| | | src/thread/*.c
|
| | | src/timer/*.c
|
| | |
| | | sudo apt-get install libudev-dev libasound2-dev libdbus-1-dev
|
| | |
|
| | | You also need the VideoCore binary stuff that ships in /opt/vc for EGL and
|
| | | OpenGL ES 2.x, it usually comes pre installed, but in any case:
|
| | | OpenGL ES 2.x, it usually comes pre-installed, but in any case:
|
| | |
|
| | | sudo apt-get install libraspberrypi0 libraspberrypi-bin libraspberrypi-dev
|
| | |
|
| | |
| | |
|
| | | sudo git clone --depth 1 https://github.com/raspberrypi/tools /opt/rpi-tools
|
| | |
|
| | | You'll also need a Rasbian binary image.
|
| | | You'll also need a Raspbian binary image.
|
| | | Get it from: http://downloads.raspberrypi.org/raspbian_latest
|
| | | After unzipping, you'll get file with a name like: "<date>-wheezy-raspbian.img"
|
| | | Let's assume the sysroot will be built in /opt/rpi-sysroot.
|
| | |
| | | This is usually not a problem if you run from the physical terminal (as opposed
|
| | | to running from a pseudo terminal, such as via SSH). If running from a PTS, a
|
| | | quick workaround is to run your app as root or add yourself to the tty group,
|
| | | then re login to the system.
|
| | | then re-login to the system.
|
| | |
|
| | | sudo usermod -aG tty `whoami`
|
| | | sudo usermod -aG tty `whoami`
|
| | |
|
| | | The keyboard layout used by SDL is the same as the one the kernel uses.
|
| | | To configure the layout on Raspbian:
|
| | |
| | | * SDL_GL_SetSwapInterval is currently a no op when using ANGLE. It appears |
| | | that there's a bug in the library which prevents the window contents from |
| | | refreshing if this is set to anything other than the default value. |
| | | |
| | | |
| | | Vulkan Surface Support |
| | | ============== |
| | | |
| | | Support for creating Vulkan surfaces is configured on by default. To disable it change the value of `SDL_VIDEO_VULKAN` to 0 in `SDL_config_windows.h`. You must install the [Vulkan SDK](https://www.lunarg.com/vulkan-sdk/) in order to use Vulkan graphics in your application. |
| | |
| | | Requirements
|
| | | ------------
|
| | |
|
| | | * Microsoft Visual C++ (aka Visual Studio), either 2015, 2013, or 2012
|
| | | * Microsoft Visual C++ (aka Visual Studio), either 2017, 2015, 2013, or 2012
|
| | | - Free, "Community" or "Express" editions may be used, so long as they
|
| | | include support for either "Windows Store" or "Windows Phone" apps.
|
| | | "Express" versions marked as supporting "Windows Desktop" development
|
| | | typically do not include support for creating WinRT apps, to note.
|
| | | (The "Community" editions of Visual C++ do, however, support both
|
| | | desktop/Win32 and WinRT development).
|
| | | - Visual Studio 2017 can be used, however it is recommended that you install
|
| | | the Visual C++ 2015 build tools. These build tools can be installed
|
| | | using VS 2017's installer. Be sure to also install the workload for
|
| | | "Universal Windows Platform development", its optional component, the
|
| | | "C++ Universal Windows Platform tools", and for UWP / Windows 10
|
| | | development, the "Windows 10 SDK (10.0.10240.0)". Please note that
|
| | | targeting UWP / Windows 10 apps from development machine(s) running
|
| | | earlier versions of Windows, such as Windows 7, is not always supported
|
| | | by Visual Studio, and you may get error(s) when attempting to do so.
|
| | | - Visual C++ 2012 can only build apps that target versions 8.0 of Windows,
|
| | | or Windows Phone. 8.0-targetted apps will run on devices running 8.1
|
| | | or Windows Phone. 8.0-targeted apps will run on devices running 8.1
|
| | | editions of Windows, however they will not be able to take advantage of
|
| | | 8.1-specific features.
|
| | | - Visual C++ 2013 cannot create app projects that target Windows 8.0.
|
| | |
| | | Status
|
| | | ------
|
| | |
|
| | | Here is a rough list of what works, and what doens't:
|
| | | Here is a rough list of what works, and what doesn't:
|
| | |
|
| | | * What works:
|
| | | * compilation via Visual C++ 2012 through 2015
|
| | |
| | | SDL_GetPerformanceFrequency(), etc.)
|
| | | * file I/O via SDL_RWops
|
| | | * mouse input (unsupported on Windows Phone)
|
| | | * audio, via a modified version of SDL's XAudio2 backend
|
| | | * audio, via SDL's WASAPI backend (if you want to record, your app must |
| | | have "Microphone" capabilities enabled in its manifest, and the user must |
| | | not have blocked access. Otherwise, capture devices will fail to work,
|
| | | presenting as a device disconnect shortly after opening it.)
|
| | | * .DLL file loading. Libraries *MUST* be packaged inside applications. Loading
|
| | | anything outside of the app is not supported.
|
| | | * system path retrieval via SDL's filesystem APIs
|
| | | * game controllers. Support is provided via the SDL_Joystick and
|
| | | SDL_GameController APIs, and is backed by Microsoft's XInput API.
|
| | | SDL_GameController APIs, and is backed by Microsoft's XInput API. Please
|
| | | note, however, that Windows limits game-controller support in UWP apps to,
|
| | | "Xbox compatible controllers" (many controllers that work in Win32 apps,
|
| | | do not work in UWP, due to restrictions in UWP itself.) |
| | | * multi-touch input
|
| | | * app events. SDL_APP_WILLENTER* and SDL_APP_DIDENTER* events get sent out as
|
| | | appropriate.
|
| | |
| | | * keyboard input. Most of WinRT's documented virtual keys are supported, as
|
| | | well as many keys with documented hardware scancodes. Converting
|
| | | SDL_Scancodes to or from SDL_Keycodes may not work, due to missing APIs
|
| | | (MapVirualKey()) in Microsoft's Windows Store / UWP APIs.
|
| | | (MapVirtualKey()) in Microsoft's Windows Store / UWP APIs.
|
| | | * SDLmain. WinRT uses a different signature for each app's main() function.
|
| | | SDL-based apps that use this port must compile in SDL_winrt_main_NonXAML.cpp
|
| | | (in `SDL\src\main\winrt\`) directly in order for their C-style main()
|
| | |
| | | SDL_CreateSystemCursor() (unsupported on Windows Phone)
|
| | | * SDL_WarpMouseInWindow() or SDL_WarpMouseGlobal(). This are not currently
|
| | | supported by WinRT itself.
|
| | | * joysticks and game controllers that aren't supported by Microsoft's XInput
|
| | | API.
|
| | | * joysticks and game controllers that either are not supported by
|
| | | Microsoft's XInput API, or are not supported within UWP apps (many
|
| | | controllers that work in Win32, do not work in UWP, due to restrictions in
|
| | | UWP itself).
|
| | | * turning off VSync when rendering on Windows Phone. Attempts to turn VSync
|
| | | off on Windows Phone result either in Direct3D not drawing anything, or it
|
| | | forcing VSync back on. As such, SDL_RENDERER_PRESENTVSYNC will always get
|
| | |
| | | set of Win32-style cursor image-resource files. A copy of suitable resource
|
| | | files can be found in `src/main/winrt/`. Adding them to an app's Visual C++
|
| | | project file should be sufficient to get the app to use them.
|
| | |
|
| | |
|
| | | #### SDL's Visual Studio project file fails to open, with message, "The system can't find the file specified."
|
| | |
|
| | | This can be caused for any one of a few reasons, which Visual Studio can
|
| | | report, but won't always do so in an up-front manner.
|
| | |
|
| | | To help determine why this error comes up:
|
| | |
|
| | | 1. open a copy of Visual Studio without opening a project file. This can be
|
| | | accomplished via Windows' Start Menu, among other means.
|
| | | 2. show Visual Studio's Output window. This can be done by going to VS'
|
| | | menu bar, then to View, and then to Output.
|
| | | 3. try opening the SDL project file directly by going to VS' menu bar, then
|
| | | to File, then to Open, then to Project/Solution. When a File-Open dialog
|
| | | appears, open the SDL project (such as the one in SDL's source code, in its
|
| | | directory, VisualC-WinRT/UWP_VS2015/).
|
| | | 4. after attempting to open SDL's Visual Studio project file, additional error
|
| | | information will be output to the Output window.
|
| | |
|
| | | If Visual Studio reports (via its Output window) that the project:
|
| | |
|
| | | "could not be loaded because it's missing install components. To fix this launch Visual Studio setup with the following selections:
|
| | | Microsoft.VisualStudio.ComponentGroup.UWP.VC"
|
| | |
|
| | | ... then you will need to re-launch Visual Studio's installer, and make sure that
|
| | | the workflow for "Universal Windows Platform development" is checked, and that its
|
| | | optional component, "C++ Universal Windows Platform tools" is also checked. While
|
| | | you are there, if you are planning on targeting UWP / Windows 10, also make sure
|
| | | that you check the optional component, "Windows 10 SDK (10.0.10240.0)". After
|
| | | making sure these items are checked as-appropriate, install them.
|
| | |
|
| | | Once you install these components, try re-launching Visual Studio, and re-opening
|
| | | the SDL project file. If you still get the error dialog, try using the Output
|
| | | window, again, seeing what Visual Studio says about it.
|
| | |
|
| | |
|
| | | #### Game controllers / joysticks aren't working!
|
| | |
|
| | | Windows only permits certain game controllers and joysticks to work within
|
| | | WinRT / UWP apps. Even if a game controller or joystick works in a Win32
|
| | | app, that device is not guaranteed to work inside a WinRT / UWP app.
|
| | |
|
| | | According to Microsoft, "Xbox compatible controllers" should work inside
|
| | | UWP apps, potentially with more working in the future. This includes, but
|
| | | may not be limited to, Microsoft-made Xbox controllers and USB adapters.
|
| | | (Source: https://social.msdn.microsoft.com/Forums/en-US/9064838b-e8c3-4c18-8a83-19bf0dfe150d/xinput-fails-to-detect-game-controllers?forum=wpdevelop)
|
| | |
|
| | |
|
| | |
| | | Simple DirectMedia Layer {#mainpage} |
| | | ======================== |
| | | |
| | | (SDL) |
| | | |
| | | Version 2.0 |
| | | |
| | | --- |
| | | http://www.libsdl.org/ |
| | | |
| | | Simple DirectMedia Layer is a cross-platform development library designed |
| | | to provide low level access to audio, keyboard, mouse, joystick, and graphics |
| | | hardware via OpenGL and Direct3D. It is used by video playback software, |
| | | emulators, and popular games including Valve's award winning catalog |
| | | and many Humble Bundle games. |
| | | |
| | | SDL officially supports Windows, Mac OS X, Linux, iOS, and Android. |
| | | Support for other platforms may be found in the source code. |
| | | |
| | | SDL is written in C, works natively with C++, and there are bindings |
| | | available for several other languages, including C# and Python. |
| | | |
| | | This library is distributed under the zlib license, which can be found |
| | | in the file "COPYING.txt". |
| | | |
| | | The best way to learn how to use SDL is to check out the header files in |
| | | the "include" subdirectory and the programs in the "test" subdirectory. |
| | | The header files and test programs are well commented and always up to date. |
| | | |
| | | More documentation and FAQs are available online at [the wiki](http://wiki.libsdl.org/) |
| | | |
| | | - [Android](README-android.md) |
| | | - [CMake](README-cmake.md) |
| | | - [DirectFB](README-directfb.md) |
| | | - [DynAPI](README-dynapi.md) |
| | | - [Emscripten](README-emscripten.md) |
| | | - [Gesture](README-gesture.md) |
| | | - [Mercurial](README-hg.md) |
| | | - [iOS](README-ios.md) |
| | | - [Linux](README-linux.md) |
| | | - [OS X](README-macosx.md) |
| | | - [Native Client](README-nacl.md) |
| | | - [Pandora](README-pandora.md) |
| | | - [Supported Platforms](README-platforms.md) |
| | | - [Porting information](README-porting.md) |
| | | - [PSP](README-psp.md) |
| | | - [Raspberry Pi](README-raspberrypi.md) |
| | | - [Touch](README-touch.md) |
| | | - [WinCE](README-wince.md) |
| | | - [Windows](README-windows.md) |
| | | - [WinRT](README-winrt.md) |
| | | |
| | | If you need help with the library, or just want to discuss SDL related |
| | | issues, you can join the [developers mailing list](http://www.libsdl.org/mailing-list.php) |
| | | |
| | | If you want to report bugs or contribute patches, please submit them to |
| | | [bugzilla](http://bugzilla.libsdl.org/) |
| | | |
| | | Enjoy! |
| | | |
| | | |
| | | Sam Lantinga <mailto:slouken@libsdl.org> |
| | | |
| | | Simple DirectMedia Layer {#mainpage}
|
| | | ========================
|
| | |
|
| | | (SDL)
|
| | |
|
| | | Version 2.0
|
| | |
|
| | | ---
|
| | | http://www.libsdl.org/
|
| | |
|
| | | Simple DirectMedia Layer is a cross-platform development library designed
|
| | | to provide low level access to audio, keyboard, mouse, joystick, and graphics
|
| | | hardware via OpenGL and Direct3D. It is used by video playback software,
|
| | | emulators, and popular games including Valve's award winning catalog
|
| | | and many Humble Bundle games.
|
| | |
|
| | | SDL officially supports Windows, Mac OS X, Linux, iOS, and Android.
|
| | | Support for other platforms may be found in the source code.
|
| | |
|
| | | SDL is written in C, works natively with C++, and there are bindings |
| | | available for several other languages, including C# and Python.
|
| | |
|
| | | This library is distributed under the zlib license, which can be found
|
| | | in the file "COPYING.txt".
|
| | |
|
| | | The best way to learn how to use SDL is to check out the header files in
|
| | | the "include" subdirectory and the programs in the "test" subdirectory.
|
| | | The header files and test programs are well commented and always up to date.
|
| | |
|
| | | More documentation and FAQs are available online at [the wiki](http://wiki.libsdl.org/)
|
| | |
|
| | | - [Android](README-android.md)
|
| | | - [CMake](README-cmake.md)
|
| | | - [DirectFB](README-directfb.md)
|
| | | - [DynAPI](README-dynapi.md)
|
| | | - [Emscripten](README-emscripten.md)
|
| | | - [Gesture](README-gesture.md)
|
| | | - [Mercurial](README-hg.md)
|
| | | - [iOS](README-ios.md)
|
| | | - [Linux](README-linux.md)
|
| | | - [OS X](README-macosx.md)
|
| | | - [Native Client](README-nacl.md)
|
| | | - [Pandora](README-pandora.md)
|
| | | - [Supported Platforms](README-platforms.md)
|
| | | - [Porting information](README-porting.md)
|
| | | - [PSP](README-psp.md)
|
| | | - [Raspberry Pi](README-raspberrypi.md)
|
| | | - [Touch](README-touch.md)
|
| | | - [WinCE](README-wince.md)
|
| | | - [Windows](README-windows.md)
|
| | | - [WinRT](README-winrt.md)
|
| | |
|
| | | If you need help with the library, or just want to discuss SDL related
|
| | | issues, you can join the [developers mailing list](http://www.libsdl.org/mailing-list.php)
|
| | |
|
| | | If you want to report bugs or contribute patches, please submit them to
|
| | | [bugzilla](https://bugzilla.libsdl.org/)
|
| | |
|
| | | Enjoy!
|
| | |
|
| | |
|
| | | Sam Lantinga <mailto:slouken@libsdl.org>
|
| | |
|
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | */ |
| | | |
| | | |
| | | #ifndef _SDL_H |
| | | #define _SDL_H |
| | | #ifndef SDL_h_ |
| | | #define SDL_h_ |
| | | |
| | | #include "SDL_main.h" |
| | | #include "SDL_stdinc.h" |
| | |
| | | #include "SDL_error.h" |
| | | #include "SDL_events.h" |
| | | #include "SDL_filesystem.h" |
| | | #include "SDL_joystick.h" |
| | | #include "SDL_gamecontroller.h" |
| | | #include "SDL_haptic.h" |
| | | #include "SDL_hints.h" |
| | | #include "SDL_joystick.h" |
| | | #include "SDL_loadso.h" |
| | | #include "SDL_log.h" |
| | | #include "SDL_messagebox.h" |
| | |
| | | #include "SDL_power.h" |
| | | #include "SDL_render.h" |
| | | #include "SDL_rwops.h" |
| | | #include "SDL_shape.h" |
| | | #include "SDL_system.h" |
| | | #include "SDL_thread.h" |
| | | #include "SDL_timer.h" |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_H */ |
| | | #endif /* SDL_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_assert_h |
| | | #define _SDL_assert_h |
| | | #ifndef SDL_assert_h_ |
| | | #define SDL_assert_h_ |
| | | |
| | | #include "SDL_config.h" |
| | | |
| | |
| | | /* Don't include intrin.h here because it contains C++ code */ |
| | | extern void __cdecl __debugbreak(void); |
| | | #define SDL_TriggerBreakpoint() __debugbreak() |
| | | #elif (!defined(__NACL__) && defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))) |
| | | #elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) ) |
| | | #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" ) |
| | | #elif defined(HAVE_SIGNAL_H) |
| | | #elif defined(__386__) && defined(__WATCOMC__) |
| | | #define SDL_TriggerBreakpoint() { _asm { int 0x03 } } |
| | | #elif defined(HAVE_SIGNAL_H) && !defined(__WATCOMC__) |
| | | #include <signal.h> |
| | | #define SDL_TriggerBreakpoint() raise(SIGTRAP) |
| | | #else |
| | |
| | | |
| | | #if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) /* C99 supports __func__ as a standard. */ |
| | | # define SDL_FUNCTION __func__ |
| | | #elif ((__GNUC__ >= 2) || defined(_MSC_VER)) |
| | | #elif ((__GNUC__ >= 2) || defined(_MSC_VER) || defined (__WATCOMC__)) |
| | | # define SDL_FUNCTION __FUNCTION__ |
| | | #else |
| | | # define SDL_FUNCTION "???" |
| | |
| | | * |
| | | * This callback is NOT reset to SDL's internal handler upon SDL_Quit()! |
| | | * |
| | | * \return SDL_AssertState value of how to handle the assertion failure. |
| | | * Return SDL_AssertState value of how to handle the assertion failure. |
| | | * |
| | | * \param handler Callback function, called when an assertion fails. |
| | | * \param userdata A pointer passed to the callback as-is. |
| | |
| | | * <code> |
| | | * const SDL_AssertData *item = SDL_GetAssertionReport(); |
| | | * while (item) { |
| | | * printf("'%s', %s (%s:%d), triggered %u times, always ignore: %s.\n", |
| | | * printf("'%s', %s (%s:%d), triggered %u times, always ignore: %s.\\n", |
| | | * item->condition, item->function, item->filename, |
| | | * item->linenum, item->trigger_count, |
| | | * item->always_ignore ? "yes" : "no"); |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_assert_h */ |
| | | #endif /* SDL_assert_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * All of the atomic operations that modify memory are full memory barriers. |
| | | */ |
| | | |
| | | #ifndef _SDL_atomic_h_ |
| | | #define _SDL_atomic_h_ |
| | | #ifndef SDL_atomic_h_ |
| | | #define SDL_atomic_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_platform.h" |
| | |
| | | * The compiler barrier prevents the compiler from reordering |
| | | * reads and writes to globally visible variables across the call. |
| | | */ |
| | | #if defined(_MSC_VER) && (_MSC_VER > 1200) |
| | | #if defined(_MSC_VER) && (_MSC_VER > 1200) && !defined(__clang__) |
| | | void _ReadWriteBarrier(void); |
| | | #pragma intrinsic(_ReadWriteBarrier) |
| | | #define SDL_CompilerBarrier() _ReadWriteBarrier() |
| | | #elif (defined(__GNUC__) && !defined(__EMSCRIPTEN__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120)) |
| | | /* This is correct for all CPUs when using GCC or Solaris Studio 12.1+. */ |
| | | #define SDL_CompilerBarrier() __asm__ __volatile__ ("" : : : "memory") |
| | | #elif defined(__WATCOMC__) |
| | | extern _inline void SDL_CompilerBarrier (void); |
| | | #pragma aux SDL_CompilerBarrier = "" parm [] modify exact []; |
| | | #else |
| | | #define SDL_CompilerBarrier() \ |
| | | { SDL_SpinLock _tmp = 0; SDL_AtomicLock(&_tmp); SDL_AtomicUnlock(&_tmp); } |
| | |
| | | * For more information on these semantics, take a look at the blog post: |
| | | * http://preshing.com/20120913/acquire-and-release-semantics |
| | | */ |
| | | extern DECLSPEC void SDLCALL SDL_MemoryBarrierReleaseFunction(void); |
| | | extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void); |
| | | |
| | | #if defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__)) |
| | | #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("lwsync" : : : "memory") |
| | | #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("lwsync" : : : "memory") |
| | | #elif defined(__GNUC__) && defined(__aarch64__) |
| | | #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") |
| | | #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") |
| | | #elif defined(__GNUC__) && defined(__arm__) |
| | | #if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) |
| | | #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") |
| | | #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") |
| | | #elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) |
| | | #elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__) |
| | | #ifdef __thumb__ |
| | | /* The mcr instruction isn't available in thumb mode, use real functions */ |
| | | extern DECLSPEC void SDLCALL SDL_MemoryBarrierRelease(); |
| | | extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquire(); |
| | | #define SDL_MemoryBarrierRelease() SDL_MemoryBarrierReleaseFunction() |
| | | #define SDL_MemoryBarrierAcquire() SDL_MemoryBarrierAcquireFunction() |
| | | #else |
| | | #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") |
| | | #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") |
| | |
| | | |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_atomic_h_ */ |
| | | #endif /* SDL_atomic_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Access to the raw audio mixing buffer for the SDL library. |
| | | */ |
| | | |
| | | #ifndef _SDL_audio_h |
| | | #define _SDL_audio_h |
| | | #ifndef SDL_audio_h_ |
| | | #define SDL_audio_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | |
| | | /** |
| | | * The calculated values in this structure are calculated by SDL_OpenAudio(). |
| | | * |
| | | * For multi-channel audio, the default SDL channel mapping is: |
| | | * 2: FL FR (stereo) |
| | | * 3: FL FR LFE (2.1 surround) |
| | | * 4: FL FR BL BR (quad) |
| | | * 5: FL FR FC BL BR (quad + center) |
| | | * 6: FL FR FC LFE SL SR (5.1 surround - last two can also be BL BR) |
| | | * 7: FL FR FC LFE BC SL SR (6.1 surround) |
| | | * 8: FL FR FC LFE BL BR SL SR (7.1 surround) |
| | | */ |
| | | typedef struct SDL_AudioSpec |
| | | { |
| | |
| | | SDL_AudioFormat format; /**< Audio data format */ |
| | | Uint8 channels; /**< Number of channels: 1 mono, 2 stereo */ |
| | | Uint8 silence; /**< Audio buffer silence value (calculated) */ |
| | | Uint16 samples; /**< Audio buffer size in samples (power of 2) */ |
| | | Uint16 samples; /**< Audio buffer size in sample FRAMES (total samples divided by channel count) */ |
| | | Uint16 padding; /**< Necessary for some compile environments */ |
| | | Uint32 size; /**< Audio buffer size in bytes (calculated) */ |
| | | SDL_AudioCallback callback; /**< Callback that feeds the audio device (NULL to use SDL_QueueAudio()). */ |
| | |
| | | SDL_AudioFormat format); |
| | | |
| | | /** |
| | | * A structure to hold a set of audio conversion filters and buffers. |
| | | * \brief Upper limit of filters in SDL_AudioCVT |
| | | * |
| | | * The maximum number of SDL_AudioFilter functions in SDL_AudioCVT is |
| | | * currently limited to 9. The SDL_AudioCVT.filters array has 10 pointers, |
| | | * one of which is the terminating NULL pointer. |
| | | */ |
| | | #define SDL_AUDIOCVT_MAX_FILTERS 9 |
| | | |
| | | /** |
| | | * \struct SDL_AudioCVT |
| | | * \brief A structure to hold a set of audio conversion filters and buffers. |
| | | * |
| | | * Note that various parts of the conversion pipeline can take advantage |
| | | * of SIMD operations (like SSE2, for example). SDL_AudioCVT doesn't require |
| | | * you to pass it aligned data, but can possibly run much faster if you |
| | | * set both its (buf) field to a pointer that is aligned to 16 bytes, and its |
| | | * (len) field to something that's a multiple of 16, if possible. |
| | | */ |
| | | #ifdef __GNUC__ |
| | | /* This structure is 84 bytes on 32-bit architectures, make sure GCC doesn't |
| | |
| | | int len_cvt; /**< Length of converted audio buffer */ |
| | | int len_mult; /**< buffer must be len*len_mult big */ |
| | | double len_ratio; /**< Given len, final size is len*len_ratio */ |
| | | SDL_AudioFilter filters[10]; /**< Filter list */ |
| | | SDL_AudioFilter filters[SDL_AUDIOCVT_MAX_FILTERS + 1]; /**< NULL-terminated list of filter functions */ |
| | | int filter_index; /**< Current audio conversion function */ |
| | | } SDL_AUDIOCVT_PACKED SDL_AudioCVT; |
| | | |
| | |
| | | * This function takes a source format and rate and a destination format |
| | | * and rate, and initializes the \c cvt structure with information needed |
| | | * by SDL_ConvertAudio() to convert a buffer of audio data from one format |
| | | * to the other. |
| | | * to the other. An unsupported format causes an error and -1 will be returned. |
| | | * |
| | | * \return -1 if the format conversion is not supported, 0 if there's |
| | | * no conversion needed, or 1 if the audio filter is set up. |
| | | * \return 0 if no conversion is needed, 1 if the audio filter is set up, |
| | | * or -1 on error. |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_BuildAudioCVT(SDL_AudioCVT * cvt, |
| | | SDL_AudioFormat src_format, |
| | |
| | | * The data conversion may expand the size of the audio data, so the buffer |
| | | * \c cvt->buf should be allocated after the \c cvt structure is initialized by |
| | | * SDL_BuildAudioCVT(), and should be \c cvt->len*cvt->len_mult bytes long. |
| | | * |
| | | * \return 0 on success or -1 if \c cvt->buf is NULL. |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_ConvertAudio(SDL_AudioCVT * cvt); |
| | | |
| | | /* SDL_AudioStream is a new audio conversion interface. |
| | | The benefits vs SDL_AudioCVT: |
| | | - it can handle resampling data in chunks without generating |
| | | artifacts, when it doesn't have the complete buffer available. |
| | | - it can handle incoming data in any variable size. |
| | | - You push data as you have it, and pull it when you need it |
| | | */ |
| | | /* this is opaque to the outside world. */ |
| | | struct _SDL_AudioStream; |
| | | typedef struct _SDL_AudioStream SDL_AudioStream; |
| | | |
| | | /** |
| | | * Create a new audio stream |
| | | * |
| | | * \param src_format The format of the source audio |
| | | * \param src_channels The number of channels of the source audio |
| | | * \param src_rate The sampling rate of the source audio |
| | | * \param dst_format The format of the desired audio output |
| | | * \param dst_channels The number of channels of the desired audio output |
| | | * \param dst_rate The sampling rate of the desired audio output |
| | | * \return 0 on success, or -1 on error. |
| | | * |
| | | * \sa SDL_AudioStreamPut |
| | | * \sa SDL_AudioStreamGet |
| | | * \sa SDL_AudioStreamAvailable |
| | | * \sa SDL_AudioStreamFlush |
| | | * \sa SDL_AudioStreamClear |
| | | * \sa SDL_FreeAudioStream |
| | | */ |
| | | extern DECLSPEC SDL_AudioStream * SDLCALL SDL_NewAudioStream(const SDL_AudioFormat src_format, |
| | | const Uint8 src_channels, |
| | | const int src_rate, |
| | | const SDL_AudioFormat dst_format, |
| | | const Uint8 dst_channels, |
| | | const int dst_rate); |
| | | |
| | | /** |
| | | * Add data to be converted/resampled to the stream |
| | | * |
| | | * \param stream The stream the audio data is being added to |
| | | * \param buf A pointer to the audio data to add |
| | | * \param len The number of bytes to write to the stream |
| | | * \return 0 on success, or -1 on error. |
| | | * |
| | | * \sa SDL_NewAudioStream |
| | | * \sa SDL_AudioStreamGet |
| | | * \sa SDL_AudioStreamAvailable |
| | | * \sa SDL_AudioStreamFlush |
| | | * \sa SDL_AudioStreamClear |
| | | * \sa SDL_FreeAudioStream |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_AudioStreamPut(SDL_AudioStream *stream, const void *buf, int len); |
| | | |
| | | /** |
| | | * Get converted/resampled data from the stream |
| | | * |
| | | * \param stream The stream the audio is being requested from |
| | | * \param buf A buffer to fill with audio data |
| | | * \param len The maximum number of bytes to fill |
| | | * \return The number of bytes read from the stream, or -1 on error |
| | | * |
| | | * \sa SDL_NewAudioStream |
| | | * \sa SDL_AudioStreamPut |
| | | * \sa SDL_AudioStreamAvailable |
| | | * \sa SDL_AudioStreamFlush |
| | | * \sa SDL_AudioStreamClear |
| | | * \sa SDL_FreeAudioStream |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_AudioStreamGet(SDL_AudioStream *stream, void *buf, int len); |
| | | |
| | | /** |
| | | * Get the number of converted/resampled bytes available. The stream may be |
| | | * buffering data behind the scenes until it has enough to resample |
| | | * correctly, so this number might be lower than what you expect, or even |
| | | * be zero. Add more data or flush the stream if you need the data now. |
| | | * |
| | | * \sa SDL_NewAudioStream |
| | | * \sa SDL_AudioStreamPut |
| | | * \sa SDL_AudioStreamGet |
| | | * \sa SDL_AudioStreamFlush |
| | | * \sa SDL_AudioStreamClear |
| | | * \sa SDL_FreeAudioStream |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_AudioStreamAvailable(SDL_AudioStream *stream); |
| | | |
| | | /** |
| | | * Tell the stream that you're done sending data, and anything being buffered |
| | | * should be converted/resampled and made available immediately. |
| | | * |
| | | * It is legal to add more data to a stream after flushing, but there will |
| | | * be audio gaps in the output. Generally this is intended to signal the |
| | | * end of input, so the complete output becomes available. |
| | | * |
| | | * \sa SDL_NewAudioStream |
| | | * \sa SDL_AudioStreamPut |
| | | * \sa SDL_AudioStreamGet |
| | | * \sa SDL_AudioStreamAvailable |
| | | * \sa SDL_AudioStreamClear |
| | | * \sa SDL_FreeAudioStream |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_AudioStreamFlush(SDL_AudioStream *stream); |
| | | |
| | | /** |
| | | * Clear any pending data in the stream without converting it |
| | | * |
| | | * \sa SDL_NewAudioStream |
| | | * \sa SDL_AudioStreamPut |
| | | * \sa SDL_AudioStreamGet |
| | | * \sa SDL_AudioStreamAvailable |
| | | * \sa SDL_AudioStreamFlush |
| | | * \sa SDL_FreeAudioStream |
| | | */ |
| | | extern DECLSPEC void SDLCALL SDL_AudioStreamClear(SDL_AudioStream *stream); |
| | | |
| | | /** |
| | | * Free an audio stream |
| | | * |
| | | * \sa SDL_NewAudioStream |
| | | * \sa SDL_AudioStreamPut |
| | | * \sa SDL_AudioStreamGet |
| | | * \sa SDL_AudioStreamAvailable |
| | | * \sa SDL_AudioStreamFlush |
| | | * \sa SDL_AudioStreamClear |
| | | */ |
| | | extern DECLSPEC void SDLCALL SDL_FreeAudioStream(SDL_AudioStream *stream); |
| | | |
| | | #define SDL_MIX_MAXVOLUME 128 |
| | | /** |
| | |
| | | * \param dev The device ID to which we will queue audio. |
| | | * \param data The data to queue to the device for later playback. |
| | | * \param len The number of bytes (not samples!) to which (data) points. |
| | | * \return zero on success, -1 on error. |
| | | * \return 0 on success, or -1 on error. |
| | | * |
| | | * \sa SDL_GetQueuedAudioSize |
| | | * \sa SDL_ClearQueuedAudio |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_audio_h */ |
| | | #endif /* SDL_audio_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Functions for fiddling with bits and bitmasks. |
| | | */ |
| | | |
| | | #ifndef _SDL_bits_h |
| | | #define _SDL_bits_h |
| | | #ifndef SDL_bits_h_ |
| | | #define SDL_bits_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | * |
| | | * \return Index of the most significant bit, or -1 if the value is 0. |
| | | */ |
| | | #if defined(__WATCOMC__) && defined(__386__) |
| | | extern _inline int _SDL_clz_watcom (Uint32); |
| | | #pragma aux _SDL_clz_watcom = \ |
| | | "bsr eax, eax" \ |
| | | "xor eax, 31" \ |
| | | parm [eax] nomemory \ |
| | | value [eax] \ |
| | | modify exact [eax] nomemory; |
| | | #endif |
| | | |
| | | SDL_FORCE_INLINE int |
| | | SDL_MostSignificantBitIndex32(Uint32 x) |
| | | { |
| | | #if defined(__GNUC__) && __GNUC__ >= 4 |
| | | #if defined(__GNUC__) && (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) |
| | | /* Count Leading Zeroes builtin in GCC. |
| | | * http://gcc.gnu.org/onlinedocs/gcc-4.3.4/gcc/Other-Builtins.html |
| | | */ |
| | |
| | | return -1; |
| | | } |
| | | return 31 - __builtin_clz(x); |
| | | #elif defined(__WATCOMC__) && defined(__386__) |
| | | if (x == 0) { |
| | | return -1; |
| | | } |
| | | return 31 - _SDL_clz_watcom(x); |
| | | #else |
| | | /* Based off of Bit Twiddling Hacks by Sean Eron Anderson |
| | | * <seander@cs.stanford.edu>, released in the public domain. |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_bits_h */ |
| | | #endif /* SDL_bits_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Header file declaring the SDL_BlendMode enumeration |
| | | */ |
| | | |
| | | #ifndef _SDL_blendmode_h |
| | | #define _SDL_blendmode_h |
| | | #ifndef SDL_blendmode_h_ |
| | | #define SDL_blendmode_h_ |
| | | |
| | | #include "begin_code.h" |
| | | /* Set up for C function definitions, even when using C++ */ |
| | |
| | | SDL_BLENDMODE_ADD = 0x00000002, /**< additive blending |
| | | dstRGB = (srcRGB * srcA) + dstRGB |
| | | dstA = dstA */ |
| | | SDL_BLENDMODE_MOD = 0x00000004 /**< color modulate |
| | | SDL_BLENDMODE_MOD = 0x00000004, /**< color modulate |
| | | dstRGB = srcRGB * dstRGB |
| | | dstA = dstA */ |
| | | SDL_BLENDMODE_INVALID = 0x7FFFFFFF |
| | | |
| | | /* Additional custom blend modes can be returned by SDL_ComposeCustomBlendMode() */ |
| | | |
| | | } SDL_BlendMode; |
| | | |
| | | /** |
| | | * \brief The blend operation used when combining source and destination pixel components |
| | | */ |
| | | typedef enum |
| | | { |
| | | SDL_BLENDOPERATION_ADD = 0x1, /**< dst + src: supported by all renderers */ |
| | | SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */ |
| | | SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */ |
| | | SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D11 */ |
| | | SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D11 */ |
| | | |
| | | } SDL_BlendOperation; |
| | | |
| | | /** |
| | | * \brief The normalized factor used to multiply pixel components |
| | | */ |
| | | typedef enum |
| | | { |
| | | SDL_BLENDFACTOR_ZERO = 0x1, /**< 0, 0, 0, 0 */ |
| | | SDL_BLENDFACTOR_ONE = 0x2, /**< 1, 1, 1, 1 */ |
| | | SDL_BLENDFACTOR_SRC_COLOR = 0x3, /**< srcR, srcG, srcB, srcA */ |
| | | SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR = 0x4, /**< 1-srcR, 1-srcG, 1-srcB, 1-srcA */ |
| | | SDL_BLENDFACTOR_SRC_ALPHA = 0x5, /**< srcA, srcA, srcA, srcA */ |
| | | SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA = 0x6, /**< 1-srcA, 1-srcA, 1-srcA, 1-srcA */ |
| | | SDL_BLENDFACTOR_DST_COLOR = 0x7, /**< dstR, dstG, dstB, dstA */ |
| | | SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 0x8, /**< 1-dstR, 1-dstG, 1-dstB, 1-dstA */ |
| | | SDL_BLENDFACTOR_DST_ALPHA = 0x9, /**< dstA, dstA, dstA, dstA */ |
| | | SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 0xA /**< 1-dstA, 1-dstA, 1-dstA, 1-dstA */ |
| | | |
| | | } SDL_BlendFactor; |
| | | |
| | | /** |
| | | * \brief Create a custom blend mode, which may or may not be supported by a given renderer |
| | | * |
| | | * \param srcColorFactor |
| | | * \param dstColorFactor |
| | | * \param colorOperation |
| | | * \param srcAlphaFactor |
| | | * \param dstAlphaFactor |
| | | * \param alphaOperation |
| | | * |
| | | * The result of the blend mode operation will be: |
| | | * dstRGB = dstRGB * dstColorFactor colorOperation srcRGB * srcColorFactor |
| | | * and |
| | | * dstA = dstA * dstAlphaFactor alphaOperation srcA * srcAlphaFactor |
| | | */ |
| | | extern DECLSPEC SDL_BlendMode SDLCALL SDL_ComposeCustomBlendMode(SDL_BlendFactor srcColorFactor, |
| | | SDL_BlendFactor dstColorFactor, |
| | | SDL_BlendOperation colorOperation, |
| | | SDL_BlendFactor srcAlphaFactor, |
| | | SDL_BlendFactor dstAlphaFactor, |
| | | SDL_BlendOperation alphaOperation); |
| | | |
| | | /* Ends C function definitions when using C++ */ |
| | | #ifdef __cplusplus |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_blendmode_h */ |
| | | #endif /* SDL_blendmode_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Include file for SDL clipboard handling |
| | | */ |
| | | |
| | | #ifndef _SDL_clipboard_h |
| | | #define _SDL_clipboard_h |
| | | #ifndef SDL_clipboard_h_ |
| | | #define SDL_clipboard_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_clipboard_h */ |
| | | #endif /* SDL_clipboard_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_h |
| | | #define _SDL_config_h |
| | | #ifndef SDL_config_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | */ |
| | | |
| | | /* Add any platform that doesn't build using the configure system. */ |
| | | #ifdef USING_PREMAKE_CONFIG_H |
| | | #include "SDL_config_premake.h" |
| | | #elif defined(__WIN32__) |
| | | #if defined(__WIN32__) |
| | | #include "SDL_config_windows.h" |
| | | #elif defined(__WINRT__) |
| | | #include "SDL_config_winrt.h" |
| | |
| | | #error Wrong SDL_config.h, check your include path? |
| | | #endif |
| | | |
| | | #endif /* _SDL_config_h */ |
| | | #endif /* SDL_config_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_h |
| | | #define _SDL_config_h |
| | | #ifndef SDL_config_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | /** |
| | | * \file SDL_config.h.in |
| | |
| | | #cmakedefine HAVE_GCC_ATOMICS @HAVE_GCC_ATOMICS@ |
| | | #cmakedefine HAVE_GCC_SYNC_LOCK_TEST_AND_SET @HAVE_GCC_SYNC_LOCK_TEST_AND_SET@ |
| | | |
| | | #cmakedefine HAVE_D3D_H @HAVE_D3D_H@ |
| | | #cmakedefine HAVE_D3D11_H @HAVE_D3D11_H@ |
| | | #cmakedefine HAVE_DDRAW_H @HAVE_DDRAW_H@ |
| | | #cmakedefine HAVE_DSOUND_H @HAVE_DSOUND_H@ |
| | | #cmakedefine HAVE_DINPUT_H @HAVE_DINPUT_H@ |
| | | #cmakedefine HAVE_XAUDIO2_H @HAVE_XAUDIO2_H@ |
| | | #cmakedefine HAVE_XINPUT_H @HAVE_XINPUT_H@ |
| | | #cmakedefine HAVE_DXGI_H @HAVE_DXGI_H@ |
| | | |
| | | /* Comment this if you want to build without any C library requirements */ |
| | | #cmakedefine HAVE_LIBC 1 |
| | | #if HAVE_LIBC |
| | | |
| | | /* Useful headers */ |
| | | #cmakedefine HAVE_ALLOCA_H 1 |
| | | #cmakedefine HAVE_SYS_TYPES_H 1 |
| | | #cmakedefine HAVE_STDIO_H 1 |
| | | #cmakedefine STDC_HEADERS 1 |
| | | #cmakedefine HAVE_STDLIB_H 1 |
| | | #cmakedefine HAVE_STDARG_H 1 |
| | | #cmakedefine HAVE_MALLOC_H 1 |
| | | #cmakedefine HAVE_MEMORY_H 1 |
| | | #cmakedefine HAVE_STRING_H 1 |
| | | #cmakedefine HAVE_STRINGS_H 1 |
| | | #cmakedefine HAVE_INTTYPES_H 1 |
| | | #cmakedefine HAVE_STDINT_H 1 |
| | | #cmakedefine HAVE_ALLOCA_H 1 |
| | | #cmakedefine HAVE_CTYPE_H 1 |
| | | #cmakedefine HAVE_MATH_H 1 |
| | | #cmakedefine HAVE_FLOAT_H 1 |
| | | #cmakedefine HAVE_ICONV_H 1 |
| | | #cmakedefine HAVE_INTTYPES_H 1 |
| | | #cmakedefine HAVE_LIMITS_H 1 |
| | | #cmakedefine HAVE_MALLOC_H 1 |
| | | #cmakedefine HAVE_MATH_H 1 |
| | | #cmakedefine HAVE_MEMORY_H 1 |
| | | #cmakedefine HAVE_SIGNAL_H 1 |
| | | #cmakedefine HAVE_ALTIVEC_H 1 |
| | | #cmakedefine HAVE_STDARG_H 1 |
| | | #cmakedefine HAVE_STDINT_H 1 |
| | | #cmakedefine HAVE_STDIO_H 1 |
| | | #cmakedefine HAVE_STDLIB_H 1 |
| | | #cmakedefine HAVE_STRINGS_H 1 |
| | | #cmakedefine HAVE_STRING_H 1 |
| | | #cmakedefine HAVE_SYS_TYPES_H 1 |
| | | #cmakedefine HAVE_WCHAR_H 1 |
| | | #cmakedefine HAVE_PTHREAD_NP_H 1 |
| | | #cmakedefine HAVE_LIBUDEV_H 1 |
| | | #cmakedefine HAVE_DBUS_DBUS_H 1 |
| | | #cmakedefine HAVE_IBUS_IBUS_H 1 |
| | | #cmakedefine HAVE_FCITX_FRONTEND_H 1 |
| | | #cmakedefine HAVE_LIBUNWIND_H 1 |
| | | |
| | | /* C library functions */ |
| | | #cmakedefine HAVE_MALLOC 1 |
| | |
| | | #cmakedefine HAVE_MEMCPY 1 |
| | | #cmakedefine HAVE_MEMMOVE 1 |
| | | #cmakedefine HAVE_MEMCMP 1 |
| | | #cmakedefine HAVE_WCSLEN 1 |
| | | #cmakedefine HAVE_WCSLCPY 1 |
| | | #cmakedefine HAVE_WCSLCAT 1 |
| | | #cmakedefine HAVE_WCSCMP 1 |
| | | #cmakedefine HAVE_STRLEN 1 |
| | | #cmakedefine HAVE_STRLCPY 1 |
| | | #cmakedefine HAVE_STRLCAT 1 |
| | | #cmakedefine HAVE_STRDUP 1 |
| | | #cmakedefine HAVE__STRREV 1 |
| | | #cmakedefine HAVE__STRUPR 1 |
| | | #cmakedefine HAVE__STRLWR 1 |
| | |
| | | #cmakedefine HAVE_VSSCANF 1 |
| | | #cmakedefine HAVE_VSNPRINTF 1 |
| | | #cmakedefine HAVE_M_PI 1 |
| | | #cmakedefine HAVE_ATAN 1 |
| | | #cmakedefine HAVE_ATAN2 1 |
| | | #cmakedefine HAVE_ACOS 1 |
| | | #cmakedefine HAVE_ACOSF 1 |
| | | #cmakedefine HAVE_ASIN 1 |
| | | #cmakedefine HAVE_ASINF 1 |
| | | #cmakedefine HAVE_ATAN 1 |
| | | #cmakedefine HAVE_ATANF 1 |
| | | #cmakedefine HAVE_ATAN2 1 |
| | | #cmakedefine HAVE_ATAN2F 1 |
| | | #cmakedefine HAVE_CEIL 1 |
| | | #cmakedefine HAVE_CEILF 1 |
| | | #cmakedefine HAVE_COPYSIGN 1 |
| | | #cmakedefine HAVE_COPYSIGNF 1 |
| | | #cmakedefine HAVE_COS 1 |
| | | #cmakedefine HAVE_COSF 1 |
| | | #cmakedefine HAVE_FABS 1 |
| | | #cmakedefine HAVE_FABSF 1 |
| | | #cmakedefine HAVE_FLOOR 1 |
| | | #cmakedefine HAVE_FLOORF 1 |
| | | #cmakedefine HAVE_FMOD 1 |
| | | #cmakedefine HAVE_FMODF 1 |
| | | #cmakedefine HAVE_LOG 1 |
| | | #cmakedefine HAVE_LOGF 1 |
| | | #cmakedefine HAVE_LOG10 1 |
| | | #cmakedefine HAVE_LOG10F 1 |
| | | #cmakedefine HAVE_POW 1 |
| | | #cmakedefine HAVE_POWF 1 |
| | | #cmakedefine HAVE_SCALBN 1 |
| | | #cmakedefine HAVE_SCALBNF 1 |
| | | #cmakedefine HAVE_SIN 1 |
| | | #cmakedefine HAVE_SINF 1 |
| | | #cmakedefine HAVE_SQRT 1 |
| | | #cmakedefine HAVE_SQRTF 1 |
| | | #cmakedefine HAVE_TAN 1 |
| | | #cmakedefine HAVE_TANF 1 |
| | | #cmakedefine HAVE_FOPEN64 1 |
| | | #cmakedefine HAVE_FSEEKO 1 |
| | | #cmakedefine HAVE_FSEEKO64 1 |
| | | #cmakedefine HAVE_SIGACTION 1 |
| | |
| | | #cmakedefine HAVE_PTHREAD_SETNAME_NP 1 |
| | | #cmakedefine HAVE_PTHREAD_SET_NAME_NP 1 |
| | | #cmakedefine HAVE_SEM_TIMEDWAIT 1 |
| | | #cmakedefine HAVE_GETAUXVAL 1 |
| | | #cmakedefine HAVE_POLL 1 |
| | | |
| | | #elif __WIN32__ |
| | | #cmakedefine HAVE_STDARG_H 1 |
| | | #cmakedefine HAVE_STDDEF_H 1 |
| | | #cmakedefine HAVE_FLOAT_H 1 |
| | | #else |
| | | /* We may need some replacement for stdarg.h here */ |
| | | #include <stdarg.h> |
| | | #endif /* HAVE_LIBC */ |
| | | |
| | | #cmakedefine HAVE_ALTIVEC_H 1 |
| | | #cmakedefine HAVE_DBUS_DBUS_H 1 |
| | | #cmakedefine HAVE_FCITX_FRONTEND_H 1 |
| | | #cmakedefine HAVE_IBUS_IBUS_H 1 |
| | | #cmakedefine HAVE_IMMINTRIN_H 1 |
| | | #cmakedefine HAVE_LIBSAMPLERATE_H 1 |
| | | #cmakedefine HAVE_LIBUDEV_H 1 |
| | | |
| | | #cmakedefine HAVE_D3D_H @HAVE_D3D_H@ |
| | | #cmakedefine HAVE_D3D11_H @HAVE_D3D11_H@ |
| | | #cmakedefine HAVE_DDRAW_H @HAVE_DDRAW_H@ |
| | | #cmakedefine HAVE_DSOUND_H @HAVE_DSOUND_H@ |
| | | #cmakedefine HAVE_DINPUT_H @HAVE_DINPUT_H@ |
| | | #cmakedefine HAVE_XINPUT_H @HAVE_XINPUT_H@ |
| | | #cmakedefine HAVE_DXGI_H @HAVE_DXGI_H@ |
| | | #cmakedefine HAVE_XINPUT_GAMEPAD_EX @HAVE_XINPUT_GAMEPAD_EX@ |
| | | #cmakedefine HAVE_XINPUT_STATE_EX @HAVE_XINPUT_STATE_EX@ |
| | | |
| | | /* SDL internal assertion support */ |
| | | #cmakedefine SDL_DEFAULT_ASSERT_LEVEL @SDL_DEFAULT_ASSERT_LEVEL@ |
| | |
| | | #cmakedefine SDL_FILESYSTEM_DISABLED @SDL_FILESYSTEM_DISABLED@ |
| | | |
| | | /* Enable various audio drivers */ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ANDROID @SDL_AUDIO_DRIVER_ANDROID@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ALSA @SDL_AUDIO_DRIVER_ALSA@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ALSA_DYNAMIC @SDL_AUDIO_DRIVER_ALSA_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ANDROID @SDL_AUDIO_DRIVER_ANDROID@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ARTS @SDL_AUDIO_DRIVER_ARTS@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ARTS_DYNAMIC @SDL_AUDIO_DRIVER_ARTS_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO @SDL_AUDIO_DRIVER_PULSEAUDIO@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC @SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_HAIKU @SDL_AUDIO_DRIVER_HAIKU@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_BSD @SDL_AUDIO_DRIVER_BSD@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_COREAUDIO @SDL_AUDIO_DRIVER_COREAUDIO@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_DISK @SDL_AUDIO_DRIVER_DISK@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_DUMMY @SDL_AUDIO_DRIVER_DUMMY@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_XAUDIO2 @SDL_AUDIO_DRIVER_XAUDIO2@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_DSOUND @SDL_AUDIO_DRIVER_DSOUND@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_DUMMY @SDL_AUDIO_DRIVER_DUMMY@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_EMSCRIPTEN @SDL_AUDIO_DRIVER_EMSCRIPTEN@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ESD @SDL_AUDIO_DRIVER_ESD@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_ESD_DYNAMIC @SDL_AUDIO_DRIVER_ESD_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_FUSIONSOUND @SDL_AUDIO_DRIVER_FUSIONSOUND@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC @SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_HAIKU @SDL_AUDIO_DRIVER_HAIKU@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_JACK @SDL_AUDIO_DRIVER_JACK@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_JACK_DYNAMIC @SDL_AUDIO_DRIVER_JACK_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_NAS @SDL_AUDIO_DRIVER_NAS@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_NAS_DYNAMIC @SDL_AUDIO_DRIVER_NAS_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_SNDIO @SDL_AUDIO_DRIVER_SNDIO@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_SNDIO_DYNAMIC @SDL_AUDIO_DRIVER_SNDIO_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_NETBSD @SDL_AUDIO_DRIVER_NETBSD@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_OSS @SDL_AUDIO_DRIVER_OSS@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H @SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_PAUDIO @SDL_AUDIO_DRIVER_PAUDIO@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO @SDL_AUDIO_DRIVER_PULSEAUDIO@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC @SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_QSA @SDL_AUDIO_DRIVER_QSA@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_SNDIO @SDL_AUDIO_DRIVER_SNDIO@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_SNDIO_DYNAMIC @SDL_AUDIO_DRIVER_SNDIO_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_SUNAUDIO @SDL_AUDIO_DRIVER_SUNAUDIO@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_WASAPI @SDL_AUDIO_DRIVER_WASAPI@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_WINMM @SDL_AUDIO_DRIVER_WINMM@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_FUSIONSOUND @SDL_AUDIO_DRIVER_FUSIONSOUND@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC @SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC@ |
| | | #cmakedefine SDL_AUDIO_DRIVER_EMSCRIPTEN @SDL_AUDIO_DRIVER_EMSCRIPTEN@ |
| | | |
| | | /* Enable various input drivers */ |
| | | #cmakedefine SDL_INPUT_LINUXEV @SDL_INPUT_LINUXEV@ |
| | |
| | | #cmakedefine SDL_HAPTIC_IOKIT @SDL_HAPTIC_IOKIT@ |
| | | #cmakedefine SDL_HAPTIC_DINPUT @SDL_HAPTIC_DINPUT@ |
| | | #cmakedefine SDL_HAPTIC_XINPUT @SDL_HAPTIC_XINPUT@ |
| | | #cmakedefine SDL_HAPTIC_ANDROID @SDL_HAPTIC_ANDROID@ |
| | | |
| | | /* Enable various shared object loading systems */ |
| | | #cmakedefine SDL_LOADSO_HAIKU @SDL_LOADSO_HAIKU@ |
| | | #cmakedefine SDL_LOADSO_DLOPEN @SDL_LOADSO_DLOPEN@ |
| | | #cmakedefine SDL_LOADSO_DUMMY @SDL_LOADSO_DUMMY@ |
| | | #cmakedefine SDL_LOADSO_LDG @SDL_LOADSO_LDG@ |
| | |
| | | #cmakedefine SDL_VIDEO_DRIVER_RPI @SDL_VIDEO_DRIVER_RPI@ |
| | | #cmakedefine SDL_VIDEO_DRIVER_VIVANTE @SDL_VIDEO_DRIVER_VIVANTE@ |
| | | #cmakedefine SDL_VIDEO_DRIVER_VIVANTE_VDK @SDL_VIDEO_DRIVER_VIVANTE_VDK@ |
| | | |
| | | #cmakedefine SDL_VIDEO_DRIVER_KMSDRM @SDL_VIDEO_DRIVER_KMSDRM@ |
| | | #cmakedefine SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC @SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC@ |
| | | #cmakedefine SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM @SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM@ |
| | | |
| | | #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH @SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH@ |
| | | #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC@ |
| | |
| | | #cmakedefine SDL_VIDEO_RENDER_OGL_ES @SDL_VIDEO_RENDER_OGL_ES@ |
| | | #cmakedefine SDL_VIDEO_RENDER_OGL_ES2 @SDL_VIDEO_RENDER_OGL_ES2@ |
| | | #cmakedefine SDL_VIDEO_RENDER_DIRECTFB @SDL_VIDEO_RENDER_DIRECTFB@ |
| | | #cmakedefine SDL_VIDEO_RENDER_METAL @SDL_VIDEO_RENDER_METAL@ |
| | | |
| | | /* Enable OpenGL support */ |
| | | #cmakedefine SDL_VIDEO_OPENGL @SDL_VIDEO_OPENGL@ |
| | |
| | | #cmakedefine SDL_VIDEO_OPENGL_EGL @SDL_VIDEO_OPENGL_EGL@ |
| | | #cmakedefine SDL_VIDEO_OPENGL_OSMESA @SDL_VIDEO_OPENGL_OSMESA@ |
| | | #cmakedefine SDL_VIDEO_OPENGL_OSMESA_DYNAMIC @SDL_VIDEO_OPENGL_OSMESA_DYNAMIC@ |
| | | |
| | | /* Enable Vulkan support */ |
| | | #cmakedefine SDL_VIDEO_VULKAN @SDL_VIDEO_VULKAN@ |
| | | |
| | | /* Enable system power support */ |
| | | #cmakedefine SDL_POWER_ANDROID @SDL_POWER_ANDROID@ |
| | |
| | | #cmakedefine SDL_ASSEMBLY_ROUTINES @SDL_ASSEMBLY_ROUTINES@ |
| | | #cmakedefine SDL_ALTIVEC_BLITTERS @SDL_ALTIVEC_BLITTERS@ |
| | | |
| | | /* Enable dynamic libsamplerate support */ |
| | | #cmakedefine SDL_LIBSAMPLERATE_DYNAMIC @SDL_LIBSAMPLERATE_DYNAMIC@ |
| | | |
| | | /* Platform specific definitions */ |
| | | #if !defined(__WIN32__) |
| | |
| | | # endif /* !_STDINT_H_ && !HAVE_STDINT_H */ |
| | | #endif /* __WIN32__ */ |
| | | |
| | | #endif /* _SDL_config_h */ |
| | | #endif /* SDL_config_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_h |
| | | #define _SDL_config_h |
| | | #ifndef SDL_config_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | /** |
| | | * \file SDL_config.h.in |
| | |
| | | #undef HAVE_GCC_ATOMICS |
| | | #undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET |
| | | |
| | | #undef HAVE_DDRAW_H |
| | | #undef HAVE_DINPUT_H |
| | | #undef HAVE_DSOUND_H |
| | | #undef HAVE_DXGI_H |
| | | #undef HAVE_XINPUT_H |
| | | |
| | | /* Comment this if you want to build without any C library requirements */ |
| | | #undef HAVE_LIBC |
| | | #if HAVE_LIBC |
| | | |
| | | /* Useful headers */ |
| | | #undef HAVE_ALLOCA_H |
| | | #undef HAVE_SYS_TYPES_H |
| | | #undef HAVE_STDIO_H |
| | | #undef STDC_HEADERS |
| | | #undef HAVE_STDLIB_H |
| | | #undef HAVE_STDARG_H |
| | | #undef HAVE_MALLOC_H |
| | | #undef HAVE_MEMORY_H |
| | | #undef HAVE_STRING_H |
| | | #undef HAVE_STRINGS_H |
| | | #undef HAVE_INTTYPES_H |
| | | #undef HAVE_STDINT_H |
| | | #undef HAVE_ALLOCA_H |
| | | #undef HAVE_CTYPE_H |
| | | #undef HAVE_MATH_H |
| | | #undef HAVE_FLOAT_H |
| | | #undef HAVE_ICONV_H |
| | | #undef HAVE_INTTYPES_H |
| | | #undef HAVE_LIMITS_H |
| | | #undef HAVE_MALLOC_H |
| | | #undef HAVE_MATH_H |
| | | #undef HAVE_MEMORY_H |
| | | #undef HAVE_SIGNAL_H |
| | | #undef HAVE_ALTIVEC_H |
| | | #undef HAVE_STDARG_H |
| | | #undef HAVE_STDINT_H |
| | | #undef HAVE_STDIO_H |
| | | #undef HAVE_STDLIB_H |
| | | #undef HAVE_STRINGS_H |
| | | #undef HAVE_STRING_H |
| | | #undef HAVE_SYS_TYPES_H |
| | | #undef HAVE_WCHAR_H |
| | | #undef HAVE_PTHREAD_NP_H |
| | | #undef HAVE_LIBUDEV_H |
| | | #undef HAVE_DBUS_DBUS_H |
| | | #undef HAVE_IBUS_IBUS_H |
| | | #undef HAVE_FCITX_FRONTEND_H |
| | | #undef HAVE_LIBUNWIND_H |
| | | |
| | | /* C library functions */ |
| | | #undef HAVE_MALLOC |
| | |
| | | #undef HAVE_MEMCPY |
| | | #undef HAVE_MEMMOVE |
| | | #undef HAVE_MEMCMP |
| | | #undef HAVE_WCSLEN |
| | | #undef HAVE_WCSLCPY |
| | | #undef HAVE_WCSLCAT |
| | | #undef HAVE_WCSCMP |
| | | #undef HAVE_STRLEN |
| | | #undef HAVE_STRLCPY |
| | | #undef HAVE_STRLCAT |
| | | #undef HAVE_STRDUP |
| | | #undef HAVE__STRREV |
| | | #undef HAVE__STRUPR |
| | | #undef HAVE__STRLWR |
| | |
| | | #undef HAVE_SNPRINTF |
| | | #undef HAVE_VSNPRINTF |
| | | #undef HAVE_M_PI |
| | | #undef HAVE_ATAN |
| | | #undef HAVE_ATAN2 |
| | | #undef HAVE_ACOS |
| | | #undef HAVE_ACOSF |
| | | #undef HAVE_ASIN |
| | | #undef HAVE_ASINF |
| | | #undef HAVE_ATAN |
| | | #undef HAVE_ATANF |
| | | #undef HAVE_ATAN2 |
| | | #undef HAVE_ATAN2F |
| | | #undef HAVE_CEIL |
| | | #undef HAVE_CEILF |
| | | #undef HAVE_COPYSIGN |
| | | #undef HAVE_COPYSIGNF |
| | | #undef HAVE_COS |
| | | #undef HAVE_COSF |
| | | #undef HAVE_FABS |
| | | #undef HAVE_FABSF |
| | | #undef HAVE_FLOOR |
| | | #undef HAVE_FLOORF |
| | | #undef HAVE_FMOD |
| | | #undef HAVE_FMODF |
| | | #undef HAVE_LOG |
| | | #undef HAVE_LOGF |
| | | #undef HAVE_LOG10 |
| | | #undef HAVE_LOG10F |
| | | #undef HAVE_POW |
| | | #undef HAVE_POWF |
| | | #undef HAVE_SCALBN |
| | | #undef HAVE_SCALBNF |
| | | #undef HAVE_SIN |
| | | #undef HAVE_SINF |
| | | #undef HAVE_SQRT |
| | | #undef HAVE_SQRTF |
| | | #undef HAVE_TAN |
| | | #undef HAVE_TANF |
| | | #undef HAVE_FOPEN64 |
| | | #undef HAVE_FSEEKO |
| | | #undef HAVE_FSEEKO64 |
| | | #undef HAVE_SIGACTION |
| | |
| | | #undef HAVE_PTHREAD_SETNAME_NP |
| | | #undef HAVE_PTHREAD_SET_NAME_NP |
| | | #undef HAVE_SEM_TIMEDWAIT |
| | | #undef HAVE_GETAUXVAL |
| | | #undef HAVE_POLL |
| | | |
| | | #else |
| | | #define HAVE_STDARG_H 1 |
| | | #define HAVE_STDDEF_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #endif /* HAVE_LIBC */ |
| | | |
| | | #undef HAVE_ALTIVEC_H |
| | | #undef HAVE_DBUS_DBUS_H |
| | | #undef HAVE_FCITX_FRONTEND_H |
| | | #undef HAVE_IBUS_IBUS_H |
| | | #undef HAVE_IMMINTRIN_H |
| | | #undef HAVE_LIBSAMPLERATE_H |
| | | #undef HAVE_LIBUDEV_H |
| | | |
| | | #undef HAVE_DDRAW_H |
| | | #undef HAVE_DINPUT_H |
| | | #undef HAVE_DSOUND_H |
| | | #undef HAVE_DXGI_H |
| | | #undef HAVE_XINPUT_H |
| | | #undef HAVE_XINPUT_GAMEPAD_EX |
| | | #undef HAVE_XINPUT_STATE_EX |
| | | |
| | | /* SDL internal assertion support */ |
| | | #undef SDL_DEFAULT_ASSERT_LEVEL |
| | |
| | | /* Enable various audio drivers */ |
| | | #undef SDL_AUDIO_DRIVER_ALSA |
| | | #undef SDL_AUDIO_DRIVER_ALSA_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_ANDROID |
| | | #undef SDL_AUDIO_DRIVER_ARTS |
| | | #undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_PULSEAUDIO |
| | | #undef SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_HAIKU |
| | | #undef SDL_AUDIO_DRIVER_BSD |
| | | #undef SDL_AUDIO_DRIVER_COREAUDIO |
| | | #undef SDL_AUDIO_DRIVER_DISK |
| | | #undef SDL_AUDIO_DRIVER_DUMMY |
| | | #undef SDL_AUDIO_DRIVER_ANDROID |
| | | #undef SDL_AUDIO_DRIVER_XAUDIO2 |
| | | #undef SDL_AUDIO_DRIVER_DSOUND |
| | | #undef SDL_AUDIO_DRIVER_DUMMY |
| | | #undef SDL_AUDIO_DRIVER_EMSCRIPTEN |
| | | #undef SDL_AUDIO_DRIVER_ESD |
| | | #undef SDL_AUDIO_DRIVER_ESD_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_FUSIONSOUND |
| | | #undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_HAIKU |
| | | #undef SDL_AUDIO_DRIVER_JACK |
| | | #undef SDL_AUDIO_DRIVER_JACK_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_NACL |
| | | #undef SDL_AUDIO_DRIVER_NAS |
| | | #undef SDL_AUDIO_DRIVER_NAS_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_SNDIO |
| | | #undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_NETBSD |
| | | #undef SDL_AUDIO_DRIVER_OSS |
| | | #undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H |
| | | #undef SDL_AUDIO_DRIVER_PAUDIO |
| | | #undef SDL_AUDIO_DRIVER_PULSEAUDIO |
| | | #undef SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_QSA |
| | | #undef SDL_AUDIO_DRIVER_SNDIO |
| | | #undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_SUNAUDIO |
| | | #undef SDL_AUDIO_DRIVER_WASAPI |
| | | #undef SDL_AUDIO_DRIVER_WINMM |
| | | #undef SDL_AUDIO_DRIVER_FUSIONSOUND |
| | | #undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC |
| | | #undef SDL_AUDIO_DRIVER_EMSCRIPTEN |
| | | |
| | | /* Enable various input drivers */ |
| | | #undef SDL_INPUT_LINUXEV |
| | |
| | | #undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H |
| | | #undef SDL_JOYSTICK_EMSCRIPTEN |
| | | #undef SDL_HAPTIC_DUMMY |
| | | #undef SDL_HAPTIC_ANDROID |
| | | #undef SDL_HAPTIC_LINUX |
| | | #undef SDL_HAPTIC_IOKIT |
| | | #undef SDL_HAPTIC_DINPUT |
| | | #undef SDL_HAPTIC_XINPUT |
| | | |
| | | /* Enable various shared object loading systems */ |
| | | #undef SDL_LOADSO_HAIKU |
| | | #undef SDL_LOADSO_DLOPEN |
| | | #undef SDL_LOADSO_DUMMY |
| | | #undef SDL_LOADSO_LDG |
| | |
| | | #undef SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON |
| | | #undef SDL_VIDEO_DRIVER_X11 |
| | | #undef SDL_VIDEO_DRIVER_RPI |
| | | #undef SDL_VIDEO_DRIVER_KMSDRM |
| | | #undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC |
| | | #undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM |
| | | #undef SDL_VIDEO_DRIVER_ANDROID |
| | | #undef SDL_VIDEO_DRIVER_EMSCRIPTEN |
| | | #undef SDL_VIDEO_DRIVER_X11_DYNAMIC |
| | |
| | | #undef SDL_VIDEO_DRIVER_NACL |
| | | #undef SDL_VIDEO_DRIVER_VIVANTE |
| | | #undef SDL_VIDEO_DRIVER_VIVANTE_VDK |
| | | #undef SDL_VIDEO_DRIVER_QNX |
| | | |
| | | #undef SDL_VIDEO_RENDER_D3D |
| | | #undef SDL_VIDEO_RENDER_D3D11 |
| | |
| | | #undef SDL_VIDEO_RENDER_OGL_ES |
| | | #undef SDL_VIDEO_RENDER_OGL_ES2 |
| | | #undef SDL_VIDEO_RENDER_DIRECTFB |
| | | #undef SDL_VIDEO_RENDER_METAL |
| | | |
| | | /* Enable OpenGL support */ |
| | | #undef SDL_VIDEO_OPENGL |
| | |
| | | #undef SDL_VIDEO_OPENGL_WGL |
| | | #undef SDL_VIDEO_OPENGL_OSMESA |
| | | #undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC |
| | | |
| | | /* Enable Vulkan support */ |
| | | #undef SDL_VIDEO_VULKAN |
| | | |
| | | /* Enable system power support */ |
| | | #undef SDL_POWER_LINUX |
| | |
| | | /* Enable ime support */ |
| | | #undef SDL_USE_IME |
| | | |
| | | #endif /* _SDL_config_h */ |
| | | /* Enable dynamic udev support */ |
| | | #undef SDL_UDEV_DYNAMIC |
| | | |
| | | /* Enable dynamic libsamplerate support */ |
| | | #undef SDL_LIBSAMPLERATE_DYNAMIC |
| | | |
| | | #endif /* SDL_config_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_android_h |
| | | #define _SDL_config_android_h |
| | | #ifndef SDL_config_android_h_ |
| | | #define SDL_config_android_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | |
| | | #define HAVE_GCC_ATOMICS 1 |
| | | |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | |
| | | /* C library functions */ |
| | | #define HAVE_MALLOC 1 |
| | |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE_STRLCPY 1 |
| | | #define HAVE_STRLCAT 1 |
| | | #define HAVE_STRDUP 1 |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | |
| | | #define HAVE_STRNCASECMP 1 |
| | | #define HAVE_VSSCANF 1 |
| | | #define HAVE_VSNPRINTF 1 |
| | | #define HAVE_M_PI 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ACOSF 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ASINF 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATANF 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ATAN2F 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_CEILF 1 |
| | | #define HAVE_COPYSIGN 1 |
| | | #define HAVE_COPYSIGNF 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FABSF 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_FLOORF 1 |
| | | #define HAVE_FMOD 1 |
| | | #define HAVE_FMODF 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOGF 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_LOG10F 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_POWF 1 |
| | | #define HAVE_SCALBN 1 |
| | | #define HAVE_SCALBNF 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | |
| | | #define HAVE_SETJMP 1 |
| | | #define HAVE_NANOSLEEP 1 |
| | | #define HAVE_SYSCONF 1 |
| | | #define HAVE_CLOCK_GETTIME 1 |
| | | #define HAVE_CLOCK_GETTIME 1 |
| | | |
| | | #define SIZEOF_VOIDP 4 |
| | | |
| | |
| | | |
| | | /* Enable various input drivers */ |
| | | #define SDL_JOYSTICK_ANDROID 1 |
| | | #define SDL_HAPTIC_DUMMY 1 |
| | | #define SDL_HAPTIC_ANDROID 1 |
| | | |
| | | /* Enable various shared object loading systems */ |
| | | #define SDL_LOADSO_DLOPEN 1 |
| | |
| | | #define SDL_VIDEO_RENDER_OGL_ES 1 |
| | | #define SDL_VIDEO_RENDER_OGL_ES2 1 |
| | | |
| | | /* Enable Vulkan support */ |
| | | /* Android does not support Vulkan in native code using the "armeabi" ABI. */ |
| | | #if defined(__ARM_ARCH) && __ARM_ARCH < 7 |
| | | #define SDL_VIDEO_VULKAN 0 |
| | | #else |
| | | #define SDL_VIDEO_VULKAN 1 |
| | | #endif |
| | | |
| | | /* Enable system power support */ |
| | | #define SDL_POWER_ANDROID 1 |
| | | |
| | | /* Enable the filesystem driver */ |
| | | #define SDL_FILESYSTEM_ANDROID 1 |
| | | |
| | | #endif /* _SDL_config_android_h */ |
| | | #endif /* SDL_config_android_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_iphoneos_h |
| | | #define _SDL_config_iphoneos_h |
| | | #ifndef SDL_config_iphoneos_h_ |
| | | #define SDL_config_iphoneos_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | |
| | | #define HAVE_GCC_ATOMICS 1 |
| | | |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | /* The libunwind functions are only available on x86 */ |
| | | /* #undef HAVE_LIBUNWIND_H */ |
| | | |
| | | /* C library functions */ |
| | | #define HAVE_MALLOC 1 |
| | |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE_STRLCPY 1 |
| | | #define HAVE_STRLCAT 1 |
| | | #define HAVE_STRDUP 1 |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | |
| | | #define HAVE_VSSCANF 1 |
| | | #define HAVE_VSNPRINTF 1 |
| | | #define HAVE_M_PI 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ACOSF 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ASINF 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATANF 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ATAN2F 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_CEILF 1 |
| | | #define HAVE_COPYSIGN 1 |
| | | #define HAVE_COPYSIGNF 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FABSF 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_FLOORF 1 |
| | | #define HAVE_FMOD 1 |
| | | #define HAVE_FMODF 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOGF 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_LOG10F 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_POWF 1 |
| | | #define HAVE_SCALBN 1 |
| | | #define HAVE_SCALBNF 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | |
| | | #define SDL_VIDEO_DRIVER_UIKIT 1 |
| | | #define SDL_VIDEO_DRIVER_DUMMY 1 |
| | | |
| | | /* enable OpenGL ES */ |
| | | /* Enable OpenGL ES */ |
| | | #define SDL_VIDEO_OPENGL_ES2 1 |
| | | #define SDL_VIDEO_OPENGL_ES 1 |
| | | #define SDL_VIDEO_RENDER_OGL_ES 1 |
| | | #define SDL_VIDEO_RENDER_OGL_ES2 1 |
| | | |
| | | /* Metal supported on 64-bit devices running iOS 8.0 and tvOS 9.0 and newer */ |
| | | #if !TARGET_OS_SIMULATOR && !TARGET_CPU_ARM && ((__IPHONE_OS_VERSION_MIN_REQUIRED >= 80000) || (__TV_OS_VERSION_MIN_REQUIRED >= 90000)) |
| | | #define SDL_PLATFORM_SUPPORTS_METAL 1 |
| | | #else |
| | | #define SDL_PLATFORM_SUPPORTS_METAL 0 |
| | | #endif |
| | | |
| | | #if SDL_PLATFORM_SUPPORTS_METAL |
| | | #define SDL_VIDEO_RENDER_METAL 1 |
| | | #endif |
| | | |
| | | #if SDL_PLATFORM_SUPPORTS_METAL |
| | | #define SDL_VIDEO_VULKAN 1 |
| | | #endif |
| | | |
| | | /* Enable system power support */ |
| | | #define SDL_POWER_UIKIT 1 |
| | |
| | | /* enable filesystem support */ |
| | | #define SDL_FILESYSTEM_COCOA 1 |
| | | |
| | | #endif /* _SDL_config_iphoneos_h */ |
| | | #endif /* SDL_config_iphoneos_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_macosx_h |
| | | #define _SDL_config_macosx_h |
| | | #ifndef SDL_config_macosx_h_ |
| | | #define SDL_config_macosx_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | #endif |
| | | |
| | | /* Useful headers */ |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_FLOAT_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | #define HAVE_LIBUNWIND_H 1 |
| | | |
| | | /* C library functions */ |
| | | #define HAVE_MALLOC 1 |
| | |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE_STRLCPY 1 |
| | | #define HAVE_STRLCAT 1 |
| | | #define HAVE_STRDUP 1 |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | |
| | | #define HAVE_STRNCASECMP 1 |
| | | #define HAVE_VSSCANF 1 |
| | | #define HAVE_VSNPRINTF 1 |
| | | #define HAVE_M_PI 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ACOSF 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ASINF 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATANF 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ATAN2F 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_CEILF 1 |
| | | #define HAVE_COPYSIGN 1 |
| | | #define HAVE_COPYSIGNF 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FABSF 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_FLOORF 1 |
| | | #define HAVE_FMOD 1 |
| | | #define HAVE_FMODF 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOGF 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_LOG10F 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_POWF 1 |
| | | #define HAVE_SCALBN 1 |
| | | #define HAVE_SCALBNF 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | |
| | | #define HAVE_NANOSLEEP 1 |
| | | #define HAVE_SYSCONF 1 |
| | | #define HAVE_SYSCTLBYNAME 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ASIN 1 |
| | | |
| | | /* Enable various audio drivers */ |
| | | #define SDL_AUDIO_DRIVER_COREAUDIO 1 |
| | |
| | | #define SDL_VIDEO_RENDER_OGL 1 |
| | | #endif |
| | | |
| | | #ifndef SDL_VIDEO_RENDER_OGL_ES2 |
| | | #define SDL_VIDEO_RENDER_OGL_ES2 1 |
| | | #endif |
| | | |
| | | #ifndef SDL_VIDEO_RENDER_METAL |
| | | /* Metal only supported on 64-bit architectures with 10.11+ */ |
| | | #if TARGET_CPU_X86_64 && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) |
| | | #define SDL_VIDEO_RENDER_METAL 1 |
| | | #else |
| | | #define SDL_VIDEO_RENDER_METAL 0 |
| | | #endif |
| | | #endif |
| | | |
| | | /* Enable OpenGL support */ |
| | | #ifndef SDL_VIDEO_OPENGL |
| | | #define SDL_VIDEO_OPENGL 1 |
| | | #endif |
| | | #ifndef SDL_VIDEO_OPENGL_ES2 |
| | | #define SDL_VIDEO_OPENGL_ES2 1 |
| | | #endif |
| | | #ifndef SDL_VIDEO_OPENGL_EGL |
| | | #define SDL_VIDEO_OPENGL_EGL 1 |
| | | #endif |
| | | #ifndef SDL_VIDEO_OPENGL_CGL |
| | | #define SDL_VIDEO_OPENGL_CGL 1 |
| | | #endif |
| | | #ifndef SDL_VIDEO_OPENGL_GLX |
| | | #define SDL_VIDEO_OPENGL_GLX 1 |
| | | #endif |
| | | |
| | | /* Enable Vulkan support */ |
| | | /* Metal/MoltenVK/Vulkan only supported on 64-bit architectures with 10.11+ */ |
| | | #if TARGET_CPU_X86_64 && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) |
| | | #define SDL_VIDEO_VULKAN 1 |
| | | #else |
| | | #define SDL_VIDEO_VULKAN 0 |
| | | #endif |
| | | |
| | | /* Enable system power support */ |
| | |
| | | #define SDL_ALTIVEC_BLITTERS 1 |
| | | #endif |
| | | |
| | | #endif /* _SDL_config_macosx_h */ |
| | | #endif /* SDL_config_macosx_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_minimal_h |
| | | #define _SDL_config_minimal_h |
| | | #ifndef SDL_config_minimal_h_ |
| | | #define SDL_config_minimal_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | /* Enable the dummy filesystem driver (src/filesystem/dummy/\*.c) */ |
| | | #define SDL_FILESYSTEM_DUMMY 1 |
| | | |
| | | #endif /* _SDL_config_minimal_h */ |
| | | #endif /* SDL_config_minimal_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_h |
| | | #define _SDL_config_h |
| | | #ifndef SDL_config_pandora_h_ |
| | | #define SDL_config_pandora_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | /* This is a set of defines to configure the SDL features */ |
| | | |
| | |
| | | |
| | | #define SDL_BYTEORDER 1234 |
| | | |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STDLIB_H 1 |
| | | #define HAVE_STDARG_H 1 |
| | | #define HAVE_MALLOC_H 1 |
| | | #define HAVE_MEMORY_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_STRINGS_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_ICONV_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MALLOC_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_MEMORY_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDARG_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STDLIB_H 1 |
| | | #define HAVE_STRINGS_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | |
| | | #define HAVE_MALLOC 1 |
| | | #define HAVE_CALLOC 1 |
| | | #define HAVE_REALLOC 1 |
| | |
| | | #define HAVE_MEMCPY 1 |
| | | #define HAVE_MEMMOVE 1 |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE_STRDUP 1 |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_SCALBN 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | |
| | | #define SDL_VIDEO_RENDER_OGL_ES 1 |
| | | #define SDL_VIDEO_OPENGL_ES 1 |
| | | |
| | | #endif /* _SDL_config_h */ |
| | | #endif /* SDL_config_pandora_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_psp_h |
| | | #define _SDL_config_psp_h |
| | | #ifndef SDL_config_psp_h_ |
| | | #define SDL_config_psp_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | |
| | | #define HAVE_GCC_ATOMICS 1 |
| | | |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | |
| | | /* C library functions */ |
| | | #define HAVE_MALLOC 1 |
| | |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE_STRLCPY 1 |
| | | #define HAVE_STRLCAT 1 |
| | | #define HAVE_STRDUP 1 |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | |
| | | #define HAVE_VSSCANF 1 |
| | | #define HAVE_VSNPRINTF 1 |
| | | #define HAVE_M_PI 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ACOSF 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ASINF 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATANF 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ATAN2F 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_CEILF 1 |
| | | #define HAVE_COPYSIGN 1 |
| | | #define HAVE_COPYSIGNF 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FABSF 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_FLOORF 1 |
| | | #define HAVE_FMOD 1 |
| | | #define HAVE_FMODF 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOGF 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_LOG10F 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_POWF 1 |
| | | #define HAVE_SCALBN 1 |
| | | #define HAVE_SCALBNF 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | |
| | | #define SDL_LOADSO_DISABLED 1 |
| | | |
| | | |
| | | #endif /* _SDL_config_psp_h */ |
| | | #endif /* SDL_config_psp_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_windows_h |
| | | #define _SDL_config_windows_h |
| | | #ifndef SDL_config_windows_h_ |
| | | #define SDL_config_windows_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | /* This is disabled by default to avoid C runtime dependencies and manifest requirements */ |
| | | #ifdef HAVE_LIBC |
| | | /* Useful headers */ |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_FLOAT_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | |
| | | /* C library functions */ |
| | | #define HAVE_MALLOC 1 |
| | |
| | | #define HAVE_MEMCMP 1 |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE__STRREV 1 |
| | | #define HAVE__STRUPR 1 |
| | | #define HAVE__STRLWR 1 |
| | | /* These functions have security warnings, so we won't use them */ |
| | | /* #undef HAVE__STRUPR */ |
| | | /* #undef HAVE__STRLWR */ |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | | #define HAVE__LTOA 1 |
| | | #define HAVE__ULTOA 1 |
| | | /* These functions have security warnings, so we won't use them */ |
| | | /* #undef HAVE__LTOA */ |
| | | /* #undef HAVE__ULTOA */ |
| | | #define HAVE_STRTOL 1 |
| | | #define HAVE_STRTOUL 1 |
| | | #define HAVE_STRTOD 1 |
| | |
| | | #define HAVE_STRNCMP 1 |
| | | #define HAVE__STRICMP 1 |
| | | #define HAVE__STRNICMP 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | | #define HAVE_SQRTF 1 |
| | | #define HAVE_TAN 1 |
| | | #define HAVE_TANF 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ACOSF 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ASINF 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATANF 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ATAN2F 1 |
| | | #define HAVE_CEILF 1 |
| | | #define HAVE__COPYSIGN 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FABSF 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_FLOORF 1 |
| | | #define HAVE_FMOD 1 |
| | | #define HAVE_FMODF 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOGF 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_LOG10F 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_POWF 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | | #define HAVE_SQRTF 1 |
| | | #define HAVE_TAN 1 |
| | | #define HAVE_TANF 1 |
| | | #if defined(_MSC_VER) |
| | | /* These functions were added with the VC++ 2013 C runtime library */ |
| | | #if _MSC_VER >= 1800 |
| | | #define HAVE_STRTOLL 1 |
| | | #define HAVE_VSSCANF 1 |
| | | #define HAVE_COPYSIGN 1 |
| | | #define HAVE_SCALBN 1 |
| | | #define HAVE_SCALBNF 1 |
| | | #endif |
| | | /* This function is available with at least the VC++ 2008 C runtime library */ |
| | | #if _MSC_VER >= 1400 |
| | | #define HAVE__FSEEKI64 1 |
| | | #endif |
| | | #endif |
| | | #if !defined(_MSC_VER) || defined(_USE_MATH_DEFINES) |
| | | #define HAVE_M_PI 1 |
| | |
| | | #endif |
| | | |
| | | /* Enable various audio drivers */ |
| | | #define SDL_AUDIO_DRIVER_WASAPI 1 |
| | | #define SDL_AUDIO_DRIVER_DSOUND 1 |
| | | #define SDL_AUDIO_DRIVER_XAUDIO2 1 |
| | | #define SDL_AUDIO_DRIVER_WINMM 1 |
| | | #define SDL_AUDIO_DRIVER_DISK 1 |
| | | #define SDL_AUDIO_DRIVER_DUMMY 1 |
| | |
| | | #define SDL_VIDEO_RENDER_D3D 1 |
| | | #endif |
| | | #ifndef SDL_VIDEO_RENDER_D3D11 |
| | | #define SDL_VIDEO_RENDER_D3D11 0 |
| | | #define SDL_VIDEO_RENDER_D3D11 0 |
| | | #endif |
| | | |
| | | /* Enable OpenGL support */ |
| | |
| | | #define SDL_VIDEO_OPENGL_EGL 1 |
| | | #endif |
| | | |
| | | /* Enable Vulkan support */ |
| | | #define SDL_VIDEO_VULKAN 1 |
| | | |
| | | /* Enable system power support */ |
| | | #define SDL_POWER_WINDOWS 1 |
| | |
| | | #define SDL_ASSEMBLY_ROUTINES 1 |
| | | #endif |
| | | |
| | | #endif /* _SDL_config_windows_h */ |
| | | #endif /* SDL_config_windows_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_winrt_h |
| | | #define _SDL_config_winrt_h |
| | | #ifndef SDL_config_winrt_h_ |
| | | #define SDL_config_winrt_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | #include "SDL_platform.h" |
| | | |
| | |
| | | |
| | | #if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H) |
| | | #if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__) |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #elif defined(_MSC_VER) |
| | | typedef signed __int8 int8_t; |
| | | typedef unsigned __int8 uint8_t; |
| | |
| | | #define HAVE_XINPUT_H 1 |
| | | #endif |
| | | #define HAVE_LIBC 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_FLOAT_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | |
| | | /* C library functions */ |
| | | #define HAVE_MALLOC 1 |
| | |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE__STRREV 1 |
| | | #define HAVE__STRUPR 1 |
| | | //#define HAVE__STRLWR 1 // TODO, WinRT: consider using _strlwr_s instead |
| | | //#define HAVE__STRLWR 1 // TODO, WinRT: consider using _strlwr_s instead |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | | //#define HAVE_ITOA 1 // TODO, WinRT: consider using _itoa_s instead |
| | | //#define HAVE__LTOA 1 // TODO, WinRT: consider using _ltoa_s instead |
| | | //#define HAVE__ULTOA 1 // TODO, WinRT: consider using _ultoa_s instead |
| | | //#define HAVE__LTOA 1 // TODO, WinRT: consider using _ltoa_s instead |
| | | //#define HAVE__ULTOA 1 // TODO, WinRT: consider using _ultoa_s instead |
| | | #define HAVE_STRTOL 1 |
| | | #define HAVE_STRTOUL 1 |
| | | //#define HAVE_STRTOLL 1 |
| | |
| | | #define HAVE__STRICMP 1 |
| | | #define HAVE__STRNICMP 1 |
| | | #define HAVE_VSNPRINTF 1 |
| | | //#define HAVE_SSCANF 1 // TODO, WinRT: consider using sscanf_s instead |
| | | //#define HAVE_SSCANF 1 // TODO, WinRT: consider using sscanf_s instead |
| | | #define HAVE_M_PI 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ACOSF 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ASINF 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATANF 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ATAN2F 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_CEILF 1 |
| | | #define HAVE__COPYSIGN 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_POW 1 |
| | | //#define HAVE_SCALBN 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FABSF 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_FLOORF 1 |
| | | #define HAVE_FMOD 1 |
| | | #define HAVE_FMODF 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOGF 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_LOG10F 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_POWF 1 |
| | | #define HAVE__SCALB 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | | #define HAVE_SQRTF 1 |
| | | #define HAVE_TAN 1 |
| | | #define HAVE_TANF 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | | #define HAVE_SQRTF 1 |
| | | #define HAVE_TAN 1 |
| | | #define HAVE_TANF 1 |
| | | #define HAVE__FSEEKI64 1 |
| | | |
| | | /* Enable various audio drivers */ |
| | | #define SDL_AUDIO_DRIVER_XAUDIO2 1 |
| | | #define SDL_AUDIO_DRIVER_DISK 1 |
| | | #define SDL_AUDIO_DRIVER_DUMMY 1 |
| | | #define SDL_AUDIO_DRIVER_WASAPI 1 |
| | | #define SDL_AUDIO_DRIVER_DISK 1 |
| | | #define SDL_AUDIO_DRIVER_DUMMY 1 |
| | | |
| | | /* Enable various input drivers */ |
| | | #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP |
| | | #define SDL_JOYSTICK_DISABLED 1 |
| | | #define SDL_HAPTIC_DISABLED 1 |
| | | #define SDL_HAPTIC_DISABLED 1 |
| | | #else |
| | | #define SDL_JOYSTICK_XINPUT 1 |
| | | #define SDL_HAPTIC_XINPUT 1 |
| | | #endif |
| | | |
| | | /* Enable various shared object loading systems */ |
| | | #define SDL_LOADSO_WINDOWS 1 |
| | | #define SDL_LOADSO_WINDOWS 1 |
| | | |
| | | /* Enable various threading systems */ |
| | | #if (NTDDI_VERSION >= NTDDI_WINBLUE) |
| | |
| | | #endif |
| | | |
| | | /* Enable various timer systems */ |
| | | #define SDL_TIMER_WINDOWS 1 |
| | | #define SDL_TIMER_WINDOWS 1 |
| | | |
| | | /* Enable various video drivers */ |
| | | #define SDL_VIDEO_DRIVER_WINRT 1 |
| | | #define SDL_VIDEO_DRIVER_WINRT 1 |
| | | #define SDL_VIDEO_DRIVER_DUMMY 1 |
| | | |
| | | /* Enable OpenGL ES 2.0 (via a modified ANGLE library) */ |
| | |
| | | |
| | | /* Enable assembly routines (Win64 doesn't have inline asm) */ |
| | | #ifndef _WIN64 |
| | | #define SDL_ASSEMBLY_ROUTINES 1 |
| | | #define SDL_ASSEMBLY_ROUTINES 1 |
| | | #endif |
| | | |
| | | #endif /* _SDL_config_winrt_h */ |
| | | #endif /* SDL_config_winrt_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_config_h |
| | | #define _SDL_config_h |
| | | #ifndef SDL_config_wiz_h_ |
| | | #define SDL_config_wiz_h_ |
| | | #define SDL_config_h_ |
| | | |
| | | /* This is a set of defines to configure the SDL features */ |
| | | |
| | |
| | | |
| | | #define SDL_BYTEORDER 1234 |
| | | |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define STDC_HEADERS 1 |
| | | #define HAVE_STDLIB_H 1 |
| | | #define HAVE_STDARG_H 1 |
| | | #define HAVE_MALLOC_H 1 |
| | | #define HAVE_MEMORY_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_STRINGS_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_ALLOCA_H 1 |
| | | #define HAVE_CTYPE_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_ICONV_H 1 |
| | | #define HAVE_INTTYPES_H 1 |
| | | #define HAVE_LIMITS_H 1 |
| | | #define HAVE_MALLOC_H 1 |
| | | #define HAVE_MATH_H 1 |
| | | #define HAVE_MEMORY_H 1 |
| | | #define HAVE_SIGNAL_H 1 |
| | | #define HAVE_STDARG_H 1 |
| | | #define HAVE_STDINT_H 1 |
| | | #define HAVE_STDIO_H 1 |
| | | #define HAVE_STDLIB_H 1 |
| | | #define HAVE_STRINGS_H 1 |
| | | #define HAVE_STRING_H 1 |
| | | #define HAVE_SYS_TYPES_H 1 |
| | | |
| | | #define HAVE_MALLOC 1 |
| | | #define HAVE_CALLOC 1 |
| | | #define HAVE_REALLOC 1 |
| | |
| | | #define HAVE_MEMCPY 1 |
| | | #define HAVE_MEMMOVE 1 |
| | | #define HAVE_STRLEN 1 |
| | | #define HAVE_STRDUP 1 |
| | | #define HAVE_STRCHR 1 |
| | | #define HAVE_STRRCHR 1 |
| | | #define HAVE_STRSTR 1 |
| | |
| | | #define HAVE_VSSCANF 1 |
| | | #define HAVE_VSNPRINTF 1 |
| | | #define HAVE_M_PI 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_COPYSIGN 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_ACOS 1 |
| | | #define HAVE_ACOSF 1 |
| | | #define HAVE_ASIN 1 |
| | | #define HAVE_ASINF 1 |
| | | #define HAVE_ATAN 1 |
| | | #define HAVE_ATANF 1 |
| | | #define HAVE_ATAN2 1 |
| | | #define HAVE_ATAN2F 1 |
| | | #define HAVE_CEIL 1 |
| | | #define HAVE_CEILF 1 |
| | | #define HAVE_COPYSIGN 1 |
| | | #define HAVE_COPYSIGNF 1 |
| | | #define HAVE_COS 1 |
| | | #define HAVE_COSF 1 |
| | | #define HAVE_FABS 1 |
| | | #define HAVE_FABSF 1 |
| | | #define HAVE_FLOOR 1 |
| | | #define HAVE_FLOORF 1 |
| | | #define HAVE_FMOD 1 |
| | | #define HAVE_FMODF 1 |
| | | #define HAVE_LOG 1 |
| | | #define HAVE_LOGF 1 |
| | | #define HAVE_LOG10 1 |
| | | #define HAVE_LOG10F 1 |
| | | #define HAVE_POW 1 |
| | | #define HAVE_POWF 1 |
| | | #define HAVE_SCALBN 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | | #define HAVE_SQRTF 1 |
| | | #define HAVE_TAN 1 |
| | | #define HAVE_TANF 1 |
| | | #define HAVE_SCALBNF 1 |
| | | #define HAVE_SIN 1 |
| | | #define HAVE_SINF 1 |
| | | #define HAVE_SQRT 1 |
| | | #define HAVE_SQRTF 1 |
| | | #define HAVE_TAN 1 |
| | | #define HAVE_TANF 1 |
| | | #define HAVE_SIGACTION 1 |
| | | #define HAVE_SETJMP 1 |
| | | #define HAVE_NANOSLEEP 1 |
| | |
| | | #define SDL_VIDEO_RENDER_OGL_ES 1 |
| | | #define SDL_VIDEO_OPENGL_ES 1 |
| | | |
| | | #endif /* _SDL_config_h */ |
| | | #endif /* SDL_config_wiz_h_ */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * CPU feature detection for SDL. |
| | | */ |
| | | |
| | | #ifndef _SDL_cpuinfo_h |
| | | #define _SDL_cpuinfo_h |
| | | #ifndef SDL_cpuinfo_h_ |
| | | #define SDL_cpuinfo_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | | /* Need to do this here because intrin.h has C++ code in it */ |
| | | /* Visual Studio 2005 has a bug where intrin.h conflicts with winnt.h */ |
| | | #if defined(_MSC_VER) && (_MSC_VER >= 1500) && (defined(_M_IX86) || defined(_M_X64)) |
| | | #ifdef __clang__ |
| | | /* Many of the intrinsics SDL uses are not implemented by clang with Visual Studio */ |
| | | #undef __MMX__ |
| | | #undef __SSE__ |
| | | #undef __SSE2__ |
| | | #else |
| | | #include <intrin.h> |
| | | #ifndef _WIN64 |
| | | #define __MMX__ |
| | |
| | | #endif |
| | | #define __SSE__ |
| | | #define __SSE2__ |
| | | #endif /* __clang__ */ |
| | | #elif defined(__MINGW64_VERSION_MAJOR) |
| | | #include <intrin.h> |
| | | #else |
| | | #ifdef __ALTIVEC__ |
| | | #if HAVE_ALTIVEC_H && !defined(__APPLE_ALTIVEC__) |
| | | #if HAVE_ALTIVEC_H && !defined(__APPLE_ALTIVEC__) && !defined(SDL_DISABLE_ALTIVEC_H) |
| | | #include <altivec.h> |
| | | #undef pixel |
| | | #undef bool |
| | | #endif |
| | | #endif |
| | | #ifdef __MMX__ |
| | | #include <mmintrin.h> |
| | | #endif |
| | | #ifdef __3dNOW__ |
| | | #if defined(__3dNOW__) && !defined(SDL_DISABLE_MM3DNOW_H) |
| | | #include <mm3dnow.h> |
| | | #endif |
| | | #ifdef __SSE__ |
| | | #if HAVE_IMMINTRIN_H && !defined(SDL_DISABLE_IMMINTRIN_H) |
| | | #include <immintrin.h> |
| | | #else |
| | | #if defined(__MMX__) && !defined(SDL_DISABLE_MMINTRIN_H) |
| | | #include <mmintrin.h> |
| | | #endif |
| | | #if defined(__SSE__) && !defined(SDL_DISABLE_XMMINTRIN_H) |
| | | #include <xmmintrin.h> |
| | | #endif |
| | | #ifdef __SSE2__ |
| | | #if defined(__SSE2__) && !defined(SDL_DISABLE_EMMINTRIN_H) |
| | | #include <emmintrin.h> |
| | | #endif |
| | | #if defined(__SSE3__) && !defined(SDL_DISABLE_PMMINTRIN_H) |
| | | #include <pmmintrin.h> |
| | | #endif |
| | | #endif /* HAVE_IMMINTRIN_H */ |
| | | #endif /* compiler version */ |
| | | |
| | | #include "begin_code.h" |
| | | /* Set up for C function definitions, even when using C++ */ |
| | |
| | | extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX2(void); |
| | | |
| | | /** |
| | | * This function returns true if the CPU has NEON (ARM SIMD) features. |
| | | */ |
| | | extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void); |
| | | |
| | | /** |
| | | * This function returns the amount of RAM configured in the system, in MB. |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_GetSystemRAM(void); |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_cpuinfo_h */ |
| | | #endif /* SDL_cpuinfo_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * |
| | | * This is a simple file to encapsulate the EGL API headers. |
| | | */ |
| | | #ifndef _MSC_VER |
| | | #if !defined(_MSC_VER) && !defined(__ANDROID__) |
| | | |
| | | #include <EGL/egl.h> |
| | | #include <EGL/eglext.h> |
| | |
| | | *------------------------------------------------------------------------- |
| | | * This precedes the return type of the function in the function prototype. |
| | | */ |
| | | #if defined(_WIN32) && !defined(__SCITECH_SNAP__) |
| | | #if defined(_WIN32) && !defined(__SCITECH_SNAP__) && !defined(SDL_VIDEO_STATIC_ANGLE) |
| | | # define KHRONOS_APICALL __declspec(dllimport) |
| | | #elif defined (__SYMBIAN32__) |
| | | # define KHRONOS_APICALL IMPORT_C |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Functions for reading and writing endian-specific values |
| | | */ |
| | | |
| | | #ifndef _SDL_endian_h |
| | | #define _SDL_endian_h |
| | | #ifndef SDL_endian_h_ |
| | | #define SDL_endian_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | __asm__("rorw #8,%0": "=d"(x): "0"(x):"cc"); |
| | | return x; |
| | | } |
| | | #elif defined(__WATCOMC__) && defined(__386__) |
| | | extern _inline Uint16 SDL_Swap16(Uint16); |
| | | #pragma aux SDL_Swap16 = \ |
| | | "xchg al, ah" \ |
| | | parm [ax] \ |
| | | modify [ax]; |
| | | #else |
| | | SDL_FORCE_INLINE Uint16 |
| | | SDL_Swap16(Uint16 x) |
| | |
| | | __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d"(x): "0"(x):"cc"); |
| | | return x; |
| | | } |
| | | #elif defined(__WATCOMC__) && defined(__386__) |
| | | extern _inline Uint32 SDL_Swap32(Uint32); |
| | | #ifndef __SW_3 /* 486+ */ |
| | | #pragma aux SDL_Swap32 = \ |
| | | "bswap eax" \ |
| | | parm [eax] \ |
| | | modify [eax]; |
| | | #else /* 386-only */ |
| | | #pragma aux SDL_Swap32 = \ |
| | | "xchg al, ah" \ |
| | | "ror eax, 16" \ |
| | | "xchg al, ah" \ |
| | | parm [eax] \ |
| | | modify [eax]; |
| | | #endif |
| | | #else |
| | | SDL_FORCE_INLINE Uint32 |
| | | SDL_Swap32(Uint32 x) |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_endian_h */ |
| | | #endif /* SDL_endian_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Simple error message routines for SDL. |
| | | */ |
| | | |
| | | #ifndef _SDL_error_h |
| | | #define _SDL_error_h |
| | | #ifndef SDL_error_h_ |
| | | #define SDL_error_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_error_h */ |
| | | #endif /* SDL_error_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Include file for SDL event handling. |
| | | */ |
| | | |
| | | #ifndef _SDL_events_h |
| | | #define _SDL_events_h |
| | | #ifndef SDL_events_h_ |
| | | #define SDL_events_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | typedef struct SDL_CommonEvent |
| | | { |
| | | Uint32 type; |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | } SDL_CommonEvent; |
| | | |
| | | /** |
| | |
| | | typedef struct SDL_WindowEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_WINDOWEVENT */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The associated window */ |
| | | Uint8 event; /**< ::SDL_WindowEventID */ |
| | | Uint8 padding1; |
| | |
| | | typedef struct SDL_KeyboardEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_KEYDOWN or ::SDL_KEYUP */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The window with keyboard focus, if any */ |
| | | Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ |
| | | Uint8 repeat; /**< Non-zero if this is a key repeat */ |
| | |
| | | typedef struct SDL_TextEditingEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_TEXTEDITING */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The window with keyboard focus, if any */ |
| | | char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE]; /**< The editing text */ |
| | | Sint32 start; /**< The start cursor of selected editing text */ |
| | |
| | | typedef struct SDL_TextInputEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_TEXTINPUT */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The window with keyboard focus, if any */ |
| | | char text[SDL_TEXTINPUTEVENT_TEXT_SIZE]; /**< The input text */ |
| | | } SDL_TextInputEvent; |
| | |
| | | typedef struct SDL_MouseMotionEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_MOUSEMOTION */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The window with mouse focus, if any */ |
| | | Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ |
| | | Uint32 state; /**< The current button state */ |
| | |
| | | typedef struct SDL_MouseButtonEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_MOUSEBUTTONDOWN or ::SDL_MOUSEBUTTONUP */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The window with mouse focus, if any */ |
| | | Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ |
| | | Uint8 button; /**< The mouse button index */ |
| | |
| | | typedef struct SDL_MouseWheelEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_MOUSEWHEEL */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The window with mouse focus, if any */ |
| | | Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ |
| | | Sint32 x; /**< The amount scrolled horizontally, positive to the right and negative to the left */ |
| | |
| | | typedef struct SDL_JoyAxisEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_JOYAXISMOTION */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_JoystickID which; /**< The joystick instance id */ |
| | | Uint8 axis; /**< The joystick axis index */ |
| | | Uint8 padding1; |
| | |
| | | typedef struct SDL_JoyBallEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_JOYBALLMOTION */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_JoystickID which; /**< The joystick instance id */ |
| | | Uint8 ball; /**< The joystick trackball index */ |
| | | Uint8 padding1; |
| | |
| | | typedef struct SDL_JoyHatEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_JOYHATMOTION */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_JoystickID which; /**< The joystick instance id */ |
| | | Uint8 hat; /**< The joystick hat index */ |
| | | Uint8 value; /**< The hat position value. |
| | |
| | | typedef struct SDL_JoyButtonEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_JOYBUTTONDOWN or ::SDL_JOYBUTTONUP */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_JoystickID which; /**< The joystick instance id */ |
| | | Uint8 button; /**< The joystick button index */ |
| | | Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ |
| | |
| | | typedef struct SDL_JoyDeviceEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_JOYDEVICEADDED or ::SDL_JOYDEVICEREMOVED */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED event */ |
| | | } SDL_JoyDeviceEvent; |
| | | |
| | |
| | | typedef struct SDL_ControllerAxisEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_CONTROLLERAXISMOTION */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_JoystickID which; /**< The joystick instance id */ |
| | | Uint8 axis; /**< The controller axis (SDL_GameControllerAxis) */ |
| | | Uint8 padding1; |
| | |
| | | typedef struct SDL_ControllerButtonEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_CONTROLLERBUTTONDOWN or ::SDL_CONTROLLERBUTTONUP */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_JoystickID which; /**< The joystick instance id */ |
| | | Uint8 button; /**< The controller button (SDL_GameControllerButton) */ |
| | | Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ |
| | |
| | | typedef struct SDL_ControllerDeviceEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, or ::SDL_CONTROLLERDEVICEREMAPPED */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */ |
| | | } SDL_ControllerDeviceEvent; |
| | | |
| | |
| | | typedef struct SDL_AudioDeviceEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_AUDIODEVICEADDED, or ::SDL_AUDIODEVICEREMOVED */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 which; /**< The audio device index for the ADDED event (valid until next SDL_GetNumAudioDevices() call), SDL_AudioDeviceID for the REMOVED event */ |
| | | Uint8 iscapture; /**< zero if an output device, non-zero if a capture device. */ |
| | | Uint8 padding1; |
| | |
| | | typedef struct SDL_TouchFingerEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_FINGERMOTION or ::SDL_FINGERDOWN or ::SDL_FINGERUP */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_TouchID touchId; /**< The touch device id */ |
| | | SDL_FingerID fingerId; |
| | | float x; /**< Normalized in the range 0...1 */ |
| | |
| | | typedef struct SDL_MultiGestureEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_MULTIGESTURE */ |
| | | Uint32 timestamp; |
| | | SDL_TouchID touchId; /**< The touch device index */ |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_TouchID touchId; /**< The touch device id */ |
| | | float dTheta; |
| | | float dDist; |
| | | float x; |
| | |
| | | typedef struct SDL_DollarGestureEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_DOLLARGESTURE or ::SDL_DOLLARRECORD */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_TouchID touchId; /**< The touch device id */ |
| | | SDL_GestureID gestureId; |
| | | Uint32 numFingers; |
| | |
| | | typedef struct SDL_DropEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_DROPBEGIN or ::SDL_DROPFILE or ::SDL_DROPTEXT or ::SDL_DROPCOMPLETE */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | char *file; /**< The file name, which should be freed with SDL_free(), is NULL on begin/complete */ |
| | | Uint32 windowID; /**< The window that was dropped on, if any */ |
| | | } SDL_DropEvent; |
| | |
| | | typedef struct SDL_QuitEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_QUIT */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | } SDL_QuitEvent; |
| | | |
| | | /** |
| | |
| | | typedef struct SDL_OSEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_QUIT */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | } SDL_OSEvent; |
| | | |
| | | /** |
| | |
| | | typedef struct SDL_UserEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_USEREVENT through ::SDL_LASTEVENT-1 */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | Uint32 windowID; /**< The associated window if any */ |
| | | Sint32 code; /**< User defined event code */ |
| | | void *data1; /**< User defined data pointer */ |
| | |
| | | typedef struct SDL_SysWMEvent |
| | | { |
| | | Uint32 type; /**< ::SDL_SYSWMEVENT */ |
| | | Uint32 timestamp; |
| | | Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ |
| | | SDL_SysWMmsg *msg; /**< driver dependent data, defined in SDL_syswm.h */ |
| | | } SDL_SysWMEvent; |
| | | |
| | |
| | | /** |
| | | * This function allows you to set the state of processing certain events. |
| | | * - If \c state is set to ::SDL_IGNORE, that event will be automatically |
| | | * dropped from the event queue and will not event be filtered. |
| | | * dropped from the event queue and will not be filtered. |
| | | * - If \c state is set to ::SDL_ENABLE, that event will be processed |
| | | * normally. |
| | | * - If \c state is set to ::SDL_QUERY, SDL_EventState() will return the |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_events_h */ |
| | | #endif /* SDL_events_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * \brief Include file for filesystem SDL API functions |
| | | */ |
| | | |
| | | #ifndef _SDL_filesystem_h |
| | | #define _SDL_filesystem_h |
| | | #ifndef SDL_filesystem_h_ |
| | | #define SDL_filesystem_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_filesystem_h */ |
| | | #endif /* SDL_filesystem_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Include file for SDL game controller event handling |
| | | */ |
| | | |
| | | #ifndef _SDL_gamecontroller_h |
| | | #define _SDL_gamecontroller_h |
| | | #ifndef SDL_gamecontroller_h_ |
| | | #define SDL_gamecontroller_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS |
| | | */ |
| | | |
| | | /* The gamecontroller structure used to identify an SDL game controller */ |
| | | /** |
| | | * The gamecontroller structure used to identify an SDL game controller |
| | | */ |
| | | struct _SDL_GameController; |
| | | typedef struct _SDL_GameController SDL_GameController; |
| | | |
| | |
| | | * To count the number of game controllers in the system for the following: |
| | | * int nJoysticks = SDL_NumJoysticks(); |
| | | * int nGameControllers = 0; |
| | | * for ( int i = 0; i < nJoysticks; i++ ) { |
| | | * if ( SDL_IsGameController(i) ) { |
| | | * for (int i = 0; i < nJoysticks; i++) { |
| | | * if (SDL_IsGameController(i)) { |
| | | * nGameControllers++; |
| | | * } |
| | | * } |
| | |
| | | * Buttons can be used as a controller axis and vice versa. |
| | | * |
| | | * This string shows an example of a valid mapping for a controller |
| | | * "341a3608000000000000504944564944,Afterglow PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7", |
| | | * "03000000341a00003608000000000000,PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7", |
| | | * |
| | | */ |
| | | |
| | |
| | | * |
| | | * \return number of mappings added, -1 on error |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_GameControllerAddMappingsFromRW( SDL_RWops * rw, int freerw ); |
| | | extern DECLSPEC int SDLCALL SDL_GameControllerAddMappingsFromRW(SDL_RWops * rw, int freerw); |
| | | |
| | | /** |
| | | * Load a set of mappings from a file, filtered by the current SDL_GetPlatform() |
| | |
| | | * |
| | | * \return 1 if mapping is added, 0 if updated, -1 on error |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_GameControllerAddMapping( const char* mappingString ); |
| | | extern DECLSPEC int SDLCALL SDL_GameControllerAddMapping(const char* mappingString); |
| | | |
| | | /** |
| | | * Get the number of mappings installed |
| | | * |
| | | * \return the number of mappings |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_GameControllerNumMappings(void); |
| | | |
| | | /** |
| | | * Get the mapping at a particular index. |
| | | * |
| | | * \return the mapping string. Must be freed with SDL_free(). Returns NULL if the index is out of range. |
| | | */ |
| | | extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForIndex(int mapping_index); |
| | | |
| | | /** |
| | | * Get a mapping string for a GUID |
| | | * |
| | | * \return the mapping string. Must be freed with SDL_free(). Returns NULL if no mapping is available |
| | | */ |
| | | extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID( SDL_JoystickGUID guid ); |
| | | extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID(SDL_JoystickGUID guid); |
| | | |
| | | /** |
| | | * Get a mapping string for an open GameController |
| | | * |
| | | * \return the mapping string. Must be freed with SDL_free(). Returns NULL if no mapping is available |
| | | */ |
| | | extern DECLSPEC char * SDLCALL SDL_GameControllerMapping( SDL_GameController * gamecontroller ); |
| | | extern DECLSPEC char * SDLCALL SDL_GameControllerMapping(SDL_GameController * gamecontroller); |
| | | |
| | | /** |
| | | * Is the joystick on this index supported by the game controller interface? |
| | | */ |
| | | extern DECLSPEC SDL_bool SDLCALL SDL_IsGameController(int joystick_index); |
| | | |
| | | |
| | | /** |
| | | * Get the implementation dependent name of a game controller. |
| | |
| | | * Return the name for this currently opened controller |
| | | */ |
| | | extern DECLSPEC const char *SDLCALL SDL_GameControllerName(SDL_GameController *gamecontroller); |
| | | |
| | | /** |
| | | * Get the USB vendor ID of an opened controller, if available. |
| | | * If the vendor ID isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetVendor(SDL_GameController * gamecontroller); |
| | | |
| | | /** |
| | | * Get the USB product ID of an opened controller, if available. |
| | | * If the product ID isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProduct(SDL_GameController * gamecontroller); |
| | | |
| | | /** |
| | | * Get the product version of an opened controller, if available. |
| | | * If the product version isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProductVersion(SDL_GameController * gamecontroller); |
| | | |
| | | /** |
| | | * Returns SDL_TRUE if the controller has been opened and currently connected, |
| | |
| | | |
| | | /** |
| | | * The list of axes available from a controller |
| | | * |
| | | * Thumbstick axis values range from SDL_JOYSTICK_AXIS_MIN to SDL_JOYSTICK_AXIS_MAX, |
| | | * and are centered within ~8000 of zero, though advanced UI will allow users to set |
| | | * or autodetect the dead zone, which varies between controllers. |
| | | * |
| | | * Trigger axis values range from 0 to SDL_JOYSTICK_AXIS_MAX. |
| | | */ |
| | | typedef enum |
| | | { |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_gamecontroller_h */ |
| | | #endif /* SDL_gamecontroller_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Include file for SDL gesture event handling. |
| | | */ |
| | | |
| | | #ifndef _SDL_gesture_h |
| | | #define _SDL_gesture_h |
| | | #ifndef SDL_gesture_h_ |
| | | #define SDL_gesture_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_gesture_h */ |
| | | #endif /* SDL_gesture_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | /** |
| | | * \file SDL_haptic.h |
| | | * |
| | | * \brief The SDL Haptic subsystem allows you to control haptic (force feedback) |
| | | * \brief The SDL haptic subsystem allows you to control haptic (force feedback) |
| | | * devices. |
| | | * |
| | | * The basic usage is as follows: |
| | | * - Initialize the Subsystem (::SDL_INIT_HAPTIC). |
| | | * - Open a Haptic Device. |
| | | * - Initialize the subsystem (::SDL_INIT_HAPTIC). |
| | | * - Open a haptic device. |
| | | * - SDL_HapticOpen() to open from index. |
| | | * - SDL_HapticOpenFromJoystick() to open from an existing joystick. |
| | | * - Create an effect (::SDL_HapticEffect). |
| | |
| | | * \endcode |
| | | */ |
| | | |
| | | #ifndef _SDL_haptic_h |
| | | #define _SDL_haptic_h |
| | | #ifndef SDL_haptic_h_ |
| | | #define SDL_haptic_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | /** |
| | | * \brief Device can be queried for effect status. |
| | | * |
| | | * Device can be queried for effect status. |
| | | * Device supports querying effect status. |
| | | * |
| | | * \sa SDL_HapticGetEffectStatus |
| | | */ |
| | |
| | | |
| | | /** |
| | | * \brief Device can be paused. |
| | | * |
| | | * Devices supports being paused. |
| | | * |
| | | * \sa SDL_HapticPause |
| | | * \sa SDL_HapticUnpause |
| | |
| | | /** |
| | | * \brief A structure containing a template for a Constant effect. |
| | | * |
| | | * The struct is exclusive to the ::SDL_HAPTIC_CONSTANT effect. |
| | | * This struct is exclusively for the ::SDL_HAPTIC_CONSTANT effect. |
| | | * |
| | | * A constant effect applies a constant force in the specified direction |
| | | * to the joystick. |
| | |
| | | /** |
| | | * \brief A structure containing a template for the ::SDL_HAPTIC_CUSTOM effect. |
| | | * |
| | | * This struct is exclusively for the ::SDL_HAPTIC_CUSTOM effect. |
| | | * |
| | | * A custom force feedback effect is much like a periodic effect, where the |
| | | * application can define its exact shape. You will have to allocate the |
| | | * data yourself. Data should consist of channels * samples Uint16 samples. |
| | |
| | | extern DECLSPEC int SDLCALL SDL_NumHaptics(void); |
| | | |
| | | /** |
| | | * \brief Get the implementation dependent name of a Haptic device. |
| | | * \brief Get the implementation dependent name of a haptic device. |
| | | * |
| | | * This can be called before any joysticks are opened. |
| | | * If no name can be found, this function returns NULL. |
| | |
| | | extern DECLSPEC const char *SDLCALL SDL_HapticName(int device_index); |
| | | |
| | | /** |
| | | * \brief Opens a Haptic device for usage. |
| | | * \brief Opens a haptic device for use. |
| | | * |
| | | * The index passed as an argument refers to the N'th Haptic device on this |
| | | * The index passed as an argument refers to the N'th haptic device on this |
| | | * system. |
| | | * |
| | | * When opening a haptic device, its gain will be set to maximum and |
| | |
| | | * \brief Checks to see if a joystick has haptic features. |
| | | * |
| | | * \param joystick Joystick to test for haptic capabilities. |
| | | * \return 1 if the joystick is haptic, 0 if it isn't |
| | | * or -1 if an error ocurred. |
| | | * \return SDL_TRUE if the joystick is haptic, SDL_FALSE if it isn't |
| | | * or -1 if an error occurred. |
| | | * |
| | | * \sa SDL_HapticOpenFromJoystick |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_JoystickIsHaptic(SDL_Joystick * joystick); |
| | | |
| | | /** |
| | | * \brief Opens a Haptic device for usage from a Joystick device. |
| | | * \brief Opens a haptic device for use from a joystick device. |
| | | * |
| | | * You must still close the haptic device separately. It will not be closed |
| | | * with the joystick. |
| | |
| | | joystick); |
| | | |
| | | /** |
| | | * \brief Closes a Haptic device previously opened with SDL_HapticOpen(). |
| | | * \brief Closes a haptic device previously opened with SDL_HapticOpen(). |
| | | * |
| | | * \param haptic Haptic device to close. |
| | | */ |
| | |
| | | * Example: |
| | | * \code |
| | | * if (SDL_HapticQuery(haptic) & SDL_HAPTIC_CONSTANT) { |
| | | * printf("We have constant haptic effect!"); |
| | | * printf("We have constant haptic effect!\n"); |
| | | * } |
| | | * \endcode |
| | | * |
| | |
| | | * |
| | | * \param haptic Haptic device to create the effect on. |
| | | * \param effect Properties of the effect to create. |
| | | * \return The id of the effect on success or -1 on error. |
| | | * \return The identifier of the effect on success or -1 on error. |
| | | * |
| | | * \sa SDL_HapticUpdateEffect |
| | | * \sa SDL_HapticRunEffect |
| | |
| | | /** |
| | | * \brief Updates the properties of an effect. |
| | | * |
| | | * Can be used dynamically, although behaviour when dynamically changing |
| | | * Can be used dynamically, although behavior when dynamically changing |
| | | * direction may be strange. Specifically the effect may reupload itself |
| | | * and start playing from the start. You cannot change the type either when |
| | | * running SDL_HapticUpdateEffect(). |
| | | * |
| | | * \param haptic Haptic device that has the effect. |
| | | * \param effect Effect to update. |
| | | * \param effect Identifier of the effect to update. |
| | | * \param data New effect properties to use. |
| | | * \return 0 on success or -1 on error. |
| | | * |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_haptic_h */ |
| | | #endif /* SDL_haptic_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * to how they would like the library to work. |
| | | */ |
| | | |
| | | #ifndef _SDL_hints_h |
| | | #define _SDL_hints_h |
| | | #ifndef SDL_hints_h_ |
| | | #define SDL_hints_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | * "opengl" |
| | | * "opengles2" |
| | | * "opengles" |
| | | * "metal" |
| | | * "software" |
| | | * |
| | | * The default varies by platform, but it's the first one in the list that |
| | |
| | | * By default, SDL does not use Direct3D Debug Layer. |
| | | */ |
| | | #define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" |
| | | |
| | | /** |
| | | * \brief A variable controlling the scaling policy for SDL_RenderSetLogicalSize. |
| | | * |
| | | * This variable can be set to the following values: |
| | | * "0" or "letterbox" - Uses letterbox/sidebars to fit the entire rendering on screen |
| | | * "1" or "overscan" - Will zoom the rendering so it fills the entire screen, allowing edges to be drawn offscreen |
| | | * |
| | | * By default letterbox is used |
| | | */ |
| | | #define SDL_HINT_RENDER_LOGICAL_SIZE_MODE "SDL_RENDER_LOGICAL_SIZE_MODE" |
| | | |
| | | /** |
| | | * \brief A variable controlling the scaling quality |
| | |
| | | #define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether the X11 _NET_WM_BYPASS_COMPOSITOR hint should be used. |
| | | * |
| | | * This variable can be set to the following values: |
| | | * "0" - Disable _NET_WM_BYPASS_COMPOSITOR |
| | | * "1" - Enable _NET_WM_BYPASS_COMPOSITOR |
| | | * |
| | | * By default SDL will use _NET_WM_BYPASS_COMPOSITOR |
| | | * |
| | | */ |
| | | #define SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR "SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether the window frame and title bar are interactive when the cursor is hidden |
| | | * |
| | | * This variable can be set to the following values: |
| | |
| | | * By default SDL will allow interaction with the window frame when the cursor is hidden |
| | | */ |
| | | #define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" |
| | | |
| | | /** |
| | | * \brief A variable to specify custom icon resource id from RC file on Windows platform |
| | | */ |
| | | #define SDL_HINT_WINDOWS_INTRESOURCE_ICON "SDL_WINDOWS_INTRESOURCE_ICON" |
| | | #define SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL "SDL_WINDOWS_INTRESOURCE_ICON_SMALL" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether the windows message loop is processed by SDL |
| | |
| | | #define SDL_HINT_GRAB_KEYBOARD "SDL_GRAB_KEYBOARD" |
| | | |
| | | /** |
| | | * \brief A variable setting the speed scale for mouse motion, in floating point, when the mouse is not in relative mode |
| | | */ |
| | | #define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" |
| | | |
| | | /** |
| | | * \brief A variable setting the scale for mouse motion, in floating point, when the mouse is in relative mode |
| | | */ |
| | | #define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether relative mouse mode is implemented using mouse warping |
| | | * |
| | | * This variable can be set to the following values: |
| | |
| | | * By default SDL will ignore mouse clicks that activate a window |
| | | */ |
| | | #define SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH "SDL_MOUSE_FOCUS_CLICKTHROUGH" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether touch events should generate synthetic mouse events |
| | | * |
| | | * This variable can be set to the following values: |
| | | * "0" - Touch events will not generate mouse events |
| | | * "1" - Touch events will generate mouse events |
| | | * |
| | | * By default SDL will generate mouse events for touch events |
| | | */ |
| | | #define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" |
| | | |
| | | /** |
| | | * \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to true. |
| | |
| | | #define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether the Android / iOS built-in |
| | | * accelerometer should be listed as a joystick device, rather than listing |
| | | * actual joysticks only. |
| | | * \brief A variable controlling whether the home indicator bar on iPhone X |
| | | * should be hidden. |
| | | * |
| | | * This variable can be set to the following values: |
| | | * "0" - List only real joysticks and accept input from them |
| | | * "1" - List real joysticks along with the accelerometer as if it were a 3 axis joystick (the default). |
| | | * "0" - The indicator bar is not hidden (default for windowed applications) |
| | | * "1" - The indicator bar is hidden and is shown when the screen is touched (useful for movie playback applications) |
| | | * "2" - The indicator bar is dim and the first swipe makes it visible and the second swipe performs the "home" action (default for fullscreen applications) |
| | | */ |
| | | #define SDL_HINT_IOS_HIDE_HOME_INDICATOR "SDL_IOS_HIDE_HOME_INDICATOR" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether the Android / iOS built-in |
| | | * accelerometer should be listed as a joystick device. |
| | | * |
| | | * This variable can be set to the following values: |
| | | * "0" - The accelerometer is not listed as a joystick |
| | | * "1" - The accelerometer is available as a 3 axis joystick (the default). |
| | | */ |
| | | #define SDL_HINT_ACCELEROMETER_AS_JOYSTICK "SDL_ACCELEROMETER_AS_JOYSTICK" |
| | | |
| | | /** |
| | | * \brief A variable controlling whether the Android / tvOS remotes |
| | | * should be listed as joystick devices, instead of sending keyboard events. |
| | | * |
| | | * This variable can be set to the following values: |
| | | * "0" - Remotes send enter/escape/arrow key events |
| | | * "1" - Remotes are available as 2 axis, 2 button joysticks (the default). |
| | | */ |
| | | #define SDL_HINT_TV_REMOTE_AS_JOYSTICK "SDL_TV_REMOTE_AS_JOYSTICK" |
| | | |
| | | /** |
| | | * \brief A variable that lets you disable the detection and use of Xinput gamepad devices |
| | |
| | | */ |
| | | #define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED" |
| | | |
| | | |
| | | /** |
| | | * \brief A variable that causes SDL to use the old axis and button mapping for XInput devices. |
| | | * |
| | |
| | | */ |
| | | #define SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING "SDL_XINPUT_USE_OLD_JOYSTICK_MAPPING" |
| | | |
| | | |
| | | /** |
| | | * \brief A variable that lets you manually hint extra gamecontroller db entries |
| | | * \brief A variable that lets you manually hint extra gamecontroller db entries. |
| | | * |
| | | * The variable should be newline delimited rows of gamecontroller config data, see SDL_gamecontroller.h |
| | | * |
| | |
| | | */ |
| | | #define SDL_HINT_GAMECONTROLLERCONFIG "SDL_GAMECONTROLLERCONFIG" |
| | | |
| | | /** |
| | | * \brief A variable containing a list of devices to skip when scanning for game controllers. |
| | | * |
| | | * The format of the string is a comma separated list of USB VID/PID pairs |
| | | * in hexadecimal form, e.g. |
| | | * |
| | | * 0xAAAA/0xBBBB,0xCCCC/0xDDDD |
| | | * |
| | | * The variable can also take the form of @file, in which case the named |
| | | * file will be loaded and interpreted as the value of the variable. |
| | | */ |
| | | #define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES "SDL_GAMECONTROLLER_IGNORE_DEVICES" |
| | | |
| | | /** |
| | | * \brief If set, all devices will be skipped when scanning for game controllers except for the ones listed in this variable. |
| | | * |
| | | * The format of the string is a comma separated list of USB VID/PID pairs |
| | | * in hexadecimal form, e.g. |
| | | * |
| | | * 0xAAAA/0xBBBB,0xCCCC/0xDDDD |
| | | * |
| | | * The variable can also take the form of @file, in which case the named |
| | | * file will be loaded and interpreted as the value of the variable. |
| | | */ |
| | | #define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT" |
| | | |
| | | /** |
| | | * \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background. |
| | |
| | | */ |
| | | #define SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS "SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS" |
| | | |
| | | |
| | | /** |
| | | * \brief If set to "0" then never set the top most bit on a SDL Window, even if the video mode expects it. |
| | | * This is a debugging aid for developers and not expected to be used by end users. The default is "1" |
| | |
| | | * "1" - allow topmost |
| | | */ |
| | | #define SDL_HINT_ALLOW_TOPMOST "SDL_ALLOW_TOPMOST" |
| | | |
| | | |
| | | /** |
| | | * \brief A variable that controls the timer resolution, in milliseconds. |
| | |
| | | #define SDL_HINT_TIMER_RESOLUTION "SDL_TIMER_RESOLUTION" |
| | | |
| | | |
| | | /** |
| | | * \brief A variable describing the content orientation on QtWayland-based platforms. |
| | | * |
| | | * On QtWayland platforms, windows are rotated client-side to allow for custom |
| | | * transitions. In order to correctly position overlays (e.g. volume bar) and |
| | | * gestures (e.g. events view, close/minimize gestures), the system needs to |
| | | * know in which orientation the application is currently drawing its contents. |
| | | * |
| | | * This does not cause the window to be rotated or resized, the application |
| | | * needs to take care of drawing the content in the right orientation (the |
| | | * framebuffer is always in portrait mode). |
| | | * |
| | | * This variable can be one of the following values: |
| | | * "primary" (default), "portrait", "landscape", "inverted-portrait", "inverted-landscape" |
| | | */ |
| | | #define SDL_HINT_QTWAYLAND_CONTENT_ORIENTATION "SDL_QTWAYLAND_CONTENT_ORIENTATION" |
| | | |
| | | /** |
| | | * \brief Flags to set on QtWayland windows to integrate with the native window manager. |
| | | * |
| | | * On QtWayland platforms, this hint controls the flags to set on the windows. |
| | | * For example, on Sailfish OS "OverridesSystemGestures" disables swipe gestures. |
| | | * |
| | | * This variable is a space-separated list of the following values (empty = no flags): |
| | | * "OverridesSystemGestures", "StaysOnTop", "BypassWindowManager" |
| | | */ |
| | | #define SDL_HINT_QTWAYLAND_WINDOW_FLAGS "SDL_QTWAYLAND_WINDOW_FLAGS" |
| | | |
| | | /** |
| | | * \brief A string specifying SDL's threads stack size in bytes or "0" for the backend's default size |
| | |
| | | */ |
| | | #define SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH "SDL_ANDROID_SEPARATE_MOUSE_AND_TOUCH" |
| | | |
| | | /** |
| | | * \brief A variable to control whether the return key on the soft keyboard |
| | | * should hide the soft keyboard on Android and iOS. |
| | | * |
| | | * The variable can be set to the following values: |
| | | * "0" - The return key will be handled as a key event. This is the behaviour of SDL <= 2.0.3. (default) |
| | | * "1" - The return key will hide the keyboard. |
| | | * |
| | | * The value of this hint is used at runtime, so it can be changed at any time. |
| | | */ |
| | | #define SDL_HINT_RETURN_KEY_HIDES_IME "SDL_RETURN_KEY_HIDES_IME" |
| | | |
| | | /** |
| | | * \brief override the binding element for keyboard inputs for Emscripten builds |
| | | * |
| | |
| | | * "0" - SDL will generate a window-close event when it sees Alt+F4. |
| | | * "1" - SDL will only do normal key handling for Alt+F4. |
| | | */ |
| | | #define SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 "SDL_WINDOWS_NO_CLOSE_ON_ALT_F4" |
| | | #define SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 "SDL_WINDOWS_NO_CLOSE_ON_ALT_F4" |
| | | |
| | | /** |
| | | * \brief Prevent SDL from using version 4 of the bitmap header when saving BMPs. |
| | |
| | | #define SDL_HINT_BMP_SAVE_LEGACY_FORMAT "SDL_BMP_SAVE_LEGACY_FORMAT" |
| | | |
| | | /** |
| | | * \brief Tell SDL not to name threads on Windows. |
| | | * \brief Tell SDL not to name threads on Windows with the 0x406D1388 Exception. |
| | | * The 0x406D1388 Exception is a trick used to inform Visual Studio of a |
| | | * thread's name, but it tends to cause problems with other debuggers, |
| | | * and the .NET runtime. Note that SDL 2.0.6 and later will still use |
| | | * the (safer) SetThreadDescription API, introduced in the Windows 10 |
| | | * Creators Update, if available. |
| | | * |
| | | * The variable can be set to the following values: |
| | | * "0" - SDL will raise the 0x406D1388 Exception to name threads. |
| | | * This is the default behavior of SDL <= 2.0.4. (default) |
| | | * "1" - SDL will not raise this exception, and threads will be unnamed. |
| | | * For .NET languages this is required when running under a debugger. |
| | | * This is the default behavior of SDL <= 2.0.4. |
| | | * "1" - SDL will not raise this exception, and threads will be unnamed. (default) |
| | | * This is necessary with .NET languages or debuggers that aren't Visual Studio. |
| | | */ |
| | | #define SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING "SDL_WINDOWS_DISABLE_THREAD_NAMING" |
| | | |
| | |
| | | * The default is 10000. |
| | | */ |
| | | #define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" |
| | | |
| | | /** |
| | | * \brief Tell the video driver that we only want a double buffer. |
| | | * |
| | | * By default, most lowlevel 2D APIs will use a triple buffer scheme that |
| | | * wastes no CPU time on waiting for vsync after issuing a flip, but |
| | | * introduces a frame of latency. On the other hand, using a double buffer |
| | | * scheme instead is recommended for cases where low latency is an important |
| | | * factor because we save a whole frame of latency. |
| | | * We do so by waiting for vsync immediately after issuing a flip, usually just |
| | | * after eglSwapBuffers call in the backend's *_SwapWindow function. |
| | | * |
| | | * Since it's driver-specific, it's only supported where possible and |
| | | * implemented. Currently supported the following drivers: |
| | | * - KMSDRM (kmsdrm) |
| | | * - Raspberry Pi (raspberrypi) |
| | | */ |
| | | #define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" |
| | | |
| | | /** |
| | | * \brief A variable controlling what driver to use for OpenGL ES contexts. |
| | | * |
| | | * On some platforms, currently Windows and X11, OpenGL drivers may support |
| | | * creating contexts with an OpenGL ES profile. By default SDL uses these |
| | | * profiles, when available, otherwise it attempts to load an OpenGL ES |
| | | * library, e.g. that provided by the ANGLE project. This variable controls |
| | | * whether SDL follows this default behaviour or will always load an |
| | | * OpenGL ES library. |
| | | * |
| | | * Circumstances where this is useful include |
| | | * - Testing an app with a particular OpenGL ES implementation, e.g ANGLE, |
| | | * or emulator, e.g. those from ARM, Imagination or Qualcomm. |
| | | * - Resolving OpenGL ES function addresses at link time by linking with |
| | | * the OpenGL ES library instead of querying them at run time with |
| | | * SDL_GL_GetProcAddress(). |
| | | * |
| | | * Caution: for an application to work with the default behaviour across |
| | | * different OpenGL drivers it must query the OpenGL ES function |
| | | * addresses at run time using SDL_GL_GetProcAddress(). |
| | | * |
| | | * This variable is ignored on most platforms because OpenGL ES is native |
| | | * or not supported. |
| | | * |
| | | * This variable can be set to the following values: |
| | | * "0" - Use ES profile of OpenGL, if available. (Default when not set.) |
| | | * "1" - Load OpenGL ES library using the default library names. |
| | | * |
| | | */ |
| | | #define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" |
| | | |
| | | /** |
| | | * \brief A variable controlling speed/quality tradeoff of audio resampling. |
| | | * |
| | | * If available, SDL can use libsamplerate ( http://www.mega-nerd.com/SRC/ ) |
| | | * to handle audio resampling. There are different resampling modes available |
| | | * that produce different levels of quality, using more CPU. |
| | | * |
| | | * If this hint isn't specified to a valid setting, or libsamplerate isn't |
| | | * available, SDL will use the default, internal resampling algorithm. |
| | | * |
| | | * Note that this is currently only applicable to resampling audio that is |
| | | * being written to a device for playback or audio being read from a device |
| | | * for capture. SDL_AudioCVT always uses the default resampler (although this |
| | | * might change for SDL 2.1). |
| | | * |
| | | * This hint is currently only checked at audio subsystem initialization. |
| | | * |
| | | * This variable can be set to the following values: |
| | | * |
| | | * "0" or "default" - Use SDL's internal resampling (Default when not set - low quality, fast) |
| | | * "1" or "fast" - Use fast, slightly higher quality resampling, if available |
| | | * "2" or "medium" - Use medium quality resampling, if available |
| | | * "3" or "best" - Use high quality resampling, if available |
| | | */ |
| | | #define SDL_HINT_AUDIO_RESAMPLING_MODE "SDL_AUDIO_RESAMPLING_MODE" |
| | | |
| | | /** |
| | | * \brief A variable controlling the audio category on iOS and Mac OS X |
| | | * |
| | | * This variable can be set to the following values: |
| | | * |
| | | * "ambient" - Use the AVAudioSessionCategoryAmbient audio category, will be muted by the phone mute switch (default) |
| | | * "playback" - Use the AVAudioSessionCategoryPlayback category |
| | | * |
| | | * For more information, see Apple's documentation: |
| | | * https://developer.apple.com/library/content/documentation/Audio/Conceptual/AudioSessionProgrammingGuide/AudioSessionCategoriesandModes/AudioSessionCategoriesandModes.html |
| | | */ |
| | | #define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" |
| | | |
| | | /** |
| | | * \brief An enumeration of hint priorities |
| | |
| | | extern DECLSPEC SDL_bool SDLCALL SDL_GetHintBoolean(const char *name, SDL_bool default_value); |
| | | |
| | | /** |
| | | * \brief type definition of the hint callback function. |
| | | */ |
| | | typedef void (SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); |
| | | |
| | | /** |
| | | * \brief Add a function to watch a particular hint |
| | | * |
| | | * \param name The hint to watch |
| | | * \param callback The function to call when the hint value changes |
| | | * \param userdata A pointer to pass to the callback function |
| | | */ |
| | | typedef void (*SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); |
| | | extern DECLSPEC void SDLCALL SDL_AddHintCallback(const char *name, |
| | | SDL_HintCallback callback, |
| | | void *userdata); |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_hints_h */ |
| | | #endif /* SDL_hints_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * |
| | | */ |
| | | |
| | | #ifndef _SDL_joystick_h |
| | | #define _SDL_joystick_h |
| | | #ifndef SDL_joystick_h_ |
| | | #define SDL_joystick_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS |
| | | */ |
| | | |
| | | /* The joystick structure used to identify an SDL joystick */ |
| | | /** |
| | | * The joystick structure used to identify an SDL joystick |
| | | */ |
| | | struct _SDL_Joystick; |
| | | typedef struct _SDL_Joystick SDL_Joystick; |
| | | |
| | |
| | | Uint8 data[16]; |
| | | } SDL_JoystickGUID; |
| | | |
| | | /** |
| | | * This is a unique ID for a joystick for the time it is connected to the system, |
| | | * and is never reused for the lifetime of the application. If the joystick is |
| | | * disconnected and reconnected, it will get a new ID. |
| | | * |
| | | * The ID value starts at 0 and increments from there. The value -1 is an invalid ID. |
| | | */ |
| | | typedef Sint32 SDL_JoystickID; |
| | | |
| | | typedef enum |
| | | { |
| | | SDL_JOYSTICK_TYPE_UNKNOWN, |
| | | SDL_JOYSTICK_TYPE_GAMECONTROLLER, |
| | | SDL_JOYSTICK_TYPE_WHEEL, |
| | | SDL_JOYSTICK_TYPE_ARCADE_STICK, |
| | | SDL_JOYSTICK_TYPE_FLIGHT_STICK, |
| | | SDL_JOYSTICK_TYPE_DANCE_PAD, |
| | | SDL_JOYSTICK_TYPE_GUITAR, |
| | | SDL_JOYSTICK_TYPE_DRUM_KIT, |
| | | SDL_JOYSTICK_TYPE_ARCADE_PAD, |
| | | SDL_JOYSTICK_TYPE_THROTTLE |
| | | } SDL_JoystickType; |
| | | |
| | | typedef enum |
| | | { |
| | |
| | | } SDL_JoystickPowerLevel; |
| | | |
| | | /* Function prototypes */ |
| | | |
| | | /** |
| | | * Locking for multi-threaded access to the joystick API |
| | | * |
| | | * If you are using the joystick API or handling events from multiple threads |
| | | * you should use these locking functions to protect access to the joysticks. |
| | | * |
| | | * In particular, you are guaranteed that the joystick list won't change, so |
| | | * the API functions that take a joystick index will be valid, and joystick |
| | | * and game controller events will not be delivered. |
| | | */ |
| | | extern DECLSPEC void SDLCALL SDL_LockJoysticks(void); |
| | | extern DECLSPEC void SDLCALL SDL_UnlockJoysticks(void); |
| | | |
| | | /** |
| | | * Count the number of joysticks attached to the system right now |
| | | */ |
| | |
| | | * If no name can be found, this function returns NULL. |
| | | */ |
| | | extern DECLSPEC const char *SDLCALL SDL_JoystickNameForIndex(int device_index); |
| | | |
| | | /** |
| | | * Return the GUID for the joystick at this index |
| | | * This can be called before any joysticks are opened. |
| | | */ |
| | | extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetDeviceGUID(int device_index); |
| | | |
| | | /** |
| | | * Get the USB vendor ID of a joystick, if available. |
| | | * This can be called before any joysticks are opened. |
| | | * If the vendor ID isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceVendor(int device_index); |
| | | |
| | | /** |
| | | * Get the USB product ID of a joystick, if available. |
| | | * This can be called before any joysticks are opened. |
| | | * If the product ID isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProduct(int device_index); |
| | | |
| | | /** |
| | | * Get the product version of a joystick, if available. |
| | | * This can be called before any joysticks are opened. |
| | | * If the product version isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProductVersion(int device_index); |
| | | |
| | | /** |
| | | * Get the type of a joystick, if available. |
| | | * This can be called before any joysticks are opened. |
| | | */ |
| | | extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetDeviceType(int device_index); |
| | | |
| | | /** |
| | | * Get the instance ID of a joystick. |
| | | * This can be called before any joysticks are opened. |
| | | * If the index is out of range, this function will return -1. |
| | | */ |
| | | extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickGetDeviceInstanceID(int device_index); |
| | | |
| | | /** |
| | | * Open a joystick for use. |
| | |
| | | extern DECLSPEC const char *SDLCALL SDL_JoystickName(SDL_Joystick * joystick); |
| | | |
| | | /** |
| | | * Return the GUID for the joystick at this index |
| | | */ |
| | | extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetDeviceGUID(int device_index); |
| | | |
| | | /** |
| | | * Return the GUID for this opened joystick |
| | | */ |
| | | extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick * joystick); |
| | | |
| | | /** |
| | | * Get the USB vendor ID of an opened joystick, if available. |
| | | * If the vendor ID isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetVendor(SDL_Joystick * joystick); |
| | | |
| | | /** |
| | | * Get the USB product ID of an opened joystick, if available. |
| | | * If the product ID isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProduct(SDL_Joystick * joystick); |
| | | |
| | | /** |
| | | * Get the product version of an opened joystick, if available. |
| | | * If the product version isn't available this function returns 0. |
| | | */ |
| | | extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProductVersion(SDL_Joystick * joystick); |
| | | |
| | | /** |
| | | * Get the type of an opened joystick. |
| | | */ |
| | | extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetType(SDL_Joystick * joystick); |
| | | |
| | | /** |
| | | * Return a string representation for this guid. pszGUID must point to at least 33 bytes |
| | |
| | | extern DECLSPEC void SDLCALL SDL_JoystickGetGUIDString(SDL_JoystickGUID guid, char *pszGUID, int cbGUID); |
| | | |
| | | /** |
| | | * convert a string into a joystick formatted guid |
| | | * Convert a string into a joystick guid |
| | | */ |
| | | extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUIDFromString(const char *pchGUID); |
| | | |
| | |
| | | */ |
| | | extern DECLSPEC int SDLCALL SDL_JoystickEventState(int state); |
| | | |
| | | #define SDL_JOYSTICK_AXIS_MAX 32767 |
| | | #define SDL_JOYSTICK_AXIS_MIN -32768 |
| | | /** |
| | | * Get the current state of an axis control on a joystick. |
| | | * |
| | |
| | | */ |
| | | extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick * joystick, |
| | | int axis); |
| | | |
| | | /** |
| | | * Get the initial state of an axis control on a joystick. |
| | | * |
| | | * The state is a value ranging from -32768 to 32767. |
| | | * |
| | | * The axis indices start at index 0. |
| | | * |
| | | * \return SDL_TRUE if this axis has any initial value, or SDL_FALSE if not. |
| | | */ |
| | | extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAxisInitialState(SDL_Joystick * joystick, |
| | | int axis, Sint16 *state); |
| | | |
| | | /** |
| | | * \name Hat positions |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_joystick_h */ |
| | | #endif /* SDL_joystick_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Include file for SDL keyboard event handling |
| | | */ |
| | | |
| | | #ifndef _SDL_keyboard_h |
| | | #define _SDL_keyboard_h |
| | | #ifndef SDL_keyboard_h_ |
| | | #define SDL_keyboard_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_keyboard_h */ |
| | | #endif /* SDL_keyboard_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Defines constants which identify keyboard keys and modifiers. |
| | | */ |
| | | |
| | | #ifndef _SDL_keycode_h |
| | | #define _SDL_keycode_h |
| | | #ifndef SDL_keycode_h_ |
| | | #define SDL_keycode_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_scancode.h" |
| | |
| | | * layout of the keyboard. These values include Unicode values representing |
| | | * the unmodified character that would be generated by pressing the key, or |
| | | * an SDLK_* constant for those keys that do not generate characters. |
| | | * |
| | | * A special exception is the number keys at the top of the keyboard which |
| | | * always map to SDLK_0...SDLK_9, regardless of layout. |
| | | */ |
| | | typedef Sint32 SDL_Keycode; |
| | | |
| | |
| | | SDLK_KBDILLUMDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMDOWN), |
| | | SDLK_KBDILLUMUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMUP), |
| | | SDLK_EJECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EJECT), |
| | | SDLK_SLEEP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP) |
| | | SDLK_SLEEP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP), |
| | | SDLK_APP1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP1), |
| | | SDLK_APP2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP2), |
| | | |
| | | SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND), |
| | | SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD) |
| | | }; |
| | | |
| | | /** |
| | |
| | | #define KMOD_ALT (KMOD_LALT|KMOD_RALT) |
| | | #define KMOD_GUI (KMOD_LGUI|KMOD_RGUI) |
| | | |
| | | #endif /* _SDL_keycode_h */ |
| | | #endif /* SDL_keycode_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * the results you expect. :) |
| | | */ |
| | | |
| | | #ifndef _SDL_loadso_h |
| | | #define _SDL_loadso_h |
| | | #ifndef SDL_loadso_h_ |
| | | #define SDL_loadso_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | #include "SDL_error.h" |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_loadso_h */ |
| | | #endif /* SDL_loadso_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | * Others: standard error output (stderr) |
| | | */ |
| | | |
| | | #ifndef _SDL_log_h |
| | | #define _SDL_log_h |
| | | #ifndef SDL_log_h_ |
| | | #define SDL_log_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | /** |
| | | * \brief The prototype for the log output function |
| | | */ |
| | | typedef void (*SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message); |
| | | typedef void (SDLCALL *SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message); |
| | | |
| | | /** |
| | | * \brief Get the current log output function. |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_log_h */ |
| | | #endif /* SDL_log_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| | |
| | | /* |
| | | Simple DirectMedia Layer |
| | | Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org> |
| | | Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> |
| | | |
| | | This software is provided 'as-is', without any express or implied |
| | | warranty. In no event will the authors be held liable for any damages |
| | |
| | | 3. This notice may not be removed or altered from any source distribution. |
| | | */ |
| | | |
| | | #ifndef _SDL_main_h |
| | | #define _SDL_main_h |
| | | #ifndef SDL_main_h_ |
| | | #define SDL_main_h_ |
| | | |
| | | #include "SDL_stdinc.h" |
| | | |
| | |
| | | /* On Android SDL provides a Java class in SDLActivity.java that is the |
| | | main activity entry point. |
| | | |
| | | See README-android.md for more details on extending that class. |
| | | See docs/README-android.md for more details on extending that class. |
| | | */ |
| | | #define SDL_MAIN_NEEDED |
| | | |
| | | /* We need to export SDL_main so it can be launched from Java */ |
| | | #define SDLMAIN_DECLSPEC DECLSPEC |
| | | |
| | | #elif defined(__NACL__) |
| | | /* On NACL we use ppapi_simple to set up the application helper code, |
| | |
| | | #else |
| | | #define C_LINKAGE |
| | | #endif /* __cplusplus */ |
| | | |
| | | #ifndef SDLMAIN_DECLSPEC |
| | | #define SDLMAIN_DECLSPEC |
| | | #endif |
| | | |
| | | /** |
| | | * \file SDL_main.h |
| | |
| | | /** |
| | | * The prototype for the application's main() function |
| | | */ |
| | | extern C_LINKAGE int SDL_main(int argc, char *argv[]); |
| | | extern C_LINKAGE SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]); |
| | | |
| | | |
| | | #include "begin_code.h" |
| | |
| | | #endif |
| | | #include "close_code.h" |
| | | |
| | | #endif /* _SDL_main_h */ |
| | | #endif /* SDL_main_h_ */ |
| | | |
| | | /* vi: set ts=4 sw=4 expandtab: */ |
| source/include/SDL_messagebox.h
source/include/SDL_mouse.h
source/include/SDL_mutex.h
source/include/SDL_name.h
source/include/SDL_opengl.h
source/include/SDL_opengles.h
source/include/SDL_opengles2.h
source/include/SDL_pixels.h
source/include/SDL_platform.h
source/include/SDL_power.h
source/include/SDL_quit.h
source/include/SDL_rect.h
source/include/SDL_render.h
source/include/SDL_rwops.h
source/include/SDL_scancode.h
source/include/SDL_shape.h
source/include/SDL_stdinc.h
source/include/SDL_surface.h
source/include/SDL_system.h
source/include/SDL_syswm.h
source/include/SDL_test.h
source/include/SDL_test_assert.h
source/include/SDL_test_common.h
source/include/SDL_test_compare.h
source/include/SDL_test_crc32.h
source/include/SDL_test_font.h
source/include/SDL_test_fuzzer.h
source/include/SDL_test_harness.h
source/include/SDL_test_images.h
source/include/SDL_test_log.h
source/include/SDL_test_md5.h
source/include/SDL_test_memory.h
source/include/SDL_test_random.h
source/include/SDL_thread.h
source/include/SDL_timer.h
source/include/SDL_touch.h
source/include/SDL_types.h
source/include/SDL_version.h
source/include/SDL_video.h
source/include/SDL_vulkan.h
source/include/begin_code.h
source/include/close_code.h
source/premake/Cygwin/build-scripts/clean_premake.bat (deleted)
source/premake/Cygwin/build-scripts/cygwin.bat (deleted)
source/premake/Cygwin/build-scripts/make.debug.bat (deleted)
source/premake/Cygwin/build-scripts/make.release.bat (deleted)
source/premake/Cygwin/build-scripts/premake4.exe (deleted)
source/premake/Cygwin/build-scripts/run.tests.debug.bat (deleted)
source/premake/Cygwin/build-scripts/run.tests.release.bat (deleted)
source/premake/Linux/SDL_config_premake.h (deleted)
source/premake/Linux/build-scripts/clean_premake.sh (deleted)
source/premake/Linux/build-scripts/gmake.sh (deleted)
source/premake/Linux/build-scripts/premake4 (deleted)
source/premake/Linux/build-scripts/run.tests.sh (deleted)
source/premake/MinGW/SDL_config_premake.h (deleted)
source/premake/MinGW/build-scripts/clean_premake.bat (deleted)
source/premake/MinGW/build-scripts/mingw.bat (deleted)
source/premake/MinGW/build-scripts/premake4.exe (deleted)
source/premake/MinGW/build-scripts/run.tests.bat (deleted)
source/premake/README-cygwin.txt (deleted)
source/premake/README-ios.txt (deleted)
source/premake/README-linux.txt (deleted)
source/premake/README-macosx.txt (deleted)
source/premake/README-mingw.txt (deleted)
source/premake/README-windows.txt (deleted)
source/premake/README.txt (deleted)
source/premake/VisualC/VS2008/SDL.sln (deleted)
source/premake/VisualC/VS2008/SDL2/SDL2.vcproj (deleted)
source/premake/VisualC/VS2008/SDL2main/SDL2main.vcproj (deleted)
source/premake/VisualC/VS2008/SDL2test/SDL2test.vcproj (deleted)
source/premake/VisualC/VS2008/SDL_config_premake.h (deleted)
source/premake/VisualC/VS2008/tests/checkkeys/checkkeys.vcproj (deleted)
source/premake/VisualC/VS2008/tests/loopwave/loopwave.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testatomic/testatomic.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testaudioinfo/testaudioinfo.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testautomation/testautomation.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testchessboard/testchessboard.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testdraw2/testdraw2.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testerror/testerror.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testfile/testfile.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testfilesystem/testfilesystem.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testgamecontroller/testgamecontroller.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testgesture/testgesture.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testgl2/testgl2.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testgles/testgles.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testhaptic/testhaptic.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testiconv/testiconv.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testime/testime.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testjoystick/testjoystick.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testkeys/testkeys.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testloadso/testloadso.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testlock/testlock.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testmessage/testmessage.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testmultiaudio/testmultiaudio.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testnative/testnative.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testoverlay2/testoverlay2.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testplatform/testplatform.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testpower/testpower.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testrelative/testrelative.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testrendercopyex/testrendercopyex.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testrendertarget/testrendertarget.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testresample/testresample.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testrumble/testrumble.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testscale/testscale.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testsem/testsem.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testshader/testshader.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testshape/testshape.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testsprite2/testsprite2.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testspriteminimal/testspriteminimal.vcproj (deleted)
source/premake/VisualC/VS2008/tests/teststreaming/teststreaming.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testthread/testthread.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testtimer/testtimer.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testver/testver.vcproj (deleted)
source/premake/VisualC/VS2008/tests/testwm2/testwm2.vcproj (deleted)
source/premake/VisualC/VS2008/tests/torturethread/torturethread.vcproj (deleted)
source/premake/VisualC/VS2010/SDL.sln (deleted)
source/premake/VisualC/VS2010/SDL2/SDL2.vcxproj (deleted)
source/premake/VisualC/VS2010/SDL2/SDL2.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/SDL2main/SDL2main.vcxproj (deleted)
source/premake/VisualC/VS2010/SDL2main/SDL2main.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/SDL2test/SDL2test.vcxproj (deleted)
source/premake/VisualC/VS2010/SDL2test/SDL2test.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/SDL_config_premake.h (deleted)
source/premake/VisualC/VS2010/tests/checkkeys/checkkeys.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/checkkeys/checkkeys.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/loopwave/loopwave.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/loopwave/loopwave.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testatomic/testatomic.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testatomic/testatomic.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testaudioinfo/testaudioinfo.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testaudioinfo/testaudioinfo.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testautomation/testautomation.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testautomation/testautomation.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testchessboard/testchessboard.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testchessboard/testchessboard.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testdraw2/testdraw2.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testdraw2/testdraw2.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testerror/testerror.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testerror/testerror.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testfile/testfile.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testfile/testfile.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testfilesystem/testfilesystem.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testfilesystem/testfilesystem.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testgamecontroller/testgamecontroller.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testgamecontroller/testgamecontroller.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testgesture/testgesture.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testgesture/testgesture.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testgl2/testgl2.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testgl2/testgl2.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testgles/testgles.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testgles/testgles.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testhaptic/testhaptic.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testhaptic/testhaptic.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testiconv/testiconv.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testiconv/testiconv.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testime/testime.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testime/testime.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testjoystick/testjoystick.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testjoystick/testjoystick.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testkeys/testkeys.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testkeys/testkeys.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testloadso/testloadso.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testloadso/testloadso.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testlock/testlock.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testlock/testlock.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testmessage/testmessage.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testmessage/testmessage.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testmultiaudio/testmultiaudio.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testmultiaudio/testmultiaudio.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testnative/testnative.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testnative/testnative.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testoverlay2/testoverlay2.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testoverlay2/testoverlay2.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testplatform/testplatform.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testplatform/testplatform.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testpower/testpower.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testpower/testpower.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testrelative/testrelative.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testrelative/testrelative.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testrendercopyex/testrendercopyex.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testrendercopyex/testrendercopyex.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testrendertarget/testrendertarget.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testrendertarget/testrendertarget.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testresample/testresample.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testresample/testresample.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testrumble/testrumble.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testrumble/testrumble.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testscale/testscale.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testscale/testscale.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testsem/testsem.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testsem/testsem.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testshader/testshader.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testshader/testshader.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testshape/testshape.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testshape/testshape.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testsprite2/testsprite2.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testsprite2/testsprite2.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testspriteminimal/testspriteminimal.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testspriteminimal/testspriteminimal.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/teststreaming/teststreaming.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/teststreaming/teststreaming.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testthread/testthread.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testthread/testthread.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testtimer/testtimer.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testtimer/testtimer.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testver/testver.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testver/testver.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/testwm2/testwm2.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/testwm2/testwm2.vcxproj.filters (deleted)
source/premake/VisualC/VS2010/tests/torturethread/torturethread.vcxproj (deleted)
source/premake/VisualC/VS2010/tests/torturethread/torturethread.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/SDL.sln (deleted)
source/premake/VisualC/VS2012/SDL2/SDL2.vcxproj (deleted)
source/premake/VisualC/VS2012/SDL2/SDL2.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/SDL2main/SDL2main.vcxproj (deleted)
source/premake/VisualC/VS2012/SDL2main/SDL2main.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/SDL2test/SDL2test.vcxproj (deleted)
source/premake/VisualC/VS2012/SDL2test/SDL2test.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/SDL_config_premake.h (deleted)
source/premake/VisualC/VS2012/tests/checkkeys/checkkeys.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/checkkeys/checkkeys.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/loopwave/loopwave.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/loopwave/loopwave.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testatomic/testatomic.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testatomic/testatomic.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testaudioinfo/testaudioinfo.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testaudioinfo/testaudioinfo.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testautomation/testautomation.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testautomation/testautomation.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testchessboard/testchessboard.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testchessboard/testchessboard.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testdraw2/testdraw2.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testdraw2/testdraw2.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testerror/testerror.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testerror/testerror.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testfile/testfile.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testfile/testfile.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testfilesystem/testfilesystem.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testfilesystem/testfilesystem.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testgamecontroller/testgamecontroller.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testgamecontroller/testgamecontroller.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testgesture/testgesture.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testgesture/testgesture.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testgl2/testgl2.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testgl2/testgl2.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testgles/testgles.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testgles/testgles.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testhaptic/testhaptic.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testhaptic/testhaptic.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testiconv/testiconv.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testiconv/testiconv.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testime/testime.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testime/testime.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testjoystick/testjoystick.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testjoystick/testjoystick.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testkeys/testkeys.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testkeys/testkeys.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testloadso/testloadso.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testloadso/testloadso.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testlock/testlock.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testlock/testlock.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testmessage/testmessage.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testmessage/testmessage.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testmultiaudio/testmultiaudio.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testmultiaudio/testmultiaudio.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testnative/testnative.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testnative/testnative.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testoverlay2/testoverlay2.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testoverlay2/testoverlay2.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testplatform/testplatform.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testplatform/testplatform.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testpower/testpower.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testpower/testpower.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testrelative/testrelative.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testrelative/testrelative.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testrendercopyex/testrendercopyex.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testrendercopyex/testrendercopyex.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testrendertarget/testrendertarget.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testrendertarget/testrendertarget.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testresample/testresample.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testresample/testresample.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testrumble/testrumble.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testrumble/testrumble.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testscale/testscale.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testscale/testscale.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testsem/testsem.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testsem/testsem.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testshader/testshader.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testshader/testshader.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testshape/testshape.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testshape/testshape.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testsprite2/testsprite2.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testsprite2/testsprite2.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testspriteminimal/testspriteminimal.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testspriteminimal/testspriteminimal.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/teststreaming/teststreaming.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/teststreaming/teststreaming.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testthread/testthread.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testthread/testthread.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testtimer/testtimer.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testtimer/testtimer.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testver/testver.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testver/testver.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/testwm2/testwm2.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/testwm2/testwm2.vcxproj.filters (deleted)
source/premake/VisualC/VS2012/tests/torturethread/torturethread.vcxproj (deleted)
source/premake/VisualC/VS2012/tests/torturethread/torturethread.vcxproj.filters (deleted)
source/premake/VisualC/build-scripts/build.all.vs2010.bat (deleted)
source/premake/VisualC/build-scripts/check.bin.compatibility.vs2010.bat (deleted)
source/premake/VisualC/build-scripts/clean_premake.bat (deleted)
source/premake/VisualC/build-scripts/generate.all.bat (deleted)
source/premake/VisualC/build-scripts/premake4.exe (deleted)
source/premake/VisualC/build-scripts/run.tests.vs2010.bat (deleted)
source/premake/VisualC/build-scripts/vs2008.bat (deleted)
source/premake/VisualC/build-scripts/vs2010.bat (deleted)
source/premake/VisualC/build-scripts/vs2012.bat (deleted)
source/premake/Xcode-iOS/Demos/accelerometer/accelerometer.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/Demos/fireworks/fireworks.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/Demos/happy/happy.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/Demos/keyboard/keyboard.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/Demos/mixer/mixer.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/Demos/rectangles/rectangles.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/Demos/touch/touch.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/SDL.xcworkspace/contents.xcworkspacedata (deleted)
source/premake/Xcode-iOS/SDL2/SDL2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/SDL2main/SDL2main.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/SDL2test/SDL2test.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode-iOS/SDL_config_premake.h (deleted)
source/premake/Xcode-iOS/build-scripts/clean_premake.command (deleted)
source/premake/Xcode-iOS/build-scripts/premake4 (deleted)
source/premake/Xcode-iOS/build-scripts/xcode3.command (deleted)
source/premake/Xcode-iOS/build-scripts/xcode4.command (deleted)
source/premake/Xcode/Xcode3/SDL2/SDL2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/SDL2main/SDL2main.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/SDL2test/SDL2test.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/SDL_config_premake.h (deleted)
source/premake/Xcode/Xcode3/tests/checkkeys/checkkeys.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/loopwave/loopwave.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testatomic/testatomic.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testaudioinfo/testaudioinfo.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testautomation/testautomation.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testchessboard/testchessboard.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testdraw2/testdraw2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testerror/testerror.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testfile/testfile.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testfilesystem/testfilesystem.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testgamecontroller/testgamecontroller.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testgesture/testgesture.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testgl2/testgl2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testgles/testgles.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testhaptic/testhaptic.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testiconv/testiconv.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testime/testime.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testjoystick/testjoystick.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testkeys/testkeys.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testloadso/testloadso.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testlock/testlock.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testmessage/testmessage.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testmultiaudio/testmultiaudio.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testnative/testnative.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testoverlay2/testoverlay2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testplatform/testplatform.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testpower/testpower.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testrelative/testrelative.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testrendercopyex/testrendercopyex.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testrendertarget/testrendertarget.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testresample/testresample.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testrumble/testrumble.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testscale/testscale.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testsem/testsem.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testshader/testshader.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testshape/testshape.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testsprite2/testsprite2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testspriteminimal/testspriteminimal.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/teststreaming/teststreaming.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testthread/testthread.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testtimer/testtimer.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testver/testver.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/testwm2/testwm2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode3/tests/torturethread/torturethread.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/SDL.xcworkspace/contents.xcworkspacedata (deleted)
source/premake/Xcode/Xcode4/SDL2/SDL2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/SDL2main/SDL2main.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/SDL2test/SDL2test.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/SDL_config_premake.h (deleted)
source/premake/Xcode/Xcode4/tests/checkkeys/checkkeys.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/loopwave/loopwave.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testatomic/testatomic.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testaudioinfo/testaudioinfo.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testautomation/testautomation.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testchessboard/testchessboard.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testdraw2/testdraw2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testerror/testerror.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testfile/testfile.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testfilesystem/testfilesystem.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testgamecontroller/testgamecontroller.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testgesture/testgesture.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testgl2/testgl2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testgles/testgles.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testhaptic/testhaptic.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testiconv/testiconv.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testime/testime.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testjoystick/testjoystick.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testkeys/testkeys.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testloadso/testloadso.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testlock/testlock.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testmessage/testmessage.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testmultiaudio/testmultiaudio.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testnative/testnative.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testoverlay2/testoverlay2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testplatform/testplatform.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testpower/testpower.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testrelative/testrelative.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testrendercopyex/testrendercopyex.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testrendertarget/testrendertarget.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testresample/testresample.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testrumble/testrumble.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testscale/testscale.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testsem/testsem.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testshader/testshader.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testshape/testshape.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testsprite2/testsprite2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testspriteminimal/testspriteminimal.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/teststreaming/teststreaming.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testthread/testthread.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testtimer/testtimer.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testver/testver.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/testwm2/testwm2.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/Xcode4/tests/torturethread/torturethread.xcodeproj/project.pbxproj (deleted)
source/premake/Xcode/build-scripts/build.all.xcode3.i386.command (deleted)
source/premake/Xcode/build-scripts/build.all.xcode3.x86_64.command (deleted)
source/premake/Xcode/build-scripts/build.all.xcode4.i386.command (deleted)
source/premake/Xcode/build-scripts/build.all.xcode4.x86_64.command (deleted)
source/premake/Xcode/build-scripts/clean_premake.command (deleted)
source/premake/Xcode/build-scripts/premake4 (deleted)
source/premake/Xcode/build-scripts/run.tests.command (deleted)
source/premake/Xcode/build-scripts/xcode3.command (deleted)
source/premake/Xcode/build-scripts/xcode4.command (deleted)
source/premake/changelog (deleted)
source/premake/config/SDL_config_cygwin.template.h (deleted)
source/premake/config/SDL_config_iphoneos.template.h (deleted)
source/premake/config/SDL_config_linux.template.h (deleted)
source/premake/config/SDL_config_macosx.template.h (deleted)
source/premake/config/SDL_config_minimal.template.h (deleted)
source/premake/config/SDL_config_windows.template.h (deleted)
source/premake/patches/709.patch (deleted)
source/premake/patches/711.patch (deleted)
source/premake/patches/712.patch (deleted)
source/premake/patches/713.patch (deleted)
source/premake/patches/iOS.patch (deleted)
source/premake/patches/premake.patches.txt (deleted)
source/premake/premake4.lua (deleted)
source/premake/projects/SDL2.lua (deleted)
source/premake/projects/SDL2main.lua (deleted)
source/premake/projects/SDL2test.lua (deleted)
source/premake/projects/accelerometer.lua (deleted)
source/premake/projects/checkkeys.lua (deleted)
source/premake/projects/fireworks.lua (deleted)
source/premake/projects/happy.lua (deleted)
source/premake/projects/keyboard.lua (deleted)
source/premake/projects/loopwave.lua (deleted)
source/premake/projects/mixer.lua (deleted)
source/premake/projects/rectangles.lua (deleted)
source/premake/projects/testatomic.lua (deleted)
source/premake/projects/testaudioinfo.lua (deleted)
source/premake/projects/testautomation.lua (deleted)
source/premake/projects/testdraw2.lua (deleted)
source/premake/projects/testdrawchessboard.lua (deleted)
source/premake/projects/testerror.lua (deleted)
source/premake/projects/testfile.lua (deleted)
source/premake/projects/testfilesystem.lua (deleted)
source/premake/projects/testgamecontroller.lua (deleted)
source/premake/projects/testgesture.lua (deleted)
source/premake/projects/testgl2.lua (deleted)
source/premake/projects/testgles.lua (deleted)
source/premake/projects/testhaptic.lua (deleted)
source/premake/projects/testiconv.lua (deleted)
source/premake/projects/testime.lua (deleted)
source/premake/projects/testintersection.lua (deleted)
source/premake/projects/testjoystick.lua (deleted)
source/premake/projects/testkeys.lua (deleted)
source/premake/projects/testloadso.lua (deleted)
source/premake/projects/testlock.lua (deleted)
source/premake/projects/testmessage.lua (deleted)
source/premake/projects/testmultiaudio.lua (deleted)
source/premake/projects/testnative.lua (deleted)
source/premake/projects/testoverlay2.lua (deleted)
source/premake/projects/testplatform.lua (deleted)
source/premake/projects/testpower.lua (deleted)
source/premake/projects/testrelative.lua (deleted)
source/premake/projects/testrendercopyex.lua (deleted)
source/premake/projects/testrendertarget.lua (deleted)
source/premake/projects/testresample.lua (deleted)
source/premake/projects/testrumble.lua (deleted)
source/premake/projects/testscale.lua (deleted)
source/premake/projects/testsem.lua (deleted)
source/premake/projects/testshader.lua (deleted)
source/premake/projects/testshape.lua (deleted)
source/premake/projects/testsprite2.lua (deleted)
source/premake/projects/testspriteminimal.lua (deleted)
source/premake/projects/teststreaming.lua (deleted)
source/premake/projects/testthread.lua (deleted)
source/premake/projects/testtimer.lua (deleted)
source/premake/projects/testver.lua (deleted)
source/premake/projects/testwm2.lua (deleted)
source/premake/projects/torturethread.lua (deleted)
source/premake/projects/touch.lua (deleted)
source/premake/util/sdl_check_compile.lua (deleted)
source/premake/util/sdl_dependency_checkers.lua (deleted)
source/premake/util/sdl_depends.lua (deleted)
source/premake/util/sdl_file.lua (deleted)
source/premake/util/sdl_gen_config.lua (deleted)
source/premake/util/sdl_projects.lua (deleted)
source/premake/util/sdl_string.lua (deleted)
source/src/SDL.c
source/src/SDL_assert.c
source/src/SDL_assert_c.h
source/src/SDL_dataqueue.c
source/src/SDL_dataqueue.h
source/src/SDL_error.c
source/src/SDL_error_c.h
source/src/SDL_hints.c
source/src/SDL_internal.h
source/src/SDL_log.c
source/src/atomic/SDL_atomic.c
source/src/atomic/SDL_spinlock.c
source/src/audio/SDL_audio.c
source/src/audio/SDL_audio_c.h
source/src/audio/SDL_audiocvt.c
source/src/audio/SDL_audiodev.c
source/src/audio/SDL_audiodev_c.h
source/src/audio/SDL_audiotypecvt.c
source/src/audio/SDL_mixer.c
source/src/audio/SDL_sysaudio.h
source/src/audio/SDL_wave.c
source/src/audio/SDL_wave.h
source/src/audio/alsa/SDL_alsa_audio.c
source/src/audio/alsa/SDL_alsa_audio.h
source/src/audio/android/SDL_androidaudio.c
source/src/audio/android/SDL_androidaudio.h
source/src/audio/arts/SDL_artsaudio.c
source/src/audio/arts/SDL_artsaudio.h
source/src/audio/bsd/SDL_bsdaudio.c (deleted)
source/src/audio/bsd/SDL_bsdaudio.h (deleted)
source/src/audio/coreaudio/SDL_coreaudio.h
source/src/audio/coreaudio/SDL_coreaudio.m
source/src/audio/directsound/SDL_directsound.c
source/src/audio/directsound/SDL_directsound.h
source/src/audio/disk/SDL_diskaudio.c
source/src/audio/disk/SDL_diskaudio.h
source/src/audio/dsp/SDL_dspaudio.c
source/src/audio/dsp/SDL_dspaudio.h
source/src/audio/dummy/SDL_dummyaudio.c
source/src/audio/dummy/SDL_dummyaudio.h
source/src/audio/emscripten/SDL_emscriptenaudio.c
source/src/audio/emscripten/SDL_emscriptenaudio.h
source/src/audio/esd/SDL_esdaudio.c
source/src/audio/esd/SDL_esdaudio.h
source/src/audio/fusionsound/SDL_fsaudio.c
source/src/audio/fusionsound/SDL_fsaudio.h
source/src/audio/haiku/SDL_haikuaudio.cc
source/src/audio/haiku/SDL_haikuaudio.h
source/src/audio/jack/SDL_jackaudio.c
source/src/audio/jack/SDL_jackaudio.h
source/src/audio/nacl/SDL_naclaudio.c
source/src/audio/nacl/SDL_naclaudio.h
source/src/audio/nas/SDL_nasaudio.c
source/src/audio/nas/SDL_nasaudio.h
source/src/audio/netbsd/SDL_netbsdaudio.c
source/src/audio/netbsd/SDL_netbsdaudio.h
source/src/audio/paudio/SDL_paudio.c
source/src/audio/paudio/SDL_paudio.h
source/src/audio/psp/SDL_pspaudio.c
source/src/audio/psp/SDL_pspaudio.h
source/src/audio/pulseaudio/SDL_pulseaudio.c
source/src/audio/pulseaudio/SDL_pulseaudio.h
source/src/audio/qsa/SDL_qsa_audio.c
source/src/audio/qsa/SDL_qsa_audio.h
source/src/audio/sdlgenaudiocvt.pl (deleted)
source/src/audio/sndio/SDL_sndioaudio.c
source/src/audio/sndio/SDL_sndioaudio.h
source/src/audio/sun/SDL_sunaudio.c
source/src/audio/sun/SDL_sunaudio.h
source/src/audio/wasapi/SDL_wasapi.c
source/src/audio/wasapi/SDL_wasapi.h
source/src/audio/wasapi/SDL_wasapi_win32.c
source/src/audio/wasapi/SDL_wasapi_winrt.cpp
source/src/audio/winmm/SDL_winmm.c
source/src/audio/winmm/SDL_winmm.h
source/src/audio/xaudio2/SDL_xaudio2.c (deleted)
source/src/audio/xaudio2/SDL_xaudio2.h (deleted)
source/src/audio/xaudio2/SDL_xaudio2_winrthelpers.cpp (deleted)
source/src/audio/xaudio2/SDL_xaudio2_winrthelpers.h (deleted)
source/src/core/android/SDL_android.c
source/src/core/android/SDL_android.h
source/src/core/android/keyinfotable.h
source/src/core/linux/SDL_dbus.c
source/src/core/linux/SDL_dbus.h
source/src/core/linux/SDL_evdev.c
source/src/core/linux/SDL_evdev.h
source/src/core/linux/SDL_evdev_kbd.c
source/src/core/linux/SDL_evdev_kbd.h
source/src/core/linux/SDL_evdev_kbd_default_accents.h
source/src/core/linux/SDL_evdev_kbd_default_keymap.h
source/src/core/linux/SDL_fcitx.c
source/src/core/linux/SDL_fcitx.h
source/src/core/linux/SDL_ibus.c
source/src/core/linux/SDL_ibus.h
source/src/core/linux/SDL_ime.c
source/src/core/linux/SDL_ime.h
source/src/core/linux/SDL_udev.c
source/src/core/linux/SDL_udev.h
source/src/core/unix/SDL_poll.c
source/src/core/unix/SDL_poll.h
source/src/core/windows/SDL_directx.h
source/src/core/windows/SDL_windows.c
source/src/core/windows/SDL_windows.h
source/src/core/windows/SDL_xinput.c
source/src/core/windows/SDL_xinput.h
source/src/core/winrt/SDL_winrtapp_common.cpp
source/src/core/winrt/SDL_winrtapp_common.h
source/src/core/winrt/SDL_winrtapp_direct3d.cpp
source/src/core/winrt/SDL_winrtapp_direct3d.h
source/src/core/winrt/SDL_winrtapp_xaml.cpp
source/src/core/winrt/SDL_winrtapp_xaml.h
source/src/cpuinfo/SDL_cpuinfo.c
source/src/dynapi/SDL_dynapi.c
source/src/dynapi/SDL_dynapi.h
source/src/dynapi/SDL_dynapi_overrides.h
source/src/dynapi/SDL_dynapi_procs.h
source/src/dynapi/gendynapi.pl
source/src/events/SDL_clipboardevents.c
source/src/events/SDL_clipboardevents_c.h
source/src/events/SDL_dropevents.c
source/src/events/SDL_dropevents_c.h
source/src/events/SDL_events.c
source/src/events/SDL_events_c.h
source/src/events/SDL_gesture.c
source/src/events/SDL_gesture_c.h
source/src/events/SDL_keyboard.c
source/src/events/SDL_keyboard_c.h
source/src/events/SDL_mouse.c
source/src/events/SDL_mouse_c.h
source/src/events/SDL_quit.c
source/src/events/SDL_sysevents.h
source/src/events/SDL_touch.c
source/src/events/SDL_touch_c.h
source/src/events/SDL_windowevents.c
source/src/events/SDL_windowevents_c.h
source/src/events/blank_cursor.h
source/src/events/default_cursor.h
source/src/events/scancodes_darwin.h
source/src/events/scancodes_linux.h
source/src/events/scancodes_windows.h
source/src/events/scancodes_xfree86.h
source/src/file/SDL_rwops.c
source/src/file/cocoa/SDL_rwopsbundlesupport.h
source/src/file/cocoa/SDL_rwopsbundlesupport.m
source/src/filesystem/android/SDL_sysfilesystem.c
source/src/filesystem/cocoa/SDL_sysfilesystem.m
source/src/filesystem/dummy/SDL_sysfilesystem.c
source/src/filesystem/emscripten/SDL_sysfilesystem.c
source/src/filesystem/haiku/SDL_sysfilesystem.cc
source/src/filesystem/nacl/SDL_sysfilesystem.c
source/src/filesystem/unix/SDL_sysfilesystem.c
source/src/filesystem/windows/SDL_sysfilesystem.c
source/src/filesystem/winrt/SDL_sysfilesystem.cpp
source/src/haptic/SDL_haptic.c
source/src/haptic/SDL_haptic_c.h
source/src/haptic/SDL_syshaptic.h
source/src/haptic/android/SDL_syshaptic.c
source/src/haptic/android/SDL_syshaptic_c.h
source/src/haptic/darwin/SDL_syshaptic.c
source/src/haptic/darwin/SDL_syshaptic_c.h
source/src/haptic/dummy/SDL_syshaptic.c
source/src/haptic/linux/SDL_syshaptic.c
source/src/haptic/windows/SDL_dinputhaptic.c
source/src/haptic/windows/SDL_dinputhaptic_c.h
source/src/haptic/windows/SDL_windowshaptic.c
source/src/haptic/windows/SDL_windowshaptic_c.h
source/src/haptic/windows/SDL_xinputhaptic.c
source/src/haptic/windows/SDL_xinputhaptic_c.h
source/src/joystick/SDL_gamecontroller.c
source/src/joystick/SDL_gamecontrollerdb.h
source/src/joystick/SDL_joystick.c
source/src/joystick/SDL_joystick_c.h
source/src/joystick/SDL_sysjoystick.h
source/src/joystick/android/SDL_sysjoystick.c
source/src/joystick/android/SDL_sysjoystick_c.h
source/src/joystick/bsd/SDL_sysjoystick.c
source/src/joystick/darwin/SDL_sysjoystick.c
source/src/joystick/darwin/SDL_sysjoystick_c.h
source/src/joystick/dummy/SDL_sysjoystick.c
source/src/joystick/emscripten/SDL_sysjoystick.c
source/src/joystick/emscripten/SDL_sysjoystick_c.h
source/src/joystick/haiku/SDL_haikujoystick.cc
source/src/joystick/iphoneos/SDL_sysjoystick.m
source/src/joystick/iphoneos/SDL_sysjoystick_c.h
source/src/joystick/linux/SDL_sysjoystick.c
source/src/joystick/linux/SDL_sysjoystick_c.h
source/src/joystick/psp/SDL_sysjoystick.c
source/src/joystick/sort_controllers.py
source/src/joystick/steam/SDL_steamcontroller.c
source/src/joystick/steam/SDL_steamcontroller.h
source/src/joystick/windows/SDL_dinputjoystick.c
source/src/joystick/windows/SDL_dinputjoystick_c.h
source/src/joystick/windows/SDL_mmjoystick.c
source/src/joystick/windows/SDL_windowsjoystick.c
source/src/joystick/windows/SDL_windowsjoystick_c.h
source/src/joystick/windows/SDL_xinputjoystick.c
source/src/joystick/windows/SDL_xinputjoystick_c.h
source/src/libm/e_atan2.c
source/src/libm/e_fmod.c
source/src/libm/e_log.c
source/src/libm/e_log10.c
source/src/libm/e_pow.c
source/src/libm/e_rem_pio2.c
source/src/libm/e_sqrt.c
source/src/libm/k_cos.c
source/src/libm/k_rem_pio2.c
source/src/libm/k_sin.c
source/src/libm/k_tan.c
source/src/libm/math_libm.h
source/src/libm/math_private.h
source/src/libm/s_atan.c
source/src/libm/s_copysign.c
source/src/libm/s_cos.c
source/src/libm/s_fabs.c
source/src/libm/s_floor.c
source/src/libm/s_scalbn.c
source/src/libm/s_sin.c
source/src/loadso/dlopen/SDL_sysloadso.c
source/src/loadso/dummy/SDL_sysloadso.c
source/src/loadso/haiku/SDL_sysloadso.c (deleted)
source/src/loadso/windows/SDL_sysloadso.c
source/src/main/android/SDL_android_main.c
source/src/main/haiku/SDL_BApp.h
source/src/main/haiku/SDL_BeApp.cc
source/src/main/haiku/SDL_BeApp.h
source/src/main/nacl/SDL_nacl_main.c
source/src/main/windows/SDL_windows_main.c
source/src/main/windows/version.rc
source/src/main/winrt/SDL_winrt_main_NonXAML.cpp
source/src/power/SDL_power.c
source/src/power/SDL_syspower.h
source/src/power/android/SDL_syspower.c
source/src/power/emscripten/SDL_syspower.c
source/src/power/haiku/SDL_syspower.c
source/src/power/linux/SDL_syspower.c
source/src/power/macosx/SDL_syspower.c
source/src/power/psp/SDL_syspower.c
source/src/power/uikit/SDL_syspower.h
source/src/power/uikit/SDL_syspower.m
source/src/power/windows/SDL_syspower.c
source/src/power/winrt/SDL_syspower.cpp
source/src/render/SDL_d3dmath.c
source/src/render/SDL_d3dmath.h
source/src/render/SDL_render.c
source/src/render/SDL_sysrender.h
source/src/render/SDL_yuv_mmx.c (deleted)
source/src/render/SDL_yuv_sw.c
source/src/render/SDL_yuv_sw_c.h
source/src/render/direct3d/SDL_render_d3d.c
source/src/render/direct3d/SDL_shaders_d3d.c
source/src/render/direct3d/SDL_shaders_d3d.h
source/src/render/direct3d11/SDL_render_d3d11.c
source/src/render/direct3d11/SDL_render_winrt.cpp
source/src/render/direct3d11/SDL_render_winrt.h
source/src/render/direct3d11/SDL_shaders_d3d11.c
source/src/render/direct3d11/SDL_shaders_d3d11.h
source/src/render/metal/SDL_render_metal.m
source/src/render/metal/SDL_shaders_metal.metal
source/src/render/metal/SDL_shaders_metal_ios.h
source/src/render/metal/SDL_shaders_metal_osx.h
source/src/render/metal/build-metal-shaders.sh
source/src/render/mmx.h (deleted)
source/src/render/opengl/SDL_glfuncs.h
source/src/render/opengl/SDL_render_gl.c
source/src/render/opengl/SDL_shaders_gl.c
source/src/render/opengl/SDL_shaders_gl.h
source/src/render/opengles/SDL_glesfuncs.h
source/src/render/opengles/SDL_render_gles.c
source/src/render/opengles2/SDL_gles2funcs.h
source/src/render/opengles2/SDL_render_gles2.c
source/src/render/opengles2/SDL_shaders_gles2.c
source/src/render/opengles2/SDL_shaders_gles2.h
source/src/render/psp/SDL_render_psp.c
source/src/render/software/SDL_blendfillrect.c
source/src/render/software/SDL_blendfillrect.h
source/src/render/software/SDL_blendline.c
source/src/render/software/SDL_blendline.h
source/src/render/software/SDL_blendpoint.c
source/src/render/software/SDL_blendpoint.h
source/src/render/software/SDL_draw.h
source/src/render/software/SDL_drawline.c
source/src/render/software/SDL_drawline.h
source/src/render/software/SDL_drawpoint.c
source/src/render/software/SDL_drawpoint.h
source/src/render/software/SDL_render_sw.c
source/src/render/software/SDL_render_sw_c.h
source/src/render/software/SDL_rotate.c
source/src/render/software/SDL_rotate.h
source/src/stdlib/SDL_getenv.c
source/src/stdlib/SDL_iconv.c
source/src/stdlib/SDL_malloc.c
source/src/stdlib/SDL_qsort.c
source/src/stdlib/SDL_stdlib.c
source/src/stdlib/SDL_string.c
source/src/test/SDL_test_assert.c
source/src/test/SDL_test_common.c
source/src/test/SDL_test_compare.c
source/src/test/SDL_test_crc32.c
source/src/test/SDL_test_font.c
source/src/test/SDL_test_fuzzer.c
source/src/test/SDL_test_harness.c
source/src/test/SDL_test_imageBlit.c
source/src/test/SDL_test_imageBlitBlend.c
source/src/test/SDL_test_imageFace.c
source/src/test/SDL_test_imagePrimitives.c
source/src/test/SDL_test_imagePrimitivesBlend.c
source/src/test/SDL_test_log.c
source/src/test/SDL_test_md5.c
source/src/test/SDL_test_memory.c
source/src/test/SDL_test_random.c
source/src/thread/SDL_systhread.h
source/src/thread/SDL_thread.c
source/src/thread/SDL_thread_c.h
source/src/thread/generic/SDL_syscond.c
source/src/thread/generic/SDL_sysmutex.c
source/src/thread/generic/SDL_sysmutex_c.h
source/src/thread/generic/SDL_syssem.c
source/src/thread/generic/SDL_systhread.c
source/src/thread/generic/SDL_systhread_c.h
source/src/thread/generic/SDL_systls.c
source/src/thread/psp/SDL_syscond.c
source/src/thread/psp/SDL_sysmutex.c
source/src/thread/psp/SDL_sysmutex_c.h
source/src/thread/psp/SDL_syssem.c
source/src/thread/psp/SDL_systhread.c
source/src/thread/psp/SDL_systhread_c.h
source/src/thread/pthread/SDL_syscond.c
source/src/thread/pthread/SDL_sysmutex.c
source/src/thread/pthread/SDL_sysmutex_c.h
source/src/thread/pthread/SDL_syssem.c
source/src/thread/pthread/SDL_systhread.c
source/src/thread/pthread/SDL_systhread_c.h
source/src/thread/pthread/SDL_systls.c
source/src/thread/stdcpp/SDL_syscond.cpp
source/src/thread/stdcpp/SDL_sysmutex.cpp
source/src/thread/stdcpp/SDL_sysmutex_c.h
source/src/thread/stdcpp/SDL_systhread.cpp
source/src/thread/stdcpp/SDL_systhread_c.h
source/src/thread/windows/SDL_sysmutex.c
source/src/thread/windows/SDL_syssem.c
source/src/thread/windows/SDL_systhread.c
source/src/thread/windows/SDL_systhread_c.h
source/src/thread/windows/SDL_systls.c
source/src/timer/SDL_timer.c
source/src/timer/SDL_timer_c.h
source/src/timer/dummy/SDL_systimer.c
source/src/timer/haiku/SDL_systimer.c
source/src/timer/psp/SDL_systimer.c
source/src/timer/unix/SDL_systimer.c
source/src/timer/windows/SDL_systimer.c
source/src/video/SDL_RLEaccel.c
source/src/video/SDL_RLEaccel_c.h
source/src/video/SDL_blit.c
source/src/video/SDL_blit.h
source/src/video/SDL_blit_0.c
source/src/video/SDL_blit_1.c
source/src/video/SDL_blit_A.c
source/src/video/SDL_blit_N.c
source/src/video/SDL_blit_auto.c
source/src/video/SDL_blit_auto.h
source/src/video/SDL_blit_copy.c
source/src/video/SDL_blit_copy.h
source/src/video/SDL_blit_slow.c
source/src/video/SDL_blit_slow.h
source/src/video/SDL_bmp.c
source/src/video/SDL_clipboard.c
source/src/video/SDL_egl.c
source/src/video/SDL_egl_c.h
source/src/video/SDL_fillrect.c
source/src/video/SDL_pixels.c
source/src/video/SDL_pixels_c.h
source/src/video/SDL_rect.c
source/src/video/SDL_rect_c.h
source/src/video/SDL_shape.c
source/src/video/SDL_shape_internals.h
source/src/video/SDL_stretch.c
source/src/video/SDL_surface.c
source/src/video/SDL_sysvideo.h
source/src/video/SDL_video.c
source/src/video/SDL_vulkan_internal.h
source/src/video/SDL_vulkan_utils.c
source/src/video/SDL_yuv.c
source/src/video/SDL_yuv_c.h
source/src/video/android/SDL_androidclipboard.c
source/src/video/android/SDL_androidclipboard.h
source/src/video/android/SDL_androidevents.c
source/src/video/android/SDL_androidevents.h
source/src/video/android/SDL_androidgl.c
source/src/video/android/SDL_androidgl.h
source/src/video/android/SDL_androidkeyboard.c
source/src/video/android/SDL_androidkeyboard.h
source/src/video/android/SDL_androidmessagebox.c
source/src/video/android/SDL_androidmessagebox.h
source/src/video/android/SDL_androidmouse.c
source/src/video/android/SDL_androidmouse.h
source/src/video/android/SDL_androidtouch.c
source/src/video/android/SDL_androidtouch.h
source/src/video/android/SDL_androidvideo.c
source/src/video/android/SDL_androidvideo.h
source/src/video/android/SDL_androidvulkan.c
source/src/video/android/SDL_androidvulkan.h
source/src/video/android/SDL_androidwindow.c
source/src/video/android/SDL_androidwindow.h
source/src/video/cocoa/SDL_cocoaclipboard.h
source/src/video/cocoa/SDL_cocoaclipboard.m
source/src/video/cocoa/SDL_cocoaevents.h
source/src/video/cocoa/SDL_cocoaevents.m
source/src/video/cocoa/SDL_cocoakeyboard.h
source/src/video/cocoa/SDL_cocoakeyboard.m
source/src/video/cocoa/SDL_cocoamessagebox.h
source/src/video/cocoa/SDL_cocoamessagebox.m
source/src/video/cocoa/SDL_cocoametalview.h
source/src/video/cocoa/SDL_cocoametalview.m
source/src/video/cocoa/SDL_cocoamodes.h
source/src/video/cocoa/SDL_cocoamodes.m
source/src/video/cocoa/SDL_cocoamouse.h
source/src/video/cocoa/SDL_cocoamouse.m
source/src/video/cocoa/SDL_cocoamousetap.h
source/src/video/cocoa/SDL_cocoamousetap.m
source/src/video/cocoa/SDL_cocoaopengl.h
source/src/video/cocoa/SDL_cocoaopengl.m
source/src/video/cocoa/SDL_cocoaopengles.h
source/src/video/cocoa/SDL_cocoaopengles.m
source/src/video/cocoa/SDL_cocoashape.h
source/src/video/cocoa/SDL_cocoashape.m
source/src/video/cocoa/SDL_cocoavideo.h
source/src/video/cocoa/SDL_cocoavideo.m
source/src/video/cocoa/SDL_cocoavulkan.h
source/src/video/cocoa/SDL_cocoavulkan.m
source/src/video/cocoa/SDL_cocoawindow.h
source/src/video/cocoa/SDL_cocoawindow.m
source/src/video/directfb/SDL_DirectFB_WM.c
source/src/video/directfb/SDL_DirectFB_WM.h
source/src/video/directfb/SDL_DirectFB_dyn.c
source/src/video/directfb/SDL_DirectFB_dyn.h
source/src/video/directfb/SDL_DirectFB_events.c
source/src/video/directfb/SDL_DirectFB_events.h
source/src/video/directfb/SDL_DirectFB_modes.c
source/src/video/directfb/SDL_DirectFB_modes.h
source/src/video/directfb/SDL_DirectFB_mouse.c
source/src/video/directfb/SDL_DirectFB_mouse.h
source/src/video/directfb/SDL_DirectFB_opengl.c
source/src/video/directfb/SDL_DirectFB_opengl.h
source/src/video/directfb/SDL_DirectFB_render.c
source/src/video/directfb/SDL_DirectFB_render.h
source/src/video/directfb/SDL_DirectFB_shape.c
source/src/video/directfb/SDL_DirectFB_shape.h
source/src/video/directfb/SDL_DirectFB_video.c
source/src/video/directfb/SDL_DirectFB_video.h
source/src/video/directfb/SDL_DirectFB_window.c
source/src/video/directfb/SDL_DirectFB_window.h
source/src/video/dummy/SDL_nullevents.c
source/src/video/dummy/SDL_nullevents_c.h
source/src/video/dummy/SDL_nullframebuffer.c
source/src/video/dummy/SDL_nullframebuffer_c.h
source/src/video/dummy/SDL_nullvideo.c
source/src/video/dummy/SDL_nullvideo.h
source/src/video/emscripten/SDL_emscriptenevents.c
source/src/video/emscripten/SDL_emscriptenevents.h
source/src/video/emscripten/SDL_emscriptenframebuffer.c
source/src/video/emscripten/SDL_emscriptenframebuffer.h
source/src/video/emscripten/SDL_emscriptenmouse.c
source/src/video/emscripten/SDL_emscriptenmouse.h
source/src/video/emscripten/SDL_emscriptenopengles.c
source/src/video/emscripten/SDL_emscriptenopengles.h
source/src/video/emscripten/SDL_emscriptenvideo.c
source/src/video/emscripten/SDL_emscriptenvideo.h
source/src/video/haiku/SDL_BWin.h
source/src/video/haiku/SDL_bclipboard.cc
source/src/video/haiku/SDL_bclipboard.h
source/src/video/haiku/SDL_bevents.cc
source/src/video/haiku/SDL_bevents.h
source/src/video/haiku/SDL_bframebuffer.cc
source/src/video/haiku/SDL_bframebuffer.h
source/src/video/haiku/SDL_bkeyboard.cc
source/src/video/haiku/SDL_bkeyboard.h
source/src/video/haiku/SDL_bmodes.cc
source/src/video/haiku/SDL_bmodes.h
source/src/video/haiku/SDL_bopengl.cc
source/src/video/haiku/SDL_bopengl.h
source/src/video/haiku/SDL_bvideo.cc
source/src/video/haiku/SDL_bvideo.h
source/src/video/haiku/SDL_bwindow.cc
source/src/video/haiku/SDL_bwindow.h
source/src/video/khronos/EGL/egl.h
source/src/video/khronos/EGL/eglext.h
source/src/video/khronos/EGL/eglplatform.h
source/src/video/khronos/GLES2/gl2.h
source/src/video/khronos/GLES2/gl2ext.h
source/src/video/khronos/GLES2/gl2platform.h
source/src/video/khronos/KHR/khrplatform.h
source/src/video/khronos/vulkan/vk_platform.h
source/src/video/khronos/vulkan/vulkan.h
source/src/video/kmsdrm/SDL_kmsdrmdyn.c
source/src/video/kmsdrm/SDL_kmsdrmdyn.h
source/src/video/kmsdrm/SDL_kmsdrmevents.c
source/src/video/kmsdrm/SDL_kmsdrmevents.h
source/src/video/kmsdrm/SDL_kmsdrmmouse.c
source/src/video/kmsdrm/SDL_kmsdrmmouse.h
source/src/video/kmsdrm/SDL_kmsdrmopengles.c
source/src/video/kmsdrm/SDL_kmsdrmopengles.h
source/src/video/kmsdrm/SDL_kmsdrmsym.h
source/src/video/kmsdrm/SDL_kmsdrmvideo.c
source/src/video/kmsdrm/SDL_kmsdrmvideo.h
source/src/video/mir/SDL_mirdyn.c
source/src/video/mir/SDL_mirdyn.h
source/src/video/mir/SDL_mirevents.c
source/src/video/mir/SDL_mirevents.h
source/src/video/mir/SDL_mirframebuffer.c
source/src/video/mir/SDL_mirframebuffer.h
source/src/video/mir/SDL_mirmouse.c
source/src/video/mir/SDL_mirmouse.h
source/src/video/mir/SDL_miropengl.c
source/src/video/mir/SDL_miropengl.h
source/src/video/mir/SDL_mirsym.h
source/src/video/mir/SDL_mirvideo.c
source/src/video/mir/SDL_mirvideo.h
source/src/video/mir/SDL_mirvulkan.c
source/src/video/mir/SDL_mirvulkan.h
source/src/video/mir/SDL_mirwindow.c
source/src/video/mir/SDL_mirwindow.h
source/src/video/nacl/SDL_naclevents.c
source/src/video/nacl/SDL_naclevents_c.h
source/src/video/nacl/SDL_naclglue.c
source/src/video/nacl/SDL_naclopengles.c
source/src/video/nacl/SDL_naclopengles.h
source/src/video/nacl/SDL_naclvideo.c
source/src/video/nacl/SDL_naclvideo.h
source/src/video/nacl/SDL_naclwindow.c
source/src/video/nacl/SDL_naclwindow.h
source/src/video/pandora/SDL_pandora.c
source/src/video/pandora/SDL_pandora.h
source/src/video/pandora/SDL_pandora_events.c
source/src/video/pandora/SDL_pandora_events.h
source/src/video/psp/SDL_pspevents.c
source/src/video/psp/SDL_pspevents_c.h
source/src/video/psp/SDL_pspgl.c
source/src/video/psp/SDL_pspgl_c.h
source/src/video/psp/SDL_pspmouse.c
source/src/video/psp/SDL_pspmouse_c.h
source/src/video/psp/SDL_pspvideo.c
source/src/video/psp/SDL_pspvideo.h
source/src/video/qnx/gl.c
source/src/video/qnx/keyboard.c
source/src/video/qnx/sdl_qnx.h
source/src/video/qnx/video.c
source/src/video/raspberry/SDL_rpievents.c
source/src/video/raspberry/SDL_rpievents_c.h
source/src/video/raspberry/SDL_rpimouse.c
source/src/video/raspberry/SDL_rpimouse.h
source/src/video/raspberry/SDL_rpiopengles.c
source/src/video/raspberry/SDL_rpiopengles.h
source/src/video/raspberry/SDL_rpivideo.c
source/src/video/raspberry/SDL_rpivideo.h
source/src/video/sdlgenblit.pl
source/src/video/uikit/SDL_uikitappdelegate.h
source/src/video/uikit/SDL_uikitappdelegate.m
source/src/video/uikit/SDL_uikitclipboard.h
source/src/video/uikit/SDL_uikitclipboard.m
source/src/video/uikit/SDL_uikitevents.h
source/src/video/uikit/SDL_uikitevents.m
source/src/video/uikit/SDL_uikitmessagebox.h
source/src/video/uikit/SDL_uikitmessagebox.m
source/src/video/uikit/SDL_uikitmetalview.h
source/src/video/uikit/SDL_uikitmetalview.m
source/src/video/uikit/SDL_uikitmodes.h
source/src/video/uikit/SDL_uikitmodes.m
source/src/video/uikit/SDL_uikitopengles.h
source/src/video/uikit/SDL_uikitopengles.m
source/src/video/uikit/SDL_uikitopenglview.h
source/src/video/uikit/SDL_uikitopenglview.m
source/src/video/uikit/SDL_uikitvideo.h
source/src/video/uikit/SDL_uikitvideo.m
source/src/video/uikit/SDL_uikitview.h
source/src/video/uikit/SDL_uikitview.m
source/src/video/uikit/SDL_uikitviewcontroller.h
source/src/video/uikit/SDL_uikitviewcontroller.m
source/src/video/uikit/SDL_uikitvulkan.h
source/src/video/uikit/SDL_uikitvulkan.m
source/src/video/uikit/SDL_uikitwindow.h
source/src/video/uikit/SDL_uikitwindow.m
source/src/video/uikit/keyinfotable.h
source/src/video/vivante/SDL_vivanteopengles.c
source/src/video/vivante/SDL_vivanteopengles.h
source/src/video/vivante/SDL_vivanteplatform.c
source/src/video/vivante/SDL_vivanteplatform.h
source/src/video/vivante/SDL_vivantevideo.c
source/src/video/vivante/SDL_vivantevideo.h
source/src/video/wayland/SDL_waylandclipboard.c
source/src/video/wayland/SDL_waylandclipboard.h
source/src/video/wayland/SDL_waylanddatamanager.c
source/src/video/wayland/SDL_waylanddatamanager.h
source/src/video/wayland/SDL_waylanddyn.c
source/src/video/wayland/SDL_waylanddyn.h
source/src/video/wayland/SDL_waylandevents.c
source/src/video/wayland/SDL_waylandevents_c.h
source/src/video/wayland/SDL_waylandmouse.c
source/src/video/wayland/SDL_waylandmouse.h
source/src/video/wayland/SDL_waylandopengles.c
source/src/video/wayland/SDL_waylandopengles.h
source/src/video/wayland/SDL_waylandsym.h
source/src/video/wayland/SDL_waylandtouch.c
source/src/video/wayland/SDL_waylandtouch.h
source/src/video/wayland/SDL_waylandvideo.c
source/src/video/wayland/SDL_waylandvideo.h
source/src/video/wayland/SDL_waylandvulkan.c
source/src/video/wayland/SDL_waylandvulkan.h
source/src/video/wayland/SDL_waylandwindow.c
source/src/video/wayland/SDL_waylandwindow.h
source/src/video/windows/SDL_msctf.h
source/src/video/windows/SDL_vkeys.h
source/src/video/windows/SDL_windowsclipboard.c
source/src/video/windows/SDL_windowsclipboard.h
source/src/video/windows/SDL_windowsevents.c
source/src/video/windows/SDL_windowsevents.h
source/src/video/windows/SDL_windowsframebuffer.c
source/src/video/windows/SDL_windowsframebuffer.h
source/src/video/windows/SDL_windowskeyboard.c
source/src/video/windows/SDL_windowskeyboard.h
source/src/video/windows/SDL_windowsmessagebox.c
source/src/video/windows/SDL_windowsmessagebox.h
source/src/video/windows/SDL_windowsmodes.c
source/src/video/windows/SDL_windowsmodes.h
source/src/video/windows/SDL_windowsmouse.c
source/src/video/windows/SDL_windowsmouse.h
source/src/video/windows/SDL_windowsopengl.c
source/src/video/windows/SDL_windowsopengl.h
source/src/video/windows/SDL_windowsopengles.c
source/src/video/windows/SDL_windowsopengles.h
source/src/video/windows/SDL_windowsshape.c
source/src/video/windows/SDL_windowsshape.h
source/src/video/windows/SDL_windowsvideo.c
source/src/video/windows/SDL_windowsvideo.h
source/src/video/windows/SDL_windowsvulkan.c
source/src/video/windows/SDL_windowsvulkan.h
source/src/video/windows/SDL_windowswindow.c
source/src/video/windows/SDL_windowswindow.h
source/src/video/windows/wmmsg.h
source/src/video/winrt/SDL_winrtevents.cpp
source/src/video/winrt/SDL_winrtevents_c.h
source/src/video/winrt/SDL_winrtgamebar.cpp
source/src/video/winrt/SDL_winrtgamebar_cpp.h
source/src/video/winrt/SDL_winrtkeyboard.cpp
source/src/video/winrt/SDL_winrtmessagebox.cpp
source/src/video/winrt/SDL_winrtmessagebox.h
source/src/video/winrt/SDL_winrtmouse.cpp
source/src/video/winrt/SDL_winrtmouse_c.h
source/src/video/winrt/SDL_winrtopengles.cpp
source/src/video/winrt/SDL_winrtopengles.h
source/src/video/winrt/SDL_winrtpointerinput.cpp
source/src/video/winrt/SDL_winrtvideo.cpp
source/src/video/winrt/SDL_winrtvideo_cpp.h
source/src/video/x11/SDL_x11clipboard.c
source/src/video/x11/SDL_x11clipboard.h
source/src/video/x11/SDL_x11dyn.c
source/src/video/x11/SDL_x11dyn.h
source/src/video/x11/SDL_x11events.c
source/src/video/x11/SDL_x11events.h
source/src/video/x11/SDL_x11framebuffer.c
source/src/video/x11/SDL_x11framebuffer.h
source/src/video/x11/SDL_x11keyboard.c
source/src/video/x11/SDL_x11keyboard.h
source/src/video/x11/SDL_x11messagebox.c
source/src/video/x11/SDL_x11messagebox.h
source/src/video/x11/SDL_x11modes.c
source/src/video/x11/SDL_x11modes.h
source/src/video/x11/SDL_x11mouse.c
source/src/video/x11/SDL_x11mouse.h
source/src/video/x11/SDL_x11opengl.c
source/src/video/x11/SDL_x11opengl.h
source/src/video/x11/SDL_x11opengles.c
source/src/video/x11/SDL_x11opengles.h
source/src/video/x11/SDL_x11shape.c
source/src/video/x11/SDL_x11shape.h
source/src/video/x11/SDL_x11sym.h
source/src/video/x11/SDL_x11touch.c
source/src/video/x11/SDL_x11touch.h
source/src/video/x11/SDL_x11video.c
source/src/video/x11/SDL_x11video.h
source/src/video/x11/SDL_x11vulkan.c
source/src/video/x11/SDL_x11vulkan.h
source/src/video/x11/SDL_x11window.c
source/src/video/x11/SDL_x11window.h
source/src/video/x11/SDL_x11xinput2.c
source/src/video/x11/SDL_x11xinput2.h
source/src/video/x11/edid-parse.c
source/src/video/x11/edid.h
source/src/video/yuv2rgb/LICENSE
source/src/video/yuv2rgb/README.md
source/src/video/yuv2rgb/yuv_rgb.c
source/src/video/yuv2rgb/yuv_rgb.h
source/src/video/yuv2rgb/yuv_rgb_sse_func.h
source/src/video/yuv2rgb/yuv_rgb_std_func.h
source/test/CMakeLists.txt
source/test/Makefile.in
source/test/axis.bmp
source/test/checkkeys.c
source/test/controllermap.c
source/test/loopwave.c
source/test/loopwavequeue.c
source/test/nacl/common.js
source/test/testatomic.c
source/test/testaudiocapture.c
source/test/testaudiohotplug.c
source/test/testaudioinfo.c
source/test/testautomation.c
source/test/testautomation_audio.c
source/test/testautomation_clipboard.c
source/test/testautomation_events.c
source/test/testautomation_keyboard.c
source/test/testautomation_mouse.c
source/test/testautomation_platform.c
source/test/testautomation_rwops.c
source/test/testautomation_sdltest.c
source/test/testautomation_stdlib.c
source/test/testautomation_timer.c
source/test/testbounds.c
source/test/testcustomcursor.c
source/test/testdisplayinfo.c
source/test/testdraw2.c
source/test/testdrawchessboard.c
source/test/testdropfile.c
source/test/testerror.c
source/test/testfile.c
source/test/testfilesystem.c
source/test/testgamecontroller.c
source/test/testgesture.c
source/test/testgl2.c
source/test/testgles.c
source/test/testgles2.c
source/test/testhittesting.c
source/test/testhotplug.c
source/test/testiconv.c
source/test/testime.c
source/test/testintersections.c
source/test/testjoystick.c
source/test/testkeys.c
source/test/testloadso.c
source/test/testlock.c
source/test/testmessage.c
source/test/testmultiaudio.c
source/test/testnative.c
source/test/testnative.h
source/test/testnativew32.c
source/test/testnativex11.c
source/test/testoverlay2.c
source/test/testplatform.c
source/test/testpower.c
source/test/testqsort.c
source/test/testrelative.c
source/test/testrendercopyex.c
source/test/testrendertarget.c
source/test/testresample.c
source/test/testrumble.c
source/test/testscale.c
source/test/testsem.c
source/test/testshader.c
source/test/testshape.c
source/test/testsprite2.c
source/test/testspriteminimal.c
source/test/teststreaming.c
source/test/testthread.c
source/test/testtimer.c
source/test/testver.c
source/test/testviewport.c
source/test/testvulkan.c
source/test/testwm2.c
source/test/testyuv.bmp
source/test/testyuv.c
source/test/testyuv_cvt.c
source/test/testyuv_cvt.h
source/test/torturethread.c
source/visualtest/include/SDL_visualtest_action_configparser.h
source/visualtest/include/SDL_visualtest_exhaustive_variator.h
source/visualtest/include/SDL_visualtest_harness_argparser.h
source/visualtest/include/SDL_visualtest_mischelper.h
source/visualtest/include/SDL_visualtest_parsehelper.h
source/visualtest/include/SDL_visualtest_process.h
source/visualtest/include/SDL_visualtest_random_variator.h
source/visualtest/include/SDL_visualtest_rwhelper.h
source/visualtest/include/SDL_visualtest_screenshot.h
source/visualtest/include/SDL_visualtest_sut_configparser.h
source/visualtest/include/SDL_visualtest_variator_common.h
source/visualtest/include/SDL_visualtest_variators.h |