Then for the makefile below, I think, it should work equally well with MinGW and MSYS make. Isn't it?


################################################################################
# Automatically-generated file. Do not edit!
################################################################################

-include ../makefile.init

RM := rm -rf

# All of the sources participating in the build are defined here
-include sources.mk
-include subdir.mk
-include objects.mk

ifneq ($(MAKECMDGOALS),clean)
ifneq ($(strip $(C_DEPS)),)
-include $(C_DEPS)
endif
endif

-include ../makefile.defs

# Add inputs and outputs from these tool invocations to the build variables 

# All Target
all: libsparcsim.a

# Tool invocations
libsparcsim.a: $(OBJS) $(USER_OBJS)
@echo 'Building target: $@'
@echo 'Invoking: GCC Archiver'
ar -r  "libsparcsim.a" $(OBJS) $(USER_OBJS) $(LIBS)
@echo 'Finished building target: $@'
@echo ' '

# Other Targets
clean:
-$(RM) $(OBJS)$(C_DEPS)$(ARCHIVES) libsparcsim.a
-@echo ' '

.PHONY: all clean dependents
.SECONDARY:

-include ../makefile.targets


On 18 August 2012 21:05, Greg Chicares <gchicares@sbcglobal.net> wrote:
[reformatted--please don't top post]

On 2012-08-18 14:24Z, Dipanjan Das wrote:
>
> On 18 August 2012 19:37, LRN <lrn1986@gmail.com> wrote:
[...]
>> You're not forced to use MSYS make when using MinGW toolchain. You are
>> forced to use MSYS make when using makefiles that are written with
>> POSIX in mind (mingw32-make won't work on them correctly). Which is
>> 99.9% of makefiles of all packages that use configure scripts (which
>> is why MSYS exists).
>
> Thanks. My questions are almost answered. The only point I need to know is,
> apart form POSIX compliant make scripts, what other form(s) of makefiles
> exist(s) which is/are accepted by mingw32-make?

Here's a makefile that assumes a POSIX shell:

all:
        cp foo bar

Here's one that assumes CMD.EXE:

all:
        copy foo bar

The difference isn't that the first "complies" with POSIX, but rather
that it *assumes* a POSIX environment (that provides 'cp')--just as the
second assumes CMD.EXE (which provides 'copy').

People are often surprised to learn that 'make' itself does very little.
In the examples above, it checks whether a file named 'all' exists, and
if it doesn't, then it passes a string like "cp foo" or "copy foo" to
whatever default command processor your environment provides. That's all
it does; 'make' itself doesn't copy a file named "foo".


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
MinGW-users mailing list
MinGW-users@lists.sourceforge.net

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
We ask that you be polite and do the same.  Disregard for the list etiquette may cause your account to be moderated.

_______________________________________________
You may change your MinGW Account Options or unsubscribe at:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:mingw-users-request@lists.sourceforge.net?subject=unsubscribe



--

Thanks & Regards,

Dipanjan