summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2001-08-23 00:01:08 +0000
committerJose Antonio Ortega Ruiz <jao@gnu.org>2001-08-23 00:01:08 +0000
commit7ca7d093df5ed4f4408f4617036116a84df2bd7f (patch)
tree168f5fc5517d00ed55815b12636de8c475b4e66c
parent78ce2582bbb863d8af11aa203b73bd864ea0bc4f (diff)
downloadmdk-7ca7d093df5ed4f4408f4617036116a84df2bd7f.tar.gz
mdk-7ca7d093df5ed4f4408f4617036116a84df2bd7f.tar.bz2
mixguile commands
-rw-r--r--configure.in5
-rw-r--r--mixgtk/Makefile.am13
-rw-r--r--mixguile/.cvsignore1
-rw-r--r--mixguile/Makefile.am19
-rw-r--r--mixguile/mixguile-commands.scm227
-rw-r--r--mixguile/mixguile.scm24
-rw-r--r--mixguile/mixguile_main.c4
-rw-r--r--mixutils/Makefile.am10
-rw-r--r--po/ChangeLog40
9 files changed, 322 insertions, 21 deletions
diff --git a/configure.in b/configure.in
index b7deb10..9e143f4 100644
--- a/configure.in
+++ b/configure.in
@@ -110,7 +110,7 @@ dnl Check for libglade
if test x$gui = xtrue; then
AM_PATH_LIBGLADE([LIBS="$LIBS $LIBGLADE_LIBS"
CFLAGS="$CFLAGS $LIBGLADE_CFLAGS"],
- [AC_MSG_WARN(Cannot find GTK+: the GUI shall not be built) gui=false])
+ [(Cannot find libglade: the GUI shall not be built) gui=false])
fi
dnl use the provided getopt if gnu getopt is not available
@@ -154,4 +154,7 @@ echo " - mixvm (MIX virtual machine${rlinfo}${guileinfo})"
if test x$gui = xtrue; then
echo " - gmixvm (mixvm GTK+ GUI${guileinfo})"
fi
+if test x$wguile = xtrue; then
+echo " - mixguile (the mixvm guile shell)"
+fi
echo
diff --git a/mixgtk/Makefile.am b/mixgtk/Makefile.am
index 7183c36..461a4ab 100644
--- a/mixgtk/Makefile.am
+++ b/mixgtk/Makefile.am
@@ -15,14 +15,16 @@ XPMS = clear.xpm colors.xpm compile.xpm edit.xpm font.xpm fontl.xpm \
symbols.xpm extern.xpm devdir.xpm
EXTRA_DIST = mixgtk.glade $(XPMS)
-INCLUDES = -I$(includedir) -DGLADE_FILE=\""$(pkgdatadir)/mixgtk.glade"\"\
- -DLOCAL_GLADE_FILE=\"mixgtk.glade\"
-LDADD = $(top_builddir)/mixlib/libmix.a $(top_builddir)/lib/libreplace.a $(INTLLIBS)
+
+if MAKE_GUI
pkgdata_DATA = mixgtk.glade $(XPMS)
-if MAKE_GUI
+INCLUDES = -I$(includedir) -DGLADE_FILE=\""$(pkgdatadir)/mixgtk.glade"\"\
+ -DLOCAL_GLADE_FILE=\"mixgtk.glade\"
+LDADD = $(top_builddir)/mixlib/libmix.a $(top_builddir)/lib/libreplace.a $(INTLLIBS)
+
bin_PROGRAMS = gmixvm
gmixvm_SOURCES = gmixvm.c mixgtk.h mixgtk.c \
mixgtk_config.h mixgtk_config.c \
@@ -37,6 +39,3 @@ gmixvm_SOURCES = gmixvm.c mixgtk.h mixgtk.c \
mixgtk_fontsel.h mixgtk_fontsel.c \
mixgtk_wm.h mixgtk_wm.c
endif
-
-
-
diff --git a/mixguile/.cvsignore b/mixguile/.cvsignore
index e995588..fd2e71f 100644
--- a/mixguile/.cvsignore
+++ b/mixguile/.cvsignore
@@ -1,3 +1,4 @@
.deps
Makefile
Makefile.in
+mixguile
diff --git a/mixguile/Makefile.am b/mixguile/Makefile.am
index 664c7cd..392b08d 100644
--- a/mixguile/Makefile.am
+++ b/mixguile/Makefile.am
@@ -10,16 +10,33 @@
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-INCLUDES = -I$(includedir) -DG_LOG_DOMAIN=\"libmixguile\"
+
+SCM_FILES = mixguile.scm mixguile-commands.scm
+EXTRA_DIST = $(SCM_FILES)
noinst_LIBRARIES = libmixguile.a
if MAKE_GUILE
+
+SCM_PATHS = -DSCM_FILE=\""$(pkgdatadir)/mixguile.scm"\"\
+ -DLOCAL_SCM_FILE=\"mixguile.scm\"
+
+pkgdata_DATA = $(SCM_FILES)
+
+libmixguile_a_INCLUDES = -I$(includedir) -DG_LOG_DOMAIN=\"libmixguile\"
libmixguile_a_SOURCES = mixguile.h mixguile.c \
mixguile_cmd_dispatcher.h mixguile_cmd_dispatcher.c \
xmixguile_cmd_dispatcher.h xmixguile_cmd_dispatcher.c
+bin_PROGRAMS = mixguile
+mixguile_INCLUDES = -I$(includedir) $(SCM_PATHS)
+mixguile_LDADD = $(top_builddir)/mixlib/libmix.a \
+ $(top_builddir)/lib/libreplace.a \
+ $(top_builddir)/mixguile/libmixguile.a $(INTLLIBS)
+mixguile_SOURCES = mixguile_main.c
+
else
+
libmixguile_a_SOURCES =
endif
diff --git a/mixguile/mixguile-commands.scm b/mixguile/mixguile-commands.scm
new file mode 100644
index 0000000..2615179
--- /dev/null
+++ b/mixguile/mixguile-commands.scm
@@ -0,0 +1,227 @@
+;; -*-scheme-*- -------------- mixguile-commands.scm :
+; mixvm commands implementation using the mixvm-cmd primitive
+; ------------------------------------------------------------------
+; Last change: Time-stamp: "01/08/23 00:15:59 jao"
+; ------------------------------------------------------------------
+; Copyright (C) 2001 Free Software Foundation, Inc.
+;
+; This program is free software; you can redistribute it and/or modify
+; it under the terms of the GNU General Public License as published by
+; the Free Software Foundation; either version 2 of the License, or
+; (at your option) any later version.
+;
+; This program is distributed in the hope that it will be useful,
+; but WITHOUT ANY WARRANTY; without even the implied warranty of
+; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+; GNU General Public License for more details.
+;
+; You should have received a copy of the GNU General Public License
+; along with this program; if not, write to the Free Software
+; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+;
+;;
+
+;; auxiliar functions for argument conversion
+(define argsym->string
+ (lambda (arg)
+ (cond ((symbol? arg) (symbol->string arg))
+ ((string? arg) arg)
+ (else (error "Wrong argument type" arg)))))
+
+(define argnsym->string
+ (lambda (arg)
+ (cond ((null? arg) "")
+ ((pair? arg) (argsym->string (car arg)))
+ (else (argsym->string arg)))))
+
+(define argnum->string
+ (lambda (arg)
+ (cond ((number? arg) (number->string arg))
+ ((string? arg) arg)
+ (else (error "Wrong argument type" arg)))))
+
+(define argnnum->string
+ (lambda (arg)
+ (cond ((null? arg) "")
+ ((pair? arg) (argnum->string (car arg)))
+ (else (argnum->string arg)))))
+
+;;; mixvm commands
+
+; preg
+(define mix-preg
+ (lambda (. reg)
+ (mixvm-cmd "preg" (argnsym->string reg))))
+
+; sreg
+(define mix-sreg
+ (lambda (reg val) (mix-set-reg! reg val)))
+
+; pmem
+(define mix-pmem
+ (lambda (no)
+ (mixvm-cmd "pmem" (argnum->string no))))
+
+; smem
+(define mix-smem
+ (lambda (cell value) (mix-set-cell! cell value)))
+
+; pall
+(define mix-pall (lambda () (mixvm-cmd "pall" "")))
+
+; pc
+(define mix-pc (lambda () (mixvm-cmd "pc" "")))
+
+; pflags
+(define mix-pflags (lambda () (mixvm-cmd "pflags" "")))
+
+; sover
+(define mix-sover
+ (lambda (val)
+ (let ((bval (if val #t #f)))
+ (mix-set-over! bval))))
+
+; psym
+(define mix-psym
+ (lambda (. sym)
+ (mixvm-cmd "psym" (argnsym->string sym))))
+
+; ssym
+(define mix-ssym
+ (lambda (sym value)
+ (mixvm-cmd "ssym"
+ (string-append
+ (argsym->string sym) " " (argnum->string value)))))
+
+; run
+(define mix-run
+ (lambda (. file)
+ (mixvm-cmd "run" (argnsym->string file))))
+
+; next
+(define mix-next
+ (lambda (. no)
+ (mixvm-cmd "next" (argnnum->string no))))
+
+; load
+(define mix-load
+ (lambda (file)
+ (mixvm-cmd "load" (argsym->string file))))
+
+; compile
+(define mix-compile
+ (lambda (. file)
+ (mixvm-cmd "compile" (argnsym->string file))))
+
+; devdir
+(define mix-devdir
+ (lambda (. dir)
+ (mixvm-cmd "devdir" (argnsym->string dir))))
+
+; edit
+(define mix-edit
+ (lambda (. file)
+ (mixvm-cmd "edit" (argnsym->string file))))
+
+; help
+(define mix-help
+ (lambda (. cmd)
+ (mixvm-cmd "help" (argnsym->string help))))
+
+; pasm
+(define mix-pasm (lambda () (mixvm-cmd "pasm" "")))
+
+; sasm
+(define mix-sasm
+ (lambda (path)
+ (mixvm-cmd "sasm" (argsym->string path))))
+
+; pedit
+(define mix-pedit (lambda () (mixvm-cmd "pedit" "")))
+
+; sedit
+(define mix-sedit
+ (lambda (path)
+ (mixvm-cmd "sedit" (argsym->string path))))
+
+; sbp
+(define mix-sbp
+ (lambda (line)
+ (mixvm-cmd "sbp" (argnum->string line))))
+
+; cbp
+(define mix-cbp
+ (lambda (line)
+ (mixvm-cmd "cbp" (argnum->string line))))
+
+; sbpa
+(define mix-sbpa
+ (lambda (addr)
+ (mixvm-cmd "sbpa" (argnum->string addr))))
+
+; cbpa
+(define mix-cbpa
+ (lambda (addr)
+ (mixvm-cmd "cbpa" (argnum->string addr))))
+
+
+; sbpc
+(define mix-sbpc (lambda () (mixvm-cmd "sbpc" "")))
+
+; cbpc
+(define mix-cbpc (lambda () (mixvm-cmd "cbpc" "")))
+
+; sbpo
+(define mix-sbpo (lambda () (mixvm-cmd "sbpo" "")))
+
+; cbpo
+(define mix-cbpo (lambda () (mixvm-cmd "cbpo" "")))
+
+; sbpm
+(define mix-sbpm
+ (lambda (cell)
+ (mixvm-cmd "sbpm" (argnum->string cell))))
+
+; cbpm
+(define mix-cbpm
+ (lambda (cell)
+ (mixvm-cmd "cbpm" (argnum->string cell))))
+
+; sbpr
+(define mix-sbpr
+ (lambda (reg)
+ (mixvm-cmd "sbpr" (argsym->string reg))))
+
+; cbpr
+(define mix-cbpr
+ (lambda (reg)
+ (mixvm-cmd "cbpr" (argsym->string reg))))
+
+; pbt
+(define mix-pbt
+ (lambda (. num)
+ (mixvm-cmd "pbt" (argnnum->string num))))
+
+; timing
+(define mix-timing
+ (lambda (. on)
+ (mixvm-cmd "timing" (cond ((null? on) "")
+ (on "on")
+ (else "off")))))
+
+; timing
+(define mix-tracing
+ (lambda (. on)
+ (mixvm-cmd "tracing" (cond ((null? on) "")
+ (on "on")
+ (else "off")))))
+
+; w2d
+(define mix-w2d
+ (lambda (w)
+ (mixvm-cmd "w2d" w)));
+
+; weval
+(define mix-weval
+ (lambda (exp)
+ (mixvm-cmd "weval" (argsym->string exp))))
diff --git a/mixguile/mixguile.scm b/mixguile/mixguile.scm
new file mode 100644
index 0000000..664c61b
--- /dev/null
+++ b/mixguile/mixguile.scm
@@ -0,0 +1,24 @@
+;; -*-scheme-*- -------------- mixguile.scm :
+; mixguile bootstrap file
+; ------------------------------------------------------------------
+; Last change: Time-stamp: "01/08/23 00:16:53 jao"
+; ------------------------------------------------------------------
+; Copyright (C) 2001 Free Software Foundation, Inc.
+;
+; This program is free software; you can redistribute it and/or modify
+; it under the terms of the GNU General Public License as published by
+; the Free Software Foundation; either version 2 of the License, or
+; (at your option) any later version.
+;
+; This program is distributed in the hope that it will be useful,
+; but WITHOUT ANY WARRANTY; without even the implied warranty of
+; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+; GNU General Public License for more details.
+;
+; You should have received a copy of the GNU General Public License
+; along with this program; if not, write to the Free Software
+; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+;
+;;
+
+(load "mixguile-commands.scm")
diff --git a/mixguile/mixguile_main.c b/mixguile/mixguile_main.c
index 46a35f1..de9bfa4 100644
--- a/mixguile/mixguile_main.c
+++ b/mixguile/mixguile_main.c
@@ -1,4 +1,4 @@
-/* -*-c-*- -------------- mixguile.c :
+/* -*-c-*- -------------- mixguile_main.c :
* Main function for mixguile, the MIX Guile shell
* ------------------------------------------------------------------
* Last change: Time-stamp: "01/08/22 01:20:01 jao"
@@ -23,7 +23,7 @@
#include <stdlib.h>
#include <stdio.h>
-#include <mixguile/mixguile.h>
+#include "mixguile.h"
static void
inner_main_ (int argc, char *argv[])
diff --git a/mixutils/Makefile.am b/mixutils/Makefile.am
index 7e1313d..1c8cdd5 100644
--- a/mixutils/Makefile.am
+++ b/mixutils/Makefile.am
@@ -14,17 +14,7 @@ INCLUDES = -I$(includedir)
LDADD = $(top_builddir)/mixlib/libmix.a $(top_builddir)/lib/libreplace.a \
$(top_builddir)/mixguile/libmixguile.a $(INTLLIBS)
-if MAKE_GUILE
-
-bin_PROGRAMS = mixasm mixvm mixguile
-mixguile_SOURCES = mixguile.c
-
-else
-
bin_PROGRAMS = mixasm mixvm
-
-endif
-
mixasm_SOURCES = mixasm.c mixasm_comp.h mixasm_comp.c
mixvm_SOURCES = mixvm.c mixvm_loop.c mixvm_command.h mixvm_command.c
diff --git a/po/ChangeLog b/po/ChangeLog
index bdea604..da3c46e 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog
@@ -1,3 +1,43 @@
+2001-08-23 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-22 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-22 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-22 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-22 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-21 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-20 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-20 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-20 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
+2001-08-20 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.39.
+
2001-08-17 gettextize <bug-gnu-utils@gnu.org>
* Makefile.in.in: Upgrade to gettext-0.10.39.