summaryrefslogtreecommitdiffstats
path: root/lib/libstand
diff options
context:
space:
mode:
authormsmith <msmith@FreeBSD.org>1998-11-04 07:39:53 +0000
committermsmith <msmith@FreeBSD.org>1998-11-04 07:39:53 +0000
commit4674ed7cfb732b303130ffc95b8711b1067b1ace (patch)
tree4c2b795a5ce43169547391989145c990a39b5e41 /lib/libstand
parent38c50ef2661e8479071e8891e4218c3408002982 (diff)
downloadFreeBSD-src-4674ed7cfb732b303130ffc95b8711b1067b1ace.zip
FreeBSD-src-4674ed7cfb732b303130ffc95b8711b1067b1ace.tar.gz
Well I never. Seems like _setjmp()/_longjmp() are just what the doctor
ordered. This brings the Alpha back to parity, and should bring us BootForth on both platforms. Submitted by: John Birrell (jb@freebsd.org)
Diffstat (limited to 'lib/libstand')
-rw-r--r--lib/libstand/Makefile10
-rw-r--r--lib/libstand/libstand.38
-rw-r--r--lib/libstand/stand.h6
3 files changed, 16 insertions, 8 deletions
diff --git a/lib/libstand/Makefile b/lib/libstand/Makefile
index 78e24c4..fe4d343 100644
--- a/lib/libstand/Makefile
+++ b/lib/libstand/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.8 1998/11/04 00:23:11 msmith Exp $
+# $Id: Makefile,v 1.9 1998/11/04 00:32:08 msmith Exp $
#
# Originally from $NetBSD: Makefile,v 1.21 1997/10/26 22:08:38 lukem Exp $
#
@@ -90,11 +90,11 @@ __reml.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4
.PATH: ${.CURDIR}/../libc/net
SRCS+= inet_ntoa.c inet_addr.c
-# setjmp/longjmp
-.if ${MACHINE_ARCH} == "i386"
-.PATH: ${.CURDIR}/${MACHINE_ARCH}
+# _setjmp/_longjmp
+.PATH: ${.CURDIR}/../libc/${MACHINE_ARCH}/gen
+SRCS+= _setjmp.S
+# really only required for i386
CFLAGS+=-I${.CURDIR}/../libc/${MACHINE_ARCH}
-SRCS+= setjmp.S
.endif
# decompression functionality from libz
diff --git a/lib/libstand/libstand.3 b/lib/libstand/libstand.3
index ae04323..aa5365e 100644
--- a/lib/libstand/libstand.3
+++ b/lib/libstand/libstand.3
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $Id: libstand.3,v 1.1.1.1 1998/08/20 08:19:55 msmith Exp $
+.\" $Id: libstand.3,v 1.2 1998/11/01 09:31:08 msmith Exp $
.\"
.Dd June 22, 1998
.Dt LIBSTAND 3
@@ -131,7 +131,11 @@ Requires
.It Fn "int setjmp" "jmp_buf env"
.It Fn "void longjmp" "jmp_buf env" "int val"
.Pp
-Require
+Defined as
+.Fn _setjmp
+and
+.Fn _lonjmp
+respectively as there is no signal state to manipulate. Requires
.Fd #include <setjmp.h>
.El
.Sh CHARACTER I/O
diff --git a/lib/libstand/stand.h b/lib/libstand/stand.h
index 24d6ab7..c527bf7 100644
--- a/lib/libstand/stand.h
+++ b/lib/libstand/stand.h
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: stand.h,v 1.10 1998/11/01 09:31:08 msmith Exp $
+ * $Id: stand.h,v 1.11 1998/11/04 07:04:00 msmith Exp $
* From $NetBSD: stand.h,v 1.22 1997/06/26 19:17:40 drochner Exp $
*/
@@ -229,6 +229,10 @@ extern void pager_close(void);
extern int pager_output(const char *lines);
extern int pager_file(const char *fname);
+/* No signal state to preserve */
+#define setjmp _setjmp
+#define longjmp _longjmp
+
/* environment.c */
#define EV_DYNAMIC (1<<0) /* value was dynamically allocated, free if changed/unset */
#define EV_VOLATILE (1<<1) /* value is volatile, make a copy of it */
OpenPOWER on IntegriCloud