From nobody Thu Jun 20 01:01:28 2024 X-Original-To: freebsd-arch@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 4W4MdK5g6Vz5Ng7D for ; Thu, 20 Jun 2024 01:01:41 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pg1-x530.google.com (mail-pg1-x530.google.com [IPv6:2607:f8b0:4864:20::530]) (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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4MdK1Wwyz4DHp for ; Thu, 20 Jun 2024 01:01:41 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=bsdimp-com.20230601.gappssmtp.com header.s=20230601 header.b="d7R/HPqN"; dmarc=none; spf=none (mx1.freebsd.org: domain of wlosh@bsdimp.com has no SPF policy when checking 2607:f8b0:4864:20::530) smtp.mailfrom=wlosh@bsdimp.com Received: by mail-pg1-x530.google.com with SMTP id 41be03b00d2f7-60585faa69fso298825a12.1 for ; Wed, 19 Jun 2024 18:01:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1718845299; x=1719450099; darn=freebsd.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=7YVqffI2TdRzj+DY8irf8uy0hTbL8gvJ8zY6+cIjOKE=; b=d7R/HPqNuKUNgCazvvwn5TZM2VgKZfFIMQoUFtGGmfROSP7bTH8OoyR5ktZp2Zq0ip M2Sd/CvajR3ivSPD6V7DKKTl0D5xXmcfbsHTvllZ4HDh3jBM3Gs74OEuAfothyd9Kvze NcojseIwX3H5AXAR357ChcnlASoIoNy5H6evXByHq72/AGw3ev6aJKFO5moMHcAU183f ziEr0ITa9B0JHIISwXWb3Xu/Ue8ZrX2S6zpWQOq5jPg+yWBe4DcbuuvzKXHihXIrh8cx fjH5n5d9KjwlCPamiW3Tf8HhXWWHFIpxp0t1lfJJid+A8RSRxQgfG2j5R66nZ7Q+kRfF +CPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718845299; x=1719450099; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=7YVqffI2TdRzj+DY8irf8uy0hTbL8gvJ8zY6+cIjOKE=; b=g1yugx8xv6aqF54z5PieZfJQwvN0HP7RB6TZRcu2qrUoWyxw00/0pHl0IsgNodJFDi BIAwezCYG0c/Lyqoe/NCcnin9H6x1mGpiKMA3kv8YhCfC85wKvKKpDX1Rm2Y2R8pYUs5 VqZ3G42ADknpGIedY/cu57F82pgV5z6anhCNpTxLPpz7EekbR5Bf7jlzh/0XSUDUhqbs 9Uth93GbX0/orzDIRMQan03jIzcuCWUxPo+27wSQ0jCWeAMmH0NKyjzWB8xPyFmzVOD2 Y1FlUtArHSe+6ZWjMJLLPX026elhDLgYDeHnaeh8VGicvpsHOEMxEyzxW0/ecPYuOJhY uyyg== X-Gm-Message-State: AOJu0YygeUwoHx4HDHtE6wXhaQBFkgZrQ+xjt/gcsZwA4LJtX+9t+dlk 5+kMYPiprhNWNekS8OwMc9AGm+p+cEqpvIFZCqkbxk5WPtv4og5/6IAP8nRHs+LrZQzXtTAta/J BgiptNTwmhPtFzpNrSFi6c7yRDl9W5JUgffs7pFKRHdTh2YM5ZL8= X-Google-Smtp-Source: AGHT+IF+abnNr6loScD8mrrbMnlq4NO26oiJFygVNS+jb0RGZukjnhnVo/pCjpHuN+EwhDC/EZizkVPvxZoIoEUHPkg= X-Received: by 2002:a17:90a:c7cb:b0:2c7:ad72:f3ea with SMTP id 98e67ed59e1d1-2c7b3b08bf5mr5922105a91.11.1718845299024; Wed, 19 Jun 2024 18:01:39 -0700 (PDT) List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 From: Warner Losh Date: Wed, 19 Jun 2024 19:01:28 -0600 Message-ID: Subject: Minimum gcc and clang supported to generate FreeBSD binaries To: "freebsd-arch@freebsd.org" Content-Type: multipart/alternative; boundary="000000000000790ce2061b47dba4" X-Spamd-Bar: -- X-Spamd-Result: default: False [-3.00 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20230601.gappssmtp.com:s=20230601]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; R_SPF_NA(0.00)[no SPF record]; RCPT_COUNT_ONE(0.00)[1]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MISSING_XM_UA(0.00)[]; DMARC_NA(0.00)[bsdimp.com]; MLMMJ_DEST(0.00)[freebsd-arch@freebsd.org]; RCVD_TLS_LAST(0.00)[]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; FROM_HAS_DN(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::530:from]; TO_DN_EQ_ADDR_ALL(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; ARC_NA(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-arch@freebsd.org]; DKIM_TRACE(0.00)[bsdimp-com.20230601.gappssmtp.com:+] X-Rspamd-Queue-Id: 4W4MdK1Wwyz4DHp --000000000000790ce2061b47dba4 Content-Type: text/plain; charset="UTF-8" Greetings, I've been having a go at cleaning up sys/cdefs.h for going on 5 years now. One big problem is that it's chock-o-block of special cases and hacks going back to the early 1990s (before some people on this list were even born). I'd like to remove a lot of that, while still retaining useful versions of gcc and clang to work (plus preserving what support that we have for pcc and tcc (including fixing the latter). Note: this is "building binaries on FreeBSD" not "building FreeBSD" which has much much tighter requirements for compilers. This won't affect that at all. To that end, I'd like to draw a line in the sand. If you are building FreeBSD binaries for FreeBSD 15 and newer, you need to use gcc9 (or newer) or llvm/clang 11 (or newer). Stable/12 has clang 13 at its tip. These compilers are 5 years old or so. And are the oldest compilers in the ports tree that we use to generate FreeBSD binaries (there's three older ones: gcc 6 for ada, gcc 4.2 for TI calculators (but it doesn't use system headers) and gcc 2.7.2 for hp48 calculators (same). So from a ports perspective, >From a looking at changes perspective, there's about 30 instances of GNU_PREREQU in the tree. The newest one is for gcc 5.1. So nominally supporting just gcc9 and newer means assuming that these are all true (which is true for gcc and clang) and removing specific support for them. clang and gcc easily clears these bars. Ah, but what do you say about tcc and pcc which are't gcc? Well, tcc lies, and says it supports gcc (version 9 I think, but it's been a while since I checked). tcc can't work today because we have qsort.h using versioned symbols unconditionally, and it doesn't support versioned symbols.... And patches to do that have been stalled for reasons unrelated to this desire. pcc doesn't support gnuc symbols at all last I checked. But it has real issues building some things in the tree, so I'll not gate things by it unless somebody steps up to actually do the work to make it work. The pcc upstream has been weird lately too. ICC used to be supported, but unless someone turns up with patches for the latest icc, it will remain supported only to the extent it pretends to be gcc. I've had reports that it works, to this extent and nothing special is needed to build FreeBSD binaries. There are a couple of touch ups required to build FreeBSD itself with icc I'm told, but I've not seen patches and have little desire to chase this windmill. In practical sense, this will just be writing down what's the reality on the ground today: old compiler versions haven't been tested and there's a lot of known issues we've introduced since moving to clang that will preclude even our old gcc 4.2 from working with system headers. Of course, I'll do an exp run with all these changes. But I wanted to give people a heads up that I'll be doing this before 15.0 is branched. For the vast majority (all?) users, I expect you'll not notice. Warner --000000000000790ce2061b47dba4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Greetings,

I've been hav= ing a go at cleaning up sys/cdefs.h for going on 5 years now. One big probl= em is that it's chock-o-block of special cases and hacks going back to = the early 1990s (before some people on this list were even born).

I'd like to remove a lot of that, while still retaining= useful versions of gcc and clang to work (plus preserving what support tha= t we have for pcc and tcc (including fixing the latter). Note: this = is "building binaries on FreeBSD" not "building FreeBSD"= ; which has much much tighter requirements for compilers. This won't af= fect that at all.

To that end, I'd like to= draw a line in the sand. If you are building FreeBSD binaries for FreeBSD = 15 and newer, you need to use gcc9 (or newer) or llvm/clang 11 (or newer). = Stable/12 has clang 13 at its tip. These compilers are 5 years old or so. A= nd are the oldest compilers in the ports tree that we use to generate FreeB= SD binaries (there's three older ones: gcc 6 for ada, gcc 4.2 for TI ca= lculators (but it doesn't use system headers) and gcc 2.7.2 for hp48 ca= lculators (same). So from a ports perspective,

From a looking at changes perspective, there's about 30 instances of = GNU_PREREQU in the tree. The newest one is for gcc 5.1. So nominally suppor= ting just gcc9 and newer means assuming that these are all true (which is t= rue for gcc and clang) and removing specific support for them. clang and gc= c easily clears these bars.

Ah, but what do yo= u say about tcc and pcc which are't gcc? Well, tcc lies, and says it su= pports gcc (version 9 I think, but it's been a while since I checked). = tcc can't work today because we have qsort.h using versioned symbols un= conditionally, and it doesn't support versioned symbols.... And patches= to do that have been stalled for reasons unrelated to this desire. pcc doe= sn't support gnuc symbols at all last I checked. But it has real issues= building some things in the tree, so I'll not gate things by it unless= somebody steps up to actually do the work to make it work. The pcc upstrea= m has been weird lately too.

ICC used to be suppor= ted, but unless someone turns up with patches for the latest icc, it will r= emain supported only to the extent it pretends to be gcc. I've had repo= rts that it works, to this extent and nothing special is needed to build Fr= eeBSD binaries. There are a couple of touch ups required to build FreeBSD i= tself with icc I'm told, but I've not seen patches and have little = desire to chase this windmill.

In practical se= nse, this will just be writing down what's the reality on the ground to= day: old compiler versions haven't been tested and there's a lot of= known issues we've introduced since moving to clang that will preclude= even our old gcc 4.2 from working with system headers.

Of course, I'll do an exp run with all these changes. But I wante= d to give people a heads up that I'll be doing this before 15.0 is bran= ched.

For the vast majority (all?) users, I expect= you'll not notice.

Warner
--000000000000790ce2061b47dba4-- From nobody Thu Jun 20 01:26:12 2024 X-Original-To: freebsd-arch@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 4W4N9t6tY8z5Njfx for ; Thu, 20 Jun 2024 01:26:26 +0000 (UTC) (envelope-from bakul@iitbombay.org) Received: from mail-pj1-x102c.google.com (mail-pj1-x102c.google.com [IPv6:2607:f8b0:4864:20::102c]) (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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4N9t4s05z4GSh for ; Thu, 20 Jun 2024 01:26:26 +0000 (UTC) (envelope-from bakul@iitbombay.org) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x102c.google.com with SMTP id 98e67ed59e1d1-2c7dd4586afso353656a91.2 for ; Wed, 19 Jun 2024 18:26:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iitbombay-org.20230601.gappssmtp.com; s=20230601; t=1718846785; x=1719451585; darn=freebsd.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=m/ATuzezsNl98HjX+91gXRtiRw33RD2DSngNI1PZRtw=; b=zCxsvQkNv84eY2fU0eUezl9JqYYNETZDfTff+5ZRQOu7rPYcuGR8JwL+BNhh9K75tt 1ME6uaSMugagq7h1iocrOFGN+NR6cMDSiyExpHdkqkhcmCKvkXM3zcGTahDUANSkKXo3 uTvj/3fwDuf9ks2yByQIt5kkp4QPg/yii+0B0ELJo7fSfTq7zODejtzJZyFViEjSll4U WX716ZjzzgwUWsgdsDp0V57FPuItxBCdZfeKJoBwpqU324e0VeDG83kegqXYyPIKlFfq tKY0l+j5P/ahBAUFQzn8ZpBoUgPH8HwXI6mXZez37Jd3RA6IEVydGrhCPP/bJXEArgQU iYgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718846785; x=1719451585; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=m/ATuzezsNl98HjX+91gXRtiRw33RD2DSngNI1PZRtw=; b=F6m1qTebOPDWi+o7ubI3x+/oicEzYtmIn0uOeSH0oQJFwHpb7qoMqzgw4NV9XWUODF h7qGX2IbUWJc9IWjhig4CTU53EjgzSJvU9E95cOVJbLJah1ncfn+gQul3UMqqmzTAm7v za/c2iHgXP68aFTnxIHlKC2zVFb0ZZyuxS24NZ89ZSZJXg6dOfFNpRmjCczitmHRVtby 52wNGUDmX0OuGDm09juaWXMO8IFUpbK6+ayfkcHaE4cUC8QMThgAXlVYgIHQZGZOTVXz urLEJRUFadcngNCROXBL7gr9/aKDbl6FRo2fu/+SyLHNBiKOcO9a2zYWLnXS0DjB7gm7 2TYA== X-Gm-Message-State: AOJu0Yz8cbwOYsDgJy1rEyFpUbD5JuEK1fxk9mfbF6axhM9Kg2NNlX6K ZM5XHYJmsYeeXi8g9exc6+L/0pXn6IXhzKvAKr8xejnD+09+zHVhlwZmH+QqWJl6UdxxQynynoY = X-Google-Smtp-Source: AGHT+IFSvUGzwfF9Q1gUaynScOJNarq3FZ1376FwAaZ/gcmFZtjwlHUeE3h+FKaGVl7kRSluKTQBmA== X-Received: by 2002:a17:90a:d48d:b0:2c4:ab0b:9d9e with SMTP id 98e67ed59e1d1-2c7b5c82767mr3930803a91.15.1718846784813; Wed, 19 Jun 2024 18:26:24 -0700 (PDT) Received: from smtpclient.apple (107-215-223-229.lightspeed.sntcca.sbcglobal.net. [107.215.223.229]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2c7e4ff980dsm356706a91.4.2024.06.19.18.26.23 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 19 Jun 2024 18:26:24 -0700 (PDT) Content-Type: text/plain; charset=utf-8 List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries From: Bakul Shah In-Reply-To: Date: Wed, 19 Jun 2024 18:26:12 -0700 Cc: "freebsd-arch@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <197A5386-1096-4754-BA82-996140B56EAF@iitbombay.org> References: To: Warner Losh X-Mailer: Apple Mail (2.3774.600.62) X-Spamd-Bar: ---- 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:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4W4N9t4s05z4GSh On Jun 19, 2024, at 6:01=E2=80=AFPM, Warner Losh wrote: >=20 > Ah, but what do you say about tcc and pcc which are't gcc? Well, tcc = lies, and says it supports gcc (version 9 I think, but it's been a while = since I checked). tcc can't work today because we have qsort.h using = versioned symbols unconditionally, and it doesn't support versioned = symbols.... And patches to do that have been stalled for reasons = unrelated to this desire. pcc doesn't support gnuc symbols at all last I = checked. But it has real issues building some things in the tree, so = I'll not gate things by it unless somebody steps up to actually do the = work to make it work. The pcc upstream has been weird lately too. Why are versioned symbols required for qsort.h? Can we maintain freebsd specific hack in tcc port? Compiling with tcc is sooo much faster. That is more important to me = than the speed of the running code - at least during development. tcc = does require more work than just support for versioned symbols.... Just as the build is ideally portable to more platforms (linux, macos) = it should be portable to more compilers & to resist temptation to rely = on compiler specific features.=20 Personally I'd prefer if clang+llvm was picked up from a port and not = part of the freebsd sources -- to keep them somewhat more portable and = to cut down on buildworld time. Ok by me if only specific version(s) are = supported for a given compiler. Thanks for all the cleanup in any case. From nobody Thu Jun 20 02:26:10 2024 X-Original-To: freebsd-arch@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 4W4PVz3Cg7z5NqyD for ; Thu, 20 Jun 2024 02:26:19 +0000 (UTC) (envelope-from minsoochoo0122@proton.me) Received: from mail-40137.protonmail.ch (mail-40137.protonmail.ch [185.70.40.137]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "protonmail.com", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4PVy5k20z4Lyp for ; Thu, 20 Jun 2024 02:26:18 +0000 (UTC) (envelope-from minsoochoo0122@proton.me) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proton.me; s=protonmail; t=1718850374; x=1719109574; bh=HxCPqRoIPqKa/syeVVxRfJpDj/AUa2Klba6y1y9XUBI=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=eUVv8OXJ3FFp8ihEEims9iX1g2YEee5SdcWhKa66yl0QTxhsmnuv1FqhHDxrKi4ZF jsQSIlieyS79Q8zPcYIYTB29kT92EfzI0obHsyCRl4wYZ6G70mRmT4Sz1y6QpHGYMl H08O9DUfs4XB7D8/whyve+mcH0F10eY/jUxL7bjTgwqG372tvZfuiuMAvTz8K6kYSX LpuXtoJrrfrfVEJ8xX/zCIpn9L8sTmK/8eM4S0Kth1HeSU79k1yquyyWp5GtjfK5TZ +Ty7tEZjbsCSXOgQzSulnBPuFRpPOxxWDmyj9AJRekEjOIhN3mFHTWA9Cvm2wD4SVk +mfp4N2fZLuXg== Date: Thu, 20 Jun 2024 02:26:10 +0000 To: Warner Losh From: Minsoo Choo Cc: "freebsd-arch@freebsd.org" Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries Message-ID: <8kCLO-zgfcTHi04hPyNkywfhk22Kav80DMTwDpLqLmOO0yj95gKO5MP-5pLF3WwlgG9ELgNCJywzhpQLIn4BIl_FiLULl6KUuCbCOdolZfM=@proton.me> In-Reply-To: References: Feedback-ID: 45891198:user:proton X-Pm-Message-ID: f57cab56d88fe254ba54bb6256b72480ca80276f List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="b1_CTm21Pvyoeyq6EBAZWXGHX2qmYeLxMhm6RsYVGZsI" X-Spamd-Bar: ---- 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:62371, ipnet:185.70.40.0/24, country:CH] X-Rspamd-Queue-Id: 4W4PVy5k20z4Lyp This is a multi-part message in MIME format. --b1_CTm21Pvyoeyq6EBAZWXGHX2qmYeLxMhm6RsYVGZsI Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SSdtIGZpbmUgd2l0aCB0aGVzZSBjaGFuZ2VzLiBHQ0MgNSB3YXMgcmVsZWFzZWQgOSB5ZWFycyBh Z28gYW5kIEkgdGhpbmsgbW9zdCBwZW9wbGUgaGF2ZSBtaWdyYXRlZCB0byBuZXdlciB2ZXJzaW9u cy4KCkFzIGxvbmcgYXMgPHN5cy9jZGVmcy5oPiBpcyBjb21wYXRpYmxlIHdpdGggUE9TSVggc3Rh bmRhcmQsIGNvZGUgd3JpdHRlbiBvbiBGcmVlQlNEIHdpbGwgYmUgcG9ydGFibGUgb24gTGludXgg YW5kIG1hYywgYW5kIHZpY2UgdmVyc2EuIFRoZXJlIG1pZ2h0IGJlIHByb2JsZW1zIHdpdGggdGNj IGFuZCBwY2MsIGJ1dCBpdCBpcyBjb21waWxlciBkZXYncyByZXNwb25zaWJpbGl0eSB0byBmb2xs b3cgcG9zaXgsIG5vdCBvdXIncyB0byBtb2RpZnkgdGhlIGJhc2Ugc3lzdGVtIGZvciBlYWNoIGNv bXBpbGVyLiBJIHRoaW5rICJfX0NDX1NVUFBPUlRTX19fSU5MSU5FIiBjYW4gYmUgcmVwbGFjZWQg d2l0aCAiX19TVERDX1ZFUlNJT05fXyA+PSAxOTk5MDFMIiBhbmQgdGhuaWdzIHVuZGVyICJOT19B TlNJX0tFWVdPUkRTIiBjYW4gYmUgcmVtb3ZlZC4KCkkgd291bGQgbGlrZSB0byByZXZpZXcgdGhl IGNoYW5nZXMgb25jZSB0aGV5IGFyZSBwb3N0ZWQgb24gcGhhYnJpY2F0b3IuIFRvIG1lLCBpdCBo YXMgYmVlbiBhIGh1Z2UgZGlmZmljdWx0eSB0byByZWFkIHRoZSBjZGVmcy5oIGhlYWRlciBiZWNh dXNlIGl0IGhhcyB0byBtYW55IGNvbXBhdGliaWxpdHkgbWFjcm9zIGZvciBvbGQgdmVyc2lvbnMg b2YgR0NDLiBUaGFuayB5b3UgZm9yIHlvdXIgd29yay4KT24gV2VkbmVzZGF5LCBKdW5lIDE5dGgs IDIwMjQgYXQgOTowMSBQTSwgV2FybmVyIExvc2ggPGltcEBic2RpbXAuY29tPiB3cm90ZToKCj4g R3JlZXRpbmdzLAo+Cj4gSSd2ZSBiZWVuIGhhdmluZyBhIGdvIGF0IGNsZWFuaW5nIHVwIHN5cy9j ZGVmcy5oIGZvciBnb2luZyBvbiA1IHllYXJzIG5vdy4gT25lIGJpZyBwcm9ibGVtIGlzIHRoYXQg aXQncyBjaG9jay1vLWJsb2NrIG9mIHNwZWNpYWwgY2FzZXMgYW5kIGhhY2tzIGdvaW5nIGJhY2sg dG8gdGhlIGVhcmx5IDE5OTBzIChiZWZvcmUgc29tZSBwZW9wbGUgb24gdGhpcyBsaXN0IHdlcmUg ZXZlbiBib3JuKS4KPgo+IEknZCBsaWtlIHRvIHJlbW92ZSBhIGxvdCBvZiB0aGF0LCB3aGlsZSBz dGlsbCByZXRhaW5pbmcgdXNlZnVsIHZlcnNpb25zIG9mIGdjYyBhbmQgY2xhbmcgdG8gd29yayAo cGx1cyBwcmVzZXJ2aW5nIHdoYXQgc3VwcG9ydCB0aGF0IHdlIGhhdmUgZm9yIHBjYyBhbmQgdGNj KGluY2x1ZGluZyBmaXhpbmcgdGhlIGxhdHRlcikuIE5vdGU6IHRoaXMgaXMgImJ1aWxkaW5nIGJp bmFyaWVzIG9uIEZyZWVCU0QiIG5vdCAiYnVpbGRpbmcgRnJlZUJTRCIgd2hpY2ggaGFzIG11Y2gg bXVjaCB0aWdodGVyIHJlcXVpcmVtZW50cyBmb3IgY29tcGlsZXJzLiBUaGlzIHdvbid0IGFmZmVj dCB0aGF0IGF0IGFsbC4KPgo+IFRvIHRoYXQgZW5kLCBJJ2QgbGlrZSB0byBkcmF3IGEgbGluZSBp biB0aGUgc2FuZC4gSWYgeW91IGFyZSBidWlsZGluZyBGcmVlQlNEIGJpbmFyaWVzIGZvciBGcmVl QlNEIDE1IGFuZCBuZXdlciwgeW91IG5lZWQgdG8gdXNlIGdjYzkgKG9yIG5ld2VyKSBvciBsbHZt L2NsYW5nIDExIChvciBuZXdlcikuIFN0YWJsZS8xMiBoYXMgY2xhbmcgMTMgYXQgaXRzIHRpcC4g VGhlc2UgY29tcGlsZXJzIGFyZSA1IHllYXJzIG9sZCBvciBzby4gQW5kIGFyZSB0aGUgb2xkZXN0 IGNvbXBpbGVycyBpbiB0aGUgcG9ydHMgdHJlZSB0aGF0IHdlIHVzZSB0byBnZW5lcmF0ZSBGcmVl QlNEIGJpbmFyaWVzICh0aGVyZSdzIHRocmVlIG9sZGVyIG9uZXM6IGdjYyA2IGZvciBhZGEsIGdj YyA0LjIgZm9yIFRJIGNhbGN1bGF0b3JzIChidXQgaXQgZG9lc24ndCB1c2Ugc3lzdGVtIGhlYWRl cnMpIGFuZCBnY2MgMi43LjIgZm9yIGhwNDggY2FsY3VsYXRvcnMgKHNhbWUpLiBTbyBmcm9tIGEg cG9ydHMgcGVyc3BlY3RpdmUsCj4KPiBGcm9tIGEgbG9va2luZyBhdCBjaGFuZ2VzIHBlcnNwZWN0 aXZlLCB0aGVyZSdzIGFib3V0IDMwIGluc3RhbmNlcyBvZiBHTlVfUFJFUkVRVSBpbiB0aGUgdHJl ZS4gVGhlIG5ld2VzdCBvbmUgaXMgZm9yIGdjYyA1LjEuIFNvIG5vbWluYWxseSBzdXBwb3J0aW5n IGp1c3QgZ2NjOSBhbmQgbmV3ZXIgbWVhbnMgYXNzdW1pbmcgdGhhdCB0aGVzZSBhcmUgYWxsIHRy dWUgKHdoaWNoIGlzIHRydWUgZm9yIGdjYyBhbmQgY2xhbmcpIGFuZCByZW1vdmluZyBzcGVjaWZp YyBzdXBwb3J0IGZvciB0aGVtLiBjbGFuZyBhbmQgZ2NjIGVhc2lseSBjbGVhcnMgdGhlc2UgYmFy cy4KPgo+IEFoLCBidXQgd2hhdCBkbyB5b3Ugc2F5IGFib3V0IHRjYyBhbmQgcGNjIHdoaWNoIGFy ZSd0IGdjYz8gV2VsbCwgdGNjIGxpZXMsIGFuZCBzYXlzIGl0IHN1cHBvcnRzIGdjYyAodmVyc2lv biA5IEkgdGhpbmssIGJ1dCBpdCdzIGJlZW4gYSB3aGlsZSBzaW5jZSBJIGNoZWNrZWQpLiB0Y2Mg Y2FuJ3Qgd29yayB0b2RheSBiZWNhdXNlIHdlIGhhdmUgcXNvcnQuaCB1c2luZyB2ZXJzaW9uZWQg c3ltYm9scyB1bmNvbmRpdGlvbmFsbHksIGFuZCBpdCBkb2Vzbid0IHN1cHBvcnQgdmVyc2lvbmVk IHN5bWJvbHMuLi4uIEFuZCBwYXRjaGVzIHRvIGRvIHRoYXQgaGF2ZSBiZWVuIHN0YWxsZWQgZm9y IHJlYXNvbnMgdW5yZWxhdGVkIHRvIHRoaXMgZGVzaXJlLiBwY2MgZG9lc24ndCBzdXBwb3J0IGdu dWMgc3ltYm9scyBhdCBhbGwgbGFzdCBJIGNoZWNrZWQuIEJ1dCBpdCBoYXMgcmVhbCBpc3N1ZXMg YnVpbGRpbmcgc29tZSB0aGluZ3MgaW4gdGhlIHRyZWUsIHNvIEknbGwgbm90IGdhdGUgdGhpbmdz IGJ5IGl0IHVubGVzcyBzb21lYm9keSBzdGVwcyB1cCB0byBhY3R1YWxseSBkbyB0aGUgd29yayB0 byBtYWtlIGl0IHdvcmsuIFRoZSBwY2MgdXBzdHJlYW0gaGFzIGJlZW4gd2VpcmQgbGF0ZWx5IHRv by4KPgo+IElDQyB1c2VkIHRvIGJlIHN1cHBvcnRlZCwgYnV0IHVubGVzcyBzb21lb25lIHR1cm5z IHVwIHdpdGggcGF0Y2hlcyBmb3IgdGhlIGxhdGVzdCBpY2MsIGl0IHdpbGwgcmVtYWluIHN1cHBv cnRlZCBvbmx5IHRvIHRoZSBleHRlbnQgaXQgcHJldGVuZHMgdG8gYmUgZ2NjLiBJJ3ZlIGhhZCBy ZXBvcnRzIHRoYXQgaXQgd29ya3MsIHRvIHRoaXMgZXh0ZW50IGFuZCBub3RoaW5nIHNwZWNpYWwg aXMgbmVlZGVkIHRvIGJ1aWxkIEZyZWVCU0QgYmluYXJpZXMuIFRoZXJlIGFyZSBhIGNvdXBsZSBv ZiB0b3VjaCB1cHMgcmVxdWlyZWQgdG8gYnVpbGQgRnJlZUJTRCBpdHNlbGYgd2l0aCBpY2MgSSdt IHRvbGQsIGJ1dCBJJ3ZlIG5vdCBzZWVuIHBhdGNoZXMgYW5kIGhhdmUgbGl0dGxlIGRlc2lyZSB0 byBjaGFzZSB0aGlzIHdpbmRtaWxsLgo+Cj4gSW4gcHJhY3RpY2FsIHNlbnNlLCB0aGlzIHdpbGwg anVzdCBiZSB3cml0aW5nIGRvd24gd2hhdCdzIHRoZSByZWFsaXR5IG9uIHRoZSBncm91bmQgdG9k YXk6IG9sZCBjb21waWxlciB2ZXJzaW9ucyBoYXZlbid0IGJlZW4gdGVzdGVkIGFuZCB0aGVyZSdz IGEgbG90IG9mIGtub3duIGlzc3VlcyB3ZSd2ZSBpbnRyb2R1Y2VkIHNpbmNlIG1vdmluZyB0byBj bGFuZyB0aGF0IHdpbGwgcHJlY2x1ZGUgZXZlbiBvdXIgb2xkIGdjYyA0LjIgZnJvbSB3b3JraW5n IHdpdGggc3lzdGVtIGhlYWRlcnMuCj4KPiBPZiBjb3Vyc2UsIEknbGwgZG8gYW4gZXhwIHJ1biB3 aXRoIGFsbCB0aGVzZSBjaGFuZ2VzLiBCdXQgSSB3YW50ZWQgdG8gZ2l2ZSBwZW9wbGUgYSBoZWFk cyB1cCB0aGF0IEknbGwgYmUgZG9pbmcgdGhpcyBiZWZvcmUgMTUuMCBpcyBicmFuY2hlZC4KPgo+ IEZvciB0aGUgdmFzdCBtYWpvcml0eSAoYWxsPykgdXNlcnMsIEkgZXhwZWN0IHlvdSdsbCBub3Qg bm90aWNlLgo+Cj4gV2FybmVy --b1_CTm21Pvyoeyq6EBAZWXGHX2qmYeLxMhm6RsYVGZsI Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PGRpdj5JJ20gZmluZSB3aXRoIHRoZXNlIGNoYW5nZXMuIEdDQyA1IHdhcyByZWxlYXNlZCA5IHll YXJzIGFnbyBhbmQgSSB0aGluayBtb3N0IHBlb3BsZSBoYXZlIG1pZ3JhdGVkIHRvIG5ld2VyIHZl cnNpb25zLjxicj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2Vy aWY7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6IHJnYigwLCAwLCAwKTsgYmFja2dyb3VuZC1jb2xv cjogcmdiKDI1NSwgMjU1LCAyNTUpOyI+PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5 OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogcmdiKDAsIDAsIDAp OyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij5BcyBsb25nIGFzICZsdDtz eXMvY2RlZnMuaCZndDsgaXMgY29tcGF0aWJsZSB3aXRoIFBPU0lYIHN0YW5kYXJkLCBjb2RlIHdy aXR0ZW4gb24gRnJlZUJTRCB3aWxsIGJlIHBvcnRhYmxlIG9uIExpbnV4IGFuZCBtYWMsIGFuZCB2 aWNlIHZlcnNhLiBUaGVyZSBtaWdodCBiZSBwcm9ibGVtcyB3aXRoIHRjYyBhbmQgcGNjLCBidXQg aXQgaXMgY29tcGlsZXIgZGV2J3MgcmVzcG9uc2liaWxpdHkgdG8gZm9sbG93IHBvc2l4LCBub3Qg b3VyJ3MgdG8gbW9kaWZ5IHRoZSBiYXNlIHN5c3RlbSBmb3IgZWFjaCBjb21waWxlci4gSSB0aGlu ayAiPHNwYW4+X19DQ19TVVBQT1JUU19fX0lOTElORTwvc3Bhbj4iIGNhbiBiZSByZXBsYWNlZCB3 aXRoICI8Y29kZT5fX1NURENfVkVSU0lPTl9fPC9jb2RlPiAmZ3Q7PSA8Y29kZT4xOTk5MDFMPC9j b2RlPiIgYW5kIHRobmlncyB1bmRlciAiPHNwYW4+Tk9fQU5TSV9LRVlXT1JEUzwvc3Bhbj4iIGNh biBiZSByZW1vdmVkLjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1z ZXJpZjsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogcmdiKDAsIDAsIDApOyBiYWNrZ3JvdW5kLWNv bG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1p bHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiByZ2IoMCwgMCwg MCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPkkgd291bGQgbGlrZSB0 byByZXZpZXcgdGhlIGNoYW5nZXMgb25jZSB0aGV5IGFyZSBwb3N0ZWQgb24gcGhhYnJpY2F0b3Iu IFRvIG1lLCBpdCBoYXMgYmVlbiBhIGh1Z2UgZGlmZmljdWx0eSB0byByZWFkIHRoZSBjZGVmcy5o IGhlYWRlciBiZWNhdXNlIGl0IGhhcyB0byBtYW55IGNvbXBhdGliaWxpdHkgbWFjcm9zIGZvciBv bGQgdmVyc2lvbnMgb2YgR0NDLiBUaGFuayB5b3UgZm9yIHlvdXIgd29yay48YnI+PC9kaXY+PGRp diBjbGFzcz0icHJvdG9ubWFpbF9xdW90ZSI+DQogICAgICAgIE9uIFdlZG5lc2RheSwgSnVuZSAx OXRoLCAyMDI0IGF0IDk6MDEgUE0sIFdhcm5lciBMb3NoICZsdDtpbXBAYnNkaW1wLmNvbSZndDsg d3JvdGU6PGJyPg0KICAgICAgICA8YmxvY2txdW90ZSBjbGFzcz0icHJvdG9ubWFpbF9xdW90ZSIg dHlwZT0iY2l0ZSI+DQogICAgICAgICAgICA8ZGl2IGRpcj0ibHRyIj48ZGl2PkdyZWV0aW5ncyw8 L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkkndmUgYmVlbiBoYXZpbmcgYSBnbyBhdCBjbGVhbmlu ZyB1cCBzeXMvY2RlZnMuaCBmb3IgZ29pbmcgb24gNSB5ZWFycyBub3cuIE9uZSBiaWcgcHJvYmxl bSBpcyB0aGF0IGl0J3MgY2hvY2stby1ibG9jayBvZiBzcGVjaWFsIGNhc2VzIGFuZCBoYWNrcyBn b2luZyBiYWNrIHRvIHRoZSBlYXJseSAxOTkwcyAoYmVmb3JlIHNvbWUgcGVvcGxlIG9uIHRoaXMg bGlzdCB3ZXJlIGV2ZW4gYm9ybikuPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5JJ2QgbGlrZSB0 byByZW1vdmUgYSBsb3Qgb2YgdGhhdCwgd2hpbGUgc3RpbGwgcmV0YWluaW5nIHVzZWZ1bCB2ZXJz aW9ucyBvZiBnY2MgYW5kIGNsYW5nIHRvIHdvcmsgKHBsdXMgcHJlc2VydmluZyB3aGF0IHN1cHBv cnQgdGhhdCB3ZSBoYXZlIGZvciBwY2MgYW5kIHRjYzxiPiA8L2I+KGluY2x1ZGluZyBmaXhpbmcg dGhlIGxhdHRlcikuIE5vdGU6IHRoaXMgaXMgImJ1aWxkaW5nIGJpbmFyaWVzIG9uIEZyZWVCU0Qi IG5vdCAiYnVpbGRpbmcgRnJlZUJTRCIgd2hpY2ggaGFzIG11Y2ggbXVjaCB0aWdodGVyIHJlcXVp cmVtZW50cyBmb3IgY29tcGlsZXJzLiBUaGlzIHdvbid0IGFmZmVjdCB0aGF0IGF0IGFsbC48YnI+ PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5UbyB0aGF0IGVuZCwgSSdkIGxpa2UgdG8gZHJhdyBh IGxpbmUgaW4gdGhlIHNhbmQuIElmIHlvdSBhcmUgYnVpbGRpbmcgRnJlZUJTRCBiaW5hcmllcyBm b3IgRnJlZUJTRCAxNSBhbmQgbmV3ZXIsIHlvdSBuZWVkIHRvIHVzZSBnY2M5IChvciBuZXdlcikg b3IgbGx2bS9jbGFuZyAxMSAob3IgbmV3ZXIpLiBTdGFibGUvMTIgaGFzIGNsYW5nIDEzIGF0IGl0 cyB0aXAuIFRoZXNlIGNvbXBpbGVycyBhcmUgNSB5ZWFycyBvbGQgb3Igc28uIEFuZCBhcmUgdGhl IG9sZGVzdCBjb21waWxlcnMgaW4gdGhlIHBvcnRzIHRyZWUgdGhhdCB3ZSB1c2UgdG8gZ2VuZXJh dGUgRnJlZUJTRCBiaW5hcmllcyAodGhlcmUncyB0aHJlZSBvbGRlciBvbmVzOiBnY2MgNiBmb3Ig YWRhLCBnY2MgNC4yIGZvciBUSSBjYWxjdWxhdG9ycyAoYnV0IGl0IGRvZXNuJ3QgdXNlIHN5c3Rl bSBoZWFkZXJzKSBhbmQgZ2NjIDIuNy4yIGZvciBocDQ4IGNhbGN1bGF0b3JzIChzYW1lKS4gU28g ZnJvbSBhIHBvcnRzIHBlcnNwZWN0aXZlLCA8YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5G cm9tIGEgbG9va2luZyBhdCBjaGFuZ2VzIHBlcnNwZWN0aXZlLCB0aGVyZSdzIGFib3V0IDMwIGlu c3RhbmNlcyBvZiBHTlVfUFJFUkVRVSBpbiB0aGUgdHJlZS4gVGhlIG5ld2VzdCBvbmUgaXMgZm9y IGdjYyA1LjEuIFNvIG5vbWluYWxseSBzdXBwb3J0aW5nIGp1c3QgZ2NjOSBhbmQgbmV3ZXIgbWVh bnMgYXNzdW1pbmcgdGhhdCB0aGVzZSBhcmUgYWxsIHRydWUgKHdoaWNoIGlzIHRydWUgZm9yIGdj YyBhbmQgY2xhbmcpIGFuZCByZW1vdmluZyBzcGVjaWZpYyBzdXBwb3J0IGZvciB0aGVtLiBjbGFu ZyBhbmQgZ2NjIGVhc2lseSBjbGVhcnMgdGhlc2UgYmFycy48YnI+PC9kaXY+PGRpdj48YnI+PC9k aXY+PGRpdj5BaCwgYnV0IHdoYXQgZG8geW91IHNheSBhYm91dCB0Y2MgYW5kIHBjYyB3aGljaCBh cmUndCBnY2M/IFdlbGwsIHRjYyBsaWVzLCBhbmQgc2F5cyBpdCBzdXBwb3J0cyBnY2MgKHZlcnNp b24gOSBJIHRoaW5rLCBidXQgaXQncyBiZWVuIGEgd2hpbGUgc2luY2UgSSBjaGVja2VkKS4gdGNj IGNhbid0IHdvcmsgdG9kYXkgYmVjYXVzZSB3ZSBoYXZlIHFzb3J0LmggdXNpbmcgdmVyc2lvbmVk IHN5bWJvbHMgdW5jb25kaXRpb25hbGx5LCBhbmQgaXQgZG9lc24ndCBzdXBwb3J0IHZlcnNpb25l ZCBzeW1ib2xzLi4uLiBBbmQgcGF0Y2hlcyB0byBkbyB0aGF0IGhhdmUgYmVlbiBzdGFsbGVkIGZv ciByZWFzb25zIHVucmVsYXRlZCB0byB0aGlzIGRlc2lyZS4gcGNjIGRvZXNuJ3Qgc3VwcG9ydCBn bnVjIHN5bWJvbHMgYXQgYWxsIGxhc3QgSSBjaGVja2VkLiBCdXQgaXQgaGFzIHJlYWwgaXNzdWVz IGJ1aWxkaW5nIHNvbWUgdGhpbmdzIGluIHRoZSB0cmVlLCBzbyBJJ2xsIG5vdCBnYXRlIHRoaW5n cyBieSBpdCB1bmxlc3Mgc29tZWJvZHkgc3RlcHMgdXAgdG8gYWN0dWFsbHkgZG8gdGhlIHdvcmsg dG8gbWFrZSBpdCB3b3JrLiBUaGUgcGNjIHVwc3RyZWFtIGhhcyBiZWVuIHdlaXJkIGxhdGVseSB0 b28uPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5JQ0MgdXNlZCB0byBiZSBzdXBwb3J0ZWQsIGJ1 dCB1bmxlc3Mgc29tZW9uZSB0dXJucyB1cCB3aXRoIHBhdGNoZXMgZm9yIHRoZSBsYXRlc3QgaWNj LCBpdCB3aWxsIHJlbWFpbiBzdXBwb3J0ZWQgb25seSB0byB0aGUgZXh0ZW50IGl0IHByZXRlbmRz IHRvIGJlIGdjYy4gSSd2ZSBoYWQgcmVwb3J0cyB0aGF0IGl0IHdvcmtzLCB0byB0aGlzIGV4dGVu dCBhbmQgbm90aGluZyBzcGVjaWFsIGlzIG5lZWRlZCB0byBidWlsZCBGcmVlQlNEIGJpbmFyaWVz LiBUaGVyZSBhcmUgYSBjb3VwbGUgb2YgdG91Y2ggdXBzIHJlcXVpcmVkIHRvIGJ1aWxkIEZyZWVC U0QgaXRzZWxmIHdpdGggaWNjIEknbSB0b2xkLCBidXQgSSd2ZSBub3Qgc2VlbiBwYXRjaGVzIGFu ZCBoYXZlIGxpdHRsZSBkZXNpcmUgdG8gY2hhc2UgdGhpcyB3aW5kbWlsbC48YnI+PC9kaXY+PGRp dj48YnI+PC9kaXY+PGRpdj5JbiBwcmFjdGljYWwgc2Vuc2UsIHRoaXMgd2lsbCBqdXN0IGJlIHdy aXRpbmcgZG93biB3aGF0J3MgdGhlIHJlYWxpdHkgb24gdGhlIGdyb3VuZCB0b2RheTogb2xkIGNv bXBpbGVyIHZlcnNpb25zIGhhdmVuJ3QgYmVlbiB0ZXN0ZWQgYW5kIHRoZXJlJ3MgYSBsb3Qgb2Yg a25vd24gaXNzdWVzIHdlJ3ZlIGludHJvZHVjZWQgc2luY2UgbW92aW5nIHRvIGNsYW5nIHRoYXQg d2lsbCBwcmVjbHVkZSBldmVuIG91ciBvbGQgZ2NjIDQuMiBmcm9tIHdvcmtpbmcgd2l0aCBzeXN0 ZW0gaGVhZGVycy48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pk9mIGNvdXJzZSwgSSdsbCBkbyBh biBleHAgcnVuIHdpdGggYWxsIHRoZXNlIGNoYW5nZXMuIEJ1dCBJIHdhbnRlZCB0byBnaXZlIHBl b3BsZSBhIGhlYWRzIHVwIHRoYXQgSSdsbCBiZSBkb2luZyB0aGlzIGJlZm9yZSAxNS4wIGlzIGJy YW5jaGVkLjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Rm9yIHRoZSB2YXN0IG1ham9yaXR5IChh bGw/KSB1c2VycywgSSBleHBlY3QgeW91J2xsIG5vdCBub3RpY2UuPGJyPjwvZGl2PjxkaXY+PGJy PjwvZGl2PjxkaXY+V2FybmVyPGJyPjwvZGl2PjwvZGl2Pg0KDQogICAgICAgIDwvYmxvY2txdW90 ZT48YnI+DQogICAgPC9kaXY+ --b1_CTm21Pvyoeyq6EBAZWXGHX2qmYeLxMhm6RsYVGZsI-- From nobody Thu Jun 20 03:37:36 2024 X-Original-To: freebsd-arch@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 4W4R5P2k6fz5Nysn for ; Thu, 20 Jun 2024 03:37:45 +0000 (UTC) (envelope-from marquis@roble.com) Received: from mx5.roble.com (mx5.roble.com [209.237.23.5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mx5.roble.com", Issuer "mx5.roble.com" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4R5N2Yl9z4T2c for ; Thu, 20 Jun 2024 03:37:44 +0000 (UTC) (envelope-from marquis@roble.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=roble.com header.s=rs060402 header.b=qWLux2oK; dmarc=pass (policy=none) header.from=roble.com; spf=pass (mx1.freebsd.org: domain of marquis@roble.com designates 209.237.23.5 as permitted sender) smtp.mailfrom=marquis@roble.com Received: from roble.com (roble.com [209.237.23.50]) by mx5.roble.com (Postfix) with ESMTP id 02B0028D155 for ; Wed, 19 Jun 2024 20:37:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=roble.com; s=rs060402; t=1718854657; bh=GvRQQx5t+KwMJlJJw2D1UHCxAEk5FkMxfFC3Sgl1ZzQ=; h=Date:From:To:Subject; b=qWLux2oKOOsZKIXpjfjOWJcHSZKmhglhVKp7W1vZAvr6IBu+yV4BjY2aJhsVt+Ekq PLQXZFEbGrV9fvPDuA6I1B4JKBLKqVYWrPzq6TJ9CCSGD7o6lUA+DJm9xnRCwsQued J4mV3AD8xKGah0tvy8OagPAEck5FOZPo6oWP05BU= Date: Wed, 19 Jun 2024 20:37:36 -0700 (PDT) From: Roger Marquis To: freebsd-arch@freebsd.org Subject: FreeBSD-base update & make delete-old issues Message-ID: <4q1q65ns-n394-4pqs-qq88-185894149031@mx.roble.com> List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset=US-ASCII X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.88 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.98)[-0.979]; DMARC_POLICY_ALLOW(-0.50)[roble.com,none]; R_DKIM_ALLOW(-0.20)[roble.com:s=rs060402]; R_SPF_ALLOW(-0.20)[+ip4:209.237.23.0/24]; MIME_GOOD(-0.10)[text/plain]; ONCE_RECEIVED(0.10)[]; MISSING_XM_UA(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_ONE(0.00)[1]; RCPT_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:17403, ipnet:209.237.0.0/18, country:US]; MLMMJ_DEST(0.00)[freebsd-arch@freebsd.org]; MID_RHS_MATCH_FROMTLD(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; ARC_NA(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-arch@freebsd.org]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; DKIM_TRACE(0.00)[roble.com:+] X-Rspamd-Queue-Id: 4W4R5N2Yl9z4T2c After upgrading to 14.1 via 'pkg update -r FreeBSD-base' there are 2 possible issues: 1) 'pkg ver' shows both 14.0 and 14.1 packages and no version status 2) cd /usr/src && yes | make delete-old delete-old-libs ... /usr/include/c++/v1/__tuple_dir >>> Old directories removed To remove old libraries run 'make delete-old-libs'. sh: cc: not found make[1]: "/usr/src/share/mk/bsd.compiler.mk" line 200: warning: "cc -v 2>&1 | grep "gcc version"" returned non-zero status make[1]: "/usr/src/share/mk/bsd.compiler.mk" line 204: Unable to determine compiler type for CC=cc. Consider setting COMPILER_TYPE. make[1]: stopped in /usr/src *** Error code 1 Anyone else seeing this? Roger From nobody Thu Jun 20 04:47:02 2024 X-Original-To: freebsd-arch@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 4W4SdY2mtXz5P7HC for ; Thu, 20 Jun 2024 04:47:13 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 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 4W4SdX6HHyz4Zv2 for ; Thu, 20 Jun 2024 04:47:12 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 45K4l3IV013113; Thu, 20 Jun 2024 07:47:06 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 45K4l3IV013113 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 45K4l25O013109; Thu, 20 Jun 2024 07:47:02 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Thu, 20 Jun 2024 07:47:02 +0300 From: Konstantin Belousov To: Bakul Shah Cc: Warner Losh , "freebsd-arch@freebsd.org" Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries Message-ID: References: <197A5386-1096-4754-BA82-996140B56EAF@iitbombay.org> List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <197A5386-1096-4754-BA82-996140B56EAF@iitbombay.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.1 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on tom.home X-Spamd-Bar: ---- 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:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4W4SdX6HHyz4Zv2 On Wed, Jun 19, 2024 at 06:26:12PM -0700, Bakul Shah wrote: > On Jun 19, 2024, at 6:01 PM, Warner Losh wrote: > > > > Ah, but what do you say about tcc and pcc which are't gcc? Well, tcc lies, and says it supports gcc (version 9 I think, but it's been a while since I checked). tcc can't work today because we have qsort.h using versioned symbols unconditionally, and it doesn't support versioned symbols.... And patches to do that have been stalled for reasons unrelated to this desire. pcc doesn't support gnuc symbols at all last I checked. But it has real issues building some things in the tree, so I'll not gate things by it unless somebody steps up to actually do the work to make it work. The pcc upstream has been weird lately too. > > Why are versioned symbols required for qsort.h? Look at the qsort_r() stuff in stdlib.h to maintain backward compat with previous definition of qsort_r() comparator. I think that for the purposes of keeping some support for tcc or whatever not-quite-gcc compiler, we should just avoid doing the backward-compat dance, if such compiler is detected. From nobody Thu Jun 20 06:10:23 2024 X-Original-To: freebsd-arch@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 4W4VTp1vlXz5PGV5 for ; Thu, 20 Jun 2024 06:10:38 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) (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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4VTn4T09z4kBf for ; Thu, 20 Jun 2024 06:10:37 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pf1-x435.google.com with SMTP id d2e1a72fcca58-70631cd9e50so459913b3a.0 for ; Wed, 19 Jun 2024 23:10:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1718863835; x=1719468635; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=HL6DTM71VPSvQwlyQ0iymMi+dPAS9Ca+mf2MThJ8Ci4=; b=U8LqT+NNPhF3m1GhCkJtjT5W8onW3Bobv0cai6zyNcUq6u58kFDeRdtGe43aZnxkWw Li3FJYKciFvaLK8zSVqGG0NyHiZ6XvLSJE6pk0U+osJ9gnxaupCN15JQ4VdoHMuCA3we YX5G+QodAMa1VTu5jyn6DQrOhWBJedJjMkiDyQx1z/JUU7Ohji/vO3c+Me6HjNF8cKYV 2wbUgxqYvYkDA01JGDFUaK5ny971bVpV+PfA6ESRBeVovIgd7h8VFnxYo4ev33376BLH 9x3dcwRFICXddd20/ENCapMa+thChR9GiX5chNcZ6KQC7HUjfrFI/DT4v0+nCsbGfiep BSDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718863835; x=1719468635; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=HL6DTM71VPSvQwlyQ0iymMi+dPAS9Ca+mf2MThJ8Ci4=; b=ZDTnSTZv4x1tbLXBVbb+e1c8fGdpMPi/6HAugQNVwpqGfg5jOjYaFWyJd/Sx2uQ3Qy h9GDeU2pP4pwgNuxuvc60ZEdA0JT3MnoqSufu3DkuSh4XHhZx0j6E+IqLetM7hi0XJLt 86lVxwOUfnL5I3/TNej/SFe3Brna+O2F45Fwn+oHZzvHuVrGQDgE+4fWdte37DvuGSzn smqVLjBeoMJw4PDtxVGbJW1M8BpMpOSDcXtGX843IqFVaFfJM5MS9U9LYKQvkYK1Akfm VeTI8VklJlfVDzFfkr3qPC4AnWwaav1BGg7/1tL8NGJL2GSMMJ1VSzhR9Xn+zK9PnSCs 5lyg== X-Forwarded-Encrypted: i=1; AJvYcCV0te2CghGnEaX7jnLFl+WeYjsQ4SLjXpxm2GGzHanJZFiND4HRminhLQboP6rMWNscZ9NBaxFpDBw4patpWsilKjuGKtOKhEc= X-Gm-Message-State: AOJu0Yx9315XVrn3oiRlngZImQr4R56fmIUlKlSgurlFk/NDMHDpFbcR sas8PrFtoAym+0Sc2lCfxESHJrniqyTezubcPBhoqkSllFx4MT1VrFBry+GQfVQ2/1Y0EYjN3X2 iva5UbJ46josI+Bmg+K3hSdG8l3NVCHluxbllPg== X-Google-Smtp-Source: AGHT+IFeYSngmdQcbavjdD7+ueXwp+4I5GJLDiY05hfKjeU7SBxGXpHFjZh5IJw7G51S2v185qosCyVzSvXX9RXFx0I= X-Received: by 2002:a05:6a21:7886:b0:1b4:e956:ae64 with SMTP id adf61e73a8af0-1bcbb69b5d8mr5238714637.54.1718863834592; Wed, 19 Jun 2024 23:10:34 -0700 (PDT) List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 References: <197A5386-1096-4754-BA82-996140B56EAF@iitbombay.org> In-Reply-To: From: Warner Losh Date: Thu, 20 Jun 2024 00:10:23 -0600 Message-ID: Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries To: Konstantin Belousov Cc: Bakul Shah , "freebsd-arch@freebsd.org" Content-Type: multipart/alternative; boundary="00000000000047540e061b4c2cee" X-Spamd-Bar: ---- 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:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4W4VTn4T09z4kBf --00000000000047540e061b4c2cee Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 19, 2024 at 10:47=E2=80=AFPM Konstantin Belousov wrote: > On Wed, Jun 19, 2024 at 06:26:12PM -0700, Bakul Shah wrote: > > On Jun 19, 2024, at 6:01=E2=80=AFPM, Warner Losh wrote= : > > > > > > Ah, but what do you say about tcc and pcc which are't gcc? Well, tcc > lies, and says it supports gcc (version 9 I think, but it's been a while > since I checked). tcc can't work today because we have qsort.h using > versioned symbols unconditionally, and it doesn't support versioned > symbols.... And patches to do that have been stalled for reasons unrelate= d > to this desire. pcc doesn't support gnuc symbols at all last I checked. B= ut > it has real issues building some things in the tree, so I'll not gate > things by it unless somebody steps up to actually do the work to make it > work. The pcc upstream has been weird lately too. > pcc supports up through gcc 4.3 __attributes__ fyi. > > Why are versioned symbols required for qsort.h? > Look at the qsort_r() stuff in stdlib.h to maintain backward compat > with previous definition of qsort_r() comparator. > > I think that for the purposes of keeping some support for tcc or whatever > not-quite-gcc compiler, we should just avoid doing the backward-compat > dance, > if such compiler is detected. > https://reviews.freebsd.org/D45651 is a good, minimal patch to do that. A more extensive patch would not define the symver macro for tcc (so any uses we'd catch right away) and change the ifndef __TCC__ to ifdef symver. Warner --00000000000047540e061b4c2cee Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Wed, Jun 19, 2024 at 10:47=E2=80= =AFPM Konstantin Belousov <kostik= bel@gmail.com> wrote:
On Wed, Jun 19, 2024 at 06:26:12PM -0700, Bakul Shah wrote: > On Jun 19, 2024, at 6:01=E2=80=AFPM, Warner Losh <imp@bsdimp.com> wrote:
> >
> > Ah, but what do you say about tcc and pcc which are't gcc? We= ll, tcc lies, and says it supports gcc (version 9 I think, but it's bee= n a while since I checked). tcc can't work today because we have qsort.= h using versioned symbols unconditionally, and it doesn't support versi= oned symbols.... And patches to do that have been stalled for reasons unrel= ated to this desire. pcc doesn't support gnuc symbols at all last I che= cked. But it has real issues building some things in the tree, so I'll = not gate things by it unless somebody steps up to actually do the work to m= ake it work. The pcc upstream has been weird lately too.

