By searching and browsing the newgroups I found some info on how to setup the config:
package.json
{
"name": "tool",
"description": "a set of tools",
...
...
"dependencies":
{
"liba": { "version": "~master", "path": "/usr/local/src/liba" },
"libb": { "version": "~master", "path": "/usr/local/src/libb" },
"libc": { "version": "~master", "path": "/usr/local/src/libc" },
"ddbc": { "version": "~master", "path": "/usr/local/src/ddbc" },
},
...
"subPackages":
[
{
"name": "toola",
"targetType": "executable",
"excludeSourceFiles": [ "source/toolb.d", "source/toolc.d" ],
},
{
"name": "toolb",
"targetType": "executable",
"excludeSourceFiles": [ "source/toola.d", "source/toolc.d" ],
},
{
"name": "toolc",
"targetType": "executable",
"excludeSourceFiles": [ "source/toola.d", "source/toolb.d" ],
}
]
}
Is this the correct way to setup the package.json? Because it does not seem to work.
The dependencies are not propagated to the subPackages.
The second issue is with
"dependencies":
{
"liba": { "version": "~master", "path": "/usr/local/src/liba" },
Should the "path" also added to 'dub' by 'dub add-path' or 'dub add-local'?
And how do I force the use of a local path for a dependency which is also in the dub repo?
For example ddbc is forked by me and I want dub to use my local-clone of the forked ddbc for ALL ddbc dependencies?