/* Copyright © 1995-2001, The AROS Development Team. All rights reserved. $Id: options.h 12754 2001-12-08 21:23:51Z chodorowski $ */ #ifndef AROS_OPTIONS_H #define AROS_OPTIONS_H /****************************************************************************** FILE $Id: options.h 12754 2001-12-08 21:23:51Z chodorowski $ DESCRIPTION This files defines a couple of options which change the way the OS is compiled. ******************************************************************************/ /* Should the system compile a working SetFunction()-call? If you enable this, "real" shared libraries (with LVOs and the like) will be generated and all Functions will be called via LVOs. If you disable this, all functions will be called somewhat more directly. To enable the option, change the 0 to 1. */ #ifndef EnableSetFunction # define EnableSetFunction 0 #endif #if EnableSetFunction # define UseLVOs 1 #endif /* Should the OS use registerized arguments or pass the arguments on stack? */ #ifndef UseRegisterArgs # define UseRegisterArgs 0 #endif /* Should the OS be compiled with macros that call the actual function and with the library base as first parameter or should the library base be a global variable (shared by all functions). */ #ifndef LibBaseShouldBeAParameter # define LibBaseShouldBeAParameter 0 #endif /* Should the OS be compiled with LVO tables or should the functions be called directly? Note that this is superseeded by EnableSetFunction. */ #ifndef UseLVOs # define UseLVOs 0 #endif /* If the following is defined, errnos from unix function-calls that could not be interpreted as AROS error numbers (ERROR_* defined in are passed back via SetIoErr(). The errno is incremented by the value of this define. Note that this value should generate unique error numbers! Note also that Fault() checks, whether an error-number is in fact an errno, by AND'ing this value to the error number! The recommended value is 0x40000000 (ie only the 30th bit set). If this is defined to 0, the errno will not be passed through. Instead ERROR_UNKNOWN is returned, if the errno could not be interpreted. On AROS systems without any Unix emulation (ie every system without underlying POSIX-compatible operating system), this should be set to 0 to simplify the resulting code. */ #ifndef PassThroughErrnos # define PassThroughErrnos 0 /* # define PassThroughErrnos 0x40000000 */ #endif /****************************************************************************** ***** END aros/options.h ******************************************************************************/ #endif /* AROS_OPTIONS_H */