Next Previous Contents

4.2 Redirecting the compilation output(s)

The IDL compiler's output normally goes into a .hs file (and , possibly, a .c file), whose name is derived from the name of the input files. The -o whale option overrides the default behaviour and re-directs the output to the file whale instead.

If you should happen to give more than one input file on the command line, the use of the -o doesn't make any sense, so please don't (if you do, it will just be ignored).

On Win32 platforms, the option --output-tlb=foo.tlb redirects the type library output to the file foo.tlb.

The option --output-h=foo.h tells the compiler to output any C header file output to file foo.h. The default behaviour is for the name of the header file to be derived from the name of the Haskell output file.

The option -odir <dir> prepends the directory path dir to all output filenames.

Notice that if you invoke the compiler as follows:

exa$ ihc path/to/my.idl

HaskellDirect will output the generated files in the directory path/to. Should you want to put them in the current working directory instead, use "-odir .".

The option --output-module=<name> can be used to change the name of the Haskell module. For instance,

exa$ ihc --hugs path/to/my.idl -o myHugs.hs --output-module=My

the file myHugs.hs, but instead of deriving the name of the Haskell module from the output filename (MyHugs), My is used instead.


Next Previous Contents