Added small DSL for formulas
You can now use "url", "version", "homepage", and any checksums as
class methods, like so:
class Dos2unix <Formula
url 'http://www.sfr-fresh.com/linux/misc/old/dos2unix-3.1.tar.gz'
md5 '25ff56bab202de63ea6f6c211c416e96'
homepage 'http://www.sfr-fresh.com/linux/misc/'
end
The previous usage ("@url = 'http://example.com/tarball.tgz'") still
works, maintaining compatibility with previous formulas.
"dos2unix.rb" is translated into the new format as an example.
This commit is contained in:
parent
6f4c61e326
commit
44a3d59630
@ -330,8 +330,17 @@ private
|
||||
end
|
||||
|
||||
class <<self
|
||||
attr_reader :url, :version, :homepage, :head, :deps
|
||||
attr_reader *CHECKSUM_TYPES
|
||||
def self.attr_rw(*attrs)
|
||||
attrs.each do |attr|
|
||||
class_eval %Q{
|
||||
def #{attr}(val=nil)
|
||||
val.nil? ? @#{attr} : @#{attr} = val
|
||||
end
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
attr_rw :url, :version, :homepage, :head, :deps, *CHECKSUM_TYPES
|
||||
|
||||
def depends_on name, *args
|
||||
@deps ||= []
|
||||
|
||||
@ -75,8 +75,8 @@ class TestBallOverrideBrew <Formula
|
||||
end
|
||||
|
||||
class TestScriptFileFormula <ScriptFileFormula
|
||||
@url="file:///#{Pathname.new(ABS__FILE__).realpath}"
|
||||
@version="1"
|
||||
url "file:///#{Pathname.new(ABS__FILE__).realpath}"
|
||||
version "1"
|
||||
|
||||
def initialize
|
||||
super
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user