115 Commits

Author SHA1 Message Date
Dominyk Tiller
d8c34e83b7 Add unsigned kext requirement.
Creates a new requirement that dictates packages are unable to install due to requiring a signed kext to function.

Closes Homebrew/homebrew#33404.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2014-10-23 08:57:12 +01:00
Dominyk Tiller
029a604fb5 phantomjs: Yosemite fixes.
Closes Homebrew/homebrew#32953.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2014-10-06 20:09:26 +01:00
Jack Nagel
7b396a5e99 Note that the JDK is required for java dependencies
Closes Homebrew/homebrew#32224.
2014-09-23 20:06:09 -05:00
Jack Nagel
1e537b5797 Use multiple-argument form of quiet_system 2014-09-11 23:25:18 -05:00
Johnathan Conley
0d154a991d Add :osxfuse dependency to support binary install.
add :osxfuse symbolic dependency
add ConflictsWithFuseForOsx requirement for osxfuse/fuse4x/fuse4x-kext

Closes Homebrew/homebrew#31975.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2014-09-09 10:17:03 +01:00
Mike McQuaid
8abc12296b requirements: don't print out java_home. 2014-08-25 09:24:08 +01:00
Mike McQuaid
7e7b721797 requirements: add JavaDependency.
Requested in Homebrew/homebrew-science#1039.
Closes Homebrew/homebrew#30852.
2014-07-21 19:14:15 +01:00
dgwakeman
68f27922bc add homebrew to Tex requirement
Closes Homebrew/homebrew#29834.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2014-06-03 20:01:35 -07:00
Jack Nagel
4c6defbcf6 Remove build attribute from Xcode dep 2014-05-30 17:23:15 -05:00
Jack Nagel
10bd849bd3 Remove CLTDependency
Closes Homebrew/homebrew#29379.
2014-05-19 10:37:45 -05:00
Mario Mueller
be66d746ad rewrite TeX requirement message
Closes Homebrew/homebrew#28588.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2014-04-21 19:39:37 -07:00
Jack Nagel
f0bb1a936d Stop letting GitDependency inject HOMEBREW_PREFIX/bin into the environment 2014-03-13 18:07:11 -05:00
Mike McQuaid
0fd32118c7 requirements: remove unneeded Python27Dependency.
PythonDependency now implies this.
2014-03-12 13:57:10 +00:00
Misty De Meo
31ed0d6505 Add python27 dependency
Fixes Homebrew/homebrew#25561.
Fixes Homebrew/homebrew#25410.
2013-12-30 13:20:58 -08:00
Mike McQuaid
9ebc527e49 Improve Xcode and CLT installation instructions. 2013-10-23 17:44:43 +01:00
Jack Nagel
c5289f2503 Infer dependencies from download strategies and URLs
Closes Homebrew/homebrew#20849.
Closes Homebrew/homebrew#22871.
2013-09-28 16:37:05 -05:00
Mike McQuaid
a16394fde8 MinimumMacOSRequirement: rename file.
Should be using minimum_mac_os_requirement.rb
2013-09-14 12:21:49 +01:00
Misty De Meo
49cd13406b Update URL for CLT download
http://connect.apple.com is still down, but
https://developer.apple.com/downloads has all of the Apple developer
downloads available.

Fixes Homebrew/homebrew#21812.
2013-08-10 22:05:18 -07:00
Misty De Meo
ea3861d296 ArchRequirement: support :intel, :ppc 2013-08-01 19:57:05 -07:00
MerelyAPseudonym
1dc2e12f3a fix typo
Closes Homebrew/homebrew#21601.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2013-08-01 17:22:51 -07:00
Mike McQuaid
e3f26a9ced Remove message from default_formula'd requirements 2013-07-01 23:16:38 +01:00
Mike McQuaid
621c44dbd2 CLT is just CLT now; not "for Xcode".
References Homebrew/homebrew#17383.
2013-07-01 19:02:32 +01:00
Adam Vandenberg
0f1d491d81 Add :fortran requirement 2013-06-24 07:35:42 -07:00
Adam Vandenberg
32f637d590 Add minimum OS X version requirement
Closes Homebrew/homebrew#19998.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2013-06-16 20:36:50 -07:00
Jack Nagel
8b9a3a560f Separate formula conflicts from requirements
Closes Homebrew/homebrew#20357.
2013-06-09 13:45:25 -05:00
Samuel John
c524895666 Python 2.x and 3.x support
New `depends_on :python` Dependency.
New `depends_on :python3` Dependency.

To avoid having multiple formulae with endings -py2 and -py3,
we will handle support for different pythons (2.x vs. 3.x)
in the same formula.
Further brewed vs. external python will be transparently supported.

The formula also gets a new object `python`, which is false if
no Python is available or the user has disabled it. Otherwise
it is defined and provides several support methods:

python.site_packages # the site-packages in the formula's Cellar
python.global_site_packages
python.binary # the full path to the python binary
python.prefix
python.version
python.version.major
python.version.minor
python.xy # => e.g. "python2.7"
python.incdir # includes of python
python.libdir # the python dylib library
python.pkg_config_path # used internally by brew
python.from_osx?
python.framework?
python.universal?
python.pypy?
python.standard_caveats # Text to set PYTHONPATH for python.from_osx?
python.if3then3 # => "" for 2.x and to "3" for 3.x.

