-
-
Notifications
You must be signed in to change notification settings - Fork 12.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
libtirpc: make formula work on macos #192861
base: master
Are you sure you want to change the base?
Conversation
this changes the formula to not compile only on linux. on macos, the bundled kerberos is used. because the necessary changes for this to work are not yet upstream, configure must be regenerated, so aclocal, autoconf and automake will need to be run; we set an environment to allow that. this includes an inline copy of patches which were submitted to libtirpc-devel list for inclusion (upstream does not use github so i had to do this rather than PR)
Thanks for contributing to Homebrew! 🎉 It looks like you're having trouble with a CI failure. See our contribution guide for help. You may be most interested in the section on dealing with CI failures. You can find the CI logs in the Checks tab of your pull request. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the PR. A few questions/comments below.
Also, this seems to change the ABI of libtirpc
on Linux (see dependent failures). Seems like it broke symbol versioning?
ENV["ACLOCAL"] = "aclocal" | ||
ENV["AUTOMAKE"] = "automake" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we need to specify these environment variables? Under what names does it look for aclocal
and automake
without it?
depends_on "pkg-config" => :build | ||
|
||
uses_from_macos "krb5" | ||
patch :DATA # all patches were sent to libtirpc-devel during the 1.3.6 cycle |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you have a link to the thread on the mailing list? Can you add it in a comment?
ENV["ACLOCAL"] = "aclocal" | ||
ENV["AUTOMAKE"] = "automake" | ||
ENV.append_path "ACLOCAL_PATH", "config" | ||
system "autoreconf", "-ivf" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
system "autoreconf", "-ivf" | |
system "autoreconf", "--force", "--install", "--verbose" |
this changes the formula to not compile only on linux. on macos, the bundled kerberos is used. because the necessary changes for this to work are not yet upstream, configure must be regenerated, so aclocal, autoconf and automake will need to be run; we set an environment to allow that. this includes an inline copy of patches which were submitted to libtirpc-devel list for inclusion (upstream does not use github so i had to do this rather than PR)
HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>
, where<formula>
is the name of the formula you're submitting?brew test <formula>
, where<formula>
is the name of the formula you're submitting?brew audit --strict <formula>
(after doingHOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>
)? If this is a new formula, does it passbrew audit --new <formula>
?