Some problems compiling and some fixes.
myisam/mi_range prototype and definition for _mi_record_pos are
inconsistent. (Caused me problems on Solaris SPARC 2.7 and FreeBSD 3.1)
--- myisam/mi_range.c.orig Wed Jun 2 21:18:39 1999
+++ myisam/mi_range.c Mon Jul 5 10:47:53 1999
@@ -18,7 +18,7 @@
#include "myisamdef.h"
-static my_off_t _mi_record_pos(MI_INFO *info,const byte *key,uint key_len,
+static ha_rows _mi_record_pos(MI_INFO *info,const byte *key,uint key_len,
enum ha_rkey_function search_flag);
static double _mi_search_pos(MI_INFO *info,MI_KEYDEF *keyinfo,uchar *key,
uint key_len,uint nextflag,my_off_t pos);
include/mysql.h uses ulong, which FreeBSD 3.1 doesn't have.
--- include/mysql.h.orig Sun Jul 4 20:25:26 1999
+++ include/mysql.h Mon Jul 5 10:58:32 1999
@@ -159,7 +159,7 @@
unsigned int mysql_errno(MYSQL *mysql);
char *mysql_error(MYSQL *mysql);
char *mysql_info(MYSQL *mysql);
-ulong mysql_thread_id(MYSQL *mysql);
+unsigned long mysql_thread_id(MYSQL *mysql);
MYSQL * STDCALL mysql_init(MYSQL *mysql);
MYSQL * STDCALL mysql_connect(MYSQL *mysql, const char *host,
Under LinuxPPC R4, MAP_FAILED isn't defined. This is used in
isam/_packrec.c and myisam/mi_packrec.c. The former has no problem
compiling because it includes this:
#ifndef MAP_FAILED
#define MAP_FAILED -1
#endif
So I guess myisam/mi_packrec.c should, too:
--- myisam/mi_packrec.c.orig Mon Jul 5 11:09:48 1999
+++ myisam/mi_packrec.c Mon Jul 5 11:09:55 1999
@@ -1127,6 +1127,9 @@
#ifndef MAP_NORESERVE
#define MAP_NORESERVE 0 /* For irix */
#endif
+#ifndef MAP_FAILED
+#define MAP_FAILED -1
+#endif
byte *_mi_memmap_file(MI_INFO *info)
{
--
Paul DuBois, paul@stripped
Northern League Chronicles: http://www.snake.net/nl/