git: e89f84156a8f - main - security/krb5: Support libedit in base
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 09 Aug 2023 23:46:58 UTC
The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/ports/commit/?id=e89f84156a8fcb2f81c1f962845f4456b2f62f63 commit e89f84156a8fcb2f81c1f962845f4456b2f62f63 Author: Cy Schubert <cy@FreeBSD.org> AuthorDate: 2023-08-09 23:15:50 +0000 Commit: Cy Schubert <cy@FreeBSD.org> CommitDate: 2023-08-09 23:43:03 +0000 security/krb5: Support libedit in base Even though libedit is in base FreeBSD, the krb5 ports still depend on devel/libedit when the LIBEDIT option is selected. This is because ./configure uses pkgconf to determine if libedit exists, ignoring libedit in FreeBSD base. This patch adds a new LIBEDIT_BASE option which enables LIBEDIT (LIBEDIT_BASE) without installing the devel/libedit port. The GNU READLINE option will remain the default for now but it is planned to switch the default to LIBEDIT_BASE at some point. This is to reduce the dependency on GNU software and to bring it more into line with the planned MIT KRB5 import into FreeBSD base. --- security/krb5-119/Makefile | 6 ++++-- security/krb5-119/files/patch-configure.ac | 17 +++++++++++++++++ security/krb5-119/files/patch-util_ss_listen.c | 14 ++++++++++++++ security/krb5-120/Makefile | 6 ++++-- security/krb5-120/files/patch-configure.ac | 17 +++++++++++++++++ security/krb5-120/files/patch-util_ss_listen.c | 14 ++++++++++++++ security/krb5-121/Makefile | 6 ++++-- security/krb5-121/files/patch-configure.ac | 17 +++++++++++++++++ security/krb5-121/files/patch-util_ss_listen.c | 14 ++++++++++++++ security/krb5-devel/Makefile | 4 +++- security/krb5-devel/files/patch-configure.ac | 17 +++++++++++++++++ security/krb5-devel/files/patch-util_ss_listen.c | 14 ++++++++++++++ 12 files changed, 139 insertions(+), 7 deletions(-) diff --git a/security/krb5-119/Makefile b/security/krb5-119/Makefile index 0cd71c5fdfa6..c4abab6469aa 100644 --- a/security/krb5-119/Makefile +++ b/security/krb5-119/Makefile @@ -22,7 +22,7 @@ CONFLICTS= heimdal krb5 krb5-118 krb5-12* CONFLICTS_BUILD= boringssl KERBEROSV_URL= http://web.mit.edu/kerberos/ -USES= compiler:c++11-lang cpe gmake gettext-runtime \ +USES= autoreconf compiler:c++11-lang cpe gmake gettext-runtime \ gssapi:bootstrap,mit libtool:build localbase \ perl5 pkgconfig ssl BROKEN_SSL= openssl30 openssl31 @@ -45,7 +45,7 @@ CPE_PRODUCT= kerberos OPTIONS_DEFINE= EXAMPLES NLS KRB5_PDF KRB5_HTML DNS_FOR_REALM LDAP LMDB OPTIONS_DEFAULT= KRB5_PDF KRB5_HTML READLINE OPTIONS_RADIO= CMD_LINE_EDITING -OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT +OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT LIBEDIT_BASE CMD_LINE_EDITING_DESC= Command line editing for kadmin and ktutil KRB5_PDF_DESC= Install krb5 PDF documentation KRB5_HTML_DESC= Install krb5 HTML documentation @@ -64,6 +64,8 @@ READLINE_USES= readline READLINE_CONFIGURE_WITH=readline LIBEDIT_USES= libedit LIBEDIT_CONFIGURE_WITH= libedit +LIBEDIT_BASE_CONFIGURE_WITH= libedit +LIBEDIT_BASE_DESC= Use libedit in FreeBSD base .if defined(KRB5_HOME) PREFIX= ${KRB5_HOME} diff --git a/security/krb5-119/files/patch-configure.ac b/security/krb5-119/files/patch-configure.ac new file mode 100644 index 000000000000..abbae0e771b3 --- /dev/null +++ b/security/krb5-119/files/patch-configure.ac @@ -0,0 +1,17 @@ +--- configure.ac.orig 2023-08-07 11:38:21.000000000 -0700 ++++ configure.ac 2023-08-09 14:49:19.833149000 -0700 +@@ -1356,8 +1356,12 @@ + AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) + AC_MSG_NOTICE([Using libedit for readline support]) + elif test "x$with_libedit" = xyes; then +- # We were explicitly asked for libedit and couldn't find it. +- AC_MSG_ERROR([Could not detect libedit with pkg-config]) ++ AC_MSG_NOTICE([Using libedit in FreeBSD base]) ++ AC_CHECK_LIB([edit], [main], :, ++ AC_MSG_ERROR([Could not detect libedit])) ++ AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) ++ RL_CFLAGS=-DFreeBSD_BASE_EDITLINE ++ RL_LIBS='-ledit' + else + AC_MSG_NOTICE([Not using any readline support]) + fi diff --git a/security/krb5-119/files/patch-util_ss_listen.c b/security/krb5-119/files/patch-util_ss_listen.c new file mode 100644 index 000000000000..127784b0e2c0 --- /dev/null +++ b/security/krb5-119/files/patch-util_ss_listen.c @@ -0,0 +1,14 @@ +--- util/ss/listen.c.orig 2023-08-07 11:38:21.000000000 -0700 ++++ util/ss/listen.c 2023-08-09 13:09:30.816661000 -0700 +@@ -15,7 +15,11 @@ + #include <sys/param.h> + + #if defined(HAVE_LIBEDIT) ++#if defined(FreeBSD_BASE_EDITLINE) ++#include <edit/readline/readline.h> ++#else + #include <editline/readline.h> ++#endif + #elif defined(HAVE_READLINE) + #include <readline/readline.h> + #include <readline/history.h> diff --git a/security/krb5-120/Makefile b/security/krb5-120/Makefile index d2557352ae56..dd175bf24bd6 100644 --- a/security/krb5-120/Makefile +++ b/security/krb5-120/Makefile @@ -19,7 +19,7 @@ CONFLICTS= heimdal krb5 krb5-11* krb5-121 CONFLICTS_BUILD= boringssl KERBEROSV_URL= http://web.mit.edu/kerberos/ -USES= compiler:c++11-lang cpe gmake gettext-runtime \ +USES= autoreconf compiler:c++11-lang cpe gmake gettext-runtime \ gssapi:bootstrap,mit libtool:build localbase \ perl5 pkgconfig ssl USE_CSTD= gnu99 @@ -39,7 +39,7 @@ CPE_PRODUCT= kerberos OPTIONS_DEFINE= EXAMPLES NLS KRB5_PDF KRB5_HTML DNS_FOR_REALM LDAP LMDB OPTIONS_DEFAULT= KRB5_PDF KRB5_HTML READLINE OPTIONS_RADIO= CMD_LINE_EDITING -OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT +OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT LIBEDIT_BASE CMD_LINE_EDITING_DESC= Command line editing for kadmin and ktutil KRB5_PDF_DESC= Install krb5 PDF documentation KRB5_HTML_DESC= Install krb5 HTML documentation @@ -58,6 +58,8 @@ READLINE_USES= readline READLINE_CONFIGURE_WITH=readline LIBEDIT_USES= libedit LIBEDIT_CONFIGURE_WITH= libedit +LIBEDIT_BASE_CONFIGURE_WITH= libedit +LIBEDIT_BASE_DESC= Use libedit in FreeBSD base .if defined(KRB5_HOME) PREFIX= ${KRB5_HOME} diff --git a/security/krb5-120/files/patch-configure.ac b/security/krb5-120/files/patch-configure.ac new file mode 100644 index 000000000000..abbae0e771b3 --- /dev/null +++ b/security/krb5-120/files/patch-configure.ac @@ -0,0 +1,17 @@ +--- configure.ac.orig 2023-08-07 11:38:21.000000000 -0700 ++++ configure.ac 2023-08-09 14:49:19.833149000 -0700 +@@ -1356,8 +1356,12 @@ + AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) + AC_MSG_NOTICE([Using libedit for readline support]) + elif test "x$with_libedit" = xyes; then +- # We were explicitly asked for libedit and couldn't find it. +- AC_MSG_ERROR([Could not detect libedit with pkg-config]) ++ AC_MSG_NOTICE([Using libedit in FreeBSD base]) ++ AC_CHECK_LIB([edit], [main], :, ++ AC_MSG_ERROR([Could not detect libedit])) ++ AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) ++ RL_CFLAGS=-DFreeBSD_BASE_EDITLINE ++ RL_LIBS='-ledit' + else + AC_MSG_NOTICE([Not using any readline support]) + fi diff --git a/security/krb5-120/files/patch-util_ss_listen.c b/security/krb5-120/files/patch-util_ss_listen.c new file mode 100644 index 000000000000..127784b0e2c0 --- /dev/null +++ b/security/krb5-120/files/patch-util_ss_listen.c @@ -0,0 +1,14 @@ +--- util/ss/listen.c.orig 2023-08-07 11:38:21.000000000 -0700 ++++ util/ss/listen.c 2023-08-09 13:09:30.816661000 -0700 +@@ -15,7 +15,11 @@ + #include <sys/param.h> + + #if defined(HAVE_LIBEDIT) ++#if defined(FreeBSD_BASE_EDITLINE) ++#include <edit/readline/readline.h> ++#else + #include <editline/readline.h> ++#endif + #elif defined(HAVE_READLINE) + #include <readline/readline.h> + #include <readline/history.h> diff --git a/security/krb5-121/Makefile b/security/krb5-121/Makefile index 3338cd4fbe6f..4ba2b5aa5cea 100644 --- a/security/krb5-121/Makefile +++ b/security/krb5-121/Makefile @@ -19,7 +19,7 @@ CONFLICTS= heimdal krb5 krb5-11* krb5-120 CONFLICTS_BUILD= boringssl KERBEROSV_URL= http://web.mit.edu/kerberos/ -USES= compiler:c++11-lang cpe gmake gettext-runtime \ +USES= autoreconf compiler:c++11-lang cpe gmake gettext-runtime \ gssapi:bootstrap,mit libtool:build localbase \ perl5 pkgconfig ssl USE_CSTD= gnu99 @@ -39,7 +39,7 @@ CPE_PRODUCT= kerberos OPTIONS_DEFINE= EXAMPLES NLS KRB5_PDF KRB5_HTML DNS_FOR_REALM LDAP LMDB OPTIONS_DEFAULT= KRB5_PDF KRB5_HTML READLINE OPTIONS_RADIO= CMD_LINE_EDITING -OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT +OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT LIBEDIT_BASE CMD_LINE_EDITING_DESC= Command line editing for kadmin and ktutil KRB5_PDF_DESC= Install krb5 PDF documentation KRB5_HTML_DESC= Install krb5 HTML documentation @@ -58,6 +58,8 @@ READLINE_USES= readline READLINE_CONFIGURE_WITH=readline LIBEDIT_USES= libedit LIBEDIT_CONFIGURE_WITH= libedit +LIBEDIT_BASE_CONFIGURE_WITH= libedit +LIBEDIT_BASE_DESC= Use libedit in FreeBSD base .if defined(KRB5_HOME) PREFIX= ${KRB5_HOME} diff --git a/security/krb5-121/files/patch-configure.ac b/security/krb5-121/files/patch-configure.ac new file mode 100644 index 000000000000..abbae0e771b3 --- /dev/null +++ b/security/krb5-121/files/patch-configure.ac @@ -0,0 +1,17 @@ +--- configure.ac.orig 2023-08-07 11:38:21.000000000 -0700 ++++ configure.ac 2023-08-09 14:49:19.833149000 -0700 +@@ -1356,8 +1356,12 @@ + AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) + AC_MSG_NOTICE([Using libedit for readline support]) + elif test "x$with_libedit" = xyes; then +- # We were explicitly asked for libedit and couldn't find it. +- AC_MSG_ERROR([Could not detect libedit with pkg-config]) ++ AC_MSG_NOTICE([Using libedit in FreeBSD base]) ++ AC_CHECK_LIB([edit], [main], :, ++ AC_MSG_ERROR([Could not detect libedit])) ++ AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) ++ RL_CFLAGS=-DFreeBSD_BASE_EDITLINE ++ RL_LIBS='-ledit' + else + AC_MSG_NOTICE([Not using any readline support]) + fi diff --git a/security/krb5-121/files/patch-util_ss_listen.c b/security/krb5-121/files/patch-util_ss_listen.c new file mode 100644 index 000000000000..127784b0e2c0 --- /dev/null +++ b/security/krb5-121/files/patch-util_ss_listen.c @@ -0,0 +1,14 @@ +--- util/ss/listen.c.orig 2023-08-07 11:38:21.000000000 -0700 ++++ util/ss/listen.c 2023-08-09 13:09:30.816661000 -0700 +@@ -15,7 +15,11 @@ + #include <sys/param.h> + + #if defined(HAVE_LIBEDIT) ++#if defined(FreeBSD_BASE_EDITLINE) ++#include <edit/readline/readline.h> ++#else + #include <editline/readline.h> ++#endif + #elif defined(HAVE_READLINE) + #include <readline/readline.h> + #include <readline/history.h> diff --git a/security/krb5-devel/Makefile b/security/krb5-devel/Makefile index ad7f424f7e98..1bafbad0a465 100644 --- a/security/krb5-devel/Makefile +++ b/security/krb5-devel/Makefile @@ -40,7 +40,7 @@ CPE_PRODUCT= kerberos OPTIONS_DEFINE= EXAMPLES NLS DNS_FOR_REALM LDAP LMDB OPTIONS_DEFAULT= KRB5_PDF KRB5_HTML READLINE OPTIONS_RADIO= CMD_LINE_EDITING -OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT +OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT LIBEDIT_BASE CMD_LINE_EDITING_DESC= Command line editing for kadmin and ktutil DNS_FOR_REALM_DESC= Enable DNS lookups for Kerberos realm names DNS_FOR_REALM_CONFIGURE_ENABLE= dns-for-realm @@ -57,6 +57,8 @@ READLINE_USES= readline READLINE_CONFIGURE_WITH=readline LIBEDIT_USES= libedit LIBEDIT_CONFIGURE_WITH= libedit +LIBEDIT_BASE_CONFIGURE_WITH= libedit +LIBEDIT_BASE_DESC= Use libedit in FreeBSD base .if defined(KRB5_HOME) PREFIX= ${KRB5_HOME} diff --git a/security/krb5-devel/files/patch-configure.ac b/security/krb5-devel/files/patch-configure.ac new file mode 100644 index 000000000000..abbae0e771b3 --- /dev/null +++ b/security/krb5-devel/files/patch-configure.ac @@ -0,0 +1,17 @@ +--- configure.ac.orig 2023-08-07 11:38:21.000000000 -0700 ++++ configure.ac 2023-08-09 14:49:19.833149000 -0700 +@@ -1356,8 +1356,12 @@ + AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) + AC_MSG_NOTICE([Using libedit for readline support]) + elif test "x$with_libedit" = xyes; then +- # We were explicitly asked for libedit and couldn't find it. +- AC_MSG_ERROR([Could not detect libedit with pkg-config]) ++ AC_MSG_NOTICE([Using libedit in FreeBSD base]) ++ AC_CHECK_LIB([edit], [main], :, ++ AC_MSG_ERROR([Could not detect libedit])) ++ AC_DEFINE([HAVE_LIBEDIT], 1, [Define if building with libedit.]) ++ RL_CFLAGS=-DFreeBSD_BASE_EDITLINE ++ RL_LIBS='-ledit' + else + AC_MSG_NOTICE([Not using any readline support]) + fi diff --git a/security/krb5-devel/files/patch-util_ss_listen.c b/security/krb5-devel/files/patch-util_ss_listen.c new file mode 100644 index 000000000000..127784b0e2c0 --- /dev/null +++ b/security/krb5-devel/files/patch-util_ss_listen.c @@ -0,0 +1,14 @@ +--- util/ss/listen.c.orig 2023-08-07 11:38:21.000000000 -0700 ++++ util/ss/listen.c 2023-08-09 13:09:30.816661000 -0700 +@@ -15,7 +15,11 @@ + #include <sys/param.h> + + #if defined(HAVE_LIBEDIT) ++#if defined(FreeBSD_BASE_EDITLINE) ++#include <edit/readline/readline.h> ++#else + #include <editline/readline.h> ++#endif + #elif defined(HAVE_READLINE) + #include <readline/readline.h> + #include <readline/history.h>