NetBSD Problem Report #57994

From www@netbsd.org  Sun Mar  3 17:20:25 2024
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id CC7661A9239
	for <gnats-bugs@gnats.NetBSD.org>; Sun,  3 Mar 2024 17:20:24 +0000 (UTC)
Message-Id: <20240303172023.571D01A923A@mollari.NetBSD.org>
Date: Sun,  3 Mar 2024 17:20:23 +0000 (UTC)
From: schaecsn@gmx.net
Reply-To: schaecsn@gmx.net
To: gnats-bugs@NetBSD.org
Subject: lang/swi-prolog-lite do not build on NetBSD 10
X-Send-Pr-Version: www-1.0

>Number:         57994
>Category:       pkg
>Synopsis:       lang/swi-prolog-lite do not build on NetBSD 10
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Mar 03 17:25:00 +0000 2024
>Last-Modified:  Wed Mar 06 05:55:01 +0000 2024
>Originator:     Stefan Schaeckeler
>Release:        pkgsrc-2023Q4 and pkgsrc "latest"
>Organization:
>Environment:
NetBSD netbsd 10.0_RC4 NetBSD 10.0_RC4 (GENERIC) #0: Sun Feb 18 08:20:49 PST 2024  root@netbsd:/usr/obj/sys/arch/amd64/compile/GENERIC amd64

>Description:
lang/swi-prolog-lite does not build on NetBSD 10 due to new openssl which does not define RSA_SSLV23_PADDING:

/var/tmp/pkgsrc/lang/swi-prolog-lite/work/swipl-8.0.2/packages/ssl/crypto4pl.c:851:69: error: 'RSA_SSLV23_PADDING' undeclared (first use in this function); did you mean 'RSA_X931_PADDING'?
  851 |     else if ( a == ATOM_sslv23  && mode == RSA_MODE )    *padding = RSA_SSLV23_PADDING;
      |                                                                     ^~~~~~~~~~~~~~~~~~
      |                                                                     RSA_X931_PADDING
/var/tmp/pkgsrc/lang/swi-prolog-lite/work/swipl-8.0.2/packages/ssl/crypto4pl.c:851:69: note: each undeclared identifier is reported only once for each function it appears in
/var/tmp/pkgsrc/lang/swi-prolog-lite/work/swipl-8.0.2/packages/ssl/crypto4pl.c: In function 'pl_ecdsa_sign':


The most recent stable swi-prolog version is 9.2.2. The most recent stable version that just builds without patches is 9.0.4. Tested on NetBSD 10_RC4 as well as NetBSD 9.3.

>How-To-Repeat:
Build lang/swi-prolog-lite on NetBSD 10.
>Fix:
Short term solution could be a bump up to 9.0.4, e.g.

Index: lang/swi-prolog-lite/Makefile.common
===================================================================
RCS file: /cvsroot/pkgsrc/lang/swi-prolog-lite/Makefile.common,v
retrieving revision 1.18
diff -u -p -r1.18 Makefile.common
--- lang/swi-prolog-lite/Makefile.common        10 Jul 2019 10:32:05 -0000      1.18
+++ lang/swi-prolog-lite/Makefile.common        3 Mar 2024 17:01:38 -0000
@@ -4,7 +4,7 @@
 # used by lang/swi-prolog-packages/Makefile
 # used by lang/swi-prolog-jpl/Makefile

-SWIPLVERS=             8.0.2
+SWIPLVERS=             9.0.4
 DISTNAME=              swipl-${SWIPLVERS}
 CATEGORIES=            lang
 MASTER_SITES=          https://www.swi-prolog.org/download/stable/src/
