/[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.6 Revision 1.9
1# Copyright 1999-2007 Gentoo Foundation 1# Copyright 1999-2007 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.6 2008/02/20 14:33:20 zlin Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-utils.eclass,v 1.9 2008/09/28 16:19:06 jmbsvicetto 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# @BLURB: common ebuild functions for cmake-based packages 8# @BLURB: common ebuild functions for cmake-based packages
17 17
18inherit toolchain-funcs multilib 18inherit toolchain-funcs multilib
19 19
20DESCRIPTION="Based on the ${ECLASS} eclass" 20DESCRIPTION="Based on the ${ECLASS} eclass"
21 21
22DEPEND="dev-util/cmake" 22DEPEND=">=dev-util/cmake-2.4.6"
23 23
24EXPORT_FUNCTIONS src_compile src_test src_install 24EXPORT_FUNCTIONS src_configure src_compile src_test src_install
25 25
26# Internal function use by cmake-utils_use_with and cmake-utils_use_enable 26# Internal function use by cmake-utils_use_with and cmake-utils_use_enable
27_use_me_now() { 27_use_me_now() {
28 debug-print-function $FUNCNAME $* 28 debug-print-function $FUNCNAME $*
29 [[ -z $2 ]] && die "cmake-utils_use-$1 <USE flag> [<flag name>]" 29 [[ -z $2 ]] && die "cmake-utils_use-$1 <USE flag> [<flag name>]"
68# 68#
69# `cmake-utils_has foo FOO` echoes -DHAVE_FOO=ON if foo is enabled 69# `cmake-utils_has foo FOO` echoes -DHAVE_FOO=ON if foo is enabled
70# and -DHAVE_FOO=OFF if it is disabled. 70# and -DHAVE_FOO=OFF if it is disabled.
71cmake-utils_has() { _use_me_now HAVE "$@" ; } 71cmake-utils_has() { _use_me_now HAVE "$@" ; }
72 72
73# @FUNCTION: cmake-utils_src_compile 73# @FUNCTION: cmake-utils_src_configure
74# @DESCRIPTION: 74# @DESCRIPTION:
75# General function for compiling with cmake. Default behaviour is to start an 75# General function for configuring with cmake. Default behaviour is to start an
76# out-of-source build. All arguments are passed to cmake-utils_src_make. 76# out-of-source build.
77cmake-utils_src_compile() { 77cmake-utils_src_configure() {
78 debug-print-function $FUNCNAME $* 78 debug-print-function $FUNCNAME $*
79 79
80 if [[ -n "${CMAKE_IN_SOURCE_BUILD}" ]]; then 80 if [[ -n "${CMAKE_IN_SOURCE_BUILD}" ]]; then
81 cmake-utils_src_configurein 81 cmake-utils_src_configurein
82 else 82 else
83 cmake-utils_src_configureout 83 cmake-utils_src_configureout
84 fi 84 fi
85}
86
87# @FUNCTION: cmake-utils_src_compile
88# @DESCRIPTION:
89# General function for compiling with cmake. Default behaviour is to check for
90# eapi and based on it configure or only compile
91cmake-utils_src_compile() {
92 case ${EAPI} in
93 2 | 2_pre3 | 2_pre2 | 2_pre1)
94 ;;
95 *)
96 cmake-utils_src_configure
97 ;;
98 esac
99
85 cmake-utils_src_make "$@" 100 cmake-utils_src_make "$@"
86} 101}
87 102
88# @FUNCTION: cmake-utils_src_configurein 103# @FUNCTION: cmake-utils_src_configurein
89# @DESCRIPTION: 104# @DESCRIPTION:
90# Function for software that requires configure and building in the source 105# Function for software that requires configure and building in the source
91# directory. 106# directory.
92cmake-utils_src_configurein() { 107cmake-utils_src_configurein() {
93 debug-print-function $FUNCNAME $* 108 debug-print-function $FUNCNAME $*
94 109
95 local cmakeargs="$(_common_configure_code) ${mycmakeargs}" 110 local cmakeargs="$(_common_configure_code) ${mycmakeargs} ${EXTRA_ECONF}"
96 111
97 debug-print "$LINENO $ECLASS $FUNCNAME: mycmakeargs is $cmakeargs" 112 debug-print "$LINENO $ECLASS $FUNCNAME: mycmakeargs is $cmakeargs"
98 cmake ${cmakeargs} . || die "Cmake failed" 113 cmake ${cmakeargs} . || die "Cmake failed"
99} 114}
100 115
103# Function for software that requires configure and building outside the source 118# Function for software that requires configure and building outside the source
104# tree - default. 119# tree - default.
105cmake-utils_src_configureout() { 120cmake-utils_src_configureout() {
106 debug-print-function $FUNCNAME $* 121 debug-print-function $FUNCNAME $*
107 122
108 local cmakeargs="$(_common_configure_code) ${mycmakeargs}" 123 local cmakeargs="$(_common_configure_code) ${mycmakeargs} ${EXTRA_ECONF}"
109 mkdir -p "${WORKDIR}"/${PN}_build 124 mkdir -p "${WORKDIR}"/${PN}_build
110 pushd "${WORKDIR}"/${PN}_build > /dev/null 125 pushd "${WORKDIR}"/${PN}_build > /dev/null
111 126
112 debug-print "$LINENO $ECLASS $FUNCNAME: mycmakeargs is $cmakeargs" 127 debug-print "$LINENO $ECLASS $FUNCNAME: mycmakeargs is $cmakeargs"
113 cmake ${cmakeargs} "${S}" || die "Cmake failed" 128 cmake ${cmakeargs} "${S}" || die "Cmake failed"

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.20