Go to file
Simon McVittie 65a3453b7f build: Compile with large inode number support where possible
On filesystems with large inode numbers, such as overlayfs, attempting
to stat() a file on a 32-bit system using legacy syscalls can fail
with EOVERFLOW. If we opt-in to more modern "large file support"
syscalls, then source code references to functions like stat() are
transparently replaced with ABIs that support large file sizes and
inode numbers, such as stat64().

This cannot safely be done globally by Linux distributions, because
some libraries expose types like `off_t` or `struct stat` in their
ABI, meaning that enabling large file support would be an incompatible
change that would cause crashes. However, SDL appears to be careful to
avoid these types in header files, so it should be OK to enable this.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-06-03 21:03:50 -07:00
.github ci: test installed packages using CMake 2022-06-03 12:41:36 -07:00
VisualC Separated controller type data into a C file 2022-06-03 15:03:08 -07:00
VisualC-WinRT Separated controller type data into a C file 2022-06-03 15:03:08 -07:00
Xcode cmake: make Xcode's sdl2-config.cmake compatible with the one from autotools 2022-06-03 12:41:36 -07:00
Xcode-iOS Updated iOS build instructions 2021-11-30 12:19:26 -08:00
acinclude imported two libtool mainstream commits 28fbcb6a and b55b1cc8 2022-03-16 17:15:20 +03:00
android-project Adjust gradle dependencies to enable the build to position assets for the APK 2022-03-15 21:57:25 -07:00
android-project-ant Added the old ant Android build project structure 2017-10-28 12:11:25 -07:00
build-scripts gen_audio_resampler_filter.c: Precalculate loop-invariant bessel(beta). 2022-05-26 10:44:01 -04:00
cmake cmake: Add mini-SDL2 CMake project to test SDL2 prefixes 2022-06-03 12:41:36 -07:00
docs cmake: install SDL2::SDL2test when configuring with SDL2_TEST enabled 2022-06-03 12:41:36 -07:00
include Sync wiki -> header 2022-06-04 01:52:04 +00:00
mingw/pkg-support/cmake cmake: Add CMake configuration files, meant for the prebuilt MinGW SDK 2022-06-03 12:41:36 -07:00
src Added a function to get the controller firmware version 2022-06-03 18:50:00 -07:00
test Wait for all the threads to actually finish before exiting 2022-06-03 08:46:08 -07:00
visualtest remove all unnecessary stuff from visualtest configury. 2021-12-21 20:01:02 +03:00
wayland-protocols video: wayland: Use wp-viewporter for fullscreen with non-native resolutions 2022-03-28 13:18:26 -04:00
.clang-format Disable formatting not supported by Visual Studio 2019 2022-05-27 15:29:21 -07:00
.editorconfig Separated controller type data into a C file 2022-06-03 15:03:08 -07:00
.gitignore Initial support for building for Windows with OpenWatcom 2022-05-19 20:11:10 +03:00
Android.mk mark Android.mk as non-executable 2021-11-12 12:55:28 +03:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
CMakeLists.txt build: Compile with large inode number support where possible 2022-06-03 21:03:50 -07:00
CREDITS.txt Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
INSTALL.txt INSTALL.txt: Say "macOS" instead of "Mac OS X" in modern times. 2022-03-15 13:07:55 -04:00
LICENSE.txt Updated copyright for 2022 2022-01-03 09:40:21 -08:00
Makefile.in Added mingw package support directory to the distribution archive 2022-06-03 12:51:00 -07:00
Makefile.minimal build libSDL2_test too with Makefile.minimal 2021-11-14 01:10:32 +03:00
Makefile.os2 updated watcom makefiles after 17410887d0 2022-06-04 01:10:00 +03:00
Makefile.pandora more fixes to standalone makefiles. 2021-11-13 21:56:20 +03:00
Makefile.w32 updated watcom makefiles after 17410887d0 2022-06-04 01:10:00 +03:00
README-SDL.txt More HTTPS changes in the documentation. 2017-02-16 16:52:03 -05:00
README.md Update and rename README.txt to README.md 2021-03-20 18:46:37 -04:00
SDL2.spec.in license: Fixed references to COPYING.txt that are now LICENSE.txt. 2021-02-18 11:07:26 -05:00
SDL2Config.cmake.in cmake: make SDL2Config.cmake compatible with autotools' sdl2-config.cmake 2022-06-03 12:41:36 -07:00
TODO.txt Fixed up legacy MoinMoin URLs at wiki.libsdl.org 2021-04-01 12:20:33 -04:00
WhatsNew.txt Switch versioning scheme to be the same as GLib and Flatpak 2022-05-04 09:55:35 -07:00
autogen.sh Simplified autogen.sh, thanks to @smcv for the tip 2022-05-05 11:54:24 -07:00
cmake_uninstall.cmake.in Fixed bug 3867 - Can't find install_manifest.txt when running 'uninstall' target 2017-10-12 08:44:45 -07:00
configure Make the sdl2-config script relocatable 2022-06-03 16:27:13 -07:00
configure.ac build: Compile with large inode number support where possible 2022-06-03 21:03:50 -07:00
sdl2-config-version.cmake.in Add documentation to autotoo'ls sdl2-config-version.cmake.in 2022-05-31 00:10:55 +02:00
sdl2-config.cmake.in cmake: rewrite autotools' sdl2-config.cmake.in with IMPORTED targets + no more -lmingw32 2022-06-03 12:41:36 -07:00
sdl2-config.in Add -Wl,-Bstatic to "sdl2-config --static-libs" output 2022-06-03 16:27:13 -07:00
sdl2.m4 acinclude & sdl2.m4 updates: 2020-12-22 17:00:28 +03:00
sdl2.pc.in rename PKG_CONFIG_LIBS_PRIV to PKGCONFIG_LIBS_PRIV 2021-04-14 21:40:50 +03:00

README.md

Simple DirectMedia Layer (SDL) Version 2.0

https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting with README.md

Enjoy!

Sam Lantinga (slouken@libsdl.org)