Hi, On Sun, Feb 26, 2017 at 05:10:11PM +0100, Matthias Klumpp wrote: > >> I just added "dub run" to debian/rules. > > > > I think you want "dub build" instead. > > Yes, `dub build` is the right thing to do,
Fine. > but in general I would > strongly recommend to not use dub at all for Debian packaging. > It has a lot of issues which make it a pain to work with in the > context of Debian packaging, some of the issues are summarized at > https://gist.github.com/ximion/fe6264481319dd94c8308b1ea4e8207a > > I did packaging with dub once, a d/rules file would look similar to > this: > https://anonscm.debian.org/git/pkg-packagekit/appstream-generator.git/tree/debian/rules?id=60dcc4c6e716f8ddbcf549f40bad0f5b800cb398 > > No package in Debian uses dub however, because it creates long-term > maintenance pain. The much better option is to submit a patch upstream > to build with either Automake, cmake or Meson. I strongly recommend > Meson here, because Meson configuration is very easy to write and it's > D support is already there (while it needs to be added to cmake with a > lot of macros, and Automake is just annoying to use in general). > > Here is an example for a simple Meson build configuration for a very > small static D library: > https://github.com/repeatedly/mustache-d/commit/4e694202b02014871a767782606bacaf1422a3e2 I'd fully trust your insight here but I admit Meson is totally new to me and crafting a Meson control file for a library without having any idea about D is a bit over my current status of knowledge. So I either need to use what upstream provides or ask here for help. > > Ah, I was looking at upstream git master which contains this dependency > > in dub.json: > > "dependencies": { > > "undead": "~>1.0.6" > > }, > > > >> bio/bam/bai/indexing.d(38,8): Error: module string is in file > >> 'core/std/c/string.d' which cannot be read > >> > >> This seems to be critical. Do you have any hint? > > > > Maybe this PR would help? > > https://github.com/biod/BioD/pull/23 > > Which D compiler do you use for building? LDC or GDC? I would > recommend LDC here, since it supports the latest D runtime and > standard library versions, while GDC is lagging behind a lot. > The ideal solution here would be to port BioD away from using > deprecated stuff, but I am not sure how feasible this is - would be > nice to at least ask upstream on whether they accept patches for it. > Otherwise, undeaD needs to be in Debian first. I admit I have no idea how to do this. Its the first time I see D code at all. May be it would be even better if the Debian D team could package BioD which I need for some other package as a pre-dependency. Kind regards Andreas. -- http://fam-tille.de