pcc supports up through gcc 4.3 __attributes__ fyi.
<= /div>
=C2=A0
> Why are versioned symbols required for qsort.h?
Look at the qsort_r() stuff in stdlib.h to maintain backward compat
with previous definition of qsort_r() comparator.

I think that for the purposes of keeping some support for tcc or whatever not-quite-gcc compiler, we should just avoid doing the backward-compat danc= e,
if such compiler is detected.


--00000000000047540e061b4c2cee-- From nobody Thu Jun 20 06:18:53 2024 X-Original-To: freebsd-arch@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 4W4Vgb0j7fz5PHHg for ; Thu, 20 Jun 2024 06:19:07 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x1035.google.com (mail-pj1-x1035.google.com [IPv6:2607:f8b0:4864:20::1035]) (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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4VgZ68Cyz4kkB for ; Thu, 20 Jun 2024 06:19:06 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x1035.google.com with SMTP id 98e67ed59e1d1-2c3274d5cc7so500690a91.0 for ; Wed, 19 Jun 2024 23:19:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1718864345; x=1719469145; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=quvLfq3OxfpfCCmzEL7rgVash/AZT7ZkdBGRHVEaVds=; b=xP3OXIPQKQs+bpmjWCITypq6yFXLhgu82bDa6BELgBcdud0nXhU4S2F/YezpDci7oF mKjpO4/1RbvaukFui5xAdzEC54HaUjVmpyVlIu5w/Tts8wx77dzAxQs+BuIbqjA7kGbm p+P4fFSVgRqJrl7ueZ8WO2ZwnpukwE7E4NxECCR5mprmB7dEZX2XNk1W/moKP4nJvtjR J5OmrQwkD2gg/R6oYCJZeeIQxYhyDP7Al8cNKmeyY/TnrbLXJO2VMX8wwn+c6VabCq8p jMvnnfaga5CIt6IvYl9Tz4n2IXjQOPvDPvAI8vXBEHjhmMmcsecR20RW/2//mnwSAynC T2gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718864345; x=1719469145; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=quvLfq3OxfpfCCmzEL7rgVash/AZT7ZkdBGRHVEaVds=; b=hQHSfJl7mtBOgCPPw074opSpGdxUQMO+DvGiFhiQGFRYoLHCFK7TpT0ZbNx2zltMT7 N5d9+d2W3wfoPnkHvewZKAzFnwii6cKFxLNHuHhqSjjCdYjOScXxtuE8MCrIVuAhssLL no63ZrTkzV18Rz5Jcu5IJ8krLtYrlrvz4/RqyXrRDJekUKFzT37oba74Tg6ts3+LsB+j 9lHF67IS1uVnJDd9p7MjHKWbVayfZDG+HOmAlaRfaM9Vs+WZGoRCjCznb3A9BMKePbge 7ce545fJmAA61ovsegIwTJO+5epVTfvjA/3Btdj69+fcte9aHh+9gWBy6rt0AEImTsKC GmfQ== X-Gm-Message-State: AOJu0Yy2RodOUsWNAkDHADjwYP1MM0yNk+y2THOIq0gXUbXyinyXdCzb lJxdXAAfUmts1C2LB6MyEYlMD9gPwrHn+3WPiMbpjBaDyTiCUXc2xJPDro8MWdWqbqi+wDqVquQ 6/ss4i7+rytQNsLD60E9Qb8h5sT2LKGydcGJA7BG5CE8ikHywhKOL4Q== X-Google-Smtp-Source: AGHT+IHIovlNh9fXvz+pfqaz9lKYqS5UP4qsnLVXQszIfQIX8NOtSkvx+/pbvd2L/XueyS2VgvkKiYnfrV7PioqnzFI= X-Received: by 2002:a17:90a:1bc8:b0:2c5:32c3:a777 with SMTP id 98e67ed59e1d1-2c7b5c8ffccmr4481209a91.28.1718864344811; Wed, 19 Jun 2024 23:19:04 -0700 (PDT) List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 References: <8kCLO-zgfcTHi04hPyNkywfhk22Kav80DMTwDpLqLmOO0yj95gKO5MP-5pLF3WwlgG9ELgNCJywzhpQLIn4BIl_FiLULl6KUuCbCOdolZfM=@proton.me> In-Reply-To: <8kCLO-zgfcTHi04hPyNkywfhk22Kav80DMTwDpLqLmOO0yj95gKO5MP-5pLF3WwlgG9ELgNCJywzhpQLIn4BIl_FiLULl6KUuCbCOdolZfM=@proton.me> From: Warner Losh Date: Thu, 20 Jun 2024 00:18:53 -0600 Message-ID: Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries To: Minsoo Choo Cc: "freebsd-arch@freebsd.org" Content-Type: multipart/alternative; boundary="000000000000b0adeb061b4c4ab3" X-Spamd-Bar: ---- 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:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4W4VgZ68Cyz4kkB --000000000000b0adeb061b4c4ab3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 19, 2024 at 8:26=E2=80=AFPM Minsoo Choo wrote: > I'm fine with these changes. GCC 5 was released 9 years ago and I think > most people have migrated to newer versions. > > As long as is compatible with POSIX standard, code written > on FreeBSD will be portable on Linux and mac, and vice versa. There might > be problems with tcc and pcc, but it is compiler dev's responsibility to > follow posix, not our's to modify the base system for each compiler > Except we don't follow POSIX and so each compiler needs special support for these things (they are outside of POSIX). Fortunately, it looks like both tcc and pcc will work after my changes. > I think "__CC_SUPPORTS___INLINE" can be replaced with "__STDC_VERSION__ > >=3D 199901L" and thnigs under "NO_ANSI_KEYWORDS" can be removed. > I'm not so sure, but that will be for a second round of cleanup. I'm not looking to touch that stuff just yet. > I would like to review the changes once they are posted on phabricator. T= o > me, it has been a huge difficulty to read the cdefs.h header because it h= as > to many compatibility macros for old versions of GCC. Thank you for your > work. > I'll add you to the work. I also need to re-review and/or land your POSIX.1-2024 changes to a few headers now that I have a copy of the standard and we know the values that will be mandated. https://reviews.freebsd.org/D45653 https://reviews.freebsd.org/D45654 https://reviews.freebsd.org/D45655 https://reviews.freebsd.org/D45656 https://reviews.freebsd.org/D45657 Are what I've come up with now that I've had a chance to study tcc and pcc a bit. These all should be safe to remove since the ones that are > the 4.3 that pcc supports aren't used in headers. Warner > On Wednesday, June 19th, 2024 at 9:01 PM, Warner Losh > wrote: > > Greetings, > > I've been having a go at cleaning up sys/cdefs.h for going on 5 years now= . > One big problem is that it's chock-o-block of special cases and hacks goi= ng > back to the early 1990s (before some people on this list were even born). > > I'd like to remove a lot of that, while still retaining useful versions o= f > gcc and clang to work (plus preserving what support that we have for pcc > and tcc (including fixing the latter). Note: this is "building binaries > on FreeBSD" not "building FreeBSD" which has much much tighter requiremen= ts > for compilers. This won't affect that at all. > > To that end, I'd like to draw a line in the sand. If you are building > FreeBSD binaries for FreeBSD 15 and newer, you need to use gcc9 (or newer= ) > or llvm/clang 11 (or newer). Stable/12 has clang 13 at its tip. These > compilers are 5 years old or so. And are the oldest compilers in the port= s > tree that we use to generate FreeBSD binaries (there's three older ones: > gcc 6 for ada, gcc 4.2 for TI calculators (but it doesn't use system > headers) and gcc 2.7.2 for hp48 calculators (same). So from a ports > perspective, > > From a looking at changes perspective, there's about 30 instances of > GNU_PREREQU in the tree. The newest one is for gcc 5.1. So nominally > supporting just gcc9 and newer means assuming that these are all true > (which is true for gcc and clang) and removing specific support for them. > clang and gcc easily clears these bars. > > Ah, but what do you say about tcc and pcc which are't gcc? Well, tcc lies= , > and says it supports gcc (version 9 I think, but it's been a while since = I > checked). tcc can't work today because we have qsort.h using versioned > symbols unconditionally, and it doesn't support versioned symbols.... And > patches to do that have been stalled for reasons unrelated to this desire= . > pcc doesn't support gnuc symbols at all last I checked. But it has real > issues building some things in the tree, so I'll not gate things by it > unless somebody steps up to actually do the work to make it work. The pcc > upstream has been weird lately too. > > ICC used to be supported, but unless someone turns up with patches for th= e > latest icc, it will remain supported only to the extent it pretends to be > gcc. I've had reports that it works, to this extent and nothing special i= s > needed to build FreeBSD binaries. There are a couple of touch ups require= d > to build FreeBSD itself with icc I'm told, but I've not seen patches and > have little desire to chase this windmill. > > In practical sense, this will just be writing down what's the reality on > the ground today: old compiler versions haven't been tested and there's a > lot of known issues we've introduced since moving to clang that will > preclude even our old gcc 4.2 from working with system headers. > > Of course, I'll do an exp run with all these changes. But I wanted to giv= e > people a heads up that I'll be doing this before 15.0 is branched. > > For the vast majority (all?) users, I expect you'll not notice. > > Warner > > > --000000000000b0adeb061b4c4ab3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
I'm fine with these changes. GCC 5 was released 9 year= s ago and I think most people have migrated to newer versions.

I think "__CC_SU= PPORTS___INLINE" can be replaced with "__STDC_VERSIO= N__ >=3D 199901L" and thnigs under "= NO_ANSI_KEYWORDS" can be removed.

I'm not so sure, but that will be for a second round of cleanu= p. I'm not looking to touch that stuff just yet.
=C2=A0
I would like to review the changes once they are posted on ph= abricator. To me, it has been a huge difficulty to read the cdefs.h header = because it has to many compatibility macros for old versions of GCC. Thank = you for your work.

I'll add y= ou to the work. I also need to re-review and/or land your POSIX.1-2024 chan= ges to a few headers now that I have a copy of the standard and we know the= values that will be mandated.

https://reviews.freebsd.or= g/D45654

Are what I've come up with now that I'= ;ve had a chance to study tcc and pcc a bit. These all should be safe to re= move since the ones that are=C2=A0 > the 4.3 that pcc supports aren'= t used in headers.

Warner
=C2=A0=
On Wednesday, June 19th, 2024 at 9:01 PM, Warner Losh <imp@bsdimp.com> wrote:<= br>
Greetings,

I'= ;ve been having a go at cleaning up sys/cdefs.h for going on 5 years now. O= ne big problem is that it's chock-o-block of special cases and hacks go= ing back to the early 1990s (before some people on this list were even born= ).

I'd like to remove a lot of that, while sti= ll retaining useful versions of gcc and clang to work (plus preserving what= support that we have for pcc and tcc (including fixing the latter).= Note: this is "building binaries on FreeBSD" not "building = FreeBSD" which has much much tighter requirements for compilers. This = won't affect that at all.

To that end, I&#= 39;d like to draw a line in the sand. If you are building FreeBSD binaries = for FreeBSD 15 and newer, you need to use gcc9 (or newer) or llvm/clang 11 = (or newer). Stable/12 has clang 13 at its tip. These compilers are 5 years = old or so. And are the oldest compilers in the ports tree that we use to ge= nerate FreeBSD binaries (there's three older ones: gcc 6 for ada, gcc 4= .2 for TI calculators (but it doesn't use system headers) and gcc 2.7.2= for hp48 calculators (same). So from a ports perspective,
<= br>
From a looking at changes perspective, there's about 30 i= nstances of GNU_PREREQU in the tree. The newest one is for gcc 5.1. So nomi= nally supporting just gcc9 and newer means assuming that these are all true= (which is true for gcc and clang) and removing specific support for them. = clang and gcc easily clears these bars.

Ah, bu= t what do you say about tcc and pcc which are't gcc? Well, tcc lies, an= d says it supports gcc (version 9 I think, but it's been a while since = I checked). tcc can't work today because we have qsort.h using versione= d symbols unconditionally, and it doesn't support versioned symbols....= And patches to do that have been stalled for reasons unrelated to this des= ire. pcc doesn't support gnuc symbols at all last I checked. But it has= real issues building some things in the tree, so I'll not gate things = by it unless somebody steps up to actually do the work to make it work. The= pcc upstream has been weird lately too.

