Main Page | Modules | Class List | Directories | File List | Class Members | File Members | Related Pages

config-netware.h

Go to the documentation of this file.
00001 /* Copyright (C) 2000 MySQL AB
00002 
00003    This program is free software; you can redistribute it and/or modify
00004    it under the terms of the GNU General Public License as published by
00005    the Free Software Foundation; either version 2 of the License, or
00006    (at your option) any later version.
00007 
00008    This program is distributed in the hope that it will be useful,
00009    but WITHOUT ANY WARRANTY; without even the implied warranty of
00010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00011    GNU General Public License for more details.
00012 
00013    You should have received a copy of the GNU General Public License
00014    along with this program; if not, write to the Free Software
00015    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
00016 
00017 /* Header for NetWare compatible with MySQL */
00018 
00019 #ifndef _config_netware_h
00020 #define _config_netware_h
00021 
00022 /* required headers */
00023 #include <unistd.h>
00024 #include <stdio.h>
00025 #include <errno.h>
00026 #include <screen.h>
00027 #include <limits.h>
00028 #include <signal.h>
00029 #include <errno.h>
00030 #include <stdbool.h>
00031 #include <stdlib.h>
00032 #include <sys/types.h>
00033 #include <time.h>
00034 #include <sys/time.h>
00035 #include <pthread.h>
00036 #include <termios.h>
00037 
00038 #ifdef __cplusplus
00039 extern "C" {
00040 #endif
00041 
00042 /* required adjustments */
00043 #undef HAVE_READDIR_R
00044 #undef HAVE_RWLOCK_INIT
00045 #undef HAVE_SCHED_H
00046 #undef HAVE_SYS_MMAN_H
00047 #undef HAVE_SYNCH_H
00048 #define HAVE_PTHREAD_ATTR_SETSTACKSIZE 1
00049 #define HAVE_PTHREAD_SIGMASK 1
00050 #define HAVE_PTHREAD_YIELD_ZERO_ARG 1
00051 #define HAVE_BROKEN_REALPATH 1
00052 
00053 /* no libc crypt() function */
00054 #ifdef HAVE_OPENSSL
00055   #define HAVE_CRYPT 1
00056 #else
00057   #undef HAVE_CRYPT
00058 #endif /* HAVE_OPENSSL */
00059 
00060 /* Configure can't detect this because it uses AC_TRY_RUN */
00061 #undef HAVE_COMPRESS
00062 #define HAVE_COMPRESS
00063 
00064 /* include the old function apis */
00065 #define USE_OLD_FUNCTIONS 1
00066 
00067 /* no case sensitivity */
00068 #define FN_NO_CASE_SENCE 1
00069 
00070 /* the thread alarm is not used */
00071 #define DONT_USE_THR_ALARM 1
00072 
00073 /* signals do not interrupt sockets */
00074 #define SIGNALS_DONT_BREAK_READ 1
00075 
00076 /* signal by closing the sockets */
00077 #define SIGNAL_WITH_VIO_CLOSE 1
00078 
00079 /* On NetWare, stack grows towards lower address*/
00080 #define STACK_DIRECTION -1
00081 
00082 /* On NetWare, to fix the problem with the deletion of open files */
00083 #define CANT_DELETE_OPEN_FILES 1
00084 
00085 /* default directory information */
00086 #define DEFAULT_MYSQL_HOME    "sys:/mysql"
00087 #define PACKAGE               "mysql"
00088 #define DEFAULT_BASEDIR       "sys:/"
00089 #define SHAREDIR              "share/"
00090 #define DEFAULT_CHARSET_HOME  "sys:/mysql/"
00091 #define DATADIR               "data/"
00092 
00093 /* 64-bit file system calls */
00094 #define SIZEOF_OFF_T          8
00095 #define off_t                 off64_t
00096 #define chsize                chsize64
00097 #define ftruncate             ftruncate64
00098 #define lseek                 lseek64
00099 #define pread                 pread64
00100 #define pwrite                pwrite64
00101 #define tell                  tell64
00102 
00103 /* do not use the extended time in LibC sys\stat.h */
00104 #define _POSIX_SOURCE
00105 
00106 /* Kernel call on NetWare that will only yield if our time slice is up */
00107 void kYieldIfTimeSliceUp(void);
00108 
00109 /* Some macros for portability */
00110 
00111 #define set_timespec(ABSTIME,SEC) { (ABSTIME).tv_sec=time(NULL)+(SEC); (ABSTIME).tv_nsec=0; }
00112 
00113 /* extra protection against CPU Hogs on NetWare */
00114 #define NETWARE_YIELD kYieldIfTimeSliceUp()
00115 /* Screen mode for help texts */
00116 #define NETWARE_SET_SCREEN_MODE(A) setscreenmode(A)
00117 
00118 #ifdef __cplusplus
00119 }
00120 #endif
00121 
00122 #endif /* _config_netware_h */

Generated on Sun May 14 14:51:19 2006 by  doxygen 1.4.2