ports/77707: Fix for ports/77403 introduced circular dependency in ports tree

Bartosz Fabianowski freebsd at chillt.de
Sat Feb 19 03:40:18 UTC 2005

>Number:         77707
>Category:       ports
>Synopsis:       Fix for ports/77403 introduced circular dependency in ports tree
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Feb 19 03:40:17 GMT 2005
>Originator:     Bartosz Fabianowski
>Release:        5.3-STABLE
FreeBSD takahe.local 5.3-STABLE FreeBSD 5.3-STABLE #0: Mon Feb 14 17:57:24 CET 2005     root at takahe.local:/usr/obj/usr/src/sys/TAKAHE  i386
The fix for ports/77403, commited on 13th February, introduced a possible circular dependency in the ports tree. The following line was added to the port's Makefile:

USE_GCC= 2.7+

The way this is handled by Mk/bsd.gcc.mk, the port now depends on the earliest version of GCC that is at least 2.7. On my machine, the installed versions of GCC are 3.4 (system) and 3.2 (from ports). Since the earliest version of GCC on this machine is 3.2, the GCC 3.2 port now depends on itself. This is a very bad thing (TM) and, for example, breaks the INDEX build.
On a machine with the following two versions of GCC installed, run make index with an up-to-date ports tree:

* system GCC > 3.2 (OSVERSION >= 501103)
* GCC 3.2 installed from ports

The GCC 3.2 port will pick up itself as a build dependency.
USE_GCC= 2.7+ is completely useless as no version of GCC prior to 2.7 is available on FreeBSD anyway - neither in ports nor in the system. The obvious fix is therefore to remove this line from the port's Makefile.

More information about the freebsd-ports-bugs mailing list