I don't have a C/C++ background, and have always used rdmd with ie. -I/path/to/derelict.

So the dub build process is a bit foreign to me.

When using dub, if I ie. select derelict-util as a dependency, it will first compile derelict-util to a lib, and include the entire lib in my project exe?
Or would it first collect the files needing compilation and compile only those?
Or something else?