diff options
author | joq <joq@0c269be4-1314-0410-8aa9-9f06e86f4224> | 2004-03-28 05:48:52 +0000 |
---|---|---|
committer | joq <joq@0c269be4-1314-0410-8aa9-9f06e86f4224> | 2004-03-28 05:48:52 +0000 |
commit | ad4336824950f4b202edfe4de847794e211a9351 (patch) | |
tree | c8134b3bde24e6e2ba8f462d5a9a81b7513032f1 /doc | |
parent | 1c01d082e11f919028bbbc15f0ddad1b34a2cc3f (diff) | |
download | jack1-ad4336824950f4b202edfe4de847794e211a9351.tar.gz |
porting guide updates
git-svn-id: svn+ssh://jackaudio.org/trunk/jack@678 0c269be4-1314-0410-8aa9-9f06e86f4224
Diffstat (limited to 'doc')
-rw-r--r-- | doc/porting.dox | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/doc/porting.dox b/doc/porting.dox index 8dfc8c8..27318b3 100644 --- a/doc/porting.dox +++ b/doc/porting.dox @@ -49,7 +49,7 @@ directories were adapted from the @c libstdc++-v3 component of the GNU Compiler Collective, <http://gcc.gnu.org>. -@section portopsys Operating System Dependencies +@section portlang C Language Dependencies JACK is written to conform with C99, as defined in International Standard ISO/IEC 9899:1999. Because many existing compilers do not @@ -58,13 +58,22 @@ portablility reasons. For example, variables should not be declared in the middle of a compound statement, because many compilers still cannot handle that language extension. -Some needed POSIX features may be missing on certain platforms. If -so, the preferred solution is to provide a substitute, like the @c -fakepoll.c implementation for Mac OS X. + +@section portopsys Operating System Dependencies + +JACK is written for a POSIX environment compliant with IEEE Std +1003.1-2001, ISO/IEC 9945:2003, including the POSIX Threads Extension +(1003.1c-1995) and the Realtime and Realtime Threads feature groups. +When some needed POSIX feature is missing on a platform, the preferred +solution is to provide a substitute, as with the @c fakepoll.c +implementation for Mac OS X. Whenever possible, OS dependencies should be auto-detected by @c configure. Sometimes they can be isolated in OS-specific header -files. If conditional compilation must be used in mainline +files, found in subdirectories of @c config/os and referenced with a +@c <sysdeps/xxx.h> name. + +If conditional compilation must be used in mainline platform-independent code, avoid using the system name. Instead, @c #define a descriptive name in @c <config.h>, and test it like this: @@ -76,8 +85,8 @@ platform-independent code, avoid using the system name. Instead, @c @endcode Be sure to place any generic implementation alternative in the @c -#else or use an @c #ifndef, so other OS ports are not required to know -your platform's conditional labels. +#else or use an @c #ifndef, so no other code needs to know your +conditional labels. @section portcpu Processor Dependencies |