227 Commits

Author SHA1 Message Date
Shaun Jackman
97932c1abf Move linkage_checker from os/mac to generic 2018-02-28 11:18:27 -08:00
Maxim Belkin
5536f49305 Cross-platform java detection 2018-02-22 18:32:21 +00:00
Maxim Belkin
f8874004c2 Make 'xz' and 'cvs' dependencies conditional 2018-02-21 14:11:35 +00:00
Maxim Belkin
14d7a7a08c Code refactoring 4.0 2018-02-20 21:33:38 +00:00
Maxim Belkin
d25fc5ce50 Code refactoring 2018-02-19 09:54:36 +00:00
Maxim Belkin
3dabebbd16 Refactoring based on suggestions
Defaulting zip_dep_if_needed(tags) and bzip2_dep_if_needed(tags)
methods to those on Linux and overriding them on macOS.
2018-02-19 06:49:42 +00:00
Maxim Belkin
1b74f21492
Removing unnecessary arguments 2018-02-16 15:08:55 -06:00
Maxim Belkin
5a92976120
Fixing brew-style offenses 2018-02-16 10:49:43 -06:00
Maxim Belkin
444b292df9
zip and bzip2 dependencies when needed
On some systems identified as Linux, zip and bzip2 might
not be available. Therefore, on such platforms we add them
unconditionally as dependencies when required. On Mac, these
dependencies are always satisfied.
2018-02-16 10:41:14 -06:00
Mike McQuaid
e5c82dd3d9 Deprecate requirements harder
Remove more Requirement logic to enable future removal of default
formula logic. Also, output deprecations, convert symbol requirement
usage to deps and simplify the compatibility code for the direct
Requirement usage.
2018-01-18 08:31:20 +00:00
Mike McQuaid
27be33b245 Deprecate Git, Subversion requirements.
These rely on `default_formula` to be useful and are better following
the `*_dep_if_needed` pattern.
2018-01-10 13:19:50 +00:00
Shaun Jackman
5d9149a4b9 LD64Dependency is needed on macOS only
Move ld64_dependency.rb to os/mac/.
2018-01-03 10:52:12 -08:00
Mike McQuaid
d54e670a64 requirements: move more to compat. 2017-12-30 20:56:55 +00:00
Mike McQuaid
38ce994007 Deprecate more requirements.
These are ones that were either already deprecated due to audit rules
or are just a simple `which` with a `default_formula` so should just
be a dependency.
2017-12-23 16:53:25 +00:00
Mike McQuaid
5b178c2892 dependency_collector: cleanup optional system deps 2017-12-23 16:36:33 +00:00
Mike McQuaid
837ea74f44
Merge pull request #3543 from MikeMcQuaid/remove-env-unsets
Remove some unset/checked environment checks
2017-12-10 17:46:29 +00:00
Shaun Jackman
020c1adebd X11Requirement: Inherit from generic class [macOS]
Fix the warning: already initialized constant X11Requirement
2017-12-08 10:38:58 -08:00
Mike McQuaid
6b9ca5dbf5 Remove some unset/checked environment checks
These will be redundant once environment filtering is on by default
in #3529.
2017-12-08 16:33:33 +00:00
Mike McQuaid
5055c31a86
Merge pull request #3483 from sjackman/x11
Implement X11Requirement for Linux
2017-12-08 15:47:37 +00:00
Shaun Jackman
0575d7b610 config: Print host glibc version [Linux] 2017-12-07 10:37:19 -08:00
Shaun Jackman
804393efc4 Implement X11Requirement for Linux
Move the XQuartz implementation to extend/os/mac/requirements.
2017-12-07 08:45:29 -08:00
Shaun Jackman
e5847b652f extend/pathname: Add os/linux/elf.rb 2017-12-03 16:22:51 -08:00
Mike McQuaid
d0e893fab6
Merge pull request #3516 from sjackman/system-config-version
config: Print the linked_version [Linux]
2017-12-03 09:19:22 +00:00
Shaun Jackman
06b9f1c50d config: Print the linked_version [Linux]
Otherwise when the keg was installed but out-of-date, it would display "N/A".
2017-12-02 09:27:39 -08:00
Shaun Jackman
0ce7a74c58 Hardware::CPU: Implement OS-agnostic methods 2017-12-01 15:18:35 -08:00
Mike McQuaid
fb6cf0c3f8 More environment filtering fixes
- Make `brew pull` pass through Git environment variables
- Whitelist all `TRAVIS_` variables.
2017-11-27 10:48:03 +00:00
Shaun Jackman
7394208873 Cleaner: ELF files are executable on Linux 2017-11-26 08:25:50 -08:00
ilovezfs
15a2ef525f ENV: don't set MACOSX_DEPLOYMENT_TARGET
CMake tries to use Xcode if MACOSX_DEPLOYMENT_TARGET is set but that can
lead to build failures when SDKROOT isn't set. The CMake behavior at
minimum manifests as -isysroot spontaneously being set to the Xcode SDK,
which brew sometimes can't successfully fully unwind with its ENV hacks.
2017-11-18 11:31:08 -08:00
Mike McQuaid
2e1331cbc8 Tweak SDK variables for new Xcode/CLT setup. 2017-11-17 21:35:49 +00:00
Mike McQuaid
cd0db51343 diagnostic: check if Xcode needs CLT installed.
Require the CLT on all but the latest version of macOS to avoid the
continuous workarounds for SDK weirdness.
2017-11-17 21:35:49 +00:00
Mike McQuaid
5241d07474 environment filtering: pass through TRAVIS vars.
We use these internally so let's map them to `HOMEBREW_` variables.
2017-11-13 10:01:54 +00:00
Mike McQuaid
ee4172159b
Merge pull request #3377 from maxim-belkin/extend-pathname
pathname: new methods and improvements
2017-11-10 17:49:27 +00:00
Maxim Belkin
de0b93f912
pathname: improvements, cleanups, and new methods
- atomic_write: close file before renaming to prevent error:
  'Device or resource busy'
