> From: =?iso-8859-2?Q?Hol=FD_Michal?= <[EMAIL PROTECTED]>
> Date: Wed, 22 Oct 2008 20:01:26 +0200
> 
> Make should generate command like:
> msp430-gcc -g -O2 -mmcu=msp430x1121 -D_GNU_ASSEMBLER_ -nostartfiles -nostand
> artlibs RTC11x-TA.S -o RTC11x-TA
> 
> But it does not. (if I type previous command directly by hand, it's OK)
> 
> But make generates only
> msp430-gcc RTC11x-TA.s -o RTC11x-TA
> (with lower-case .s)
> This command start assembler without preprocessor, and it is wrong.
> 
> I think there is following issue: Make tries, if intermediate product
> (RTC11x-TA.s) exists.
> And Windows answers YES (because for WIN the RTC11x-TA.s exists - it is the
> same file as RTC11x-TA.S).
> So make skips the preprocessing and start the assembler directly.

Yes, that's probably the reason, although if you run Make with -d
switch, you will see yourself what it decides to do and why.

> If I define variable ASFLAGS=something, it appears in the command.
> e.g. If I define
> ASFLAGS= -g -O2 -mmcu=msp430x1121 -D_GNU_ASSEMBLER_ -nostartfiles -nostandar
> tlibs
> the command line looks like
> msp430-gcc -g -O2 -mmcu=msp430x1121 -D_GNU_ASSEMBLER_ -nostartfiles -nostand
> artlibs RTC11x-TA.s -o RTC11x-TA
> (nearly OK, but with lower-case .s)
> 
> 
> Is there any simple solution of this problem?

Well, one simple solution is to provide an explicit rule for building
each one of $(PROGS), instead of relying on implicit rules built into
Make.


_______________________________________________
Make-w32 mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/make-w32

Reply via email to