Mercurial > sdl-ios-xcode
diff Xcode/SDL/pkg-support/resources/ReadMe.txt @ 3303:9e9a2476f704
Updated Xcode project from Eric Wing
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Thu, 24 Sep 2009 07:13:02 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Xcode/SDL/pkg-support/resources/ReadMe.txt Thu Sep 24 07:13:02 2009 +0000 @@ -0,0 +1,171 @@ +The Simple DirectMedia Layer (SDL for short) is a cross-platform +library designed to make it easy to write multi-media software, +such as games and emulators. + +The Simple DirectMedia Layer library source code is available from: +http://www.libsdl.org/ + +This library is distributed under the terms of the GNU LGPL license: +http://www.gnu.org/copyleft/lesser.html + + +This packages contains the SDL.framework for OS X. +Conforming with Apple guidelines, this framework +contains both the SDL runtime component and development header files. + + +To Install: +Copy the SDL.framework to /Library/Frameworks + +You may alternatively install it in <Your home directory>/Library/Frameworks +if your access privileges are not high enough. +(Be aware that the Xcode templates we provide in the SDL Developer Extras +package may require some adjustment for your system if you do this.) + + +Known Issues: +??? + + +Additional References: + + - Screencast tutorials for getting started with OpenSceneGraph/Mac OS X are + available at: + http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/MacOSXTips + Though these are OpenSceneGraph centric, the same exact concepts apply to + SDL, thus the videos are recommended for everybody getting started with + developing on Mac OS X. (You can skim over the PlugIns stuff since SDL + doesn't have any PlugIns to worry about.) + + + +(Partial) History of PB/Xcode projects: +2009-09-21 - Added 64-bit for Snow Leopard. 10.4 is the new minimum requirement. + Removed 'no X11' targets as + new codebase will assume you have them. Also removed specific #defines + for X11, but needed to add search path to /usr/X11R6/include + +2007-12-31 - Enabled strip -x in the Xcode settings and removed it + from the Build DMG script. + Added a per-arch setting for the Deployment targets for OTHER_LDFLAGS_ppc + to re-enable prebinding. + Need to remember to copy these changes to the SDL satellite projects. + +2007-12-30 - Updated documentation to reflect new installation paths for + Xcode project templates under Leopard (Xcode 2.5/3.0). + +????-??-?? - Added extra targets for building formal releases against the + 10.2 SDK so we don't have to keep modifying the settings. + +????-??-?? - Added fancy DMG (background logo) support with automation. + +2006-05-09 - Added shell script phase to deal with new SDL_config.h + behavior. Encountered what seems to be an Xcode bug with + multiple files of the same name, even when conditional compiling + is controlled by custom #defines (SDL_sysloadso.c). Multiple or + undefined symbols are the result of this. + Recommended that macosx/SDL_sysloadso.c be modified to directly + include the dlopen version of the file via #ifdef's so only + one version needs to exist. Filed a formal bug report with Apple + about this (4542369). + +2006-03-22 - gcc 4 visibility features have been added to the code base so I + enabled the switch in Xcode to take advantage of it. Be aware that only + our x86 builds will be exposed to this feature as we still build ppc + with gcc 3.3. + + Christian Walther has sent me some great feedback on things that are + broken, so I have made some of these fixes. Among the issues are + compatibility and current library versions are not set to 1 (breaks + backwards compatibility), documentation errors, resource copying + location problems for the SDLTest apps, missing HAVE_OPENGL and + OpenGL.framework linking in testgl. + (Eric Wing) + +2006-03-17 - Because the X11 headers are not installed by default with Xcode, + we decided to offer two variants of the same targets (one with X11 stuff + and one without). By default, since the X11 stuff does not necessarily + conflict with the native stuff, we build the libraries with the X11 stuff + so advanced developers can access it by default. However, in the case + that a developer did not install X11 (or just doesn't want the extra bloat), + the user may directly select those targets and build those instead. + + Once again, we are attempting to remove the exported symbols file. If + I recall correctly, the clashing symbol problems we got were related + to the CD-ROM code which was formerly in C++. Now that the C++ code + has been purged, we are speculating that we might be able to remove + the exports file safely. The long term solution is to utilize gcc 4's + visibility features. + + For the developer extras package, I changed the package format + from a .pkg based installer to a .dmg to avoid requiring + administrator/root to access contents, for better + transparency, and to allow users to more easily control which components + they actually want to install. + I also made changes and updates to the PB/Xcode project templates (see Developer ReadMe). + (Eric Wing) + +2006-03-07 - The entire code base has been reorganized and platform specific + defines have been pushed into header files (SDL_config_*.h). This means + that defines that previously had to be defined in the Xcode projects can + be removed (which I have started doing). Furthermore, it appears that the + MMX/SSE code has been rewritten and refactored so it now compiles without + nasm and without making us do strange things to support OS X. However, this + Xcode project still employs architecture specific build options in order to + achieve the mandated 10.2 compatibility. As a result of the code base changes, + there are new public headers. But also as a result of these changes, there are + also new headers that qualify as "PrivateHeaders". Private Headers are headers + that must be exported because a public header includes them, but users shouldn't + directly invoke these. SDL_config_macosx.h and SDL_config_dreamcast.h are + examples of this. We have considered marking these headers as Private, but it + requires that the public headers invoke them via framework conventions, i.e. + #include <FrameworkName/Header.h> + e.g. + #include <SDL/SDL_config_macosx.h> + and not + #include "SDL_config_macosx.h" + However this imposes the restriction that non-framework distributions must + place their headers in a directory called SDL/ (and not SDL11/ like FreeBSD). + Currently, I do not believe this would pose a problem for any of the current + distributions (Fink, DarwinPorts). Or alternatively, users could be + expected/forced to also include the header path: + -I/Library/Frameworks/SDL.framework/PrivateHeaders, + but most people would probably not read the documentation on this. + But currently, we have decided to be conservative and have opted not to + use the PrivateHeaders feature. + (Eric Wing) + +2006-01-31 - Updates to build Universal Binaries while retaining 10.2 compatibility. + We were unable to get MMX/SSE support enabled. It is believed that a rewrite of + the assembly code will be necessary to make it position independent and not + require nasm. Altivec has finally been enabled for PPC. (Eric Wing) + +2005-09-?? - Had to add back the exports file because it was causing build problems + for some cases. (Eric Wing) + +2005-08-21 - First entry in history. Updated for SDL 1.2.9 and Xcode 2.1. Getting + ready for Universal Binaries. Removed the .pkg system for .dmg for due to problems + with broken packages in the past several SDL point releases. Removed usage of SDL + exports file because it has become another point of failure. Introduced new documentation + about SDLMain and how to compile in an devel-lite section of the SDL.dmg. (Eric Wing) + +Before history: +SDL 1.2.6? to 1.2.8 +Started updating Project Builder projects to Xcode for Panther and Tiger. Also removed +the system that split the single framework into separate runtime and headers frameworks. +This is against Apple conventions and causes problems on multiuser systems. +We now distribute a single framework. +The .pkg system has repeatedly been broken with every new release of OS X. +With 1.2.8, started migrating stuff to .dmg based system to simplify distribution process. +Tried updating the exports file and Perl script generation system for changing syntax. (Eric Wing) + +Pre-SDL 1.2.6 +Created Project Builder projects for SDL and .pkg based distribution system. (Darrell Walisser) + + + + + + + +