- ensure_writable: preserve executable bit
- new elf? and dynamic? methods
2017-11-07 14:18:25 -06:00
Mike McQuaid
2ad1799308 os/mac/diagnostic: fix XQuartz message.
Fixes #3434.
2017-11-07 07:39:10 +00:00
Mike McQuaid
603d6fd1f5 ENV/super: simplify version checks. 2017-11-05 15:39:43 +00:00
Mike McQuaid
8c6defd9cf diagnostic: simplify version checks. 2017-11-05 15:39:43 +00:00
Mike McQuaid
b69d71edea system_config: handle new non-string Xcode version 2017-11-05 15:39:43 +00:00
JCount
224864b149 java_requirement: support prompting users to install legacy Java casks
This enhances the Java requirement to support prompting the user
to install the correct legacy Java version via Cask for formulae
that don't yet work with the latest version of Java. Previously,
even if the formula had a strict requirement that a specific,
older version of Java be used, the messaging would tell the user to
`brew cask install java` (i.e. to install the latest version of Java),
which wouldn't actually satisfy the requirement.
2017-10-26 09:57:03 -04:00
Markus Reiter
9bee9ca575 Use “squiggly” heredocs. 2017-10-18 14:39:09 +02:00
Maxim Belkin
dd9415c8d3
remove sneaky empty line 2017-10-16 12:23:27 -05:00
Maxim Belkin
336fbb5db2
caveats: making plist_caveats macOS-only 2017-10-16 11:15:54 -05:00
Maxim Belkin
5140c741f3
caveats.rb: empty method on Linux 2017-10-13 13:26:14 -05:00
ilovezfs
e8da9613fb Revert "mach: Avoid reopening the file for relocation" 2017-09-27 02:08:23 -07:00
ilovezfs
0831f31e44 Revert "keg_relocate: use correct number of arguments in call to change_install_name" 2017-09-27 02:07:22 -07:00
Steven Peters
fc5b3778cb keg_relocate: fix call to change_install_name
During the changes to macho file relocation refactoring
in #3101, #3138, and #3139,
the number of arguments to the mach::change_install_name
function changed from 3 to 2, but
there was still an instance of the function being called
with the wrong number of arguments.
2017-09-26 17:30:28 -07:00
William Woodruff
6098998674 Merge pull request #3139 from woodruffw/macho-use-object
mach: Avoid reopening the file for relocation
2017-09-25 23:30:42 -04:00
William Woodruff
d618e574fb
mach: Avoid reopening the file for relocation
This commit allows the relocation code to perform install name
and dylib ID changes without reopening the file separately.
2017-09-25 17:46:23 -04:00
Mike McQuaid
6b3bb666e8 Merge pull request #3174 from sjackman/popen-options
popen: Do not suppress stderr when HOMEBREW_STDERR
2017-09-23 16:31:52 +01:00
Mike McQuaid
d7fbcc6211 Merge pull request #3190 from MikeMcQuaid/curl_https_fix
development_tools: fix curl https handling.
2017-09-23 10:58:10 +01:00
ilovezfs
352a8817e9 superenv: more help for Autotools with 10.13 SDK on 10.12
Add fmemopen and open_memstream to the list of ac_cv_func_*=no symbols
for 10.12 with the 10.13 SDK.
2017-09-22 17:10:40 -07:00