#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