Index: lang/swi-prolog-lite/buildlink3.mk
===================================================================
RCS file: /cvsroot/pkgsrc/lang/swi-prolog-lite/buildlink3.mk,v
retrieving revision 1.14
diff -u -p -r1.14 buildlink3.mk
--- lang/swi-prolog-lite/buildlink3.mk  25 Feb 2019 15:20:44 -0000      1.14
+++ lang/swi-prolog-lite/buildlink3.mk  3 Mar 2024 17:01:38 -0000
@@ -5,7 +5,7 @@ BUILDLINK_TREE+=        swi-prolog-lite
 .if !defined(SWI_PROLOG_LITE_BUILDLINK3_MK)
 SWI_PROLOG_LITE_BUILDLINK3_MK:=

-BUILDLINK_API_DEPENDS.swi-prolog-lite+=        swi-prolog-lite>=8.0.1
+BUILDLINK_API_DEPENDS.swi-prolog-lite+=        swi-prolog-lite>=9.0.3
 BUILDLINK_PKGSRCDIR.swi-prolog-lite?=  ../../lang/swi-prolog-lite

 .endif # SWI_PROLOG_LITE_BUILDLINK3_MK


That requires quite some changes in PLIST as well.

>Audit-Trail:
From: Thomas Klausner <wiz@gatalith.at>
To: NetBSD bugtracking <gnats-bugs@NetBSD.org>
Cc: 
Subject: Re: pkg/57994: lang/swi-prolog-lite do not build on NetBSD 10
Date: Sun, 3 Mar 2024 21:55:20 +0100

 On Sun, Mar 03, 2024 at 05:25:00PM +0000, schaecsn@gmx.net wrote:
 > >Number:         57994
 > >Category:       pkg
 > >Synopsis:       lang/swi-prolog-lite do not build on NetBSD 10

 I tried to build the 9.0.4 version on NetBSD-current and it failed for me:

 [ 80%] Generating hashstream.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/time.pl:124:
 ERROR:    /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/time.pl:124: Initialization goal raised exception:
 ERROR:    '$open_shared_object'/3: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/packages/clib/time.so: Undefined PLT symbol "backtrace_symbols" (symnum = 53)
 [ 80%] Generating figs/xrefchatdep.png
 [ 80%] Generating nlp.html
 [ 80%] Generating httpauthenticate.tex
 [ 80%] Generating figs/xrefchatfile.png
 [ 80%] Generating SWI-Prolog-9.0.4.doc
 [ 80%] Built target paxos.doc.html
 [ 81%] Generating md5.tex
 [ 81%] Generating libredis.tex
 [ 82%] Generating abstract.tex
 [ 82%] Generating httpclient.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:install_alarm/1 is not defined
 [ 82%] Built target nlp.doc.html
 [ 82%] Generating attvar.tex
 [ 82%] Generating libstomp.tex
 [ 82%] Generating process.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/time.pl:124:
 ERROR:    /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/time.pl:124: Initialization goal raised exception:
 ERROR:    '$open_shared_object'/3: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/packages/clib/time.so: Undefined PLT symbol "backtrace_symbols" (symnum = 53)
 [ 82%] Generating overview.tex
 [ 82%] Generating bit64.tex
 [ 82%] Generating httpcors.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:install_alarm/2 is not defined
 [ 82%] Generating redis.tex
 [ 82%] Generating builtin.tex
 [ 82%] Generating prologstream.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:install_alarm/1 is not defined
 [ 82%] Generating httpdigest.tex
 [ 82%] Generating redisstreams.tex
 [ 82%] Generating socket.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:uninstall_alarm/1 is not defined
 [ 82%] Generating redis.html
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:install_alarm/2 is not defined
 [ 82%] Generating httpdirindex.tex
 [ 82%] Generating syslog.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:alarm_at/3 is not defined
 [ 83%] Generating httpdispatch.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:uninstall_alarm/1 is not defined
 [ 83%] Generating udpbroadcast.tex
 [ 83%] Built target redis.doc.html
 [ 83%] Generating pendoc.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:remove_alarm/1 is not defined
 [ 83%] Generating chr.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:alarm/4 is not defined
 [ 84%] Generating pengines.tex
 [ 84%] Generating httpdynworkers.tex
 [ 84%] Generating uid.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:alarm_at/4 is not defined
 [ 84%] Generating penlib.tex
 [ 84%] Generating dialect.tex
 [ 84%] Generating unix.tex
 [ 84%] Generating httpfiles.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:alarm_at/3 is not defined
 [ 84%] Generating engines.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:alarm/4 is not defined
 [ 84%] Generating httpheader.tex
 [ 84%] Generating extensions.tex
 [ 84%] Generating uri.tex
 [ 84%] Generating termtojson.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:alarm/3 is not defined
 [ 84%] Generating foreign.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/mqi.pl:123:
 ERROR:    Exported procedure time:alarm/3 is not defined
 [ 84%] Generating uuid.tex
 [ 84%] Generating pengines.html
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:remove_alarm/1 is not defined
 [ 84%] Generating clib.html
 [ 84%] Generating httphost.tex
 [ 84%] Built target pengines.doc.html
 [ 84%] Generating glossary.tex
 ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/stomp.pl:123:
 ERROR:    Exported procedure time:alarm_at/4 is not defined
 [ 84%] Copying pre-build LaTeX .bbl file
 Warning: Halting with status 1 due to 9 errors and 0 warnings


 Any hints?
  Thomas


