In 6e3a585607116d06f47aac2ff5a649f2898216f0 ("Improve superenv
add/remove message."), more debugging information was added to the
"make_fuss" output generated by the superenv compiler
wrapper.
This resulted in some breakage in configure scripts that inspect stderr,
so in e1bd9b9e980c433878e60833f09964b8ca996657 ("Don't use stderr for
make_fuss output."), the output was moved to stdout. This only appeared
to solve the problem, since stdout is buffered but stderr is not.
Later, in fb749e47509b77b5bd89e7b14f0a1097d4af7f40, Homebrew started
generating logs even in verbose mode. This had the side effect of moving
stdout/stderr from a TTY to a pipe, and thus stdout was no longer
line-buffered.
Since it was not line-buffered, and Ruby's internal buffers were not
flushed, the debug output was being lost. This was addressed in
2d5724af8613c820b8c14f4171fe1de6a17f10c3 ("cc: ensure wrapper output is
always flushed").
This caused stdout to be flushed during configure, which resurfaced the
original bug that prompted e1bd9b9e980c433878e60833f09964b8ca996657.
This was fixed by disabling the debug output during configure, in
f1779837a46a58520560fba3850a0e2992284d0a.
Since the original bug has been addressed in a more robust way, we can
move the debug output back to stderr.
FixesHomebrew/homebrew#23923.
* In certain cases, a C++ software may result in linking to a different
and incompatible C++ standard library than its dependencies and still
works fine because it is by design. Examples include GCC, which will
bootstrap itself and self-host after finish.
* Add a cxxstdlib_check method to formula to request changing the C++
standard library checking. Currently using "cxxstdlib_check :skip"
will let a formula skip such checking. This should only be used on
rare occasions and be very careful.
ClosesHomebrew/homebrew#23687.
* When Homebrew developer mode is enabled, if a bottle is not found to
be relocatable attempt to explain why
* Print out paths of each file that still contains the string search for
* If the string searched for was found in an executable, check to see
if `otool` can explain the string's appearance
* If otool can't explain, see if `strings` can explain
ClosesHomebrew/homebrew#23824.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
When a formula is removed from core and installed let's tap it so users
can get updates without caring which tap we want to put things in.
This should allow us to migrate a lot of things to taps.
ClosesHomebrew/homebrew#23760.
Ruby's OpenURI library is somewhat broken under 1.8 and chokes on
otherwise valid values of http(s)_proxy. Use curl to get the mirror list
instead.
FixesHomebrew/homebrew#23708.
The name is pretty self explanatory, it unlinks all installed
applications found under `brew --prefix` from either `~/Applications` or
`/Applications`
ClosesHomebrew/homebrew#22729.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Previously if a bottle had no checksum for a particular platform (i.e.
currently there are no Mavericks bottles) then it would generate a
different revision (and thus filename) to the rest of the bottles being
generated which meant bottles needed to be manually renamed.
Instead check the actual bottle object's checksums to make sure that
we've looked at the previous bottles for all platforms rather than just
the current one.