aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew
AgeCommit message (Collapse)Author
2013-09-06Fix file descriptor leak in Formula#systemJack Nagel
2013-09-06Close the read end of the error pipe after the buildJack Nagel
2013-09-06Enable verbose compile command in create template.Xiyue Deng
* Add "--disable-silent-rules" option to autotools-based configure options. - Also add comments to notify user removing unrecognized configure options. * Add "-DCMAKE_VERBOSE_MAKEFILE=ON" to cmake-based configure options.
2013-09-06ENV: remove trailing slash from OpenGL header pathJack Nagel
2013-09-05Fix breakage in option recognitionJack Nagel
Fixes Homebrew/homebrew#22347.
2013-09-05Revert Library/Homebrew/cmd/install.rb to 4b320eec.Xiyue Deng
* Fix problem when install exception got swallow and reinstall thinks it succeeded.
2013-09-05Suggest installing pip via easy_installMax Howell
2013-09-05Improve python tests for brew botsSamuel John
Allow `build.with?` and similar methods to be used during the test phase. The BuildOptions (`build`) are initialized with the `Tab.used_options` unless explicitly overwritten on the command line. So basically `build.with?` works in `def install` and in `test do` as one would naively expect. (For the test, gramatically it should be `built.with?` but who cares) If a formula was installed `--with-python`, now the tests are also run `--with-python`. This enables us to use the `python do ... end` in a meaningful manner. Using `python do ... end` blocks for the tests, because the bot.brew.sh has system python per default and we need to set the PYTHONPATH for the test. Potentially to different values for Python 2.x and 3.x.
2013-09-05reinstall cleanupSamuel John
2013-09-05Make reinstall transaction safe.Xiyue Deng
* Aborting during reinstall will now restore the originally installed keg. - Change install code to pass on CannotInstallFormulaError exception to caller so it can be reused in reinstall. * Add "--force-new-install" flag to force installing a new formula. Closes Homebrew/homebrew#22190. Signed-off-by: Samuel John <github@SamuelJohn.de>
2013-09-03ENV: convert values to strings in cc settersJack Nagel
2013-09-03ENV: use cc accessorJack Nagel
2013-09-03pil: is now blacklisted.Samuel John
PIL has been removed and users should use pillow either by `pip install pillo` or `brew install samueljohn/python/pillow`.
2013-09-03brew search <user>/<repo> [substring]Samuel John
For example `brew search homebrew/science` to get a list of all formulae from that tap, even if not yet tapped. `brew search <user>/<repo>/<substr>` or `brew search <user>/<repo> <substr>` to grep for `<substr>` inside of the tap `<user>/<repo>`.
2013-09-03doctor: be more helpful with suggestion about PATHSamuel John
- Show a one liner that will append to the user's ~/.bash_profile. In 95% this will be ok and we assume zsh people are smart enough to know what they have to do.
2013-09-03PythonInstalled: Allow formulae to set/append PYTHONPATHSamuel John
Improve robustness of `PYTHONPATH` by first unsetting it (during `satisfy`) so that the `PythonInstalled` can get the `python.version` and so forth and then, after that, setting the `PYTHONPATH` to our `global_site_packages`. In the `python_helper` we append to the `PYTHONPATH` so if that var has been set in a formula, it is respected. Brew audit does no longer complain about setting the `ENV['PYTHONPATH']`.
2013-09-03PythonInstalled: Adding a private_site_packagesSamuel John
that live in the `libexec` dir of a `Cellar`.
2013-09-03python_helper: Comment wordingSamuel John
2013-09-02Formula: record full path to non-core formulaMisty De Meo
If a formula is passed with a relative path, the build process might try to expand it in the wrong directory, where it doesn't exist. Fixes Homebrew/homebrew#22266.
2013-09-01Remove attr_rw for CompilerFailure version attributeMisty De Meo
This reverts commit 7db9ef9650a44ef8155bf66efd88703e580057b0.
2013-09-01CompilerFailure: specify attr_rw for versionMisty De Meo
2013-09-01Remove HOMEBREW_CC warning from ENV.compilerMisty De Meo
ENV.compiler is called outside setting up the build environment, where values unsupported for user input might have been specified - for example, GNU GCC executables.
2013-09-01Check dependencies for a compatible C++ stdlibMisty De Meo
There are now a few possible C++ standard libraries a given build could be using, with subtle incompatibilities and possibility of breakage when mixed. This makes sure that the dependency chain was compiled in a compatible manner. Fortunately all of the Apple compilers use the same libstdc++, and we don't yet support building with libc++, so this will primarily only nag users trying to use GNU gcc who already have software installed with Apple compilers. Future TODOs: * Add general support for building with libc++ (compatibility checking already handled here) * Possibly track formulae which actually build C++ bindings, so that users aren't bothered by spurious nagging re: interpreted languages, pure-C software, etc.
2013-09-01Tab: track C++ stdlib in useMisty De Meo
There are subtle incompatibilities between Apple's libstdc++ and the libstdc++ used by the various GNU GCC formulae. In addition, we'll likely also be supporting libc++ in the future, and that's also incompatible with the other stdlibs. Tracking it in the tab lets us make sure that dependencies are all built against the same stdlib to avoid subtle breakage.
2013-09-01Move Tab creation into build processMisty De Meo
The parent process doesn't have access to the selected compiler, which will be important in the next commit. Fortunately the child process already has a filtered and massaged ARGV, so it has enough information to build the tab itself.
2013-09-01Implement fails_with for non-Apple compilersMisty De Meo
This adds support for non-Apple GCC compilers in the fails_with code. A fails_with block for a non-Apple compiler looks like: fails_with :gcc => '4.8.1' do cause 'Foo' end Non-Apple compilers don't have build numbers, so compiler failures are based on version strings instead. Internally non-Apple compilers can be distinguished because they are passed around as strings instead of symbols. In addition, this alters the priority list for compilers, with the following changes: * Apple GCC 4.2 and LLVM-GCC swap positions, with GCC now taking priority. (Maybe LLVM-GCC should just go away.) * Non-Apple GCC compilers are ranked below GCC 4.2 but above LLVM-GCC and Apple GCC 4.0.
2013-09-01Provide reusable GNU GCC constants in ENVMisty De Meo
2013-09-01Experimental support for non-Apple GCCsMisty De Meo
2013-09-01formula_installer: handle post_install exceptions.Mike McQuaid
Warn users and point them to `brew postinstall` (which can provide a backtrace). Closes Homebrew/homebrew#21887.
2013-09-01brew-postinstall: add new command.Mike McQuaid
Runs post-install jobs in case they failed or need rerun for any reason.
2013-09-01brew-reinstall: don't list --force in args.Mike McQuaid
2013-09-01brew-reinstall: don't try and rebuild bottles.Mike McQuaid
2013-09-01Allow forcing bottle installation.Mike McQuaid
2013-08-31Add test for option description rulesJack Nagel
2013-08-31Push dependency option generation into BuildOptionsJack Nagel
2013-08-31Add test for dependency optionsJack Nagel
2013-08-31Workaround for debrewAdam Vandenberg
See Homebrew/homebrew#21720.
2013-08-30ENV: only set fortran flags in one placeJack Nagel
2013-08-30ENV: use fc accessorJack Nagel
2013-08-30Fix conditional in ENV.fortranJack Nagel
2013-08-30ENV: use cflags setterJack Nagel
2013-08-30ENV: use cc accessorJack Nagel
2013-08-30ENV: add cc and cxx settersJack Nagel
2013-08-30Simplify handling custom FCFLAGSJack Nagel
2013-08-30Remove PATH hack from ENV.fortranJack Nagel
2013-08-30Show list of dependencies prior to installing themkaizoku
Closes Homebrew/homebrew#22205. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2013-08-30Use system path for more tools, for Linux compat.Dan Hughes
Closes Homebrew/homebrew#22196. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2013-08-30Fix wrong assumption in MacOS::Xcode.without_clt?Jack Nagel
Fixes Homebrew/homebrew#22221.
2013-08-30Unify compiler selection logicMisty De Meo
This unifies the logic for selecting a compiler between superenv and stdenv. A variation of superenv's `determine_cc`, which now returns a symbol, has been moved into the shared ENV extension. Stdenv uses the result of this directly (as it's always used symbols), while superenv translates that back into a compiler string. This also has the effect of disabling HOMEBREW_USE_(gcc|llvm|clang) in stdenv, which have already been marked as deprecated for some time, and enables the HOMEBREW_CC= environment variable syntax from superenv in stdenv.
2013-08-30Add --cc= syntax for selecting compilersMisty De Meo