New build system
Ryan Schmidt
ryandesign at macports.org
Tue Aug 9 18:01:17 PDT 2016
The MacPorts project is pleased to announce the deployment of our new build
system. This system automatically builds our ports on several macOS versions
and, license permitting, deploys the archives to a server where MacPorts can
download them. It's also useful for MacPorts developers to see if their
ports build on each version of macOS.
This change is transparent to users and requires no changes on your part.
For those interested in the build system:
This system is a rewrite of the previous build system that was deployed in
2011 and offers several improvements, including:
- Instead of grouping multiple ports modified by a single commit into a
single build, multiple builds are started. This lets you see the
progress and logs individually for each port, and if any archives are
created, they're deployed after each port is built.
- If any dependencies were not yet deployed, they're deployed too.
- Dependencies are installed in a separate step, so you can tell at a
glance if dependencies failed or the port itself failed.
- Ports using the obsolete portgroup will not be built. This avoids
showing build failures for ports that are already known not to build.
- Builders appear on the web site sorted in order by macOS version.
- Tags are used to group builders in various ways on the console page
and can be used to filter the waterfall page. More useful ways to
customize the waterfall page are shown in the waterfall help page.
Email notification of failed builds is not currently working. This will
return in the future. More improvements to the build system are planned in
the coming months.
Interested MacPorts users and developers may view the new build system at:
https://build.macports.org
MacPorts committers who had an account on the old system may log in to the
new system with the same username and password. MacPorts committers who
would like an account on the new system should please send email to
admin [at] macports.org.
Build logs from the old system were not imported. If you need to see the log
of a port on a particular version of macOS, just use the web interface to
force a new build on the appropriate "portwatcher".
This build system rewrite was spearheaded by the participants of the
MacPorts Meeting in March 2016 -- Peter Danecek, Jackson Isaac, Clemens
Lang, Dagobert Michelsen, Mojca Miklavec, Rainer Müller and Aljaž Srebrnič
-- and completed over the past weeks by Clemens, Mojca, Rainer and me. My
great thanks to them for improving our build system.
-Ryan
More information about the macports-dev
mailing list