Commit Graph

38 Commits

Author SHA1 Message Date
Sam Lantinga
00c170b156 Fixed bug 1547 - Fix test(1) utilization within the autoconf script
Brad Smith 2012-07-19 11:39:09 PDT

I noticed this error from the OpenBSD/amd64 buildbot log..

../configure[15018]: test: -O2: unexpected operator/operand

The attached patch fixes the issue.
2012-07-20 12:57:25 -07:00
Sam Lantinga
93e7644d3a Fixed bug 1543 - Fix dynamic loading of X libs on OpenBSD
Brad Smith 2012-07-18 13:43:34 PDT
autoconf patch to fix X dynamic loading of libraries on OpenBSD
2012-07-18 13:57:39 -07:00
Sam Lantinga
1f417073ca Updated the generic event check to try to compile instead of just look for library runtime function (fixes compiling on older Mac OS X SDKs) 2012-07-18 10:47:41 -07:00
Gabriel Jacobo
729fdcda8a Fixes #1524, improved xinput2 test 2012-06-21 14:01:47 -03:00
Sam Lantinga
ad08babefc Added command-line cross-compile support for iOS - Gabriel Jacobo will be adding iosbuild.sh and documentation for the process. 2012-06-19 12:29:53 -04:00
Gabriel Jacobo
e619df7521 Actually functional, hopefully!, Xext test 2012-06-03 17:34:18 -03:00
Sam Lantinga
b5c76adf75 Better test for Xext headers 2012-06-01 20:06:48 -04:00
Gabriel Jacobo
9b129179a4 Fix test for Xext headers (bug 1498), now it should fail properly in systems with the old headers. 2012-06-01 19:42:15 -03:00
Sam Lantinga
3aa88a6405 Updated with new configure.in changes 2012-05-31 09:06:47 -04:00
Sam Lantinga
94597260b7 Fixed compile error with both new and old Xext headers (bug 1498) 2012-05-30 11:44:57 -04:00
Sam Lantinga
de72384754 Fixed bug 1429 - Compiling static library with -arch fails when linking showimage
We no longer need this ancient hack and it's causing problems when building shared libraries against SDL.
2012-02-28 21:58:36 -05:00
Sam Lantinga
c484f884c5 Updated to SDL 2.0, and SDL 2.0 can now be installed coexisting with SDL 1.2 2012-01-22 17:21:00 -05:00
Sam Lantinga
9853ab62c8 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.
2012-01-19 01:55:51 -05:00
Sam Lantinga
243a72784f Check for sem_timedwait(), which isn't available on some systems (including OpenBSD 2012-01-15 03:34:14 -05:00
Sam Lantinga
d4c4a98f59 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
2012-01-14 13:21:19 -05:00
Sam Lantinga
07f8710f47 Fixed bug 1242 - PATCH: Improve support for OpenGL ES under X11
Scott Percival 2011-07-03 06:41:51 PDT

This submission is aimed at making life easier for OpenGL ES capable devices
running a X11 stack (e.g. Maemo, Meego, TrimSlice, other ARM SoC boards not
running Android). SDL's Pandora support already has the neccesary GLES-to-X11
glue code, however it's all ghetto'd off in Makefile.pandora and not very
flexible.

The patch:
- adds an awesome --enable-video-opengles option to configure
- re-modifies the opengles and opengles2 SDL_renderers to use function pointers
- no idea why this was removed?
- for SDL_Renderers, links in libGLESv1_CM, libGLES_CM (for PowerVR fans) or
libGLESv2 at runtime
- links in libEGL.so at runtime - the old code made an assumption that
eglFunctions could be pulled from the active GLES library, PowerVR for one
doesn't let you do that with their libGLESv2
- allows you to pick which of GLES v1 or v2 to load via
SDL_GL_CONTEXT_MAJOR_VERSION

So far I've tested this on a Nokia N900 (OMAP 3430/SGX 530 running Maemo 5) and
a Toshiba AC100 (Tegra 2 running Ubuntu 10.10). I haven't tested it on... well,
everything that isn't those two, such as a Pandora, iOS or Android device. The
Pandora specific code should be kept intact (fingers crossed), and nothing
painfully drastic has been added to the SDL_renderers. The library loading
sequence in SDL_x11opengles has been updated to accomodate both NVIDIA's
propensity to let developers get away with murder and PowerVR's alternative of
punishing every missed step.

The test apps work okay with GLES or GLES2 as the renderer. For some reason
alpha blending doesn't seem to work on the Tegra 2; last week NVIDIA pushed out
a new set of X11 GLES drivers, so I'll try and investigate once I upgrade
those. Also, this patch adds things to configure.in, include/SDL_config.h.in
and test/configure.in. I didn't know what the policy was re. committing
generated spaghetti from autotools, so ./autogen.sh has to be run again. Sorry.

