[MacPorts] #19190: py25-wxpython and py26-wxpython conflict

MacPorts noreply at macports.org
Wed Apr 29 08:48:35 PDT 2009


#19190: py25-wxpython and py26-wxpython conflict
-----------------------------------------+----------------------------------
Reporter:  ram@…                         |       Owner:  jwa@…           
    Type:  defect                        |      Status:  new             
Priority:  Normal                        |   Component:  ports           
 Version:  1.7.1                         |    Keywords:                  
    Port:  py25-wxpython, py26-wxpython  |  
-----------------------------------------+----------------------------------

Comment(by mlk@…):

 wxPython (any version) writes files into
 ${prefix}/include/wx-X.Y/wx/wxPython, so one cannot have both the py25 and
 py26 versions installed at the same time right now.  I modified the "post-
 destroot" to check for a prior install, and remove those files if found;
 this works for me (I have both the py25 and py26 versions installed), but
 might not be ideal because if the port that owns these head files is
 removed, the header files will also be removed even though they should
 stay around.  Also, this change won't work if multiple versions of
 wxWidgets are installed.  Maybe there is a way for files to be "double
 owned" in the MacPorts database if they are identical, and then be removed
 once all owners are removed?  Here is my change to the Portfile:
 {{{
 post-destroot {
     xinstall -d -m 755 ${destroot}${prefix}/share/doc/
     file copy ${worksrcpath}/docs ${destroot}${prefix}/share/doc/${name}
     file copy ${worksrcpath}/samples \
     ${destroot}${prefix}/share/doc/${name}/examples

     # check to see if there is already a wxPython installed in
     # ${prefix}/include/wx-X.Y/wx/wxPython
     # if so, delete the corresponding destroot files, so that
     # there is no conflict during 'install'

     set wx_include_dir [glob ${prefix}/include/wx-*/wx/]
     system "echo ${wx_include_dir}"
     if {[file exists ${wx_include_dir}/wxPython/wxPython.h]} {
         system "rm -rf ${destroot}${wx_include_dir}/wxPython"
     }
 }
 }}}

-- 
Ticket URL: <http://trac.macports.org/ticket/19190#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list