Ryan,
Did you read this: http://llvm.org/docs/CommandLine.html#valrequired ?
On Thu, 2007-03-08 at 06:08 -0600, Ryan M. Lefever
wrote:> In the CommandLine parser there is a way to specify that a command line
> option is required. Is there a way to specify that the option is
> required only if some other option is set?
I don't think it currently handles this, although something like
"cl::MustFollow(OtherOption)" could be added. Alternatively, you could
provide a custom parser.
>
> In particular, I want to build a transformation T that opt loads. So, I
> when I register T with opt a boolean command line option is created. If
> the option is set by the user, then the transformation is run. However,
> T requires the user to specify the names of some files. So, I can use
> cl::opt<string> to create command line options F1, F2, and F3 with
which
> the user can specify those file names. If I define F1, F2, and F3 as
> cl::required, they are required even if transform T is not being run.
> Is there a way to make the file command line arguments required
> contingent on the presence of transform T's command line flag?
Not that I know of. However, it would probably be acceptable to make
them optional and emit an error if they aren't given when -T is
specified.
Reid.
>
> Thanks in advance,
> Ryan
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev