Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Jan 2021 09:01:19 +0000 (UTC)
From:      Alexey Dokuchaev <danfe@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r562646 - in head/devel/tla: . files
Message-ID:  <202101260901.10Q91Jtf098968@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: danfe
Date: Tue Jan 26 09:01:19 2021
New Revision: 562646
URL: https://svnweb.freebsd.org/changeset/ports/562646

Log:
  - Unbreak the build against modern OpenSSL versions
  - Deprecated --preserve option removed in GNU tar 1.29
  - Convert hand-rolled `test' target to TEST_TARGET
  - Define LICENSE and drop useless `pre-patch' target

Added:
  head/devel/tla/files/patch-src_libneon_src_ne__openssl.c   (contents, props changed)
  head/devel/tla/files/patch-src_tla_libarch_archive.c   (contents, props changed)
Modified:
  head/devel/tla/Makefile

Modified: head/devel/tla/Makefile
==============================================================================
--- head/devel/tla/Makefile	Tue Jan 26 07:18:06 2021	(r562645)
+++ head/devel/tla/Makefile	Tue Jan 26 09:01:19 2021	(r562646)
@@ -11,8 +11,7 @@ MASTER_SITES=	GNU/gnu-arch \
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Original arch source control management CLI written in C
 
-BROKEN_SSL=	openssl
-BROKEN_SSL_REASON_openssl=	incomplete definition of type 'struct X509_name_entry_st'
+LICENSE=	GPLv2+
 
 BUILD_DEPENDS=	gpatch:devel/patch \
 		gdiff:textproc/diffutils \
@@ -22,6 +21,7 @@ RUN_DEPENDS:=	${BUILD_DEPENDS}
 USES=		gmake pkgconfig ssl
 HAS_CONFIGURE=	yes
 MAKE_JOBS_UNSAFE=	yes
+TEST_TARGET=	test
 
 CONFIGURE_SCRIPT=	../configure
 CONFIGURE_ARGS=	--prefix=${PREFIX} \
@@ -29,6 +29,7 @@ CONFIGURE_ARGS=	--prefix=${PREFIX} \
 		--with-gnu-diff gdiff \
 		--with-gnu-diff3 gdiff3 \
 		--with-gnu-tar gtar
+CONFIGURE_ENV=	ne_cv_libsfor_SSL_library_init=yes
 
 ORIGWRKSRC=	${WRKDIR}/${DISTNAME}/src
 PATCH_WRKSRC=	${ORIGWRKSRC}/..
@@ -36,20 +37,6 @@ WRKSRC=		${ORIGWRKSRC}/=build
 
 OPTIONS_DEFINE=	DOCS
 
-.include <bsd.port.pre.mk>
-
-.if ${SSL_DEFAULT} == base
-BROKEN_FreeBSD_12=	could not find library containing SSL_library_init
-BROKEN_FreeBSD_13=	could not find library containing SSL_library_init
-BROKEN_FreeBSD_14=	could not find library containing SSL_library_init
-.endif
-
-pre-patch:
-	${MKDIR} ${WRKSRC}
-
-test:
-	cd ${WRKSRC} ; ${MAKE_CMD} test
-
 pre-install:
 	${RM} -r ${ORIGWRKSRC}/docs-tla/PLUGIN \
 		${ORIGWRKSRC}/docs-tla/{arch} ${ORIGWRKSRC}/docs-tla/.arch-ids
@@ -63,4 +50,4 @@ do-install:
 	cd ${ORIGWRKSRC}/docs-tla && ${FIND} . -name '*.html' | \
 		${CPIO} -pdm -R ${SHAREOWN}:${SHAREGRP} ${STAGEDIR}${DOCSDIR}
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>

