/[gentoo-x86]/eclass/cmake-utils.eclass
Gentoo

Diff of /eclass/cmake-utils.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.37 Revision 1.39
1# Copyright 1999-2009 Gentoo Foundation 1# Copyright 1999-2009 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.37 2009/12/14 19:44:15 abcd Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.39 2009/12/22 22:52:52 scarabeus Exp $
4 4
5# @ECLASS: cmake-utils.eclass 5# @ECLASS: cmake-utils.eclass
6# @MAINTAINER: 6# @MAINTAINER:
7# kde@gentoo.org 7# kde@gentoo.org
8# 8#
111 111
112# @ECLASS-VARIABLE: CMAKE_IN_SOURCE_BUILD 112# @ECLASS-VARIABLE: CMAKE_IN_SOURCE_BUILD
113# @DESCRIPTION: 113# @DESCRIPTION:
114# Set to enable in-source build. 114# Set to enable in-source build.
115 115
116# @ECLASS-VARIABLE: CMAKE_NO_COLOR
117# @DESCRIPTION:
118# Set to disable cmake output coloring.
119
120# @ECLASS-VARIABLE: CMAKE_VERBOSE 116# @ECLASS-VARIABLE: CMAKE_VERBOSE
121# @DESCRIPTION: 117# @DESCRIPTION:
122# Set to enable verbose messages during compilation. 118# Set to enable verbose messages during compilation.
123 119
124# @ECLASS-VARIABLE: CMAKE_BUILD_TYPE 120# @ECLASS-VARIABLE: CMAKE_BUILD_TYPE
312 local common_config=${T}/gentoo_common_config.cmake 308 local common_config=${T}/gentoo_common_config.cmake
313 local libdir=$(get_libdir) 309 local libdir=$(get_libdir)
314 cat > "${common_config}" <<- _EOF_ 310 cat > "${common_config}" <<- _EOF_
315 SET (LIB_SUFFIX ${libdir/lib} CACHE STRING "library path suffix" FORCE) 311 SET (LIB_SUFFIX ${libdir/lib} CACHE STRING "library path suffix" FORCE)
316 _EOF_ 312 _EOF_
317 [[ -n ${CMAKE_NO_COLOR} ]] && echo 'SET (CMAKE_COLOR_MAKEFILE OFF CACHE BOOL "pretty colors during make" FORCE)' >> "${common_config}" 313 [[ -n ${NOCOLOR} ]] || echo 'SET (CMAKE_COLOR_MAKEFILE OFF CACHE BOOL "pretty colors during make" FORCE)' >> "${common_config}"
318 314
319 # Convert mycmakeargs to an array, for backwards compatibility 315 # Convert mycmakeargs to an array, for backwards compatibility
316 # Make the array a local variable since <=portage-2.1.6.x does not
317 # support global arrays (see bug #297255).
320 if [[ $(declare -p mycmakeargs 2>&-) != "declare -a mycmakeargs="* ]]; then 318 if [[ $(declare -p mycmakeargs 2>&-) != "declare -a mycmakeargs="* ]]; then
321 mycmakeargs=(${mycmakeargs}) 319 local mycmakeargs_local=(${mycmakeargs})
320 else
321 local mycmakeargs_local=("${mycmakeargs[@]}")
322 fi 322 fi
323 323
324 has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX= 324 has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
325 325
326 # Common configure parameters (overridable) 326 # Common configure parameters (overridable)
327 # NOTE CMAKE_BUILD_TYPE can be only overriden via CMAKE_BUILD_TYPE eclass variable 327 # NOTE CMAKE_BUILD_TYPE can be only overriden via CMAKE_BUILD_TYPE eclass variable
328 # No -DCMAKE_BUILD_TYPE=xxx definitions will be in effect. 328 # No -DCMAKE_BUILD_TYPE=xxx definitions will be in effect.
329 local cmakeargs=( 329 local cmakeargs=(
330 -C "${common_config}" 330 -C "${common_config}"
331 -DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX:-/usr}" 331 -DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX:-/usr}"
332 "${mycmakeargs[@]}" 332 "${mycmakeargs_local[@]}"
333 -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}" 333 -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}"
334 -DCMAKE_INSTALL_DO_STRIP=OFF 334 -DCMAKE_INSTALL_DO_STRIP=OFF
335 -DCMAKE_USER_MAKE_RULES_OVERRIDE="${build_rules}" 335 -DCMAKE_USER_MAKE_RULES_OVERRIDE="${build_rules}"
336 ) 336 )
337 337
338 mkdir -p "${CMAKE_BUILD_DIR}" 338 mkdir -p "${CMAKE_BUILD_DIR}"
339 pushd "${CMAKE_BUILD_DIR}" > /dev/null 339 pushd "${CMAKE_BUILD_DIR}" > /dev/null
340 debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: mycmakeargs is ${cmakeargs[*]}" 340 debug-print "${LINENO} ${ECLASS} ${FUNCNAME}: mycmakeargs is ${mycmakeargs_local[*]}"
341 echo cmake "${cmakeargs[@]}" "${CMAKE_USE_DIR}" 341 echo cmake "${cmakeargs[@]}" "${CMAKE_USE_DIR}"
342 cmake "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed" 342 cmake "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed"
343 343
344 popd > /dev/null 344 popd > /dev/null
345} 345}

Legend:
Removed from v.1.37  
changed lines
  Added in v.1.39

  ViewVC Help
Powered by ViewVC 1.1.20