Help with Build Engine/Build Definition
Question:
How do I use a build configuration defined for a component when executing a build through the build engine?
I have several components and each of them has a set of build configurations for various targets (X86, PowerPC, etc). Each of those build configurations contains a whole slew of environment variables that are needed by the Make system to actually build the software. However, I have been unable to figure out how I tell the build definition to specifically use a build configuration when building.
Thanks,
Chris
How do I use a build configuration defined for a component when executing a build through the build engine?
I have several components and each of them has a set of build configurations for various targets (X86, PowerPC, etc). Each of those build configurations contains a whole slew of environment variables that are needed by the Make system to actually build the software. However, I have been unable to figure out how I tell the build definition to specifically use a build configuration when building.
Thanks,
Chris
3 answers
On 2010/09/24 8:53, cfagyal wrote:
"All problems in computer science can be solved by another level of
indirection."
Write a script that finds the correct set of environment variable to
set, sets them, and then calls Make. Have the build definition call
that script rather than calling Make directly.
How do I use a build configuration defined for a component when
executing a build through the build engine?
I have several components and each of them has a set of build
configurations for various targets (X86, PowerPC, etc). Each of
those build configurations contains a whole slew of environment
variables that are needed by the Make system to actually build the
software. However, I have been unable to figure out how I tell the
build definition to specifically use a build configuration when
building.
"All problems in computer science can be solved by another level of
indirection."
Write a script that finds the correct set of environment variable to
set, sets them, and then calls Make. Have the build definition call
that script rather than calling Make directly.
Take a look at
http://jazz.net/forums/viewtopic.php?t=9178&highlight=sudhakarf. The
example there is to invoke msbuild or devenv from a "Command line Build"
Jazz Build Definition. If I understand you right, you can setup a number
of properties that you can modify on the fly when requesting a build. In
the example in the post, I use " ${config}" to determine which
configuration (Release, Debug, X86, x64 etc) will be built. his property
is passed to build.bat as %5.
Also see https://jazz.net/wiki/bin/view/Main/CppBuild
HTH
On 24/09/2010 9:23 PM, cfagyal wrote:
http://jazz.net/forums/viewtopic.php?t=9178&highlight=sudhakarf. The
example there is to invoke msbuild or devenv from a "Command line Build"
Jazz Build Definition. If I understand you right, you can setup a number
of properties that you can modify on the fly when requesting a build. In
the example in the post, I use " ${config}" to determine which
configuration (Release, Debug, X86, x64 etc) will be built. his property
is passed to build.bat as %5.
Also see https://jazz.net/wiki/bin/view/Main/CppBuild
HTH
On 24/09/2010 9:23 PM, cfagyal wrote:
Question:
How do I use a build configuration defined for a component when
executing a build through the build engine?
I have several components and each of them has a set of build
configurations for various targets (X86, PowerPC, etc). Each of
those build configurations contains a whole slew of environment
variables that are needed by the Make system to actually build the
software. However, I have been unable to figure out how I tell the
build definition to specifically use a build configuration when
building.
Thanks,
Chris
Hi,
an addition (increasing useability) would be to create different Build definitions for the different environments. The simplest would be to create a build definition with a switch e.g. ${config} and pass that to the CMD call. The CMD would use the switch to determine the environment to be set. The various build definitions would just provide the one value for the switch for the configuration they care about.
The advantages are:
- no manual input needed for building
- easy to understand which configuration the build was done for
Just a thought.
Ralph
an addition (increasing useability) would be to create different Build definitions for the different environments. The simplest would be to create a build definition with a switch e.g. ${config} and pass that to the CMD call. The CMD would use the switch to determine the environment to be set. The various build definitions would just provide the one value for the switch for the configuration they care about.
The advantages are:
- no manual input needed for building
- easy to understand which configuration the build was done for
Just a thought.
Ralph
Take a look at
http://jazz.net/forums/viewtopic.php?t=9178&highlight=sudhakarf. The
example there is to invoke msbuild or devenv from a "Command line Build"
Jazz Build Definition. If I understand you right, you can setup a number
of properties that you can modify on the fly when requesting a build. In
the example in the post, I use " ${config}" to determine which
configuration (Release, Debug, X86, x64 etc) will be built. his property
is passed to build.bat as %5.
Also see https://jazz.net/wiki/bin/view/Main/CppBuild
HTH
On 24/09/2010 9:23 PM, cfagyal wrote:
Question:
How do I use a build configuration defined for a component when
executing a build through the build engine?
I have several components and each of them has a set of build
configurations for various targets (X86, PowerPC, etc). Each of
those build configurations contains a whole slew of environment
variables that are needed by the Make system to actually build the
software. However, I have been unable to figure out how I tell the
build definition to specifically use a build configuration when
building.
Thanks,
Chris