Date: Sun, 10 Dec 1995 23:14:50 +0000 () From: James Raynard <james@parody.tecc.co.uk> To: freebsd-ports@freebsd.org Cc: gpalmer@freebsd.org Subject: GNU Smalltalk patches Message-ID: <Pine.BSF.3.91.951210221945.1671A-100000@parody.tecc.co.uk>
next in thread | raw e-mail | index | archive | help
Hello, here are some patches for the Smalltalk port. patch-ab enables the Emacs interactor to work; this allows you to edit Smalltalk files in one window and have this window interacting with the interpreter running in another window! To get this working, copy the resulting st.el file into your Emacs Lisp directory (/usr/local/lib/emacs/19.28/lisp on my system). patch-ac enables readline, so that Emacs-style commands can be used to edit the command-line in the Smalltalk interpreter. patch-ad forces compilation with optimisation instead of debugging flags; as version 1.1.1 is nearly 5 five years old, hopefully it should be fairly stable by now 8-) Finally patch-ae should allow stix to work. To get this running, change into the stix directory and build it by hand as for mst:- ./config.mst fbsd-2; make; ./mst -iV The install process could also be made a little more friendly (particularly as 'makeinfo mst.texinfo' doesn't work properly!). How about something like (warning - untested) do_install: @echo "Installing Smalltalk interpreter and method definitions..." @(cd ${WRKSRC}; cp mst ${PREFIX}/bin; cp *.st ${PREFIX}/lib/smalltalk) @echo "To complete the installation of GNU Smalltalk, do" @echo " cd ${WRKSRC}; ./mst -iV" @echo "to build the image and test the interpreter." @echo @echo "When you are satisfied everything works, do Control-D" @echo "to quit and copy mst.im to ${PREFIX}/lib/smalltalk." @echo @echo "If emacs is installed, you may also wish to copy the st.el @echo "file to the Emacs Lisp directory to enable Interactor mode." It would be nice to change the top-level Makefile to add the stix target. (To avoid re-inventing the wheel, are there any other ports which have targets in different directories that I can look at?) Or perhaps stix should be the target instead? Comments welcomed! James Segmentation fault (core dumped): cannot find file '.signature' patch-ab ======== *** st.el.orig Sun Dec 10 17:55:54 1995 --- st.el Sun Dec 10 17:42:16 1995 *************** *** 708,720 **** nil (if proc (delete-process proc)) (setq proc (apply 'start-process name buffer ! (concat exec-directory "env") ;; I'm choosing to leave these here (format "TERMCAP=emacs:co#%d:tc=unknown:" (screen-width)) "TERM=emacs" "EMACS=t" - "-" "mst" switches)) (setq name (process-name proc))) --- 708,719 ---- nil (if proc (delete-process proc)) (setq proc (apply 'start-process name buffer ! "/usr/bin/env" ;; I'm choosing to leave these here (format "TERMCAP=emacs:co#%d:tc=unknown:" (screen-width)) "TERM=emacs" "EMACS=t" "mst" switches)) (setq name (process-name proc))) patch-ac ======== *** Makefile.orig Sun Dec 10 18:08:36 1995 --- Makefile Sun Dec 10 17:17:59 1995 *************** *** 56,62 **** CPP = cc -E # Uncomment this line to enable the ultra-winning readline-reader ! #READLINE = -DUSE_READLINE ###################################################################### ###################################################################### --- 56,62 ---- CPP = cc -E # Uncomment this line to enable the ultra-winning readline-reader ! READLINE = -DUSE_READLINE ###################################################################### ###################################################################### patch-ad ======== *** ymakefile.orig Sun Dec 10 17:56:09 1995 --- ymakefile Sun Dec 10 17:57:22 1995 *************** *** 121,130 **** /* Compilation flags definitions */ CFLAGS_NORMAL = -g EXTRA_CC_FLAGS CFLAGS_PROFILE = -g -pg -DUSE_MONCONTROL EXTRA_CC_FLAGS ! CFLAGS_OPTIMIZE = -O -DOPTIMIZE EXTRA_CC_FLAGS /* Actual compilation flags and compiler definition */ ! CFLAGS = $(CFLAGS_NORMAL) $(READLINEDEF) --- 121,130 ---- /* Compilation flags definitions */ CFLAGS_NORMAL = -g EXTRA_CC_FLAGS CFLAGS_PROFILE = -g -pg -DUSE_MONCONTROL EXTRA_CC_FLAGS ! CFLAGS_OPTIMIZE = -O2 -fno-strength-reduce -fomit-frame-pointer -DOPTIMIZE EXT RA_CC_FLAGS /* Actual compilation flags and compiler definition */ ! CFLAGS = $(CFLAGS_OPTIMIZE) $(READLINEDEF) patch-ae ======== *** stix/Makefile.orig Sun Dec 10 18:06:36 1995 --- stix/Makefile Sun Dec 10 17:09:12 1995 *************** *** 56,62 **** CPP = cc -E # Uncomment this line to enable the ultra-winning readline-reader ! #READLINE = -DUSE_READLINE ###################################################################### ###################################################################### --- 56,62 ---- CPP = cc -E # Uncomment this line to enable the ultra-winning readline-reader ! READLINE = -DUSE_READLINE ###################################################################### ###################################################################### *************** *** 88,94 **** # Edit this to reflect the path on your system where the X include files # may be found. ! XINCLUDE = /usr/include/X11 socket.o: socket.c $(CC) -I$(XINCLUDE) $(CFLAGS) -DUNIXCONN -c socket.c --- 88,94 ---- # Edit this to reflect the path on your system where the X include files # may be found. ! XINCLUDE = /usr/X11R6/include socket.o: socket.c $(CC) -I$(XINCLUDE) $(CFLAGS) -DUNIXCONN -c socket.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.91.951210221945.1671A-100000>