From owner-freebsd-fortran@freebsd.org Mon Feb 22 09:06:10 2016 Return-Path: Delivered-To: freebsd-fortran@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 ED7DBAAF277 for ; Mon, 22 Feb 2016 09:06:09 +0000 (UTC) (envelope-from tijl@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id D34E4175A for ; Mon, 22 Feb 2016 09:06:09 +0000 (UTC) (envelope-from tijl@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id CFB32AAF275; Mon, 22 Feb 2016 09:06:09 +0000 (UTC) Delivered-To: fortran@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 CF247AAF274; Mon, 22 Feb 2016 09:06:09 +0000 (UTC) (envelope-from tijl@freebsd.org) Received: from mailrelay116.isp.belgacom.be (mailrelay116.isp.belgacom.be [195.238.20.143]) (using TLSv1.2 with cipher RC4-SHA (128/128 bits)) (Client CN "relay.skynet.be", Issuer "GlobalSign Organization Validation CA - SHA256 - G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B2AE01759; Mon, 22 Feb 2016 09:06:08 +0000 (UTC) (envelope-from tijl@freebsd.org) X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2DbAgAHzspW/yiK8VFeDoMsUm26VAENgWghhWwCgTM5FAEBAQEBAQFkJ4RBAQEBAwE6HCMQCw4KCSUPKh4GE4gSDAq2LQEBAQEBAQEDAQEBAQEBGopNiG8FlweFV4d+aH1Kg3mIVI5JHgEBQoMpPDsuiDABAQE Received: from 40.138-241-81.adsl-dyn.isp.belgacom.be (HELO kalimero.tijl.coosemans.org) ([81.241.138.40]) by relay.skynet.be with ESMTP; 22 Feb 2016 10:01:51 +0100 Received: from kalimero.tijl.coosemans.org (kalimero.tijl.coosemans.org [127.0.0.1]) by kalimero.tijl.coosemans.org (8.15.2/8.15.2) with ESMTP id u1M91nGC091834; Mon, 22 Feb 2016 10:01:50 +0100 (CET) (envelope-from tijl@FreeBSD.org) Date: Mon, 22 Feb 2016 10:01:49 +0100 From: Tijl Coosemans To: Anton Shterenlikht Cc: thierry@FreeBSD.org, fortran@freebsd.org, freebsd-ports@freebsd.org, theraven@FreeBSD.org Subject: Re: help make port for opencoarrays Message-ID: <20160222100149.05fbca90@kalimero.tijl.coosemans.org> In-Reply-To: <201602212151.u1LLpRBB085896@mech-as222.men.bris.ac.uk> References: <20160221164250.GC2122@graf.pompo.net> <201602212151.u1LLpRBB085896@mech-as222.men.bris.ac.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-fortran@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Fortran on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Feb 2016 09:06:10 -0000 On Sun, 21 Feb 2016 13:51:28 -0800 (PST) Anton Shterenlikht wrote: > From thierry@pompo.net Sun Feb 21 17:36:47 2016 >> Le mer 17 f_v 16 _ 23:50:37 +0100, Anton Shterenlikht >> _crivait_: >>> Please help/advise >>> >>> https://github.com/sourceryinstitute/opencoarrays >>> >>> It requires mpich built with at least gcc5.3, >>> more specifically mpif90 built with gcc5.3 or gcc6. >>> net/mpich has FORTRAN_USES=fortran, which I understand >>> triggers lang/gcc. >>> >>> Is it a good idea (or at all possible) to add >>> an option to net/mpich to choose a particular >>> gcc version? >>> >>> Any other advice? >> >> ATM Fortran in FreeBSD is in a very bad shape, and, as you know, we >> encounter difficulties with several ports (french/aster, cad/salome, >> etc.) caused by a mix between clang and Gcc, and thus libstdc++ / >> libc++. I think Fortran is fine. It's C++ that's in a bad shape. I think the lang/gcc* ports need to be modified so libstdc++ sits on top of libcxxrt instead of libsupc++. Maybe David can say more about that (CCed). >> If building mpich with a newer Gcc could solve the problem with >> opencoarrays, I'm afraid it would cause uncompatibilities in other >> dependencies - but unfortunately I cannot suggest a better alternative! > > Well, I'm only asking for an option in the port. > The default will not change. > > I'll have a go locally and see what happens. > But I'm not sure what option to use to build > with e.g. GCC6. Is it this line? > > FORTRAN_USES= fortran > > Or are you saying that building mpich with > non-default gcc is problematic because all > its dependencies should be built with the > same gcc version? Users can change ports tree default versions by setting DEFAULT_VERSIONS in /etc/make.conf: DEFAULT_VERSIONS= gcc=5 DEFAULT_VERSIONS is handled in /usr/ports/Mk/bsd.default-versions.mk and /usr/ports/Mk/Uses/fortran.mk uses it to select the Fortran compiler. So with the line above the Fortran part of net/mpich will be built with lang/gcc5. In your opencoarray port I think you can do something like this: ... USES= fortran ... .include .if ${GCC_DEFAULT:R} < 5 IGNORE= This port requires that the default GCC version is 5 or higher .endif ... .include