[69817] trunk/dports/net/yafc

michaelld at macports.org michaelld at macports.org
Fri Jul 16 20:02:42 PDT 2010


Revision: 69817
          http://trac.macports.org/changeset/69817
Author:   michaelld at macports.org
Date:     2010-07-16 20:02:41 -0700 (Fri, 16 Jul 2010)
Log Message:
-----------
Fix 'yafc' so that it works using either MIT's Kerberos5 latest or
Heimdal latest.

Modified Paths:
--------------
    trunk/dports/net/yafc/Portfile
    trunk/dports/net/yafc/files/patch-src__input.c.diff

Added Paths:
-----------
    trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-heimdal.diff
    trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-mit.diff

Removed Paths:
-------------
    trunk/dports/net/yafc/files/patch-lib__gssapi.c-darwin9.diff
    trunk/dports/net/yafc/files/patch-lib__gssapi.c.diff

Modified: trunk/dports/net/yafc/Portfile
===================================================================
--- trunk/dports/net/yafc/Portfile	2010-07-17 03:02:19 UTC (rev 69816)
+++ trunk/dports/net/yafc/Portfile	2010-07-17 03:02:41 UTC (rev 69817)
@@ -1,3 +1,4 @@
+# -*- coding: utf-8; mode: tcl; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 4; truncate-lines: t -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
 # $Id$
 
 PortSystem         1.0
@@ -4,7 +5,7 @@
 
 name               yafc
 version            1.1.1
-revision           1
+revision           2
 categories         net
 platforms          darwin
 maintainers        nomaintainer
@@ -28,23 +29,42 @@
                    sha1 d88132e1b389d74533f9eaa94f1a6d02787c03c8 \
                    rmd160 1a1af7f618e9fada90b23390e64ec0ee4c8ed370
 
-patchfiles         patch-src__syshdr.h.diff
+# yafc -requires- kerberos for compiling on OSX; by default, choose
+# the MIT version but allow for Heimdal variant.  openssl is required
+# for the deprecated function "des_read_pw_string".
 
-depends_lib        port:readline
+patchfiles                   \
+    patch-src__input.c.diff  \
+    patch-src__syshdr.h.diff \
+    patch-lib__gssapi.c-krb-mit.diff
 
-configure.args     --mandir=${prefix}/share/man \
-                   --infodir=${prefix}/share/info \
-                   --with-readline-lib=${prefix}/lib \
-                   --with-readline-include=${prefix}/include
+depends_lib        \
+    port:readline  \
+    port:kerberos5 \
+    port:openssl
 
-platform darwin 8 {
-  patchfiles-append patch-lib__gssapi.c.diff \
-                    patch-src__input.c.diff
-}
+# for _ossl_old_des_read_pw_string
+configure.ldflags -lcrypto
 