Further, to avoid code duplication, `python` takes an optional
block that is run twice if the formula defines depends_on
:python AND :python3.

python do
  system python, 'setup.py', "--prefix=#{prefix}"
end

Read more in the Homebrew wiki.
2013-06-03 17:29:43 +02:00
Jack Nagel
2f02942a84 PostgresqlDependency: use canonical name for default formula 2013-06-02 17:14:42 -05:00
Mike McQuaid
92ccfc548e Allow requirements to specify a default formula.
This allows default resolution of requirements without user intervention.

Closes Homebrew/homebrew#19627.
2013-05-10 13:37:41 +01:00
Misty De Meo
57534cf7b2 ArchRequirement: takes a single arch
Fixes Homebrew/homebrew#19646.
2013-05-06 22:50:01 -05:00
Adam Vandenberg
a7714a804b Add :hg build requirement.
Closes Homebrew/homebrew#19074.
2013-04-17 10:01:38 -07:00
Jack Nagel
b82ae7067d Shrink requirements.rb 2013-04-02 15:33:35 -05:00
Jack Nagel
34f3f76932 Simplify setting this ivar 2013-04-02 15:33:34 -05:00
Jack Nagel
e4c43b4f8c Fix chicken scheme imports 2013-04-02 15:33:34 -05:00
Jack Nagel
ee7178562f Move x86_64 Requirement into core
Closes Homebrew/homebrew#18886.
2013-04-02 13:17:24 -05:00
Jack Nagel
9f1e6af879 Use satisfy syntax for CLTDependency 2013-04-02 13:17:23 -05:00
Jack Nagel
115501d42f Fix X11 env setup 2013-04-01 18:50:56 -05:00
Jack Nagel
1b0f0824fe Requirement: env DSL is evaluated in context of self, not ENV
This was meant to support:

  env do |req|
    append_path 'PATH', req.some_method
    ...
  end

i.e., the block was evaluated in the context of ENV. But it turned out
to be not so useful after all, so I'm ripping it out before something
actually depends on it.
2013-04-01 16:17:35 -05:00
Jack Nagel
9561b4bc8e Fix X11 proxy constant lookup under 1.9+ 2013-02-19 10:15:52 -06:00
Jack Nagel
71f85300b4 Establish a convention for Requirement names
The name attribute of requirements is used when generating options for
the :optional and :recommended dependency tags.

Unless otherwise specified, the name attribute of a Requirement will be
populated by stripping any module prefixes from the beginning and
"Dependency" or "Requirement" from end of the class name and downcasing
the result.

Closes Homebrew/homebrew#17759.
2013-02-12 16:26:10 -06:00
Jack Nagel
cf82e19090 ConflictRequirement: pass argument to superclass initalizer 2013-02-09 18:33:26 -06:00
Jack Nagel
b65398c549 LanguageModuleDependency: foward args to superclass initalizer 2013-02-08 00:12:49 -06:00
Jack Nagel
2fed17f4d1 Ensure :cairo and :pixman resolve to standard formula deps
We do not use X11 to satisfy these deps for consistency reasons,
but we should continue to support the symbols for compatibility.
2013-02-02 00:09:28 -06:00
Jack Nagel
1408610b81 Proper recursive expansion of requirements with filtering
Expand requirements recursively while applying the same optional? and
recommended? filters that dependencies are run through. Options
generated by requirements are now checked against the correct list of
requirements, eliminating the temporary "best guess" logic in the
installer.
2013-01-31 15:40:06 -06:00
Jack Nagel
f4b126cc14 Create proxy classes for "partial" X11 dependencies
When a formula's dependency tree contains more than one X11 dependency,
they are de-duplicated by comparing the min_version attribute. However,
this can result in broken dependency trees if one of the X11Dependency
objects was actually specified as e.g. `:libpng`.

In practice, this only matters when one or more of the dependencies has
additional metadata that makes it distinct from the rest, i.e. an
:optional or :recommended tag.

To combat this, make these special, "partial" X11 dependencies instances
of different classes so that they are not de-duped.

It will still be necessary, at the time when requirements are expanded
by the installer, to de-duplicate any remaining X11 dependencies after
applying the optional/recommended filters in order to avoid duplicated
modifications to the environment (as ENV.x11 is not idempotent).

c.f. Homebrew/homebrew#17369.
2013-01-31 15:39:26 -06:00
Jack Nagel
992b373bf0 LanguageModuleDependency: call super() to generate tags list
Fixes Homebrew/homebrew#17379.
2013-01-28 11:23:25 -06:00
Jack Nagel
210401654b Allow specifying a name attribute for X11Dependency 2013-01-28 10:35:14 -06:00
Jack Nagel
41dec56d29 Invoke super() in requirement subclasses 2013-01-27 21:20:09 -06:00
Jack Nagel
adf90691f1 Split dependency classes into separate files 2013-01-26 20:30:05 -06:00
Jack Nagel
e05a509fb6 Tag Xcode and CLT requirements as build-time
This way they can be skipped when installing bottles.
2013-01-26 12:14:50 -06:00
samueljohn
620c063f8c Add "depends_on :clt" 2013-01-26 12:14:50 -06:00