Eneboo - Documentación para desarrolladores
src/libmysql_macosx/include/config-netware.h
Ir a la documentación de este archivo.
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 */
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'