I am working on streamlining our software build process, automating everything from svn checkout to building the final installer. I looked at the docs section about the InstallJammer command-line interface, and didn't immediately find any way to pass arguments to a control script (using the --control-script command-line option). My goal is to be able to enable/disable installer components or filegroups from the InstallJammer command-line, based on the current build configuration (we use CMake for our configuration software). Well, I saw there wasn't any explicit method to pass arguments to the control-script, so my first workaround was to define "temporary" virtual text strings like "ENABLE_COMPONENT_X" by using the -D<variable> command-line switch. I don't want these variables stored in the actual mpi project file, because they are only used in automatic builds and don't have any meaning when you manually open InstallJammer to build the installer. Anyway, I determined that this just doesn't work if the virtual variable isn't already created ahead of time in the project file. I am able to set virtual text strings via "-D<variable>" only if the variable was already defined in the project.
I guess this is a feature request for the InstallJammer author... Can we change the behavior of the -D<variable> implementation, in that if the variable is not yet defined in the project, then define it and set the value to the value passed in the command-line? In the meantime, as a workaround I will have to store all these temp virtual text strings in the project file.
Senior Software Engineer
D&S Consultants, Inc