mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 00:11:26 +00:00
Some small info on compatibility added
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@7454 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
a1ee0df583
commit
32fa5ad3e8
2 changed files with 131 additions and 5 deletions
|
@ -14,9 +14,73 @@
|
|||
<chapter>
|
||||
<heading>Base</heading>
|
||||
<p>
|
||||
The GNUstep base library is a free software package compatible with
|
||||
the OpenStep Foundation Kit (tm).
|
||||
The GNUstep base library is a free software package implementing
|
||||
the API of the OpenStep Foundation Kit (tm), including later
|
||||
additions.
|
||||
</p>
|
||||
<section>
|
||||
<heading>Compatibility</heading>
|
||||
<p>
|
||||
GNUstep is generally compatible with the OpenStep specification and
|
||||
with recent developments of the MacOS (cocoa) API. Where MacOS
|
||||
deviates from the OpenStep API, GNUstep generally attempts to
|
||||
support both versions. In some cases the newer MacOS APIs are
|
||||
incompatible with OpenStep, and GNUstep usually supports the richer
|
||||
version.
|
||||
</p>
|
||||
<p>
|
||||
In order to deal with compatiblity issues, GNUstep uses two
|
||||
mechanisms - it provides conditionally compiled sections of
|
||||
the library header files, so that software can be built that
|
||||
will conform strictly to a particular API, and it provides
|
||||
user default settings to control the behavior of the library
|
||||
at runtime.
|
||||
</p>
|
||||
<subsect>
|
||||
<heading>Conditional compilation</heading>
|
||||
<p>
|
||||
Adding an option to a makefile to define one of the following
|
||||
preprocessor constants will modify the API visible to software
|
||||
being compiled -
|
||||
</p>
|
||||
<deflist>
|
||||
<term>NO_GNUSTEP</term>
|
||||
<desc>
|
||||
GNUstep specific extensions to the OpenStep and MacOS cocoa
|
||||
APIs are excluded from the headers.
|
||||
</desc>
|
||||
<term>STRICT_MACOS_X</term>
|
||||
<desc>
|
||||
Only methods and classes that are part of the MacOS cocoa
|
||||
API are made available in the headers.
|
||||
</desc>
|
||||
<term>STRICT_OPENSTEP</term>
|
||||
<desc>
|
||||
Only methods and classes that are part of the OpenStep
|
||||
specification are made available in the headers.
|
||||
</desc>
|
||||
</deflist>
|
||||
</subsect>
|
||||
<subsect>
|
||||
<heading>User defaults</heading>
|
||||
<p>
|
||||
Setting the user default <code>GSMacOSXCompatible</code> to
|
||||
<code>YES</code> will cause MacOS compatible behavior to be
|
||||
the default at runtime. This default may however be overridden
|
||||
to provide more fine grained control of system behavior.
|
||||
</p>
|
||||
<deflist>
|
||||
<term>GSMacOSXCompatibleGeometry</term>
|
||||
<desc>
|
||||
Specifies whether the functions for producing strings describing
|
||||
geometrical structures (NSStringFromPoint(), NSStringFromSize(),
|
||||
and NSStringFromRect()) should produce strings conforming to the
|
||||
OpenStep specification or to MacOS-X behavior. The functions
|
||||
for parsing those strings should cope with both cases anyway.
|
||||
</desc>
|
||||
</deflist>
|
||||
</subsect>
|
||||
</section>
|
||||
<section>
|
||||
<heading>The classes</heading>
|
||||
<list>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue