Getting ready for a new Xcode project from Eric Wing
--HG-- extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%403892
This commit is contained in:
parent
8c7dddc113
commit
4fc2b759c2
146 changed files with 0 additions and 29526 deletions
|
@ -1,139 +0,0 @@
|
|||
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:
|
||||
???
|
||||
|
||||
(Partial) History of PB/Xcode projects:
|
||||
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 is an example 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)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue