Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 801952 - net-libs/nodejs fails to build against dev-libs/openssl-3: error: invalid conversion from ‘const dsa_st*’ to ‘DSA*’ {aka ‘dsa_st*’}
Summary: net-libs/nodejs fails to build against dev-libs/openssl-3: error: invalid con...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Marek Szuba
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: openssl-3.0
  Show dependency tree
 
Reported: 2021-07-12 21:49 UTC by Thomas Deutschmann (RETIRED)
Modified: 2021-07-12 23:53 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log.gz,41.39 KB, application/x-gzip)
2021-07-12 21:49 UTC, Thomas Deutschmann (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Deutschmann (RETIRED) gentoo-dev 2021-07-12 21:49:19 UTC
Created attachment 723637 [details]
build.log

> In file included from /usr/include/openssl/x509.h:29,
>                  from /usr/include/openssl/ssl.h:31,
>                  from ../src/node_crypto.h:39,
>                  from ../src/node_crypto.cc:22:
> /usr/include/openssl/evp.h:1355:22: note: declared here
>  1355 | const struct dsa_st *EVP_PKEY_get0_DSA(const EVP_PKEY *pkey);
>       |                      ^~~~~~~~~~~~~~~~~
> ../src/node_crypto.cc:4582:37: error: invalid conversion from ‘const dsa_st*’ to ‘DSA*’ {aka ‘dsa_st*’} [-fpermissive]
>  4582 |     DSA* dsa_key = EVP_PKEY_get0_DSA(pkey.get());
>       |                    ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
>       |                                     |
>       |                                     const dsa_st*
> ../src/node_crypto.cc:4584:42: warning: ‘const BIGNUM* DSA_get0_q(const DSA*)’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
>  4584 |     bits = BN_num_bits(DSA_get0_q(dsa_key));
>       |                                          ^
> In file included from /usr/include/openssl/x509.h:37,
>                  from /usr/include/openssl/ssl.h:31,
>                  from ../src/node_crypto.h:39,
>                  from ../src/node_crypto.cc:22:
> /usr/include/openssl/dsa.h:209:37: note: declared here
>   209 | OSSL_DEPRECATEDIN_3_0 const BIGNUM *DSA_get0_q(const DSA *d);
>       |                                     ^~~~~~~~~~
> ../src/node_crypto.cc:4586:53: warning: ‘const ec_key_st* EVP_PKEY_get0_EC_KEY(const EVP_PKEY*)’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
>  4586 |     EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(pkey.get());
>       |                                                     ^
> In file included from /usr/include/openssl/x509.h:29,
>                  from /usr/include/openssl/ssl.h:31,
>                  from ../src/node_crypto.h:39,
>                  from ../src/node_crypto.cc:22:
> /usr/include/openssl/evp.h:1372:25: note: declared here
>  1372 | const struct ec_key_st *EVP_PKEY_get0_EC_KEY(const EVP_PKEY *pkey);
>       |                         ^~~~~~~~~~~~~~~~~~~~
> ../src/node_crypto.cc:4586:42: error: invalid conversion from ‘const ec_key_st*’ to ‘EC_KEY*’ {aka ‘ec_key_st*’} [-fpermissive]
>  4586 |     EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(pkey.get());
>       |                      ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
>       |                                          |
>       |                                          const ec_key_st*
> [...]
Comment 1 Thomas Deutschmann (RETIRED) gentoo-dev 2021-07-12 21:57:30 UTC
=net-libs/nodejs-16.4.2 compiles.
Comment 2 Marek Szuba archtester gentoo-dev 2021-07-12 22:04:17 UTC
If you haven't done it yet, could you let upstream know about this?
Comment 3 Marek Szuba archtester gentoo-dev 2021-07-12 22:18:15 UTC
Also - OK, so v14 fails but v16 works. What about v12?
Comment 4 Larry the Git Cow gentoo-dev 2021-07-12 23:53:51 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9362ab0778647db45c4237a1b28b33ea4381e6c4

commit 9362ab0778647db45c4237a1b28b33ea4381e6c4
Author:     Marek Szuba <marecki@gentoo.org>
AuthorDate: 2021-07-12 22:05:35 +0000
Commit:     Marek Szuba <marecki@gentoo.org>
CommitDate: 2021-07-12 23:52:30 +0000

    net-libs/nodejs: block openssl-3 in v12 and v14 ebuilds
    
    v14 confirmed not to build, v12 contains the same code so it is assumed
    not to work either.
    Hopefully temporary, given v16 already builds against this version
    of OpenSSL.
    
    Closes: https://bugs.gentoo.org/801952
    Signed-off-by: Marek Szuba <marecki@gentoo.org>

 net-libs/nodejs/nodejs-12.22.1.ebuild  | 7 +++++--
 net-libs/nodejs/nodejs-12.22.2.ebuild  | 7 +++++--
 net-libs/nodejs/nodejs-14.16.1.ebuild  | 7 +++++--
 net-libs/nodejs/nodejs-14.17.3.ebuild  | 7 +++++--
 net-libs/nodejs/nodejs-16.4.2.ebuild   | 2 +-
 net-libs/nodejs/nodejs-99999999.ebuild | 2 +-
 6 files changed, 22 insertions(+), 10 deletions(-)