summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2009-02-15 20:09:09 +0000
committerFabian Groffen <grobian@gentoo.org>2009-02-15 20:09:09 +0000
commitd54e400ede75ebd4192350371569e71421e3a480 (patch)
treef3c16d103ddd7da2ce8b662ba51fc4b39abc991d /eclass/eutils.eclass
parentAdd gcc-4.3 patch per bug 251144. Thanks to Yaroslav Gorbunov <yagorbunov@mai... (diff)
downloadgentoo-2-d54e400ede75ebd4192350371569e71421e3a480.tar.gz
gentoo-2-d54e400ede75ebd4192350371569e71421e3a480.tar.bz2
gentoo-2-d54e400ede75ebd4192350371569e71421e3a480.zip
Apply patch by Armando Di Cianno to add support for OSX 10.5+ in egetent, bug #257945
Diffstat (limited to 'eclass/eutils.eclass')
-rw-r--r--eclass/eutils.eclass20
1 files changed, 18 insertions, 2 deletions
diff --git a/eclass/eutils.eclass b/eclass/eutils.eclass
index 743a36a73c58..7c882fe5078a 100644
--- a/eclass/eutils.eclass
+++ b/eclass/eutils.eclass
@@ -1,6 +1,6 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.309 2009/02/07 10:57:38 pva Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.310 2009/02/15 20:09:09 grobian Exp $
# @ECLASS: eutils.eclass
# @MAINTAINER:
@@ -389,10 +389,26 @@ emktemp() {
# usata@gentoo.org (OS X)
# Aaron Walker <ka0ttic@gentoo.org> (FreeBSD)
# @DESCRIPTION:
-# Small wrapper for getent (Linux), nidump (Mac OS X),
+# Small wrapper for getent (Linux),
+# nidump (< Mac OS X 10.5), dscl (Mac OS X 10.5),
# and pw (FreeBSD) used in enewuser()/enewgroup()
egetent() {
case ${CHOST} in
+ *-darwin9)
+ local mytype=$1
+ [[ "passwd" == $mytype ]] && mytype="Users"
+ [[ "group" == $mytype ]] && mytype="Groups"
+ case "$2" in
+ *[!0-9]*) # Non numeric
+ dscl . -read /$mytype/$2 2>/dev/null |grep RecordName
+ ;;
+ *) # Numeric
+ local mykey="UniqueID"
+ [[ $mytype == "Groups" ]] && mykey="PrimaryGroupID"
+ dscl . -search /$mytype $mykey $2 2>/dev/null
+ ;;
+ esac
+ ;;
*-darwin*)
case "$2" in
*[!0-9]*) # Non numeric