[csw-maintainers] new class scripts

Dagobert Michelsen dam at opencsw.org
Fri May 29 22:54:18 CEST 2009


Hi Mike,

Am 29.05.2009 um 16:06 schrieb Mike Watters:
> Peter Bonivart wrote:
>> On Thu, May 28, 2009 at 6:05 PM, Mike Watters  
>> <mwatters at opencsw.org> wrote:
>>> I forgot to actually copy/remove the original files in the class  
>>> scripts for
>>> cswpycompile.  new "working" copies are in my home dir on the  
>>> build farm.
>>> please update cswclassutils
>>
>> I have updated the package in testing:
>>
>> http://mirror.opencsw.org/testing/cswclassutils-1.14,REV=2009.05.29-SunOS5.8-all-CSW.pkg.gz
>
> Most Excellent, cswpycompile class works like a charm now.

I have some troubles with cswpycompile:

- I added support to xcb-proto like this:

> EXTRA_MERGE_EXCLUDE_FILES = .*\.pyo .*\.pyc
> PROTOTYPE_FILTER = awk '$$$$3 ~ /.*\.py$$$$/ { $$$$2 =  
> "cswpycompile" } { print }'
> SPKG_CLASSES = none cswpycompile
> REQUIRED_PKGS += CSWcswclassutils

- On installation something does get compiled:

> Compiling py files to normal bytecode ...
> Listing /opt/csw/lib/python ...
> Listing /opt/csw/lib/python/bsddb ...
> Listing /opt/csw/lib/python/bsddb/test ...
> Listing /opt/csw/lib/python/compiler ...
> Listing /opt/csw/lib/python/ctypes ...
> Listing /opt/csw/lib/python/ctypes/macholib ...
> Listing /opt/csw/lib/python/ctypes/test ...
> Listing /opt/csw/lib/python/curses ...
> Listing /opt/csw/lib/python/email ...
> Listing /opt/csw/lib/python/email/mime ...
> Listing /opt/csw/lib/python/email/test ...
> Listing /opt/csw/lib/python/email/test/data ...
> Listing /opt/csw/lib/python/encodings ...
> Listing /opt/csw/lib/python/hotshot ...
> Listing /opt/csw/lib/python/json ...
> Listing /opt/csw/lib/python/json/tests ...
> Listing /opt/csw/lib/python/lib-dynload ...
> Listing /opt/csw/lib/python/lib-old ...
> Listing /opt/csw/lib/python/lib2to3 ...
> Listing /opt/csw/lib/python/lib2to3/fixes ...
> Listing /opt/csw/lib/python/lib2to3/pgen2 ...
> Listing /opt/csw/lib/python/lib2to3/tests ...
> Listing /opt/csw/lib/python/logging ...
> Listing /opt/csw/lib/python/multiprocessing ...
> Listing /opt/csw/lib/python/multiprocessing/dummy ...
> Listing /opt/csw/lib/python/plat-sunos5 ...
> Listing /opt/csw/lib/python/site-packages ...
> Listing /opt/csw/lib/python/sqlite3 ...
> Listing /opt/csw/lib/python/sqlite3/test ...
> Listing /opt/csw/lib/python/test ...
> Listing /opt/csw/lib/python/test/decimaltestdata ...
> Listing /opt/csw/lib/python/wsgiref ...
> Listing /opt/csw/lib/python/xml ...
> Listing /opt/csw/lib/python/xml/dom ...
> Listing /opt/csw/lib/python/xml/etree ...
> Listing /opt/csw/lib/python/xml/parsers ...
> Listing /opt/csw/lib/python/xml/sax ...
> Compiling py files to optimized bytecode ...
> Listing /opt/csw/lib/python ...
> Listing /opt/csw/lib/python/bsddb ...
> Listing /opt/csw/lib/python/bsddb/test ...
> Listing /opt/csw/lib/python/compiler ...
> Listing /opt/csw/lib/python/ctypes ...
> Listing /opt/csw/lib/python/ctypes/macholib ...
> Listing /opt/csw/lib/python/ctypes/test ...
> Listing /opt/csw/lib/python/curses ...
> Listing /opt/csw/lib/python/email ...
> Listing /opt/csw/lib/python/email/mime ...
> Listing /opt/csw/lib/python/email/test ...
> Listing /opt/csw/lib/python/email/test/data ...
> Listing /opt/csw/lib/python/encodings ...
> Listing /opt/csw/lib/python/hotshot ...
> Listing /opt/csw/lib/python/json ...
> Listing /opt/csw/lib/python/json/tests ...
> Listing /opt/csw/lib/python/lib-dynload ...
> Listing /opt/csw/lib/python/lib-old ...
> Listing /opt/csw/lib/python/lib2to3 ...
> Listing /opt/csw/lib/python/lib2to3/fixes ...
> Listing /opt/csw/lib/python/lib2to3/pgen2 ...
> Listing /opt/csw/lib/python/lib2to3/tests ...
> Listing /opt/csw/lib/python/logging ...
> Listing /opt/csw/lib/python/multiprocessing ...
> Listing /opt/csw/lib/python/multiprocessing/dummy ...
> Listing /opt/csw/lib/python/plat-sunos5 ...
> Listing /opt/csw/lib/python/site-packages ...
> Listing /opt/csw/lib/python/sqlite3 ...
> Listing /opt/csw/lib/python/sqlite3/test ...
> Listing /opt/csw/lib/python/test ...
> Listing /opt/csw/lib/python/test/decimaltestdata ...
> Listing /opt/csw/lib/python/wsgiref ...
> Listing /opt/csw/lib/python/xml ...
> Listing /opt/csw/lib/python/xml/dom ...
> Listing /opt/csw/lib/python/xml/etree ...
> Listing /opt/csw/lib/python/xml/parsers ...
> Listing /opt/csw/lib/python/xml/sax ...
> [ verifying class <cswpycompile> ]
>
> Installation of <CSWxcbproto> was successful.

- From the remove script I would guess the compiled and optimized  
files are
   in the same directory as the .py-files:

> echo "Removing pyo and pyc files for package <$PKGINST> ..."
> pkgchk -v $PKGINST 2>&1 |grep \.py$ | xargs -i rm -f {}c {}o

- However, in the directory where the packages installed the .py-files
   nothing is added:

> build8st# ls -l /opt/csw/X11/lib/python2.6/site-packages/xcbgen
> total 64
> -rw-r--r--   1 root     bin            1 May 29 22:24 __init__.py
> -rw-r--r--   1 root     bin          116 May 29 22:24 error.py
> -rw-r--r--   1 root     bin         2965 May 29 22:24 expr.py
> -rw-r--r--   1 root     bin         3534 May 29 22:24 matcher.py
> -rw-r--r--   1 root     bin         5141 May 29 22:24 state.py
> -rw-r--r--   1 root     bin        16352 May 29 22:24 xtypes.py

So, what's going wrong here?

After this is settled and CSWcswclassutils and CSWpython get released
I'll modify GAR to automatically do it right:

- look if there are .py files, if yes:
   - remove .pyc and .pyo files on merge
   - modify class of .py to cswpycompile
   - Add dependency to CSWcswclassutils


Best regards

   -- Dago






More information about the maintainers mailing list