www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Homebrew formula: build from sources, betas, git head

reply =?UTF-8?B?Ikx1w61z?= Marques" <luis luismarques.eu> writes:
(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.
Nov 27 2013
parent reply "Orvid King" <blah38621 gmail.com> writes:
On Thursday, 28 November 2013 at 02:54:27 UTC, Luís Marques wrote:
 (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.
Well, I was actually thinking about creating them at some point, because currently I just have a small bash script that updates my local repos, builds and installs using the posix makefile, then makes a couple of changes to the default dmd.conf, due to the fact I'm using the posix makefile, and using homebrew to do that would be a lot easier for most.
Nov 27 2013
parent reply Andrew Edwards <ridimz yahoo.com> writes:
On 11/27/13, 10:37 PM, Orvid King wrote:
 Well, I was actually thinking about creating them at some point,
 because currently I just have a small bash script that updates my
 local repos, builds and installs using the posix makefile, then
 makes a couple of changes to the default dmd.conf, due to the
 fact I'm using the posix makefile, and using homebrew to do that
 would be a lot easier for most.
Not sure who is maintaining the brew but it is already being done. To install dmd all you need to do is "brew install dmd".
Nov 27 2013
parent =?UTF-8?B?Ikx1w61z?= Marques" <luis luismarques.eu> writes:
On Thursday, 28 November 2013 at 03:46:39 UTC, Andrew Edwards
wrote:
 Not sure who is maintaining the brew but it is already being 
 done. To install dmd all you need to do is "brew install dmd".
Yes, there is already a homebrew formula that installs dmd and rdmd from the binaries, but that formula does not support installing from sources (and thus from git head).
Nov 27 2013