Hello!

to simplify patches and maintaining ports I've setup a new global variable to 
pass it as arguments in ports, see example with squid:
https://people.freebsd.org/~fluffy/-patches/gssapi-squid.diff




On 27.07.2025 01:17, Michael Butler wrote:
I don't seem to be able to rebuild p5-GSSAPI .. indirectly required by git with 
the default options through p5-Authen-SASL ..

imb@d5540:/usr/ports/security/p5-GSSAPI> sudo make
===>  License ART10 GPLv1+ accepted by the user
===>   p5-GSSAPI-0.28_2 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by p5-GSSAPI-0.28_2 for building
===>  Extracting for p5-GSSAPI-0.28_2
=> SHA256 Checksum OK for GSSAPI-0.28.tar.gz.
===>  Patching for p5-GSSAPI-0.28_2
===>  Applying FreeBSD patches for p5-GSSAPI-0.28_2 from 
/usr/ports/security/p5-GSSAPI/files
===>   p5-GSSAPI-0.28_2 depends on package: perl5>=5.40.r<5.41 - found
===>  Configuring for p5-GSSAPI-0.28_2

  Welcome to GSSAPI.pm setup!

  (./Makefile.PL Version 0.03)

  run "perl Makefile.PL --help" to see further installation options


----------------------------------------------------------
  Searching krb5-config command...

  using krb5-config command '/bin/krb5-config'.

----------------------------------------------------------
  using GSSAPI implementation
  /bin/krb5-config does not respond libconf! at ./Makefile.PL line 116.
*** Error code 2

Stop.
make[1]: stopped making 
"/usr/ports/security/p5-GSSAPI/work/.stage_done.GSSAPI._usr_local" in 
/usr/ports/security/p5-GSSAPI
*** Error code 1

Stop.
make: stopped making "all" in /usr/ports/security/p5-GSSAPI

www/squid is also broken (by default) unless the GSSAPI option is set to 'none',

     Michael



--
Sincerely,
Dima ([email protected], https://t.me/FluffyBSD, 
@fluffy:matrix-dev.freebsd.org)
(desktop, kde, x11, office, ports-secteam)@FreeBSD team

diff --git a/Mk/Uses/gssapi.mk b/Mk/Uses/gssapi.mk
index fecf29895a..3200501de2 100644
--- a/Mk/Uses/gssapi.mk
+++ b/Mk/Uses/gssapi.mk
@@ -89,6 +89,7 @@ IGNORE=       You are using OpenSSL from ports and have 
selected GSSAPI from base, ple
 .      if exists(/usr/libexec/krb5kdc)
          # Base has MIT KRB5 installed
 KRB5_HOME?=    /usr
+KRB5_TYPE=     mit
 GSSAPIBASEDIR= ${KRB5_HOME}
 GSSAPILIBDIR=  ${GSSAPIBASEDIR}/lib
 GSSAPIINCDIR=  ${GSSAPIBASEDIR}/include
@@ -99,6 +100,7 @@ GSSAPILDFLAGS=
 .      else
          # Base has Heimdal KRB5 installed
 HEIMDAL_HOME=  /usr
+KRB5_TYPE=     heimdal
 GSSAPIBASEDIR= ${HEIMDAL_HOME}
 GSSAPILIBDIR=  ${GSSAPIBASEDIR}/lib
 GSSAPIINCDIR=  ${GSSAPIBASEDIR}/include
@@ -110,6 +112,7 @@ GSSAPILDFLAGS=
 .    elif ${_local} == "heimdal"
        # Heimdal port selected
 HEIMDAL_HOME?= ${LOCALBASE}
+KRB5_TYPE=     heimdal
 GSSAPIBASEDIR= ${HEIMDAL_HOME}
 GSSAPILIBDIR=  ${GSSAPIBASEDIR}/lib/heimdal
 GSSAPIINCDIR=  ${GSSAPIBASEDIR}/include/heimdal
@@ -127,6 +130,7 @@ _RPATH=             ${GSSAPILIBDIR}
 .    elif ${_local} == "mit"
        # MIT KRB5 port selected
 KRB5_HOME?=    ${LOCALBASE}
+KRB5_TYPE=     mit
 GSSAPIBASEDIR= ${KRB5_HOME}
 GSSAPILIBDIR=  ${GSSAPIBASEDIR}/lib
 GSSAPIINCDIR=  ${GSSAPIBASEDIR}/include
diff --git a/www/squid/Makefile b/www/squid/Makefile
index 788c344ee5..782306398f 100644
--- a/www/squid/Makefile
+++ b/www/squid/Makefile
@@ -148,23 +148,18 @@ FS_DISKD_VARS=                    
DISKIO_MODULES+=DiskDaemon \
                                STORAGE_SCHEMES+=diskd
 FS_ROCK_VARS=                  STORAGE_SCHEMES+=rock
 GSSAPI_BASE_USES=              gssapi
-GSSAPI_BASE_CONFIGURE_ON=      ${GSSAPI_CONFIGURE_ARGS} \
-                               --with-heimdal-krb5=${GSSAPIBASEDIR} \
-                               krb5_config=${GSSAPIBASEDIR}/bin/krb5-config
 GSSAPI_BASE_PLIST_SUB=         AUTH_KERB=""
 GSSAPI_HEIMDAL_USES=           gssapi:heimdal
-GSSAPI_HEIMDAL_CONFIGURE_ON=   ${GSSAPI_CONFIGURE_ARGS} \
-                               --with-heimdal-krb5=${GSSAPIBASEDIR} \
-                               krb5_config=${GSSAPIBASEDIR}/bin/krb5-config
 GSSAPI_HEIMDAL_PLIST_SUB=      AUTH_KERB=""
 GSSAPI_MIT_USES=               gssapi:mit
-GSSAPI_MIT_CONFIGURE_ON=       ${GSSAPI_CONFIGURE_ARGS} \
-                               --with-mit-krb5=${GSSAPIBASEDIR} \
-                               krb5_config=${GSSAPIBASEDIR}/bin/krb5-config
 GSSAPI_MIT_PLIST_SUB=          AUTH_KERB=""
+GSSAPI_NONE_CFLAGS_OFF=                ${GSSAPICPPFLAGS}
 GSSAPI_NONE_CONFIGURE_ON=      --without-gnugss \
                                --without-heimdal-krb5 \
                                --without-mit-krb5
+GSSAPI_NONE_CONFIGURE_OFF=     ${GSSAPI_CONFIGURE_ARGS} \
+                               --with-${KRB5_TYPE}-krb5=${GSSAPIBASEDIR} \
+                               krb5_config=${GSSAPIBASEDIR}/bin/krb5-config
 HTCP_CONFIGURE_ENABLE=         htcp
 ICAP_CONFIGURE_ENABLE=         icap-client
 ICMP_CONFIGURE_ENABLE=         icmp

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to