用 SWIG 生成 TidyLib 的 Python 扩展
-----------------------------------------
Created by : Andrew.Wu
Created on : 2009/03/29
-----------------------------------------
一、
建立一个单独的工作目录, 复制 tidy/include 所有头文件到这个目录。以下文件也同在这个目录
二、
文件 pytidy.i
注意 pytidy.i 中的 %include "tidy2.h" 。 因为直接使用 %include "tidy.h" 编译时会有一些冲突, 所以增加了tidy2.h。tidy2.h 是 tidy.h 的 copy,只是注释了struct _TidyAllocatorVtbl 。
三、
文件 SContruct
四、
在 Visual Studio 2008 Command Prompt 使用 scons.py 编译
五、
import pytidy
六、
Tidy 是从 cvs 下载的,版本 $Date: 2008/12/07 21:08:48 $ $Revision: 1.45 $ (tidy/src/version.h)
SCons 版本 v1.2.0.d20090113.r3897 (scons.py --version)
SWIG 版本 swigwin-1.3.38
Python 版本 2.6.1
编译器 是 vc2008 + sp1
七、
另一个 tidy python 扩展 是mxTidy( http://www.egenix.com/products/python/mxExperimental/mxTidy/ ), 但目前只支持到python 2.5