[CMake] Setting environment variables in custom command

Robert Dailey rcdailey at gmail.com
Mon Dec 12 14:46:40 EST 2011


On Mon, Dec 12, 2011 at 1:31 PM, Michael Wild <themiwi at gmail.com> wrote:

> On 12/12/2011 08:28 PM, Robert Dailey wrote:
> > Hi,
> >
> > I'm creating a custom target in CMake 2.8.7 RC1 and running it in Visual
> > Studio 2008. I set an environment variable called BUILDBIN in the custom
> > command but for some reason my scripts that I invoke are not picking up
> > that environment variable. Am I doing something wrong? These custom
> > commands are starting to get pretty complex and I'm wondering if I
> > should pull out the logic into a batch file. What do you guys think?
> >
> [snip long code]
>
> Definitely batch file or, preferably CMake script. In CMake scripts,
> just assign to the ENV{VAR} variable and use execute_process().


CMake script would imply that it runs as part of the configuration process.
I can't build an installer until all binaries are compiled and linked, so
it needs to be a target in visual studio.

Problem with pushing this out to a batch file is that I only have 9
parameters maximum that I can use to pass CMake variables. I need more than
9, as you can see from the number of variables I use in the script I sent
you. I can't think of a good design for this. Not to mention I hate batch
files.

But moving it out to a batch file will guarantee that I can setup the
environment properly (set environment variables) and also when users change
the way the installer works, CMake won't need to be reconfigured, which is
a huge plus.

Any advice here on how I could setup my batch file to accept more than 9
parameters from CMake?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20111212/8a692384/attachment.htm>


More information about the CMake mailing list