[comp.emacs] Problems making uEmacs 3.10 on AOS/VS, VMS, DOS

rab@murdu.oz (Richard Alan Brown) (09/18/89)

Some time back I copied the EMACS 3.10 source files from the net.
I had previously made uEmacs 3.9e on our DOS PCs, our DG MV/8000, and a
Vax running VMS. However, with the new version, 3.10, NONE of these
can be easily made. Here are the problems:

	- Despite the inclusion of extra support, I cannot successfully make
	  3.10 on our MV/8000, either under MV/UX or AOS/VS. The 'support'
	  file for AOS/VS will not even compile without errors!

	- On VMS, there are numerous routines missing (such as getffile()).
	  I also get a lot of 'attribute conflict' errors in the link. I also
	  note that the ESTRUCT.H file requires one to set one of the various
	  C compiler flags to be non-zero, but there is no flag for VMS-C!!

	- Under MS-DOS, the supplied makefiles failed under both MSC and
	  Turbo-C.

So, as you can see, there seem to be a lot of problems with the new version.
HELP! I'd love to have the new version running! (I have a copy of the DOS
executable, so that's no longer a problem).

As an aside, it would be nice if the OS contributors make nice scripts
for making uEmacs, e.g. MAKE_AOSVS.CLI, MAKE_VMS.COM, ...

						Richard Brown
						(rab@murdu.mu.OZ.AU)

				(or: rab@murdu.ucs.unimelb.OZ.AU i think)

hsw@TYCHO.NCSC.MIL (Howard Weiss) (09/19/89)

>From Richard Brown:
>- On VMS, there are numerous routines missing (such as getffile()).
>  I also get a lot of 'attribute conflict' errors in the link. I also
>  note that the ESTRUCT.H file requires one to set one of the various
>  C compiler flags to be non-zero, but there is no flag for VMS-C!!
 
If you read the section entitled Building MicroEMACS for VMS in the
emacs.txt file that comes as part of the distribution, it fills in the
details that you are missing.  I have just successfully compiled and am
running microEMACS 3.10 on VAX VMS 5.1.1.  I agree, the code could have
been a lot cleaner in the VMS area, and a .com file would have been nice,
but the price was right and I can't complain too much or too loudly.

In answer to you questions:

	getffile is not needed if you set COMPLET to 0 in estruct.h.
Completion does not work yet for VMS so you can either set COMPLET to 0 or
put in dummy functions for getffile and getnfile that do nothing.  The
attribute conflicts are in main - the conflicts are in epath.h and edef.h.
The compiler flags should all be 0.  I had to add another 0 switch to
estruct.h to satisfy the compiler for a stray #if.  Also, my VAX-C compiler
did not #if A | B types of constructs (most of these were #if BSD | V7,
etc).  By commenting out the or'd portion, the compiler was satified and
the code worked.  In order to compile I used the emacs.opt file as a guide
and used link emacs/option/share to link it all together.  Oh yea, char.obj
had to be added to emacs.opt to supply islower, isupper, etc.

Howard Weiss
hsw at tycho.ncsc.mil
-------