ICC used = to be supported, but unless someone turns up with patches for the latest ic= c, it will remain supported only to the extent it pretends to be gcc. I'= ;ve had reports that it works, to this extent and nothing special is needed= to build FreeBSD binaries. There are a couple of touch ups required to bui= ld FreeBSD itself with icc I'm told, but I've not seen patches and = have little desire to chase this windmill.

In = practical sense, this will just be writing down what's the reality on t= he ground today: old compiler versions haven't been tested and there= 9;s a lot of known issues we've introduced since moving to clang that w= ill preclude even our old gcc 4.2 from working with system headers.

Of course, I'll do an exp run with all these changes.= But I wanted to give people a heads up that I'll be doing this before = 15.0 is branched.

For the vast majority (all?) use= rs, I expect you'll not notice.

Warner
=

--000000000000b0adeb061b4c4ab3-- From nobody Thu Jun 20 06:40:11 2024 X-Original-To: freebsd-arch@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 4W4W8B1Lg2z5PK6b for ; Thu, 20 Jun 2024 06:40:26 +0000 (UTC) (envelope-from bakul@iitbombay.org) Received: from mail-pf1-x433.google.com (mail-pf1-x433.google.com [IPv6:2607:f8b0:4864:20::433]) (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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4W8B0sJYz4mYS for ; Thu, 20 Jun 2024 06:40:26 +0000 (UTC) (envelope-from bakul@iitbombay.org) Authentication-Results: mx1.freebsd.org; none Received: by mail-pf1-x433.google.com with SMTP id d2e1a72fcca58-7024d571d8eso468194b3a.0 for ; Wed, 19 Jun 2024 23:40:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iitbombay-org.20230601.gappssmtp.com; s=20230601; t=1718865625; x=1719470425; darn=freebsd.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=mKERKil0jd8I0r10tFFawT31cixsexXIVM28x9Yv6UM=; b=W+I4fN/7hpuN5w4bBlZxDQOoDJOKkU6pbIuCKZrm1EU8R3z12j9XYMPPXZEz9dSHN6 Bhg1x1hTKSEe3h7d487/s99QDMR057IXevxyZGKtnusEIXO+3HvTGQeUyUF4kF3PZoMx rZO5R4fTUqYfN3fNdlujbLNEvC1qjE5qHA+he8+ewhwWWthNTJj+v6R5T93KBS1YQcVQ u0UzRyMd3vE7uWj4W++z4iBlGRhH2EyIdR52lqIDn4giwEIvKwjAGvmhEpenG8oIqbh/ RM75/apDKhTdlm06tPxw/f5RRn1ysQBdbqIr8QrjlJ5NILrT7wpXdqKl6/ERARcUnDpZ 3ESQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718865625; x=1719470425; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=mKERKil0jd8I0r10tFFawT31cixsexXIVM28x9Yv6UM=; b=Xai+2zb3TXvaUq64kq2l3kY1gZNJTnEvgMKneAP9zig0Ng8HzkvnTkZhMgCXvSSscW uyosd6IygolPg5z53+Wzs2+27tQ00aXSdSasCgW0KLkTtXvIbQDTl7Secas6bEM56kvc Kq6u9/E0/A0KHhj1w2b4u3aPmHPhDjaTAeEtJ/1HQzKYUS+kATvXLklapnl5mvpj3Md+ wtkSwf4x7SJit9+M+hye+CDIPQ4w/6ZkjYnpd/1YmlhFnMvlCdg+IbM0WWdH3ou9twJ/ 62wrIQEKRat88jD33byfuZHL0UlMVOsx2vpC16/N1UjVxsQW480WStD9Usp7d+eDyH/1 AFjg== X-Forwarded-Encrypted: i=1; AJvYcCW1yAmY5uBNoqC9OlZ8qRDeAcDZWn06TrFl650BLrxt6ro/UuCQTLifHAGNt+yQcnj/l0ynJAt6IJRTQQlTQcSGVXCZsjYNfFw= X-Gm-Message-State: AOJu0Ywd4UMRGes7P5QShB6kkgoJAPrOydOg2+2IbKNog139LkMX+xYq G7j92dkGOvhTA3pRMT6UT4tUks3p5tqSfSUWC3JKvXVN9Ih9lZdFWPwQJ0xHLnoFLrdIHIIvi1Q = X-Google-Smtp-Source: AGHT+IGgX60LB3LDY8Htp0Y6ZidVOj06kxc9Y9uEiS8so+sMBVm21IwQnIIGHNUFRGvEav0oap9J6Q== X-Received: by 2002:a05:6a20:18b0:b0:1b8:9dfc:7ace with SMTP id adf61e73a8af0-1bcbb617339mr4425154637.48.1718865622996; Wed, 19 Jun 2024 23:40:22 -0700 (PDT) Received: from smtpclient.apple (107-215-223-229.lightspeed.sntcca.sbcglobal.net. [107.215.223.229]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-705cc929321sm11708881b3a.26.2024.06.19.23.40.22 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 19 Jun 2024 23:40:22 -0700 (PDT) From: Bakul Shah Message-Id: Content-Type: multipart/alternative; boundary="Apple-Mail=_EA49292E-E2F6-4FA5-AF59-E811FE809DD3" List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries Date: Wed, 19 Jun 2024 23:40:11 -0700 In-Reply-To: Cc: Konstantin Belousov , "freebsd-arch@freebsd.org" To: Warner Losh References: <197A5386-1096-4754-BA82-996140B56EAF@iitbombay.org> X-Mailer: Apple Mail (2.3774.600.62) X-Spamd-Bar: ---- 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:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4W4W8B0sJYz4mYS --Apple-Mail=_EA49292E-E2F6-4FA5-AF59-E811FE809DD3 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 On Jun 19, 2024, at 11:10=E2=80=AFPM, Warner Losh = wrote: > =20 >> > Why are versioned symbols required for qsort.h? >> Look at the qsort_r() stuff in stdlib.h to maintain backward compat >> with previous definition of qsort_r() comparator. >>=20 >> I think that for the purposes of keeping some support for tcc or = whatever >> not-quite-gcc compiler, we should just avoid doing the = backward-compat dance, >> if such compiler is detected. >=20 > https://reviews.freebsd.org/D45651 is a good, minimal patch to do = that. A more extensive > patch would not define the symver macro for tcc (so any uses we'd = catch right away) and > change the ifndef __TCC__ to ifdef symver. How common is symbol versioning? [Sorry, I've been out of compiler = business for a long time now and haven't kept uptodate on such things] = The reason I ask is, there may be other std compliant C compilers that = may not do symbol versioning. While they may supply their own libraries, = programs will still depend on system header files and libraries. In so = far as possible we shouldn't make it hard to user other compilers (such = as lcc, qbe, icc etc.). Stricter requirements on freebsd provided = programs & libraries is fine but ideally their use by programs compiled = with 3rd party compilers is possible without jumping through hoops... I have been using Warner's patch (thanks for that) where I use tcc but = have to remember to patch cdefs.h every time I do installworld! Bakul --Apple-Mail=_EA49292E-E2F6-4FA5-AF59-E811FE809DD3 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 On Jun 19, = 2024, at 11:10=E2=80=AFPM, Warner Losh <imp@bsdimp.com> = wrote:
 
> Why are versioned symbols required for = qsort.h?
Look at the qsort_r() stuff in stdlib.h to maintain backward = compat
with previous definition of qsort_r() comparator.

I = think that for the purposes of keeping some support for tcc or = whatever
not-quite-gcc compiler, we should just avoid doing the = backward-compat dance,
if such compiler is = detected.

https://reviews.freebsd.org/D4= 5651 is a good, = minimal patch to do that. A more extensive
patch would not define the symver macro for tcc = (so any uses we'd catch right away) and
change the ifndef __TCC__ to ifdef = symver.

How common is symbol = versioning? [Sorry, I've been out of compiler business for a long time = now and haven't kept uptodate on such things] The reason I ask is, there = may be other std compliant C compilers that may not do symbol = versioning. While they may supply their own libraries, programs will = still depend on system header files and libraries. In so far as possible = we shouldn't make it hard to user other compilers (such as lcc, qbe, icc = etc.). Stricter requirements on freebsd provided programs & = libraries is fine but ideally their use by  programs compiled with = 3rd party compilers is possible without jumping through = hoops...

I have been using Warner's patch = (thanks for that) where I use tcc but have to remember to patch cdefs.h = every time I do = installworld!

Bakul

= --Apple-Mail=_EA49292E-E2F6-4FA5-AF59-E811FE809DD3-- From nobody Thu Jun 20 06:49:57 2024 X-Original-To: freebsd-arch@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 4W4WMQ2bqWz5PL6n for ; Thu, 20 Jun 2024 06:50:10 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) (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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4WMQ0mn3z4nWv for ; Thu, 20 Jun 2024 06:50:10 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pl1-x630.google.com with SMTP id d9443c01a7336-1f7274a453bso4290885ad.2 for ; Wed, 19 Jun 2024 23:50:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1718866208; x=1719471008; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=davMuaa45FhSs7BNDU7ps0bFLLd0Fd55CPYTRYM+j7A=; b=MbVC7e22/spS2PZcGBcLAvMrijXTvwS1y5g/B5JeH/1gjqB3sX4Xe2CnR2pH/IOy4q WN8c1cFwOP2TptB2Mlhaoq8N3yNZMp30TQk8gkHsyKQ+obxQT7b/mBb3k+5UElnikbqS WouKXGz6euJAlIcHThGp7bSDFnJkW9ZTzbht/6qCjltA94c8ukMjWQuctMFB9MiYiUfz EQ0eK2fPjYMSqhD8obZTy5TIQ/H+COV1j/RVfhdp2lidwUXoyXmoi3ztcVlI0RreXo5e 0MprYiBCxqzhoAZmeh801hCpxmtjqAz7C0odxogTRUjrhf00qoZjktNakun4gkxNJVdK LAsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718866208; x=1719471008; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=davMuaa45FhSs7BNDU7ps0bFLLd0Fd55CPYTRYM+j7A=; b=FJ+qvWvXCvkXJ8jqJeZrBrtNSsQjOh3vK8r31C7PX/rX1bcHHYqgYg4r+LKh2MER/k 5lu+66aqDDMiVEEBZP8DLEOhibz6TGVGlnHh35W+eoDhTjGHHpMwA9Diaa1WvZqMWjDK JWG0/vENrPMx64lIi7iDcuWDt4fLPoCXlOTWfUsXxuHhk46eNPJr51gXAkW+9VD0FmpE RO9eVitw3BI0VzbTXiQi8F/paIGroyoEHI+nnwNMCYRVlOa8rEL1KGCUoKSNrTSPAQ3O 3pdAKjXM4ESsW+lPIuvvI6oiJYbYVZFmVM1C/E/ixVrYGc5Jz6CWQExsIIE2yWmmUILN 6Y/A== X-Forwarded-Encrypted: i=1; AJvYcCU+UoFURrpFZwV10Y0yqzVi5bkcdYz3gzCB5Swet+W0UbCq7LrHQuXLYP2uGNkW9uqKCBUAIL9+4zETrwPVPQxLLnMb3BFBjHw= X-Gm-Message-State: AOJu0YzvLl/7GWFNd8cpY8ISGkB8jBz2SE9w7rRvfqYbA8Or2/KD8u0k ToFLtPNJ9j9vydLUYzo802BFW27WZ/Me+IOzeFspTbz6oTKY7Pqs+z5sG3vcB+mhZAUcbCP9mFw ZtyuWzoCKLqCBGGlMhLPqKrDrA0FMOOw1F/A15A== X-Google-Smtp-Source: AGHT+IGpNEnegL6bIe3cIF/mYTBFt2dL4pc6gVlHP3Y5jB4Y6V2xMvEp904+s2RNC2hA2pZsVWl+NMaDqzmk0I9r6W0= X-Received: by 2002:a17:90a:34c5:b0:2c2:8a67:96e4 with SMTP id 98e67ed59e1d1-2c7b57ff0d1mr4351553a91.7.1718866208258; Wed, 19 Jun 2024 23:50:08 -0700 (PDT) List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 References: <197A5386-1096-4754-BA82-996140B56EAF@iitbombay.org> In-Reply-To: From: Warner Losh Date: Thu, 20 Jun 2024 00:49:57 -0600 Message-ID: Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries To: Bakul Shah Cc: Konstantin Belousov , "freebsd-arch@freebsd.org" Content-Type: multipart/alternative; boundary="000000000000c29610061b4cb9f3" X-Spamd-Bar: ---- 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:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4W4WMQ0mn3z4nWv --000000000000c29610061b4cb9f3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 20, 2024, 12:40=E2=80=AFAM Bakul Shah wro= te: > On Jun 19, 2024, at 11:10=E2=80=AFPM, Warner Losh wrote: > > > >> > Why are versioned symbols required for qsort.h? >> Look at the qsort_r() stuff in stdlib.h to maintain backward compat >> with previous definition of qsort_r() comparator. >> >> I think that for the purposes of keeping some support for tcc or whateve= r >> not-quite-gcc compiler, we should just avoid doing the backward-compat >> dance, >> if such compiler is detected. >> > > https://reviews.freebsd.org/D45651 is a good, minimal patch to do that. A > more extensive > patch would not define the symver macro for tcc (so any uses we'd catch > right away) and > change the ifndef __TCC__ to ifdef symver. > > > How common is symbol versioning? [Sorry, I've been out of compiler > business for a long time now and haven't kept uptodate on such things] > Relatively. Tcc is an outlier The reason I ask is, there may be other std compliant C compilers that may > not do symbol versioning. While they may supply their own libraries, > programs will still depend on system header files and libraries. In so fa= r > as possible we shouldn't make it hard to user other compilers (such as lc= c, > qbe, icc etc.). Stricter requirements on freebsd provided programs & > libraries is fine but ideally their use by programs compiled with 3rd > party compilers is possible without jumping through hoops... > Yea. We shouldn't. But it's kinda necessary to have the compilers tested all the time to spot regressions. This stuff is fiddly enough with 2 main compiles and 2 that kinda emulate these two... comes a point that you need to say enough unless somebody is really, actively using it, our kinda support becomes the worst of both worlds: a random drag on development that isn't actually useful to anybody. I have been using Warner's patch (thanks for that) where I use tcc but have > to remember to patch cdefs.h every time I do installworld! > Yea. I'd like to get them done and in. Warner > > Bakul > > --000000000000c29610061b4cb9f3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Thu, Jun 20, 2024, 12:40=E2=80=AFAM Bakul Shah <= bakul@iitbombay.org> wrote:
On Jun 19, 2024, at 11:10=E2=80=AFPM, Warner Losh <imp@bsdimp.com> wrote:
How common is symbol versio= ning? [Sorry, I've been out of compiler business for a long time now an= d haven't kept uptodate on such things]
<= /div>

Relatively. Tcc is an ou= tlier

The reason I ask is, there may be other std compliant C comp= ilers that may not do symbol versioning. While they may supply their own li= braries, programs will still depend on system header files and libraries. I= n so far as possible we shouldn't make it hard to user other compilers = (such as lcc, qbe, icc etc.). Stricter requirements on freebsd provided pro= grams & libraries is fine but ideally their use by =C2=A0programs compi= led with 3rd party compilers is possible without jumping through hoops...

Yea. We shouldn't. But it's kinda necessary to have the compi= lers tested all the time to spot regressions. This stuff is fiddly enough w= ith 2 main compiles and 2 that kinda emulate these two...=C2=A0 comes a poi= nt that you need to say enough unless somebody is really, actively using it= , our kinda support becomes the worst of both worlds: a random drag on deve= lopment that isn't actually useful to anybody.
<= br>
I have been usin= g Warner's patch (thanks for that) where I use tcc but have to remember= to patch cdefs.h every time I do installworld!

Yea. I'd like to= get them done and in.

W= arner=C2=A0

Bakul

--000000000000c29610061b4cb9f3-- From nobody Thu Jun 20 07:32:09 2024 X-Original-To: freebsd-arch@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 4W4XJR0kxqz5PPMJ for ; Thu, 20 Jun 2024 07:32:39 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from mx.blih.net (mx.blih.net [212.83.155.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 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 4W4XJQ3H2Qz4rdf for ; Thu, 20 Jun 2024 07:32:38 +0000 (UTC) (envelope-from manu@bidouilliste.com) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bidouilliste.com; s=mx; t=1718868751; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mXT8oWNuHXV+yQEY70v4iXqcaMeTZnz8otBZlmCxQp0=; b=s+uwF9IE779AI/zPiujcKQGHwNZ6hJLC8K6m6vtD1hv02F38c3MhmfALFNaYkEJCoS9Aj6 SCyzrSLGYyKkRYQJbA9op573M2x2Hg2L38BPfuIh1ROFxCBzLPrlofpQMi2BYhh3vEhVuL /QosfbURaDrI3aESViaj+HtQtJqt9rE= Received: from skull.home.blih.net (lfbn-lyo-1-2174-135.w90-66.abo.wanadoo.fr [90.66.97.135]) by mx.blih.net (OpenSMTPD) with ESMTPSA id bf5954e0 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Thu, 20 Jun 2024 07:32:31 +0000 (UTC) Date: Thu, 20 Jun 2024 09:32:09 +0200 From: Emmanuel Vadot To: Roger Marquis Cc: freebsd-arch@freebsd.org Subject: Re: FreeBSD-base update & make delete-old issues Message-Id: <20240620093209.2ee1adf395f5ef72bb386c83@bidouilliste.com> In-Reply-To: <4q1q65ns-n394-4pqs-qq88-185894149031@mx.roble.com> References: <4q1q65ns-n394-4pqs-qq88-185894149031@mx.roble.com> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; amd64-portbld-freebsd15.0) List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spamd-Bar: ---- 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:12876, ipnet:212.83.128.0/19, country:FR] X-Rspamd-Queue-Id: 4W4XJQ3H2Qz4rdf Hi, On Wed, 19 Jun 2024 20:37:36 -0700 (PDT) Roger Marquis wrote: > After upgrading to 14.1 via 'pkg update -r FreeBSD-base' there are 2 > possible issues: > > 1) 'pkg ver' shows both 14.0 and 14.1 packages and no version status Can you show some example ? > 2) cd /usr/src && yes | make delete-old delete-old-libs > ... > /usr/include/c++/v1/__tuple_dir > >>> Old directories removed > To remove old libraries run 'make delete-old-libs'. > sh: cc: not found > make[1]: "/usr/src/share/mk/bsd.compiler.mk" line 200: warning: "cc -v 2>&1 | grep "gcc version"" returned non-zero status > make[1]: "/usr/src/share/mk/bsd.compiler.mk" line 204: Unable to determine compiler type for CC=cc. Consider setting COMPILER_TYPE. > > make[1]: stopped in /usr/src > *** Error code 1 > > Anyone else seeing this? > > Roger > You probably don't have FreeBSD-clang installed as 'cc' isn't found. But you don't need to make delete-old with pkgbase, pkg will remove the files that are no longer part of the packages. You also don't need etcupdate/mergemaster in case that was something that you still use. Cheers, -- Emmanuel Vadot From nobody Thu Jun 20 11:04:40 2024 X-Original-To: freebsd-arch@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 4W4d1j6l3fz5NYZY for ; Thu, 20 Jun 2024 11:05:13 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Received: from mailgate.Leidinger.net (bastille.leidinger.net [89.238.82.207]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature ECDSA (P-256) client-digest SHA256) (Client CN "mailgate.leidinger.net", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4d1j2yMGz4FqT for ; Thu, 20 Jun 2024 11:05:13 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Authentication-Results: mx1.freebsd.org; none List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leidinger.net; s=outgoing-alex; t=1718881499; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wvOgMppuCDI8G+1/Fimflv3dc4W5D99rWWquhJlITPU=; b=kB6bgrcmsK5jmAg9GzdTRbNih3l9j0wHrHrqRy2dsZhpVT0pEVR65hgxjXkhYtYfiykjU/ ZswMITueL34s8GfMpd/2DwMJLSnhZcN3f0vckunHmO8hVZyH7joBBjQAuyZUhXjRLFalTf 7OdMPj9QWXgIr6W/Ei//0YlGzLLoWAjT4Z512eaJvrzhihgCFaY3Do+fnQ6ZmY/K+0ygu8 VCpzT/f/aPzRkJJnYNbjoFXvmrNW/97kZunG37QL0bConaRbEUPO724rjGDlfGKsod81T5 AwrdR2tE1FhhrdHmdWFW39pQh1xx0Tpi1hRtR4a2SZjMh1aK+3MF2ph6v8tg4w== Date: Thu, 20 Jun 2024 13:04:40 +0200 From: Alexander Leidinger To: Warner Losh Cc: freebsd-arch@freebsd.org Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries In-Reply-To: References: Message-ID: Organization: No organization, this is a private message. Content-Type: multipart/signed; protocol="application/pgp-signature"; boundary="=_cce6ace39ac330f11263c8a2aa52701f"; micalg=pgp-sha256 X-Spamd-Bar: ---- 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:34240, ipnet:89.238.64.0/18, country:DE] X-Rspamd-Queue-Id: 4W4d1j2yMGz4FqT This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --=_cce6ace39ac330f11263c8a2aa52701f Content-Type: multipart/alternative; boundary="=_6155a0bc27e900ceb9f51cccbb5fb973" --=_6155a0bc27e900ceb9f51cccbb5fb973 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed Am 2024-06-20 03:01, schrieb Warner Losh: > ICC used to be supported, but unless someone turns up with patches for > the latest icc, it will remain supported only to the extent it pretends > to be gcc. I've had reports that it works, to this extent and nothing > special is needed to build FreeBSD binaries. There are a couple of > touch ups required to build FreeBSD itself with icc I'm told, but I've > not seen patches and have little desire to chase this windmill. As the one who introduced the ICC parts into cdefs.h: no objections from my side. This gained not as much traction than I thought it could have gotten. I'm not aware that apart from a handful of enthusiasts someone had a look at it. I'm surprised that someone still looks into compiling FreeBSD with icc, and that you have reports about it. We don't have a port of any recent icc (we could probably set an expiration date on the old ones). Bye, Alexander. -- http://www.Leidinger.net Alexander@Leidinger.net: PGP 0x8F31830F9F2772BF http://www.FreeBSD.org netchild@FreeBSD.org : PGP 0x8F31830F9F2772BF --=_6155a0bc27e900ceb9f51cccbb5fb973 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=UTF-8

Am 2024-06-20 03:01, schrieb Warner Losh:

 
ICC used to be supported, but unless someone turns up with patches for= the latest icc, it will remain supported only to the extent it pretends to= be gcc. I've had reports that it works, to this extent and nothing special= is needed to build FreeBSD binaries. There are a couple of touch ups requi= red to build FreeBSD itself with icc I'm told, but I've not seen patches an= d have little desire to chase this windmill.
 

As the one who introduced the ICC parts into cdefs.h: no objections from= my side. This gained not as much traction than I thought it could have got= ten. I'm not aware that apart from a handful of enthusiasts someone had a l= ook at it.

I'm surprised that someone still looks into compiling FreeBSD with icc, = and that you have reports about it. We don't have a port of any recent icc = (we could probably set an expiration date on the old ones).

Bye,
Alexander.

--
--=_6155a0bc27e900ceb9f51cccbb5fb973-- --=_cce6ace39ac330f11263c8a2aa52701f Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc; size=833 Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEER9UlYXp1PSd08nWXEg2wmwP42IYFAmZ0DNcACgkQEg2wmwP4 2IZ+ZhAAnp3wSeBgRHYNpjgo7bBpaK4Hm2NLjVjKyI8zAMHUKyRiNZTfkGY8OC0Y AazaV4VwYF9eUgwuI1ot4C4x2ilKAguZjBGoONVOIGxwgfG/33l9fLdqEEVugO+C Z0TrxeMIYtSZtvLytTyshrsP9k8Pqp5BaUq0Nlf0QaQLhp8N6K8UvM9yMGT1dmYa GrhzJ4Ce4mSLhUlZZ532Xnq8WAz4kVwPErKb8tXhn0V3JWmX+1MsVkNKL59Cvigs aYXrGQwSHo60MZZUCzoyyLbYsIqliDFZvFo1jn18TdNZd1Jg0TsJetbFqo0h7p4k f8apqT6Oni459DOkrGhRh0R0voeiBfTxo5V08Dbyi82ZpUqm6j2spCDNAQAEYfDI R9F+aot2rEEc1ebxh90EZ8x5DPU0SRSAccvVXv63Y6AU07Sy83cYzMWRXSUo1L1i 997Qh3UT7RiUZWgIOSqu6wIjsxzRchPvJkIi2YnvWZ2D+mdJqEyXsTNER5CoRbjg 7keMFUtKxqlHxdNgTuMtJ0erK/qfWrJFjS46FATsVy+4UwxMn1KKbnsyNfKy2+Ql MM74W8V3pSK8hLLuh/c7diACkrGx3QdLDLGxB95clC2A1lvU1WO32VzOyyvn14Ta I/w/U4LAe5PySGDJ/4FfENTi5t/x2FMp5iAclAOwC4bCBsfSI5o= =FWvU -----END PGP SIGNATURE----- --=_cce6ace39ac330f11263c8a2aa52701f-- From nobody Thu Jun 20 11:13:02 2024 X-Original-To: freebsd-arch@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 4W4dBx5BK4z5NZ4r for ; Thu, 20 Jun 2024 11:13:13 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4dBx2tKMz4GrX; Thu, 20 Jun 2024 11:13:13 +0000 (UTC) (envelope-from dim@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1718881993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=aPNQp4+NwMa9Ducjurl6UAywtTRv32RnmLqcEOnzDCs=; b=fAleDkpH5YtpUX/HwYcQUFd503pqxQV8oYV9nWjL8Pqmv1jySa785FyFdCN4yroZKEjYTR ybCWituqbaNUyvv8D55xgJkUxNSqLy70xy+j2J9i/bDT2lNvH6j7ueiAkq++3KwaNqiKET Px7eaBNx12Jgiec43x9R7jT/k347MMO9RKTTLfdxRBGJDSWWv/Jdorh+uRYNws+Whk80T1 Ovu8eJXlRwFnpw9ZXePKYuz1JL/Ntw0rNWEQtTJ6Fb9ExSAuhJn7bdDrmZ72nice2WmFHd P/1n2JUo/EO+HmFYibmCyylHSWEhmBYAumXIHlXjLyrBn9rIrroBEQjD8dhSnw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1718881993; a=rsa-sha256; cv=none; b=Ev1Wd5QxILoC9Y/f1VIIv3C03Fa2hRKqYgo4IdYymT1cj1pXLwJ9KeWp4ISHxgWcuyXwLR nzL/4H7eALsnAuPM/fG4awpd/TENdlW3NGvXgtHkIjczJL18R1OCbFsD3gp6CqsGNaE+Ul g5kXnaOLnEoFUleD1tW01I8TeeyUJIaaEPY4Syq84XG4XUQh3MIESxaNYiZQBan+XukON7 kVXs0dVQ4iwvVhijpJvY92SdxJNPuBFUezqPjHUVv78x9YTk/RrrwCflD/vmlFtwPCTjzU GJ1u//g9Hy05l4PCK58UEC2gEL/r5x5DiBFv3ptxzV9NRFSR+LNrdWgrqbesKA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1718881993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=aPNQp4+NwMa9Ducjurl6UAywtTRv32RnmLqcEOnzDCs=; b=aiBYEWlGiXCG7FS26UrZevWKQALHImua6dqrNN01erf77iMD5te8PkLRp0J/VpGwX5Q2bD aBqxmLF2dp0IgPZMBtK/7a/Bxx8y26fCGs3XueVxkrhQj6MoE++AtTCS28O5ziTVmfj+P5 z2FvHDbLPsbpossztzVLLyhcas2XJSYt0QI9PLUMJUjSDmneE2X1RjHHxEa5RMSilNcdbp zd8yyoF5e4Leu3N+qm8+Tuf1ojeC3+AqG7JLi91CTGOO+c6qvuLYvITICeTbkTz9u2acJN PSgxW1jFHG5FBizMva5tl1gKeEELf66qncJoV2ACYHcLuXF/ZWdiZSYXVYB14g== Received: from tensor.andric.com (tensor.andric.com [87.251.56.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "tensor.andric.com", Issuer "R11" (verified OK)) (Authenticated sender: dim) by smtp.freebsd.org (Postfix) with ESMTPSA id 4W4dBw2mKvz145j; Thu, 20 Jun 2024 11:13:12 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from smtpclient.apple (longrow.home.andric.com [192.168.0.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id B98EA5C9C4; Thu, 20 Jun 2024 13:13:10 +0200 (CEST) Content-Type: multipart/signed; boundary="Apple-Mail=_BB325E6F-074A-4D84-AA16-2BDA510E3F71"; protocol="application/pgp-signature"; micalg=pgp-sha1 List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6.1.1\)) Subject: Re: Minimum gcc and clang supported to generate FreeBSD binaries From: Dimitry Andric In-Reply-To: Date: Thu, 20 Jun 2024 13:13:02 +0200 Cc: Warner Losh , freebsd-arch Message-Id: <19D940A4-0352-455D-8760-865784601A1A@FreeBSD.org> References: To: Alexander Leidinger X-Mailer: Apple Mail (2.3731.700.6.1.1) --Apple-Mail=_BB325E6F-074A-4D84-AA16-2BDA510E3F71 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 20 Jun 2024, at 13:04, Alexander Leidinger = wrote: >=20 > Am 2024-06-20 03:01, schrieb Warner Losh: >> ICC used to be supported, but unless someone turns up with patches = for the latest icc, it will remain supported only to the extent it = pretends to be gcc. I've had reports that it works, to this extent and = nothing special is needed to build FreeBSD binaries. There are a couple = of touch ups required to build FreeBSD itself with icc I'm told, but = I've not seen patches and have little desire to chase this windmill. >>=20 > As the one who introduced the ICC parts into cdefs.h: no objections = from my side. This gained not as much traction than I thought it could = have gotten. I'm not aware that apart from a handful of enthusiasts = someone had a look at it. > I'm surprised that someone still looks into compiling FreeBSD with = icc, and that you have reports about it. We don't have a port of any = recent icc (we could probably set an expiration date on the old ones). icc still nominally exists, but it's been subsumed by Intel's "oneAPI" = blob, as part of the "Intel System Studio": = https://www.intel.com/content/www/us/en/developer/articles/tool/intel-syst= em-studio-download-and-install-intel-c-compiler.html I have stopped attempting to follow Intel's software marketing strategy = on this front. It is all a huge pile of quicksand. :-) -Dimitry --Apple-Mail=_BB325E6F-074A-4D84-AA16-2BDA510E3F71 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.2 iF0EARECAB0WIQR6tGLSzjX8bUI5T82wXqMKLiCWowUCZnQOvgAKCRCwXqMKLiCW o5EbAJ9ENbcOwq3oYzaJ75kR7GwM5O4mIgCffztoRphMG0aoiACUCg7TbgQNCwA= =Y3WU -----END PGP SIGNATURE----- --Apple-Mail=_BB325E6F-074A-4D84-AA16-2BDA510E3F71-- From nobody Thu Jun 20 12:48:27 2024 X-Original-To: freebsd-arch@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 4W4gJv2zmYz5Nk35 for ; Thu, 20 Jun 2024 12:48:31 +0000 (UTC) (envelope-from marquis@roble.com) Received: from mx5.roble.com (mx5.roble.com [209.237.23.5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mx5.roble.com", Issuer "mx5.roble.com" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W4gJv0FT4z4Qsj for ; Thu, 20 Jun 2024 12:48:30 +0000 (UTC) (envelope-from marquis@roble.com) Authentication-Results: mx1.freebsd.org; none Received: from roble.com (roble.com [209.237.23.50]) by mx5.roble.com (Postfix) with ESMTP id BB0B32913DF; Thu, 20 Jun 2024 05:48:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=roble.com; s=rs060402; t=1718887708; bh=mRtrahMfKsUN96G3biAi8e89sPfTXR7PCQbbN82Wxtg=; h=Date:From:To:cc:Subject:In-Reply-To:References; b=O1bLyaBGqM9v1TLQGILRzKsEBeUMjn8VnnLpALRpw528FLX2aFFmulTpwh5fSJnh3 hg4QY/hiLJp+Sf7hPIqIKOXYg449wHB+nrVsL+sQViOADZ8OptZZrj761lxDfzbh1c jp3lGP0cqGwxWJTfC8r9AtiFkELxDShBDWQsWKzI= Date: Thu, 20 Jun 2024 05:48:27 -0700 (PDT) From: Roger Marquis To: Emmanuel Vadot cc: freebsd-arch@freebsd.org Subject: Re: FreeBSD-base update & make delete-old issues In-Reply-To: <20240620093209.2ee1adf395f5ef72bb386c83@bidouilliste.com> Message-ID: <16026629-1rn2-1os4-6q30-8616q8pp1q86@mx.roble.com> References: <4q1q65ns-n394-4pqs-qq88-185894149031@mx.roble.com> <20240620093209.2ee1adf395f5ef72bb386c83@bidouilliste.com> List-Id: Discussion related to FreeBSD architecture List-Archive: https://lists.freebsd.org/archives/freebsd-arch List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arch@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed X-Spamd-Bar: ---- 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:17403, ipnet:209.237.0.0/18, country:US] X-Rspamd-Queue-Id: 4W4gJv0FT4z4Qsj On Thu, 20 Jun 2024, Emmanuel Vadot wrote: >> 1) 'pkg ver' shows both 14.0 and 14.1 packages and no version status > > Can you show some example ? # pkg ver FreeBSD-acct-14.0p4 ? FreeBSD-acct-dbg-14.0p4 ? FreeBSD-acpi-14.0p4 ? FreeBSD-acpi-dbg-14.0p4 ? FreeBSD-apm-14.0p4 ? FreeBSD-apm-dbg-14.0p4 ? FreeBSD-at-14.0p4 ? FreeBSD-at-dbg-14.0p4 ? FreeBSD-autofs-14.0p4 ? FreeBSD-autofs-dbg-14.0p4 ? ... >> 2) cd /usr/src && yes | make delete-old delete-old-libs >> ... >> *** Error code 1 > > You probably don't have FreeBSD-clang installed as 'cc' isn't found. > But you don't need to make delete-old with pkgbase, pkg will remove the > files that are no longer part of the packages. You also don't need > etcupdate/mergemaster in case that was something that you still use. Do you mean the non-base version of clang? In either case this does not seem to be documented (anywhere under /usr/src at least) and should be considered a bug in the top-level Makefile targets. Roger