Some thoughts related to those being expressed in the "Re: Ticket #14796 (pike): please commit" thread...

Assume we have a way to install multiple versions of a port at the same time. Assume we've worked out everything about the directory layout and allowing other software to link with things properly. How do we express multiple versions of the software in the portfile?

The problem with simply going back to older versions of the portfile is that there may be bugs in old versions of the portfile which were fixed in later versions. But there may also be (for example) configure options which were appropriate for old versions but not for new ones, or vice-versa. Other things may change as well. So we also can't just use the newer version of the portfile and swap out the version number. Consider cairo: version 1.5 and later depend on libpixman, while earlier versions don't.

What *is* the goal of this exercise? Is it to allow any arbitrary (maintainer-approved) version of a port to be installed? Or are we just trying to allow the major versions to be installed, which we already have with separate ports? If the latter, we could find a way to combine multiple ports like apache and apache2; php4 and php5; mysql3, mysql4 and mysql5. For example, we might keep the separate portfiles for each version and just place them in a common directory:

dports/
        databases/
                mysql/
                        mysql3.port (installs 3.23.58)
                        mysql4.port (installs 4.1.22)
                        mysql5.port (installs 5.0.51)

_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to