Skip to content
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

mysql8: compile against cyrus-sasl2 for SASL dependency #4550

Merged
merged 1 commit into from Jun 7, 2019

Conversation

herbygillot
Copy link
Member

MySQL 8's InnoDB has a SASL requirement; this change looks to satisfy it using the macOS system libsasl2.

Trac Tickets:

Mayhaps there is a cleaner or more recommended way to do this?

Tested on

macOS 10.14.5 18F203
Xcode 10.2.1 10E1001

Verification

Have you

  • checked your Portfile with port lint?
  • tried a full install with sudo port -vst install?
  • tested basic functionality of all binary files?

Copy link
Member

@cjones051073 cjones051073 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will the system sasl library work on all supports OS versions ?
Does macports not have a port you could use instead ?

@herbygillot
Copy link
Member Author

Will the system sasl library work on all supports OS versions ?
Does macports not have a port you could use instead ?

It does, I think cyrus-sasl2 port can provide, but I was trying to avoid adding Cyrus as a requirement for MySQL. After some digging around, it looks like SASL is required for the LDAP auth plugin. It may probably make sense to add LDAP support as a port variant, and add the requirement for cyrus-sasl2 and LDAP only if the user enables the variant.

Will test that out soon.

@macportsbot
Copy link

Travis Build #6779 Errored.

Lint results
--->  Verifying Portfile for mysql8
--->  0 errors and 0 warnings found.

Port mysql8's dependencies fail on xcode10.2. Log
Port mysql8 fail on xcode8.3. Log
Port mysql8-server's dependencies fail on xcode8.3. Log
Port mysql8 fail on xcode7.3. Log
Port mysql8-server's dependencies fail on xcode7.3. Log

The build timed out.

@herbygillot
Copy link
Member Author

Alright, simplifying things here by adding cyrus-sasl2 as a build dependency.

@herbygillot herbygillot changed the title mysql8: compile against macOS SASL mysql8: compile against cyrus-sasl2 for SASL dependency Jun 7, 2019
@cjones051073
Copy link
Member

cjones051073 commented Jun 7, 2019

Alright, simplifying things here by adding cyrus-sasl2 as a build dependency.

Thanks. Just to be pedantic though, you have added it as a lib dependency, not a build dependency. The difference is the former is needed both at build and runtime, whereas the later is only needed at build time. The distinction is important as build (only) deps are not considered as required dependencies when installing from binary tarballs.

In this case what you have done I guess makes sense, as I presume the library is required at runtime.

@herbygillot
Copy link
Member Author

Alright, simplifying things here by adding cyrus-sasl2 as a build dependency.

Thanks. Just to be pedantic though, you have added it as a lib dependency, not a build dependency. The difference is the former is needed both at build and runtime, whereas the later is only needed at build time. The distinct is important as build (only) deps are not considered as required dependencies when installing from binary tarballs.

In this case what you have done I guess makes sense, as I presume the library is required at runtime.

Excellent catch - I'm missing depends_build entirely. I will correct this now.

@cjones051073
Copy link
Member

Alright, simplifying things here by adding cyrus-sasl2 as a build dependency.

Thanks. Just to be pedantic though, you have added it as a lib dependency, not a build dependency. The difference is the former is needed both at build and runtime, whereas the later is only needed at build time. The distinct is important as build (only) deps are not considered as required dependencies when installing from binary tarballs.
In this case what you have done I guess makes sense, as I presume the library is required at runtime.

Excellent catch - I'm missing depends_build entirely. I will correct this now.

OK, but, is it really just a build dep ? Isn't there some dynamic library required at runtime ?

@cjones051073
Copy link
Member

Alright, simplifying things here by adding cyrus-sasl2 as a build dependency.

Thanks. Just to be pedantic though, you have added it as a lib dependency, not a build dependency. The difference is the former is needed both at build and runtime, whereas the later is only needed at build time. The distinct is important as build (only) deps are not considered as required dependencies when installing from binary tarballs.
In this case what you have done I guess makes sense, as I presume the library is required at runtime.

Excellent catch - I'm missing depends_build entirely. I will correct this now.

OK, but, is it really just a build dep ? Isn't there some dynamic library required at runtime ?

Also note, if a port is in depends_lib there is no need to add it to depends_build as well.

databases/mysql8/Portfile Outdated Show resolved Hide resolved
@macportsbot
Copy link

Travis Build #6788 Errored.

Lint results
--->  Verifying Portfile for mysql8
--->  0 errors and 0 warnings found.

Port mysql8's dependencies fail on xcode10.2. Log
Port mysql8 fail on xcode8.3. Log
Port mysql8 fail on xcode7.3. Log
Port mysql8-server's dependencies fail on xcode7.3. Log

The build timed out.

@cjones051073 cjones051073 merged commit b8b02e7 into macports:master Jun 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintainer: open Affects an openmaintainer port maintainer
3 participants