From patchwork Wed Nov 30 11:30:08 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthias Klose X-Patchwork-Id: 85005 Delivered-To: patch@linaro.org Received: by 10.182.112.6 with SMTP id im6csp234569obb; Wed, 30 Nov 2016 03:30:49 -0800 (PST) X-Received: by 10.98.13.130 with SMTP id 2mr33135301pfn.185.1480505449674; Wed, 30 Nov 2016 03:30:49 -0800 (PST) Return-Path: Received: from sourceware.org (server1.sourceware.org. [209.132.180.131]) by mx.google.com with ESMTPS id r11si63959189pfk.40.2016.11.30.03.30.49 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 30 Nov 2016 03:30:49 -0800 (PST) Received-SPF: pass (google.com: domain of gcc-patches-return-443026-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) client-ip=209.132.180.131; Authentication-Results: mx.google.com; dkim=pass header.i=@gcc.gnu.org; spf=pass (google.com: domain of gcc-patches-return-443026-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-443026-patch=linaro.org@gcc.gnu.org DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :subject:to:references:cc:from:message-id:date:mime-version :in-reply-to:content-type; q=dns; s=default; b=mekbRX6pEnGOi8GCR 8mXA24Vx5iCa2sMvsP5+Uhk1US6ycy8L22JbSE6nv5QEe8wIHtQfyvNF50r0UAGP H8QkaWN2kM9KhGwsfxfbdoh7ovcvsl+agPuJrI7fMAjOsiDdnZBI0OpcNmXr5PF5 0cYRfHv6gmhFNTpN2nLZx/oU38= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :subject:to:references:cc:from:message-id:date:mime-version :in-reply-to:content-type; s=default; bh=Ycq5rq1e4BaieCuacI6dvKo 9X0Q=; b=y7pNO/kED4Ru5JzSDErvV+gdfDSH/dzVEVp9Ra6sqGrtc95Pbxu60wZ C3j1/WeX/MRqTDKHffcyXnnGHgc/uhqIm2J83WsXtsmfydqp/FvyGx1a397uPgGj aXEJmMLvffoXpCps/yhgvHVb9UAG1TVbHYugcFZLTiGn6gLNb/Bk= Received: (qmail 127006 invoked by alias); 30 Nov 2016 11:30:37 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 126351 invoked by uid 89); 30 Nov 2016 11:30:25 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.5 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.2 spammy=2259, choke, dash, Hx-languages-length:3352 X-HELO: einhorn.in-berlin.de Received: from einhorn.in-berlin.de (HELO einhorn.in-berlin.de) (192.109.42.8) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 30 Nov 2016 11:30:15 +0000 X-Envelope-From: doko@ubuntu.com Received: from [192.168.178.26] (ip5f5af460.dynamic.kabel-deutschland.de [95.90.244.96]) (authenticated bits=0) by einhorn.in-berlin.de (8.14.4/8.14.4/Debian-8+deb8u1) with ESMTP id uAUBU8CN027639 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 30 Nov 2016 12:30:08 +0100 Subject: Re: [patch] boehm-gc removal and libobjc changes to build with an external bdw-gc To: Jakub Jelinek , Richard Biener References: <98216026-e0e2-f253-0346-94071d7dc5c7@ubuntu.com> <20161130105256.GO3541@tucnak.redhat.com> Cc: Andreas Schwab , GCC Patches , Andrew Pinski , Nicola Pero , Jeff Law From: Matthias Klose Message-ID: <44251aa7-23b7-3e30-55fc-8c940d51ed23@ubuntu.com> Date: Wed, 30 Nov 2016 12:30:08 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <20161130105256.GO3541@tucnak.redhat.com> On 30.11.2016 11:52, Jakub Jelinek wrote: > On Wed, Nov 30, 2016 at 11:17:32AM +0100, Richard Biener wrote: >> On Wed, Nov 30, 2016 at 11:06 AM, Matthias Klose wrote: >>> On 30.11.2016 09:29, Andreas Schwab wrote: >>>> configure: error: no --with-target-bdw-gc options and no bdw-gc pkg-config module found >>>> make[1]: *** [Makefile:19775: configure-target-libobjc] Error 1 >>>> >>>> Andreas. >>> >>> that's a bit terse. Could you send the complete output for the configuration of >>> the libobjc subdir and the config.log? >>> >>> I assume that is a configuration with --enable-objc-gc and then the pkg-config >>> module cannot be found. Are gc/gc.h and libgc.so in standard paths without >>> having the bdw-gc pkg-config module available? Which libgc version is installed? >> >> I see the same failure with just >> >> ../configure --enable-languages=objc >> >> usually we disable languages (with a diagnostic) if requirements >> cannot be fulfilled. >> >> But it seems the default chosen is bad somehow... (and breaks my bootstraps with >> default languages). > > I'm now testing the default (no --enable-objc-gc, --enable-objc-gc=*, > --disable-objc-gc) with. Ok for trunk if it succeeds? > > 2016-11-30 Jakub Jelinek > > * configure.ac (--enable-objc-gc): If not given, default to > enable_objc_gc=no. > * configure: Regenerated. > > --- libobjc/configure.ac.jj 2016-11-30 08:57:26.000000000 +0100 > +++ libobjc/configure.ac 2016-11-30 11:47:33.085828683 +0100 > @@ -203,7 +203,7 @@ gt_BITFIELD_TYPE_MATTERS > AC_ARG_ENABLE(objc-gc, > [AS_HELP_STRING([--enable-objc-gc], > [enable use of Boehm's garbage collector with the > - GNU Objective-C runtime])]) > + GNU Objective-C runtime])],,enable_objc_gc=no) > AC_ARG_WITH([target-bdw-gc], > [AS_HELP_STRING([--with-target-bdw-gc=PATHLIST], > [specify prefix directory for installed bdw-gc package. > --- libobjc/configure.jj 2016-11-30 08:57:26.000000000 +0100 > +++ libobjc/configure 2016-11-30 11:47:44.720680375 +0100 > @@ -11509,6 +11509,8 @@ $as_echo "#define HAVE_BITFIELD_TYPE_MAT > # Check whether --enable-objc-gc was given. > if test "${enable_objc_gc+set}" = set; then : > enableval=$enable_objc_gc; > +else > + enable_objc_gc=no > fi There's one more fix needed for the case of only having the pkg-config module installed when configuring with --enable-objc-gc. We can't use PKG_CHECK_MODULES directly because the pkg.m4 macros choke on the dash in the module name. Thus setting the CFLAGS and LIBS directly. Ok to install? * configure.ac: Set BDW_GC_CFLAGS and BDW_GC_LIBS after checking for the existence of the pkg-config modules. * Regenerate. --- libobjc/configure.ac (Revision 243006) +++ libobjc/configure.ac (Arbeitskopie) @@ -225,7 +225,9 @@ if test "x$with_target_bdw_gc$with_target_bdw_gc_include$with_target_bdw_gc_lib" = x; then dnl no bdw-gw options, fall back to the bdw-gc pkg-config module PKG_CHECK_EXISTS(bdw-gc, - AC_MSG_RESULT([using bdw-gc pkg-config module]), + [AC_MSG_RESULT([using bdw-gc pkg-config module]) + BDW_GC_CFLAGS=`$PKG_CONFIG --cflags bdw-gc` + BDW_GC_LIBS=`$PKG_CONFIG --libs bdw-gc`], AC_MSG_ERROR([no --with-target-bdw-gc options and no bdw-gc pkg-config module found])) else dnl bdw-gw options passed by configure flags