[comp.sources.bugs] make for pc's

aob@ausmelb.oz.au (Andrew Bulka) (09/16/87)

There seems to be a bug in the version of `make' suppied with curses for
the ibm pc.  A line like:

.c.obj: ; cl -c $*.c

is read but ignored, the default rule still remaining as 'cc ...'.  To quote
he manual:

>  The rule to create a file with suffix s2 that depends on a similarly named
>  file with suffix s1 is specified as an entry for the `target' s1s2.  In
>  such an entry, the special macros
>
>  	$* stands for the target name with suffix deleted,
>	$@ for the full target name,
>	$< for the complete list of prerequisites,
>	$? for the list of prerequisites that are out of date.
>
>   For example, a rule for making optimized `.obj' files from `.c' files is
>
>          .c.obj: ; cc -c -O -o $@ $*.c
>
>   Certain macros are used by the default inference rules to communicate op-
>   tional arguments to any resulting compilations. 

This doesn't seem to work despite every other feature of this wonderful
implementation of 'make' working.  It is a pity, meaning that one
cannot change the *default* inference rules, 'cc' being inappropriate 
for Microsoft C.

-- 
Andy Bulka,		   ----=----  ACSnet: aob@ausmelb.oz
Austec International Ltd,  ---===---  UUCP: ...!munnari!ausmelb.oz!aob	
344 St Kilda Rd,	   --== ==--  ARPA: aob%ausmelb.oz.au
Melbourne 3004 AUSTRALIA   -=== ===-  Phone: +61 3 699 4511	
D

peter@sugar.UUCP (Peter da Silva) (09/21/87)

In article <422@ausmelb.oz.au>, aob@ausmelb.UUCP writes:
> There seems to be a bug in the version of `make' suppied with curses for
> the ibm pc.  A line like:
> 
> .c.obj: ; cl -c $*.c
> 
> is read but ignored, the default rule still remaining as 'cc ...'.  To quote
> he manual:

In practice, you're likely to be better served with this:

.c.obj:
	c -c $*.c

since the ';' there is just syntactic sugar not implemented in most makes.
-- 
-- Peter da Silva `-_-' ...!hoptoad!academ!uhnix1!sugar!peter
--                 'U`  Have you hugged your wolf today?