From owner-freebsd-ports@freebsd.org Mon Apr 17 02:01:27 2017 Return-Path: Delivered-To: freebsd-ports@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 0B658D2AE09; Mon, 17 Apr 2017 02:01:27 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-io0-x241.google.com (mail-io0-x241.google.com [IPv6:2607:f8b0:4001:c06::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C80BB7DE; Mon, 17 Apr 2017 02:01:26 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by mail-io0-x241.google.com with SMTP id k87so24159016ioi.0; Sun, 16 Apr 2017 19:01:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=MjedlHMZW6riZ6DQlCkok/KJDGfUG15mJ2CqB4VfFjY=; b=Uo7avW6YQQ63Vm1Zrt/N73k2SgXBp4iurF40owMe+GXb+Z8P1iTqvyC9BCtHrALC9x /bX0J2tXyYJCC4vNHd0j1G1IXpLCrmPi/7lFzcA9i8Xk+lUXJnpTU15awtUBWNS2zVX8 ACThSTIawzg7pBJ/wF9UYPQx/EUpBdSd3hdCseAFxcZgZFOwLbbfy6iNx2qnBzgkdXFC CnzynLVzZBp5gTUYvXyDLviet71z6W/dxmCT3JjjBlysnxr0TnL+3MoRVTHzRAlDDGKa 7n4OHHFYAI+Y5UxcjwUbQqAa61jNA3CGb1BdiLYGTbg//OXRzCs0Fvv0Ph8zTZqAZcMG xCXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=MjedlHMZW6riZ6DQlCkok/KJDGfUG15mJ2CqB4VfFjY=; b=AKEf91ProW7z2Gj08OKo01/Yw1GXpizHdXHzrqbULtFHLtxp7wlbQM2xlft34Mz4Kg UVec8jth/LLrjnJq+h9T3C32Xfeij8ZleLDhv9xO8f25Afw+S8bbCCCzAkKGNphj3V3Y TM8/mD9xBByFrZvZ/SmpE1Vr+YfypJ2PSDtiPIdh+3RWA9IVH8xxHeoBullTNh2IYyRr bZQM/SwcAu2Rchc1JDp2FRbuPw5pu2SHa60fbSQn4HecAzIj34nzZm2V+ngSEe3GcYtS 8SvFVM4AFIMlmCrjr0+N2i3vr0szmYqPM6JteW1Ilh3kBIL9LXdOHHCeC/MK+BbfTOId myCw== X-Gm-Message-State: AN3rC/5L3wm7Q6BQ0bgYJGN2+7snsPkvwG+CwKSsmrZ0v4edmmRnU8WN 2z2/FgtpUUzvepRYaE7KY+5Tyy03D87j5Aw= X-Received: by 10.36.80.213 with SMTP id m204mr7758562itb.105.1492394486085; Sun, 16 Apr 2017 19:01:26 -0700 (PDT) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.107.30.209 with HTTP; Sun, 16 Apr 2017 19:01:05 -0700 (PDT) In-Reply-To: <37CB2849-A509-4C1D-AB93-A1FBFF70E959@dsl-only.net> References: <37CB2849-A509-4C1D-AB93-A1FBFF70E959@dsl-only.net> From: Ed Maste Date: Sun, 16 Apr 2017 22:01:05 -0400 X-Google-Sender-Auth: FH9gQrnc_95BzAhSkcjz73sNXPM Message-ID: Subject: Re: FYI: amd64 built with WITH_LLD_IS_LD= vs. devel/libunwind : cannot preempt symbol (for various symbols) To: Mark Millard Cc: FreeBSD Toolchain , FreeBSD Current , FreeBSD Ports Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Apr 2017 02:01:27 -0000 On 16 April 2017 at 04:10, Mark Millard wrote: > Context: amd64 FreeBSD -r316952 as a VirtualBox guest > that was built using WITH_LLD_IS_LD= . ports -r438577. > > x11/xorg-minimal indirectly gets to devel/libunwind and > devel/libunwind fails to build from source: > > > --- Lperf-simple --- > libtool: link: cc -O2 -pipe -g -fstack-protector -fno-strict-aliasing -fexceptions -Wall -Wsign-compare -fstack-protector -o .libs/Lperf-simple Lperf-simple.o ../src/.libs/libunwind.so -lgcc -llzma -Wl,-rpath -Wl,/usr/local/lib > /usr/bin/ld: error: ./Gperf-simple.c:195: cannot preempt symbol '_ULx86_64_init_local' defined in ../src/.libs/libunwind.so The LLD ports exp-run identified the "cannot preempt symbol" issue as being responsible for the largest number of failed or skipped ports. You can find a description of the issue in LLVM PR 30960 (https://bugs.llvm.org//show_bug.cgi?id=30960). This is a tricky issue, and one for which there's not a clear right answer, but is arguably a problem that needs to be addressed in the individual pieces of software (libunwind, openal-soft, etc.) As a temporary workaround you can add CFLAGS+= -fPIC to the port's Makefile, as in https://github.com/emaste/freebsd-ports/commit/4857444b31ca546e29e221dce2a41092765e6062