103 Commits
Author SHA1 Message Date
Francois-Xavier Coudert a30e27b403 compilers: add gcc-12 2022-04-30 22:05:35 +02:00
Carlo Cabrera a288029cc9 compilers: add gcc-11
Needed for https://github.com/Homebrew/homebrew-core/pull/74843.
2021-05-02 00:29:01 +01:00
Bo Anderson 3cebcd43b7 compilers: support more fails_with uses on GCC. 2021-03-30 23:15:18 +01:00
Michka Popoff 0a292c7041 linux: use preferred_gcc instead of gcc 2021-02-09 21:48:48 +01:00
Michka Popoff 221983dbcf compilers: prefer gcc 5 on linux
Fixes #10170 by preferring gcc@5 on linux
This makes sure ENV.cc and ENV.cxx is correctly set:

If a formula does not explicitely depend on a brewed gcc,
ENV.cc is set to gcc-5 (system gcc-5 or brewed gcc-5) with this change,
even if other gcc versions are installed on the system.
2021-02-08 13:26:50 +01:00
Markus Reiter 0184e271d8 Fix RuboCop offenses. 2020-11-17 11:09:55 +01:00
EricFromCanada 3768b7a6e9 apidoc: update comment wording, punctuation, formatting 2020-11-06 00:21:02 -05:00
Markus Reiter 24ae318a3d Move type annotations into files. 2020-10-10 14:59:39 +02:00
Markus Reiter a5c1f38186 Document CompilerFailure and CompilerSelector. 2020-08-26 03:13:58 +02:00
Bo Anderson 4bca7f0cba compilers: support GCC 10 as a formula 2020-05-09 11:06:02 +01:00
Trung Le 420fcfca0e Support GCC 10 2020-05-01 00:59:08 +10:00
FX Coudert 7d014d0565 Support GCC 9 2019-05-03 16:58:11 +02:00
Mike McQuaid 36dbad3922 Add frozen_string_literal to all files. 2019-04-20 13:27:36 +09:00
Mike McQuaid d1ea6f38d3 Fix mutable constants violations. 2019-04-19 21:46:20 +09:00
Mike McQuaidandGitHub 8ce7b1d39c Merge pull request #5958 from xu-cheng/compiler
CompilerSelector: prefer the gcc version offered by the gcc formula
2019-04-03 21:51:48 +01:00
Mike McQuaid d12e39633c Remove odisabled. 2019-04-01 15:07:50 +01:00
Xu Cheng 363355ae47 CompilerSelector: prefer the gcc verion offered by the gcc formula
When GCC is used (default for Linux), we should prefer the gcc offered
by the gcc formula. As such even if users install a gcc with higher
version from `gcc@*` formula, it will not be picked up to build other
formulae. This would also allow users to safely delete `gcc@*` formula.

Closes #5953.
2019-03-31 21:42:05 +08:00
Mike McQuaid d64429a736 rubocop: enable Style/IfUnlessModifier. 2019-02-21 12:55:49 +00:00
Mike McQuaid 1aa8ad09e2 Deprecate macOS versions below Mavericks
And remove all dead/unneeded code.
2019-01-27 12:27:47 +00:00
Mike McQuaid 170c5493a4 Update deprecations
- Add some `odeprecated`
- Make some `odeprecated` now `odisabled`
- Remove `odisabled` code.
- Remove old update migrations
- Remove GCC 4.0 compiler
- Remove Tiger-only code
- Remove 32-bit-only code
- Remove use of LD64
- Remove GCC 4.3 - 4.8 support.
2019-01-08 19:13:46 +00:00
Mike McQuaid 737b84b54b brew style --fix fixes. 2018-11-02 17:29:23 +00:00
Shaun Jackman 13816a5687 GNU_GCC_VERSIONS: Remove the compiler gcc-4.3 2018-10-03 11:43:52 -07:00
Shaun Jackman 1cdc34eec3 Default compiler is gcc on Linux 2018-09-30 11:20:35 -07:00
FX Coudert 819b210263 Support GCC 8 2018-04-30 17:03:11 +02:00
Shaun Jackman 7e64211765 Add needs :cxx14 2017-02-23 10:49:20 -08:00
Mike McQuaid e50102d91e ENV: deprecate old methods.
These should have been deprecated long ago but we didn’t really have
the necessary framework to do so.
2016-12-30 20:20:13 +00:00
Alex Wang 3e4544025d Prefer brewed Clang over gcc-6 for needs :openmp
Clang has fully implemented OpenMP support as of LLVM 3.7, so if OpenMP
is required by a formula gcc is no longer the only choice of compiler.

Clang should be preferred over gcc because using gcc meant linking
against libstdc++, which is ABI incompatible with libc++. This may be
unnoticeable for some users, but it causes other builds to fail, e.g.
pstoedit when imagemagick was built with OpenMP. pstoedit is required
for the octave formula, so for some users this could be a significant
problem.
2016-11-18 08:54:09 -05:00
Misty De MeoandGitHub 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 BeekmanandMike McQuaid 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
BrewTestBotandMike McQuaid 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
なつきandJack Nagel 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 LancasterandMike McQuaid 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