Will this features be accepted for DUB?

Guillaume Piolat via Digitalmars-d digitalmars-d at puremagic.com
Fri Dec 16 05:55:55 PST 2016


Trying to answer with the existing dub.

On Friday, 16 December 2016 at 13:21:53 UTC, Ilya Yaroshenko 
wrote:
> We need
> 1. a post fetch (build) options. GLAS should be builded only in 
> release, and in single file mode. It is a betterC library with 
> extern C interface.

--combined -b release-nobounds


> 2. ability to build C/C++ code, run makefiles.

As Rikki said.

> 3. ability to compose libraries.

Not sure what you mean.

> 4. ability to override a compiler for betterC libraries.

Not sure what you mean. The selected compiler is outside the dub 
configurations with --compiler.
You probably know can have special LDC flags:


> DUB allows to set only compiler flags. I want to define how 
> betterC libraries should be builded inside their dub configs 
> instead of unified compiler/build options for all libs like it 
> works now.

Dub configurations and dependencies sub-configurations let you 
define version identifiers from outside the library, and can have 
different "dflags" too.

Example from product:

----------------

         "configurations": [
         {
             "name": "VST-EE",
             "versions": ["VST", "full"],
             "targetType": "dynamicLibrary",
             "lflags-osx": [ "-exported_symbols_list", 
"source/module-vst.lst", "-dead_strip" ]
         },

----------------

The tricky thing is to recognize where "lflags" or "dflags" are 
needed, and how this interact with --combined (dflags and lflags 
get merged then).

Investment in dub pays dividend by being unified and makes sense 
after a while.


More information about the Digitalmars-d mailing list