mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
FIX allow @version to be set in derived Formula
This commit is contained in:
parent
345d603b52
commit
e2bc3c510e
@ -29,29 +29,13 @@ class AbstractFormula
|
|||||||
require 'find'
|
require 'find'
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
|
|
||||||
# fuck knows, ruby is weird
|
private
|
||||||
# TODO please fix!
|
class <<self
|
||||||
def self.url
|
attr_reader :url, :version, :md5, :url, :homepage
|
||||||
@url
|
|
||||||
end
|
end
|
||||||
def url
|
|
||||||
self.class.url
|
|
||||||
end
|
|
||||||
def self.md5
|
|
||||||
@md5
|
|
||||||
end
|
|
||||||
def md5
|
|
||||||
self.class.md5
|
|
||||||
end
|
|
||||||
def self.homepage
|
|
||||||
@homepage
|
|
||||||
end
|
|
||||||
def homepage
|
|
||||||
self.class.homepage
|
|
||||||
end
|
|
||||||
# end ruby is weird section
|
|
||||||
|
|
||||||
attr_reader :version, :name
|
public
|
||||||
|
attr_reader :url, :version, :md5, :url, :homepage, :name
|
||||||
|
|
||||||
# reimplement if your package has dependencies
|
# reimplement if your package has dependencies
|
||||||
def deps
|
def deps
|
||||||
@ -66,11 +50,11 @@ class AbstractFormula
|
|||||||
|
|
||||||
def initialize name=nil
|
def initialize name=nil
|
||||||
@name=name
|
@name=name
|
||||||
# fuck knows, ruby is weird
|
@version=self.class.version unless @version
|
||||||
@url=url if @url.nil?
|
@url=self.class.url unless @url
|
||||||
|
@homepage=self.class.homepage unless @homepage
|
||||||
|
@md5=self.class.md5 unless @md5
|
||||||
raise "@url.nil?" if @url.nil?
|
raise "@url.nil?" if @url.nil?
|
||||||
@md5=md5 if @md5.nil?
|
|
||||||
# end ruby is weird section
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def prefix
|
def prefix
|
||||||
@ -78,24 +62,13 @@ class AbstractFormula
|
|||||||
raise "@version.nil?" if @version.nil?
|
raise "@version.nil?" if @version.nil?
|
||||||
HOMEBREW_CELLAR+@name+@version
|
HOMEBREW_CELLAR+@name+@version
|
||||||
end
|
end
|
||||||
def bin
|
|
||||||
prefix+'bin'
|
def bin; prefix+'bin' end
|
||||||
end
|
def doc; prefix+'share'+'doc'+name end
|
||||||
def doc
|
def lib; prefix+'lib' end
|
||||||
prefix+'share'+'doc'+name
|
def man; prefix+'share'+'man' end
|
||||||
end
|
def man1; man+'man1' end
|
||||||
def man
|
def include; prefix+'include' end
|
||||||
prefix+'share'+'man'
|
|
||||||
end
|
|
||||||
def man1
|
|
||||||
man+'man1'
|
|
||||||
end
|
|
||||||
def lib
|
|
||||||
prefix+'lib'
|
|
||||||
end
|
|
||||||
def include
|
|
||||||
prefix+'include'
|
|
||||||
end
|
|
||||||
|
|
||||||
def caveats
|
def caveats
|
||||||
nil
|
nil
|
||||||
@ -251,6 +224,7 @@ class Formula <UnidentifiedFormula
|
|||||||
end
|
end
|
||||||
|
|
||||||
# see ack.rb for an example usage
|
# see ack.rb for an example usage
|
||||||
|
# you need to set @version and @name
|
||||||
class ScriptFileFormula <AbstractFormula
|
class ScriptFileFormula <AbstractFormula
|
||||||
def install
|
def install
|
||||||
bin.install name
|
bin.install name
|
||||||
|
Loading…
x
Reference in New Issue
Block a user