summaryrefslogtreecommitdiff
path: root/databases
diff options
context:
space:
mode:
authorbad <bad@pkgsrc.org>1999-08-03 20:30:41 +0000
committerbad <bad@pkgsrc.org>1999-08-03 20:30:41 +0000
commit216c39fe9f7ecb2324caa623bf6772734f037859 (patch)
tree901abbc104737e1bc6a0e4f78137384390bcb2d5 /databases
parent4684b476640dece5115e250e51e5ec3e9942ae6b (diff)
downloadpkgsrc-216c39fe9f7ecb2324caa623bf6772734f037859.tar.gz
Add support for m68k machines. Patches by Andy Finnell.
Thanks to Greg Oster for testing.
Diffstat (limited to 'databases')
-rw-r--r--databases/mysql-server/Makefile4
-rw-r--r--databases/mysql-server/patches/patch-ah16
-rw-r--r--databases/mysql-server/patches/patch-bd34
-rw-r--r--databases/mysql-server/patches/patch-be87
-rw-r--r--databases/mysql-server/patches/patch-bf261
-rw-r--r--databases/mysql-server/patches/patch-bg88
-rw-r--r--databases/mysql-server/patches/patch-bh48
-rw-r--r--databases/mysql-server/patches/patch-bi34
8 files changed, 559 insertions, 13 deletions
diff --git a/databases/mysql-server/Makefile b/databases/mysql-server/Makefile
index dbfc30c2e14..61fa132195a 100644
--- a/databases/mysql-server/Makefile
+++ b/databases/mysql-server/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.5 1999/07/12 17:41:58 bad Exp $
+# $NetBSD: Makefile,v 1.6 1999/08/03 20:30:41 bad Exp $
#
DISTNAME= mysql-3.22.22
@@ -29,7 +29,7 @@ CFLAGS+= -Dunix
# platforms on which included mit-pthreads is usable
ONLY_FOR_PLATFORM= NetBSD-*-alpha NetBSD-*-arm32 NetBSD-*-i386 \
- NetBSD-*-sparc SunOS-*-sparc
+ NetBSD-*-sparc NetBSD-*-m68k SunOS-*-sparc
USE_GMAKE=
USE_PERL5=
diff --git a/databases/mysql-server/patches/patch-ah b/databases/mysql-server/patches/patch-ah
index 61ea997911e..ab396343ab3 100644
--- a/databases/mysql-server/patches/patch-ah
+++ b/databases/mysql-server/patches/patch-ah
@@ -1,7 +1,7 @@
-$NetBSD: patch-ah,v 1.1.1.1 1999/05/06 23:37:00 tv Exp $
+$NetBSD: patch-ah,v 1.2 1999/08/03 20:30:41 bad Exp $
--- mit-pthreads/config/configure.orig Tue Mar 10 10:11:25 1998
-+++ mit-pthreads/config/configure Fri Apr 16 18:16:36 1999
++++ mit-pthreads/config/configure Thu Jul 29 19:17:31 1999
@@ -1165,6 +1165,12 @@
name=$host_cpu-$host_os
@@ -64,7 +64,17 @@ $NetBSD: patch-ah,v 1.1.1.1 1999/05/06 23:37:00 tv Exp $
i386-*-netbsd1.3*)
name=i386-netbsd-1.3
sysincludes=netbsd-1.1
-@@ -1898,6 +1932,38 @@
+@@ -1279,6 +1313,9 @@
+ ;;
+ m68*-*-netbsd*)
+ name=m68000-netbsd
++ sysincludes=netbsd-1.1
++ except="lseek ftruncate pipe fstat"
++ available_syscalls="sigsuspend sigprocmask"
+ ;;
+ i386-*-freebsd2.*)
+ name=i386-freebsd-2.0
+@@ -1898,6 +1935,38 @@
if test $pthreads_cv_timespec_in_time = yes ; then
cat >> confdefs.h <<\EOF
#define _OS_HAS_TIMESPEC 1
diff --git a/databases/mysql-server/patches/patch-bd b/databases/mysql-server/patches/patch-bd
index 5836c73962a..8ec517cdd0c 100644
--- a/databases/mysql-server/patches/patch-bd
+++ b/databases/mysql-server/patches/patch-bd
@@ -1,30 +1,34 @@
-$NetBSD: patch-bd,v 1.1.1.1 1999/05/06 23:37:01 tv Exp $
+$NetBSD: patch-bd,v 1.2 1999/08/03 20:30:41 bad Exp $
---- mit-pthreads/config/configure.in.orig Mon Mar 9 11:30:59 1998
-+++ mit-pthreads/config/configure.in Fri Apr 16 18:17:12 1999
-@@ -124,6 +124,12 @@
+--- mit-pthreads/config/configure.in.orig Mon Mar 9 02:30:59 1998
++++ mit-pthreads/config/configure.in Tue Aug 3 12:23:03 1999
+@@ -124,6 +124,14 @@
name=$host_cpu-$host_os
case $host in
++changequote(,)dnl
+ alpha-*-netbsd1.3[H-Z]|alpha-*-netbsd1.4*)
+ name=alpha-netbsd-1.3
+ sysincludes=netbsd-1.1
+ except="fork lseek pipe fstat"
+ available_syscalls="sigsuspend sigprocmask"
+ ;;
++changequote([,])dnl
alpha-*-netbsd1.3*)
name=alpha-netbsd-1.3
sysincludes=netbsd-1.1
-@@ -142,6 +148,17 @@
+@@ -142,6 +150,19 @@
CFLAGS="$CFLAGS -std"
fi
;;
++changequote(,)dnl
+ arm32-*-netbsd1.3[H-Z]|arm32-*-netbsd1.4*)
+ name=arm32-netbsd-1.3
+ sysincludes=netbsd-1.1
+ except="fork pipe lseek ftruncate fstat"
+ available_syscalls="sigsuspend sigprocmask"
+ ;;
++changequote([,])dnl
+ arm32-*-netbsd1.3*)
+ name=arm32-netbsd-1.3
+ sysincludes=netbsd-1.1
@@ -33,16 +37,18 @@ $NetBSD: patch-bd,v 1.1.1.1 1999/05/06 23:37:01 tv Exp $
hppa1.0-*-hpux10.20 | hppa1.1-*-hpux10.20)
name=hppa-hpux-10.20
sysincludes=hpux-10.20
-@@ -176,6 +193,17 @@
+@@ -176,6 +197,19 @@
AC_DEFINE(LD_LINKS_STATIC_DATA)
AC_DEFINE(BROKEN_SIGNALS)
;;
++changequote(,)dnl
+ sparc-*-netbsd1.3[H-Z]|sparc-*-netbsd1.4*)
+ name=sparc-netbsd-1.3
+ sysincludes=netbsd-1.1
+ except="pipe fork lseek ftruncate fstat"
+ available_syscalls="sigprocmask sigsuspend"
+ ;;
++changequote([,])dnl
+ sparc-*-netbsd1.3*)
+ name=sparc-netbsd-1.3
+ sysincludes=netbsd-1.1
@@ -51,20 +57,32 @@ $NetBSD: patch-bd,v 1.1.1.1 1999/05/06 23:37:01 tv Exp $
sparc-*-netbsd1.0A | sparc-*-netbsd1.1* | sparc-*-netbsd1.2*)
name=sparc-sunos-4.1.3
sysincludes=netbsd-1.0
-@@ -201,6 +229,12 @@
+@@ -201,6 +235,14 @@
syscall=i386-bsdi-2.0
except="fork lseek ftruncate sigsuspend"
;;
++changequote(,)dnl
+ i386-*-netbsd1.3[H-Z]|i386-*-netbsd1.4*)
+ name=i386-netbsd-1.3
+ sysincludes=netbsd-1.1
+ except="fork lseek ftruncate pipe fstat"
+ available_syscalls="sigsuspend sigprocmask"
+ ;;
++changequote([,])dnl
i386-*-netbsd1.3*)
name=i386-netbsd-1.3
sysincludes=netbsd-1.1
-@@ -339,6 +373,16 @@
+@@ -223,6 +265,9 @@
+ ;;
+ m68*-*-netbsd*)
+ name=m68000-netbsd
++ sysincludes=netbsd-1.1
++ except="lseek ftruncate pipe fstat"
++ available_syscalls="sigsuspend sigprocmask"
+ ;;
+ i386-*-freebsd2.*)
+ name=i386-freebsd-2.0
+@@ -339,6 +384,16 @@
AC_MSG_RESULT($pthreads_cv_timespec_in_time)
if test $pthreads_cv_timespec_in_time = yes ; then
AC_DEFINE(_OS_HAS_TIMESPEC)
diff --git a/databases/mysql-server/patches/patch-be b/databases/mysql-server/patches/patch-be
new file mode 100644
index 00000000000..2ae2ee23871
--- /dev/null
+++ b/databases/mysql-server/patches/patch-be
@@ -0,0 +1,87 @@
+$NetBSD$
+
+--- mit-pthreads/machdep/engine-m68000-netbsd.h.orig Tue Nov 8 16:39:15 1994
++++ mit-pthreads/machdep/engine-m68000-netbsd.h Wed Jul 7 04:29:09 1999
+@@ -3,6 +3,9 @@
+ *
+ * $Id: engine-m68000-netbsd.h,v 1.51 1994/11/08 15:39:15 proven Exp $
+ *
++ * m68k work by Andy Finnell <andyf@vei.net> based off work by
++ * David Leonard and Chris Provenzano.
++ *
+ */
+
+ #include <unistd.h>
+@@ -16,14 +19,14 @@
+ #define SEMAPHORE_CLEAR 0
+ #define SEMAPHORE_SET 0x80;
+
+-#define SEMAPHORE_TEST_AND_SET(lock) \
+-({ \
+-volatile long temp = SEMAPHORE_CLEAR; \
+- \
+-__asm__ volatile("tas (%2); bpl 0f; movl #1,%0; 0:" \
+- :"=r" (temp) \
+- :"0" (temp),"r" (lock)); \
+-temp; \
++#define SEMAPHORE_TEST_AND_SET(lock) \
++({ \
++ volatile long temp = SEMAPHORE_CLEAR; \
++ __asm__ volatile( \
++ "tas %2; bpl 0f; movl #1,%0; 0:" \
++ :"=r" (temp) \
++ :"0" (temp),"m" (*lock)); \
++ temp; \
+ })
+
+ #define SEMAPHORE_RESET(lock) *lock = SEMAPHORE_CLEAR
+@@ -48,6 +51,7 @@
+ void *machdep_stack;
+ struct itimerval machdep_timer;
+ jmp_buf machdep_state;
++ char machdep_fstate[92];
+ };
+
+ /*
+@@ -56,6 +60,12 @@
+ #define PTHREAD_STACK_MIN 1024
+
+ /*
++ * Some fd flag defines that are necessary to distinguish between posix
++ * behavior and bsd4.3 behavior.
++ */
++#define __FD_NONBLOCK O_NONBLOCK
++
++/*
+ * Static machdep_pthread initialization values.
+ * For initial thread only.
+ */
+@@ -70,7 +80,27 @@
+
+ #if defined(PTHREAD_KERNEL)
+
+-int machdep_save_state __P_((void));
++
++#ifndef __machdep_stack_get
++#define __machdep_stack_get(x) (x)->machdep_stack
++#endif
++#ifndef __machdep_stack_set
++#define __machdep_stack_set(x, y) (x)->machdep_stack = y
++#endif
++#ifndef __machdep_stack_repl
++#define __machdep_stack_repl(x, y) \
++{ \
++ if (stack = __machdep_stack_get(x)) { \
++ __machdep_stack_free(stack); \
++ } \
++ __machdep_stack_set(x, y); \
++}
++#endif
++
++void * __machdep_stack_alloc __P_((size_t));
++void __machdep_stack_free __P_((void *));
++
++int machdep_save_state __P_((void));
+
+ #endif
+
diff --git a/databases/mysql-server/patches/patch-bf b/databases/mysql-server/patches/patch-bf
new file mode 100644
index 00000000000..25a7ca35c60
--- /dev/null
+++ b/databases/mysql-server/patches/patch-bf
@@ -0,0 +1,261 @@
+$NetBSD: patch-bf,v 1.1 1999/08/03 20:30:41 bad Exp $
+
+--- /dev/null Wed Jul 28 16:32:34 1999
++++ mit-pthreads/machdep/engine-m68000-netbsd.c Wed Jul 28 23:54:31 1999
+@@ -0,0 +1,256 @@
++/* ==== machdep.c ============================================================
++ * Copyright (c) 1993, 1994 Chris Provenzano, proven@athena.mit.edu
++ *
++ * Copyright (c) 1993 by Chris Provenzano, proven@mit.edu
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in the
++ * documentation and/or other materials provided with the distribution.
++ * 3. All advertising materials mentioning features or use of this software
++ * must display the following acknowledgement:
++ * This product includes software developed by Chris Provenzano.
++ * 4. The name of Chris Provenzano may not be used to endorse or promote
++ * products derived from this software without specific prior written
++ * permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY CHRIS PROVENZANO ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL CHRIS PROVENZANO BE LIABLE FOR ANY
++ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
++ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
++ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ *
++ * Description : Machine dependent functions for NetBSD on i386
++ *
++ * 1.00 93/08/04 proven
++ * -Started coding this file.
++ *
++ * m68k work from David Leonard <david.leonard@it.uq.edu.au>.
++ * updated and NetBSD/m68k work from Andy Finnell <andyf@vei.net>.
++ *
++ */
++
++#ifndef lint
++static const char rcsid[] = "$Id: patch-bf,v 1.1 1999/08/03 20:30:41 bad Exp $";
++#endif
++
++#include "pthread.h"
++#include <sys/syscall.h>
++#include <sys/stat.h>
++
++/* ==========================================================================
++ * machdep_save_state()
++ */
++int machdep_save_state(void)
++{
++ return( _setjmp(pthread_run->machdep_data.machdep_state) );
++}
++
++/* ==========================================================================
++ * machdep_restore_state()
++ */
++void machdep_restore_state(void)
++{
++ _longjmp(pthread_run->machdep_data.machdep_state, 1);
++}
++
++/* ==========================================================================
++ * machdep_save_state()
++ */
++void machdep_save_float_state(struct pthread * pthread)
++{
++ char * fdata = pthread->machdep_data.machdep_fstate;
++
++ __asm__ ( "fmovem fp0-fp7,%0"::"m" (*fdata) );
++ __asm__ ( "fmovem fpcr/fpsr/fpi,%0"::"m" (fdata[80]) );
++}
++
++/* ==========================================================================
++ * machdep_restore_float_state()
++ */
++void machdep_restore_float_state(void)
++{
++ char * fdata = pthread_run->machdep_data.machdep_fstate;
++
++ __asm__ ( "fmovem %0,fp0-fp7"::"m" (*fdata) );
++ __asm__ ( "fmovem %0,fpcr/fpsr/fpi"::"m" (fdata[80]) );
++
++}
++
++/* ==========================================================================
++ * machdep_set_thread_timer()
++ */
++void machdep_set_thread_timer(struct machdep_pthread *machdep_pthread)
++{
++ if (setitimer(ITIMER_VIRTUAL, &(machdep_pthread->machdep_timer), NULL)) {
++ PANIC();
++ }
++}
++
++/* ==========================================================================
++ * machdep_unset_thread_timer()
++ */
++void machdep_unset_thread_timer(struct machdep_pthread *machdep_pthread)
++{
++ struct itimerval zeroval = { { 0, 0 }, { 0, 0 } };
++
++ if (setitimer(ITIMER_VIRTUAL, &zeroval, NULL)) {
++ PANIC();
++ }
++}
++
++/* ==========================================================================
++ * __machdep_stack_free()
++ */
++void __machdep_stack_free(void * stack)
++{
++ free(stack);
++}
++
++/* ==========================================================================
++ * __machdep_stack_alloc()
++ */
++void * __machdep_stack_alloc(size_t size)
++{
++ void * stack;
++
++ return((void*)malloc(size));
++}
++
++/* ==========================================================================
++ * machdep_pthread_cleanup()
++ */
++void *machdep_pthread_cleanup(struct machdep_pthread *machdep_pthread)
++{
++ return(machdep_pthread->machdep_stack);
++}
++
++/* ==========================================================================
++ * machdep_pthread_start()
++ */
++void machdep_pthread_start(void)
++{
++ context_switch_done();
++ pthread_sched_resume();
++
++ /* Run current thread's start routine with argument */
++ pthread_exit(
++ pthread_run->machdep_data.start_routine(
++ pthread_run->machdep_data.start_argument
++ )
++ );
++
++ /* should never reach here */
++ PANIC();
++}
++
++/* ==========================================================================
++ * __machdep_pthread_create()
++ */
++void __machdep_pthread_create(struct machdep_pthread *machdep_pthread,
++ void *(* start_routine)(), void *start_argument,
++ long stack_size, long nsec, long flags)
++{
++ machdep_pthread->start_routine = start_routine;
++ machdep_pthread->start_argument = start_argument;
++
++ machdep_pthread->machdep_timer.it_value.tv_sec = 0;
++ machdep_pthread->machdep_timer.it_interval.tv_sec = 0;
++ machdep_pthread->machdep_timer.it_interval.tv_usec = 0;
++ machdep_pthread->machdep_timer.it_value.tv_usec = nsec / 1000;
++
++ _setjmp(machdep_pthread->machdep_state);
++ /*
++ * Set up new stack frame so that it looks like it
++ * returned from a longjmp() to the beginning of
++ * machdep_pthread_start().
++ *
++ * state is the set_jmp structure, which for m68k is:
++ * long onstack_flag; // [0]
++ * long sigmask; // [1]
++ * long sp; // [2]
++ * long fp; // [3]
++ * long ap; // [4]
++ * long pc; // [5]
++ * long ps; // [6]
++ * long regs[10]; // non scratch registers
++ */
++ machdep_pthread->machdep_state[5] = (long)machdep_pthread_start;
++
++ /* Stack starts high and builds down. */
++ machdep_pthread->machdep_state[2] =
++ (int)machdep_pthread->machdep_stack + stack_size;
++}
++
++/* ==========================================================================
++ * machdep_sys_wait3()
++ */
++machdep_sys_wait3(int * b, int c, int * d)
++{
++ return(machdep_sys_wait4(0, b, c, d));
++}
++
++/* ==========================================================================
++ * machdep_sys_waitpid()
++ */
++machdep_sys_waitpid(int a, int * b, int c)
++{
++ return(machdep_sys_wait4(a, b, c, NULL));
++}
++
++/* ==========================================================================
++ * machdep_sys_getdtablesize()
++ */
++machdep_sys_getdtablesize()
++{
++ return(sysconf(_SC_OPEN_MAX));
++}
++
++/* ==========================================================================
++ * machdep_sys_getdirentries()
++ */
++machdep_sys_getdirentries(int fd, char * buf, int len, int * seek)
++{
++ return(machdep_sys_getdents(fd, buf, len));
++}
++
++/* ==========================================================================
++ * machdep_sys_lseek()
++ */
++off_t machdep_sys_lseek(int fd, off_t offset, int whence)
++{
++ extern off_t __syscall();
++
++ return(__syscall((quad_t)SYS_lseek, fd, 0, offset, whence));
++}
++
++int machdep_sys_ftruncate( int fd, off_t length)
++{
++ quad_t q;
++ int rv;
++
++ q = __syscall((quad_t)SYS_ftruncate, fd,0, length);
++ if( /* LINTED constant */ sizeof( quad_t ) == sizeof( register_t ) ||
++ /* LINTED constant */ BYTE_ORDER == LITTLE_ENDIAN )
++ rv = (int)q;
++ else
++ rv = (int)((u_quad_t)q >> 32);
++
++ return rv;
++}
++
++int machdep_sys_fstat( int f, struct stat* st )
++{
++ return __fstat13(f,st);
++}
diff --git a/databases/mysql-server/patches/patch-bg b/databases/mysql-server/patches/patch-bg
new file mode 100644
index 00000000000..86302d5c36d
--- /dev/null
+++ b/databases/mysql-server/patches/patch-bg
@@ -0,0 +1,88 @@
+$NetBSD: patch-bg,v 1.1 1999/08/03 20:30:41 bad Exp $
+
+--- /dev/null Fri Jul 30 03:20:45 1999
++++ mit-pthreads/machdep/syscall-m68000-netbsd.S Fri Jul 30 23:23:08 1999
+@@ -0,0 +1,83 @@
++
++#ifndef lint
++ .text
++ .asciz "$Id: patch-bg,v 1.1 1999/08/03 20:30:41 bad Exp $";
++#endif
++
++#include <machine/asm.h>
++#include <sys/syscall.h>
++
++#ifdef __STDC__
++#define IMM #
++#define SYSCALL(x) .even; ENTRY(machdep_sys_ ## x); \
++ movl IMM SYS_ ## x,d0; trap IMM 0; jcs err; rts
++#else /* !__STDC__ */
++#define SYSCALL(x) .even; ENTRY(machdep_sys_/**/x); \
++ movl #SYS_/**/x,d0; trap #0; jcs err; rts
++#endif /* !__STDC__ */
++
++/*
++ * Initial asm stuff for all functions.
++ */
++ .text
++ .even
++
++
++/* ==========================================================================
++ * error code for all syscalls. The error value is returned as the negative
++ * of the errno value.
++ */
++
++err:
++ negl d0
++ rts
++
++/* ==========================================================================
++ * machdep_sys_pipe
++ */
++ .even
++ENTRY(machdep_sys_pipe);
++ movl #SYS_pipe,d0
++ trap #0
++ jcs err
++ movl sp@(4),a0
++ movl d0,a0@+
++ movl d1,a0@
++ clrl d0
++ rts
++
++#ifndef SYS___sigsuspend14
++ .even
++ENTRY(machdep_sys_sigsuspend)
++ movl sp@(4),a0
++ movl a0@,sp@(4)
++ movl #SYS_compat_13_sigsuspend13,d0
++ trap #0
++ jcs err
++ clrl d0
++ rts
++#endif
++
++#ifndef SYS___sigprocmask14
++ .even
++ENTRY(machdep_sys_sigprocmask)
++ tstl sp@(8)
++ jne gotptr
++/* movl #0,sp@(8) /* null mask pointer; block empty set */
++ movl #1,sp@(4)
++ jra doit
++gotptr:
++ movl sp@(8),a0
++ movl a0@,sp@(8)
++doit:
++ movl #SYS_compat_13_sigprocmask13,d0
++ trap #0
++ jcs err
++ tstl sp@(12)
++ jeq out
++ movl sp@(12),a0
++ movl d0,a0@
++out:
++ clrl d0
++ rts
++#endif
diff --git a/databases/mysql-server/patches/patch-bh b/databases/mysql-server/patches/patch-bh
new file mode 100644
index 00000000000..7005dcd80b1
--- /dev/null
+++ b/databases/mysql-server/patches/patch-bh
@@ -0,0 +1,48 @@
+$NetBSD: patch-bh,v 1.1 1999/08/03 20:30:41 bad Exp $
+
+--- /dev/null Tue Jul 27 03:18:59 1999
++++ mit-pthreads/machdep/syscall-template-m68000-netbsd.S Wed Jul 7 04:29:09 1999
+@@ -0,0 +1,43 @@
++#include <machine/asm.h>
++#include <sys/syscall.h>
++
++#ifdef SYS___sigsuspend14
++#define SYS_sigsuspend SYS___sigsuspend14
++#endif
++#ifdef SYS___sigprocmask14
++#define SYS_sigprocmask SYS___sigprocmask14
++#endif
++
++
++#ifdef __STDC__
++#define IMM #
++#define SYSCALL(x) .even; \
++ ENTRY(machdep_sys_ ## x); \
++ movl IMM SYS_ ## x,d0; \
++ trap IMM 0; \
++ jcs err; \
++ rts
++#else /* !__STDC__ */
++#define SYSCALL(x) .even; ENTRY(machdep_sys_/**/x); \
++ movl #SYS_/**/x,d0; trap #0; jcs err; rts
++#endif /* !__STDC__ */
++
++/*
++ * Initial asm stuff for all functions.
++ */
++ .text
++ .even
++
++
++/* ==========================================================================
++ * error code for all syscalls. The error value is returned as the negative
++ * of the errno value.
++ */
++
++err:
++ negl d0
++ rts
++
++#define XSYSCALL(NAME) SYSCALL(NAME)
++
++XSYSCALL(SYSCALL_NAME)
diff --git a/databases/mysql-server/patches/patch-bi b/databases/mysql-server/patches/patch-bi
new file mode 100644
index 00000000000..2bc6daaed76
--- /dev/null
+++ b/databases/mysql-server/patches/patch-bi
@@ -0,0 +1,34 @@
+$NetBSD: patch-bi,v 1.1 1999/08/03 20:30:41 bad Exp $
+
+--- mit-pthreads/config/config.guess.orig Sun Jul 7 05:51:23 1996
++++ mit-pthreads/config/config.guess Tue Jul 27 16:55:36 1999
+@@ -261,8 +261,29 @@
+ CRAY-2:UNICOS:*:*)
+ echo cray2-cray-unicos
+ exit 0 ;;
++ amiga:NetBSD:*:*)
++ echo m68k-amiga-netbsd${UNAME_RELEASE}
++ exit 0 ;;
++ atari:NetBSD:*:*)
++ echo m68k-atari-netbsd${UNAME_RELEASE}
++ exit 0 ;;
+ hp3[0-9][05]:NetBSD:*:*)
+ echo m68k-hp-netbsd${UNAME_RELEASE}
++ exit 0 ;;
++ mac68k:NetBSD:*:*)
++ echo m68k-apple-netbsd${UNAME_RELEASE}
++ exit 0 ;;
++ mvme68:NetBSD:*:*)
++ echo m68k-motorola-netbsd${UNAME_RELEASE}
++ exit 0 ;;
++ next68k:NetBSD:*:*)
++ echo m68k-next-netbsd${UNAME_RELEASE}
++ exit 0 ;;
++ sun3:NetBSD:*:*)
++ echo m68k-sun-netbsd${UNAME_RELEASE}
++ exit 0 ;;
++ x68k:NetBSD:*:*)
++ echo m68k-sharp-netbsd${UNAME_RELEASE}
+ exit 0 ;;
+ i[34]86:BSD/386:*:* | *:BSD/OS:*:*)
+ echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}