Re: devel/mongo-c-driver failed with undefined reference due to --no-allow-shlib-undefined: ERR_load_BIO_strings

From: Hiroo Ono <hiroo_at_oikumene.net>
Date: Thu, 27 Jul 2023 02:02:25 UTC
Hello,

On Wed, 26 Jul 2023 10:54:11 +0900
KIRIYAMA Kazuhiko <kiri@truefc.org> wrote:

> On Wed, 26 Jul 2023 00:46:11 +0900,
> Hiroo Ono wrote:
> > 
> > On Tue, 25 Jul 2023 19:23:41 +0900
> > Hiroo Ono <hiroo@oikumene.net> wrote:
> >   
> > > Sorry, I meant that the upstream has already fixed it, so no need
> > > to report upstream but version up of the devel/mongo-c-driver
> > > port is needed.  
> > 
> > Filed updates to bugzilla:
> > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272720
> > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272721  
> 
> Thanx for your patches!!! I tried both, and libbson fine but
> mongo-c-driver failed as follows:
> 
> Installing libbson-1.24.2...
> Extracting libbson-1.24.2: .......... done
> ===>   mongo-c-driver-1.24.2 depends on shared library:
> libbson-1.0.so - found (/usr/local/lib/libbson-1.0.so) ===>
> Returning to build of mongo-c-driver-1.24.2 ===>
> mongo-c-driver-1.24.2 depends on shared library: libzstd.so - not
> found ===>   Installing existing package
> /var/ports/packages/All/zstd-1.5.5.pkg Installing zstd-1.5.5... `--
> Installing liblz4-1.9.4,1... `-- Extracting liblz4-1.9.4,1:
> .......... done Extracting zstd-1.5.5: .......... done
> ===>   mongo-c-driver-1.24.2 depends on shared library: libzstd.so -
> found (/usr/local/lib/libzstd.so) ===>   Returning to build of
> mongo-c-driver-1.24.2 ===>  Configuring for mongo-c-driver-1.24.2
> ===>  Performing out-of-source build  
> /bin/mkdir -p
> /var/ports/work/var/ports/jwebkx/devel/mongo-c-driver/work/.build
> CMake Warning: Ignoring extra path from command line:
> 
>    "/var/ports/work/var/ports/jwebkx/devel/mongo-c-driver/work/.build/
>  -DCMAKE_C_FLAGS_DEBUG:STRING=-O2"
> 
> 
> CMake Warning:
>   Ignoring extra path from command line:
> 
>    "  -DCMAKE_CXX_FLAGS_RELEASE:STRING=-O2"
> 
> 
> CMake Error: Unknown argument -pipe

It seems that default CFLAGS content contaminated CMAKE_ARGS,
but the patch should not have done such things.
Isn't there some mis-patching that makes the content of CFLAGS go
into CMAKE_ARGS?

> CMake Error: Run 'cmake --help' for all supported options.
> *** Error code 1
> 
> Stop.
> make: stopped in /var/ports/jwebkx/devel/mongo-c-driver
> 
> >   
> > > > Hi, Ono san
> > > > 
> > > > On Tue, 25 Jul 2023 09:01:37 +0900,
> > > > Hiroo Ono wrote:  
> > > > > 
> > > > > Hello,
> > > > > 
> > > > > On Sat, 22 Jul 2023 10:28:21 +0200
> > > > > Yuri <yuri@aetern.org> wrote:
> > > > >     
> > > > > > Exactly, it's fallout from openssl 3 migration.
> > > > > > 
> > > > > > From
> > > > > > https://www.openssl.org/docs/manmaster/man7/migration_guide.html:
> > > > > > --- ERR_load_*(), ERR_func_error_string(),
> > > > > > ERR_get_error_line(), ERR_get_error_line_data(),
> > > > > > ERR_get_state()
> > > > > > 
> > > > > > OpenSSL now loads error strings automatically so these
> > > > > > functions are not needed.
> > > > > > ---
> > > > > > 
> > > > > > Looks like this needs to be reported upstream.    
> > > > > 
> > > > > Checked MongoDB JIRA. It was fixed in CDRIVER-4590 and
> > > > > released as version 1.24.0. The port needs to be updated to
> > > > > the latest version.   
> > > > 
> > > > I git pulled, but devel/mongo-c-driver not updated still
> > > > 1.23.2_3:
> > > > 
> > > > root@vm:~ # git -C /ds/ports/freebsd/head pull
> > > > hint: Pulling without specifying how to reconcile divergent
> > > > branches is hint: discouraged. You can squelch this message by
> > > > running one of the following hint: commands sometime before
> > > > your next pull: :
> > > >  31 files changed, 176 insertions(+), 152 deletions(-)
> > > >  rename
> > > > sysutils/barrier/files/{patch-src_lib_net_SecureUtils.cpp =>
> > > > extra-patch-src_lib_net_SecureUtils.cpp} (100%) root@vm:~ #
> > > > egrep '^DISTVERSION='
> > > > /ds/ports/freebsd/head/devel/mongo-c-driver/Makefile
> > > > DISTVERSION=    1.23.2 root@vm:~ # git -C
> > > > /ds/ports/freebsd/head rev-parse --verify --short HEAD
> > > > 07f40427f1f9 root@vm:~ # git -C /ds/ports/freebsd/head show
> > > > --quiet --max-count=1 --format="%ci" HEAD 2023-07-24 23:30:15
> > > > -0700 root@vm:~ # 
> > > > 
> > > > Could you tell me how to get 1.24.0 ?
> > > > 
> > > > Regards
> > > > ---
> > > > Kazuhiko Kiriyama
> > > >   
> > > 
> > >   
> > 
> >   
> 
> Regards
> ---
> Kazuhiko Kiriyama
>