public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] cmake.eclass
@ 2006-05-18 10:13 Panard
  2006-05-18 10:54 ` Simon Stelling
  0 siblings, 1 reply; 19+ messages in thread
From: Panard @ 2006-05-18 10:13 UTC (permalink / raw
  To: gentoo-dev


[-- Attachment #1.1: Type: text/plain, Size: 1113 bytes --]

Hi,

I needed to write a cmake eclass to build out of the sources.
So, here is my cmake.eclass... I hope it will be usefull.

4 functions are defined :
cmake_use_option <USEFLAG> [<OPTION> [<value if use> [<value else>]]]
# eg:
# USE=qt debug
# cmake_use_option qt => -DWITH_qt=ON
# cmake_use_option gtk => -DWITH_gtk=OFF
# cmake_use_option qt ENABLE_QUI => -DENABLE_QUI=ON
# cmake_use_option gtk ENABLE_GUI => -DENABLE_GUI=OFF
# cmake_use_option gtk ENABLE_NOGUI OFF => -DENABLE_NOGUI=ON
# cmake_use_option doc GENDOC full =>
# cmake_use_option html DOCFORMAT html text => -DGENDOC=text
# cmake_use_option debug CMAKE_BUILD_TYPE debugfull 
=> -DCMAKE_BUILD_TYPE=debugfull

cmake_configure:
   create BUILDDIR, and run cmake with selected debug (and with prefix=/usr)
cmake_compile
   emake in BUILDDIR
cmake_install
   emake DESTDIR=$D install in BUILDDIR
   clean BUILDDIR

Any comment appreciated...

Beers,

Panard
-- 
HomePage: http://dev.inzenet.org/~panard/
Yzis : http://www.yzis.org
Qomics : http://dev.inzenet.org/~panard/qomics
Smileys : http://smileys.inzenet.org

[-- Attachment #1.2: cmake.eclass --]
[-- Type: text/plain, Size: 2076 bytes --]

# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

#
# Original Author: panard
# Purpose: cmake with a separate builddir
#

ECLASS="cmake"
INHERITED="$INHERITED $ECLASS"

DEPEND="dev-util/cmake"
RDEPEND=""

IUSE="debug"

BUILDDIR="${WORKDIR}/cmake-build"

# cmake option helper:
# 	cmake_use_option <USEFLAG> [<OPTION> [<value if use> [<value else>]]]
# eg:
# USE=qt debug
# cmake_use_option qt => -DWITH_qt=ON
# cmake_use_option gtk => -DWITH_gtk=OFF
# cmake_use_option qt ENABLE_QUI => -DENABLE_QUI=ON
# cmake_use_option gtk ENABLE_GUI => -DENABLE_GUI=OFF
# cmake_use_option gtk ENABLE_NOGUI OFF => -DENABLE_NOGUI=ON
# cmake_use_option doc GENDOC full =>
# cmake_use_option html DOCFORMAT html text => -DGENDOC=text
# cmake_use_option debug CMAKE_BUILD_TYPE debugfull => -DCMAKE_BUILD_TYPE=debugfull
#
cmake_use_option() {
	local USEFLAG="$1"; shift
	local OPTION="$1"; shift
	if [ -z "${OPTION}" ]; then
		OPTION="WITH_${USEFLAG}"
	fi
	local E_VALUE="ON" # value if use
	local D_VALUE="OFF" # value if not used
	if [ ! -z "$1" ]; then
		case $1 in
			on|On|oN|ON)
				;;
			off|ofF|oFf|oFF|Off|OfF|OFf|OFF)
				# reverse values
				E_VALUE="OFF"
				D_VALUE="ON"
				;;
			*)
				# non-boolean option
				E_VALUE="$1"
				D_VALUE="$2"
				;;
		esac
	fi

	local opt="-D${OPTION}="
	if useq ${USEFLAG}; then
		opt="${opt}${E_VALUE}"
	elif [ ! -z "${D_VALUE}" ]; then
		opt="${opt}${D_VALUE}"
	else
		opt=""
	fi
	echo ${opt}
}

cmake_configure() {
	debug-print-function
	debug-print "${FUNCNAME}: BUILDDIR is '${BUILDDIR}'"

	mkdir -p ${BUILDDIR}
	cd ${BUILDDIR}
	vecho cmake ${S} -DCMAKE_INSTALL_PREFIX=/usr $(cmake_use_option debug CMAKE_BUILD_TYPE debugfull) $*
	cmake ${S} -DCMAKE_INSTALL_PREFIX=/usr $(cmake_use_option debug CMAKE_BUILD_TYPE debugfull) $*
	ret=$?
	cd ${OLDPWD}
	return $ret
}

cmake_compile() {
	cd ${BUILDDIR}
	emake $*
	ret=$?
	cd ${OLDPWD}
	return $ret
}

cmake_install() {
	cd ${BUILDDIR}
	emake DESTDIR="${D}" $* install
	ret=$?
	rm -rf ${BUILDDIR}
	cd ${OLDPWD}
	return $ret
}


[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-18 10:13 [gentoo-dev] cmake.eclass Panard
@ 2006-05-18 10:54 ` Simon Stelling
  2006-05-18 11:44   ` Panard
  0 siblings, 1 reply; 19+ messages in thread
From: Simon Stelling @ 2006-05-18 10:54 UTC (permalink / raw
  To: gentoo-dev

I have no clue what cmake is or what you are trying to, so I just 
comment on a few other things I catched:

> INHERITED="$INHERITED $ECLASS"

you don't need that

> cmake_use_option() {
> 	local USEFLAG="$1"; shift
> 	local OPTION="$1"; shift

'local USEFLAG="$1" OPTION="$2" ; shift 2' reads better and is more 
efficient

> 	if [ -z "${OPTION}" ]; then
> 		OPTION="WITH_${USEFLAG}"
> 	fi

OPTION=${OPTION:-"WITH_${USEFLAG}"}

> 		case $1 in
> 			on|On|oN|ON)

'[oO][nN]') does the same, but i doubt anything beside on|ON will ever 
be used.

> 			off|ofF|oFf|oFF|Off|OfF|OFf|OFF)

same here:
[oO][fF][fF]) or simply off|OFF)
wE'rE nOt ThAt FrEaKy YoU kNoW ;)

> cmake_configure() {
[...]
> 	vecho cmake ${S} -DCMAKE_INSTALL_PREFIX=/usr $(cmake_use_option debug CMAKE_BUILD_TYPE debugfull) $*

You can't use vecho yet. It's been introduced not long ago, stable 
portage versions will just tell you that there is no `vecho'.

