On Mon, Dec 17, 2012 at 08:36:29PM +0400, Vadim Zhukov wrote:
> 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}
Basic idea okay. You're right that it should use CONFIGURE_STYLE:M
please clean the patch of stray shit like -empty lines.

Reply via email to