ViewVC logotype

Log of /branches/RW_WIN32/escript/py_src/SConscript

Parent Directory Parent Directory | Revision Log Revision Log

Links to HEAD: (view) (annotate)
Sticky Revision:

Revision 240 - (view) (annotate) - [selected]
Modified Mon Nov 28 06:09:41 2005 UTC (14 years, 11 months ago) by robwdcock
File length: 318 byte(s)
Diff to previous 232
+ Fixed problem with build paths for python tests being in the wrong location
+ Added build & run for python unit tests for escript and finley.

+ scons defaults to building ALL targets so if will build everything, including running all tests. This behaviour can be modified by specifying the DEFAULT targets but I've not done this yet. In the interim specify the target you want.
+ Some dependencies need to be specified as scons does not figure them out automatically, though a helper scanner might be able to. These can be specified explicitly using scons Depend function. Not yet done so you can get an invalid build (especially in parallel). Examples include python depends on shared libraries, possibly a couple of library dependencies for install targets - need to verify. 

Revision 232 - (view) (annotate) - [select for diffs]
Modified Fri Nov 25 09:59:48 2005 UTC (14 years, 11 months ago) by phornby
File length: 286 byte(s)
Diff to previous 231 , to selected 240
1) Rob, could you please set up your editor to not put CR's into the files.
2) The import esys.bruce fails on Linux, but the rest seems OK.

Here is how things go.

If a directory (bruce say) contains an __init__.py, then import esys.bruce actually imports
the __init__.py file. One can either phoney up the namespace by then saying

from bruce import *

in __init__.py (ugly!!) or just rename bruce.py to __init__.py.

All the sub-packages need this treatment. I suggest doing it with the .py files in the
source tree rather than re-naming at build time. Any other modules in the sub-directory
can then be imported into the __init__.py in the usual way in order to make them visible
to the user. Alternatively, any module not imported to __init__.py is invisible to the user.
This is much better than mucking with PYTHON_PATH and LD_LIBRARY_PATH, which has a tendency
to make everything visible, and creates module name clashes in site-packages on occasions. 
The .so associated with a sub-directory should reside with the corresponding __init__.py
that imports it.

Careful use of "from AClass import AClass" and "from ASharedLib import *" in __init__.py
is also a good method of making classes contained in submodules
look like they are in the namespace of the __init__.py, thereby hiding
the intervening module name from the user. That way esys.bruce.AClass.AClass can be morphed
into esys.bruce.AClass, eliminating the annoying intervening module namespace.

Revision 231 - (view) (annotate) - [select for diffs]
Modified Fri Nov 25 09:15:24 2005 UTC (14 years, 11 months ago) by phornby
File length: 292 byte(s)
Copied from: branches/RW_WIN32/escript/py_src/Sconscript revision 230
Diff to previous 229 , to selected 240
Case sensitive file names.

Revision 229 - (view) (annotate) - [select for diffs]
Modified Fri Nov 25 06:17:13 2005 UTC (14 years, 11 months ago) by robwdcock
Original Path: branches/RW_WIN32/escript/py_src/Sconscript
File length: 292 byte(s)
Diff to previous 222 , to selected 240
+ Added Options capability
+ All py files are now compiled and installed into lib directory hierarchy
+ scons now reads custom options from custom.py. Examples are in the scons_custom_templates directory, just copy to top level build dir and rename to custom.py
+ scons_ext.py now has some helper functions for building pyc from python and running unit tests (but only when some dependency changes).

Revision 222 - (view) (annotate) - [select for diffs]
Added Thu Nov 24 12:54:42 2005 UTC (14 years, 11 months ago) by robwdcock
Original Path: branches/RW_WIN32/escript/py_src/Sconscript
File length: 289 byte(s)
Diff to selected 240
+Unified with linux build (tested on windows only at this point)

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

  ViewVC Help
Powered by ViewVC 1.1.26