From: Stefan Schaeckeler <schaecsn@gmx.net>
To: gnats-bugs@netbsd.org, pkg-manager@netbsd.org, gnats-admin@netbsd.org,
 pkgsrc-bugs@netbsd.org
Cc: 
Subject: Re: pkg/57994: lang/swi-prolog-lite do not build on NetBSD 10
Date: Sun, 3 Mar 2024 22:56:52 -0800

 >  I tried to build the 9.0.4 version on NetBSD-current and it failed for =
 me:
 >
 >  [ 80%] Generating hashstream.tex
 >  ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/librar=
 y/time.pl:124:
 >  ERROR:    /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/lib=
 rary/time.pl:124: Initialization goal raised exception:
 >  ERROR:    '$open_shared_object'/3: /scratch/lang/swi-prolog-lite/work/s=
 wipl-9.0.4/build/packages/clib/time.so: Undefined PLT symbol "backtrace_sy=
 mbols" (symnum =3D 53)
 [..]
 >  Any hints?

 The source code of time.c shows that backtrace_symbols() is a c function w=
 ith headers from /usr/include/execinfo.h. According to its man-page, backt=
 race_symbols() is implemented in libexecinfo.so

 I don't run NetBSD-current. Could it be that its implementation is missing=
  in NetBSD-current?

 Here from NetBSD 10:

 # nm /usr/lib/libexecinfo.so | grep backtrace_symbols
 00000000000016bc T backtrace_symbols

 Otherwise, it's more complicated :)

  Stefan

From: Thomas Klausner <wiz@NetBSD.org>
To: NetBSD bugtracking <gnats-bugs@NetBSD.org>
Cc: 
Subject: Re: pkg/57994: lang/swi-prolog-lite do not build on NetBSD 10
Date: Mon, 4 Mar 2024 08:02:22 +0100

 On Sun, Mar 03, 2024 at 10:56:52PM -0800, Stefan Schaeckeler wrote:
 > 
 > >  I tried to build the 9.0.4 version on NetBSD-current and it failed for me:
 > >
 > >  [ 80%] Generating hashstream.tex
 > >  ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/time.pl:124:
 > >  ERROR:    /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/library/time.pl:124: Initialization goal raised exception:
 > >  ERROR:    '$open_shared_object'/3: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/packages/clib/time.so: Undefined PLT symbol "backtrace_symbols" (symnum = 53)
 > [..]
 > >  Any hints?
 > 
 > The source code of time.c shows that backtrace_symbols() is a c function with headers from /usr/include/execinfo.h. According to its man-page, backtrace_symbols() is implemented in libexecinfo.so
 > 
 > I don't run NetBSD-current. Could it be that its implementation is missing in NetBSD-current?
 > 
 > Here from NetBSD 10:
 > 
 > # nm /usr/lib/libexecinfo.so | grep backtrace_symbols
 > 00000000000016bc T backtrace_symbols
 > 
 > Otherwise, it's more complicated :)

 No, it is still in the same library. I wonder why it works for you then :)

 # nm /usr/lib/libexecinfo.so | grep backtrace_symbols
 000000000000196c T backtrace_symbols
 0000000000001978 T backtrace_symbols_fd
 00000000000018f7 T backtrace_symbols_fd_fmt
 0000000000001552 T backtrace_symbols_fmt

  Thomas