I think that's about everything, let me know if there's anything I've
overlooked.
2012-01-08 02:23:37 -05:00
Sam Lantinga
2da6fd7637 Fixes bug 1296 - SDL_SetVideoMode crashes because of unaligned MOVAPS instruction
t.grundner@goto3d.de 2011-09-01 03:59:17 PDT
I figured out what is going on. GCC 4.5.2 assumes the stack is 16 byte aligned
by default. Therefore there are no AND alignment corrections necessary if we
wish to align a stack variable to a 16 byte boundary. That is bad if your OS
ABI is not 16 byte aligned. Windows 32 bit stacks are 4 byte aligned. This
results in the above mentioned SIGSEGV. This is also no problem if I compile
both SDL.dll and my app with MingW because MinGW/GCC inserts a

        andl    $-16, %esp

instruction right in the beginning of the main function. So at least the stack
of the thread calling the main function is 16 byte aligned. But as soon as I
start to use the SDL.dll from an application not compiled by MinGW there is no
ANDL safing my app.

However there is a GCC option that can change the default stack alignment:

        -mpreferred-stack-boundary=num

Setting num=2 assumes a the stack is aligned to a 4 byte boundary. This results
in GCC inserting the necessary

        andl    $-16, %esp

into SDL_FillRect. Rebuilding SDL with

       ./configure "CFLAGS=-mpreferred-stack-boundary=2 -g -O3"

solved the problem.

IMHO this should also be a problem on Solaris.

The following links contain further information:

http://gcc.gnu.org/onlinedocs/gcc-4.5.2/gcc/i386-and-x86_002d64-Options.html#i386-and-x86_002d64-Options

http://www.agner.org/optimize/calling_conventions.pdf
2011-12-29 05:36:39 -05:00
Ryan C. Gordon
abe9021987 Backed out most of changeset 4b88086910d3, at Andreas's request. 2011-12-05 12:43:50 -05:00
Andreas Schiffler
5e0fdc8f9e Fix buildbot sdl-macosx-unix-x86 and sdl-macosx-amd64 compiler warnings 2011-12-05 07:41:20 -08:00
Sam Lantinga
359b89cc7e Fixed the aux directory to be the one recognized by automake.
This isn't strictly needed by SDL, but it's a good example for other projects.
2011-11-17 00:43:44 -05:00
Sam Lantinga
5c394a276d Updated from configure.in 2011-10-19 20:23:40 -04:00
Ryan C. Gordon
6de89cdd37 Fixed Win64 builds with MingW. 2011-09-11 03:35:46 -04:00
Ryan C. Gordon
82df1959c1 Removed legacy Mac OS X dlcompat code.
It was only needed for Mac OS X 10.0 through 10.2, so it seems silly to keep
 it around for SDL 1.3.

I'll leave it in the 1.2 branch for now, though.
2011-09-09 00:34:48 -04:00
Sam Lantinga
66cc708ba8 Updated configure for new changes in configure.in 2011-08-06 01:21:24 -04:00
Ryan C. Gordon
3d2fdaaef7 More patches to compile. 2011-08-05 00:49:31 -04:00
Sam Lantinga
f0c424685b SDL 1.3 requires a 64-bit type for the platform. 2011-03-25 13:47:49 -07:00
Sam Lantinga
6d4951e49a If we leave the default SDL_config.h in place, it'll override the one generated by configure when building from a different directory. Argh... 2011-03-12 13:28:56 -08:00
Sam Lantinga
5ebfb62e3e We don't want to remove SDL_config.h since it's in source control now. 2011-03-11 14:24:35 -08:00
Sam Lantinga
185e00b416 Updated configure with newer autoconf 2011-03-11 14:15:25 -08:00
Sam Lantinga
d58ee21159 Added support for the Xcursor library for color cursors 2011-03-11 13:56:53 -08:00
Sam Lantinga
923def6446 The msimg library isn't needed anymore. 2011-03-07 22:03:29 -08:00
Sam Lantinga
d32d1ee244 OSF isn't supported anymore. 2011-02-28 09:09:13 -08:00
Sam Lantinga
9f410819dc IRIX is not supported anymore. :) 2011-02-28 09:06:29 -08:00
Sam Lantinga
f7600494ed Dynamically load the Xinerama and xf86vmode extensions
This fixes a few bugs with different distributions:
http://bugs.freedesktop.org/show_bug.cgi?id=17431
http://bugs.gentoo.org/show_bug.cgi?id=246177
2011-02-28 09:01:53 -08:00
Sam Lantinga
7fa84f6a78 Re-added the 3DNow! and AltiVec instruction support. 2011-02-22 21:44:36 -08:00
Sam Lantinga
6ec7646870 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
03aaebb738 Updated to remove stdio redirect option 2011-02-16 14:35:38 -08:00
Sam Lantinga
307a90d292 Made it possible to build SDL from a fresh checkout without any additional steps.
The trick is that if you're using configure and you don't want to have SDL_config.h and SDL_revision.h to show up as modified, you need to configure and build from a separate directory.

You also need to include SDL_revision.h directly if you want to use the SDL_REVISION constant, as a side effect of these changes.
2011-02-16 02:37:09 -08:00