Commit graph

145 commits

Author SHA1 Message Date
Alex Szpakowski
0ba98cae5f Add public APIs for creating a Metal view attached to an SDL window. Add SDL_metal.h. 2019-08-05 12:35:32 -03:00
Hugh McMaster
da3ddaf8fa Add a configure option allowing users to choose whether to install sdl2-config
sdl2-config is installed by default if no flag is specified.
2019-04-07 23:01:07 +10:00
Hugh McMaster
f386148e47 configure.in: Rename to configure.ac to fix an 'aclocal' warning
Also rename references in related files.
2019-03-25 23:01:32 +11:00
Sam Lantinga
13bbc7e0b2 Fixed bug 4379 - fix parallel build with slibtool
orbea

I am having a parallel build problem with -j3 or higher using the autotools build and slibtool instead of GNU libtool. Basically slibtool is faster than GNU libtool and it will start working before mkdir starts or finishes creating the build/ directory.
2018-12-08 11:22:50 -08:00
Sam Lantinga
09c276f295 First pass on the new SDL sensor API 2018-08-21 12:11:34 -07:00
Ryan C. Gordon
ecd3391777 wayland: Keep protocol XML files in-tree.
Now you don't need the latest Wayland installed to build with
newer protocols supported, as they'll build correctly; even if
your system can't use them, we can make intelligent decisions
at runtime about what's available on the current machine anyhow.

This also simplifies some logic and possible failure cases in
the configure and CMake scripts.

Fixes Bugzilla #4207.

--HG--
extra : amend_source : 1b786977f162f8a9e984f543a044e1a0da80f2bd
2018-06-25 09:37:25 -07:00
Ryan C. Gordon
a566435db1 vulkan: Initial Vulkan support!
This work was done by Jacob Lifshay and Mark Callow; I'm just merging it
into revision control.

--HG--
extra : rebase_source : cb3bb332146125366b5242c0d7444f44638733d9
extra : amend_source : c72ebb6d3a92efc3fdd085ce3b6d4b1d7f573cc9
2017-08-27 22:15:57 -04:00
Sam Lantinga
290c717f3d Fixed bug 2360 - Wrong -rpath setting includes DESTDIR rather that only the libdir
Marcus von Appen

The LT_LDFLAGS in Makefile.in contain the $(DESTDIR) in -rpath, which instructs libtool to take a wrong path into account for linking.

The issue arises, if DESTDIR is passed at build time and installation time.
-rpath only should use $(libdir) for both SDL 1.2 and SDL 2.x.
2017-08-14 14:10:48 -07:00
Sam Lantinga
67bb802fe6 Fixed bug 3208 - Minor improvements to the configure script
Rafal Muzylo

"if we're already using libtool, why aren't we using it ?"; they've been inspired by the fact, that at that mark, neither libSDL2_test.a nor libSDL2main.a were being built correctly (not sure if it's fully broken or just because I've tested the out-of-tree build)
2017-08-12 15:00:33 -07:00
Sam Lantinga
dd61565e37 Fixed bug 3651 - CMake build does not install CMake package configuration
tschwinger@elitemail.org

Most ironically, although autoconf/automake-based builds install (pretty half-assed) CMake package configuration files, they're missing in installations resulting from CMake-based builds entirely.

A proper configuration file typically also loads target exports (implemented in patch 3572, also fixing this issue - see my comment on that issue for details).

I believe it would be best to let the dinosaurs go extinct and redirect all build efforts to the CMake end for two reasons:

1. It potentially provides the best user experience, but you'd have to give it some love and ship with less quirky buildfiles.

2. It would force distros to build SDL via CMake and thus would ensure target exports are actually available everywhere.

Various CMake patches I submitted today in summary (directly converted from the HG commits and `am`d onto a fork of a git mirror that happened to be on `tip`).

    https://github.com/tschw/SDL/commits/patched

Fixing #2576 #3572, #3613, and this fresh ticket, which is almost entirely advertisement ;).

These already do to make SDL much less of a quirky fella to have in your dependency tree...
2017-08-09 19:03:10 -07:00
Sam Lantinga
de8a709d9a Fixed bug 3733 - Makefile sleeps for 3 seconds if configure is out of date 2017-08-09 16:20:04 -07:00
Jonas Ådahl
44760bd0c7 wayland: Build own version of core protocol
Since we are loading shared objects dynamically, build our own version of the
core protocol symbols, so that we in the future can include protocol
extensions.
2016-06-23 18:39:05 +08:00
Philipp Wiesemann
cba1bef679 Added missing file to the release archive. 2015-07-02 20:11:40 +02:00
Sam Lantinga
3039a59198 Fixed bug 2464 - Configure a sdl2-config.cmake.in together with sdl2.pc.in
Leonardo

