Ti Kan wrote:


> 1. Using UnixWare's 'make' command instead of GNU make, I now get this
>    error:
> 
> --------------------
> $ make
> UX:make: WARNING: No suffix list.
> Making all in include
> UX:make: ERROR: Must be a separator on rules line 359 (bu39).
> *** Error code 1 (bu21)
> UX:make: ERROR: fatal error.
> --------------------
> 
>    Looking in include/Makefile, these are the offending lines near
>    the end of the file:
> 
> --------------------
>     SUBDIRS += Motif-2.0
> #    SUBDIRS += Motif-2.1
> --------------------
> 
>    I think the += operator is a GNU make extension that is not universally
>    supported by all 'make' programs.

The actual cause is this fragment from include/Makefile.am, which
miss-uses automake conditionals (Rsp. trips a weakness of automake,
depending on your POV).

SUBDIRS = Motif-1.2
if Version_2_0
    SUBDIRS += Motif-2.0
endif
if Version_2_1
    SUBDIRS += Motif-2.1
endif

With gnumake this remains functional, because then SUBDIRS += .. is
functional, with makes not supporting += this will fail.

A portable solution would be to apply something similar to this:

if Version_2_0
MOTIF20 = Motif-2.0
endif
if Version_2_1
MOTIF21 = Motif-2.1
endif

SUBDIRS = Motif-1.2 $(MOTIF20) $(MOTIF21)

Ralf
-- 
Ralf Corsepius 
Forschungsinstitut fuer Anwendungsorientierte Wissensverarbeitung
(FAW)
Helmholtzstr. 16, 89081 Ulm, Germany     Tel: +49/731/501-8690
mailto:[EMAIL PROTECTED]           FAX: +49/731/501-999  
http://www.faw.uni-ulm.de

Reply via email to