From owner-freebsd-toolchain@freebsd.org Sun Nov 15 21:58:40 2015 Return-Path: Delivered-To: freebsd-toolchain@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 72A2BA2FDC0 for ; Sun, 15 Nov 2015 21:58:40 +0000 (UTC) (envelope-from wam@hiwaay.net) Received: from fly.hiwaay.net (fly.hiwaay.net [216.180.54.1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3FE9C1C80 for ; Sun, 15 Nov 2015 21:58:40 +0000 (UTC) (envelope-from wam@hiwaay.net) Received: from kabini1.local (dynamic-216-186-213-32.knology.net [216.186.213.32] (may be forged)) (authenticated bits=0) by fly.hiwaay.net (8.13.8/8.13.8/fly) with ESMTP id tAFLwbnJ014271 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO) for ; Sun, 15 Nov 2015 15:58:38 -0600 Subject: Re: [toolchain] amd64-gcc question References: <56449EF8.7070806@hiwaay.net> To: freebsd-toolchain@freebsd.org From: "William A. Mahaffey III" Message-ID: <5649000D.70704@hiwaay.net> Date: Sun, 15 Nov 2015 16:04:07 -0553.75 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Nov 2015 21:58:40 -0000 On 11/15/15 13:58, Gerald Pfeifer wrote: > On Thu, 12 Nov 2015, William A. Mahaffey III wrote: >> I pkg-installed amd64-gcc over the weekend hoping for Graphite >> (auto-loop parallelization) support, but no go. > When you say "amd64-gcc" where did you obtain that from? As a > FreeBSD port/package, or somewhere else? I pkg-installed it originally, but as of last Monday, there was a port as well, I did a 'portsnap fetch update' (all box-stock ports configs) & there it was .... > >> just did a 'portsnap fetch upgrade' & there is now a port >> for amd64-gcc, but it includes no files & no pkg-descr file. > This is a little weird. I have packaged GCC 4.6 (lang/gcc46), > GCC 4.7 (lang/gcc47), GCC 4.8 (lang/gcc48), GCC 4.9 (lang/gcc49), > GCC 5 (lang/gcc5 and lang/gcc5-devel) and GCC 6 snapshot (lang/gcc6-devel) > as well as the "canonical" version of GCC (lang/gcc, currently > GCC 4.8 and in the process of being moved to GCC 4.9). > > All of these build and package on amd64, feature pkg-descr, etc. > And as a FreeBSD user leveraging the official FreeBSD Ports Collection > is the recommended approach. > > None of them would be called amd64-gcc or similar, though. amd64-gcc-5.2.0 amd64-xtoolchain-gcc-0.1 is what pkg calls them .... > >> I have gotten as far as running 'make showconfig' in the various gcc* & >> amd64-gcc directories to see what info I could get on default config >> options. In all cases they gave options & said to run 'make config' to >> change options. I didn't even see a 'config:' entry in the Makefiles >> (probably included from elsewhere, but I didn't chase it). > Let's focus on lang/gcc5-devel, which is the most reasonable version > to enable Graphite for right now since GCC 5 is the current release > series and hence most stable, but also advanced, and the -devel port > is more suitable for making changes like this than the "production" > variant. > > And indeed lang/gcc5-devel/Makefile already had the following lines, > which is how options handling actually works: > > OPTIONS_DEFINE= BOOTSTRAP > OPTIONS_DEFINE_i386= JAVA > OPTIONS_DEFINE_amd64= JAVA > OPTIONS_DEFAULT= BOOTSTRAP > OPTIONS_DEFAULT_i386= JAVA > OPTIONS_DEFAULT_amd64= JAVA > >> I see no configure files for any of the gcc ports (I have the entire >> ports tree downloaded & local, & freshly updated as of a few min. ago). >> What is the canonical/BPP (FreeBSD 9.3R) way of recompiling a port with >> different config flags ? >> >> I did find ports/pkgs for the 2 main components apparently needed for >> Graphite support (cloog & ppl) & pkg-installed them over the weekend, >> so I am ready to go on that front. > If you check out the GCC release notes at > https://gcc.gnu.org/gcc-5/changes.html > you will find that "The Graphite framework for loop optimizations no > longer requires the CLooG library, only ISL version 0.14 (recommended) > or 0.12.2." > > I just committed changes to lang/gcc6-devel and lang/gcc5-devel to > add support for Graphite with a new option GRAPHITE. This is off > by default, but you can enable it, rebuild the port, and then have > what you've been looking for. > > Gerald *Excellent*, thanks muchly :-). I'll buy you a beer next time we meet ;-) .... -- William A. Mahaffey III ---------------------------------------------------------------------- "The M1 Garand is without doubt the finest implement of war ever devised by man." -- Gen. George S. Patton Jr.