From: Stefan Schaeckeler <schaecsn@gmx.net>
To: gnats-bugs@netbsd.org, pkg-manager@netbsd.org, gnats-admin@netbsd.org,
 pkgsrc-bugs@netbsd.org
Cc: 
Subject: Re: pkg/57994: lang/swi-prolog-lite do not build on NetBSD 10
Date: Tue, 5 Mar 2024 21:50:25 -0800

 Hello Thomas,

 >  > >  I tried to build the 9.0.4 version on NetBSD-current and it failed=
  for me:
 >  > >
 >  > >  [ 80%] Generating hashstream.tex
 >  > >  ERROR: /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/home/l=
 ibrary/time.pl:124:
 >  > >  ERROR:    /scratch/lang/swi-prolog-lite/work/swipl-9.0.4/build/hom=
 e/library/time.pl:124: Initialization goal raised exception:
 >  > >  ERROR:    '$open_shared_object'/3: /scratch/lang/swi-prolog-lite/w=
 ork/swipl-9.0.4/build/packages/clib/time.so: Undefined PLT symbol "backtra=
 ce_symbols" (symnum =3D 53)
 >  > [..]
 >  > >  Any hints?

 I installed netbsd-current from http://nycdn.netbsd.org/pub/NetBSD-daily/H=
 EAD/202403032320Z/amd64/installation/cdrom/boot.iso in a VM and I can buil=
 d swi-prolog-lite 9.0.4 with pkgsrc-2023Q4 as well as with pkgsrc current.

 - - - snip - - -
 # LD_LIBRARY_PATH=3D/mnt/hdb1/pkgsrc/lang/swi-prolog-lite/work/swipl-9.0.4=
 /build/src/ /mnt/hdb1/pkgsrc/lang/swi-prolog-lite/work/swipl-9.0.4/build/s=
 rc/swipl -s /mnt/hdb1/pkgsrc/lang/swi-prolog-lite/work/swipl-9.0.4/demo/li=
 kes.pl
 Welcome to SWI-Prolog (threaded, 64 bits, version 9.0.4)
 SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software.
 Please run ?- license. for legal details.

     CMake built from "/mnt/hdb1/pkgsrc/lang/swi-prolog-lite/work/swipl-9.0=
 .4/build"

 For online help and background, visit https://www.swi-prolog.org
 For built-in help, use ?- help(Topic). or ?- apropos(Word).

 ?- likes(sam,dahl).
 true .

 ?- halt.
 - - - snip - - -

 - - - snip - - -
 # uname -a
 NetBSD netbsd-current 10.99.10 NetBSD 10.99.10 (GENERIC) #0: Sun Mar  3 21=
 :05:47 UTC 2024  mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/amd64/compil=
 e/GENERIC amd64
 - - - snip - - -

 My /etc/mk.conf is basically empty:
 - - - snip - - -
 .ifdef BSD_PKG_MK       # begin pkgsrc settings

 # directory layout
 PKG_DBDIR=3D              /var/db/pkg
 WRKOBJDIR=3D              /mnt/hdb1/pkgsrc

 .endif
 - - - snip - - -

  Stefan

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.47 2022/09/11 19:34:41 kim Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2024 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.