--- a/components/gcc45/gcc-45.p5m Wed Sep 26 16:17:36 2012 +0000
+++ b/components/gcc45/gcc-45.p5m Wed Sep 26 16:46:20 2012 -0700
@@ -1533,20 +1533,50 @@
hardlink path=usr/gcc/4.5/bin/c++ target=$(GNU_ARCH)-g++
hardlink path=usr/gcc/4.5/bin/g++ target=$(GNU_ARCH)-g++
-link path=usr/bin/g++ target=../gcc/4.5/bin/g++
-link path=usr/bin/gfortran target=../gcc/4.5/bin/gfortran
-link path=usr/bin/gcc target=../gcc/4.5/bin/gcc
-link path=usr/bin/gcov target=../gcc/4.5/bin/gcov
-link path=usr/bin/gcpp target=../gcc/4.5/bin/cpp
-link path=usr/share/man/man1/g++.1 target=../../../gcc/4.5/share/man/man1/g++.1
-link path=usr/share/man/man1/gfortran.1 target=../../../gcc/4.5/share/man/man1/gfortran.1
-link path=usr/share/man/man1/gcc.1 target=../../../gcc/4.5/share/man/man1/gcc.1
-link path=usr/share/man/man1/gcov.1 target=../../../gcc/4.5/share/man/man1/gcov.1
-link path=usr/share/man/man1/gcpp.1 target=../../../gcc/4.5/share/man/man1/cpp.1
+# Mediated links for gcc binaries in /usr/bin
+link path=usr/bin/c++ target=../gcc/4.5/bin/c++ \
+ mediator=gcc mediator-version=4.5
+link path=usr/bin/g++ target=../gcc/4.5/bin/g++ \
+ mediator=gcc mediator-version=4.5
+link path=usr/bin/gcc target=../gcc/4.5/bin/gcc \
+ mediator=gcc mediator-version=4.5
+link path=usr/bin/gcov target=../gcc/4.5/bin/gcov \
+ mediator=gcc mediator-version=4.5
+link path=usr/bin/gcpp target=../gcc/4.5/bin/cpp \
+ mediator=gcc mediator-version=4.5
+
+# gfortran is not mediated (equivalent binary in gcc3 is g77).
+link path=usr/bin/gfortran target=../gcc/4.5/bin/gfortran
+
+# Mediated links for gcc man pages in /usr/share/man
+link path=usr/share/man/man1/c++.1 \
+ target=../../../gcc/4.5/share/man/man1/g++.1 \
+ mediator=gcc mediator-version=4.5
+link path=usr/share/man/man1/g++.1 \
+ target=../../../gcc/4.5/share/man/man1/g++.1 \
+ mediator=gcc mediator-version=4.5
+link path=usr/share/man/man1/gcc.1 \
+ target=../../../gcc/4.5/share/man/man1/gcc.1 \
+ mediator=gcc mediator-version=4.5
+link path=usr/share/man/man1/gcov.1 \
+ target=../../../gcc/4.5/share/man/man1/gcov.1 \
+ mediator=gcc mediator-version=4.5
+link path=usr/share/man/man1/gcpp.1 \
+ target=../../../gcc/4.5/share/man/man1/cpp.1 \
+ mediator=gcc mediator-version=4.5
link path=usr/share/man/man7/fsf-funding.7 \
- target=../../../gcc/4.5/share/man/man7/fsf-funding.7
-link path=usr/share/man/man7/gfdl.7 target=../../../gcc/4.5/share/man/man7/gfdl.7
-link path=usr/share/man/man7/gpl.7 target=../../../gcc/4.5/share/man/man7/gpl.7
+ target=../../../gcc/4.5/share/man/man7/fsf-funding.7 \
+ mediator=gcc mediator-version=4.5
+link path=usr/share/man/man7/gfdl.7 \
+ target=../../../gcc/4.5/share/man/man7/gfdl.7 \
+ mediator=gcc mediator-version=4.5
+link path=usr/share/man/man7/gpl.7 \
+ target=../../../gcc/4.5/share/man/man7/gpl.7 \
+ mediator=gcc mediator-version=4.5
+
+# gfortran.1 is not mediated (equivalent man page in gcc3 is g77.1).
+link path=usr/share/man/man1/gfortran.1 \
+ target=../../../gcc/4.5/share/man/man1/gfortran.1
# gcc 4.5 on x86 uses the CRT files in /usr/lib, and gcc 4.5 on SPARC
# does not. Any upgrade to this package should reverify this and adjust