From owner-freebsd-fortran@freebsd.org Sun Nov 15 19:43:28 2015 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 6185EA30D2F for ; Sun, 15 Nov 2015 19:43:28 +0000 (UTC) (envelope-from gerald@pfeifer.com) 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 4AFF210BA for ; Sun, 15 Nov 2015 19:43:28 +0000 (UTC) (envelope-from gerald@pfeifer.com) Received: by mailman.ysv.freebsd.org (Postfix) id 47F57A30D2E; Sun, 15 Nov 2015 19:43:28 +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 46AD8A30D2D for ; Sun, 15 Nov 2015 19:43:28 +0000 (UTC) (envelope-from gerald@pfeifer.com) Received: from ainaz.pair.com (ainaz.pair.com [209.68.2.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1CCE910B6; Sun, 15 Nov 2015 19:43:27 +0000 (UTC) (envelope-from gerald@pfeifer.com) Received: from [192.168.0.130] (vie-188-118-240-003.dsl.sil.at [188.118.240.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ainaz.pair.com (Postfix) with ESMTPSA id 9BDA13F44A; Sun, 15 Nov 2015 14:43:24 -0500 (EST) Date: Sun, 15 Nov 2015 20:43:21 +0100 (CET) From: Gerald Pfeifer To: Tijl Coosemans , Anton Shterenlikht , fortran@freebsd.org Subject: Re: advice on gfortran options for a port In-Reply-To: <20150729200307.5df26a3e@kalimero.tijl.coosemans.org> Message-ID: References: <201507270953.t6R9riEg096211@mech-as222.men.bris.ac.uk> <20150729200307.5df26a3e@kalimero.tijl.coosemans.org> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII 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: Sun, 15 Nov 2015 19:43:28 -0000 Hi Tijl, hi Anton, On Wed, 29 Jul 2015, Tijl Coosemans wrote: >> Trying to build (with gfortran48 to gfortran6) I get: >> >> f951: sorry, unimplemented: Graphite loop optimizations cannot be used (ISL is not available)(-fgraphite, -fgraphite-identity, -floop-block, -floop-interchange, -floop-strip-mine, -floop-parallelize-all, -floop-unroll-and-jam, and -ftree-loop-linear) >> >> Are these not implemented on BSD? >> I wonder how they build with GCC with these flags? >> >> Anyway, should I leave all these flags, and -ggdb in the port? >> Or should I use the default ports tree FFLAGS instead? > It seems that gcc needs to be configured with --with-isl to enable > Graphite. Gerald, can this be enabled in the gcc ports? I just committed a patch to lang/gcc6-devel that adds a new option GRAPHITE which enables support for Graphite loop optimizations and am looking into pushing this back into the gcc5-devel and later gcc5 ports. Since this pulls in libisl as an additional dependency and I have only seen two requests for this (including yours) so far, I'm a little hesitant to make enable this option by default. What do you think? (Patch below.) Gerald Modified: head/lang/gcc6-devel/Makefile ============================================================================== --- head/lang/gcc6-devel/Makefile Sun Nov 15 19:09:01 2015 (r401723) +++ head/lang/gcc6-devel/Makefile Sun Nov 15 19:37:49 2015 (r401724) @@ -42,7 +42,7 @@ SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure -OPTIONS_DEFINE= BOOTSTRAP +OPTIONS_DEFINE= BOOTSTRAP GRAPHITE OPTIONS_DEFINE_i386= JAVA OPTIONS_DEFINE_amd64= JAVA OPTIONS_DEFAULT= BOOTSTRAP @@ -50,6 +50,7 @@ OPTIONS_DEFAULT_i386= JAVA OPTIONS_DEFAULT_amd64= JAVA OPTIONS_EXCLUDE_DragonFly= JAVA BOOTSTRAP_DESC= Build using a full bootstrap +GRAPHITE_DESC= Support for Graphite loop optimizations .if exists(/usr/lib32/libc.so) OPTIONS_DEFINE_powerpc64= MULTILIB @@ -125,6 +126,11 @@ INFO+= gcc${SUFFIX}/libquadmath \ SUB_FILES= pkg-message SUB_LIST+= TARGLIB=${TARGLIB} +.if ${PORT_OPTIONS:MGRAPHITE} +LIB_DEPENDS+= libisl.so:${PORTSDIR}/devel/isl +CONFIGURE_ARGS+=--with-isl=${LOCALBASE} +.endif + .if ${PORT_OPTIONS:MJAVA} ECJ_JAR= ${LOCALBASE}/share/java/ecj-4.5.jar BUILD_DEPENDS+= ${ECJ_JAR}:${PORTSDIR}/lang/gcc-ecj45 \