From owner-freebsd-ports@freebsd.org Wed Aug 7 02:04:41 2019 Return-Path: Delivered-To: freebsd-ports@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 07A55BADC5 for ; Wed, 7 Aug 2019 02:04:41 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic311-25.consmr.mail.ne1.yahoo.com (sonic311-25.consmr.mail.ne1.yahoo.com [66.163.188.206]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 463FF34mNRz44ZL for ; Wed, 7 Aug 2019 02:04:39 +0000 (UTC) (envelope-from marklmi@yahoo.com) X-YMail-OSG: SSnlBUcVM1luyBvH.2asm0wIxPb.RexRy.GZa0NiyQniHJ0us3vlF2gzu7eSvgA .r6qZunWgXa20bsgmpJ8nS.P5pbVdB3kwtS9KjDk1XYqi2cL2009.P0dztu.bKKSwK5fNxNAlLbs X4J8WHbBFOSVXTxWrrZ05ojhOGQcWdvH.ISVggjL6cHpV_P8AI2p.TDB2WISwmiiIqYsR9VMcMcG qkaGFlqJ6qD70QaPyiUVJe5to87cSbe.zmPie4VHrIgLpGOUTX4p7IBmBJ.wKPXdCcFIKBBMnCSJ JrbI4NEAXPzFPwGe1OAfpmSAgyU_X98sYlBiIzxu352gZvDyLsF6j4wgUAl20kDOuY56J0oW13JD aznJoFpzmJ53gbaMwYIP9lijfIt_R3V1Iw2bLFSbCc.JBRDws1pJDplX18KEsvYW6VYeRCQ8zJD4 dWEWkPRMCLnaRpZz1u5T9MRduejjNnvCKC2kgpzi9fzFIT8MfxYMA9UnGH8MaCHS3UIJycHHyrFv Jn5OR5_EWnGZINmCSWFENMOeyws1OYu4HO_XJN3aL.lZ6i7xpmiAIHPdRlvxo6AiGGqi.WWbFRYH AIavhm5LOn7WG2.yqeqeuUxvZ8NUEFjksbQYtNvlsYaEGxaWe.XoqNOQ_Lbs5aiHQSwaevoY1W3i Y7c7f78VbjHl0kpJMXaSUBt8FFt2j35w6WegDAwMgmoWcWMRhyqRNrzFM00i1pwALBRHySd_7Usz iM8aASU0q5s38tLs2CREKDPdGxFhIDoavvMkrAr2P0cp4h7.h6jjUrip_VaLU29N7ua6JR0wEAqF W44wbzjHbrml_5rOzwmWNoSFwOzg2FGhfuDCQv.PLRfdJhY80RW2PjA.Zs1UWCicTQFI_pwnMoSW tEElr.k.mvj6ohr1WhUZKyXleu2K0_VsGw2VfGZLa2o4OBi.WA67pOUm0djonTs0N.hn.7oGxDio Tp3UHitUT8uBmZ1_HY.WClJXBr8o_lLc67yZd7t0YjvJFy_BJtWiUTWwUOLO6dgFRtvNPLKZHHzS CmuiSGP1JjntRjAGcihE1PNPEp83lWiZpDgHmz.OP4nnQctNsSCjpSDs8GIdEgoR7ag.jdfN.eCh dtDMdB.L_KHeklwfsU0riwBOuMgwjXSXXRyaafWrC3YG738qOATTCMRGEtbeg9ypzFueQe2o1ROh sZ.QAefC6KweQKLkmikPNNFwB3CykFT5fjNbeXJCmOMqp9B3cs2CTp4prUgWffJrKCZ9MDZJ6Mq6 VClP3ZmzY461ZajO2izH5lg-- Received: from sonic.gate.mail.ne1.yahoo.com by sonic311.consmr.mail.ne1.yahoo.com with HTTP; Wed, 7 Aug 2019 02:04:38 +0000 Received: by smtp411.mail.ne1.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID f3f8056cf5b542456a6f1ca2b520d2ff; Wed, 07 Aug 2019 02:04:36 +0000 (UTC) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\)) Subject: Re: devel/llvm90 requires math/z3 first; building math/z3 requires a c++ toolchain be in place From: Mark Millard In-Reply-To: <2A88AADC-8ED0-4FFD-85A8-34C0186D5D4F@yahoo.com> Date: Tue, 6 Aug 2019 19:04:34 -0700 Cc: freebsd-toolchain@freebsd.org, freebsd-ports@freebsd.org, freebsd-ppc@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <9EA047FF-6427-4F5F-B85E-E8DB18CB174C@yahoo.com> References: <8DB3EAA4-2B88-4180-8386-673524D27C64@yahoo.com> <20190806165525.GC94703@spindle.one-eyed-alien.net> <2A88AADC-8ED0-4FFD-85A8-34C0186D5D4F@yahoo.com> To: Brooks Davis X-Mailer: Apple Mail (2.3445.104.11) X-Rspamd-Queue-Id: 463FF34mNRz44ZL X-Spamd-Bar: - X-Spamd-Result: default: False [-1.47 / 15.00]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; FREEMAIL_FROM(0.00)[yahoo.com]; MV_CASE(0.50)[]; DKIM_TRACE(0.00)[yahoo.com:+]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; ASN(0.00)[asn:36646, ipnet:66.163.184.0/21, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[yahoo.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.62)[-0.618,0]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; NEURAL_SPAM_SHORT(0.30)[0.300,0]; NEURAL_HAM_LONG(-0.66)[-0.656,0]; MIME_GOOD(-0.10)[text/plain]; IP_SCORE(0.00)[ip: (2.52), ipnet: 66.163.184.0/21(1.27), asn: 36646(1.02), country: US(-0.05)]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[206.188.163.66.list.dnswl.org : 127.0.5.0]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Aug 2019 02:04:41 -0000 On 2019-Aug-6, at 17:59, Mark Millard wrote: > On 2019-Aug-6, at 09:55, Brooks Davis wrote: >=20 >> I'd prefer to disable this dependency. There's a knob that worked in >> the 8.0 timeframe, but the lit build now autodetects z3 when it is >> present and I've failed to find a knob to disable it. For now, the = easy >> workaround is probably to disable options LIT. We could make that = the >> default on non-LLVM platforms is that makes sense. >>=20 >> -- Brooks >=20 > Okay. >=20 > poudriere-devel automatically built math/z3 because > I'd indicated to build devel/llvm90 . math/z3 was not > previously built: I've never had other use of it. So > my context was not one of an implicit autodetect. >=20 > It looks like that happened because of > devel/llvm90/Makefile having: >=20 > LIT_DESC=3D Install lit and FileCheck test tools > LIT_LIB_DEPENDS=3D libz3.so:math/z3 > LIT_VARS=3D _USES_PYTHON=3Dpython:3.6+ I tried deleting the package for math/z3 from poudriere and using: FBSDFHUGE# svnlite diff /usr/ports/devel/llvm90 Index: /usr/ports/devel/llvm90/Makefile =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- /usr/ports/devel/llvm90/Makefile (revision 508197) +++ /usr/ports/devel/llvm90/Makefile (working copy) @@ -110,7 +110,7 @@ GOLD_CMAKE_ON=3D = -DLLVM_BINUTILS_INCDIR=3D${LOCALBASE}/include GOLD_BUILD_DEPENDS=3D ${LOCALBASE}/bin/ld.gold:devel/binutils LIT_DESC=3D Install lit and FileCheck test tools -LIT_LIB_DEPENDS=3D libz3.so:math/z3 +#LIT_LIB_DEPENDS=3D libz3.so:math/z3 LIT_VARS=3D _USES_PYTHON=3Dpython:3.6+ LLD_DESC=3D Install lld, the LLVM linker LLD_DISTFILES=3D lld-${DISTVERSION}.src${EXTRACT_SUFX} devel/llvm90 is building via poudriere-devel without first building math/z3 . We will see if it completes okay. If it does I'll try a pkg delete of math/z3 and an install of the devel/llvm90 . (No new material after this point.) > Of course someone that has math/z3 for other reasons > would not necessarily want it used by llvm90 materials, > so merely not listing it in LIT_LIB_DEPENDS might not > be enough to cover all contexts. >=20 > [Stop reading here if you do not care about what from > llvm90 uses z3 and some of the consequences.] >=20 > It turns out that the direct dependency is (via > reviewing ldd -a output): >=20 > /usr/local/llvm90/lib/../lib/libLLVM-9.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 >=20 > The indirect reference via libLLVM-9.so use > leads to most of llvm90 materials binding to > libz3.so : >=20 > # ldd /usr/local/llvm90/lib/*.so | egrep '(^/|z3)' > /usr/local/llvm90/lib/CheckerDependencyHandlingAnalyzerPlugin.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x807a00000) > /usr/local/llvm90/lib/CheckerOptionHandlingAnalyzerPlugin.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x807a00000) > /usr/local/llvm90/lib/LLVMgold.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x805400000) > /usr/local/llvm90/lib/SampleAnalyzerPlugin.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x807a00000) > /usr/local/llvm90/lib/libLLVM-9.0.0.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x805200000) > /usr/local/llvm90/lib/libLLVM-9.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x805200000) > /usr/local/llvm90/lib/libLLVM.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x805200000) > /usr/local/llvm90/lib/libLTO.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x805400000) > /usr/local/llvm90/lib/libRemarks.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x805400000) > /usr/local/llvm90/lib/libclang-cpp.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x807a00000) > /usr/local/llvm90/lib/libclang.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x807200000) > /usr/local/llvm90/lib/libgomp.so: > /usr/local/llvm90/lib/libiomp5.so: > /usr/local/llvm90/lib/liblldb.so: > libz3.so.0 =3D> /usr/local/lib/libz3.so.0 (0x807e00000) > /usr/local/llvm90/lib/libomp.so: > /usr/local/llvm90/lib/libomptarget.so: >=20 > (I'll not list the /usr/local/llvm90/bin/ programs that in > turn bind to these libraries, but most end up bound to > libz3.so .) >=20 > ldd reports some of the details as far as what librraries > the libz3.so depends on: >=20 > # ldd /usr/local/lib/*z3.so > /usr/local/lib/libz3.so: > libthr.so.3 =3D> /lib/libthr.so.3 (0x800662000) > libomp.so =3D> /usr/lib/libomp.so (0x80068f000) > libc++.so.1 =3D> /usr/lib/libc++.so.1 (0x8020e4000) > libcxxrt.so.1 =3D> /lib/libcxxrt.so.1 (0x800738000) > libm.so.5 =3D> /lib/libm.so.5 (0x80075a000) > libgcc_s.so.1 =3D> /lib/libgcc_s.so.1 (0x80078c000) > libc.so.7 =3D> /lib/libc.so.7 (0x800242000) >=20 > This makes clear that mixing in libstdc+++ or the > like would likely not be appropriate unless llvm90 > was also using such. So a default gcc based build > of libz3.so likely would not be appropriate if > llvm90 is to also be built such that it can bind > to libz3.so if found. >=20 >> On Mon, Aug 05, 2019 at 08:45:31PM -0700, Mark Millard via = freebsd-toolchain wrote: >>> Building math/z3 involves: >>>=20 >>> # grep compiler /usr/ports/math/z3/Makefile >>> USES=3D compiler:c++11-lang python:2.7,build >>>=20 >>> But devel/llvm90 requires math/z3 to have been built before >>> devel/llvm90 is built: >>>=20 >>> # pkg info -d llvm90 >>> llvm90-9.0.0.r1: >>> libxml2-2.9.9 >>> z3-4.8.5_1 >>> python36-3.6.9 >>> perl5-5.28.2 >>> libedit-3.1.20190324,1 >>> # pkg info -B llvm90 >>> llvm90-9.0.0.r1: >>> libpython3.6m.so.1.0 >>> libedit.so.0 >>> libz3.so.0 >>> libxml2.so.2 >>>=20 >>>=20 >>> Hopefully this cycle can be avoided for system >>> clang to eventually have progressed to clang 9. >>> (I do not know the details.) >>>=20 >>> For architectures still at gcc/g++ 4.2.1, some >>> alternate c++ tool chain needs to be used to >>> build libz3.so but the result needs to be >>> compatible with llvm90 later using the libz3.so's >>> content. (I do not know the details.) =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)