From owner-freebsd-current@freebsd.org Mon Jan 15 17:09:03 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC7FDEBB91F; Mon, 15 Jan 2018 17:09:03 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (xvm-110-62.dc2.ghst.net [46.226.110.62]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "theravensnest.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 71AA381F6E; Mon, 15 Jan 2018 17:09:02 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from c124.sec.cl.cam.ac.uk (c124.sec.cl.cam.ac.uk [128.232.18.124]) (authenticated bits=0) by theravensnest.org (8.15.2/8.15.2) with ESMTPSA id w0FH8x7k063002 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 15 Jan 2018 17:08:59 GMT (envelope-from theraven@FreeBSD.org) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Re: atomic in i386 Current after CLANG 6 upgrade From: David Chisnall In-Reply-To: Date: Mon, 15 Jan 2018 17:08:58 +0000 Cc: Tijl Coosemans , Luca Pizzamiglio , FreeBSD Current , freebsd-ports@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <03DDFE7A-B5FE-4DE5-98D8-AF28EFDDFACF@FreeBSD.org> References: <20180115125756.37b803ba@kalimero.tijl.coosemans.org> To: Jan Beich , Ed Maste X-Mailer: Apple Mail (2.3273) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Jan 2018 17:09:04 -0000 On 15 Jan 2018, at 17:00, Jan Beich wrote: >=20 > It wouldn't help (see below). Clang 6 accidentally made __atomic* work > enough to satisfy configure check but not for the port to build. I = guess, > it also confuses configure in net/librdkafka and net-mgmt/netdata. >=20 Can we (by which I probably mean emaste@) push out an EN that adds the = atomic.c from compiler-rt to our libgcc_s? That should provide all of = these helper functions. Clang assumes that they exist because both = compiler-rt and vaguely recent libgcc_s provide them. Recent GCC will = also assume that they exist and so the correct fix is probably for us to = make them to exist. If this is difficult, then we can perhaps provide a port that compiles = atomic.c into libatomic_fudge.so or similar and provides a libgcc_s.so = that=E2=80=99s a linker script that forces linking to libatomic_fudge.so = and libgcc_s.so. David