Homebrew formula: build from sources, betas, git head

"Luís "Luís
Wed Nov 27 18:54:25 PST 2013


(context: homebrew is a very nice package installer for OS X. It 
is, IMO, the easiest way to install dmd and related utilities in 
OS X, and should probably be mentioned/recommended in the 
downloads page)

Is anyone here proficient with homebrew formulas? The current 
formula for DMD is only able to install the binaries (which is 
not very usual for homebrew, AFAIK). Being able to install from 
sources (--build-from-source) would be nice, not just to support 
--devel (e.g., the beta versions, which could also be supplied as 
binaries) but also --HEAD, which would build the git master 
branch.

Adding support for those options is important, because they allow 
one to:

- easily install and uninstall the beta versions, and quickly 
change between several versions (they are cached). These betas 
tend to not see as much field testing as one/Walter would like 
before they become a non-beta release, so this would help. Adding 
a tag like "latest-beta" to the git repo would allow one to build 
from sources the latest beta, even if the homebrew formula was 
out of date (e.g., it did not specify the latest beta binaries, 
or a specific beta version tag, like v2.064beta4).

- easily install the git head version. Homebrew makes this much 
easier than following the instruction at 
http://wiki.dlang.org/Building_DMD#Posix, by cloning the repo 
automatically, building the binaries/libs (which would be fat 
binaries, unlike the wiki instructions), installing, creating 
dmd.conf, etc. Support for this option would make evaluating 
dmd/phobos/druntime bugs much easier ("does it still reproduce in 
git head?"). You can also access the cloned repo and do your 
changes from there, so it lowers the barrier to casual 
contributions even more.

So, is anyone here proficient with homebrew formulas? Anyone 
willing to take this task? If no one volunteers, I'll try to do 
it when I find the time, but I'm not very proficient with 
homebrew formulas/Ruby, and homebrew's documentation has always 
been lacking, IMO. So, if someone is comfortable with homebrew 
your help would be very welcome.


More information about the Digitalmars-d mailing list