> cmake_compile() {
> cmake_install() {

aren't these meant to be cmake-src_compile/cmake-src_install?

-- 
Kind Regards,

Simon Stelling
Gentoo/AMD64 Developer
-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-18 10:54 ` Simon Stelling
@ 2006-05-18 11:44   ` Panard
  2006-05-24  0:52     ` Mike Frysinger
  0 siblings, 1 reply; 19+ messages in thread
From: Panard @ 2006-05-18 11:44 UTC (permalink / raw
  To: gentoo-dev


[-- Attachment #1.1: Type: text/plain, Size: 1488 bytes --]

Hello,

Le Jeudi 18 Mai 2006 12:54, Simon Stelling a écrit :
> I have no clue what cmake is or what you are trying to, so I just
> comment on a few other things I catched:

Thanks for your comments,

Cmake is a autotools/autoconf replacement (http://www.cmake.org), it is the 
new build system for kde.
Some projects using cmake need to have a separate builddir (kde does, and some 
others).

In this eclass, there is an helper function to use cmake options according to 
useflags (like use_enable), and the support for building out of the sources 
(in $WORKDIR/cmake-build)

> [...]
>
> > cmake_compile() {
> > cmake_install() {
>
> aren't these meant to be cmake-src_compile/cmake-src_install?
Well, it is for cmake_install indead, but cmake_compile need that 
cmake_configure has been done before... so I consider cmake_configure and 
cmake_compile more like econf and emake commands.
So I've added a separate  cmake_src_compile.

I've updated the eclass, according to your comments, and renamed cmake_install 
to cmake_src_install.
I've also made the installation prefix customable with INSTALL_PREFIX envvar.

Here is an ebuild example for using this cmake eclass:
http://dev.inzenet.org/~panard/patches/gentoo-overlay/app-editors/yzis/yzis-0.1_pre20060518.ebuild

Thanks,

Panard

-- 
HomePage: http://dev.inzenet.org/~panard/
Yzis : http://www.yzis.org
Qomics : http://dev.inzenet.org/~panard/qomics
Smileys : http://smileys.inzenet.org

[-- Attachment #1.2: cmake.eclass --]
[-- Type: text/plain, Size: 2298 bytes --]

# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

#
# Original Author: panard
# Purpose: cmake with a separate builddir
#

ECLASS="cmake"

DEPEND="dev-util/cmake"
RDEPEND=""

IUSE="debug"

BUILDDIR="${WORKDIR}/cmake-build"

# cmake option helper:
# 	cmake_use_option <USEFLAG> [<OPTION> [<value if use> [<value else>]]]
# eg:
# USE=qt debug
# cmake_use_option qt => -DWITH_qt=ON
# cmake_use_option gtk => -DWITH_gtk=OFF
# cmake_use_option qt ENABLE_QUI => -DENABLE_QUI=ON
# cmake_use_option gtk ENABLE_GUI => -DENABLE_GUI=OFF
# cmake_use_option gtk ENABLE_NOGUI OFF => -DENABLE_NOGUI=ON
# cmake_use_option doc GENDOC full =>
# cmake_use_option html DOCFORMAT html text => -DGENDOC=text
# cmake_use_option debug CMAKE_BUILD_TYPE debugfull => -DCMAKE_BUILD_TYPE=debugfull
#
cmake_use_option() {
	local USEFLAG="$1"
	local OPTION="$2"
	shift 2
	OPTION=${OPTION:-"WITH_${USEFLAG}"}
	local E_VALUE="ON" # value if use
	local D_VALUE="OFF" # value if not used
	if [ ! -z "$1" ]; then
		case $1 in
			[oO][nN])
				;;
			[oO][fF][fF])
				# reverse values
				E_VALUE="OFF"
				D_VALUE="ON"
				;;
			*)
				# non-boolean option
				E_VALUE="$1"
				D_VALUE="$2"
				;;
		esac
	fi

	local opt="-D${OPTION}="
	if useq ${USEFLAG}; then
		opt="${opt}${E_VALUE}"
	elif [ ! -z "${D_VALUE}" ]; then
		opt="${opt}${D_VALUE}"
	else
		opt=""
	fi
	echo ${opt}
}

cmake_configure() {
	debug-print-function
	debug-print "${FUNCNAME}: BUILDDIR is '${BUILDDIR}'"

	INSTALL_PREFIX="${INSTALL_PREFIX:-/usr}"

	mkdir -p ${BUILDDIR}
	cd ${BUILDDIR}
	echo cmake ${S} -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
			$(cmake_use_option debug CMAKE_BUILD_TYPE debugfull) $*
	cmake ${S} -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
			$(cmake_use_option debug CMAKE_BUILD_TYPE debugfull) $*
	ret=$?
	cd ${OLDPWD}
	return $ret
}

cmake_compile() {
	cd ${BUILDDIR} || die "no BUILDDIR configured"
	emake $*
	ret=$?
	cd ${OLDPWD}
	return $ret
}

cmake_src_compile() {
	cmake_configure $* || die "Configuration failed"
	cmake_compile || die "Compilation failed"
}

cmake_src_install() {
	cd ${BUILDDIR}
	emake DESTDIR="${D}" $* install || die "Installation failed"
	ret=$?
	rm -rf ${BUILDDIR}
	cd ${OLDPWD}
	return $ret
}

EXPORT_FUNCTIONS src_compile src_install


[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-18 11:44   ` Panard
@ 2006-05-24  0:52     ` Mike Frysinger
  2006-05-24 10:46       ` Panard
  0 siblings, 1 reply; 19+ messages in thread
From: Mike Frysinger @ 2006-05-24  0:52 UTC (permalink / raw
  To: gentoo-dev; +Cc: Panard

[-- Attachment #1: Type: text/plain, Size: 697 bytes --]

On Thursday 18 May 2006 07:44, Panard wrote:
>         OPTION=${OPTION:-"WITH_${USEFLAG}"}

quoting here is pointless

>         mkdir -p ${BUILDDIR}
>         cd ${BUILDDIR}
>         echo cmake ${S} -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
>                         $(cmake_use_option debug CMAKE_BUILD_TYPE debugfull)
>                         $*  
> 		cmake ${S} -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \ 
>                         $(cmake_use_option debug CMAKE_BUILD_TYPE debugfull)
>                         $* 

$BUILDDIR and $S should be quoted

use "$@", not $*

>         cd ${OLDPWD}

if you want to enter a directory and then return to previous, use pushd/popd, 
not $OLDPWD
-mike

[-- Attachment #2: Type: application/pgp-signature, Size: 827 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-24  0:52     ` Mike Frysinger
@ 2006-05-24 10:46       ` Panard
  2006-05-24 12:11         ` Thomas Kear
  0 siblings, 1 reply; 19+ messages in thread
From: Panard @ 2006-05-24 10:46 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 1143 bytes --]

Hi,

Thanks for your comments.

Here is my updated cmake.eclass :
http://backzone.net/~panard/patches/gentoo-overlay/eclass/cmake.eclass

Beers,

Panard


Le Mercredi 24 Mai 2006 02:52, Mike Frysinger a écrit :
> On Thursday 18 May 2006 07:44, Panard wrote:
> >         OPTION=${OPTION:-"WITH_${USEFLAG}"}
>
> quoting here is pointless
>
> >         mkdir -p ${BUILDDIR}
> >         cd ${BUILDDIR}
> >         echo cmake ${S} -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
> >                         $(cmake_use_option debug CMAKE_BUILD_TYPE
> > debugfull) $*
> > 		cmake ${S} -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
> >                         $(cmake_use_option debug CMAKE_BUILD_TYPE
> > debugfull) $*
>
> $BUILDDIR and $S should be quoted
>
> use "$@", not $*
>
> >         cd ${OLDPWD}
>
> if you want to enter a directory and then return to previous, use
> pushd/popd, not $OLDPWD
> -mike

-- 
HomePage: http://dev.inzenet.org/~panard/
Yzis : http://www.yzis.org
Qomics : http://dev.inzenet.org/~panard/qomics
Smileys : http://smileys.inzenet.org

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-24 10:46       ` Panard
@ 2006-05-24 12:11         ` Thomas Kear
  2006-05-24 13:24           ` Panard
  0 siblings, 1 reply; 19+ messages in thread
From: Thomas Kear @ 2006-05-24 12:11 UTC (permalink / raw
  To: gentoo-dev

Can I suggest including a function for setting a minumum cmake
version, similar to the need-kde function in kde-functions.eclass.
For some apps, cmake 2.2 is a requirement, and giving the option to
require =dev-util/cmake-2.2* will prevent breakage on architectures
for which 2.2 is still ~.  With cmake 2.4 released it may again become
important.

-- 
Thomas Kear
thomas.kear@gmail.com

-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-24 12:11         ` Thomas Kear
@ 2006-05-24 13:24           ` Panard
  2006-05-25 11:31             ` Carsten Lohrke
  2006-05-25 21:15             ` Mike Frysinger
  0 siblings, 2 replies; 19+ messages in thread
From: Panard @ 2006-05-24 13:24 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 1319 bytes --]

Hello,

That's right.
I've added need-cmake function which add >=dev-util/cmake-VERSION depend.

need-cmake() {
    debug-print-function $FUNCNAME $*
    CMAKEVER="$1"

    # from need-kde
    if [ "${RDEPEND-unset}" != "unset" ] ; then
        x_DEPEND="${RDEPEND}"
    else
        x_DEPEND="${DEPEND}"
    fi
    DEPEND="${DEPEND} >=dev-util/cmake-${CMAKEVER}"
    RDEPEND="${x_DEPEND} >=dev-util/cmake-${CMAKEVER}"
}

I don't think there is backward compatiblity issue with cmake, but if such, 
perhaps it will be better to have cmake_min_version an cmake_max_version 
functions.

http://backzone.net/~panard/patches/gentoo-overlay/eclass/cmake.eclass



Le Mercredi 24 Mai 2006 14:11, Thomas Kear a écrit :
> Can I suggest including a function for setting a minumum cmake
> version, similar to the need-kde function in kde-functions.eclass.
> For some apps, cmake 2.2 is a requirement, and giving the option to
> require =dev-util/cmake-2.2* will prevent breakage on architectures
> for which 2.2 is still ~.  With cmake 2.4 released it may again become
> important.
>
> --
> Thomas Kear
> thomas.kear@gmail.com

-- 
HomePage: http://dev.inzenet.org/~panard/
Yzis : http://www.yzis.org
Qomics : http://dev.inzenet.org/~panard/qomics
Smileys : http://smileys.inzenet.org

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-24 13:24           ` Panard
@ 2006-05-25 11:31             ` Carsten Lohrke
  2006-05-25 14:39               ` Danny van Dyk
  2006-05-25 22:50               ` Panard
  2006-05-25 21:15             ` Mike Frysinger
  1 sibling, 2 replies; 19+ messages in thread
From: Carsten Lohrke @ 2006-05-25 11:31 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 128 bytes --]

Don't repeat a failure of the past. Do


NEED_CMAKE x.y

inherit foo

...


instead this ugly toplevel function call.


Carsten

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 14:39               ` Danny van Dyk
@ 2006-05-25 14:37                 ` Diego 'Flameeyes' Pettenò
  2006-05-25 14:54                   ` Carsten Lohrke
  0 siblings, 1 reply; 19+ messages in thread
From: Diego 'Flameeyes' Pettenò @ 2006-05-25 14:37 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 330 bytes --]

On Thursday 25 May 2006 16:39, Danny van Dyk wrote:
> i currently see no major difference between doing 'need-cmake x.y' and
> 'NEED_CMAKE x.y'...
Probably he meant

NEED_CMAKE="x.y"

-- 
Diego "Flameeyes" Pettenò - http://farragut.flameeyes.is-a-geek.org/
Gentoo/Alt lead, Gentoo/FreeBSD, Video, AMD64, Sound, PAM, KDE

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 11:31             ` Carsten Lohrke
@ 2006-05-25 14:39               ` Danny van Dyk
  2006-05-25 14:37                 ` Diego 'Flameeyes' Pettenò
  2006-05-25 22:50               ` Panard
  1 sibling, 1 reply; 19+ messages in thread
From: Danny van Dyk @ 2006-05-25 14:39 UTC (permalink / raw
  To: gentoo-dev

Hi Carsten,

Am Donnerstag, 25. Mai 2006 13:31 schrieb Carsten Lohrke:
> Don't repeat a failure of the past. Do
>
>
> NEED_CMAKE x.y
>
> inherit foo
>
> ...
>
>
> instead this ugly toplevel function call.
And this is no ugly toplevel function fall?
i currently see no major difference between doing 'need-cmake x.y' and 
'NEED_CMAKE x.y'...

Danny
-- 
Danny van Dyk <kugelfang@gentoo.org>
Gentoo/AMD64 Project, Gentoo Scientific Project
-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 14:37                 ` Diego 'Flameeyes' Pettenò
@ 2006-05-25 14:54                   ` Carsten Lohrke
  0 siblings, 0 replies; 19+ messages in thread
From: Carsten Lohrke @ 2006-05-25 14:54 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

On Thursday 25 May 2006 16:37, Diego 'Flameeyes' Pettenò wrote:
> Probably he meant
>
> NEED_CMAKE="x.y"

Exactly. Sorry for the typo.


Carsten

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-24 13:24           ` Panard
  2006-05-25 11:31             ` Carsten Lohrke
@ 2006-05-25 21:15             ` Mike Frysinger
  2006-05-25 22:52               ` Panard
  2006-08-24  3:23               ` lnxg33k
  1 sibling, 2 replies; 19+ messages in thread
From: Mike Frysinger @ 2006-05-25 21:15 UTC (permalink / raw
  To: gentoo-dev; +Cc: Panard

[-- Attachment #1: Type: text/plain, Size: 137 bytes --]

use this instead ... makes for cleaner output:
pushd "${BUILDDIR}" > /dev/null

otherwise i dont have any other real complaints ;P
-mike

[-- Attachment #2: Type: application/pgp-signature, Size: 827 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 11:31             ` Carsten Lohrke
  2006-05-25 14:39               ` Danny van Dyk
@ 2006-05-25 22:50               ` Panard
  2006-05-25 23:10                 ` Danny van Dyk
  1 sibling, 1 reply; 19+ messages in thread
From: Panard @ 2006-05-25 22:50 UTC (permalink / raw
  To: gentoo-dev

Ok, 
I removed need-cmake function and add :

if [ ! -z "${NEED_CMAKE}" ]; then
    DEPEND="dev-util/cmake"
else
    DEPEND=">=dev-util/cmake-${NEED_CMAKE}"
fi
RDEPEND=""

is it ok ?

http://backzone.net/~panard/patches/gentoo-overlay/eclass/cmake.eclass

Panard


Le Jeudi 25 Mai 2006 13:31, Carsten Lohrke a écrit :
> Don't repeat a failure of the past. Do
>
>
> NEED_CMAKE x.y
>
> inherit foo
>
> ...
>
>
> instead this ugly toplevel function call.
>
>
> Carsten

-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 21:15             ` Mike Frysinger
@ 2006-05-25 22:52               ` Panard
  2006-08-24  3:23               ` lnxg33k
  1 sibling, 0 replies; 19+ messages in thread
From: Panard @ 2006-05-25 22:52 UTC (permalink / raw
  To: gentoo-dev

Le Jeudi 25 Mai 2006 23:15, Mike Frysinger a écrit :
> use this instead ... makes for cleaner output:
> pushd "${BUILDDIR}" > /dev/null

Yes... in fact i was using cd; cd $OLDPWD to avoid that >/dev/null issue...

I've update the eclass.

Thanks

>
> otherwise i dont have any other real complaints ;P
> -mike

-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 23:10                 ` Danny van Dyk
@ 2006-05-25 23:09                   ` Diego 'Flameeyes' Pettenò
  2006-05-25 23:20                   ` Danny van Dyk
  1 sibling, 0 replies; 19+ messages in thread
From: Diego 'Flameeyes' Pettenò @ 2006-05-25 23:09 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 312 bytes --]

On Friday 26 May 2006 01:10, Danny van Dyk wrote:
>   DEPEND="dev-util/cmake-${NEED_CMAKE+-${NEED_CMAKE}}"
And see it die of a strange death missing the >= in front?

-- 
Diego "Flameeyes" Pettenò - http://farragut.flameeyes.is-a-geek.org/
Gentoo/Alt lead, Gentoo/FreeBSD, Video, AMD64, Sound, PAM, KDE

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 22:50               ` Panard
@ 2006-05-25 23:10                 ` Danny van Dyk
  2006-05-25 23:09                   ` Diego 'Flameeyes' Pettenò
  2006-05-25 23:20                   ` Danny van Dyk
  0 siblings, 2 replies; 19+ messages in thread
From: Danny van Dyk @ 2006-05-25 23:10 UTC (permalink / raw
  To: gentoo-dev

Am Freitag, 26. Mai 2006 00:50 schrieb Panard:
> I removed need-cmake function and add :
>
> if [ ! -z "${NEED_CMAKE}" ]; then
>     DEPEND="dev-util/cmake"
> else
>     DEPEND=">=dev-util/cmake-${NEED_CMAKE}"
> fi
> RDEPEND=""
>
> is it ok ?
Rather use

  DEPEND="dev-util/cmake-${NEED_CMAKE+-${NEED_CMAKE}}"

please.

Danny
-- 
Danny van Dyk <kugelfang@gentoo.org>
Gentoo/AMD64 Project, Gentoo Scientific Project
-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 23:10                 ` Danny van Dyk
  2006-05-25 23:09                   ` Diego 'Flameeyes' Pettenò
@ 2006-05-25 23:20                   ` Danny van Dyk
  1 sibling, 0 replies; 19+ messages in thread
From: Danny van Dyk @ 2006-05-25 23:20 UTC (permalink / raw
  To: gentoo-dev

Am Freitag, 26. Mai 2006 01:10 schrieb Danny van Dyk:
> Am Freitag, 26. Mai 2006 00:50 schrieb Panard:
> > I removed need-cmake function and add :
> >
> > if [ ! -z "${NEED_CMAKE}" ]; then
> >     DEPEND="dev-util/cmake"
> > else
> >     DEPEND=">=dev-util/cmake-${NEED_CMAKE}"
> > fi
> > RDEPEND=""
> >
> > is it ok ?
>
> Rather use
>
>   DEPEND="dev-util/cmake-${NEED_CMAKE+-${NEED_CMAKE}}"
>
> please.
Sigh, too tired. I meant
  DEPEND="dev-utils/cmake${NEED_CMAKE+-${NEED_CMAKE}}"
of course.

Danny
-- 
Danny van Dyk <kugelfang@gentoo.org>
Gentoo/AMD64 Project, Gentoo Scientific Project
-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-05-25 21:15             ` Mike Frysinger
  2006-05-25 22:52               ` Panard
@ 2006-08-24  3:23               ` lnxg33k
  2006-08-24  4:02                 ` Mike Frysinger
  1 sibling, 1 reply; 19+ messages in thread
From: lnxg33k @ 2006-08-24  3:23 UTC (permalink / raw
  To: gentoo-dev

Mike Frysinger wrote:
> use this instead ... makes for cleaner output:
> pushd "${BUILDDIR}" > /dev/null

Would `cd foo` and `cd -` work just as well in place of `pushd` and `popd`? 
Recent tip I ran across and wondering if it holds up across the board.

-- 
gentoo-dev@gentoo.org mailing list



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [gentoo-dev] cmake.eclass
  2006-08-24  3:23               ` lnxg33k
@ 2006-08-24  4:02                 ` Mike Frysinger
  0 siblings, 0 replies; 19+ messages in thread
From: Mike Frysinger @ 2006-08-24  4:02 UTC (permalink / raw
  To: gentoo-dev; +Cc: lnxg33k

[-- Attachment #1: Type: text/plain, Size: 545 bytes --]

On Wednesday 23 August 2006 23:23, lnxg33k wrote:
> Mike Frysinger wrote:
> > use this instead ... makes for cleaner output:
> > pushd "${BUILDDIR}" > /dev/null
>
> Would `cd foo` and `cd -` work just as well in place of `pushd` and `popd`?
> Recent tip I ran across and wondering if it holds up across the board.

'cd -' is generally for interactive shells, pushd/popd is for scripts

plus, while `cd -` is a stack of depth 1, pushd/popd has an infinite stack ... 
so you dont have to worry about recursive calls being wrong
-mike

[-- Attachment #2: Type: application/pgp-signature, Size: 827 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2006-08-24  4:04 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-18 10:13 [gentoo-dev] cmake.eclass Panard
2006-05-18 10:54 ` Simon Stelling
2006-05-18 11:44   ` Panard
2006-05-24  0:52     ` Mike Frysinger
2006-05-24 10:46       ` Panard
2006-05-24 12:11         ` Thomas Kear
2006-05-24 13:24           ` Panard
2006-05-25 11:31             ` Carsten Lohrke
2006-05-25 14:39               ` Danny van Dyk
2006-05-25 14:37                 ` Diego 'Flameeyes' Pettenò
2006-05-25 14:54                   ` Carsten Lohrke
2006-05-25 22:50               ` Panard
2006-05-25 23:10                 ` Danny van Dyk
2006-05-25 23:09                   ` Diego 'Flameeyes' Pettenò
2006-05-25 23:20                   ` Danny van Dyk
2006-05-25 21:15             ` Mike Frysinger
2006-05-25 22:52               ` Panard
2006-08-24  3:23               ` lnxg33k
2006-08-24  4:02                 ` Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox