Re: libc++ vs. libstdc++ usage in the ports tree

From: Tijl Coosemans <tijl_at_FreeBSD.org>
Date: Sun, 1 Dec 2013 15:06:40 +0100
On Wed, 27 Nov 2013 20:45:56 +0100 Tijl Coosemans wrote:
> On Wed, 27 Nov 2013 19:31:44 +0100 Jan Henrik Sylvester wrote:
>> Trying to migrate to 10, I would like to keep octave. Have you found
>> anything new? Having build the port and all dependencies with standard
>> options, octave is segfaulting for me, too. Anyhow, I can run octave with:
>> 
>> env LD_PRELOAD=/usr/lib/libc++.so.1 octave
>> 
>> Some very light testing indicates that it is working. Of course, this is
>> not ideal.
>> 
>> Maybe this gives a clue how to fix the octave port properly.
> 
> I have a preliminary patch for math/octave that I wanted to test on
> redports first, but it is down at the moment so here it is.

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.
Received on Sun Dec 01 2013 - 13:07:53 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:44 UTC