76 Commits

Author SHA1 Message Date
Misty De Meo
30fdbe089b Merge pull request #1435 from mistydemeo/dev_tools_version
Add "null version" class, and return compiler versions/build versions as Version objects
2016-11-14 13:44:03 -08:00
Markus Reiter
353b67a6b2 No empty whens. 2016-11-14 09:45:44 +01:00
Misty De Meo
c7be025229 CompilerSelector: fix null check, tests 2016-11-10 15:09:36 -08:00
Misty De Meo
20bbeb5e9c Return compiler versions and builds as Versions 2016-11-10 15:09:36 -08:00
Markus Reiter
b987230ddf RuboCop: Style/CaseEquality 2016-09-25 00:22:53 +02:00
Markus Reiter
e851c9bf6c Style/Alias: Prefer alias. 2016-09-23 18:19:53 +02:00
Mike McQuaid
3982950e61 rubocop --auto-correct all hash-rocket usage. 2016-09-17 16:14:13 +01:00
Mike McQuaid
6693915399 rubocop --auto-correct all remaining files.
But remove some manual `.freeze`s on constants that shouldn't be
constants.
2016-09-17 16:14:13 +01:00
Alex Wang
4cec6f5dd0 Teach brew to recognize gcc-HEAD as valid compiler
Building gcc with --HEAD results in most of the executables not having a
version suffix, e.g. Building/installing gcc 6 would result in gcc-6,
g++-6, etc. being installed, while building/installing gcc --HEAD would
result in gcc-, g++-, etc. being installed.

The lack of a version suffix prevented brew from recognizing a valid gcc
install, resulting in brew instructing users to install gcc before
building certain formulae even though gcc is installed.

A patch to the gcc formula makes the version number for --HEAD builds
the major version number of the stable version + 1 (7 at this time).
This patch teaches brew to recognize current --HEAD builds as valid
compilers.
2016-09-14 11:42:45 -04:00
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
e316cc9296 Make development tools code cross-platform. 2016-05-08 16:51:22 +01:00
Izaak Beekman
b0d906f0f8 compilers: support gcc 6 2016-04-29 11:19:35 -05:00
Dominyk Tiller
c7c9919d3a compilers: use comma consistently 2016-01-03 19:08:11 +00:00
Baptiste Fontaine
169b8fc039 Revert "minor perf improvements"
This reverts commit 16a2a8274a7808e63a6c78475e12a7c0ef5812ef.
2015-12-26 23:00:38 +01:00
Baptiste Fontaine
48681c3f3a minor perf improvements
Closes Homebrew/homebrew#47224.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-12-26 22:58:26 +01:00
Mike McQuaid
2c959a7d58 More API documentation.
And remove the documented stuff from the `example-formula.rb`.

Closes Homebrew/homebrew#43241.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-08-29 15:43:16 +01: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
Jack Nagel
7c83e3ffe3 Remove workarounds for destructuring single-element hashes 2015-06-19 22:30:13 -04:00
Jack Nagel
09f8c54f83 Move some constants from env to compiler constants 2015-06-19 21:38:39 -04:00
Jack Nagel
703d8a1aa3 Revert "Remove conditional"
This method may see values originating HOMEBREW_CC.

