Hi again ports -- On 10/13/2021 01:49 AM, Brian Callahan wrote:
Hi ports --Attached is a new port, devel/dub. Dub is the package and build management system for the D language. --- pkg/DESCR: Dub is the package and build manager for D applications and libraries. There is a central package registry located at https://code.dlang.org where packages can be installed and managed using dub. The project's philosophy is to keep things as simple as possible. All that is needed to make a project a dub package is to write a short dub.json file and put the source code into a source subfolder. It can then be registered on the public package registry to be made available for everyone. Any dependencies specified in dub.json are automatically downloaded and made available to the project during the build process. --- Right now, dub is using dmd to build, so it is marked ONLY_FOR_ARCH=amd64 to match dmd. I would eventually like to move to gdmd (aka gdc) to build dub, since gdc supports more archs than dmd. However, there is a runtime bug with dub+gdmd that prevents it from being usable https://issues.dlang.org/show_bug.cgi?id=22381 and so I'm choosing to build with dmd to not give false hope for the time being (we also don't have a port of the gdmd wrapper yet... it's on the way). All tests pass on amd64, and I'm able to grab any and all packages I want from the D Package repository. OK? ~Brian
Attached is a new version of dub that uses GDC rather than DMD. All that needed to be done was to provide dub the correct name of the GDC binary (egdc) and it immediately starts doing the right thing. This is because dub will always prefer gdc over gdmd if it finds both.
I submitted a bug for the issue here: https://github.com/dlang/dub/issues/2183
But this won't affect use of dub on any platform.All tests but 2 pass on amd64: The betterC test is an expected fail because gdc does not support the flags needed to enable DasBetterC. The second one I will work with upstream to fix, but is unlikely to affect regular usage of dub.
Note: If you are on amd64 and have both dmd and gdc installed, dub will prefer dmd. To override this, either set the DC environment variable or use the --compiler= flag in your dub invocations.
OK? Dub is the final piece of the D development suite. ~Brian
dub.tgz
Description: GNU Zip compressed data
