Ozkan Sezer
001aa4dab8
cmake: more hidapi fixes.
2021-11-08 21:12:02 +03:00
Sam Lantinga
4bbbe5f84c
Fixed CMake build by adding hidapi files
...
This needs more work to remove the hidapi shared library build, but at least Linux builds are unblocked
2021-11-08 09:28:36 -08:00
Cameron Gutman
7f308abb55
cmake: Only prevent MSVC codegen using the CRT if SDL_LIBC=OFF
2021-11-04 01:02:48 -05:00
Cameron Gutman
16845eef29
cmake: Add SDL include path when building tests
...
The tests can't find any of the SDL includes otherwise
2021-10-31 17:57:40 -07:00
Cameron Gutman
7e8469d196
cmake: Fix MinGW build break in WGI joystick driver
...
Just look for windows.gaming.input.h rather than assuming its presence
or absence based on other CMake variables.
Fixes MinGW builds in CI
2021-10-31 09:34:34 -05:00
Cameron Cawley
25c71748ad
Add a barebones RISC OS video driver
2021-10-30 21:25:01 -07:00
Ybalrid (Arthur Brainville)
81fe2ccb9c
cmake: Add missing SDL_JOYSTICK_WGI in config step
...
SDL_config.h *can* define SDL_JOYSTICK_WGI. On builds with the Windows
10 SDK available, this allow implementing trigger rumbling on Xbox One
controllers. The files included in the Visual Studio Solution in
VisualC\SDL.sln *do* have this define set.
fix #4859
2021-10-30 21:21:54 -07:00
Joel Winarske
378c5d7ffe
make aclocal install relative
2021-10-26 22:37:53 -04:00
Cameron Cawley
3db898c5b6
riscos: Implement SDL_GetPrefPath()
2021-10-12 13:07:52 -07:00
Ryan C. Gordon
ab7910facf
cmake: Move the old, global add_definitions (etc) to an interface library.
...
Fixes #4150 .
2021-10-05 12:34:29 -04:00
Ryan C. Gordon
25fdba39bb
cmake: fix indentation.
2021-10-05 11:19:14 -04:00
Ryan C. Gordon
f306662544
cmake: Correctly set IOS variable.
...
Fixes #4635 .
2021-10-05 11:13:41 -04:00
Ryan C. Gordon
60d59aeb61
cmake: Calculate padding for dislaying options automatically.
2021-10-05 10:54:06 -04:00
Ryan C. Gordon
7850d0cf6f
cmake: Prefix all options with "SDL_"
...
This makes it clear which options came from SDL's CMake project when
building SDL as a subdirectory of a parent CMake project.
Fixes #4139 .
2021-10-05 10:45:26 -04:00
Ryan C. Gordon
ab09f3dae5
cmake: Remove warning about CFLAGS environment variable.
...
CMake 3.11.0 respects this environment var.
Fixes #4681 .
2021-09-30 10:02:54 -04:00
Ryan C. Gordon
cd6f96dede
cmake: bump minimum CMake allowed to 3.11.0.
...
This cmake is 3 years old, but it removes confusion about the CFLAGS
environment variable (as of CMake 3.10.0, reference PR #4681 ) and also
consolidates resolves the need to have a separate requirement for Windows
Store apps (which requires CMake 3.11.0).
2021-09-30 10:02:53 -04:00
Ryan C. Gordon
f79ac6a8de
cmake: Don't use the CFLAGS environment variable.
...
CMake has standard means of setting compiler flags, such as the
-DCMAKE_C_FLAGS command line for general-purpose flags, and
-DCMAKE_BUILD_TYPE for letting it choose reasonable release/debug/etc
defaults. Trying to emulate the configure script is incorrect and confusing
here.
Fixes #1819 .
2021-09-27 23:31:23 -04:00
Cameron Gutman
5dccffd7e4
Allow usage of the new Condition Variable code with Critical Sections
...
Vista and later provide the SleepConditionVariableCS() function for this.
Since SDL_syscond_srw.c doesn't require SRW locks anymore, rename it to
SDL_syscond_cv.c which better reflects the implementation of condition
variables rather than the implementation of mutexes.
Fixes #4051 .
2021-09-17 19:38:09 -04:00
Ivan Epifanov
8d1e0ca324
Vita: add support for disabling 'screensaver' (screen dimming and suspend)
2021-09-16 09:03:17 -07:00
Cameron Cawley
67aacfe5c0
cmake: Retrieve the git revision on platforms without bash
2021-09-09 22:34:42 -04:00
Cameron Cawley
6301cfda95
cmake: Use the correct directory structure for MinGW builds
2021-09-09 22:34:42 -04:00
Ivan Epifanov
134dd46819
Add pvr gles/gles2 context support
2021-09-09 07:22:01 -07:00
Yao Wei Tjong 姚伟忠
76d50d2871
Force color diagnostics when applicable
...
Although GCC and Clang automatically generate color diagnostics on
terminal output, they do not do so when the compiler output is piped
through another process, like in the case for ninja-build and ccache.
Similarly, it would also be nice to be able to see the color diagnostics
on the CI build log in the web interface provided by the CI providers.
2021-08-24 07:44:38 -10:00
Ryan C. Gordon
374b0b9aaf
cmake: Don't support Vulkan if LOADSO is disabled.
...
Fixes #4373 .
2021-08-24 00:01:46 -04:00
Sam Lantinga
f5794f9eeb
Added SDL_SetTextureUserData() and SDL_GetTextureUserData() to associate a user-specified pointer with an SDL texture
2021-08-10 15:17:59 -07:00
Sam Lantinga
3f6ebffff4
Updated to version 2.0.17 for development
2021-08-10 15:02:36 -07:00
Sam Lantinga
6810399352
Enable AAUDIO driver for Android
...
I thought this was already enabled for 2.0.16, but apparently not.
Fixes https://github.com/libsdl-org/SDL/issues/3710
2021-08-10 14:50:43 -07:00
Ozkan Sezer
77c8d11137
configuration updates for dlopen:
...
- cmake, configure (CheckDLOPEN): --enable-sdl-dlopen is now history..
detach the dl api discovery from SDL_LOADSO_DLOPEN functionality.
define HAVE_DLOPEN. also define DYNAPI_NEEDS_DLOPEN (CheckDLOPEN is
called only for relevant platforms.)
- update SDL_config.in and SDL_config.cmake accordingly.
- SDL_dynapi.h: set SDL_DYNAMIC_API to 0 if DYNAPI_NEEDS_DLOPEN is
defined, but HAVE_DLOPEN is not.
- pthread/SDL_systhread.c: conditionalize dl api use to HAVE_DLOPEN
- SDL_x11opengl.c, SDL_DirectFB_opengl.c, SDL_naclopengles.c: rely
on HAVE_DLOPEN, not SDL_LOADSO_DLOPEN.
- SDL_config_android.h, SDL_config_iphoneos.h, SDL_config_macosx.h,
SDL_config_pandora.h, and SDL_config_wiz.h: define HAVE_DLOPEN.
Closes: https://github.com/libsdl-org/SDL/pull/4351
2021-08-10 12:07:32 -07:00
Tomasz Kłoczko
ea9bece5ed
Fix breaking GNUInstallDirs cmake module $CMAKE_INSTALL_LIBDIR directory. Fix #4621
...
According to https://cmake.org/cmake/help/v3.0/module/GNUInstallDirs.html
`${CMAKE_INSTALL_LIBDIR} ` is only variable which should be used as base
directory. Without that patch on 64 bit archs libraries, cmake modules and
pkgconfig file are installed for example in /usr/lib6464 base directory.
This patch fixes #4621 .
Signed-off-by: Tomasz Kłoczko <koczek@github.com>
2021-08-10 14:47:53 -04:00
Sam Lantinga
a91ab883e9
Fixed building on Windows with cmake, ninja, and clang
2021-08-06 12:28:24 -07:00
Sam Lantinga
cdac61fffa
Fixed typo
2021-08-06 12:00:53 -07:00
Sam Lantinga
eec41d25de
Add info on how to avoid the "Prevented in-tree build" message with CMake
2021-08-06 11:30:22 -07:00
Ryan C. Gordon
b83a019d68
cmake: Force linker to treat input as a C++ program on Haiku.
...
Reference issue #4590 .
2021-08-04 19:22:40 -04:00
Ozkan Sezer
5b18ae29b7
improvements to libdecor support in cmake
...
this makes it consistent with wayland support, and makes cmake side
in line with autotools' libdecor support.
2021-08-03 14:01:02 +03:00
Ozkan Sezer
a15ec36547
attempt to fix cmake builds with libdecor
2021-08-03 11:33:50 +03:00
Ryan C. Gordon
c308453952
cmake: Use CMAKE_INSTALL_FULL_* for libdir,bindir,etc.
...
This makes sure sdl2.pc gets the full paths, matching what the
configure script will generate.
Fixes #4569 .
2021-08-03 02:49:08 -04:00
Ozkan Sezer
d373af044b
CMakeLists.txt: update DYLIB_CURRENT_VERSION too 2.0.16 for release
2021-08-01 01:39:20 +03:00
Sam Lantinga
cb1fd30e9a
Updated to version 2.0.16 for release
2021-07-31 13:28:54 -07:00
Sam Lantinga
1a9253f752
Removed unused IOS_DYLIB definition
2021-07-31 12:37:28 -07:00
Christian Rauch
9e6fcbe72c
wayland: client-side decoration
2021-07-25 14:54:12 -07:00
Joel Linn
20eea021c6
Windows: set HAVE_IMMINTRIN_H for AVX intrinsics
2021-07-24 15:39:17 -04:00
Ryan C. Gordon
6956f4aa19
cmake: use CMAKE_INSTALL_LIBDIR instead of hardcoding "lib", etc.
...
These came from HaikuPorts, specifically this patchset:
462947dd4f/media-libs/libsdl2/patches/libsdl2-2.0.14.patchset
This is just the part that is _not_ Haiku-specific. I wanted this in a
separate commit though, since I'm not really a CMake expert; if this causes
problems and we need to bisect to it, we won't be confused about it being a
Haiku issue when we get here.
Fixes #4092 .
(and probably others.)
2021-07-24 11:06:40 -04:00
Ryan C. Gordon
403afdb558
cmake: Haiku fixes.
...
These came from HaikuPorts, specifically this patchset:
462947dd4f/media-libs/libsdl2/patches/libsdl2-2.0.14.patchset
This is just the Haiku-specific bits; the more general parts about install
dirs will be split into a different commit here.
Reference issue #4092 .
2021-07-24 11:02:27 -04:00
Ozkan Sezer
5ac81c75fe
fixed typo in previous commit
2021-07-10 10:05:40 +03:00
Ozkan Sezer
a809d62605
cmake: set SDL_JOYSTICK_RAWINPUT for windows builds
...
Fixes: https://github.com/libsdl-org/SDL/issues/4412
2021-07-10 10:01:40 +03:00
h5p9sl
e52733af8d
Use CMAKE_CURRENT_BINARY_DIR instead of CMAKE_BINARY_DIR
...
This allows for building with cmake's add_subdirectory() function.
2021-07-09 16:11:40 -07:00
Daniel Gibson
e2234ee97c
CMake: Fix SOVERSION/SONAME of non-release versions
...
When building SDL2 from git with CMake, you got libSDL2-2.0.so.1
instead of .0 (as it's the case when building with autotools).
This was caused by using LT_REVISION instead of LT_MAJOR for SOVERSION.
fixes #4310
2021-07-08 14:55:33 -07:00
Ozkan Sezer
be41cf2dfe
CMake: don't blacklist TARGET_OS_SIMULATOR for Metal configuration
...
7fa5e95b62
enabled it.
2021-07-08 21:20:02 +03:00
Croydon
3433f3c4cc
CMake: Small improvement for MinGW
...
This is currently a small patch we have in our Conan package for SDL 4dc894cc2c/recipes/sdl2/all/conanfile.py (L184)
Introduced in 9fb93a6044
2021-07-07 16:55:17 -07:00
Ivan Epifanov
6460151c84
Vita: add missing stub
2021-07-01 15:14:49 -07:00
Ivan Epifanov
2465444fba
Add missing dependencies
2021-06-14 11:53:19 -07:00
Ivan Epifanov
bbdd08e0b2
Build without PIB support by default and add flag to enable it
2021-06-11 13:21:07 -04:00
Nicolas Caramelli
6a2af48ad7
CMake: Generic check for desktop GL and EGL on Linux systems
2021-06-01 16:50:28 -07:00
Cacodemon345
ded023870d
Make CMake script more accurate to autoconf script
...
DBus, IBus and inotify is now able to be used outside Linux like in configure.
KMSDRM input is now working on FreeBSD with CMake compilation.
2021-06-01 15:34:52 -07:00
Ivan Epifanov
ca969eb2be
Remove gles2 vita render
2021-04-24 14:13:09 -07:00
Sylvain
d4e96e1153
Android: enable audio driver OpenSLES when building with CMake
2021-04-16 09:44:07 +02:00
Sylvain
02b1ebc9e0
Android: add openslES and AAudio compilation to CMakeLists
2021-04-15 21:13:17 +02:00
Ozkan Sezer
69203851dc
rename PKG_CONFIG_LIBS_PRIV to PKGCONFIG_LIBS_PRIV
...
i.e.: do not steal PKG_CONFIG namespace.
2021-04-14 21:40:50 +03:00
okuoku
401f485490
cmake: Weak link with CoreHaptics
...
Add link to CoreHaptics so we can compile against latest iOS SDKs.
2021-04-13 16:04:04 -07:00
Kyle Schaefer
dbedaeceb3
Adding checks to see if any ASAN flags are set, if so then we set(HAVE_ASAN ON) so the infomartion output will properly list ASAN as on.
2021-04-13 16:03:37 -07:00
Kyle Schaefer
70bd205bb1
Adding messages to output CMAKE_C_FLAGS_DEBUG and CMAKE_CXX_FLAGS_DEBUG, this way when using Debug builds you can see which debug flags are set
2021-04-13 16:03:37 -07:00
Kyle Schaefer
320666044e
Moving ASAN macros and calls to macros above the information output section so we can display ASAN information properly.
2021-04-13 16:03:37 -07:00
okuoku
732cc8ed5b
cmake: Fix UWP DLL build by removing /NODEFAUTLIB
...
On UWP, we need default C runtime for C++ sources.
2021-04-09 22:28:51 -07:00
Vladislav Dmitrievich Turbanov
50db4a59b8
* Support for intrinsics in MSW + Clang scenario.
...
Utility polyfill is provided, removed the no-longer-needed
conditionals.
2021-04-09 22:28:07 -07:00
okuoku
7b8c750954
CMake: Enable WASAPI on WinRT
...
WASAPI backend on WinRT was implemented with 2.0.8
351d6d4784
but CMake source here was written for 2.0.7 in vcpkg
e6c65b93b1
2021-04-04 09:20:04 -04:00
Ryan C. Gordon
a81fe27271
configure/cmake: Hook up Emscripten threads (disabled by default).
...
Fixes #3795 .
2021-04-04 00:16:30 -04:00
vanfanel
e213f37a45
[KMSDRM] Enable full OpenGL detection (MESA/libglvnd) on both the make and cmake buildsystems.
2021-03-15 18:47:22 -07:00
Ivan Epifanov
e58a955e68
Deprecate dolcesdk
2021-03-08 09:07:12 -08:00
Ivan Epifanov
4708c6bb96
Remove pkg-config prefix hack
2021-03-08 09:07:12 -08:00
uyjulian
b52e9459ba
Add support for open URL
2021-03-08 09:07:12 -08:00
Ivan Epifanov
a43f488920
Don't search for pthread
2021-03-08 09:07:12 -08:00
Ivan Epifanov
54134fddd5
Use Clib mem funcs
2021-03-08 09:07:12 -08:00
Ivan Epifanov
e928b92f1a
CMake support
2021-03-08 09:07:12 -08:00
Ozkan Sezer
34ecd71e80
CMake: don't add -Wl,--no-undefined to LDFLAGS for clang+windows cases
...
from a patchset by Vladislav Dmitrievich Turbanov:
https://github.com/libsdl-org/SDL/pull/4062
2021-03-04 18:44:04 +03:00
Ozkan Sezer
3880174a9f
CMake: set OPT_DEF_LIBC to ON for clang case, too.
...
from a patchset by Vladislav Dmitrievich Turbanov:
https://github.com/libsdl-org/SDL/pull/4062
2021-03-04 18:40:56 +03:00
Ozkan Sezer
05cc9e3764
CMake: move GCC check after CLANG, so that CLANG is properly recognized
...
from a patchset by Vladislav Dmitrievich Turbanov:
https://github.com/libsdl-org/SDL/pull/4062
2021-03-04 18:40:50 +03:00
Ozkan Sezer
0a68322170
add missing PIPEWIRE defines to SDL_config.h.in
...
also specify 'audio' in Pipepire configuration enable messages.
2021-03-01 15:11:50 +03:00
Frank Praznik
2f0b99a774
audio: Add Pipewire playback/capture sink
2021-02-28 19:40:09 -08:00
Joshua Saxby
fe6f62e6ce
Add ALIAS targets to all installed SDL2 targets
...
This provides a linking interface that matches the one available when `find_package()` is used, by aliasing all of SDL's public targets into the SDL2:: namespace. Thus, dependees link to the same-named targets regardless of how SDL was acquired.
This approach permits the use of wrappers around CMake's FetchContent API such as https://github.com/cpm-cmake/CPM.cmake
2021-02-13 11:43:35 -08:00
Christian Rauch
2170c7bfde
make AddressSanitizer optional and disabled by default
2021-02-10 10:22:20 -05:00
Christian Rauch
5045d299a6
enable AddressSanitizer only for GCC 5 onwards (bug #5533 )
2021-02-10 10:22:20 -05:00
Christian Rauch
066960c207
add '-shared-libasan' to debug flags (bug #5533 )
2021-02-10 10:22:20 -05:00
Ozkan Sezer
bb9e049d1d
minor updates to libc function checks
2021-02-10 10:22:19 -05:00
Sam Lantinga
2426949a18
Removed support for clock_gettime_nsec_np()
...
SDL_GetTicks() was broken and it's not adding any real value here.
2021-02-10 10:22:19 -05:00
Christian Rauch
42798cec8b
cmake: enable AddressSanitizer in Debug builds if supported
2021-02-10 10:22:19 -05:00
Sam Lantinga
b7f711cd76
Don't enable address sanitize flags without checking compiler first
2021-02-10 10:22:18 -05:00
Christian Rauch
f8b4a6e25a
cmake: enable AddressSanitizer in Debug builds
2021-02-10 10:22:18 -05:00
Ozkan Sezer
091a4649e8
added --enable-xinput switch for windows builds
2021-02-10 10:22:18 -05:00
Sam Lantinga
de1c19b3f5
Fixed bug 5481 - iOS-specific main sources not used for CMake build.
...
Aaron Barany
The CMake build for SDL doesn't set SDLMAIN_SOURCES on iOS to the sources in src/main/ios. As a result, SDL fails to initialize since it falls back to the dummy main. Adding the line file(GLOB SDLMAIN_SOURCES ${SDL2_SOURCE_DIR}/src/main/uikit/*.c) fixes the issue.
2021-02-10 10:22:16 -05:00
Ozkan Sezer
aa4a6b0b88
better check for clock_gettime_nsec_np() -- cf. bug #5467 .
2021-02-10 10:22:16 -05:00
Ozkan Sezer
d327bbfbfd
CMakeLists.txt: fix check_symbol_exists() for clock_gettime_nsec_np
2021-02-10 10:22:16 -05:00
Sam Lantinga
96cfb81232
Fixed bug 5467 - SDL sys timer Mac OS update proposal
...
David Carlier
Change of api from 2016 which reduce code complexity a bit.
2021-01-24 00:51:25 -05:00
Ozkan Sezer
f3835702d3
fix build with --disable-directx
2021-01-24 00:51:24 -05:00
Sam Lantinga
d54b125a86
Fixed bug 5287 - Support building for UWP with CMake
...
Jan Niklas Hasse
Actually the SDL2-static target works, if I set SDL_SENSOR to OFF. Awesome!
See this patch: https://github.com/microsoft/vcpkg/blob/master/ports/sdl2/0003-sdl2-fix-uwp-build.patch
2021-01-14 14:53:34 -08:00
Ozkan Sezer
8a32ee24db
removed MSVC strtok_s use from SDL_strtokr().
...
no other ??_s are used elsewhere in SDL_stdinc. besides, C11 has a
strtok_s with a different signature.
2020-12-30 01:00:24 +03:00
Joel Linn
2443e51e0e
Add optional suffix `_generic` to generic SDL_cond impl
...
Allows for runtime selectable implementation
2020-12-28 11:42:49 -08:00
Ozkan Sezer
471d3c363e
fix bug #5415 -- fatal error: 'Cocoa/Cocoa.h' file not found in iOS build
2020-12-27 14:00:30 +03:00
Ozkan Sezer
9f6fddb40f
CMake: don't check for --no-undefined linker flag for OpenBSD (bug #5174 )
...
it now matches autotools.
2020-12-27 05:20:10 +03:00
Sam Lantinga
93ccdee8c1
Fixed bug 5404 - stdlib: Added SDL_round, SDL_roundf, SDL_lround and SDL_lroundf
...
Cameron Cawley
stdlib: Added SDL_round, SDL_roundf, SDL_lround and SDL_lroundf
The default implementation is based on the one used in the Windows RT video driver.
2020-12-23 13:47:49 -08:00
Ozkan Sezer
b4b674dabb
CMakeLists.txt: sync DYLIB_CURRENT_VERSION to Xcode project
2020-12-22 22:10:50 +03:00