From nobody Mon Jul 27 05:30:28 2026 X-Original-To: ports@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4h7nHY0DPqz6mMcM for ; Mon, 27 Jul 2026 05:30:33 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic306-19.consmr.mail.gq1.yahoo.com (sonic306-19.consmr.mail.gq1.yahoo.com [98.137.68.82]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4h7nHX4NX0z3sQk for ; Mon, 27 Jul 2026 05:30:32 +0000 (UTC) (envelope-from marklmi@yahoo.com) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1785130229; bh=X3JhE98Pb8jclCwcnCj/zupuBfW2+6TVzKyE6Gr9sN8=; h=Date:Subject:To:References:From:In-Reply-To:From:Subject:Reply-To; b=G7rcGteQdTI8ER0EQByr6OIuNoBmcI9NfrnfjPBo5Iys78nBBNmuW4hvM0iCwTYHcpl4KhRzfMi+8KMcwFpTp5zXrXG8HIyg7qlq6wHrn6SiQVGekcTYS3oPbuIKk3DNVjIJfN+hWEFadFJhVmgYWq1PHjp2zz9Ekpk27EFjHzrHkUcXB3It1WHnCWsy9ccP2yilTL93VhGYuAyIPVWpoJ5urmVTkINLUsWhjpFOX5fPRL0UCUAQTInrUWcPF2CzR52FdXU2SyZ7KwHUNAgDnfMl1gvLtXOFpay+gMjJl/ymE7M9MOF6j64vbI49m0HN97aOhljTJjlCQ2mQUWWc4w== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1785130229; bh=VQNSXnVhfoKS4xRy9P6eKqNJXtjrJJpt2YjUax6UjfY=; h=X-Sonic-MF:Date:Subject:To:From:From:Subject; b=kTf0XxCgtFS01Q0Odpuq7h3+kqU+i856j3hfjrO3sV5OS58/PIY8aF3i/rGVtqVSm6v6SzyCToyVMu2RnyeYinAMeG41mUjtGYRmWLdlgewG/nyewCZ1NEZ1qoxIS7pZdY57SZ3XFkrZntVY6IY0cJXBLT71ZZtTiYBOPRp8349oxXLqXSA+Jgg1uk2kxMY278d2MJdPNLPCnfZS0OFPyNRtFRh4nv/q8eLICEnYYlfZ99C7F+xD2r7HNShKmOVY/3KoAVfLp36aW2aNv/ghcSIUei8EE9cbn2gxTx2DNWNUDFPOCsaNpH101LJrcf79qctPkuUe2dLbe9wdKHnSkQ== X-YMail-OSG: 6IdGlU4VM1kuhEYJbWu_4Zw23QKV9xREC_JNcP1YHsanKl9SIpVGbjzan6UPkkG JMALFktFmHkUkOQzCcZZ6_khPTvz0ysGIjRD27N1FHAEahN06X7kQJbnxti6ZIVP8ILdYjXNJU9Q mtztjfRTPF0aPrhLu0T.k7Fvub3JsegCKC.R2ezs_.beewFEC5j_.A3Ve5f39W9_OJinnmrHNkip VlYD9TCpmG6EGuyJ7NcwrfvZp8z_FabQ_gEesns7QAKZ3nONabf6zRIoikIduyD9Ek72qgxudg8J wKe9Djx1.bhbtQR4U5PbbeuzBm9f4u8fEXhoko50gMlnAqKWoy4b5B17TwfjCnnZOjNHWuUMnDox SSO.X6bqGWzLsNzqCgOTjfX_XNQfItiso4CwjmXlpatqUA9QxePBi.Rzw0sKR.YNqFCKD88da0I6 __PFtnpZeqzfYO3MZ0XJtM0DkuVYIHPJD9WwrnIY_5Ol7xBKgswPheDc5rA_x4UCrfKqXCNont1d KIv30Swuu7vookxRynvaTD0SDkYDfmoKUCENzh1pe5VItC1TqX07NFGS3lqhyN385tJXddrdBzVP yeqiV5xyqgdVJ3HJ3m6RbNsD_2y7l4BDX2oltolBTB.JwF2Z7QcLsLfMqh_U0_WzzMQ0d2umnnmf EsmoOeFW.0GyjQg1.lwhg0v.36AW9U0y.Uotgpk4RNTO2svcNm1S5UIi3floqNMulo8UOORTMPxq GEY7mJgiwmXNqoGOOZMpcJCbRhDWCxrNcjjbQBKxhieuP4yyfgLlYWMjLnV.t3D3PrEZMNhZgm9_ dDQwBrfNit.0xUocAi83SFUMhEWY4GVRxPX8r8O00bEqcg2MSNhplb8CXGYpTd3LP4H8f.vQU_S. Jww__RmNNDTsvSrHcjtAzLQBFGCXTZEA9.zOpBfpXCi.NJ5cqbSYO08U2ikT.RTZpd3fJ2OSZH1. ANnLFZKV7mOKxfZvFDvMOsbFru7NcYVYUeM5NDzwxmCvmIXXd6cBjS3FgrbkgiTWNtRzF7LcthEZ TqjOfYmd.d5umC6fcz4SQXbEJ1rpQzBXjZFcBLz0yrXO_A4RNMlk7PzNuwxDdmYgSaovV3O_EZHq H7JJHs6Ml4Z5J44O6vy8THKMNTsiyLj0gDfeuarrTvBq_4zrW_MY8UYwPaEJucE36ArnL_qFu9CZ 7FUoJIExnuLZLlZOCGx6jquKC36_BgKrzpHsWuLVSzIJXQEZIu5yDx6FerGb.Ak9A9PvrowiBbKd TYc1NIsI31.KIDllS7CJUBR8zfjWjQuzTzFVe87wNj2ojRTDxXHxm83Q3qdfOkNWKr_fPcz6ZsJa C.l.rReWMKyuKWmEUbUNvJbIH4VsRPiCcAZbfB90rgp.b0097BbLMnVmyj36rx0.bxgzjMwJBCkN CqjFKpenr2YrVVL_0UUzrZnA4aLohvFpbqE7KHcATEZZe_WV_hv7Ht6RJ4n_T1ZsGDJ2IG2gsjVI Wdi.H0cGFvFeQWf5TPiiTYU.Pmlt5ZVHmMzWkiyG2i.fYoUeKRX5VRnkje4AgKiduUWIGrAbDmYC DL_vkWqyXFQ4d2d7HEH5IfJjK1No2xUOMSK.5CrNP7heiygxLOa.wp8jV2B1U8fzj3LxsN6NOthU xQpJXkV61OZaQSupucoyv35qMJdX.d1DMjAQrLQ3m2dHJhXCXn59j9GNlbWf95HsXjazJE6VR_8T b5ZA_1kfFXrzNOlfZkKDvS13Jidzau9Dnr0KLhWJYVIhXgXmxYx.OPR6gE6FPwNVx4Rnz11yIHFo EW84vBcnrL.BVIiiK..MJWqXQIXtkPnp8VirQlkDbwO2WcIHos0_oRPEzR3gdSl6k_mY062y_SBe HT.Jd.YyfVThOie880hs520um9zQPc.34OfMv4W4IDM48IQRPtjfD6SZLkNueeHq7.ce8JXP8QyX ltTRNE9M8CsUc0r46rppmtp.T5axZ9w255mf8QRQzPXQVoqUCht07rm0PoCd0J.0VEAiCavbGA4L TqbaPY4oZRNIh5VNFx2Kc6U3isRnEehS9EuRnW3rZEyp_Kc2axTLqL7O36LnI_oW756UQMW_9wxm 4lfIMZLobig7TIS81rO56lNoiUAwGr4IZcGPxYEv1AzloNvNmNx5ktsdqsnzm_EjbJBENBqSxnZF BjP9knMy0eiNOHpBr3FaFbs6_s0fQ5C4NFTsMPiEGQFP67vQcIR4ZUqgPnqb6gowkfoLv.S6yFrI YS0QRizxMuoGcag3Xz9VygCHNpp6YFhkVx7NPuiU9JUCtCOkXHoo0BNDcUEmLsfsUhIsrucU- X-Sonic-MF: X-Sonic-ID: 1f7508e6-80de-4be1-8b1e-436be1a26509 Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.gq1.yahoo.com with HTTP; Mon, 27 Jul 2026 05:30:29 +0000 Received: by hermes--production-gq1-7749664df-n62d2 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 735fd71b7a1d61dcb9fd422908f5f4bc; Mon, 27 Jul 2026 05:30:28 +0000 (UTC) Message-ID: <3f997b54-c1d1-49a5-9205-6019ce828cf5@yahoo.com> Date: Sun, 26 Jul 2026 22:30:28 -0700 List-Id: Porting software to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-ports List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-ports@freebsd.org Sender: owner-freebsd-ports@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: What is a FLAVOR and how to unbreak ports? To: Steve Kargl , ports@freebsd.org References: <6ce75735-75f7-4852-814c-91b8105692e6@comcast.net> Content-Language: en-US From: Mark Millard In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Mailer: WebService/1.1.26215 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo X-Rspamd-Queue-Id: 4h7nHX4NX0z3sQk X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US] X-Spamd-Bar: ---- On 7/26/26 19:43, Steve Kargl wrote: > On 7/26/26 18:41, Edward Sanford Sutton, III wrote: >>    Flavors are a way to have separate packages created for different >> configurations of a port. That way users of pkg do not need to go >> manually build software for relatively common software variation >> possibilities that they may want or need in place of a single default >> set of options. > > Yeah, I read the porter's documentation.  I could not find where > it mentions a comprehensive list of the FLAVORs.  There is no > discussion of how one can query for the list of FLAVORs. > >> On 7/26/26 13:18, Steve Kargl wrote: >>> On 7/26/26 12:51, Gleb Popov wrote: >>>> On Sun, Jul 26, 2026 at 10:43 PM Steve Kargl >>>> wrote: >>>>> >>>>> Hi, >>>>> >>>>> Updating a laptop that had a year old FreeBSD on it >>>>> to top-of-tree. >>>>> >>>>> % portmaster -Byd --force-config sqlite3 |& tee sgk.log >>>> >>>> Try updating libclc first using portmaster or plain make. >>> >>> I did try plain make in libclc.  See the end of original email. >>> make dies with an error about llvm15 no longer being supported. >>> If llvm15 is no longer supported on fbsd 16, then the libclc >>> Makefile should simply skip trying to build for llvm15. >>> >>>> Figure out what flavor you need by looking at the installed >>>> package's name >>> >>> That's the question.  What is a FLAVOR and how do I determine what >>> FLAVOR is the right flavor? >>> >>>> pkg info -x libclc >>>> >>>> If going the plain make route, append FLAVOR=llvmXY to make invocation. >>> >>> Is there a comprehensive list of FLAVORs?  'man make.conf' does not >>> mention FLAVOR.  Is it possible to set FLAVORS there? >> >>    Flavors are a property of each port individually and not an >> externally defined property; some different ports use common flavors >> like 'nox11' but there is no hard rule to it. In the ports tree you >> can list flavors with `make -C /usr/ports/devel/libclc -VFLAVORS` and >> drop - C if you run it in the port's folder. > > Well, that's inconvenient, If one reads enough Makefile notation: # grep FLAVORS= /usr/ports/devel/libclc/Makefile FLAVORS= ${15 16 17 18 19 20 21 22:L:S/^/llvm/} So: llvm15 llvm16 . . . llvm22 llvm15 is being reported because it is listed first and that is the default default-value for a FLAVOR. (There is notation that could be in the Makefile to have a different default without adjusting there order. There is even notation for finding out what llvm vintage is the port-infrastructure's default --but it does not seem to be in use in the Makefile. I've not kept track of portmaster's notation handling but a common notation could be: devel/libclc@llvm21 (as an example). I've not recently checked which value LLVM_DEFAULT has as the upstream default ( 19 ?). (I force my own preferences locally.) MAINTAINER= x11@FreeBSD.org So: likely no one is keeping the FLAVORS list up to date at the low end of the range where folks tend to just stop trying to use the old versions. At the upper end it is more obvious when an addition is needed and someone takes care of doing so. (Thus, 22 is present.) > but that make command should be provided > in the porter's documentation.  At the moment, portmaster dies > with some mystery error.  Going to /usr/ports/devel/libclc and type > 'make' leads to all sorts of fun.  libclc dies because llvm15 > is no longer supported; so, well, the port shouldn't even try > to build that flavor. > >>    For manually running make, `make -C /usr/ports/devel/libclc >> FLAVOR=llvm17` would be an example of overriding it. Not sure if there >> are other ways to express it. > > That's the problem.  There are apparently 8 flavors.  How do I determine > I need llvm17 instead of llvm20? > >>    Some changes I assume should happen: >>    1. The default of libclc should be reconsidered if it is broken on >> a platform unless it is being actively worked on. Why are we >> defaulting to the oldest compiler, a compiler not included as a base >> compiler on any supported FreeBSD version, and not even having a >> comment as to why? > > Good question. > > >>> In the old days, one could cd into any directory under /usr/port >>> and simply type 'make'. >> >>    Unless things are broken. Having been building things since 2004, >> you can usually find broken things when you look. > > I've been building ports since its inception.  In fact, I was the > maintainer for lang/f2c and few others prior to the creation of > portmgr.  portmgr broke lang/f2c, I received daily complaints it > was broken, and it only wasted a few weeks of my time trying to > figure out what portmgr did.  I dropped maintainership decades > ago due to that experience. > >  at over 30,000 port >> folders, its hard to have the tree in a state where 'nothing' fails. > > Sure, I find a number of issues every time I need to rebuild > ports.  I fix/workaround the issue and move on with life.  The > math/arpack-ng port now has a mpich and openmpi flavor, because > I got tired of editing out the hardcoded use of mpich and asked > for either 'none' or 'openmpi' build option.  Unfortunately, > math/octave has a hardcoded dependency on arpack-ng@mpich.  Fun > times. > >>> My actual problem is building devel/node24, which dies with an >>> error: >>> ld.lld: error: undefined symbol: sqlite3session_patchset. >> >>    I'd have to see a more complete error log to guess properly. > > I've found a fix.  It seems that node24 requires sqlite3 built > with the sessions compile option set.  For some reason, it was > unset when I last built it on my system.  I suppose default > options change over time. > -- === Mark Millard marklmi at yahoo.com