How to abort a macports portfile on an error condition?

Martin Krischik krischik at
Sat Oct 3 09:15:58 UTC 2020


I working on a version bump on the **cc65** and encountered a problem
with the **linuxdoc-tools**. Since I can't fix the **linuxdoc-tools**
and there is a simple workaround possible I decided to add an if
statement to inform the user together with the workaround:

	if {! [file exists ${prefix}/bin/perl] } {
		ui_error "
«${prefix}/bin/perl» is missing but the linuxdoc-tools depends on it.

Please create an appropriate symbolic link for linuxdoc-tools to work.
	exit 1

Crude but the best I can do since I'm neither the **perl5** nor the
**linuxdoc-tools** maintainer and I don't want to spend to much time on
a otherwise simple version bump.

However, the MacPorts doesn't understand `exit 1` and `ui_error` won't
stop execution on its own.

How do I stop the execution so not to waste the users time on a build
which will otherwise fail right at the end.


Martin Krischik

More information about the macports-dev mailing list