diff options
| author | Jack Nagel | 2013-09-17 21:25:43 -0500 |
|---|---|---|
| committer | Jack Nagel | 2013-09-17 21:29:54 -0500 |
| commit | 2178b33dde5b32b4c04afd4cef1863820f3ca3be (patch) | |
| tree | 4d5c44c1b6f5b91c9409bc3c57b8089ddd136d22 /Library | |
| parent | 8edeef83b7784ca68ebb3fd369d643f9efa25145 (diff) | |
| download | homebrew-2178b33dde5b32b4c04afd4cef1863820f3ca3be.tar.bz2 | |
Allow partial installation of resources
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Formula/erlang.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/extend/pathname.rb | 3 | ||||
| -rw-r--r-- | Library/Homebrew/resource.rb | 6 |
3 files changed, 10 insertions, 1 deletions
diff --git a/Library/Formula/erlang.rb b/Library/Formula/erlang.rb index 1259d3982..9c0ece8b9 100644 --- a/Library/Formula/erlang.rb +++ b/Library/Formula/erlang.rb @@ -83,7 +83,7 @@ class Erlang < Formula system "make install" unless build.include? 'no-docs' - resource('man').stage { (lib/'erlang').install 'man' } + (lib/'erlang').install resource('man').files('man') doc.install resource('html') end end diff --git a/Library/Homebrew/extend/pathname.rb b/Library/Homebrew/extend/pathname.rb index d39b692ad..8ca86d39a 100644 --- a/Library/Homebrew/extend/pathname.rb +++ b/Library/Homebrew/extend/pathname.rb @@ -1,5 +1,6 @@ require 'pathname' require 'mach' +require 'resource' # we enhance pathname to make our code more readable class Pathname @@ -12,6 +13,8 @@ class Pathname case src when Resource src.stage(self) + when Resource::Partial + src.resource.stage { install(*src.files) } when Array if src.empty? opoo "tried to install empty array to #{self}" diff --git a/Library/Homebrew/resource.rb b/Library/Homebrew/resource.rb index 238d55ddf..5221f2769 100644 --- a/Library/Homebrew/resource.rb +++ b/Library/Homebrew/resource.rb @@ -62,6 +62,12 @@ class Resource end end + Partial = Struct.new(:resource, :files) + + def files(*files) + Partial.new(self, files) + end + # For brew-fetch and others. def fetch # Ensure the cache exists |
