New `depends_on :python` Dependency.
New `depends_on :python3` Dependency.
To avoid having multiple formulae with endings -py2 and -py3,
we will handle support for different pythons (2.x vs. 3.x)
in the same formula.
Further brewed vs. external python will be transparently supported.
The formula also gets a new object `python`, which is false if
no Python is available or the user has disabled it. Otherwise
it is defined and provides several support methods:
python.site_packages # the site-packages in the formula's Cellar
python.global_site_packages
python.binary # the full path to the python binary
python.prefix
python.version
python.version.major
python.version.minor
python.xy # => e.g. "python2.7"
python.incdir # includes of python
python.libdir # the python dylib library
python.pkg_config_path # used internally by brew
python.from_osx?
python.framework?
python.universal?
python.pypy?
python.standard_caveats # Text to set PYTHONPATH for python.from_osx?
python.if3then3 # => "" for 2.x and to "3" for 3.x.
Further, to avoid code duplication, `python` takes an optional
block that is run twice if the formula defines depends_on
:python AND :python3.
python do
system python, 'setup.py', "--prefix=#{prefix}"
end
Read more in the Homebrew wiki.
Removes any global methods from formulae, and moves #kext_prefix (which
seems to be at least somewhat abstractable) into the Formula class. The
only formula with global methods is now aspell; it (and its generating
script in contrib) has been changed to prefix that method with
`aspell_`, to minimize the risk of name collisions.
ClosesHomebrew/homebrew#19331.
ClosesHomebrew/homebrew#19343.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
This commit modifies boost.rb to provide C++11 support for compiling Boost. The support is the simplest possible, adding a "with-c++11" option which if selected will add the appropriate toolset switch to the bootstrap.sh invocation and the appropriate toolset, cxxflags and linkflags to the b2 invocation. Due to a bug in Boost, it is also necessary to provide a patch (IAW Boost Ticket 7671) or C++11 compilation will fail.
ClosesHomebrew/homebrew#16078.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
* Fix typo in comment for adding rpath
* Enable detailed build log by adding "-d2" to bjam.
- This will show the actual compile commands during building.
* Tweak ICU handling
- Change icu4c_prefix to opt_prefix to avoid breakage when keg_only icu updates.
ClosesHomebrew/homebrew#15506.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
To be safe (because this is an important dep), mark 2335 as the failure
point since a 2335.x shipped with older Xcode. Given that Clang 2.1 is
one of Boost's test compilers, current Xcode compilers should be fine.
And most users will get the bottle, anyway.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
This commit adds a `devel` entry to the DSL, allowing formulae to
specify an unstable branch.
`devel` takes a block, which should contain standard `url` and `md5`
fields (and `version`, if necessary). This must come after the standard
DSL fields.
This commit also migrates over all formulae currently using `devel` to
the new syntax, as well as formulae which used `head` for non-VCS urls.
The new syntax is also available for `stable` and `bottle`. `stable` is
an option alongside the old syntax. `bottle` replaces the old syntax.
Note that the @stable ivar in Formula has been renamed to @standard,
and the @bottle ivar has been renamed to @bottle_url.
ClosesHomebrew/homebrew#9735.
Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
Do not set fails_with_llvm for XCode 4.1 and later, as according
to release notes LLVM compiler provided by it is now among primary
test compilers, LLVM-GCC is working too.
ClosesHomebrew/homebrew#6669.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>