| Age | Commit message (Collapse) | Author |
|
This patch is different than my earlier ad-hoc solution, but it took
some time until upstream devs came up with the proper fix. However, we
can't directly link to the patch (from the mercurial web repo), as it
also changes the NEWS text and the patch fails to apply. Further, the
mercurial repo is only http (no "s").
|
|
|
|
This reverts commit 59ebdf67cfa5cd8fcc6661e180e3bab2ab2ed6fb.
|
|
This simplyfies the formula a bit.
Also rearrange the line to be more logically grouped. Hopefully.
|
|
Since 2.7.5 the `python-config --ldflags` is not fixed but Python does
not use the Makefile any longer for this. We fix this now in our
`sitecustomize.py`.
|
|
Closes #19099
|
|
|
|
|
|
|
|
Closes #21411.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
Remove old setuptools installations that may still fly around and be
listed in the easy_install.pth. This can break setuptools build with
zipimport.ZipImportError: bad local file header
This does not always happen, but if the easy_install.pth points to an
egg with an older version. Removing all setuptools and distribute
remains inside the homebrew global_site_packages is safe.
|
|
|
|
|
|
Fixes #20860.
|
|
LINKFORSHARED incorrectly returns a truncated value by default, which
breaks builds which depend on it returning a valid path.
e.g., it returns:
Python.framework/Versions/2.7/Python
Instead of:
$(brew --prefix)/Python.framework/Versions/2.7/Python
This breaks zpython, and possibly other things. See #20182.
Reported to Python.org in http://bugs.python.org/issue3588 and
http://bugs.python.org/issue16848, fixed for python-config but not
other usecases.
|
|
|
|
* Should also be more robust as we now explicitly set the
python.binary.
|
|
|
|
* Added a head for python 2.7
* Using `build.with?` instead of `build.include? 'with...'`
* More robust temporary linking of opt/python/bin during
install and cleanup (with ensure).
|
|
|
|
that is caused by not calling the right (newly built)
python binary.
Fix #20245 hopefully.
|
|
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.
|
|
Related:
http://bugs.python.org/issue18050
|
|
Closes #19860.
Signed-off-by: Samuel John <github@SamuelJohn.de>
|
|
Closes #19847.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
The old patch had a lot of whitespace differences, and they were failing with
Python 2.7.4. In addition to removing the whitespace differences, configure.in
was removed from the patch, as configure is being patched already.
Closes #19257.
Closes #19203.
Closes #19400.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
http://bugs.python.org/issue13405 seems not
to be ready for 2.7.4. Neither merged nor a
patch available. Feel free to submit a pull
request if there is a 2.7.4-compatible
dtrace patch.
|
|
Closes #19026. Fixes #19020 (half-of)
Signed-off-by: Samuel John <github@SamuelJohn.de>
|
|
This fixes issues when calling python scripts print `'import sitecustomize' failed; use -v for traceback`
Closes #18338.
Signed-off-by: Samuel John <github@SamuelJohn.de>
|
|
Closes #19016.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
Fixes #18657
|
|
Closes #18358.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
PYTHONFRAMEWORKDIR is now replaced even if CLT is installed.
Closes #17144.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
Fixes #15300 because sqlite is keg_only since a few days.
Closes #17120.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
- Fixes #16574.
- Improve Tkinter test by actually calling Tk()
- Check for /Library/Frameworks/Tk.framework no longer needed.
- Also remove Tk.framework check from python3.rb
- Fix PYTHONFRAMEWORKDIR so that `python-config --ldflags` is useful.
Closes #17008.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
This reverts commit 1d8f01d8af394a7501f5bf3a1e51796c1a7548a1.
Reopens #16626, reopens #16574.
|
|
- Fixes #16574.
- Improve Tkinter test by actually calling Tk()
- Check for /Library/Frameworks/Tk.framework no longer needed.
- Fix PYTHONFRAMEWORKDIR so that `python-config --ldflags` is useful.
Closes #16626.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
|
|
python has a severe bug which prevents it from building, or performing
certain filesystem operations, on NFS.
A few functions in the shutil module, notably chflag(), will attempt
to copy file metadata which includes flags. Certain filesystems, such
as NFS, don't support copying flags and will raise ENOTSUP when it is
attempted. Unfortunately a portion of the python build process
indirectly uses chflag() to copy metadata, which results in a build
failure if the install prefix is on an NFS volume.
This was patched in 2010, but the patch didn't actually work on OS X.
This upstream patch fixes it for real.
|
|
Closes #16421.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
|
|
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
This reverts commit adee5315265cc46aa6a3057071527abb16e1cd94.
Turns out one of the "other things" is a dealbreaker.
We only create kegs using a formula's canonical name. However, we do not
check that this is the case when mapping existing kegs back to formula
objects, and thus a keg with a name that happens to be an alias can fool
Homebrew into thinking the canonically-named keg exists.
So anything that enumerates kegs and then tries to do stuff with the
resulting formula objects will just break. This is obviously worse than
the debugger being broken, so reverting this for the time being.
|
|
The Readline class clashes with the Readline module from the Ruby
stdlib. This has mostly worked, but with the recent debugging support's
integration of IRB, it is no longer possible for them to coexist. So we
need to rename it.
The implications of this are:
- Anything that depends on readline will reinstall it as
"gnu-readline". Anything already installed will continue to function.
- "brew upgrade readline" will say "gnu-readline not installed", as
"readline" is now an alias.
- Probably other things.
So there are some downsides, but we will just have to deal with them.
Fixes #15776.
|
|
Closes #15351.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
Closes #15243.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
Use this chance to correct minor typos.
Closes #15242.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
- Removed accidently added -py-debug
- Ensure HOMEBREW_PREFIX/share/python exists as a dir
- Don't change the sys.prefix (broke virtualenv)
and instead add install-lib dir to distutils.cfg.
superenv respects brewed python
Closes #15220.
Signed-off-by: Max Howell <mxcl@me.com>
|
|
- Install a sitecustomize.py that is only executed for brewed
python to
- Fix the prefix, python thinks it is installed to.
(Remember, Python thinks it lives in the Cellar)
- Remove "/System/..." stuff from sys.path which caused
a lot of install trouble because setuptools has the
habbit to inject itself upfront, overwriting our distribute.
- Allow --with-poll and don't say, we didn't warn you.
- Don't need depends_on :x11 any longer. Yeah, no XQuartz!
- Add --with-brewed-openssl
- pip 1.2.1
- pip, pip-2.7, easy_install and easy_install-2.7 are installed
to prefix, such that they are directly available, even if
people have not set their PATH to include
$(brew --prefix)/share/python
- Caveats shorter and clear.
- For Xcode-only:
- Patch the distutils buildsystem to use "xcrun cc" etc.
- Teach distutils the MacOS.sdk_path (for incs and libs)
- superenv.rb add the right python include dir depending on
whether a brewed python is installed or not.
Closes #15064.
Signed-off-by: Max Howell <mxcl@me.com>
|