[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog cmake-multilib.eclass
mgorny 14/05/09 10:48:59 Modified: ChangeLog cmake-multilib.eclass Log: Use multilib-minimal for phase functions. Revision ChangesPath 1.1248 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1248&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1248&content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1247&r2=1.1248 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1247 retrieving revision 1.1248 diff -u -r1.1247 -r1.1248 --- ChangeLog 9 May 2014 07:13:47 - 1.1247 +++ ChangeLog 9 May 2014 10:48:59 - 1.1248 @@ -1,6 +1,9 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1247 2014/05/09 07:13:47 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1248 2014/05/09 10:48:59 mgorny Exp $ + + 09 May 2014; Michał Górny cmake-multilib.eclass: + Use multilib-minimal for phase functions. 09 May 2014; Michał Górny emul-linux-x86.eclass: Remove i686-* renamed tools as well with USE=abi_x86_32. 1.7 eclass/cmake-multilib.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-multilib.eclass?rev=1.7&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-multilib.eclass?rev=1.7&content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-multilib.eclass?r1=1.6&r2=1.7 Index: cmake-multilib.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/cmake-multilib.eclass,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- cmake-multilib.eclass 29 Apr 2014 20:54:54 - 1.6 +++ cmake-multilib.eclass 9 May 2014 10:48:59 - 1.7 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-multilib.eclass,v 1.6 2014/04/29 20:54:54 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-multilib.eclass,v 1.7 2014/05/09 10:48:59 mgorny Exp $ # @ECLASS: cmake-multilib.eclass # @MAINTAINER: @@ -9,16 +9,15 @@ # Author: Michał Górny # @BLURB: cmake-utils wrapper for multilib builds # @DESCRIPTION: -# The cmake-multilib.eclass is a cmake-utils.eclass(5) wrapper -# introducing support for building for more than one ABI (multilib). +# The cmake-multilib.eclass provides a glue between cmake-utils.eclass(5) +# and multilib-minimal.eclass(5), aiming to provide a convenient way +# to build packages using cmake for multiple ABIs. # -# Inheriting this eclass sets IUSE and exports cmake-utils phase -# function wrappers which build the package for each supported ABI -# if the appropriate flag is enabled. -# -# Note that the multilib support requires out-of-source builds to be -# enabled. Thus, it is impossible to use CMAKE_IN_SOURCE_BUILD with -# it. +# Inheriting this eclass sets IUSE and exports default multilib_src_*() +# sub-phases that call cmake-utils phase functions for each ABI enabled. +# The multilib_src_*() functions can be defined in ebuild just like +# in multilib-minimal, yet they ought to call appropriate cmake-utils +# phase rather than 'default'. # EAPI=5 is required for meaningful MULTILIB_USEDEP. case ${EAPI:-0} in @@ -30,31 +29,46 @@ die "${ECLASS}: multilib support requires out-of-source builds." fi -inherit cmake-utils multilib-build +inherit cmake-utils multilib-minimal EXPORT_FUNCTIONS src_configure src_compile src_test src_install cmake-multilib_src_configure() { - multilib_parallel_foreach_abi cmake-utils_src_configure "${@}" + local _cmake_args=( "${@}" ) + + multilib-minimal_src_configure +} + +multilib_src_configure() { + cmake-utils_src_configure "${_cmake_args[@]}" } cmake-multilib_src_compile() { - multilib_foreach_abi cmake-utils_src_compile "${@}" + local _cmake_args=( "${@}" ) + + multilib-minimal_src_compile +} + +multilib_src_compile() { + cmake-utils_src_compile "${_cmake_args[@]}" } cmake-multilib_src_test() { - multilib_foreach_abi cmake-utils_src_test "${@}" + local _cmake_args=( "${@}" ) + + multilib-minimal_src_test +} + +multilib_src_test() { + cmake-utils_src_test "${_cmake_args[@]}" } cmake-multilib_src_install() { - cmake-multilib_secure_install() { - cmake-utils_src_install "${@}" + local _cmake_args=( "${@}" ) - multilib_prepare_wrappers - # Make sure all headers are the same for each ABI. - multilib_check_headers - } + multilib-m
[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog cmake-multilib.eclass multilib-build.eclass multilib-minimal.eclass
mgorny 14/04/29 20:54:54 Modified: ChangeLog cmake-multilib.eclass multilib-build.eclass multilib-minimal.eclass Log: Move conditionals for enabling wrappers into multilib_prepare_wrappers() and multilib_install_wrappers(). Revision ChangesPath 1.1228 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1228&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1228&content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1227&r2=1.1228 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1227 retrieving revision 1.1228 diff -u -r1.1227 -r1.1228 --- ChangeLog 28 Apr 2014 17:38:21 - 1.1227 +++ ChangeLog 29 Apr 2014 20:54:54 - 1.1228 @@ -1,6 +1,11 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1227 2014/04/28 17:38:21 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1228 2014/04/29 20:54:54 mgorny Exp $ + + 29 Apr 2014; Michał Górny cmake-multilib.eclass, + multilib-build.eclass, multilib-minimal.eclass: + Move conditionals for enabling wrappers into multilib_prepare_wrappers() and + multilib_install_wrappers(). 28 Apr 2014; Michał Górny multilib-build.eclass: Deprecate multilib_build_binaries, and switch the code to use 1.6 eclass/cmake-multilib.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-multilib.eclass?rev=1.6&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-multilib.eclass?rev=1.6&content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/cmake-multilib.eclass?r1=1.5&r2=1.6 Index: cmake-multilib.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/cmake-multilib.eclass,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- cmake-multilib.eclass 3 Apr 2014 22:09:36 - 1.5 +++ cmake-multilib.eclass 29 Apr 2014 20:54:54 - 1.6 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-multilib.eclass,v 1.5 2014/04/03 22:09:36 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/cmake-multilib.eclass,v 1.6 2014/04/29 20:54:54 mgorny Exp $ # @ECLASS: cmake-multilib.eclass # @MAINTAINER: @@ -50,12 +50,9 @@ cmake-multilib_secure_install() { cmake-utils_src_install "${@}" - # Do multilib magic only when >1 ABI is used. - if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]]; then - multilib_prepare_wrappers - # Make sure all headers are the same for each ABI. - multilib_check_headers - fi + multilib_prepare_wrappers + # Make sure all headers are the same for each ABI. + multilib_check_headers } multilib_foreach_abi cmake-multilib_secure_install "${@}" 1.41 eclass/multilib-build.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multilib-build.eclass?rev=1.41&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multilib-build.eclass?rev=1.41&content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multilib-build.eclass?r1=1.40&r2=1.41 Index: multilib-build.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/multilib-build.eclass,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- multilib-build.eclass 28 Apr 2014 17:38:21 - 1.40 +++ multilib-build.eclass 29 Apr 2014 20:54:54 - 1.41 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/multilib-build.eclass,v 1.40 2014/04/28 17:38:21 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multilib-build.eclass,v 1.41 2014/04/29 20:54:54 mgorny Exp $ # @ECLASS: multilib-build.eclass # @MAINTAINER: @@ -295,6 +295,8 @@ [[ ${#} -le 1 ]] || die "${FUNCNAME}: too many arguments" + [[ ${#MULTIBUILD_VARIANTS[@]} -le 1 ]] && return + local root=${1:-${ED}} local f @@ -419,6 +421,8 @@ [[ ${#} -le 1 ]] || die "${FUNCNAME}: too many arguments" + [[ ${#MULTIBUILD_VARIANTS[@]} -le 1 ]] && return + local root=${1:-${ED}} if [[ -d "${ED}"/tmp/multilib-include ]]; then 1.8