Opened 3 years ago

Closed 3 years ago

#56400 closed defect (fixed)

libevent fails to build with libressl-devel 2.7.2

Reported by: bK4gYuRo Owned by: jerryyhom
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: libevent

Description

Errors in the log:

:info:build In file included from sample/le-proxy.c:36:
:info:build ./openssl-compat.h:6:27: error: static declaration of 'BIO_meth_new' follows non-static declaration
:info:build static inline BIO_METHOD *BIO_meth_new(int type, const char *name)
:info:build                           ^
:info:build /opt/local/include/openssl/bio.h:338:13: note: previous declaration is here
:info:build BIO_METHOD *BIO_meth_new(int type, const char *name);
:info:build             ^
:info:build 1 error generated.
:info:build make[1]: *** [sample/le-proxy.o] Error 1
:info:build make[1]: *** Waiting for unfinished jobs....
:info:build In file included from bufferevent_openssl.c:69:
:info:build ./openssl-compat.h:6:27: error: static declaration of 'BIO_meth_new' follows non-static declaration
:info:build static inline BIO_METHOD *BIO_meth_new(int type, const char *name)
:info:build                           ^
:info:build /opt/local/include/openssl/bio.h:338:13: note: previous declaration is here
:info:build BIO_METHOD *BIO_meth_new(int type, const char *name);
:info:build             ^
:info:build 1 error generated.

Attachments (1)

main.log (31.5 KB) - added by bK4gYuRo 3 years ago.

Download all attachments as: .zip

Change History (8)

Changed 3 years ago by bK4gYuRo

Attachment: main.log added

comment:1 Changed 3 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign removed
Keywords: libevent libressl-devel removed

comment:2 Changed 3 years ago by pmetzger (Perry E. Metzger)

Do libevent's upstream maintainers claim to support libressl? If not, why should this be a supported configuration for MacPorts?

comment:3 Changed 3 years ago by bK4gYuRo

What makes you think it is not supported? libevent is a dependency of tmux, and tmux (and libevent) builds and works fine on OpenBSD which has libressl only. If, following your logic, it's not supported, then it would not work on OpenBSD

comment:4 Changed 3 years ago by raimue (Rainer Müller)

libevent @2.1.8 is already the latest stable version, which does not support libressl. However, the port applies a patch to make it compatible.

Looks like this upstream commit needs to be folded into the local patch: https://github.com/libevent/libevent/commit/28b8075400c70b2d2da2ce07e590c2ec6d11783d

comment:5 Changed 3 years ago by pmetzger (Perry E. Metzger)

"If, following your logic, it's not supported, then it would not work on OpenBSD"

The OpenBSD support it in that instance. As raimue has pointed out, libevent itself does not support it, though there are patches that will make it work.

comment:6 Changed 3 years ago by jerryyhom

I just encountered this issue. The upstream patch referenced by Rainer has not been folded in yet. I can submit a PR, but I see two options.

  1. combine upstream patch with existing patch - to replace it
  2. use upstream patch as is - in addition to existing patch

Is there a preference?

comment:7 Changed 3 years ago by jerryyhom

Owner: set to jerryyhom
Resolution: fixed
Status: newclosed

In c7f43dae1e845f2f861cc5300baa1bf0b5ef22e7/macports-ports (master):

libevent: fold in upstream patch for libressl 2.7

close: #56400

Note: See TracTickets for help on using tickets.