[zeromq-dev] CMake adequacy
Kelly Brock
Kerby at inocode.com
Tue Oct 19 15:40:04 CEST 2010
http://pastebin.com/6iux5QCS (name this zeromq_project.lua)
I believe that is my latest premake script for 0mq, from that you
can generate projects for all sorts of IDE's. Typically I use VS2008/2010
(2010 requires head of premake-dev branch), XCode3 and when I'm remoted,
gmake make files. Note that in order to statically build without warnings I
have made the addition we talked about in terms of ZMQ_STATIC locally to
zmq. I'll figure out the git patch stuff and submit it hopefully as soon as
work calms down.
The script is tied up with my build infrastructure so you need to
get http://pastebin.com/QkF6fQs4 (premake4.lua) in order to use it. Fix the
paths in the zeromq_project.lua to point where you have your source
directory, make sure you have premake4 in your path and then you can
generate your solutions/projects/whatever. From a terminal in the same
directory as the premake4.lua you just type the following:
premake4 vs2005
premake4 vs2008
premake4 vs2010
premake4 gmake
etc
This has been working without problems and I've integrated it with
my continuous integration server. A little bit of python to integrate with
source control, some AppleScript, and VMWare. My source control box builds
the windows targets (haven't actually tried the x64 though it seems to
build), OsX targets and runs a quick unit test and e-mails about failures
anytime I commit changes. When/if I have to get into Linux land, using a
premake script makes it very simple to add, even if I just want to call the
normal configure/make stuff.
KB
> -----Original Message-----
> From: zeromq-dev-bounces at lists.zeromq.org [mailto:zeromq-dev-
> bounces at lists.zeromq.org] On Behalf Of Martin Sustrik
> Sent: Tuesday, October 19, 2010 1:21 AM
> To: ZeroMQ development list
> Cc: ZeroMQ development list
> Subject: Re: [zeromq-dev] CMake adequacy
>
>
> > Feel free to post a page on the wiki explaining how you use premake.
> > It would be helpful IMHO.
> >
> I've had a brief look at what premake does. AFAIU it generates MSVC
> projects. Which seems much better than having a large MSVC project
> edited via GUI and stored in the git.
As mentioned above, it does a whole lot more than that since it
really is nothing more than command line lua extended with make like
abilities. My entire build infrastructure is written in lua minus the
interfacing bits I mentioned for source control and VMWare. That's the
benefit to having a real language available for things such as this but
without quirky and hard to figure out syntax/behavior.
Don't get me wrong, Premake4 has a couple warts, but they are very
minor compared to the CMake language imo.
KB
More information about the zeromq-dev
mailing list