GSoC/GCI Archive
Google Summer of Code 2011

The MacPorts Project

Web Page:

Mailing List:

MacPorts is a ports collection and packaging system for Mac OS X. We have an ever-growing collection of ports (currently over 7500), many of which accept multiple configuration variants. MacPorts is one of the primary means by which open source software is compiled for and installed onto Mac OS X, making it a primary interface between Mac OS X and the rest of the open source world.


  • destroot-test phase This project aims to create a destroot-test phase, just after destroot, that test the destroot package in order to identify this behavior. This new phase will be very useful for package maintainers, since they can test quickly an universal package to match all architecture binaries.
  • MacPorts Usage Statistics Development of a data collection tool and information gathering service which will allow participating users to contribute data regarding the way they use MacPorts. This data will include information on the user's system configuration as well as the ports they use. In addition, a visualization tool for this data will also be developed.
  • port rev-upgrade If a library upgrade changes the library API dynamic linkage of software depending on it will usually break. In order to fix these problems, the broken binaries need to be identified, matched to ports and these ports need to be recompiled. This corresponds to reversing the dependency direction, which is why this action is called rev(erse dependency)-upgrade. This step should be done automatically right after the library upgrade instead of manually by the user as soon as the problem is noticed.