...
 
Commits (12)

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

This diff is collapsed.
......@@ -8,6 +8,7 @@
recursive-include wx **
recursive-include wx/locale **
recursive-include wx/include **
recursive-include license *.txt
include LICENSE.txt
graft docs
......
Metadata-Version: 1.1
Name: wxPython
Version: 4.0.1
Version: 4.0.4
Summary: Cross platform GUI toolkit for Python, "Phoenix" version
Home-page: http://wxPython.org/
Author: Robin Dunn
Author-email: robin@alldunn.com
License: wxWindows Library License (https://opensource.org/licenses/wxwindows.php)
Download-URL: https://pypi.python.org/pypi/wxPython
Download-URL: https://pypi.org/project/wxPython
Description: Welcome to wxPython's Project Phoenix! Phoenix is the improved next-generation
wxPython, "better, stronger, faster than he was before." This new
implementation is focused on improving speed, maintainability and
......@@ -17,7 +17,7 @@ Description: Welcome to wxPython's Project Phoenix! Phoenix is the improved next
platform specific code.
For more information please refer to the
`README file <https://github.com/wxWidgets/Phoenix/blob/wxPython-4.0.1/README.rst>`_,
`README file <https://github.com/wxWidgets/Phoenix/blob/wxPython-4.0.4/README.rst>`_,
the `Migration Guide <http://docs.wxPython.org/MigrationGuide.html>`_,
or the `wxPython API documentation <http://docs.wxPython.org/index.html>`_.
......@@ -35,7 +35,7 @@ Platform: WIN32
Platform: WIN64
Platform: OSX
Platform: POSIX
Classifier: Development Status :: 4 - Beta
Classifier: Development Status :: 6 - Mature
Classifier: Environment :: MacOS X :: Cocoa
Classifier: Environment :: Win32 (MS Windows)
Classifier: Environment :: X11 Applications :: GTK
......@@ -49,5 +49,6 @@ Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development :: User Interfaces
......@@ -370,6 +370,8 @@ installed, if they are available. For example:
* libwebkit2gtk-4.0-dev
* libsdl2-dev
If You use a custom built python in a non standard location, You need to
compile python with the --enable-shared option.
**Mac OSX**
......@@ -413,4 +415,3 @@ once per day, on any day that has had a commit to the master branch.
.. image:: docs/phoenix-fire-md.png
:width: 100%
......@@ -3,4 +3,5 @@ Phoenix TODO List
TODO items have been moved to github issues at:
https://github.com/wxWidgets/Phoenix/issues
\ No newline at end of file
https://github.com/wxWidgets/Phoenix/issues
\ No newline at end of file
......@@ -21,7 +21,7 @@ SIPVER=`$PYTHON configure.py --version | grep -v "This is SIP"`
if [ "$PLATFORM" = "darwin" ]; then
# try to ensure compatibility back to 10.6 if we can
xcode=$(xcode-select -print-path)
for v in 6 7 8 9 10 11 12; do
for v in 7 8 9 10 11 12 13 14 15; do
if [ -d $xcode/SDKs/MacOSX10.$v.sdk ]; then
SDK=$xcode/SDKs/MacOSX10.$v.sdk
break
......@@ -32,7 +32,7 @@ if [ "$PLATFORM" = "darwin" ]; then
done
$PYTHON configure.py \
--deployment-target=10.6 \
--deployment-target=10.7 \
--sdk=$SDK \
--arch=i386 \
--universal \
......
......@@ -4,7 +4,7 @@
# Author: Kevin Ollivier
#
# Created: 24-Sept-2011
# Copyright: (c) 2015 by Kevin Ollivier, Robin Dunn
# Copyright: (c) 2015-2018 by Kevin Ollivier, Robin Dunn
# License: wxWindows License
#---------------------------------------------------------------------------
......
......@@ -4,7 +4,7 @@
# Author: Robin Dunn
#
# Created: 12-July-2012
# Copyright: (c) 2013 by Robin Dunn
# Copyright: (c) 2013-2018 by Robin Dunn
# License: wxWindows License
#---------------------------------------------------------------------------
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -9,7 +9,7 @@
# Author: Robin Dunn
#
# Created: 3-Dec-2010
# Copyright: (c) 2010-2017 by Total Control Software
# Copyright: (c) 2010-2018 by Total Control Software
# License: wxWindows License
#----------------------------------------------------------------------
......@@ -75,16 +75,16 @@ wxICON = 'docs/sphinx/_static/images/sphinxdocs/mondrian.png'
# Some tools will be downloaded for the builds. These are the versions and
# MD5s of the tool binaries currently in use.
sipCurrentVersion = '4.19.7'
sipCurrentVersion = '4.19.13'
sipMD5 = {
'darwin' : 'd30ca1ffb09c0dbb6326e99d012c55b8',
'win32' : 'dbb882f4f95b1a7419a436280407899c',
'linux32' : '56a763acdf7c0b5725b31a71a9a56160',
'linux64' : 'b349127a4d46452936e4181d96b12c2d',
'darwin' : '2d2958a6f4cceebe5e4facb0114f9b0c',
'win32' : '83cad605ae09a42440afdf89358c7f82',
'linux32' : 'd9d2f8d1e897d2f238a5c49532d55933',
'linux64' : '19f59f0bceb60dfd9b41f8e63b002492',
}
wafCurrentVersion = '1.7.15-p1'
wafMD5 = 'e44003373c965f4221bbdc4c9b846128'
wafCurrentVersion = '2.0.8'
wafMD5 = 'bc393f29337cd00aef25d54280ca22e1'
doxygenCurrentVersion = '1.8.8'
doxygenMD5 = {
......@@ -783,7 +783,11 @@ def checkCompiler(quiet=False):
# causes problems with other non-Windows, non-Darwin compilers then
# we'll need to make this a little smarter about what flag (if any)
# needs to be used.
if not isWindows and not isDarwin:
#
# NOTE 2: SIP chenged its output such that this doesn't appear to be
# needed anymore, but we'll leave the code in place to make it easy to
# turn it back on again if/when needed.
if False and not isWindows and not isDarwin:
stdflag = '-std=c++11'
curflags = os.environ.get('CXXFLAGS', '')
if stdflag not in curflags:
......@@ -1109,6 +1113,7 @@ def cmd_sip(options, args):
(sip, cfg.SIPOPTS, tmpdir, sbf, pycode, src_name)
runcmd(cmd)
classesNeedingClassInfo = { 'sip_corewxTreeCtrl.cpp' : 'wxTreeCtrl', }
def processSrc(src, keepHashLines=False):
with textfile_open(src, 'rt') as f:
......@@ -1120,8 +1125,29 @@ def cmd_sip(options, args):
# ...or totally remove them by replacing those lines with ''
import re
srcTxt = re.sub(r'^#line.*\n', '', srcTxt, flags=re.MULTILINE)
className = classesNeedingClassInfo.get(os.path.basename(src))
if className:
srcTxt = injectClassInfo(className, srcTxt)
return srcTxt
def injectClassInfo(className, srcTxt):
# inject wxClassInfo macros into the sip generated wrapper class
lines = srcTxt.splitlines()
# find the beginning of the class declaration
for idx, line in enumerate(lines):
if line.startswith('class sip{}'.format(className)):
# next line is '{', insert after that
lines[idx+2:idx+2] = ['wxDECLARE_ABSTRACT_CLASS(sip{});'.format(className)]
break
# find the '};' that terminates the class
for idx, line in enumerate(lines[idx+2:], idx+2):
if line.startswith('};'):
lines[idx+1:idx+1] = ['\nwxIMPLEMENT_ABSTRACT_CLASS(sip{0}, {0});'.format(className)]
break
# join it back up and return
return '\n'.join(lines)
# Check each file in tmpdir to see if it is different than the same file
# in cfg.SIPOUT. If so then copy the new one to cfg.SIPOUT, otherwise
# ignore it.
......@@ -1344,8 +1370,10 @@ def copyWxDlls(options):
cairo_root = os.path.join(phoenixDir(), 'packaging', 'cairo-msw')
dlls += glob.glob(os.path.join(cairo_root, arch, 'bin', '*.dll'))
# For Python 3.5 and 3.6 builds we also need to copy some VC14 redist DLLs
if PYVER in ['3.5', '3.6']:
# For Python 3.5 and 3.6 builds we also need to copy some VC14 redist DLLs.
# NOTE: Do it for 3.7 too for now. But when we fully switch over to VS 2017
# this may need to change. See notes in wscript about it.
if PYVER in ['3.5', '3.6', '3.7']:
redist_dir = os.path.join(
phoenixDir(), 'packaging', 'Py3.5', 'vcredist',
arch, 'Microsoft.VC140.CRT', '*.dll')
......@@ -1489,11 +1517,12 @@ def cmd_build_vagrant(options, args):
VMs = [ 'centos-7 all all',
'debian-8 all all',
'debian-9 all all',
'fedora-23 all all',
'fedora-26 all all',
'fedora-27 all gtk3', # no webkitgtk for gtk2??
'fedora-27 all gtk3', # no webkitgtk for gtk2
'fedora-28 all gtk3', # no webkitgtk for gtk2
'ubuntu-14.04 all all',
'ubuntu-16.04 all all',
'ubuntu-18.04 all all',
]
elif options.vagrant_vms == 'none':
VMs = [] # to skip building anything and just upload
......@@ -1731,6 +1760,8 @@ def cmd_clean_vagrant(options, args):
if os.path.exists(d):
shutil.rmtree(d)
def cmd_clean_all(options, args):
cmd_cleanall(options, args)
def cmd_cleanall(options, args):
# These take care of all the object, lib, shared lib files created by the
......
......@@ -76,7 +76,7 @@ c['slavePortnum'] = 9989
# TODO: Switch to the wxWidgets/Phoenix repo
phoenixGitUrl = 'https://github.com/RobinD42/Phoenix.git'
phoenixGitBranch = 'master'
phoenixGitBranch = 'wxPy-4.0.x'
......@@ -99,12 +99,15 @@ c['schedulers'].append( SingleBranchScheduler(
builderNames=["build-win32-py27",
"build-win32-py35",
"build-win32-py36",
"build-win32-py37",
"build-win64-py27",
"build-win64-py35",
"build-win64-py36",
"build-win64-py37",
"build-osx-py27",
"build-osx-py35",
"build-osx-py36",
"build-osx-py37",
"build-gtk-py27",
"build-gtk-py35",
"build-gtk3-py27",
......@@ -121,14 +124,17 @@ c['schedulers'].append( Nightly(
"dist-osx-py34",
"dist-osx-py35",
"dist-osx-py36",
"dist-osx-py37",
"dist-win32-py27",
"dist-win32-py34",
"dist-win32-py35",
"dist-win32-py36",
"dist-win32-py37",
"dist-win64-py27",
"dist-win64-py34",
"dist-win64-py35",
"dist-win64-py36",
"dist-win64-py37",
]))
......@@ -158,12 +164,15 @@ c['schedulers'].append( ForceScheduler(
builderNames=["build-win32-py27",
"build-win32-py35",
"build-win32-py36",
"build-win32-py37",
"build-win64-py27",
"build-win64-py35",
"build-win64-py36",
"build-win64-py37",
"build-osx-py27",
"build-osx-py35",
"build-osx-py36",
"build-osx-py37",
"build-gtk-py27",
"build-gtk-py35",
"build-gtk3-py27",
......@@ -172,14 +181,17 @@ c['schedulers'].append( ForceScheduler(
"dist-osx-py34",
"dist-osx-py35",
"dist-osx-py36",
"dist-osx-py37",
"dist-win32-py27",
"dist-win32-py34",
"dist-win32-py35",
"dist-win32-py36",
"dist-win32-py37",
"dist-win64-py27",
"dist-win64-py34",
"dist-win64-py35",
"dist-win64-py36",
"dist-win64-py37",
"dist-docs",
"dist-src",
#"vagrant-bldr",
......@@ -305,6 +317,10 @@ c['builders'] = [
slavenames=["macosx-vm6"],
factory=makeFactory('osx', pyVer='3.6')),
BuilderConfig(name="build-osx-py37",
slavenames=["macosx-vm6"],
factory=makeFactory('osx', pyVer='3.7')),
......@@ -320,6 +336,10 @@ c['builders'] = [
slavenames=["win7-py27"],
factory=makeFactory('win32', pyVer='3.6')),
BuilderConfig(name="build-win32-py37",
slavenames=["win7-py27"],
factory=makeFactory('win32', pyVer='3.7')),
BuilderConfig(name="build-win64-py27",
slavenames=["win7-py27"],
factory=makeFactory('win64', pyVer='2.7')),
......@@ -332,6 +352,10 @@ c['builders'] = [
slavenames=["win7-py27"],
factory=makeFactory('win64', pyVer='3.6')),
BuilderConfig(name="build-win64-py37",
slavenames=["win7-py27"],
factory=makeFactory('win64', pyVer='3.7')),
BuilderConfig(name="build-gtk-py27",
......@@ -377,6 +401,10 @@ c['builders'] = [
slavenames=["macosx-vm6"],
factory=makeFactory('osx', 'dist', pyVer='3.6')),
BuilderConfig(name="dist-osx-py37",
slavenames=["macosx-vm6"],
factory=makeFactory('osx', 'dist', pyVer='3.7')),
BuilderConfig(name="dist-win32-py27",
slavenames=["win7-py27"],
......@@ -394,6 +422,10 @@ c['builders'] = [
slavenames=["win7-py27"],
factory=makeFactory('win32', 'dist', pyVer='3.6')),
BuilderConfig(name="dist-win32-py37",
slavenames=["win7-py27"],
factory=makeFactory('win32', 'dist', pyVer='3.7')),
BuilderConfig(name="dist-win64-py27",
slavenames=["win7-py27"],
factory=makeFactory('win64', 'dist', pyVer='2.7')),
......@@ -410,6 +442,10 @@ c['builders'] = [
slavenames=["win7-py27"],
factory=makeFactory('win64', 'dist', pyVer='3.6')),
BuilderConfig(name="dist-win64-py37",
slavenames=["win7-py27"],
factory=makeFactory('win64', 'dist', pyVer='3.7')),
# BuilderConfig(name="vagrant-bldr",
# slavenames=["vagrant-bldr"],
......
......@@ -290,6 +290,7 @@ def main(wxDir, args):
"--enable-optimise",
"--disable-debugreport",
"--enable-uiactionsim",
"--enable-autoidman",
]
if sys.platform.startswith("darwin"):
......@@ -404,6 +405,7 @@ def main(wxDir, args):
flags["wxUSE_AFM_FOR_POSTSCRIPT"] = "0"
flags["wxUSE_DATEPICKCTRL_GENERIC"] = "1"
flags["wxUSE_IFF"] = "1"
flags["wxUSE_ACCESSIBILITY"] = "1"
# Remove this when Windows XP finally dies, or when there is a
# solution for ticket #13116...
......
#----------------------------------------------------------------------
#----------------------------------------------------------------------
# Name: buildtools.config
# Purpose: Code to set and validate platform options and etc. for
# the wxPython build. Moved to their own module and
......@@ -7,7 +8,7 @@
# Author: Robin Dunn
#
# Created: 3-Nov-2010
# Copyright: (c) 2013-2017 by Total Control Software
# Copyright: (c) 2013-2018 by Total Control Software
# License: wxWindows License
#----------------------------------------------------------------------
......@@ -110,7 +111,8 @@ class Configuration(object):
self.WXDIR = wxDir()
self.includes = [phoenixDir() + '/sip/siplib', # to get our version of sip.h
phoenixDir() + '/src', # for any hand-written headers
phoenixDir() + '/wx/include', # for the wxPython API
phoenixDir() + '/src', # for other hand-written headers
]
self.DOXY_XML_DIR = os.path.join(self.WXDIR, 'docs/doxygen/out/xml')
......@@ -119,8 +121,9 @@ class Configuration(object):
'-w', # enable warnings