Mercurial > sdl-ios-xcode
comparison Xcode/SDL/pkg-support/resources/ReadMe.txt @ 2207:d63e9f5944ae
Unpacked project archives to get individual file history in subversion
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sat, 21 Jul 2007 17:09:01 +0000 |
parents | |
children | e8f63b28947d |
comparison
equal
deleted
inserted
replaced
2206:ca7d2227d630 | 2207:d63e9f5944ae |
---|---|
1 The Simple DirectMedia Layer (SDL for short) is a cross-platform | |
2 library designed to make it easy to write multi-media software, | |
3 such as games and emulators. | |
4 | |
5 The Simple DirectMedia Layer library source code is available from: | |
6 http://www.libsdl.org/ | |
7 | |
8 This library is distributed under the terms of the GNU LGPL license: | |
9 http://www.gnu.org/copyleft/lesser.html | |
10 | |
11 | |
12 This packages contains the SDL.framework for OS X. | |
13 Conforming with Apple guidelines, this framework | |
14 contains both the SDL runtime component and development header files. | |
15 | |
16 | |
17 To Install: | |
18 Copy the SDL.framework to /Library/Frameworks | |
19 | |
20 You may alternatively install it in <Your home directory>/Library/Frameworks | |
21 if your access privileges are not high enough. | |
22 (Be aware that the Xcode templates we provide in the SDL Developer Extras | |
23 package may require some adjustment for your system if you do this.) | |
24 | |
25 | |
26 Known Issues: | |
27 ??? | |
28 | |
29 (Partial) History of PB/Xcode projects: | |
30 2006-05-09 - Added shell script phase to deal with new SDL_config.h | |
31 behavior. Encountered what seems to be an Xcode bug with | |
32 multiple files of the same name, even when conditional compiling | |
33 is controlled by custom #defines (SDL_sysloadso.c). Multiple or | |
34 undefined symbols are the result of this. | |
35 Recommended that macosx/SDL_sysloadso.c be modified to directly | |
36 include the dlopen version of the file via #ifdef's so only | |
37 one version needs to exist. Filed a formal bug report with Apple | |
38 about this (4542369). | |
39 | |
40 2006-03-22 - gcc 4 visibility features have been added to the code base so I | |
41 enabled the switch in Xcode to take advantage of it. Be aware that only | |
42 our x86 builds will be exposed to this feature as we still build ppc | |
43 with gcc 3.3. | |
44 | |
45 Christian Walther has sent me some great feedback on things that are | |
46 broken, so I have made some of these fixes. Among the issues are | |
47 compatibility and current library versions are not set to 1 (breaks | |
48 backwards compatibility), documentation errors, resource copying | |
49 location problems for the SDLTest apps, missing HAVE_OPENGL and | |
50 OpenGL.framework linking in testgl. | |
51 (Eric Wing) | |
52 | |
53 2006-03-17 - Because the X11 headers are not installed by default with Xcode, | |
54 we decided to offer two variants of the same targets (one with X11 stuff | |
55 and one without). By default, since the X11 stuff does not necessarily | |
56 conflict with the native stuff, we build the libraries with the X11 stuff | |
57 so advanced developers can access it by default. However, in the case | |
58 that a developer did not install X11 (or just doesn't want the extra bloat), | |
59 the user may directly select those targets and build those instead. | |
60 | |
61 Once again, we are attempting to remove the exported symbols file. If | |
62 I recall correctly, the clashing symbol problems we got were related | |
63 to the CD-ROM code which was formerly in C++. Now that the C++ code | |
64 has been purged, we are speculating that we might be able to remove | |
65 the exports file safely. The long term solution is to utilize gcc 4's | |
66 visibility features. | |
67 | |
68 For the developer extras package, I changed the package format | |
69 from a .pkg based installer to a .dmg to avoid requiring | |
70 administrator/root to access contents, for better | |
71 transparency, and to allow users to more easily control which components | |
72 they actually want to install. | |
73 I also made changes and updates to the PB/Xcode project templates (see Developer ReadMe). | |
74 (Eric Wing) | |
75 | |
76 2006-03-07 - The entire code base has been reorganized and platform specific | |
77 defines have been pushed into header files (SDL_config_*.h). This means | |
78 that defines that previously had to be defined in the Xcode projects can | |
79 be removed (which I have started doing). Furthermore, it appears that the | |
80 MMX/SSE code has been rewritten and refactored so it now compiles without | |
81 nasm and without making us do strange things to support OS X. However, this | |
82 Xcode project still employs architecture specific build options in order to | |
83 achieve the mandated 10.2 compatibility. As a result of the code base changes, | |
84 there are new public headers. But also as a result of these changes, there are | |
85 also new headers that qualify as "PrivateHeaders". Private Headers are headers | |
86 that must be exported because a public header includes them, but users shouldn't | |
87 directly invoke these. SDL_config_macosx.h and SDL_config_dreamcast.h are | |
88 examples of this. We have considered marking these headers as Private, but it | |
89 requires that the public headers invoke them via framework conventions, i.e. | |
90 #include <FrameworkName/Header.h> | |
91 e.g. | |
92 #include <SDL/SDL_config_macosx.h> | |
93 and not | |
94 #include "SDL_config_macosx.h" | |
95 However this imposes the restriction that non-framework distributions must | |
96 place their headers in a directory called SDL/ (and not SDL11/ like FreeBSD). | |
97 Currently, I do not believe this would pose a problem for any of the current | |
98 distributions (Fink, DarwinPorts). Or alternatively, users could be | |
99 expected/forced to also include the header path: | |
100 -I/Library/Frameworks/SDL.framework/PrivateHeaders, | |
101 but most people would probably not read the documentation on this. | |
102 But currently, we have decided to be conservative and have opted not to | |
103 use the PrivateHeaders feature. | |
104 (Eric Wing) | |
105 | |
106 2006-01-31 - Updates to build Universal Binaries while retaining 10.2 compatibility. | |
107 We were unable to get MMX/SSE support enabled. It is believed that a rewrite of | |
108 the assembly code will be necessary to make it position independent and not | |
109 require nasm. Altivec has finally been enabled for PPC. (Eric Wing) | |
110 | |
111 2005-09-?? - Had to add back the exports file because it was causing build problems | |
112 for some cases. (Eric Wing) | |
113 | |
114 2005-08-21 - First entry in history. Updated for SDL 1.2.9 and Xcode 2.1. Getting | |
115 ready for Universal Binaries. Removed the .pkg system for .dmg for due to problems | |
116 with broken packages in the past several SDL point releases. Removed usage of SDL | |
117 exports file because it has become another point of failure. Introduced new documentation | |
118 about SDLMain and how to compile in an devel-lite section of the SDL.dmg. (Eric Wing) | |
119 | |
120 Before history: | |
121 SDL 1.2.6? to 1.2.8 | |
122 Started updating Project Builder projects to Xcode for Panther and Tiger. Also removed | |
123 the system that split the single framework into separate runtime and headers frameworks. | |
124 This is against Apple conventions and causes problems on multiuser systems. | |
125 We now distribute a single framework. | |
126 The .pkg system has repeatedly been broken with every new release of OS X. | |
127 With 1.2.8, started migrating stuff to .dmg based system to simplify distribution process. | |
128 Tried updating the exports file and Perl script generation system for changing syntax. (Eric Wing) | |
129 | |
130 Pre-SDL 1.2.6 | |
131 Created Project Builder projects for SDL and .pkg based distribution system. (Darrell Walisser) | |
132 | |
133 | |
134 | |
135 | |
136 | |
137 | |
138 | |
139 |