3808 Commits

Author SHA1 Message Date
Jack Nagel
f4e23b2227 Remove unnecessary captures in otool regexp 2013-12-14 09:35:58 -06:00
Jack Nagel
ce19fa2223 Unify install name parsing 2013-12-14 09:35:58 -06:00
Jack Nagel
de20814162 keg: use start_with? instead of regexp match 2013-12-14 09:35:58 -06:00
Jack Nagel
c6c7b9b165 Extract HOMEBREW_TEMP constant 2013-12-14 09:35:58 -06:00
Jack Nagel
68f6936070 Move Pathname#dynamically_linked_libraries to mach module 2013-12-14 09:35:58 -06:00
Jack Nagel
f458fa9e9a keg: add debug output to install name machinery 2013-12-14 09:35:58 -06:00
Jack Nagel
c31512fe33 keg: the argument to find_dylib is already a Pathname 2013-12-14 09:35:58 -06:00
Jack Nagel
3662a2765d keg: combine loops in relocate_install_names 2013-12-14 09:35:58 -06:00
Jack Nagel
f6979cccb2 keg: eliminate reject_proc, make callers determine which names to fix 2013-12-14 09:35:58 -06:00
Jack Nagel
25632546a4 keg: yield install names successively instead of all at once
Every caller of install_names_for loops over the yielded array. Now that
we have separated the dylib id calculation and update, we can eliminate
the need for a separate loop and yield each install name individually.

Rename this method to "each_install_name_for" for clarity.
2013-12-14 09:35:57 -06:00
Jack Nagel
b86e98426e keg: decouple dylib id changes from install name changes
The dylib id calculation does not use any information gathered in
install_names_for, so we can pull the logic out completely and only
yield the install names.
2013-12-14 09:35:57 -06:00
Jack Nagel
f4618f0147 keg: factor out dylib id calculation 2013-12-14 09:35:57 -06:00
Jack Nagel
7a10493387 keg: try to avoid disk IO when possible
Calling Pathname#text_executable? reads in the first 1024 bytes of the
file, so try the basename check (which requires no filesystem access)
first.
2013-12-14 09:35:57 -06:00
Jack Nagel
24d8791dfb keg: use lib helper 2013-12-14 09:35:57 -06:00
Jack Nagel
935091cd8e Pathname#extname returns a string 2013-12-14 09:35:57 -06:00
Adam Vandenberg
856266432d fix repo URL for brew search
Closes Homebrew/homebrew#25192.
2013-12-13 18:31:11 -08:00
Misty De Meo
775406be91 brew: error out if bad xcode-select path given
Since a bad xcode-select path can cause many brew commands to freeze,
it's worth warning users and bailing out as early as possible.

The doctor check wasn't good enough, since the doctor could freeze
before the warning about this was ever printed.
2013-12-13 08:52:29 -08:00
Bovard Tiberi
569bd7c425 doctor: fix PATH issues in comments
Closes Homebrew/homebrew#25170.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2013-12-12 20:07:39 -06:00
Jack Nagel
07006bfdd4 bottle: only chdir into the cellar when tarring up the bottle 2013-12-12 19:46:37 -06:00
Jack Nagel
bc3ebd8343 Build install summary in a separate method and print all at once
This prevents interleaved output, e.g. when running with Ruby warnings
turned on.
2013-12-12 15:42:35 -06:00
Jack Nagel
3516bb68d3 Combine superenv tests 2013-12-12 15:42:35 -06:00
Jack Nagel
b174012b17 Initialize ivars to silence warnings 2013-12-12 15:42:35 -06:00
Jack Nagel
6c04ccfb3b Remove unused variables 2013-12-12 15:42:35 -06:00
Mike McQuaid
55db2f7e11 uses: fix weird colon output.
Closes Homebrew/homebrew#24145.
2013-12-12 21:24:42 +00:00
Mike McQuaid
38d2ffb2b8 audit: remove deprecated Python features.
These will be removed soon so don't check for them.
2013-12-12 21:07:41 +00:00
Jack Nagel
1aadc83e70 Put positive case first, drop redundant is_a? check 2013-12-12 14:53:53 -06:00
Jack Nagel
a55f66839a Add another fails_with test 2013-12-12 14:53:53 -06:00
Jack Nagel
00d0de5b24 Report correct file/line in backtraces for attr_rw methods 2013-12-12 14:20:46 -06:00
Adam Vandenberg
e523262dfa monkey around for emacs' code highlighter
The abv method has a construct that causes emacs to not highlight
the rest of pathname.rb, so move abv lower in the file.

