configure.ac


Log

Author Commit Date CI Message
Ryan C. Gordon 642fa0e3 2021-06-09T21:18:11 configure: Enable KMSDRM target by default.
Nicolas Caramelli 31637dde 2021-05-04T14:59:29 Generic check for desktop GL and EGL on Linux systems
Ozkan Sezer babd79b8 2021-04-14T23:20:40 bump minimum required autoconf version and revise autogen.sh
Ozkan Sezer 69203851 2021-04-14T21:40:50 rename PKG_CONFIG_LIBS_PRIV to PKGCONFIG_LIBS_PRIV i.e.: do not steal PKG_CONFIG namespace.
Ozkan Sezer 197cfcaf 2021-04-14T21:10:40 ran configure.ac through autoupdate-2.69 generated configure script is practically the same except for whitespace changes.
Ryan C. Gordon a81fe272 2021-04-04T00:16:30 configure/cmake: Hook up Emscripten threads (disabled by default). Fixes #3795.
Ryan C. Gordon b42bf2a7 2021-04-02T12:58:12 configure: Don't use "-Wl,--no-undefined" in "sdl2-config --static-libs" Fixes #3788.
Vanfanel 96cc4985 2021-03-16T22:41:26 [Build system] Report differentiated glx and glvnd OpenGL implementation detection.
vanfanel e213f37a 2021-03-15T12:53:16 [KMSDRM] Enable full OpenGL detection (MESA/libglvnd) on both the make and cmake buildsystems.
kenmays 9e23c652 2021-03-10T16:48:05 SDL: Updated patches for HAIKU
Ozkan Sezer bd065387 2021-03-08T17:02:28 configure: fix wrong AS_HELP_STRING quoting.
Ozkan Sezer 0a683221 2021-03-01T15:11:50 add missing PIPEWIRE defines to SDL_config.h.in also specify 'audio' in Pipepire configuration enable messages.
Frank Praznik 2f0b99a7 2021-02-13T11:56:05 audio: Add Pipewire playback/capture sink
Ozkan Sezer a29fe292 2021-02-18T20:10:50 configury: replace host checks against *-*-mingw32* with *-*-mingw*
Cacodemon345 88f1c2c1 2021-02-14T00:42:37 Replace "echo -en" with "printf" in autoconf script Fixes summary output on FreeBSD.
Ryan C. Gordon 4ff51d29 2021-02-12T14:15:29 Deprecate SDL_GetRevisionNumber and update things for git instead of hg. Fixes #4063
Ozkan Sezer bb9e049d 2021-02-07T00:37:00 minor updates to libc function checks
Sam Lantinga 2426949a 2021-02-01T21:56:56 Removed support for clock_gettime_nsec_np() SDL_GetTicks() was broken and it's not adding any real value here.
Ozkan Sezer 091a4649 2021-01-29T23:11:13 added --enable-xinput switch for windows builds
Ozkan Sezer aa4a6b0b 2021-01-25T04:11:40 better check for clock_gettime_nsec_np() -- cf. bug #5467.
Sam Lantinga 96cfb812 2021-01-23T09:50:43 Fixed bug 5467 - SDL sys timer Mac OS update proposal David Carlier Change of api from 2016 which reduce code complexity a bit.
Ozkan Sezer 23764588 2021-01-23T17:24:28 renamed SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H to SDL_HAVE_MACHINE_JOYSTICK_H
Ozkan Sezer d0c5097c 2021-01-23T03:41:02 minor autotools build system updates.
Ozkan Sezer 28255837 2021-01-19T14:55:20 fix AC_CHECK_HEADER for libusb.h
Sam Lantinga c265e73f 2021-01-17T10:05:11 Fixed bug 5473 - Add WSCONS support for NetBSD wahil1976 This patch adds WSCONS support for NetBSD.
Ozkan Sezer f3835702 2021-01-17T05:00:50 fix build with --disable-directx
Sam Lantinga 351abc58 2021-01-14T14:50:15 Fixed bug 5463 - generated Wayland interfaces are included in the library's ABI Simon McVittie In versions since 1.15, the `code` mode is a deprecated alias for `public-code`, which emits symbols with default visibility, overriding SDL's -fvisibility=hidden option. Use the `private-code` mode instead. This emits symbols with hidden visibility, so they do not affect the ABI of libSDL. See also: https://bugreports.qt.io/browse/QTBUG-73099, https://lists.freedesktop.org/archives/wayland-devel/2018-February/037097.html
Sam Lantinga 82aafa9a 2021-01-14T14:32:11 Fixed bug 5461 - Add rewritten WSCONS driver for OpenBSD wahil1976 This patch adds a written-from-scratch WSCONS driver for OpenBSD. It does not have hardcoded keymaps, and it features mouse support when wsmux is available. For this to work, it needs access to the /dev/wskbd* devices which are not available to non-root users by default. Access to those can be granted by changing /etc/fbtab to give the logging user the ownership of those devices.
Manuel Alfayate Corchete b2449473 2021-01-08T18:57:12 [KMS/DRM] Go back to the LEGACY interface only because using planes breaks compatibility with HW, so no advantage on using ATOMIC.
Ozkan Sezer a88071de 2020-12-30T15:55:00 configure.ac: directfb dynamic loading support updates: put back sed on find_lib result, remove debug messages, fix directfb_lib report to user.
Ozkan Sezer f24cc903 2020-12-30T15:53:56 remove CFLAGS save/restores from dbus.h and ibus.h header checks. CPPFLAGS is what AC_CHECK_HEADER needs.
Ozkan Sezer 6116ccf0 2020-12-29T21:20:28 fix configure warnings when checking dbus/dbus.h and ibus-1.0/ibus.h .. by adding DBUS_CFLAGS and IBUS_CFLAGS to CPPFLAGS: configure: WARNING: dbus/dbus.h: accepted by the compiler, rejected by the preprocessor! configure: WARNING: dbus/dbus.h: proceeding with the compiler's result configure: WARNING: ibus-1.0/ibus.h: accepted by the compiler, rejected by the preprocessor! configure: WARNING: ibus-1.0/ibus.h: proceeding with the compiler's result
Joel Linn 2443e51e 2020-12-28T11:42:49 Add optional suffix `_generic` to generic SDL_cond impl Allows for runtime selectable implementation
Ozkan Sezer a6c6e5f5 2020-12-27T14:00:02 configure.ac: fix POSIX conformance issues (bug #4261.) Patch from Matt Whitlock: There are actually two distinct classes of problems at play here. On the one hand, libsdl2's configure.ac has some POSIX conformance issues - namely, the use of 'echo -n' and the passage of arguments containing embedded backslashes to 'echo', neither of which is defined by POSIX. The attached patch takes care of these issues.
Sam Lantinga 93ccdee8 2020-12-23T13:47:49 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.
Sam Lantinga 350f1b0d 2020-12-22T10:36:15 Updated SDL to version 2.0.15 for development
Manuel Alfayate Corchete 2fc987c2 2020-12-22T14:15:33 [Buildsystem] Add guards for not building with KMSDRM support if EGL is not available.
Sam Lantinga ee180efd 2020-12-20T12:08:49 Fixed bug 5406 - Upstreaming DragonFlyBSD changes from DeltaPorts (patch from David Carlier)
Sam Lantinga 6bd4c717 2020-12-17T21:41:23 Fixed bug 5402 - ARM support little update proposal David Carlier No fix but mostly an update for ARM architecture.
Sam Lantinga f8839289 2020-12-15T12:22:48 Potential fix for bug 5393 - KMSDRM: using atomic mode setting breaks GPU compatibility Substring I was trying the KMSDRM video backend with some very simple programs that were working ok on 2.0.12. The same code won?t work on the current dev branch and I get: DEBUG: check_modesetting: probing ?/dev/dri/card0? DEBUG: /dev/dri/card0 connector, encoder and CRTC counts are: 4 5 6 DEBUG: check_modesetting: probing ?/dev/dri/card0? DEBUG: /dev/dri/card0 connector, encoder and CRTC counts are: 4 5 6 DEBUG: KMSDRM_VideoInit() DEBUG: Opening device /dev/dri/card0 DEBUG: Opened DRM FD (3) DEBUG: no atomic modesetting support. DEBUG: Video subsystem has not been initialized INFO: Using SDL video driver: (null) DEBUG: Video subsystem has not been initialized After carefully checking, the radeon driver doesn?t support atomic modesetting. That?s not the only problem : the same happens with the amdgpu driver if we disable Display Core (kernel parameter amdgpu.dc=0, which is required to get analogue outputs working). This is a major regression in the KMSDRM driver. Using atomic mode setting is great, but having no fallback to the "standard KMS" is bad.
Ozkan Sezer c02d88dd 2020-12-15T23:01:10 configury whitespace cleanup (no actual change.)
Ozkan Sezer 44d4a61d 2020-12-14T08:11:40 minor cleanups to configure.ac to reduce autoconf-2.70 warnings a bit. configure output is practically unchanged. there are still lots of AC_TRY_COMPILE/AC_TRY_LINK replacements needed to really eliminate the warnings, but that's for another time.
Ozkan Sezer f8078d3d 2020-12-14T05:55:20 configure.ac: use AC_DEFINE for SDL_VIDEO_DRIVER_ANDROID
Ozkan Sezer f674009c 2020-12-13T16:51:20 fix typo from commit 63349df2610a (fixes bug 5396)
Ozkan Sezer b6e63625 2020-12-13T15:32:24 fix bug #5395: handle old systems where inotify_init1 is not available
Sam Lantinga 64f448b2 2020-12-13T02:01:39 libusb hid.c is already included in SDL_hidapi.c
Sam Lantinga eec73dfd 2020-12-09T20:31:00 configure.ac (CheckJoystickMFI): changed AC_TRY_COMPILE to AC_TRY_LINK so as to discover GameController and CoreHaptics frameworks at compile time.
Sam Lantinga a2098a47 2020-12-08T18:56:06 Updated SDL to 2.0.14 in preparation for release candidate
Sam Lantinga 46a84478 2020-11-24T12:43:01 Added SDL_wcscasecmp() and SDL_wcsncasecmp()
Sam Lantinga a5cde4cb 2020-11-24T07:29:55 Fixed trying to use @available() on older SDK
Sam Lantinga b4338dda 2020-11-24T07:22:29 Enable -fobjc-weak when building MFI controller code
Sam Lantinga eba069ea 2020-11-24T06:53:48 It looks like the Objective C support needed to build MFI controller code is in 10.8
Sam Lantinga 7a05dbf4 2020-11-24T06:42:53 Fixed building on FreeBSD Alex S Looks like we have a collision with https://hg.libsdl.org/SDL/rev/cd774daff9f6. (Again, the headers in the base system are intended for drivers and should not be used for compiling non-base applications. At least that's the policy for now: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=240964#c19.)
Ozkan Sezer 23ad4f4b 2020-11-24T14:10:30 configure.ac: check GameController framework support when targeting Darwin disables SDL_JOYSTICK_MFI for i386 or if MAC_OS_X_VERSION_MIN_REQUIRED < 1090 --disable-joystick-mfi disables it unconditionally.
Sam Lantinga e9869e07 2020-11-23T21:08:19 Fixed bug 5335 - enable joystick/haptic/evdev support by default on FreeBSD Alex S Evdev headers aren't actually included in the base system (well, it has a private copy), they are available through the devel/evdev-proto port instead. We also have devel/libinotify and devel/libudev-devd shims, I didn't verify whether they work with SDL.
Ryan C. Gordon 5c957747 2020-11-23T22:14:22 joystick: Fix up Linux joystick code to (mostly) compile on FreeBSD.
Ozkan Sezer 4c96faee 2020-11-23T20:37:10 remove non-existing tslib support from autofoo and cmake
Sam Lantinga fd894467 2020-11-21T14:13:26 Fixed building on Mac OS X on the command line and with an older macOS SDK
Sam Lantinga 5e0644c1 2020-11-21T12:55:56 Disable libusb by default, as it breaks on Linux when trying to use it with non-root permissions on some distributions
Sam Lantinga 120dc280 2020-11-21T11:25:26 Enable HIDAPI by default
Brian Kubisiak 1ed36d21 2020-11-15T04:10:02 egl: Fix detection in configure script on systems without X11 (bug #5270) In recent versions of EGL headers on Linux, the MESA_EGL_NO_X11_HEADERS macro is deprecated and has been replaced with EGL_NO_X11. As a result, the configure script would fail the compilation check for EGL headers and disable EGL (and by extension, Wayland) support when X11 headers are not installed. Fix this by adding the correct macro to disable X11 support in the headers.
Sam Lantinga 1822f97e 2020-11-11T19:37:47 Fixed bug 5346 - Add FreeBSD evdev KBIO keyboard input driver wahil1976 This patch adds the KBIO text input driver for FreeBSD, which allows text input to fully work without text spilling out into the console. It also supports accented input, AltGr keys and Alt Lock combinations. Tested with US accent keys layout and various AltGr layouts.
Sam Lantinga 38ed8a95 2020-11-11T19:31:03 Fixed bug 5335 - enable joystick/haptic/evdev support by default on FreeBSD Alex S ...which allows SDL to talk to webcamd/iichid. (Webcamd actually bundles quite a few gamepad drivers.) Note that this does _not_ disable usbhid, both joystick backends will be compiled.
Simon McVittie 8db3171b 2020-11-11T19:14:34 udev: Factor out SDL_EVDEV_GuessDeviceClass This works on capability bitfields that can either come from udev or from ioctls, so it is equally applicable to both udev and non-udev input device detection. Signed-off-by: Simon McVittie <smcv@collabora.com>
Ryan C. Gordon 010d5fba 2020-10-26T09:49:09 kmsdrm: Make this build with significantly older system libraries. This allows one to build Raspberry Pi versions on an ancient version of Raspbian and get both the KMSDRM and RPI video targets built into SDL, giving maximum binary compatibility from linking against an older glibc, etc, but also making one library that can access video on all RPi models and OS releases.
Ozkan Sezer 196cda69 2020-10-12T01:02:28 build: fix / update sensors (windows) configuration - SDL_config.h.in: add missing defines SDL_SENSOR_COREMOTION and SDL_SENSOR_WINDOWS (configure did set SDL_SENSOR_WINDOWS but it never went in SDL_config.h or Makefile.) - SDL_config.h.cmake: remove duplicated SDL_SENSOR_XXX cmake defines. - autofoo, cmake: check for sensorsapi.h header before enabling windows sensors.
Cameron Cawley 59022829 2020-10-11T17:32:32 riscos: Implement SDL_OpenURL()
Ryan C. Gordon 77c9d73b 2020-10-05T11:30:33 Removed SDL_AndroidOpenURL, added SDL_OpenURL. Still needs to be wired into Xcode and Visual Studio projects.
Manuel Alfayate Corchete 78c274cb 2020-09-26T19:18:09 kmsdrm: merge patches from Ozkan Sezer for removing c-99'isms and raising libgbm version reqeriments.
Sam Lantinga b0ca8efd 2020-07-17T22:21:37 Re-add check for Metal on x86, where it's not supported.
Ryan C. Gordon 45f5eb06 2020-07-16T04:37:14 configure: On Apple platforms, only exclude Vulkan on x86. This catches both x86-64 and ARM devices.
Sam Lantinga 968b830d 2020-07-15T16:12:44 Fixed bug 5232 - SDL2 configure script detects Apple Silicon Macs as iPhones; fails to build due to missing components jackmacwindowslinux I'm testing my application that uses SDL2 on the new Apple Silicon Macs. I set up the SDL 2.0.12 source code from the website and tried to build it. The first issue I ran into was that it was always building OpenGL ES, even if --disable-video-opengles was passed to configure. OpenGL ES headers do not seem to be present on the Apple Silicon macOS SDK, except for the iOS SDK headers. Then I had problems with the joystick driver, where some classes used on iOS were not available on macOS. After looking through the configure.ac script a bit, I found that iOS targets are selected when the build host matches "arm*-apple-darwin*". Clang on macOS 11.0 on arm64 reports the host as "arm64-apple-darwin20.0.0", which matches the iOS target. This means that ARM Mac compilation will always be detected as iOS. Unfortunately, there doesn't seem to be an easy way to detect Mac vs. iOS targets, since they now both use the same triplet & compiler for building. I'm not sure what the best way to fix this is, but maybe there could be an additional target flag to specify whether to build for macOS or iOS? This might break compatibility, though: with this approach, either all old scripts that used configure to build for iOS fail, or all new builds on macOS without a flag fail (silently?).
Ozkan Sezer fe97f01b 2020-07-05T22:33:10 configure: corretly print --enable-arm-simd default value.
Ryan C. Gordon 3b71ebec 2020-06-27T02:38:13 configure: Accidentally deleted a ')' Sorry!
Ryan C. Gordon 363fd52b 2020-06-26T23:30:59 configure/cmake: Disable ARM SIMD and NEON by default. It's buggy at the moment.
Sam Lantinga 1a1f1704 2020-05-27T10:35:43 Don't include the iOS joystick driver if joysticks are disabled
Ryan C. Gordon 8bd3b2c8 2020-05-20T16:34:19 configure: fix fcitx tests. Otherwise Unix systems without D-Bus support will attempt to compile sources they can't handle.
Ryan C. Gordon a5c654d5 2020-05-19T13:22:01 configure: Just don't do the -idirafter on QNX. The compiler understands it, but the "qcc" compiler driver doesn't, and the standard Khronos headers upset QNX anyhow, since they try to include X11 headers in the __unix__ section.
Ryan C. Gordon 72fdc805 2020-05-19T12:30:26 configure: -idirafter needs a space, -I doesn't. Some compilers are apparently quite cranky about the -I not having a space!
Ryan C. Gordon 475afe21 2020-05-19T12:08:05 configure: Do a real check for -idirafter anyhow. (The CMake project cheats around this by asking "are we GCC or Clang?" and I'm inclined to leave it like that for now.)
Ryan C. Gordon 0e08d237 2020-05-19T11:48:22 configure: Not all compilers understand -idirafter, use -I instead. If this is a problem, we can write a test for the compiler flag, but shouldn't we _always_ use our Khronos headers instead of depending on the system...?
Sam Lantinga eadc8693 2020-05-11T14:31:04 Fixed bug 5103 - Port fcitx support to both fcitx 4 & 5 wengxt Due to the new major fcitx version is coming close, the existing code need to be ported to use new Fcitx dbus interface. The new dbus interface is supported by both fcitx 4 and 5, and has a good side effect, which is that it will work with flatpak for free. Also the patch remove the dependency on fcitx header. Instead, it just hardcodes a few enum value in the code so need to handle the different header for fcitx4 or 5.
Ryan C. Gordon fa23e3d0 2020-05-04T02:27:29 locale: Implemented SDL_GetPreferredLocales(). This was something I proposed a long time ago, Sylvain Becker did additional work on it, then back to me. Fixes Bugzilla #2131.
Sam Lantinga ef147d2e 2020-04-13T08:13:50 Enable virtual joystick API by default
James Le Cuirot abcc6706 2020-04-12T13:24:36 build: Don't duplicate Libs in Libs.private in pkg-config file pkg-config already prepends Libs to Libs.private when you specify --static so there's no need to duplicate them. Most other projects don't do this.
James Le Cuirot 99f87a71 2020-04-11T23:38:34 build: Merge pkg-config Libs.private into Libs for static-only builds A project being built entirely statically will call pkg-config with --static, which utilises the Libs.private field. Conversely it will not use --static when not being built entirely statically, even if there is only a static build of SDL available. This will most likely cause the build to fail due to underlinking unless we merge the Libs fields. This is what the Meson build system does when it generates pkg-config files. This also also follows the behaviour of sdl2-config. At the same time, the runtime linker flags are not applicable to static-only builds so only add them for shared builds.
Ryan C. Gordon d292f6bd 2020-04-10T12:17:14 stdlib: Add SDL_trunc and SDL_truncf
Sam Lantinga 3180ba81 2020-04-08T08:34:27 First pass at Windows sensor implementation
Paul Cercueil 486f0b6c 2020-04-07T13:49:19 configure.ac: Fix stupid autotools errors Apparently, recent versions of autotools will issue an error if an empty description is supplied to AC_DEFINE(). Avoid these errors by just adding a space in the square brackets. Partially fixes Bugzilla #4908.
Ryan C. Gordon 377f2d35 2020-04-01T13:43:53 configure: Remove wayland-protocols check from configure and CMake scripts. We ship these with SDL now, don't need the system versions installed.
Sam Lantinga 891bd829 2020-03-20T20:33:26 Fixed warning building version.rc using mingw-64
Jimb Esser 417713a7 2020-03-20T19:49:19 Probable fix for compile errors on Mac OS and (non-VS) Win32
Sam Lantinga 74ba3cb4 2020-03-20T19:48:26 Backed out changeset c5bb2de42684
Sam Lantinga c63bb512 2020-03-20T19:42:59 Only build raw input support on Windows
Sam Lantinga 4dea340c 2020-03-16T12:23:38 Fixed bug 4477 - Support more than 4 XInput-capable devices on Windows Jimb Esser Add new RawInput controller API, and improved correlation with XInput/WGI Reorder joystick init so drivers can ask the others if they handle a device reliably Do not poll disconnected XInput devices (major perf issue) Fix various cases where incorrect correlation could happen Simple mechanism for propagating unhandled Guide button presses even before guaranteed correlation Correlate by axis motion as well as button presses Fix failing to zero other trigger Fix SDL_HINT_JOYSTICK_HIDAPI not working if set before calling SDL_Init() Add missing device to device names Disable RawInput if we have a mismatch of XInput-capable but not RawInput-capable devices Updated to SDL 2.0.13 code with the following notes: New HID driver: xbox360w - no idea what that is, hopefully urelated SDL_hidapijoystick.c had been refactored to couple data handling logic with device opening logic and device lists caused some problems, yields slightly uglier integration than previously when the 360 HID device driver was just handling the data. SDL_hidapijoystick.c now often pulls the device off of the joystick_hwdata structure for some rumble logic, but it appears that code path is never reached, so probably not a problem. Looks like joystick_hwdata was refactored to not include a mutex in other drivers, maintainers may want to do the same refactor here if that's useful for some reason. Something changed in how devices get names, so getting generic names. Had to fix a (new?) bug where removing an XInput controller caused existing controllers (that moved to a new XInput index) to get identified as 0x045e/0x02fd ("it's probably Bluetooth" in code), rendering the existing HIDAPI_IsDevicePresent and new RAWINPUT_IsDevicePresent unreliable.
David Ludwig cc37ee8a 2020-03-16T00:21:22 virtual joysticks: add autotools-build support (Bug 5028) Autotools support for virtual-joysticks turns it OFF by default. To turn it on, pass the following into configure: --enable-joystick-virtual
Sam Lantinga 983bbf9e 2020-03-10T18:35:31 Backed out changeset 51622f74dc85
Sam Lantinga 93ed3c8b 2020-03-10T18:25:47 Updated SDL to version 2.0.13 for development builds
Sam Lantinga 4fb06a2a 2020-03-10T18:25:47 Updated SDL to version 2.0.13 for development builds
Paul Cercueil 11b63fac 2020-03-02T15:14:02 Prevent Mesa from including X11 headers if X11 is disabled This fixes compilation errors that occur when trying to compile SDL2 for a X11-less target. The errors were due to the fact that Mesa will include X11 headers unless a couple of macros are defined. Signed-off-by: Paul Cercueil <paul@crapouillou.net>