This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Visual Studio Makefiles


> Do anyone of you know what is the grammar of the Microsoft project files/
> Gnu makefiles? What do you think about a converter based on ANTLR ( a
> flex/Yacc like with a lot of enhancements)
> 

I was looking at something like this the other day and was unable to find
much of a grammar.  The basics are pretty easy to work off of, e.g.:

Rule:

target: deps
<tab>	commands
.
.
.


target: deps
<tab>	commands
.
.
.

This gives us:

rule -> target:<sp>deplist<CR>commandlist
target -> [a-z][A-Z]		<--- digits?
deps -> deplist|objectfilelist|targetlist|e
commandlist -> commandlist|command
command -> <tab>command
objectfilelist -> objectfilelist|object
targetlist -> targetlist|target


Combine this with macros:

MACRO(foo, bar)

And you have most of a makefile.

This sound about right to everyone?  The only problem that I have is
distinguishing Macros from targets... managing internal rules would be
interesting too, but basically this looks right afaict.

Comments?

-eric

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]