Sorry.
2013-12-12 08:22:39 -08:00
Adam Vandenberg
7516cee374 +x wrapper scripts, so they work during post-install 2013-12-12 08:21:22 -08:00
Jack Nagel
5c18054341 Simplify prefix test 2013-12-11 19:18:23 -06:00
Jack Nagel
4f158f23b8 Set bottle version rather than re-parse it from the URL 2013-12-11 01:49:00 -06:00
Jack Nagel
1b7718f6a7 bottle: determine revision more reliably
Closes Homebrew/homebrew#25100.
2013-12-10 16:39:13 -06:00
Jack Nagel
a933b58507 versions: restore original constant
Before:

  f1 = Formula.factory('tree')
  f1.versions
  f2 = Formula.factory('tree')
  f1.class == f2.class # => false

After:

  f1 = Formula.factory('tree')
  f1.versions
  f2 = Formula.factory('tree')
  f1.class == f2.class # => true
2013-12-09 21:13:45 -06:00
Jack Nagel
b6cbd08e93 Implement hash equality for Version 2013-12-09 19:43:07 -06:00
Jack Nagel
8f42185e18 bottle: re-raise interrupt after cleanup 2013-12-09 19:38:20 -06:00
Jack Nagel
4afd633570 bottle: clean up after interrupts 2013-12-09 17:35:05 -06:00
Jack Nagel
c3ac88d8c7 versions: delete unused method 2013-12-09 17:34:04 -06:00
Jack Nagel
291cdea687 Extract constants for checkums in tests 2013-12-09 15:57:50 -06:00
Jack Nagel
5e0a8668fb Silence more warnings 2013-12-09 15:15:53 -06:00
Jack Nagel
bac0536730 keg_only_reason and cc_failures are not DSL methods 2013-12-09 15:15:53 -06:00
Jack Nagel
e1480953e6 Use accessors to silence uninitalized ivar warnings 2013-12-09 15:15:52 -06:00
Jack Nagel
f579d90458 Expand requirements of default deps added by other requirements
Dependencies built from requirements with a default formula may
themselves have requirements, and these requirements may have default
formulae, which may have more requirements, etc., so we have to keep
expanding until this isn't the case.

Fixes Homebrew/homebrew#25025.
Fixes Homebrew/homebrew#25037.
2013-12-09 14:36:10 -06:00
Jack Nagel
08055e1776 Ensure option names are consistent for default formula requirements 2013-12-09 14:36:10 -06:00
Jack Nagel
901902b53b Compute recursive deps for default_formula deps 2013-12-09 14:36:10 -06:00
Jack Nagel
293bde278a Rename filter_deps to expand_dependencies 2013-12-09 14:36:10 -06:00
Jack Nagel
be5f9545dd Move dependency expansion logic up one level 2013-12-09 14:36:10 -06:00
Jack Nagel
0b9c29a667 Use separate collection for requirement deps 2013-12-09 14:36:10 -06:00
Jack Nagel
677c78d77e Pass deps collection to be expanded as a parameter 2013-12-09 14:36:10 -06:00
Jack Nagel
109e9dc58b Silence some Ruby 2.1 warnings 2013-12-09 13:44:45 -06:00