Eneboo - Documentación para desarrolladores
|
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 #undef HAVE_RINT 00049 #define HAVE_PTHREAD_ATTR_SETSTACKSIZE 1 00050 #define HAVE_PTHREAD_SIGMASK 1 00051 #define HAVE_PTHREAD_YIELD_ZERO_ARG 1 00052 #define HAVE_BROKEN_REALPATH 1 00053 00054 /* changes made to make use of LibC-June-2004 for building purpose */ 00055 #undef HAVE_POSIX_SIGNALS 00056 #undef HAVE_PTHREAD_ATTR_SETSCOPE 00057 #undef HAVE_ALLOC_A 00058 #undef HAVE_FINITE 00059 #undef HAVE_GETPWNAM 00060 #undef HAVE_GETPWUID 00061 #undef HAVE_PTHREAD_SETSCHEDPARAM 00062 #undef HAVE_READLINK 00063 #undef HAVE_STPCPY 00064 /* changes end */ 00065 00066 /* no libc crypt() function */ 00067 #ifdef HAVE_OPENSSL 00068 #define HAVE_CRYPT 1 00069 #else 00070 #undef HAVE_CRYPT 00071 #endif /* HAVE_OPENSSL */ 00072 00073 /* Configure can't detect this because it uses AC_TRY_RUN */ 00074 #undef HAVE_COMPRESS 00075 #define HAVE_COMPRESS 00076 00077 /* include the old function apis */ 00078 #define USE_OLD_FUNCTIONS 1 00079 00080 /* no case sensitivity */ 00081 #define FN_NO_CASE_SENCE 1 00082 00083 /* the thread alarm is not used */ 00084 #define DONT_USE_THR_ALARM 1 00085 00086 /* signals do not interrupt sockets */ 00087 #define SIGNALS_DONT_BREAK_READ 1 00088 00089 /* signal by closing the sockets */ 00090 #define SIGNAL_WITH_VIO_CLOSE 1 00091 00092 /* On NetWare, stack grows towards lower address*/ 00093 #define STACK_DIRECTION -1 00094 00095 /* On NetWare, to fix the problem with the deletion of open files */ 00096 #define CANT_DELETE_OPEN_FILES 1 00097 00098 /* default directory information */ 00099 #define DEFAULT_MYSQL_HOME "sys:/mysql" 00100 #define PACKAGE "mysql" 00101 #define DEFAULT_BASEDIR "sys:/" 00102 #define SHAREDIR "share/" 00103 #define DEFAULT_CHARSET_HOME "sys:/mysql/" 00104 #define DATADIR "data/" 00105 00106 /* 64-bit file system calls */ 00107 #define SIZEOF_OFF_T 8 00108 #define off_t off64_t 00109 #define chsize chsize64 00110 #define ftruncate ftruncate64 00111 #define lseek lseek64 00112 #define pread pread64 00113 #define pwrite pwrite64 00114 #define tell tell64 00115 00116 /* do not use the extended time in LibC sys\stat.h */ 00117 #define _POSIX_SOURCE 00118 00119 /* Kernel call on NetWare that will only yield if our time slice is up */ 00120 void kYieldIfTimeSliceUp(void); 00121 00122 /* Some macros for portability */ 00123 00124 #define set_timespec(ABSTIME,SEC) { (ABSTIME).tv_sec=time(NULL)+(SEC); (ABSTIME).tv_nsec=0; } 00125 00126 /* extra protection against CPU Hogs on NetWare */ 00127 #define NETWARE_YIELD kYieldIfTimeSliceUp() 00128 /* Screen mode for help texts */ 00129 #define NETWARE_SET_SCREEN_MODE(A) setscreenmode(A) 00130 00131 #ifdef __cplusplus 00132 } 00133 #endif 00134 00135 #endif /* _config_netware_h */