From owner-freebsd-current@FreeBSD.ORG Wed Dec 4 01:23:46 2013 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 21869C77; Wed, 4 Dec 2013 01:23:46 +0000 (UTC) Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.17.10]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A1B4612EF; Wed, 4 Dec 2013 01:23:45 +0000 (UTC) Received: from nb981.math (p57AEF3E3.dip0.t-ipconnect.de [87.174.243.227]) by mrelayeu.kundenserver.de (node=mreu0) with ESMTP (Nemesis) id 0Lj7Ag-1VAq9I3CUo-00dPbS; Wed, 04 Dec 2013 02:23:43 +0100 Message-ID: <529E841B.7020803@janh.de> Date: Wed, 04 Dec 2013 02:23:39 +0100 From: Jan Henrik Sylvester User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0 MIME-Version: 1.0 To: Tijl Coosemans Subject: Re: libc++ vs. libstdc++ usage in the ports tree References: <77CB2B92-216A-4C80-B033-7E582B5F0DFC@FreeBSD.org> <20131112165422.GA2939@troutmask.apl.washington.edu> <20131112175556.GA3319@troutmask.apl.washington.edu> <20131112201922.GA4330@troutmask.apl.washington.edu> <20131113173143.Horde.a-9M7JQ_vHo3tpDIMsGK6g1@webmail.df.eu> <5283CA3C.3080201@FreeBSD.org> <352D9465-9840-43F0-A3A9-327DC12B0967@FreeBSD.org> <20131114144555.GA22093@troutmask.apl.washington.edu> <52963A90.4000201@janh.de> <20131127204556.2974a3f5@kalimero.tijl.coosemans.org> <20131201150640.12ea18c8@kalimero.tijl.coosemans.org> <529E3E6A.2090107@janh.de> <20131203215445.68b9bc4e@kalimero.tijl.coosemans.org> <529E4F1E.4050001@janh.de> <20131204002357.203ea09d@kalimero.tijl.coosemans.org> In-Reply-To: <20131204002357.203ea09d@kalimero.tijl.coosemans.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Provags-ID: V02:K0:+8UwTMrl2/oBPKM150IlbMTC781xTXjjDQqDZ++lA0O DOMS89FuSmMvJmGcKlSCKHJh2++czYwZlQpm3mK1LnIBfxwYlt rw5kDu7gplAejakanbrbznDzbAkaKyVDXg8C0OWCXnoR//2i/U UMXjC2NojXp39jXGcSNWTaGS0epdepQRdlkJh8h0hzIFC8mVxD LljcywqoR/DklW50ZGimNxpoTEN8c/qrUonHnQaJ7o4DikjHoV tJ1RgsTNFiA7xwBb7hPgRcVKBBtqTPgt0TCGiet4O2LJ2mgur7 kBKk6xk9NkN9DBfcBVjbvwMYJv1C5sxy1QF+Dlq8g7l0yHsIQ= = Cc: Maho Nakata , FreeBSD Current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Dec 2013 01:23:46 -0000 On 12/04/2013 00:23, Tijl Coosemans wrote: > On Tue, 03 Dec 2013 22:37:34 +0100 Jan Henrik Sylvester wrote: >> On 12/03/2013 21:54, Tijl Coosemans wrote: >>> On Tue, 03 Dec 2013 21:26:18 +0100 Jan Henrik Sylvester wrote: >>>> On 12/01/2013 15:06, Tijl Coosemans wrote: >>>>> The tests were successful: >>>>> https://redports.org/buildarchive/20131201105316-94935/ (octave) >>>>> https://redports.org/buildarchive/20131201115701-22333/ (octave-forge-base) >>>>> The octave logs also contain the results of running the regression-test >>>>> target. The output is the same on all FreeBSD versions. >>>>> >>>>> The problem is that USE_FORTRAN=yes implies USE_GCC=yes. This means >>>>> the C++ code in math/octave is compiled with gcc46/libstdc++ which >>>>> does not work if dependencies have been built with clang/libc++. >>>>> >>>>> The patch copies the USE_FORTRAN=yes logic from Mk/bsd.gcc.mk into a >>>>> new file Mk/Uses/fortran.mk. It allows ports to use a Fortran compiler >>>>> together with the base system C/C++ compiler. >>>> >>>> With the patch, math/octave fails for me on 9.2-RELEASE/amd64 and >>>> 10.0-BETA4/amd64 with: >>>> >>>> checking for amd64-portbld-freebsd(9.2|10.0)-gfortran... f77 >>>> checking whether we are using the GNU Fortran 77 compiler... no >>>> checking whether f77 accepts -g... no >>>> checking how to get verbose linking output from f77... configure: >>>> WARNING: compilation failed >>>> >>>> checking for Fortran 77 libraries of f77... >>>> checking for dummy main to link with Fortran 77 libraries... none >>>> checking for Fortran 77 name-mangling scheme... configure: error: in >>>> `/usr/ports/math/octave/work/octave-3.6.4': >>>> configure: error: cannot compile a simple Fortran program >>>> >>>> Full logs attached (each with and without your patch). >>>> >>>> In both cases, it tries to use f77, while the original port uses gfortran46. >>>> >>>> Any idea what is wrong on my system? >>> >>> Do you define FC in make.conf maybe? >> >> No, besides some options (*_SET / *_UNSET) for some unrelated ports, I >> only have got this in make.conf: > > Hmm, apparently FC is defined by sys.mk. I've attached a new patch. Ok, with the new patch, it compiles and packages on 9.2-RELEASE/amd64 and 10.0-BETA4/amd64. From the new packages, the octave binaries were able to do some simple math. Thanks, Jan Henrik