<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal>Hi,<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>I&#8217;m new to buildout. The project I&#8217;m working on uses pywbem (http://pywbem.sf.net), which seems to have some bad form in its project directory structure. Since pywbem isn&#8217;t up on PyPI, I&#8217;ve checked out the project from sf.net as a subdirectory of my project. Here&#8217;s a tree listing of my project directory (the basic structure was built by paster using the modern_project_template):<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>c:\...\my-project&gt;tree /A<o:p></o:p></p><p class=MsoNormal>&#8230;<o:p></o:p></p><p class=MsoNormal>+---pywbem<o:p></o:p></p><p class=MsoNormal>|&nbsp;&nbsp; +---irecv<o:p></o:p></p><p class=MsoNormal>|&nbsp;&nbsp; \---testsuite<o:p></o:p></p><p class=MsoNormal>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \---testmofs<o:p></o:p></p><p class=MsoNormal>\---src<o:p></o:p></p><p class=MsoNormal>&nbsp;&nbsp;&nbsp; +---myproject<o:p></o:p></p><p class=MsoNormal>&nbsp;&nbsp;&nbsp; \---my_project.egg-info<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Note that the pywbem sub-directory has no src directory. Its setup.py looks like this:<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:blue'>from</span><span style='font-size:10.0pt;font-family:Consolas;color:black'> distutils.core </span><span style='font-size:10.0pt;font-family:Consolas;color:blue'>import</span><span style='font-size:10.0pt;font-family:Consolas;color:black'> setup, Extension</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:blue'>import</span><span style='font-size:10.0pt;font-family:Consolas;color:black'> sys, string, os</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:blue'>import</span><span style='font-size:10.0pt;font-family:Consolas;color:black'> shutil</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:blue'>import</span><span style='font-size:10.0pt;font-family:Consolas;color:black'> mof_compiler</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>mof_compiler._build()</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>args = {</span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'name'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>pywbem</u>'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'author'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>Tim</u> Potter'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'author_email'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>tpot@hp.com</u>'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'description'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>Python</u> WBEM client library'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'long_description'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: __doc__,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'platforms'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: [</span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'any'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>],</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>url</u>'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'http://pywbem.sf.net/'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'version'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'0.7.0'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'license'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'LGPLv2'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'packages'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: [</span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>pywbem</u>'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>],</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style='font-size:10.0pt;font-family:Consolas;color:silver'># Make packages in root <u>dir</u> appear in <u>pywbem</u> module</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'package_dir'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: {</span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>pywbem</u>'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>''</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>}, </span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style='font-size:10.0pt;font-family:Consolas;color:silver'># Make extensions in root <u>dir</u> appear in <u>pywbem</u> module</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'ext_package'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>: </span><i><span style='font-size:10.0pt;font-family:Consolas;color:#00AA00'>'<u>pywbem</u>'</span></i><span style='font-size:10.0pt;font-family:Consolas;color:black'>,</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas;color:black'>setup(**args)</span><span style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>The problem I&#8217;m having is that when I add pywbem as a devel directory to my buildout.cfg file, the sys.path is configured to assume that pywbem has a src directory so it can&#8217;t find the module because &#8216;.&#8217; Is not in the sys.path. Only my own &#8216;src&#8217; directory - and &#8216;pywbem&#8217;, of course. <o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>I was about to reorganize the pywbem project a bit, but I thought I&#8217;d ask if anyone has any ideas on how to get buildout to consume pywbem in its current form. I don&#8217;t own the project, and I have no developer rights to it, so I&#8217;d like to make as few changes as possible to it.<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Thanks in advance,<o:p></o:p></p><p class=MsoNormal>John Calcote<o:p></o:p></p></div></body></html>