Meaning of -i and -hidir

Domínguez, Facundo facundo.dominguez at
Wed Oct 27 17:28:30 UTC 2021

Thanks everyone for your thoughts. I have opened an issue here:


On Sat, Oct 23, 2021 at 11:18 PM Evan Laforge <qdunkan at> wrote:

> The issue uses consistency with -odir and -hieDir as a
> rationalization.  I think it's not quite right because inputs can have
> a search path while outputs don't, but if it is true that -odir
> simultaneously sets the output and input dir for `*.o`, that seems
> confusing too.  Shouldn't -odir set *only* output, and all inputs
> should either be lumped under the `-i` search path, or even split up
> into separate flags as outputs are?  If you are building in --make
> mode then you will naturally want to read .o files from the last place
> you wrote them, but in that case you can explicitly say so.  I'm not
> actually advocating for this since I don't have a use for it at the
> moment, and I don't want to potentially break every single user of ghc
> --make, but it seemed to me that the argument for consistency could
> run the other direction.
> I think this issue is coming up due to a mismatch between the
> traditional Make style builds which assume a single mutable input and
> output directory, and the newer functional / hermetic style builds
> which require immutable inputs and a mutable output.  It's a familiar
> concept, just transposed to the file system!
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the ghc-devs mailing list