sociomantic-tsunami / neptune

Sociomantic library versioning definitions, guides, and tools
Boost Software License 1.0
1 stars 15 forks source link

Replace makd with dub and upgrade deps #223

Closed mihails-strasuns closed 6 years ago

mihails-strasuns commented 6 years ago

Major build system rework:

This is one huge commit but all these changes are so subtly related that I really don't want to spend time trying to untangle this :(

mihails-strasuns commented 6 years ago

@leandro-lucarella-sociomantic

I think if we move forward in this direction eventually we could even create a MakDub.mak file in makd to use the same conventions as in Makd.mak but with these adaptions to dub.

I think that at the very least there is a solid case to split packaging related bits of makd into own MakPkg.mak so that it can be used in any project (even non-D) without any other MakD conventions coming into effect.

mihails-strasuns commented 6 years ago

Updated:

mihails-strasuns-sociomantic commented 6 years ago

Ping @leandro-lucarella-sociomantic

mathias-baumann-sociomantic commented 6 years ago

I checked out the branch and tried make test with the following result:

 marenz@labs-081  ~/sociomantic/neptune   pr-223  make test                                                                     :-) ~/sociomantic/neptune 
   gen build/dub/tmp/allunittests.d
   rdmd build/dub/tmp/allunittests
./src/octod/core.d(68): Error: no identifier for declarator Connection
./src/octod/core.d(68): Error: alias cannot have initializer
./src/octod/core.d(103): Error: found 'import' instead of statement
./src/octod/core.d(124): Error: found 'import' instead of statement
./src/octod/core.d(131): Error: found '!' when expecting ';' following statement
./src/octod/core.d(142): Error: found 'import' instead of statement
./src/octod/core.d(143): Error: found '!' when expecting ';' following statement
./src/octod/core.d(143): Error: found '..' when expecting ']'
./src/octod/core.d(143): Error: found '$' when expecting ')'
./src/octod/core.d(143): Error: semicolon expected to close declaration, not ']'
./src/octod/core.d(143): Error: found ']' instead of statement
./src/octod/core.d(201): Error: basic type expected, not scope
./src/octod/core.d(201): Error: found 'scope' when expecting ')'
./src/octod/core.d(201): Error: semicolon expected following function declaration
./src/octod/core.d(201): Error: found 'request' when expecting ',' following argument
./src/octod/core.d(201): Error: expression expected, not ')'
./src/octod/core.d(201): Error: found '{' when expecting ',' following argument
./src/octod/core.d(202): Error: found ';' when expecting ',' following argument
./src/octod/core.d(203): Error: found ';' when expecting ',' following argument
./src/octod/core.d(204): Error: found ';' when expecting ',' following argument
./src/octod/core.d(205): Error: expression expected, not '}'
Failed: ["dmd1", "-di", "-g", "-I/home/marenz/sociomantic/neptune/build/dub/include", "-I./src", "-I./submodules/makd/src", "-I./submodules/beaver/src", "-unittest", "-debug=UnitTest", "-version=UnitTest", "-v", "-o-", "/home/marenz/sociomantic/neptune/build/dub/tmp/allunittests.d", "-I/home/marenz/sociomantic/neptune/build/dub/tmp"]
submodules/makd/Makd.mak:595: recipe for target '/home/marenz/sociomantic/neptune/build/dub/tmp/allunittests' failed
make: *** [/home/marenz/sociomantic/neptune/build/dub/tmp/allunittests] Error 1
mathias-baumann-sociomantic commented 6 years ago

Using DMD64 D Compiler v2.081.1

mihails-strasuns commented 6 years ago

make test won't work because of current limitations in makd (I can't disable all automatic targets it implies). Because of that new make dub-test was added for CI purpose.

mihails-strasuns commented 6 years ago

Thanks!