ldc-developers / ldc2.snap

Snap package definition for LDC, the LLVM-based D compiler
11 stars 4 forks source link

Update to LDC 1.18.0 stable release and LLVM 9.0.0 #86

Closed WebDrake closed 4 years ago

WebDrake commented 4 years ago

The LLVM 9 update requires a small tweak to CMake flags.

https://github.com/ldc-developers/ldc/releases/tag/v1.18.0 https://github.com/ldc-developers/llvm/releases/tag/ldc-v9.0.0

WebDrake commented 4 years ago

One concern, when building locally -- when priming the ldc part, snapcraft outputs a warning:

Files from the build host were migrated into the snap to satisfy dependencies that would otherwise not be met. This feature will be removed in a future release. If these libraries are needed in the final snap, ensure that the following are either satisfied by a stage-packages entry or through a part:
usr/lib/x86_64-linux-gnu/libicudata.so.55
usr/lib/x86_64-linux-gnu/libicuuc.so.55
usr/lib/x86_64-linux-gnu/libxml2.so.2

Did something change in the dependencies (for LLVM or for LDC)?

WebDrake commented 4 years ago

I'm seeing no issues when I do a snapcraft cleanbuild with snapcraft v3.8, and the built package appears to work fine, so I'm going to take this in.

kinke commented 4 years ago

Should be fine. - No idea about the icu* stuff, but libxml2 has been an LLVM/LLD dependency for quite a while. IIRC, it's an optional dependency and only used if installed on the build machine (and can be disabled via a CMake option); it's e.g. needed to cross-link Windows executables (the embedded Windows manifest is an XML file).

WebDrake commented 4 years ago

Ah, good to know. I'll have a think about how best to take advantage of that (I don't think the current package supports cross-building for Windows anyway).