Despite having a CMakeLists.txt file, SDL2 seems to be mainly built using the autotools system by package-managers. It is nice to have it but it is only useful if you are building SDL2 by yourself.

People that want to use CMake to find their already-installed SDL2 are using a FindSDL2.cmake module based on the old FindSDL.cmake. This is not deprecated but it is discouraged by the CMake devs (see http://www.cmake.org/Bug/view.php?id=14826), as these modules needs maintainers to be included in the official CMake installation.

To fix that, SDL and its accompanying libraries could configure a simple sdl2-config.cmake file, much like it does with sdl2.pc.in. We don't need to configure a full sdl2-config.cmake as in this post, http://forums.libsdl.org/viewtopic.php?t=10068&sid=ccf8abbf0d73fb03ae9cded991e60959 (because it depends on it being built with CMake). Using something as simple as http://www.cmake.org/Wiki/CMake/Tutorials/Packaging#Package_Configuration_Files is deemed enough. Here is another: http://quickgit.kde.org/?p=prison.git&a=blob&f=lib%2Fprison%2FPrisonConfig.cmake.in
2015-06-29 22:24:00 -07:00
Philipp Wiesemann
500500d864 Added missing file and folder to the release archive. 2015-06-20 11:15:37 +02:00
Sam Lantinga
de28dbbe82 Added the docs directory to the release archive 2015-06-20 00:25:28 -07:00
Sam Clegg
b4ab60690e Make autoconf-based build quiet by default.
Add V=1 to the make command line will show the full commands but by default
we just show the tool-type and the output file.  This is generally much easier
on the eye and makes warnings and errors more clearly visible.
2014-06-19 00:40:09 -04:00
Sam Lantinga
b5702114f0 Added missing headers that should be installed. 2014-06-05 09:27:06 -07:00
Ryan C. Gordon
4b29e7eeba Added SDL_opengl_glext.h to the list of headers to install. 2014-06-05 10:28:08 -04:00
Steven Stewart-Gallus
770fb6a160 Set the tag type in libtool invocations
Setting the tag type will let libtool work even when it cannot infer
the type of the code being built. One way libtool may fail to infer
the tag type is if one uses a mock compiler (such as for static
analysis).
2014-04-19 16:33:42 -07:00
Ryan C. Gordon
2b9a2802b2 Added SDL_GetBasePath() and SDL_GetPrefPath() in new filesystem module.
--HG--
extra : rebase_source : c1fac232063443a2880e64f1abda85e0bdb2e710
2013-08-20 19:57:11 -04:00
Ryan C. Gordon
2740a12ae3 Backout hg changset 898992405fa7; lots of things still use SDL_types.h. :/
Will remove this again at some point in the future, though.
2013-07-09 11:57:32 -04:00
Ryan C. Gordon
7afed3e5ae Removed deprecated SDL_types.h header.
Fixes Bugzilla #1945.
2013-07-08 23:37:00 -04:00
Sam Lantinga
2f9f779e70 Renamed WhatsNew so it can be easily read on Windows
--HG--
rename : WhatsNew => WhatsNew.txt
2013-05-26 12:43:03 -07:00
Sam Lantinga
2b824bd331 Renamed documentation files to .txt and converted them to DOS line endings so they would open properly on all systems.
Updated Makefile.in so "make dist" includes everything necessary for release.

--HG--
rename : BUGS => BUGS.txt
rename : COPYING => COPYING.txt
rename : CREDITS => CREDITS.txt
rename : INSTALL => INSTALL.txt
rename : README.android => README-android.txt
rename : README.cmake => README-cmake.txt
rename : README.DirectFB => README-directfb.txt
rename : README.gesture => README-gesture.txt
rename : README.HG => README-hg.txt
rename : README.iOS => README-ios.txt
rename : README.MacOSX => README-macosx.txt
rename : README.pandora => README-pandora.txt
rename : README.Platforms => README-platforms.txt
rename : README.Porting => README-porting.txt
rename : README.psp => README-psp.txt
rename : README.touch => README-touch.txt
rename : README.WinCE => README-wince.txt
rename : README => README.txt
rename : TODO => TODO.txt
2013-05-26 11:06:17 -07:00
Sam Lantinga
70132c66ae The input API was never implemented, so removing it before release. 2013-02-19 05:39:19 -08:00
Sam Lantinga
4d92d49a5f Added native Debian package information 2013-02-15 14:56:08 -08:00
Jørgen P. Tjernø
f85aeb98c7 Don't clobber refcounting in SDL_Init.
- Fixes bug 1712 by not overwriting SDL_SubsystemRefCount in SDL_Init.
       - Removes the SDL_initialized variable, and makes SDL_SubsystemRefCount
         the canonical source of truth for whether or not a subsystem has been
         initialized.
       - Refactors SDL_InitSubSystem and SDL_QuitSubSystem to use helper
         functions to manage refcount.
       - Adds automated tests for SDL_Init/Quit*.
       - Adds SDL_bits.h which contains SDL_MostSignificantBitIndex.
2013-02-12 11:47:31 -08:00
Sam Lantinga
175511b1a0 We don't have Visual CE support anymore 2013-01-13 14:31:53 -08:00
Sam Lantinga
34b88dfaae Added hotplug joystick support and simplified game controller API, courtesy of Alfred Reynolds 2012-11-26 16:37:54 -08:00
Sam Lantinga
2a4a81ad63 Include all the test headers in the test library header install 2012-11-26 14:59:07 -08:00
Sam Lantinga
59a04adfba Work in progress on an SDL test library 2012-11-26 07:53:56 -08:00
Sam Lantinga
a5012feba8 Needed to add SDL_messagebox.h to installed headers 2012-10-23 23:45:48 -07:00
Sam Lantinga
909cf0f0b4 Added SDL_system.h to the various projects 2012-06-23 06:46:06 -04:00
Sam Lantinga
5ef4144446 Removed the SDL 1.2 compatibility API... we'll see how painful this is. 2012-01-22 18:11:41 -05:00
Sam Lantinga
f84b2f8c6d Removed unsupported Watcom files 2012-01-22 17:41:33 -05:00
Sam Lantinga
136979d3b5 Removed unsupported Borland related files 2012-01-22 17:32:50 -05:00
Sam Lantinga
d71e0546a9 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2
--HG--
rename : sdl-config.in => sdl2-config.in
rename : sdl.m4 => sdl2.m4
rename : sdl.pc.in => sdl2.pc.in
2012-01-22 17:21:00 -05:00
Sam Lantinga
5546f5ad65 Switched back to configure generating SDL_config.h
It was very confusing to have configure generate an SDL_config.h and then not have it be used when building on Mac OS X or Windows.  I'll just have to remember to use SDL_config_windows.h when building official releases that are supposed to be ABI compatible with Visual Studio.

--HG--
rename : include/SDL_config_generated.h.in => include/SDL_config.h.in
2012-01-19 01:55:51 -05:00
Sam Lantinga
9033bb050f Make sure that we use consistent configuration options on platforms like Windows so that command line builds and IDE builds have ABI compatibility.
Make sure we don't clobber SDL_revision.h when building from Mercurial

--HG--
rename : include/SDL_config.h.in => include/SDL_config_generated.h.in
2012-01-14 13:21:19 -05:00
Sam Lantinga
b628aa46c5 Fixed bug 1366 - SDL_opengles2.h is not installed in "include/SDL" under Linux 2012-01-09 21:11:11 -05:00
Sam Lantinga
ec033a1da4 Updated iOS projects and renamed iPhoneOS to iOS
--HG--
rename : README.iphoneos => README.iOS
rename : Xcode-iPhoneOS/Demos/Default.png => Xcode-iOS/Demos/Default.png
rename : Xcode-iPhoneOS/Demos/DemosiPhoneOS.xcodeproj/project.pbxproj => Xcode-iOS/Demos/Demos.xcodeproj/project.pbxproj
rename : Xcode-iPhoneOS/Demos/Icon.png => Xcode-iOS/Demos/Icon.png
rename : Xcode-iPhoneOS/Demos/Info.plist => Xcode-iOS/Demos/Info.plist
rename : Xcode-iPhoneOS/Demos/README => Xcode-iOS/Demos/README
rename : Xcode-iPhoneOS/Demos/data/bitmapfont/kromasky_16x16.bmp => Xcode-iOS/Demos/data/bitmapfont/kromasky_16x16.bmp
rename : Xcode-iPhoneOS/Demos/data/bitmapfont/license.txt => Xcode-iOS/Demos/data/bitmapfont/license.txt
rename : Xcode-iPhoneOS/Demos/data/drums/ds_brush_snare.wav => Xcode-iOS/Demos/data/drums/ds_brush_snare.wav
rename : Xcode-iPhoneOS/Demos/data/drums/ds_china.wav => Xcode-iOS/Demos/data/drums/ds_china.wav
rename : Xcode-iPhoneOS/Demos/data/drums/ds_kick_big_amb.wav => Xcode-iOS/Demos/data/drums/ds_kick_big_amb.wav
rename : Xcode-iPhoneOS/Demos/data/drums/ds_loose_skin_mute.wav => Xcode-iOS/Demos/data/drums/ds_loose_skin_mute.wav
rename : Xcode-iPhoneOS/Demos/data/icon.bmp => Xcode-iOS/Demos/data/icon.bmp
rename : Xcode-iPhoneOS/Demos/data/ship.bmp => Xcode-iOS/Demos/data/ship.bmp
rename : Xcode-iPhoneOS/Demos/data/space.bmp => Xcode-iOS/Demos/data/space.bmp
rename : Xcode-iPhoneOS/Demos/data/stroke.bmp => Xcode-iOS/Demos/data/stroke.bmp
rename : Xcode-iPhoneOS/Demos/src/accelerometer.c => Xcode-iOS/Demos/src/accelerometer.c
rename : Xcode-iPhoneOS/Demos/src/common.c => Xcode-iOS/Demos/src/common.c
rename : Xcode-iPhoneOS/Demos/src/common.h => Xcode-iOS/Demos/src/common.h
rename : Xcode-iPhoneOS/Demos/src/fireworks.c => Xcode-iOS/Demos/src/fireworks.c
rename : Xcode-iPhoneOS/Demos/src/happy.c => Xcode-iOS/Demos/src/happy.c
rename : Xcode-iPhoneOS/Demos/src/keyboard.c => Xcode-iOS/Demos/src/keyboard.c
rename : Xcode-iPhoneOS/Demos/src/mixer.c => Xcode-iOS/Demos/src/mixer.c
rename : Xcode-iPhoneOS/Demos/src/rectangles.c => Xcode-iOS/Demos/src/rectangles.c
rename : Xcode-iPhoneOS/Demos/src/touch.c => Xcode-iOS/Demos/src/touch.c
rename : Xcode-iPhoneOS/SDL/SDLiPhoneOS.xcodeproj/project.pbxproj => Xcode-iOS/SDL/SDL.xcodeproj/project.pbxproj
rename : Xcode-iPhoneOS/SDL/testsdl-Info.plist => Xcode-iOS/SDL/testsdl-Info.plist
rename : Xcode-iPhoneOS/Template/SDL iOS Application/Default.png => Xcode-iOS/Template/SDL iOS Application/Default.png
rename : Xcode-iPhoneOS/Template/SDL iOS Application/Icon.png => Xcode-iOS/Template/SDL iOS Application/Icon.png
rename : Xcode-iPhoneOS/Template/SDL iOS Application/Info.plist => Xcode-iOS/Template/SDL iOS Application/Info.plist
rename : Xcode-iPhoneOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns => Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns
rename : Xcode-iPhoneOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist => Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist
rename : Xcode-iPhoneOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj => Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj
rename : Xcode-iPhoneOS/Template/SDL iOS Application/main.c => Xcode-iOS/Template/SDL iOS Application/main.c
rename : Xcode-iPhoneOS/Test/Info.plist => Xcode-iOS/Test/Info.plist
rename : Xcode-iPhoneOS/Test/README => Xcode-iOS/Test/README
rename : Xcode-iPhoneOS/Test/TestiPhoneOS.xcodeproj/project.pbxproj => Xcode-iOS/Test/TestiPhoneOS.xcodeproj/project.pbxproj
2012-01-05 21:41:55 -05:00
Sam Lantinga
6f505f9608 Make it possible to run "make dist" from a separate build directory. 2011-03-15 23:26:22 -07:00
Sam Lantinga
65af7584bf SDL 1.3 doesn't use nasm anymore. :) 2011-02-24 09:41:04 -08:00
Sam Lantinga
51b2e9f859 update-revision is still phony. :) 2011-02-18 11:23:25 -08:00
Sam Lantinga
e81d8928b6 Added a better way to include build rules in the Makefile
Cleaned up dependencies on generating SDL_revision.h
Fixed 'make install' if you are not building from a Mercurial repository
2011-02-18 11:19:34 -08:00
Sam Lantinga
0f3966f2b0 Don't remove the pseudo-generated headers because this command might be run from the repo directory and it confuses people, especially if they have no way of regenerating SDL_revision.h :) 2011-02-17 18:55:56 -08:00
Sam Lantinga
5ab489f570 Fixed make install 2011-02-17 18:54:11 -08:00
Sam Lantinga
dc23c42ea9 The library target directly depends on SDL_revision.h 2011-02-16 14:38:49 -08:00
Sam Lantinga
7755315b2d Fixed SDL_revision.h dependencies 2011-02-16 13:02:37 -08:00