[MacPorts] #72510: portconfigure::check_implicit_function_declarations can fail because of permissions error in irrelevant directories

MacPorts noreply at macports.org
Tue May 20 12:23:42 UTC 2025


#72510: portconfigure::check_implicit_function_declarations can fail because of
permissions error in irrelevant directories
--------------------+--------------------
 Reporter:  RJVB    |      Owner:  (none)
     Type:  defect  |     Status:  new
 Priority:  Normal  |  Milestone:
Component:  base    |    Version:
 Keywords:          |       Port:
--------------------+--------------------
 When developing a new port of upgrading an existing one I usually run the
 configure step in verbose mode, followed by non-verbose build and/or
 destroot steps.

 Usually I will run those without sudo, as an extra measure of precaution,
 and only when I know it is necessary will I re-do the (validated) destroot
 step as root.

 Running as root may leave certain directories under `$workpath/.home`
 and/or `$workpath/.tmp` with permissions making them off-limits to the
 regular macports-user.

 The result is that subsequent calls to
 `portconfigure::check_implicit_function_declarations` or
 `portconfigure::check_warnings` will raise an error inside `fs-traverse`.

 I'm aware that this won't happen under the normal workflow where you use
 `sudo` and/or always start with a clean directory (but who does that when
 working on large code bases?). IMHO it shouldn't be possible under any
 circumstances. Not for something that only has informational value and is
 supposed to make life easier for the port maintainer.

 Ideally, `fs-traverse` would take an optional ignore list to avoid
 trawling directories known not to be of interest (should be a lot faster
 than implementing that in Tcl), but it already has an option that prevents
 the error at hand: `-ignoreErrors`.

-- 
Ticket URL: <https://trac.macports.org/ticket/72510>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list