Different values of environment variables during build time and run time, eg. JAVA_HOME and PATH

Jian LUO jian.luo.cn at gmail.com
Tue Oct 11 09:38:49 UTC 2016


Hi,

Thanks for the explanation. That's exactly what comes first in my mind.
I've tried to customize the ant / jdk plugin by overriding the env method.
The doc string of BasePlugin.env reads "return a list with the execution
environment for building". However the result env applies both to build
time and to the generated wrapper nonetheless. How can i override runtime
only env in the plugin?

Jian

On Oct 11, 2016 09:53, "Didier Roche" <didrocks at ubuntu.com> wrote:

Le 10/10/2016 à 23:49, Jian LUO a écrit :

Hi,

I don't think it counts as cross compiling since Java (at least in my case)
is cross platform. Just wanted to compile Java with one JDK and run with
another.


Hey,

I'm adding Sergio to the conversation, but I think the easiest path is to
create a custom plugin, inheriting from the base java one, which is
outputting a wrapper scripts with different JAVA env variables.
That way, you keep the current building behavior (build with java on the
machine), but output a script which will point to an armhf java path for
instance and download the correct version and packages version for all
those.
Cross-compilation-like may be needed as Manik suggested as you will need to
pull some packages which are architectures specific.

On how to create a custom plugin, here is some documentation:
http://snapcraft.io/docs/build-snaps/plugins and the playpen has some
example: https://github.com/ubuntu/snappy-playpen/blob/master/
idea/parts/plugins/x-antIntellij.py
I'll let Sergio adding more info as needed :)

Cheers,
Didier



Jian

On Oct 10, 2016 20:05, "Manik Taneja" <manik at canonical.com> wrote:

>
>
> On Mon, Oct 10, 2016 at 6:33 AM, Jian LUO <jian.luo.cn at gmail.com> wrote:
>
>> Hi List,
>>
>> Is there any formal way in snapcraft  to set environment variables
>> separately for build time and run time? The use case I'm facing is building
>> a Java snap on amd64 host for armhf target.
>>
> Snapcraft does not support cross-compilation. Consider building natively
> on armhf, or using this as reference-
>
> https://github.com/snapcore/snapd/blob/master/docs/cross-build.md
>
> and let us know if you see any issues.
>
> /Manik
>




--
Snapcraft mailing list
Snapcraft at lists.snapcraft.io
Modify settings or unsubscribe at: https://lists.ubuntu.com/
mailman/listinfo/snapcraft
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/snapcraft/attachments/20161011/2e60b8b7/attachment.html>


More information about the Snapcraft mailing list