Re: Working LDC snap [was: Re: Snapping LDC (LLVM-based D compiler)]

2016-09-07 Thread Joseph Rushton Wakeling

On 05/09/16 00:25, Joseph Rushton Wakeling wrote:

One problem fixed (the inclusion of `build-essential` as a build dependency
ensures the snap will build in a `cleanbuild` environment), but one remains: it
looks like the `ldc-config` part (which manually replaces the incorrectly
auto-generated ldc2.conf with a correct alternative, using the `dump` plugin)
can sometimes fail.

There doesn't seem to be any reason for it, just with some builds I end up with
a wrong (auto-generated) ldc2.conf in the snap package, and some I end up with
the correct one copied from the ldc-config directory.

Any ideas what's up?  I'm guessing bug either with the dump plugin or with the
handling of the `snap` section of the `ldc` part ... ?


Looks like it because of only filtering out the ldc part's etc/ldc2.conf file at 
the `snap` step.  This allowed a race condition where if ldc was staged after 
ldc-config, its etc/ldc2.conf would overwrite the desired one, and the `snap` 
filter was powerless to distinguish this.


Replacing the `snap` exclusion filter with a `stage` exclusion filter solved 
things:

parts:
  ldc:
source: git://github.com/ldc-developers/ldc.git
source-tag: v1.0.0
plugin: cmake
stage:
- -etc/ldc2.conf
build-packages:
- build-essential
- ldc
- llvm-dev
- libconfig++-dev
- libcurl4-gnutls-dev
- libedit-dev
- zlib1g-dev
  ldc-config:
plugin: dump
source: ldc-config
organize:
  ldc2.conf: etc/ldc2.conf



--
Snapcraft mailing list
Snapcraft@lists.snapcraft.io
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/snapcraft


Re: Working LDC snap [was: Re: Snapping LDC (LLVM-based D compiler)]

2016-09-04 Thread Joseph Rushton Wakeling

On 04/09/16 13:55, Joseph Rushton Wakeling wrote:

On 27/08/16 22:45, Joseph Rushton Wakeling wrote:

I thought I'd have a go at making a snap of LDC, the LLVM-based compiler for the
D programming language.


A "final first draft" of the working snap is available here:
https://github.com/WebDrake/ldc2.snap/pull/1


One problem fixed (the inclusion of `build-essential` as a build dependency 
ensures the snap will build in a `cleanbuild` environment), but one remains: it 
looks like the `ldc-config` part (which manually replaces the incorrectly 
auto-generated ldc2.conf with a correct alternative, using the `dump` plugin) 
can sometimes fail.


There doesn't seem to be any reason for it, just with some builds I end up with 
a wrong (auto-generated) ldc2.conf in the snap package, and some I end up with 
the correct one copied from the ldc-config directory.


Any ideas what's up?  I'm guessing bug either with the dump plugin or with the 
handling of the `snap` section of the `ldc` part ... ?


--
Snapcraft mailing list
Snapcraft@lists.snapcraft.io
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/snapcraft


Working LDC snap [was: Re: Snapping LDC (LLVM-based D compiler)]

2016-09-04 Thread Joseph Rushton Wakeling

On 27/08/16 22:45, Joseph Rushton Wakeling wrote:

I thought I'd have a go at making a snap of LDC, the LLVM-based compiler for the
D programming language.


A "final first draft" of the working snap is available here:
https://github.com/WebDrake/ldc2.snap/pull/1

Obviously everyone here has already been very generous with their advice and 
feedback, but I thought it would be good to offer an opportunity for final 
comments before finishing this up.  Thoughts as ever gratefully received :-)


Thanks again to everyone & best wishes,

-- Joe


--
Snapcraft mailing list
Snapcraft@lists.snapcraft.io
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/snapcraft