pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/49025: GCC_REQD+=X.Y not satisfied by newer "lang/gccMN"



>Number:         49025
>Category:       pkg
>Synopsis:       GCC_REQD+=X.Y not satisfied by newer "lang/gccMN"
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          support
>Submitter-Id:   net
>Arrival-Date:   Mon Jul 21 02:55:00 +0000 2014
>Originator:     John D. Baker
>Release:        NetBSD/i386-5.2_STABLE, pkgsrc-2014Q2
>Organization:
>Environment:
NetBSD verthandi.technoskunk.fur 5.2_STABLE NetBSD 5.2_STABLE (VERTHANDI) #18: 
Tue Jul 15 08:12:12 CDT 2014  
sysop%verthandi.technoskunk.fur@localhost:/d0/build/netbsd-5/obj/i386/sys/arch/i386/compile/VERTHANDI
 i386

>Description:
Packages which require a version of GCC newer than that found in the
host OS set GCC_REQD+=X.Y.  If version X.Y{.Z} of GCC is not installed,
"lang/gccXY" will be built as a dependency and the tools wrapper will
be generated to use that compiler.

If one has an existing installation of "lang/gccMN" such that M.N > X.Y,
the compiler-selection mechanism does not consider this compiler as
acceptable (does it consider it at all?) and proceeds to build the
earlier version as a dependency.

This is most evident on netbsd-5 systems which ship gcc 4.1.3 in the
"comp" set.  Many packages require the features of gcc 4.4.x, 4.5.x, or
4.6.x to build properly and set GCC_REQD+=4.4, GCC_REQD+=4.5 or
GCC_REQD+=4.6, respectively, causing the corresponding "lang/gccXY" to
be built as a dependency.

Depending on the order in which packages are built, "lang/gcc46" may
be built before any of the other "lang/gccXY" versions which may be
the minimum required for other packages.

The resulting "lang/gcc46" package is not considered acceptable (at
all?) for subsequent packages which set "GCC_REQD+=4.4" or
"GCC_REQD+=4.5" causing the corresponding "lang/gcc44" or "lang/gcc45"
to be built.

A particular instance is "www/firefox" and "multimedia/libvpx".
"firefox" requires GCC 4.6 minimum on netbsd-5 while "multimedia/libvpx
requires GCC 4.4 minimum.  If one preemptively installs "lang/gcc46"
"multimedia/libvpx" will still build "lang/gcc44".
>How-To-Repeat:
On NetBSD-5.* in particular, or any host platform without a suitable
version of GCC:

Install "lang/gcc46" (or later)
Build any package which sets "GCC_REQD+=4.4" or "GCC_REQD+=4.5" (etc).
Older version will be fetched, built and installed while newer version
is ignored.
>Fix:



Home | Main Index | Thread Index | Old Index