On Tuesday, 5 September 2017 at 11:36:06 UTC, Sönke Ludwig wrote:
Am 24.01.2017 um 17:02 schrieb Las:
How do I enable LTO in DUB in a sane way?
I could add it to dflags, but I only want it on release builds.
You can put a "buildTypes" section in your package recipe and
override default dflags or lflags there just for the "release"
build type. See
https://code.dlang.org/package-format?lang=json#build-types
There are examples in my dub.json files. One here:
https://github.com/eBay/tsv-utils-dlang/blob/master/tsv-sample/dub.json#L24-L28. All the dub.json files in the repo are setup this way. Turns on LTO (thin) for LDC on OS X, not used for other builds. Works in Travis-CI for the combos of os x and linux with ldc and dmd.
--Jon