jrmarino / synth

Next D/Ports build tool for live systems (Alternative for Portmaster and Portupgrade tools)
ISC License
255 stars 15 forks source link

Environment variables are repeated where port options was expected in the log files #226

Open Ximalas opened 3 months ago

Ximalas commented 3 months ago

Given this excerpt from /var/log/synth/shells___bash.log.

--------------------------------------------------
--  Environment
--------------------------------------------------
UNAME_r=15.0-SYNTH
UNAME_m=amd64
UNAME_p=amd64
UNAME_v=FreeBSD 15.0-SYNTH
UNAME_s=FreeBSD
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
SSL_NO_VERIFY_PEER=1
TERM=dumb
PKG_CACHEDIR=/var/cache/pkg8
PKG_DBDIR=/var/db/pkg8
PORTSDIR=/xports
LANG=C
HOME=/root
USER=root

--------------------------------------------------
--  Options
--------------------------------------------------
UNAME_r=15.0-SYNTH
UNAME_m=amd64
UNAME_p=amd64
UNAME_v=FreeBSD 15.0-SYNTH
UNAME_s=FreeBSD
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
SSL_NO_VERIFY_PEER=1
TERM=dumb
PKG_CACHEDIR=/var/cache/pkg8
PKG_DBDIR=/var/db/pkg8
PORTSDIR=/xports
LANG=C
HOME=/root
USER=root

--------------------------------------------------
--  CONFIGURE_ENV
--------------------------------------------------
UNAME_r=15.0-SYNTH

Why does this happen? What would it take to regain the display of port options (if any) in the log files? I'm running the latest Synth 3.01, and this issue has been present for a very long time.

jrmarino commented 3 months ago

this happens with all ports? or just some like this bash port?

Ximalas commented 3 months ago

This has been a constant since the 2.x days, and I see it in every log file. The source code is seemingly correct, so I'm guessing it's due to an optimizer(?) bug in the compiler. Funny enough, the bug is prevalent when Synth is built using gnat12 and not just gcc-aux6.

jrmarino commented 1 month ago

yeah, it's strange. I don't see an issue with the code either.

jrmarino commented 1 month ago

I looked at an old synth log on dragonfly and I don't see the behavior:

--------------------------------------------------
--  Environment
--------------------------------------------------
UNAME_r=6.4-SYNTH
UNAME_m=x86_64
UNAME_p=x86_64
UNAME_v=DragonFly 6.4-SYNTH
UNAME_s=DragonFly
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
SSL_NO_VERIFY_PEER=1
TERM=dumb
PKG_CACHEDIR=/var/cache/pkg8
PKG_DBDIR=/var/db/pkg8
PORTSDIR=/xports
LANG=C
HOME=/root
USER=root

--------------------------------------------------
--  Options
--------------------------------------------------
===> The following configuration options are available for serf-1.3.9_6:
     DOCS=off: Build and/or install documentation
====> Kerberos support: you can only select none or one of them
     GSSAPI_BASE=off: Heimdal Kerberos (base)
     GSSAPI_HEIMDAL=off: Heimdal Kerberos (security/heimdal)
     GSSAPI_MIT=off: MIT Kerberos (security/krb5)
===> Use 'make config' to modify these settings

--------------------------------------------------
--  CONFIGURE_ENV
--------------------------------------------------

let me check my freebsd box.

jrmarino commented 1 month ago

I checked the same log on freebsd and it looks okay:

=> Building www/serf
Started : Saturday, 28 JAN 2023 at 05:03:19 UTC
Platform: 12.2-RELEASE-p1 FreeBSD 12.2-RELEASE-p1 GENERIC  amd64

--------------------------------------------------
--  Environment
--------------------------------------------------
UNAME_r=12.2-SYNTH
UNAME_m=amd64
UNAME_p=amd64
UNAME_v=FreeBSD 12.2-SYNTH
UNAME_s=FreeBSD
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
SSL_NO_VERIFY_PEER=1
TERM=dumb
PKG_CACHEDIR=/var/cache/pkg8
PKG_DBDIR=/var/db/pkg8
PORTSDIR=/xports
LANG=C
HOME=/root
USER=root

--------------------------------------------------
--  Options
--------------------------------------------------
===> The following configuration options are available for serf-1.3.9_6:
     DOCS=off: Build and/or install documentation
====> Kerberos support: you can only select none or one of them
     GSSAPI_BASE=off: Heimdal Kerberos (base)
     GSSAPI_HEIMDAL=off: Heimdal Kerberos (security/heimdal)
     GSSAPI_MIT=off: MIT Kerberos (security/krb5)
===> Use 'make config' to modify these settings

--------------------------------------------------
--  CONFIGURE_ENV
--------------------------------------------------

Now, my guess is that this version of synth was built on ravenports, which uses it's own gcc13 compiler. So the guess that this is compiler related might be on the right track.