Skip to content
jacob-carlborg edited this page Jul 21, 2011 · 7 revisions

Source Code Management

If a repository at github, bitbucket, dsource or similar has an .orbspec file in the root directory this repository can be used as an orb package, like this:

# orbfile
orb "dwt", :git => "git://github.com/jacob-carlborg/dwt.git"

Now running $ orb install, the tool will clone the git repository, read the dwt.orbspec file, build the library and then install it.

Specifying Packages in D Files

Instead of using an orbfile one could specify the orb packages in D files using pragmas (or similar):

// a.d
pragma(orb, "dwt", "0.5.3");
pragma(orb, "sqlite");

If the compiler knows about the "orb" pragma, it could provide a flag "-orb", when used will output all orb packages, including the version. Then the "orb" tool can use this information to install the necessary packages.

DVM

I plan to integrate this with DVM as well. This will allow a different versions of DMD to have different packages installed, if possible the packages will be shared among the DMD versions.

DVM may end up manipulating the dmd.conf/sc.ini file to add include paths and libraries.

Clone this wiki locally