Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Jun 2013 10:23:38 +0100 (BST)
From:      Anton Shterenlikht <mexas@bris.ac.uk>
To:        freebsd-ports@freebsd.org
Subject:   portmaster, USE_FORTRAN, GCC_DEFAUT_VERSION problem
Message-ID:  <201306170923.r5H9NcwK014930@mech-cluster241.men.bris.ac.uk>

next in thread | raw e-mail | index | archive | help
I have these GCC ports installed on ia64 -current:

# pkg info -xo gcc-
gcc-4.2.5.20090325_5: lang/gcc42
gcc-4.8.1.20130418: lang/gcc48
gcc-4.7.4.20130518: lang/gcc47
gcc-4.9.0.20130609: lang/gcc49
# 

lang/gcc, the default GCC ports compiler, 4.6 at present,
is not installed, because it doesn't build for me on ia64.

I set GCC_DEFAULT_VERSION=4.8 in ports/Mk/bsd.gcc.mk

However, I'm not clear how portmaster follows this
for ports with USE_FORTRAN set?

This situation arises for several ports on ia64, e.g. math/plplot:

I can build the port manually:

===>  Configuring for plplot-5.9.9_1
===>  Performing in-source build
/bin/mkdir -p /usr/ports/math/plplot/work/plplot-5.9.9
-- The C compiler identification is GNU 4.8.1
-- Check for working C compiler: /usr/local/bin/gcc48
-- Check for working C compiler: /usr/local/bin/gcc48 -- works

However, portmaster insists on lang/gcc:

# portmaster plplot

===>>> Currently installed version: plplot-5.9.9_1
===>>> Port directory: /usr/ports/math/plplot

===>>> Gathering distinfo list for installed ports

===>>> Launching 'make checksum' for math/plplot in background
===>>> Gathering dependency list for math/plplot from ports
===>>> Launching child to install lang/gcc

===>>> plplot-5.9.9_1 >> lang/gcc (1/1)

If I set USE_GCC=any to the port's Makefile.local
then portmaster tries using the default system compiler:

===>  Configuring for plplot-5.9.9_1
===>  Performing in-source build
/bin/mkdir -p /usr/ports/math/plplot/work/plplot-5.9.9
-- The C compiler identification is GNU 4.2.1
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works

If I set USE_GCC=4.8 in Makefile.local,
then portmaster still insists on lang/gcc.

ports/Mk/bsd.gcc.mk contains:

. if ${USE_FORTRAN} == yes
_USE_GCC:=      ${GCC_DEFAULT_VERSION}

This should be enough, right?
Indeed, I can build the port manually fine.
So why does portmaster not honour GCC_DEFAULT_VERSION?

Thanks

Anton




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201306170923.r5H9NcwK014930>