Opened 5 years ago

Closed 5 years ago

#59015 closed defect (fixed)

xchat-gnome @0.26.1_12 doesn't build against openssl 1.1.1

Reported by: odysseus9672 (Sean Lake) Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version: 2.5.4
Keywords: Cc:
Port: xchat-gnome

Description

First the update failed, and then the install failed.

--->  Building xchat-gnome
Error: Failed to build xchat-gnome: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_xchat-gnome/xchat-gnome/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port xchat-gnome failed

Logfile attached.

Attachments (1)

main.log (876.1 KB) - added by odysseus9672 (Sean Lake) 5 years ago.
xchat-gnome build failure log file.

Download all attachments as: .zip

Change History (8)

Changed 5 years ago by odysseus9672 (Sean Lake)

Attachment: main.log added

xchat-gnome build failure log file.

comment:1 Changed 5 years ago by kencu (Ken)

Summary: xchat-gnome @0.26.1_12+universal: Failed to build xchat-gnomexchat-gnome @0.26.1_12 doesn't build against openssl 1.1.1
6932	:info:build ssl.c:73:30: warning: implicit declaration of function 'SSLv3_server_method' is invalid in C99 [-Wimplicit-function-declaration]
6933	:info:build         ctx = SSL_CTX_new (server ? SSLv3_server_method() : SSLv3_client_method ());
6934	:info:build                                     ^
6935	:info:build ssl.c:73:54: warning: implicit declaration of function 'SSLv3_client_method' is invalid in C99 [-Wimplicit-function-declaration]
6936	:info:build         ctx = SSL_CTX_new (server ? SSLv3_server_method() : SSLv3_client_method ());
6937	:info:build                                                             ^
6938	:info:build ssl.c:73:21: warning: incompatible integer to pointer conversion passing 'int' to parameter of type 'const SSL_METHOD *' (aka 'const struct ssl_method_st *') [-Wint-conversion]
6939	:info:build         ctx = SSL_CTX_new (server ? SSLv3_server_method() : SSLv3_client_method ());
6940	:info:build                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6941	:info:build /opt/local/include/openssl/ssl.h:1503:47: note: passing argument to parameter 'meth' here
6942	:info:build __owur SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth);
6943	:info:build                                               ^
6944	:info:build ssl.c:158:30: error: incomplete definition of type 'struct x509_st'
6945	:info:build         alg = OBJ_obj2nid (peer_cert->cert_info->key->algor->algorithm);
6946	:info:build                            ~~~~~~~~~^
6947	:info:build /opt/local/include/openssl/ossl_typ.h:120:16: note: forward declaration of 'struct x509_st'
6948	:info:build typedef struct x509_st X509;
6949	:info:build                ^
6950	:info:build ssl.c:159:35: error: incomplete definition of type 'struct x509_st'
6951	:info:build         sign_alg = OBJ_obj2nid (peer_cert->sig_alg->algorithm);
6952	:info:build                                 ~~~~~~~~~^
6953	:info:build /opt/local/include/openssl/ossl_typ.h:120:16: note: forward declaration of 'struct x509_st'
6954	:info:build typedef struct x509_st X509;

comment:2 Changed 5 years ago by kencu (Ken)

If we can't find an openssl 1.1.x patch, this fixes the port by forcing openssl 1.0:

$ git diff
diff --git a/gnome/xchat-gnome/Portfile b/gnome/xchat-gnome/Portfile
index bdf4dbc5c92..ce07e557657 100644
--- a/gnome/xchat-gnome/Portfile
+++ b/gnome/xchat-gnome/Portfile
@@ -2,6 +2,10 @@
 
 PortSystem          1.0
 PortGroup           perl5 1.0
+PortGroup           old_openssl 1.0
+
+openssl.branch      1.0
+openssl.configure   build_flags
 
 name                xchat-gnome
 version             0.26.1

comment:3 Changed 5 years ago by yan12125 (Chih-Hsuan Yen)

FWIW, here is a patch from PLD Linux: https://git.pld-linux.org/?p=packages/xchat-gnome.git;a=blob;f=xchat-gnome-openssl-1.1.patch;h=e02e4a469e3cbb551f7c1f7c461cb8cb8f598be7;hb=b4ad7762ae88b146350db4c7e7930aa040d9d37e.

By the way, MacPorts and PLD Linux are the only two distributions that packages stable versions of xchat-gnome :D https://repology.org/project/xchat-gnome/versions

comment:4 Changed 5 years ago by jmroot (Joshua Root)

Should be fairly easy to apply the openssl changes from hexchat, since both are based on xchat. https://github.com/hexchat/hexchat/commits/master/src/common/ssl.c

But OTOH, is there a reason to use xchat-gnome instead of hexchat?

comment:5 Changed 5 years ago by kencu (Ken)

there are systems that can use xchat-gnome that hexchat won't work on.

comment:6 Changed 5 years ago by odysseus9672 (Sean Lake)

By the way, bitchx currently also build fails on SSL, though the details of the failure are different. Could a similar patch work there, too?

The ticket: https://trac.macports.org/ticket/58965

comment:7 Changed 5 years ago by dbevans (David B. Evans)

Owner: set to dbevans
Resolution: fixed
Status: newclosed

In 5dd2b42781ddec36928c42520930d1ffc15ed292/macports-ports (master):

xchat-gnome: fix build using openssl10

  • update homepage
  • configure openssl10 using PortGroup old_openssl 1.0

Closes #59015

Note: See TracTickets for help on using tickets.