On Wed, 04 Dec 2013 18:11:01 GMT, Bruno Deligny wrote:
Hi,
I have an executable projet that depend on a static library project. They are all in the same github repo:
https://github.com/bdeligny/DQuick.git on branch "dub"My two package.json are:
(...)
But i get this error:
Error: conflicting Ddoc and obj generation optionsIf i check the dmd command line called by dub with -v option i get:
dmd -of.dub\build\application-debug-x86-dmd-DA39A3EE5E6B4B0D3255BFEF95601890AFD80709\image.exe -c -of.dub\build\application-debug-x86-dmd-DA39A3EE5E6B4B0D3255BFEF95601890AFD80709\image.obj -debug -g -wi -version=Haveimage -version=Havelibdquick -I.\ -I....\dquick -J....\dquick\renderer2D\openGL main.d ....\dquick\algorithms\atlas.d ....\dquick\algorithms\scheduler.d and then all the d filesThanks in advance.
I've adjusted the files from the repository so that it works properly when registered in the registry - the library should always be in the root package.json file. It also cleans up a few other things. The problem that remains is that the API of the current "derelict" package (which is supposed to be replaced by separate "derelect-xxx" packages, but "derelict-il" is missing so far) seems to be a different version than the library expected (there are some compiler errors). But apart from that, everything seems to work nicely:
/package.json:
{
"name": "dquick",
"description": "A GUI library written in D.",
"authors": ["Bruno Deligny", "Xavier Bigand"],
"homepage": "https://github.com/D-Quick/DQuick",
"license": "BSL-1.0",
"sourcePaths": ["src/dquick"],
"stringImportPaths": ["src/dquick/renderer2D/openGL"],
"buildRequirements": ["allowWarnings"],
"dependencies": {
"gl3n": "~master",
"derelict": "~master"
},
"configurations": [
{
"name": "library",
"targetType": "library",
"excludedSourceFiles": ["src/dquick/main.d"]
},
{
"name": "unittest",
"targetType": "executable",
"mainSourceFile": "src/dquick/main.d"
}
]
}
/src/samples/image/package.json:
{
"name": "image",
"targetType": "executable",
"dependencies": {
"dquick": {"version": "~master", "path": "../../../"}
},
"mainSourceFile": "main.d",
"sourcePaths": ["./"],
"importPaths": ["./"]
}
One thing that I've removed is the explicit "version" field. It shouldn't normally be there, as the version is inferred from the branch/tag name.