Phase Out Xcode Dependency GSOC Project Update

Satryaji Aulia satraul at gmail.com
Mon Jul 15 23:41:10 UTC 2019


To update from last month about phasing out Xcode,

1. What has changed from last time
The warnings that Xcode should be installed has been removed.
DEVELOPER_DIR is now universally exported for every command (build,  
destroot, autotools, etc.).

2. The effects of the changes
Right now, we’re testing to use see if the changes work as expected. [1]
Ports like iTerm2 now intendedly fail because it calls `xcodebuild` without  
specifying Xcode dependency. The solution would be to add `use_xcode yes`  
to the Portfile, or add the `xcodeversion` portgroup to the Xcode-dependent  
list.
Ports like libnetpbm unintendedly fail in tracemode because it calls  
`system -W something /usr/bin/gnumake` which problem was described in  
pull#134 but not solved yet. [2]

More problems/solutions are being discovered, any input is appreciated.  
Thanks.

[1]  
https://docs.google.com/spreadsheets/d/1NYmJsedVFLn7PeYFB08gCimqYANsbv7xwd78k4yaQPs/edit#gid=0
[2] https://github.com/macports/macports-base/pull/134

- Sat

Satryaji Aulia <satraul at gmail.com> wrote:

> Hi all,
>
> I'd like to write about what we've accomplished so far in this project,
> with my mentors Marcus (mcalhoun) and Clemens (cal/neverpanic).
> The project's focus is to provide a smoother experience of using MacPorts
> without Xcode.
>
> 1. Opened PR for better handling of Xcode dependency [1]
> In addition to the port 1.0 PortGroup, maintainers can declare Xcode
> dependency using a new Portfile option use_xcode. Unless ports declare
> Xcode dependency:
> - Prefer Command Line Tools instead of Xcode by setting the DEVELOPER_DIR
> environment.
> - Hide the Xcode installation when building with trace mode, so MacPorts
> can fail builds for ports that actually need Xcode but are not declared as
> such. This will help maintainers identify Xcode dependency.
> Also, error out when users try to install Xcode-dependent ports without
> installing Xcode.
>
> 2. New command `port bump` to easily bump checksums of a port [2,3]
> More features are planned such as @version, --livecheck, and Git actions
>
> Please check it out, any input is appreciated. Shoutout to my mentors (and
> Mojca for reminding me to write to the mailing list).
>
> Thank you.
>
> [1] https://github.com/macports/macports-base/pull/130
> [2] https://github.com/macports/macports-base/pull/120
> [3] https://github.com/macports/macports-base/pull/127


More information about the macports-dev mailing list