This reverts commit 9c74f42962090c016143744b057e13aa75d9b13e.
2015-05-17 19:22:08 -04:00
Jack Nagel
dcaaa20b34 Remove conditional 2015-05-08 22:23:30 -04:00
なつき
6181a786c0 compilers: support gcc 5
Closes Homebrew/homebrew#39470.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2015-05-08 22:23:30 -04:00
Ian Lancaster
0705d75375 compilers: blacklist llvm from :openmp
Closes Homebrew/homebrew#38912.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-23 10:09:33 +01:00
Jack Nagel
3de77e4e1a Stop recording the fails_with cause internally
The string passed as the cause is currently unused, so we don't need to
actually store it.
2014-09-21 00:57:32 -05:00
Jack Nagel
c5f2f6b539 Make --cc override the compiler selector 2014-09-18 15:50:54 -05:00
Jack Nagel
04dae13ae7 Replace CompilerQueue with predetermined priority lists 2014-09-18 15:50:54 -05:00
Jack Nagel
288c7974dc Move Compiler struct into CompilerSelector namespace 2014-09-18 15:50:54 -05:00
Jack Nagel
ae88549797 Remove fails_with? from the formula instance 2014-09-18 15:50:54 -05:00
Jack Nagel
1eecf1ac0b Don't use Hash#first
Fixes Homebrew/homebrew#31360.
2014-08-06 09:56:09 -05:00
Jack Nagel
9aac71045c Add inspect to CompilerFailure 2014-08-03 15:28:51 -05:00
Jack Nagel
eb528fd7cd Eliminate a nil check 2014-08-03 13:14:50 -05:00
Jack Nagel
d54bce6a1a Remove dead code 2014-08-03 13:13:23 -05:00
Jack Nagel
b6e9600b9f Eliminate consideration of major_version
The major version is implicit in the compiler name. Since the name is
used when matching failures to compilers, we don't need to consider the
major version separately.
2014-08-03 11:15:39 -05:00
Jack Nagel
4580d86809 Use a separate class for GNU compiler failures
major_version is now only used internally by the failure object
2014-08-03 10:47:47 -05:00
Jack Nagel
8e8b9acc01 Move compiler failure matching logic into failure object 2014-08-03 10:47:47 -05:00
Jack Nagel
e5d6247ae7 Rename compiler attribute to name 2014-08-03 10:47:47 -05:00
Jack Nagel
2fedd5b09a Don't pass nil to fails_with? 2014-08-03 10:47:47 -05:00
Jack Nagel
ffc5687fc2 Eagerly create and reuse cxx11 compiler failure objects 2014-08-01 20:15:58 -05:00
Jack Nagel
525e5f791f Remove knowledge of DSL implementation from initialize 2014-08-01 20:15:57 -05:00
Misty De Meo
e18faa7557 --cc=: make GNU_GCC checks stricter
Fixes Homebrew/homebrew#30668
2014-07-29 19:31:07 -07:00
Jack Nagel
32d84377d5 Move constants so we don't have to load all of ENV to get them 2014-07-02 21:58:43 -05:00
Jack Nagel
9d030f8397 Combine conditionals 2014-06-16 16:58:13 -05:00
Jack Nagel
be1822dd72 Place alias adjacent to aliased method 2014-06-16 16:40:09 -05:00
Jack Nagel
ff2d8fece3 Remove unused method alias
Unlike CompilerFailure, the interface of Compiler is entirely internal,
so we don't need to maintain compatibility with anything.
2014-06-16 16:39:07 -05:00
Jack Nagel
6eb7e0c27f Eliminate an uninitialized ivar warning 2014-06-11 21:34:09 -05:00
Jack Nagel
c319eb1f01 Decouple CompilerSelector from MacOS, clean up tests 2014-06-11 21:23:05 -05:00
Jack Nagel
290db72bd5 Pass the version into the Compiler constructor, eliminate a type check 2014-06-11 21:21:50 -05:00
Misty De Meo
621bb0049f CompilerFailure: llvm can't build C++11 either 2014-04-14 13:40:55 -07:00
Misty De Meo
63d6f054c4 CompilerFailure: don't mutate compiler hashes
Fixes Homebrew/homebrew#28357.
2014-04-12 11:28:24 -07:00
Misty De Meo
9af3917ebf Formula: provide compiler failure collections
`needs` allows formulae to specify dependencies on cross-compiler
dependencies, allowing multiple failures to be specified in a single
statement. For instance, `needs :cxx11` adds seven compiler failures.

Closes Homebrew/homebrew#22912.
2014-04-12 10:36:00 -07:00