summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2010-09-26 22:27:29 -0700
committerFather Chrysostomos <sprout@cpan.org>2010-09-26 22:27:29 -0700
commit04ec184ac01659664eaf4d4475aabdd6a078c7ae (patch)
treee68706ae8b7aa4989170f89754a77e0ac6c4683c
parentdc08898c4d1caf48f394c019210c403736150e01 (diff)
downloadperl-04ec184ac01659664eaf4d4475aabdd6a078c7ae.tar.gz
[perl #72990] Mac OS X and setruid, etc.
hints/darwin.sh pretends that setruid and similar functions do not exist, as they were buggy in earlier versions of Mac OS X. Leopard and Snow Leopard (I don’t know about Tiger) are fine. The attached patch re-enables those on recent versions.
-rw-r--r--hints/darwin.sh15
1 files changed, 10 insertions, 5 deletions
diff --git a/hints/darwin.sh b/hints/darwin.sh
index 6cb9bd131a..dab060773a 100644
--- a/hints/darwin.sh
+++ b/hints/darwin.sh
@@ -13,11 +13,16 @@ perl_version=`awk '/define[ ]+PERL_VERSION/ {print $3}' $src/patchlevel.h`
perl_subversion=`awk '/define[ ]+PERL_SUBVERSION/ {print $3}' $src/patchlevel.h`
version="${perl_revision}.${perl_version}.${perl_subversion}"
-# Pretend that Darwin doesn't know about those system calls [perl #24122]
-d_setregid='undef'
-d_setreuid='undef'
-d_setrgid='undef'
-d_setruid='undef'
+# Pretend that Darwin doesn't know about those system calls in Tiger
+# (10.4/darwin 8) and earlier [perl #24122]
+case "$osvers" in
+[1-8].*)
+ d_setregid='undef'
+ d_setreuid='undef'
+ d_setrgid='undef'
+ d_setruid='undef'
+ ;;
+esac
# This was previously used in all but causes three cases
# (no -Ddprefix=, -Dprefix=/usr, -Dprefix=/some/thing/else)