summaryrefslogtreecommitdiff
path: root/config/solaris
diff options
context:
space:
mode:
Diffstat (limited to 'config/solaris')
-rw-r--r--config/solaris/Makedefs4
-rw-r--r--config/solaris/define.h4
-rw-r--r--config/solaris/i386.c71
-rw-r--r--config/solaris/sparc.c39
-rw-r--r--config/solaris/status10
5 files changed, 6 insertions, 122 deletions
diff --git a/config/solaris/Makedefs b/config/solaris/Makedefs
index 3f6bd24..7fa50b7 100644
--- a/config/solaris/Makedefs
+++ b/config/solaris/Makedefs
@@ -9,11 +9,11 @@
# GDIR directory of graphics helper library
CC = gcc
-CFLAGS = -I/usr/openwin/include
+CFLAGS =
CFDYN = -fPIC
RLINK =
RLIBS = -lm -ldl
TLIBS = -lposix4 -lpthread
-XLIBS = -L /usr/openwin/lib -Xlinker -R/usr/openwin/lib -lX11
+XLIBS = -Xlinker -lX11
XPMDEFS = -DZPIPE -DSYSV
GDIR = xpm
diff --git a/config/solaris/define.h b/config/solaris/define.h
index 12b5119..9a19b3d 100644
--- a/config/solaris/define.h
+++ b/config/solaris/define.h
@@ -4,7 +4,3 @@
#define UNIX 1
#define LoadFunc
-
-/* use gcc to compile generated code */
-#define CComp "gcc"
-#define COpts "-I/usr/openwin/include -ldl"
diff --git a/config/solaris/i386.c b/config/solaris/i386.c
deleted file mode 100644
index fa88c93..0000000
--- a/config/solaris/i386.c
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Coswitch for Windows using Visual C++.
- *
- * Written by Frank J. Lhota, based on an assembly version
- * authored by Robert Goldberg and modified for OS/2 2.0 by Mark
- * Emmer.
- */
-
-#include <sys/asm_linkage.h>
-#include <sys/trap.h>
-
-/*
- * The Windows co-expression context consists of 5 words. The
- * following constants define the byte offsets for each of the
- * registers stored in the context.
- */
-
-#define SP_OFF "0"
-#define BP_OFF "4"
-#define SI_OFF "8"
-#define DI_OFF "12"
-#define BX_OFF "16"
-
-int coswitch(old, new, first)
-int *old;
-int *new;
-int first;
-{
-
- /* Save current context to *old */
- __asm__ __volatile__ (
- "movl %%esp," SP_OFF "(%0)\n\t"
- "movl %%ebp," BP_OFF "(%0)\n\t"
- "movl %%esi," SI_OFF "(%0)\n\t"
- "movl %%edi," DI_OFF "(%0)\n\t"
- "movl %%ebx," BX_OFF "(%0)"
- : : "a"( old )
- );
-
- if ( first )
- {
- /* first != 0 => restore context in *new. */
- __asm__ __volatile__ (
- "movl " SP_OFF "(%0),%%esp\n\t"
- "movl " BP_OFF "(%0),%%ebp\n\t"
- "movl " SI_OFF "(%0),%%esi\n\t"
- "movl " DI_OFF "(%0),%%edi\n\t"
- "movl " BX_OFF "(%0),%%ebx"
- : : "a"( new )
- );
- }
- else
- {
- /*
- * first == 0 => Set things up for first activation of this
- * coexpression. Load stack pointer from first
- * word of *new and call new_context, which
- * should never return.
- */
- __asm__ __volatile__ (
- "movl " SP_OFF "(%0),%%esp\n\t"
- "movl %%esp,%%ebp"
- : : "a"( new )
- );
- new_context( 0, NULL );
- syserr( "interp() returned in coswitch" );
- }
-
- return 0;
-}
-
diff --git a/config/solaris/sparc.c b/config/solaris/sparc.c
deleted file mode 100644
index 6c57a94..0000000
--- a/config/solaris/sparc.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * coswitch for Sun-4 Sparc.
- *
- * Compile this with 'gcc -c rswitch.c'. Do not use gcc -O.
- */
-
-#include <sys/asm_linkage.h>
-#include <sys/trap.h>
-
-int coswitch(old_cs, new_cs, first)
-int *old_cs, *new_cs;
-int first;
-{
- asm("ta 0x03"); /* ST_FLUSH_WINDOWS in trap.h */
- asm("ld [%fp+0x44], %o0"); /* load old_cs into %o0 */
- asm("st %sp,[%o0]"); /* Save user stack pointer */
- asm("st %fp,[%o0+0x4]"); /* Save frame pointer */
- asm("st %i7,[%o0+0x8]"); /* Save return address */
-
- if (first == 0) { /* this is the first activation */
- asm("ld [%fp+0x48], %o0"); /* load new_cs into %o0 */
- asm("ld [%o0], %o1"); /* load %o1 from cstate[0] */
-
- /* Decrement new stack pointer value before loading it into sp. */
- /* The top 64 bytes of the stack are reserved for the kernel, to */
- /* save the 8 local and 8 in registers into, on context switches, */
- /* interrupts, traps, etc. */
-
- asm("save %o1,-96, %sp"); /* load %sp from %o1 */
- new_context(0,0);
- syserr("new_context() returned in coswitch");
-
- } else {
- asm("ld [%fp+0x48], %o0"); /* load new_cs into %o0 */
- asm("ld [%o0+0x4],%fp"); /* Load frame pointer */
- asm("ld [%o0+0x8],%i7"); /* Load return address */
- asm("ld [%o0],%sp"); /* Load user stack pointer */
- }
-}
diff --git a/config/solaris/status b/config/solaris/status
index a2a7a35..b7d0c2a 100644
--- a/config/solaris/status
+++ b/config/solaris/status
@@ -4,14 +4,13 @@ System configuration:
Latest Icon version:
- Version 9.4.3
+ Version 9.5.0
Installer:
Gregg Townsend
Icon Project
The University of Arizona
- (with thanks to Andreas Almroth)
Missing features:
@@ -23,10 +22,9 @@ Known bugs:
Comments:
- Tested on SPARC Solaris 2.6 (SunOS 5.6) with gcc version 2.95.3.
- Tested on SPARC Solaris 9 (SunOS 5.9) with gcc version 3.4.1.
- Tested on x86 Schillix 0.2.1 with gcc version 3.4.3.
+ Tested on SPARC Solaris 10 (SunOS 5.10) with gcc version 4.2.2,
+ and on x86 OpenSolaris 2009.6 (5.11) with gcc version 3.4.3.
Date:
- November 10, 2005
+ March 26, 2010