Hello all.
This patch (which is probably wrong due to "==" instead of :M check)
should help a bit in the case when CMake-based program needs a GCC
toolchain from ports. KActivities from upcoming KDE 4.10 is the first
such thing I've seen, but surely there will be more to follow. :(
The only real purpose of the patch is saving porters of typing long
CONFIGURE_ARGS. Maybe not the such big issue at all?..
Any comments? Thanks in advance.
--
WBR,
Vadim Zhukov
Index: 4.2/gcc4.port.mk
===================================================================
RCS file: /cvs/ports/lang/gcc/4.2/gcc4.port.mk,v
retrieving revision 1.15
diff -u -p -r1.15 gcc4.port.mk
--- 4.2/gcc4.port.mk 17 Nov 2011 18:03:43 -0000 1.15
+++ 4.2/gcc4.port.mk 17 Dec 2012 16:28:23 -0000
@@ -35,6 +35,9 @@ _MODGCC4_LINKS =
. if ${MODGCC4_LANGS:L:Mc} && ${COMPILER_VERSION:L:Ngcc4*}
BUILD_DEPENDS += gcc->=4.2,<4.3|gcc->=4.2v0,<4.3v0:lang/gcc/4.2
_MODGCC4_LINKS += egcc gcc egcc cc
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_C_COMPILER=${LOCALBASE}/bin/egcc
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mc++}
@@ -48,6 +51,9 @@ LIB_DEPENDS += libstdc++->=4.2,<4.3|libs
WANTLIB += estdc++>=7
_MODGCC4_LINKS += eg++ g++ eg++ c++
. endif
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_CXX_COMPILER=${LOCALBASE}/bin/eg++
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mfortran}
@@ -55,6 +61,9 @@ BUILD_DEPENDS += g95->=4.2,<4.3|g95->=4.
WANTLIB += gfortran>=2
LIB_DEPENDS += g95->=4.2,<4.3|g95->=4.2v0,<4.3v0:lang/gcc/4.2,-f95
_MODGCC4_LINKS += egfortran gfortran
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_Fortran_COMPILER=${LOCALBASE}/bin/egfortran
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mjava}
Index: 4.6/Makefile
===================================================================
RCS file: /cvs/ports/lang/gcc/4.6/Makefile,v
retrieving revision 1.40
diff -u -p -r1.40 Makefile
--- 4.6/Makefile 6 Nov 2012 00:57:43 -0000 1.40
+++ 4.6/Makefile 17 Dec 2012 16:28:23 -0000
@@ -262,4 +262,3 @@ adastrap: ${ADA_PACKAGE} ${GCC_PACKAGE}
cd ${WRKDIR}/prepare && tar cf - bootstrap | \
xz > ${FULLDISTDIR}/${ADASTRAP-${MACHINE_ARCH}}
.endif
-
Index: 4.6/gcc4.port.mk
===================================================================
RCS file: /cvs/ports/lang/gcc/4.6/gcc4.port.mk,v
retrieving revision 1.9
diff -u -p -r1.9 gcc4.port.mk
--- 4.6/gcc4.port.mk 18 Apr 2012 18:41:22 -0000 1.9
+++ 4.6/gcc4.port.mk 17 Dec 2012 16:28:23 -0000
@@ -35,6 +35,10 @@ _MODGCC4_LINKS =
. if ${MODGCC4_LANGS:L:Mc}
BUILD_DEPENDS += lang/gcc/4.6>=4.6,<4.7
_MODGCC4_LINKS += egcc gcc egcc cc
+
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_C_COMPILER=${LOCALBASE}/bin/egcc
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mc++}
@@ -45,6 +49,10 @@ LIB_DEPENDS += ${MODGCC4_CPPLIBDEP}
MODGCC4_CPPWANTLIB = estdc++>=14
WANTLIB += ${MODGCC4_CPPWANTLIB}
_MODGCC4_LINKS += eg++ g++ eg++ c++
+
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_CXX_COMPILER=${LOCALBASE}/bin/eg++
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mfortran}
@@ -52,6 +60,9 @@ BUILD_DEPENDS += lang/gcc/4.6,-f95>=4.6,
WANTLIB += gfortran>=3
LIB_DEPENDS += lang/gcc/4.6,-f95>=4.6,<4.7
_MODGCC4_LINKS += egfortran gfortran
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_Fortran_COMPILER=${LOCALBASE}/bin/egfortran
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mjava}
Index: 4.7/gcc4.port.mk
===================================================================
RCS file: /cvs/ports/lang/gcc/4.7/gcc4.port.mk,v
retrieving revision 1.3
diff -u -p -r1.3 gcc4.port.mk
--- 4.7/gcc4.port.mk 26 Aug 2012 10:19:48 -0000 1.3
+++ 4.7/gcc4.port.mk 17 Dec 2012 16:28:23 -0000
@@ -35,6 +35,9 @@ _MODGCC4_LINKS =
. if ${MODGCC4_LANGS:L:Mc}
BUILD_DEPENDS += lang/gcc/4.7>=4.7,<4.8
_MODGCC4_LINKS += egcc gcc egcc cc
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_C_COMPILER=${LOCALBASE}/bin/egcc
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mc++}
@@ -45,6 +48,9 @@ LIB_DEPENDS += ${MODGCC4_CPPLIBDEP}
MODGCC4_CPPWANTLIB = estdc++>=15
WANTLIB += ${MODGCC4_CPPWANTLIB}
_MODGCC4_LINKS += eg++ g++ eg++ c++
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_CXX_COMPILER=${LOCALBASE}/bin/eg++
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mfortran}
@@ -52,6 +58,9 @@ BUILD_DEPENDS += lang/gcc/4.7,-f95>=4.7,
WANTLIB += gfortran>=3
LIB_DEPENDS += lang/gcc/4.7,-f95>=4.7,<4.8
_MODGCC4_LINKS += egfortran gfortran
+. if "${CONFIGURE_STYLE}" == "cmake"
+CONFIGURE_ARGS += -DCMAKE_Fortran_COMPILER=${LOCALBASE}/bin/egfortran
+. endif
. endif
. if ${MODGCC4_LANGS:L:Mjava}