#47823: New port: osc2midi -------------------------+-------------------------------- Reporter: aggraef@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: osc2midi | -------------------------+-------------------------------- Comment (by ryandesign@…): It is possible to combine multiple installable ports into a single portfile, using the `subport` keyword. I don't think this feature has been documented yet, so you'll have to look at existing portfiles that use the feature. It's useful when the two (or more) ports are similar in some way. I often use this when a single downloaded source file has multiple components that should be installable as separate ports. For example, the [browser:trunk/dports/lang/pure/Portfile pure portfile] has a pure-mode.el subport. Some other MacPorts developers like to use this facility when multiple versions of a port should be offered (e.g. development and stable), and those versions are similar in how they build. The [browser:trunk/dports/devel/cmake/Portfile cmake portfile] gives an example of this. I myself tend to keep these as separate portfiles. This is in part because I developed the ports before subport capability existed in MacPorts, but also because I sometimes run into the situation where the development version differs significantly enough from the stable version that using subports would be complicated. Also, the [browser:users/ryandesign/scripts/portcheckup script] I use for automatically updating the version and checksums of a portfile does not work when there are multiple versions of the software represented in a single portfile. Also, see the [browser:trunk/dports/graphics/graphviz/Portfile graphviz] and [browser:trunk/dports/graphics/graphviz-devel/Portfile graphviz-devel] portfiles. Note that the graphviz portfile has graphviz-gui and gvedit subports, and that the graphviz-devel portfile has graphviz-gui-devel and gvedit-devel subports. Merging all of these into a single portfile would be complicated. I tried this in the [browser:trunk/dports/lang/php/Portfile php portfile], which currently has 224 subports (covering six versions of php having thirty-something modules each). It works, but is very complicated and I'm not sure I would do it that way again. -- Ticket URL: <https://trac.macports.org/ticket/47823#comment:3> MacPorts <https://www.macports.org/> Ports system for OS X