Some language and formatting tweaks for the readme,

hopefully making some of the long drawn out sentences easier to understand.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxPython/Phoenix/trunk@73978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2013-05-14 02:53:44 +00:00
parent afcebe6210
commit 16fdd105fa

View File

@@ -56,25 +56,29 @@ preview snapshots. In other words, the wxWidgets build should use code from
the wxWidgets source repository within a few days of when the Phoenix code
was checked out.
On the other hand, since the build tools will by default build wxWidgets in a
way that allows it to be bundled with the wxPython extension modules as part
of the wx Python package, meaning it can coexist with and wxWidgets libs you
may already have installed, then it is probably best to just let Phoenix
build and bundle wxWidgets. This bundling of the wx shared libraries works on
Windows, OSX and Linux, and probably any other unix-like system using shared
libraries based on the ELF standard. The libraries are build in such a way
that they are relocatable, meaning that they do not have to be in a fixed
location on the filesystem in order to be found by the wxPython extension
modules. This also means that you can do things like use ``easy_install`` to
install an egg in one or more virtual environments, move the wx package to a
versioned folder, or even move it into your own project if desired.
On the other hand, it is probably best to just let Phoenix build and bundle
wxWidgets. The build tools will by default build wxWidgets in a way that
allows it to be bundled with the wxPython extension modules as part of the
wxPython package, meaning it can peacefully coexist with any wxWidgets
libraries you may already have installed. This bundling of the wx shared
libraries works on Windows, OSX and Linux, and probably any other unix-like
system using shared libraries based on the ELF standard. The libraries are
built in such a way that they are relocatable, meaning that they do not have
to be in a fixed location on the filesystem in order to be found by the
wxPython extension modules. This also means that you can do things like use
``easy_install`` to install an egg in one or more virtual environments, move
the wx package to a versioned folder, or even move it into your own project
if desired, all without needing to rebuild the binaries. (Assuming that
compatible Pythons are being used of course.)
The build phase of the build.py script will copy the results to the wx folder
in the Phoenix source tree. This will allow you to run and test Phoenix
directly from the source tree without installing it, if desired. You just
need to set ``PYTHONPATH`` appropriately, or you can use ``python setup.py
develop`` to install an .egg-link file in your Python site-packages that will
point to the folder where you built Phoenix.
The build phase of the build.py script will copy the results into the wx
folder in the Phoenix source tree. This will allow you to run and test
Phoenix directly from the source tree without installing it, if desired. You
just need to set ``PYTHONPATH`` appropriately, or you can use ``python
setup.py develop`` to install an .egg-link file in your current Python
site-packages folder that will point to the folder where you built Phoenix.
When you are finished testing you can then use the install or one of the
bdist commands like you normally would for other Python packages.
@@ -89,8 +93,8 @@ of build.py there is no need to run that command again in a later run, unless
you've changed something which that command has the responsibility to
process.
* **dox**: Builds the XML files from the wxWidgets documentation which will
be used as input for the etg command.
* **dox**: Builds the XML files from the wxWidgets documentation source,
which will be used as input for the etg command.
* **etg**: Extracts information from the dox XML files, runs hand-written
tweaker code on the extracted data structures, and runs various generators
@@ -135,11 +139,18 @@ Some other useful commands and options are:
etg scripts. If you don't plan on generating the documentation then this
will speed up the proccessing of the etg command.
Please see the output of ``python build.py --help`` to see information about
Please see the output of ``python build.py --help`` for information about
commands and options not mentioned here. And, as always, if there is any
discrepancy between this document and the source code in the build.py script,
then the source code is right. ;-)
The build.py script will download doxygen, sip and waf for your platform as
needed if they are not already in your Phoenix/bin folder. If prebuilt
versions of these tools are not available for your platform then build.py
will bail out with an error message. To continue with the build you will need
to acquire copies of the tool that will work on your platform and can then
tell build.py where to find it using an environment variable, as described in
the error message.
@@ -150,7 +161,7 @@ There are a lot of subfolders in this directory, here is a brief
explanation to help a newbie find their way around.
* **build**: Intermediate files produced by the build process are stored
here. This folder should not be committed to a version repository.
here. This folder should not be committed to a source repository.
* **buildtools**: This is a Python package containing modules that are used
from build.py and setup.py and which assist with configuring and running