-platform darwin 9 {
-  patchfiles-append patch-lib__gssapi.c-darwin9.diff \
-                    patch-src__input.c.diff
+configure.args                     \
+    --mandir=${prefix}/share/man   \
+    --infodir=${prefix}/share/info \
+    --with-readline=${prefix}/lib  \
+    --without-krb4                 \
+    --with-krb5=${prefix}
+
+variant heimdal description \
+    {Use Heimdal for Kerberos 5 network authentication, not MIT variety} \
+{
+    # remove MIT style parameters
+    configure.args-delete  --with-krb5=${prefix}
+    depends_lib-delete     port:kerberos5
+    patchfiles-delete patch-lib__gssapi.c-krb-mit.diff
+
+    # add Heimdal style parameters
+    depends_lib-append     port:heimdal
+    configure.args-append  --with-krb5=${prefix}/libexec/heimdal
+    patchfiles-append patch-lib__gssapi.c-krb-heimdal.diff
 }
 
 livecheck.regex    {(\d+(?:\.\d+)*) released}

Deleted: trunk/dports/net/yafc/files/patch-lib__gssapi.c-darwin9.diff
===================================================================
--- trunk/dports/net/yafc/files/patch-lib__gssapi.c-darwin9.diff	2010-07-17 03:02:19 UTC (rev 69816)
+++ trunk/dports/net/yafc/files/patch-lib__gssapi.c-darwin9.diff	2010-07-17 03:02:41 UTC (rev 69817)
@@ -1,42 +0,0 @@
---- lib/gssapi.c	2002-12-05 17:12:36.000000000 -0500
-+++ lib/gssapi.c	2007-11-15 21:59:58.000000000 -0500
-@@ -34,29 +34,8 @@
- #include "syshdr.h"
- #include "ftp.h"
- #include "base64.h"
--
--#if defined(HAVE_GSSAPI_H)
--# include <gssapi.h>
-- /* if we have gssapi.h (not gssapi/gssapi.h) we assume we link
--  * against Heimdal, which needs krb5_err.h to define *
--  * KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN
--  */
--# include <krb5_err.h>
--#elif defined(HAVE_GSSAPI_GSSAPI_H)
--# include <gssapi/gssapi.h>
-- /* if we have gssapi/gssapi.h it might be safe to assume we have the
--  * other two that are part of MIT's krb5 as well, but this will work
--  * even if they one day do away with one of those two header files.
--  */
--# if defined(HAVE_GSSAPI_GSSAPI_KRB5_H)
--#   include <gssapi/gssapi_krb5.h>
--# endif
--#else
--# error "Need gssapi.h from either Heimdal or MIT krb5"
--#endif
--
--
--
-+#include <gssapi/gssapi.h>
-+#include <gssapi/gssapi_krb5.h>
- 
- /*
-  * The implementation must reserve static storage for a
-@@ -72,7 +51,6 @@
- static gss_OID_desc gss_c_nt_hostbased_service_oid_desc =
- {10, (void *)"\x2a\x86\x48\x86\xf7\x12" "\x01\x02\x01\x04"};
- 
--static gss_OID GSS_C_NT_HOSTBASED_SERVICE = &gss_c_nt_hostbased_service_oid_desc;
- 
- 
- 

Copied: trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-heimdal.diff (from rev 69766, trunk/dports/net/yafc/files/patch-lib__gssapi.c.diff)
===================================================================
--- trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-heimdal.diff	                        (rev 0)
+++ trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-heimdal.diff	2010-07-17 03:02:41 UTC (rev 69817)
@@ -0,0 +1,10 @@
+--- lib/gssapi.c.orig	2005-04-16 15:16:31.000000000 -0400
++++ lib/gssapi.c	2005-04-16 15:16:35.000000000 -0400
+@@ -72,7 +72,6 @@
+ static gss_OID_desc gss_c_nt_hostbased_service_oid_desc =
+ {10, (void *)"\x2a\x86\x48\x86\xf7\x12" "\x01\x02\x01\x04"};
+ 
+-static gss_OID GSS_C_NT_HOSTBASED_SERVICE = &gss_c_nt_hostbased_service_oid_desc;
+ 
+ 
+ 

Copied: trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-mit.diff (from rev 69766, trunk/dports/net/yafc/files/patch-lib__gssapi.c-darwin9.diff)
===================================================================
--- trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-mit.diff	                        (rev 0)
+++ trunk/dports/net/yafc/files/patch-lib__gssapi.c-krb-mit.diff	2010-07-17 03:02:41 UTC (rev 69817)
@@ -0,0 +1,42 @@
+--- lib/gssapi.c	2002-12-05 17:12:36.000000000 -0500
++++ lib/gssapi.c	2007-11-15 21:59:58.000000000 -0500
+@@ -34,29 +34,8 @@
+ #include "syshdr.h"
+ #include "ftp.h"
+ #include "base64.h"
+-
+-#if defined(HAVE_GSSAPI_H)
+-# include <gssapi.h>
+- /* if we have gssapi.h (not gssapi/gssapi.h) we assume we link
+-  * against Heimdal, which needs krb5_err.h to define *
+-  * KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN
+-  */
+-# include <krb5_err.h>
+-#elif defined(HAVE_GSSAPI_GSSAPI_H)
+-# include <gssapi/gssapi.h>
+- /* if we have gssapi/gssapi.h it might be safe to assume we have the
+-  * other two that are part of MIT's krb5 as well, but this will work
+-  * even if they one day do away with one of those two header files.
+-  */
+-# if defined(HAVE_GSSAPI_GSSAPI_KRB5_H)
+-#   include <gssapi/gssapi_krb5.h>
+-# endif
+-#else
+-# error "Need gssapi.h from either Heimdal or MIT krb5"
+-#endif
+-
+-
+-
++#include <gssapi/gssapi.h>
++#include <gssapi/gssapi_krb5.h>
+ 
+ /*
+  * The implementation must reserve static storage for a
+@@ -72,7 +51,6 @@
+ static gss_OID_desc gss_c_nt_hostbased_service_oid_desc =
+ {10, (void *)"\x2a\x86\x48\x86\xf7\x12" "\x01\x02\x01\x04"};
+ 
+-static gss_OID GSS_C_NT_HOSTBASED_SERVICE = &gss_c_nt_hostbased_service_oid_desc;
+ 
+ 
+ 

Deleted: trunk/dports/net/yafc/files/patch-lib__gssapi.c.diff
===================================================================
--- trunk/dports/net/yafc/files/patch-lib__gssapi.c.diff	2010-07-17 03:02:19 UTC (rev 69816)
+++ trunk/dports/net/yafc/files/patch-lib__gssapi.c.diff	2010-07-17 03:02:41 UTC (rev 69817)
@@ -1,10 +0,0 @@
---- lib/gssapi.c.orig	2005-04-16 15:16:31.000000000 -0400
-+++ lib/gssapi.c	2005-04-16 15:16:35.000000000 -0400
-@@ -72,7 +72,6 @@
- static gss_OID_desc gss_c_nt_hostbased_service_oid_desc =
- {10, (void *)"\x2a\x86\x48\x86\xf7\x12" "\x01\x02\x01\x04"};
- 
--static gss_OID GSS_C_NT_HOSTBASED_SERVICE = &gss_c_nt_hostbased_service_oid_desc;
- 
- 
- 

Modified: trunk/dports/net/yafc/files/patch-src__input.c.diff
===================================================================
--- trunk/dports/net/yafc/files/patch-src__input.c.diff	2010-07-17 03:02:19 UTC (rev 69816)
+++ trunk/dports/net/yafc/files/patch-src__input.c.diff	2010-07-17 03:02:41 UTC (rev 69817)
@@ -1,24 +1,12 @@
---- src/input.c	2003-10-15 17:37:31.000000000 -0400
-+++ src/input.c	2007-11-15 21:47:48.000000000 -0500
-@@ -56,7 +56,7 @@
- #if 1
- char *getpass_hook(const char *prompt)
- {
--#ifdef KERBEROS
-+#ifdef HAVE_KERBEROS
- 	char tmp[80];
- 	des_read_pw_string(tmp, sizeof(tmp), (char *)prompt, 0);
- 	tmp[79] = 0;
-@@ -72,13 +72,15 @@
-  * probably a good idea, but I just don't have the time.
-  */
+--- src/input.c.orig	2010-07-16 20:36:45.000000000 -0600
++++ src/input.c	2010-07-16 20:49:03.000000000 -0600
+@@ -76,11 +76,12 @@
  
-+#ifdef HAVE_KERBEROS
  # include <fcntl.h> 
  # include <sys/ioctl.h> 
 -# include <termio.h> 
-+/*# include <termio.h>*/
-+#endif
++# include <term.h> 
++# include <openssl/ui_compat.h>
  
  char *getpass_hook(const char *prompt)
  {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20100716/984239f6/attachment-0001.html>


More information about the macports-changes mailing list