Added: head/devel/tla/files/patch-src_libneon_src_ne__openssl.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/tla/files/patch-src_libneon_src_ne__openssl.c	Tue Jan 26 09:01:19 2021	(r562646)
@@ -0,0 +1,60 @@
+--- src/libneon/src/ne_openssl.c.orig	2006-07-20 06:34:38 UTC
++++ src/libneon/src/ne_openssl.c
+@@ -84,17 +84,17 @@ char *ne_ssl_readable_dname(const ne_ssl_dname *name)
+ 	
+         /* Skip commonName or emailAddress except if there is no other
+          * attribute in dname. */
+-	if ((OBJ_cmp(ent->object, cname) && OBJ_cmp(ent->object, email)) ||
++	if ((OBJ_cmp(X509_NAME_ENTRY_get_object(ent), cname) && OBJ_cmp(X509_NAME_ENTRY_get_object(ent), email)) ||
+             (!flag && n == 1)) {
+  	    if (flag++)
+ 		ne_buffer_append(dump, ", ", 2);
+ 
+-            switch (ent->value->type) {
++            switch (X509_NAME_ENTRY_get_data(ent)->type) {
+             case V_ASN1_UTF8STRING:
+             case V_ASN1_IA5STRING: /* definitely ASCII */
+             case V_ASN1_VISIBLESTRING: /* probably ASCII */
+             case V_ASN1_PRINTABLESTRING: /* subset of ASCII */
+-                ne_buffer_append(dump, ent->value->data, ent->value->length);
++                ne_buffer_append(dump, X509_NAME_ENTRY_get_data(ent)->data, X509_NAME_ENTRY_get_data(ent)->length);
+                 break;
+             case V_ASN1_UNIVERSALSTRING:
+             case V_ASN1_T61STRING: /* let OpenSSL convert it as ISO-8859-1 */
+@@ -102,7 +102,7 @@ char *ne_ssl_readable_dname(const ne_ssl_dname *name)
+                 unsigned char *tmp = ""; /* initialize to workaround 0.9.6 bug */
+                 int len;
+ 
+-                len = ASN1_STRING_to_UTF8(&tmp, ent->value);
++                len = ASN1_STRING_to_UTF8(&tmp, X509_NAME_ENTRY_get_data(ent));
+                 if (len > 0) {
+                     ne_buffer_append(dump, tmp, len);
+                     OPENSSL_free(tmp);
+@@ -425,8 +425,13 @@ static ne_ssl_client_cert *dup_client_cert(const ne_ss
+ 
+     populate_cert(&newcc->cert, cc->cert.subject);
+ 
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+     cc->cert.subject->references++;
+     cc->pkey->references++;
++#else
++    X509_up_ref(cc->cert.subject);
++    EVP_PKEY_up_ref(cc->pkey);
++#endif
+     return newcc;
+ }
+ 
+@@ -465,8 +470,13 @@ static int provide_client_cert(SSL *ssl, X509 **cert, 
+     if (sess->client_cert) {
+         ne_ssl_client_cert *const cc = sess->client_cert;
+ 	NE_DEBUG(NE_DBG_SSL, "Supplying client certificate.\n");
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ 	cc->pkey->references++;
+ 	cc->cert.subject->references++;
++#else
++	EVP_PKEY_up_ref(cc->pkey);
++	X509_up_ref(cc->cert.subject);
++#endif
+ 	*cert = cc->cert.subject;
+ 	*pkey = cc->pkey;
+ 	return 1;

Added: head/devel/tla/files/patch-src_tla_libarch_archive.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/tla/files/patch-src_tla_libarch_archive.c	Tue Jan 26 09:01:19 2021	(r562646)
@@ -0,0 +1,12 @@
+--- src/tla/libarch/archive.c.orig	2006-07-20 06:34:40 UTC
++++ src/tla/libarch/archive.c
+@@ -1114,7 +1114,8 @@ invoke_tar_extract (int * pid_ret)
+ 
+       *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = cfg__gnu_tar;
+       *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = "-m";
+-      *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = "--preserve";
++      *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = "-p";
++      *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = "-s";
+       *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = "-zxf";
+       *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = "-";
+       *(t_uchar **)ar_push ((void **)&argv, 0, sizeof (char *)) = 0;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202101260901.10Q91Jtf098968>