alphatau 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1362) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +11 -0
  3. data/bin/console +14 -0
  4. data/bin/setup +8 -0
  5. data/ext/alphatau/native/alphatau_native.cpp +141 -0
  6. data/ext/alphatau/native/extconf.rb +18 -0
  7. data/ext/alphatau/native/sdl/Android.mk +110 -0
  8. data/ext/alphatau/native/sdl/BUGS.txt +16 -0
  9. data/ext/alphatau/native/sdl/CMakeLists.txt +1877 -0
  10. data/ext/alphatau/native/sdl/COPYING.txt +20 -0
  11. data/ext/alphatau/native/sdl/CREDITS.txt +53 -0
  12. data/ext/alphatau/native/sdl/INSTALL.txt +40 -0
  13. data/ext/alphatau/native/sdl/Makefile.in +240 -0
  14. data/ext/alphatau/native/sdl/Makefile.minimal +44 -0
  15. data/ext/alphatau/native/sdl/Makefile.pandora +60 -0
  16. data/ext/alphatau/native/sdl/Makefile.psp +95 -0
  17. data/ext/alphatau/native/sdl/Makefile.wiz +80 -0
  18. data/ext/alphatau/native/sdl/README-SDL.txt +13 -0
  19. data/ext/alphatau/native/sdl/README.txt +21 -0
  20. data/ext/alphatau/native/sdl/SDL2.spec.in +118 -0
  21. data/ext/alphatau/native/sdl/SDL2Config.cmake +1 -0
  22. data/ext/alphatau/native/sdl/TODO.txt +10 -0
  23. data/ext/alphatau/native/sdl/VisualC-WinRT/SDL2-WinRT.nuspec +23 -0
  24. data/ext/alphatau/native/sdl/VisualC-WinRT/SDL2-WinRT.targets +38 -0
  25. data/ext/alphatau/native/sdl/VisualC-WinRT/SDL2main-WinRT-NonXAML.nuspec +22 -0
  26. data/ext/alphatau/native/sdl/VisualC-WinRT/SDL2main-WinRT-NonXAML.targets +10 -0
  27. data/ext/alphatau/native/sdl/VisualC-WinRT/UWP_VS2015/SDL-UWP.sln +34 -0
  28. data/ext/alphatau/native/sdl/VisualC-WinRT/UWP_VS2015/SDL-UWP.vcxproj +575 -0
  29. data/ext/alphatau/native/sdl/VisualC-WinRT/UWP_VS2015/SDL-UWP.vcxproj.filters +774 -0
  30. data/ext/alphatau/native/sdl/VisualC-WinRT/WinPhone81_VS2013/SDL-WinPhone81.sln +28 -0
  31. data/ext/alphatau/native/sdl/VisualC-WinRT/WinPhone81_VS2013/SDL-WinPhone81.vcxproj +466 -0
  32. data/ext/alphatau/native/sdl/VisualC-WinRT/WinPhone81_VS2013/SDL-WinPhone81.vcxproj.filters +735 -0
  33. data/ext/alphatau/native/sdl/VisualC-WinRT/WinRT81_VS2013/SDL-WinRT81.sln +34 -0
  34. data/ext/alphatau/native/sdl/VisualC-WinRT/WinRT81_VS2013/SDL-WinRT81.vcxproj +571 -0
  35. data/ext/alphatau/native/sdl/VisualC-WinRT/WinRT81_VS2013/SDL-WinRT81.vcxproj.filters +771 -0
  36. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/loopwave/Assets/Logo.png +0 -0
  37. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/loopwave/Assets/SmallLogo.png +0 -0
  38. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/loopwave/Assets/SplashScreen.png +0 -0
  39. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/loopwave/Assets/StoreLogo.png +0 -0
  40. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/loopwave/Package.appxmanifest +42 -0
  41. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/loopwave/loopwave_VS2012.vcxproj +170 -0
  42. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/loopwave/loopwave_VS2012_TemporaryKey.pfx +0 -0
  43. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/testthread/Assets/Logo.png +0 -0
  44. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/testthread/Assets/SmallLogo.png +0 -0
  45. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/testthread/Assets/SplashScreen.png +0 -0
  46. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/testthread/Assets/StoreLogo.png +0 -0
  47. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/testthread/Package.appxmanifest +42 -0
  48. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/testthread/testthread_VS2012.vcxproj +160 -0
  49. data/ext/alphatau/native/sdl/VisualC-WinRT/tests/testthread/testthread_VS2012_TemporaryKey.pfx +0 -0
  50. data/ext/alphatau/native/sdl/VisualC.html +146 -0
  51. data/ext/alphatau/native/sdl/VisualC/SDL.sln +291 -0
  52. data/ext/alphatau/native/sdl/VisualC/SDL/SDL.vcxproj +559 -0
  53. data/ext/alphatau/native/sdl/VisualC/SDL/SDL.vcxproj.filters +479 -0
  54. data/ext/alphatau/native/sdl/VisualC/SDLmain/SDLmain.vcxproj +162 -0
  55. data/ext/alphatau/native/sdl/VisualC/SDLtest/SDLtest.vcxproj +177 -0
  56. data/ext/alphatau/native/sdl/VisualC/clean.sh +4 -0
  57. data/ext/alphatau/native/sdl/VisualC/tests/checkkeys/checkkeys.vcxproj +218 -0
  58. data/ext/alphatau/native/sdl/VisualC/tests/controllermap/controllermap.vcxproj +259 -0
  59. data/ext/alphatau/native/sdl/VisualC/tests/loopwave/loopwave.vcxproj +229 -0
  60. data/ext/alphatau/native/sdl/VisualC/tests/testatomic/testatomic.vcxproj +203 -0
  61. data/ext/alphatau/native/sdl/VisualC/tests/testautomation/testautomation.vcxproj +230 -0
  62. data/ext/alphatau/native/sdl/VisualC/tests/testdraw2/testdraw2.vcxproj +209 -0
  63. data/ext/alphatau/native/sdl/VisualC/tests/testfile/testfile.vcxproj +203 -0
  64. data/ext/alphatau/native/sdl/VisualC/tests/testgamecontroller/testgamecontroller.vcxproj +259 -0
  65. data/ext/alphatau/native/sdl/VisualC/tests/testgesture/testgesture.vcxproj +203 -0
  66. data/ext/alphatau/native/sdl/VisualC/tests/testgl2/testgl2.vcxproj +213 -0
  67. data/ext/alphatau/native/sdl/VisualC/tests/testgles2/testgles2.vcxproj +209 -0
  68. data/ext/alphatau/native/sdl/VisualC/tests/testjoystick/testjoystick.vcxproj +203 -0
  69. data/ext/alphatau/native/sdl/VisualC/tests/testoverlay2/testoverlay2.vcxproj +224 -0
  70. data/ext/alphatau/native/sdl/VisualC/tests/testplatform/testplatform.vcxproj +231 -0
  71. data/ext/alphatau/native/sdl/VisualC/tests/testpower/testpower.vcxproj +203 -0
  72. data/ext/alphatau/native/sdl/VisualC/tests/testrendertarget/testrendertarget.vcxproj +247 -0
  73. data/ext/alphatau/native/sdl/VisualC/tests/testrumble/testrumble.vcxproj +203 -0
  74. data/ext/alphatau/native/sdl/VisualC/tests/testscale/testscale.vcxproj +247 -0
  75. data/ext/alphatau/native/sdl/VisualC/tests/testshape/testshape.vcxproj +203 -0
  76. data/ext/alphatau/native/sdl/VisualC/tests/testsprite2/testsprite2.vcxproj +229 -0
  77. data/ext/alphatau/native/sdl/VisualC/tests/testvulkan/testvulkan.vcxproj +203 -0
  78. data/ext/alphatau/native/sdl/VisualC/tests/testyuv/testyuv.vcxproj +233 -0
  79. data/ext/alphatau/native/sdl/VisualC/visualtest/unittest/testquit/testquit_VS2012.vcxproj +216 -0
  80. data/ext/alphatau/native/sdl/VisualC/visualtest/visualtest_VS2012.vcxproj +304 -0
  81. data/ext/alphatau/native/sdl/WhatsNew.txt +401 -0
  82. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/Default.png +0 -0
  83. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/Demos.xcodeproj/project.pbxproj +1299 -0
  84. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/Icon.png +0 -0
  85. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/Info.plist +32 -0
  86. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/README +43 -0
  87. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/bitmapfont/kromasky_16x16.bmp +0 -0
  88. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/bitmapfont/license.txt +258 -0
  89. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/drums/ds_brush_snare.wav +0 -0
  90. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/drums/ds_china.wav +0 -0
  91. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/drums/ds_kick_big_amb.wav +0 -0
  92. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/drums/ds_loose_skin_mute.wav +0 -0
  93. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/icon.bmp +0 -0
  94. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/ship.bmp +0 -0
  95. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/space.bmp +0 -0
  96. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/data/stroke.bmp +0 -0
  97. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/iOS Launch Screen.storyboard +40 -0
  98. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/accelerometer.c +226 -0
  99. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/common.c +56 -0
  100. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/common.h +10 -0
  101. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/fireworks.c +474 -0
  102. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/happy.c +180 -0
  103. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/keyboard.c +301 -0
  104. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/mixer.c +344 -0
  105. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/rectangles.c +92 -0
  106. data/ext/alphatau/native/sdl/Xcode-iOS/Demos/src/touch.c +129 -0
  107. data/ext/alphatau/native/sdl/Xcode-iOS/SDL/SDL.xcodeproj/project.pbxproj +2047 -0
  108. data/ext/alphatau/native/sdl/Xcode-iOS/SDLtest/SDL2test.xcodeproj/project.pbxproj +422 -0
  109. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/Default-568h@2x.png +0 -0
  110. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/Default.png +0 -0
  111. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/Icon.png +0 -0
  112. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/Info.plist +28 -0
  113. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns +0 -0
  114. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist +10 -0
  115. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj +308 -0
  116. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  117. data/ext/alphatau/native/sdl/Xcode-iOS/Template/SDL iOS Application/main.c +100 -0
  118. data/ext/alphatau/native/sdl/Xcode-iOS/Test/Info.plist +26 -0
  119. data/ext/alphatau/native/sdl/Xcode-iOS/Test/README +11 -0
  120. data/ext/alphatau/native/sdl/Xcode-iOS/Test/TestiPhoneOS.xcodeproj/project.pbxproj +3095 -0
  121. data/ext/alphatau/native/sdl/Xcode/SDL/Info-Framework.plist +28 -0
  122. data/ext/alphatau/native/sdl/Xcode/SDL/SDL.xcodeproj/project.pbxproj +3384 -0
  123. data/ext/alphatau/native/sdl/Xcode/SDL/pkg-support/SDL.info +15 -0
  124. data/ext/alphatau/native/sdl/Xcode/SDL/pkg-support/resources/License.txt +19 -0
  125. data/ext/alphatau/native/sdl/Xcode/SDL/pkg-support/resources/ReadMe.txt +32 -0
  126. data/ext/alphatau/native/sdl/Xcode/SDL/pkg-support/resources/SDL_DS_Store +0 -0
  127. data/ext/alphatau/native/sdl/Xcode/SDL/pkg-support/sdl_logo.pdf +0 -0
  128. data/ext/alphatau/native/sdl/Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj +4995 -0
  129. data/ext/alphatau/native/sdl/Xcode/SDLTest/TestDropFile-Info.plist +35 -0
  130. data/ext/alphatau/native/sdl/Xcode/XcodeDocSet/Doxyfile +1558 -0
  131. data/ext/alphatau/native/sdl/acinclude/ac_check_define.m4 +14 -0
  132. data/ext/alphatau/native/sdl/acinclude/alsa.m4 +145 -0
  133. data/ext/alphatau/native/sdl/acinclude/ax_check_compiler_flags.m4 +76 -0
  134. data/ext/alphatau/native/sdl/acinclude/ax_gcc_archflag.m4 +215 -0
  135. data/ext/alphatau/native/sdl/acinclude/ax_gcc_x86_cpuid.m4.htm +79 -0
  136. data/ext/alphatau/native/sdl/acinclude/esd.m4 +168 -0
  137. data/ext/alphatau/native/sdl/acinclude/libtool.m4 +7998 -0
  138. data/ext/alphatau/native/sdl/acinclude/ltoptions.m4 +384 -0
  139. data/ext/alphatau/native/sdl/acinclude/ltsugar.m4 +123 -0
  140. data/ext/alphatau/native/sdl/acinclude/ltversion.m4 +23 -0
  141. data/ext/alphatau/native/sdl/acinclude/lt~obsolete.m4 +98 -0
  142. data/ext/alphatau/native/sdl/android-project-ant/AndroidManifest.xml +1 -0
  143. data/ext/alphatau/native/sdl/android-project-ant/ant.properties +17 -0
  144. data/ext/alphatau/native/sdl/android-project-ant/build.properties +17 -0
  145. data/ext/alphatau/native/sdl/android-project-ant/build.xml +93 -0
  146. data/ext/alphatau/native/sdl/android-project-ant/default.properties +11 -0
  147. data/ext/alphatau/native/sdl/android-project-ant/jni/Android.mk +1 -0
  148. data/ext/alphatau/native/sdl/android-project-ant/jni/Application.mk +10 -0
  149. data/ext/alphatau/native/sdl/android-project-ant/jni/src/Android.mk +18 -0
  150. data/ext/alphatau/native/sdl/android-project-ant/jni/src/Android_static.mk +12 -0
  151. data/ext/alphatau/native/sdl/android-project-ant/proguard-project.txt +20 -0
  152. data/ext/alphatau/native/sdl/android-project-ant/project.properties +14 -0
  153. data/ext/alphatau/native/sdl/android-project-ant/res/drawable-hdpi/ic_launcher.png +0 -0
  154. data/ext/alphatau/native/sdl/android-project-ant/res/drawable-mdpi/ic_launcher.png +0 -0
  155. data/ext/alphatau/native/sdl/android-project-ant/res/drawable-xhdpi/ic_launcher.png +0 -0
  156. data/ext/alphatau/native/sdl/android-project-ant/res/drawable-xxhdpi/ic_launcher.png +0 -0
  157. data/ext/alphatau/native/sdl/android-project-ant/res/layout/main.xml +13 -0
  158. data/ext/alphatau/native/sdl/android-project-ant/res/values/strings.xml +4 -0
  159. data/ext/alphatau/native/sdl/android-project-ant/src +1 -0
  160. data/ext/alphatau/native/sdl/android-project/app/build.gradle +69 -0
  161. data/ext/alphatau/native/sdl/android-project/app/jni/Android.mk +1 -0
  162. data/ext/alphatau/native/sdl/android-project/app/jni/Application.mk +9 -0
  163. data/ext/alphatau/native/sdl/android-project/app/jni/src/Android.mk +18 -0
  164. data/ext/alphatau/native/sdl/android-project/app/proguard-rules.pro +17 -0
  165. data/ext/alphatau/native/sdl/android-project/app/src/main/AndroidManifest.xml +77 -0
  166. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/HIDDevice.java +19 -0
  167. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java +640 -0
  168. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java +624 -0
  169. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java +298 -0
  170. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/SDL.java +37 -0
  171. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/SDLActivity.java +2103 -0
  172. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/SDLAudioManager.java +178 -0
  173. data/ext/alphatau/native/sdl/android-project/app/src/main/java/org/libsdl/app/SDLControllerManager.java +812 -0
  174. data/ext/alphatau/native/sdl/android-project/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  175. data/ext/alphatau/native/sdl/android-project/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  176. data/ext/alphatau/native/sdl/android-project/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  177. data/ext/alphatau/native/sdl/android-project/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  178. data/ext/alphatau/native/sdl/android-project/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  179. data/ext/alphatau/native/sdl/android-project/app/src/main/res/values/colors.xml +6 -0
  180. data/ext/alphatau/native/sdl/android-project/app/src/main/res/values/strings.xml +3 -0
  181. data/ext/alphatau/native/sdl/android-project/app/src/main/res/values/styles.xml +8 -0
  182. data/ext/alphatau/native/sdl/android-project/build.gradle +23 -0
  183. data/ext/alphatau/native/sdl/android-project/gradle.properties +17 -0
  184. data/ext/alphatau/native/sdl/android-project/gradle/wrapper/gradle-wrapper.jar +0 -0
  185. data/ext/alphatau/native/sdl/android-project/gradle/wrapper/gradle-wrapper.properties +6 -0
  186. data/ext/alphatau/native/sdl/android-project/gradlew +160 -0
  187. data/ext/alphatau/native/sdl/android-project/gradlew.bat +90 -0
  188. data/ext/alphatau/native/sdl/android-project/settings.gradle +1 -0
  189. data/ext/alphatau/native/sdl/autogen.sh +23 -0
  190. data/ext/alphatau/native/sdl/build-scripts/androidbuild.sh +100 -0
  191. data/ext/alphatau/native/sdl/build-scripts/androidbuildlibs.sh +74 -0
  192. data/ext/alphatau/native/sdl/build-scripts/checker-buildbot.sh +103 -0
  193. data/ext/alphatau/native/sdl/build-scripts/config.guess +1476 -0
  194. data/ext/alphatau/native/sdl/build-scripts/config.sub +1868 -0
  195. data/ext/alphatau/native/sdl/build-scripts/config.sub.patch +72 -0
  196. data/ext/alphatau/native/sdl/build-scripts/emscripten-buildbot.sh +77 -0
  197. data/ext/alphatau/native/sdl/build-scripts/g++-fat.sh +101 -0
  198. data/ext/alphatau/native/sdl/build-scripts/gcc-fat.sh +102 -0
  199. data/ext/alphatau/native/sdl/build-scripts/install-sh +323 -0
  200. data/ext/alphatau/native/sdl/build-scripts/iosbuild.sh +188 -0
  201. data/ext/alphatau/native/sdl/build-scripts/ltmain.sh +9658 -0
  202. data/ext/alphatau/native/sdl/build-scripts/mkinstalldirs +99 -0
  203. data/ext/alphatau/native/sdl/build-scripts/nacl-buildbot.sh +61 -0
  204. data/ext/alphatau/native/sdl/build-scripts/naclbuild.sh +105 -0
  205. data/ext/alphatau/native/sdl/build-scripts/raspberrypi-buildbot.sh +60 -0
  206. data/ext/alphatau/native/sdl/build-scripts/showrev.sh +5 -0
  207. data/ext/alphatau/native/sdl/build-scripts/strip_fPIC.sh +21 -0
  208. data/ext/alphatau/native/sdl/build-scripts/update-copyright.sh +8 -0
  209. data/ext/alphatau/native/sdl/build-scripts/updaterev.sh +20 -0
  210. data/ext/alphatau/native/sdl/build-scripts/windows-buildbot-zipper.bat +40 -0
  211. data/ext/alphatau/native/sdl/build-scripts/winrtbuild.bat +8 -0
  212. data/ext/alphatau/native/sdl/build-scripts/winrtbuild.ps1 +302 -0
  213. data/ext/alphatau/native/sdl/cmake/macros.cmake +73 -0
  214. data/ext/alphatau/native/sdl/cmake/sdlchecks.cmake +1184 -0
  215. data/ext/alphatau/native/sdl/cmake_uninstall.cmake.in +18 -0
  216. data/ext/alphatau/native/sdl/configure +27540 -0
  217. data/ext/alphatau/native/sdl/configure.in +4236 -0
  218. data/ext/alphatau/native/sdl/debian/changelog +114 -0
  219. data/ext/alphatau/native/sdl/debian/compat +1 -0
  220. data/ext/alphatau/native/sdl/debian/control +76 -0
  221. data/ext/alphatau/native/sdl/debian/copyright +351 -0
  222. data/ext/alphatau/native/sdl/debian/docs +4 -0
  223. data/ext/alphatau/native/sdl/debian/libsdl2-dev.install +8 -0
  224. data/ext/alphatau/native/sdl/debian/libsdl2-dev.manpages +1 -0
  225. data/ext/alphatau/native/sdl/debian/libsdl2.install +1 -0
  226. data/ext/alphatau/native/sdl/debian/rules +41 -0
  227. data/ext/alphatau/native/sdl/debian/sdl2-config.1 +86 -0
  228. data/ext/alphatau/native/sdl/debian/source/format +1 -0
  229. data/ext/alphatau/native/sdl/debian/watch +2 -0
  230. data/ext/alphatau/native/sdl/docs/README-android.md +432 -0
  231. data/ext/alphatau/native/sdl/docs/README-cmake.md +32 -0
  232. data/ext/alphatau/native/sdl/docs/README-directfb.md +107 -0
  233. data/ext/alphatau/native/sdl/docs/README-dynapi.md +130 -0
  234. data/ext/alphatau/native/sdl/docs/README-emscripten.md +35 -0
  235. data/ext/alphatau/native/sdl/docs/README-gesture.md +71 -0
  236. data/ext/alphatau/native/sdl/docs/README-hg.md +22 -0
  237. data/ext/alphatau/native/sdl/docs/README-ios.md +284 -0
  238. data/ext/alphatau/native/sdl/docs/README-linux.md +90 -0
  239. data/ext/alphatau/native/sdl/docs/README-macosx.md +240 -0
  240. data/ext/alphatau/native/sdl/docs/README-nacl.md +103 -0
  241. data/ext/alphatau/native/sdl/docs/README-pandora.md +17 -0
  242. data/ext/alphatau/native/sdl/docs/README-platforms.md +8 -0
  243. data/ext/alphatau/native/sdl/docs/README-porting.md +68 -0
  244. data/ext/alphatau/native/sdl/docs/README-psp.md +19 -0
  245. data/ext/alphatau/native/sdl/docs/README-raspberrypi.md +188 -0
  246. data/ext/alphatau/native/sdl/docs/README-touch.md +86 -0
  247. data/ext/alphatau/native/sdl/docs/README-wince.md +10 -0
  248. data/ext/alphatau/native/sdl/docs/README-windows.md +45 -0
  249. data/ext/alphatau/native/sdl/docs/README-winrt.md +544 -0
  250. data/ext/alphatau/native/sdl/docs/README.md +63 -0
  251. data/ext/alphatau/native/sdl/docs/doxyfile +1560 -0
  252. data/ext/alphatau/native/sdl/include/SDL.h +135 -0
  253. data/ext/alphatau/native/sdl/include/SDL_assert.h +291 -0
  254. data/ext/alphatau/native/sdl/include/SDL_atomic.h +277 -0
  255. data/ext/alphatau/native/sdl/include/SDL_audio.h +825 -0
  256. data/ext/alphatau/native/sdl/include/SDL_bits.h +112 -0
  257. data/ext/alphatau/native/sdl/include/SDL_blendmode.h +120 -0
  258. data/ext/alphatau/native/sdl/include/SDL_clipboard.h +71 -0
  259. data/ext/alphatau/native/sdl/include/SDL_config.h +53 -0
  260. data/ext/alphatau/native/sdl/include/SDL_config.h.cmake +471 -0
  261. data/ext/alphatau/native/sdl/include/SDL_config.h.in +417 -0
  262. data/ext/alphatau/native/sdl/include/SDL_config_android.h +177 -0
  263. data/ext/alphatau/native/sdl/include/SDL_config_iphoneos.h +201 -0
  264. data/ext/alphatau/native/sdl/include/SDL_config_macosx.h +240 -0
  265. data/ext/alphatau/native/sdl/include/SDL_config_minimal.h +85 -0
  266. data/ext/alphatau/native/sdl/include/SDL_config_pandora.h +133 -0
  267. data/ext/alphatau/native/sdl/include/SDL_config_psp.h +164 -0
  268. data/ext/alphatau/native/sdl/include/SDL_config_windows.h +254 -0
  269. data/ext/alphatau/native/sdl/include/SDL_config_winrt.h +235 -0
  270. data/ext/alphatau/native/sdl/include/SDL_config_wiz.h +146 -0
  271. data/ext/alphatau/native/sdl/include/SDL_copying.h +20 -0
  272. data/ext/alphatau/native/sdl/include/SDL_cpuinfo.h +188 -0
  273. data/ext/alphatau/native/sdl/include/SDL_egl.h +1673 -0
  274. data/ext/alphatau/native/sdl/include/SDL_endian.h +260 -0
  275. data/ext/alphatau/native/sdl/include/SDL_error.h +76 -0
  276. data/ext/alphatau/native/sdl/include/SDL_events.h +788 -0
  277. data/ext/alphatau/native/sdl/include/SDL_filesystem.h +136 -0
  278. data/ext/alphatau/native/sdl/include/SDL_gamecontroller.h +383 -0
  279. data/ext/alphatau/native/sdl/include/SDL_gesture.h +87 -0
  280. data/ext/alphatau/native/sdl/include/SDL_haptic.h +1227 -0
  281. data/ext/alphatau/native/sdl/include/SDL_hints.h +1106 -0
  282. data/ext/alphatau/native/sdl/include/SDL_joystick.h +395 -0
  283. data/ext/alphatau/native/sdl/include/SDL_keyboard.h +217 -0
  284. data/ext/alphatau/native/sdl/include/SDL_keycode.h +349 -0
  285. data/ext/alphatau/native/sdl/include/SDL_loadso.h +81 -0
  286. data/ext/alphatau/native/sdl/include/SDL_log.h +211 -0
  287. data/ext/alphatau/native/sdl/include/SDL_main.h +168 -0
  288. data/ext/alphatau/native/sdl/include/SDL_messagebox.h +144 -0
  289. data/ext/alphatau/native/sdl/include/SDL_mouse.h +302 -0
  290. data/ext/alphatau/native/sdl/include/SDL_mutex.h +251 -0
  291. data/ext/alphatau/native/sdl/include/SDL_name.h +33 -0
  292. data/ext/alphatau/native/sdl/include/SDL_opengl.h +2183 -0
  293. data/ext/alphatau/native/sdl/include/SDL_opengl_glext.h +11177 -0
  294. data/ext/alphatau/native/sdl/include/SDL_opengles.h +39 -0
  295. data/ext/alphatau/native/sdl/include/SDL_opengles2.h +52 -0
  296. data/ext/alphatau/native/sdl/include/SDL_opengles2_gl2.h +621 -0
  297. data/ext/alphatau/native/sdl/include/SDL_opengles2_gl2ext.h +2050 -0
  298. data/ext/alphatau/native/sdl/include/SDL_opengles2_gl2platform.h +30 -0
  299. data/ext/alphatau/native/sdl/include/SDL_opengles2_khrplatform.h +282 -0
  300. data/ext/alphatau/native/sdl/include/SDL_pixels.h +470 -0
  301. data/ext/alphatau/native/sdl/include/SDL_platform.h +198 -0
  302. data/ext/alphatau/native/sdl/include/SDL_power.h +75 -0
  303. data/ext/alphatau/native/sdl/include/SDL_quit.h +58 -0
  304. data/ext/alphatau/native/sdl/include/SDL_rect.h +148 -0
  305. data/ext/alphatau/native/sdl/include/SDL_render.h +931 -0
  306. data/ext/alphatau/native/sdl/include/SDL_revision.h +2 -0
  307. data/ext/alphatau/native/sdl/include/SDL_rwops.h +254 -0
  308. data/ext/alphatau/native/sdl/include/SDL_scancode.h +413 -0
  309. data/ext/alphatau/native/sdl/include/SDL_sensor.h +251 -0
  310. data/ext/alphatau/native/sdl/include/SDL_shape.h +144 -0
  311. data/ext/alphatau/native/sdl/include/SDL_stdinc.h +607 -0
  312. data/ext/alphatau/native/sdl/include/SDL_surface.h +546 -0
  313. data/ext/alphatau/native/sdl/include/SDL_system.h +279 -0
  314. data/ext/alphatau/native/sdl/include/SDL_syswm.h +324 -0
  315. data/ext/alphatau/native/sdl/include/SDL_test.h +69 -0
  316. data/ext/alphatau/native/sdl/include/SDL_test_assert.h +105 -0
  317. data/ext/alphatau/native/sdl/include/SDL_test_common.h +188 -0
  318. data/ext/alphatau/native/sdl/include/SDL_test_compare.h +69 -0
  319. data/ext/alphatau/native/sdl/include/SDL_test_crc32.h +124 -0
  320. data/ext/alphatau/native/sdl/include/SDL_test_font.h +81 -0
  321. data/ext/alphatau/native/sdl/include/SDL_test_fuzzer.h +384 -0
  322. data/ext/alphatau/native/sdl/include/SDL_test_harness.h +134 -0
  323. data/ext/alphatau/native/sdl/include/SDL_test_images.h +78 -0
  324. data/ext/alphatau/native/sdl/include/SDL_test_log.h +67 -0
  325. data/ext/alphatau/native/sdl/include/SDL_test_md5.h +129 -0
  326. data/ext/alphatau/native/sdl/include/SDL_test_memory.h +63 -0
  327. data/ext/alphatau/native/sdl/include/SDL_test_random.h +115 -0
  328. data/ext/alphatau/native/sdl/include/SDL_thread.h +309 -0
  329. data/ext/alphatau/native/sdl/include/SDL_timer.h +115 -0
  330. data/ext/alphatau/native/sdl/include/SDL_touch.h +86 -0
  331. data/ext/alphatau/native/sdl/include/SDL_types.h +29 -0
  332. data/ext/alphatau/native/sdl/include/SDL_version.h +162 -0
  333. data/ext/alphatau/native/sdl/include/SDL_video.h +1276 -0
  334. data/ext/alphatau/native/sdl/include/SDL_vulkan.h +278 -0
  335. data/ext/alphatau/native/sdl/include/begin_code.h +167 -0
  336. data/ext/alphatau/native/sdl/include/close_code.h +37 -0
  337. data/ext/alphatau/native/sdl/sdl2-config.cmake.in +11 -0
  338. data/ext/alphatau/native/sdl/sdl2-config.in +60 -0
  339. data/ext/alphatau/native/sdl/sdl2.m4 +234 -0
  340. data/ext/alphatau/native/sdl/sdl2.pc.in +15 -0
  341. data/ext/alphatau/native/sdl/src/SDL.c +514 -0
  342. data/ext/alphatau/native/sdl/src/SDL_assert.c +451 -0
  343. data/ext/alphatau/native/sdl/src/SDL_assert_c.h +24 -0
  344. data/ext/alphatau/native/sdl/src/SDL_dataqueue.c +339 -0
  345. data/ext/alphatau/native/sdl/src/SDL_dataqueue.h +55 -0
  346. data/ext/alphatau/native/sdl/src/SDL_error.c +319 -0
  347. data/ext/alphatau/native/sdl/src/SDL_error_c.h +65 -0
  348. data/ext/alphatau/native/sdl/src/SDL_hints.c +236 -0
  349. data/ext/alphatau/native/sdl/src/SDL_internal.h +52 -0
  350. data/ext/alphatau/native/sdl/src/SDL_log.c +450 -0
  351. data/ext/alphatau/native/sdl/src/atomic/SDL_atomic.c +303 -0
  352. data/ext/alphatau/native/sdl/src/atomic/SDL_spinlock.c +176 -0
  353. data/ext/alphatau/native/sdl/src/audio/SDL_audio.c +1647 -0
  354. data/ext/alphatau/native/sdl/src/audio/SDL_audio_c.h +79 -0
  355. data/ext/alphatau/native/sdl/src/audio/SDL_audiocvt.c +1673 -0
  356. data/ext/alphatau/native/sdl/src/audio/SDL_audiodev.c +124 -0
  357. data/ext/alphatau/native/sdl/src/audio/SDL_audiodev_c.h +38 -0
  358. data/ext/alphatau/native/sdl/src/audio/SDL_audiotypecvt.c +1430 -0
  359. data/ext/alphatau/native/sdl/src/audio/SDL_mixer.c +369 -0
  360. data/ext/alphatau/native/sdl/src/audio/SDL_sysaudio.h +211 -0
  361. data/ext/alphatau/native/sdl/src/audio/SDL_wave.c +694 -0
  362. data/ext/alphatau/native/sdl/src/audio/SDL_wave.h +77 -0
  363. data/ext/alphatau/native/sdl/src/audio/alsa/SDL_alsa_audio.c +990 -0
  364. data/ext/alphatau/native/sdl/src/audio/alsa/SDL_alsa_audio.h +48 -0
  365. data/ext/alphatau/native/sdl/src/audio/android/SDL_androidaudio.c +226 -0
  366. data/ext/alphatau/native/sdl/src/audio/android/SDL_androidaudio.h +42 -0
  367. data/ext/alphatau/native/sdl/src/audio/arts/SDL_artsaudio.c +365 -0
  368. data/ext/alphatau/native/sdl/src/audio/arts/SDL_artsaudio.h +53 -0
  369. data/ext/alphatau/native/sdl/src/audio/coreaudio/SDL_coreaudio.h +66 -0
  370. data/ext/alphatau/native/sdl/src/audio/coreaudio/SDL_coreaudio.m +861 -0
  371. data/ext/alphatau/native/sdl/src/audio/directsound/SDL_directsound.c +604 -0
  372. data/ext/alphatau/native/sdl/src/audio/directsound/SDL_directsound.h +47 -0
  373. data/ext/alphatau/native/sdl/src/audio/disk/SDL_diskaudio.c +207 -0
  374. data/ext/alphatau/native/sdl/src/audio/disk/SDL_diskaudio.h +41 -0
  375. data/ext/alphatau/native/sdl/src/audio/dsp/SDL_dspaudio.c +320 -0
  376. data/ext/alphatau/native/sdl/src/audio/dsp/SDL_dspaudio.h +43 -0
  377. data/ext/alphatau/native/sdl/src/audio/dummy/SDL_dummyaudio.c +65 -0
  378. data/ext/alphatau/native/sdl/src/audio/dummy/SDL_dummyaudio.h +41 -0
  379. data/ext/alphatau/native/sdl/src/audio/emscripten/SDL_emscriptenaudio.c +379 -0
  380. data/ext/alphatau/native/sdl/src/audio/emscripten/SDL_emscriptenaudio.h +38 -0
  381. data/ext/alphatau/native/sdl/src/audio/esd/SDL_esdaudio.c +335 -0
  382. data/ext/alphatau/native/sdl/src/audio/esd/SDL_esdaudio.h +51 -0
  383. data/ext/alphatau/native/sdl/src/audio/fusionsound/SDL_fsaudio.c +328 -0
  384. data/ext/alphatau/native/sdl/src/audio/fusionsound/SDL_fsaudio.h +50 -0
  385. data/ext/alphatau/native/sdl/src/audio/haiku/SDL_haikuaudio.cc +248 -0
  386. data/ext/alphatau/native/sdl/src/audio/haiku/SDL_haikuaudio.h +38 -0
  387. data/ext/alphatau/native/sdl/src/audio/jack/SDL_jackaudio.c +446 -0
  388. data/ext/alphatau/native/sdl/src/audio/jack/SDL_jackaudio.h +41 -0
  389. data/ext/alphatau/native/sdl/src/audio/nacl/SDL_naclaudio.c +165 -0
  390. data/ext/alphatau/native/sdl/src/audio/nacl/SDL_naclaudio.h +43 -0
  391. data/ext/alphatau/native/sdl/src/audio/nas/SDL_nasaudio.c +463 -0
  392. data/ext/alphatau/native/sdl/src/audio/nas/SDL_nasaudio.h +56 -0
  393. data/ext/alphatau/native/sdl/src/audio/netbsd/SDL_netbsdaudio.c +412 -0
  394. data/ext/alphatau/native/sdl/src/audio/netbsd/SDL_netbsdaudio.h +48 -0
  395. data/ext/alphatau/native/sdl/src/audio/paudio/SDL_paudio.c +516 -0
  396. data/ext/alphatau/native/sdl/src/audio/paudio/SDL_paudio.h +48 -0
  397. data/ext/alphatau/native/sdl/src/audio/psp/SDL_pspaudio.c +181 -0
  398. data/ext/alphatau/native/sdl/src/audio/psp/SDL_pspaudio.h +45 -0
  399. data/ext/alphatau/native/sdl/src/audio/pulseaudio/SDL_pulseaudio.c +782 -0
  400. data/ext/alphatau/native/sdl/src/audio/pulseaudio/SDL_pulseaudio.h +52 -0
  401. data/ext/alphatau/native/sdl/src/audio/qsa/SDL_qsa_audio.c +666 -0
  402. data/ext/alphatau/native/sdl/src/audio/qsa/SDL_qsa_audio.h +57 -0
  403. data/ext/alphatau/native/sdl/src/audio/sndio/SDL_sndioaudio.c +382 -0
  404. data/ext/alphatau/native/sdl/src/audio/sndio/SDL_sndioaudio.h +49 -0
  405. data/ext/alphatau/native/sdl/src/audio/sun/SDL_sunaudio.c +419 -0
  406. data/ext/alphatau/native/sdl/src/audio/sun/SDL_sunaudio.h +47 -0
  407. data/ext/alphatau/native/sdl/src/audio/wasapi/SDL_wasapi.c +779 -0
  408. data/ext/alphatau/native/sdl/src/audio/wasapi/SDL_wasapi.h +85 -0
  409. data/ext/alphatau/native/sdl/src/audio/wasapi/SDL_wasapi_win32.c +417 -0
  410. data/ext/alphatau/native/sdl/src/audio/wasapi/SDL_wasapi_winrt.cpp +276 -0
  411. data/ext/alphatau/native/sdl/src/audio/winmm/SDL_winmm.c +457 -0
  412. data/ext/alphatau/native/sdl/src/audio/winmm/SDL_winmm.h +45 -0
  413. data/ext/alphatau/native/sdl/src/core/android/SDL_android.c +2285 -0
  414. data/ext/alphatau/native/sdl/src/core/android/SDL_android.h +122 -0
  415. data/ext/alphatau/native/sdl/src/core/android/keyinfotable.h +175 -0
  416. data/ext/alphatau/native/sdl/src/core/linux/SDL_dbus.c +347 -0
  417. data/ext/alphatau/native/sdl/src/core/linux/SDL_dbus.h +97 -0
  418. data/ext/alphatau/native/sdl/src/core/linux/SDL_evdev.c +698 -0
  419. data/ext/alphatau/native/sdl/src/core/linux/SDL_evdev.h +39 -0
  420. data/ext/alphatau/native/sdl/src/core/linux/SDL_evdev_kbd.c +840 -0
  421. data/ext/alphatau/native/sdl/src/core/linux/SDL_evdev_kbd.h +29 -0
  422. data/ext/alphatau/native/sdl/src/core/linux/SDL_evdev_kbd_default_accents.h +284 -0
  423. data/ext/alphatau/native/sdl/src/core/linux/SDL_evdev_kbd_default_keymap.h +4763 -0
  424. data/ext/alphatau/native/sdl/src/core/linux/SDL_fcitx.c +373 -0
  425. data/ext/alphatau/native/sdl/src/core/linux/SDL_fcitx.h +40 -0
  426. data/ext/alphatau/native/sdl/src/core/linux/SDL_ibus.c +584 -0
  427. data/ext/alphatau/native/sdl/src/core/linux/SDL_ibus.h +58 -0
  428. data/ext/alphatau/native/sdl/src/core/linux/SDL_ime.c +152 -0
  429. data/ext/alphatau/native/sdl/src/core/linux/SDL_ime.h +40 -0
  430. data/ext/alphatau/native/sdl/src/core/linux/SDL_udev.c +553 -0
  431. data/ext/alphatau/native/sdl/src/core/linux/SDL_udev.h +121 -0
  432. data/ext/alphatau/native/sdl/src/core/unix/SDL_poll.c +87 -0
  433. data/ext/alphatau/native/sdl/src/core/unix/SDL_poll.h +34 -0
  434. data/ext/alphatau/native/sdl/src/core/windows/SDL_directx.h +111 -0
  435. data/ext/alphatau/native/sdl/src/core/windows/SDL_windows.c +233 -0
  436. data/ext/alphatau/native/sdl/src/core/windows/SDL_windows.h +75 -0
  437. data/ext/alphatau/native/sdl/src/core/windows/SDL_xinput.c +139 -0
  438. data/ext/alphatau/native/sdl/src/core/windows/SDL_xinput.h +177 -0
  439. data/ext/alphatau/native/sdl/src/core/winrt/SDL_winrtapp_common.cpp +66 -0
  440. data/ext/alphatau/native/sdl/src/core/winrt/SDL_winrtapp_common.h +31 -0
  441. data/ext/alphatau/native/sdl/src/core/winrt/SDL_winrtapp_direct3d.cpp +855 -0
  442. data/ext/alphatau/native/sdl/src/core/winrt/SDL_winrtapp_direct3d.h +92 -0
  443. data/ext/alphatau/native/sdl/src/core/winrt/SDL_winrtapp_xaml.cpp +160 -0
  444. data/ext/alphatau/native/sdl/src/core/winrt/SDL_winrtapp_xaml.h +33 -0
  445. data/ext/alphatau/native/sdl/src/cpuinfo/SDL_cpuinfo.c +855 -0
  446. data/ext/alphatau/native/sdl/src/cpuinfo/SDL_simd.h +88 -0
  447. data/ext/alphatau/native/sdl/src/dynapi/SDL_dynapi.c +331 -0
  448. data/ext/alphatau/native/sdl/src/dynapi/SDL_dynapi.h +67 -0
  449. data/ext/alphatau/native/sdl/src/dynapi/SDL_dynapi_overrides.h +698 -0
  450. data/ext/alphatau/native/sdl/src/dynapi/SDL_dynapi_procs.h +740 -0
  451. data/ext/alphatau/native/sdl/src/dynapi/gendynapi.pl +141 -0
  452. data/ext/alphatau/native/sdl/src/events/SDL_clipboardevents.c +46 -0
  453. data/ext/alphatau/native/sdl/src/events/SDL_clipboardevents_c.h +30 -0
  454. data/ext/alphatau/native/sdl/src/events/SDL_displayevents.c +60 -0
  455. data/ext/alphatau/native/sdl/src/events/SDL_displayevents_c.h +30 -0
  456. data/ext/alphatau/native/sdl/src/events/SDL_dropevents.c +98 -0
  457. data/ext/alphatau/native/sdl/src/events/SDL_dropevents_c.h +32 -0
  458. data/ext/alphatau/native/sdl/src/events/SDL_events.c +976 -0
  459. data/ext/alphatau/native/sdl/src/events/SDL_events_c.h +52 -0
  460. data/ext/alphatau/native/sdl/src/events/SDL_gesture.c +700 -0
  461. data/ext/alphatau/native/sdl/src/events/SDL_gesture_c.h +35 -0
  462. data/ext/alphatau/native/sdl/src/events/SDL_keyboard.c +1033 -0
  463. data/ext/alphatau/native/sdl/src/events/SDL_keyboard_c.h +70 -0
  464. data/ext/alphatau/native/sdl/src/events/SDL_mouse.c +1031 -0
  465. data/ext/alphatau/native/sdl/src/events/SDL_mouse_c.h +141 -0
  466. data/ext/alphatau/native/sdl/src/events/SDL_quit.c +152 -0
  467. data/ext/alphatau/native/sdl/src/events/SDL_sysevents.h +36 -0
  468. data/ext/alphatau/native/sdl/src/events/SDL_touch.c +375 -0
  469. data/ext/alphatau/native/sdl/src/events/SDL_touch_c.h +61 -0
  470. data/ext/alphatau/native/sdl/src/events/SDL_windowevents.c +227 -0
  471. data/ext/alphatau/native/sdl/src/events/SDL_windowevents_c.h +31 -0
  472. data/ext/alphatau/native/sdl/src/events/blank_cursor.h +33 -0
  473. data/ext/alphatau/native/sdl/src/events/default_cursor.h +114 -0
  474. data/ext/alphatau/native/sdl/src/events/scancodes_darwin.h +159 -0
  475. data/ext/alphatau/native/sdl/src/events/scancodes_linux.h +263 -0
  476. data/ext/alphatau/native/sdl/src/events/scancodes_windows.h +55 -0
  477. data/ext/alphatau/native/sdl/src/events/scancodes_xfree86.h +506 -0
  478. data/ext/alphatau/native/sdl/src/file/SDL_rwops.c +867 -0
  479. data/ext/alphatau/native/sdl/src/file/cocoa/SDL_rwopsbundlesupport.h +30 -0
  480. data/ext/alphatau/native/sdl/src/file/cocoa/SDL_rwopsbundlesupport.m +62 -0
  481. data/ext/alphatau/native/sdl/src/filesystem/android/SDL_sysfilesystem.c +62 -0
  482. data/ext/alphatau/native/sdl/src/filesystem/cocoa/SDL_sysfilesystem.m +117 -0
  483. data/ext/alphatau/native/sdl/src/filesystem/dummy/SDL_sysfilesystem.c +47 -0
  484. data/ext/alphatau/native/sdl/src/filesystem/emscripten/SDL_sysfilesystem.c +81 -0
  485. data/ext/alphatau/native/sdl/src/filesystem/haiku/SDL_sysfilesystem.cc +110 -0
  486. data/ext/alphatau/native/sdl/src/filesystem/nacl/SDL_sysfilesystem.c +43 -0
  487. data/ext/alphatau/native/sdl/src/filesystem/unix/SDL_sysfilesystem.c +250 -0
  488. data/ext/alphatau/native/sdl/src/filesystem/windows/SDL_sysfilesystem.c +192 -0
  489. data/ext/alphatau/native/sdl/src/filesystem/winrt/SDL_sysfilesystem.cpp +233 -0
  490. data/ext/alphatau/native/sdl/src/haptic/SDL_haptic.c +850 -0
  491. data/ext/alphatau/native/sdl/src/haptic/SDL_haptic_c.h +25 -0
  492. data/ext/alphatau/native/sdl/src/haptic/SDL_syshaptic.h +208 -0
  493. data/ext/alphatau/native/sdl/src/haptic/android/SDL_syshaptic.c +358 -0
  494. data/ext/alphatau/native/sdl/src/haptic/android/SDL_syshaptic_c.h +12 -0
  495. data/ext/alphatau/native/sdl/src/haptic/darwin/SDL_syshaptic.c +1417 -0
  496. data/ext/alphatau/native/sdl/src/haptic/darwin/SDL_syshaptic_c.h +26 -0
  497. data/ext/alphatau/native/sdl/src/haptic/dummy/SDL_syshaptic.c +186 -0
  498. data/ext/alphatau/native/sdl/src/haptic/linux/SDL_syshaptic.c +1165 -0
  499. data/ext/alphatau/native/sdl/src/haptic/windows/SDL_dinputhaptic.c +1305 -0
  500. data/ext/alphatau/native/sdl/src/haptic/windows/SDL_dinputhaptic_c.h +47 -0
  501. data/ext/alphatau/native/sdl/src/haptic/windows/SDL_windowshaptic.c +456 -0
  502. data/ext/alphatau/native/sdl/src/haptic/windows/SDL_windowshaptic_c.h +88 -0
  503. data/ext/alphatau/native/sdl/src/haptic/windows/SDL_xinputhaptic.c +487 -0
  504. data/ext/alphatau/native/sdl/src/haptic/windows/SDL_xinputhaptic_c.h +47 -0
  505. data/ext/alphatau/native/sdl/src/hidapi/AUTHORS.txt +16 -0
  506. data/ext/alphatau/native/sdl/src/hidapi/HACKING.txt +15 -0
  507. data/ext/alphatau/native/sdl/src/hidapi/LICENSE-bsd.txt +26 -0
  508. data/ext/alphatau/native/sdl/src/hidapi/LICENSE-gpl3.txt +674 -0
  509. data/ext/alphatau/native/sdl/src/hidapi/LICENSE-orig.txt +9 -0
  510. data/ext/alphatau/native/sdl/src/hidapi/LICENSE.txt +13 -0
  511. data/ext/alphatau/native/sdl/src/hidapi/Makefile.am +85 -0
  512. data/ext/alphatau/native/sdl/src/hidapi/README.txt +339 -0
  513. data/ext/alphatau/native/sdl/src/hidapi/android/hid.cpp +1079 -0
  514. data/ext/alphatau/native/sdl/src/hidapi/android/jni/Android.mk +16 -0
  515. data/ext/alphatau/native/sdl/src/hidapi/android/jni/Application.mk +2 -0
  516. data/ext/alphatau/native/sdl/src/hidapi/android/project.properties +14 -0
  517. data/ext/alphatau/native/sdl/src/hidapi/bootstrap +2 -0
  518. data/ext/alphatau/native/sdl/src/hidapi/configure.ac +236 -0
  519. data/ext/alphatau/native/sdl/src/hidapi/doxygen/Doxyfile +1630 -0
  520. data/ext/alphatau/native/sdl/src/hidapi/hidapi/hidapi.h +398 -0
  521. data/ext/alphatau/native/sdl/src/hidapi/hidtest/Makefile.am +20 -0
  522. data/ext/alphatau/native/sdl/src/hidapi/hidtest/hidtest.cpp +194 -0
  523. data/ext/alphatau/native/sdl/src/hidapi/ios/Makefile-manual +32 -0
  524. data/ext/alphatau/native/sdl/src/hidapi/ios/Makefile.am +9 -0
  525. data/ext/alphatau/native/sdl/src/hidapi/ios/hid.m +909 -0
  526. data/ext/alphatau/native/sdl/src/hidapi/libusb/Makefile-manual +18 -0
  527. data/ext/alphatau/native/sdl/src/hidapi/libusb/Makefile.am +27 -0
  528. data/ext/alphatau/native/sdl/src/hidapi/libusb/Makefile.freebsd +46 -0
  529. data/ext/alphatau/native/sdl/src/hidapi/libusb/Makefile.linux +49 -0
  530. data/ext/alphatau/native/sdl/src/hidapi/libusb/hid.c +1615 -0
  531. data/ext/alphatau/native/sdl/src/hidapi/libusb/hidusb.cpp +3 -0
  532. data/ext/alphatau/native/sdl/src/hidapi/linux/Makefile-manual +49 -0
  533. data/ext/alphatau/native/sdl/src/hidapi/linux/Makefile.am +10 -0
  534. data/ext/alphatau/native/sdl/src/hidapi/linux/README.txt +59 -0
  535. data/ext/alphatau/native/sdl/src/hidapi/linux/hid.c +893 -0
  536. data/ext/alphatau/native/sdl/src/hidapi/linux/hid.cpp +333 -0
  537. data/ext/alphatau/native/sdl/src/hidapi/linux/hidraw.cpp +3 -0
  538. data/ext/alphatau/native/sdl/src/hidapi/m4/ax_pthread.m4 +309 -0
  539. data/ext/alphatau/native/sdl/src/hidapi/m4/pkg.m4 +157 -0
  540. data/ext/alphatau/native/sdl/src/hidapi/mac/Makefile-manual +32 -0
  541. data/ext/alphatau/native/sdl/src/hidapi/mac/Makefile.am +9 -0
  542. data/ext/alphatau/native/sdl/src/hidapi/mac/hid.c +1186 -0
  543. data/ext/alphatau/native/sdl/src/hidapi/pc/hidapi-hidraw.pc.in +10 -0
  544. data/ext/alphatau/native/sdl/src/hidapi/pc/hidapi-libusb.pc.in +10 -0
  545. data/ext/alphatau/native/sdl/src/hidapi/pc/hidapi.pc.in +10 -0
  546. data/ext/alphatau/native/sdl/src/hidapi/testgui/Makefile-manual +26 -0
  547. data/ext/alphatau/native/sdl/src/hidapi/testgui/Makefile.am +43 -0
  548. data/ext/alphatau/native/sdl/src/hidapi/testgui/Makefile.freebsd +33 -0
  549. data/ext/alphatau/native/sdl/src/hidapi/testgui/Makefile.linux +32 -0
  550. data/ext/alphatau/native/sdl/src/hidapi/testgui/Makefile.mac +46 -0
  551. data/ext/alphatau/native/sdl/src/hidapi/testgui/Makefile.mingw +32 -0
  552. data/ext/alphatau/native/sdl/src/hidapi/testgui/TestGUI.app.in/Contents/Info.plist +28 -0
  553. data/ext/alphatau/native/sdl/src/hidapi/testgui/TestGUI.app.in/Contents/PkgInfo +1 -0
  554. data/ext/alphatau/native/sdl/src/hidapi/testgui/TestGUI.app.in/Contents/Resources/English.lproj/InfoPlist.strings +0 -0
  555. data/ext/alphatau/native/sdl/src/hidapi/testgui/TestGUI.app.in/Contents/Resources/Signal11.icns +0 -0
  556. data/ext/alphatau/native/sdl/src/hidapi/testgui/copy_to_bundle.sh +97 -0
  557. data/ext/alphatau/native/sdl/src/hidapi/testgui/mac_support.cpp +134 -0
  558. data/ext/alphatau/native/sdl/src/hidapi/testgui/mac_support.h +17 -0
  559. data/ext/alphatau/native/sdl/src/hidapi/testgui/mac_support_cocoa.m +94 -0
  560. data/ext/alphatau/native/sdl/src/hidapi/testgui/start.sh +2 -0
  561. data/ext/alphatau/native/sdl/src/hidapi/testgui/test.cpp +532 -0
  562. data/ext/alphatau/native/sdl/src/hidapi/testgui/testgui.sln +20 -0
  563. data/ext/alphatau/native/sdl/src/hidapi/testgui/testgui.vcproj +217 -0
  564. data/ext/alphatau/native/sdl/src/hidapi/udev/99-hid.rules +33 -0
  565. data/ext/alphatau/native/sdl/src/hidapi/windows/Makefile-manual +14 -0
  566. data/ext/alphatau/native/sdl/src/hidapi/windows/Makefile.am +16 -0
  567. data/ext/alphatau/native/sdl/src/hidapi/windows/Makefile.mingw +35 -0
  568. data/ext/alphatau/native/sdl/src/hidapi/windows/ddk_build/hidapi.def +17 -0
  569. data/ext/alphatau/native/sdl/src/hidapi/windows/ddk_build/makefile +49 -0
  570. data/ext/alphatau/native/sdl/src/hidapi/windows/ddk_build/sources +23 -0
  571. data/ext/alphatau/native/sdl/src/hidapi/windows/hid.c +983 -0
  572. data/ext/alphatau/native/sdl/src/hidapi/windows/hidapi.sln +29 -0
  573. data/ext/alphatau/native/sdl/src/hidapi/windows/hidapi.vcproj +201 -0
  574. data/ext/alphatau/native/sdl/src/hidapi/windows/hidtest.vcproj +196 -0
  575. data/ext/alphatau/native/sdl/src/joystick/SDL_gamecontroller.c +2066 -0
  576. data/ext/alphatau/native/sdl/src/joystick/SDL_gamecontrollerdb.h +583 -0
  577. data/ext/alphatau/native/sdl/src/joystick/SDL_joystick.c +1547 -0
  578. data/ext/alphatau/native/sdl/src/joystick/SDL_joystick_c.h +94 -0
  579. data/ext/alphatau/native/sdl/src/joystick/SDL_sysjoystick.h +153 -0
  580. data/ext/alphatau/native/sdl/src/joystick/android/SDL_sysjoystick.c +703 -0
  581. data/ext/alphatau/native/sdl/src/joystick/android/SDL_sysjoystick_c.h +59 -0
  582. data/ext/alphatau/native/sdl/src/joystick/bsd/SDL_sysjoystick.c +701 -0
  583. data/ext/alphatau/native/sdl/src/joystick/controller_type.h +457 -0
  584. data/ext/alphatau/native/sdl/src/joystick/darwin/SDL_sysjoystick.c +1012 -0
  585. data/ext/alphatau/native/sdl/src/joystick/darwin/SDL_sysjoystick_c.h +79 -0
  586. data/ext/alphatau/native/sdl/src/joystick/dummy/SDL_sysjoystick.c +113 -0
  587. data/ext/alphatau/native/sdl/src/joystick/emscripten/SDL_sysjoystick.c +406 -0
  588. data/ext/alphatau/native/sdl/src/joystick/emscripten/SDL_sysjoystick_c.h +52 -0
  589. data/ext/alphatau/native/sdl/src/joystick/haiku/SDL_haikujoystick.cc +272 -0
  590. data/ext/alphatau/native/sdl/src/joystick/hidapi/SDL_hidapi_ps4.c +545 -0
  591. data/ext/alphatau/native/sdl/src/joystick/hidapi/SDL_hidapi_switch.c +905 -0
  592. data/ext/alphatau/native/sdl/src/joystick/hidapi/SDL_hidapi_xbox360.c +461 -0
  593. data/ext/alphatau/native/sdl/src/joystick/hidapi/SDL_hidapi_xboxone.c +318 -0
  594. data/ext/alphatau/native/sdl/src/joystick/hidapi/SDL_hidapijoystick.c +1021 -0
  595. data/ext/alphatau/native/sdl/src/joystick/hidapi/SDL_hidapijoystick_c.h +72 -0
  596. data/ext/alphatau/native/sdl/src/joystick/iphoneos/SDL_sysjoystick.m +727 -0
  597. data/ext/alphatau/native/sdl/src/joystick/iphoneos/SDL_sysjoystick_c.h +57 -0
  598. data/ext/alphatau/native/sdl/src/joystick/linux/SDL_sysjoystick.c +1116 -0
  599. data/ext/alphatau/native/sdl/src/joystick/linux/SDL_sysjoystick_c.h +64 -0
  600. data/ext/alphatau/native/sdl/src/joystick/psp/SDL_sysjoystick.c +264 -0
  601. data/ext/alphatau/native/sdl/src/joystick/sort_controllers.py +78 -0
  602. data/ext/alphatau/native/sdl/src/joystick/steam/SDL_steamcontroller.c +52 -0
  603. data/ext/alphatau/native/sdl/src/joystick/steam/SDL_steamcontroller.h +33 -0
  604. data/ext/alphatau/native/sdl/src/joystick/windows/SDL_dinputjoystick.c +1155 -0
  605. data/ext/alphatau/native/sdl/src/joystick/windows/SDL_dinputjoystick_c.h +31 -0
  606. data/ext/alphatau/native/sdl/src/joystick/windows/SDL_mmjoystick.c +452 -0
  607. data/ext/alphatau/native/sdl/src/joystick/windows/SDL_windowsjoystick.c +558 -0
  608. data/ext/alphatau/native/sdl/src/joystick/windows/SDL_windowsjoystick_c.h +95 -0
  609. data/ext/alphatau/native/sdl/src/joystick/windows/SDL_xinputjoystick.c +558 -0
  610. data/ext/alphatau/native/sdl/src/joystick/windows/SDL_xinputjoystick_c.h +34 -0
  611. data/ext/alphatau/native/sdl/src/libm/e_atan2.c +134 -0
  612. data/ext/alphatau/native/sdl/src/libm/e_exp.c +187 -0
  613. data/ext/alphatau/native/sdl/src/libm/e_fmod.c +144 -0
  614. data/ext/alphatau/native/sdl/src/libm/e_log.c +152 -0
  615. data/ext/alphatau/native/sdl/src/libm/e_log10.c +106 -0
  616. data/ext/alphatau/native/sdl/src/libm/e_pow.c +343 -0
  617. data/ext/alphatau/native/sdl/src/libm/e_rem_pio2.c +161 -0
  618. data/ext/alphatau/native/sdl/src/libm/e_sqrt.c +457 -0
  619. data/ext/alphatau/native/sdl/src/libm/k_cos.c +82 -0
  620. data/ext/alphatau/native/sdl/src/libm/k_rem_pio2.c +317 -0
  621. data/ext/alphatau/native/sdl/src/libm/k_sin.c +65 -0
  622. data/ext/alphatau/native/sdl/src/libm/k_tan.c +118 -0
  623. data/ext/alphatau/native/sdl/src/libm/math_libm.h +41 -0
  624. data/ext/alphatau/native/sdl/src/libm/math_private.h +227 -0
  625. data/ext/alphatau/native/sdl/src/libm/s_atan.c +114 -0
  626. data/ext/alphatau/native/sdl/src/libm/s_copysign.c +29 -0
  627. data/ext/alphatau/native/sdl/src/libm/s_cos.c +73 -0
  628. data/ext/alphatau/native/sdl/src/libm/s_fabs.c +29 -0
  629. data/ext/alphatau/native/sdl/src/libm/s_floor.c +71 -0
  630. data/ext/alphatau/native/sdl/src/libm/s_scalbn.c +69 -0
  631. data/ext/alphatau/native/sdl/src/libm/s_sin.c +73 -0
  632. data/ext/alphatau/native/sdl/src/libm/s_tan.c +67 -0
  633. data/ext/alphatau/native/sdl/src/loadso/dlopen/SDL_sysloadso.c +88 -0
  634. data/ext/alphatau/native/sdl/src/loadso/dummy/SDL_sysloadso.c +54 -0
  635. data/ext/alphatau/native/sdl/src/loadso/windows/SDL_sysloadso.c +80 -0
  636. data/ext/alphatau/native/sdl/src/main/android/SDL_android_main.c +7 -0
  637. data/ext/alphatau/native/sdl/src/main/dummy/SDL_dummy_main.c +28 -0
  638. data/ext/alphatau/native/sdl/src/main/haiku/SDL_BApp.h +399 -0
  639. data/ext/alphatau/native/sdl/src/main/haiku/SDL_BeApp.cc +157 -0
  640. data/ext/alphatau/native/sdl/src/main/haiku/SDL_BeApp.h +38 -0
  641. data/ext/alphatau/native/sdl/src/main/nacl/SDL_nacl_main.c +93 -0
  642. data/ext/alphatau/native/sdl/src/main/psp/SDL_psp_main.c +70 -0
  643. data/ext/alphatau/native/sdl/src/main/windows/SDL_windows_main.c +207 -0
  644. data/ext/alphatau/native/sdl/src/main/windows/version.rc +38 -0
  645. data/ext/alphatau/native/sdl/src/main/winrt/SDL2-WinRTResource_BlankCursor.cur +0 -0
  646. data/ext/alphatau/native/sdl/src/main/winrt/SDL2-WinRTResources.rc +3 -0
  647. data/ext/alphatau/native/sdl/src/main/winrt/SDL_winrt_main_NonXAML.cpp +54 -0
  648. data/ext/alphatau/native/sdl/src/power/SDL_power.c +116 -0
  649. data/ext/alphatau/native/sdl/src/power/SDL_syspower.h +47 -0
  650. data/ext/alphatau/native/sdl/src/power/android/SDL_syspower.c +64 -0
  651. data/ext/alphatau/native/sdl/src/power/emscripten/SDL_syspower.c +62 -0
  652. data/ext/alphatau/native/sdl/src/power/haiku/SDL_syspower.c +128 -0
  653. data/ext/alphatau/native/sdl/src/power/linux/SDL_syspower.c +642 -0
  654. data/ext/alphatau/native/sdl/src/power/macosx/SDL_syspower.c +192 -0
  655. data/ext/alphatau/native/sdl/src/power/psp/SDL_syspower.c +68 -0
  656. data/ext/alphatau/native/sdl/src/power/uikit/SDL_syspower.h +32 -0
  657. data/ext/alphatau/native/sdl/src/power/uikit/SDL_syspower.m +113 -0
  658. data/ext/alphatau/native/sdl/src/power/windows/SDL_syspower.c +76 -0
  659. data/ext/alphatau/native/sdl/src/power/winrt/SDL_syspower.cpp +44 -0
  660. data/ext/alphatau/native/sdl/src/render/SDL_d3dmath.c +136 -0
  661. data/ext/alphatau/native/sdl/src/render/SDL_d3dmath.h +72 -0
  662. data/ext/alphatau/native/sdl/src/render/SDL_render.c +2292 -0
  663. data/ext/alphatau/native/sdl/src/render/SDL_sysrender.h +214 -0
  664. data/ext/alphatau/native/sdl/src/render/SDL_yuv_sw.c +414 -0
  665. data/ext/alphatau/native/sdl/src/render/SDL_yuv_sw_c.h +67 -0
  666. data/ext/alphatau/native/sdl/src/render/direct3d/SDL_render_d3d.c +1813 -0
  667. data/ext/alphatau/native/sdl/src/render/direct3d/SDL_shaders_d3d.c +274 -0
  668. data/ext/alphatau/native/sdl/src/render/direct3d/SDL_shaders_d3d.h +34 -0
  669. data/ext/alphatau/native/sdl/src/render/direct3d11/SDL_render_d3d11.c +2559 -0
  670. data/ext/alphatau/native/sdl/src/render/direct3d11/SDL_render_winrt.cpp +116 -0
  671. data/ext/alphatau/native/sdl/src/render/direct3d11/SDL_render_winrt.h +40 -0
  672. data/ext/alphatau/native/sdl/src/render/direct3d11/SDL_shaders_d3d11.c +1957 -0
  673. data/ext/alphatau/native/sdl/src/render/direct3d11/SDL_shaders_d3d11.h +43 -0
  674. data/ext/alphatau/native/sdl/src/render/metal/SDL_render_metal.m +1428 -0
  675. data/ext/alphatau/native/sdl/src/render/metal/SDL_shaders_metal.metal +109 -0
  676. data/ext/alphatau/native/sdl/src/render/metal/SDL_shaders_metal_ios.h +1899 -0
  677. data/ext/alphatau/native/sdl/src/render/metal/SDL_shaders_metal_osx.h +1903 -0
  678. data/ext/alphatau/native/sdl/src/render/metal/build-metal-shaders.sh +18 -0
  679. data/ext/alphatau/native/sdl/src/render/opengl/SDL_glfuncs.h +478 -0
  680. data/ext/alphatau/native/sdl/src/render/opengl/SDL_render_gl.c +1678 -0
  681. data/ext/alphatau/native/sdl/src/render/opengl/SDL_shaders_gl.c +524 -0
  682. data/ext/alphatau/native/sdl/src/render/opengl/SDL_shaders_gl.h +47 -0
  683. data/ext/alphatau/native/sdl/src/render/opengles/SDL_glesfuncs.h +65 -0
  684. data/ext/alphatau/native/sdl/src/render/opengles/SDL_render_gles.c +1278 -0
  685. data/ext/alphatau/native/sdl/src/render/opengles2/SDL_gles2funcs.h +80 -0
  686. data/ext/alphatau/native/sdl/src/render/opengles2/SDL_render_gles2.c +2256 -0
  687. data/ext/alphatau/native/sdl/src/render/opengles2/SDL_shaders_gles2.c +569 -0
  688. data/ext/alphatau/native/sdl/src/render/opengles2/SDL_shaders_gles2.h +70 -0
  689. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/Makefile +41 -0
  690. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/convert_gl2_h_into_gles2_stubcall_overs_c.sno +181 -0
  691. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/convert_gl2_h_into_gles2_stubcall_overs_h.sno +116 -0
  692. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/convert_gl2_h_into_gles2funcs_h.sno +82 -0
  693. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/convert_gles2funcs_into_gles2_define_overs_h.sno +42 -0
  694. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/gl2.h +686 -0
  695. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/readme.txt +70 -0
  696. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/testgles2.c +725 -0
  697. data/ext/alphatau/native/sdl/src/render/opengles2/build_code_with_snobol/triangle.c +147 -0
  698. data/ext/alphatau/native/sdl/src/render/psp/SDL_render_psp.c +1016 -0
  699. data/ext/alphatau/native/sdl/src/render/software/SDL_blendfillrect.c +336 -0
  700. data/ext/alphatau/native/sdl/src/render/software/SDL_blendfillrect.h +27 -0
  701. data/ext/alphatau/native/sdl/src/render/software/SDL_blendline.c +777 -0
  702. data/ext/alphatau/native/sdl/src/render/software/SDL_blendline.h +27 -0
  703. data/ext/alphatau/native/sdl/src/render/software/SDL_blendpoint.c +341 -0
  704. data/ext/alphatau/native/sdl/src/render/software/SDL_blendpoint.h +27 -0
  705. data/ext/alphatau/native/sdl/src/render/software/SDL_draw.h +576 -0
  706. data/ext/alphatau/native/sdl/src/render/software/SDL_drawline.c +209 -0
  707. data/ext/alphatau/native/sdl/src/render/software/SDL_drawline.h +27 -0
  708. data/ext/alphatau/native/sdl/src/render/software/SDL_drawpoint.c +114 -0
  709. data/ext/alphatau/native/sdl/src/render/software/SDL_drawpoint.h +27 -0
  710. data/ext/alphatau/native/sdl/src/render/software/SDL_render_sw.c +882 -0
  711. data/ext/alphatau/native/sdl/src/render/software/SDL_render_sw_c.h +24 -0
  712. data/ext/alphatau/native/sdl/src/render/software/SDL_rotate.c +530 -0
  713. data/ext/alphatau/native/sdl/src/render/software/SDL_rotate.h +28 -0
  714. data/ext/alphatau/native/sdl/src/sensor/SDL_sensor.c +546 -0
  715. data/ext/alphatau/native/sdl/src/sensor/SDL_sensor_c.h +38 -0
  716. data/ext/alphatau/native/sdl/src/sensor/SDL_syssensor.h +99 -0
  717. data/ext/alphatau/native/sdl/src/sensor/android/SDL_androidsensor.c +211 -0
  718. data/ext/alphatau/native/sdl/src/sensor/android/SDL_androidsensor.h +31 -0
  719. data/ext/alphatau/native/sdl/src/sensor/coremotion/SDL_coremotionsensor.h +30 -0
  720. data/ext/alphatau/native/sdl/src/sensor/coremotion/SDL_coremotionsensor.m +234 -0
  721. data/ext/alphatau/native/sdl/src/sensor/dummy/SDL_dummysensor.c +110 -0
  722. data/ext/alphatau/native/sdl/src/sensor/dummy/SDL_dummysensor.h +23 -0
  723. data/ext/alphatau/native/sdl/src/stdlib/SDL_getenv.c +315 -0
  724. data/ext/alphatau/native/sdl/src/stdlib/SDL_iconv.c +934 -0
  725. data/ext/alphatau/native/sdl/src/stdlib/SDL_malloc.c +5376 -0
  726. data/ext/alphatau/native/sdl/src/stdlib/SDL_qsort.c +534 -0
  727. data/ext/alphatau/native/sdl/src/stdlib/SDL_stdlib.c +1155 -0
  728. data/ext/alphatau/native/sdl/src/stdlib/SDL_string.c +1737 -0
  729. data/ext/alphatau/native/sdl/src/test/SDL_test_assert.c +152 -0
  730. data/ext/alphatau/native/sdl/src/test/SDL_test_common.c +1826 -0
  731. data/ext/alphatau/native/sdl/src/test/SDL_test_compare.c +117 -0
  732. data/ext/alphatau/native/sdl/src/test/SDL_test_crc32.c +166 -0
  733. data/ext/alphatau/native/sdl/src/test/SDL_test_font.c +3250 -0
  734. data/ext/alphatau/native/sdl/src/test/SDL_test_fuzzer.c +534 -0
  735. data/ext/alphatau/native/sdl/src/test/SDL_test_harness.c +683 -0
  736. data/ext/alphatau/native/sdl/src/test/SDL_test_imageBlit.c +1559 -0
  737. data/ext/alphatau/native/sdl/src/test/SDL_test_imageBlitBlend.c +2845 -0
  738. data/ext/alphatau/native/sdl/src/test/SDL_test_imageFace.c +247 -0
  739. data/ext/alphatau/native/sdl/src/test/SDL_test_imagePrimitives.c +514 -0
  740. data/ext/alphatau/native/sdl/src/test/SDL_test_imagePrimitivesBlend.c +696 -0
  741. data/ext/alphatau/native/sdl/src/test/SDL_test_log.c +118 -0
  742. data/ext/alphatau/native/sdl/src/test/SDL_test_md5.c +338 -0
  743. data/ext/alphatau/native/sdl/src/test/SDL_test_memory.c +274 -0
  744. data/ext/alphatau/native/sdl/src/test/SDL_test_random.c +96 -0
  745. data/ext/alphatau/native/sdl/src/thread/SDL_systhread.h +70 -0
  746. data/ext/alphatau/native/sdl/src/thread/SDL_thread.c +503 -0
  747. data/ext/alphatau/native/sdl/src/thread/SDL_thread_c.h +95 -0
  748. data/ext/alphatau/native/sdl/src/thread/generic/SDL_syscond.c +220 -0
  749. data/ext/alphatau/native/sdl/src/thread/generic/SDL_sysmutex.c +165 -0
  750. data/ext/alphatau/native/sdl/src/thread/generic/SDL_sysmutex_c.h +22 -0
  751. data/ext/alphatau/native/sdl/src/thread/generic/SDL_syssem.c +217 -0
  752. data/ext/alphatau/native/sdl/src/thread/generic/SDL_systhread.c +71 -0
  753. data/ext/alphatau/native/sdl/src/thread/generic/SDL_systhread_c.h +26 -0
  754. data/ext/alphatau/native/sdl/src/thread/generic/SDL_systls.c +38 -0
  755. data/ext/alphatau/native/sdl/src/thread/psp/SDL_syscond.c +224 -0
  756. data/ext/alphatau/native/sdl/src/thread/psp/SDL_sysmutex.c +136 -0
  757. data/ext/alphatau/native/sdl/src/thread/psp/SDL_sysmutex_c.h +22 -0
  758. data/ext/alphatau/native/sdl/src/thread/psp/SDL_syssem.c +161 -0
  759. data/ext/alphatau/native/sdl/src/thread/psp/SDL_systhread.c +114 -0
  760. data/ext/alphatau/native/sdl/src/thread/psp/SDL_systhread_c.h +24 -0
  761. data/ext/alphatau/native/sdl/src/thread/pthread/SDL_syscond.c +158 -0
  762. data/ext/alphatau/native/sdl/src/thread/pthread/SDL_sysmutex.c +195 -0
  763. data/ext/alphatau/native/sdl/src/thread/pthread/SDL_sysmutex_c.h +32 -0
  764. data/ext/alphatau/native/sdl/src/thread/pthread/SDL_syssem.c +209 -0
  765. data/ext/alphatau/native/sdl/src/thread/pthread/SDL_systhread.c +324 -0
  766. data/ext/alphatau/native/sdl/src/thread/pthread/SDL_systhread_c.h +27 -0
  767. data/ext/alphatau/native/sdl/src/thread/pthread/SDL_systls.c +70 -0
  768. data/ext/alphatau/native/sdl/src/thread/stdcpp/SDL_syscond.cpp +164 -0
  769. data/ext/alphatau/native/sdl/src/thread/stdcpp/SDL_sysmutex.cpp +111 -0
  770. data/ext/alphatau/native/sdl/src/thread/stdcpp/SDL_sysmutex_c.h +30 -0
  771. data/ext/alphatau/native/sdl/src/thread/stdcpp/SDL_systhread.cpp +168 -0
  772. data/ext/alphatau/native/sdl/src/thread/stdcpp/SDL_systhread_c.h +26 -0
  773. data/ext/alphatau/native/sdl/src/thread/windows/SDL_sysmutex.c +110 -0
  774. data/ext/alphatau/native/sdl/src/thread/windows/SDL_syssem.c +152 -0
  775. data/ext/alphatau/native/sdl/src/thread/windows/SDL_systhread.c +260 -0
  776. data/ext/alphatau/native/sdl/src/thread/windows/SDL_systhread_c.h +32 -0
  777. data/ext/alphatau/native/sdl/src/thread/windows/SDL_systls.c +72 -0
  778. data/ext/alphatau/native/sdl/src/timer/SDL_timer.c +373 -0
  779. data/ext/alphatau/native/sdl/src/timer/SDL_timer_c.h +34 -0
  780. data/ext/alphatau/native/sdl/src/timer/dummy/SDL_systimer.c +75 -0
  781. data/ext/alphatau/native/sdl/src/timer/haiku/SDL_systimer.c +80 -0
  782. data/ext/alphatau/native/sdl/src/timer/psp/SDL_systimer.c +91 -0
  783. data/ext/alphatau/native/sdl/src/timer/unix/SDL_systimer.c +232 -0
  784. data/ext/alphatau/native/sdl/src/timer/windows/SDL_systimer.c +200 -0
  785. data/ext/alphatau/native/sdl/src/video/SDL_RLEaccel.c +1581 -0
  786. data/ext/alphatau/native/sdl/src/video/SDL_RLEaccel_c.h +31 -0
  787. data/ext/alphatau/native/sdl/src/video/SDL_blit.c +296 -0
  788. data/ext/alphatau/native/sdl/src/video/SDL_blit.h +553 -0
  789. data/ext/alphatau/native/sdl/src/video/SDL_blit_0.c +483 -0
  790. data/ext/alphatau/native/sdl/src/video/SDL_blit_1.c +552 -0
  791. data/ext/alphatau/native/sdl/src/video/SDL_blit_A.c +1388 -0
  792. data/ext/alphatau/native/sdl/src/video/SDL_blit_N.c +2647 -0
  793. data/ext/alphatau/native/sdl/src/video/SDL_blit_auto.c +7419 -0
  794. data/ext/alphatau/native/sdl/src/video/SDL_blit_auto.h +30 -0
  795. data/ext/alphatau/native/sdl/src/video/SDL_blit_copy.c +162 -0
  796. data/ext/alphatau/native/sdl/src/video/SDL_blit_copy.h +24 -0
  797. data/ext/alphatau/native/sdl/src/video/SDL_blit_slow.c +164 -0
  798. data/ext/alphatau/native/sdl/src/video/SDL_blit_slow.h +25 -0
  799. data/ext/alphatau/native/sdl/src/video/SDL_bmp.c +702 -0
  800. data/ext/alphatau/native/sdl/src/video/SDL_clipboard.c +90 -0
  801. data/ext/alphatau/native/sdl/src/video/SDL_egl.c +899 -0
  802. data/ext/alphatau/native/sdl/src/video/SDL_egl_c.h +149 -0
  803. data/ext/alphatau/native/sdl/src/video/SDL_fillrect.c +343 -0
  804. data/ext/alphatau/native/sdl/src/video/SDL_pixels.c +1125 -0
  805. data/ext/alphatau/native/sdl/src/video/SDL_pixels_c.h +40 -0
  806. data/ext/alphatau/native/sdl/src/video/SDL_rect.c +531 -0
  807. data/ext/alphatau/native/sdl/src/video/SDL_rect_c.h +25 -0
  808. data/ext/alphatau/native/sdl/src/video/SDL_shape.c +309 -0
  809. data/ext/alphatau/native/sdl/src/video/SDL_shape_internals.h +69 -0
  810. data/ext/alphatau/native/sdl/src/video/SDL_stretch.c +353 -0
  811. data/ext/alphatau/native/sdl/src/video/SDL_surface.c +1232 -0
  812. data/ext/alphatau/native/sdl/src/video/SDL_sysvideo.h +467 -0
  813. data/ext/alphatau/native/sdl/src/video/SDL_video.c +4160 -0
  814. data/ext/alphatau/native/sdl/src/video/SDL_vulkan_internal.h +91 -0
  815. data/ext/alphatau/native/sdl/src/video/SDL_vulkan_utils.c +172 -0
  816. data/ext/alphatau/native/sdl/src/video/SDL_yuv.c +1834 -0
  817. data/ext/alphatau/native/sdl/src/video/SDL_yuv_c.h +30 -0
  818. data/ext/alphatau/native/sdl/src/video/android/SDL_androidclipboard.c +48 -0
  819. data/ext/alphatau/native/sdl/src/video/android/SDL_androidclipboard.h +32 -0
  820. data/ext/alphatau/native/sdl/src/video/android/SDL_androidevents.c +123 -0
  821. data/ext/alphatau/native/sdl/src/video/android/SDL_androidevents.h +27 -0
  822. data/ext/alphatau/native/sdl/src/video/android/SDL_androidgl.c +62 -0
  823. data/ext/alphatau/native/sdl/src/video/android/SDL_androidgl.h +34 -0
  824. data/ext/alphatau/native/sdl/src/video/android/SDL_androidkeyboard.c +391 -0
  825. data/ext/alphatau/native/sdl/src/video/android/SDL_androidkeyboard.h +36 -0
  826. data/ext/alphatau/native/sdl/src/video/android/SDL_androidmessagebox.c +37 -0
  827. data/ext/alphatau/native/sdl/src/video/android/SDL_androidmessagebox.h +29 -0
  828. data/ext/alphatau/native/sdl/src/video/android/SDL_androidmouse.c +266 -0
  829. data/ext/alphatau/native/sdl/src/video/android/SDL_androidmouse.h +33 -0
  830. data/ext/alphatau/native/sdl/src/video/android/SDL_androidtouch.c +151 -0
  831. data/ext/alphatau/native/sdl/src/video/android/SDL_androidtouch.h +29 -0
  832. data/ext/alphatau/native/sdl/src/video/android/SDL_androidvideo.c +259 -0
  833. data/ext/alphatau/native/sdl/src/video/android/SDL_androidvideo.h +51 -0
  834. data/ext/alphatau/native/sdl/src/video/android/SDL_androidvulkan.c +175 -0
  835. data/ext/alphatau/native/sdl/src/video/android/SDL_androidvulkan.h +52 -0
  836. data/ext/alphatau/native/sdl/src/video/android/SDL_androidwindow.c +175 -0
  837. data/ext/alphatau/native/sdl/src/video/android/SDL_androidwindow.h +45 -0
  838. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaclipboard.h +36 -0
  839. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaclipboard.m +103 -0
  840. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaevents.h +32 -0
  841. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaevents.m +483 -0
  842. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoakeyboard.h +36 -0
  843. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoakeyboard.m +720 -0
  844. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamessagebox.h +29 -0
  845. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamessagebox.m +145 -0
  846. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoametalview.h +63 -0
  847. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoametalview.m +134 -0
  848. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamodes.h +46 -0
  849. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamodes.m +490 -0
  850. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamouse.h +52 -0
  851. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamouse.m +477 -0
  852. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamousetap.h +34 -0
  853. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoamousetap.m +279 -0
  854. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaopengl.h +68 -0
  855. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaopengl.m +428 -0
  856. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaopengles.h +49 -0
  857. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoaopengles.m +132 -0
  858. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoashape.h +45 -0
  859. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoashape.m +113 -0
  860. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoavideo.h +118 -0
  861. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoavideo.m +254 -0
  862. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoavulkan.h +55 -0
  863. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoavulkan.m +231 -0
  864. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoawindow.h +155 -0
  865. data/ext/alphatau/native/sdl/src/video/cocoa/SDL_cocoawindow.m +1885 -0
  866. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_WM.c +413 -0
  867. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_WM.h +56 -0
  868. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_dyn.c +117 -0
  869. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_dyn.h +41 -0
  870. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_events.c +748 -0
  871. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_events.h +34 -0
  872. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_modes.c +414 -0
  873. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_modes.h +59 -0
  874. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_mouse.c +389 -0
  875. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_mouse.h +44 -0
  876. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_opengl.c +332 -0
  877. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_opengl.h +64 -0
  878. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_render.c +1335 -0
  879. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_render.h +25 -0
  880. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_shape.c +131 -0
  881. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_shape.h +38 -0
  882. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_video.c +418 -0
  883. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_video.h +170 -0
  884. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_window.c +565 -0
  885. data/ext/alphatau/native/sdl/src/video/directfb/SDL_DirectFB_window.h +82 -0
  886. data/ext/alphatau/native/sdl/src/video/dummy/SDL_nullevents.c +41 -0
  887. data/ext/alphatau/native/sdl/src/video/dummy/SDL_nullevents_c.h +27 -0
  888. data/ext/alphatau/native/sdl/src/video/dummy/SDL_nullframebuffer.c +89 -0
  889. data/ext/alphatau/native/sdl/src/video/dummy/SDL_nullframebuffer_c.h +27 -0
  890. data/ext/alphatau/native/sdl/src/video/dummy/SDL_nullvideo.c +144 -0
  891. data/ext/alphatau/native/sdl/src/video/dummy/SDL_nullvideo.h +30 -0
  892. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenevents.c +716 -0
  893. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenevents.h +40 -0
  894. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenframebuffer.c +178 -0
  895. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenframebuffer.h +32 -0
  896. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenmouse.c +275 -0
  897. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenmouse.h +42 -0
  898. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenopengles.c +119 -0
  899. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenopengles.h +49 -0
  900. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenvideo.c +354 -0
  901. data/ext/alphatau/native/sdl/src/video/emscripten/SDL_emscriptenvideo.h +58 -0
  902. data/ext/alphatau/native/sdl/src/video/haiku/SDL_BWin.h +679 -0
  903. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bclipboard.cc +95 -0
  904. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bclipboard.h +33 -0
  905. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bevents.cc +41 -0
  906. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bevents.h +39 -0
  907. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bframebuffer.cc +259 -0
  908. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bframebuffer.h +47 -0
  909. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bkeyboard.cc +190 -0
  910. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bkeyboard.h +44 -0
  911. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bmodes.cc +333 -0
  912. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bmodes.h +48 -0
  913. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bopengl.cc +176 -0
  914. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bopengl.h +55 -0
  915. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bvideo.cc +178 -0
  916. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bvideo.h +44 -0
  917. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bwindow.cc +233 -0
  918. data/ext/alphatau/native/sdl/src/video/haiku/SDL_bwindow.h +55 -0
  919. data/ext/alphatau/native/sdl/src/video/khronos/EGL/egl.h +303 -0
  920. data/ext/alphatau/native/sdl/src/video/khronos/EGL/eglext.h +1241 -0
  921. data/ext/alphatau/native/sdl/src/video/khronos/EGL/eglplatform.h +132 -0
  922. data/ext/alphatau/native/sdl/src/video/khronos/GLES2/gl2.h +675 -0
  923. data/ext/alphatau/native/sdl/src/video/khronos/GLES2/gl2ext.h +3505 -0
  924. data/ext/alphatau/native/sdl/src/video/khronos/GLES2/gl2platform.h +38 -0
  925. data/ext/alphatau/native/sdl/src/video/khronos/KHR/khrplatform.h +284 -0
  926. data/ext/alphatau/native/sdl/src/video/khronos/vulkan/vk_platform.h +120 -0
  927. data/ext/alphatau/native/sdl/src/video/khronos/vulkan/vulkan.h +6458 -0
  928. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmdyn.c +171 -0
  929. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmdyn.h +53 -0
  930. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmevents.c +42 -0
  931. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmevents.h +31 -0
  932. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmmouse.c +501 -0
  933. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmmouse.h +45 -0
  934. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmopengles.c +189 -0
  935. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmopengles.h +48 -0
  936. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmsym.h +99 -0
  937. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmvideo.c +664 -0
  938. data/ext/alphatau/native/sdl/src/video/kmsdrm/SDL_kmsdrmvideo.h +124 -0
  939. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirdyn.c +170 -0
  940. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirdyn.h +53 -0
  941. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirevents.c +321 -0
  942. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirevents.h +37 -0
  943. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirframebuffer.c +134 -0
  944. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirframebuffer.h +47 -0
  945. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirmouse.c +292 -0
  946. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirmouse.h +37 -0
  947. data/ext/alphatau/native/sdl/src/video/mir/SDL_miropengl.c +78 -0
  948. data/ext/alphatau/native/sdl/src/video/mir/SDL_miropengl.h +53 -0
  949. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirsym.h +143 -0
  950. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirvideo.c +423 -0
  951. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirvideo.h +49 -0
  952. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirvulkan.c +176 -0
  953. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirvulkan.h +52 -0
  954. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirwindow.c +374 -0
  955. data/ext/alphatau/native/sdl/src/video/mir/SDL_mirwindow.h +93 -0
  956. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclevents.c +438 -0
  957. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclevents_c.h +30 -0
  958. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclglue.c +24 -0
  959. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclopengles.c +174 -0
  960. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclopengles.h +38 -0
  961. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclvideo.c +183 -0
  962. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclvideo.h +67 -0
  963. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclwindow.c +79 -0
  964. data/ext/alphatau/native/sdl/src/video/nacl/SDL_naclwindow.h +32 -0
  965. data/ext/alphatau/native/sdl/src/video/pandora/SDL_pandora.c +838 -0
  966. data/ext/alphatau/native/sdl/src/video/pandora/SDL_pandora.h +101 -0
  967. data/ext/alphatau/native/sdl/src/video/pandora/SDL_pandora_events.c +38 -0
  968. data/ext/alphatau/native/sdl/src/video/pandora/SDL_pandora_events.h +25 -0
  969. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspevents.c +290 -0
  970. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspevents_c.h +31 -0
  971. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspgl.c +210 -0
  972. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspgl_c.h +54 -0
  973. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspmouse.c +41 -0
  974. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspmouse_c.h +24 -0
  975. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspvideo.c +333 -0
  976. data/ext/alphatau/native/sdl/src/video/psp/SDL_pspvideo.h +102 -0
  977. data/ext/alphatau/native/sdl/src/video/qnx/gl.c +285 -0
  978. data/ext/alphatau/native/sdl/src/video/qnx/keyboard.c +133 -0
  979. data/ext/alphatau/native/sdl/src/video/qnx/sdl_qnx.h +48 -0
  980. data/ext/alphatau/native/sdl/src/video/qnx/video.c +364 -0
  981. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpievents.c +45 -0
  982. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpievents_c.h +31 -0
  983. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpimouse.c +386 -0
  984. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpimouse.h +43 -0
  985. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpiopengles.c +71 -0
  986. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpiopengles.h +49 -0
  987. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpivideo.c +442 -0
  988. data/ext/alphatau/native/sdl/src/video/raspberry/SDL_rpivideo.h +104 -0
  989. data/ext/alphatau/native/sdl/src/video/sdlgenblit.pl +535 -0
  990. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitappdelegate.h +47 -0
  991. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitappdelegate.m +516 -0
  992. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitclipboard.h +35 -0
  993. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitclipboard.m +111 -0
  994. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitevents.h +30 -0
  995. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitevents.m +73 -0
  996. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitmessagebox.h +31 -0
  997. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitmessagebox.m +208 -0
  998. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitmetalview.h +58 -0
  999. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitmetalview.m +131 -0
  1000. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitmodes.h +54 -0
  1001. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitmodes.m +378 -0
  1002. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitopengles.h +40 -0
  1003. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitopengles.m +250 -0
  1004. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitopenglview.h +60 -0
  1005. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitopenglview.m +384 -0
  1006. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitvideo.h +46 -0
  1007. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitvideo.m +249 -0
  1008. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitview.h +41 -0
  1009. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitview.m +328 -0
  1010. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitviewcontroller.h +91 -0
  1011. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitviewcontroller.m +532 -0
  1012. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitvulkan.h +54 -0
  1013. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitvulkan.m +222 -0
  1014. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitwindow.h +56 -0
  1015. data/ext/alphatau/native/sdl/src/video/uikit/SDL_uikitwindow.m +465 -0
  1016. data/ext/alphatau/native/sdl/src/video/uikit/keyinfotable.h +174 -0
  1017. data/ext/alphatau/native/sdl/src/video/vivante/SDL_vivanteopengles.c +47 -0
  1018. data/ext/alphatau/native/sdl/src/video/vivante/SDL_vivanteopengles.h +48 -0
  1019. data/ext/alphatau/native/sdl/src/video/vivante/SDL_vivanteplatform.c +54 -0
  1020. data/ext/alphatau/native/sdl/src/video/vivante/SDL_vivanteplatform.h +47 -0
  1021. data/ext/alphatau/native/sdl/src/video/vivante/SDL_vivantevideo.c +409 -0
  1022. data/ext/alphatau/native/sdl/src/video/vivante/SDL_vivantevideo.h +91 -0
  1023. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandclipboard.c +123 -0
  1024. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandclipboard.h +32 -0
  1025. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylanddatamanager.c +468 -0
  1026. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylanddatamanager.h +103 -0
  1027. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylanddyn.c +178 -0
  1028. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylanddyn.h +107 -0
  1029. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandevents.c +1134 -0
  1030. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandevents_c.h +51 -0
  1031. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandmouse.c +396 -0
  1032. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandmouse.h +31 -0
  1033. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandopengles.c +93 -0
  1034. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandopengles.h +49 -0
  1035. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandsym.h +127 -0
  1036. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandtouch.c +265 -0
  1037. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandtouch.h +352 -0
  1038. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandvideo.c +517 -0
  1039. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandvideo.h +85 -0
  1040. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandvulkan.c +176 -0
  1041. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandvulkan.h +52 -0
  1042. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandwindow.c +684 -0
  1043. data/ext/alphatau/native/sdl/src/video/wayland/SDL_waylandwindow.h +88 -0
  1044. data/ext/alphatau/native/sdl/src/video/windows/SDL_msctf.h +242 -0
  1045. data/ext/alphatau/native/sdl/src/video/windows/SDL_vkeys.h +76 -0
  1046. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsclipboard.c +160 -0
  1047. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsclipboard.h +36 -0
  1048. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsevents.c +1229 -0
  1049. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsevents.h +36 -0
  1050. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsframebuffer.c +127 -0
  1051. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsframebuffer.h +27 -0
  1052. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowskeyboard.c +1579 -0
  1053. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowskeyboard.h +40 -0
  1054. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsmessagebox.c +905 -0
  1055. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsmessagebox.h +29 -0
  1056. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsmodes.c +407 -0
  1057. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsmodes.h +47 -0
  1058. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsmouse.c +322 -0
  1059. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsmouse.h +33 -0
  1060. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsopengl.c +895 -0
  1061. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsopengl.h +142 -0
  1062. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsopengles.c +131 -0
  1063. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsopengles.h +49 -0
  1064. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsshape.c +110 -0
  1065. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsshape.h +40 -0
  1066. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowstaskdialog.h +156 -0
  1067. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsvideo.c +442 -0
  1068. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsvideo.h +199 -0
  1069. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsvulkan.c +176 -0
  1070. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowsvulkan.h +52 -0
  1071. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowswindow.c +992 -0
  1072. data/ext/alphatau/native/sdl/src/video/windows/SDL_windowswindow.h +86 -0
  1073. data/ext/alphatau/native/sdl/src/video/windows/wmmsg.h +1052 -0
  1074. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtevents.cpp +154 -0
  1075. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtevents_c.h +82 -0
  1076. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtgamebar.cpp +196 -0
  1077. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtgamebar_cpp.h +35 -0
  1078. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtkeyboard.cpp +430 -0
  1079. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtmessagebox.cpp +112 -0
  1080. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtmessagebox.h +29 -0
  1081. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtmouse.cpp +224 -0
  1082. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtmouse_c.h +40 -0
  1083. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtopengles.cpp +203 -0
  1084. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtopengles.h +70 -0
  1085. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtpointerinput.cpp +415 -0
  1086. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtvideo.cpp +842 -0
  1087. data/ext/alphatau/native/sdl/src/video/winrt/SDL_winrtvideo_cpp.h +106 -0
  1088. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11clipboard.c +199 -0
  1089. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11clipboard.h +33 -0
  1090. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11dyn.c +212 -0
  1091. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11dyn.h +111 -0
  1092. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11events.c +1500 -0
  1093. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11events.h +31 -0
  1094. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11framebuffer.c +257 -0
  1095. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11framebuffer.h +31 -0
  1096. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11keyboard.c +543 -0
  1097. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11keyboard.h +36 -0
  1098. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11messagebox.c +853 -0
  1099. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11messagebox.h +28 -0
  1100. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11modes.c +1112 -0
  1101. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11modes.h +85 -0
  1102. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11mouse.c +448 -0
  1103. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11mouse.h +31 -0
  1104. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11opengl.c +946 -0
  1105. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11opengl.h +84 -0
  1106. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11opengles.c +109 -0
  1107. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11opengles.h +56 -0
  1108. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11shape.c +115 -0
  1109. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11shape.h +39 -0
  1110. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11sym.h +337 -0
  1111. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11touch.c +54 -0
  1112. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11touch.h +32 -0
  1113. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11video.c +497 -0
  1114. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11video.h +156 -0
  1115. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11vulkan.c +243 -0
  1116. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11vulkan.h +48 -0
  1117. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11window.c +1619 -0
  1118. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11window.h +111 -0
  1119. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11xinput2.c +313 -0
  1120. data/ext/alphatau/native/sdl/src/video/x11/SDL_x11xinput2.h +42 -0
  1121. data/ext/alphatau/native/sdl/src/video/x11/edid-parse.c +754 -0
  1122. data/ext/alphatau/native/sdl/src/video/x11/edid.h +167 -0
  1123. data/ext/alphatau/native/sdl/src/video/x11/imKStoUCS.c +350 -0
  1124. data/ext/alphatau/native/sdl/src/video/x11/imKStoUCS.h +32 -0
  1125. data/ext/alphatau/native/sdl/src/video/yuv2rgb/LICENSE +27 -0
  1126. data/ext/alphatau/native/sdl/src/video/yuv2rgb/README.md +63 -0
  1127. data/ext/alphatau/native/sdl/src/video/yuv2rgb/yuv_rgb.c +687 -0
  1128. data/ext/alphatau/native/sdl/src/video/yuv2rgb/yuv_rgb.h +381 -0
  1129. data/ext/alphatau/native/sdl/src/video/yuv2rgb/yuv_rgb_sse_func.h +498 -0
  1130. data/ext/alphatau/native/sdl/src/video/yuv2rgb/yuv_rgb_std_func.h +228 -0
  1131. data/ext/alphatau/native/sdl/test/CMakeLists.txt +122 -0
  1132. data/ext/alphatau/native/sdl/test/COPYING +8 -0
  1133. data/ext/alphatau/native/sdl/test/Makefile.in +328 -0
  1134. data/ext/alphatau/native/sdl/test/README +47 -0
  1135. data/ext/alphatau/native/sdl/test/acinclude.m4 +359 -0
  1136. data/ext/alphatau/native/sdl/test/aclocal.m4 +359 -0
  1137. data/ext/alphatau/native/sdl/test/autogen.sh +12 -0
  1138. data/ext/alphatau/native/sdl/test/axis.bmp +0 -0
  1139. data/ext/alphatau/native/sdl/test/button.bmp +0 -0
  1140. data/ext/alphatau/native/sdl/test/checkkeys.c +248 -0
  1141. data/ext/alphatau/native/sdl/test/configure +5124 -0
  1142. data/ext/alphatau/native/sdl/test/configure.in +191 -0
  1143. data/ext/alphatau/native/sdl/test/controllermap.bmp +0 -0
  1144. data/ext/alphatau/native/sdl/test/controllermap.c +781 -0
  1145. data/ext/alphatau/native/sdl/test/emscripten/joystick-pre.js +25 -0
  1146. data/ext/alphatau/native/sdl/test/gcc-fat.sh +110 -0
  1147. data/ext/alphatau/native/sdl/test/icon.bmp +0 -0
  1148. data/ext/alphatau/native/sdl/test/loopwave.c +179 -0
  1149. data/ext/alphatau/native/sdl/test/loopwavequeue.c +149 -0
  1150. data/ext/alphatau/native/sdl/test/moose.dat +0 -0
  1151. data/ext/alphatau/native/sdl/test/nacl/Makefile +63 -0
  1152. data/ext/alphatau/native/sdl/test/nacl/background.js +40 -0
  1153. data/ext/alphatau/native/sdl/test/nacl/common.js +474 -0
  1154. data/ext/alphatau/native/sdl/test/nacl/index.html +21 -0
  1155. data/ext/alphatau/native/sdl/test/nacl/manifest.json +22 -0
  1156. data/ext/alphatau/native/sdl/test/picture.xbm +14 -0
  1157. data/ext/alphatau/native/sdl/test/relative_mode.markdown +58 -0
  1158. data/ext/alphatau/native/sdl/test/sample.bmp +0 -0
  1159. data/ext/alphatau/native/sdl/test/sample.wav +0 -0
  1160. data/ext/alphatau/native/sdl/test/shapes/p01_shape24.bmp +0 -0
  1161. data/ext/alphatau/native/sdl/test/shapes/p01_shape32alpha.bmp +0 -0
  1162. data/ext/alphatau/native/sdl/test/shapes/p01_shape8.bmp +0 -0
  1163. data/ext/alphatau/native/sdl/test/shapes/p02_shape24.bmp +0 -0
  1164. data/ext/alphatau/native/sdl/test/shapes/p02_shape32alpha.bmp +0 -0
  1165. data/ext/alphatau/native/sdl/test/shapes/p02_shape8.bmp +0 -0
  1166. data/ext/alphatau/native/sdl/test/shapes/p03_shape24.bmp +0 -0
  1167. data/ext/alphatau/native/sdl/test/shapes/p03_shape8.bmp +0 -0
  1168. data/ext/alphatau/native/sdl/test/shapes/p04_shape1.bmp +0 -0
  1169. data/ext/alphatau/native/sdl/test/shapes/p04_shape24.bmp +0 -0
  1170. data/ext/alphatau/native/sdl/test/shapes/p04_shape32alpha.bmp +0 -0
  1171. data/ext/alphatau/native/sdl/test/shapes/p04_shape8.bmp +0 -0
  1172. data/ext/alphatau/native/sdl/test/shapes/p05_shape8.bmp +0 -0
  1173. data/ext/alphatau/native/sdl/test/shapes/p06_shape1alpha.bmp +0 -0
  1174. data/ext/alphatau/native/sdl/test/shapes/p06_shape24.bmp +0 -0
  1175. data/ext/alphatau/native/sdl/test/shapes/p06_shape32alpha.bmp +0 -0
  1176. data/ext/alphatau/native/sdl/test/shapes/p06_shape8.bmp +0 -0
  1177. data/ext/alphatau/native/sdl/test/shapes/p07_shape24.bmp +0 -0
  1178. data/ext/alphatau/native/sdl/test/shapes/p07_shape32alpha.bmp +0 -0
  1179. data/ext/alphatau/native/sdl/test/shapes/p07_shape8.bmp +0 -0
  1180. data/ext/alphatau/native/sdl/test/shapes/p08_shape24.bmp +0 -0
  1181. data/ext/alphatau/native/sdl/test/shapes/p08_shape32alpha.bmp +0 -0
  1182. data/ext/alphatau/native/sdl/test/shapes/p08_shape8.bmp +0 -0
  1183. data/ext/alphatau/native/sdl/test/shapes/p09_shape24.bmp +0 -0
  1184. data/ext/alphatau/native/sdl/test/shapes/p09_shape32alpha.bmp +0 -0
  1185. data/ext/alphatau/native/sdl/test/shapes/p09_shape8.bmp +0 -0
  1186. data/ext/alphatau/native/sdl/test/shapes/p10_shape1.bmp +0 -0
  1187. data/ext/alphatau/native/sdl/test/shapes/p10_shape24.bmp +0 -0
  1188. data/ext/alphatau/native/sdl/test/shapes/p10_shape32alpha.bmp +0 -0
  1189. data/ext/alphatau/native/sdl/test/shapes/p10_shape8.bmp +0 -0
  1190. data/ext/alphatau/native/sdl/test/shapes/p11_shape24.bmp +0 -0
  1191. data/ext/alphatau/native/sdl/test/shapes/p11_shape32alpha.bmp +0 -0
  1192. data/ext/alphatau/native/sdl/test/shapes/p11_shape8.bmp +0 -0
  1193. data/ext/alphatau/native/sdl/test/shapes/p12_shape24.bmp +0 -0
  1194. data/ext/alphatau/native/sdl/test/shapes/p12_shape8.bmp +0 -0
  1195. data/ext/alphatau/native/sdl/test/shapes/p13_shape24.bmp +0 -0
  1196. data/ext/alphatau/native/sdl/test/shapes/p13_shape32alpha.bmp +0 -0
  1197. data/ext/alphatau/native/sdl/test/shapes/p13_shape8.bmp +0 -0
  1198. data/ext/alphatau/native/sdl/test/shapes/p14_shape24.bmp +0 -0
  1199. data/ext/alphatau/native/sdl/test/shapes/p14_shape8.bmp +0 -0
  1200. data/ext/alphatau/native/sdl/test/shapes/p15_shape24.bmp +0 -0
  1201. data/ext/alphatau/native/sdl/test/shapes/p15_shape32alpha.bmp +0 -0
  1202. data/ext/alphatau/native/sdl/test/shapes/p15_shape8.bmp +0 -0
  1203. data/ext/alphatau/native/sdl/test/shapes/p16_shape1.bmp +0 -0
  1204. data/ext/alphatau/native/sdl/test/shapes/p16_shape24.bmp +0 -0
  1205. data/ext/alphatau/native/sdl/test/shapes/p16_shape8.bmp +0 -0
  1206. data/ext/alphatau/native/sdl/test/shapes/trollface_24.bmp +0 -0
  1207. data/ext/alphatau/native/sdl/test/shapes/trollface_32alpha.bmp +0 -0
  1208. data/ext/alphatau/native/sdl/test/testatomic.c +727 -0
  1209. data/ext/alphatau/native/sdl/test/testaudiocapture.c +165 -0
  1210. data/ext/alphatau/native/sdl/test/testaudiohotplug.c +203 -0
  1211. data/ext/alphatau/native/sdl/test/testaudioinfo.c +74 -0
  1212. data/ext/alphatau/native/sdl/test/testautomation.c +124 -0
  1213. data/ext/alphatau/native/sdl/test/testautomation_audio.c +1038 -0
  1214. data/ext/alphatau/native/sdl/test/testautomation_clipboard.c +184 -0
  1215. data/ext/alphatau/native/sdl/test/testautomation_events.c +201 -0
  1216. data/ext/alphatau/native/sdl/test/testautomation_hints.c +168 -0
  1217. data/ext/alphatau/native/sdl/test/testautomation_keyboard.c +713 -0
  1218. data/ext/alphatau/native/sdl/test/testautomation_main.c +157 -0
  1219. data/ext/alphatau/native/sdl/test/testautomation_mouse.c +606 -0
  1220. data/ext/alphatau/native/sdl/test/testautomation_pixels.c +529 -0
  1221. data/ext/alphatau/native/sdl/test/testautomation_platform.c +584 -0
  1222. data/ext/alphatau/native/sdl/test/testautomation_rect.c +1696 -0
  1223. data/ext/alphatau/native/sdl/test/testautomation_render.c +1099 -0
  1224. data/ext/alphatau/native/sdl/test/testautomation_rwops.c +748 -0
  1225. data/ext/alphatau/native/sdl/test/testautomation_sdltest.c +1319 -0
  1226. data/ext/alphatau/native/sdl/test/testautomation_stdlib.c +319 -0
  1227. data/ext/alphatau/native/sdl/test/testautomation_suites.h +54 -0
  1228. data/ext/alphatau/native/sdl/test/testautomation_surface.c +647 -0
  1229. data/ext/alphatau/native/sdl/test/testautomation_syswm.c +61 -0
  1230. data/ext/alphatau/native/sdl/test/testautomation_timer.c +201 -0
  1231. data/ext/alphatau/native/sdl/test/testautomation_video.c +1811 -0
  1232. data/ext/alphatau/native/sdl/test/testbounds.c +40 -0
  1233. data/ext/alphatau/native/sdl/test/testcustomcursor.c +259 -0
  1234. data/ext/alphatau/native/sdl/test/testdisplayinfo.c +96 -0
  1235. data/ext/alphatau/native/sdl/test/testdraw2.c +305 -0
  1236. data/ext/alphatau/native/sdl/test/testdrawchessboard.c +147 -0
  1237. data/ext/alphatau/native/sdl/test/testdropfile.c +98 -0
  1238. data/ext/alphatau/native/sdl/test/testerror.c +76 -0
  1239. data/ext/alphatau/native/sdl/test/testfile.c +283 -0
  1240. data/ext/alphatau/native/sdl/test/testfilesystem.c +60 -0
  1241. data/ext/alphatau/native/sdl/test/testgamecontroller.c +375 -0
  1242. data/ext/alphatau/native/sdl/test/testgesture.c +309 -0
  1243. data/ext/alphatau/native/sdl/test/testgl2.c +416 -0
  1244. data/ext/alphatau/native/sdl/test/testgles.c +355 -0
  1245. data/ext/alphatau/native/sdl/test/testgles2.c +732 -0
  1246. data/ext/alphatau/native/sdl/test/testhaptic.c +369 -0
  1247. data/ext/alphatau/native/sdl/test/testhittesting.c +134 -0
  1248. data/ext/alphatau/native/sdl/test/testhotplug.c +162 -0
  1249. data/ext/alphatau/native/sdl/test/testiconv.c +88 -0
  1250. data/ext/alphatau/native/sdl/test/testime.c +801 -0
  1251. data/ext/alphatau/native/sdl/test/testintersections.c +363 -0
  1252. data/ext/alphatau/native/sdl/test/testjoystick.c +387 -0
  1253. data/ext/alphatau/native/sdl/test/testkeys.c +40 -0
  1254. data/ext/alphatau/native/sdl/test/testloadso.c +82 -0
  1255. data/ext/alphatau/native/sdl/test/testlock.c +128 -0
  1256. data/ext/alphatau/native/sdl/test/testmessage.c +193 -0
  1257. data/ext/alphatau/native/sdl/test/testmultiaudio.c +199 -0
  1258. data/ext/alphatau/native/sdl/test/testnative.c +237 -0
  1259. data/ext/alphatau/native/sdl/test/testnative.h +46 -0
  1260. data/ext/alphatau/native/sdl/test/testnativecocoa.m +51 -0
  1261. data/ext/alphatau/native/sdl/test/testnativew32.c +86 -0
  1262. data/ext/alphatau/native/sdl/test/testnativex11.c +53 -0
  1263. data/ext/alphatau/native/sdl/test/testoverlay2.c +408 -0
  1264. data/ext/alphatau/native/sdl/test/testplatform.c +442 -0
  1265. data/ext/alphatau/native/sdl/test/testpower.c +80 -0
  1266. data/ext/alphatau/native/sdl/test/testqsort.c +108 -0
  1267. data/ext/alphatau/native/sdl/test/testrelative.c +126 -0
  1268. data/ext/alphatau/native/sdl/test/testrendercopyex.c +233 -0
  1269. data/ext/alphatau/native/sdl/test/testrendertarget.c +335 -0
  1270. data/ext/alphatau/native/sdl/test/testresample.c +120 -0
  1271. data/ext/alphatau/native/sdl/test/testrumble.c +153 -0
  1272. data/ext/alphatau/native/sdl/test/testscale.c +224 -0
  1273. data/ext/alphatau/native/sdl/test/testsem.c +130 -0
  1274. data/ext/alphatau/native/sdl/test/testsensor.c +117 -0
  1275. data/ext/alphatau/native/sdl/test/testshader.c +500 -0
  1276. data/ext/alphatau/native/sdl/test/testshape.c +200 -0
  1277. data/ext/alphatau/native/sdl/test/testsprite2.c +409 -0
  1278. data/ext/alphatau/native/sdl/test/testspriteminimal.c +194 -0
  1279. data/ext/alphatau/native/sdl/test/teststreaming.c +190 -0
  1280. data/ext/alphatau/native/sdl/test/testthread.c +130 -0
  1281. data/ext/alphatau/native/sdl/test/testtimer.c +122 -0
  1282. data/ext/alphatau/native/sdl/test/testver.c +47 -0
  1283. data/ext/alphatau/native/sdl/test/testviewport.c +217 -0
  1284. data/ext/alphatau/native/sdl/test/testvulkan.c +1201 -0
  1285. data/ext/alphatau/native/sdl/test/testwm2.c +174 -0
  1286. data/ext/alphatau/native/sdl/test/testyuv.bmp +0 -0
  1287. data/ext/alphatau/native/sdl/test/testyuv.c +455 -0
  1288. data/ext/alphatau/native/sdl/test/testyuv_cvt.c +300 -0
  1289. data/ext/alphatau/native/sdl/test/testyuv_cvt.h +16 -0
  1290. data/ext/alphatau/native/sdl/test/torturethread.c +113 -0
  1291. data/ext/alphatau/native/sdl/test/utf8.txt +287 -0
  1292. data/ext/alphatau/native/sdl/visualtest/COPYING.txt +18 -0
  1293. data/ext/alphatau/native/sdl/visualtest/Makefile.in +37 -0
  1294. data/ext/alphatau/native/sdl/visualtest/README.txt +214 -0
  1295. data/ext/alphatau/native/sdl/visualtest/acinclude.m4 +359 -0
  1296. data/ext/alphatau/native/sdl/visualtest/autogen.sh +12 -0
  1297. data/ext/alphatau/native/sdl/visualtest/compile +1 -0
  1298. data/ext/alphatau/native/sdl/visualtest/config.h +23 -0
  1299. data/ext/alphatau/native/sdl/visualtest/config.h.in +22 -0
  1300. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_blendmodes/testsprite2_blendmodes.actions +3 -0
  1301. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_blendmodes/testsprite2_blendmodes.config +5 -0
  1302. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_blendmodes/testsprite2_blendmodes.parameters +5 -0
  1303. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_crashtest/testsprite2_crashtest.actions +1 -0
  1304. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_crashtest/testsprite2_crashtest.config +5 -0
  1305. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_crashtest/testsprite2_crashtest.parameters +24 -0
  1306. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_fullscreen/testsprite2_fullscreen.actions +3 -0
  1307. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_fullscreen/testsprite2_fullscreen.config +5 -0
  1308. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_fullscreen/testsprite2_fullscreen.parameters +5 -0
  1309. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_geometry/testsprite2_geometry.actions +3 -0
  1310. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_geometry/testsprite2_geometry.config +5 -0
  1311. data/ext/alphatau/native/sdl/visualtest/configs/testsprite2_geometry/testsprite2_geometry.parameters +5 -0
  1312. data/ext/alphatau/native/sdl/visualtest/configure +5203 -0
  1313. data/ext/alphatau/native/sdl/visualtest/configure.in +166 -0
  1314. data/ext/alphatau/native/sdl/visualtest/depcomp +1 -0
  1315. data/ext/alphatau/native/sdl/visualtest/docs/Doxyfile +1936 -0
  1316. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_action_configparser.h +149 -0
  1317. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_exhaustive_variator.h +64 -0
  1318. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_harness_argparser.h +75 -0
  1319. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_mischelper.h +28 -0
  1320. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_parsehelper.h +46 -0
  1321. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_process.h +112 -0
  1322. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_random_variator.h +61 -0
  1323. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_rwhelper.h +87 -0
  1324. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_screenshot.h +52 -0
  1325. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_sut_configparser.h +105 -0
  1326. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_variator_common.h +122 -0
  1327. data/ext/alphatau/native/sdl/visualtest/include/SDL_visualtest_variators.h +66 -0
  1328. data/ext/alphatau/native/sdl/visualtest/install-sh +1 -0
  1329. data/ext/alphatau/native/sdl/visualtest/launch_harness.cmd +2 -0
  1330. data/ext/alphatau/native/sdl/visualtest/launch_harness.sh +6 -0
  1331. data/ext/alphatau/native/sdl/visualtest/missing +1 -0
  1332. data/ext/alphatau/native/sdl/visualtest/src/action_configparser.c +396 -0
  1333. data/ext/alphatau/native/sdl/visualtest/src/harness_argparser.c +358 -0
  1334. data/ext/alphatau/native/sdl/visualtest/src/linux/linux_process.c +199 -0
  1335. data/ext/alphatau/native/sdl/visualtest/src/mischelper.c +28 -0
  1336. data/ext/alphatau/native/sdl/visualtest/src/parsehelper.c +231 -0
  1337. data/ext/alphatau/native/sdl/visualtest/src/rwhelper.c +131 -0
  1338. data/ext/alphatau/native/sdl/visualtest/src/screenshot.c +136 -0
  1339. data/ext/alphatau/native/sdl/visualtest/src/sut_configparser.c +232 -0
  1340. data/ext/alphatau/native/sdl/visualtest/src/testharness.c +533 -0
  1341. data/ext/alphatau/native/sdl/visualtest/src/variator_common.c +225 -0
  1342. data/ext/alphatau/native/sdl/visualtest/src/variator_exhaustive.c +132 -0
  1343. data/ext/alphatau/native/sdl/visualtest/src/variator_random.c +111 -0
  1344. data/ext/alphatau/native/sdl/visualtest/src/variators.c +93 -0
  1345. data/ext/alphatau/native/sdl/visualtest/src/windows/windows_process.c +284 -0
  1346. data/ext/alphatau/native/sdl/visualtest/src/windows/windows_screenshot.c +349 -0
  1347. data/ext/alphatau/native/sdl/visualtest/stamp-h1 +1 -0
  1348. data/ext/alphatau/native/sdl/visualtest/testsprite2_sample.actions +3 -0
  1349. data/ext/alphatau/native/sdl/visualtest/testsprite2_sample.config +6 -0
  1350. data/ext/alphatau/native/sdl/visualtest/testsprite2_sample.parameters +29 -0
  1351. data/ext/alphatau/native/sdl/visualtest/unittest/testquit.actions +1 -0
  1352. data/ext/alphatau/native/sdl/visualtest/unittest/testquit.c +101 -0
  1353. data/ext/alphatau/native/sdl/visualtest/unittest/testquit.config +5 -0
  1354. data/ext/alphatau/native/sdl/visualtest/unittest/testquit.parameters +3 -0
  1355. data/ext/alphatau/native/sdl/wayland-protocols/pointer-constraints-unstable-v1.xml +339 -0
  1356. data/ext/alphatau/native/sdl/wayland-protocols/relative-pointer-unstable-v1.xml +136 -0
  1357. data/ext/alphatau/native/sdl/wayland-protocols/wayland.xml +2746 -0
  1358. data/ext/alphatau/native/sdl/wayland-protocols/xdg-shell-unstable-v6.xml +1044 -0
  1359. data/ext/alphatau/native/sdl/wayland-protocols/xdg-shell.xml +1120 -0
  1360. data/lib/alphatau.rb +12 -0
  1361. data/lib/alphatau/version.rb +3 -0
  1362. metadata +1465 -0
@@ -0,0 +1,4236 @@
1
+ dnl Process this file with autoconf to produce a configure script.
2
+ AC_INIT(README.txt)
3
+ AC_CONFIG_HEADER(include/SDL_config.h)
4
+ AC_CONFIG_AUX_DIR(build-scripts)
5
+ AC_CONFIG_MACRO_DIR([acinclude])
6
+
7
+ dnl Save the CFLAGS to see whether they were passed in or generated
8
+ orig_CFLAGS="$CFLAGS"
9
+
10
+ dnl Set various version strings - taken gratefully from the GTk sources
11
+ #
12
+ # Making releases:
13
+ # Edit include/SDL_version.h and change the version, then:
14
+ # SDL_MICRO_VERSION += 1;
15
+ # SDL_INTERFACE_AGE += 1;
16
+ # SDL_BINARY_AGE += 1;
17
+ # if any functions have been added, set SDL_INTERFACE_AGE to 0.
18
+ # if backwards compatibility has been broken,
19
+ # set SDL_BINARY_AGE and SDL_INTERFACE_AGE to 0.
20
+ #
21
+ SDL_MAJOR_VERSION=2
22
+ SDL_MINOR_VERSION=0
23
+ SDL_MICRO_VERSION=8
24
+ SDL_INTERFACE_AGE=0
25
+ SDL_BINARY_AGE=8
26
+ SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION
27
+
28
+ AC_SUBST(SDL_MAJOR_VERSION)
29
+ AC_SUBST(SDL_MINOR_VERSION)
30
+ AC_SUBST(SDL_MICRO_VERSION)
31
+ AC_SUBST(SDL_INTERFACE_AGE)
32
+ AC_SUBST(SDL_BINARY_AGE)
33
+ AC_SUBST(SDL_VERSION)
34
+
35
+ # libtool versioning
36
+ LT_INIT([win32-dll])
37
+
38
+ LT_RELEASE=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION
39
+ LT_CURRENT=`expr $SDL_MICRO_VERSION - $SDL_INTERFACE_AGE`
40
+ LT_REVISION=$SDL_INTERFACE_AGE
41
+ LT_AGE=`expr $SDL_BINARY_AGE - $SDL_INTERFACE_AGE`
42
+ m4_pattern_allow([^LT_])
43
+
44
+ AC_SUBST(LT_RELEASE)
45
+ AC_SUBST(LT_CURRENT)
46
+ AC_SUBST(LT_REVISION)
47
+ AC_SUBST(LT_AGE)
48
+
49
+ dnl Detect the canonical build and host environments
50
+ dnl AC_CANONICAL_HOST
51
+
52
+ dnl Check for tools
53
+ AC_PROG_LIBTOOL
54
+ AC_PROG_CC
55
+ AC_PROG_CXX
56
+ AC_PROG_INSTALL
57
+ AC_PROG_MAKE_SET
58
+ AC_CHECK_TOOL(WINDRES, [windres], [:])
59
+
60
+ dnl Make sure that srcdir is a full pathname
61
+ case "$host" in
62
+ *-*-mingw32*)
63
+ # Except on msys, where make can't handle full pathnames (bug 1972)
64
+ ;;
65
+ *)
66
+ srcdir=`cd $srcdir && pwd`
67
+ ;;
68
+ esac
69
+
70
+ dnl Set up the compiler and linker flags
71
+ INCLUDE="-I$srcdir/include -idirafter $srcdir/src/video/khronos"
72
+ if test x$srcdir != x.; then
73
+ INCLUDE="-Iinclude $INCLUDE"
74
+ elif test -d .hg; then
75
+ AC_MSG_ERROR([
76
+ *** When building from Mercurial you should configure and build in a
77
+ separate directory so you don't clobber SDL_config.h, SDL_revision.h
78
+ ])
79
+ fi
80
+ BASE_CFLAGS=""
81
+ BASE_LDFLAGS=""
82
+ case "$host" in
83
+ *-*-cygwin*)
84
+ # We build SDL on cygwin without the UNIX emulation layer
85
+ save_CFLAGS="$CFLAGS"
86
+ have_no_cygwin=no
87
+ AC_MSG_CHECKING(for GCC -mno-cygwin option)
88
+ CFLAGS="$save_CFLAGS -mno-cygwin"
89
+
90
+ AC_TRY_COMPILE([
91
+ ],[
92
+ ],[
93
+ have_no_cygwin=yes
94
+ ])
95
+ AC_MSG_RESULT($have_no_cygwin)
96
+ CFLAGS="$save_CFLAGS"
97
+
98
+ if test x$have_no_cygwin = xyes; then
99
+ BASE_CFLAGS="-mno-cygwin"
100
+ BASE_LDFLAGS="-mno-cygwin"
101
+ fi
102
+ BASE_CFLAGS="$BASE_CFLAGS -I/usr/include/mingw"
103
+ ;;
104
+ esac
105
+ # Uncomment the following line if you want to force SDL and applications
106
+ # built with it to be compiled for a particular architecture.
107
+ #AX_GCC_ARCHFLAG([no], [BASE_CFLAGS="$BASE_CFLAGS $ax_cv_gcc_archflag]")
108
+ BUILD_CFLAGS="$CFLAGS $CPPFLAGS -DUSING_GENERATED_CONFIG_H"
109
+ # The default optimization for SDL is -O3 (Bug #31)
110
+ if test "x$orig_CFLAGS" = x; then
111
+ BUILD_CFLAGS=`echo $BUILD_CFLAGS | sed 's/-O2/-O3/'`
112
+ fi
113
+ EXTRA_CFLAGS="$INCLUDE $BASE_CFLAGS"
114
+ BUILD_LDFLAGS="$LDFLAGS"
115
+ EXTRA_LDFLAGS="$BASE_LDFLAGS"
116
+ ## These are common directories to find software packages
117
+ #for path in /usr/freeware /usr/pkg /usr/X11R6 /usr/local; do
118
+ # if test -d $path/include; then
119
+ # EXTRA_CFLAGS="$EXTRA_CFLAGS -I$path/include"
120
+ # fi
121
+ # if test -d $path/lib; then
122
+ # EXTRA_LDFLAGS="$EXTRA_LDFLAGS -L$path/lib"
123
+ # fi
124
+ #done
125
+ SDL_CFLAGS="$BASE_CFLAGS"
126
+ SDL_LIBS="-lSDL2"
127
+ if test "x$BASE_LDFLAGS" != x; then
128
+ SDL_LIBS="$SDL_LIBS $BASE_LDFLAGS"
129
+ fi
130
+ if test "x$EXTRA_CFLAGS" != x; then
131
+ CPPFLAGS="$CPPFLAGS $EXTRA_CFLAGS"
132
+ CFLAGS="$CFLAGS $EXTRA_CFLAGS"
133
+ fi
134
+ if test "x$EXTRA_LDFLAGS" != x; then
135
+ LDFLAGS="$LDFLAGS $EXTRA_LDFLAGS"
136
+ fi
137
+
138
+ dnl set this to use on systems that use lib64 instead of lib
139
+ base_libdir=`echo \${libdir} | sed 's/.*\/\(.*\)/\1/; q'`
140
+
141
+ dnl Function to find a library in the compiler search path
142
+ find_lib()
143
+ {
144
+ gcc_bin_path=[`$CC -print-search-dirs 2>/dev/null | fgrep programs: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
145
+ gcc_lib_path=[`$CC -print-search-dirs 2>/dev/null | fgrep libraries: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
146
+ env_lib_path=[`echo $LIBS $LDFLAGS $* | sed 's/-L[ ]*//g'`]
147
+ if test "$cross_compiling" = yes; then
148
+ host_lib_path=""
149
+ else
150
+ host_lib_path="/usr/$base_libdir /usr/local/$base_libdir"
151
+ fi
152
+ for path in $env_lib_path $gcc_bin_path $gcc_lib_path $host_lib_path; do
153
+ lib=[`ls -- $path/$1 2>/dev/null | sed -e '/\.so\..*\./d' -e 's,.*/,,' | sort | tail -1`]
154
+ if test x$lib != x; then
155
+ echo $lib
156
+ return
157
+ fi
158
+ done
159
+ }
160
+
161
+ dnl Check for compiler characteristics
162
+ AC_C_CONST
163
+ AC_C_INLINE
164
+ AC_C_VOLATILE
165
+
166
+ dnl See whether we want assertions for debugging/sanity checking SDL itself.
167
+ AC_ARG_ENABLE(assertions,
168
+ AC_HELP_STRING([--enable-assertions],
169
+ [Enable internal sanity checks (auto/disabled/release/enabled/paranoid) [[default=auto]]]),
170
+ , enable_assertions=auto)
171
+ case "$enable_assertions" in
172
+ auto) # Use optimization settings to determine assertion level
173
+ ;;
174
+ disabled)
175
+ AC_DEFINE(SDL_DEFAULT_ASSERT_LEVEL, 0, [ ])
176
+ ;;
177
+ release)
178
+ AC_DEFINE(SDL_DEFAULT_ASSERT_LEVEL, 1, [ ])
179
+ ;;
180
+ enabled)
181
+ AC_DEFINE(SDL_DEFAULT_ASSERT_LEVEL, 2, [ ])
182
+ ;;
183
+ paranoid)
184
+ AC_DEFINE(SDL_DEFAULT_ASSERT_LEVEL, 3, [ ])
185
+ ;;
186
+ *)
187
+ AC_MSG_ERROR([*** unknown assertion level. stop.])
188
+ ;;
189
+ esac
190
+
191
+ dnl See whether we can use gcc style dependency tracking
192
+ AC_ARG_ENABLE(dependency-tracking,
193
+ AC_HELP_STRING([--enable-dependency-tracking],
194
+ [Use gcc -MMD -MT dependency tracking [[default=yes]]]),
195
+ , enable_dependency_tracking=yes)
196
+ if test x$enable_dependency_tracking = xyes; then
197
+ have_gcc_mmd_mt=no
198
+ AC_MSG_CHECKING(for GCC -MMD -MT option)
199
+ AC_TRY_COMPILE([
200
+ #if !defined(__GNUC__) || __GNUC__ < 3
201
+ #error Dependency tracking requires GCC 3.0 or newer
202
+ #endif
203
+ ],[
204
+ ],[
205
+ have_gcc_mmd_mt=yes
206
+ ])
207
+ AC_MSG_RESULT($have_gcc_mmd_mt)
208
+
209
+ if test x$have_gcc_mmd_mt = xyes; then
210
+ DEPENDENCY_TRACKING_OPTIONS="-MMD -MT \$@"
211
+ fi
212
+ fi
213
+
214
+ AC_MSG_CHECKING(for linker option --no-undefined)
215
+ have_no_undefined=no
216
+ case "$host" in
217
+ dnl Skip this on platforms where it is just simply busted.
218
+ *-*-openbsd*)
219
+ ;;
220
+
221
+ *)
222
+ save_LDFLAGS="$LDFLAGS"
223
+ LDFLAGS="$LDFLAGS -Wl,--no-undefined"
224
+ AC_TRY_LINK([
225
+ ],[
226
+ ],[
227
+ have_no_undefined=yes
228
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,--no-undefined"
229
+ ])
230
+ LDFLAGS="$save_LDFLAGS"
231
+ ;;
232
+ esac
233
+ AC_MSG_RESULT($have_no_undefined)
234
+
235
+ dnl See whether we are allowed to use the system C library
236
+ AC_ARG_ENABLE(libc,
237
+ AC_HELP_STRING([--enable-libc], [Use the system C library [[default=yes]]]),
238
+ , enable_libc=yes)
239
+ if test x$enable_libc = xyes; then
240
+ AC_DEFINE(HAVE_LIBC, 1, [ ])
241
+
242
+ dnl Check for C library headers
243
+ AC_HEADER_STDC
244
+ 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)
245
+
246
+ dnl Check for typedefs, structures, etc.
247
+ AC_TYPE_SIZE_T
248
+
249
+ dnl Check for defines
250
+ AC_CHECK_DEFINE(M_PI, math.h)
251
+
252
+ dnl Checks for library functions.
253
+ case "$host" in
254
+ *-*-cygwin* | *-*-mingw32*)
255
+ ;;
256
+ *)
257
+ AC_FUNC_ALLOCA
258
+ ;;
259
+ esac
260
+
261
+ AC_FUNC_MEMCMP
262
+ if test x$ac_cv_func_memcmp_working = xyes; then
263
+ AC_DEFINE(HAVE_MEMCMP, 1, [ ])
264
+ fi
265
+ AC_FUNC_STRTOD
266
+ if test x$ac_cv_func_strtod = xyes; then
267
+ AC_DEFINE(HAVE_STRTOD, 1, [ ])
268
+ fi
269
+ AC_CHECK_FUNC(mprotect,
270
+ AC_TRY_COMPILE([
271
+ #include <sys/types.h>
272
+ #include <sys/mman.h>
273
+ ],[
274
+ ],[
275
+ AC_DEFINE(HAVE_MPROTECT, 1, [ ])
276
+ ]),
277
+ )
278
+ 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)
279
+
280
+ AC_CHECK_LIB(m, pow, [LIBS="$LIBS -lm"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm"])
281
+ AC_CHECK_FUNCS(acos acosf asin asinf atan atanf atan2 atan2f ceil ceilf copysign copysignf cos cosf exp expf fabs fabsf floor floorf fmod fmodf log logf log10 log10f pow powf scalbn scalbnf sin sinf sqrt sqrtf tan tanf)
282
+
283
+ AC_CHECK_LIB(iconv, iconv_open, [LIBS="$LIBS -liconv"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -liconv"])
284
+ AC_CHECK_FUNCS(iconv)
285
+
286
+ AC_CHECK_MEMBER(struct sigaction.sa_sigaction,[AC_DEFINE([HAVE_SA_SIGACTION], 1, [ ])], ,[#include <signal.h>])
287
+
288
+ dnl Check for additional non-standard headers
289
+ AC_CHECK_HEADERS(libunwind.h)
290
+ fi
291
+
292
+ dnl AC_CHECK_SIZEOF(void*)
293
+
294
+ dnl See whether we can use gcc atomic operations on this architecture
295
+ AC_ARG_ENABLE(gcc-atomics,
296
+ AC_HELP_STRING([--enable-gcc-atomics],
297
+ [Use gcc builtin atomics [[default=yes]]]),
298
+ , enable_gcc_atomics=yes)
299
+ if test x$enable_gcc_atomics = xyes; then
300
+ have_gcc_atomics=no
301
+ AC_MSG_CHECKING(for GCC builtin atomic operations)
302
+ AC_TRY_LINK([
303
+ ],[
304
+ int a;
305
+ void *x, *y, *z;
306
+ __sync_lock_test_and_set(&a, 4);
307
+ __sync_lock_test_and_set(&x, y);
308
+ __sync_fetch_and_add(&a, 1);
309
+ __sync_bool_compare_and_swap(&a, 5, 10);
310
+ __sync_bool_compare_and_swap(&x, y, z);
311
+ ],[
312
+ have_gcc_atomics=yes
313
+ ])
314
+ AC_MSG_RESULT($have_gcc_atomics)
315
+
316
+ if test x$have_gcc_atomics = xyes; then
317
+ AC_DEFINE(HAVE_GCC_ATOMICS, 1, [ ])
318
+ else
319
+ # See if we have the minimum operation needed for GCC atomics
320
+ AC_TRY_LINK([
321
+ ],[
322
+ int a;
323
+ __sync_lock_test_and_set(&a, 1);
324
+ __sync_lock_release(&a);
325
+ ],[
326
+ have_gcc_sync_lock_test_and_set=yes
327
+ ])
328
+ if test x$have_gcc_sync_lock_test_and_set = xyes; then
329
+ AC_DEFINE(HAVE_GCC_SYNC_LOCK_TEST_AND_SET, 1, [ ])
330
+ fi
331
+ fi
332
+ fi
333
+
334
+ # Standard C sources
335
+ SOURCES="$SOURCES $srcdir/src/*.c"
336
+ SOURCES="$SOURCES $srcdir/src/atomic/*.c"
337
+ SOURCES="$SOURCES $srcdir/src/audio/*.c"
338
+ SOURCES="$SOURCES $srcdir/src/cpuinfo/*.c"
339
+ SOURCES="$SOURCES $srcdir/src/dynapi/*.c"
340
+ SOURCES="$SOURCES $srcdir/src/events/*.c"
341
+ SOURCES="$SOURCES $srcdir/src/file/*.c"
342
+ SOURCES="$SOURCES $srcdir/src/haptic/*.c"
343
+ SOURCES="$SOURCES $srcdir/src/joystick/*.c"
344
+ SOURCES="$SOURCES $srcdir/src/libm/*.c"
345
+ SOURCES="$SOURCES $srcdir/src/power/*.c"
346
+ #SOURCES="$SOURCES $srcdir/src/filesystem/*.c"
347
+ SOURCES="$SOURCES $srcdir/src/render/*.c"
348
+ SOURCES="$SOURCES $srcdir/src/render/*/*.c"
349
+ SOURCES="$SOURCES $srcdir/src/sensor/*.c"
350
+ SOURCES="$SOURCES $srcdir/src/stdlib/*.c"
351
+ SOURCES="$SOURCES $srcdir/src/thread/*.c"
352
+ SOURCES="$SOURCES $srcdir/src/timer/*.c"
353
+ SOURCES="$SOURCES $srcdir/src/video/*.c"
354
+ SOURCES="$SOURCES $srcdir/src/video/yuv2rgb/*.c"
355
+
356
+ dnl Enable/disable various subsystems of the SDL library
357
+
358
+ AC_ARG_ENABLE(atomic,
359
+ AC_HELP_STRING([--enable-atomic], [Enable the atomic operations subsystem [[default=yes]]]),
360
+ , enable_atomic=yes)
361
+ if test x$enable_atomic != xyes; then
362
+ AC_DEFINE(SDL_ATOMIC_DISABLED, 1, [ ])
363
+ else
364
+ SUMMARY_modules="${SUMMARY_modules} atomic"
365
+ fi
366
+ AC_ARG_ENABLE(audio,
367
+ AC_HELP_STRING([--enable-audio], [Enable the audio subsystem [[default=yes]]]),
368
+ , enable_audio=yes)
369
+ if test x$enable_audio != xyes; then
370
+ AC_DEFINE(SDL_AUDIO_DISABLED, 1, [ ])
371
+ else
372
+ SUMMARY_modules="${SUMMARY_modules} audio"
373
+ fi
374
+ AC_ARG_ENABLE(video,
375
+ AC_HELP_STRING([--enable-video], [Enable the video subsystem [[default=yes]]]),
376
+ , enable_video=yes)
377
+ if test x$enable_video != xyes; then
378
+ AC_DEFINE(SDL_VIDEO_DISABLED, 1, [ ])
379
+ else
380
+ SUMMARY_modules="${SUMMARY_modules} video"
381
+ fi
382
+ AC_ARG_ENABLE(render,
383
+ AC_HELP_STRING([--enable-render], [Enable the render subsystem [[default=yes]]]),
384
+ , enable_render=yes)
385
+ if test x$enable_render != xyes; then
386
+ AC_DEFINE(SDL_RENDER_DISABLED, 1, [ ])
387
+ else
388
+ SUMMARY_modules="${SUMMARY_modules} render"
389
+ fi
390
+ AC_ARG_ENABLE(events,
391
+ AC_HELP_STRING([--enable-events], [Enable the events subsystem [[default=yes]]]),
392
+ , enable_events=yes)
393
+ if test x$enable_events != xyes; then
394
+ AC_DEFINE(SDL_EVENTS_DISABLED, 1, [ ])
395
+ else
396
+ SUMMARY_modules="${SUMMARY_modules} events"
397
+ fi
398
+ AC_ARG_ENABLE(joystick,
399
+ AC_HELP_STRING([--enable-joystick], [Enable the joystick subsystem [[default=yes]]]),
400
+ , enable_joystick=yes)
401
+ if test x$enable_joystick != xyes; then
402
+ AC_DEFINE(SDL_JOYSTICK_DISABLED, 1, [ ])
403
+ else
404
+ SUMMARY_modules="${SUMMARY_modules} joystick"
405
+ fi
406
+ AC_ARG_ENABLE(haptic,
407
+ AC_HELP_STRING([--enable-haptic], [Enable the haptic (force feedback) subsystem [[default=yes]]]),
408
+ , enable_haptic=yes)
409
+ if test x$enable_haptic != xyes; then
410
+ AC_DEFINE(SDL_HAPTIC_DISABLED, 1, [ ])
411
+ else
412
+ SUMMARY_modules="${SUMMARY_modules} haptic"
413
+ fi
414
+ AC_ARG_ENABLE(sensor,
415
+ AC_HELP_STRING([--enable-sensor], [Enable the sensor subsystem [[default=yes]]]),
416
+ , enable_sensor=yes)
417
+ if test x$enable_sensor != xyes; then
418
+ AC_DEFINE(SDL_SENSOR_DISABLED, 1, [ ])
419
+ else
420
+ SUMMARY_modules="${SUMMARY_modules} sensor"
421
+ fi
422
+ AC_ARG_ENABLE(power,
423
+ AC_HELP_STRING([--enable-power], [Enable the power subsystem [[default=yes]]]),
424
+ , enable_power=yes)
425
+ if test x$enable_power != xyes; then
426
+ AC_DEFINE(SDL_POWER_DISABLED, 1, [ ])
427
+ else
428
+ SUMMARY_modules="${SUMMARY_modules} power"
429
+ fi
430
+ AC_ARG_ENABLE(filesystem,
431
+ AC_HELP_STRING([--enable-filesystem], [Enable the filesystem subsystem [[default=yes]]]),
432
+ , enable_filesystem=yes)
433
+ if test x$enable_filesystem != xyes; then
434
+ AC_DEFINE(SDL_FILESYSTEM_DISABLED, 1, [ ])
435
+ else
436
+ SUMMARY_modules="${SUMMARY_modules} filesystem"
437
+ fi
438
+ AC_ARG_ENABLE(threads,
439
+ AC_HELP_STRING([--enable-threads], [Enable the threading subsystem [[default=yes]]]),
440
+ , enable_threads=yes)
441
+ if test x$enable_threads != xyes; then
442
+ AC_DEFINE(SDL_THREADS_DISABLED, 1, [ ])
443
+ else
444
+ SUMMARY_modules="${SUMMARY_modules} threads"
445
+ fi
446
+ AC_ARG_ENABLE(timers,
447
+ AC_HELP_STRING([--enable-timers], [Enable the timer subsystem [[default=yes]]]),
448
+ , enable_timers=yes)
449
+ if test x$enable_timers != xyes; then
450
+ AC_DEFINE(SDL_TIMERS_DISABLED, 1, [ ])
451
+ else
452
+ SUMMARY_modules="${SUMMARY_modules} timers"
453
+ fi
454
+ AC_ARG_ENABLE(file,
455
+ AC_HELP_STRING([--enable-file], [Enable the file subsystem [[default=yes]]]),
456
+ , enable_file=yes)
457
+ if test x$enable_file != xyes; then
458
+ AC_DEFINE(SDL_FILE_DISABLED, 1, [ ])
459
+ else
460
+ SUMMARY_modules="${SUMMARY_modules} file"
461
+ fi
462
+ AC_ARG_ENABLE(loadso,
463
+ AC_HELP_STRING([--enable-loadso], [Enable the shared object loading subsystem [[default=yes]]]),
464
+ , enable_loadso=yes)
465
+ if test x$enable_loadso != xyes; then
466
+ AC_DEFINE(SDL_LOADSO_DISABLED, 1, [ ])
467
+ else
468
+ SUMMARY_modules="${SUMMARY_modules} loadso"
469
+ fi
470
+ AC_ARG_ENABLE(cpuinfo,
471
+ AC_HELP_STRING([--enable-cpuinfo], [Enable the cpuinfo subsystem [[default=yes]]]),
472
+ , enable_cpuinfo=yes)
473
+ if test x$enable_cpuinfo != xyes; then
474
+ AC_DEFINE(SDL_CPUINFO_DISABLED, 1, [ ])
475
+ else
476
+ SUMMARY_modules="${SUMMARY_modules} cpuinfo"
477
+ fi
478
+ AC_ARG_ENABLE(assembly,
479
+ AC_HELP_STRING([--enable-assembly], [Enable assembly routines [[default=yes]]]),
480
+ , enable_assembly=yes)
481
+ if test x$enable_assembly = xyes; then
482
+ SUMMARY_modules="${SUMMARY_modules} assembly"
483
+
484
+ AC_DEFINE(SDL_ASSEMBLY_ROUTINES, 1, [ ])
485
+
486
+ # Make sure that we don't generate floating point code that would
487
+ # cause illegal instruction exceptions on older processors
488
+ case "$host" in
489
+ *-*-darwin*)
490
+ # Don't need to worry about Apple hardware, it's all SSE capable
491
+ default_ssemath=yes
492
+ ;;
493
+ *64-*-*)
494
+ # x86 64-bit architectures all have SSE instructions
495
+ default_ssemath=yes
496
+ ;;
497
+ *)
498
+ default_ssemath=no
499
+ ;;
500
+ esac
501
+ AC_ARG_ENABLE(ssemath,
502
+ AC_HELP_STRING([--enable-ssemath], [Allow GCC to use SSE floating point math [[default=maybe]]]),
503
+ , enable_ssemath=$default_ssemath)
504
+ if test x$enable_ssemath = xno; then
505
+ if test x$have_gcc_sse = xyes -o x$have_gcc_sse2 = xyes -o x$have_gcc_sse3 = xyes; then
506
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -mfpmath=387"
507
+ fi
508
+ fi
509
+
510
+ dnl Check for various instruction support
511
+ AC_ARG_ENABLE(mmx,
512
+ AC_HELP_STRING([--enable-mmx], [use MMX assembly routines [[default=yes]]]),
513
+ , enable_mmx=yes)
514
+ if test x$enable_mmx = xyes; then
515
+ save_CFLAGS="$CFLAGS"
516
+ have_gcc_mmx=no
517
+ AC_MSG_CHECKING(for GCC -mmmx option)
518
+ mmx_CFLAGS="-mmmx"
519
+ CFLAGS="$save_CFLAGS $mmx_CFLAGS"
520
+
521
+ AC_TRY_COMPILE([
522
+ #ifdef __MINGW32__
523
+ #include <_mingw.h>
524
+ #ifdef __MINGW64_VERSION_MAJOR
525
+ #include <intrin.h>
526
+ #else
527
+ #include <mmintrin.h>
528
+ #endif
529
+ #else
530
+ #include <mmintrin.h>
531
+ #endif
532
+ #ifndef __MMX__
533
+ #error Assembler CPP flag not enabled
534
+ #endif
535
+ ],[
536
+ ],[
537
+ have_gcc_mmx=yes
538
+ ])
539
+ AC_MSG_RESULT($have_gcc_mmx)
540
+ CFLAGS="$save_CFLAGS"
541
+
542
+ if test x$have_gcc_mmx = xyes; then
543
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $mmx_CFLAGS"
544
+ SUMMARY_math="${SUMMARY_math} mmx"
545
+ fi
546
+ fi
547
+
548
+ AC_ARG_ENABLE(3dnow,
549
+ AC_HELP_STRING([--enable-3dnow], [use 3DNow! assembly routines [[default=yes]]]),
550
+ , enable_3dnow=yes)
551
+ if test x$enable_3dnow = xyes; then
552
+ save_CFLAGS="$CFLAGS"
553
+ have_gcc_3dnow=no
554
+ AC_MSG_CHECKING(for GCC -m3dnow option)
555
+ amd3dnow_CFLAGS="-m3dnow"
556
+ CFLAGS="$save_CFLAGS $amd3dnow_CFLAGS"
557
+
558
+ AC_TRY_LINK([
559
+ #include <mm3dnow.h>
560
+ #ifndef __3dNOW__
561
+ #error Assembler CPP flag not enabled
562
+ #endif
563
+ ],[
564
+ void *p = 0;
565
+ _m_prefetch(p);
566
+ ],[
567
+ have_gcc_3dnow=yes
568
+ ])
569
+ AC_MSG_RESULT($have_gcc_3dnow)
570
+ CFLAGS="$save_CFLAGS"
571
+
572
+ if test x$have_gcc_3dnow = xyes; then
573
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $amd3dnow_CFLAGS"
574
+ SUMMARY_math="${SUMMARY_math} 3dnow"
575
+ fi
576
+ fi
577
+
578
+ AC_ARG_ENABLE(sse,
579
+ AC_HELP_STRING([--enable-sse], [use SSE assembly routines [[default=yes]]]),
580
+ , enable_sse=yes)
581
+ if test x$enable_sse = xyes; then
582
+ save_CFLAGS="$CFLAGS"
583
+ have_gcc_sse=no
584
+ AC_MSG_CHECKING(for GCC -msse option)
585
+ sse_CFLAGS="-msse"
586
+ CFLAGS="$save_CFLAGS $sse_CFLAGS"
587
+
588
+ AC_TRY_COMPILE([
589
+ #ifdef __MINGW32__
590
+ #include <_mingw.h>
591
+ #ifdef __MINGW64_VERSION_MAJOR
592
+ #include <intrin.h>
593
+ #else
594
+ #include <xmmintrin.h>
595
+ #endif
596
+ #else
597
+ #include <xmmintrin.h>
598
+ #endif
599
+ #ifndef __SSE__
600
+ #error Assembler CPP flag not enabled
601
+ #endif
602
+ ],[
603
+ ],[
604
+ have_gcc_sse=yes
605
+ ])
606
+ AC_MSG_RESULT($have_gcc_sse)
607
+ CFLAGS="$save_CFLAGS"
608
+
609
+ if test x$have_gcc_sse = xyes; then
610
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $sse_CFLAGS"
611
+ SUMMARY_math="${SUMMARY_math} sse"
612
+ fi
613
+ fi
614
+
615
+ AC_ARG_ENABLE(sse2,
616
+ AC_HELP_STRING([--enable-sse2], [use SSE2 assembly routines [[default=maybe]]]),
617
+ , enable_sse2=$default_ssemath)
618
+ if test x$enable_sse2 = xyes; then
619
+ save_CFLAGS="$CFLAGS"
620
+ have_gcc_sse2=no
621
+ AC_MSG_CHECKING(for GCC -msse2 option)
622
+ sse2_CFLAGS="-msse2"
623
+ CFLAGS="$save_CFLAGS $sse2_CFLAGS"
624
+
625
+ AC_TRY_COMPILE([
626
+ #ifdef __MINGW32__
627
+ #include <_mingw.h>
628
+ #ifdef __MINGW64_VERSION_MAJOR
629
+ #include <intrin.h>
630
+ #else
631
+ #include <emmintrin.h>
632
+ #endif
633
+ #else
634
+ #include <emmintrin.h>
635
+ #endif
636
+ #ifndef __SSE2__
637
+ #error Assembler CPP flag not enabled
638
+ #endif
639
+ ],[
640
+ ],[
641
+ have_gcc_sse2=yes
642
+ ])
643
+ AC_MSG_RESULT($have_gcc_sse2)
644
+ CFLAGS="$save_CFLAGS"
645
+
646
+ if test x$have_gcc_sse2 = xyes; then
647
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $sse2_CFLAGS"
648
+ SUMMARY_math="${SUMMARY_math} sse2"
649
+ fi
650
+ fi
651
+
652
+ AC_ARG_ENABLE(sse3,
653
+ AC_HELP_STRING([--enable-sse3], [use SSE3 assembly routines [[default=maybe]]]),
654
+ , enable_sse3=$default_ssemath)
655
+ if test x$enable_sse3 = xyes; then
656
+ save_CFLAGS="$CFLAGS"
657
+ have_gcc_sse3=no
658
+ AC_MSG_CHECKING(for GCC -msse3 option)
659
+ sse3_CFLAGS="-msse3"
660
+ CFLAGS="$save_CFLAGS $sse3_CFLAGS"
661
+
662
+ AC_TRY_COMPILE([
663
+ #ifdef __MINGW32__
664
+ #include <_mingw.h>
665
+ #ifdef __MINGW64_VERSION_MAJOR
666
+ #include <intrin.h>
667
+ #else
668
+ #include <pmmintrin.h>
669
+ #endif
670
+ #else
671
+ #include <pmmintrin.h>
672
+ #endif
673
+ #ifndef __SSE2__
674
+ #error Assembler CPP flag not enabled
675
+ #endif
676
+ ],[
677
+ ],[
678
+ have_gcc_sse3=yes
679
+ ])
680
+ AC_MSG_RESULT($have_gcc_sse3)
681
+ CFLAGS="$save_CFLAGS"
682
+
683
+ if test x$have_gcc_sse3 = xyes; then
684
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $sse3_CFLAGS"
685
+ SUMMARY_math="${SUMMARY_math} sse3"
686
+ fi
687
+ fi
688
+
689
+ AC_CHECK_HEADER(immintrin.h,
690
+ have_immintrin_h_hdr=yes,
691
+ have_immintrin_h_hdr=no)
692
+ if test x$have_immintrin_h_hdr = xyes; then
693
+ AC_DEFINE(HAVE_IMMINTRIN_H, 1, [ ])
694
+ fi
695
+
696
+ AC_ARG_ENABLE(altivec,
697
+ AC_HELP_STRING([--enable-altivec], [use Altivec assembly routines [[default=yes]]]),
698
+ , enable_altivec=yes)
699
+ if test x$enable_altivec = xyes; then
700
+ save_CFLAGS="$CFLAGS"
701
+ have_gcc_altivec=no
702
+ have_altivec_h_hdr=no
703
+ altivec_CFLAGS="-maltivec"
704
+ CFLAGS="$save_CFLAGS $altivec_CFLAGS"
705
+
706
+ AC_MSG_CHECKING(for Altivec with GCC altivec.h and -maltivec option)
707
+ AC_TRY_COMPILE([
708
+ #include <altivec.h>
709
+ vector unsigned int vzero() {
710
+ return vec_splat_u32(0);
711
+ }
712
+ ],[
713
+ ],[
714
+ have_gcc_altivec=yes
715
+ have_altivec_h_hdr=yes
716
+ ])
717
+ AC_MSG_RESULT($have_gcc_altivec)
718
+
719
+ if test x$have_gcc_altivec = xno; then
720
+ AC_MSG_CHECKING(for Altivec with GCC -maltivec option)
721
+ AC_TRY_COMPILE([
722
+ vector unsigned int vzero() {
723
+ return vec_splat_u32(0);
724
+ }
725
+ ],[
726
+ ],[
727
+ have_gcc_altivec=yes
728
+ ])
729
+ AC_MSG_RESULT($have_gcc_altivec)
730
+ fi
731
+
732
+ if test x$have_gcc_altivec = xno; then
733
+ AC_MSG_CHECKING(for Altivec with GCC altivec.h and -faltivec option)
734
+ altivec_CFLAGS="-faltivec"
735
+ CFLAGS="$save_CFLAGS $altivec_CFLAGS"
736
+ AC_TRY_COMPILE([
737
+ #include <altivec.h>
738
+ vector unsigned int vzero() {
739
+ return vec_splat_u32(0);
740
+ }
741
+ ],[
742
+ ],[
743
+ have_gcc_altivec=yes
744
+ have_altivec_h_hdr=yes
745
+ ])
746
+ AC_MSG_RESULT($have_gcc_altivec)
747
+ fi
748
+
749
+ if test x$have_gcc_altivec = xno; then
750
+ AC_MSG_CHECKING(for Altivec with GCC -faltivec option)
751
+ AC_TRY_COMPILE([
752
+ vector unsigned int vzero() {
753
+ return vec_splat_u32(0);
754
+ }
755
+ ],[
756
+ ],[
757
+ have_gcc_altivec=yes
758
+ ])
759
+ AC_MSG_RESULT($have_gcc_altivec)
760
+ fi
761
+ CFLAGS="$save_CFLAGS"
762
+
763
+ if test x$have_gcc_altivec = xyes; then
764
+ AC_DEFINE(SDL_ALTIVEC_BLITTERS, 1, [ ])
765
+ if test x$have_altivec_h_hdr = xyes; then
766
+ AC_DEFINE(HAVE_ALTIVEC_H, 1, [ ])
767
+ fi
768
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $altivec_CFLAGS"
769
+ SUMMARY_math="${SUMMARY_math} altivec"
770
+ fi
771
+ fi
772
+ fi
773
+
774
+ dnl See if the OSS audio interface is supported
775
+ CheckOSS()
776
+ {
777
+ AC_ARG_ENABLE(oss,
778
+ AC_HELP_STRING([--enable-oss], [support the OSS audio API [[default=maybe]]]),
779
+ , enable_oss=maybe)
780
+
781
+ # OpenBSD "has" OSS, but it's not really for app use. They want you to
782
+ # use sndio instead. So on there, we default to disabled. You can force
783
+ # it on if you really want, though.
784
+ if test x$enable_oss = xmaybe; then
785
+ enable_oss=yes
786
+ case "$host" in
787
+ *-*-openbsd*)
788
+ enable_oss=no;;
789
+ esac
790
+ fi
791
+
792
+ if test x$enable_audio = xyes -a x$enable_oss = xyes; then
793
+ AC_MSG_CHECKING(for OSS audio support)
794
+ have_oss=no
795
+ if test x$have_oss != xyes; then
796
+ AC_TRY_COMPILE([
797
+ #include <sys/soundcard.h>
798
+ ],[
799
+ int arg = SNDCTL_DSP_SETFRAGMENT;
800
+ ],[
801
+ have_oss=yes
802
+ ])
803
+ fi
804
+ if test x$have_oss != xyes; then
805
+ AC_TRY_COMPILE([
806
+ #include <soundcard.h>
807
+ ],[
808
+ int arg = SNDCTL_DSP_SETFRAGMENT;
809
+ ],[
810
+ have_oss=yes
811
+ AC_DEFINE(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H, 1, [ ])
812
+ ])
813
+ fi
814
+ AC_MSG_RESULT($have_oss)
815
+ if test x$have_oss = xyes; then
816
+ SUMMARY_audio="${SUMMARY_audio} oss"
817
+ AC_DEFINE(SDL_AUDIO_DRIVER_OSS, 1, [ ])
818
+ SOURCES="$SOURCES $srcdir/src/audio/dsp/*.c"
819
+ have_audio=yes
820
+
821
+ # We may need to link with ossaudio emulation library
822
+ case "$host" in
823
+ *-*-openbsd*|*-*-netbsd*)
824
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lossaudio";;
825
+ esac
826
+ fi
827
+ fi
828
+ }
829
+
830
+ dnl See if the ALSA audio interface is supported
831
+ CheckALSA()
832
+ {
833
+ AC_ARG_ENABLE(alsa,
834
+ AC_HELP_STRING([--enable-alsa], [support the ALSA audio API [[default=yes]]]),
835
+ , enable_alsa=yes)
836
+ if test x$enable_audio = xyes -a x$enable_alsa = xyes; then
837
+ AM_PATH_ALSA(1.0.11, have_alsa=yes, have_alsa=no)
838
+ # Restore all flags from before the ALSA detection runs
839
+ CFLAGS="$alsa_save_CFLAGS"
840
+ LDFLAGS="$alsa_save_LDFLAGS"
841
+ LIBS="$alsa_save_LIBS"
842
+ if test x$have_alsa = xyes; then
843
+ AC_ARG_ENABLE(alsa-shared,
844
+ AC_HELP_STRING([--enable-alsa-shared], [dynamically load ALSA audio support [[default=yes]]]),
845
+ , enable_alsa_shared=yes)
846
+ alsa_lib=[`find_lib "libasound.so.*" "$ALSA_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
847
+
848
+ AC_DEFINE(SDL_AUDIO_DRIVER_ALSA, 1, [ ])
849
+ SOURCES="$SOURCES $srcdir/src/audio/alsa/*.c"
850
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $ALSA_CFLAGS"
851
+ if test x$have_loadso != xyes && \
852
+ test x$enable_alsa_shared = xyes; then
853
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ALSA loading])
854
+ fi
855
+ if test x$have_loadso = xyes && \
856
+ test x$enable_alsa_shared = xyes && test x$alsa_lib != x; then
857
+ echo "-- dynamic libasound -> $alsa_lib"
858
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ALSA_DYNAMIC, "$alsa_lib", [ ])
859
+ SUMMARY_audio="${SUMMARY_audio} alsa(dynamic)"
860
+ else
861
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ALSA_LIBS"
862
+ SUMMARY_audio="${SUMMARY_audio} alsa"
863
+ fi
864
+ have_audio=yes
865
+ fi
866
+ fi
867
+ }
868
+
869
+ dnl Find JACK Audio
870
+ CheckJACK()
871
+ {
872
+ AC_ARG_ENABLE(jack,
873
+ AC_HELP_STRING([--enable-jack], [use JACK audio [[default=yes]]]),
874
+ , enable_jack=yes)
875
+ if test x$enable_audio = xyes -a x$enable_jack = xyes; then
876
+ audio_jack=no
877
+
878
+ JACK_REQUIRED_VERSION=0.125
879
+
880
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
881
+ AC_MSG_CHECKING(for JACK $JACK_REQUIRED_VERSION support)
882
+ if test x$PKG_CONFIG != xno; then
883
+ if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $JACK_REQUIRED_VERSION jack; then
884
+ JACK_CFLAGS=`$PKG_CONFIG --cflags jack`
885
+ JACK_LIBS=`$PKG_CONFIG --libs jack`
886
+ audio_jack=yes
887
+ fi
888
+ fi
889
+ AC_MSG_RESULT($audio_jack)
890
+
891
+ if test x$audio_jack = xyes; then
892
+ AC_ARG_ENABLE(jack-shared,
893
+ AC_HELP_STRING([--enable-jack-shared], [dynamically load JACK audio support [[default=yes]]]),
894
+ , enable_jack_shared=yes)
895
+ jack_lib=[`find_lib "libjack.so.*" "$JACK_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
896
+
897
+ AC_DEFINE(SDL_AUDIO_DRIVER_JACK, 1, [ ])
898
+ SOURCES="$SOURCES $srcdir/src/audio/jack/*.c"
899
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $JACK_CFLAGS"
900
+ if test x$have_loadso != xyes && \
901
+ test x$enable_jack_shared = xyes; then
902
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic JACK audio loading])
903
+ fi
904
+ if test x$have_loadso = xyes && \
905
+ test x$enable_jack_shared = xyes && test x$jack_lib != x; then
906
+ echo "-- dynamic libjack -> $jack_lib"
907
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_JACK_DYNAMIC, "$jack_lib", [ ])
908
+ SUMMARY_audio="${SUMMARY_audio} jack(dynamic)"
909
+
910
+ case "$host" in
911
+ # On Solaris, jack must be linked deferred explicitly
912
+ # to prevent undefined symbol failures.
913
+ *-*-solaris*)
914
+ JACK_LIBS=`echo $JACK_LIBS | sed 's/\-l/-Wl,-l/g'`
915
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-zdeferred $JACK_LIBS -Wl,-znodeferred"
916
+ esac
917
+ else
918
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $JACK_LIBS"
919
+ SUMMARY_audio="${SUMMARY_audio} jack"
920
+ fi
921
+ have_audio=yes
922
+ fi
923
+ fi
924
+ }
925
+
926
+ dnl Find the ESD includes and libraries
927
+ CheckESD()
928
+ {
929
+ AC_ARG_ENABLE(esd,
930
+ AC_HELP_STRING([--enable-esd], [support the Enlightened Sound Daemon [[default=yes]]]),
931
+ , enable_esd=yes)
932
+ if test x$enable_audio = xyes -a x$enable_esd = xyes; then
933
+ AM_PATH_ESD(0.2.8, have_esd=yes, have_esd=no)
934
+ if test x$have_esd = xyes; then
935
+ AC_ARG_ENABLE(esd-shared,
936
+ AC_HELP_STRING([--enable-esd-shared], [dynamically load ESD audio support [[default=yes]]]),
937
+ , enable_esd_shared=yes)
938
+ esd_lib=[`find_lib "libesd.so.*" "$ESD_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
939
+
940
+ AC_DEFINE(SDL_AUDIO_DRIVER_ESD, 1, [ ])
941
+ SOURCES="$SOURCES $srcdir/src/audio/esd/*.c"
942
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $ESD_CFLAGS"
943
+ if test x$have_loadso != xyes && \
944
+ test x$enable_esd_shared = xyes; then
945
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ESD loading])
946
+ fi
947
+ if test x$have_loadso = xyes && \
948
+ test x$enable_esd_shared = xyes && test x$esd_lib != x; then
949
+ echo "-- dynamic libesd -> $esd_lib"
950
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ESD_DYNAMIC, "$esd_lib", [ ])
951
+ SUMMARY_audio="${SUMMARY_audio} esd(dynamic)"
952
+ else
953
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ESD_LIBS"
954
+ SUMMARY_audio="${SUMMARY_audio} esd"
955
+ fi
956
+ have_audio=yes
957
+ fi
958
+ fi
959
+ }
960
+
961
+ dnl Find PulseAudio
962
+ CheckPulseAudio()
963
+ {
964
+ AC_ARG_ENABLE(pulseaudio,
965
+ AC_HELP_STRING([--enable-pulseaudio], [use PulseAudio [[default=yes]]]),
966
+ , enable_pulseaudio=yes)
967
+ if test x$enable_audio = xyes -a x$enable_pulseaudio = xyes; then
968
+ audio_pulseaudio=no
969
+
970
+ PULSEAUDIO_REQUIRED_VERSION=0.9
971
+
972
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
973
+ AC_MSG_CHECKING(for PulseAudio $PULSEAUDIO_REQUIRED_VERSION support)
974
+ if test x$PKG_CONFIG != xno; then
975
+ if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $PULSEAUDIO_REQUIRED_VERSION libpulse-simple; then
976
+ PULSEAUDIO_CFLAGS=`$PKG_CONFIG --cflags libpulse-simple`
977
+ PULSEAUDIO_LIBS=`$PKG_CONFIG --libs libpulse-simple`
978
+ audio_pulseaudio=yes
979
+ fi
980
+ fi
981
+ AC_MSG_RESULT($audio_pulseaudio)
982
+
983
+ if test x$audio_pulseaudio = xyes; then
984
+ AC_ARG_ENABLE(pulseaudio-shared,
985
+ AC_HELP_STRING([--enable-pulseaudio-shared], [dynamically load PulseAudio support [[default=yes]]]),
986
+ , enable_pulseaudio_shared=yes)
987
+ pulseaudio_lib=[`find_lib "libpulse-simple.so.*" "$PULSEAUDIO_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
988
+
989
+ AC_DEFINE(SDL_AUDIO_DRIVER_PULSEAUDIO, 1, [ ])
990
+ SOURCES="$SOURCES $srcdir/src/audio/pulseaudio/*.c"
991
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $PULSEAUDIO_CFLAGS"
992
+ if test x$have_loadso != xyes && \
993
+ test x$enable_pulseaudio_shared = xyes; then
994
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic PulseAudio loading])
995
+ fi
996
+ if test x$have_loadso = xyes && \
997
+ test x$enable_pulseaudio_shared = xyes && test x$pulseaudio_lib != x; then
998
+ echo "-- dynamic libpulse-simple -> $pulseaudio_lib"
999
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC, "$pulseaudio_lib", [ ])
1000
+ SUMMARY_audio="${SUMMARY_audio} pulse(dynamic)"
1001
+
1002
+ case "$host" in
1003
+ # On Solaris, pulseaudio must be linked deferred explicitly
1004
+ # to prevent undefined symbol failures.
1005
+ *-*-solaris*)
1006
+ PULSEAUDIO_LIBS=`echo $PULSEAUDIO_LIBS | sed 's/\-l/-Wl,-l/g'`
1007
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-zdeferred $PULSEAUDIO_LIBS -Wl,-znodeferred"
1008
+ esac
1009
+ else
1010
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $PULSEAUDIO_LIBS"
1011
+ SUMMARY_audio="${SUMMARY_audio} pulse"
1012
+ fi
1013
+ have_audio=yes
1014
+ fi
1015
+ fi
1016
+ }
1017
+
1018
+ CheckARTSC()
1019
+ {
1020
+ AC_ARG_ENABLE(arts,
1021
+ AC_HELP_STRING([--enable-arts], [support the Analog Real Time Synthesizer [[default=yes]]]),
1022
+ , enable_arts=yes)
1023
+ if test x$enable_audio = xyes -a x$enable_arts = xyes; then
1024
+ AC_PATH_PROG(ARTSCONFIG, artsc-config)
1025
+ if test x$ARTSCONFIG = x -o x$ARTSCONFIG = x'"$ARTSCONFIG"'; then
1026
+ : # arts isn't installed
1027
+ else
1028
+ ARTS_CFLAGS=`$ARTSCONFIG --cflags`
1029
+ ARTS_LIBS=`$ARTSCONFIG --libs`
1030
+ AC_MSG_CHECKING(for aRts development environment)
1031
+ audio_arts=no
1032
+ save_CFLAGS="$CFLAGS"
1033
+ CFLAGS="$CFLAGS $ARTS_CFLAGS"
1034
+ AC_TRY_COMPILE([
1035
+ #include <artsc.h>
1036
+ ],[
1037
+ arts_stream_t stream;
1038
+ ],[
1039
+ audio_arts=yes
1040
+ ])
1041
+ CFLAGS="$save_CFLAGS"
1042
+ AC_MSG_RESULT($audio_arts)
1043
+ if test x$audio_arts = xyes; then
1044
+ AC_ARG_ENABLE(arts-shared,
1045
+ AC_HELP_STRING([--enable-arts-shared], [dynamically load aRts audio support [[default=yes]]]),
1046
+ , enable_arts_shared=yes)
1047
+ arts_lib=[`find_lib "libartsc.so.*" "$ARTS_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1048
+
1049
+ AC_DEFINE(SDL_AUDIO_DRIVER_ARTS, 1, [ ])
1050
+ SOURCES="$SOURCES $srcdir/src/audio/arts/*.c"
1051
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $ARTS_CFLAGS"
1052
+ if test x$have_loadso != xyes && \
1053
+ test x$enable_arts_shared = xyes; then
1054
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ARTS loading])
1055
+ fi
1056
+ if test x$have_loadso = xyes && \
1057
+ test x$enable_arts_shared = xyes && test x$arts_lib != x; then
1058
+ echo "-- dynamic libartsc -> $arts_lib"
1059
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ARTS_DYNAMIC, "$arts_lib", [ ])
1060
+ SUMMARY_audio="${SUMMARY_audio} arts(dynamic)"
1061
+ else
1062
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ARTS_LIBS"
1063
+ SUMMARY_audio="${SUMMARY_audio} arts"
1064
+ fi
1065
+ have_audio=yes
1066
+ fi
1067
+ fi
1068
+ fi
1069
+ }
1070
+
1071
+ dnl See if the NAS audio interface is supported
1072
+ CheckNAS()
1073
+ {
1074
+ AC_ARG_ENABLE(nas,
1075
+ AC_HELP_STRING([--enable-nas], [support the NAS audio API [[default=yes]]]),
1076
+ , enable_nas=yes)
1077
+ if test x$enable_audio = xyes -a x$enable_nas = xyes; then
1078
+ AC_CHECK_HEADER(audio/audiolib.h, have_nas_hdr=yes)
1079
+ AC_CHECK_LIB(audio, AuOpenServer, have_nas_lib=yes)
1080
+
1081
+ AC_MSG_CHECKING(for NAS audio support)
1082
+ have_nas=no
1083
+
1084
+ if test x$have_nas_hdr = xyes -a x$have_nas_lib = xyes; then
1085
+ have_nas=yes
1086
+ NAS_LIBS="-laudio"
1087
+
1088
+ elif test -r /usr/X11R6/include/audio/audiolib.h; then
1089
+ have_nas=yes
1090
+ NAS_CFLAGS="-I/usr/X11R6/include/"
1091
+ NAS_LIBS="-L/usr/X11R6/lib -laudio -lXt"
1092
+
1093
+ fi
1094
+
1095
+ AC_MSG_RESULT($have_nas)
1096
+
1097
+ if test x$have_nas = xyes; then
1098
+ AC_ARG_ENABLE(nas-shared,
1099
+ AC_HELP_STRING([--enable-nas-shared], [dynamically load NAS audio support [[default=yes]]]),
1100
+ , enable_nas_shared=yes)
1101
+ nas_lib=[`find_lib "libaudio.so.*" "$NAS_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1102
+
1103
+ if test x$have_loadso != xyes && \
1104
+ test x$enable_nas_shared = xyes; then
1105
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic NAS loading])
1106
+ fi
1107
+ if test x$have_loadso = xyes && \
1108
+ test x$enable_nas_shared = xyes && test x$nas_lib != x; then
1109
+ echo "-- dynamic libaudio -> $nas_lib"
1110
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_NAS_DYNAMIC, "$nas_lib", [ ])
1111
+ SUMMARY_audio="${SUMMARY_audio} nas(dynamic)"
1112
+ else
1113
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $NAS_LIBS"
1114
+ SUMMARY_audio="${SUMMARY_audio} nas"
1115
+ fi
1116
+
1117
+ AC_DEFINE(SDL_AUDIO_DRIVER_NAS, 1, [ ])
1118
+ SOURCES="$SOURCES $srcdir/src/audio/nas/*.c"
1119
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $NAS_CFLAGS"
1120
+ have_audio=yes
1121
+ fi
1122
+ fi
1123
+ }
1124
+
1125
+ dnl See if the sndio audio interface is supported
1126
+ CheckSNDIO()
1127
+ {
1128
+ AC_ARG_ENABLE(sndio,
1129
+ AC_HELP_STRING([--enable-sndio], [support the sndio audio API [[default=yes]]]),
1130
+ , enable_sndio=yes)
1131
+ if test x$enable_audio = xyes -a x$enable_sndio = xyes; then
1132
+ AC_CHECK_HEADER(sndio.h, have_sndio_hdr=yes)
1133
+ AC_CHECK_LIB(sndio, sio_open, have_sndio_lib=yes)
1134
+
1135
+ AC_MSG_CHECKING(for sndio audio support)
1136
+ have_sndio=no
1137
+
1138
+ if test x$have_sndio_hdr = xyes -a x$have_sndio_lib = xyes; then
1139
+ have_sndio=yes
1140
+ SNDIO_LIBS="-lsndio"
1141
+ fi
1142
+
1143
+ AC_MSG_RESULT($have_sndio)
1144
+
1145
+ if test x$have_sndio = xyes; then
1146
+ AC_ARG_ENABLE(sndio-shared,
1147
+ AC_HELP_STRING([--enable-sndio-shared], [dynamically load sndio audio support [[default=yes]]]),
1148
+ , enable_sndio_shared=yes)
1149
+ sndio_lib=[`find_lib "libsndio.so.*" "$SNDIO_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1150
+
1151
+ if test x$have_loadso != xyes && \
1152
+ test x$enable_sndio_shared = xyes; then
1153
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic sndio loading])
1154
+ fi
1155
+ if test x$have_loadso = xyes && \
1156
+ test x$enable_sndio_shared = xyes && test x$sndio_lib != x; then
1157
+ echo "-- dynamic libsndio -> $sndio_lib"
1158
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_SNDIO_DYNAMIC, "$sndio_lib", [ ])
1159
+ SUMMARY_audio="${SUMMARY_audio} sndio(dynamic)"
1160
+ else
1161
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $SNDIO_LIBS"
1162
+ SUMMARY_audio="${SUMMARY_audio} sndio"
1163
+ fi
1164
+
1165
+ AC_DEFINE(SDL_AUDIO_DRIVER_SNDIO, 1, [ ])
1166
+ SOURCES="$SOURCES $srcdir/src/audio/sndio/*.c"
1167
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $SNDIO_CFLAGS"
1168
+ have_audio=yes
1169
+ fi
1170
+ fi
1171
+ }
1172
+
1173
+ dnl Find FusionSound
1174
+ CheckFusionSound()
1175
+ {
1176
+ AC_ARG_ENABLE(fusionsound,
1177
+ AC_HELP_STRING([--enable-fusionsound], [use FusionSound audio driver [[default=no]]]),
1178
+ , enable_fusionsound=no)
1179
+ if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then
1180
+ fusionsound=no
1181
+
1182
+ FUSIONSOUND_REQUIRED_VERSION=1.1.1
1183
+
1184
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
1185
+ AC_MSG_CHECKING(for FusionSound $FUSIONSOUND_REQUIRED_VERSION support)
1186
+ if test x$PKG_CONFIG != xno; then
1187
+ if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then
1188
+ FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound`
1189
+ FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound`
1190
+ fusionsound=yes
1191
+ fi
1192
+ fi
1193
+ AC_MSG_RESULT($fusionsound)
1194
+
1195
+ if test x$fusionsound = xyes; then
1196
+ AC_DEFINE(SDL_AUDIO_DRIVER_FUSIONSOUND, 1, [ ])
1197
+ SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c"
1198
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS"
1199
+
1200
+ AC_ARG_ENABLE(fusionsound-shared,
1201
+ AC_HELP_STRING([--enable-fusionsound-shared], [dynamically load fusionsound audio support [[default=yes]]]),
1202
+ , enable_fusionsound_shared=yes)
1203
+ fusionsound_shared=no
1204
+ AC_MSG_CHECKING(for FusionSound dynamic loading support)
1205
+ if test x$have_loadso != xyes && \
1206
+ test x$enable_fusionsound_shared = xyes; then
1207
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic fusionsound loading])
1208
+ fi
1209
+ if test x$have_loadso = xyes && \
1210
+ test x$enable_fusionsound_shared = xyes; then
1211
+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC, "libfusionsound.so", [ ])
1212
+ fusionsound_shared=yes
1213
+ SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)"
1214
+ else
1215
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS"
1216
+ SUMMARY_audio="${SUMMARY_audio} fusionsound"
1217
+ fi
1218
+ AC_MSG_RESULT($fusionsound_shared)
1219
+
1220
+ have_audio=yes
1221
+ fi
1222
+ fi
1223
+ }
1224
+
1225
+ dnl rcg07142001 See if the user wants the disk writer audio driver...
1226
+ CheckDiskAudio()
1227
+ {
1228
+ AC_ARG_ENABLE(diskaudio,
1229
+ AC_HELP_STRING([--enable-diskaudio], [support the disk writer audio driver [[default=yes]]]),
1230
+ , enable_diskaudio=yes)
1231
+ if test x$enable_audio = xyes -a x$enable_diskaudio = xyes; then
1232
+ AC_DEFINE(SDL_AUDIO_DRIVER_DISK, 1, [ ])
1233
+ SOURCES="$SOURCES $srcdir/src/audio/disk/*.c"
1234
+ SUMMARY_audio="${SUMMARY_audio} disk"
1235
+ fi
1236
+ }
1237
+
1238
+ dnl rcg03142006 See if the user wants the dummy audio driver...
1239
+ CheckDummyAudio()
1240
+ {
1241
+ AC_ARG_ENABLE(dummyaudio,
1242
+ AC_HELP_STRING([--enable-dummyaudio], [support the dummy audio driver [[default=yes]]]),
1243
+ , enable_dummyaudio=yes)
1244
+ if test x$enable_audio = xyes -a x$enable_dummyaudio = xyes; then
1245
+ AC_DEFINE(SDL_AUDIO_DRIVER_DUMMY, 1, [ ])
1246
+ SOURCES="$SOURCES $srcdir/src/audio/dummy/*.c"
1247
+ SUMMARY_audio="${SUMMARY_audio} dummy"
1248
+ fi
1249
+ }
1250
+
1251
+ dnl See if libsamplerate is available
1252
+ CheckLibSampleRate()
1253
+ {
1254
+ AC_ARG_ENABLE(libsamplerate,
1255
+ AC_HELP_STRING([--enable-libsamplerate], [use libsamplerate for audio rate conversion [[default=yes]]]),
1256
+ , enable_libsamplerate=yes)
1257
+ if test x$enable_libsamplerate = xyes; then
1258
+ AC_CHECK_HEADER(samplerate.h,
1259
+ have_samplerate_h_hdr=yes,
1260
+ have_samplerate_h_hdr=no)
1261
+ if test x$have_samplerate_h_hdr = xyes; then
1262
+ AC_DEFINE(HAVE_LIBSAMPLERATE_H, 1, [ ])
1263
+
1264
+ AC_ARG_ENABLE(libsamplerate-shared,
1265
+ AC_HELP_STRING([--enable-libsamplerate-shared], [dynamically load libsamplerate [[default=yes]]]),
1266
+ , enable_libsamplerate_shared=yes)
1267
+
1268
+ samplerate_lib=[`find_lib "libsamplerate.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`]
1269
+
1270
+ if test x$have_loadso != xyes && \
1271
+ test x$enable_libsamplerate_shared = xyes; then
1272
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic libsamplerate loading])
1273
+ fi
1274
+ if test x$have_loadso = xyes && \
1275
+ test x$enable_libsamplerate_shared = xyes && test x$samplerate_lib != x; then
1276
+ echo "-- dynamic libsamplerate -> $samplerate_lib"
1277
+ AC_DEFINE_UNQUOTED(SDL_LIBSAMPLERATE_DYNAMIC, "$samplerate_lib", [ ])
1278
+ else
1279
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lsamplerate"
1280
+ fi
1281
+ fi
1282
+ fi
1283
+ }
1284
+
1285
+ dnl See if GCC's -fvisibility=hidden is supported (gcc4 and later, usually).
1286
+ dnl Details of this flag are here: http://gcc.gnu.org/wiki/Visibility
1287
+ CheckVisibilityHidden()
1288
+ {
1289
+ AC_MSG_CHECKING(for GCC -fvisibility=hidden option)
1290
+ have_gcc_fvisibility=no
1291
+
1292
+ visibility_CFLAGS="-fvisibility=hidden"
1293
+ save_CFLAGS="$CFLAGS"
1294
+ CFLAGS="$save_CFLAGS $visibility_CFLAGS -Werror"
1295
+ AC_TRY_COMPILE([
1296
+ #if !defined(__GNUC__) || __GNUC__ < 4
1297
+ #error SDL only uses visibility attributes in GCC 4 or newer
1298
+ #endif
1299
+ ],[
1300
+ ],[
1301
+ have_gcc_fvisibility=yes
1302
+ ])
1303
+ AC_MSG_RESULT($have_gcc_fvisibility)
1304
+ CFLAGS="$save_CFLAGS"
1305
+
1306
+ if test x$have_gcc_fvisibility = xyes; then
1307
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $visibility_CFLAGS"
1308
+ fi
1309
+ }
1310
+
1311
+ dnl See if GCC's -mpreferred-stack-boundary is supported.
1312
+ dnl Reference: http://bugzilla.libsdl.org/show_bug.cgi?id=1296
1313
+ CheckStackBoundary()
1314
+ {
1315
+ AC_MSG_CHECKING(for GCC -mpreferred-stack-boundary option)
1316
+ have_gcc_preferred_stack_boundary=no
1317
+
1318
+ save_CFLAGS="$CFLAGS"
1319
+ CFLAGS="$save_CFLAGS -mpreferred-stack-boundary=2"
1320
+ AC_TRY_COMPILE([
1321
+ int x = 0;
1322
+ ],[
1323
+ ],[
1324
+ have_gcc_preferred_stack_boundary=yes
1325
+ ])
1326
+ AC_MSG_RESULT($have_gcc_preferred_stack_boundary)
1327
+ CFLAGS="$save_CFLAGS"
1328
+
1329
+ if test x$have_gcc_preferred_stack_boundary = xyes; then
1330
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -mpreferred-stack-boundary=2"
1331
+ fi
1332
+ }
1333
+
1334
+ dnl See if GCC's -Wdeclaration-after-statement is supported.
1335
+ dnl This lets us catch things that would fail on a C89 compiler when using
1336
+ dnl a modern GCC.
1337
+ CheckDeclarationAfterStatement()
1338
+ {
1339
+ AC_MSG_CHECKING(for GCC -Wdeclaration-after-statement option)
1340
+ have_gcc_declaration_after_statement=no
1341
+
1342
+ save_CFLAGS="$CFLAGS"
1343
+ CFLAGS="$save_CFLAGS -Wdeclaration-after-statement -Werror=declaration-after-statement"
1344
+ AC_TRY_COMPILE([
1345
+ int x = 0;
1346
+ ],[
1347
+ ],[
1348
+ have_gcc_declaration_after_statement=yes
1349
+ ])
1350
+ AC_MSG_RESULT($have_gcc_declaration_after_statement)
1351
+ CFLAGS="$save_CFLAGS"
1352
+
1353
+ if test x$have_gcc_declaration_after_statement = xyes; then
1354
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wdeclaration-after-statement -Werror=declaration-after-statement"
1355
+ fi
1356
+ }
1357
+
1358
+ dnl See if GCC's -Wall is supported.
1359
+ CheckWarnAll()
1360
+ {
1361
+ AC_MSG_CHECKING(for GCC -Wall option)
1362
+ have_gcc_Wall=no
1363
+
1364
+ save_CFLAGS="$CFLAGS"
1365
+ CFLAGS="$save_CFLAGS -Wall"
1366
+ AC_TRY_COMPILE([
1367
+ int x = 0;
1368
+ ],[
1369
+ ],[
1370
+ have_gcc_Wall=yes
1371
+ ])
1372
+ AC_MSG_RESULT($have_gcc_Wall)
1373
+ CFLAGS="$save_CFLAGS"
1374
+
1375
+ if test x$have_gcc_Wall = xyes; then
1376
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wall"
1377
+
1378
+ dnl Haiku headers use multicharacter constants all over the place. Ignore these warnings when using -Wall.
1379
+ AC_MSG_CHECKING(for necessary GCC -Wno-multichar option)
1380
+ need_gcc_Wno_multichar=no
1381
+ case "$host" in
1382
+ *-*-haiku*)
1383
+ need_gcc_Wno_multichar=yes
1384
+ ;;
1385
+ esac
1386
+ AC_MSG_RESULT($need_gcc_Wno_multichar)
1387
+ if test x$need_gcc_Wno_multichar = xyes; then
1388
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -Wno-multichar"
1389
+ fi
1390
+ fi
1391
+ }
1392
+
1393
+ dnl Check for Wayland
1394
+ CheckWayland()
1395
+ {
1396
+ AC_ARG_ENABLE(video-wayland,
1397
+ AC_HELP_STRING([--enable-video-wayland], [use Wayland video driver [[default=yes]]]),
1398
+ ,enable_video_wayland=yes)
1399
+
1400
+ AC_ARG_ENABLE(video-wayland-qt-touch,
1401
+ AC_HELP_STRING([--enable-video-wayland-qt-touch], [QtWayland server support for Wayland video driver [[default=yes]]]),
1402
+ ,enable_video_wayland_qt_touch=yes)
1403
+
1404
+ if test x$enable_video = xyes -a x$enable_video_wayland = xyes; then
1405
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
1406
+ AC_MSG_CHECKING(for Wayland support)
1407
+ video_wayland=no
1408
+ if test x$PKG_CONFIG != xno && \
1409
+ test x$video_opengl_egl = xyes && \
1410
+ test x$video_opengles_v2 = xyes; then
1411
+ if $PKG_CONFIG --exists wayland-client wayland-scanner wayland-protocols wayland-egl wayland-cursor egl xkbcommon ; then
1412
+ WAYLAND_CFLAGS=`$PKG_CONFIG --cflags wayland-client wayland-egl wayland-cursor xkbcommon`
1413
+ WAYLAND_LIBS=`$PKG_CONFIG --libs wayland-client wayland-egl wayland-cursor xkbcommon`
1414
+ WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`
1415
+ video_wayland=yes
1416
+ fi
1417
+ fi
1418
+ AC_MSG_RESULT($video_wayland)
1419
+
1420
+ if test x$video_wayland = xyes; then
1421
+ AC_DEFINE(SDL_VIDEO_DRIVER_WAYLAND, 1, [ ])
1422
+ if test x$enable_video_wayland_qt_touch = xyes; then
1423
+ AC_DEFINE(SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH, 1, [ ])
1424
+ fi
1425
+
1426
+ WAYLAND_SOURCES="$srcdir/src/video/wayland/*.c"
1427
+ SOURCES="$SOURCES $WAYLAND_SOURCES"
1428
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $WAYLAND_CFLAGS -I\$(gen)"
1429
+ AC_ARG_ENABLE(wayland-shared,
1430
+ AC_HELP_STRING([--enable-wayland-shared], [dynamically load Wayland support [[default=maybe]]]),
1431
+ , enable_wayland_shared=maybe)
1432
+
1433
+ dnl FIXME: Do BSD and OS X need special cases?
1434
+ case "$host" in
1435
+ *)
1436
+ wayland_client_lib=[`find_lib "libwayland-client.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1437
+ wayland_egl_lib=[`find_lib "libwayland-egl.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1438
+ if test x$wayland_egl_lib = x; then
1439
+ dnl This works in Ubuntu 13.10, maybe others
1440
+ wayland_egl_lib=[`find_lib "mesa-egl/libwayland-egl.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1441
+ fi
1442
+ wayland_cursor_lib=[`find_lib "libwayland-cursor.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1443
+ xkbcommon_lib=[`find_lib "libxkbcommon.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1444
+ ;;
1445
+ esac
1446
+
1447
+ if test x$enable_wayland_shared = xmaybe; then
1448
+ enable_wayland_shared=yes
1449
+ fi
1450
+ if test x$have_loadso != xyes && \
1451
+ test x$enable_wayland_shared = xyes; then
1452
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic Wayland loading])
1453
+ enable_wayland_shared=no
1454
+ fi
1455
+ if test x$have_loadso = xyes && \
1456
+ test x$enable_wayland_shared = xyes && \
1457
+ test x$wayland_client_lib != x && \
1458
+ test x$wayland_egl_lib != x && \
1459
+ test x$wayland_cursor_lib != x && \
1460
+ test x$xkbcommon_lib != x; then
1461
+ echo "-- dynamic libwayland-client -> $wayland_client_lib"
1462
+ echo "-- dynamic libwayland-egl -> $wayland_egl_lib"
1463
+ echo "-- dynamic libwayland-cursor -> $wayland_cursor_lib"
1464
+ echo "-- dynamic libxkbcommon -> $xkbcommon_lib"
1465
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC, "$wayland_client_lib", [ ])
1466
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL, "$wayland_egl_lib", [ ])
1467
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR, "$wayland_cursor_lib", [ ])
1468
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON, "$xkbcommon_lib", [ ])
1469
+ SUMMARY_video="${SUMMARY_video} wayland(dynamic)"
1470
+ else
1471
+ enable_wayland_shared=no
1472
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $WAYLAND_LIBS"
1473
+ SUMMARY_video="${SUMMARY_video} wayland"
1474
+ fi
1475
+ have_video=yes
1476
+ fi
1477
+ fi
1478
+ }
1479
+
1480
+ dnl Check for Mir
1481
+ CheckMir()
1482
+ {
1483
+ AC_ARG_ENABLE(video-mir,
1484
+ AC_HELP_STRING([--enable-video-mir], [use Mir video driver [[default=no]]]),
1485
+ ,enable_video_mir=no)
1486
+
1487
+ if test x$enable_video = xyes -a x$enable_video_mir = xyes; then
1488
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
1489
+ AC_MSG_CHECKING(for Mir support)
1490
+ video_mir=no
1491
+ if test x$PKG_CONFIG != xno; then
1492
+ if $PKG_CONFIG --exists mirclient egl xkbcommon ; then
1493
+ MIR_CFLAGS=`$PKG_CONFIG --cflags mirclient egl xkbcommon`
1494
+ MIR_LIBS=`$PKG_CONFIG --libs mirclient egl xkbcommon`
1495
+ save_CFLAGS="$CFLAGS"
1496
+ CFLAGS="$save_CFLAGS $MIR_CFLAGS"
1497
+
1498
+ dnl This will disable Mir if >= v0.26 is not available
1499
+ AC_TRY_COMPILE([
1500
+ #include <mir_toolkit/mir_client_library.h>
1501
+ ],[
1502
+ MirWindowAttrib attrib = mir_window_attrib_state
1503
+ ],[
1504
+ video_mir=yes
1505
+ ])
1506
+ CFLAGS="$save_CFLAGS"
1507
+ fi
1508
+ fi
1509
+ AC_MSG_RESULT($video_mir)
1510
+
1511
+ if test x$video_mir = xyes; then
1512
+ AC_DEFINE(SDL_VIDEO_DRIVER_MIR, 1, [ ])
1513
+ SOURCES="$SOURCES $srcdir/src/video/mir/*.c"
1514
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $MIR_CFLAGS"
1515
+ AC_ARG_ENABLE(mir-shared,
1516
+ AC_HELP_STRING([--enable-mir-shared], [dynamically load Mir support [[default=maybe]]]),
1517
+ , enable_mir_shared=maybe)
1518
+
1519
+ dnl FIXME: Do BSD and OS X need special cases?
1520
+ case "$host" in
1521
+ *)
1522
+ mirclient_lib=[`find_lib "libmirclient.so.*" "$MIR_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1523
+ xkbcommon_lib=[`find_lib "libxkbcommon.so.*" "$MIR_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
1524
+ ;;
1525
+ esac
1526
+
1527
+ if test x$enable_mir_shared = xmaybe; then
1528
+ enable_mir_shared=yes
1529
+ fi
1530
+ if test x$have_loadso != xyes && \
1531
+ test x$enable_mir_shared = xyes; then
1532
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic Mir loading])
1533
+ enable_mir_shared=no
1534
+ fi
1535
+ if test x$have_loadso = xyes && \
1536
+ test x$enable_mir_shared = xyes && \
1537
+ test x$mirclient_lib != x && \
1538
+ test x$xkbcommon_lib != x; then
1539
+ echo "-- dynamic libmirclient -> $mirclient_lib"
1540
+ echo "-- dynamic libxkbcommon -> $xkbcommon_lib"
1541
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_MIR_DYNAMIC, "$mirclient_lib", [ ])
1542
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON, "$xkbcommon_lib", [ ])
1543
+ SUMMARY_video="${SUMMARY_video} mir(dynamic)"
1544
+ else
1545
+ enable_mir_shared=no
1546
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $MIR_LIBS"
1547
+ SUMMARY_video="${SUMMARY_video} mir"
1548
+ fi
1549
+ have_video=yes
1550
+ fi
1551
+ fi
1552
+ }
1553
+
1554
+ dnl Check for Native Client stuff
1555
+ CheckNativeClient()
1556
+ {
1557
+ AC_TRY_COMPILE([
1558
+ #if !defined(__native_client__)
1559
+ #error "NO NACL"
1560
+ #endif
1561
+ ],[
1562
+ ],[
1563
+ AC_DEFINE(SDL_VIDEO_DRIVER_NACL, 1, [ ])
1564
+ AC_DEFINE(SDL_AUDIO_DRIVER_NACL, 1, [ ])
1565
+ AC_DEFINE(HAVE_POW, 1, [ ])
1566
+ AC_DEFINE(HAVE_OPENGLES2, 1, [ ])
1567
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ])
1568
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES2, 1, [ ])
1569
+
1570
+ SDL_LIBS="-lppapi_simple -lppapi_gles2 $SDL_LIBS"
1571
+
1572
+ SDLMAIN_SOURCES="$srcdir/src/main/nacl/*.c"
1573
+ SOURCES="$SOURCES $srcdir/src/audio/nacl/*.c"
1574
+ SUMMARY_audio="${SUMMARY_audio} nacl"
1575
+ SOURCES="$SOURCES $srcdir/src/video/nacl/*.c"
1576
+ SUMMARY_video="${SUMMARY_video} nacl opengles2"
1577
+ ])
1578
+ }
1579
+
1580
+
1581
+ CheckRPI()
1582
+ {
1583
+ AC_ARG_ENABLE(video-rpi,
1584
+ AC_HELP_STRING([--enable-video-rpi], [use Raspberry Pi video driver [[default=yes]]]),
1585
+ , enable_video_rpi=yes)
1586
+ if test x$enable_video = xyes -a x$enable_video_rpi = xyes; then
1587
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
1588
+ if test x$PKG_CONFIG != xno && $PKG_CONFIG --exists bcm_host; then
1589
+ RPI_CFLAGS=`$PKG_CONFIG --cflags bcm_host brcmegl`
1590
+ RPI_LDFLAGS=`$PKG_CONFIG --libs bcm_host brcmegl`
1591
+ elif test x$ARCH = xnetbsd; then
1592
+ RPI_CFLAGS="-I/usr/pkg/include -I/usr/pkg/include/interface/vcos/pthreads -I/usr/pkg/include/interface/vmcs_host/linux"
1593
+ RPI_LDFLAGS="-Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lbcm_host"
1594
+ else
1595
+ RPI_CFLAGS="-I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux"
1596
+ RPI_LDFLAGS="-Wl,-rpath,/opt/vc/lib -L/opt/vc/lib -lbcm_host"
1597
+ fi
1598
+
1599
+ # Save the original compiler flags and libraries
1600
+ ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS"
1601
+
1602
+ # Add the Raspberry Pi compiler flags and libraries
1603
+ CFLAGS="$CFLAGS $RPI_CFLAGS"; LIBS="$LIBS $RPI_LDFLAGS"
1604
+
1605
+ AC_MSG_CHECKING(for Raspberry Pi)
1606
+ have_video_rpi=no
1607
+ AC_TRY_LINK([
1608
+ #include <bcm_host.h>
1609
+ ],[
1610
+ bcm_host_init();
1611
+ ],[
1612
+ have_video_rpi=yes
1613
+ ],[
1614
+ ])
1615
+ AC_MSG_RESULT($have_video_rpi)
1616
+
1617
+ # Restore the compiler flags and libraries
1618
+ CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs"
1619
+
1620
+ if test x$have_video_rpi = xyes; then
1621
+ CFLAGS="$CFLAGS $RPI_CFLAGS"
1622
+ SDL_CFLAGS="$SDL_CFLAGS $RPI_CFLAGS"
1623
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $RPI_CFLAGS"
1624
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $RPI_LDFLAGS"
1625
+ SOURCES="$SOURCES $srcdir/src/video/raspberry/*.c"
1626
+ AC_DEFINE(SDL_VIDEO_DRIVER_RPI, 1, [ ])
1627
+ SUMMARY_video="${SUMMARY_video} rpi"
1628
+ fi
1629
+ fi
1630
+ }
1631
+
1632
+ dnl Find the X11 include and library directories
1633
+ CheckX11()
1634
+ {
1635
+ AC_ARG_ENABLE(video-x11,
1636
+ AC_HELP_STRING([--enable-video-x11], [use X11 video driver [[default=yes]]]),
1637
+ , enable_video_x11=yes)
1638
+ if test x$enable_video = xyes -a x$enable_video_x11 = xyes; then
1639
+ case "$host" in
1640
+ *-*-darwin*)
1641
+ # This isn't necessary for X11, but fixes GLX detection
1642
+ if test "x$x_includes" = xNONE && \
1643
+ test "x$x_libraries" = xNONE && \
1644
+ test -d /usr/X11R6/include && \
1645
+ test -d /usr/X11R6/lib; then
1646
+ x_includes="/usr/X11R6/include"
1647
+ x_libraries="/usr/X11R6/lib"
1648
+ fi
1649
+ ;;
1650
+ esac
1651
+ AC_PATH_X
1652
+ AC_PATH_XTRA
1653
+ if test x$have_x = xyes; then
1654
+ AC_ARG_ENABLE(x11-shared,
1655
+ AC_HELP_STRING([--enable-x11-shared], [dynamically load X11 support [[default=maybe]]]),
1656
+ , enable_x11_shared=maybe)
1657
+
1658
+ case "$host" in
1659
+ *-*-darwin*)
1660
+ x11_lib='/usr/X11R6/lib/libX11.6.dylib'
1661
+ x11ext_lib='/usr/X11R6/lib/libXext.6.dylib'
1662
+ xcursor_lib='/usr/X11R6/lib/libXcursor.1.dylib'
1663
+ xinerama_lib='/usr/X11R6/lib/libXinerama.1.dylib'
1664
+ xinput_lib='/usr/X11R6/lib/libXi.6.dylib'
1665
+ xrandr_lib='/usr/X11R6/lib/libXrandr.2.dylib'
1666
+ xrender_lib='/usr/X11R6/lib/libXrender.1.dylib'
1667
+ xss_lib='/usr/X11R6/lib/libXss.1.dylib'
1668
+ xvidmode_lib='/usr/X11R6/lib/libXxf86vm.1.dylib'
1669
+ ;;
1670
+ *-*-openbsd*)
1671
+ x11_lib='libX11.so'
1672
+ x11ext_lib='libXext.so'
1673
+ xcursor_lib='libXcursor.so'
1674
+ xinerama_lib='libXinerama.so'
1675
+ xinput_lib='libXi.so'
1676
+ xrandr_lib='libXrandr.so'
1677
+ xrender_lib='libXrender.so'
1678
+ xss_lib='libXss.so'
1679
+ xvidmode_lib='libXxf86vm.so'
1680
+ ;;
1681
+ *)
1682
+ x11_lib=[`find_lib "libX11.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1683
+ x11ext_lib=[`find_lib "libXext.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1684
+ xcursor_lib=[`find_lib "libXcursor.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1685
+ xinerama_lib=[`find_lib "libXinerama.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1686
+ xinput_lib=[`find_lib "libXi.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1687
+ xrandr_lib=[`find_lib "libXrandr.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1688
+ xrender_lib=[`find_lib "libXrender.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1689
+ xss_lib=[`find_lib "libXss.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1690
+ xvidmode_lib=[`find_lib "libXxf86vm.so.*" "$X_LIBS -L/usr/X11/$base_libdir -L/usr/X11R6/$base_libdir" | sed 's/.*\/\(.*\)/\1/; q'`]
1691
+ ;;
1692
+ esac
1693
+
1694
+ if test x$ac_cv_func_shmat != xyes; then
1695
+ X_CFLAGS="$X_CFLAGS -DNO_SHARED_MEMORY"
1696
+ fi
1697
+ CFLAGS="$CFLAGS $X_CFLAGS"
1698
+ LDFLAGS="$LDFLAGS $X_LIBS"
1699
+
1700
+ AC_CHECK_HEADER(X11/extensions/Xext.h,
1701
+ have_xext_h_hdr=yes,
1702
+ have_xext_h_hdr=no,
1703
+ [#include <X11/Xlib.h>
1704
+ #include <X11/Xproto.h>
1705
+ ])
1706
+ if test x$have_xext_h_hdr != xyes; then
1707
+ AC_MSG_ERROR([
1708
+ *** Missing Xext.h, maybe you need to install the libxext-dev package?
1709
+ ])
1710
+ fi
1711
+
1712
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11, 1, [ ])
1713
+ SOURCES="$SOURCES $srcdir/src/video/x11/*.c"
1714
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $X_CFLAGS"
1715
+
1716
+ # Needed so SDL applications can include SDL_syswm.h
1717
+ SDL_CFLAGS="$SDL_CFLAGS $X_CFLAGS"
1718
+
1719
+ if test x$enable_x11_shared = xmaybe; then
1720
+ enable_x11_shared=yes
1721
+ fi
1722
+ if test x$have_loadso != xyes && \
1723
+ test x$enable_x11_shared = xyes; then
1724
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic X11 loading])
1725
+ enable_x11_shared=no
1726
+ fi
1727
+ if test x$have_loadso = xyes && \
1728
+ test x$enable_x11_shared = xyes && test x$x11_lib != x && test x$x11ext_lib != x; then
1729
+ echo "-- dynamic libX11 -> $x11_lib"
1730
+ echo "-- dynamic libX11ext -> $x11ext_lib"
1731
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC, "$x11_lib", [ ])
1732
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT, "$x11ext_lib", [ ])
1733
+ SUMMARY_video="${SUMMARY_video} x11(dynamic)"
1734
+ else
1735
+ enable_x11_shared=no
1736
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $X_LIBS -lX11 -lXext"
1737
+ SUMMARY_video="${SUMMARY_video} x11"
1738
+ fi
1739
+ have_video=yes
1740
+
1741
+ AC_MSG_CHECKING(for const parameter to XextAddDisplay)
1742
+ have_const_param_XextAddDisplay=no
1743
+ AC_TRY_COMPILE([
1744
+ #include <X11/Xlib.h>
1745
+ #include <X11/Xproto.h>
1746
+ #include <X11/extensions/Xext.h>
1747
+ #include <X11/extensions/extutil.h>
1748
+ extern XExtDisplayInfo* XextAddDisplay(XExtensionInfo* a,Display* b,_Xconst char* c,XExtensionHooks* d,int e,XPointer f);
1749
+ ],[
1750
+ ],[
1751
+ have_const_param_XextAddDisplay=yes
1752
+ AC_DEFINE([SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY], 1, [ ])
1753
+ ])
1754
+ AC_MSG_RESULT($have_const_param_XextAddDisplay)
1755
+
1756
+ dnl AC_CHECK_LIB(X11, XGetEventData, AC_DEFINE(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS, 1, [Have XGenericEvent]))
1757
+ AC_MSG_CHECKING([for XGenericEvent])
1758
+ have_XGenericEvent=no
1759
+ AC_TRY_COMPILE([
1760
+ #include <X11/Xlib.h>
1761
+ ],[
1762
+ Display *display;
1763
+ XEvent event;
1764
+ XGenericEventCookie *cookie = &event.xcookie;
1765
+ XNextEvent(display, &event);
1766
+ XGetEventData(display, cookie);
1767
+ XFreeEventData(display, cookie);
1768
+ ],[
1769
+ have_XGenericEvent=yes
1770
+ AC_DEFINE([SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS], 1, [ ])
1771
+ ])
1772
+ AC_MSG_RESULT($have_XGenericEvent)
1773
+
1774
+ AC_CHECK_LIB(X11, XkbKeycodeToKeysym, AC_DEFINE(SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM, 1, [Have XkbKeycodeToKeysym]))
1775
+
1776
+ AC_ARG_ENABLE(video-x11-xcursor,
1777
+ AC_HELP_STRING([--enable-video-x11-xcursor], [enable X11 Xcursor support [[default=yes]]]),
1778
+ , enable_video_x11_xcursor=yes)
1779
+ if test x$enable_video_x11_xcursor = xyes; then
1780
+ definitely_enable_video_x11_xcursor=no
1781
+ AC_CHECK_HEADER(X11/Xcursor/Xcursor.h,
1782
+ have_xcursor_h_hdr=yes,
1783
+ have_xcursor_h_hdr=no,
1784
+ [#include <X11/Xlib.h>
1785
+ ])
1786
+ if test x$have_xcursor_h_hdr = xyes; then
1787
+ if test x$enable_x11_shared = xyes && test x$xcursor_lib != x ; then
1788
+ echo "-- dynamic libXcursor -> $xcursor_lib"
1789
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR, "$xcursor_lib", [ ])
1790
+ definitely_enable_video_x11_xcursor=yes
1791
+ else
1792
+ AC_CHECK_LIB(Xcursor, XcursorImageCreate, have_xcursor_lib=yes)
1793
+ if test x$have_xcursor_lib = xyes ; then
1794
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lXcursor"
1795
+ definitely_enable_video_x11_xcursor=yes
1796
+ fi
1797
+ fi
1798
+ fi
1799
+ fi
1800
+ if test x$definitely_enable_video_x11_xcursor = xyes; then
1801
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XCURSOR, 1, [ ])
1802
+ SUMMARY_video_x11="${SUMMARY_video_x11} xcursor"
1803
+ fi
1804
+ AC_ARG_ENABLE(video-x11-xdbe,
1805
+ AC_HELP_STRING([--enable-video-x11-xdbe], [enable X11 Xdbe support [[default=yes]]]),
1806
+ , enable_video_x11_xdbe=yes)
1807
+ if test x$enable_video_x11_xdbe = xyes; then
1808
+ AC_CHECK_HEADER(X11/extensions/Xdbe.h,
1809
+ have_dbe_h_hdr=yes,
1810
+ have_dbe_h_hdr=no,
1811
+ [#include <X11/Xlib.h>
1812
+ ])
1813
+ if test x$have_dbe_h_hdr = xyes; then
1814
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XDBE, 1, [ ])
1815
+ SUMMARY_video_x11="${SUMMARY_video_x11} xdbe"
1816
+ fi
1817
+ fi
1818
+ AC_ARG_ENABLE(video-x11-xinerama,
1819
+ AC_HELP_STRING([--enable-video-x11-xinerama], [enable X11 Xinerama support [[default=yes]]]),
1820
+ , enable_video_x11_xinerama=yes)
1821
+ if test x$enable_video_x11_xinerama = xyes; then
1822
+ definitely_enable_video_x11_xinerama=no
1823
+ AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1824
+ have_xinerama_h_hdr=yes,
1825
+ have_xinerama_h_hdr=no,
1826
+ [#include <X11/Xlib.h>
1827
+ ])
1828
+ if test x$have_xinerama_h_hdr = xyes; then
1829
+ if test x$enable_x11_shared = xyes && test x$xinerama_lib != x ; then
1830
+ echo "-- dynamic libXinerama -> $xinerama_lib"
1831
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA, "$xinerama_lib", [ ])
1832
+ definitely_enable_video_x11_xinerama=yes
1833
+ else
1834
+ AC_CHECK_LIB(Xinerama, XineramaQueryExtension, have_xinerama_lib=yes)
1835
+ if test x$have_xinerama_lib = xyes ; then
1836
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lXinerama"
1837
+ definitely_enable_video_x11_xinerama=yes
1838
+ fi
1839
+ fi
1840
+ fi
1841
+ fi
1842
+ if test x$definitely_enable_video_x11_xinerama = xyes; then
1843
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINERAMA, 1, [ ])
1844
+ SUMMARY_video_x11="${SUMMARY_video_x11} xinerama"
1845
+ fi
1846
+ AC_ARG_ENABLE(video-x11-xinput,
1847
+ AC_HELP_STRING([--enable-video-x11-xinput], [enable X11 XInput extension for manymouse, tablets, etc [[default=yes]]]),
1848
+ , enable_video_x11_xinput=yes)
1849
+ if test x$enable_video_x11_xinput = xyes; then
1850
+ definitely_enable_video_x11_xinput=no
1851
+ AC_CHECK_HEADER(X11/extensions/XInput2.h,
1852
+ have_xinput_h_hdr=yes,
1853
+ have_xinput_h_hdr=no,
1854
+ [#include <X11/Xlib.h>
1855
+ ])
1856
+ if test x$have_xinput_h_hdr = xyes; then
1857
+ if test x$enable_x11_shared = xyes && test x$xinput_lib != x ; then
1858
+ echo "-- dynamic libXi -> $xinput_lib"
1859
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2, "$xinput_lib", [ ])
1860
+ definitely_enable_video_x11_xinput=yes
1861
+ else
1862
+ AC_CHECK_LIB(Xi, XOpenDevice, have_xinput_lib=yes)
1863
+ if test x$have_xinput_lib = xyes ; then
1864
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lXi"
1865
+ definitely_enable_video_x11_xinput=yes
1866
+ fi
1867
+ fi
1868
+ fi
1869
+ fi
1870
+ if test x$definitely_enable_video_x11_xinput = xyes; then
1871
+ SUMMARY_video_x11="${SUMMARY_video_x11} xinput2"
1872
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINPUT2, 1, [ ])
1873
+ AC_MSG_CHECKING(for xinput2 multitouch)
1874
+ have_xinput2_multitouch=no
1875
+ AC_TRY_COMPILE([
1876
+ #include <X11/Xlib.h>
1877
+ #include <X11/Xproto.h>
1878
+ #include <X11/extensions/XInput2.h>
1879
+ ],[
1880
+ int event_type = XI_TouchBegin;
1881
+ XITouchClassInfo *t;
1882
+ ],[
1883
+ have_xinput2_multitouch=yes
1884
+ AC_DEFINE([SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH], 1, [])
1885
+ SUMMARY_video_x11="${SUMMARY_video_x11} xinput2_multitouch"
1886
+ ])
1887
+ AC_MSG_RESULT($have_xinput2_multitouch)
1888
+ fi
1889
+ AC_ARG_ENABLE(video-x11-xrandr,
1890
+ AC_HELP_STRING([--enable-video-x11-xrandr], [enable X11 Xrandr extension for fullscreen [[default=yes]]]),
1891
+ , enable_video_x11_xrandr=yes)
1892
+ if test x$enable_video_x11_xrandr = xyes; then
1893
+ dnl XRRScreenResources is only present in Xrandr >= 1.2, we use that as a test.
1894
+ definitely_enable_video_x11_xrandr=no
1895
+ have_xrandr_h_hdr=no
1896
+ AC_TRY_COMPILE([
1897
+ #include <X11/Xlib.h>
1898
+ #include <X11/extensions/Xrandr.h>
1899
+ ],[
1900
+ XRRScreenResources *res = NULL;
1901
+ ],[
1902
+ have_xrandr_h_hdr=yes
1903
+ ])
1904
+ if test x$have_xrandr_h_hdr = xyes; then
1905
+ if test x$enable_x11_shared = xyes && test x$xrandr_lib != x ; then
1906
+ echo "-- dynamic libXrandr -> $xrandr_lib"
1907
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR, "$xrandr_lib", [ ])
1908
+ definitely_enable_video_x11_xrandr=yes
1909
+ else
1910
+ AC_CHECK_LIB(Xrandr, XRRQueryExtension, have_xrandr_lib=yes)
1911
+ if test x$have_xrandr_lib = xyes ; then
1912
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lXrandr"
1913
+ definitely_enable_video_x11_xrandr=yes
1914
+ fi
1915
+ fi
1916
+ fi
1917
+ fi
1918
+ if test x$definitely_enable_video_x11_xrandr = xyes; then
1919
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR, 1, [ ])
1920
+ SUMMARY_video_x11="${SUMMARY_video_x11} xrandr"
1921
+ fi
1922
+ AC_ARG_ENABLE(video-x11-scrnsaver,
1923
+ AC_HELP_STRING([--enable-video-x11-scrnsaver], [enable X11 screensaver extension [[default=yes]]]),
1924
+ , enable_video_x11_scrnsaver=yes)
1925
+ if test x$enable_video_x11_scrnsaver = xyes; then
1926
+ AC_CHECK_HEADER(X11/extensions/scrnsaver.h,
1927
+ have_scrnsaver_h_hdr=yes,
1928
+ have_scrnsaver_h_hdr=no,
1929
+ [#include <X11/Xlib.h>
1930
+ ])
1931
+ if test x$have_scrnsaver_h_hdr = xyes; then
1932
+ if test x$enable_x11_shared = xyes && test x$xss_lib != x ; then
1933
+ echo "-- dynamic libXss -> $xss_lib"
1934
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS, "$xss_lib", [ ])
1935
+ definitely_enable_video_x11_scrnsaver=yes
1936
+ else
1937
+ AC_CHECK_LIB(Xss, XScreenSaverSuspend, have_xss_lib=yes)
1938
+ if test x$have_xss_lib = xyes ; then
1939
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lXss"
1940
+ definitely_enable_video_x11_scrnsaver=yes
1941
+ fi
1942
+ fi
1943
+ fi
1944
+ fi
1945
+ if test x$definitely_enable_video_x11_scrnsaver = xyes; then
1946
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XSCRNSAVER, 1, [ ])
1947
+ SUMMARY_video_x11="${SUMMARY_video_x11} xscrnsaver"
1948
+ fi
1949
+ AC_ARG_ENABLE(video-x11-xshape,
1950
+ AC_HELP_STRING([--enable-video-x11-xshape], [enable X11 XShape support [[default=yes]]]),
1951
+ , enable_video_x11_xshape=yes)
1952
+ if test x$enable_video_x11_xshape = xyes; then
1953
+ AC_CHECK_HEADER(X11/extensions/shape.h,
1954
+ have_shape_h_hdr=yes,
1955
+ have_shape_h_hdr=no,
1956
+ [#include <X11/Xlib.h>
1957
+ ])
1958
+ if test x$have_shape_h_hdr = xyes; then
1959
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XSHAPE, 1, [ ])
1960
+ SUMMARY_video_x11="${SUMMARY_video_x11} xshape"
1961
+ fi
1962
+ fi
1963
+ AC_ARG_ENABLE(video-x11-vm,
1964
+ AC_HELP_STRING([--enable-video-x11-vm], [use X11 VM extension for fullscreen [[default=yes]]]),
1965
+ , enable_video_x11_vm=yes)
1966
+ if test x$enable_video_x11_vm = xyes; then
1967
+ definitely_enable_video_x11_vm=no
1968
+ AC_CHECK_HEADER(X11/extensions/xf86vmode.h,
1969
+ have_vm_h_hdr=yes,
1970
+ have_vm_h_hdr=no,
1971
+ [#include <X11/Xlib.h>
1972
+ ])
1973
+ if test x$have_vm_h_hdr = xyes; then
1974
+ if test x$enable_x11_shared = xyes && test x$xvidmode_lib != x ; then
1975
+ echo "-- dynamic libXxf86vm -> $xvidmode_lib"
1976
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE, "$xvidmode_lib", [ ])
1977
+ definitely_enable_video_x11_vm=yes
1978
+ else
1979
+ AC_CHECK_LIB(Xxf86vm, XF86VidModeQueryVersion, have_vm_lib=yes)
1980
+ if test x$have_vm_lib = xyes ; then
1981
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lXxf86vm"
1982
+ definitely_enable_video_x11_vm=yes
1983
+ fi
1984
+ fi
1985
+ fi
1986
+ fi
1987
+ if test x$definitely_enable_video_x11_vm = xyes; then
1988
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XVIDMODE, 1, [ ])
1989
+ SUMMARY_video_x11="${SUMMARY_video_x11} xvidmode"
1990
+ fi
1991
+ fi
1992
+ fi
1993
+ }
1994
+
1995
+ dnl Set up the Vivante video driver if enabled
1996
+ CheckVivanteVideo()
1997
+ {
1998
+ AC_ARG_ENABLE(video-vivante,
1999
+ AC_HELP_STRING([--enable-video-vivante], [use Vivante EGL video driver [[default=yes]]]),
2000
+ , enable_video_vivante=yes)
2001
+ if test x$enable_video = xyes -a x$enable_video_vivante = xyes; then
2002
+ AC_MSG_CHECKING(for Vivante VDK API)
2003
+ have_vivante_vdk=no
2004
+ AC_TRY_COMPILE([
2005
+ #define LINUX
2006
+ #define EGL_API_FB
2007
+ #include <gc_vdk.h>
2008
+ ],[
2009
+ ],[
2010
+ have_vivante_vdk=yes
2011
+ ])
2012
+ AC_MSG_RESULT($have_vivante_vdk)
2013
+
2014
+ AC_MSG_CHECKING(for Vivante FB API)
2015
+ have_vivante_egl=no
2016
+ AC_TRY_COMPILE([
2017
+ #define LINUX
2018
+ #define EGL_API_FB
2019
+ #include <EGL/eglvivante.h>
2020
+ ],[
2021
+ ],[
2022
+ have_vivante_egl=yes
2023
+ ])
2024
+ AC_MSG_RESULT($have_vivante_egl)
2025
+
2026
+ if test x$have_vivante_vdk = xyes -o x$have_vivante_egl = xyes; then
2027
+ AC_DEFINE(SDL_VIDEO_DRIVER_VIVANTE, 1, [ ])
2028
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DLINUX -DEGL_API_FB"
2029
+ if test x$have_vivante_vdk = xyes; then
2030
+ AC_DEFINE(SDL_VIDEO_DRIVER_VIVANTE_VDK, 1, [ ])
2031
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lVDK"
2032
+ fi
2033
+ SOURCES="$SOURCES $srcdir/src/video/vivante/*.c"
2034
+ SUMMARY_video="${SUMMARY_video} vivante"
2035
+ have_video=yes
2036
+ fi
2037
+ fi
2038
+ }
2039
+
2040
+ dnl Set up the Haiku video driver if enabled
2041
+ CheckHaikuVideo()
2042
+ {
2043
+ if test x$enable_video = xyes; then
2044
+ AC_DEFINE(SDL_VIDEO_DRIVER_HAIKU, 1, [ ])
2045
+ SOURCES="$SOURCES $srcdir/src/video/haiku/*.cc"
2046
+ have_video=yes
2047
+ SUMMARY_video="${SUMMARY_video} haiku"
2048
+ fi
2049
+ }
2050
+
2051
+ dnl Set up the Cocoa video driver for Mac OS X (but not Darwin)
2052
+ CheckCOCOA()
2053
+ {
2054
+ AC_ARG_ENABLE(video-cocoa,
2055
+ AC_HELP_STRING([--enable-video-cocoa], [use Cocoa video driver [[default=yes]]]),
2056
+ , enable_video_cocoa=yes)
2057
+ if test x$enable_video = xyes -a x$enable_video_cocoa = xyes; then
2058
+ save_CFLAGS="$CFLAGS"
2059
+ dnl Work around that we don't have Objective-C support in autoconf
2060
+ CFLAGS="$CFLAGS -x objective-c"
2061
+ AC_MSG_CHECKING(for Cocoa framework)
2062
+ have_cocoa=no
2063
+ AC_TRY_COMPILE([
2064
+ #import <Cocoa/Cocoa.h>
2065
+ ],[
2066
+ ],[
2067
+ have_cocoa=yes
2068
+ ])
2069
+ AC_MSG_RESULT($have_cocoa)
2070
+ CFLAGS="$save_CFLAGS"
2071
+ if test x$have_cocoa = xyes; then
2072
+ AC_DEFINE(SDL_VIDEO_DRIVER_COCOA, 1, [ ])
2073
+ SOURCES="$SOURCES $srcdir/src/video/cocoa/*.m"
2074
+ SUMMARY_video="${SUMMARY_video} cocoa"
2075
+ have_video=yes
2076
+ fi
2077
+ fi
2078
+ }
2079
+
2080
+ CheckMETAL()
2081
+ {
2082
+ AC_ARG_ENABLE(render-metal,
2083
+ AC_HELP_STRING([--enable-render-metal], [enable the Metal render driver [[default=yes]]]),
2084
+ , enable_render_metal=yes)
2085
+ if test x$enable_render = xyes -a x$enable_render_metal = xyes; then
2086
+ save_CFLAGS="$CFLAGS"
2087
+ dnl Work around that we don't have Objective-C support in autoconf
2088
+ CFLAGS="$CFLAGS -x objective-c"
2089
+ AC_MSG_CHECKING(for Metal framework)
2090
+ have_metal=no
2091
+ AC_TRY_COMPILE([
2092
+ #import <Cocoa/Cocoa.h>
2093
+ #import <Metal/Metal.h>
2094
+ #import <QuartzCore/CAMetalLayer.h>
2095
+
2096
+ #if !TARGET_CPU_X86_64
2097
+ #error Metal doesn't work on this configuration
2098
+ #endif
2099
+ ],[
2100
+ ],[
2101
+ have_metal=yes
2102
+ ])
2103
+ CFLAGS="$save_CFLAGS"
2104
+ AC_MSG_RESULT($have_metal)
2105
+ if test x$have_metal = xyes; then
2106
+ AC_DEFINE(SDL_VIDEO_RENDER_METAL, 1, [ ])
2107
+ SOURCES="$SOURCES $srcdir/src/render/metal/*.m"
2108
+ SUMMARY_video="${SUMMARY_video} metal"
2109
+ else
2110
+ enable_render_metal=no
2111
+ fi
2112
+ fi
2113
+ }
2114
+
2115
+
2116
+ dnl Find DirectFB
2117
+ CheckDirectFB()
2118
+ {
2119
+ AC_ARG_ENABLE(video-directfb,
2120
+ AC_HELP_STRING([--enable-video-directfb], [use DirectFB video driver [[default=no]]]),
2121
+ , enable_video_directfb=no)
2122
+ if test x$enable_video = xyes -a x$enable_video_directfb = xyes; then
2123
+ video_directfb=no
2124
+
2125
+ DIRECTFB_REQUIRED_VERSION=1.0.0
2126
+ AC_PATH_PROGS(DIRECTFBCONFIG, directfb-config, no, [$prefix/bin:$PATH])
2127
+ if test x$DIRECTFBCONFIG = xno; then
2128
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
2129
+ if test x$PKG_CONFIG != xno; then
2130
+ if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb; then
2131
+ DIRECTFB_CFLAGS=`$PKG_CONFIG --cflags directfb`
2132
+ DIRECTFB_LIBS=`$PKG_CONFIG --libs directfb`
2133
+ DIRECTFB_PREFIX=`$PKG_CONFIG --variable=prefix directfb`
2134
+ video_directfb=yes
2135
+ fi
2136
+ fi
2137
+ else
2138
+ set -- `echo $DIRECTFB_REQUIRED_VERSION | sed 's/\./ /g'`
2139
+ NEED_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
2140
+ set -- `$DIRECTFBCONFIG --version | sed 's/\./ /g'`
2141
+ HAVE_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
2142
+ if test $HAVE_VERSION -ge $NEED_VERSION; then
2143
+ DIRECTFB_CFLAGS=`$DIRECTFBCONFIG --cflags`
2144
+ DIRECTFB_LIBS=`$DIRECTFBCONFIG --libs`
2145
+ DIRECTFB_PREFIX=`$DIRECTFBCONFIG --prefix`
2146
+ video_directfb=yes
2147
+ fi
2148
+ fi
2149
+ if test x$video_directfb = xyes; then
2150
+ # SuSE 11.1 installs directfb-config without directfb-devel
2151
+ save_CPPFLAGS="$CPPFLAGS"
2152
+ CPPFLAGS="$CPPFLAGS $DIRECTFB_CFLAGS"
2153
+ AC_CHECK_HEADER(directfb.h, have_directfb_hdr=yes, have_directfb_hdr=no)
2154
+ CPPFLAGS="$save_CPPFLAGS"
2155
+ video_directfb=$have_directfb_hdr
2156
+ fi
2157
+ AC_MSG_CHECKING(for DirectFB $DIRECTFB_REQUIRED_VERSION support)
2158
+ AC_MSG_RESULT($video_directfb)
2159
+
2160
+ if test x$video_directfb = xyes; then
2161
+ AC_ARG_ENABLE(directfb-shared,
2162
+ AC_HELP_STRING([--enable-directfb-shared], [dynamically load directfb support [[default=yes]]]),
2163
+ , enable_directfb_shared=yes)
2164
+
2165
+ AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB, 1, [ ])
2166
+ SOURCES="$SOURCES $srcdir/src/video/directfb/*.c"
2167
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS"
2168
+
2169
+ AC_MSG_CHECKING(for directfb dynamic loading support)
2170
+ directfb_shared=no
2171
+ directfb_lib=[`find_lib "libdirectfb*.so.*" "$DIRECTFB_LIBS"`]
2172
+ # | sed 's/.*\/\(.*\)/\1/; q'`]
2173
+ AC_MSG_WARN("directfb $directfb_lib")
2174
+ if test x$have_loadso != xyes && \
2175
+ test x$enable_directfb_shared = xyes; then
2176
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic directfb loading])
2177
+ fi
2178
+ if test x$have_loadso = xyes && \
2179
+ test x$enable_directfb_shared = xyes && test x$directfb_lib != x; then
2180
+ directfb_shared=yes
2181
+ echo "-- $directfb_lib_spec -> $directfb_lib"
2182
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC, "$directfb_lib", [ ])
2183
+ SUMMARY_video="${SUMMARY_video} directfb(dynamic)"
2184
+ else
2185
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $DIRECTFB_LIBS"
2186
+ SUMMARY_video="${SUMMARY_video} directfb"
2187
+ fi
2188
+ AC_MSG_RESULT($directfb_shared)
2189
+ SDL_CFLAGS="$SDL_CFLAGS $DIRECTFB_CFLAGS"
2190
+ have_video=yes
2191
+ fi
2192
+ fi
2193
+ }
2194
+
2195
+ dnl Find KMSDRM
2196
+ CheckKMSDRM()
2197
+ {
2198
+ AC_ARG_ENABLE(video-kmsdrm,
2199
+ AC_HELP_STRING([--enable-video-kmsdrm], [use KMSDRM video driver [[default=no]]]),
2200
+ , enable_video_kmsdrm=no)
2201
+
2202
+ if test x$enable_video = xyes -a x$enable_video_kmsdrm = xyes; then
2203
+ video_kmsdrm=no
2204
+ libdrm_avail=no
2205
+ libgbm_avail=no
2206
+
2207
+ LIBDRM_REQUIRED_VERSION=2.4.46
2208
+ LIBGBM_REQUIRED_VERSION=9.0.0
2209
+
2210
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
2211
+ if test x$PKG_CONFIG != xno; then
2212
+ if $PKG_CONFIG --atleast-pkgconfig-version 0.7; then
2213
+ if $PKG_CONFIG --atleast-version $LIBDRM_REQUIRED_VERSION libdrm; then
2214
+ LIBDRM_CFLAGS=`$PKG_CONFIG --cflags libdrm`
2215
+ LIBDRM_LIBS=`$PKG_CONFIG --libs libdrm`
2216
+ LIBDRM_PREFIX=`$PKG_CONFIG --variable=prefix libdrm`
2217
+ libdrm_avail=yes
2218
+ fi
2219
+ if $PKG_CONFIG --atleast-version $LIBGBM_REQUIRED_VERSION gbm; then
2220
+ LIBGBM_CFLAGS=`$PKG_CONFIG --cflags gbm`
2221
+ LIBGBM_LIBS=`$PKG_CONFIG --libs gbm`
2222
+ LIBGBM_PREFIX=`$PKG_CONFIG --variable=prefix gbm`
2223
+ libgbm_avail=yes
2224
+ fi
2225
+ if test x$libdrm_avail = xyes -a x$libgbm_avail = xyes; then
2226
+ video_kmsdrm=yes
2227
+ fi
2228
+
2229
+ AC_MSG_CHECKING(for libdrm $LIBDRM_REQUIRED_VERSION library for kmsdrm support)
2230
+ AC_MSG_RESULT($libdrm_avail)
2231
+ AC_MSG_CHECKING(for libgbm $LIBGBM_REQUIRED_VERSION library for kmsdrm support)
2232
+ AC_MSG_RESULT($libgbm_avail)
2233
+
2234
+ if test x$video_kmsdrm = xyes; then
2235
+ AC_ARG_ENABLE(kmsdrm-shared,
2236
+ AC_HELP_STRING([--enable-kmsdrm-shared], [dynamically load kmsdrm support [[default=yes]]]),
2237
+ , enable_kmsdrm_shared=yes)
2238
+
2239
+ AC_DEFINE(SDL_VIDEO_DRIVER_KMSDRM, 1, [ ])
2240
+ SOURCES="$SOURCES $srcdir/src/video/kmsdrm/*.c"
2241
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $LIBDRM_CFLAGS $LIBGBM_CFLAGS"
2242
+
2243
+ AC_MSG_CHECKING(for kmsdrm dynamic loading support)
2244
+ kmsdrm_shared=no
2245
+ drm_lib=[`find_lib "libdrm.so.*" "$DRM_LIBS"`]
2246
+ gbm_lib=[`find_lib "libgbm.so.*" "$DRM_LIBS"`]
2247
+ if test x$have_loadso != xyes && \
2248
+ test x$enable_kmsdrm_shared = xyes; then
2249
+ AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic kmsdrm loading])
2250
+ fi
2251
+ if test x$have_loadso = xyes && \
2252
+ test x$enable_kmsdrm_shared = xyes && test x$drm_lib != x && test x$gbm_lib != x; then
2253
+ kmsdrm_shared=yes
2254
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC, "$drm_lib", [ ])
2255
+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM, "$gbm_lib", [ ])
2256
+ AC_DEFINE_UNQUOTED(HAVE_KMSDRM_SHARED, "TRUE", [ ])
2257
+ SUMMARY_video="${SUMMARY_video} kmsdrm(dynamic)"
2258
+ else
2259
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $LIBDRM_LIBS $LIBGBM_LIBS"
2260
+ SUMMARY_video="${SUMMARY_video} kmsdrm"
2261
+ fi
2262
+ AC_MSG_RESULT($kmsdrm_shared)
2263
+ have_video=yes
2264
+ fi
2265
+ fi
2266
+ fi
2267
+ fi
2268
+ }
2269
+
2270
+ dnl rcg04172001 Set up the Null video driver.
2271
+ CheckDummyVideo()
2272
+ {
2273
+ AC_ARG_ENABLE(video-dummy,
2274
+ AC_HELP_STRING([--enable-video-dummy], [use dummy video driver [[default=yes]]]),
2275
+ , enable_video_dummy=yes)
2276
+ if test x$enable_video_dummy = xyes; then
2277
+ AC_DEFINE(SDL_VIDEO_DRIVER_DUMMY, 1, [ ])
2278
+ SOURCES="$SOURCES $srcdir/src/video/dummy/*.c"
2279
+ have_video=yes
2280
+ SUMMARY_video="${SUMMARY_video} dummy"
2281
+ fi
2282
+ }
2283
+
2284
+ dnl Set up the QNX video driver if enabled
2285
+ CheckQNXVideo()
2286
+ {
2287
+ if test x$enable_video = xyes; then
2288
+ AC_DEFINE(SDL_VIDEO_DRIVER_QNX, 1, [ ])
2289
+ SOURCES="$SOURCES $srcdir/src/video/qnx/*.c"
2290
+ have_video=yes
2291
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lscreen -lEGL -lGLESv2"
2292
+ SUMMARY_video="${SUMMARY_video} qnx"
2293
+ fi
2294
+ }
2295
+
2296
+ dnl Set up the QNX audio driver if enabled
2297
+ CheckQNXAudio()
2298
+ {
2299
+ if test x$enable_audio = xyes; then
2300
+ AC_DEFINE(SDL_AUDIO_DRIVER_QSA, 1, [ ])
2301
+ SOURCES="$SOURCES $srcdir/src/audio/qsa/*.c"
2302
+ have_audio=yes
2303
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lasound"
2304
+ SUMMARY_audio="${SUMMARY_audio} qsa"
2305
+ fi
2306
+ }
2307
+
2308
+ dnl Check to see if OpenGL support is desired
2309
+ AC_ARG_ENABLE(video-opengl,
2310
+ AC_HELP_STRING([--enable-video-opengl], [include OpenGL support [[default=yes]]]),
2311
+ , enable_video_opengl=yes)
2312
+
2313
+ dnl Find OpenGL
2314
+ CheckOpenGLX11()
2315
+ {
2316
+ if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
2317
+ AC_MSG_CHECKING(for OpenGL (GLX) support)
2318
+ video_opengl=no
2319
+ AC_TRY_COMPILE([
2320
+ #include <GL/gl.h>
2321
+ #include <GL/glx.h>
2322
+ ],[
2323
+ ],[
2324
+ video_opengl=yes
2325
+ ])
2326
+ AC_MSG_RESULT($video_opengl)
2327
+ if test x$video_opengl = xyes; then
2328
+ AC_DEFINE(SDL_VIDEO_OPENGL, 1, [ ])
2329
+ AC_DEFINE(SDL_VIDEO_OPENGL_GLX, 1, [ ])
2330
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL, 1, [ ])
2331
+ SUMMARY_video="${SUMMARY_video} opengl"
2332
+ fi
2333
+ fi
2334
+ }
2335
+
2336
+ dnl Check to see if OpenGL ES support is desired
2337
+ AC_ARG_ENABLE(video-opengles,
2338
+ AC_HELP_STRING([--enable-video-opengles], [include OpenGL ES support [[default=yes]]]),
2339
+ , enable_video_opengles=yes)
2340
+ AC_ARG_ENABLE(video-opengles1,
2341
+ AC_HELP_STRING([--enable-video-opengles1], [include OpenGL ES 1.1 support [[default=yes]]]),
2342
+ , enable_video_opengles1=yes)
2343
+ AC_ARG_ENABLE(video-opengles2,
2344
+ AC_HELP_STRING([--enable-video-opengles2], [include OpenGL ES 2.0 support [[default=yes]]]),
2345
+ , enable_video_opengles2=yes)
2346
+
2347
+ dnl Find OpenGL ES
2348
+ CheckOpenGLESX11()
2349
+ {
2350
+ if test x$enable_video = xyes -a x$enable_video_opengles = xyes; then
2351
+ AC_MSG_CHECKING(for EGL support)
2352
+ video_opengl_egl=no
2353
+ AC_TRY_COMPILE([
2354
+ #define LINUX
2355
+ #define EGL_API_FB
2356
+ #include <EGL/egl.h>
2357
+ #include <EGL/eglext.h>
2358
+ ],[
2359
+ ],[
2360
+ video_opengl_egl=yes
2361
+ ])
2362
+ AC_MSG_RESULT($video_opengl_egl)
2363
+ if test x$video_opengl_egl = xyes; then
2364
+ AC_DEFINE(SDL_VIDEO_OPENGL_EGL, 1, [ ])
2365
+ fi
2366
+
2367
+ if test x$enable_video_opengles1 = xyes; then
2368
+ AC_MSG_CHECKING(for OpenGL ES v1 headers)
2369
+ video_opengles_v1=no
2370
+ AC_TRY_COMPILE([
2371
+ #include <GLES/gl.h>
2372
+ #include <GLES/glext.h>
2373
+ ],[
2374
+ ],[
2375
+ video_opengles_v1=yes
2376
+ ])
2377
+ AC_MSG_RESULT($video_opengles_v1)
2378
+ if test x$video_opengles_v1 = xyes; then
2379
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES, 1, [ ])
2380
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES, 1, [ ])
2381
+ SUMMARY_video="${SUMMARY_video} opengl_es1"
2382
+ fi
2383
+ fi
2384
+
2385
+ if test x$enable_video_opengles2 = xyes; then
2386
+ AC_MSG_CHECKING(for OpenGL ES v2 headers)
2387
+ video_opengles_v2=no
2388
+ AC_TRY_COMPILE([
2389
+ #include <GLES2/gl2.h>
2390
+ #include <GLES2/gl2ext.h>
2391
+ ],[
2392
+ ],[
2393
+ video_opengles_v2=yes
2394
+ ])
2395
+ AC_MSG_RESULT($video_opengles_v2)
2396
+ if test x$video_opengles_v2 = xyes; then
2397
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ])
2398
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES2, 1, [ ])
2399
+ SUMMARY_video="${SUMMARY_video} opengl_es2"
2400
+ fi
2401
+ fi
2402
+ fi
2403
+ }
2404
+
2405
+ dnl Check for Windows OpenGL
2406
+ CheckWINDOWSGL()
2407
+ {
2408
+ if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
2409
+ AC_DEFINE(SDL_VIDEO_OPENGL, 1, [ ])
2410
+ AC_DEFINE(SDL_VIDEO_OPENGL_WGL, 1, [ ])
2411
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL, 1, [ ])
2412
+ SUMMARY_video="${SUMMARY_video} opengl"
2413
+ fi
2414
+ }
2415
+
2416
+ dnl Check for Windows OpenGL
2417
+ CheckWINDOWSGLES()
2418
+ {
2419
+ if test x$enable_video = xyes -a x$enable_video_opengles = xyes; then
2420
+
2421
+ AC_MSG_CHECKING(for EGL support)
2422
+ video_opengl_egl=no
2423
+ AC_TRY_COMPILE([
2424
+ #include <EGL/egl.h>
2425
+ ],[
2426
+ ],[
2427
+ video_opengl_egl=yes
2428
+ ])
2429
+ AC_MSG_RESULT($video_opengl_egl)
2430
+ if test x$video_opengl_egl = xyes; then
2431
+ AC_DEFINE(SDL_VIDEO_OPENGL, 1, [ ])
2432
+ AC_DEFINE(SDL_VIDEO_OPENGL_EGL, 1, [ ])
2433
+ SUMMARY_video="${SUMMARY_video} opengl_es1"
2434
+ fi
2435
+
2436
+ AC_MSG_CHECKING(for OpenGL ES v2 headers)
2437
+ video_opengles_v2=no
2438
+ AC_TRY_COMPILE([
2439
+ #include <GLES2/gl2.h>
2440
+ #include <GLES2/gl2ext.h>
2441
+ ],[
2442
+ ],[
2443
+ video_opengles_v2=yes
2444
+ ])
2445
+ AC_MSG_RESULT($video_opengles_v2)
2446
+ if test x$video_opengles_v2 = xyes; then
2447
+ AC_DEFINE(SDL_VIDEO_OPENGL, 1, [ ])
2448
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ])
2449
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES2, 1, [ ])
2450
+ SUMMARY_video="${SUMMARY_video} opengl_es2"
2451
+ fi
2452
+ fi
2453
+ }
2454
+
2455
+ dnl Check for Haiku OpenGL
2456
+ CheckHaikuGL()
2457
+ {
2458
+ if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
2459
+ AC_DEFINE(SDL_VIDEO_OPENGL, 1, [ ])
2460
+ AC_DEFINE(SDL_VIDEO_OPENGL_HAIKU, 1, [ ])
2461
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL, 1, [ ])
2462
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lGL"
2463
+ SUMMARY_video="${SUMMARY_video} opengl"
2464
+ fi
2465
+ }
2466
+
2467
+ dnl Check for MacOS OpenGL
2468
+ CheckMacGL()
2469
+ {
2470
+ if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
2471
+ AC_DEFINE(SDL_VIDEO_OPENGL, 1, [ ])
2472
+ AC_DEFINE(SDL_VIDEO_OPENGL_CGL, 1, [ ])
2473
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL, 1, [ ])
2474
+ SUMMARY_video="${SUMMARY_video} opengl"
2475
+ fi
2476
+ }
2477
+
2478
+ dnl Check for MacOS OpenGLES
2479
+ CheckMacGLES()
2480
+ {
2481
+ if test x$enable_video = xyes -a x$enable_video_opengles = xyes; then
2482
+ video_opengl_egl=yes
2483
+ AC_DEFINE(SDL_VIDEO_OPENGL_EGL, 1, [ ])
2484
+ video_opengles_v2=yes
2485
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ])
2486
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES2, 1, [ ])
2487
+ SUMMARY_video="${SUMMARY_video} opengl_es2"
2488
+ fi
2489
+ }
2490
+
2491
+ CheckEmscriptenGLES()
2492
+ {
2493
+ if test x$enable_video = xyes -a x$enable_video_opengles = xyes; then
2494
+ AC_MSG_CHECKING(for EGL support)
2495
+ video_opengl_egl=no
2496
+ AC_TRY_COMPILE([
2497
+ #include <EGL/egl.h>
2498
+ ],[
2499
+ ],[
2500
+ video_opengl_egl=yes
2501
+ ])
2502
+ AC_MSG_RESULT($video_opengl_egl)
2503
+ if test x$video_opengl_egl = xyes; then
2504
+ AC_DEFINE(SDL_VIDEO_OPENGL_EGL, 1, [ ])
2505
+ fi
2506
+
2507
+ AC_MSG_CHECKING(for OpenGL ES v2 headers)
2508
+ video_opengles_v2=no
2509
+ AC_TRY_COMPILE([
2510
+ #include <GLES2/gl2.h>
2511
+ #include <GLES2/gl2ext.h>
2512
+ ],[
2513
+ ],[
2514
+ video_opengles_v2=yes
2515
+ ])
2516
+ AC_MSG_RESULT($video_opengles_v2)
2517
+ if test x$video_opengles_v2 = xyes; then
2518
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ])
2519
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES2, 1, [ ])
2520
+ SUMMARY_video="${SUMMARY_video} opengl_es2"
2521
+ fi
2522
+ fi
2523
+ }
2524
+
2525
+ dnl Check to see if Vulkan support is desired
2526
+ AC_ARG_ENABLE(video-vulkan,
2527
+ AC_HELP_STRING([--enable-video-vulkan], [include Vulkan support [[default=yes]]]),
2528
+ , enable_video_vulkan=yes)
2529
+
2530
+ dnl Find Vulkan Header
2531
+ CheckVulkan()
2532
+ {
2533
+ if test x$enable_video = xyes -a x$enable_video_vulkan = xyes; then
2534
+ case "$host" in
2535
+ *-*-android*)
2536
+ AC_TRY_COMPILE([
2537
+ #if defined(__ARM_ARCH) && __ARM_ARCH < 7
2538
+ #error Vulkan doesn't work on this configuration
2539
+ #endif
2540
+ ],[
2541
+ ],[
2542
+ ],[
2543
+ enable_video_vulkan=no
2544
+ ])
2545
+ ;;
2546
+ *-*-darwin*)
2547
+ save_CFLAGS="$CFLAGS"
2548
+ dnl Work around that we don't have Objective-C support in autoconf
2549
+ CFLAGS="$CFLAGS -x objective-c"
2550
+ AC_TRY_COMPILE([
2551
+ #include <Cocoa/Cocoa.h>
2552
+ #include <Metal/Metal.h>
2553
+ #include <QuartzCore/CAMetalLayer.h>
2554
+
2555
+ #if !TARGET_CPU_X86_64
2556
+ #error Vulkan doesn't work on this configuration
2557
+ #endif
2558
+ ],[
2559
+ ],[
2560
+ ],[
2561
+ enable_video_vulkan=no
2562
+ ])
2563
+ CFLAGS="$save_CFLAGS"
2564
+ ;;
2565
+ *)
2566
+ ;;
2567
+ esac
2568
+ if test x$enable_video_vulkan = xno; then
2569
+ # For reasons I am totally unable to see, I get an undefined macro error if
2570
+ # I put this in the AC_TRY_COMPILE.
2571
+ AC_MSG_WARN([Vulkan does not work on this configuration.])
2572
+ fi
2573
+ fi
2574
+ if test x$enable_video_vulkan = xyes; then
2575
+ AC_DEFINE(SDL_VIDEO_VULKAN, 1, [ ])
2576
+ SUMMARY_video="${SUMMARY_video} vulkan"
2577
+ fi
2578
+ }
2579
+
2580
+ dnl See if we can use the new unified event interface in Linux 2.4
2581
+ CheckInputEvents()
2582
+ {
2583
+ dnl Check for Linux 2.4 unified input event interface support
2584
+ AC_MSG_CHECKING(for Linux 2.4 unified input interface)
2585
+ use_input_events=no
2586
+ AC_TRY_COMPILE([
2587
+ #include <linux/input.h>
2588
+ ],[
2589
+ #ifndef EVIOCGNAME
2590
+ #error EVIOCGNAME() ioctl not available
2591
+ #endif
2592
+ ],[
2593
+ use_input_events=yes
2594
+ ])
2595
+ AC_MSG_RESULT($use_input_events)
2596
+ if test x$use_input_events = xyes; then
2597
+ AC_DEFINE(SDL_INPUT_LINUXEV, 1, [ ])
2598
+ SUMMARY_input="${SUMMARY_input} linuxev"
2599
+ fi
2600
+ }
2601
+
2602
+ dnl See if we can use the kernel kd.h header
2603
+ CheckInputKD()
2604
+ {
2605
+
2606
+ AC_MSG_CHECKING(for Linux kd.h)
2607
+ use_input_kd=no
2608
+ AC_TRY_COMPILE([
2609
+ #include <linux/kd.h>
2610
+ #include <linux/keyboard.h>
2611
+ ],[
2612
+ struct kbentry kbe;
2613
+ kbe.kb_table = KG_CTRL;
2614
+ ioctl(0, KDGKBENT, &kbe);
2615
+ ],[
2616
+ use_input_kd=yes
2617
+ ])
2618
+ AC_MSG_RESULT($use_input_kd)
2619
+ if test x$use_input_kd = xyes; then
2620
+ AC_DEFINE(SDL_INPUT_LINUXKD, 1, [ ])
2621
+ SUMMARY_input="${SUMMARY_input} linuxkd"
2622
+ fi
2623
+ }
2624
+
2625
+ dnl See if the platform offers libudev for device enumeration and hotplugging.
2626
+ CheckLibUDev()
2627
+ {
2628
+ AC_ARG_ENABLE(libudev,
2629
+ AC_HELP_STRING([--enable-libudev], [enable libudev support [[default=yes]]]),
2630
+ , enable_libudev=yes)
2631
+ if test x$enable_libudev = xyes; then
2632
+ AC_CHECK_HEADER(libudev.h,
2633
+ have_libudev_h_hdr=yes,
2634
+ have_libudev_h_hdr=no)
2635
+ if test x$have_libudev_h_hdr = xyes; then
2636
+ AC_DEFINE(HAVE_LIBUDEV_H, 1, [ ])
2637
+
2638
+ udev_lib=[`find_lib "libudev.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`]
2639
+ if test x$udev_lib != x; then
2640
+ echo "-- dynamic udev -> $udev_lib"
2641
+ AC_DEFINE_UNQUOTED(SDL_UDEV_DYNAMIC, "$udev_lib", [ ])
2642
+ fi
2643
+ fi
2644
+ fi
2645
+ }
2646
+
2647
+ dnl See if the platform offers libdbus for various IPC techniques.
2648
+ CheckDBus()
2649
+ {
2650
+ AC_ARG_ENABLE(dbus,
2651
+ AC_HELP_STRING([--enable-dbus], [enable D-Bus support [[default=yes]]]),
2652
+ , enable_dbus=yes)
2653
+ if test x$enable_dbus = xyes; then
2654
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
2655
+ if test x$PKG_CONFIG != xno; then
2656
+ DBUS_CFLAGS=`$PKG_CONFIG --cflags dbus-1`
2657
+ save_CFLAGS="$CFLAGS"
2658
+ CFLAGS="$save_CFLAGS $DBUS_CFLAGS"
2659
+ AC_CHECK_HEADER(dbus/dbus.h,
2660
+ have_dbus_dbus_h_hdr=yes,
2661
+ have_dbus_dbus_h_hdr=no)
2662
+ CFLAGS="$save_CFLAGS"
2663
+ if test x$have_dbus_dbus_h_hdr = xyes; then
2664
+ AC_DEFINE(HAVE_DBUS_DBUS_H, 1, [ ])
2665
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $DBUS_CFLAGS"
2666
+ SOURCES="$SOURCES $srcdir/src/core/linux/SDL_dbus.c"
2667
+ fi
2668
+ fi
2669
+ fi
2670
+ }
2671
+
2672
+ dnl See if the platform wanna IME support.
2673
+ CheckIME()
2674
+ {
2675
+ AC_ARG_ENABLE(ime,
2676
+ AC_HELP_STRING([--enable-ime], [enable IME support [[default=yes]]]),
2677
+ , enable_ime=yes)
2678
+ if test x$enable_ime = xyes; then
2679
+ AC_DEFINE(SDL_USE_IME, 1, [ ])
2680
+ SOURCES="$SOURCES $srcdir/src/core/linux/SDL_ime.c"
2681
+ fi
2682
+ }
2683
+
2684
+ dnl See if the platform has libibus IME support.
2685
+ CheckIBus()
2686
+ {
2687
+ AC_ARG_ENABLE(ibus,
2688
+ AC_HELP_STRING([--enable-ibus], [enable IBus support [[default=yes]]]),
2689
+ , enable_ibus=yes)
2690
+ if test x$enable_ibus = xyes; then
2691
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
2692
+ if test x$PKG_CONFIG != xno; then
2693
+ IBUS_CFLAGS=`$PKG_CONFIG --cflags ibus-1.0`
2694
+ save_CFLAGS="$CFLAGS"
2695
+ CFLAGS="$save_CFLAGS $IBUS_CFLAGS"
2696
+ AC_CHECK_HEADER(ibus-1.0/ibus.h,
2697
+ have_ibus_ibus_h_hdr=yes,
2698
+ have_ibus_ibus_h_hdr=no)
2699
+ AC_CHECK_HEADER(sys/inotify.h,
2700
+ have_inotify_inotify_h_hdr=yes,
2701
+ have_inotify_inotify_h_hdr=no)
2702
+ CFLAGS="$save_CFLAGS"
2703
+ if test x$have_ibus_ibus_h_hdr = xyes; then
2704
+ if test x$enable_ime != xyes; then
2705
+ AC_MSG_WARN([IME support is required for IBus.])
2706
+ have_ibus_ibus_h_hdr=no
2707
+ elif test x$enable_dbus != xyes; then
2708
+ AC_MSG_WARN([DBus support is required for IBus.])
2709
+ have_ibus_ibus_h_hdr=no
2710
+ elif test x$have_inotify_inotify_h_hdr != xyes; then
2711
+ AC_MSG_WARN([INotify support is required for IBus.])
2712
+ have_ibus_ibus_h_hdr=no
2713
+ else
2714
+ AC_DEFINE(HAVE_IBUS_IBUS_H, 1, [ ])
2715
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $IBUS_CFLAGS"
2716
+ SOURCES="$SOURCES $srcdir/src/core/linux/SDL_ibus.c"
2717
+ fi
2718
+ fi
2719
+ fi
2720
+ fi
2721
+ }
2722
+
2723
+ dnl See if the platform has fcitx IME support.
2724
+ CheckFcitx()
2725
+ {
2726
+ AC_ARG_ENABLE(fcitx,
2727
+ AC_HELP_STRING([--enable-fcitx], [enable fcitx support [[default=yes]]]),
2728
+ , enable_fcitx=yes)
2729
+ if test x$enable_fcitx = xyes; then
2730
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
2731
+ if test x$PKG_CONFIG != xno; then
2732
+ FCITX_CFLAGS=`$PKG_CONFIG --cflags fcitx`
2733
+ CFLAGS="$CFLAGS $FCITX_CFLAGS"
2734
+ AC_CHECK_HEADER(fcitx/frontend.h,
2735
+ have_fcitx_frontend_h_hdr=yes,
2736
+ have_fcitx_frontend_h_hdr=no)
2737
+ CFLAGS="$save_CFLAGS"
2738
+ if test x$have_fcitx_frontend_h_hdr = xyes; then
2739
+ if test x$enable_ime != xyes; then
2740
+ AC_MSG_WARN([IME support is required for fcitx.])
2741
+ have_fcitx_frontend_h_hdr=no
2742
+ elif test x$enable_dbus != xyes; then
2743
+ AC_MSG_WARN([DBus support is required for fcitx.])
2744
+ have_fcitx_frontend_h_hdr=no
2745
+ else
2746
+ AC_DEFINE(HAVE_FCITX_FRONTEND_H, 1, [ ])
2747
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $FCITX_CFLAGS"
2748
+ SOURCES="$SOURCES $srcdir/src/core/linux/SDL_fcitx.c"
2749
+ fi
2750
+ fi
2751
+ fi
2752
+ fi
2753
+ }
2754
+
2755
+ dnl See if we can use the Touchscreen input library
2756
+ CheckTslib()
2757
+ {
2758
+ AC_ARG_ENABLE(input-tslib,
2759
+ AC_HELP_STRING([--enable-input-tslib], [use the Touchscreen library for input [[default=yes]]]),
2760
+ , enable_input_tslib=yes)
2761
+ if test x$enable_input_tslib = xyes; then
2762
+ AC_MSG_CHECKING(for Touchscreen library support)
2763
+ enable_input_tslib=no
2764
+ AC_TRY_COMPILE([
2765
+ #include "tslib.h"
2766
+ ],[
2767
+ ],[
2768
+ enable_input_tslib=yes
2769
+ ])
2770
+ AC_MSG_RESULT($enable_input_tslib)
2771
+ if test x$enable_input_tslib = xyes; then
2772
+ AC_DEFINE(SDL_INPUT_TSLIB, 1, [ ])
2773
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lts"
2774
+ SUMMARY_input="${SUMMARY_input} ts"
2775
+ fi
2776
+ fi
2777
+ }
2778
+
2779
+ dnl See what type of thread model to use on Linux and Solaris
2780
+ CheckPTHREAD()
2781
+ {
2782
+ dnl Check for pthread support
2783
+ AC_ARG_ENABLE(pthreads,
2784
+ AC_HELP_STRING([--enable-pthreads], [use POSIX threads for multi-threading [[default=yes]]]),
2785
+ , enable_pthreads=yes)
2786
+ dnl This is used on Linux for glibc binary compatibility (Doh!)
2787
+ AC_ARG_ENABLE(pthread-sem,
2788
+ AC_HELP_STRING([--enable-pthread-sem], [use pthread semaphores [[default=yes]]]),
2789
+ , enable_pthread_sem=yes)
2790
+ case "$host" in
2791
+ *-*-android*)
2792
+ pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
2793
+ pthread_lib=""
2794
+ ;;
2795
+ *-*-linux*|*-*-uclinux*)
2796
+ pthread_cflags="-D_REENTRANT"
2797
+ pthread_lib="-lpthread"
2798
+ ;;
2799
+ *-*-bsdi*)
2800
+ pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
2801
+ pthread_lib=""
2802
+ ;;
2803
+ *-*-darwin*)
2804
+ pthread_cflags="-D_THREAD_SAFE"
2805
+ # causes Carbon.p complaints?
2806
+ # pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
2807
+ ;;
2808
+ *-*-freebsd*|*-*-dragonfly*)
2809
+ pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
2810
+ pthread_lib="-pthread"
2811
+ ;;
2812
+ *-*-netbsd*)
2813
+ pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
2814
+ pthread_lib="-lpthread"
2815
+ ;;
2816
+ *-*-openbsd*)
2817
+ pthread_cflags="-D_REENTRANT"
2818
+ pthread_lib="-pthread"
2819
+ ;;
2820
+ *-*-solaris2.9)
2821
+ # From Solaris 9+, posix4's preferred name is rt.
2822
+ pthread_cflags="-D_REENTRANT"
2823
+ pthread_lib="-lpthread -lrt"
2824
+ ;;
2825
+ *-*-solaris2.10)
2826
+ # Solaris 10+ merged pthread into libc.
2827
+ pthread_cflags="-D_REENTRANT"
2828
+ pthread_lib="-lrt"
2829
+ ;;
2830
+ *-*-solaris*)
2831
+ # Solaris 11+ merged rt into libc.
2832
+ pthread_cflags="-D_REENTRANT"
2833
+ pthread_lib=""
2834
+ ;;
2835
+ *-*-sysv5*)
2836
+ pthread_cflags="-D_REENTRANT -Kthread"
2837
+ pthread_lib=""
2838
+ ;;
2839
+ *-*-aix*)
2840
+ pthread_cflags="-D_REENTRANT -mthreads"
2841
+ pthread_lib="-lpthread"
2842
+ ;;
2843
+ *-*-hpux11*)
2844
+ pthread_cflags="-D_REENTRANT"
2845
+ pthread_lib="-L/usr/lib -lpthread"
2846
+ ;;
2847
+ *-*-haiku*)
2848
+ pthread_cflags="-D_REENTRANT"
2849
+ pthread_lib=""
2850
+ ;;
2851
+ *-*-nto*)
2852
+ pthread_cflags="-D_REENTRANT"
2853
+ pthread_lib=""
2854
+ ;;
2855
+ *)
2856
+ pthread_cflags="-D_REENTRANT"
2857
+ pthread_lib="-lpthread"
2858
+ ;;
2859
+ esac
2860
+ if test x$enable_threads = xyes -a x$enable_pthreads = xyes; then
2861
+ # Save the original compiler flags and libraries
2862
+ ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS"
2863
+ # Add the pthread compiler flags and libraries
2864
+ CFLAGS="$CFLAGS $pthread_cflags"; LIBS="$LIBS $pthread_lib"
2865
+ # Check to see if we have pthread support on this system
2866
+ AC_MSG_CHECKING(for pthreads)
2867
+ use_pthreads=no
2868
+ AC_TRY_LINK([
2869
+ #include <pthread.h>
2870
+ ],[
2871
+ pthread_attr_t type;
2872
+ pthread_attr_init(&type);
2873
+ ],[
2874
+ use_pthreads=yes
2875
+ ])
2876
+ AC_MSG_RESULT($use_pthreads)
2877
+ # Restore the compiler flags and libraries
2878
+ CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs"
2879
+
2880
+ # Do futher testing if we have pthread support...
2881
+ if test x$use_pthreads = xyes; then
2882
+ AC_DEFINE(SDL_THREAD_PTHREAD, 1, [ ])
2883
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $pthread_cflags"
2884
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $pthread_lib"
2885
+ SDL_CFLAGS="$SDL_CFLAGS $pthread_cflags"
2886
+
2887
+ # Save the original compiler flags and libraries
2888
+ ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS"
2889
+ # Add the pthread compiler flags and libraries
2890
+ CFLAGS="$CFLAGS $pthread_cflags"; LIBS="$LIBS $pthread_lib"
2891
+
2892
+ # Check to see if recursive mutexes are available
2893
+ AC_MSG_CHECKING(for recursive mutexes)
2894
+ has_recursive_mutexes=no
2895
+ if test x$has_recursive_mutexes = xno; then
2896
+ AC_TRY_LINK([
2897
+ #define _GNU_SOURCE 1
2898
+ #include <pthread.h>
2899
+ ],[
2900
+ pthread_mutexattr_t attr;
2901
+ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
2902
+ ],[
2903
+ has_recursive_mutexes=yes
2904
+ AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX, 1, [ ])
2905
+ ])
2906
+ fi
2907
+ if test x$has_recursive_mutexes = xno; then
2908
+ AC_TRY_LINK([
2909
+ #define _GNU_SOURCE 1
2910
+ #include <pthread.h>
2911
+ ],[
2912
+ pthread_mutexattr_t attr;
2913
+ pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_RECURSIVE_NP);
2914
+ ],[
2915
+ has_recursive_mutexes=yes
2916
+ AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP, 1, [ ])
2917
+ ])
2918
+ fi
2919
+ AC_MSG_RESULT($has_recursive_mutexes)
2920
+
2921
+ # Check to see if pthread semaphore support is missing
2922
+ if test x$enable_pthread_sem = xyes; then
2923
+ AC_MSG_CHECKING(for pthread semaphores)
2924
+ have_pthread_sem=no
2925
+ AC_TRY_COMPILE([
2926
+ #include <pthread.h>
2927
+ #include <semaphore.h>
2928
+ ],[
2929
+ ],[
2930
+ have_pthread_sem=yes
2931
+ ])
2932
+ AC_MSG_RESULT($have_pthread_sem)
2933
+ fi
2934
+ if test x$have_pthread_sem = xyes; then
2935
+ AC_MSG_CHECKING(for sem_timedwait)
2936
+ have_sem_timedwait=no
2937
+ AC_TRY_LINK([
2938
+ #include <pthread.h>
2939
+ #include <semaphore.h>
2940
+ ],[
2941
+ sem_timedwait(NULL, NULL);
2942
+ ],[
2943
+ have_sem_timedwait=yes
2944
+ AC_DEFINE([HAVE_SEM_TIMEDWAIT], 1, [ ])
2945
+ ])
2946
+ AC_MSG_RESULT($have_sem_timedwait)
2947
+ fi
2948
+
2949
+ AC_CHECK_HEADER(pthread_np.h, have_pthread_np_h=yes, have_pthread_np_h=no, [ #include <pthread.h> ])
2950
+ if test x$have_pthread_np_h = xyes; then
2951
+ AC_DEFINE(HAVE_PTHREAD_NP_H, 1, [ ])
2952
+ fi
2953
+
2954
+ # Check to see if pthread naming is available
2955
+ AC_MSG_CHECKING(for pthread_setname_np)
2956
+ AC_TRY_LINK_FUNC(pthread_setname_np, [
2957
+ has_pthread_setname_np=yes
2958
+ AC_DEFINE(HAVE_PTHREAD_SETNAME_NP, 1, [ ])
2959
+ ],[
2960
+ has_pthread_setname_np=no
2961
+ ])
2962
+ AC_MSG_RESULT($has_pthread_setname_np)
2963
+
2964
+ AC_MSG_CHECKING(for pthread_set_name_np)
2965
+ AC_TRY_LINK_FUNC(pthread_set_name_np, [
2966
+ has_pthread_set_name_np=yes
2967
+ AC_DEFINE(HAVE_PTHREAD_SET_NAME_NP, 1, [ ])
2968
+ ],[
2969
+ has_pthread_set_name_np=no
2970
+ ])
2971
+ AC_MSG_RESULT($has_pthread_set_name_np)
2972
+
2973
+ # Restore the compiler flags and libraries
2974
+ CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs"
2975
+
2976
+ # Basic thread creation functions
2977
+ SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_systhread.c"
2978
+
2979
+ # Semaphores
2980
+ # We can fake these with mutexes and condition variables if necessary
2981
+ if test x$have_pthread_sem = xyes; then
2982
+ SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_syssem.c"
2983
+ else
2984
+ SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syssem.c"
2985
+ fi
2986
+
2987
+ # Mutexes
2988
+ # We can fake these with semaphores if necessary
2989
+ SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_sysmutex.c"
2990
+
2991
+ # Condition variables
2992
+ # We can fake these with semaphores and mutexes if necessary
2993
+ SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_syscond.c"
2994
+
2995
+ # Thread local storage
2996
+ SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_systls.c"
2997
+
2998
+ have_threads=yes
2999
+ fi
3000
+ fi
3001
+ }
3002
+
3003
+ dnl Determine whether the compiler can produce Windows executables
3004
+ CheckWINDOWS()
3005
+ {
3006
+ AC_MSG_CHECKING(Windows compiler)
3007
+ have_win32_gcc=no
3008
+ AC_TRY_COMPILE([
3009
+ #include <windows.h>
3010
+ ],[
3011
+ ],[
3012
+ have_win32_gcc=yes
3013
+ ])
3014
+ AC_MSG_RESULT($have_win32_gcc)
3015
+ if test x$have_win32_gcc != xyes; then
3016
+ AC_MSG_ERROR([
3017
+ *** Your compiler ($CC) does not produce Windows executables!
3018
+ ])
3019
+ fi
3020
+
3021
+ AC_MSG_CHECKING(Windows CE)
3022
+ have_wince=no
3023
+ AC_TRY_COMPILE([
3024
+ #if !defined(_WIN32_WCE) && !defined(__MINGW32CE__)
3025
+ #error This is not Windows CE
3026
+ #endif
3027
+ ],[
3028
+ ],[
3029
+ have_wince=yes
3030
+ AC_MSG_ERROR([
3031
+ *** Sorry, Windows CE is no longer supported.
3032
+ ])
3033
+ ])
3034
+ AC_MSG_RESULT($have_wince)
3035
+
3036
+ # This fixes Windows stack alignment with newer GCC
3037
+ CheckStackBoundary
3038
+ }
3039
+
3040
+ dnl Find the DirectX includes and libraries
3041
+ CheckDIRECTX()
3042
+ {
3043
+ AC_ARG_ENABLE(directx,
3044
+ AC_HELP_STRING([--enable-directx], [use DirectX for Windows audio/video [[default=yes]]]),
3045
+ , enable_directx=yes)
3046
+ if test x$enable_directx = xyes; then
3047
+ AC_CHECK_HEADER(d3d9.h, have_d3d=yes)
3048
+ AC_CHECK_HEADER(d3d11_1.h, have_d3d11=yes)
3049
+ AC_CHECK_HEADER(ddraw.h, have_ddraw=yes)
3050
+ AC_CHECK_HEADER(dsound.h, have_dsound=yes)
3051
+ AC_CHECK_HEADER(dinput.h, have_dinput=yes)
3052
+ AC_CHECK_HEADER(dxgi.h, have_dxgi=yes)
3053
+ AC_CHECK_HEADER(xinput.h, have_xinput=yes)
3054
+ AC_CHECK_HEADER(mmdeviceapi.h, have_wasapi=yes)
3055
+ AC_CHECK_HEADER(audioclient.h,,have_wasapi=no)
3056
+ AC_TRY_COMPILE([
3057
+ #include <windows.h>
3058
+ #include <xinput.h>
3059
+ XINPUT_GAMEPAD_EX x1;
3060
+ ],[],[have_xinput_gamepadex=yes])
3061
+ AC_TRY_COMPILE([
3062
+ #include <windows.h>
3063
+ #include <xinput.h>
3064
+ XINPUT_STATE_EX s1;
3065
+ ],[],[have_xinput_stateex=yes])
3066
+
3067
+ if test x$have_ddraw = xyes; then
3068
+ AC_DEFINE(HAVE_DDRAW_H, 1, [ ])
3069
+ fi
3070
+ if test x$have_dinput = xyes; then
3071
+ AC_DEFINE(HAVE_DINPUT_H, 1, [ ])
3072
+ fi
3073
+ if test x$have_dsound = xyes; then
3074
+ AC_DEFINE(HAVE_DSOUND_H, 1, [ ])
3075
+ fi
3076
+ if test x$have_dxgi = xyes; then
3077
+ AC_DEFINE(HAVE_DXGI_H, 1, [ ])
3078
+ fi
3079
+ if test x$have_xinput = xyes; then
3080
+ AC_DEFINE(HAVE_XINPUT_H, 1, [ ])
3081
+ fi
3082
+ if test x$have_xinput_gamepadex = xyes; then
3083
+ AC_DEFINE(HAVE_XINPUT_GAMEPAD_EX, 1, [ ])
3084
+ fi
3085
+ if test x$have_xinput_stateex = xyes; then
3086
+ AC_DEFINE(HAVE_XINPUT_STATE_EX, 1, [ ])
3087
+ fi
3088
+
3089
+ SUMMARY_video="${SUMMARY_video} directx"
3090
+ SUMMARY_audio="${SUMMARY_audio} directx"
3091
+
3092
+ AC_ARG_ENABLE(wasapi,
3093
+ AC_HELP_STRING([--enable-wasapi], [use the Windows WASAPI audio driver [[default=yes]]]),
3094
+ , enable_wasapi=yes)
3095
+
3096
+ # FIXME: latest Cygwin finds dinput headers, but we die on other win32 headers.
3097
+ # FIXME: ...so force it off for now.
3098
+ case "$host" in
3099
+ *-*-cygwin*)
3100
+ have_dinput=false
3101
+ ;;
3102
+ esac
3103
+ fi
3104
+ }
3105
+
3106
+ dnl Check for the dlfcn.h interface for dynamically loading objects
3107
+ CheckDLOPEN()
3108
+ {
3109
+ AC_ARG_ENABLE(sdl-dlopen,
3110
+ AC_HELP_STRING([--enable-sdl-dlopen], [use dlopen for shared object loading [[default=yes]]]),
3111
+ , enable_sdl_dlopen=yes)
3112
+ if test x$enable_sdl_dlopen = xyes; then
3113
+ AC_MSG_CHECKING(for dlopen)
3114
+ have_dlopen=no
3115
+ AC_TRY_COMPILE([
3116
+ #include <dlfcn.h>
3117
+ ],[
3118
+ void *handle = dlopen("", RTLD_NOW);
3119
+ const char *loaderror = (char *) dlerror();
3120
+ ],[
3121
+ have_dlopen=yes
3122
+ ])
3123
+ AC_MSG_RESULT($have_dlopen)
3124
+
3125
+ if test x$have_dlopen = xyes; then
3126
+ AC_CHECK_LIB(c, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS",
3127
+ AC_CHECK_LIB(dl, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS -ldl",
3128
+ AC_CHECK_LIB(ltdl, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lltdl")))
3129
+ AC_DEFINE(SDL_LOADSO_DLOPEN, 1, [ ])
3130
+ SOURCES="$SOURCES $srcdir/src/loadso/dlopen/*.c"
3131
+ have_loadso=yes
3132
+ fi
3133
+ fi
3134
+ }
3135
+
3136
+ dnl Check for the usbhid(3) library on *BSD
3137
+ CheckUSBHID()
3138
+ {
3139
+ case "$host" in
3140
+ *-*-*bsd*)
3141
+ if test x$enable_joystick = xyes; then
3142
+ AC_CHECK_LIB(usbhid, hid_init, have_libusbhid=yes)
3143
+ if test x$have_libusbhid = xyes; then
3144
+ AC_CHECK_HEADER(usbhid.h, [USB_CFLAGS="-DHAVE_USBHID_H"])
3145
+ AC_CHECK_HEADER(libusbhid.h, [USB_CFLAGS="-DHAVE_LIBUSBHID_H"])
3146
+ USB_LIBS="$USB_LIBS -lusbhid"
3147
+ else
3148
+ AC_CHECK_HEADER(usb.h, [USB_CFLAGS="-DHAVE_USB_H"])
3149
+ AC_CHECK_HEADER(libusb.h, [USB_CFLAGS="-DHAVE_LIBUSB_H"])
3150
+ AC_CHECK_LIB(usb, hid_init, [USB_LIBS="$USB_LIBS -lusb"])
3151
+ fi
3152
+
3153
+ save_CFLAGS="$CFLAGS"
3154
+ CFLAGS="$CFLAGS $USB_CFLAGS"
3155
+
3156
+ AC_MSG_CHECKING(for usbhid)
3157
+ have_usbhid=no
3158
+ AC_TRY_COMPILE([
3159
+ #include <sys/types.h>
3160
+ #if defined(HAVE_USB_H)
3161
+ #include <usb.h>
3162
+ #endif
3163
+ #ifdef __DragonFly__
3164
+ # include <bus/usb/usb.h>
3165
+ # include <bus/usb/usbhid.h>
3166
+ #else
3167
+ # include <dev/usb/usb.h>
3168
+ # include <dev/usb/usbhid.h>
3169
+ #endif
3170
+ #if defined(HAVE_USBHID_H)
3171
+ #include <usbhid.h>
3172
+ #elif defined(HAVE_LIBUSB_H)
3173
+ #include <libusb.h>
3174
+ #elif defined(HAVE_LIBUSBHID_H)
3175
+ #include <libusbhid.h>
3176
+ #endif
3177
+ ],[
3178
+ struct report_desc *repdesc;
3179
+ struct usb_ctl_report *repbuf;
3180
+ hid_kind_t hidkind;
3181
+ ],[
3182
+ have_usbhid=yes
3183
+ ])
3184
+ AC_MSG_RESULT($have_usbhid)
3185
+
3186
+ if test x$have_usbhid = xyes; then
3187
+ AC_MSG_CHECKING(for ucr_data member of usb_ctl_report)
3188
+ have_usbhid_ucr_data=no
3189
+ AC_TRY_COMPILE([
3190
+ #include <sys/types.h>
3191
+ #if defined(HAVE_USB_H)
3192
+ #include <usb.h>
3193
+ #endif
3194
+ #ifdef __DragonFly__
3195
+ # include <bus/usb/usb.h>
3196
+ # include <bus/usb/usbhid.h>
3197
+ #else
3198
+ # include <dev/usb/usb.h>
3199
+ # include <dev/usb/usbhid.h>
3200
+ #endif
3201
+ #if defined(HAVE_USBHID_H)
3202
+ #include <usbhid.h>
3203
+ #elif defined(HAVE_LIBUSB_H)
3204
+ #include <libusb.h>
3205
+ #elif defined(HAVE_LIBUSBHID_H)
3206
+ #include <libusbhid.h>
3207
+ #endif
3208
+ ],[
3209
+ struct usb_ctl_report buf;
3210
+ if (buf.ucr_data) { }
3211
+ ],[
3212
+ have_usbhid_ucr_data=yes
3213
+ ])
3214
+ if test x$have_usbhid_ucr_data = xyes; then
3215
+ USB_CFLAGS="$USB_CFLAGS -DUSBHID_UCR_DATA"
3216
+ fi
3217
+ AC_MSG_RESULT($have_usbhid_ucr_data)
3218
+
3219
+ AC_MSG_CHECKING(for new usbhid API)
3220
+ have_usbhid_new=no
3221
+ AC_TRY_COMPILE([
3222
+ #include <sys/types.h>
3223
+ #if defined(HAVE_USB_H)
3224
+ #include <usb.h>
3225
+ #endif
3226
+ #ifdef __DragonFly__
3227
+ #include <bus/usb/usb.h>
3228
+ #include <bus/usb/usbhid.h>
3229
+ #else
3230
+ #include <dev/usb/usb.h>
3231
+ #include <dev/usb/usbhid.h>
3232
+ #endif
3233
+ #if defined(HAVE_USBHID_H)
3234
+ #include <usbhid.h>
3235
+ #elif defined(HAVE_LIBUSB_H)
3236
+ #include <libusb.h>
3237
+ #elif defined(HAVE_LIBUSBHID_H)
3238
+ #include <libusbhid.h>
3239
+ #endif
3240
+ ],[
3241
+ report_desc_t d;
3242
+ hid_start_parse(d, 1, 1);
3243
+ ],[
3244
+ have_usbhid_new=yes
3245
+ ])
3246
+ if test x$have_usbhid_new = xyes; then
3247
+ USB_CFLAGS="$USB_CFLAGS -DUSBHID_NEW"
3248
+ fi
3249
+ AC_MSG_RESULT($have_usbhid_new)
3250
+
3251
+ AC_MSG_CHECKING(for struct joystick in machine/joystick.h)
3252
+ have_machine_joystick=no
3253
+ AC_TRY_COMPILE([
3254
+ #include <machine/joystick.h>
3255
+ ],[
3256
+ struct joystick t;
3257
+ ],[
3258
+ have_machine_joystick=yes
3259
+ ])
3260
+ if test x$have_machine_joystick = xyes; then
3261
+ AC_DEFINE(SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H, 1, [ ])
3262
+ fi
3263
+ AC_MSG_RESULT($have_machine_joystick)
3264
+
3265
+ AC_DEFINE(SDL_JOYSTICK_USBHID, 1, [ ])
3266
+ SOURCES="$SOURCES $srcdir/src/joystick/bsd/*.c"
3267
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $USB_CFLAGS"
3268
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $USB_LIBS"
3269
+ have_joystick=yes
3270
+ fi
3271
+ CFLAGS="$save_CFLAGS"
3272
+ fi
3273
+ ;;
3274
+ esac
3275
+ }
3276
+
3277
+ dnl Check for HIDAPI joystick drivers
3278
+ CheckHIDAPI()
3279
+ {
3280
+ # The hidraw support doesn't catch Xbox, PS4 and Nintendo controllers,
3281
+ # so we'll just use libusb when it's available.
3282
+ #
3283
+ # Except that libusb requires root permissions to open devices, so that's not generally useful, and we'll disable this by default.
3284
+ AC_ARG_ENABLE(hidapi,
3285
+ AC_HELP_STRING([--enable-hidapi], [use HIDAPI for low level joystick drivers [[default=no]]]),
3286
+ , enable_hidapi=no)
3287
+ if test x$enable_joystick = xyes -a x$enable_hidapi = xyes; then
3288
+ hidapi_support=no
3289
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
3290
+ if test x$PKG_CONFIG != xno; then
3291
+ LIBUSB_CFLAGS=`$PKG_CONFIG --cflags libusb-1.0`
3292
+ LIBUSB_LDFLAGS=`$PKG_CONFIG --libs libusb-1.0`
3293
+ save_CFLAGS="$CFLAGS"
3294
+ CFLAGS="$save_CFLAGS $LIBUSB_CFLAGS"
3295
+ AC_CHECK_HEADER(libusb.h, have_libusb_h=yes)
3296
+ CFLAGS="$save_CFLAGS"
3297
+ fi
3298
+ if test x$have_libusb_h = xyes; then
3299
+ hidapi_support=yes
3300
+ AC_DEFINE(SDL_JOYSTICK_HIDAPI, 1, [ ])
3301
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -I$srcdir/src/hidapi/hidapi"
3302
+ SOURCES="$SOURCES $srcdir/src/joystick/hidapi/*.c"
3303
+ SOURCES="$SOURCES $srcdir/src/hidapi/libusb/hid.c"
3304
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $LIBUSB_CFLAGS"
3305
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $LIBUSB_LDFLAGS"
3306
+ fi
3307
+ AC_MSG_CHECKING(for hidapi support)
3308
+ AC_MSG_RESULT($hidapi_support)
3309
+ fi
3310
+ }
3311
+
3312
+ dnl Check for clock_gettime()
3313
+ CheckClockGettime()
3314
+ {
3315
+ AC_ARG_ENABLE(clock_gettime,
3316
+ AC_HELP_STRING([--enable-clock_gettime], [use clock_gettime() instead of gettimeofday() on UNIX [[default=yes]]]),
3317
+ , enable_clock_gettime=yes)
3318
+ if test x$enable_clock_gettime = xyes; then
3319
+ AC_CHECK_LIB(rt, clock_gettime, have_clock_gettime=yes)
3320
+ if test x$have_clock_gettime = xyes; then
3321
+ AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [ ])
3322
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lrt"
3323
+ else
3324
+ AC_CHECK_LIB(c, clock_gettime, have_clock_gettime=yes)
3325
+ if test x$have_clock_gettime = xyes; then
3326
+ AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [ ])
3327
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS"
3328
+ fi
3329
+ fi
3330
+ fi
3331
+ }
3332
+
3333
+ dnl Check for a valid linux/version.h
3334
+ CheckLinuxVersion()
3335
+ {
3336
+ AC_CHECK_HEADER(linux/version.h, have_linux_version_h=yes)
3337
+ if test x$have_linux_version_h = xyes; then
3338
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DHAVE_LINUX_VERSION_H"
3339
+ fi
3340
+ }
3341
+
3342
+ dnl Check if we want to use RPATH
3343
+ CheckRPATH()
3344
+ {
3345
+ AC_ARG_ENABLE(rpath,
3346
+ AC_HELP_STRING([--enable-rpath], [use an rpath when linking SDL [[default=yes]]]),
3347
+ , enable_rpath=yes)
3348
+ }
3349
+
3350
+ dnl Do this on all platforms, before everything else (other things might want to override it).
3351
+ CheckWarnAll
3352
+
3353
+ dnl Set up the configuration based on the host platform!
3354
+ case "$host" in
3355
+ *-*-linux*|*-*-uclinux*|*-*-gnu*|*-*-k*bsd*-gnu|*-*-bsdi*|*-*-freebsd*|*-*-dragonfly*|*-*-netbsd*|*-*-openbsd*|*-*-sysv5*|*-*-solaris*|*-*-hpux*|*-*-aix*|*-*-minix*|*-*-nto*)
3356
+ case "$host" in
3357
+ *-*-android*)
3358
+ # Android
3359
+ ARCH=android
3360
+ ANDROID_CFLAGS="-DGL_GLEXT_PROTOTYPES"
3361
+ CFLAGS="$CFLAGS $ANDROID_CFLAGS"
3362
+ SDL_CFLAGS="$SDL_CFLAGS $ANDROID_CFLAGS"
3363
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $ANDROID_CFLAGS"
3364
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -ldl -lGLESv1_CM -lGLESv2 -llog -landroid"
3365
+ SDLMAIN_SOURCES="$srcdir/src/main/android/*.c"
3366
+
3367
+ if test x$enable_video = xyes; then
3368
+ SOURCES="$SOURCES $srcdir/src/core/android/*.c $srcdir/src/video/android/*.c"
3369
+ # FIXME: confdefs? Not AC_DEFINE?
3370
+ $as_echo "#define SDL_VIDEO_DRIVER_ANDROID 1" >>confdefs.h
3371
+ SUMMARY_video="${SUMMARY_video} android"
3372
+ fi
3373
+ ;;
3374
+ *-*-linux*) ARCH=linux ;;
3375
+ *-*-uclinux*) ARCH=linux ;;
3376
+ *-*-kfreebsd*-gnu) ARCH=kfreebsd-gnu ;;
3377
+ *-*-knetbsd*-gnu) ARCH=knetbsd-gnu ;;
3378
+ *-*-kopenbsd*-gnu) ARCH=kopenbsd-gnu ;;
3379
+ *-*-gnu*) ARCH=gnu ;; # must be last of the gnu variants
3380
+ *-*-bsdi*) ARCH=bsdi ;;
3381
+ *-*-freebsd*) ARCH=freebsd ;;
3382
+ *-*-dragonfly*) ARCH=freebsd ;;
3383
+ *-*-netbsd*) ARCH=netbsd ;;
3384
+ *-*-openbsd*) ARCH=openbsd ;;
3385
+ *-*-sysv5*) ARCH=sysv5 ;;
3386
+ *-*-solaris*) ARCH=solaris ;;
3387
+ *-*-hpux*) ARCH=hpux ;;
3388
+ *-*-aix*) ARCH=aix ;;
3389
+ *-*-minix*) ARCH=minix ;;
3390
+ *-*-nto*) ARCH=nto
3391
+ CheckQNXVideo
3392
+ ;;
3393
+ esac
3394
+ CheckVisibilityHidden
3395
+ CheckDeclarationAfterStatement
3396
+ CheckDummyVideo
3397
+ CheckDiskAudio
3398
+ CheckDummyAudio
3399
+ CheckDLOPEN
3400
+ CheckOSS
3401
+ CheckALSA
3402
+ CheckPulseAudio
3403
+ CheckJACK
3404
+ CheckARTSC
3405
+ CheckESD
3406
+ CheckNAS
3407
+ CheckSNDIO
3408
+ CheckFusionSound
3409
+ CheckLibSampleRate
3410
+ # Need to check for Raspberry PI first and add platform specific compiler flags, otherwise the test for GLES fails!
3411
+ CheckRPI
3412
+ CheckX11
3413
+ CheckDirectFB
3414
+ CheckKMSDRM
3415
+ CheckOpenGLX11
3416
+ CheckOpenGLESX11
3417
+ CheckVulkan
3418
+ CheckMir
3419
+ CheckWayland
3420
+ CheckLibUDev
3421
+ CheckDBus
3422
+ CheckIME
3423
+ CheckIBus
3424
+ CheckFcitx
3425
+ case $ARCH in
3426
+ linux)
3427
+ CheckInputEvents
3428
+ CheckInputKD
3429
+ ;;
3430
+ esac
3431
+ CheckTslib
3432
+ CheckUSBHID
3433
+ CheckHIDAPI
3434
+ CheckPTHREAD
3435
+ CheckClockGettime
3436
+ CheckLinuxVersion
3437
+ CheckRPATH
3438
+ CheckVivanteVideo
3439
+
3440
+ # Set up files for the audio library
3441
+ if test x$enable_audio = xyes; then
3442
+ case $ARCH in
3443
+ sysv5|solaris|hpux)
3444
+ AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO, 1, [ ])
3445
+ SOURCES="$SOURCES $srcdir/src/audio/sun/*.c"
3446
+ SUMMARY_audio="${SUMMARY_audio} sun"
3447
+ have_audio=yes
3448
+ ;;
3449
+ netbsd) # Don't use this on OpenBSD, it's busted.
3450
+ AC_DEFINE(SDL_AUDIO_DRIVER_NETBSD, 1, [ ])
3451
+ SOURCES="$SOURCES $srcdir/src/audio/netbsd/*.c"
3452
+ SUMMARY_audio="${SUMMARY_audio} netbsd"
3453
+ have_audio=yes
3454
+ ;;
3455
+ aix)
3456
+ AC_DEFINE(SDL_AUDIO_DRIVER_PAUDIO, 1, [ ])
3457
+ SOURCES="$SOURCES $srcdir/src/audio/paudio/*.c"
3458
+ SUMMARY_audio="${SUMMARY_audio} paudio"
3459
+ have_audio=yes
3460
+ ;;
3461
+ android)
3462
+ AC_DEFINE(SDL_AUDIO_DRIVER_ANDROID, 1, [ ])
3463
+ SOURCES="$SOURCES $srcdir/src/audio/android/*.c"
3464
+ SUMMARY_audio="${SUMMARY_audio} android"
3465
+ have_audio=yes
3466
+ ;;
3467
+ nto)
3468
+ CheckQNXAudio
3469
+ ;;
3470
+ esac
3471
+ fi
3472
+ # Set up files for the joystick library
3473
+ if test x$enable_joystick = xyes; then
3474
+ case $ARCH in
3475
+ linux)
3476
+ AC_DEFINE(SDL_JOYSTICK_LINUX, 1, [ ])
3477
+ SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c"
3478
+ SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c"
3479
+ have_joystick=yes
3480
+ ;;
3481
+ android)
3482
+ AC_DEFINE(SDL_JOYSTICK_ANDROID, 1, [ ])
3483
+ SOURCES="$SOURCES $srcdir/src/joystick/android/*.c"
3484
+ SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c"
3485
+ have_joystick=yes
3486
+ ;;
3487
+ esac
3488
+ fi
3489
+ # Set up files for the haptic library
3490
+ if test x$enable_haptic = xyes; then
3491
+ case $ARCH in
3492
+ linux)
3493
+ if test x$use_input_events = xyes; then
3494
+ AC_DEFINE(SDL_HAPTIC_LINUX, 1, [ ])
3495
+ SOURCES="$SOURCES $srcdir/src/haptic/linux/*.c"
3496
+ have_haptic=yes
3497
+ fi
3498
+ ;;
3499
+ android)
3500
+ AC_DEFINE(SDL_HAPTIC_ANDROID, 1, [ ])
3501
+ SOURCES="$SOURCES $srcdir/src/haptic/android/*.c"
3502
+ have_haptic=yes
3503
+ ;;
3504
+ esac
3505
+ fi
3506
+ # Set up files for the sensor library
3507
+ if test x$enable_sensor = xyes; then
3508
+ case $ARCH in
3509
+ android)
3510
+ AC_DEFINE(SDL_SENSOR_ANDROID, 1, [ ])
3511
+ SOURCES="$SOURCES $srcdir/src/sensor/android/*.c"
3512
+ have_sensor=yes
3513
+ ;;
3514
+ esac
3515
+ fi
3516
+ # Set up files for the power library
3517
+ if test x$enable_power = xyes; then
3518
+ case $ARCH in
3519
+ linux)
3520
+ AC_DEFINE(SDL_POWER_LINUX, 1, [ ])
3521
+ SOURCES="$SOURCES $srcdir/src/power/linux/*.c"
3522
+ have_power=yes
3523
+ ;;
3524
+ android)
3525
+ AC_DEFINE(SDL_POWER_ANDROID, 1, [ ])
3526
+ SOURCES="$SOURCES $srcdir/src/power/android/*.c"
3527
+ have_power=yes
3528
+ ;;
3529
+ esac
3530
+ fi
3531
+ # Set up files for the filesystem library
3532
+ if test x$enable_filesystem = xyes; then
3533
+ case $ARCH in
3534
+ android)
3535
+ AC_DEFINE(SDL_FILESYSTEM_ANDROID, 1, [ ])
3536
+ SOURCES="$SOURCES $srcdir/src/filesystem/android/*.c"
3537
+ have_filesystem=yes
3538
+ ;;
3539
+ *)
3540
+ AC_DEFINE(SDL_FILESYSTEM_UNIX, 1, [ ])
3541
+ SOURCES="$SOURCES $srcdir/src/filesystem/unix/*.c"
3542
+ have_filesystem=yes
3543
+ ;;
3544
+ esac
3545
+ fi
3546
+ # Set up files for the timer library
3547
+ if test x$enable_timers = xyes; then
3548
+ AC_DEFINE(SDL_TIMER_UNIX, 1, [ ])
3549
+ SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
3550
+ have_timers=yes
3551
+ fi
3552
+ # Set up files for udev hotplugging support
3553
+ if test x$enable_libudev = xyes && test x$have_libudev_h_hdr = xyes; then
3554
+ SOURCES="$SOURCES $srcdir/src/core/linux/SDL_udev.c"
3555
+ fi
3556
+ # Set up files for evdev input
3557
+ if test x$use_input_events = xyes; then
3558
+ SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev*.c"
3559
+ fi
3560
+ # Set up other core UNIX files
3561
+ SOURCES="$SOURCES $srcdir/src/core/unix/*.c"
3562
+ ;;
3563
+ *-*-cygwin* | *-*-mingw32*)
3564
+ ARCH=win32
3565
+ if test "$build" != "$host"; then # cross-compiling
3566
+ # Default cross-compile location
3567
+ ac_default_prefix=/usr/local/cross-tools/$host
3568
+ else
3569
+ # Look for the location of the tools and install there
3570
+ if test "$BUILD_PREFIX" != ""; then
3571
+ ac_default_prefix=$BUILD_PREFIX
3572
+ fi
3573
+ fi
3574
+ CheckDeclarationAfterStatement
3575
+ CheckDummyVideo
3576
+ CheckDiskAudio
3577
+ CheckDummyAudio
3578
+ CheckWINDOWS
3579
+ CheckWINDOWSGL
3580
+ CheckWINDOWSGLES
3581
+ CheckVulkan
3582
+ CheckDIRECTX
3583
+
3584
+ # Set up the core platform files
3585
+ SOURCES="$SOURCES $srcdir/src/core/windows/*.c"
3586
+
3587
+ # Set up files for the video library
3588
+ if test x$enable_video = xyes; then
3589
+ AC_DEFINE(SDL_VIDEO_DRIVER_WINDOWS, 1, [ ])
3590
+ SOURCES="$SOURCES $srcdir/src/video/windows/*.c"
3591
+ have_video=yes
3592
+ AC_ARG_ENABLE(render-d3d,
3593
+ AC_HELP_STRING([--enable-render-d3d], [enable the Direct3D render driver [[default=yes]]]),
3594
+ , enable_render_d3d=yes)
3595
+ if test x$enable_render_d3d = xyes -a x$have_d3d = xyes; then
3596
+ AC_DEFINE(SDL_VIDEO_RENDER_D3D, 1, [ ])
3597
+ fi
3598
+ if test x$enable_render_d3d = xyes -a x$have_d3d11 = xyes; then
3599
+ AC_DEFINE(SDL_VIDEO_RENDER_D3D11, 1, [ ])
3600
+ fi
3601
+ fi
3602
+ # Set up files for the audio library
3603
+ if test x$enable_audio = xyes; then
3604
+ AC_DEFINE(SDL_AUDIO_DRIVER_WINMM, 1, [ ])
3605
+ SOURCES="$SOURCES $srcdir/src/audio/winmm/*.c"
3606
+ if test x$have_dsound = xyes; then
3607
+ AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND, 1, [ ])
3608
+ SOURCES="$SOURCES $srcdir/src/audio/directsound/*.c"
3609
+ fi
3610
+ if test x$have_wasapi = xyes -a x$enable_wasapi = xyes; then
3611
+ AC_DEFINE(SDL_AUDIO_DRIVER_WASAPI, 1, [ ])
3612
+ SUMMARY_audio="${SUMMARY_audio} wasapi"
3613
+ SOURCES="$SOURCES $srcdir/src/audio/wasapi/*.c"
3614
+ fi
3615
+ have_audio=yes
3616
+ fi
3617
+ # Set up files for the joystick library
3618
+ if test x$enable_joystick = xyes; then
3619
+ if test x$have_dinput = xyes -o x$have_xinput = xyes; then
3620
+ if test x$have_xinput = xyes; then
3621
+ AC_DEFINE(SDL_JOYSTICK_XINPUT, 1, [ ])
3622
+ fi
3623
+ if test x$have_dinput = xyes; then
3624
+ AC_DEFINE(SDL_JOYSTICK_DINPUT, 1, [ ])
3625
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -ldinput8 -ldxguid -ldxerr8"
3626
+ fi
3627
+ else
3628
+ AC_DEFINE(SDL_JOYSTICK_WINMM, 1, [ ])
3629
+ fi
3630
+ SOURCES="$SOURCES $srcdir/src/joystick/windows/*.c"
3631
+ have_joystick=yes
3632
+ fi
3633
+ if test x$enable_haptic = xyes; then
3634
+ if test x$have_dinput = xyes -o x$have_xinput = xyes; then
3635
+ if test x$have_xinput = xyes; then
3636
+ AC_DEFINE(SDL_HAPTIC_XINPUT, 1, [ ])
3637
+ fi
3638
+ if test x$have_dinput = xyes; then
3639
+ AC_DEFINE(SDL_HAPTIC_DINPUT, 1, [ ])
3640
+ fi
3641
+ SOURCES="$SOURCES $srcdir/src/haptic/windows/*.c"
3642
+ have_haptic=yes
3643
+ fi
3644
+ fi
3645
+ if test x$enable_power = xyes; then
3646
+ AC_DEFINE(SDL_POWER_WINDOWS, 1, [ ])
3647
+ SOURCES="$SOURCES $srcdir/src/power/windows/SDL_syspower.c"
3648
+ have_power=yes
3649
+ fi
3650
+ if test x$enable_filesystem = xyes; then
3651
+ AC_DEFINE(SDL_FILESYSTEM_WINDOWS, 1, [ ])
3652
+ SOURCES="$SOURCES $srcdir/src/filesystem/windows/SDL_sysfilesystem.c"
3653
+ have_filesystem=yes
3654
+ fi
3655
+ # Set up files for the thread library
3656
+ if test x$enable_threads = xyes; then
3657
+ AC_DEFINE(SDL_THREAD_WINDOWS, 1, [ ])
3658
+ SOURCES="$SOURCES $srcdir/src/thread/windows/*.c"
3659
+ SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c"
3660
+ have_threads=yes
3661
+ fi
3662
+ # Set up files for the timer library
3663
+ if test x$enable_timers = xyes; then
3664
+ AC_DEFINE(SDL_TIMER_WINDOWS, 1, [ ])
3665
+ SOURCES="$SOURCES $srcdir/src/timer/windows/*.c"
3666
+ have_timers=yes
3667
+ fi
3668
+ # Set up files for the shared object loading library
3669
+ if test x$enable_loadso = xyes; then
3670
+ AC_DEFINE(SDL_LOADSO_WINDOWS, 1, [ ])
3671
+ SOURCES="$SOURCES $srcdir/src/loadso/windows/*.c"
3672
+ have_loadso=yes
3673
+ fi
3674
+ # Set up the system libraries we need
3675
+ if test -f /lib/w32api/libuuid.a; then
3676
+ LIBUUID=/lib/w32api/libuuid.a
3677
+ else
3678
+ LIBUUID=-luuid
3679
+ fi
3680
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lshell32 -lversion $LIBUUID -static-libgcc"
3681
+ # The Windows platform requires special setup
3682
+ VERSION_SOURCES="$srcdir/src/main/windows/*.rc"
3683
+ SDLMAIN_SOURCES="$srcdir/src/main/windows/*.c"
3684
+ SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main"
3685
+ SDL_LIBS="-lSDL2main $SDL_LIBS -mwindows"
3686
+
3687
+ # Check to see if this is a mingw or cygwin build
3688
+ have_mingw32=
3689
+ AC_CHECK_LIB(mingw32, main, [have_mingw32=yes])
3690
+ if test x$have_mingw32 = xyes; then
3691
+ SDL_LIBS="-lmingw32 $SDL_LIBS"
3692
+ else
3693
+ SDL_LIBS="-lcygwin $SDL_LIBS"
3694
+ fi
3695
+ ;;
3696
+
3697
+ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
3698
+ *-*-beos*)
3699
+ AC_MSG_ERROR([
3700
+ *** BeOS support has been removed as of SDL 2.0.2.
3701
+ ])
3702
+ ;;
3703
+
3704
+ *-*-haiku*)
3705
+ ARCH=haiku
3706
+ ac_default_prefix=/boot/system
3707
+ CheckDummyVideo
3708
+ CheckDiskAudio
3709
+ CheckDummyAudio
3710
+ CheckDLOPEN
3711
+ CheckHaikuVideo
3712
+ CheckHaikuGL
3713
+ CheckPTHREAD
3714
+
3715
+ # Set up files for the audio library
3716
+ if test x$enable_audio = xyes; then
3717
+ AC_DEFINE(SDL_AUDIO_DRIVER_HAIKU, 1, [ ])
3718
+ SOURCES="$SOURCES $srcdir/src/audio/haiku/*.cc"
3719
+ SUMMARY_audio="${SUMMARY_audio} haiku"
3720
+ have_audio=yes
3721
+ fi
3722
+ # Set up files for the joystick library
3723
+ if test x$enable_joystick = xyes; then
3724
+ AC_DEFINE(SDL_JOYSTICK_HAIKU, 1, [ ])
3725
+ SOURCES="$SOURCES $srcdir/src/joystick/haiku/*.cc"
3726
+ have_joystick=yes
3727
+ fi
3728
+ # Set up files for the timer library
3729
+ if test x$enable_timers = xyes; then
3730
+ AC_DEFINE(SDL_TIMER_HAIKU, 1, [ ])
3731
+ SOURCES="$SOURCES $srcdir/src/timer/haiku/*.c"
3732
+ have_timers=yes
3733
+ fi
3734
+ # Set up files for the system power library
3735
+ if test x$enable_power = xyes; then
3736
+ AC_DEFINE(SDL_POWER_HAIKU, 1, [ ])
3737
+ SOURCES="$SOURCES $srcdir/src/power/haiku/*.c"
3738
+ have_power=yes
3739
+ fi
3740
+ # Set up files for the system filesystem library
3741
+ if test x$enable_filesystem = xyes; then
3742
+ AC_DEFINE(SDL_FILESYSTEM_HAIKU, 1, [ ])
3743
+ SOURCES="$SOURCES $srcdir/src/filesystem/haiku/*.cc"
3744
+ have_filesystem=yes
3745
+ fi
3746
+ # The Haiku platform requires special setup.
3747
+ SOURCES="$srcdir/src/main/haiku/*.cc $SOURCES"
3748
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lroot -lbe -lmedia -lgame -ldevice -ltextencoding"
3749
+ # Haiku's x86 spins use libstdc++.r4.so (for binary compat?), but
3750
+ # other spins, like x86-64, use a more standard "libstdc++.so.*"
3751
+ AC_CHECK_FILE("/boot/system/lib/libstdc++.r4.so", EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lstdc++.r4", EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lstdc++")
3752
+ ;;
3753
+ arm*-apple-darwin*|*-ios-*)
3754
+ ARCH=ios
3755
+
3756
+ CheckVisibilityHidden
3757
+ CheckDeclarationAfterStatement
3758
+ CheckDummyVideo
3759
+ CheckDiskAudio
3760
+ CheckDummyAudio
3761
+ CheckDLOPEN
3762
+ CheckMETAL
3763
+ CheckVulkan
3764
+ CheckPTHREAD
3765
+
3766
+ # Set up files for the audio library
3767
+ if test x$enable_audio = xyes; then
3768
+ AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO, 1, [ ])
3769
+ SOURCES="$SOURCES $srcdir/src/audio/coreaudio/*.m"
3770
+ SUMMARY_audio="${SUMMARY_audio} coreaudio"
3771
+ have_audio=yes
3772
+ fi
3773
+ # Set up files for the joystick library
3774
+ if test x$enable_joystick = xyes; then
3775
+ AC_DEFINE(SDL_JOYSTICK_MFI, 1, [ ])
3776
+ SOURCES="$SOURCES $srcdir/src/joystick/iphoneos/*.m"
3777
+ SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c"
3778
+ have_joystick=yes
3779
+ fi
3780
+ # Set up files for the haptic library
3781
+ #if test x$enable_haptic = xyes; then
3782
+ # SOURCES="$SOURCES $srcdir/src/haptic/darwin/*.c"
3783
+ # have_haptic=yes
3784
+ # EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,ForceFeedback"
3785
+ #fi
3786
+ # Set up files for the power library
3787
+ if test x$enable_power = xyes; then
3788
+ AC_DEFINE(SDL_POWER_UIKIT, 1, [ ])
3789
+ SOURCES="$SOURCES $srcdir/src/power/uikit/*.m"
3790
+ have_power=yes
3791
+ fi
3792
+ # Set up files for the filesystem library
3793
+ if test x$enable_filesystem = xyes; then
3794
+ SOURCES="$SOURCES $srcdir/src/filesystem/cocoa/*.m"
3795
+ have_filesystem=yes
3796
+ fi
3797
+ # Set up additional files for the file library
3798
+ if test x$enable_file = xyes; then
3799
+ AC_DEFINE(SDL_FILESYSTEM_COCOA, 1, [ ])
3800
+ SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m"
3801
+ fi
3802
+ # Set up files for the timer library
3803
+ if test x$enable_timers = xyes; then
3804
+ AC_DEFINE(SDL_TIMER_UNIX, 1, [ ])
3805
+ SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
3806
+ have_timers=yes
3807
+ fi
3808
+ # Set up other core UNIX files
3809
+ SOURCES="$SOURCES $srcdir/src/core/unix/*.c"
3810
+ # The iOS platform requires special setup.
3811
+ AC_DEFINE(SDL_VIDEO_DRIVER_UIKIT, 1, [ ])
3812
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES2, 1, [ ])
3813
+ AC_DEFINE(SDL_VIDEO_OPENGL_ES, 1, [ ])
3814
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES, 1, [ ])
3815
+ AC_DEFINE(SDL_VIDEO_RENDER_OGL_ES2, 1, [ ])
3816
+ SOURCES="$SOURCES $srcdir/src/video/uikit/*.m"
3817
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm -liconv -lobjc"
3818
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AVFoundation"
3819
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AudioToolbox"
3820
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio"
3821
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreGraphics"
3822
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreMotion"
3823
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Foundation"
3824
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,GameController"
3825
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES"
3826
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore"
3827
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit"
3828
+
3829
+ if test x$enable_render = xyes -a x$enable_render_metal = xyes; then
3830
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Metal"
3831
+ fi
3832
+ ;;
3833
+ *-*-darwin* )
3834
+ # This could be either full "Mac OS X", or plain "Darwin" which is
3835
+ # just the OS X kernel sans upper layers like Carbon and Cocoa.
3836
+ # Next line is broken, and a few files below require Mac OS X (full)
3837
+ ARCH=macosx
3838
+
3839
+ # Mac OS X builds with both the Carbon and OSX APIs at the moment
3840
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DTARGET_API_MAC_CARBON"
3841
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DTARGET_API_MAC_OSX"
3842
+
3843
+ CheckVisibilityHidden
3844
+ CheckDeclarationAfterStatement
3845
+ CheckDummyVideo
3846
+ CheckDiskAudio
3847
+ CheckDummyAudio
3848
+ CheckDLOPEN
3849
+ CheckCOCOA
3850
+ CheckMETAL
3851
+ CheckX11
3852
+ CheckMacGL
3853
+ CheckMacGLES
3854
+ CheckOpenGLX11
3855
+ CheckVulkan
3856
+ CheckPTHREAD
3857
+
3858
+ # Set up files for the audio library
3859
+ if test x$enable_audio = xyes; then
3860
+ AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO, 1, [ ])
3861
+ SOURCES="$SOURCES $srcdir/src/audio/coreaudio/*.m"
3862
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio -Wl,-framework,AudioToolbox"
3863
+ SUMMARY_audio="${SUMMARY_audio} coreaudio"
3864
+ have_audio=yes
3865
+ fi
3866
+ # Set up files for the joystick library
3867
+ if test x$enable_joystick = xyes; then
3868
+ AC_DEFINE(SDL_JOYSTICK_IOKIT, 1, [ ])
3869
+ AC_DEFINE(SDL_JOYSTICK_HIDAPI, 1, [ ])
3870
+ SOURCES="$SOURCES $srcdir/src/joystick/darwin/*.c"
3871
+ SOURCES="$SOURCES $srcdir/src/joystick/hidapi/*.c"
3872
+ SOURCES="$SOURCES $srcdir/src/hidapi/mac/hid.c"
3873
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -I$srcdir/src/hidapi/hidapi"
3874
+ have_joystick=yes
3875
+ fi
3876
+ # Set up files for the haptic library
3877
+ if test x$enable_haptic = xyes; then
3878
+ AC_DEFINE(SDL_HAPTIC_IOKIT, 1, [ ])
3879
+ SOURCES="$SOURCES $srcdir/src/haptic/darwin/*.c"
3880
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,ForceFeedback"
3881
+ have_haptic=yes
3882
+ fi
3883
+ # Set up files for the power library
3884
+ if test x$enable_power = xyes; then
3885
+ AC_DEFINE(SDL_POWER_MACOSX, 1, [ ])
3886
+ SOURCES="$SOURCES $srcdir/src/power/macosx/*.c"
3887
+ have_power=yes
3888
+ fi
3889
+ # Set up files for the filesystem library
3890
+ if test x$enable_filesystem = xyes; then
3891
+ AC_DEFINE(SDL_FILESYSTEM_COCOA, 1, [ ])
3892
+ SOURCES="$SOURCES $srcdir/src/filesystem/cocoa/*.m"
3893
+ have_filesystem=yes
3894
+ fi
3895
+ # Set up files for the timer library
3896
+ if test x$enable_timers = xyes; then
3897
+ AC_DEFINE(SDL_TIMER_UNIX, 1, [ ])
3898
+ SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
3899
+ have_timers=yes
3900
+ fi
3901
+ # Set up additional files for the file library
3902
+ if test x$enable_file = xyes; then
3903
+ SOURCES="$SOURCES $srcdir/src/file/cocoa/*.m"
3904
+ fi
3905
+ # Set up other core UNIX files
3906
+ SOURCES="$SOURCES $srcdir/src/core/unix/*.c"
3907
+ # The Mac OS X platform requires special setup.
3908
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lobjc"
3909
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreVideo"
3910
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Cocoa"
3911
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Carbon"
3912
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,IOKit"
3913
+
3914
+ if test x$enable_render = xyes -a x$enable_render_metal = xyes; then
3915
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-weak_framework,QuartzCore -Wl,-weak_framework,Metal"
3916
+ fi
3917
+ ;;
3918
+ *-nacl|*-pnacl)
3919
+ ARCH=nacl
3920
+ CheckNativeClient
3921
+ CheckDummyAudio
3922
+ CheckDummyVideo
3923
+ CheckInputEvents
3924
+ CheckPTHREAD
3925
+
3926
+ # Set up files for the timer library
3927
+ if test x$enable_timers = xyes; then
3928
+ AC_DEFINE(SDL_TIMER_UNIX, 1, [ ])
3929
+ SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
3930
+ have_timers=yes
3931
+ fi
3932
+
3933
+ if test x$enable_filesystem = xyes; then
3934
+ AC_DEFINE(SDL_FILESYSTEM_NACL, 1, [ ])
3935
+ SOURCES="$SOURCES $srcdir/src/filesystem/nacl/*.c"
3936
+ have_filesystem=yes
3937
+ fi
3938
+ ;;
3939
+ *-*-emscripten* )
3940
+ if test x$enable_video = xyes; then
3941
+ AC_DEFINE(SDL_VIDEO_DRIVER_EMSCRIPTEN, 1, [ ])
3942
+ SOURCES="$SOURCES $srcdir/src/video/emscripten/*.c"
3943
+ have_video=yes
3944
+ SUMMARY_video="${SUMMARY_video} emscripten"
3945
+ fi
3946
+
3947
+ if test x$enable_audio = xyes; then
3948
+ AC_DEFINE(SDL_AUDIO_DRIVER_EMSCRIPTEN, 1, [ ])
3949
+ SOURCES="$SOURCES $srcdir/src/audio/emscripten/*.c"
3950
+ have_audio=yes
3951
+ SUMMARY_audio="${SUMMARY_audio} emscripten"
3952
+ fi
3953
+
3954
+ CheckVisibilityHidden
3955
+ CheckDeclarationAfterStatement
3956
+ CheckDummyVideo
3957
+ CheckDiskAudio
3958
+ CheckDummyAudio
3959
+ CheckDLOPEN
3960
+ CheckClockGettime
3961
+ CheckEmscriptenGLES
3962
+
3963
+ # Set up files for the power library
3964
+ if test x$enable_power = xyes; then
3965
+ AC_DEFINE(SDL_POWER_EMSCRIPTEN, 1, [ ])
3966
+ SOURCES="$SOURCES $srcdir/src/power/emscripten/*.c"
3967
+ have_power=yes
3968
+ fi
3969
+
3970
+ # Set up files for the power library
3971
+ if test x$enable_joystick = xyes; then
3972
+ AC_DEFINE(SDL_JOYSTICK_EMSCRIPTEN, 1, [ ])
3973
+ SOURCES="$SOURCES $srcdir/src/joystick/emscripten/*.c"
3974
+ have_joystick=yes
3975
+ fi
3976
+
3977
+ # Set up files for the filesystem library
3978
+ if test x$enable_filesystem = xyes; then
3979
+ AC_DEFINE(SDL_FILESYSTEM_EMSCRIPTEN, 1, [ ])
3980
+ SOURCES="$SOURCES $srcdir/src/filesystem/emscripten/*.c"
3981
+ have_filesystem=yes
3982
+ fi
3983
+ # Set up files for the timer library
3984
+ if test x$enable_timers = xyes; then
3985
+ AC_DEFINE(SDL_TIMER_UNIX, 1, [ ])
3986
+ SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
3987
+ have_timers=yes
3988
+ fi
3989
+ ;;
3990
+ *)
3991
+ AC_MSG_ERROR([
3992
+ *** Unsupported host: Please add to configure.in
3993
+ ])
3994
+ ;;
3995
+ esac
3996
+
3997
+ # Verify that we have all the platform specific files we need
3998
+
3999
+ if test x$have_joystick != xyes; then
4000
+ if test x$enable_joystick = xyes; then
4001
+ AC_DEFINE(SDL_JOYSTICK_DISABLED, 1, [ ])
4002
+ fi
4003
+ SOURCES="$SOURCES $srcdir/src/joystick/dummy/*.c"
4004
+ fi
4005
+ if test x$have_haptic != xyes; then
4006
+ if test x$enable_haptic = xyes; then
4007
+ AC_DEFINE(SDL_HAPTIC_DISABLED, 1, [ ])
4008
+ fi
4009
+ SOURCES="$SOURCES $srcdir/src/haptic/dummy/*.c"
4010
+ fi
4011
+ if test x$have_sensor != xyes; then
4012
+ if test x$enable_sensor = xyes; then
4013
+ AC_DEFINE(SDL_SENSOR_DISABLED, 1, [ ])
4014
+ fi
4015
+ SOURCES="$SOURCES $srcdir/src/sensor/dummy/*.c"
4016
+ fi
4017
+ if test x$have_threads != xyes; then
4018
+ if test x$enable_threads = xyes; then
4019
+ AC_DEFINE(SDL_THREADS_DISABLED, 1, [ ])
4020
+ fi
4021
+ SOURCES="$SOURCES $srcdir/src/thread/generic/*.c"
4022
+ fi
4023
+ if test x$have_timers != xyes; then
4024
+ if test x$enable_timers = xyes; then
4025
+ AC_DEFINE(SDL_TIMERS_DISABLED, 1, [ ])
4026
+ fi
4027
+ SOURCES="$SOURCES $srcdir/src/timer/dummy/*.c"
4028
+ fi
4029
+ if test x$have_filesystem != xyes; then
4030
+ if test x$enable_filesystem = xyes; then
4031
+ AC_DEFINE(SDL_FILESYSTEM_DISABLED, 1, [ ])
4032
+ fi
4033
+ SOURCES="$SOURCES $srcdir/src/filesystem/dummy/*.c"
4034
+ fi
4035
+ if test x$have_loadso != xyes; then
4036
+ if test x$enable_loadso = xyes; then
4037
+ AC_DEFINE(SDL_LOADSO_DISABLED, 1, [ ])
4038
+ fi
4039
+ SOURCES="$SOURCES $srcdir/src/loadso/dummy/*.c"
4040
+ fi
4041
+ if test x$SDLMAIN_SOURCES = x; then
4042
+ SDLMAIN_SOURCES="$srcdir/src/main/dummy/*.c"
4043
+ fi
4044
+ SDLTEST_SOURCES="$srcdir/src/test/*.c"
4045
+
4046
+ if test x$video_wayland = xyes; then
4047
+ WAYLAND_PROTOCOLS=`cd $srcdir/wayland-protocols ; for p in *.xml ; do echo -n "\$p" |sed 's,\\.xml\$, ,g' ; done`
4048
+ WAYLAND_PROTOCOLS_SOURCES=`for p in $WAYLAND_PROTOCOLS ; do echo -n "\\$(gen)/\$p-protocol.c " ; done`
4049
+ WAYLAND_PROTOCOLS_HEADERS=`for p in $WAYLAND_PROTOCOLS ; do echo -n "\\$(gen)/\$p-client-protocol.h " ; done`
4050
+ GEN_SOURCES="$GEN_SOURCES $WAYLAND_PROTOCOLS_SOURCES"
4051
+ GEN_HEADERS="$GEN_HEADERS $WAYLAND_PROTOCOLS_HEADERS"
4052
+
4053
+ WAYLAND_PROTOCOLS_DEPENDS=`for p in $WAYLAND_PROTOCOLS ; do\
4054
+ echo ;\
4055
+ echo "\\$(gen)/\$p-client-protocol.h: \\$(srcdir)/wayland-protocols/\$p.xml" ;\
4056
+ echo " @\\$(SHELL) \\$(auxdir)/mkinstalldirs \\$(gen)" ;\
4057
+ echo " \\$(RUN_CMD_GEN)\\$(WAYLAND_SCANNER) client-header \\$< \\$@" ;\
4058
+ echo ;\
4059
+ echo "\\$(gen)/\$p-protocol.c: \\$(srcdir)/wayland-protocols/\$p.xml" ;\
4060
+ echo " @\\$(SHELL) \\$(auxdir)/mkinstalldirs \\$(gen)" ;\
4061
+ echo " \\$(RUN_CMD_GEN)\\$(WAYLAND_SCANNER) code \\$< \\$@" ;\
4062
+ echo ;\
4063
+ echo "\\$(objects)/\$p-protocol.lo: \\$(gen)/\$p-protocol.c \\$(gen)/\$p-client-protocol.h" ;\
4064
+ echo " \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@" ;\
4065
+ done ;\
4066
+ echo ;\
4067
+ for s in $WAYLAND_SOURCES ; do echo -n "\$s:" ; for p in $WAYLAND_PROTOCOLS ; do echo -n " \\$(gen)/\$p-client-protocol.h" ; done ; echo ; done ; echo`
4068
+ fi
4069
+
4070
+ OBJECTS=`echo $SOURCES`
4071
+ DEPENDS=`echo $SOURCES | tr ' ' '\n'`
4072
+ for EXT in asm cc m c S; do
4073
+ OBJECTS=`echo "$OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.'$EXT',$(objects)/\1.lo,g'`
4074
+ DEPENDS=`echo "$DEPENDS" | sed "s,^\\([[^ ]]*\\)/\\([[^ ]]*\\)\\.$EXT\\$,\\\\
4075
+ \\$(objects)/\\2.lo: \\1/\\2.$EXT\\\\
4076
+ \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@,g"`
4077
+ done
4078
+
4079
+ GEN_OBJECTS=`echo "$GEN_SOURCES" | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.lo,g'`
4080
+
4081
+ VERSION_OBJECTS=`echo $VERSION_SOURCES`
4082
+ VERSION_DEPENDS=`echo $VERSION_SOURCES`
4083
+ VERSION_OBJECTS=`echo "$VERSION_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.rc,$(objects)/\1.o,g'`
4084
+ VERSION_DEPENDS=`echo "$VERSION_DEPENDS" | sed "s,\\([[^ ]]*\\)/\\([[^ ]]*\\)\\.rc,\\\\
4085
+ \\$(objects)/\\2.o: \\1/\\2.rc\\\\
4086
+ \\$(WINDRES) \\$< \\$@,g"`
4087
+
4088
+ SDLMAIN_OBJECTS=`echo $SDLMAIN_SOURCES`
4089
+ SDLMAIN_DEPENDS=`echo $SDLMAIN_SOURCES`
4090
+ SDLMAIN_OBJECTS=`echo "$SDLMAIN_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.lo,g'`
4091
+ SDLMAIN_DEPENDS=`echo "$SDLMAIN_DEPENDS" | sed "s,\\([[^ ]]*\\)/\\([[^ ]]*\\)\\.c,\\\\
4092
+ \\$(objects)/\\2.lo: \\1/\\2.c\\\\
4093
+ \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@,g"`
4094
+
4095
+ SDLTEST_OBJECTS=`echo $SDLTEST_SOURCES`
4096
+ SDLTEST_DEPENDS=`echo $SDLTEST_SOURCES`
4097
+ SDLTEST_OBJECTS=`echo "$SDLTEST_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.lo,g'`
4098
+ SDLTEST_DEPENDS=`echo "$SDLTEST_DEPENDS" | sed "s,\\([[^ ]]*\\)/\\([[^ ]]*\\)\\.c,\\\\
4099
+ \\$(objects)/\\2.lo: \\1/\\2.c\\\\
4100
+ \\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@,g"`
4101
+
4102
+ # Set runtime shared library paths as needed
4103
+
4104
+ if test "x$enable_rpath" = "xyes"; then
4105
+ if test $ARCH = bsdi -o $ARCH = freebsd -o $ARCH = linux -o $ARCH = netbsd; then
4106
+ SDL_RLD_FLAGS="-Wl,-rpath,\${libdir}"
4107
+
4108
+ AC_MSG_CHECKING(for linker option --enable-new-dtags)
4109
+ have_enable_new_dtags=no
4110
+ save_LDFLAGS="$LDFLAGS"
4111
+ LDFLAGS="$LDFLAGS -Wl,--enable-new-dtags"
4112
+ AC_TRY_LINK([
4113
+ ],[
4114
+ ],[
4115
+ have_enable_new_dtags=yes
4116
+ SDL_RLD_FLAGS="$SDL_RLD_FLAGS -Wl,--enable-new-dtags"
4117
+ ])
4118
+ LDFLAGS="$save_LDFLAGS"
4119
+ AC_MSG_RESULT($have_enable_new_dtags)
4120
+ fi
4121
+ if test $ARCH = solaris; then
4122
+ SDL_RLD_FLAGS="-R\${libdir}"
4123
+ fi
4124
+ else
4125
+ SDL_RLD_FLAGS=""
4126
+ fi
4127
+
4128
+ SDL_STATIC_LIBS="$SDL_LIBS $EXTRA_LDFLAGS"
4129
+
4130
+ dnl Expand the cflags and libraries needed by apps using SDL
4131
+ AC_SUBST(SDL_CFLAGS)
4132
+ AC_SUBST(SDL_LIBS)
4133
+ AC_SUBST(SDL_STATIC_LIBS)
4134
+ AC_SUBST(SDL_RLD_FLAGS)
4135
+ if test x$enable_shared = xyes; then
4136
+ ENABLE_SHARED_TRUE=
4137
+ ENABLE_SHARED_FALSE="#"
4138
+ else
4139
+ ENABLE_SHARED_TRUE="#"
4140
+ ENABLE_SHARED_FALSE=
4141
+ fi
4142
+ if test x$enable_static = xyes; then
4143
+ ENABLE_STATIC_TRUE=
4144
+ ENABLE_STATIC_FALSE="#"
4145
+ else
4146
+ ENABLE_STATIC_TRUE="#"
4147
+ ENABLE_STATIC_FALSE=
4148
+ fi
4149
+ AC_SUBST(ENABLE_SHARED_TRUE)
4150
+ AC_SUBST(ENABLE_SHARED_FALSE)
4151
+ AC_SUBST(ENABLE_STATIC_TRUE)
4152
+ AC_SUBST(ENABLE_STATIC_FALSE)
4153
+
4154
+ dnl Expand the sources and objects needed to build the library
4155
+ AC_SUBST(ac_aux_dir)
4156
+ AC_SUBST(INCLUDE)
4157
+ AC_SUBST(OBJECTS)
4158
+ AC_SUBST(GEN_HEADERS)
4159
+ AC_SUBST(GEN_OBJECTS)
4160
+ AC_SUBST(VERSION_OBJECTS)
4161
+ AC_SUBST(SDLMAIN_OBJECTS)
4162
+ AC_SUBST(SDLTEST_OBJECTS)
4163
+ AC_SUBST(BUILD_CFLAGS)
4164
+ AC_SUBST(EXTRA_CFLAGS)
4165
+ AC_SUBST(BUILD_LDFLAGS)
4166
+ AC_SUBST(EXTRA_LDFLAGS)
4167
+ AC_SUBST(WINDRES)
4168
+ AC_SUBST(WAYLAND_SCANNER)
4169
+
4170
+ cat >Makefile.rules <<__EOF__
4171
+
4172
+ # Build rules for objects
4173
+ -include \$(OBJECTS:.lo=.d)
4174
+
4175
+ # Special dependency for SDL.c, since it depends on SDL_revision.h
4176
+ $srcdir/src/SDL.c: update-revision
4177
+ $DEPENDS
4178
+ $VERSION_DEPENDS
4179
+ $SDLMAIN_DEPENDS
4180
+ $SDLTEST_DEPENDS
4181
+ $WAYLAND_PROTOCOLS_DEPENDS
4182
+ __EOF__
4183
+
4184
+ AC_CONFIG_FILES([
4185
+ Makefile:Makefile.in:Makefile.rules sdl2-config sdl2-config.cmake SDL2.spec sdl2.pc
4186
+ ])
4187
+ AC_CONFIG_COMMANDS([sdl2_config],[chmod a+x sdl2-config])
4188
+
4189
+ SUMMARY="SDL2 Configure Summary:\n"
4190
+ if test x$enable_shared = xyes; then
4191
+ SUMMARY="${SUMMARY}Building Shared Libraries\n"
4192
+ fi
4193
+ if test x$enable_static = xyes; then
4194
+ SUMMARY="${SUMMARY}Building Static Libraries\n"
4195
+ fi
4196
+ SUMMARY="${SUMMARY}Enabled modules :${SUMMARY_modules}\n"
4197
+ SUMMARY="${SUMMARY}Assembly Math :${SUMMARY_math}\n"
4198
+ SUMMARY="${SUMMARY}Audio drivers :${SUMMARY_audio}\n"
4199
+ SUMMARY="${SUMMARY}Video drivers :${SUMMARY_video}\n"
4200
+ if test x$have_x = xyes; then
4201
+ SUMMARY="${SUMMARY}X11 libraries :${SUMMARY_video_x11}\n"
4202
+ fi
4203
+ SUMMARY="${SUMMARY}Input drivers :${SUMMARY_input}\n"
4204
+ if test x$have_samplerate_h_hdr = xyes; then
4205
+ SUMMARY="${SUMMARY}Using libsamplerate : YES\n"
4206
+ else
4207
+ SUMMARY="${SUMMARY}Using libsamplerate : NO\n"
4208
+ fi
4209
+ if test x$have_libudev_h_hdr = xyes; then
4210
+ SUMMARY="${SUMMARY}Using libudev : YES\n"
4211
+ else
4212
+ SUMMARY="${SUMMARY}Using libudev : NO\n"
4213
+ fi
4214
+ if test x$have_dbus_dbus_h_hdr = xyes; then
4215
+ SUMMARY="${SUMMARY}Using dbus : YES\n"
4216
+ else
4217
+ SUMMARY="${SUMMARY}Using dbus : NO\n"
4218
+ fi
4219
+ if test x$enable_ime = xyes; then
4220
+ SUMMARY="${SUMMARY}Using ime : YES\n"
4221
+ else
4222
+ SUMMARY="${SUMMARY}Using ime : NO\n"
4223
+ fi
4224
+ if test x$have_ibus_ibus_h_hdr = xyes; then
4225
+ SUMMARY="${SUMMARY}Using ibus : YES\n"
4226
+ else
4227
+ SUMMARY="${SUMMARY}Using ibus : NO\n"
4228
+ fi
4229
+ if test x$have_fcitx_frontend_h_hdr = xyes; then
4230
+ SUMMARY="${SUMMARY}Using fcitx : YES\n"
4231
+ else
4232
+ SUMMARY="${SUMMARY}Using fcitx : NO\n"
4233
+ fi
4234
+ AC_CONFIG_COMMANDS([summary], [echo -en "$SUMMARY"], [SUMMARY="$SUMMARY"])
4235
+
4236
+ AC_OUTPUT