mirror of
https://github.com/yawut/SDL.git
synced 2026-06-12 19:51:40 -05:00
SDL2 for the Nintendo Wii U (build with "cmake [SDL source path] -DCMAKE_TOOLCHAIN_FILE=$WUT_ROOT/share/wut.toolchain.cmake -DCMAKE_INSTALL_PREFIX=$DEVKITPRO/portlibs/wiiu")
From: Christian Walther <cwalther@gmx.ch>
Date: Wed, 28 Dec 2005 12:13:20 +0100
Subject: [SDL] Fix for opening documents on Mac OS X < 10.4
The current code in SDLMain.m that transforms documents opened from the
Finder into command-line arguments (introduced in revision 1.14,
2005-08-11) uses the methods -[NSString lengthOfBytesUsingEncoding:] and
-[NSString getCString:maxLength:encoding:], which are only available in
Mac OS X 10.4.
Compiling this code on 10.3 produces warnings, and running it (i.e.
starting an SDL application by opening a document) leads to weird
behavior which I didn't investigate in detail ("*** -[NSCFString
lengthOfBytesUsingEncoding:]: selector not recognized" is printed to the
console log, and the SDL window never opens).
The attached patch removes the offending calls and uses -[NSString
UTF8String] instead, which is available everywhere. Tested on 10.3.9,
and I see no reason why it shouldn't also work on 10.2 and 10.4.
Two further comments:
* The comment above the -[SDLMain application: openFile:] implementation
says "You need to have a CFBundleDocumentsType section in your
Info.plist to get this message, apparently." This is not the case in my
experience - it worked just fine with a hand-built bare-bones
application consisting only of Test.app/Contents/MacOS/test, without any
Info.plist (although you have to press the option and command keys for
such an application to accept a dragged file).
* I took the liberty of cleaning up another area of SDLMain.m: I changed
"CustomApplicationMain (argc, argv)" to "CustomApplicationMain (int
argc, char **argv)". This avoids the "type of `argv' defaults to `int'"
warnings, and I'm not sure if leaving out the types could cause problems
on platforms where an int and a char** aren't of the same size.
-Christian
|
||
|---|---|---|
| docs | ||
| include | ||
| src | ||
| test | ||
| .cvsignore | ||
| acinclude.m4 | ||
| autogen.sh | ||
| Borland.html | ||
| Borland.zip | ||
| BUGS | ||
| config.guess | ||
| config.sub | ||
| configure.in | ||
| COPYING | ||
| CREDITS | ||
| CWprojects.sea.bin | ||
| docs.html | ||
| EpocBuildFiles.zip | ||
| INSTALL | ||
| ltmain.sh | ||
| Makefile.am | ||
| Makefile.dc | ||
| MPWmake.sea.bin | ||
| PBProjects.tar.gz | ||
| README | ||
| README-SDL.txt | ||
| README.AmigaOS | ||
| README.CVS | ||
| README.DC | ||
| README.Epoc | ||
| README.MacOS | ||
| README.MacOSX | ||
| README.MiNT | ||
| README.NanoX | ||
| README.OS2 | ||
| README.PicoGUI | ||
| README.QNX | ||
| README.Qtopia | ||
| README.RISCOS | ||
| README.WinCE | ||
| README.wscons | ||
| sdl-config.in | ||
| sdl.m4 | ||
| SDL.qpg.in | ||
| SDL.spec.in | ||
| setvars.cmd | ||
| strip_fPIC.sh | ||
| TODO | ||
| VisualC.html | ||
| VisualC.zip | ||
| VisualCE.zip | ||
| Watcom.mif | ||
| WhatsNew | ||
Simple DirectMedia Layer
(SDL)
Version 1.2
---
http://www.libsdl.org/
This is the Simple DirectMedia Layer, a general API that provides low
level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL,
and 2D framebuffer across multiple platforms.
SDL is written in C, but works with C++ natively, and has bindings to
several other languages, including Ada, C#, Eiffel, Java, Lua, ML,
Objective C, Perl, PHP, Pike, Python, and Ruby.
The current version supports Linux, Windows, BeOS, MacOS, MacOS X,
FreeBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. The code contains
support for Windows CE, AmigaOS, Dreamcast, Atari, NetBSD, AIX, OSF/Tru64,
RISC OS, and SymbianOS, but these are not officially supported.
This library is distributed under GNU LGPL version 2, which can be
found in the file "COPYING". This license allows you to use SDL
freely in commercial programs as long as you link with the dynamic
library.
The best way to learn how to use SDL is to check out the header files in
the "include" subdirectory and the programs in the "test" subdirectory.
The header files and test programs are well commented and always up to date.
More documentation is available in HTML format in "./docs/index.html"
The test programs in the "test" subdirectory are in the public domain.
Frequently asked questions are answered online:
http://www.libsdl.org/faq.php
If you need help with the library, or just want to discuss SDL related
issues, you can join the developers mailing list:
http://www.libsdl.org/mailing-list.php
Enjoy!
Sam Lantinga (slouken@libsdl.org)