How to specify the build output directory?
Mick Jordan
mick.jordan at oracle.com
Mon Oct 28 11:23:35 PDT 2013
On 10/28/13 11:03 AM, Volker Simonis wrote:
> Hi Mick,
>
> OpenJDK always had the ability to specify an alternative output
> direcory (ALT_OUTPUTDIR in the old build system or just the directory
> from which you call configure in the new build system). The same holds
> true for all GNU and autoconf configured software which actually
> strongly recommends not to build into the source directory.
>
> It may be that this is different for Maven which I'm not familiar at
> all with and which always seemed a little obscure to me. But anyway
> that only seems to work for Java-only code which is not the case here.
>
> Nevertheless thank you for pointing out the background of mx. I'll try
> and see how far I can get with you and Doug's hints.
>
> Regards,
> Volker
>
> PS: the big and ugly .hgignore file already seemed suspicious to me
> right after I cloned Graal for the first time:) Now I know why it is
> needed...
>
>
Generally, I would absolutely agree with you that build directories
should be completely separate from the source. In some sense that
happens in the Java-only side of the mx world in that the 'bin'
directory is separate from the 'src' directory and can be freely deleted
with 'rm -r' without consequence. As you surmise mx started off
supporting primarily Java in the Maxine VM research project. That system
had almost no native code, just one project. Even though we supported,
for a while, SPARC and x86 and Linux,MacOS and Solaris, we never put in
the support to build those from the same workspace, because the gain
didn't seem worthwhile. Developers typically worked on one architecture
and one OS. Our testing infrastructure did all the multi-platform tests,
all in separately cloned workspaces.
Now, in addition to adding Hotspot into the mix, we also have 'derived'
source created by annotation processors. In practice that code is
platform-independent, but it's really an 'output'.
Mick
More information about the graal-dev
mailing list