wafeperl.tar.gz contains the necessary code to link Wafe 0.96 together with Perl 4.036. It allows to build a version of Perl that has a few additional commands that allow to build Xt based applications directly in Perl. The wafeperl kit can be used to build either an Athena Widget based version (wafeperl) or an OSF/Motif based version (mofeperl). Wafe was originally developed to provide graphical user frontends for programs in arbitrary programming languages. When Wafe is used as a frontend, it executes as a separate process (coprocess) linked via sockets to an application program. In the Wafe distribution (wafe-0.96.tar.gz) there are various examples how to use Wafe together with Perl. The applications ranges from various monitoring programs to news reader, mailer and ftp clients. The Wafe applications from the distribution can show how to run an Perl application as a subprocess of Wafe or Wafe as a subprocess of Perl. This kit offers a third possibility to use Wafe together with Perl by building an extended version of Perl, in which Wafe functions can be called as use subprograms of Perl and Perl functions can be called from wafe vice versa. So far, I've made no attempt to check, which kind of modifications are necessary in the mentioned wafe applications in order to run them with wafeperl. Perl programs that issue select calls, will not work as expected using the current version of wafeperl/mofeperl since this select will conflict with the Xt event loop. Changes: wafeperl-0.1 ... first public version of wafeperl wafeperl-0.2 - fixed a bug with Perl's stack pointer which was not restored correctly under certain circumstances. Thanks to the bug report from Adrian Phillips, who used extensively Xt timeout routines implemented as Perl subroutines in mofeperl, that triggered this problem. - new Perl command: &wafe_set(Tcl_Varname,Value) this command can be used to set a Tcl variable with the specified name to the given value, avoiding Tcl_Eval. There is no need to escape characters with special Tcl meaning (such as {}[]$\") Installation: Prerequesits: perl 4.036 (source) Wafe 0.96 (or newer; the current patchlevel of Wafe 0.96 is p5) wafeperl-0.2.tar.gz Wafe 0.96 can be obtained for example from ftp.wu-wien.ac.at:pub/src/X11/wafe/wafe-0.96.tar.gz Step 1: Build Wafe as indicated in the Wafe distribution Step 2: Build perl (we will need the .o files in the next step) Step 3: expand wafeperl-0.2.tar.gz in the source tree of perl 4.036 such you get an directroy structur like .../perl-4.036/lib/... .../perl-4.036/usub/... .../perl-4.036/wafeperl/... Step 4: cd to .../perl-4.036/wafeperl edit the Makefile to adjust library paths etc. LIBS and MLIBS should reflect the library paths and libraries of your .../wafe/src/Makefile. Step 5: make Note: if you want to build wafeperl AND mofeperl (say: first wafeperl and the mofeperl, then you have to cd to the wafe sources after building wafeperl, reconfigure the Imakefile to use Motif, do an xmkmf;make clean_version;make, before you switch back to the wafeperl directroy to "make mofeperl". i should really provide are libwafe.a and a libmofe.a to simplify this task. Have fun -gustaf