161 Commits

Author SHA1 Message Date
Mike McQuaid
375efe0945 Remove LLVM-GCC support. (#252)
At this point it's never a good compiler to use so let's just remove it.
2016-05-22 09:40:08 +01:00
Mike McQuaid
aae447996c formula: deprecate startup_plist.
Closes #228.
2016-05-13 08:45:37 +01:00
Martin Afanasjew
4059d5fc26 compat/macos: fix methods from 'development_tools'
The previous fixes in c6dc50fcf05c8c4956ac86345360fefcb00f664e and
ed9f7308b265944c27c833b9a2aaa0e911ff5667 were incomplete as they
referenced `DeveloperTools`, but the actual name is `DevelopmentTools`.

Also fixes indentation and a broken `MacOS.clang_version` (it was
falsely redirecting to `DeveloperTools.llvm_build_version` ).

References #219.
References #220.
2016-05-08 23:30:06 +02:00
Mike McQuaid
c6dc50fcf0 compat/macos: add missing require.
Closes #220.
2016-05-08 21:12:22 +01:00
Mike McQuaid
ed9f7308b2 compat/macos: add missing developer_tools methods.
Closes #219.
2016-05-08 19:44:00 +01:00
Mike McQuaid
8d995e961f Make hardware code cross-platform. 2016-05-08 16:51:22 +01:00
Misty De Meo
534d6fd527 Move OS::Mac::Xcode.provides_autotools? to compat
Closes #125.

Signed-off-by: Misty De Meo <mistydemeo@github.com>
2016-04-21 09:36:31 -07:00
Xu Cheng
bd7e8543b3 deprecate SHA1 2016-03-20 14:55:58 +08:00
Xu Cheng
a3023c3ce8 add compat/tap
To keep backward compatibility for API name changing.
2016-03-07 19:43:46 +08:00
Mike McQuaid
c2a928eb51 Add Haskell::Cabal#cabal_clean_lib back to compat.
We shouldn't have removed this DSL method without a compat fallback.

Closes Homebrew/homebrew#48479.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-01-26 11:49:15 +00:00
Xu Cheng
74c0b1c56b fix prepend not available in Ruby 1.8
Closes Homebrew/homebrew#46071.
Closes Homebrew/homebrew#46069.
2015-11-17 20:49:10 +08:00
Xu Cheng
d108bf0a55 move more deprecated methods to compat folder 2015-11-17 18:52:00 +08:00
Xu Cheng
0c774cff50 hardware: temporary disable rubocop method rename rule
Closes Homebrew/homebrew#42540.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-08-06 17:23:56 +08:00
BrewTestBot
13d544e11e Core files style updates.
Closes Homebrew/homebrew#42354.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-08-03 13:22:35 +01:00
Xu Cheng
744de30089 move deprecated codes into compat
Closes Homebrew/homebrew#41974.
2015-07-21 21:58:10 +08:00
Mike McQuaid
3f9a00dd58 compat/requirements: unduplicate JavaRequirement. 2015-06-16 10:20:16 +01:00
Mike McQuaid
1e86730289 Rename requirements named *Dependency.
Dependency is another similar, related class and it's super confusing
to have some Requirements that are named *Dependency.

Closes Homebrew/homebrew#38891.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-06-16 08:12:01 +01:00
Xu Cheng
c9e45b9c26 stop supporting md5 checksum
This prevents a downgrade attack.

Closes Homebrew/homebrew#38433.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-04-07 22:48:55 +08:00
Xu Cheng
c8835afead move formula_specialties to compat
Closes Homebrew/homebrew#37365.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-03-04 23:20:13 +08:00
Jack Nagel
95aef55110 Simplify cxxstdlib_check implementation
The cxxstdlib_check method currently only supports one value, so we can
just define the accompanying instance method when necessary. If we ever
add more options we can back it with a data structure.
2014-08-16 02:16:05 -05:00
Jack Nagel
e6498f4dfc Remove the universal accessor from BuildOptions
BuildOptions is now immutable (finally).
2014-08-16 01:39:33 -05:00
Jack Nagel
61e633426a Remove obsolete constant
Formula that use this do not load anymore.
2014-06-22 19:33:21 -05:00
Jack Nagel
4d9d01893e Move deprecated Formula class methods to compat
These have all been moved to Formulary.
2014-06-22 15:03:17 -05:00
Jack Nagel
3b3c03159a Remove compat/brewkit
Formulae from the "brewkit" era are no longer compatible with the
Formula class.

This file was (unintentionally) removed from the $LOAD_PATH quite
a while ago, and nobody has complained, so remove it.
2014-06-16 13:58:54 -05:00
Jack Nagel
86942aeaee Remove an internal method from compat 2014-06-16 13:53:30 -05:00
Mike McQuaid
249aae177f formula: move cxxstdlib methods to the class.
This allows disabling this checks when e.g. pouring bottles.
2014-04-23 08:10:48 +01:00
Jack Nagel
403fdc7523 Implement fails_with_llvm compat method in terms of fails_with 2014-02-24 23:26:11 -05:00
Jack Nagel
f01a38772a Fix md5 compat layer
Fixes Homebrew/homebrew#23653.
2013-10-27 12:43:14 -05:00
Jack Nagel
df824a22a7 Avoid comparing MacOS.version to floats 2013-10-22 20:47:37 -05:00
Jack Nagel
805472946b Rename MacOS to OS::Mac 2013-10-18 12:56:51 -05:00
Jack Nagel
df537528c7 Reimplement SoftwareSpec on top of Resource 2013-09-17 21:29:52 -05:00
Jack Nagel
dd9c269c69 Rename HomebrewEnvExtension to Stdenv 2013-08-19 12:32:59 -05:00
Jack Nagel
3be67f7252 Reorganize compat 2013-05-10 23:27:28 -05:00
Jack Nagel
290a93ea75 Remove ancient global methods from compat 2013-05-10 23:27:27 -05:00
Jack Nagel
136aa4c6f4 Remove last use of deprecated Formula#recursive_deps
Fixes Homebrew/homebrew#19107.
2013-04-10 11:55:02 -05:00
Misty De Meo
2476801613 Hardware: separate out CPU values into CPU module
* CPU functions now exist in Hardware::CPU
* Added compatibility functions in compat/hardware_compat.rb
* Names are less specific to Mac hardware, e.g. CPU.family instead of
  Hardware.intel_family
* Hardware::CPU.family works for both Intel and PowerPC
* New helper methods on CPU, like .sse4? and .altivec?

Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2013-03-23 13:40:18 -05:00
Jack Nagel
c79d7272c8 Move Formula.all to compat 2013-03-20 22:32:56 -05:00
Jack Nagel
c8168d8a4a Simplify SoftwareSpec checksum methods
Reader methods for specific checksum types have been absent from the
Formula class for some time, so there isn't any reason to expose them in
SoftwareSpec, either.

Thus, these methods now only act as setters, and #checksum should be
used to access the constructed Checksum object.
2013-03-18 15:10:36 -05:00
Jack Nagel
456386c9b1 Reduce footprint of fails_with_llvm compat code 2013-03-18 13:29:33 -05:00
Jack Nagel
581e766809 Fix fails_with_llvm compatibility
Fixes Homebrew/homebrew#18565.
2013-03-18 13:00:47 -05:00
Jack Nagel
baffb31aab Silence "* interpreted as argument prefix" warnings 2013-02-18 12:13:34 -06:00
Jack Nagel
c166ce3f58 Move MD5 deprecation warning into Pathname#md5
This way it will print when the verification takes place, making it a
bit more obvious which formula it refers to.
2013-02-01 21:53:11 -06:00
Jack Nagel
1bb5d4e031 Add md5 support to compatibility, with deprecation warning 2013-02-01 13:24:36 -06:00
Jack Nagel
55681ca201 Dependency.expand_dependencies
Move Formula.expand_dependencies into the Dependency class, and extend
it to allow arbitrary filters to be applied when enumerating deps.

When supplied with a block, expand_dependencies will yield a [dependent,
dependency] pair for each dependency, allowing callers to filter out
dependencies that may not be applicable or useful in a given situation.

Deps can be skipped by simple calling Dependency.prune in the block,
e.g.:

  Dependency.expand_dependencies do |f, dep|
    Dependency.prune if dep.to_formula.installed?
  end

The return value of the method is the filtered list.

If no block is supplied, a default filter that omits optional or
recommended deps based on what the dependent formula has requested is
applied.

Formula#recursive_dependencies is now implemented on top of this,
allowing FormulaInstaller to exact detailed control over what deps are
installed. `brew missing` and `brew upgrade` can learn to use this to
apply the installed options set when expanding dependencies.

Move Formula.expand_deps and Formula#recursive_deps into compat, because
these methods do not respect the new optional and recommended tags and
thus should no longer be used.
2013-01-26 12:14:46 -06:00
Jack Nagel
3dcce70a6a Better reporting for MacPorts/Fink installations
closes Homebrew/homebrew#15853.
2012-12-17 17:18:22 -06:00
Jack Nagel
d4cfa1c0c5 Add deprecation warning to non-DSL fails_with_llvm
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-10 16:16:58 -05:00
Jack Nagel
59d5a246e7 Clean up MacOS version method usage
The MacOS.version? family of methods (other than "leopard?") are poorly
defined and lead to confusing code. Replace them in formulae with more
explicit comparisons.

"MacOS.version" is a special version object that can be compared to
numerics, symbols, and strings using the standard Ruby comparison
methods.

The old methods were moved to compat when the version comparison code
was merged, and they must remain there "forever", but they should not be
used in new code.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-10 16:16:54 -05:00
Max Howell
396ca3fc59 Add Version.slice to compat suite
Refs Homebrew/homebrew#14299.
2012-08-28 12:11:46 -04:00
Jack Nagel
166a9ba0ed Deprecate MacOS.version? style methods
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-18 11:25:59 -05:00
Jack Nagel
7488b9844b Adjust XQuartz/X11 module naming scheme
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-06 00:39:06 -05:00